false
false
0

Contract Address Details

0x914D4b9Bb542077BeA48DE5E3D6CF42e7ADfa1aa

Contract Name
Multicall
Creator
0x7f0901–391c41 at 0x2c9924–6f0505
Balance
0 CLO
Tokens
Fetching tokens...
Transactions
0 Transactions
Transfers
0 Transfers
Gas Used
Fetching gas used...
Last Balance Update
18612947
Warning! Contract bytecode has been changed and doesn't match the verified one. Therefore, interaction with this smart contract may be risky.
Contract name:
Multicall




Optimization enabled
false
Compiler version
v0.8.7+commit.e28d00a7




EVM Version
default




Verified at
2024-09-26T15:33:14.685403Z

Contract source code

pragma solidity >=0.5.0;
pragma experimental ABIEncoderV2;

/// @title Multicall - Aggregate results from multiple read-only function calls
/// @author Michael Elliot <[email protected]>
/// @author Joshua Levine <[email protected]>
/// @author Nick Johnson <[email protected]>

contract Multicall {
    struct Call {
        address target;
        bytes callData;
    }

    function aggregate(Call[] memory calls)
        public
        returns (uint256 blockNumber, bytes[] memory returnData)
    {
        blockNumber = block.number;
        returnData = new bytes[](calls.length);
        for (uint256 i = 0; i < calls.length; i++) {
            (bool success, bytes memory ret) = calls[i].target.call(
                calls[i].callData
            );
            require(success);
            returnData[i] = ret;
        }
    }

    // Helper functions
    function getEthBalance(address addr) public view returns (uint256 balance) {
        balance = addr.balance;
    }

    function getBlockHash(uint256 blockNumber)
        public
        view
        returns (bytes32 blockHash)
    {
        blockHash = blockhash(blockNumber);
    }

    function getLastBlockHash() public view returns (bytes32 blockHash) {
        blockHash = blockhash(block.number - 1);
    }

    function getCurrentBlockTimestamp()
        public
        view
        returns (uint256 timestamp)
    {
        timestamp = block.timestamp;
    }

    function getCurrentBlockDifficulty()
        public
        view
        returns (uint256 difficulty)
    {
        difficulty = block.difficulty;
    }

    function getCurrentBlockGasLimit() public view returns (uint256 gaslimit) {
        gaslimit = block.gaslimit;
    }

    function getCurrentBlockCoinbase() public view returns (address coinbase) {
        coinbase = block.coinbase;
    }
}
        

Contract ABI

[{"type":"function","stateMutability":"nonpayable","outputs":[{"type":"uint256","name":"blockNumber","internalType":"uint256"},{"type":"bytes[]","name":"returnData","internalType":"bytes[]"}],"name":"aggregate","inputs":[{"type":"tuple[]","name":"calls","internalType":"struct Multicall.Call[]","components":[{"type":"address","name":"target","internalType":"address"},{"type":"bytes","name":"callData","internalType":"bytes"}]}]},{"type":"function","stateMutability":"view","outputs":[{"type":"bytes32","name":"blockHash","internalType":"bytes32"}],"name":"getBlockHash","inputs":[{"type":"uint256","name":"blockNumber","internalType":"uint256"}]},{"type":"function","stateMutability":"view","outputs":[{"type":"address","name":"coinbase","internalType":"address"}],"name":"getCurrentBlockCoinbase","inputs":[]},{"type":"function","stateMutability":"view","outputs":[{"type":"uint256","name":"difficulty","internalType":"uint256"}],"name":"getCurrentBlockDifficulty","inputs":[]},{"type":"function","stateMutability":"view","outputs":[{"type":"uint256","name":"gaslimit","internalType":"uint256"}],"name":"getCurrentBlockGasLimit","inputs":[]},{"type":"function","stateMutability":"view","outputs":[{"type":"uint256","name":"timestamp","internalType":"uint256"}],"name":"getCurrentBlockTimestamp","inputs":[]},{"type":"function","stateMutability":"view","outputs":[{"type":"uint256","name":"balance","internalType":"uint256"}],"name":"getEthBalance","inputs":[{"type":"address","name":"addr","internalType":"address"}]},{"type":"function","stateMutability":"view","outputs":[{"type":"bytes32","name":"blockHash","internalType":"bytes32"}],"name":"getLastBlockHash","inputs":[]}]
              

Contract Creation Code

Verify & Publish
0x608060405234801561001057600080fd5b50610ac2806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806372425d9d1161005b57806372425d9d1461012a57806386d516e814610148578063a8b0574e14610166578063ee82ac5e1461018457610088565b80630f28c97d1461008d578063252dba42146100ab57806327e86d6e146100dc5780634d2301cc146100fa575b600080fd5b6100956101b4565b6040516100a2919061073a565b60405180910390f35b6100c560048036038101906100c09190610557565b6101bc565b6040516100d3929190610755565b60405180910390f35b6100e461030f565b6040516100f1919061071f565b60405180910390f35b610114600480360381019061010f919061052a565b610324565b604051610121919061073a565b60405180910390f35b610132610345565b60405161013f919061073a565b60405180910390f35b61015061034d565b60405161015d919061073a565b60405180910390f35b61016e610355565b60405161017b9190610704565b60405180910390f35b61019e600480360381019061019991906105a0565b61035d565b6040516101ab919061071f565b60405180910390f35b600042905090565b60006060439150825167ffffffffffffffff8111156101de576101dd6109fb565b5b60405190808252806020026020018201604052801561021157816020015b60608152602001906001900390816101fc5790505b50905060005b835181101561030957600080858381518110610236576102356109cc565b5b60200260200101516000015173ffffffffffffffffffffffffffffffffffffffff1686848151811061026b5761026a6109cc565b5b60200260200101516020015160405161028491906106ed565b6000604051808303816000865af19150503d80600081146102c1576040519150601f19603f3d011682016040523d82523d6000602084013e6102c6565b606091505b5091509150816102d557600080fd5b808484815181106102e9576102e86109cc565b5b60200260200101819052505050808061030190610954565b915050610217565b50915091565b600060014361031e9190610867565b40905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b600045905090565b600041905090565b600081409050919050565b600061037b610376846107aa565b610785565b9050808382526020820190508285602086028201111561039e5761039d610a39565b5b60005b858110156103ec57813567ffffffffffffffff8111156103c4576103c3610a2a565b5b8086016103d189826104a9565b855260208501945060208401935050506001810190506103a1565b5050509392505050565b6000610409610404846107d6565b610785565b90508281526020810184848401111561042557610424610a3e565b5b6104308482856108e1565b509392505050565b60008135905061044781610a5e565b92915050565b600082601f83011261046257610461610a2a565b5b8135610472848260208601610368565b91505092915050565b600082601f8301126104905761048f610a2a565b5b81356104a08482602086016103f6565b91505092915050565b6000604082840312156104bf576104be610a2f565b5b6104c96040610785565b905060006104d984828501610438565b600083015250602082013567ffffffffffffffff8111156104fd576104fc610a34565b5b6105098482850161047b565b60208301525092915050565b60008135905061052481610a75565b92915050565b6000602082840312156105405761053f610a48565b5b600061054e84828501610438565b91505092915050565b60006020828403121561056d5761056c610a48565b5b600082013567ffffffffffffffff81111561058b5761058a610a43565b5b6105978482850161044d565b91505092915050565b6000602082840312156105b6576105b5610a48565b5b60006105c484828501610515565b91505092915050565b60006105d98383610674565b905092915050565b6105ea8161089b565b82525050565b60006105fb82610817565b610605818561083a565b93508360208202850161061785610807565b8060005b85811015610653578484038952815161063485826105cd565b945061063f8361082d565b925060208a0199505060018101905061061b565b50829750879550505050505092915050565b61066e816108ad565b82525050565b600061067f82610822565b610689818561084b565b93506106998185602086016108f0565b6106a281610a4d565b840191505092915050565b60006106b882610822565b6106c2818561085c565b93506106d28185602086016108f0565b80840191505092915050565b6106e7816108d7565b82525050565b60006106f982846106ad565b915081905092915050565b600060208201905061071960008301846105e1565b92915050565b60006020820190506107346000830184610665565b92915050565b600060208201905061074f60008301846106de565b92915050565b600060408201905061076a60008301856106de565b818103602083015261077c81846105f0565b90509392505050565b600061078f6107a0565b905061079b8282610923565b919050565b6000604051905090565b600067ffffffffffffffff8211156107c5576107c46109fb565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156107f1576107f06109fb565b5b6107fa82610a4d565b9050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b6000610872826108d7565b915061087d836108d7565b9250828210156108905761088f61099d565b5b828203905092915050565b60006108a6826108b7565b9050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b82818337600083830152505050565b60005b8381101561090e5780820151818401526020810190506108f3565b8381111561091d576000848401525b50505050565b61092c82610a4d565b810181811067ffffffffffffffff8211171561094b5761094a6109fb565b5b80604052505050565b600061095f826108d7565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156109925761099161099d565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b610a678161089b565b8114610a7257600080fd5b50565b610a7e816108d7565b8114610a8957600080fd5b5056fea2646970667358221220d39dbe656522a2319ffccc6d8ae3a1e2c192a0e58ff84169adc2472601fb870564736f6c63430008070033

Deployed ByteCode

0x608060405234801561001057600080fd5b50600436106100885760003560e01c806372425d9d1161005b57806372425d9d1461012a57806386d516e814610148578063a8b0574e14610166578063ee82ac5e1461018457610088565b80630f28c97d1461008d578063252dba42146100ab57806327e86d6e146100dc5780634d2301cc146100fa575b600080fd5b6100956101b4565b6040516100a2919061073a565b60405180910390f35b6100c560048036038101906100c09190610557565b6101bc565b6040516100d3929190610755565b60405180910390f35b6100e461030f565b6040516100f1919061071f565b60405180910390f35b610114600480360381019061010f919061052a565b610324565b604051610121919061073a565b60405180910390f35b610132610345565b60405161013f919061073a565b60405180910390f35b61015061034d565b60405161015d919061073a565b60405180910390f35b61016e610355565b60405161017b9190610704565b60405180910390f35b61019e600480360381019061019991906105a0565b61035d565b6040516101ab919061071f565b60405180910390f35b600042905090565b60006060439150825167ffffffffffffffff8111156101de576101dd6109fb565b5b60405190808252806020026020018201604052801561021157816020015b60608152602001906001900390816101fc5790505b50905060005b835181101561030957600080858381518110610236576102356109cc565b5b60200260200101516000015173ffffffffffffffffffffffffffffffffffffffff1686848151811061026b5761026a6109cc565b5b60200260200101516020015160405161028491906106ed565b6000604051808303816000865af19150503d80600081146102c1576040519150601f19603f3d011682016040523d82523d6000602084013e6102c6565b606091505b5091509150816102d557600080fd5b808484815181106102e9576102e86109cc565b5b60200260200101819052505050808061030190610954565b915050610217565b50915091565b600060014361031e9190610867565b40905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b600045905090565b600041905090565b600081409050919050565b600061037b610376846107aa565b610785565b9050808382526020820190508285602086028201111561039e5761039d610a39565b5b60005b858110156103ec57813567ffffffffffffffff8111156103c4576103c3610a2a565b5b8086016103d189826104a9565b855260208501945060208401935050506001810190506103a1565b5050509392505050565b6000610409610404846107d6565b610785565b90508281526020810184848401111561042557610424610a3e565b5b6104308482856108e1565b509392505050565b60008135905061044781610a5e565b92915050565b600082601f83011261046257610461610a2a565b5b8135610472848260208601610368565b91505092915050565b600082601f8301126104905761048f610a2a565b5b81356104a08482602086016103f6565b91505092915050565b6000604082840312156104bf576104be610a2f565b5b6104c96040610785565b905060006104d984828501610438565b600083015250602082013567ffffffffffffffff8111156104fd576104fc610a34565b5b6105098482850161047b565b60208301525092915050565b60008135905061052481610a75565b92915050565b6000602082840312156105405761053f610a48565b5b600061054e84828501610438565b91505092915050565b60006020828403121561056d5761056c610a48565b5b600082013567ffffffffffffffff81111561058b5761058a610a43565b5b6105978482850161044d565b91505092915050565b6000602082840312156105b6576105b5610a48565b5b60006105c484828501610515565b91505092915050565b60006105d98383610674565b905092915050565b6105ea8161089b565b82525050565b60006105fb82610817565b610605818561083a565b93508360208202850161061785610807565b8060005b85811015610653578484038952815161063485826105cd565b945061063f8361082d565b925060208a0199505060018101905061061b565b50829750879550505050505092915050565b61066e816108ad565b82525050565b600061067f82610822565b610689818561084b565b93506106998185602086016108f0565b6106a281610a4d565b840191505092915050565b60006106b882610822565b6106c2818561085c565b93506106d28185602086016108f0565b80840191505092915050565b6106e7816108d7565b82525050565b60006106f982846106ad565b915081905092915050565b600060208201905061071960008301846105e1565b92915050565b60006020820190506107346000830184610665565b92915050565b600060208201905061074f60008301846106de565b92915050565b600060408201905061076a60008301856106de565b818103602083015261077c81846105f0565b90509392505050565b600061078f6107a0565b905061079b8282610923565b919050565b6000604051905090565b600067ffffffffffffffff8211156107c5576107c46109fb565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156107f1576107f06109fb565b5b6107fa82610a4d565b9050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b6000610872826108d7565b915061087d836108d7565b9250828210156108905761088f61099d565b5b828203905092915050565b60006108a6826108b7565b9050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b82818337600083830152505050565b60005b8381101561090e5780820151818401526020810190506108f3565b8381111561091d576000848401525b50505050565b61092c82610a4d565b810181811067ffffffffffffffff8211171561094b5761094a6109fb565b5b80604052505050565b600061095f826108d7565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156109925761099161099d565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b610a678161089b565b8114610a7257600080fd5b50565b610a7e816108d7565b8114610a8957600080fd5b5056fea2646970667358221220d39dbe656522a2319ffccc6d8ae3a1e2c192a0e58ff84169adc2472601fb870564736f6c63430008070033