ETH Price: $2,817.62 (+7.12%)
 

Overview

ETH Balance

0.0000012 ETH

Eth Value

Less Than $0.01 (@ $2,817.62/ETH)

Token Holdings

Transaction Hash
Method
Block
From
To
Multi Send211354482024-11-07 11:22:3513 mins ago1730978555IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0026111111.4815061
Multi Send211353862024-11-07 11:09:5926 mins ago1730977799IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.002700313.52844217
Multi Send211353272024-11-07 10:58:1138 mins ago1730977091IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.002081815.43530861
Multi Send211352632024-11-07 10:45:1151 mins ago1730976311IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.00290117.11869981
Multi Send211352442024-11-07 10:41:2354 mins ago1730976083IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0031818214.31740394
Multi Send211350632024-11-07 10:04:591 hr ago1730973899IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0024157120.46903069
Multi Send211349582024-11-07 9:43:591 hr ago1730972639IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0091102820.473603
Multi Send211348672024-11-07 9:25:472 hrs ago1730971547IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0036705828.0105189
Multi Send211347572024-11-07 9:03:352 hrs ago1730970215IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0143613914.63660915
Multi Send211344822024-11-07 8:08:233 hrs ago1730966903IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0042133710.95655416
Multi Send211329352024-11-07 2:57:478 hrs ago1730948267IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0037735820.48302133
Multi Send211321742024-11-07 0:24:4711 hrs ago1730939087IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0039372515.65131193
Multi Send211320282024-11-06 23:55:2311 hrs ago1730937323IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0067502915.43248576
Multi Send211316762024-11-06 22:44:4712 hrs ago1730933087IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0038650519.73084049
Multi Send211314932024-11-06 22:08:1113 hrs ago1730930891IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0048200818.62949746
Multi Send211314472024-11-06 21:58:4713 hrs ago1730930327IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0047269925.24144629
Multi Send211314462024-11-06 21:58:3513 hrs ago1730930315IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0027866322.67842755
Multi Send211314242024-11-06 21:54:1113 hrs ago1730930051IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0103761620.76154952
Multi Send211311882024-11-06 21:06:3514 hrs ago1730927195IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.1572735829.87666726
Multi Send211311062024-11-06 20:49:5914 hrs ago1730926199IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.006692320.18844084
Multi Send211305902024-11-06 19:06:2316 hrs ago1730919983IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0019510617.99692676
Multi Send211303272024-11-06 18:13:4717 hrs ago1730916827IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0028137415.51265594
Multi Send211302742024-11-06 18:02:5917 hrs ago1730916179IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0018014614.33792575
Multi Send211301402024-11-06 17:36:1118 hrs ago1730914571IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0033596816.1
Multi Send211301342024-11-06 17:34:5918 hrs ago1730914499IN
Safe: Multi Send Call Only 1.3.0
0 ETH0.0041405914.87153408
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
202768562024-07-10 15:00:11119 days ago1720623611
Safe: Multi Send Call Only 1.3.0
0.002 ETH
202768562024-07-10 15:00:11119 days ago1720623611
Safe: Multi Send Call Only 1.3.0
0.002 ETH
202768562024-07-10 15:00:11119 days ago1720623611
Safe: Multi Send Call Only 1.3.0
0.002 ETH
202768562024-07-10 15:00:11119 days ago1720623611
Safe: Multi Send Call Only 1.3.0
0.002 ETH
202768562024-07-10 15:00:11119 days ago1720623611
Safe: Multi Send Call Only 1.3.0
0.002 ETH
202768562024-07-10 15:00:11119 days ago1720623611
Safe: Multi Send Call Only 1.3.0
0.002 ETH
202768562024-07-10 15:00:11119 days ago1720623611
Safe: Multi Send Call Only 1.3.0
0.002 ETH
202768562024-07-10 15:00:11119 days ago1720623611
Safe: Multi Send Call Only 1.3.0
0.002 ETH
202768562024-07-10 15:00:11119 days ago1720623611
Safe: Multi Send Call Only 1.3.0
0.002 ETH
202768562024-07-10 15:00:11119 days ago1720623611
Safe: Multi Send Call Only 1.3.0
0.002 ETH
178767082023-08-09 10:19:47456 days ago1691576387
Safe: Multi Send Call Only 1.3.0
0.062 ETH
178767082023-08-09 10:19:47456 days ago1691576387
Safe: Multi Send Call Only 1.3.0
0.062 ETH
178767082023-08-09 10:19:47456 days ago1691576387
Safe: Multi Send Call Only 1.3.0
0.062 ETH
178767082023-08-09 10:19:47456 days ago1691576387
Safe: Multi Send Call Only 1.3.0
0.062 ETH
178767082023-08-09 10:19:47456 days ago1691576387
Safe: Multi Send Call Only 1.3.0
0.062 ETH
178767082023-08-09 10:19:47456 days ago1691576387
Safe: Multi Send Call Only 1.3.0
0.062 ETH
178767082023-08-09 10:19:47456 days ago1691576387
Safe: Multi Send Call Only 1.3.0
0.062 ETH
178767082023-08-09 10:19:47456 days ago1691576387
Safe: Multi Send Call Only 1.3.0
0.062 ETH
154450292022-08-31 6:25:37799 days ago1661927137
Safe: Multi Send Call Only 1.3.0
0.03 ETH
154387272022-08-30 6:08:56800 days ago1661839736
Safe: Multi Send Call Only 1.3.0
0.045 ETH
154348622022-08-29 15:18:39800 days ago1661786319
Safe: Multi Send Call Only 1.3.0
0.045 ETH
154081162022-08-25 8:38:42805 days ago1661416722
Safe: Multi Send Call Only 1.3.0
0.05 ETH
154081032022-08-25 8:36:13805 days ago1661416573
Safe: Multi Send Call Only 1.3.0
0.05 ETH
154080792022-08-25 8:30:32805 days ago1661416232
Safe: Multi Send Call Only 1.3.0
0.05 ETH
125042662021-05-25 15:18:401261 days ago1621955920  Contract Creation0 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, Audited
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

OVERVIEW

Library for call-only transaction batching used in Gnosis Safe

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ 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.