Transaction Hash:
Block:
18877989 at Dec-27-2023 03:48:47 PM +UTC
Transaction Fee:
0.010675908 ETH
$25.67
Gas Used:
197,702 Gas / 54 Gwei
Account State Difference:
Address | Before | After | State Difference | ||
---|---|---|---|---|---|
0x02034843...f55885c9f | 0 Eth | 0.01377 Eth | 0.01377 | ||
0x07A1f670...7232e2DEa | 0 Eth | 0.01377 Eth | 0.01377 | ||
0x0E81Cc0a...f0DEd4758 | 0 Eth | 0.01377 Eth | 0.01377 | ||
0x1689a089...2f8702000 | (WhiteBIT 2) |
19.140608052305006042 Eth
Nonce: 175571
|
18.895842144305006042 Eth
Nonce: 175572
| 0.244765908 | |
0x1d050866...79678595d | 0 Eth | 0.01377 Eth | 0.01377 | ||
0x267c28aa...F97f8E778 | 0 Eth | 0.01377 Eth | 0.01377 | ||
0x31515578...945C3EdaF | 0 Eth | 0.01377 Eth | 0.01377 | ||
0x4DDd12dA...128543308 | 0 Eth | 0.01377 Eth | 0.01377 | ||
0x587c86Df...11284482C | 0 Eth | 0.01377 Eth | 0.01377 | ||
0x606624af...633320289 | 0 Eth | 0.01377 Eth | 0.01377 | ||
0x82Ea8A5F...7F4A517Bb | 0 Eth | 0.01377 Eth | 0.01377 | ||
0x95222290...5CC4BAfe5
Miner
| (beaverbuild) | 17.366812944363236934 Eth | 17.367081636889970324 Eth | 0.00026869252673339 | |
0xaF304f0A...f8758D8bD | 0 Eth | 0.01377 Eth | 0.01377 | ||
0xb6608b6a...325f5311c | 0 Eth | 0.01377 Eth | 0.01377 | ||
0xCf85B14a...395853Dd7 | 0 Eth | 0.01377 Eth | 0.01377 | ||
0xDbbA4A88...5f13D19e3 | 0 Eth | 0.01377 Eth | 0.01377 | ||
0xF28430D9...19253EaA5 | 0 Eth | 0.01377 Eth | 0.01377 | ||
0xF76cfA11...7302FFE69 | 0 Eth | 0.01377 Eth | 0.01377 | ||
0xfB3Ea830...5fFfAAef4 | 0 Eth | 0.01377 Eth | 0.01377 |
Execution Trace
ETH 0.23409
BulkSender.distribute( addresses=[0xDbbA4A8877f8C19cD2eA7137FbE35B35f13D19e3, 0x606624af5027D0EBedbDe5a6Aa4D66C633320289, 0x587c86Df4eb186EFa540631faCB363811284482C, 0x315155784A2e3d1AccedaD6ABb3eC3f945C3EdaF, 0x82Ea8A5F5C60973869BDdA32C2F48Ad7F4A517Bb, 0x07A1f6708116BB35589D67d729d3A9f7232e2DEa, 0x0E81Cc0a7433C58725C025b360F01b1f0DEd4758, 0x1d05086666CaC07B60c003F850927b479678595d, 0xfB3Ea830a2DD85f4331d1afe18B189A5fFfAAef4, 0x4DDd12dA79A159cAcBE25CA06157b37128543308, 0xF28430D9FB65D490B4D9306536c19fE19253EaA5, 0xCf85B14aC2987a92D3dbab24A694923395853Dd7, 0xb6608b6a9947ac0673F83C4C8EF72b1325f5311c, 0x267c28aa6C1140b4211De5043E543f2F97f8E778, 0xF76cfA1117D4Ce98839c68275752Af47302FFE69, 0xaF304f0A4d73A37E844f1E0E902EEeCf8758D8bD, 0x020348439454b6A6AaD10C7Af8b9904f55885c9f], amounts=[13770000000000000, 13770000000000000, 13770000000000000, 13770000000000000, 13770000000000000, 13770000000000000, 13770000000000000, 13770000000000000, 13770000000000000, 13770000000000000, 13770000000000000, 13770000000000000, 13770000000000000, 13770000000000000, 13770000000000000, 13770000000000000, 13770000000000000] )
- ETH 0.01377
0xdbba4a8877f8c19cd2ea7137fbe35b35f13d19e3.CALL( )
- ETH 0.01377
0x606624af5027d0ebedbde5a6aa4d66c633320289.CALL( )
- ETH 0.01377
0x587c86df4eb186efa540631facb363811284482c.CALL( )
- ETH 0.01377
0x315155784a2e3d1accedad6abb3ec3f945c3edaf.CALL( )
- ETH 0.01377
0x82ea8a5f5c60973869bdda32c2f48ad7f4a517bb.CALL( )
- ETH 0.01377
0x07a1f6708116bb35589d67d729d3a9f7232e2dea.CALL( )
- ETH 0.01377
0x0e81cc0a7433c58725c025b360f01b1f0ded4758.CALL( )
- ETH 0.01377
0x1d05086666cac07b60c003f850927b479678595d.CALL( )
- ETH 0.01377
0xfb3ea830a2dd85f4331d1afe18b189a5fffaaef4.CALL( )
- ETH 0.01377
0x4ddd12da79a159cacbe25ca06157b37128543308.CALL( )
- ETH 0.01377
0xf28430d9fb65d490b4d9306536c19fe19253eaa5.CALL( )
- ETH 0.01377
0xcf85b14ac2987a92d3dbab24a694923395853dd7.CALL( )
- ETH 0.01377
0xb6608b6a9947ac0673f83c4c8ef72b1325f5311c.CALL( )
- ETH 0.01377
0x267c28aa6c1140b4211de5043e543f2f97f8e778.CALL( )
- ETH 0.01377
0xf76cfa1117d4ce98839c68275752af47302ffe69.CALL( )
- ETH 0.01377
0xaf304f0a4d73a37e844f1e0e902eeecf8758d8bd.CALL( )
- ETH 0.01377
0x020348439454b6a6aad10c7af8b9904f55885c9f.CALL( )
distribute[BulkSender (ln:73)]
transfer[BulkSender (ln:80)]
/** *Submitted for verification at Etherscan.io on 2020-05-16 */ pragma solidity 0.6.4; /** * @title Manage the owner for the BulkSender contract. */ contract Ownable { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor() public { _owner = msg.sender; emit OwnershipTransferred(address(this), _owner); } /** * Returns the address of the current owner. */ function owner() public view returns (address) { return _owner; } /** * Throws if called by any account other than the owner. */ modifier onlyOwner() { require(msg.sender == _owner, "Ownable: the caller is not the owner"); _; } /** * Sets the new address as the owner. */ function transferOwnership(address newOwner) onlyOwner public { require(newOwner != address(0), "Ownable: the new owner is the zero address"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } /** * @title Sending bulk transactions from the whitelisted wallets. */ contract BulkSender is Ownable { mapping(address => bool) whitelist; /** * Throws if called by any account other than the whitelisted address. */ modifier onlyWhiteListed() { require(whitelist[msg.sender], "Whitelist: the caller is not whitelisted"); _; } /** * Approves the address as the whitelisted address. */ function approve(address addr) onlyOwner external { whitelist[addr] = true; } /** * Removes the whitelisted address from the whitelist. */ function remove(address addr) onlyOwner external { whitelist[addr] = false; } /** * Returns true if the address is the whitelisted address. */ function isWhiteListed(address addr) public view returns (bool) { return whitelist[addr]; } /** * @dev Gets the list of addresses and the list of amounts to make bulk transactions. * @param addresses - address[] * @param amounts - uint256[] */ function distribute(address[] calldata addresses, uint256[] calldata amounts) onlyWhiteListed external payable { require(addresses.length > 0, "BulkSender: the length of addresses should be greater than zero"); require(amounts.length == addresses.length, "BulkSender: the length of addresses is not equal the length of amounts"); for (uint256 i; i < addresses.length; i++) { uint256 value = amounts[i]; require(value > 0, "BulkSender: the value should be greater then zero"); address payable _to = address(uint160(addresses[i])); _to.transfer(value); } } /** * @dev This contract shouldn't accept payments. */ receive() external payable { revert("This contract shouldn't accept payments."); } }