Overview
ETH Balance
0 ETH
ETH Value
$0.00More Info
Private Name Tags
ContractCreator
Multichain Info
No addresses found
Loading...
Loading
Contract Name:
Recover
Compiler Version
v0.8.15+commit.e14f2714
Optimization Enabled:
Yes with 200 runs
Other Settings:
london EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
pragma solidity 0.8.15; interface IERC20 { function balanceOf(address) external view returns (uint256); function transfer(address, uint256) external returns (uint256); } contract Recover { address public constant RECIPIENT = 0x4D2F75F1cF76C8689b4FDdCF4744A22943c6048C; function recover(address token, uint256 amount) external { require(msg.sender == RECIPIENT); if (token == address(0)) { (bool success,) = RECIPIENT.call{value: amount}(""); require(success); } else { IERC20(token).transfer(RECIPIENT, amount); } } }
{ "remappings": [ "@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/", "@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/", "@rari-capital/solmate/=lib/solmate/", "@cwia/=lib/clones-with-immutable-args/src/", "forge-std/=lib/forge-std/src/", "ds-test/=lib/forge-std/lib/ds-test/src/", "safe-contracts/=lib/safe-contracts/contracts/", "clones-with-immutable-args/=lib/clones-with-immutable-args/src/", "erc4626-tests/=lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/", "openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/", "openzeppelin-contracts/=lib/openzeppelin-contracts/", "openzeppelin/=lib/openzeppelin-contracts-upgradeable/contracts/", "solmate/=lib/solmate/src/" ], "optimizer": { "enabled": true, "runs": 200 }, "metadata": { "useLiteralContent": false, "bytecodeHash": "none" }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "evmVersion": "london", "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"name":"RECIPIENT","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"recover","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b50610206806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80630d9019e11461003b5780635705ae4314610072575b600080fd5b610056734d2f75f1cf76c8689b4fddcf4744a22943c6048c81565b6040516001600160a01b03909116815260200160405180910390f35b6100856100803660046101a8565b610087565b005b33734d2f75f1cf76c8689b4fddcf4744a22943c6048c146100a757600080fd5b6001600160a01b03821661012357604051600090734d2f75f1cf76c8689b4fddcf4744a22943c6048c9083908381818185875af1925050503d806000811461010b576040519150601f19603f3d011682016040523d82523d6000602084013e610110565b606091505b505090508061011e57600080fd5b505050565b60405163a9059cbb60e01b8152734d2f75f1cf76c8689b4fddcf4744a22943c6048c6004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015610184573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061011e91906101e0565b600080604083850312156101bb57600080fd5b82356001600160a01b03811681146101d257600080fd5b946020939093013593505050565b6000602082840312156101f257600080fd5b505191905056fea164736f6c634300080f000a
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100365760003560e01c80630d9019e11461003b5780635705ae4314610072575b600080fd5b610056734d2f75f1cf76c8689b4fddcf4744a22943c6048c81565b6040516001600160a01b03909116815260200160405180910390f35b6100856100803660046101a8565b610087565b005b33734d2f75f1cf76c8689b4fddcf4744a22943c6048c146100a757600080fd5b6001600160a01b03821661012357604051600090734d2f75f1cf76c8689b4fddcf4744a22943c6048c9083908381818185875af1925050503d806000811461010b576040519150601f19603f3d011682016040523d82523d6000602084013e610110565b606091505b505090508061011e57600080fd5b505050565b60405163a9059cbb60e01b8152734d2f75f1cf76c8689b4fddcf4744a22943c6048c6004820152602481018290526001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015610184573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061011e91906101e0565b600080604083850312156101bb57600080fd5b82356001600160a01b03811681146101d257600080fd5b946020939093013593505050565b6000602082840312156101f257600080fd5b505191905056fea164736f6c634300080f000a
Loading...
Loading
Loading...
Loading
Loading...
Loading
Loading...
Loading
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.