Feature Tip: Add private address tag to any address under My Name Tag !
Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
SafeBurnETH
Compiler Version
v0.8.30+commit.73712a01
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.30;
import "@openzeppelin/contracts/token/ERC20/IERC20.sol";
import "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
contract SafeBurnETH is Ownable {
struct Deposit { address tokenAddress; address sender; uint256 amount; uint256 timestamp; bool processed; }
uint256 public constant GRACE_PERIOD = 30 days;
uint256 public constant BOUNTY_PERCENTAGE = 5;
address public constant BURN_ADDRESS = 0x000000000000000000000000000000000000dEaD;
mapping(address => bool) public isProtected;
mapping(uint256 => Deposit) public deposits;
uint256 public depositCount;
event TokenReceived(uint256 indexed id, address indexed token, string symbol, address indexed sender, uint256 amount);
event TokenRecovered(uint256 indexed id, address token, address to, uint256 amountReturned, uint256 feeTaken);
event TokenBurned(uint256 indexed id, address token, address cleaner, uint256 bountyPaid);
constructor() Ownable(msg.sender) {
// --- WHITELIST ETHEREUM MAINNET (CHECKSUMS VALIDADOS) ---
isProtected[0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48] = true; // USDC
isProtected[0xdAC17F958D2ee523a2206206994597C13D831ec7] = true; // USDT
isProtected[0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2] = true; // WETH
isProtected[0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599] = true; // WBTC
isProtected[0x6B175474E89094C44Da98b954EedeAC495271d0F] = true; // DAI
isProtected[0x514910771AF9Ca656af840dff83E8264EcF986CA] = true; // LINK
isProtected[0x95aD61b0a150d79219dCF64E1E6Cc01f0B64C4cE] = true; // SHIB
}
function burnWithSafetyNet(address _t, uint256 _a) external {
require(_a > 0, "Error: 0");
IERC20(_t).transferFrom(msg.sender, address(this), _a);
string memory s = "UNKNOWN";
try IERC20Metadata(_t).symbol() returns (string memory _s) { s = _s; } catch {}
deposits[depositCount] = Deposit(_t, msg.sender, _a, block.timestamp, false);
emit TokenReceived(depositCount++, _t, s, msg.sender, _a);
}
function userSelfRecover(uint256 _id) external {
Deposit storage d = deposits[_id];
require(!d.processed && msg.sender == d.sender, "Error: Auth");
d.processed = true;
uint256 fee = (d.amount * 20) / 100;
IERC20(d.tokenAddress).transfer(d.sender, d.amount - fee);
emit TokenRecovered(_id, d.tokenAddress, d.sender, d.amount - fee, fee);
}
function batchBurn(uint256[] calldata _ids) external {
uint256 bCount = 0;
for (uint256 i = 0; i < _ids.length; i++) {
Deposit storage d = deposits[_ids[i]];
if (!d.processed && block.timestamp >= d.timestamp + GRACE_PERIOD && !isProtected[d.tokenAddress]) {
d.processed = true;
IERC20(d.tokenAddress).transfer(BURN_ADDRESS, d.amount);
bCount++;
emit TokenBurned(_ids[i], d.tokenAddress, msg.sender, 0);
}
}
if (bCount > 0 && address(this).balance > 0) {
payable(msg.sender).transfer((address(this).balance * BOUNTY_PERCENTAGE) / 100);
}
}
function setTokenProtection(address _t, bool _s) external onlyOwner { isProtected[_t] = _s; }
function withdrawTreasury(address _t) external onlyOwner {
IERC20(_t).transfer(owner(), IERC20(_t).balanceOf(address(this)));
}
function withdrawNative() external onlyOwner { payable(owner()).transfer(address(this).balance); }
receive() external payable {}
}// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v5.0.0) (access/Ownable.sol)
pragma solidity ^0.8.20;
import {Context} from "../utils/Context.sol";
/**
* @dev Contract module which provides a basic access control mechanism, where
* there is an account (an owner) that can be granted exclusive access to
* specific functions.
*
* The initial owner is set to the address provided by the deployer. This can
* later be changed with {transferOwnership}.
*
* This module is used through inheritance. It will make available the modifier
* `onlyOwner`, which can be applied to your functions to restrict their use to
* the owner.
*/
abstract contract Ownable is Context {
address private _owner;
/**
* @dev The caller account is not authorized to perform an operation.
*/
error OwnableUnauthorizedAccount(address account);
/**
* @dev The owner is not a valid owner account. (eg. `address(0)`)
*/
error OwnableInvalidOwner(address owner);
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
/**
* @dev Initializes the contract setting the address provided by the deployer as the initial owner.
*/
constructor(address initialOwner) {
if (initialOwner == address(0)) {
revert OwnableInvalidOwner(address(0));
}
_transferOwnership(initialOwner);
}
/**
* @dev Throws if called by any account other than the owner.
*/
modifier onlyOwner() {
_checkOwner();
_;
}
/**
* @dev Returns the address of the current owner.
*/
function owner() public view virtual returns (address) {
return _owner;
}
/**
* @dev Throws if the sender is not the owner.
*/
function _checkOwner() internal view virtual {
if (owner() != _msgSender()) {
revert OwnableUnauthorizedAccount(_msgSender());
}
}
/**
* @dev Leaves the contract without owner. It will not be possible to call
* `onlyOwner` functions. Can only be called by the current owner.
*
* NOTE: Renouncing ownership will leave the contract without an owner,
* thereby disabling any functionality that is only available to the owner.
*/
function renounceOwnership() public virtual onlyOwner {
_transferOwnership(address(0));
}
/**
* @dev Transfers ownership of the contract to a new account (`newOwner`).
* Can only be called by the current owner.
*/
function transferOwnership(address newOwner) public virtual onlyOwner {
if (newOwner == address(0)) {
revert OwnableInvalidOwner(address(0));
}
_transferOwnership(newOwner);
}
/**
* @dev Transfers ownership of the contract to a new account (`newOwner`).
* Internal function without access restriction.
*/
function _transferOwnership(address newOwner) internal virtual {
address oldOwner = _owner;
_owner = newOwner;
emit OwnershipTransferred(oldOwner, newOwner);
}
}// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v5.4.0) (token/ERC20/extensions/IERC20Metadata.sol)
pragma solidity >=0.6.2;
import {IERC20} from "../IERC20.sol";
/**
* @dev Interface for the optional metadata functions from the ERC-20 standard.
*/
interface IERC20Metadata is IERC20 {
/**
* @dev Returns the name of the token.
*/
function name() external view returns (string memory);
/**
* @dev Returns the symbol of the token.
*/
function symbol() external view returns (string memory);
/**
* @dev Returns the decimals places of the token.
*/
function decimals() external view returns (uint8);
}// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v5.4.0) (token/ERC20/IERC20.sol)
pragma solidity >=0.4.16;
/**
* @dev Interface of the ERC-20 standard as defined in the ERC.
*/
interface IERC20 {
/**
* @dev Emitted when `value` tokens are moved from one account (`from`) to
* another (`to`).
*
* Note that `value` may be zero.
*/
event Transfer(address indexed from, address indexed to, uint256 value);
/**
* @dev Emitted when the allowance of a `spender` for an `owner` is set by
* a call to {approve}. `value` is the new allowance.
*/
event Approval(address indexed owner, address indexed spender, uint256 value);
/**
* @dev Returns the value of tokens in existence.
*/
function totalSupply() external view returns (uint256);
/**
* @dev Returns the value of tokens owned by `account`.
*/
function balanceOf(address account) external view returns (uint256);
/**
* @dev Moves a `value` amount of tokens from the caller's account to `to`.
*
* Returns a boolean value indicating whether the operation succeeded.
*
* Emits a {Transfer} event.
*/
function transfer(address to, uint256 value) external returns (bool);
/**
* @dev Returns the remaining number of tokens that `spender` will be
* allowed to spend on behalf of `owner` through {transferFrom}. This is
* zero by default.
*
* This value changes when {approve} or {transferFrom} are called.
*/
function allowance(address owner, address spender) external view returns (uint256);
/**
* @dev Sets a `value` amount of tokens as the allowance of `spender` over the
* caller's tokens.
*
* Returns a boolean value indicating whether the operation succeeded.
*
* IMPORTANT: Beware that changing an allowance with this method brings the risk
* that someone may use both the old and the new allowance by unfortunate
* transaction ordering. One possible solution to mitigate this race
* condition is to first reduce the spender's allowance to 0 and set the
* desired value afterwards:
* https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
*
* Emits an {Approval} event.
*/
function approve(address spender, uint256 value) external returns (bool);
/**
* @dev Moves a `value` amount of tokens from `from` to `to` using the
* allowance mechanism. `value` is then deducted from the caller's
* allowance.
*
* Returns a boolean value indicating whether the operation succeeded.
*
* Emits a {Transfer} event.
*/
function transferFrom(address from, address to, uint256 value) external returns (bool);
}// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v5.0.1) (utils/Context.sol)
pragma solidity ^0.8.20;
/**
* @dev Provides information about the current execution context, including the
* sender of the transaction and its data. While these are generally available
* via msg.sender and msg.data, they should not be accessed in such a direct
* manner, since when dealing with meta-transactions the account sending and
* paying for execution may not be the actual sender (as far as an application
* is concerned).
*
* This contract is only required for intermediate, library-like contracts.
*/
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
function _msgData() internal view virtual returns (bytes calldata) {
return msg.data;
}
function _contextSuffixLength() internal view virtual returns (uint256) {
return 0;
}
}{
"optimizer": {
"enabled": false,
"runs": 200
},
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
},
"remappings": []
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"OwnableInvalidOwner","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"OwnableUnauthorizedAccount","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"address","name":"token","type":"address"},{"indexed":false,"internalType":"address","name":"cleaner","type":"address"},{"indexed":false,"internalType":"uint256","name":"bountyPaid","type":"uint256"}],"name":"TokenBurned","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":false,"internalType":"string","name":"symbol","type":"string"},{"indexed":true,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TokenReceived","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"},{"indexed":false,"internalType":"address","name":"token","type":"address"},{"indexed":false,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountReturned","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"feeTaken","type":"uint256"}],"name":"TokenRecovered","type":"event"},{"inputs":[],"name":"BOUNTY_PERCENTAGE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"BURN_ADDRESS","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"GRACE_PERIOD","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"_ids","type":"uint256[]"}],"name":"batchBurn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_t","type":"address"},{"internalType":"uint256","name":"_a","type":"uint256"}],"name":"burnWithSafetyNet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"depositCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"deposits","outputs":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"address","name":"sender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"bool","name":"processed","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isProtected","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_t","type":"address"},{"internalType":"bool","name":"_s","type":"bool"}],"name":"setTokenProtection","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_id","type":"uint256"}],"name":"userSelfRecover","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawNative","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_t","type":"address"}],"name":"withdrawTreasury","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
608060405234801561000f575f5ffd5b50335f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610081575f6040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401610078919061046e565b60405180910390fd5b6100908161036e60201b60201c565b506001805f73a0b86991c6218b36c1d19d4a2e9eb0ce3606eb4873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001805f73dac17f958d2ee523a2206206994597c13d831ec773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001805f73c02aaa39b223fe8d0a0e5c4f27ead9083c756cc273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001805f732260fac5e5542a773aa44fbcfedf7c193bc2c59973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001805f736b175474e89094c44da98b954eedeac495271d0f73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001805f73514910771af9ca656af840dff83e8264ecf986ca73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001805f7395ad61b0a150d79219dcf64e1e6cc01f0b64c4ce73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550610487565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6104588261042f565b9050919050565b6104688161044e565b82525050565b5f6020820190506104815f83018461045f565b92915050565b61195f806104945f395ff3fe6080604052600436106100eb575f3560e01c8063b02c43d011610089578063dd1d871511610058578063dd1d8715146102be578063f2fde38b146102e6578063f86c9e9a1461030e578063fccc281314610336576100f2565b8063b02c43d0146101f0578063c1a287e214610230578063ce35de951461025a578063dc8e92ea14610296576100f2565b8063694fc425116100c5578063694fc42514610160578063715018a61461018857806386d2d4e51461019e5780638da5cb5b146101c6576100f2565b806320caf786146100f65780632dfdf0b51461012057806350431ce41461014a576100f2565b366100f257005b5f5ffd5b348015610101575f5ffd5b5061010a610360565b604051610117919061101f565b60405180910390f35b34801561012b575f5ffd5b50610134610365565b604051610141919061101f565b60405180910390f35b348015610155575f5ffd5b5061015e61036b565b005b34801561016b575f5ffd5b50610186600480360381019061018191906110cd565b6103c0565b005b348015610193575f5ffd5b5061019c6106d8565b005b3480156101a9575f5ffd5b506101c460048036038101906101bf919061110b565b6106eb565b005b3480156101d1575f5ffd5b506101da61094d565b6040516101e79190611145565b60405180910390f35b3480156101fb575f5ffd5b506102166004803603810190610211919061110b565b610974565b604051610227959493929190611178565b60405180910390f35b34801561023b575f5ffd5b506102446109f0565b604051610251919061101f565b60405180910390f35b348015610265575f5ffd5b50610280600480360381019061027b91906111c9565b6109f7565b60405161028d91906111f4565b60405180910390f35b3480156102a1575f5ffd5b506102bc60048036038101906102b7919061126e565b610a14565b005b3480156102c9575f5ffd5b506102e460048036038101906102df91906112e3565b610cc9565b005b3480156102f1575f5ffd5b5061030c600480360381019061030791906111c9565b610d29565b005b348015610319575f5ffd5b50610334600480360381019061032f91906111c9565b610dad565b005b348015610341575f5ffd5b5061034a610eb2565b6040516103579190611145565b60405180910390f35b600581565b60035481565b610373610eb8565b61037b61094d565b73ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f193505050501580156103bd573d5f5f3e3d5ffd5b50565b5f8111610402576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103f99061137b565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166323b872dd3330846040518463ffffffff1660e01b815260040161043f93929190611399565b6020604051808303815f875af115801561045b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061047f91906113e2565b505f6040518060400160405280600781526020017f554e4b4e4f574e0000000000000000000000000000000000000000000000000081525090508273ffffffffffffffffffffffffffffffffffffffff166395d89b416040518163ffffffff1660e01b81526004015f60405180830381865afa92505050801561052457506040513d5f823e3d601f19601f820116820180604052508101906105219190611545565b60015b1561052e57809150505b6040518060a001604052808473ffffffffffffffffffffffffffffffffffffffff1681526020013373ffffffffffffffffffffffffffffffffffffffff1681526020018381526020014281526020015f151581525060025f60035481526020019081526020015f205f820151815f015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506020820151816001015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160020155606082015181600301556080820151816004015f6101000a81548160ff0219169083151502179055509050503373ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1660035f815480929190610696906115b9565b919050557fb2049e9a902548e47bf1b14d2f296c95412714053c6289994d877102df2d5ed384866040516106cb929190611642565b60405180910390a4505050565b6106e0610eb8565b6106e95f610f3f565b565b5f60025f8381526020019081526020015f209050806004015f9054906101000a900460ff1615801561076b5750806001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b6107aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107a1906116ba565b60405180910390fd5b6001816004015f6101000a81548160ff0219169083151502179055505f6064601483600201546107da91906116d8565b6107e49190611746565b9050815f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb836001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff168385600201546108589190611776565b6040518363ffffffff1660e01b81526004016108759291906117a9565b6020604051808303815f875af1158015610891573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108b591906113e2565b50827f4fbb4d194c6fc0e394a32fc10d4246cacdb787ad77b2d40f3ee42f69bf628fbb835f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684866002015461092f9190611776565b8560405161094094939291906117d0565b60405180910390a2505050565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6002602052805f5260405f205f91509050805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690806001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690806002015490806003015490806004015f9054906101000a900460ff16905085565b62278d0081565b6001602052805f5260405f205f915054906101000a900460ff1681565b5f5f90505f5f90505b83839050811015610c53575f60025f868685818110610a3f57610a3e611813565b5b9050602002013581526020019081526020015f209050806004015f9054906101000a900460ff16158015610a85575062278d008160030154610a819190611840565b4210155b8015610afa575060015f825f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15610c45576001816004015f6101000a81548160ff021916908315150217905550805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb61dead83600201546040518363ffffffff1660e01b8152600401610b7e9291906117a9565b6020604051808303815f875af1158015610b9a573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bbe91906113e2565b508280610bca906115b9565b935050848483818110610be057610bdf611813565b5b905060200201357f2be89884a10de8d49ae5f55dcad735217b42349d805dc82fc98793774d94ee0a825f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16335f604051610c3c939291906118b5565b60405180910390a25b508080600101915050610a1d565b505f81118015610c6257505f47115b15610cc4573373ffffffffffffffffffffffffffffffffffffffff166108fc6064600547610c9091906116d8565b610c9a9190611746565b90811502906040515f60405180830381858888f19350505050158015610cc2573d5f5f3e3d5ffd5b505b505050565b610cd1610eb8565b8060015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b610d31610eb8565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610da1575f6040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401610d989190611145565b60405180910390fd5b610daa81610f3f565b50565b610db5610eb8565b8073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb610dd961094d565b8373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610e129190611145565b602060405180830381865afa158015610e2d573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e5191906118fe565b6040518363ffffffff1660e01b8152600401610e6e9291906117a9565b6020604051808303815f875af1158015610e8a573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610eae91906113e2565b5050565b61dead81565b610ec0611000565b73ffffffffffffffffffffffffffffffffffffffff16610ede61094d565b73ffffffffffffffffffffffffffffffffffffffff1614610f3d57610f01611000565b6040517f118cdaa7000000000000000000000000000000000000000000000000000000008152600401610f349190611145565b60405180910390fd5b565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f33905090565b5f819050919050565b61101981611007565b82525050565b5f6020820190506110325f830184611010565b92915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61107282611049565b9050919050565b61108281611068565b811461108c575f5ffd5b50565b5f8135905061109d81611079565b92915050565b6110ac81611007565b81146110b6575f5ffd5b50565b5f813590506110c7816110a3565b92915050565b5f5f604083850312156110e3576110e2611041565b5b5f6110f08582860161108f565b9250506020611101858286016110b9565b9150509250929050565b5f602082840312156111205761111f611041565b5b5f61112d848285016110b9565b91505092915050565b61113f81611068565b82525050565b5f6020820190506111585f830184611136565b92915050565b5f8115159050919050565b6111728161115e565b82525050565b5f60a08201905061118b5f830188611136565b6111986020830187611136565b6111a56040830186611010565b6111b26060830185611010565b6111bf6080830184611169565b9695505050505050565b5f602082840312156111de576111dd611041565b5b5f6111eb8482850161108f565b91505092915050565b5f6020820190506112075f830184611169565b92915050565b5f5ffd5b5f5ffd5b5f5ffd5b5f5f83601f84011261122e5761122d61120d565b5b8235905067ffffffffffffffff81111561124b5761124a611211565b5b60208301915083602082028301111561126757611266611215565b5b9250929050565b5f5f6020838503121561128457611283611041565b5b5f83013567ffffffffffffffff8111156112a1576112a0611045565b5b6112ad85828601611219565b92509250509250929050565b6112c28161115e565b81146112cc575f5ffd5b50565b5f813590506112dd816112b9565b92915050565b5f5f604083850312156112f9576112f8611041565b5b5f6113068582860161108f565b9250506020611317858286016112cf565b9150509250929050565b5f82825260208201905092915050565b7f4572726f723a20300000000000000000000000000000000000000000000000005f82015250565b5f611365600883611321565b915061137082611331565b602082019050919050565b5f6020820190508181035f83015261139281611359565b9050919050565b5f6060820190506113ac5f830186611136565b6113b96020830185611136565b6113c66040830184611010565b949350505050565b5f815190506113dc816112b9565b92915050565b5f602082840312156113f7576113f6611041565b5b5f611404848285016113ce565b91505092915050565b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61145782611411565b810181811067ffffffffffffffff8211171561147657611475611421565b5b80604052505050565b5f611488611038565b9050611494828261144e565b919050565b5f67ffffffffffffffff8211156114b3576114b2611421565b5b6114bc82611411565b9050602081019050919050565b8281835e5f83830152505050565b5f6114e96114e484611499565b61147f565b9050828152602081018484840111156115055761150461140d565b5b6115108482856114c9565b509392505050565b5f82601f83011261152c5761152b61120d565b5b815161153c8482602086016114d7565b91505092915050565b5f6020828403121561155a57611559611041565b5b5f82015167ffffffffffffffff81111561157757611576611045565b5b61158384828501611518565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6115c382611007565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036115f5576115f461158c565b5b600182019050919050565b5f81519050919050565b5f61161482611600565b61161e8185611321565b935061162e8185602086016114c9565b61163781611411565b840191505092915050565b5f6040820190508181035f83015261165a818561160a565b90506116696020830184611010565b9392505050565b7f4572726f723a20417574680000000000000000000000000000000000000000005f82015250565b5f6116a4600b83611321565b91506116af82611670565b602082019050919050565b5f6020820190508181035f8301526116d181611698565b9050919050565b5f6116e282611007565b91506116ed83611007565b92508282026116fb81611007565b915082820484148315176117125761171161158c565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61175082611007565b915061175b83611007565b92508261176b5761176a611719565b5b828204905092915050565b5f61178082611007565b915061178b83611007565b92508282039050818111156117a3576117a261158c565b5b92915050565b5f6040820190506117bc5f830185611136565b6117c96020830184611010565b9392505050565b5f6080820190506117e35f830187611136565b6117f06020830186611136565b6117fd6040830185611010565b61180a6060830184611010565b95945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f61184a82611007565b915061185583611007565b925082820190508082111561186d5761186c61158c565b5b92915050565b5f819050919050565b5f819050919050565b5f61189f61189a61189584611873565b61187c565b611007565b9050919050565b6118af81611885565b82525050565b5f6060820190506118c85f830186611136565b6118d56020830185611136565b6118e260408301846118a6565b949350505050565b5f815190506118f8816110a3565b92915050565b5f6020828403121561191357611912611041565b5b5f611920848285016118ea565b9150509291505056fea2646970667358221220445ea21a9883d519ec19b3a7e1e4d4cbf3aac9b5ab8d07bdee55b6910fe7a6db64736f6c634300081e0033
Deployed Bytecode
0x6080604052600436106100eb575f3560e01c8063b02c43d011610089578063dd1d871511610058578063dd1d8715146102be578063f2fde38b146102e6578063f86c9e9a1461030e578063fccc281314610336576100f2565b8063b02c43d0146101f0578063c1a287e214610230578063ce35de951461025a578063dc8e92ea14610296576100f2565b8063694fc425116100c5578063694fc42514610160578063715018a61461018857806386d2d4e51461019e5780638da5cb5b146101c6576100f2565b806320caf786146100f65780632dfdf0b51461012057806350431ce41461014a576100f2565b366100f257005b5f5ffd5b348015610101575f5ffd5b5061010a610360565b604051610117919061101f565b60405180910390f35b34801561012b575f5ffd5b50610134610365565b604051610141919061101f565b60405180910390f35b348015610155575f5ffd5b5061015e61036b565b005b34801561016b575f5ffd5b50610186600480360381019061018191906110cd565b6103c0565b005b348015610193575f5ffd5b5061019c6106d8565b005b3480156101a9575f5ffd5b506101c460048036038101906101bf919061110b565b6106eb565b005b3480156101d1575f5ffd5b506101da61094d565b6040516101e79190611145565b60405180910390f35b3480156101fb575f5ffd5b506102166004803603810190610211919061110b565b610974565b604051610227959493929190611178565b60405180910390f35b34801561023b575f5ffd5b506102446109f0565b604051610251919061101f565b60405180910390f35b348015610265575f5ffd5b50610280600480360381019061027b91906111c9565b6109f7565b60405161028d91906111f4565b60405180910390f35b3480156102a1575f5ffd5b506102bc60048036038101906102b7919061126e565b610a14565b005b3480156102c9575f5ffd5b506102e460048036038101906102df91906112e3565b610cc9565b005b3480156102f1575f5ffd5b5061030c600480360381019061030791906111c9565b610d29565b005b348015610319575f5ffd5b50610334600480360381019061032f91906111c9565b610dad565b005b348015610341575f5ffd5b5061034a610eb2565b6040516103579190611145565b60405180910390f35b600581565b60035481565b610373610eb8565b61037b61094d565b73ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f193505050501580156103bd573d5f5f3e3d5ffd5b50565b5f8111610402576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103f99061137b565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166323b872dd3330846040518463ffffffff1660e01b815260040161043f93929190611399565b6020604051808303815f875af115801561045b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061047f91906113e2565b505f6040518060400160405280600781526020017f554e4b4e4f574e0000000000000000000000000000000000000000000000000081525090508273ffffffffffffffffffffffffffffffffffffffff166395d89b416040518163ffffffff1660e01b81526004015f60405180830381865afa92505050801561052457506040513d5f823e3d601f19601f820116820180604052508101906105219190611545565b60015b1561052e57809150505b6040518060a001604052808473ffffffffffffffffffffffffffffffffffffffff1681526020013373ffffffffffffffffffffffffffffffffffffffff1681526020018381526020014281526020015f151581525060025f60035481526020019081526020015f205f820151815f015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506020820151816001015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160020155606082015181600301556080820151816004015f6101000a81548160ff0219169083151502179055509050503373ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1660035f815480929190610696906115b9565b919050557fb2049e9a902548e47bf1b14d2f296c95412714053c6289994d877102df2d5ed384866040516106cb929190611642565b60405180910390a4505050565b6106e0610eb8565b6106e95f610f3f565b565b5f60025f8381526020019081526020015f209050806004015f9054906101000a900460ff1615801561076b5750806001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b6107aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107a1906116ba565b60405180910390fd5b6001816004015f6101000a81548160ff0219169083151502179055505f6064601483600201546107da91906116d8565b6107e49190611746565b9050815f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb836001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff168385600201546108589190611776565b6040518363ffffffff1660e01b81526004016108759291906117a9565b6020604051808303815f875af1158015610891573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108b591906113e2565b50827f4fbb4d194c6fc0e394a32fc10d4246cacdb787ad77b2d40f3ee42f69bf628fbb835f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684866002015461092f9190611776565b8560405161094094939291906117d0565b60405180910390a2505050565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6002602052805f5260405f205f91509050805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690806001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690806002015490806003015490806004015f9054906101000a900460ff16905085565b62278d0081565b6001602052805f5260405f205f915054906101000a900460ff1681565b5f5f90505f5f90505b83839050811015610c53575f60025f868685818110610a3f57610a3e611813565b5b9050602002013581526020019081526020015f209050806004015f9054906101000a900460ff16158015610a85575062278d008160030154610a819190611840565b4210155b8015610afa575060015f825f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15610c45576001816004015f6101000a81548160ff021916908315150217905550805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb61dead83600201546040518363ffffffff1660e01b8152600401610b7e9291906117a9565b6020604051808303815f875af1158015610b9a573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bbe91906113e2565b508280610bca906115b9565b935050848483818110610be057610bdf611813565b5b905060200201357f2be89884a10de8d49ae5f55dcad735217b42349d805dc82fc98793774d94ee0a825f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16335f604051610c3c939291906118b5565b60405180910390a25b508080600101915050610a1d565b505f81118015610c6257505f47115b15610cc4573373ffffffffffffffffffffffffffffffffffffffff166108fc6064600547610c9091906116d8565b610c9a9190611746565b90811502906040515f60405180830381858888f19350505050158015610cc2573d5f5f3e3d5ffd5b505b505050565b610cd1610eb8565b8060015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b610d31610eb8565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610da1575f6040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401610d989190611145565b60405180910390fd5b610daa81610f3f565b50565b610db5610eb8565b8073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb610dd961094d565b8373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610e129190611145565b602060405180830381865afa158015610e2d573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e5191906118fe565b6040518363ffffffff1660e01b8152600401610e6e9291906117a9565b6020604051808303815f875af1158015610e8a573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610eae91906113e2565b5050565b61dead81565b610ec0611000565b73ffffffffffffffffffffffffffffffffffffffff16610ede61094d565b73ffffffffffffffffffffffffffffffffffffffff1614610f3d57610f01611000565b6040517f118cdaa7000000000000000000000000000000000000000000000000000000008152600401610f349190611145565b60405180910390fd5b565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f33905090565b5f819050919050565b61101981611007565b82525050565b5f6020820190506110325f830184611010565b92915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61107282611049565b9050919050565b61108281611068565b811461108c575f5ffd5b50565b5f8135905061109d81611079565b92915050565b6110ac81611007565b81146110b6575f5ffd5b50565b5f813590506110c7816110a3565b92915050565b5f5f604083850312156110e3576110e2611041565b5b5f6110f08582860161108f565b9250506020611101858286016110b9565b9150509250929050565b5f602082840312156111205761111f611041565b5b5f61112d848285016110b9565b91505092915050565b61113f81611068565b82525050565b5f6020820190506111585f830184611136565b92915050565b5f8115159050919050565b6111728161115e565b82525050565b5f60a08201905061118b5f830188611136565b6111986020830187611136565b6111a56040830186611010565b6111b26060830185611010565b6111bf6080830184611169565b9695505050505050565b5f602082840312156111de576111dd611041565b5b5f6111eb8482850161108f565b91505092915050565b5f6020820190506112075f830184611169565b92915050565b5f5ffd5b5f5ffd5b5f5ffd5b5f5f83601f84011261122e5761122d61120d565b5b8235905067ffffffffffffffff81111561124b5761124a611211565b5b60208301915083602082028301111561126757611266611215565b5b9250929050565b5f5f6020838503121561128457611283611041565b5b5f83013567ffffffffffffffff8111156112a1576112a0611045565b5b6112ad85828601611219565b92509250509250929050565b6112c28161115e565b81146112cc575f5ffd5b50565b5f813590506112dd816112b9565b92915050565b5f5f604083850312156112f9576112f8611041565b5b5f6113068582860161108f565b9250506020611317858286016112cf565b9150509250929050565b5f82825260208201905092915050565b7f4572726f723a20300000000000000000000000000000000000000000000000005f82015250565b5f611365600883611321565b915061137082611331565b602082019050919050565b5f6020820190508181035f83015261139281611359565b9050919050565b5f6060820190506113ac5f830186611136565b6113b96020830185611136565b6113c66040830184611010565b949350505050565b5f815190506113dc816112b9565b92915050565b5f602082840312156113f7576113f6611041565b5b5f611404848285016113ce565b91505092915050565b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61145782611411565b810181811067ffffffffffffffff8211171561147657611475611421565b5b80604052505050565b5f611488611038565b9050611494828261144e565b919050565b5f67ffffffffffffffff8211156114b3576114b2611421565b5b6114bc82611411565b9050602081019050919050565b8281835e5f83830152505050565b5f6114e96114e484611499565b61147f565b9050828152602081018484840111156115055761150461140d565b5b6115108482856114c9565b509392505050565b5f82601f83011261152c5761152b61120d565b5b815161153c8482602086016114d7565b91505092915050565b5f6020828403121561155a57611559611041565b5b5f82015167ffffffffffffffff81111561157757611576611045565b5b61158384828501611518565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6115c382611007565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036115f5576115f461158c565b5b600182019050919050565b5f81519050919050565b5f61161482611600565b61161e8185611321565b935061162e8185602086016114c9565b61163781611411565b840191505092915050565b5f6040820190508181035f83015261165a818561160a565b90506116696020830184611010565b9392505050565b7f4572726f723a20417574680000000000000000000000000000000000000000005f82015250565b5f6116a4600b83611321565b91506116af82611670565b602082019050919050565b5f6020820190508181035f8301526116d181611698565b9050919050565b5f6116e282611007565b91506116ed83611007565b92508282026116fb81611007565b915082820484148315176117125761171161158c565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61175082611007565b915061175b83611007565b92508261176b5761176a611719565b5b828204905092915050565b5f61178082611007565b915061178b83611007565b92508282039050818111156117a3576117a261158c565b5b92915050565b5f6040820190506117bc5f830185611136565b6117c96020830184611010565b9392505050565b5f6080820190506117e35f830187611136565b6117f06020830186611136565b6117fd6040830185611010565b61180a6060830184611010565b95945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f61184a82611007565b915061185583611007565b925082820190508082111561186d5761186c61158c565b5b92915050565b5f819050919050565b5f819050919050565b5f61189f61189a61189584611873565b61187c565b611007565b9050919050565b6118af81611885565b82525050565b5f6060820190506118c85f830186611136565b6118d56020830185611136565b6118e260408301846118a6565b949350505050565b5f815190506118f8816110a3565b92915050565b5f6020828403121561191357611912611041565b5b5f611920848285016118ea565b9150509291505056fea2646970667358221220445ea21a9883d519ec19b3a7e1e4d4cbf3aac9b5ab8d07bdee55b6910fe7a6db64736f6c634300081e0033
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 34 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
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.