ETH Price: $2,447.83 (-1.72%)

Transaction Decoder

Block:
22789367 at Jun-26-2025 02:59:11 PM +UTC
Transaction Fee:
0.00048488581564108 ETH $1.19
Gas Used:
75,695 Gas / 6.405783944 Gwei

Emitted Events:

65 0xd0d6d6c5fe4a677d343cc433536bb717bae167dd.0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef( 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef, 0x00000000000000000000000039bfd1e48c38da0d599ff8a4cfb22e9c71ab355c, 0x00000000000000000000000028ddcf8a2fc65a1ded798afed1abaf97ce844033, 000000000000000000000000000000000000000000000000000358139191b400 )

Account State Difference:

  Address   Before After State Difference Code
0x28DDCF8a...7cE844033
0.031871074625301502 Eth
Nonce: 7
0.031386188809660422 Eth
Nonce: 8
0.00048488581564108
0x39Bfd1e4...C71ab355C From: 0 To: 22892027216055521077983025459888618813540507392140687613
(Titan Builder)
13.550122167474638678 Eth13.550373707521328803 Eth0.000251540046690125
0xD0D6D6C5...7bAe167dD

Execution Trace

Multicall2.aggregate( calls= ) => ( blockNumber=22789367, returnData=[AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFbvPcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB] )
  • 0x39bfd1e48c38da0d599ff8a4cfb22e9c71ab355c.0a7c8ed6( )
    • Metax.io: ADT Token.a9059cbb( )
      /**
       *Submitted for verification at Etherscan.io on 2021-03-23
      */
      
      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);
          }
      }