Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
Multicall
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2021-12-27
*/
// SPDX-License-Identifier: MIT
pragma solidity >=0.6.12;
pragma experimental ABIEncoderV2;
/// @title Multicall - Aggregate results from multiple read-only function calls
/// @author Michael Elliot <mike@makerdao.com>
/// @author Joshua Levine <joshua@makerdao.com>
/// @author Nick Johnson <arachnid@notdot.net>
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 Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall.Call[]","name":"calls","type":"tuple[]"}],"name":"aggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes[]","name":"returnData","type":"bytes[]"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"name":"getBlockHash","outputs":[{"internalType":"bytes32","name":"blockHash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockCoinbase","outputs":[{"internalType":"address","name":"coinbase","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockDifficulty","outputs":[{"internalType":"uint256","name":"difficulty","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockGasLimit","outputs":[{"internalType":"uint256","name":"gaslimit","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentBlockTimestamp","outputs":[{"internalType":"uint256","name":"timestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"getEthBalance","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getLastBlockHash","outputs":[{"internalType":"bytes32","name":"blockHash","type":"bytes32"}],"stateMutability":"view","type":"function"}]Contract Creation Code
608060405234801561001057600080fd5b50610552806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806372425d9d1161005b57806372425d9d146100e757806386d516e8146100ef578063a8b0574e146100f7578063ee82ac5e1461010c57610088565b80630f28c97d1461008d578063252dba42146100ab57806327e86d6e146100cc5780634d2301cc146100d4575b600080fd5b61009561011f565b6040516100a2919061043c565b60405180910390f35b6100be6100b9366004610314565b610123565b6040516100a2929190610445565b610095610246565b6100956100e23660046102f2565b61024f565b61009561025c565b610095610260565b6100ff610264565b6040516100a29190610428565b61009561011a3660046103f4565b610268565b4290565b8051439060609067ffffffffffffffff8111801561014057600080fd5b5060405190808252806020026020018201604052801561017457816020015b606081526020019060019003908161015f5790505b50905060005b8351811015610240576000606085838151811061019357fe5b6020026020010151600001516001600160a01b03168684815181106101b457fe5b6020026020010151602001516040516101cd919061040c565b6000604051808303816000865af19150503d806000811461020a576040519150601f19603f3d011682016040523d82523d6000602084013e61020f565b606091505b50915091508161021e57600080fd5b8084848151811061022b57fe5b6020908102919091010152505060010161017a565b50915091565b60001943014090565b6001600160a01b03163190565b4490565b4590565b4190565b4090565b80356001600160a01b038116811461028357600080fd5b92915050565b600082601f830112610299578081fd5b813567ffffffffffffffff8111156102af578182fd5b6102c2601f8201601f19166020016104c5565b91508082528360208285010111156102d957600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215610303578081fd5b61030d838361026c565b9392505050565b60006020808385031215610326578182fd5b823567ffffffffffffffff8082111561033d578384fd5b818501915085601f830112610350578384fd5b81358181111561035e578485fd5b61036b84858302016104c5565b81815284810190848601875b848110156103e55781358701604080601f19838f03011215610397578a8bfd5b6103a0816104c5565b6103ac8e8c850161026c565b81529082013590888211156103bf578b8cfd5b6103cd8e8c84860101610289565b818c0152865250509287019290870190600101610377565b50909998505050505050505050565b600060208284031215610405578081fd5b5035919050565b6000825161041e8184602087016104ec565b9190910192915050565b6001600160a01b0391909116815260200190565b90815260200190565b600060408201848352602060408185015281855180845260608601915060608382028701019350828701855b828110156104b757878603605f190184528151805180885261049881888a018985016104ec565b601f01601f191696909601850195509284019290840190600101610471565b509398975050505050505050565b60405181810167ffffffffffffffff811182821017156104e457600080fd5b604052919050565b60005b838110156105075781810151838201526020016104ef565b83811115610516576000848401525b5050505056fea2646970667358221220377ac0a3d80f0874be98b7494144b209aaeae1553625b703538cd77de4d0f1a364736f6c634300060c0033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100885760003560e01c806372425d9d1161005b57806372425d9d146100e757806386d516e8146100ef578063a8b0574e146100f7578063ee82ac5e1461010c57610088565b80630f28c97d1461008d578063252dba42146100ab57806327e86d6e146100cc5780634d2301cc146100d4575b600080fd5b61009561011f565b6040516100a2919061043c565b60405180910390f35b6100be6100b9366004610314565b610123565b6040516100a2929190610445565b610095610246565b6100956100e23660046102f2565b61024f565b61009561025c565b610095610260565b6100ff610264565b6040516100a29190610428565b61009561011a3660046103f4565b610268565b4290565b8051439060609067ffffffffffffffff8111801561014057600080fd5b5060405190808252806020026020018201604052801561017457816020015b606081526020019060019003908161015f5790505b50905060005b8351811015610240576000606085838151811061019357fe5b6020026020010151600001516001600160a01b03168684815181106101b457fe5b6020026020010151602001516040516101cd919061040c565b6000604051808303816000865af19150503d806000811461020a576040519150601f19603f3d011682016040523d82523d6000602084013e61020f565b606091505b50915091508161021e57600080fd5b8084848151811061022b57fe5b6020908102919091010152505060010161017a565b50915091565b60001943014090565b6001600160a01b03163190565b4490565b4590565b4190565b4090565b80356001600160a01b038116811461028357600080fd5b92915050565b600082601f830112610299578081fd5b813567ffffffffffffffff8111156102af578182fd5b6102c2601f8201601f19166020016104c5565b91508082528360208285010111156102d957600080fd5b8060208401602084013760009082016020015292915050565b600060208284031215610303578081fd5b61030d838361026c565b9392505050565b60006020808385031215610326578182fd5b823567ffffffffffffffff8082111561033d578384fd5b818501915085601f830112610350578384fd5b81358181111561035e578485fd5b61036b84858302016104c5565b81815284810190848601875b848110156103e55781358701604080601f19838f03011215610397578a8bfd5b6103a0816104c5565b6103ac8e8c850161026c565b81529082013590888211156103bf578b8cfd5b6103cd8e8c84860101610289565b818c0152865250509287019290870190600101610377565b50909998505050505050505050565b600060208284031215610405578081fd5b5035919050565b6000825161041e8184602087016104ec565b9190910192915050565b6001600160a01b0391909116815260200190565b90815260200190565b600060408201848352602060408185015281855180845260608601915060608382028701019350828701855b828110156104b757878603605f190184528151805180885261049881888a018985016104ec565b601f01601f191696909601850195509284019290840190600101610471565b509398975050505050505050565b60405181810167ffffffffffffffff811182821017156104e457600080fd5b604052919050565b60005b838110156105075781810151838201526020016104ef565b83811115610516576000848401525b5050505056fea2646970667358221220377ac0a3d80f0874be98b7494144b209aaeae1553625b703538cd77de4d0f1a364736f6c634300060c0033
Deployed Bytecode Sourcemap
327:1467:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1283:122;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;431:417;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;1149:126::-;;;:::i;881:116::-;;;;;;:::i;:::-;;:::i;1413:126::-;;;:::i;1547:118::-;;;:::i;1673:::-;;;:::i;:::-;;;;;;;:::i;1005:136::-;;;;;;:::i;:::-;;:::i;1283:122::-;1382:15;;1283:122::o;431:417::-;608:12;;560;;508:25;;596;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;583:38;;637:9;632:209;656:5;:12;652:1;:16;632:209;;;691:12;705:16;725:5;731:1;725:8;;;;;;;;;;;;;;:15;;;-1:-1:-1;;;;;725:20:0;746:5;752:1;746:8;;;;;;;;;;;;;;:17;;;725:39;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;690:74;;;;787:7;779:16;;;;;;826:3;810:10;821:1;810:13;;;;;;;;;;;;;;;;;:19;-1:-1:-1;;670:3:0;;632:209;;;;431:417;;;:::o;1149:126::-;-1:-1:-1;;1250:12:0;:16;1240:27;;1149:126::o;881:116::-;-1:-1:-1;;;;;977:12:0;;;881:116::o;1413:126::-;1515:16;;1413:126::o;1547:118::-;1643:14;;1547:118::o;1673:::-;1769:14;;1673:118::o;1005:136::-;1111:22;;1005:136::o;5:130:-1:-;72:20;;-1:-1;;;;;8955:54;;9695:35;;9685:2;;9744:1;;9734:12;9685:2;57:78;;;;:::o;918:440::-;;1019:3;1012:4;1004:6;1000:17;996:27;986:2;;-1:-1;;1027:12;986:2;1074:6;1061:20;7449:18;7441:6;7438:30;7435:2;;;-1:-1;;7471:12;7435:2;1096:64;7544:9;7525:17;;-1:-1;;7521:33;7612:4;7602:15;1096:64;:::i;:::-;1087:73;;1180:6;1173:5;1166:21;1284:3;7612:4;1275:6;1208;1266:16;;1263:25;1260:2;;;1301:1;;1291:12;1260:2;9182:6;7612:4;1208:6;1204:17;7612:4;1242:5;1238:16;9159:30;9238:1;9220:16;;;7612:4;9220:16;9213:27;1242:5;979:379;-1:-1;;979:379::o;2100:241::-;;2204:2;2192:9;2183:7;2179:23;2175:32;2172:2;;;-1:-1;;2210:12;2172:2;2272:53;2317:7;2293:22;2272:53;:::i;:::-;2262:63;2166:175;-1:-1;;;2166:175::o;2348:415::-;;2496:2;;2484:9;2475:7;2471:23;2467:32;2464:2;;;-1:-1;;2502:12;2464:2;2560:17;2547:31;2598:18;;2590:6;2587:30;2584:2;;;-1:-1;;2620:12;2584:2;2730:6;2719:9;2715:22;;;310:3;303:4;295:6;291:17;287:27;277:2;;-1:-1;;318:12;277:2;365:6;352:20;2598:18;7146:6;7143:30;7140:2;;;-1:-1;;7176:12;7140:2;387:99;2496:2;;7213:6;7209:17;7274:15;387:99;:::i;:::-;514:21;;;571:14;;;;546:17;;;-1:-1;651:252;676:6;673:1;670:13;651:252;;;759:3;746:17;550:6;734:30;1502:4;;7544:9;;734:30;1485:3;1481:19;;1477:30;1474:2;;;-1:-1;;1510:12;1474:2;1538:20;1502:4;1538:20;:::i;:::-;1642:49;1687:3;2496:2;734:30;;1642:49;:::i;:::-;1617:75;;1770:18;;;1757:32;;1798:30;;;1795:2;;;-1:-1;;1831:12;1795:2;1876:58;1930:3;2496:2;1921:6;734:30;1906:22;;1876:58;:::i;:::-;1858:16;;;1851:84;771:69;;-1:-1;;854:14;;;;882;;;;698:1;691:9;651:252;;;-1:-1;2640:107;;2458:305;-1:-1;;;;;;;;;2458:305::o;2770:241::-;;2874:2;2862:9;2853:7;2849:23;2845:32;2842:2;;;-1:-1;;2880:12;2842:2;-1:-1;2030:20;;2836:175;-1:-1;2836:175::o;5224:271::-;;4901:5;7913:12;5012:52;5057:6;5052:3;5045:4;5038:5;5034:16;5012:52;:::i;:::-;5076:16;;;;;5358:137;-1:-1;;5358:137::o;5502:222::-;-1:-1;;;;;8955:54;;;;3287:37;;5629:2;5614:18;;5600:124::o;5731:222::-;4362:37;;;5858:2;5843:18;;5829:124::o;6189:517::-;;6412:2;6401:9;6397:18;4392:5;4369:3;4362:37;6530:2;6412;6530;6519:9;6515:18;6508:48;6570:126;3583:5;7913:12;8346:6;8341:3;8334:19;8374:14;6401:9;8374:14;3595:102;;8374:14;6530:2;3754:6;3750:17;6401:9;3741:27;;3729:39;;6530:2;3848:5;7758:14;-1:-1;3887:357;3912:6;3909:1;3906:13;3887:357;;;3964:20;;;-1:-1;;3964:20;3952:33;;4013:13;;7913:12;;8334:19;;;4626:52;7913:12;8374:14;;;4648:16;;;4626:52;:::i;:::-;7544:9;9599:14;-1:-1;;9595:28;4690:39;;;;;;;-1:-1;4223:14;;;;8180;;;;3934:1;3927:9;3887:357;;;-1:-1;6562:134;;6383:323;-1:-1;;;;;;;;6383:323::o;6713:256::-;6775:2;6769:9;6801:17;;;6876:18;6861:34;;6897:22;;;6858:62;6855:2;;;6933:1;;6923:12;6855:2;6775;6942:22;6753:216;;-1:-1;6753:216::o;9255:268::-;9320:1;9327:101;9341:6;9338:1;9335:13;9327:101;;;9408:11;;;9402:18;9389:11;;;9382:39;9363:2;9356:10;9327:101;;;9443:6;9440:1;9437:13;9434:2;;;9320:1;9499:6;9494:3;9490:16;9483:27;9434:2;;9304:219;;;:::o
Swarm Source
ipfs://377ac0a3d80f0874be98b7494144b209aaeae1553625b703538cd77de4d0f1a3
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 33 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
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.