Contract
0x6DbF479682914F1dac61C5e7b8aCc07EAb457d40
3
Contract Overview
Balance:
0 ETH
EtherValue:
$0.00
My Name Tag:
Not Available, login to update
[ Download CSV Export ]
Contract Name:
AddressRegistryController
Compiler Version
v0.8.13+commit.abaa5c0e
Optimization Enabled:
Yes with 10000 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: GNU-GPL v3.0 or later pragma solidity ^0.8.0; import "@openzeppelin/contracts/access/Ownable.sol"; import "./interfaces/IAddressRegistryV2.sol"; contract AddressRegistryController is Ownable { event FunctionOwnershipTransferred(address indexed previousOwner, address indexed newOwner, bytes32 functionId); IAddressRegistryV2 public registry; bytes32 public constant SET_ADMIN = "SET_ADMIN"; bytes32 public constant SET_LOCK_MANAGER = "SET_LOCK_MANAGER"; bytes32 public constant SET_REVEST_TOKEN = "SET_REVEST_TOKEN"; bytes32 public constant SET_TOKEN_VAULT = "SET_TOKEN_VAULT"; bytes32 public constant SET_REVEST = "SET_REVEST"; bytes32 public constant SET_FNFT = "SET_FNFT"; bytes32 public constant SET_METADATA = "SET_METADATA"; bytes32 public constant SET_REWARDS_HANDLER = 'SET_REWARDS_HANDLER'; bytes32 public constant UNPAUSE_TOKEN = 'UNPAUSE_TOKEN'; bytes32 public constant MODIFY_BREAKER = 'MODIFY_BREAKER'; bytes32 public constant MODIFY_PAUSER = 'MODIFY_PAUSER'; mapping(bytes32 => address) public functionOwner; constructor(address _provider) Ownable() { registry = IAddressRegistryV2(_provider); functionOwner[SET_ADMIN] = _msgSender(); functionOwner[SET_LOCK_MANAGER] = _msgSender(); functionOwner[SET_REVEST_TOKEN] = _msgSender(); functionOwner[SET_TOKEN_VAULT] = _msgSender(); functionOwner[SET_REVEST] = _msgSender(); functionOwner[SET_FNFT] = _msgSender(); functionOwner[SET_METADATA] = _msgSender(); functionOwner[SET_REWARDS_HANDLER] = _msgSender(); functionOwner[UNPAUSE_TOKEN] = _msgSender(); functionOwner[MODIFY_BREAKER] = _msgSender(); functionOwner[MODIFY_PAUSER] = _msgSender(); } modifier onlyFunctionOwner(bytes32 functionId) { require(_msgSender() == functionOwner[functionId] && _msgSender() != address(0), 'E079'); _; } /// /// Controller control functions /// function transferFunctionOwnership( bytes32 functionId, address newFunctionOwner ) external onlyFunctionOwner(functionId) { address oldFunctionOwner = functionOwner[functionId]; functionOwner[functionId] = newFunctionOwner; emit FunctionOwnershipTransferred(oldFunctionOwner, newFunctionOwner, functionId); } function renounceFunctionOwnership( bytes32 functionId ) external onlyFunctionOwner(functionId) { address oldFunctionOwner = functionOwner[functionId]; functionOwner[functionId] = address(0); emit FunctionOwnershipTransferred(oldFunctionOwner, address(0), functionId); } /// /// Control functions /// /// Pass through unpause signal to Registry function unpauseToken() external onlyFunctionOwner(UNPAUSE_TOKEN) { registry.unpauseToken(); } /// Admin function for adding or removing breakers function modifyBreaker(address breaker, bool grant) external onlyFunctionOwner(MODIFY_BREAKER) { registry.modifyBreaker(breaker, grant); } /// Admin function for adding or removing pausers function modifyPauser(address pauser, bool grant) external onlyFunctionOwner(MODIFY_PAUSER) { registry.modifyPauser(pauser, grant); } /// /// SETTERS /// function setAdmin(address admin) external onlyFunctionOwner(SET_ADMIN) { registry.setAdmin(admin); } function setLockManager(address manager) external onlyFunctionOwner(SET_LOCK_MANAGER) { registry.setLockManager(manager); } function setTokenVault(address vault) external onlyFunctionOwner(SET_TOKEN_VAULT) { registry.setTokenVault(vault); } function setRevest(address revest) external onlyFunctionOwner(SET_REVEST) { registry.setRevest(revest); } function setRevestFNFT(address fnft) external onlyFunctionOwner(SET_FNFT) { registry.setRevestFNFT(fnft); } function setMetadataHandler(address metadata) external onlyFunctionOwner(SET_METADATA) { registry.setMetadataHandler(metadata); } function setRevestToken(address token) external onlyFunctionOwner(SET_REVEST_TOKEN) { registry.setRevestToken(token); } function setRewardsHandler(address esc) external onlyFunctionOwner(SET_REWARDS_HANDLER) { registry.setRewardsHandler(esc); } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts v4.4.1 (access/Ownable.sol) pragma solidity ^0.8.0; import "../utils/Context.sol"; /** * @dev Contract module which provides a basic access control mechanism, where * there is an account (an owner) that can be granted exclusive access to * specific functions. * * By default, the owner account will be the one that deploys the contract. This * can later be changed with {transferOwnership}. * * This module is used through inheritance. It will make available the modifier * `onlyOwner`, which can be applied to your functions to restrict their use to * the owner. */ abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor() { _transferOwnership(_msgSender()); } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions anymore. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby removing any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { _transferOwnership(address(0)); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _transferOwnership(newOwner); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Internal function without access restriction. */ function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } }
// SPDX-License-Identifier: GNU-GPL v3.0 or later pragma solidity >=0.8.0; import "./IAddressRegistry.sol"; /** * @title Provider interface for Revest FNFTs * @dev * */ interface IAddressRegistryV2 is IAddressRegistry { function initialize_with_legacy( address lock_manager_, address liquidity_, address revest_token_, address token_vault_, address legacy_vault_, address revest_, address fnft_, address metadata_, address admin_, address rewards_ ) external; function getLegacyTokenVault() external view returns (address legacy); function setLegacyTokenVault(address legacyVault) external; function breakGlass() external; function pauseToken() external; function unpauseToken() external; function modifyPauser(address pauser, bool grant) external; function modifyBreaker(address breaker, bool grant) external; }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts v4.4.1 (utils/Context.sol) pragma solidity ^0.8.0; /** * @dev Provides information about the current execution context, including the * sender of the transaction and its data. While these are generally available * via msg.sender and msg.data, they should not be accessed in such a direct * manner, since when dealing with meta-transactions the account sending and * paying for execution may not be the actual sender (as far as an application * is concerned). * * This contract is only required for intermediate, library-like contracts. */ abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } }
// SPDX-License-Identifier: GNU-GPL v3.0 or later pragma solidity >=0.8.0; /** * @title Provider interface for Revest FNFTs * @dev * */ interface IAddressRegistry { function initialize( address lock_manager_, address liquidity_, address revest_token_, address token_vault_, address revest_, address fnft_, address metadata_, address admin_, address rewards_ ) external; function getAdmin() external view returns (address); function setAdmin(address admin) external; function getLockManager() external view returns (address); function setLockManager(address manager) external; function getTokenVault() external view returns (address); function setTokenVault(address vault) external; function getRevestFNFT() external view returns (address); function setRevestFNFT(address fnft) external; function getMetadataHandler() external view returns (address); function setMetadataHandler(address metadata) external; function getRevest() external view returns (address); function setRevest(address revest) external; function getDEX(uint index) external view returns (address); function setDex(address dex) external; function getRevestToken() external view returns (address); function setRevestToken(address token) external; function getRewardsHandler() external view returns(address); function setRewardsHandler(address esc) external; function getAddress(bytes32 id) external view returns (address); function getLPs() external view returns (address); function setLPs(address liquidToken) external; }
{ "metadata": { "bytecodeHash": "none", "useLiteralContent": true }, "optimizer": { "enabled": true, "runs": 10000 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_provider","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"},{"indexed":false,"internalType":"bytes32","name":"functionId","type":"bytes32"}],"name":"FunctionOwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[],"name":"MODIFY_BREAKER","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MODIFY_PAUSER","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SET_ADMIN","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SET_FNFT","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SET_LOCK_MANAGER","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SET_METADATA","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SET_REVEST","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SET_REVEST_TOKEN","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SET_REWARDS_HANDLER","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SET_TOKEN_VAULT","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"UNPAUSE_TOKEN","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"functionOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"breaker","type":"address"},{"internalType":"bool","name":"grant","type":"bool"}],"name":"modifyBreaker","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"pauser","type":"address"},{"internalType":"bool","name":"grant","type":"bool"}],"name":"modifyPauser","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"registry","outputs":[{"internalType":"contract IAddressRegistryV2","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"functionId","type":"bytes32"}],"name":"renounceFunctionOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"admin","type":"address"}],"name":"setAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"manager","type":"address"}],"name":"setLockManager","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"metadata","type":"address"}],"name":"setMetadataHandler","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"revest","type":"address"}],"name":"setRevest","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"fnft","type":"address"}],"name":"setRevestFNFT","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"setRevestToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"esc","type":"address"}],"name":"setRewardsHandler","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"vault","type":"address"}],"name":"setTokenVault","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"functionId","type":"bytes32"},{"internalType":"address","name":"newFunctionOwner","type":"address"}],"name":"transferFunctionOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpauseToken","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040523480156200001157600080fd5b506040516200192f3803806200192f8339810160408190526200003491620004dd565b6200003f336200048d565b600180546001600160a01b0319166001600160a01b038316179055620000623390565b6829a2aa2fa0a226a4a760b91b60005260026020527f95bd01345b72e364704df42ca1a4db135f0cbcc729f0dab7927ad2c15bbd007d80546001600160a01b0319166001600160a01b0392909216919091179055620000be3390565b6f29a2aa2fa627a1a5afa6a0a720a3a2a960811b60005260026020527fc30d9bf31b0fced240d33584404fee99e720b69432ada3b4229bb908fc24465080546001600160a01b0319166001600160a01b0392909216919091179055620001213390565b6f29a2aa2fa922ab22a9aa2faa27a5a2a760811b60005260026020527fd9c9885890ed31af70c7d86c2e3db1b7822794f60500365e4b74d8e44ebaaf5880546001600160a01b0319166001600160a01b0392909216919091179055620001843390565b6e14d15517d513d2d15397d590555315608a1b60005260026020527f376548b00e81ffb33e4ff0c1a2559213743ff3e17296db6ec642de20ff8bd94880546001600160a01b0319166001600160a01b0392909216919091179055620001e63390565b6914d15517d491559154d560b21b60005260026020527f08ab7f0be67a8f87f2321ef640b5470ae46710daa6efba2608dff8fac348f23180546001600160a01b0319166001600160a01b0392909216919091179055620002433390565b6714d15517d193919560c21b60005260026020527fd434e93534e48857b3c7b9c0dd607d6e1e706fec96eb87e3609cb927effd31e780546001600160a01b0319166001600160a01b03929092169190911790556200029e3390565b6b5345545f4d4554414441544160a01b60005260026020527f31c0384294de9e515eb0c0393e266c3b00c436c3ad43f94594ddb5512dc1897e80546001600160a01b0319166001600160a01b0392909216919091179055620002fd3390565b7f5345545f524557415244535f48414e444c45520000000000000000000000000060005260026020527f845e43f4b61652b3ef22a183f1e823c852f38ebdb3aa47ff63f30d6e8770442a80546001600160a01b0319166001600160a01b03929092169190911790556200036d3390565b6c2aa72820aaa9a2afaa27a5a2a760991b60005260026020527f94c67a58e2a1596f59176de77cda61f1a0d0f63613471bbfb5577b74669f3f1a80546001600160a01b0319166001600160a01b0392909216919091179055620003cd3390565b6d26a7a224a32cafa12922a0a5a2a960911b60005260026020527f653c2682b4dd2f1d1c8aa00152a2cb2fc74fe48e48f402f47e5a9530eb113de980546001600160a01b0319166001600160a01b03929092169190911790556200042e3390565b6c26a7a224a32cafa820aaa9a2a960991b60005260026020527f854191340f6a8c00f624ed5b84193c4e775f055b507946255dd8d6862003bbeb80546001600160a01b0319166001600160a01b0392909216919091179055506200050f565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600060208284031215620004f057600080fd5b81516001600160a01b03811681146200050857600080fd5b9392505050565b611410806200051f6000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c80637b10399911610104578063afbc0cc6116100a2578063deedfdbd11610071578063deedfdbd146104b6578063f2fde38b146104c9578063f95eb482146104dc578063fe762024146104ef57600080fd5b8063afbc0cc614610454578063b38221ff14610467578063c46449d31461047a578063cd8afab5146104a357600080fd5b80639bb363a9116100de5780639bb363a9146103cc578063a543b2b6146103df578063af0c22a014610406578063af1d21a71461042d57600080fd5b80637b1039991461037d57806387f7f696146103a85780638da5cb5b146103bb57600080fd5b806350669a03116101715780636a2b505a1161014b5780636a2b505a146103285780636ce37bfa1461033b578063704b6c0214610362578063715018a61461037557600080fd5b806350669a03146102e6578063570696cc146102ee5780636497a8a01461031557600080fd5b80632d7c60d7116101ad5780632d7c60d71461024a5780633229929d1461027157806336dcb549146102985780634d592c6a146102bf57600080fd5b80630733423f146101d45780631fc99c411461020e5780632292e2c914610235575b600080fd5b6101fb7f5345545f524557415244535f48414e444c45520000000000000000000000000081565b6040519081526020015b60405180910390f35b6101fb7f4d4f444946595f5041555345520000000000000000000000000000000000000081565b610248610243366004611344565b610502565b005b6101fb7f5345545f464e465400000000000000000000000000000000000000000000000081565b6101fb7f554e50415553455f544f4b454e0000000000000000000000000000000000000081565b6101fb7f5345545f5245564553540000000000000000000000000000000000000000000081565b6101fb7f5345545f41444d494e000000000000000000000000000000000000000000000081565b6102486105ed565b6101fb7f4d4f444946595f425245414b455200000000000000000000000000000000000081565b610248610323366004611379565b6106f9565b61024861033636600461139b565b610817565b6101fb7f5345545f544f4b454e5f5641554c54000000000000000000000000000000000081565b610248610370366004611379565b61093e565b610248610a2a565b600154610390906001600160a01b031681565b6040516001600160a01b039091168152602001610205565b6102486103b6366004611379565b610a90565b6000546001600160a01b0316610390565b6102486103da366004611379565b610b7c565b6101fb7f5345545f4c4f434b5f4d414e414745520000000000000000000000000000000081565b6101fb7f5345545f4d45544144415441000000000000000000000000000000000000000081565b6101fb7f5345545f5245564553545f544f4b454e0000000000000000000000000000000081565b61024861046236600461139b565b610c68565b610248610475366004611379565b610d5c565b610390610488366004611344565b6002602052600090815260409020546001600160a01b031681565b6102486104b13660046113d7565b610e48565b6102486104c4366004611379565b610f36565b6102486104d7366004611379565b611022565b6102486104ea366004611379565b611104565b6102486104fd366004611379565b6111f0565b60008181526002602052604090205481906001600160a01b0316336001600160a01b031614801561053257503315155b6105705760405162461bcd60e51b8152600401610567906020808252600490820152634530373960e01b604082015260600190565b60405180910390fd5b600082815260026020908152604080832080547fffffffffffffffffffffffff0000000000000000000000000000000000000000811690915590518581526001600160a01b03909116929183917f8196f9f918b914a4d4043f6204e98915c50cec14a8e1e0e6393128dcc7d150e8910160405180910390a3505050565b7f554e50415553455f544f4b454e00000000000000000000000000000000000000600081905260026020527f94c67a58e2a1596f59176de77cda61f1a0d0f63613471bbfb5577b74669f3f1a546001600160a01b0316336001600160a01b031614801561065957503315155b61068e5760405162461bcd60e51b8152600401610567906020808252600490820152634530373960e01b604082015260600190565b600160009054906101000a90046001600160a01b03166001600160a01b03166350669a036040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156106de57600080fd5b505af11580156106f2573d6000803e3d6000fd5b5050505050565b7f5345545f544f4b454e5f5641554c540000000000000000000000000000000000600081905260026020527f376548b00e81ffb33e4ff0c1a2559213743ff3e17296db6ec642de20ff8bd948546001600160a01b0316336001600160a01b031614801561076557503315155b61079a5760405162461bcd60e51b8152600401610567906020808252600490820152634530373960e01b604082015260600190565b6001546040517f6497a8a00000000000000000000000000000000000000000000000000000000081526001600160a01b03848116600483015290911690636497a8a0906024015b600060405180830381600087803b1580156107fb57600080fd5b505af115801561080f573d6000803e3d6000fd5b505050505050565b7f4d4f444946595f50415553455200000000000000000000000000000000000000600081905260026020527f854191340f6a8c00f624ed5b84193c4e775f055b507946255dd8d6862003bbeb546001600160a01b0316336001600160a01b031614801561088357503315155b6108b85760405162461bcd60e51b8152600401610567906020808252600490820152634530373960e01b604082015260600190565b6001546040517f6a2b505a0000000000000000000000000000000000000000000000000000000081526001600160a01b038581166004830152841515602483015290911690636a2b505a906044015b600060405180830381600087803b15801561092157600080fd5b505af1158015610935573d6000803e3d6000fd5b50505050505050565b7f5345545f41444d494e0000000000000000000000000000000000000000000000600081905260026020527f95bd01345b72e364704df42ca1a4db135f0cbcc729f0dab7927ad2c15bbd007d546001600160a01b0316336001600160a01b03161480156109aa57503315155b6109df5760405162461bcd60e51b8152600401610567906020808252600490820152634530373960e01b604082015260600190565b6001546040517f704b6c020000000000000000000000000000000000000000000000000000000081526001600160a01b0384811660048301529091169063704b6c02906024016107e1565b6000546001600160a01b03163314610a845760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610567565b610a8e60006112dc565b565b7f5345545f5245564553545f544f4b454e00000000000000000000000000000000600081905260026020527fd9c9885890ed31af70c7d86c2e3db1b7822794f60500365e4b74d8e44ebaaf58546001600160a01b0316336001600160a01b0316148015610afc57503315155b610b315760405162461bcd60e51b8152600401610567906020808252600490820152634530373960e01b604082015260600190565b6001546040517f87f7f6960000000000000000000000000000000000000000000000000000000081526001600160a01b038481166004830152909116906387f7f696906024016107e1565b7f5345545f52455645535400000000000000000000000000000000000000000000600081905260026020527f08ab7f0be67a8f87f2321ef640b5470ae46710daa6efba2608dff8fac348f231546001600160a01b0316336001600160a01b0316148015610be857503315155b610c1d5760405162461bcd60e51b8152600401610567906020808252600490820152634530373960e01b604082015260600190565b6001546040517f9bb363a90000000000000000000000000000000000000000000000000000000081526001600160a01b03848116600483015290911690639bb363a9906024016107e1565b7f4d4f444946595f425245414b4552000000000000000000000000000000000000600081905260026020527f653c2682b4dd2f1d1c8aa00152a2cb2fc74fe48e48f402f47e5a9530eb113de9546001600160a01b0316336001600160a01b0316148015610cd457503315155b610d095760405162461bcd60e51b8152600401610567906020808252600490820152634530373960e01b604082015260600190565b6001546040517fafbc0cc60000000000000000000000000000000000000000000000000000000081526001600160a01b03858116600483015284151560248301529091169063afbc0cc690604401610907565b7f5345545f524557415244535f48414e444c455200000000000000000000000000600081905260026020527f845e43f4b61652b3ef22a183f1e823c852f38ebdb3aa47ff63f30d6e8770442a546001600160a01b0316336001600160a01b0316148015610dc857503315155b610dfd5760405162461bcd60e51b8152600401610567906020808252600490820152634530373960e01b604082015260600190565b6001546040517fb38221ff0000000000000000000000000000000000000000000000000000000081526001600160a01b0384811660048301529091169063b38221ff906024016107e1565b60008281526002602052604090205482906001600160a01b0316336001600160a01b0316148015610e7857503315155b610ead5760405162461bcd60e51b8152600401610567906020808252600490820152634530373960e01b604082015260600190565b6000838152600260205260409081902080546001600160a01b038581167fffffffffffffffffffffffff000000000000000000000000000000000000000083168117909355925192169182907f8196f9f918b914a4d4043f6204e98915c50cec14a8e1e0e6393128dcc7d150e890610f289088815260200190565b60405180910390a350505050565b7f5345545f4c4f434b5f4d414e4147455200000000000000000000000000000000600081905260026020527fc30d9bf31b0fced240d33584404fee99e720b69432ada3b4229bb908fc244650546001600160a01b0316336001600160a01b0316148015610fa257503315155b610fd75760405162461bcd60e51b8152600401610567906020808252600490820152634530373960e01b604082015260600190565b6001546040517fdeedfdbd0000000000000000000000000000000000000000000000000000000081526001600160a01b0384811660048301529091169063deedfdbd906024016107e1565b6000546001600160a01b0316331461107c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610567565b6001600160a01b0381166110f85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610567565b611101816112dc565b50565b7f5345545f464e4654000000000000000000000000000000000000000000000000600081905260026020527fd434e93534e48857b3c7b9c0dd607d6e1e706fec96eb87e3609cb927effd31e7546001600160a01b0316336001600160a01b031614801561117057503315155b6111a55760405162461bcd60e51b8152600401610567906020808252600490820152634530373960e01b604082015260600190565b6001546040517ff95eb4820000000000000000000000000000000000000000000000000000000081526001600160a01b0384811660048301529091169063f95eb482906024016107e1565b7f5345545f4d455441444154410000000000000000000000000000000000000000600081905260026020527f31c0384294de9e515eb0c0393e266c3b00c436c3ad43f94594ddb5512dc1897e546001600160a01b0316336001600160a01b031614801561125c57503315155b6112915760405162461bcd60e51b8152600401610567906020808252600490820152634530373960e01b604082015260600190565b6001546040517ffe7620240000000000000000000000000000000000000000000000000000000081526001600160a01b0384811660048301529091169063fe762024906024016107e1565b600080546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60006020828403121561135657600080fd5b5035919050565b80356001600160a01b038116811461137457600080fd5b919050565b60006020828403121561138b57600080fd5b6113948261135d565b9392505050565b600080604083850312156113ae57600080fd5b6113b78361135d565b9150602083013580151581146113cc57600080fd5b809150509250929050565b600080604083850312156113ea57600080fd5b823591506113fa6020840161135d565b9050925092905056fea164736f6c634300080d000a000000000000000000000000780ce455bc835127182809bc8ff36fffe55bc4b8
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000780ce455bc835127182809bc8ff36fffe55bc4b8
-----Decoded View---------------
Arg [0] : _provider (address): 0x780CE455bc835127182809Bc8fF36fFfE55Bc4B8
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000780ce455bc835127182809bc8ff36fffe55bc4b8
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.