Contract
0x0769fd68dfb93167989c6f7254cd0d766fb2841f
24
My Name Tag:
Not Available, login to update
Txn Hash | Method |
Block
|
From
|
To
|
Value | [Txn Fee] | |||
---|---|---|---|---|---|---|---|---|---|
0xd5739d142ecf6323f9344f3a4dab238c59457dc30f73d97621943253977014d6 | 0x60806040 | 503923 | 575 days 16 hrs ago | 0xf87bc5535602077d340806d71f805ea9907a843d | IN | Contract Creation | 0 GLMR | 0.0563129 |
[ Download CSV Export ]
Similar Match Source Code This contract matches the deployed ByteCode of the Source Code for Contract 0x3B3f8c287181EF3F03ef3318Cf40063652f58679 The constructor portion of the code might be different and could alter the actual behaviour of the contract
Contract Name:
Multicall2
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity)
/** *Submitted for verification at moonbeam.moonscan.io on 2022-06-23 */ // Sources flattened with hardhat v2.6.8 https://hardhat.org // File contracts/Multicall2.sol // SPDX-License-Identifier: MIT pragma solidity >=0.5.0; pragma experimental ABIEncoderV2; /// @title Multicall2 - Aggregate results from multiple read-only function calls /// @author Michael Elliot <[email protected]> /// @author Joshua Levine <[email protected]> /// @author Nick Johnson <[email protected]> contract Multicall2 { struct Call { address target; bytes callData; } struct Result { bool success; bytes returnData; } 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, "Multicall aggregate: call failed"); returnData[i] = ret; } } function blockAndAggregate(Call[] memory calls) public returns (uint256 blockNumber, bytes32 blockHash, Result[] memory returnData) { (blockNumber, blockHash, returnData) = tryBlockAndAggregate(true, calls); } function getBlockHash(uint256 blockNumber) public view returns (bytes32 blockHash) { blockHash = blockhash(blockNumber); } function getBlockNumber() public view returns (uint256 blockNumber) { blockNumber = block.number; } function getCurrentBlockCoinbase() public view returns (address coinbase) { coinbase = block.coinbase; } function getCurrentBlockDifficulty() public view returns (uint256 difficulty) { difficulty = block.difficulty; } function getCurrentBlockGasLimit() public view returns (uint256 gaslimit) { gaslimit = block.gaslimit; } function getCurrentBlockTimestamp() public view returns (uint256 timestamp) { timestamp = block.timestamp; } function getEthBalance(address addr) public view returns (uint256 balance) { balance = addr.balance; } function getLastBlockHash() public view returns (bytes32 blockHash) { blockHash = blockhash(block.number - 1); } function tryAggregate(bool requireSuccess, Call[] memory calls) public returns (Result[] memory returnData) { returnData = new Result[](calls.length); for(uint256 i = 0; i < calls.length; i++) { (bool success, bytes memory ret) = calls[i].target.call(calls[i].callData); if (requireSuccess) { require(success, "Multicall2 aggregate: call failed"); } returnData[i] = Result(success, ret); } } function tryBlockAndAggregate(bool requireSuccess, Call[] memory calls) public returns (uint256 blockNumber, bytes32 blockHash, Result[] memory returnData) { blockNumber = block.number; blockHash = blockhash(block.number); returnData = tryAggregate(requireSuccess, calls); } }
[{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall2.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":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall2.Call[]","name":"calls","type":"tuple[]"}],"name":"blockAndAggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes32","name":"blockHash","type":"bytes32"},{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall2.Result[]","name":"returnData","type":"tuple[]"}],"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":"getBlockNumber","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"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"},{"inputs":[{"internalType":"bool","name":"requireSuccess","type":"bool"},{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall2.Call[]","name":"calls","type":"tuple[]"}],"name":"tryAggregate","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall2.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"requireSuccess","type":"bool"},{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct Multicall2.Call[]","name":"calls","type":"tuple[]"}],"name":"tryBlockAndAggregate","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"internalType":"bytes32","name":"blockHash","type":"bytes32"},{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct Multicall2.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b50610939806100206000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c806372425d9d1161007157806372425d9d1461013d57806386d516e814610145578063a8b0574e1461014d578063bce38bd714610162578063c3077fa914610182578063ee82ac5e14610195576100b4565b80630f28c97d146100b9578063252dba42146100d757806327e86d6e146100f8578063399542e91461010057806342cbb15c146101225780634d2301cc1461012a575b600080fd5b6100c16101a8565b6040516100ce919061079d565b60405180910390f35b6100ea6100e5366004610620565b6101ac565b6040516100ce92919061081c565b6100c16102eb565b61011361010e36600461065b565b6102f4565b6040516100ce93929190610884565b6100c161030c565b6100c16101383660046105fe565b610310565b6100c161031d565b6100c1610321565b610155610325565b6040516100ce9190610776565b61017561017036600461065b565b610329565b6040516100ce919061078a565b610113610190366004610620565b61047f565b6100c16101a33660046106ad565b61049c565b4290565b8051439060609067ffffffffffffffff811180156101c957600080fd5b506040519080825280602002602001820160405280156101fd57816020015b60608152602001906001900390816101e85790505b50905060005b83518110156102e5576000606085838151811061021c57fe5b6020026020010151600001516001600160a01b031686848151811061023d57fe5b602002602001015160200151604051610256919061075a565b6000604051808303816000865af19150503d8060008114610293576040519150601f19603f3d011682016040523d82523d6000602084013e610298565b606091505b5091509150816102c35760405162461bcd60e51b81526004016102ba906107e7565b60405180910390fd5b808484815181106102d057fe5b60209081029190910101525050600101610203565b50915091565b60001943014090565b43804060606103038585610329565b90509250925092565b4390565b6001600160a01b03163190565b4490565b4590565b4190565b6060815167ffffffffffffffff8111801561034357600080fd5b5060405190808252806020026020018201604052801561037d57816020015b61036a6104a0565b8152602001906001900390816103625790505b50905060005b8251811015610478576000606084838151811061039c57fe5b6020026020010151600001516001600160a01b03168584815181106103bd57fe5b6020026020010151602001516040516103d6919061075a565b6000604051808303816000865af19150503d8060008114610413576040519150601f19603f3d011682016040523d82523d6000602084013e610418565b606091505b5091509150851561044057816104405760405162461bcd60e51b81526004016102ba906107a6565b604051806040016040528083151581526020018281525084848151811061046357fe5b60209081029190910101525050600101610383565b5092915050565b600080606061048f6001856102f4565b9196909550909350915050565b4090565b60408051808201909152600081526060602082015290565b80356001600160a01b03811681146104cf57600080fd5b92915050565b600082601f8301126104e5578081fd5b813567ffffffffffffffff808211156104fc578283fd5b602061050b81828502016108ac565b838152935080840185820160005b858110156105895781358801604080601f19838d0301121561053a57600080fd5b610543816108ac565b61054f8c8885016104b8565b815290820135908782111561056357600080fd5b6105718c8884860101610595565b81880152855250509183019190830190600101610519565b50505050505092915050565b600082601f8301126105a5578081fd5b813567ffffffffffffffff8111156105bb578182fd5b6105ce601f8201601f19166020016108ac565b91508082528360208285010111156105e557600080fd5b8060208401602084013760009082016020015292915050565b60006020828403121561060f578081fd5b61061983836104b8565b9392505050565b600060208284031215610631578081fd5b813567ffffffffffffffff811115610647578182fd5b610653848285016104d5565b949350505050565b6000806040838503121561066d578081fd5b8235801515811461067c578182fd5b9150602083013567ffffffffffffffff811115610697578182fd5b6106a3858286016104d5565b9150509250929050565b6000602082840312156106be578081fd5b5035919050565b6000815180845260208085018081965082840281019150828601855b858110156107215782840389528151805115158552850151604086860181905261070d8187018361072e565b9a87019a95505050908401906001016106e1565b5091979650505050505050565b600081518084526107468160208601602086016108d3565b601f01601f19169290920160200192915050565b6000825161076c8184602087016108d3565b9190910192915050565b6001600160a01b0391909116815260200190565b60006020825261061960208301846106c5565b90815260200190565b60208082526021908201527f4d756c746963616c6c32206167677265676174653a2063616c6c206661696c656040820152601960fa1b606082015260800190565b6020808252818101527f4d756c746963616c6c206167677265676174653a2063616c6c206661696c6564604082015260600190565b600060408201848352602060408185015281855180845260608601915060608382028701019350828701855b8281101561087657605f1988870301845261086486835161072e565b95509284019290840190600101610848565b509398975050505050505050565b6000848252836020830152606060408301526108a360608301846106c5565b95945050505050565b60405181810167ffffffffffffffff811182821017156108cb57600080fd5b604052919050565b60005b838110156108ee5781810151838201526020016108d6565b838111156108fd576000848401525b5050505056fea26469706673582212201009c8aa32d7f7d16fb6b75df2229fa7a9e269a502e095c20ae18f42bcb2d34b64736f6c634300060c0033
Deployed ByteCode Sourcemap
427:2704:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1938:122;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;610:452;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;2188:126::-;;;:::i;2822:306::-;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;:::i;1439:113::-;;;:::i;2066:116::-;;;;;;:::i;:::-;;:::i;1682:126::-;;;:::i;1814:118::-;;;:::i;1558:::-;;;:::i;:::-;;;;;;;:::i;2320:496::-;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;1068:223::-;;;;;;:::i;:::-;;:::i;1297:136::-;;;;;;:::i;:::-;;:::i;1938:122::-;2037:15;;1938:122::o;610:452::-;787:12;;739;;687:25;;775;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;762:38;;815:9;811:244;834:5;:12;830:1;:16;811:244;;;869:12;883:16;903:5;909:1;903:8;;;;;;;;;;;;;;:15;;;-1:-1:-1;;;;;903:20:0;924:5;930:1;924:8;;;;;;;;;;;;;;:17;;;903:39;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;868:74;;;;965:7;957:52;;;;-1:-1:-1;;;957:52:0;;;;;;;:::i;:::-;;;;;;;;;1040:3;1024:10;1035:1;1024:13;;;;;;;;;;;;;;;;;:19;-1:-1:-1;;848:3:0;;811:244;;;;610:452;;;:::o;2188:126::-;-1:-1:-1;;2289:12:0;:16;2279:27;;2188:126::o;2822:306::-;3003:12;3038:23;;2950:26;3085:35;3098:14;3114:5;3085:12;:35::i;:::-;3072:48;;2822:306;;;;;:::o;1439:113::-;1532:12;;1439:113::o;2066:116::-;-1:-1:-1;;;;;2162:12:0;;;2066:116::o;1682:126::-;1784:16;;1682:126::o;1814:118::-;1910:14;;1814:118::o;1558:::-;1654:14;;1558:118::o;2320:496::-;2400:26;2465:5;:12;2452:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;2439:39;;2493:9;2489:320;2512:5;:12;2508:1;:16;2489:320;;;2547:12;2561:16;2581:5;2587:1;2581:8;;;;;;;;;;;;;;:15;;;-1:-1:-1;;;;;2581:20:0;2602:5;2608:1;2602:8;;;;;;;;;;;;;;:17;;;2581:39;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2546:74;;;;2641:14;2637:108;;;2684:7;2676:53;;;;-1:-1:-1;;;2676:53:0;;;;;;;:::i;:::-;2777:20;;;;;;;;2784:7;2777:20;;;;;;2793:3;2777:20;;;2761:10;2772:1;2761:13;;;;;;;;;;;;;;;;;:36;-1:-1:-1;;2526:3:0;;2489:320;;;;2320:496;;;;:::o;1068:223::-;1132:19;1153:17;1172:26;1250:33;1271:4;1277:5;1250:20;:33::i;:::-;1211:72;;;;-1:-1:-1;1211:72:0;;-1:-1:-1;1068:223:0;-1:-1:-1;;1068:223:0:o;1297:136::-;1403:22;;1297:136::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;:::o;5:130::-;72:20;;-1:-1;;;;;15373:54;;16113:35;;16103:2;;16162:1;;16152:12;16103:2;57:78;;;;:::o;175:735::-;;311:3;304:4;296:6;292:17;288:27;278:2;;-1:-1;;319:12;278:2;366:6;353:20;12616:18;;12608:6;12605:30;12602:2;;;-1:-1;;12638:12;12602:2;12683:4;388:99;12683:4;;12675:6;12671:17;12736:15;388:99;:::i;:::-;515:21;;;379:108;-1:-1;572:14;;;547:17;;;667:1;652:252;677:6;674:1;671:13;652:252;;;760:3;747:17;551:6;735:30;1635:4;;1614:19;;735:30;1618:3;1614:19;;1610:30;1607:2;;;667:1;;1643:12;1607:2;1671:20;1635:4;1671:20;:::i;:::-;1775:49;1820:3;12683:4;735:30;;1775:49;:::i;:::-;1750:75;;1903:18;;;1890:32;;1931:30;;;1928:2;;;667:1;;1964:12;1928:2;2009:58;2063:3;12683:4;2054:6;735:30;2039:22;;2009:58;:::i;:::-;1991:16;;;1984:84;772:69;;-1:-1;;855:14;;;;883;;;;699:1;692:9;652:252;;;656:14;;;;;;271:639;;;;:::o;1050:440::-;;1151:3;1144:4;1136:6;1132:17;1128:27;1118:2;;-1:-1;;1159:12;1118:2;1206:6;1193:20;12911:18;12903:6;12900:30;12897:2;;;-1:-1;;12933:12;12897:2;1228:64;1614:19;12987:17;;-1:-1;;12983:33;13074:4;13064:15;1228:64;:::i;:::-;1219:73;;1312:6;1305:5;1298:21;1416:3;13074:4;1407:6;1340;1398:16;;1395:25;1392:2;;;1433:1;;1423:12;1392:2;15600:6;13074:4;1340:6;1336:17;13074:4;1374:5;1370:16;15577:30;15656:1;15638:16;;;13074:4;15638:16;15631:27;1374:5;1111:379;-1:-1;;1111:379::o;2233:241::-;;2337:2;2325:9;2316:7;2312:23;2308:32;2305:2;;;-1:-1;;2343:12;2305:2;2405:53;2450:7;2426:22;2405:53;:::i;:::-;2395:63;2299:175;-1:-1;;;2299:175::o;2481:415::-;;2629:2;2617:9;2608:7;2604:23;2600:32;2597:2;;;-1:-1;;2635:12;2597:2;2693:17;2680:31;2731:18;2723:6;2720:30;2717:2;;;-1:-1;;2753:12;2717:2;2783:97;2872:7;2863:6;2852:9;2848:22;2783:97;:::i;:::-;2773:107;2591:305;-1:-1;;;;2591:305::o;2903:534::-;;;3065:2;3053:9;3044:7;3040:23;3036:32;3033:2;;;-1:-1;;3071:12;3033:2;995:6;982:20;16259:5;15206:13;15199:21;16237:5;16234:32;16224:2;;-1:-1;;16270:12;16224:2;3123:60;-1:-1;3248:2;3233:18;;3220:32;3272:18;3261:30;;3258:2;;;-1:-1;;3294:12;3258:2;3324:97;3413:7;3404:6;3393:9;3389:22;3324:97;:::i;:::-;3314:107;;;3027:410;;;;;:::o;3444:241::-;;3548:2;3536:9;3527:7;3523:23;3519:32;3516:2;;;-1:-1;;3554:12;3516:2;-1:-1;2163:20;;3510:175;-1:-1;3510:175::o;5280:1024::-;;5539:5;13555:12;14291:6;14286:3;14279:19;14328:4;;14323:3;14319:14;5551:115;;;;14328:4;5723:6;5719:17;5714:3;5710:27;5698:39;;14328:4;5830:5;13220:14;-1:-1;5869:396;5894:6;5891:1;5888:13;5869:396;;;5946:20;;;5934:33;;5995:13;;8209:23;;15206:13;15199:21;6367:34;;8369:16;;8363:23;8140:4;8406:14;;;8399:38;;;8452:71;8131:14;;;8363:23;8452:71;:::i;:::-;6244:14;;;;6015:116;-1:-1;;;13988:14;;;;5916:1;5909:9;5869:396;;;-1:-1;6288:10;;5448:856;-1:-1;;;;;;;5448:856::o;6533:323::-;;6665:5;13555:12;14291:6;14286:3;14279:19;6748:52;6793:6;14328:4;14323:3;14319:14;14328:4;6774:5;6770:16;6748:52;:::i;:::-;1614:19;16017:14;-1:-1;;16013:28;6812:39;;;;14328:4;6812:39;;6613:243;-1:-1;;6613:243::o;8688:271::-;;7023:5;13555:12;7134:52;7179:6;7174:3;7167:4;7160:5;7156:16;7134:52;:::i;:::-;7198:16;;;;;8822:137;-1:-1;;8822:137::o;8966:222::-;-1:-1;;;;;15373:54;;;;4211:37;;9093:2;9078:18;;9064:124::o;9195:458::-;;9416:2;9437:17;9430:47;9491:152;9416:2;9405:9;9401:18;9629:6;9491:152;:::i;9660:222::-;6484:37;;;9787:2;9772:18;;9758:124::o;9889:416::-;10089:2;10103:47;;;7451:2;10074:18;;;14279:19;7487:34;14319:14;;;7467:55;-1:-1;;;7542:12;;;7535:25;7579:12;;;10060:245::o;10312:416::-;10512:2;10526:47;;;10497:18;;;14279:19;7866:34;14319:14;;;7846:55;7920:12;;;10483:245::o;10964:517::-;;11187:2;11176:9;11172:18;6514:5;6491:3;6484:37;11305:2;11187;11305;11294:9;11290:18;11283:48;11345:126;4507:5;13555:12;14291:6;14286:3;14279:19;14319:14;11176:9;14319:14;4519:102;;14319:14;11305:2;4678:6;4674:17;11176:9;4665:27;;4653:39;;11305:2;4772:5;13220:14;-1:-1;4811:357;4836:6;4833:1;4830:13;4811:357;;;4888:20;;11176:9;4892:4;4888:20;;4883:3;4876:33;3812:64;3872:3;4943:6;4937:13;3812:64;:::i;:::-;4957:90;-1:-1;5147:14;;;;13988;;;;4858:1;4851:9;4811:357;;;-1:-1;11337:134;;11158:323;-1:-1;;;;;;;;11158:323::o;11488:680::-;;6514:5;6491:3;6484:37;6514:5;11929:2;11918:9;11914:18;6484:37;11765:2;11966;11955:9;11951:18;11944:48;12006:152;11765:2;11754:9;11750:18;12144:6;12006:152;:::i;:::-;11998:160;11736:432;-1:-1;;;;;11736:432::o;12175:256::-;12237:2;12231:9;12263:17;;;12338:18;12323:34;;12359:22;;;12320:62;12317:2;;;12395:1;;12385:12;12317:2;12237;12404:22;12215:216;;-1:-1;12215:216::o;15673:268::-;15738:1;15745:101;15759:6;15756:1;15753:13;15745:101;;;15826:11;;;15820:18;15807:11;;;15800:39;15781:2;15774:10;15745:101;;;15861:6;15858:1;15855:13;15852:2;;;15738:1;15917:6;15912:3;15908:16;15901:27;15852:2;;15722:219;;;:::o
Swarm Source
ipfs://1009c8aa32d7f7d16fb6b75df2229fa7a9e269a502e095c20ae18f42bcb2d34b
Age | Block | Fee Address | BC Fee Address | Voting Power | Jailed | Incoming |
---|
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.