Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
DeFi
Overview
Max Total Supply
34,241.001936020520272558 iETHv2
Holders
974 ( -0.103%)
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
$0.00
Other Info
Token Contract (WITH 18 Decimals)
Balance
0.000022302100755573 iETHv2Value
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
Vault
Compiler Version
v0.8.17+commit.8df45f5f
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity ^0.8.13; import "../../infiniteProxy/proxy.sol"; contract Vault is Proxy { constructor(address admin_, address dummyImplementation_) Proxy(admin_, dummyImplementation_) {} }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.13; contract Events { event LogSetAdmin(address oldAdmin_, address newAdmin_); event LogSetDummyImplementation( address oldDummyImplementation_, address newDummyImplementation_ ); event LogSetImplementation(address implementation_, bytes4[] sigs_); event LogRemoveImplementation(address implementation_); }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.13; import { Events } from "./events.sol"; contract CoreInternals is Events { struct AddressSlot { address value; } struct SigsSlot { bytes4[] value; } /// @dev Storage slot with the admin of the contract. /// This is the keccak-256 hash of "eip1967.proxy.admin" subtracted by 1, and is /// validated in the constructor. bytes32 internal constant _ADMIN_SLOT = 0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103; /// @dev Storage slot with the address of the current dummy-implementation. /// This is the keccak-256 hash of "eip1967.proxy.implementation" subtracted by 1, and is /// validated in the constructor. bytes32 internal constant _DUMMY_IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc; /// @dev Returns the storage slot which stores the sigs array set for the implementation. function getSlotImplSigsSlotInternal(address implementation_) internal pure returns (bytes32) { return keccak256(abi.encode("eip1967.proxy.implementation", implementation_)); } /// @dev Returns the storage slot which stores the implementation address for the function sig. function getSlotSigsImplSlotInternal(bytes4 sig_) internal pure returns (bytes32) { return keccak256(abi.encode("eip1967.proxy.implementation", sig_)); } /// @dev Returns an `AddressSlot` with member `value` located at `slot`. function getAddressSlotInternal(bytes32 slot_) internal pure returns (AddressSlot storage _r) { assembly { _r.slot := slot_ } } /// @dev Returns an `SigsSlot` with member `value` located at `slot`. function getSigsSlotInternal(bytes32 slot_) internal pure returns (SigsSlot storage _r) { assembly { _r.slot := slot_ } } /// @dev Sets new implementation and adds mapping from implementation to sigs and sig to implementation. function setImplementationSigsInternal(address implementation_, bytes4[] memory sigs_) internal { require(sigs_.length != 0, "no-sigs"); bytes32 slot_ = getSlotImplSigsSlotInternal(implementation_); bytes4[] memory sigsCheck_ = getSigsSlotInternal(slot_).value; require(sigsCheck_.length == 0, "implementation-already-exist"); for (uint256 i; i < sigs_.length; i++) { bytes32 sigSlot_ = getSlotSigsImplSlotInternal(sigs_[i]); require(getAddressSlotInternal(sigSlot_).value == address(0), "sig-already-exist"); getAddressSlotInternal(sigSlot_).value = implementation_; } getSigsSlotInternal(slot_).value = sigs_; emit LogSetImplementation(implementation_, sigs_); } /// @dev Removes implementation and the mappings corresponding to it. function removeImplementationSigsInternal(address implementation_) internal { bytes32 slot_ = getSlotImplSigsSlotInternal(implementation_); bytes4[] memory sigs_ = getSigsSlotInternal(slot_).value; require(sigs_.length != 0, "implementation-not-exist"); for (uint256 i; i < sigs_.length; i++) { bytes32 sigSlot_ = getSlotSigsImplSlotInternal(sigs_[i]); delete getAddressSlotInternal(sigSlot_).value; } delete getSigsSlotInternal(slot_).value; emit LogRemoveImplementation(implementation_); } /// @dev Returns bytes4[] sigs from implementation address. If implemenatation is not registered then returns empty array. function getImplementationSigsInternal(address implementation_) internal view returns (bytes4[] memory) { bytes32 slot_ = getSlotImplSigsSlotInternal(implementation_); return getSigsSlotInternal(slot_).value; } /// @dev Returns implementation address from bytes4 sig. If sig is not registered then returns address(0). function getSigImplementationInternal(bytes4 sig_) internal view returns (address implementation_) { bytes32 slot_ = getSlotSigsImplSlotInternal(sig_); return getAddressSlotInternal(slot_).value; } /// @dev Returns the current admin. function getAdminInternal() internal view returns (address) { return getAddressSlotInternal(_ADMIN_SLOT).value; } /// @dev Returns the current dummy-implementation. function getDummyImplementationInternal() internal view returns (address) { return getAddressSlotInternal(_DUMMY_IMPLEMENTATION_SLOT).value; } /// @dev Stores a new address in the EIP1967 admin slot. function setAdminInternal(address newAdmin_) internal { address oldAdmin_ = getAdminInternal(); require(newAdmin_ != address(0), "ERC1967: new admin is the zero address"); getAddressSlotInternal(_ADMIN_SLOT).value = newAdmin_; emit LogSetAdmin(oldAdmin_, newAdmin_); } /// @dev Stores a new address in the EIP1967 implementation slot. function setDummyImplementationInternal(address newDummyImplementation_) internal { address oldDummyImplementation_ = getDummyImplementationInternal(); getAddressSlotInternal(_DUMMY_IMPLEMENTATION_SLOT).value = newDummyImplementation_; emit LogSetDummyImplementation(oldDummyImplementation_, newDummyImplementation_); } /// @dev Delegates the current call to `implementation`. /// This function does not return to its internall call site, it will return directly to the external caller. function delegateInternal(address implementation_) internal { // solhint-disable-next-line no-inline-assembly assembly { // Copy msg.data. We take full control of memory in this inline assembly // block because it will not return to Solidity code. We overwrite the // Solidity scratch pad at memory position 0. calldatacopy(0, 0, calldatasize()) // Call the implementation. // out and outsize are 0 because we don't know the size yet. let result := delegatecall(gas(), implementation_, 0, calldatasize(), 0, 0) // Copy the returned data. returndatacopy(0, 0, returndatasize()) switch result // delegatecall returns 0 on error. case 0 { revert(0, returndatasize()) } default { return(0, returndatasize()) } } } /// @dev Delegates the current call to the address returned by Implementations registry. /// This function does not return to its internall call site, it will return directly to the external caller. function fallbackInternal(bytes4 sig_) internal { address implementation_ = getSigImplementationInternal(sig_); require(implementation_ != address(0), "Liquidity: Not able to find implementation_"); delegateInternal(implementation_); } } contract AdminInternals is CoreInternals { /// @dev Only admin guard modifier onlyAdmin() { require(msg.sender == getAdminInternal(), "only-admin"); _; } constructor(address admin_, address dummyImplementation_) { setAdminInternal(admin_); setDummyImplementationInternal(dummyImplementation_); } /// @dev Sets new admin. function setAdmin(address newAdmin_) external onlyAdmin { setAdminInternal(newAdmin_); } /// @dev Sets new dummy-implementation. function setDummyImplementation(address newDummyImplementation_) external onlyAdmin { setDummyImplementationInternal(newDummyImplementation_); } /// @dev Adds new implementation address. function addImplementation(address implementation_, bytes4[] calldata sigs_) external onlyAdmin { setImplementationSigsInternal(implementation_, sigs_); } /// @dev Removes an existing implementation address. function removeImplementation(address implementation_) external onlyAdmin { removeImplementationSigsInternal(implementation_); } } /// @title Proxy /// @notice This abstract contract provides a fallback function that delegates all calls to another contract using the EVM abstract contract Proxy is AdminInternals { constructor(address admin_, address dummyImplementation_) AdminInternals(admin_, dummyImplementation_) {} /// @dev Returns admin's address. function getAdmin() external view returns (address) { return getAdminInternal(); } /// @dev Returns dummy-implementations's address. function getDummyImplementation() external view returns (address) { return getDummyImplementationInternal(); } /// @dev Returns bytes4[] sigs from implementation address If not registered then returns empty array. function getImplementationSigs(address impl_) external view returns (bytes4[] memory) { return getImplementationSigsInternal(impl_); } /// @dev Returns implementation address from bytes4 sig. If sig is not registered then returns address(0). function getSigsImplementation(bytes4 sig_) external view returns (address) { return getSigImplementationInternal(sig_); } /// @dev Fallback function that delegates calls to the address returned by Implementations registry. fallback() external payable { fallbackInternal(msg.sig); } /// @dev Fallback function that delegates calls to the address returned by Implementations registry. receive() external payable { if (msg.sig != 0x00000000) { fallbackInternal(msg.sig); } } }
{ "optimizer": { "enabled": true, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "metadata": { "useLiteralContent": true }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"admin_","type":"address"},{"internalType":"address","name":"dummyImplementation_","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"implementation_","type":"address"}],"name":"LogRemoveImplementation","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldAdmin_","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin_","type":"address"}],"name":"LogSetAdmin","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldDummyImplementation_","type":"address"},{"indexed":false,"internalType":"address","name":"newDummyImplementation_","type":"address"}],"name":"LogSetDummyImplementation","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"implementation_","type":"address"},{"indexed":false,"internalType":"bytes4[]","name":"sigs_","type":"bytes4[]"}],"name":"LogSetImplementation","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"address","name":"implementation_","type":"address"},{"internalType":"bytes4[]","name":"sigs_","type":"bytes4[]"}],"name":"addImplementation","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDummyImplementation","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"impl_","type":"address"}],"name":"getImplementationSigs","outputs":[{"internalType":"bytes4[]","name":"","type":"bytes4[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes4","name":"sig_","type":"bytes4"}],"name":"getSigsImplementation","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"implementation_","type":"address"}],"name":"removeImplementation","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAdmin_","type":"address"}],"name":"setAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newDummyImplementation_","type":"address"}],"name":"setDummyImplementation","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040523480156200001157600080fd5b506040516200105e3803806200105e833981016040819052620000349162000208565b8181818162000043826200005a565b6200004e816200013e565b50505050505062000240565b600062000066620001b1565b90506001600160a01b038216620000d25760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840160405180910390fd5b816000805160206200101e83398151915280546001600160a01b0319166001600160a01b0392831617905560408051838316815291841660208301527fb2396a4169c0fac3eb0713eb7d54220cbe5e21e585a59578ec4de929657c073391015b60405180910390a15050565b60006200014a620001d3565b9050816000805160206200103e83398151915280546001600160a01b0319166001600160a01b0392831617905560408051838316815291841660208301527f761380f4203cd2fcc7ee1ae32561463bc08bbf6761cb9d5caa925f99a6d54502910162000132565b60006000805160206200101e8339815191525b546001600160a01b0316919050565b60006000805160206200103e833981519152620001c4565b80516001600160a01b03811681146200020357600080fd5b919050565b600080604083850312156200021c57600080fd5b6200022783620001eb565b91506200023760208401620001eb565b90509250929050565b610dce80620002506000396000f3fe60806040526004361061007f5760003560e01c8063908bfe5e1161004e578063908bfe5e14610161578063a5fcc8bc14610176578063c39aa07d14610196578063f0c01b42146101b6576100ad565b806322175a32146100c25780636e9960c3146100e2578063704b6c021461011457806389396dc814610134576100ad565b366100ad576001600160e01b031960003516156100ab576100ab6000356001600160e01b0319166101d6565b005b6100ab6000356001600160e01b0319166101d6565b3480156100ce57600080fd5b506100ab6100dd366004610b36565b61025f565b3480156100ee57600080fd5b506100f76102a3565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561012057600080fd5b506100ab61012f366004610b36565b6102b2565b34801561014057600080fd5b5061015461014f366004610b36565b6102f3565b60405161010b9190610b9d565b34801561016d57600080fd5b506100f7610304565b34801561018257600080fd5b506100f7610191366004610bb0565b61030e565b3480156101a257600080fd5b506100ab6101b1366004610b36565b610319565b3480156101c257600080fd5b506100ab6101d1366004610bda565b61035a565b60006101e1826103d4565b90506001600160a01b0381166102525760405162461bcd60e51b815260206004820152602b60248201527f4c69717569646974793a204e6f742061626c6520746f2066696e6420696d706c60448201526a656d656e746174696f6e5f60a81b60648201526084015b60405180910390fd5b61025b816103f1565b5050565b610267610415565b6001600160a01b0316336001600160a01b0316146102975760405162461bcd60e51b815260040161024990610c60565b6102a081610448565b50565b60006102ad610415565b905090565b6102ba610415565b6001600160a01b0316336001600160a01b0316146102ea5760405162461bcd60e51b815260040161024990610c60565b6102a0816105c2565b60606102fe826106b0565b92915050565b60006102ad610741565b60006102fe826103d4565b610321610415565b6001600160a01b0316336001600160a01b0316146103515760405162461bcd60e51b815260040161024990610c60565b6102a081610769565b610362610415565b6001600160a01b0316336001600160a01b0316146103925760405162461bcd60e51b815260040161024990610c60565b6103cf838383808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152506107ea92505050565b505050565b6000806103e0836109f1565b546001600160a01b03169392505050565b3660008037600080366000845af43d6000803e808015610410573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b600061045382610a21565b90506000818054604080516020808402820181019092528281529291908301828280156104cc57602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b0319168152602001906004019060208260030104928301926001038202915080841161048e5790505b5050505050905080516000036105245760405162461bcd60e51b815260206004820152601860248201527f696d706c656d656e746174696f6e2d6e6f742d657869737400000000000000006044820152606401610249565b60005b815181101561057557600061055483838151811061054757610547610c84565b60200260200101516109f1565b80546001600160a01b0319169055508061056d81610c9a565b915050610527565b50610581826000610a34565b6040516001600160a01b03841681527fda53aaefabec4c3f8ba693a2e3c67fa0152fbd71c369d51f669e66b28a4a08649060200160405180910390a1505050565b60006105cc610415565b90506001600160a01b0382166106335760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b6064820152608401610249565b817fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610380546001600160a01b0319166001600160a01b0392831617905560408051838316815291841660208301527fb2396a4169c0fac3eb0713eb7d54220cbe5e21e585a59578ec4de929657c073391015b60405180910390a15050565b606060006106bd83610a21565b90508080546040805160208084028201810190925282815292919083018282801561073457602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b031916815260200190600401906020826003010492830192600103820291508084116106f65790505b5050505050915050919050565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610439565b6000610773610741565b9050817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392831617905560408051838316815291841660208301527f761380f4203cd2fcc7ee1ae32561463bc08bbf6761cb9d5caa925f99a6d5450291016106a4565b80516000036108255760405162461bcd60e51b81526020600482015260076024820152666e6f2d7369677360c81b6044820152606401610249565b600061083083610a21565b90506000818054604080516020808402820181019092528281529291908301828280156108a957602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b0319168152602001906004019060208260030104928301926001038202915080841161086b5790505b5050505050905080516000146109015760405162461bcd60e51b815260206004820152601c60248201527f696d706c656d656e746174696f6e2d616c72656164792d6578697374000000006044820152606401610249565b60005b835181101561099f57600061092485838151811061054757610547610c84565b9050600081546001600160a01b0316146109745760405162461bcd60e51b81526020600482015260116024820152701cda59cb585b1c9958591e4b595e1a5cdd607a1b6044820152606401610249565b80546001600160a01b0319166001600160a01b0387161790558061099781610c9a565b915050610904565b50828281516109b19260200190610a59565b507fd613a4a18e567ee1f2db4d5b528a5fee09f7dff92d6fb708afd6c095070a9c6d84846040516109e3929190610cc1565b60405180910390a150505050565b600081604051602001610a049190610ced565b604051602081830303815290604052805190602001209050919050565b600081604051602001610a049190610d41565b5080546000825560070160089004906000526020600020908101906102a09190610b05565b82805482825590600052602060002090600701600890048101928215610af55791602002820160005b83821115610ac357835183826101000a81548163ffffffff021916908360e01c02179055509260200192600401602081600301049283019260010302610a82565b8015610af35782816101000a81549063ffffffff0219169055600401602081600301049283019260010302610ac3565b505b50610b01929150610b05565b5090565b5b80821115610b015760008155600101610b06565b80356001600160a01b0381168114610b3157600080fd5b919050565b600060208284031215610b4857600080fd5b610b5182610b1a565b9392505050565b600081518084526020808501945080840160005b83811015610b925781516001600160e01b03191687529582019590820190600101610b6c565b509495945050505050565b602081526000610b516020830184610b58565b600060208284031215610bc257600080fd5b81356001600160e01b031981168114610b5157600080fd5b600080600060408486031215610bef57600080fd5b610bf884610b1a565b9250602084013567ffffffffffffffff80821115610c1557600080fd5b818601915086601f830112610c2957600080fd5b813581811115610c3857600080fd5b8760208260051b8501011115610c4d57600080fd5b6020830194508093505050509250925092565b6020808252600a908201526937b7363c96b0b236b4b760b11b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b600060018201610cba57634e487b7160e01b600052601160045260246000fd5b5060010190565b6001600160a01b0383168152604060208201819052600090610ce590830184610b58565b949350505050565b604081526000610d2a60408301601c81527f656970313936372e70726f78792e696d706c656d656e746174696f6e00000000602082015260400190565b905063ffffffff60e01b8316602083015292915050565b604081526000610d7e60408301601c81527f656970313936372e70726f78792e696d706c656d656e746174696f6e00000000602082015260400190565b6001600160a01b039390931660209290920191909152509056fea2646970667358221220be0b7f4d221d754e3f0731fbc4893a6a7ef8e39f9355766823eb39dc718ae98764736f6c63430008110033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc000000000000000000000000910e413dbf3f6276fe8213ff656726bdc142e08e000000000000000000000000172455d14d1eb242e6f7f3b451529ab289095bb6
Deployed Bytecode
0x60806040526004361061007f5760003560e01c8063908bfe5e1161004e578063908bfe5e14610161578063a5fcc8bc14610176578063c39aa07d14610196578063f0c01b42146101b6576100ad565b806322175a32146100c25780636e9960c3146100e2578063704b6c021461011457806389396dc814610134576100ad565b366100ad576001600160e01b031960003516156100ab576100ab6000356001600160e01b0319166101d6565b005b6100ab6000356001600160e01b0319166101d6565b3480156100ce57600080fd5b506100ab6100dd366004610b36565b61025f565b3480156100ee57600080fd5b506100f76102a3565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561012057600080fd5b506100ab61012f366004610b36565b6102b2565b34801561014057600080fd5b5061015461014f366004610b36565b6102f3565b60405161010b9190610b9d565b34801561016d57600080fd5b506100f7610304565b34801561018257600080fd5b506100f7610191366004610bb0565b61030e565b3480156101a257600080fd5b506100ab6101b1366004610b36565b610319565b3480156101c257600080fd5b506100ab6101d1366004610bda565b61035a565b60006101e1826103d4565b90506001600160a01b0381166102525760405162461bcd60e51b815260206004820152602b60248201527f4c69717569646974793a204e6f742061626c6520746f2066696e6420696d706c60448201526a656d656e746174696f6e5f60a81b60648201526084015b60405180910390fd5b61025b816103f1565b5050565b610267610415565b6001600160a01b0316336001600160a01b0316146102975760405162461bcd60e51b815260040161024990610c60565b6102a081610448565b50565b60006102ad610415565b905090565b6102ba610415565b6001600160a01b0316336001600160a01b0316146102ea5760405162461bcd60e51b815260040161024990610c60565b6102a0816105c2565b60606102fe826106b0565b92915050565b60006102ad610741565b60006102fe826103d4565b610321610415565b6001600160a01b0316336001600160a01b0316146103515760405162461bcd60e51b815260040161024990610c60565b6102a081610769565b610362610415565b6001600160a01b0316336001600160a01b0316146103925760405162461bcd60e51b815260040161024990610c60565b6103cf838383808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152506107ea92505050565b505050565b6000806103e0836109f1565b546001600160a01b03169392505050565b3660008037600080366000845af43d6000803e808015610410573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b600061045382610a21565b90506000818054604080516020808402820181019092528281529291908301828280156104cc57602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b0319168152602001906004019060208260030104928301926001038202915080841161048e5790505b5050505050905080516000036105245760405162461bcd60e51b815260206004820152601860248201527f696d706c656d656e746174696f6e2d6e6f742d657869737400000000000000006044820152606401610249565b60005b815181101561057557600061055483838151811061054757610547610c84565b60200260200101516109f1565b80546001600160a01b0319169055508061056d81610c9a565b915050610527565b50610581826000610a34565b6040516001600160a01b03841681527fda53aaefabec4c3f8ba693a2e3c67fa0152fbd71c369d51f669e66b28a4a08649060200160405180910390a1505050565b60006105cc610415565b90506001600160a01b0382166106335760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b6064820152608401610249565b817fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610380546001600160a01b0319166001600160a01b0392831617905560408051838316815291841660208301527fb2396a4169c0fac3eb0713eb7d54220cbe5e21e585a59578ec4de929657c073391015b60405180910390a15050565b606060006106bd83610a21565b90508080546040805160208084028201810190925282815292919083018282801561073457602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b031916815260200190600401906020826003010492830192600103820291508084116106f65790505b5050505050915050919050565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610439565b6000610773610741565b9050817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392831617905560408051838316815291841660208301527f761380f4203cd2fcc7ee1ae32561463bc08bbf6761cb9d5caa925f99a6d5450291016106a4565b80516000036108255760405162461bcd60e51b81526020600482015260076024820152666e6f2d7369677360c81b6044820152606401610249565b600061083083610a21565b90506000818054604080516020808402820181019092528281529291908301828280156108a957602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b0319168152602001906004019060208260030104928301926001038202915080841161086b5790505b5050505050905080516000146109015760405162461bcd60e51b815260206004820152601c60248201527f696d706c656d656e746174696f6e2d616c72656164792d6578697374000000006044820152606401610249565b60005b835181101561099f57600061092485838151811061054757610547610c84565b9050600081546001600160a01b0316146109745760405162461bcd60e51b81526020600482015260116024820152701cda59cb585b1c9958591e4b595e1a5cdd607a1b6044820152606401610249565b80546001600160a01b0319166001600160a01b0387161790558061099781610c9a565b915050610904565b50828281516109b19260200190610a59565b507fd613a4a18e567ee1f2db4d5b528a5fee09f7dff92d6fb708afd6c095070a9c6d84846040516109e3929190610cc1565b60405180910390a150505050565b600081604051602001610a049190610ced565b604051602081830303815290604052805190602001209050919050565b600081604051602001610a049190610d41565b5080546000825560070160089004906000526020600020908101906102a09190610b05565b82805482825590600052602060002090600701600890048101928215610af55791602002820160005b83821115610ac357835183826101000a81548163ffffffff021916908360e01c02179055509260200192600401602081600301049283019260010302610a82565b8015610af35782816101000a81549063ffffffff0219169055600401602081600301049283019260010302610ac3565b505b50610b01929150610b05565b5090565b5b80821115610b015760008155600101610b06565b80356001600160a01b0381168114610b3157600080fd5b919050565b600060208284031215610b4857600080fd5b610b5182610b1a565b9392505050565b600081518084526020808501945080840160005b83811015610b925781516001600160e01b03191687529582019590820190600101610b6c565b509495945050505050565b602081526000610b516020830184610b58565b600060208284031215610bc257600080fd5b81356001600160e01b031981168114610b5157600080fd5b600080600060408486031215610bef57600080fd5b610bf884610b1a565b9250602084013567ffffffffffffffff80821115610c1557600080fd5b818601915086601f830112610c2957600080fd5b813581811115610c3857600080fd5b8760208260051b8501011115610c4d57600080fd5b6020830194508093505050509250925092565b6020808252600a908201526937b7363c96b0b236b4b760b11b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b600060018201610cba57634e487b7160e01b600052601160045260246000fd5b5060010190565b6001600160a01b0383168152604060208201819052600090610ce590830184610b58565b949350505050565b604081526000610d2a60408301601c81527f656970313936372e70726f78792e696d706c656d656e746174696f6e00000000602082015260400190565b905063ffffffff60e01b8316602083015292915050565b604081526000610d7e60408301601c81527f656970313936372e70726f78792e696d706c656d656e746174696f6e00000000602082015260400190565b6001600160a01b039390931660209290920191909152509056fea2646970667358221220be0b7f4d221d754e3f0731fbc4893a6a7ef8e39f9355766823eb39dc718ae98764736f6c63430008110033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000910e413dbf3f6276fe8213ff656726bdc142e08e000000000000000000000000172455d14d1eb242e6f7f3b451529ab289095bb6
-----Decoded View---------------
Arg [0] : admin_ (address): 0x910E413DBF3F6276Fe8213fF656726bDc142E08E
Arg [1] : dummyImplementation_ (address): 0x172455D14D1eb242e6f7F3B451529aB289095BB6
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000910e413dbf3f6276fe8213ff656726bdc142e08e
Arg [1] : 000000000000000000000000172455d14d1eb242e6f7f3b451529ab289095bb6
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.