Transaction Hash:
Block:
16982965 at Apr-05-2023 01:46:23 PM +UTC
Transaction Fee:
0.005526472793709576 ETH
$11.36
Gas Used:
143,188 Gas / 38.595921402 Gwei
Account State Difference:
| Address | Before | After | State Difference | ||
|---|---|---|---|---|---|
| 0x119EC627...21372ecdb | 0 Eth | 0.015 Eth | 0.015 | ||
| 0x1800FC28...30F23252F |
0 Eth
Nonce: 0
|
0.015 Eth
Nonce: 0
| 0.015 | ||
| 0x62131147...4A10Da372 | 0 Eth | 0.015 Eth | 0.015 | ||
| 0x81Bc25A8...A54F82598 | 0 Eth | 0.015 Eth | 0.015 | ||
|
0x95222290...5CC4BAfe5
Miner
| (beaverbuild) | 63.09317713833061454 Eth | 63.09339192033061454 Eth | 0.000214782 | |
| 0xbdc291EB...81a24513b | 0 Eth | 0.015 Eth | 0.015 | ||
| 0xd0Aa5Ce7...96968550e |
0 Eth
Nonce: 0
|
0.015 Eth
Nonce: 0
| 0.015 | ||
| 0xE04c32fC...9607Ae1fB | 0 Eth | 0.015 Eth | 0.015 | ||
| 0xe2030794...535193743 |
0.404025479411925684 Eth
Nonce: 361
|
0.293499006618216108 Eth
Nonce: 362
| 0.110526472793709576 |
Execution Trace
ETH 0.105
Disperse.disperseEther( recipients=[0x119EC627d8064dD524cE1492dD2af7C21372ecdb, 0x81Bc25A8483A3aC9460daB14b3381AdA54F82598, 0xE04c32fC23F40f3D77Bd0D9Cc5156499607Ae1fB, 0x6213114744B9De583C45C36E93C21D94A10Da372, 0xbdc291EB7702F5759806340C0Cf2a4181a24513b, 0x1800FC2872a0ac08Ad89Fd7d31494c930F23252F, 0xd0Aa5Ce799FC6D2dC9F6Cb271BC7dc096968550e], values=[15000000000000000, 15000000000000000, 15000000000000000, 15000000000000000, 15000000000000000, 15000000000000000, 15000000000000000] )
- ETH 0.015
0x119ec627d8064dd524ce1492dd2af7c21372ecdb.CALL( ) - ETH 0.015
0x81bc25a8483a3ac9460dab14b3381ada54f82598.CALL( ) - ETH 0.015
0xe04c32fc23f40f3d77bd0d9cc5156499607ae1fb.CALL( ) - ETH 0.015
0x6213114744b9de583c45c36e93c21d94a10da372.CALL( ) - ETH 0.015
0xbdc291eb7702f5759806340c0cf2a4181a24513b.CALL( ) - ETH 0.015
0x1800fc2872a0ac08ad89fd7d31494c930f23252f.CALL( ) - ETH 0.015
0xd0aa5ce799fc6d2dc9f6cb271bc7dc096968550e.CALL( )
disperseEther[Disperse (ln:11)]
transfer[Disperse (ln:13)]transfer[Disperse (ln:16)]
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]));
}
}