Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00Latest 25 from a total of 36 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Transfer | 20893359 | 426 days ago | IN | 0.01005425 ETH | 0.00060847 | ||||
| Transfer | 20885988 | 427 days ago | IN | 0.0144408 ETH | 0.00048457 | ||||
| Transfer | 20879673 | 428 days ago | IN | 0.03674251 ETH | 0.00115068 | ||||
| Transfer | 20879588 | 428 days ago | IN | 0.03724804 ETH | 0.00149889 | ||||
| Transfer | 20879032 | 428 days ago | IN | 0.03618769 ETH | 0.00144506 | ||||
| Transfer | 20877055 | 428 days ago | IN | 0.06353444 ETH | 0.00031257 | ||||
| Transfer | 20865918 | 430 days ago | IN | 0.01787888 ETH | 0.00053916 | ||||
| Transfer | 20851507 | 432 days ago | IN | 0.00559958 ETH | 0.00023994 | ||||
| Transfer | 20849678 | 432 days ago | IN | 0.03115636 ETH | 0.00030052 | ||||
| Transfer | 20847196 | 432 days ago | IN | 0.06744867 ETH | 0.00029571 | ||||
| Transfer | 20847097 | 432 days ago | IN | 0.06767245 ETH | 0.00028884 | ||||
| Transfer | 20846989 | 432 days ago | IN | 0.0502995 ETH | 0.00029907 | ||||
| Transfer | 20846629 | 432 days ago | IN | 0.03215706 ETH | 0.0002921 | ||||
| Transfer | 20839627 | 433 days ago | IN | 0.0346835 ETH | 0.00042595 | ||||
| Transfer | 20587548 | 468 days ago | IN | 0.01846053 ETH | 0.00003234 | ||||
| Transfer | 20585397 | 469 days ago | IN | 0.02021427 ETH | 0.00007222 | ||||
| Transfer | 20582348 | 469 days ago | IN | 0.01353997 ETH | 0.00003634 | ||||
| Transfer | 20574454 | 470 days ago | IN | 0.12434297 ETH | 0.00003882 | ||||
| Transfer | 20574008 | 470 days ago | IN | 0.07069962 ETH | 0.00003199 | ||||
| Transfer | 20572663 | 470 days ago | IN | 0.03539177 ETH | 0.00003808 | ||||
| Transfer | 20570764 | 471 days ago | IN | 0.03525562 ETH | 0.00009532 | ||||
| Transfer | 20568239 | 471 days ago | IN | 0.03424402 ETH | 0.00005163 | ||||
| Transfer | 20565305 | 471 days ago | IN | 0.06986734 ETH | 0.00004902 | ||||
| Transfer | 20564986 | 472 days ago | IN | 0.02955472 ETH | 0.00006391 | ||||
| Transfer | 20554988 | 473 days ago | IN | 0.03425097 ETH | 0.00012891 |
Latest 25 internal transactions (View All)
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
||
|---|---|---|---|---|---|---|---|
| Transfer | 20992977 | 412 days ago | 0.00974739 ETH | ||||
| Transfer | 20992977 | 412 days ago | 0.00974739 ETH | ||||
| Transfer | 20987543 | 413 days ago | 0.0067427 ETH | ||||
| Transfer | 20987543 | 413 days ago | 0.0067427 ETH | ||||
| Transfer | 20986389 | 413 days ago | 0.0084072 ETH | ||||
| Transfer | 20986389 | 413 days ago | 0.0084072 ETH | ||||
| Transfer | 20985734 | 413 days ago | 0.0066653 ETH | ||||
| Transfer | 20985734 | 413 days ago | 0.0066653 ETH | ||||
| Transfer | 20985549 | 413 days ago | 0.00656663 ETH | ||||
| Transfer | 20985549 | 413 days ago | 0.00656663 ETH | ||||
| Transfer | 20979285 | 414 days ago | 0.00589313 ETH | ||||
| Transfer | 20979285 | 414 days ago | 0.00589313 ETH | ||||
| Transfer | 20958810 | 417 days ago | 0.00968629 ETH | ||||
| Transfer | 20958810 | 417 days ago | 0.00968629 ETH | ||||
| Transfer | 20958271 | 417 days ago | 0.03846198 ETH | ||||
| Transfer | 20958271 | 417 days ago | 0.03846198 ETH | ||||
| Transfer | 20957757 | 417 days ago | 0.11617585 ETH | ||||
| Transfer | 20957757 | 417 days ago | 0.11617585 ETH | ||||
| Transfer | 20957620 | 417 days ago | 0.05405074 ETH | ||||
| Transfer | 20957620 | 417 days ago | 0.05405074 ETH | ||||
| Transfer | 20957413 | 417 days ago | 0.03839926 ETH | ||||
| Transfer | 20957413 | 417 days ago | 0.03839926 ETH | ||||
| Transfer | 20955520 | 417 days ago | 0.03822644 ETH | ||||
| Transfer | 20955520 | 417 days ago | 0.03822644 ETH | ||||
| Transfer | 20954590 | 417 days ago | 0.02840175 ETH |
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Minimal Proxy Contract for 0x5397d0869aba0d55e96d5716d383f6e1d8695ed7
Similar Match Source Code This contract matches the deployed Bytecode of the Source Code for Contract 0x7E761780...B53f4Ee89 The constructor portion of the code might be different and could alter the actual behaviour of the contract
Contract Name:
Forwarder
Compiler Version
v0.8.10+commit.fc410830
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
1234567891011121314151617181920212223242526// SPDX-License-Identifier: Apache-2.0pragma solidity 0.8.10;import '@openzeppelin/contracts/token/ERC1155/IERC1155.sol';import '@openzeppelin/contracts/token/ERC721/IERC721.sol';import '@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol';import '@openzeppelin/contracts/token/ERC1155/utils/ERC1155Receiver.sol';import './ERC20Interface.sol';import './TransferHelper.sol';import './IForwarder.sol';/*** Contract that will forward any incoming Ether to the creator of the contract**/contract Forwarder is IERC721Receiver, ERC1155Receiver, IForwarder {// Address to which any funds sent to this contract will be forwardedaddress public parentAddress;bool public autoFlush721 = true;bool public autoFlush1155 = true;event ForwarderDeposited(address from, uint256 value, bytes data);/*** Initialize the contract, and sets the destination address to that of the creator*/function init(
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts v4.4.1 (token/ERC1155/IERC1155.sol)pragma solidity ^0.8.0;import "../../utils/introspection/IERC165.sol";/*** @dev Required interface of an ERC1155 compliant contract, as defined in the* https://eips.ethereum.org/EIPS/eip-1155[EIP].** _Available since v3.1._*/interface IERC1155 is IERC165 {/*** @dev Emitted when `value` tokens of token type `id` are transferred from `from` to `to` by `operator`.*/event TransferSingle(address indexed operator, address indexed from, address indexed to, uint256 id, uint256 value);/*** @dev Equivalent to multiple {TransferSingle} events, where `operator`, `from` and `to` are the same for all* transfers.*/event TransferBatch(address indexed operator,address indexed from,
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts v4.4.1 (token/ERC721/IERC721.sol)pragma solidity ^0.8.0;import "../../utils/introspection/IERC165.sol";/*** @dev Required interface of an ERC721 compliant contract.*/interface IERC721 is IERC165 {/*** @dev Emitted when `tokenId` token is transferred from `from` to `to`.*/event Transfer(address indexed from, address indexed to, uint256 indexed tokenId);/*** @dev Emitted when `owner` enables `approved` to manage the `tokenId` token.*/event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId);/*** @dev Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets.*/event ApprovalForAll(address indexed owner, address indexed operator, bool approved);
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts v4.4.1 (token/ERC721/IERC721Receiver.sol)pragma solidity ^0.8.0;/*** @title ERC721 token receiver interface* @dev Interface for any contract that wants to support safeTransfers* from ERC721 asset contracts.*/interface IERC721Receiver {/*** @dev Whenever an {IERC721} `tokenId` token is transferred to this contract via {IERC721-safeTransferFrom}* by `operator` from `from`, this function is called.** It must return its Solidity selector to confirm the token transfer.* If any other value is returned or the interface is not implemented by the recipient, the transfer will be reverted.** The selector can be obtained in Solidity with `IERC721.onERC721Received.selector`.*/function onERC721Received(address operator,address from,uint256 tokenId,bytes calldata data) external returns (bytes4);
12345678910111213141516171819// SPDX-License-Identifier: MIT// OpenZeppelin Contracts v4.4.1 (token/ERC1155/utils/ERC1155Receiver.sol)pragma solidity ^0.8.0;import "../IERC1155Receiver.sol";import "../../../utils/introspection/ERC165.sol";/*** @dev _Available since v3.1._*/abstract contract ERC1155Receiver is ERC165, IERC1155Receiver {/*** @dev See {IERC165-supportsInterface}.*/function supportsInterface(bytes4 interfaceId) public view virtual override(ERC165, IERC165) returns (bool) {return interfaceId == type(IERC1155Receiver).interfaceId || super.supportsInterface(interfaceId);}}
123456789101112131415161718192021// SPDX-License-Identifier: UNLICENSEDpragma solidity 0.8.10;/*** Contract that exposes the needed erc20 token functions*/abstract contract ERC20Interface {// Send _value amount of tokens to address _tofunction transfer(address _to, uint256 _value)publicvirtualreturns (bool success);// Get the account balance of another account with address _ownerfunction balanceOf(address _owner)publicvirtualviewreturns (uint256 balance);}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: GPL-3.0-or-later// source: https://github.com/Uniswap/solidity-lib/blob/master/contracts/libraries/TransferHelper.solpragma solidity 0.8.10;import '@openzeppelin/contracts/utils/Address.sol';// helper methods for interacting with ERC20 tokens and sending ETH that do not consistently return true/falselibrary TransferHelper {function safeTransfer(address token,address to,uint256 value) internal {// bytes4(keccak256(bytes('transfer(address,uint256)')));(bool success, bytes memory data) = token.call(abi.encodeWithSelector(0xa9059cbb, to, value));require(success && (data.length == 0 || abi.decode(data, (bool))),'TransferHelper::safeTransfer: transfer failed');}function safeTransferFrom(address token,address from,
1234567891011121314151617181920212223242526pragma solidity ^0.8.0;import '@openzeppelin/contracts/utils/introspection/IERC165.sol';interface IForwarder is IERC165 {/*** Sets the autoflush721 parameter.** @param autoFlush whether to autoflush erc721 tokens*/function setAutoFlush721(bool autoFlush) external;/*** Sets the autoflush1155 parameter.** @param autoFlush whether to autoflush erc1155 tokens*/function setAutoFlush1155(bool autoFlush) external;/*** Execute a token transfer of the full balance from the forwarder token to the parent address** @param tokenContractAddress the address of the erc20 token contract*/function flushTokens(address tokenContractAddress) external;
12345678910111213141516171819202122232425// SPDX-License-Identifier: MIT// OpenZeppelin Contracts v4.4.1 (utils/introspection/IERC165.sol)pragma solidity ^0.8.0;/*** @dev Interface of the ERC165 standard, as defined in the* https://eips.ethereum.org/EIPS/eip-165[EIP].** Implementers can declare support of contract interfaces, which can then be* queried by others ({ERC165Checker}).** For an implementation, see {ERC165}.*/interface IERC165 {/*** @dev Returns true if this contract implements the interface defined by* `interfaceId`. See the corresponding* https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]* to learn more about how these ids are created.** This function call must use less than 30 000 gas.*/function supportsInterface(bytes4 interfaceId) external view returns (bool);}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts v4.4.1 (token/ERC1155/IERC1155Receiver.sol)pragma solidity ^0.8.0;import "../../utils/introspection/IERC165.sol";/*** @dev _Available since v3.1._*/interface IERC1155Receiver is IERC165 {/**@dev Handles the receipt of a single ERC1155 token type. This function iscalled at the end of a `safeTransferFrom` after the balance has been updated.To accept the transfer, this must return`bytes4(keccak256("onERC1155Received(address,address,uint256,uint256,bytes)"))`(i.e. 0xf23a6e61, or its own function selector).@param operator The address which initiated the transfer (i.e. msg.sender)@param from The address which previously owned the token@param id The ID of the token being transferred@param value The amount of tokens being transferred@param data Additional data with no specified format@return `bytes4(keccak256("onERC1155Received(address,address,uint256,uint256,bytes)"))` if transfer is allowed*/function onERC1155Received(address operator,
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts v4.4.1 (utils/introspection/ERC165.sol)pragma solidity ^0.8.0;import "./IERC165.sol";/*** @dev Implementation of the {IERC165} interface.** Contracts that want to implement ERC165 should inherit from this contract and override {supportsInterface} to check* for the additional interface id that will be supported. For example:** ```solidity* function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {* return interfaceId == type(MyInterface).interfaceId || super.supportsInterface(interfaceId);* }* ```** Alternatively, {ERC165Storage} provides an easier to use but more expensive implementation.*/abstract contract ERC165 is IERC165 {/*** @dev See {IERC165-supportsInterface}.*/function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts v4.4.1 (utils/Address.sol)pragma solidity ^0.8.0;/*** @dev Collection of functions related to the address type*/library Address {/*** @dev Returns true if `account` is a contract.** [IMPORTANT]* ====* It is unsafe to assume that an address for which this function returns* false is an externally-owned account (EOA) and not a contract.** Among others, `isContract` will return false for the following* types of addresses:** - an externally-owned account* - a contract in construction* - an address where a contract will be created* - an address where a contract lived, but was destroyed* ====*/
12345678910111213141516171819{"optimizer": {"enabled": false,"runs": 200},"outputSelection": {"*": {"*": ["evm.bytecode","evm.deployedBytecode","devdoc","userdoc","metadata","abi"]}},"libraries": {}}
Contract ABI
API[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"},{"indexed":false,"internalType":"bytes","name":"data","type":"bytes"}],"name":"ForwarderDeposited","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"autoFlush1155","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"autoFlush721","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"tokenContractAddress","type":"address"},{"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"}],"name":"batchFlushERC1155Tokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"callFromParent","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"flush","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenContractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"flushERC1155Tokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenContractAddress","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"flushERC721Token","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenContractAddress","type":"address"}],"name":"flushTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_parentAddress","type":"address"},{"internalType":"bool","name":"_autoFlush721","type":"bool"},{"internalType":"bool","name":"_autoFlush1155","type":"bool"}],"name":"init","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_operator","type":"address"},{"internalType":"address","name":"_from","type":"address"},{"internalType":"uint256[]","name":"ids","type":"uint256[]"},{"internalType":"uint256[]","name":"values","type":"uint256[]"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"onERC1155BatchReceived","outputs":[{"internalType":"bytes4","name":"","type":"bytes4"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_operator","type":"address"},{"internalType":"address","name":"_from","type":"address"},{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"onERC1155Received","outputs":[{"internalType":"bytes4","name":"","type":"bytes4"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_operator","type":"address"},{"internalType":"address","name":"_from","type":"address"},{"internalType":"uint256","name":"_tokenId","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"onERC721Received","outputs":[{"internalType":"bytes4","name":"","type":"bytes4"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"parentAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"autoFlush","type":"bool"}],"name":"setAutoFlush1155","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"autoFlush","type":"bool"}],"name":"setAutoFlush721","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]Loading...
Loading
Loading...
Loading
Multichain Portfolio | 34 Chains
Showing 0 tokens with a value of $0
Loading...
Loading
Loading...
Loading
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.