Overview
S Balance
0 S
S Value
$0.00More Info
Private Name Tags
ContractCreator
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
TokenInfo
Compiler Version
v0.8.28+commit.7893614a
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; // https://github.com/ensdomains/reverse-records/blob/master/contracts/ReverseRecords.sol interface IReverseRecords { function getNames( address[] calldata addresses ) external view returns (string[] memory ensNames); } struct Info { string symbol; string name; uint256 decimals; bool noContract; bool nft; string ensName; } /** * @notice Used to get token information for many addresses in a single call. * If an address is not a contract or a token, the batch will not fail. * @author Nick Addison */ contract TokenInfo { /// @notice caps the gas used when attempting to get the token symbol, name and decimals uint256 CALL_GAS_LIMIT = 50000; /// @notice The address of the Ethereum Name Service's ReverseRecords contract /// @dev Only available on Mainnet and Goerli. address public immutable ReverseRecords; /// @param _reverseRecords The address of the Ethereum Name Service's ReverseRecords contract constructor(address _reverseRecords) { ReverseRecords = _reverseRecords; } /// @notice Gets contract and token information for a list of address. /// Getting the token name, symbol, decimals and NFT interface checks are wrapped /// in a try catch to prevent the batch from reverting if one of the addresses is not a token. function getInfoBatch( address[] calldata tokens ) external view returns (Info[] memory infos) { string[] memory ensNames = address(ReverseRecords) != address(0) ? IReverseRecords(ReverseRecords).getNames(tokens) : new string[](tokens.length); infos = new Info[](tokens.length); for (uint8 i = 0; i < tokens.length; i++) { infos[i] = this.getInfo(tokens[i]); infos[i].ensName = ensNames[i]; } } /// @notice Gets contract and token information for a an address. /// Getting the token name, symbol, decimals and NFT interface checks are wrapped /// in a try catch to prevent the call from reverting if the address is not a token. function getInfo(address token) external view returns (Info memory info) { // Does code exists for the token? uint32 size; assembly { size := extcodesize(token) } if (size == 0) { info.noContract = true; return info; } // Try and get symbol as string try this._getStringProperty(token, "symbol()") returns ( string memory _symbol ) { info.symbol = _symbol; } catch { // Try and get symbol as bytes32 try this._getBytes32Property(token, "symbol()") returns ( string memory _symbol ) { info.symbol = _symbol; } catch {} } // Try and get name as string try this._getStringProperty(token, "name()") returns ( string memory _name ) { info.name = _name; } catch { // Try and get name as bytes32 try this._getBytes32Property(token, "name()") returns ( string memory _name ) { info.name = _name; } catch {} } // Try and get the decimals try this.getDecimals(token) returns (uint256 _decimals) { info.decimals = _decimals; } catch {} // Try and see if the contract is a NFT try this.isNFT(token) returns (bool _nft) { info.nft = _nft; } catch {} } function _getStringProperty( address token, string memory property ) public view returns (string memory value) { (bool success, bytes memory returndata) = token.staticcall{ gas: CALL_GAS_LIMIT }(abi.encodeWithSignature(property)); if (success) { value = abi.decode(returndata, (string)); } } function _getBytes32Property( address token, string memory property ) public view returns (string memory value) { (bool success, bytes memory returndata) = token.staticcall{ gas: CALL_GAS_LIMIT }(abi.encodeWithSignature(property)); if (success) { bytes32 nameBytes32 = abi.decode(returndata, (bytes32)); value = bytes32ToString(nameBytes32); } } function bytes32ToString( bytes32 _bytes32 ) internal pure returns (string memory) { uint8 i = 0; while (i < 32 && _bytes32[i] != 0) { i++; } bytes memory bytesArray = new bytes(i); for (i = 0; i < 32 && _bytes32[i] != 0; i++) { bytesArray[i] = _bytes32[i]; } return string(bytesArray); } /// @return decimals of the token contract. /// @dev will revert if the token is not a contract or does not have decimals. function getDecimals( address token ) external view returns (uint256 decimals) { (bool success, bytes memory returndata) = token.staticcall{ gas: CALL_GAS_LIMIT }(abi.encodeWithSignature("decimals()")); if (success) { decimals = abi.decode(returndata, (uint256)); } } /// @notice is an address a contract or externally owned account? /// @dev this will not revert if the address is an externally owned account (EOA). function isContract(address account) external view returns (bool) { uint32 size; assembly { size := extcodesize(account) } return size > 0; } /// @notice is an address a NFT? /// @dev will revert if the token is not a contract or does have the `supportsInterface` function. function isNFT(address account) external view returns (bool) { return supportInterface(account, 0x80ac58cd) || // ERC721 supportInterface(account, 0x5b5e139f) || // ERC721Metadata supportInterface(account, 0x780e9d63) || // ERC721Enumerable supportInterface(account, 0x9a20483d); // CryptoKitties } function supportInterface( address account, bytes4 interfaceId ) public view returns (bool supported) { (bool success, bytes memory returndata) = account.staticcall{ gas: CALL_GAS_LIMIT }(abi.encodeWithSignature("supportsInterface(bytes4)", interfaceId)); if (success) { supported = abi.decode(returndata, (bool)); } } /// @notice Gets the primary Ethereum Name Service name for an address. /// @return ensName address 0 will be returned if ENS is not available on the chain /// or the address does not have a name. function getEnsName( address account ) external view returns (string memory ensName) { if (address(ReverseRecords) != address(0)) { address[] memory addresses = new address[](1); addresses[0] = account; string[] memory ensNames = IReverseRecords(ReverseRecords).getNames( addresses ); ensName = ensNames[0]; } } }
{ "evmVersion": "paris", "libraries": {}, "metadata": { "bytecodeHash": "ipfs", "useLiteralContent": true }, "optimizer": { "enabled": true, "runs": 200 }, "remappings": [], "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_reverseRecords","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"ReverseRecords","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"string","name":"property","type":"string"}],"name":"_getBytes32Property","outputs":[{"internalType":"string","name":"value","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"string","name":"property","type":"string"}],"name":"_getStringProperty","outputs":[{"internalType":"string","name":"value","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"getDecimals","outputs":[{"internalType":"uint256","name":"decimals","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"getEnsName","outputs":[{"internalType":"string","name":"ensName","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"getInfo","outputs":[{"components":[{"internalType":"string","name":"symbol","type":"string"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"decimals","type":"uint256"},{"internalType":"bool","name":"noContract","type":"bool"},{"internalType":"bool","name":"nft","type":"bool"},{"internalType":"string","name":"ensName","type":"string"}],"internalType":"struct Info","name":"info","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"tokens","type":"address[]"}],"name":"getInfoBatch","outputs":[{"components":[{"internalType":"string","name":"symbol","type":"string"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"decimals","type":"uint256"},{"internalType":"bool","name":"noContract","type":"bool"},{"internalType":"bool","name":"nft","type":"bool"},{"internalType":"string","name":"ensName","type":"string"}],"internalType":"struct Info[]","name":"infos","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isContract","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isNFT","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportInterface","outputs":[{"internalType":"bool","name":"supported","type":"bool"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
60a060405261c35060005534801561001657600080fd5b5060405161158538038061158583398101604081905261003591610046565b6001600160a01b0316608052610076565b60006020828403121561005857600080fd5b81516001600160a01b038116811461006f57600080fd5b9392505050565b6080516114d96100ac6000396000818160a8015281816102ae015281816103420152818161056b01526105f601526114d96000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c8063b31b85c911610066578063b31b85c914610164578063cd550a6714610177578063cf54aaa01461018a578063df413875146101ab578063ffdd5cf1146101be57600080fd5b8063018a4d75146100a357806316279055146100e757806348a02711146101115780635b232e55146101245780635f5a0bb614610144575b600080fd5b6100ca7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6101016100f5366004610d84565b3b63ffffffff16151590565b60405190151581526020016100de565b61010161011f366004610d9f565b6101de565b610137610132366004610de3565b6102a8565b6040516100de9190610f12565b610157610152366004610d84565b610567565b6040516100de9190610f77565b610101610172366004610d84565b610697565b61015761018536600461101f565b6106f5565b61019d610198366004610d84565b6107bd565b6040519081526020016100de565b6101576101b936600461101f565b61086e565b6101d16101cc366004610d84565b61094d565b6040516100de91906110af565b600080546040516001600160e01b031984166024820152829182916001600160a01b038716919060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161023d91906110c2565b6000604051808303818686fa925050503d8060008114610279576040519150601f19603f3d011682016040523d82523d6000602084013e61027e565b606091505b509150915081156102a0578080602001905181019061029d91906110ee565b92505b505092915050565b606060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661032b57826001600160401b038111156102f2576102f2610f8a565b60405190808252806020026020018201604052801561032557816020015b60608152602001906001900390816103105790505b506103be565b6040516332fe2d9b60e21b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063cbf8b66c906103799087908790600401611109565b600060405180830381865afa158015610396573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526103be91908101906111a1565b9050826001600160401b038111156103d8576103d8610f8a565b60405190808252806020026020018201604052801561044657816020015b6104336040518060c00160405280606081526020016060815260200160008152602001600015158152602001600015158152602001606081525090565b8152602001906001900390816103f65790505b50915060005b60ff81168411156102a0573063ffdd5cf1868660ff851681811061047257610472611270565b90506020020160208101906104879190610d84565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381865afa1580156104cb573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526104f39190810190611286565b838260ff168151811061050857610508611270565b6020026020010181905250818160ff168151811061052857610528611270565b6020026020010151838260ff168151811061054557610545611270565b602002602001015160a00181905250808061055f90611377565b91505061044c565b60607f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031615610692576040805160018082528183019092526000916020808301908036833701905050905082816000815181106105ce576105ce611270565b6001600160a01b0392831660209182029290920101526040516332fe2d9b60e21b81526000917f0000000000000000000000000000000000000000000000000000000000000000169063cbf8b66c9061062b9085906004016113a4565b600060405180830381865afa158015610648573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261067091908101906111a1565b90508060008151811061068557610685611270565b6020026020010151925050505b919050565b60006106aa826380ac58cd60e01b6101de565b806106c157506106c182635b5e139f60e01b6101de565b806106d857506106d88263780e9d6360e01b6101de565b806106ef57506106ef82639a20483d60e01b6101de565b92915050565b60008054604080516004815260248101918290526060939283926001600160a01b03881692906107269088906110c2565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161075d91906110c2565b6000604051808303818686fa925050503d8060008114610799576040519150601f19603f3d011682016040523d82523d6000602084013e61079e565b606091505b509150915081156102a0578080602001905181019061029d91906113f0565b6000805460408051600481526024810182526020810180516001600160e01b031663313ce56760e01b1790529051839283926001600160a01b0387169261080491906110c2565b6000604051808303818686fa925050503d8060008114610840576040519150601f19603f3d011682016040523d82523d6000602084013e610845565b606091505b5091509150811561086757808060200190518101906108649190611424565b92505b5050919050565b60008054604080516004815260248101918290526060939283926001600160a01b038816929061089f9088906110c2565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516108d691906110c2565b6000604051808303818686fa925050503d8060008114610912576040519150601f19603f3d011682016040523d82523d6000602084013e610917565b606091505b509150915081156102a0576000818060200190518101906109389190611424565b905061094381610c37565b9695505050505050565b61098a6040518060c00160405280606081526020016060815260200160008152602001600015158152602001600015158152602001606081525090565b813b63ffffffff81166000036109a7575060016060820152919050565b60405163cd550a6760e01b8152309063cd550a67906109ca90869060040161143d565b600060405180830381865afa925050508015610a0857506040513d6000823e601f3d908101601f19168201604052610a0591908101906113f0565b60015b610a7a5760405163df41387560e01b8152309063df41387590610a2f90869060040161143d565b600060405180830381865afa925050508015610a6d57506040513d6000823e601f3d908101601f19168201604052610a6a91908101906113f0565b60015b15610a755782525b610a7d565b82525b60405163cd550a6760e01b8152309063cd550a6790610aa0908690600401611471565b600060405180830381865afa925050508015610ade57506040513d6000823e601f3d908101601f19168201604052610adb91908101906113f0565b60015b610b535760405163df41387560e01b8152309063df41387590610b05908690600401611471565b600060405180830381865afa925050508015610b4357506040513d6000823e601f3d908101601f19168201604052610b4091908101906113f0565b60015b15610b4e5760208301525b610b59565b60208301525b60405163067aa55560e51b81526001600160a01b0384166004820152309063cf54aaa090602401602060405180830381865afa925050508015610bb9575060408051601f3d908101601f19168201909252610bb691810190611424565b60015b15610bc45760408301525b60405163b31b85c960e01b81526001600160a01b0384166004820152309063b31b85c990602401602060405180830381865afa925050508015610c24575060408051601f3d908101601f19168201909252610c21918101906110ee565b60015b15610c3157151560808301525b50919050565b606060005b60208160ff16108015610c705750828160ff1660208110610c5f57610c5f611270565b1a60f81b6001600160f81b03191615155b15610c875780610c7f81611377565b915050610c3c565b60008160ff166001600160401b03811115610ca457610ca4610f8a565b6040519080825280601f01601f191660200182016040528015610cce576020820181803683370190505b509050600091505b60208260ff16108015610d0a5750838260ff1660208110610cf957610cf9611270565b1a60f81b6001600160f81b03191615155b15610d6657838260ff1660208110610d2457610d24611270565b1a60f81b818360ff1681518110610d3d57610d3d611270565b60200101906001600160f81b031916908160001a90535081610d5e81611377565b925050610cd6565b9392505050565b80356001600160a01b038116811461069257600080fd5b600060208284031215610d9657600080fd5b610d6682610d6d565b60008060408385031215610db257600080fd5b610dbb83610d6d565b915060208301356001600160e01b031981168114610dd857600080fd5b809150509250929050565b60008060208385031215610df657600080fd5b82356001600160401b03811115610e0c57600080fd5b8301601f81018513610e1d57600080fd5b80356001600160401b03811115610e3357600080fd5b8560208260051b8401011115610e4857600080fd5b6020919091019590945092505050565b60005b83811015610e73578181015183820152602001610e5b565b50506000910152565b60008151808452610e94816020860160208601610e58565b601f01601f19169290920160200192915050565b6000815160c08452610ebd60c0850182610e7c565b905060208301518482036020860152610ed68282610e7c565b9150506040830151604085015260608301511515606085015260808301511515608085015260a083015184820360a086015261029d8282610e7c565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b82811015610f6b57603f19878603018452610f56858351610ea8565b94506020938401939190910190600101610f3a565b50929695505050505050565b602081526000610d666020830184610e7c565b634e487b7160e01b600052604160045260246000fd5b60405160c081016001600160401b0381118282101715610fc257610fc2610f8a565b60405290565b604051601f8201601f191681016001600160401b0381118282101715610ff057610ff0610f8a565b604052919050565b60006001600160401b0382111561101157611011610f8a565b50601f01601f191660200190565b6000806040838503121561103257600080fd5b61103b83610d6d565b915060208301356001600160401b0381111561105657600080fd5b8301601f8101851361106757600080fd5b803561107a61107582610ff8565b610fc8565b81815286602083850101111561108f57600080fd5b816020840160208301376000602083830101528093505050509250929050565b602081526000610d666020830184610ea8565b600082516110d4818460208701610e58565b9190910192915050565b8051801515811461069257600080fd5b60006020828403121561110057600080fd5b610d66826110de565b6020808252810182905260008360408301825b8581101561114a576001600160a01b0361113584610d6d565b1682526020928301929091019060010161111c565b5095945050505050565b600082601f83011261116557600080fd5b815161117361107582610ff8565b81815284602083860101111561118857600080fd5b611199826020830160208701610e58565b949350505050565b6000602082840312156111b357600080fd5b81516001600160401b038111156111c957600080fd5b8201601f810184136111da57600080fd5b80516001600160401b038111156111f3576111f3610f8a565b8060051b61120360208201610fc8565b9182526020818401810192908101908784111561121f57600080fd5b6020850192505b838310156112655782516001600160401b0381111561124457600080fd5b61125389602083890101611154565b83525060209283019290910190611226565b979650505050505050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561129857600080fd5b81516001600160401b038111156112ae57600080fd5b820160c081850312156112c057600080fd5b6112c8610fa0565b81516001600160401b038111156112de57600080fd5b6112ea86828501611154565b82525060208201516001600160401b0381111561130657600080fd5b61131286828501611154565b6020830152506040828101519082015261132e606083016110de565b606082015261133f608083016110de565b608082015260a08201516001600160401b0381111561135d57600080fd5b61136986828501611154565b60a083015250949350505050565b600060ff821660ff810361139b57634e487b7160e01b600052601160045260246000fd5b60010192915050565b602080825282518282018190526000918401906040840190835b818110156113e55783516001600160a01b03168352602093840193909201916001016113be565b509095945050505050565b60006020828403121561140257600080fd5b81516001600160401b0381111561141857600080fd5b61119984828501611154565b60006020828403121561143657600080fd5b5051919050565b6001600160a01b039190911681526040602082018190526008908201526773796d626f6c282960c01b606082015260800190565b6001600160a01b03919091168152604060208201819052600690820152656e616d65282960d01b60608201526080019056fea2646970667358221220e7d659507a57d53644af58cea023b2e108dbcf2ca1e22ee6a85dbbabbb6a6d6b64736f6c634300081c00330000000000000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061009e5760003560e01c8063b31b85c911610066578063b31b85c914610164578063cd550a6714610177578063cf54aaa01461018a578063df413875146101ab578063ffdd5cf1146101be57600080fd5b8063018a4d75146100a357806316279055146100e757806348a02711146101115780635b232e55146101245780635f5a0bb614610144575b600080fd5b6100ca7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6101016100f5366004610d84565b3b63ffffffff16151590565b60405190151581526020016100de565b61010161011f366004610d9f565b6101de565b610137610132366004610de3565b6102a8565b6040516100de9190610f12565b610157610152366004610d84565b610567565b6040516100de9190610f77565b610101610172366004610d84565b610697565b61015761018536600461101f565b6106f5565b61019d610198366004610d84565b6107bd565b6040519081526020016100de565b6101576101b936600461101f565b61086e565b6101d16101cc366004610d84565b61094d565b6040516100de91906110af565b600080546040516001600160e01b031984166024820152829182916001600160a01b038716919060440160408051601f198184030181529181526020820180516001600160e01b03166301ffc9a760e01b1790525161023d91906110c2565b6000604051808303818686fa925050503d8060008114610279576040519150601f19603f3d011682016040523d82523d6000602084013e61027e565b606091505b509150915081156102a0578080602001905181019061029d91906110ee565b92505b505092915050565b606060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661032b57826001600160401b038111156102f2576102f2610f8a565b60405190808252806020026020018201604052801561032557816020015b60608152602001906001900390816103105790505b506103be565b6040516332fe2d9b60e21b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063cbf8b66c906103799087908790600401611109565b600060405180830381865afa158015610396573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526103be91908101906111a1565b9050826001600160401b038111156103d8576103d8610f8a565b60405190808252806020026020018201604052801561044657816020015b6104336040518060c00160405280606081526020016060815260200160008152602001600015158152602001600015158152602001606081525090565b8152602001906001900390816103f65790505b50915060005b60ff81168411156102a0573063ffdd5cf1868660ff851681811061047257610472611270565b90506020020160208101906104879190610d84565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602401600060405180830381865afa1580156104cb573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526104f39190810190611286565b838260ff168151811061050857610508611270565b6020026020010181905250818160ff168151811061052857610528611270565b6020026020010151838260ff168151811061054557610545611270565b602002602001015160a00181905250808061055f90611377565b91505061044c565b60607f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031615610692576040805160018082528183019092526000916020808301908036833701905050905082816000815181106105ce576105ce611270565b6001600160a01b0392831660209182029290920101526040516332fe2d9b60e21b81526000917f0000000000000000000000000000000000000000000000000000000000000000169063cbf8b66c9061062b9085906004016113a4565b600060405180830381865afa158015610648573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261067091908101906111a1565b90508060008151811061068557610685611270565b6020026020010151925050505b919050565b60006106aa826380ac58cd60e01b6101de565b806106c157506106c182635b5e139f60e01b6101de565b806106d857506106d88263780e9d6360e01b6101de565b806106ef57506106ef82639a20483d60e01b6101de565b92915050565b60008054604080516004815260248101918290526060939283926001600160a01b03881692906107269088906110c2565b60408051918290039091206020830180516001600160e01b03166001600160e01b03199092169190911790525161075d91906110c2565b6000604051808303818686fa925050503d8060008114610799576040519150601f19603f3d011682016040523d82523d6000602084013e61079e565b606091505b509150915081156102a0578080602001905181019061029d91906113f0565b6000805460408051600481526024810182526020810180516001600160e01b031663313ce56760e01b1790529051839283926001600160a01b0387169261080491906110c2565b6000604051808303818686fa925050503d8060008114610840576040519150601f19603f3d011682016040523d82523d6000602084013e610845565b606091505b5091509150811561086757808060200190518101906108649190611424565b92505b5050919050565b60008054604080516004815260248101918290526060939283926001600160a01b038816929061089f9088906110c2565b60408051918290039091206020830180516001600160e01b03166001600160e01b0319909216919091179052516108d691906110c2565b6000604051808303818686fa925050503d8060008114610912576040519150601f19603f3d011682016040523d82523d6000602084013e610917565b606091505b509150915081156102a0576000818060200190518101906109389190611424565b905061094381610c37565b9695505050505050565b61098a6040518060c00160405280606081526020016060815260200160008152602001600015158152602001600015158152602001606081525090565b813b63ffffffff81166000036109a7575060016060820152919050565b60405163cd550a6760e01b8152309063cd550a67906109ca90869060040161143d565b600060405180830381865afa925050508015610a0857506040513d6000823e601f3d908101601f19168201604052610a0591908101906113f0565b60015b610a7a5760405163df41387560e01b8152309063df41387590610a2f90869060040161143d565b600060405180830381865afa925050508015610a6d57506040513d6000823e601f3d908101601f19168201604052610a6a91908101906113f0565b60015b15610a755782525b610a7d565b82525b60405163cd550a6760e01b8152309063cd550a6790610aa0908690600401611471565b600060405180830381865afa925050508015610ade57506040513d6000823e601f3d908101601f19168201604052610adb91908101906113f0565b60015b610b535760405163df41387560e01b8152309063df41387590610b05908690600401611471565b600060405180830381865afa925050508015610b4357506040513d6000823e601f3d908101601f19168201604052610b4091908101906113f0565b60015b15610b4e5760208301525b610b59565b60208301525b60405163067aa55560e51b81526001600160a01b0384166004820152309063cf54aaa090602401602060405180830381865afa925050508015610bb9575060408051601f3d908101601f19168201909252610bb691810190611424565b60015b15610bc45760408301525b60405163b31b85c960e01b81526001600160a01b0384166004820152309063b31b85c990602401602060405180830381865afa925050508015610c24575060408051601f3d908101601f19168201909252610c21918101906110ee565b60015b15610c3157151560808301525b50919050565b606060005b60208160ff16108015610c705750828160ff1660208110610c5f57610c5f611270565b1a60f81b6001600160f81b03191615155b15610c875780610c7f81611377565b915050610c3c565b60008160ff166001600160401b03811115610ca457610ca4610f8a565b6040519080825280601f01601f191660200182016040528015610cce576020820181803683370190505b509050600091505b60208260ff16108015610d0a5750838260ff1660208110610cf957610cf9611270565b1a60f81b6001600160f81b03191615155b15610d6657838260ff1660208110610d2457610d24611270565b1a60f81b818360ff1681518110610d3d57610d3d611270565b60200101906001600160f81b031916908160001a90535081610d5e81611377565b925050610cd6565b9392505050565b80356001600160a01b038116811461069257600080fd5b600060208284031215610d9657600080fd5b610d6682610d6d565b60008060408385031215610db257600080fd5b610dbb83610d6d565b915060208301356001600160e01b031981168114610dd857600080fd5b809150509250929050565b60008060208385031215610df657600080fd5b82356001600160401b03811115610e0c57600080fd5b8301601f81018513610e1d57600080fd5b80356001600160401b03811115610e3357600080fd5b8560208260051b8401011115610e4857600080fd5b6020919091019590945092505050565b60005b83811015610e73578181015183820152602001610e5b565b50506000910152565b60008151808452610e94816020860160208601610e58565b601f01601f19169290920160200192915050565b6000815160c08452610ebd60c0850182610e7c565b905060208301518482036020860152610ed68282610e7c565b9150506040830151604085015260608301511515606085015260808301511515608085015260a083015184820360a086015261029d8282610e7c565b6000602082016020835280845180835260408501915060408160051b86010192506020860160005b82811015610f6b57603f19878603018452610f56858351610ea8565b94506020938401939190910190600101610f3a565b50929695505050505050565b602081526000610d666020830184610e7c565b634e487b7160e01b600052604160045260246000fd5b60405160c081016001600160401b0381118282101715610fc257610fc2610f8a565b60405290565b604051601f8201601f191681016001600160401b0381118282101715610ff057610ff0610f8a565b604052919050565b60006001600160401b0382111561101157611011610f8a565b50601f01601f191660200190565b6000806040838503121561103257600080fd5b61103b83610d6d565b915060208301356001600160401b0381111561105657600080fd5b8301601f8101851361106757600080fd5b803561107a61107582610ff8565b610fc8565b81815286602083850101111561108f57600080fd5b816020840160208301376000602083830101528093505050509250929050565b602081526000610d666020830184610ea8565b600082516110d4818460208701610e58565b9190910192915050565b8051801515811461069257600080fd5b60006020828403121561110057600080fd5b610d66826110de565b6020808252810182905260008360408301825b8581101561114a576001600160a01b0361113584610d6d565b1682526020928301929091019060010161111c565b5095945050505050565b600082601f83011261116557600080fd5b815161117361107582610ff8565b81815284602083860101111561118857600080fd5b611199826020830160208701610e58565b949350505050565b6000602082840312156111b357600080fd5b81516001600160401b038111156111c957600080fd5b8201601f810184136111da57600080fd5b80516001600160401b038111156111f3576111f3610f8a565b8060051b61120360208201610fc8565b9182526020818401810192908101908784111561121f57600080fd5b6020850192505b838310156112655782516001600160401b0381111561124457600080fd5b61125389602083890101611154565b83525060209283019290910190611226565b979650505050505050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561129857600080fd5b81516001600160401b038111156112ae57600080fd5b820160c081850312156112c057600080fd5b6112c8610fa0565b81516001600160401b038111156112de57600080fd5b6112ea86828501611154565b82525060208201516001600160401b0381111561130657600080fd5b61131286828501611154565b6020830152506040828101519082015261132e606083016110de565b606082015261133f608083016110de565b608082015260a08201516001600160401b0381111561135d57600080fd5b61136986828501611154565b60a083015250949350505050565b600060ff821660ff810361139b57634e487b7160e01b600052601160045260246000fd5b60010192915050565b602080825282518282018190526000918401906040840190835b818110156113e55783516001600160a01b03168352602093840193909201916001016113be565b509095945050505050565b60006020828403121561140257600080fd5b81516001600160401b0381111561141857600080fd5b61119984828501611154565b60006020828403121561143657600080fd5b5051919050565b6001600160a01b039190911681526040602082018190526008908201526773796d626f6c282960c01b606082015260800190565b6001600160a01b03919091168152604060208201819052600690820152656e616d65282960d01b60608201526080019056fea2646970667358221220e7d659507a57d53644af58cea023b2e108dbcf2ca1e22ee6a85dbbabbb6a6d6b64736f6c634300081c0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : _reverseRecords (address): 0x0000000000000000000000000000000000000000
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000000
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.