ETH Price: $2,597.32 (+6.37%)

Contract

0xA1dabEF33b3B82c7814B6D82A79e50F4AC44102B
Transaction Hash
Method
Block
From
To
Multi Send1276166092024-11-05 18:39:5512 hrs ago1730831995IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000083104680.00100031
Multi Send1276137572024-11-05 17:04:5114 hrs ago1730826291IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000036212880.00100032
Multi Send1276131992024-11-05 16:46:1514 hrs ago1730825175IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.000003331290.00100035
Multi Send1276094562024-11-05 14:41:2916 hrs ago1730817689IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000070513610.00100042
Multi Send1276059022024-11-05 12:43:0118 hrs ago1730810581IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000011533930.00100043
Multi Send1275570172024-11-04 9:33:3145 hrs ago1730712811IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000005850390.00100043
Multi Send1274834122024-11-02 16:40:013 days ago1730565601IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.000002007940.0010006
Multi Send1274341842024-11-01 13:19:054 days ago1730467145IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000029058140.0010004
Multi Send1274051952024-10-31 21:12:475 days ago1730409167IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000013368360.0011004
Multi Send1273992362024-10-31 17:54:095 days ago1730397249IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000013402450.00100048
Multi Send1273877672024-10-31 11:31:515 days ago1730374311IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000042968190.00100034
Multi Send1273877342024-10-31 11:30:455 days ago1730374245IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000030166720.00100034
Multi Send1273872092024-10-31 11:13:155 days ago1730373195IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000021062130.00100035
Multi Send1273871642024-10-31 11:11:455 days ago1730373105IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000022740920.00100034
Multi Send1273685622024-10-31 0:51:416 days ago1730335901IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000030631750.00120033
Multi Send1273584802024-10-30 19:15:376 days ago1730315737IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000018918230.00100069
Multi Send1273578872024-10-30 18:55:516 days ago1730314551IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000120773350.00100065
Multi Send1273529122024-10-30 16:10:016 days ago1730304601IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000033003710.0010007
Multi Send1273444222024-10-30 11:27:016 days ago1730287621IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000018763690.00100031
Multi Send1273442372024-10-30 11:20:516 days ago1730287251IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.00000215370.00100033
Multi Send1273441182024-10-30 11:16:536 days ago1730287013IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000042607380.00100032
Multi Send1273438902024-10-30 11:09:176 days ago1730286557IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000046541070.0010005
Multi Send1273434082024-10-30 10:53:136 days ago1730285593IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000025675210.0010004
Multi Send1273428192024-10-30 10:33:356 days ago1730284415IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000040631790.00100051
Multi Send1273426022024-10-30 10:26:216 days ago1730283981IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0000014982050.0010005
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
1128517212023-11-29 23:56:59342 days ago1701302219
Safe: Multi Send Call Only 1.3.0
0.00069 ETH
1128516922023-11-29 23:56:01342 days ago1701302161
Safe: Multi Send Call Only 1.3.0
0.00069 ETH
1128500392023-11-29 23:00:55342 days ago1701298855
Safe: Multi Send Call Only 1.3.0
0.002 ETH
1128443592023-11-29 19:51:35342 days ago1701287495
Safe: Multi Send Call Only 1.3.0
0.0005 ETH
1128401552023-11-29 17:31:27342 days ago1701279087
Safe: Multi Send Call Only 1.3.0
0.0005 ETH
1128397582023-11-29 17:18:13342 days ago1701278293
Safe: Multi Send Call Only 1.3.0
0.0012 ETH
1128396502023-11-29 17:14:37342 days ago1701278077
Safe: Multi Send Call Only 1.3.0
0.0012 ETH
1128395522023-11-29 17:11:21342 days ago1701277881
Safe: Multi Send Call Only 1.3.0
0.0012 ETH
1128384062023-11-29 16:33:09342 days ago1701275589
Safe: Multi Send Call Only 1.3.0
0.0005 ETH
1128383352023-11-29 16:30:47342 days ago1701275447
Safe: Multi Send Call Only 1.3.0
0.0005 ETH
1128383002023-11-29 16:29:37342 days ago1701275377
Safe: Multi Send Call Only 1.3.0
0.0005 ETH
1128367942023-11-29 15:39:25342 days ago1701272365
Safe: Multi Send Call Only 1.3.0
0.0012 ETH
1128280512023-11-29 10:47:59342 days ago1701254879
Safe: Multi Send Call Only 1.3.0
0.0005 ETH
1128280282023-11-29 10:47:13342 days ago1701254833
Safe: Multi Send Call Only 1.3.0
0.0005 ETH
1128278322023-11-29 10:40:41342 days ago1701254441
Safe: Multi Send Call Only 1.3.0
0.001 ETH
1128276912023-11-29 10:35:59342 days ago1701254159
Safe: Multi Send Call Only 1.3.0
0.001 ETH
1128276022023-11-29 10:33:01342 days ago1701253981
Safe: Multi Send Call Only 1.3.0
0.0005 ETH
1128273742023-11-29 10:25:25342 days ago1701253525
Safe: Multi Send Call Only 1.3.0
0.0005 ETH
1128272102023-11-29 10:19:57342 days ago1701253197
Safe: Multi Send Call Only 1.3.0
0.0005 ETH
1128271112023-11-29 10:16:39342 days ago1701252999
Safe: Multi Send Call Only 1.3.0
0.0005 ETH
1128270932023-11-29 10:16:03342 days ago1701252963
Safe: Multi Send Call Only 1.3.0
0.0005 ETH
1128270852023-11-29 10:15:47342 days ago1701252947
Safe: Multi Send Call Only 1.3.0
0.0005 ETH
1128269732023-11-29 10:12:03342 days ago1701252723
Safe: Multi Send Call Only 1.3.0
0.0005 ETH
1128269602023-11-29 10:11:37342 days ago1701252697
Safe: Multi Send Call Only 1.3.0
0.0005 ETH
1128269472023-11-29 10:11:11342 days ago1701252671
Safe: Multi Send Call Only 1.3.0
0.0005 ETH
View All Internal Transactions

Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
MultiSendCallOnly

Compiler Version
v0.7.6+commit.7338295f

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, GNU LGPLv3 license
File 1 of 1 : MultiSendCallOnly.sol
// 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
/// @author Stefan George - <[email protected]>
/// @author Richard Meissner - <[email protected]>
/// @notice The guard logic is not required here as this contract doesn't support nested delegate calls
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))
            }
        }
    }
}

Settings
{
  "evmVersion": "istanbul",
  "libraries": {},
  "metadata": {
    "bytecodeHash": "ipfs",
    "useLiteralContent": true
  },
  "optimizer": {
    "enabled": false,
    "runs": 200
  },
  "remappings": [],
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "abi"
      ]
    }
  }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"bytes","name":"transactions","type":"bytes"}],"name":"multiSend","outputs":[],"stateMutability":"payable","type":"function"}]

608060405234801561001057600080fd5b5061019a806100206000396000f3fe60806040526004361061001e5760003560e01c80638d80ff0a14610023575b600080fd5b6100dc6004803603602081101561003957600080fd5b810190808035906020019064010000000081111561005657600080fd5b82018360208201111561006857600080fd5b8035906020019184600183028401116401000000008311171561008a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506100de565b005b805160205b8181101561015f578083015160f81c6001820184015160601c60158301850151603584018601516055850187016000856000811461012857600181146101385761013d565b6000808585888a5af1915061013d565b600080fd5b50600081141561014c57600080fd5b82605501870196505050505050506100e3565b50505056fea264697066735822122035246402746c96964495cae5b36461fd44dfb89f8e6cf6f6b8d60c0aa89f414864736f6c63430007060033

Deployed Bytecode

0x60806040526004361061001e5760003560e01c80638d80ff0a14610023575b600080fd5b6100dc6004803603602081101561003957600080fd5b810190808035906020019064010000000081111561005657600080fd5b82018360208201111561006857600080fd5b8035906020019184600183028401116401000000008311171561008a57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192905050506100de565b005b805160205b8181101561015f578083015160f81c6001820184015160601c60158301850151603584018601516055850187016000856000811461012857600181146101385761013d565b6000808585888a5af1915061013d565b600080fd5b50600081141561014c57600080fd5b82605501870196505050505050506100e3565b50505056fea264697066735822122035246402746c96964495cae5b36461fd44dfb89f8e6cf6f6b8d60c0aa89f414864736f6c63430007060033

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
[ Download: CSV Export  ]
[ 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.