ETH Price: $2,186.56 (-5.61%)

Transaction Decoder

Block:
21322610 at Dec-03-2024 02:35:23 PM +UTC
Transaction Fee:
0.0041177844301187 ETH $9.00
Gas Used:
83,050 Gas / 49.581991934 Gwei

Account State Difference:

  Address   Before After State Difference Code
0x117057ab...7e3a2dd49
2.169034439250408558 Eth
Nonce: 956
1.264916654820289858 Eth
Nonce: 957
0.9041177844301187
0x178Cc485...93A16D94b 0 Eth0.15 Eth0.15
0x4F2B260C...310C4382b 0.000989379821908883 Eth0.150989379821908883 Eth0.15
0x55229dd0...C52f87041 0 Eth0.15 Eth0.15
0x872d42fE...7B2e68e92 0 Eth0.15 Eth0.15
(beaverbuild)
9.916063267691935477 Eth9.916232440541935477 Eth0.00016917285
0xBa4d9288...9FB33DE39 0 Eth0.15 Eth0.15
0xecd2C1ED...5A2a5844f 0 Eth0.15 Eth0.15

Execution Trace

ETH 0.9 Disperse.disperseEther( recipients=[0x4F2B260CF042E4FA4527c1D2fc1Fd07310C4382b, 0x872d42fEfeb0F62831Bfe6c8DB8e43b7B2e68e92, 0xBa4d92885c2008F4689F45385FE3FEC9FB33DE39, 0x178Cc485289d52069d4675C540c580993A16D94b, 0x55229dd08e97ff850D5b8a636C21841C52f87041, 0xecd2C1ED7bC09B99cFd28ae86eD76Df5A2a5844f], values=[150000000000000000, 150000000000000000, 150000000000000000, 150000000000000000, 150000000000000000, 150000000000000000] )
  • ETH 0.15 0x4f2b260cf042e4fa4527c1d2fc1fd07310c4382b.CALL( )
  • ETH 0.15 0x872d42fefeb0f62831bfe6c8db8e43b7b2e68e92.CALL( )
  • ETH 0.15 0xba4d92885c2008f4689f45385fe3fec9fb33de39.CALL( )
  • ETH 0.15 0x178cc485289d52069d4675c540c580993a16d94b.CALL( )
  • ETH 0.15 0x55229dd08e97ff850d5b8a636c21841c52f87041.CALL( )
  • ETH 0.15 0xecd2c1ed7bc09b99cfd28ae86ed76df5a2a5844f.CALL( )
    pragma solidity ^0.4.25;
    
    
    interface IERC20 {
        function transfer(address to, uint256 value) external returns (bool);
        function transferFrom(address from, address to, uint256 value) external returns (bool);
    }
    
    
    contract Disperse {
        function disperseEther(address[] recipients, uint256[] values) external payable {
            for (uint256 i = 0; i < recipients.length; i++)
                recipients[i].transfer(values[i]);
            uint256 balance = address(this).balance;
            if (balance > 0)
                msg.sender.transfer(balance);
        }
    
        function disperseToken(IERC20 token, address[] recipients, uint256[] values) external {
            uint256 total = 0;
            for (uint256 i = 0; i < recipients.length; i++)
                total += values[i];
            require(token.transferFrom(msg.sender, address(this), total));
            for (i = 0; i < recipients.length; i++)
                require(token.transfer(recipients[i], values[i]));
        }
    
        function disperseTokenSimple(IERC20 token, address[] recipients, uint256[] values) external {
            for (uint256 i = 0; i < recipients.length; i++)
                require(token.transferFrom(msg.sender, recipients[i], values[i]));
        }
    }