Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 1 from a total of 1 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
0x60806040 | 16883996 | 485 days ago | IN | Create: ExecutorV2 | 0 ETH | 0.04650632 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
ExecutorV2
Compiler Version
v0.8.18+commit.87f61d96
Optimization Enabled:
Yes with 999999 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity ^0.8.18; import "./Initializable.sol"; import "./Pausable.sol"; import "./ECDSA.sol"; import "./Mutex.sol"; contract ExecutorV2 is Initializable, Pausable, Mutex { uint16 public chainId; address public protocolSigner; mapping(bytes32 => uint256) public hashes; event SignerUpdated(address sender, address oldSigner, address signer); function init( address admin_, uint16 chainId_, address signer_ ) external whenNotInitialized { require(admin_ != address(0), "zero address"); require(signer_ != address(0), "zero address"); admin = admin_; pauser = admin_; chainId = chainId_; protocolSigner = signer_; isInited = true; } function updateSigner(address signer_) external whenInitialized onlyAdmin { require(signer_ != address(0), "zero address"); emit SignerUpdated(msg.sender, protocolSigner, signer_); protocolSigner = signer_; } function execute( uint16 callerChainId_, uint16 executionChainId_, uint256 nonce_, string calldata txHash_, address contract_, bytes calldata callData_, bytes calldata signature_ ) external whenNotPaused whenInitialized mutex returns (bytes memory) { require(chainId == executionChainId_, "uncompatible chain"); require(contract_ != address(0), "zero address"); bytes32 data = keccak256( abi.encodePacked( callerChainId_, executionChainId_, nonce_, bytes(txHash_).length, txHash_, contract_, callData_.length, callData_ ) ); require(hashes[data] == 0, "duplicate data"); require( ECDSA.recover( keccak256( abi.encodePacked("\x19Ethereum Signed Message:\n32", data) ), signature_ ) == protocolSigner, "only protocol signer" ); hashes[data] = block.number; (bool success_, bytes memory data_) = contract_.call(callData_); if (success_) { return data_; } else { if (data_.length > 0) { /// @solidity memory-safe-assembly assembly { let returndata_size := mload(data_) revert(add(32, data_), returndata_size) } } else { revert("no error"); } } } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.18; abstract contract Adminable { event AdminUpdated(address sender, address oldAdmin, address admin); address public admin; modifier onlyAdmin() { require(admin == msg.sender, "only admin"); _; } function updateAdmin(address admin_) external onlyAdmin { require(admin_ != address(0), "zero address"); emit AdminUpdated(msg.sender, admin, admin_); admin = admin_; } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.18; library ECDSA { function recover( bytes32 hash_, bytes memory signature_ ) internal pure returns (address) { require(signature_.length == 65, "standart signature only"); bytes32 r; bytes32 s; uint8 v; assembly { r := mload(add(signature_, 32)) s := mload(add(signature_, 64)) v := byte(0, mload(add(signature_, 96))) } if ( uint256(s) > 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0 ) { revert("invalid signature 's' value"); } if (v != 27 && v != 28) { revert("invalid signature 'v' value"); } address signer = ecrecover(hash_, v, r, s); require(signer != address(0), "invalide signature"); return signer; } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.18; abstract contract Initializable { bool internal isInited; modifier whenInitialized() { require(isInited, "not initialized"); _; } modifier whenNotInitialized() { require(!isInited, "already initialized"); _; } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.18; abstract contract Mutex { bool private _lock; modifier mutex() { require(!_lock, "mutex lock"); _lock = true; _; _lock = false; } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.18; import "./Adminable.sol"; abstract contract Pausable is Adminable { event Paused(address account); event Unpaused(address account); event PauserUpdated(address sender, address oldPauser, address pauser); bool public isPaused; address public pauser; constructor() { isPaused = false; } modifier whenNotPaused() { require(!isPaused, "paused"); _; } modifier whenPaused() { require(isPaused, "not paused"); _; } modifier onlyPauser() { require(pauser == msg.sender, "only pauser"); _; } function pause() external whenNotPaused onlyPauser { isPaused = true; emit Paused(msg.sender); } function unpause() external whenPaused onlyPauser { isPaused = false; emit Unpaused(msg.sender); } function updatePauser(address pauser_) external onlyAdmin { require(pauser_ != address(0), "zero address"); emit PauserUpdated(msg.sender, pauser, pauser_); pauser = pauser_; } }
{ "optimizer": { "enabled": true, "runs": 999999 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "metadata": { "useLiteralContent": true }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"address","name":"oldAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"admin","type":"address"}],"name":"AdminUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"address","name":"oldPauser","type":"address"},{"indexed":false,"internalType":"address","name":"pauser","type":"address"}],"name":"PauserUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"address","name":"oldSigner","type":"address"},{"indexed":false,"internalType":"address","name":"signer","type":"address"}],"name":"SignerUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"chainId","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint16","name":"callerChainId_","type":"uint16"},{"internalType":"uint16","name":"executionChainId_","type":"uint16"},{"internalType":"uint256","name":"nonce_","type":"uint256"},{"internalType":"string","name":"txHash_","type":"string"},{"internalType":"address","name":"contract_","type":"address"},{"internalType":"bytes","name":"callData_","type":"bytes"},{"internalType":"bytes","name":"signature_","type":"bytes"}],"name":"execute","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"hashes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"admin_","type":"address"},{"internalType":"uint16","name":"chainId_","type":"uint16"},{"internalType":"address","name":"signer_","type":"address"}],"name":"init","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"isPaused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pauser","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"protocolSigner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"admin_","type":"address"}],"name":"updateAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"pauser_","type":"address"}],"name":"updatePauser","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"signer_","type":"address"}],"name":"updateSigner","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b506000805460ff60a81b191690556118d88061002d6000396000f3fe608060405234801561001057600080fd5b50600436106100df5760003560e01c80639fd0506d1161008c578063d658d2e911610066578063d658d2e91461020d578063dfd383c91461023b578063e2f273bd1461025b578063f851a4401461026e57600080fd5b80639fd0506d1461017f578063a7ecd37e146101c4578063b187bd26146101d757600080fd5b80637f18311b116100bd5780637f18311b146101145780638456cb591461013d5780639a8a05921461014557600080fd5b80633f4ba83a146100e4578063402a1c4f146100ee578063554bab3c14610101575b600080fd5b6100ec610293565b005b6100ec6100fc3660046115e5565b6103fc565b6100ec61010f366004611628565b610657565b610127610122366004611693565b6107fa565b604051610134919061176e565b60405180910390f35b6100ec610de9565b60015461016c907501000000000000000000000000000000000000000000900461ffff1681565b60405161ffff9091168152602001610134565b60015461019f9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610134565b6100ec6101d2366004611628565b610f60565b6000546101fd907501000000000000000000000000000000000000000000900460ff1681565b6040519015158152602001610134565b61022d61021b3660046117da565b60036020526000908152604090205481565b604051908152602001610134565b60025461019f9073ffffffffffffffffffffffffffffffffffffffff1681565b6100ec610269366004611628565b61116f565b60005461019f90610100900473ffffffffffffffffffffffffffffffffffffffff1681565b6000547501000000000000000000000000000000000000000000900460ff1661031d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f6e6f74207061757365640000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b60015473ffffffffffffffffffffffffffffffffffffffff16331461039e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6f6e6c79207061757365720000000000000000000000000000000000000000006044820152606401610314565b600080547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff1690556040513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa906020015b60405180910390a1565b60005460ff1615610469576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f616c726561647920696e697469616c697a6564000000000000000000000000006044820152606401610314565b73ffffffffffffffffffffffffffffffffffffffff83166104e6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f7a65726f206164647265737300000000000000000000000000000000000000006044820152606401610314565b73ffffffffffffffffffffffffffffffffffffffff8116610563576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f7a65726f206164647265737300000000000000000000000000000000000000006044820152606401610314565b600080546001805473ffffffffffffffffffffffffffffffffffffffff9687167fffffffffffffffffff0000ff00000000000000000000000000000000000000009091168117750100000000000000000000000000000000000000000061ffff9790971696909602959095178155600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001694909616939093179094557fffffffffffffffffffffff0000000000000000000000000000000000000000009093166101009092027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691909117179055565b600054610100900473ffffffffffffffffffffffffffffffffffffffff1633146106dd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f6f6e6c792061646d696e000000000000000000000000000000000000000000006044820152606401610314565b73ffffffffffffffffffffffffffffffffffffffff811661075a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f7a65726f206164647265737300000000000000000000000000000000000000006044820152606401610314565b6001546040805133815273ffffffffffffffffffffffffffffffffffffffff928316602082015291831682820152517f9b3d82621a55ae56941a49b01b3111acf42e49f89b2af1a6dea8fb9886d3520c9181900360600190a1600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6000546060907501000000000000000000000000000000000000000000900460ff1615610883576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600660248201527f70617573656400000000000000000000000000000000000000000000000000006044820152606401610314565b60005460ff166108ef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6e6f7420696e697469616c697a656400000000000000000000000000000000006044820152606401610314565b60015474010000000000000000000000000000000000000000900460ff1615610974576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f6d75746578206c6f636b000000000000000000000000000000000000000000006044820152606401610314565b600180547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff167401000000000000000000000000000000000000000017908190557501000000000000000000000000000000000000000000900461ffff908116908b1614610a3e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f756e636f6d70617469626c6520636861696e00000000000000000000000000006044820152606401610314565b73ffffffffffffffffffffffffffffffffffffffff8616610abb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f7a65726f206164647265737300000000000000000000000000000000000000006044820152606401610314565b604051600090610ae1908d908d908d908c908e9082908e908d908f9082906020016117f3565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815291815281516020928301206000818152600390935291205490915015610b8e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f6475706c696361746520646174610000000000000000000000000000000000006044820152606401610314565b6002546040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c810183905273ffffffffffffffffffffffffffffffffffffffff90911690610c3390605c016040516020818303038152906040528051906020012086868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061131c92505050565b73ffffffffffffffffffffffffffffffffffffffff1614610cb0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f6f6e6c792070726f746f636f6c207369676e65720000000000000000000000006044820152606401610314565b60008181526003602052604080822043905551819073ffffffffffffffffffffffffffffffffffffffff8a1690610cea908a908a90611892565b6000604051808303816000865af19150503d8060008114610d27576040519150601f19603f3d011682016040523d82523d6000602084013e610d2c565b606091505b50915091508115610d41579250610db3915050565b805115610d515780518082602001fd5b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600860248201527f6e6f206572726f720000000000000000000000000000000000000000000000006044820152606401610314565b600180547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1690559a9950505050505050505050565b6000547501000000000000000000000000000000000000000000900460ff1615610e6f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600660248201527f70617573656400000000000000000000000000000000000000000000000000006044820152606401610314565b60015473ffffffffffffffffffffffffffffffffffffffff163314610ef0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6f6e6c79207061757365720000000000000000000000000000000000000000006044820152606401610314565b600080547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff1675010000000000000000000000000000000000000000001790556040513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258906020016103f2565b60005460ff16610fcc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6e6f7420696e697469616c697a656400000000000000000000000000000000006044820152606401610314565b600054610100900473ffffffffffffffffffffffffffffffffffffffff163314611052576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f6f6e6c792061646d696e000000000000000000000000000000000000000000006044820152606401610314565b73ffffffffffffffffffffffffffffffffffffffff81166110cf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f7a65726f206164647265737300000000000000000000000000000000000000006044820152606401610314565b6002546040805133815273ffffffffffffffffffffffffffffffffffffffff928316602082015291831682820152517f138664d729004ff3df437e29920fe415a1c078a8ec492dea367b98e5702070489181900360600190a1600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b600054610100900473ffffffffffffffffffffffffffffffffffffffff1633146111f5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f6f6e6c792061646d696e000000000000000000000000000000000000000000006044820152606401610314565b73ffffffffffffffffffffffffffffffffffffffff8116611272576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f7a65726f206164647265737300000000000000000000000000000000000000006044820152606401610314565b6000546040805133815273ffffffffffffffffffffffffffffffffffffffff6101009093048316602082015291831682820152517f9f6130d220a6021d90d78c7ed17b7cfb79f530974405b174fef75f671205513c9181900360600190a16000805473ffffffffffffffffffffffffffffffffffffffff909216610100027fffffffffffffffffffffff0000000000000000000000000000000000000000ff909216919091179055565b60008151604114611389576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f7374616e64617274207369676e6174757265206f6e6c790000000000000000006044820152606401610314565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611425576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964207369676e6174757265202773272076616c756500000000006044820152606401610314565b8060ff16601b1415801561143d57508060ff16601c14155b156114a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964207369676e6174757265202776272076616c756500000000006044820152606401610314565b6040805160008082526020820180845289905260ff841692820192909252606081018590526080810184905260019060a0016020604051602081039080840390855afa1580156114f8573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff81166115a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e76616c696465207369676e617475726500000000000000000000000000006044820152606401610314565b9695505050505050565b803573ffffffffffffffffffffffffffffffffffffffff811681146115ce57600080fd5b919050565b803561ffff811681146115ce57600080fd5b6000806000606084860312156115fa57600080fd5b611603846115aa565b9250611611602085016115d3565b915061161f604085016115aa565b90509250925092565b60006020828403121561163a57600080fd5b611643826115aa565b9392505050565b60008083601f84011261165c57600080fd5b50813567ffffffffffffffff81111561167457600080fd5b60208301915083602082850101111561168c57600080fd5b9250929050565b60008060008060008060008060008060e08b8d0312156116b257600080fd5b6116bb8b6115d3565b99506116c960208c016115d3565b985060408b0135975060608b013567ffffffffffffffff808211156116ed57600080fd5b6116f98e838f0161164a565b909950975087915061170d60808e016115aa565b965060a08d013591508082111561172357600080fd5b61172f8e838f0161164a565b909650945060c08d013591508082111561174857600080fd5b506117558d828e0161164a565b915080935050809150509295989b9194979a5092959850565b600060208083528351808285015260005b8181101561179b5785810183015185820160400152820161177f565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b6000602082840312156117ec57600080fd5b5035919050565b60007fffff000000000000000000000000000000000000000000000000000000000000808d60f01b168352808c60f01b16600284015250896004830152886024830152868860448401378682017fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008760601b166044820152856058820152838560788301376000930160780192835250909a9950505050505050505050565b818382376000910190815291905056fea2646970667358221220ac2c3fc44705ff4ce136f0dcd62d42f528bbd2156d8e0e275e0b0699b6e13b0164736f6c63430008120033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100df5760003560e01c80639fd0506d1161008c578063d658d2e911610066578063d658d2e91461020d578063dfd383c91461023b578063e2f273bd1461025b578063f851a4401461026e57600080fd5b80639fd0506d1461017f578063a7ecd37e146101c4578063b187bd26146101d757600080fd5b80637f18311b116100bd5780637f18311b146101145780638456cb591461013d5780639a8a05921461014557600080fd5b80633f4ba83a146100e4578063402a1c4f146100ee578063554bab3c14610101575b600080fd5b6100ec610293565b005b6100ec6100fc3660046115e5565b6103fc565b6100ec61010f366004611628565b610657565b610127610122366004611693565b6107fa565b604051610134919061176e565b60405180910390f35b6100ec610de9565b60015461016c907501000000000000000000000000000000000000000000900461ffff1681565b60405161ffff9091168152602001610134565b60015461019f9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610134565b6100ec6101d2366004611628565b610f60565b6000546101fd907501000000000000000000000000000000000000000000900460ff1681565b6040519015158152602001610134565b61022d61021b3660046117da565b60036020526000908152604090205481565b604051908152602001610134565b60025461019f9073ffffffffffffffffffffffffffffffffffffffff1681565b6100ec610269366004611628565b61116f565b60005461019f90610100900473ffffffffffffffffffffffffffffffffffffffff1681565b6000547501000000000000000000000000000000000000000000900460ff1661031d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f6e6f74207061757365640000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b60015473ffffffffffffffffffffffffffffffffffffffff16331461039e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6f6e6c79207061757365720000000000000000000000000000000000000000006044820152606401610314565b600080547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff1690556040513381527f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa906020015b60405180910390a1565b60005460ff1615610469576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f616c726561647920696e697469616c697a6564000000000000000000000000006044820152606401610314565b73ffffffffffffffffffffffffffffffffffffffff83166104e6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f7a65726f206164647265737300000000000000000000000000000000000000006044820152606401610314565b73ffffffffffffffffffffffffffffffffffffffff8116610563576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f7a65726f206164647265737300000000000000000000000000000000000000006044820152606401610314565b600080546001805473ffffffffffffffffffffffffffffffffffffffff9687167fffffffffffffffffff0000ff00000000000000000000000000000000000000009091168117750100000000000000000000000000000000000000000061ffff9790971696909602959095178155600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001694909616939093179094557fffffffffffffffffffffff0000000000000000000000000000000000000000009093166101009092027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001691909117179055565b600054610100900473ffffffffffffffffffffffffffffffffffffffff1633146106dd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f6f6e6c792061646d696e000000000000000000000000000000000000000000006044820152606401610314565b73ffffffffffffffffffffffffffffffffffffffff811661075a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f7a65726f206164647265737300000000000000000000000000000000000000006044820152606401610314565b6001546040805133815273ffffffffffffffffffffffffffffffffffffffff928316602082015291831682820152517f9b3d82621a55ae56941a49b01b3111acf42e49f89b2af1a6dea8fb9886d3520c9181900360600190a1600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6000546060907501000000000000000000000000000000000000000000900460ff1615610883576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600660248201527f70617573656400000000000000000000000000000000000000000000000000006044820152606401610314565b60005460ff166108ef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6e6f7420696e697469616c697a656400000000000000000000000000000000006044820152606401610314565b60015474010000000000000000000000000000000000000000900460ff1615610974576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f6d75746578206c6f636b000000000000000000000000000000000000000000006044820152606401610314565b600180547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff167401000000000000000000000000000000000000000017908190557501000000000000000000000000000000000000000000900461ffff908116908b1614610a3e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f756e636f6d70617469626c6520636861696e00000000000000000000000000006044820152606401610314565b73ffffffffffffffffffffffffffffffffffffffff8616610abb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f7a65726f206164647265737300000000000000000000000000000000000000006044820152606401610314565b604051600090610ae1908d908d908d908c908e9082908e908d908f9082906020016117f3565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815291815281516020928301206000818152600390935291205490915015610b8e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f6475706c696361746520646174610000000000000000000000000000000000006044820152606401610314565b6002546040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c810183905273ffffffffffffffffffffffffffffffffffffffff90911690610c3390605c016040516020818303038152906040528051906020012086868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061131c92505050565b73ffffffffffffffffffffffffffffffffffffffff1614610cb0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f6f6e6c792070726f746f636f6c207369676e65720000000000000000000000006044820152606401610314565b60008181526003602052604080822043905551819073ffffffffffffffffffffffffffffffffffffffff8a1690610cea908a908a90611892565b6000604051808303816000865af19150503d8060008114610d27576040519150601f19603f3d011682016040523d82523d6000602084013e610d2c565b606091505b50915091508115610d41579250610db3915050565b805115610d515780518082602001fd5b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600860248201527f6e6f206572726f720000000000000000000000000000000000000000000000006044820152606401610314565b600180547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1690559a9950505050505050505050565b6000547501000000000000000000000000000000000000000000900460ff1615610e6f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600660248201527f70617573656400000000000000000000000000000000000000000000000000006044820152606401610314565b60015473ffffffffffffffffffffffffffffffffffffffff163314610ef0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6f6e6c79207061757365720000000000000000000000000000000000000000006044820152606401610314565b600080547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff1675010000000000000000000000000000000000000000001790556040513381527f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258906020016103f2565b60005460ff16610fcc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6e6f7420696e697469616c697a656400000000000000000000000000000000006044820152606401610314565b600054610100900473ffffffffffffffffffffffffffffffffffffffff163314611052576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f6f6e6c792061646d696e000000000000000000000000000000000000000000006044820152606401610314565b73ffffffffffffffffffffffffffffffffffffffff81166110cf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f7a65726f206164647265737300000000000000000000000000000000000000006044820152606401610314565b6002546040805133815273ffffffffffffffffffffffffffffffffffffffff928316602082015291831682820152517f138664d729004ff3df437e29920fe415a1c078a8ec492dea367b98e5702070489181900360600190a1600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b600054610100900473ffffffffffffffffffffffffffffffffffffffff1633146111f5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f6f6e6c792061646d696e000000000000000000000000000000000000000000006044820152606401610314565b73ffffffffffffffffffffffffffffffffffffffff8116611272576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f7a65726f206164647265737300000000000000000000000000000000000000006044820152606401610314565b6000546040805133815273ffffffffffffffffffffffffffffffffffffffff6101009093048316602082015291831682820152517f9f6130d220a6021d90d78c7ed17b7cfb79f530974405b174fef75f671205513c9181900360600190a16000805473ffffffffffffffffffffffffffffffffffffffff909216610100027fffffffffffffffffffffff0000000000000000000000000000000000000000ff909216919091179055565b60008151604114611389576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f7374616e64617274207369676e6174757265206f6e6c790000000000000000006044820152606401610314565b60208201516040830151606084015160001a7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0821115611425576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964207369676e6174757265202773272076616c756500000000006044820152606401610314565b8060ff16601b1415801561143d57508060ff16601c14155b156114a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f696e76616c6964207369676e6174757265202776272076616c756500000000006044820152606401610314565b6040805160008082526020820180845289905260ff841692820192909252606081018590526080810184905260019060a0016020604051602081039080840390855afa1580156114f8573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff81166115a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f696e76616c696465207369676e617475726500000000000000000000000000006044820152606401610314565b9695505050505050565b803573ffffffffffffffffffffffffffffffffffffffff811681146115ce57600080fd5b919050565b803561ffff811681146115ce57600080fd5b6000806000606084860312156115fa57600080fd5b611603846115aa565b9250611611602085016115d3565b915061161f604085016115aa565b90509250925092565b60006020828403121561163a57600080fd5b611643826115aa565b9392505050565b60008083601f84011261165c57600080fd5b50813567ffffffffffffffff81111561167457600080fd5b60208301915083602082850101111561168c57600080fd5b9250929050565b60008060008060008060008060008060e08b8d0312156116b257600080fd5b6116bb8b6115d3565b99506116c960208c016115d3565b985060408b0135975060608b013567ffffffffffffffff808211156116ed57600080fd5b6116f98e838f0161164a565b909950975087915061170d60808e016115aa565b965060a08d013591508082111561172357600080fd5b61172f8e838f0161164a565b909650945060c08d013591508082111561174857600080fd5b506117558d828e0161164a565b915080935050809150509295989b9194979a5092959850565b600060208083528351808285015260005b8181101561179b5785810183015185820160400152820161177f565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b6000602082840312156117ec57600080fd5b5035919050565b60007fffff000000000000000000000000000000000000000000000000000000000000808d60f01b168352808c60f01b16600284015250896004830152886024830152868860448401378682017fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008760601b166044820152856058820152838560788301376000930160780192835250909a9950505050505050505050565b818382376000910190815291905056fea2646970667358221220ac2c3fc44705ff4ce136f0dcd62d42f528bbd2156d8e0e275e0b0699b6e13b0164736f6c63430008120033
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 26 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ Download: CSV Export ]
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.