Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
DeFi
Overview
Max Total Supply
346.645362944762702907 iDAI
Holders
20 (0.00%)
Market
Price
$1.13 @ 0.000358 ETH (+0.26%)
Onchain Market Cap
$391.71
Circulating Supply Market Cap
$393.06
Other Info
Token Contract (WITH 18 Decimals)
Balance
0.525472878641482731 iDAIValue
$0.59 ( ~0.000186864877810726 Eth) [0.1516%]Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Similar Match Source Code This contract matches the deployed Bytecode of the Source Code for Contract 0xEC363faa...760E7cdeB The constructor portion of the code might be different and could alter the actual behaviour of the contract
Contract Name:
InstaVault
Compiler Version
v0.8.6+commit.11564f7e
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.0; import "../../infiniteProxy/proxy.sol"; contract InstaVault is Proxy { constructor(address admin_, address dummyImplementation_) Proxy(admin_, dummyImplementation_) {} }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import "./events.sol"; /** * @dev This abstract contract provides a fallback function that delegates all calls to another contract using the EVM * instruction `delegatecall`. */ contract Internals 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 _getImplSigsSlot(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 _getSigsImplSlot(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 getAddressSlot(bytes32 slot_) internal pure returns (AddressSlot storage _r) { assembly { _r.slot := slot_ } } /** * @dev Returns an `SigsSlot` with member `value` located at `slot`. */ function getSigsSlot(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 _setImplementationSigs( address implementation_, bytes4[] memory sigs_ ) internal { require(sigs_.length != 0, "no-sigs"); bytes32 slot_ = _getImplSigsSlot(implementation_); bytes4[] memory sigsCheck_ = getSigsSlot(slot_).value; require(sigsCheck_.length == 0, "implementation-already-exist"); for (uint256 i = 0; i < sigs_.length; i++) { bytes32 sigSlot_ = _getSigsImplSlot(sigs_[i]); require( getAddressSlot(sigSlot_).value == address(0), "sig-already-exist" ); getAddressSlot(sigSlot_).value = implementation_; } getSigsSlot(slot_).value = sigs_; emit setImplementationLog(implementation_, sigs_); } /** * @dev Removes implementation and the mappings corresponding to it. */ function _removeImplementationSigs(address implementation_) internal { bytes32 slot_ = _getImplSigsSlot(implementation_); bytes4[] memory sigs_ = getSigsSlot(slot_).value; require(sigs_.length != 0, "implementation-not-exist"); for (uint256 i = 0; i < sigs_.length; i++) { bytes32 sigSlot_ = _getSigsImplSlot(sigs_[i]); delete getAddressSlot(sigSlot_).value; } delete getSigsSlot(slot_).value; emit removeImplementationLog(implementation_); } /** * @dev Returns bytes4[] sigs from implementation address. If implemenatation is not registered then returns empty array. */ function _getImplementationSigs(address implementation_) internal view returns (bytes4[] memory) { bytes32 slot_ = _getImplSigsSlot(implementation_); return getSigsSlot(slot_).value; } /** * @dev Returns implementation address from bytes4 sig. If sig is not registered then returns address(0). */ function _getSigImplementation(bytes4 sig_) internal view returns (address implementation_) { bytes32 slot_ = _getSigsImplSlot(sig_); return getAddressSlot(slot_).value; } /** * @dev Returns the current admin. */ function _getAdmin() internal view returns (address) { return getAddressSlot(_ADMIN_SLOT).value; } /** * @dev Returns the current dummy-implementation. */ function _getDummyImplementation() internal view returns (address) { return getAddressSlot(_DUMMY_IMPLEMENTATION_SLOT).value; } /** * @dev Stores a new address in the EIP1967 admin slot. */ function _setAdmin(address newAdmin_) internal { address oldAdmin_ = _getAdmin(); require( newAdmin_ != address(0), "ERC1967: new admin is the zero address" ); getAddressSlot(_ADMIN_SLOT).value = newAdmin_; emit setAdminLog(oldAdmin_, newAdmin_); } /** * @dev Stores a new address in the EIP1967 implementation slot. */ function _setDummyImplementation(address newDummyImplementation_) internal { address oldDummyImplementation_ = _getDummyImplementation(); getAddressSlot(_DUMMY_IMPLEMENTATION_SLOT) .value = newDummyImplementation_; emit setDummyImplementationLog( 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 _delegate(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 _fallback(bytes4 sig_) internal { address implementation_ = _getSigImplementation(sig_); require( implementation_ != address(0), "Liquidity: Not able to find implementation_" ); _delegate(implementation_); } } contract AdminStuff is Internals { /** * @dev Only admin gaurd. */ modifier onlyAdmin() { require(msg.sender == _getAdmin(), "not-the-admin"); _; } /** * @dev Sets new admin. */ function setAdmin(address newAdmin_) external onlyAdmin { _setAdmin(newAdmin_); } /** * @dev Sets new dummy-implementation. */ function setDummyImplementation(address newDummyImplementation_) external onlyAdmin { _setDummyImplementation(newDummyImplementation_); } /** * @dev Adds new implementation address. */ function addImplementation(address implementation_, bytes4[] calldata sigs_) external onlyAdmin { _setImplementationSigs(implementation_, sigs_); } /** * @dev Removes an existing implementation address. */ function removeImplementation(address implementation_) external onlyAdmin { _removeImplementationSigs(implementation_); } constructor(address admin_, address dummyImplementation_) { _setAdmin(admin_); _setDummyImplementation(dummyImplementation_); } } abstract contract Proxy is AdminStuff { constructor(address admin_, address dummyImplementation_) AdminStuff(admin_, dummyImplementation_) {} /** * @dev Returns admin's address. */ function getAdmin() external view returns (address) { return _getAdmin(); } /** * @dev Returns dummy-implementations's address. */ function getDummyImplementation() external view returns (address) { return _getDummyImplementation(); } /** * @dev Returns bytes4[] sigs from implementation address If not registered then returns empty array. */ function getImplementationSigs(address impl_) external view returns (bytes4[] memory) { return _getImplementationSigs(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 _getSigImplementation(sig_); } /** * @dev Fallback function that delegates calls to the address returned by Implementations registry. */ fallback() external payable { _fallback(msg.sig); } /** * @dev Fallback function that delegates calls to the address returned by Implementations registry. */ receive() external payable { if (msg.sig != 0x00000000) { _fallback(msg.sig); } } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; contract Events { event setAdminLog(address oldAdmin_, address newAdmin_); event setDummyImplementationLog( address oldDummyImplementation_, address newDummyImplementation_ ); event setImplementationLog(address implementation_, bytes4[] sigs_); event removeImplementationLog(address implementation_); }
{ "optimizer": { "enabled": true, "runs": 200 }, "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":"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":"removeImplementationLog","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldAdmin_","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin_","type":"address"}],"name":"setAdminLog","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldDummyImplementation_","type":"address"},{"indexed":false,"internalType":"address","name":"newDummyImplementation_","type":"address"}],"name":"setDummyImplementationLog","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"implementation_","type":"address"},{"indexed":false,"internalType":"bytes4[]","name":"sigs_","type":"bytes4[]"}],"name":"setImplementationLog","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
60806040523480156200001157600080fd5b506040516200106138038062001061833981016040819052620000349162000208565b8181818162000043826200005a565b6200004e816200013e565b50505050505062000240565b600062000066620001b1565b90506001600160a01b038216620000d25760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b606482015260840160405180910390fd5b816000805160206200102183398151915280546001600160a01b0319166001600160a01b0392831617905560408051838316815291841660208301527fa2010e522d52edde51a4dcbc8241004a97a55844cfa6823ddabbb3cafe993a6291015b60405180910390a15050565b60006200014a620001d3565b9050816000805160206200104183398151915280546001600160a01b0319166001600160a01b0392831617905560408051838316815291841660208301527fa0dd191daed6af360e85495ba5fa09c213452c3cda2f13e995775d5756deda00910162000132565b6000600080516020620010218339815191525b546001600160a01b0316919050565b600060008051602062001041833981519152620001c4565b80516001600160a01b03811681146200020357600080fd5b919050565b600080604083850312156200021c57600080fd5b6200022783620001eb565b91506200023760208401620001eb565b90509250929050565b610dd180620002506000396000f3fe60806040526004361061007f5760003560e01c8063908bfe5e1161004e578063908bfe5e14610161578063a5fcc8bc14610176578063c39aa07d14610196578063f0c01b42146101b6576100ad565b806322175a32146100c25780636e9960c3146100e2578063704b6c021461011457806389396dc814610134576100ad565b366100ad576001600160e01b031960003516156100ab576100ab6000356001600160e01b0319166101d6565b005b6100ab6000356001600160e01b0319166101d6565b3480156100ce57600080fd5b506100ab6100dd366004610b34565b61025f565b3480156100ee57600080fd5b506100f76102a3565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561012057600080fd5b506100ab61012f366004610b34565b6102b2565b34801561014057600080fd5b5061015461014f366004610b34565b6102f3565b60405161010b9190610c77565b34801561016d57600080fd5b506100f7610304565b34801561018257600080fd5b506100f7610191366004610bdc565b61030e565b3480156101a257600080fd5b506100ab6101b1366004610b34565b610319565b3480156101c257600080fd5b506100ab6101d1366004610b56565b61035a565b60006101e1826103d4565b90506001600160a01b0381166102525760405162461bcd60e51b815260206004820152602b60248201527f4c69717569646974793a204e6f742061626c6520746f2066696e6420696d706c60448201526a656d656e746174696f6e5f60a81b60648201526084015b60405180910390fd5b61025b816103f1565b5050565b610267610415565b6001600160a01b0316336001600160a01b0316146102975760405162461bcd60e51b815260040161024990610d35565b6102a081610448565b50565b60006102ad610415565b905090565b6102ba610415565b6001600160a01b0316336001600160a01b0316146102ea5760405162461bcd60e51b815260040161024990610d35565b6102a0816105c3565b60606102fe826106b1565b92915050565b60006102ad610742565b60006102fe826103d4565b610321610415565b6001600160a01b0316336001600160a01b0316146103515760405162461bcd60e51b815260040161024990610d35565b6102a08161076a565b610362610415565b6001600160a01b0316336001600160a01b0316146103925760405162461bcd60e51b815260040161024990610d35565b6103cf838383808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152506107eb92505050565b505050565b6000806103e0836109ef565b546001600160a01b03169392505050565b3660008037600080366000845af43d6000803e808015610410573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b600061045382610a1f565b90506000818054604080516020808402820181019092528281529291908301828280156104cc57602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b0319168152602001906004019060208260030104928301926001038202915080841161048e5790505b505050505090508051600014156105255760405162461bcd60e51b815260206004820152601860248201527f696d706c656d656e746174696f6e2d6e6f742d657869737400000000000000006044820152606401610249565b60005b815181101561057657600061055583838151811061054857610548610d85565b60200260200101516109ef565b80546001600160a01b0319169055508061056e81610d5c565b915050610528565b50610582826000610a32565b6040516001600160a01b03841681527fd854fc630d6476d1ad6df14d295fdb83c1464a63cf75d456f14cd75353696ed39060200160405180910390a1505050565b60006105cd610415565b90506001600160a01b0382166106345760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b6064820152608401610249565b817fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610380546001600160a01b0319166001600160a01b0392831617905560408051838316815291841660208301527fa2010e522d52edde51a4dcbc8241004a97a55844cfa6823ddabbb3cafe993a6291015b60405180910390a15050565b606060006106be83610a1f565b90508080546040805160208084028201810190925282815292919083018282801561073557602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b031916815260200190600401906020826003010492830192600103820291508084116106f75790505b5050505050915050919050565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610439565b6000610774610742565b9050817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392831617905560408051838316815291841660208301527fa0dd191daed6af360e85495ba5fa09c213452c3cda2f13e995775d5756deda0091016106a5565b80516108235760405162461bcd60e51b81526020600482015260076024820152666e6f2d7369677360c81b6044820152606401610249565b600061082e83610a1f565b90506000818054604080516020808402820181019092528281529291908301828280156108a757602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b031916815260200190600401906020826003010492830192600103820291508084116108695790505b5050505050905080516000146108ff5760405162461bcd60e51b815260206004820152601c60248201527f696d706c656d656e746174696f6e2d616c72656164792d6578697374000000006044820152606401610249565b60005b835181101561099d57600061092285838151811061054857610548610d85565b9050600081546001600160a01b0316146109725760405162461bcd60e51b81526020600482015260116024820152701cda59cb585b1c9958591e4b595e1a5cdd607a1b6044820152606401610249565b80546001600160a01b0319166001600160a01b0387161790558061099581610d5c565b915050610902565b50828281516109af9260200190610a57565b507f955f674d8fbada18242ae4d19f71c66ce496150270d0c82520ab4b40ce61d1af84846040516109e1929190610c4b565b60405180910390a150505050565b600081604051602001610a029190610ce1565b604051602081830303815290604052805190602001209050919050565b600081604051602001610a029190610c8a565b5080546000825560070160089004906000526020600020908101906102a09190610b03565b82805482825590600052602060002090600701600890048101928215610af35791602002820160005b83821115610ac157835183826101000a81548163ffffffff021916908360e01c02179055509260200192600401602081600301049283019260010302610a80565b8015610af15782816101000a81549063ffffffff0219169055600401602081600301049283019260010302610ac1565b505b50610aff929150610b03565b5090565b5b80821115610aff5760008155600101610b04565b80356001600160a01b0381168114610b2f57600080fd5b919050565b600060208284031215610b4657600080fd5b610b4f82610b18565b9392505050565b600080600060408486031215610b6b57600080fd5b610b7484610b18565b9250602084013567ffffffffffffffff80821115610b9157600080fd5b818601915086601f830112610ba557600080fd5b813581811115610bb457600080fd5b8760208260051b8501011115610bc957600080fd5b6020830194508093505050509250925092565b600060208284031215610bee57600080fd5b81356001600160e01b031981168114610b4f57600080fd5b600081518084526020808501945080840160005b83811015610c405781516001600160e01b03191687529582019590820190600101610c1a565b509495945050505050565b6001600160a01b0383168152604060208201819052600090610c6f90830184610c06565b949350505050565b602081526000610b4f6020830184610c06565b604081526000610cc760408301601c81527f656970313936372e70726f78792e696d706c656d656e746174696f6e00000000602082015260400190565b6001600160a01b0393909316602092909201919091525090565b604081526000610d1e60408301601c81527f656970313936372e70726f78792e696d706c656d656e746174696f6e00000000602082015260400190565b905063ffffffff60e01b8316602083015292915050565b6020808252600d908201526c3737ba16ba343296b0b236b4b760991b604082015260600190565b6000600019821415610d7e57634e487b7160e01b600052601160045260246000fd5b5060010190565b634e487b7160e01b600052603260045260246000fdfea264697066735822122008555c4a0a3da1af739b3f2cc93701c583da767f0f6208b71609ff03b7b37f7264736f6c63430008060033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc00000000000000000000000085b40eb65e49eb61de78a3a989752249f8837fc500000000000000000000000071a990035d6126e520bbb939ea00dbf455a912e6
Deployed Bytecode
0x60806040526004361061007f5760003560e01c8063908bfe5e1161004e578063908bfe5e14610161578063a5fcc8bc14610176578063c39aa07d14610196578063f0c01b42146101b6576100ad565b806322175a32146100c25780636e9960c3146100e2578063704b6c021461011457806389396dc814610134576100ad565b366100ad576001600160e01b031960003516156100ab576100ab6000356001600160e01b0319166101d6565b005b6100ab6000356001600160e01b0319166101d6565b3480156100ce57600080fd5b506100ab6100dd366004610b34565b61025f565b3480156100ee57600080fd5b506100f76102a3565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561012057600080fd5b506100ab61012f366004610b34565b6102b2565b34801561014057600080fd5b5061015461014f366004610b34565b6102f3565b60405161010b9190610c77565b34801561016d57600080fd5b506100f7610304565b34801561018257600080fd5b506100f7610191366004610bdc565b61030e565b3480156101a257600080fd5b506100ab6101b1366004610b34565b610319565b3480156101c257600080fd5b506100ab6101d1366004610b56565b61035a565b60006101e1826103d4565b90506001600160a01b0381166102525760405162461bcd60e51b815260206004820152602b60248201527f4c69717569646974793a204e6f742061626c6520746f2066696e6420696d706c60448201526a656d656e746174696f6e5f60a81b60648201526084015b60405180910390fd5b61025b816103f1565b5050565b610267610415565b6001600160a01b0316336001600160a01b0316146102975760405162461bcd60e51b815260040161024990610d35565b6102a081610448565b50565b60006102ad610415565b905090565b6102ba610415565b6001600160a01b0316336001600160a01b0316146102ea5760405162461bcd60e51b815260040161024990610d35565b6102a0816105c3565b60606102fe826106b1565b92915050565b60006102ad610742565b60006102fe826103d4565b610321610415565b6001600160a01b0316336001600160a01b0316146103515760405162461bcd60e51b815260040161024990610d35565b6102a08161076a565b610362610415565b6001600160a01b0316336001600160a01b0316146103925760405162461bcd60e51b815260040161024990610d35565b6103cf838383808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152506107eb92505050565b505050565b6000806103e0836109ef565b546001600160a01b03169392505050565b3660008037600080366000845af43d6000803e808015610410573d6000f35b3d6000fd5b60007fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b546001600160a01b0316919050565b600061045382610a1f565b90506000818054604080516020808402820181019092528281529291908301828280156104cc57602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b0319168152602001906004019060208260030104928301926001038202915080841161048e5790505b505050505090508051600014156105255760405162461bcd60e51b815260206004820152601860248201527f696d706c656d656e746174696f6e2d6e6f742d657869737400000000000000006044820152606401610249565b60005b815181101561057657600061055583838151811061054857610548610d85565b60200260200101516109ef565b80546001600160a01b0319169055508061056e81610d5c565b915050610528565b50610582826000610a32565b6040516001600160a01b03841681527fd854fc630d6476d1ad6df14d295fdb83c1464a63cf75d456f14cd75353696ed39060200160405180910390a1505050565b60006105cd610415565b90506001600160a01b0382166106345760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b6064820152608401610249565b817fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610380546001600160a01b0319166001600160a01b0392831617905560408051838316815291841660208301527fa2010e522d52edde51a4dcbc8241004a97a55844cfa6823ddabbb3cafe993a6291015b60405180910390a15050565b606060006106be83610a1f565b90508080546040805160208084028201810190925282815292919083018282801561073557602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b031916815260200190600401906020826003010492830192600103820291508084116106f75790505b5050505050915050919050565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc610439565b6000610774610742565b9050817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392831617905560408051838316815291841660208301527fa0dd191daed6af360e85495ba5fa09c213452c3cda2f13e995775d5756deda0091016106a5565b80516108235760405162461bcd60e51b81526020600482015260076024820152666e6f2d7369677360c81b6044820152606401610249565b600061082e83610a1f565b90506000818054604080516020808402820181019092528281529291908301828280156108a757602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b031916815260200190600401906020826003010492830192600103820291508084116108695790505b5050505050905080516000146108ff5760405162461bcd60e51b815260206004820152601c60248201527f696d706c656d656e746174696f6e2d616c72656164792d6578697374000000006044820152606401610249565b60005b835181101561099d57600061092285838151811061054857610548610d85565b9050600081546001600160a01b0316146109725760405162461bcd60e51b81526020600482015260116024820152701cda59cb585b1c9958591e4b595e1a5cdd607a1b6044820152606401610249565b80546001600160a01b0319166001600160a01b0387161790558061099581610d5c565b915050610902565b50828281516109af9260200190610a57565b507f955f674d8fbada18242ae4d19f71c66ce496150270d0c82520ab4b40ce61d1af84846040516109e1929190610c4b565b60405180910390a150505050565b600081604051602001610a029190610ce1565b604051602081830303815290604052805190602001209050919050565b600081604051602001610a029190610c8a565b5080546000825560070160089004906000526020600020908101906102a09190610b03565b82805482825590600052602060002090600701600890048101928215610af35791602002820160005b83821115610ac157835183826101000a81548163ffffffff021916908360e01c02179055509260200192600401602081600301049283019260010302610a80565b8015610af15782816101000a81549063ffffffff0219169055600401602081600301049283019260010302610ac1565b505b50610aff929150610b03565b5090565b5b80821115610aff5760008155600101610b04565b80356001600160a01b0381168114610b2f57600080fd5b919050565b600060208284031215610b4657600080fd5b610b4f82610b18565b9392505050565b600080600060408486031215610b6b57600080fd5b610b7484610b18565b9250602084013567ffffffffffffffff80821115610b9157600080fd5b818601915086601f830112610ba557600080fd5b813581811115610bb457600080fd5b8760208260051b8501011115610bc957600080fd5b6020830194508093505050509250925092565b600060208284031215610bee57600080fd5b81356001600160e01b031981168114610b4f57600080fd5b600081518084526020808501945080840160005b83811015610c405781516001600160e01b03191687529582019590820190600101610c1a565b509495945050505050565b6001600160a01b0383168152604060208201819052600090610c6f90830184610c06565b949350505050565b602081526000610b4f6020830184610c06565b604081526000610cc760408301601c81527f656970313936372e70726f78792e696d706c656d656e746174696f6e00000000602082015260400190565b6001600160a01b0393909316602092909201919091525090565b604081526000610d1e60408301601c81527f656970313936372e70726f78792e696d706c656d656e746174696f6e00000000602082015260400190565b905063ffffffff60e01b8316602083015292915050565b6020808252600d908201526c3737ba16ba343296b0b236b4b760991b604082015260600190565b6000600019821415610d7e57634e487b7160e01b600052601160045260246000fd5b5060010190565b634e487b7160e01b600052603260045260246000fdfea264697066735822122008555c4a0a3da1af739b3f2cc93701c583da767f0f6208b71609ff03b7b37f7264736f6c63430008060033
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.