Overview
ETH Balance
ETH Value
$0.00Multichain Info
Latest 25 from a total of 77 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Multi Send | 12759989 | 2 days ago | IN | 0 ETH | 0.00000298 | ||||
Multi Send | 12609708 | 4 days ago | IN | 0 ETH | 0.00000381 | ||||
Multi Send | 12592604 | 4 days ago | IN | 0 ETH | 0.00012333 | ||||
Multi Send | 12592266 | 4 days ago | IN | 0 ETH | 0.00000219 | ||||
Multi Send | 12519055 | 5 days ago | IN | 0 ETH | 0.00000562 | ||||
Multi Send | 12509841 | 5 days ago | IN | 0 ETH | 0.00000159 | ||||
Multi Send | 12502517 | 5 days ago | IN | 0 ETH | 0.00000204 | ||||
Multi Send | 12416451 | 6 days ago | IN | 0 ETH | 0.00000208 | ||||
Multi Send | 12415924 | 6 days ago | IN | 0 ETH | 0.00000232 | ||||
Multi Send | 12082641 | 10 days ago | IN | 0 ETH | 0.00000641 | ||||
Multi Send | 11985492 | 11 days ago | IN | 0 ETH | 0.00000167 | ||||
Multi Send | 11985320 | 11 days ago | IN | 0 ETH | 0.00000282 | ||||
Multi Send | 11811038 | 13 days ago | IN | 0 ETH | 0.00000178 | ||||
Multi Send | 11559092 | 16 days ago | IN | 0 ETH | 0.00000238 | ||||
Multi Send | 11553540 | 16 days ago | IN | 0 ETH | 0.00000155 | ||||
Multi Send | 11552882 | 16 days ago | IN | 0 ETH | 0.00000282 | ||||
Multi Send | 11509452 | 17 days ago | IN | 0 ETH | 0.00000331 | ||||
Multi Send | 11465279 | 17 days ago | IN | 0 ETH | 0.0000017 | ||||
Multi Send | 11453532 | 18 days ago | IN | 0 ETH | 0.00000316 | ||||
Multi Send | 11210549 | 20 days ago | IN | 0 ETH | 0.00000221 | ||||
Multi Send | 10964688 | 23 days ago | IN | 0 ETH | 0.00000176 | ||||
Multi Send | 10961452 | 23 days ago | IN | 0 ETH | 0.00000202 | ||||
Multi Send | 10652317 | 27 days ago | IN | 0 ETH | 0.00000173 | ||||
Multi Send | 10349043 | 30 days ago | IN | 0 ETH | 0.00000715 | ||||
Multi Send | 10340826 | 30 days ago | IN | 0 ETH | 0.00000334 |
Latest 25 internal transactions (View All)
Parent Transaction Hash | Block | From | To | ||||
---|---|---|---|---|---|---|---|
12858994 | 43 hrs ago | 0 ETH | |||||
12765471 | 2 days ago | 0 ETH | |||||
12765437 | 2 days ago | 0 ETH | |||||
12761233 | 2 days ago | 0 ETH | |||||
12759989 | 2 days ago | 0 ETH | |||||
12759989 | 2 days ago | 0 ETH | |||||
12759989 | 2 days ago | 0 ETH | |||||
12670036 | 3 days ago | 0 ETH | |||||
12609708 | 4 days ago | 0 ETH | |||||
12609708 | 4 days ago | 0 ETH | |||||
12609708 | 4 days ago | 0 ETH | |||||
12609708 | 4 days ago | 0 ETH | |||||
12609708 | 4 days ago | 0 ETH | |||||
12609708 | 4 days ago | 0 ETH | |||||
12609708 | 4 days ago | 0 ETH | |||||
12609708 | 4 days ago | 0 ETH | |||||
12609708 | 4 days ago | 0 ETH | |||||
12592604 | 4 days ago | 0 ETH | |||||
12592604 | 4 days ago | 0 ETH | |||||
12592266 | 4 days ago | 0 ETH | |||||
12592266 | 4 days ago | 0 ETH | |||||
12592266 | 4 days ago | 0 ETH | |||||
12581005 | 5 days ago | 0 ETH | |||||
12519055 | 5 days ago | 0 ETH | |||||
12519055 | 5 days ago | 0 ETH |
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: LGPL-3.0-only pragma solidity >=0.7.0 <0.9.0; /** * @title Multi Send Call Only - Allows to batch multiple transactions into one, but only calls * @notice The guard logic is not required here as this contract doesn't support nested delegate calls * @author Stefan George - @Georgi87 * @author Richard Meissner - @rmeissner */ contract MultiSendCallOnly { /** * @dev Sends multiple transactions and reverts all if one fails. * @param transactions Encoded transactions. Each transaction is encoded as a packed bytes of * operation has to be uint8(0) in this version (=> 1 byte), * to as a address (=> 20 bytes), * value as a uint256 (=> 32 bytes), * data length as a uint256 (=> 32 bytes), * data as bytes. * see abi.encodePacked for more information on packed encoding * @notice The code is for most part the same as the normal MultiSend (to keep compatibility), * but reverts if a transaction tries to use a delegatecall. * @notice This method is payable as delegatecalls keep the msg.value from the previous call * If the calling method (e.g. execTransaction) received ETH this would revert otherwise */ function multiSend(bytes memory transactions) public payable { // solhint-disable-next-line no-inline-assembly assembly { let length := mload(transactions) let i := 0x20 for { // Pre block is not used in "while mode" } lt(i, length) { // Post block is not used in "while mode" } { // First byte of the data is the operation. // We shift by 248 bits (256 - 8 [operation byte]) it right since mload will always load 32 bytes (a word). // This will also zero out unused data. let operation := shr(0xf8, mload(add(transactions, i))) // We offset the load address by 1 byte (operation byte) // We shift it right by 96 bits (256 - 160 [20 address bytes]) to right-align the data and zero out unused data. let to := shr(0x60, mload(add(transactions, add(i, 0x01)))) // We offset the load address by 21 byte (operation byte + 20 address bytes) let value := mload(add(transactions, add(i, 0x15))) // We offset the load address by 53 byte (operation byte + 20 address bytes + 32 value bytes) let dataLength := mload(add(transactions, add(i, 0x35))) // We offset the load address by 85 byte (operation byte + 20 address bytes + 32 value bytes + 32 data length bytes) let data := add(transactions, add(i, 0x55)) let success := 0 switch operation case 0 { success := call(gas(), to, value, data, dataLength, 0, 0) } // This version does not allow delegatecalls case 1 { revert(0, 0) } if eq(success, 0) { revert(0, 0) } // Next entry starts at 85 byte + data length i := add(i, add(0x55, dataLength)) } } } }
{ "evmVersion": "istanbul", "libraries": {}, "metadata": { "bytecodeHash": "ipfs", "useLiteralContent": true }, "optimizer": { "enabled": false, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"bytes","name":"transactions","type":"bytes"}],"name":"multiSend","outputs":[],"stateMutability":"payable","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b5061019a806100206000396000f3fe60806040526004361061001e5760003560e01c80638d80ff0a14610023575b600080fd5b6100dc6004803603602081101561003957600080fd5b810190808035906020019064010000000081111561005657600080fd5b82018360208201111561006857600080fd5b8035906020019184600183028401116401000000008311171561008a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506100de565b005b805160205b8181101561015f578083015160f81c6001820184015160601c60158301850151603584018601516055850187016000856000811461012857600181146101385761013d565b6000808585888a5af1915061013d565b600080fd5b50600081141561014c57600080fd5b82605501870196505050505050506100e3565b50505056fea26469706673582212208d297bb003abee230b5dfb38774688f37a6fbb97a82a21728e8049b2acb9b73564736f6c63430007060033
Deployed Bytecode
0x60806040526004361061001e5760003560e01c80638d80ff0a14610023575b600080fd5b6100dc6004803603602081101561003957600080fd5b810190808035906020019064010000000081111561005657600080fd5b82018360208201111561006857600080fd5b8035906020019184600183028401116401000000008311171561008a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506100de565b005b805160205b8181101561015f578083015160f81c6001820184015160601c60158301850151603584018601516055850187016000856000811461012857600181146101385761013d565b6000808585888a5af1915061013d565b600080fd5b50600081141561014c57600080fd5b82605501870196505050505050506100e3565b50505056fea26469706673582212208d297bb003abee230b5dfb38774688f37a6fbb97a82a21728e8049b2acb9b73564736f6c63430007060033

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.