Feature Tip: Add private address tag to any address under My Name Tag !
More Info
Private Name Tags
ContractCreator
Latest 1 from a total of 1 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
0x60806040 | 11382360 | 1378 days ago | IN | 0 ETH | 0.02335636 |
Loading...
Loading
Contract Name:
COREBurnPileNFT01
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2020-12-03 */ // Sources flattened with hardhat v2.0.1 https://hardhat.org // File @openzeppelin/contracts-ethereum-package/contracts/token/ERC20/[email protected] pragma solidity ^0.6.0; /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface IERC20 { /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @dev Returns the amount of tokens owned by `account`. */ function balanceOf(address account) external view returns (uint256); /** * @dev Moves `amount` tokens from the caller's account to `recipient`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address recipient, uint256 amount) 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 `amount` 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 amount) external returns (bool); /** * @dev Moves `amount` tokens from `sender` to `recipient` using the * allowance mechanism. `amount` is then deducted from the caller's * allowance. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); /** * @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); } // File @openzeppelin/contracts-ethereum-package/contracts/math/[email protected] pragma solidity ^0.6.0; /** * @dev Wrappers over Solidity's arithmetic operations with added overflow * checks. * * Arithmetic operations in Solidity wrap on overflow. This can easily result * in bugs, because programmers usually assume that an overflow raises an * error, which is the standard behavior in high level programming languages. * `SafeMath` restores this intuition by reverting the transaction when an * operation overflows. * * Using this library instead of the unchecked operations eliminates an entire * class of bugs, so it's recommended to use it always. */ library SafeMath { /** * @dev Returns the addition of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `+` operator. * * Requirements: * - Addition cannot overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } /** * @dev Returns the subtraction of two unsigned integers, reverting on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } /** * @dev Returns the subtraction of two unsigned integers, reverting with custom message on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } /** * @dev Returns the multiplication of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `*` operator. * * Requirements: * - Multiplication cannot overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } /** * @dev Returns the integer division of two unsigned integers. Reverts on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } /** * @dev Returns the integer division of two unsigned integers. Reverts with custom message on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { // Solidity only automatically asserts when dividing by 0 require(b > 0, errorMessage); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, "SafeMath: modulo by zero"); } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts with custom message when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } // File contracts/v612/FANNY/COREBurnPileNFT01.sol pragma solidity 0.6.12; // @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@@@@@@@&%%%%%%@@@@@&%%%%%%@%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@@@@@@&@@@@@@@@@&%%*****#%%%%&&&&&&&&&&@@@@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@@@@@@&&&&&&&%%*******#%%%# /%&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@@@@@&&&&&&%%%********#*,,,*. %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&/******,. %@@@@@@%%%%%@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@%%%&@@@@@%***%*** %%&@@&%%,**%@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@%,,(%@@@%%*(#***, (%%@&% (%@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@% %%%%*,,** %%, (%@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@@% %%%**,, % %%%@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@@@%* %@@@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@@@@&%* %@@@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@@@&#%% %@@@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@%#****%* %@@@@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@%%%/**%* %%@@@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@@@@@@%%* %@@@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@@@@@@% %@@@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@@@@@@% %@@@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@@@@@&% %@@@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@@@@@% %%%@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@@@@@% (%@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@@@&* %@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@@%%/, %@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@%***** %@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@&%%***** %@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@&/****** %@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@&/****** %@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@&/,****, (%%@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@%,*****, (&@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@%*,***. (&@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@% %%%@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@% %@@@@@@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@&#( ((((%////%%&@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@&%%,. . ./%&&&&&%*.............%%&&&&&&&&&&&&&@@@@@@@@@@@@@@@ // @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ interface RARIBLENFT { function ownerOf(uint256) external view returns (address); function tokenURI(uint256) external view returns (string memory); } contract COREBurnPileNFT01 { using SafeMath for uint256; IERC20 constant CORE = IERC20(0x62359Ed7505Efc61FF1D56fEF82158CcaffA23D7); RARIBLENFT constant NFT = RARIBLENFT(0x60F80121C31A0d46B5279700f9DF786054aa5eE5); uint256 constant NFTNum = 73604; bool public auctionOngoing; uint256 public auctionEndTime; uint256 public topBid; address public topBidder; address private _owner; event AuctionStarted(address indexed byOwner, uint256 startTimestamp); event AuctionEnded(address indexed newOwner, uint256 timestamp, uint256 soldForETH); event Bid(address indexed bidBy, uint256 amountETH, uint256 timestamp); modifier onlyOwner { require(msg.sender == _owner); _; } constructor() public { _owner = msg.sender; } function transferOwnership(address _to) onlyOwner public { _owner = _to; } function startAuction(uint256 daysLong) public onlyOwner { require(auctionOngoing == false, "Auction is ongoing"); auctionOngoing = true; auctionEndTime = block.timestamp.add(daysLong * 1 days); emit AuctionStarted(msg.sender, block.timestamp); } function bid() public payable { require(tx.origin == msg.sender, "Only dumb wallets can own this NFT"); require(auctionOngoing == true, "Auction is not happening"); require(block.timestamp < auctionEndTime, "Auction ended"); require(msg.sender != _owner, "no"); require(msg.value >= topBid.mul(105).div(100), "Didn't beat top bid"); topBid = msg.value; topBidder = msg.sender; emit Bid(msg.sender, msg.value, block.timestamp); } function endAuction() public { require(auctionOngoing == true, "Auction is not happening"); require(block.timestamp > auctionEndTime, "Auction still ongoing"); auctionOngoing = false; auctionEndTime = uint256(-1); emit AuctionEnded(topBidder, block.timestamp, address(this).balance); address previousOwner = _owner; _owner = topBidder; (bool success, ) = previousOwner.call.value(address(this).balance)(""); require(success, "Transfer failed."); } function admireStack() public view returns (uint256) { return CORE.balanceOf(address(this)); } function veryRichOwner() public view returns (address) { return _owner; } function isNFTOwner() public view returns (bool) { return (NFT.ownerOf(NFTNum) == address(this)); } function getURI() public view returns (string memory) { return NFT.tokenURI(NFTNum); } function transferCOREOut() onlyOwner public { revert("Lol You Wish"); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newOwner","type":"address"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"soldForETH","type":"uint256"}],"name":"AuctionEnded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"byOwner","type":"address"},{"indexed":false,"internalType":"uint256","name":"startTimestamp","type":"uint256"}],"name":"AuctionStarted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"bidBy","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountETH","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"Bid","type":"event"},{"inputs":[],"name":"admireStack","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"auctionEndTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"auctionOngoing","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"bid","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"endAuction","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isNFTOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"daysLong","type":"uint256"}],"name":"startAuction","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"topBid","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"topBidder","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"transferCOREOut","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"veryRichOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b50600480546001600160a01b03191633179055610c49806100326000396000f3fe6080604052600436106100c25760003560e01c806367c3b4831161007f5780638961df22116100595780638961df2214610245578063d6342ddc1461025a578063f2fde38b1461026f578063fe67a54b146102a2576100c2565b806367c3b4831461017d57806369ea80e8146101a65780637754305c146101bb576100c2565b806301333f06146100c7578063065de74c146100f85780631998aeef146101245780634b449cba1461012c578063636bf7301461015357806363d1347b14610168575b600080fd5b3480156100d357600080fd5b506100dc6102b7565b604080516001600160a01b039092168252519081900360200190f35b34801561010457600080fd5b506101226004803603602081101561011b57600080fd5b50356102c6565b005b610122610382565b34801561013857600080fd5b50610141610566565b60408051918252519081900360200190f35b34801561015f57600080fd5b5061014161056c565b34801561017457600080fd5b50610122610572565b34801561018957600080fd5b506101926105c5565b604080519115158252519081900360200190f35b3480156101b257600080fd5b506101416105ce565b3480156101c757600080fd5b506101d0610654565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561020a5781810151838201526020016101f2565b50505050905090810190601f1680156102375780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561025157600080fd5b506100dc6107a3565b34801561026657600080fd5b506101926107b2565b34801561027b57600080fd5b506101226004803603602081101561029257600080fd5b50356001600160a01b0316610846565b3480156102ae57600080fd5b5061012261087f565b6003546001600160a01b031681565b6004546001600160a01b031633146102dd57600080fd5b60005460ff161561032a576040805162461bcd60e51b815260206004820152601260248201527141756374696f6e206973206f6e676f696e6760701b604482015290519081900360640190fd5b6000805460ff1916600117905561034642620151808302610a35565b60015560408051428152905133917fc087c4cdb16906b5ff7016a6bf927618f24ff32eb1de5e86eeaeb08b94831a68919081900360200190a250565b3233146103c05760405162461bcd60e51b8152600401808060200182810382526022815260200180610bd16022913960400191505060405180910390fd5b60005460ff161515600114610417576040805162461bcd60e51b815260206004820152601860248201527741756374696f6e206973206e6f742068617070656e696e6760401b604482015290519081900360640190fd5b600154421061045d576040805162461bcd60e51b815260206004820152600d60248201526c105d58dd1a5bdb88195b991959609a1b604482015290519081900360640190fd5b6004546001600160a01b03163314156104a2576040805162461bcd60e51b81526020600482015260026024820152616e6f60f01b604482015290519081900360640190fd5b6104c360646104bd6069600254610a9890919063ffffffff16565b90610af1565b34101561050d576040805162461bcd60e51b8152602060048201526013602482015272111a591b89dd081899585d081d1bdc08189a59606a1b604482015290519081900360640190fd5b346002819055600380546001600160a01b0319163390811790915560408051928352426020840152805191927f19421268847f42dd61705778018ddfc43bcdce8517e7a630acb12f122c709481929081900390910190a2565b60015481565b60025481565b6004546001600160a01b0316331461058957600080fd5b6040805162461bcd60e51b815260206004820152600c60248201526b098ded840b2deea40aed2e6d60a31b604482015290519081900360640190fd5b60005460ff1681565b604080516370a0823160e01b815230600482015290516000917362359ed7505efc61ff1d56fef82158ccaffa23d7916370a0823191602480820192602092909190829003018186803b15801561062357600080fd5b505afa158015610637573d6000803e3d6000fd5b505050506040513d602081101561064d57600080fd5b5051905090565b60607360f80121c31a0d46b5279700f9df786054aa5ee56001600160a01b031663c87b56dd62011f846040518263ffffffff1660e01b81526004018082815260200191505060006040518083038186803b1580156106b157600080fd5b505afa1580156106c5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405260208110156106ee57600080fd5b810190808051604051939291908464010000000082111561070e57600080fd5b90830190602082018581111561072357600080fd5b825164010000000081118282018810171561073d57600080fd5b82525081516020918201929091019080838360005b8381101561076a578181015183820152602001610752565b50505050905090810190601f1680156107975780820380516001836020036101000a031916815260200191505b50604052505050905090565b6004546001600160a01b031690565b604080516331a9108f60e11b815262011f846004820152905160009130917360f80121c31a0d46b5279700f9df786054aa5ee591636352211e916024808301926020929190829003018186803b15801561080b57600080fd5b505afa15801561081f573d6000803e3d6000fd5b505050506040513d602081101561083557600080fd5b50516001600160a01b031614905090565b6004546001600160a01b0316331461085d57600080fd5b600480546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615156001146108d6576040805162461bcd60e51b815260206004820152601860248201527741756374696f6e206973206e6f742068617070656e696e6760401b604482015290519081900360640190fd5b6001544211610924576040805162461bcd60e51b815260206004820152601560248201527441756374696f6e207374696c6c206f6e676f696e6760581b604482015290519081900360640190fd5b6000805460ff191690556000196001556003546040805142815247602082015281516001600160a01b03909316927fc358e8e3f205b5e7453abd5cbac388ca4552b887b69001bc972b88610c749035929181900390910190a2600480546003546001600160a01b031982166001600160a01b0391821617909255604051911690600090829047908381818185875af1925050503d80600081146109e3576040519150601f19603f3d011682016040523d82523d6000602084013e6109e8565b606091505b5050905080610a31576040805162461bcd60e51b815260206004820152601060248201526f2a3930b739b332b9103330b4b632b21760811b604482015290519081900360640190fd5b5050565b600082820183811015610a8f576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b600082610aa757506000610a92565b82820282848281610ab457fe5b0414610a8f5760405162461bcd60e51b8152600401808060200182810382526021815260200180610bf36021913960400191505060405180910390fd5b6000610a8f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060008183610bba5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610b7f578181015183820152602001610b67565b50505050905090810190601f168015610bac5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581610bc657fe5b049594505050505056fe4f6e6c792064756d622077616c6c6574732063616e206f776e2074686973204e4654536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220ccd17dab3533ac28d9e5322224eb30f40eb54b1430c03e6c03071631549c642064736f6c634300060c0033
Deployed Bytecode
0x6080604052600436106100c25760003560e01c806367c3b4831161007f5780638961df22116100595780638961df2214610245578063d6342ddc1461025a578063f2fde38b1461026f578063fe67a54b146102a2576100c2565b806367c3b4831461017d57806369ea80e8146101a65780637754305c146101bb576100c2565b806301333f06146100c7578063065de74c146100f85780631998aeef146101245780634b449cba1461012c578063636bf7301461015357806363d1347b14610168575b600080fd5b3480156100d357600080fd5b506100dc6102b7565b604080516001600160a01b039092168252519081900360200190f35b34801561010457600080fd5b506101226004803603602081101561011b57600080fd5b50356102c6565b005b610122610382565b34801561013857600080fd5b50610141610566565b60408051918252519081900360200190f35b34801561015f57600080fd5b5061014161056c565b34801561017457600080fd5b50610122610572565b34801561018957600080fd5b506101926105c5565b604080519115158252519081900360200190f35b3480156101b257600080fd5b506101416105ce565b3480156101c757600080fd5b506101d0610654565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561020a5781810151838201526020016101f2565b50505050905090810190601f1680156102375780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561025157600080fd5b506100dc6107a3565b34801561026657600080fd5b506101926107b2565b34801561027b57600080fd5b506101226004803603602081101561029257600080fd5b50356001600160a01b0316610846565b3480156102ae57600080fd5b5061012261087f565b6003546001600160a01b031681565b6004546001600160a01b031633146102dd57600080fd5b60005460ff161561032a576040805162461bcd60e51b815260206004820152601260248201527141756374696f6e206973206f6e676f696e6760701b604482015290519081900360640190fd5b6000805460ff1916600117905561034642620151808302610a35565b60015560408051428152905133917fc087c4cdb16906b5ff7016a6bf927618f24ff32eb1de5e86eeaeb08b94831a68919081900360200190a250565b3233146103c05760405162461bcd60e51b8152600401808060200182810382526022815260200180610bd16022913960400191505060405180910390fd5b60005460ff161515600114610417576040805162461bcd60e51b815260206004820152601860248201527741756374696f6e206973206e6f742068617070656e696e6760401b604482015290519081900360640190fd5b600154421061045d576040805162461bcd60e51b815260206004820152600d60248201526c105d58dd1a5bdb88195b991959609a1b604482015290519081900360640190fd5b6004546001600160a01b03163314156104a2576040805162461bcd60e51b81526020600482015260026024820152616e6f60f01b604482015290519081900360640190fd5b6104c360646104bd6069600254610a9890919063ffffffff16565b90610af1565b34101561050d576040805162461bcd60e51b8152602060048201526013602482015272111a591b89dd081899585d081d1bdc08189a59606a1b604482015290519081900360640190fd5b346002819055600380546001600160a01b0319163390811790915560408051928352426020840152805191927f19421268847f42dd61705778018ddfc43bcdce8517e7a630acb12f122c709481929081900390910190a2565b60015481565b60025481565b6004546001600160a01b0316331461058957600080fd5b6040805162461bcd60e51b815260206004820152600c60248201526b098ded840b2deea40aed2e6d60a31b604482015290519081900360640190fd5b60005460ff1681565b604080516370a0823160e01b815230600482015290516000917362359ed7505efc61ff1d56fef82158ccaffa23d7916370a0823191602480820192602092909190829003018186803b15801561062357600080fd5b505afa158015610637573d6000803e3d6000fd5b505050506040513d602081101561064d57600080fd5b5051905090565b60607360f80121c31a0d46b5279700f9df786054aa5ee56001600160a01b031663c87b56dd62011f846040518263ffffffff1660e01b81526004018082815260200191505060006040518083038186803b1580156106b157600080fd5b505afa1580156106c5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405260208110156106ee57600080fd5b810190808051604051939291908464010000000082111561070e57600080fd5b90830190602082018581111561072357600080fd5b825164010000000081118282018810171561073d57600080fd5b82525081516020918201929091019080838360005b8381101561076a578181015183820152602001610752565b50505050905090810190601f1680156107975780820380516001836020036101000a031916815260200191505b50604052505050905090565b6004546001600160a01b031690565b604080516331a9108f60e11b815262011f846004820152905160009130917360f80121c31a0d46b5279700f9df786054aa5ee591636352211e916024808301926020929190829003018186803b15801561080b57600080fd5b505afa15801561081f573d6000803e3d6000fd5b505050506040513d602081101561083557600080fd5b50516001600160a01b031614905090565b6004546001600160a01b0316331461085d57600080fd5b600480546001600160a01b0319166001600160a01b0392909216919091179055565b60005460ff1615156001146108d6576040805162461bcd60e51b815260206004820152601860248201527741756374696f6e206973206e6f742068617070656e696e6760401b604482015290519081900360640190fd5b6001544211610924576040805162461bcd60e51b815260206004820152601560248201527441756374696f6e207374696c6c206f6e676f696e6760581b604482015290519081900360640190fd5b6000805460ff191690556000196001556003546040805142815247602082015281516001600160a01b03909316927fc358e8e3f205b5e7453abd5cbac388ca4552b887b69001bc972b88610c749035929181900390910190a2600480546003546001600160a01b031982166001600160a01b0391821617909255604051911690600090829047908381818185875af1925050503d80600081146109e3576040519150601f19603f3d011682016040523d82523d6000602084013e6109e8565b606091505b5050905080610a31576040805162461bcd60e51b815260206004820152601060248201526f2a3930b739b332b9103330b4b632b21760811b604482015290519081900360640190fd5b5050565b600082820183811015610a8f576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b600082610aa757506000610a92565b82820282848281610ab457fe5b0414610a8f5760405162461bcd60e51b8152600401808060200182810382526021815260200180610bf36021913960400191505060405180910390fd5b6000610a8f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060008183610bba5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610b7f578181015183820152602001610b67565b50505050905090810190601f168015610bac5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581610bc657fe5b049594505050505056fe4f6e6c792064756d622077616c6c6574732063616e206f776e2074686973204e4654536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220ccd17dab3533ac28d9e5322224eb30f40eb54b1430c03e6c03071631549c642064736f6c634300060c0033
Deployed Bytecode Sourcemap
11796:2815:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12167:24;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;12167:24:0;;;;;;;;;;;;;;12722:287;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12722:287:0;;:::i;:::-;;13017:505;;;:::i;12103:29::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;12139:21;;;;;;;;;;;;;:::i;14516:86::-;;;;;;;;;;;;;:::i;12070:26::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;14075:108;;;;;;;;;;;;;:::i;14407:101::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14191:87;;;;;;;;;;;;;:::i;14286:113::-;;;;;;;;;;;;;:::i;12626:88::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12626:88:0;-1:-1:-1;;;;;12626:88:0;;:::i;13530:533::-;;;;;;;;;;;;;:::i;12167:24::-;;;-1:-1:-1;;;;;12167:24:0;;:::o;12722:287::-;12524:6;;-1:-1:-1;;;;;12524:6:0;12510:10;:20;12502:29;;;;;;12798:14:::1;::::0;::::1;;:23;12790:54;;;::::0;;-1:-1:-1;;;12790:54:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;12790:54:0;;;;;;;;;;;;;::::1;;12855:14;:21:::0;;-1:-1:-1;;12855:21:0::1;12872:4;12855:21;::::0;;12904:38:::1;:15;12935:6;12924:17:::0;::::1;12904:19;:38::i;:::-;12887:14;:55:::0;12958:43:::1;::::0;;12985:15:::1;12958:43:::0;;;;12973:10:::1;::::0;12958:43:::1;::::0;;;;;::::1;::::0;;::::1;12722:287:::0;:::o;13017:505::-;13066:9;13079:10;13066:23;13058:70;;;;-1:-1:-1;;;13058:70:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13147:14;;;;:22;;:14;:22;13139:59;;;;;-1:-1:-1;;;13139:59:0;;;;;;;;;;;;-1:-1:-1;;;13139:59:0;;;;;;;;;;;;;;;13235:14;;13217:15;:32;13209:58;;;;;-1:-1:-1;;;13209:58:0;;;;;;;;;;;;-1:-1:-1;;;13209:58:0;;;;;;;;;;;;;;;13300:6;;-1:-1:-1;;;;;13300:6:0;13286:10;:20;;13278:35;;;;;-1:-1:-1;;;13278:35:0;;;;;;;;;;;;-1:-1:-1;;;13278:35:0;;;;;;;;;;;;;;;13345:24;13365:3;13345:15;13356:3;13345:6;;:10;;:15;;;;:::i;:::-;:19;;:24::i;:::-;13332:9;:37;;13324:69;;;;;-1:-1:-1;;;13324:69:0;;;;;;;;;;;;-1:-1:-1;;;13324:69:0;;;;;;;;;;;;;;;13413:9;13404:6;:18;;;13433:9;:22;;-1:-1:-1;;;;;;13433:22:0;13445:10;13433:22;;;;;;13471:43;;;;;;13498:15;13471:43;;;;;;13445:10;;13471:43;;;;;;;;;;;13017:505::o;12103:29::-;;;;:::o;12139:21::-;;;;:::o;14516:86::-;12524:6;;-1:-1:-1;;;;;12524:6:0;12510:10;:20;12502:29;;;;;;14572:22:::1;::::0;;-1:-1:-1;;;14572:22:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;14572:22:0;;;;;;;;;;;;;::::1;12070:26:::0;;;;;;:::o;14075:108::-;14146:29;;;-1:-1:-1;;;14146:29:0;;14169:4;14146:29;;;;;;14119:7;;11895:42;;14146:14;;:29;;;;;;;;;;;;;;;11895:42;14146:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;14146:29:0;;-1:-1:-1;14075:108:0;:::o;14407:101::-;14446:13;11982:42;-1:-1:-1;;;;;14480:12:0;;12058:5;14480:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;14480:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;14480:20:0;;;;;;;;;;-1:-1:-1;14480:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14473:27;;14407:101;:::o;14191:87::-;14264:6;;-1:-1:-1;;;;;14264:6:0;14191:87;:::o;14286:113::-;14354:19;;;-1:-1:-1;;;14354:19:0;;12058:5;14354:19;;;;;;14329:4;;14385;;11982:42;;14354:11;;:19;;;;;;;;;;;;;;11982:42;14354:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;14354:19:0;-1:-1:-1;;;;;14354:36:0;;;-1:-1:-1;14286:113:0;:::o;12626:88::-;12524:6;;-1:-1:-1;;;;;12524:6:0;12510:10;:20;12502:29;;;;;;12694:6:::1;:12:::0;;-1:-1:-1;;;;;;12694:12:0::1;-1:-1:-1::0;;;;;12694:12:0;;;::::1;::::0;;;::::1;::::0;;12626:88::o;13530:533::-;13578:14;;;;:22;;:14;:22;13570:59;;;;;-1:-1:-1;;;13570:59:0;;;;;;;;;;;;-1:-1:-1;;;13570:59:0;;;;;;;;;;;;;;;13666:14;;13648:15;:32;13640:66;;;;;-1:-1:-1;;;13640:66:0;;;;;;;;;;;;-1:-1:-1;;;13640:66:0;;;;;;;;;;;;;;;13734:5;13717:22;;-1:-1:-1;;13717:22:0;;;-1:-1:-1;;13717:22:0;13750:28;13807:9;;13794:63;;;13818:15;13794:63;;13835:21;13794:63;;;;;;-1:-1:-1;;;;;13807:9:0;;;;13794:63;;;;;;;;;;;13892:6;;;13918:9;;-1:-1:-1;;;;;;13909:18:0;;-1:-1:-1;;;;;13918:9:0;;;13909:18;;;;13957:51;;13892:6;;;13868:21;;13892:6;;13982:21;;13868;13957:51;13868:21;13957:51;13982:21;13892:6;13957:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13938:70;;;14027:7;14019:36;;;;;-1:-1:-1;;;14019:36:0;;;;;;;;;;;;-1:-1:-1;;;14019:36:0;;;;;;;;;;;;;;;13530:533;;:::o;3844:181::-;3902:7;3934:5;;;3958:6;;;;3950:46;;;;;-1:-1:-1;;;3950:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;4016:1;-1:-1:-1;3844:181:0;;;;;:::o;5174:471::-;5232:7;5477:6;5473:47;;-1:-1:-1;5507:1:0;5500:8;;5473:47;5544:5;;;5548:1;5544;:5;:1;5568:5;;;;;:10;5560:56;;;;-1:-1:-1;;;5560:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6113:132;6171:7;6198:39;6202:1;6205;6198:39;;;;;;;;;;;;;;;;;6819:7;6921:12;6914:5;6906:28;;;;-1:-1:-1;;;6906:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6945:9;6961:1;6957;:5;;;;;;;6733:345;-1:-1:-1;;;;;6733:345:0:o
Swarm Source
ipfs://ccd17dab3533ac28d9e5322224eb30f40eb54b1430c03e6c03071631549c6420
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 26 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | 100.00% | $4,130.9 | 98.0757 | $405,140.78 |
Loading...
Loading
[ 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.