More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 778 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Airdrop ERC20 | 21452642 | 37 hrs ago | IN | 0 ETH | 0.03697342 | ||||
Airdrop ERC721 | 21447611 | 2 days ago | IN | 0 ETH | 0.00588069 | ||||
Airdrop ERC20 | 21447228 | 2 days ago | IN | 0 ETH | 0.00249712 | ||||
Airdrop ERC721 | 21446158 | 2 days ago | IN | 0 ETH | 0.04494694 | ||||
Airdrop ERC20 | 21444081 | 2 days ago | IN | 0 ETH | 0.95841597 | ||||
Airdrop ERC20 | 21378424 | 11 days ago | IN | 0 ETH | 0.00464172 | ||||
Airdrop ETH | 21378386 | 11 days ago | IN | 0.054 ETH | 0.00371765 | ||||
Airdrop ERC20 | 21367457 | 13 days ago | IN | 0 ETH | 0.01856914 | ||||
Airdrop ERC20 | 21366952 | 13 days ago | IN | 0 ETH | 0.00515032 | ||||
Airdrop ERC20 | 21366940 | 13 days ago | IN | 0 ETH | 0.00731085 | ||||
Airdrop ERC20 | 21362516 | 14 days ago | IN | 0 ETH | 0.01020873 | ||||
Airdrop ETH | 21362492 | 14 days ago | IN | 2.20142622 ETH | 0.00169845 | ||||
Airdrop ERC721 | 21344249 | 16 days ago | IN | 0 ETH | 0.07265778 | ||||
Airdrop ERC721 | 21338136 | 17 days ago | IN | 0 ETH | 0.00206479 | ||||
Airdrop ERC721 | 21337966 | 17 days ago | IN | 0 ETH | 0.0534643 | ||||
Airdrop ERC721 | 21337931 | 17 days ago | IN | 0 ETH | 0.00721023 | ||||
Airdrop ERC20 | 21334204 | 18 days ago | IN | 0 ETH | 0.01716285 | ||||
Airdrop ERC721 | 21328026 | 18 days ago | IN | 0 ETH | 0.00155299 | ||||
Airdrop ERC721 | 21327814 | 18 days ago | IN | 0 ETH | 0.00156873 | ||||
Airdrop ERC20 | 21327547 | 19 days ago | IN | 0 ETH | 0.01784774 | ||||
Airdrop ERC20 | 21324957 | 19 days ago | IN | 0 ETH | 0.01097898 | ||||
Airdrop ETH | 21316952 | 20 days ago | IN | 9.27 ETH | 0.03443493 | ||||
Airdrop ERC20 | 21314933 | 20 days ago | IN | 0 ETH | 0.04813025 | ||||
Airdrop ERC20 | 21292929 | 23 days ago | IN | 0 ETH | 0.01097105 | ||||
Airdrop ERC20 | 21288403 | 24 days ago | IN | 0 ETH | 0.00169756 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
21378386 | 11 days ago | 0.006 ETH | ||||
21378386 | 11 days ago | 0.006 ETH | ||||
21378386 | 11 days ago | 0.006 ETH | ||||
21378386 | 11 days ago | 0.006 ETH | ||||
21378386 | 11 days ago | 0.006 ETH | ||||
21378386 | 11 days ago | 0.006 ETH | ||||
21378386 | 11 days ago | 0.006 ETH | ||||
21378386 | 11 days ago | 0.006 ETH | ||||
21378386 | 11 days ago | 0.006 ETH | ||||
21362492 | 14 days ago | 0.06011464 ETH | ||||
21362492 | 14 days ago | 0.00858559 ETH | ||||
21362492 | 14 days ago | 0.06572177 ETH | ||||
21362492 | 14 days ago | 0.0513126 ETH | ||||
21362492 | 14 days ago | 0.07968748 ETH | ||||
21362492 | 14 days ago | 0.11482298 ETH | ||||
21362492 | 14 days ago | 0.04452721 ETH | ||||
21362492 | 14 days ago | 0.67446985 ETH | ||||
21362492 | 14 days ago | 0.31948726 ETH | ||||
21362492 | 14 days ago | 0.07588526 ETH | ||||
21362492 | 14 days ago | 0.04245466 ETH | ||||
21362492 | 14 days ago | 0.66435684 ETH | ||||
21316952 | 20 days ago | 0.09 ETH | ||||
21316952 | 20 days ago | 0.09 ETH | ||||
21316952 | 20 days ago | 0.09 ETH | ||||
21316952 | 20 days ago | 0.09 ETH |
Loading...
Loading
Contract Name:
GasliteDrop
Compiler Version
v0.8.19+commit.7dd6d404
Optimization Enabled:
Yes with 9999999 runs
Other Settings:
paris EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
pragma solidity 0.8.19; /** bbbbbbbb dddddddd b::::::b d::::::d b::::::b d::::::d b::::::b d::::::d b:::::b d:::::d ggggggggg ggggg aaaaaaaaaaaaa ssssssssss b:::::bbbbbbbbb aaaaaaaaaaaaa ddddddddd:::::d g:::::::::ggg::::g a::::::::::::a ss::::::::::s b::::::::::::::bb a::::::::::::a dd::::::::::::::d g:::::::::::::::::g aaaaaaaaa:::::ass:::::::::::::s b::::::::::::::::b aaaaaaaaa:::::a d::::::::::::::::d g::::::ggggg::::::gg a::::as::::::ssss:::::s b:::::bbbbb:::::::b a::::ad:::::::ddddd:::::d g:::::g g:::::g aaaaaaa:::::a s:::::s ssssss b:::::b b::::::b aaaaaaa:::::ad::::::d d:::::d g:::::g g:::::g aa::::::::::::a s::::::s b:::::b b:::::b aa::::::::::::ad:::::d d:::::d g:::::g g:::::g a::::aaaa::::::a s::::::s b:::::b b:::::b a::::aaaa::::::ad:::::d d:::::d g::::::g g:::::ga::::a a:::::assssss s:::::s b:::::b b:::::ba::::a a:::::ad:::::d d:::::d g:::::::ggggg:::::ga::::a a:::::as:::::ssss::::::s b:::::bbbbbb::::::ba::::a a:::::ad::::::ddddd::::::dd g::::::::::::::::ga:::::aaaa::::::as::::::::::::::s b::::::::::::::::b a:::::aaaa::::::a d:::::::::::::::::d gg::::::::::::::g a::::::::::aa:::as:::::::::::ss b:::::::::::::::b a::::::::::aa:::a d:::::::::ddd::::d gggggggg::::::g aaaaaaaaaa aaaa sssssssssss bbbbbbbbbbbbbbbb aaaaaaaaaa aaaa ddddddddd ddddd g:::::g gggggg g:::::g g:::::gg gg:::::g g::::::ggg:::::::g gg:::::::::::::g ggg::::::ggg gggggg */ /** * @title GasliteDrop * @notice Turbo gas optimized bulk transfers of ERC20, ERC721, and ETH * @author Harrison (@PopPunkOnChain) * @author Gaslite (@GasliteGG) * @author Pop Punk LLC (@PopPunkLLC) */ contract GasliteDrop { /** * @notice Airdrop ERC721 tokens to a list of addresses * @param _nft The address of the ERC721 contract * @param _addresses The addresses to airdrop to * @param _tokenIds The tokenIds to airdrop */ function airdropERC721( address _nft, address[] calldata _addresses, uint256[] calldata _tokenIds ) external payable { assembly { // Check that the number of addresses matches the number of tokenIds if iszero(eq(_tokenIds.length, _addresses.length)) { revert(0, 0) } // transferFrom(address from, address to, uint256 tokenId) mstore(0x00, hex"23b872dd") // from address mstore(0x04, caller()) // end of array let end := add(_addresses.offset, shl(5, _addresses.length)) // diff = _addresses.offset - _tokenIds.offset let diff := sub(_addresses.offset, _tokenIds.offset) // Loop through the addresses for { let addressOffset := _addresses.offset } 1 {} { // to address mstore(0x24, calldataload(addressOffset)) // tokenId mstore(0x44, calldataload(sub(addressOffset, diff))) // transfer the token if iszero(call(gas(), _nft, 0, 0x00, 0x64, 0, 0)){ revert(0, 0) } // increment the address offset addressOffset := add(addressOffset, 0x20) // if addressOffset >= end, break if iszero(lt(addressOffset, end)) { break } } } } /** * @notice Airdrop ERC20 tokens to a list of addresses * @param _token The address of the ERC20 contract * @param _addresses The addresses to airdrop to * @param _amounts The amounts to airdrop * @param _totalAmount The total amount to airdrop */ function airdropERC20( address _token, address[] calldata _addresses, uint256[] calldata _amounts, uint256 _totalAmount ) external payable { assembly { // Check that the number of addresses matches the number of amounts if iszero(eq(_amounts.length, _addresses.length)) { revert(0, 0) } // transferFrom(address from, address to, uint256 amount) mstore(0x00, hex"23b872dd") // from address mstore(0x04, caller()) // to address (this contract) mstore(0x24, address()) // total amount mstore(0x44, _totalAmount) // transfer total amount to this contract if iszero(call(gas(), _token, 0, 0x00, 0x64, 0, 0)){ revert(0, 0) } // transfer(address to, uint256 value) mstore(0x00, hex"a9059cbb") // end of array let end := add(_addresses.offset, shl(5, _addresses.length)) // diff = _addresses.offset - _amounts.offset let diff := sub(_addresses.offset, _amounts.offset) // Loop through the addresses for { let addressOffset := _addresses.offset } 1 {} { // to address mstore(0x04, calldataload(addressOffset)) // amount mstore(0x24, calldataload(sub(addressOffset, diff))) // transfer the tokens if iszero(call(gas(), _token, 0, 0x00, 0x64, 0, 0)){ revert(0, 0) } // increment the address offset addressOffset := add(addressOffset, 0x20) // if addressOffset >= end, break if iszero(lt(addressOffset, end)) { break } } } } /** * @notice Airdrop ETH to a list of addresses * @param _addresses The addresses to airdrop to * @param _amounts The amounts to airdrop */ function airdropETH( address[] calldata _addresses, uint256[] calldata _amounts ) external payable { assembly { // Check that the number of addresses matches the number of amounts if iszero(eq(_amounts.length, _addresses.length)) { revert(0, 0) } // iterator let i := _addresses.offset // end of array let end := add(i, shl(5, _addresses.length)) // diff = _addresses.offset - _amounts.offset let diff := sub(_amounts.offset, _addresses.offset) // Loop through the addresses for {} 1 {} { // transfer the ETH if iszero( call(gas(), calldataload(i), calldataload(add(i, diff)), 0x00, 0x00, 0x00, 0x00) ) { revert(0x00, 0x00) } // increment the iterator i := add(i, 0x20) // if i >= end, break if eq(end, i) { break } } } } }
{ "remappings": [ "ds-test/=lib/forge-std/lib/ds-test/src/", "forge-std/=lib/forge-std/src/", "@solady/=lib/solady/src/", "@openzeppelin/=lib/openzeppelin-contracts/contracts/", "erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/", "openzeppelin-contracts/=lib/openzeppelin-contracts/", "openzeppelin/=lib/openzeppelin-contracts/contracts/", "solady/=lib/solady/" ], "optimizer": { "enabled": true, "runs": 9999999 }, "metadata": { "useLiteralContent": false, "bytecodeHash": "ipfs", "appendCBOR": true }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "evmVersion": "paris", "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"address[]","name":"_addresses","type":"address[]"},{"internalType":"uint256[]","name":"_amounts","type":"uint256[]"},{"internalType":"uint256","name":"_totalAmount","type":"uint256"}],"name":"airdropERC20","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"_nft","type":"address"},{"internalType":"address[]","name":"_addresses","type":"address[]"},{"internalType":"uint256[]","name":"_tokenIds","type":"uint256[]"}],"name":"airdropERC721","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_addresses","type":"address[]"},{"internalType":"uint256[]","name":"_amounts","type":"uint256[]"}],"name":"airdropETH","outputs":[],"stateMutability":"payable","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b50610400806100206000396000f3fe6080604052600436106100345760003560e01c80631d5659fb1461003957806382947abe1461004e578063c1a3800614610061575b600080fd5b61004c610047366004610254565b610074565b005b61004c61005c3660046102d5565b6100e7565b61004c61006f36600461035e565b61019b565b82811461008057600080fd5b7f23b872dd00000000000000000000000000000000000000000000000000000000600052336004528260051b8401828503855b80356024528181033560445260008060646000808c5af16100d357600080fd5b6020018281106100b3575050505050505050565b8382146100f357600080fd5b7f23b872dd0000000000000000000000000000000000000000000000000000000060005233600452306024528060445260008060646000808a5af161013757600080fd5b7fa9059cbb000000000000000000000000000000000000000000000000000000006000528360051b8501838603865b80356004528181033560245260008060646000808d5af161018657600080fd5b60200182811061016657505050505050505050565b8281146101a757600080fd5b838360051b81018584035b6000806000808487013587355af16101c957600080fd5b6020830192508282036101b25750505050505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461020357600080fd5b919050565b60008083601f84011261021a57600080fd5b50813567ffffffffffffffff81111561023257600080fd5b6020830191508360208260051b850101111561024d57600080fd5b9250929050565b60008060008060006060868803121561026c57600080fd5b610275866101df565b9450602086013567ffffffffffffffff8082111561029257600080fd5b61029e89838a01610208565b909650945060408801359150808211156102b757600080fd5b506102c488828901610208565b969995985093965092949392505050565b600080600080600080608087890312156102ee57600080fd5b6102f7876101df565b9550602087013567ffffffffffffffff8082111561031457600080fd5b6103208a838b01610208565b9097509550604089013591508082111561033957600080fd5b5061034689828a01610208565b979a9699509497949695606090950135949350505050565b6000806000806040858703121561037457600080fd5b843567ffffffffffffffff8082111561038c57600080fd5b61039888838901610208565b909650945060208701359150808211156103b157600080fd5b506103be87828801610208565b9598949750955050505056fea2646970667358221220792dccaaf3120aecf3c06a58bf4e368e4bc40ceb2a47dc5d8a9ae6936fadc6d164736f6c63430008130033
Deployed Bytecode
0x6080604052600436106100345760003560e01c80631d5659fb1461003957806382947abe1461004e578063c1a3800614610061575b600080fd5b61004c610047366004610254565b610074565b005b61004c61005c3660046102d5565b6100e7565b61004c61006f36600461035e565b61019b565b82811461008057600080fd5b7f23b872dd00000000000000000000000000000000000000000000000000000000600052336004528260051b8401828503855b80356024528181033560445260008060646000808c5af16100d357600080fd5b6020018281106100b3575050505050505050565b8382146100f357600080fd5b7f23b872dd0000000000000000000000000000000000000000000000000000000060005233600452306024528060445260008060646000808a5af161013757600080fd5b7fa9059cbb000000000000000000000000000000000000000000000000000000006000528360051b8501838603865b80356004528181033560245260008060646000808d5af161018657600080fd5b60200182811061016657505050505050505050565b8281146101a757600080fd5b838360051b81018584035b6000806000808487013587355af16101c957600080fd5b6020830192508282036101b25750505050505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461020357600080fd5b919050565b60008083601f84011261021a57600080fd5b50813567ffffffffffffffff81111561023257600080fd5b6020830191508360208260051b850101111561024d57600080fd5b9250929050565b60008060008060006060868803121561026c57600080fd5b610275866101df565b9450602086013567ffffffffffffffff8082111561029257600080fd5b61029e89838a01610208565b909650945060408801359150808211156102b757600080fd5b506102c488828901610208565b969995985093965092949392505050565b600080600080600080608087890312156102ee57600080fd5b6102f7876101df565b9550602087013567ffffffffffffffff8082111561031457600080fd5b6103208a838b01610208565b9097509550604089013591508082111561033957600080fd5b5061034689828a01610208565b979a9699509497949695606090950135949350505050565b6000806000806040858703121561037457600080fd5b843567ffffffffffffffff8082111561038c57600080fd5b61039888838901610208565b909650945060208701359150808211156103b157600080fd5b506103be87828801610208565b9598949750955050505056fea2646970667358221220792dccaaf3120aecf3c06a58bf4e368e4bc40ceb2a47dc5d8a9ae6936fadc6d164736f6c63430008130033
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
POL | 55.95% | $0.999345 | 36.0184 | $35.99 | |
POL | 2.14% | <$0.000001 | 39,635,279.3007 | $1.38 | |
BLAST | 16.57% | $3,295.85 | 0.00323483 | $10.66 | |
AVAX | 8.78% | $36.2 | 0.1559 | $5.65 | |
ETH | 4.66% | $0.007472 | 401.1086 | $3 | |
ETH | 1.46% | $3 | 0.314 | $0.9419 | |
ETH | 1.14% | $0.002238 | 328.6018 | $0.7355 | |
ETH | 0.48% | $1 | 0.3076 | $0.3076 | |
ETH | 0.22% | <$0.000001 | 1,387,000 | $0.141 | |
BASE | 1.81% | $0.000043 | 27,341.4836 | $1.16 | |
BASE | 1.04% | $0.002689 | 250 | $0.6722 | |
BASE | 0.98% | $0.031285 | 20.1738 | $0.6311 | |
BASE | 0.42% | $0.00042 | 646.226 | $0.2711 | |
BASE | 0.37% | $0.000396 | 608.1194 | $0.2407 | |
BASE | 0.16% | $0.000005 | 19,067.5 | $0.1039 | |
BASE | <0.01% | $3,296.38 | 0.00000000000002 | <$0.000001 | |
ARB | 1.65% | $1 | 1.0616 | $1.06 | |
ZKSYNC | 1.63% | $3,296.3 | 0.00031885 | $1.05 | |
OP | 0.51% | $0.999823 | 0.33 | $0.3299 |
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.