ERC-721
NFT
Overview
Max Total Supply
962 BENSYC
Holders
230
Market
Volume (24H)
N/A
Min Price (24H)
N/A
Max Price (24H)
N/A
Other Info
Token Contract
Balance
2 BENSYCLoading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
BoredENSYachtClub
Compiler Version
v0.8.16+commit.07a7930e
Optimization Enabled:
Yes with 6666 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
//SPDX-License-Identifier: WTFPL v6.9 pragma solidity >0.8.0 <0.9.0; import "src/Interface.sol"; import "src/Util.sol"; import "src/Base.sol"; /** * @author 0xc0de4c0ffee, sshmatrix * @title BENSYC Core */ contract BoredENSYachtClub is BENSYC { using Util for uint256; using Util for bytes; /// @dev : maximum supply of subdomains uint256 public immutable maxSupply; /// @dev : namehash of 'boredensyachtclub.eth' bytes32 public immutable DomainHash; /// @dev : start time of mint uint256 public immutable startTime; /** * @dev Constructor * @param _resolver : default Resolver * @param _maxSupply : maximum supply of subdomains * @param _startTime : start time of mint */ constructor(address _resolver, uint256 _maxSupply, uint256 _startTime) { Dev = msg.sender; ENS = iENS(0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e); DefaultResolver = _resolver; DomainHash = keccak256( abi.encodePacked(keccak256(abi.encodePacked(bytes32(0), keccak256("eth"))), keccak256("boredensyachtclub")) ); maxSupply = _maxSupply; startTime = _startTime; // Interface supportsInterface[type(iERC165).interfaceId] = true; supportsInterface[type(iERC173).interfaceId] = true; supportsInterface[type(iERC721Metadata).interfaceId] = true; supportsInterface[type(iERC721).interfaceId] = true; supportsInterface[type(iERC2981).interfaceId] = true; } /** * @dev EIP721: returns owner of token ID * @param id : token ID * @return : address of owner */ function ownerOf(uint256 id) public view isValidToken(id) returns (address) { return _ownerOf[id]; } /** * @dev returns namehash of token ID * @param id : token ID * @return : namehash of corresponding subdomain */ function ID2Namehash(uint256 id) public view isValidToken(id) returns (bytes32) { return keccak256(abi.encodePacked(DomainHash, ID2Labelhash[id])); } /** * @dev mint() function for single sudomain */ function mint() external payable { if (!active) { revert MintingPaused(); } if (block.timestamp < startTime) { revert TooSoonToMint(); } if (totalSupply >= maxSupply) { revert MintEnded(); } if (msg.value < mintPrice) { revert InsufficientEtherSent(mintPrice, msg.value); } uint256 _id = totalSupply; bytes32 _labelhash = keccak256(abi.encodePacked(_id.toString())); ENS.setSubnodeRecord(DomainHash, _labelhash, msg.sender, DefaultResolver, 0); ID2Labelhash[_id] = _labelhash; Namehash2ID[keccak256(abi.encodePacked(DomainHash, _labelhash))] = _id; unchecked { ++totalSupply; ++balanceOf[msg.sender]; } _ownerOf[_id] = msg.sender; emit Transfer(address(0), msg.sender, _id); } /** * @dev : batchMint() function for sudomains * @param batchSize : number of subdomains to mint in the batch (maximum batchSize = 12) */ function batchMint(uint256 batchSize) external payable { if (!active) { revert MintingPaused(); } if (block.timestamp < startTime) { revert TooSoonToMint(); } if (batchSize > 12 || totalSupply + batchSize > maxSupply) { // maximum batchSize = floor of [12, maxSupply - totalSupply] revert OversizedBatch(); } if (msg.value < mintPrice * batchSize) { revert InsufficientEtherSent(mintPrice * batchSize, msg.value); } uint256 _id = totalSupply; uint256 _mint = _id + batchSize; bytes32 _labelhash; while (_id < _mint) { _labelhash = keccak256(abi.encodePacked(_id.toString())); ENS.setSubnodeRecord(DomainHash, _labelhash, msg.sender, DefaultResolver, 0); ID2Labelhash[_id] = _labelhash; Namehash2ID[keccak256(abi.encodePacked(DomainHash, _labelhash))] = _id; _ownerOf[_id] = msg.sender; emit Transfer(address(0), msg.sender, _id); unchecked { ++_id; } } unchecked { totalSupply = _mint; balanceOf[msg.sender] += batchSize; } } /** * @dev : generic _transfer function * @param from : address of sender * @param to : address of receiver * @param id : subdomain token ID */ function _transfer(address from, address to, uint256 id, bytes memory data) internal { if (to == address(0)) { revert ZeroAddress(); } if (_ownerOf[id] != from) { revert NotSubdomainOwner(_ownerOf[id], from, id); } if (msg.sender != _ownerOf[id] && !isApprovedForAll[from][msg.sender] && msg.sender != getApproved[id]) { revert Unauthorized(msg.sender, from, id); } ENS.setSubnodeOwner(DomainHash, ID2Labelhash[id], to); unchecked { --balanceOf[from]; // subtract from owner ++(balanceOf[to]); // add to receiver } _ownerOf[id] = to; // change ownership delete getApproved[id]; // reset approved emit Transfer(from, to, id); if (to.code.length > 0) { try iERC721Receiver(to).onERC721Received(msg.sender, from, id, data) returns (bytes4 retval) { if (retval != iERC721Receiver.onERC721Received.selector) { revert ERC721IncompatibleReceiver(to); } } catch { revert ERC721IncompatibleReceiver(to); } } } /** * @dev : transfer function * @param from : from address * @param to : to address * @param id : token ID */ function transferFrom(address from, address to, uint256 id) external payable { _transfer(from, to, id, ""); } /** * @dev : safeTransferFrom function with extra data * @param from : from address * @param to : to address * @param id : token ID * @param data : extra data */ function safeTransferFrom(address from, address to, uint256 id, bytes memory data) external payable { _transfer(from, to, id, data); } /** * @dev : safeTransferFrom function * @param from : from address * @param to : to address * @param id : token ID */ function safeTransferFrom(address from, address to, uint256 id) external payable { _transfer(from, to, id, ""); } /** * @dev : grants approval for a token ID * @param approved : operator address to be approved * @param id : token ID */ function approve(address approved, uint256 id) external payable { if (msg.sender != _ownerOf[id]) { revert Unauthorized(msg.sender, _ownerOf[id], id); } getApproved[id] = approved; emit Approval(msg.sender, approved, id); } /** * @dev : sets Controller (for all tokens) * @param operator : operator address to be set as Controller * @param approved : bool to set */ function setApprovalForAll(address operator, bool approved) external payable { isApprovedForAll[msg.sender][operator] = approved; emit ApprovalForAll(msg.sender, operator, approved); } /** * @dev : generate metadata path corresponding to token ID * @param id : token ID * @return : IPFS path to metadata directory */ function tokenURI(uint256 id) external view isValidToken(id) returns (string memory) { return string.concat("ipfs://", metaIPFS, "/", id.toString(), ".json"); } /** * @dev : royalty payment to Dev (or multi-sig) * @param id : token ID * @param _salePrice : sale price * @return : ether amount to be paid as royalty to Dev (or multi-sig) */ function royaltyInfo(uint256 id, uint256 _salePrice) external view returns (address, uint256) { id; //silence warning return (Dev, _salePrice / 100 * royalty); } // Contract Management /** * @dev : transfer contract ownership to new Dev * @param newDev : new Dev */ function transferOwnership(address newDev) external onlyDev { emit OwnershipTransferred(Dev, newDev); Dev = newDev; } /** * @dev : get owner of contract * @return : address of controlling dev or multi-sig wallet */ function owner() external view returns (address) { return Dev; } /** * @dev : Toggle if contract is active or paused, only Dev can toggle */ function toggleActive() external onlyDev { active = !active; } /** * @dev : sets Default Resolver * @param _resolver : resolver address */ function setDefaultResolver(address _resolver) external onlyDev { DefaultResolver = _resolver; } /** * @dev : sets OpenSea contractURI * @param _contractURI : URI value */ function setContractURI(string calldata _contractURI) external onlyDev { contractURI = _contractURI; } // /** * @dev EIP2981 royalty standard * @param _royalty : royalty (1 = 1 %) */ function setRoyalty(uint256 _royalty) external onlyDev { royalty = _royalty; } }
//SPDX-License-Identifier: WTFPL v6.9 pragma solidity >=0.8.4; interface iOverloadResolver { function addr(bytes32 node, uint256 coinType) external view returns (bytes memory); } interface iResolver { function contenthash(bytes32 node) external view returns (bytes memory); function addr(bytes32 node) external view returns (address payable); function pubkey(bytes32 node) external view returns (bytes32 x, bytes32 y); function text(bytes32 node, string calldata key) external view returns (string memory); function name(bytes32 node) external view returns (string memory); } interface iCCIP { function resolve(bytes memory name, bytes memory data) external view returns (bytes memory); } interface iERC20 { event Transfer(address indexed from, address indexed to, uint256 amount); event Approval(address indexed owner, address indexed spender, uint256 amount); function name() external view returns (string memory); function symbol() external view returns (string memory); function decimals() external view returns (uint8); function totalSupply() external view returns (uint256); function balanceOf(address _owner) external view returns (uint256 balance); function transfer(address _to, uint256 _value) external returns (bool success); function transferFrom(address _from, address _to, uint256 _value) external returns (bool success); function approve(address _spender, uint256 _value) external returns (bool success); function allowance(address _owner, address _spender) external view returns (uint256 remaining); } interface iENS { event NewOwner(bytes32 indexed node, bytes32 indexed label, address owner); event Transfer(bytes32 indexed node, address owner); event NewResolver(bytes32 indexed node, address resolver); event NewTTL(bytes32 indexed node, uint64 ttl); event ApprovalForAll(address indexed owner, address indexed operator, bool approved); function setRecord(bytes32 node, address owner, address resolver, uint64 ttl) external; function setSubnodeRecord(bytes32 node, bytes32 label, address owner, address resolver, uint64 ttl) external; function setSubnodeOwner(bytes32 node, bytes32 label, address owner) external returns (bytes32); function setResolver(bytes32 node, address resolver) external; function setOwner(bytes32 node, address owner) external; function setTTL(bytes32 node, uint64 ttl) external; function setApprovalForAll(address operator, bool approved) external; function owner(bytes32 node) external view returns (address); function resolver(bytes32 node) external view returns (address); function ttl(bytes32 node) external view returns (uint64); function recordExists(bytes32 node) external view returns (bool); function isApprovedForAll(address owner, address operator) external view returns (bool); } interface iERC2981 { function royaltyInfo(uint256 _tokenId, uint256 _salePrice) external view returns (address receiver, uint256 royaltyAmount); } interface iERC165 { function supportsInterface(bytes4 interfaceID) external view returns (bool); } interface iERC173 { event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); function owner() external view returns (address); function transferOwnership(address _newOwner) external; } interface iERC721 { event Transfer(address indexed _from, address indexed _to, uint256 indexed _tokenId); event Approval(address indexed _owner, address indexed _approved, uint256 indexed _tokenId); event ApprovalForAll(address indexed _owner, address indexed _operator, bool _approved); function balanceOf(address _owner) external view returns (uint256); function ownerOf(uint256 _tokenId) external view returns (address); function safeTransferFrom(address _from, address _to, uint256 _tokenId, bytes memory data) external payable; function safeTransferFrom(address _from, address _to, uint256 _tokenId) external payable; function transferFrom(address _from, address _to, uint256 _tokenId) external payable; function approve(address _approved, uint256 _tokenId) external payable; function setApprovalForAll(address _operator, bool _approved) external; function getApproved(uint256 _tokenId) external view returns (address); function isApprovedForAll(address _owner, address _operator) external view returns (bool); } interface iERC721Receiver { function onERC721Received(address _operator, address _from, uint256 _tokenId, bytes memory _data) external returns (bytes4); } interface iERC721Metadata { function name() external view returns (string memory _name); function symbol() external view returns (string memory _symbol); function tokenURI(uint256 _tokenId) external view returns (string memory); } interface iBENSYC { function totalSupply() external view returns (uint256); function Dev() external view returns (address); function Namehash2ID(bytes32 node) external view returns (uint256); function ID2Namehash(uint256 id) external view returns (bytes32); function ownerOf(uint256 id) external view returns (address); } interface iToken { function transferFrom(address _from, address _to, uint256 _tokenId) external payable; }
//SPDX-License-Identifier: WTFPL v6.9 pragma solidity >0.8.0 <0.9.0; // Utility functions library Util { /** * @dev Convert uint value to string number * @param value : uint value to be converted * @return : number as string */ function toString(uint256 value) internal pure returns (string memory) { // Inspired by OraclizeAPI's implementation - MIT licence // https://github.com/oraclize/ethereum-api/blob/b42146b063c7d6ee1358846c198246239e9360e8/oraclizeAPI_0.4.25.sol if (value == 0) { return "0"; } uint256 temp = value; uint256 digits; while (temp != 0) { digits++; temp /= 10; } bytes memory buffer = new bytes(digits); while (value != 0) { digits -= 1; buffer[digits] = bytes1(uint8(48 + uint256(value % 10))); value /= 10; } return string(buffer); } /** * @dev * @param buffer : bytes to be converted to hex * @return : hex string */ function toHexString(bytes memory buffer) internal pure returns (string memory) { bytes memory converted = new bytes(buffer.length * 2); bytes memory _base = "0123456789abcdef"; for (uint256 i; i < buffer.length; i++) { converted[i * 2] = _base[uint8(buffer[i]) / 16]; converted[i * 2 + 1] = _base[uint8(buffer[i]) % 16]; } return string(abi.encodePacked("0x", converted)); } }
//SPDX-License-Identifier: WTFPL v6.9 pragma solidity >0.8.0 <0.9.0; import "src/Interface.sol"; /** * @title BENSYC Definitions */ abstract contract BENSYC { /// @dev : ENS Contract Interface iENS public ENS; /// @dev Pause/Resume contract bool public active = false; /// @dev : Controller/Dev address address public Dev; /// @dev : Modifier to allow only dev modifier onlyDev() { if (msg.sender != Dev) { revert OnlyDev(Dev, msg.sender); } _; } // ERC721 details string public name = "BoredENSYachtClub.eth"; string public symbol = "BENSYC"; /// @dev : Default resolver used by this contract address public DefaultResolver; /// @dev : Current/Live supply of subdomains uint256 public totalSupply; /// @dev : $ETH per subdomain mint uint256 public mintPrice = 0.01 ether; /// @dev : Opensea Contract URI string public contractURI = "ipfs://QmceyxoNqfPv1LNfYnmgxasXr8m8ghC3TbYuFbbqhH8pfV"; /// @dev : ERC2981 Royalty info; 5 = 5% uint256 public royalty = 5; /// @dev : IPFS hash of metadata directory string public metaIPFS = "QmYgWXKADuSgWziNgmpYa4PAmhFL3W7aGLR5C1dkRuNGfM"; mapping(address => uint256) public balanceOf; mapping(uint256 => address) internal _ownerOf; mapping(uint256 => address) public getApproved; mapping(address => mapping(address => bool)) public isApprovedForAll; mapping(bytes4 => bool) public supportsInterface; mapping(uint256 => bytes32) public ID2Labelhash; mapping(bytes32 => uint256) public Namehash2ID; event Transfer(address indexed from, address indexed to, uint256 indexed id); event Approval(address indexed _owner, address indexed approved, uint256 indexed id); event ApprovalForAll(address indexed _owner, address indexed operator, bool approved); event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); error Unauthorized(address operator, address owner, uint256 id); error NotSubdomainOwner(address owner, address from, uint256 id); error InsufficientEtherSent(uint256 size, uint256 yourSize); error ERC721IncompatibleReceiver(address addr); error OnlyDev(address _dev, address _you); error InvalidTokenID(uint256 id); error MintingPaused(); error MintEnded(); error ZeroAddress(); error OversizedBatch(); error TooSoonToMint(); modifier isValidToken(uint256 id) { if (id >= totalSupply) { revert InvalidTokenID(id); } _; } /** * @dev : setInterface * @param sig : signature * @param value : boolean */ function setInterface(bytes4 sig, bool value) external payable onlyDev { require(sig != 0xffffffff, "INVALID_INTERFACE_SELECTOR"); supportsInterface[sig] = value; } /** * @dev : withdraw ether to multisig, anyone can trigger */ function withdrawEther() external payable { (bool ok,) = Dev.call{value: address(this).balance}(""); require(ok, "ETH_TRANSFER_FAILED"); } /** * @dev : to be used in case some tokens get locked in the contract * @param token : token to release */ function withdrawToken(address token) external payable { iERC20(token).transferFrom(address(this), Dev, iERC20(token).balanceOf(address(this))); } /// @dev : revert on fallback fallback() external payable { revert(); } /// @dev : revert on receive receive() external payable { revert(); } }
{ "remappings": [ "ds-test/=lib/forge-std/lib/ds-test/src/", "forge-std/=lib/forge-std/src/" ], "optimizer": { "enabled": true, "runs": 6666 }, "metadata": { "bytecodeHash": "ipfs" }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "evmVersion": "london", "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_resolver","type":"address"},{"internalType":"uint256","name":"_maxSupply","type":"uint256"},{"internalType":"uint256","name":"_startTime","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"ERC721IncompatibleReceiver","type":"error"},{"inputs":[{"internalType":"uint256","name":"size","type":"uint256"},{"internalType":"uint256","name":"yourSize","type":"uint256"}],"name":"InsufficientEtherSent","type":"error"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"InvalidTokenID","type":"error"},{"inputs":[],"name":"MintEnded","type":"error"},{"inputs":[],"name":"MintingPaused","type":"error"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"id","type":"uint256"}],"name":"NotSubdomainOwner","type":"error"},{"inputs":[{"internalType":"address","name":"_dev","type":"address"},{"internalType":"address","name":"_you","type":"address"}],"name":"OnlyDev","type":"error"},{"inputs":[],"name":"OversizedBatch","type":"error"},{"inputs":[],"name":"TooSoonToMint","type":"error"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"id","type":"uint256"}],"name":"Unauthorized","type":"error"},{"inputs":[],"name":"ZeroAddress","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_owner","type":"address"},{"indexed":true,"internalType":"address","name":"approved","type":"address"},{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_owner","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"bool","name":"approved","type":"bool"}],"name":"ApprovalForAll","type":"event"},{"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":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"uint256","name":"id","type":"uint256"}],"name":"Transfer","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"DefaultResolver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Dev","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DomainHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ENS","outputs":[{"internalType":"contract iENS","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"ID2Labelhash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"ID2Namehash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"Namehash2ID","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"active","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"approved","type":"address"},{"internalType":"uint256","name":"id","type":"uint256"}],"name":"approve","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"batchSize","type":"uint256"}],"name":"batchMint","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"contractURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"getApproved","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"isApprovedForAll","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"metaIPFS","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"mint","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"mintPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"ownerOf","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"royalty","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"_salePrice","type":"uint256"}],"name":"royaltyInfo","outputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"id","type":"uint256"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"bool","name":"approved","type":"bool"}],"name":"setApprovalForAll","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"string","name":"_contractURI","type":"string"}],"name":"setContractURI","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_resolver","type":"address"}],"name":"setDefaultResolver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"sig","type":"bytes4"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setInterface","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_royalty","type":"uint256"}],"name":"setRoyalty","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes4","name":"","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"toggleActive","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"tokenURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"id","type":"uint256"}],"name":"transferFrom","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"newDev","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawEther","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"withdrawToken","outputs":[],"stateMutability":"payable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6000805460ff60a01b19169055610120604052601560e09081527f426f726564454e535961636874436c75622e6574680000000000000000000000610100526002906200004d908262000380565b5060408051808201909152600681526542454e53594360d01b60208201526003906200007a908262000380565b50662386f26fc1000060065560405180606001604052806035815260200162002bb160359139600790620000af908262000380565b5060056008556040518060600160405280602e815260200162002b83602e9139600990620000de908262000380565b50348015620000ec57600080fd5b5060405162002be638038062002be68339810160408190526200010f916200044c565b60018054336001600160a01b031991821617909155600080546e0c2e074ec69a0dfb2997ba6c7d2e1e908316178155600480549092166001600160a01b038616179091556040805160208101929092527f4f5b812789fc606be1b3b16908db13fc7a9adf7ca72641f84d75b47069d3d7f09082015260600160408051601f198184030181528282528051602091820120908301527f7a46b638f71fee598932cc3ef366f2f3dcdae81da0064fba529d5ae43b3ac9c59082015260600160408051808303601f19018152919052805160209182012060a05260809290925260c052600e9052507ff78053c79e0b9aa452e27b1a016da828f8da009fc4e41d10c85bd3a969c7facb8054600160ff1991821681179092557f2128e120182d3aad40be1b13f6e6837469325eed442c0118fa5598c7f671c92b80548216831790557fee4d32f332f0a2d0ddc34ffb2ec7a1b8568e915f8f5b625da8ece9305abb079a80548216831790557facee4afab9ecaa8ae5295b11b5f85101d139b31d8872b02073faef8923dbb604805482168317905563152a902d60e11b6000527fe13efcc3391fd06a1796af9f3856980176fe91811e54bc42ace51e572d1d17c88054909116909117905562000491565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200030657607f821691505b6020821081036200032757634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200037b57600081815260208120601f850160051c81016020861015620003565750805b601f850160051c820191505b81811015620003775782815560010162000362565b5050505b505050565b81516001600160401b038111156200039c576200039c620002db565b620003b481620003ad8454620002f1565b846200032d565b602080601f831160018114620003ec5760008415620003d35750858301515b600019600386901b1c1916600185901b17855562000377565b600085815260208120601f198616915b828110156200041d57888601518255948401946001909101908401620003fc565b50858210156200043c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000806000606084860312156200046257600080fd5b83516001600160a01b03811681146200047a57600080fd5b602085015160409095015190969495509392505050565b60805160a05160c05161267c620005076000396000818161059c015281816109bd0152610f7a0152600081816105d001528181610b1d01528181610bc90152818161111e015281816111ca015281816115340152611bb901526000818161075801528181610a170152610fde015261267c6000f3fe6080604052600436106102be5760003560e01c80637362377b1161016e578063a37f9f99116100cb578063c87b56dd1161007f578063e8a3d48511610064578063e8a3d4851461077a578063e985e9c51461078f578063f2fde38b146107ca57600080fd5b8063c87b56dd14610726578063d5abeb011461074657600080fd5b8063bb8762c8116100b0578063bb8762c8146106d3578063c0a43a7c146106f3578063c66485b21461070657600080fd5b8063a37f9f9914610693578063b88d4fde146106c057600080fd5b80638da5cb5b1161012257806395d89b411161010757806395d89b411461065657806398adcbba1461066b578063a22cb4651461068057600080fd5b80638da5cb5b14610618578063938e3d7b1461063657600080fd5b80638315ae65116101535780638315ae65146105be5780638467be0d146105f2578063894760691461060557600080fd5b80637362377b1461058257806378e979251461058a57600080fd5b806323b872dd1161021c57806342842e0e116101d05780636817c76c116101b55780636817c76c146105125780636eada5aa1461052857806370a082311461055557600080fd5b806342842e0e146104555780636352211e146104f257600080fd5b806329ee566c1161020157806329ee566c1461047d5780632a55205a146104935780634209a2e1146104d257600080fd5b806323b872dd1461045557806329c68dc11461046857600080fd5b8063081812fc116102735780631249c58b116102585780631249c58b1461040957806318160ddd146104115780631d2e2cc41461043557600080fd5b8063081812fc146103be578063095ea7b3146103f457600080fd5b806301ffc9a7116102a457806301ffc9a71461032a57806302fb0c5e1461036a57806306fdde031461039c57600080fd5b8062b7aff7146102cd57806301e51ae81461030a57600080fd5b366102c857600080fd5b600080fd5b3480156102d957600080fd5b506004546102ed906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561031657600080fd5b506001546102ed906001600160a01b031681565b34801561033657600080fd5b5061035a610345366004611e78565b600e6020526000908152604090205460ff1681565b6040519015158152602001610301565b34801561037657600080fd5b5060005461035a9074010000000000000000000000000000000000000000900460ff1681565b3480156103a857600080fd5b506103b16107ea565b6040516103019190611eec565b3480156103ca57600080fd5b506102ed6103d9366004611eff565b600c602052600090815260409020546001600160a01b031681565b610407610402366004611f34565b610878565b005b610407610967565b34801561041d57600080fd5b5061042760055481565b604051908152602001610301565b34801561044157600080fd5b506000546102ed906001600160a01b031681565b610407610463366004611f5e565b610ca7565b34801561047457600080fd5b50610407610cc7565b34801561048957600080fd5b5061042760085481565b34801561049f57600080fd5b506104b36104ae366004611f9a565b610d6d565b604080516001600160a01b039093168352602083019190915201610301565b3480156104de57600080fd5b506104076104ed366004611eff565b610da4565b3480156104fe57600080fd5b506102ed61050d366004611eff565b610e02565b34801561051e57600080fd5b5061042760065481565b34801561053457600080fd5b50610427610543366004611eff565b600f6020526000908152604090205481565b34801561056157600080fd5b50610427610570366004611fbc565b600a6020526000908152604090205481565b610407610e64565b34801561059657600080fd5b506104277f000000000000000000000000000000000000000000000000000000000000000081565b3480156105ca57600080fd5b506104277f000000000000000000000000000000000000000000000000000000000000000081565b610407610600366004611eff565b610f24565b610407610613366004611fbc565b6112af565b34801561062457600080fd5b506001546001600160a01b03166102ed565b34801561064257600080fd5b50610407610651366004611fd7565b6113d5565b34801561066257600080fd5b506103b161143b565b34801561067757600080fd5b506103b1611448565b61040761068e366004612057565b611455565b34801561069f57600080fd5b506104276106ae366004611eff565b60106020526000908152604090205481565b6104076106ce3660046120bd565b6114df565b3480156106df57600080fd5b506104276106ee366004611eff565b6114f1565b610407610701366004612199565b61159f565b34801561071257600080fd5b50610407610721366004611fbc565b6116e6565b34801561073257600080fd5b506103b1610741366004611eff565b611779565b34801561075257600080fd5b506104277f000000000000000000000000000000000000000000000000000000000000000081565b34801561078657600080fd5b506103b16117ed565b34801561079b57600080fd5b5061035a6107aa3660046121b7565b600d60209081526000928352604080842090915290825290205460ff1681565b3480156107d657600080fd5b506104076107e5366004611fbc565b6117fa565b600280546107f7906121ea565b80601f0160208091040260200160405190810160405280929190818152602001828054610823906121ea565b80156108705780601f1061084557610100808354040283529160200191610870565b820191906000526020600020905b81548152906001019060200180831161085357829003601f168201915b505050505081565b6000818152600b60205260409020546001600160a01b031633146108f6576000818152600b6020526040908190205490517f431ef6160000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b039091166024820152604481018290526064015b60405180910390fd5b6000818152600c602052604080822080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0386169081179091559051839233917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a45050565b60005474010000000000000000000000000000000000000000900460ff166109bb576040517feb56075600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f0000000000000000000000000000000000000000000000000000000000000000421015610a15576040517fcffd304500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000060055410610a70576040517f49084b9400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600654341015610ab9576006546040517f8ad0844f00000000000000000000000000000000000000000000000000000000815260048101919091523460248201526044016108ed565b6005546000610ac7826118c7565b604051602001610ad79190612253565b60408051808303601f1901815290829052805160209091012060008054600480547f5ef2c7f00000000000000000000000000000000000000000000000000000000086527f000000000000000000000000000000000000000000000000000000000000000091860191909152602485018490523360448601526001600160a01b03908116606486015260848501929092529193501690635ef2c7f09060a401600060405180830381600087803b158015610b9057600080fd5b505af1158015610ba4573d6000803e3d6000fd5b5050506000838152600f602090815260408083208590555185935060109291610bfa917f000000000000000000000000000000000000000000000000000000000000000091879101918252602082015260400190565b60408051601f19818403018152918152815160209283012083528282019390935290820160009081209390935560058054600190810190915533808552600a83528385208054909201909155858452600b90915281832080547fffffffffffffffffffffffff0000000000000000000000000000000000000000168217905590518492907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b610cc283838360405180602001604052806000815250611a04565b505050565b6001546001600160a01b03163314610d20576001546040517f8ea458f60000000000000000000000000000000000000000000000000000000081526001600160a01b0390911660048201523360248201526044016108ed565b600080547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff8116740100000000000000000000000000000000000000009182900460ff1615909102179055565b60015460085460009182916001600160a01b0390911690610d8f6064866122cd565b610d9991906122e1565b915091509250929050565b6001546001600160a01b03163314610dfd576001546040517f8ea458f60000000000000000000000000000000000000000000000000000000081526001600160a01b0390911660048201523360248201526044016108ed565b600855565b6000816005548110610e43576040517fb7c882eb000000000000000000000000000000000000000000000000000000008152600481018290526024016108ed565b6000838152600b60205260409020546001600160a01b031691505b50919050565b6001546040516000916001600160a01b03169047908381818185875af1925050503d8060008114610eb1576040519150601f19603f3d011682016040523d82523d6000602084013e610eb6565b606091505b5050905080610f21576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4554485f5452414e534645525f4641494c45440000000000000000000000000060448201526064016108ed565b50565b60005474010000000000000000000000000000000000000000900460ff16610f78576040517feb56075600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f0000000000000000000000000000000000000000000000000000000000000000421015610fd2576040517fcffd304500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600c81118061100d57507f00000000000000000000000000000000000000000000000000000000000000008160055461100b9190612300565b115b15611044576040517f4d6c426100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8060065461105291906122e1565b3410156110a3578060065461106791906122e1565b6040517f8ad0844f00000000000000000000000000000000000000000000000000000000815260048101919091523460248201526044016108ed565b60055460006110b28383612300565b905060005b81831015611292576110c8836118c7565b6040516020016110d89190612253565b60408051808303601f1901815290829052805160209091012060008054600480547f5ef2c7f00000000000000000000000000000000000000000000000000000000086527f000000000000000000000000000000000000000000000000000000000000000091860191909152602485018490523360448601526001600160a01b03908116606486015260848501929092529193501690635ef2c7f09060a401600060405180830381600087803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b5050506000848152600f6020908152604080832085905551869350601092916111fb917f000000000000000000000000000000000000000000000000000000000000000091879101918252602082015260400190565b60408051601f198184030181529181528151602092830120835282820193909352908201600090812093909355858352600b905280822080547fffffffffffffffffffffffff0000000000000000000000000000000000000000163390811790915590518592907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a48260010192506110b7565b5060055550336000908152600a6020526040902080549091019055565b6001546040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482018190526001600160a01b03848116936323b872dd9391169084906370a0823190602401602060405180830381865afa15801561131d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113419190612319565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af11580156113ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113d19190612332565b5050565b6001546001600160a01b0316331461142e576001546040517f8ea458f60000000000000000000000000000000000000000000000000000000081526001600160a01b0390911660048201523360248201526044016108ed565b6007610cc282848361239d565b600380546107f7906121ea565b600980546107f7906121ea565b336000818152600d602090815260408083206001600160a01b0387168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6114eb84848484611a04565b50505050565b6000816005548110611532576040517fb7c882eb000000000000000000000000000000000000000000000000000000008152600481018290526024016108ed565b7f0000000000000000000000000000000000000000000000000000000000000000600f600085815260200190815260200160002054604051602001611581929190918252602082015260400190565b60405160208183030381529060405280519060200120915050919050565b6001546001600160a01b031633146115f8576001546040517f8ea458f60000000000000000000000000000000000000000000000000000000081526001600160a01b0390911660048201523360248201526044016108ed565b7fffffffff000000000000000000000000000000000000000000000000000000008083169003611684576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f494e56414c49445f494e544552464143455f53454c4543544f5200000000000060448201526064016108ed565b7fffffffff00000000000000000000000000000000000000000000000000000000919091166000908152600e6020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055565b6001546001600160a01b0316331461173f576001546040517f8ea458f60000000000000000000000000000000000000000000000000000000081526001600160a01b0390911660048201523360248201526044016108ed565b600480547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b60608160055481106117ba576040517fb7c882eb000000000000000000000000000000000000000000000000000000008152600481018290526024016108ed565b60096117c5846118c7565b6040516020016117d692919061245d565b604051602081830303815290604052915050919050565b600780546107f7906121ea565b6001546001600160a01b03163314611853576001546040517f8ea458f60000000000000000000000000000000000000000000000000000000081526001600160a01b0390911660048201523360248201526044016108ed565b6001546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b60608160000361190a57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115611934578061191e8161257d565b915061192d9050600a836122cd565b915061190e565b60008167ffffffffffffffff81111561194f5761194f61208e565b6040519080825280601f01601f191660200182016040528015611979576020820181803683370190505b5090505b84156119fc5761198e600183612597565b915061199b600a866125aa565b6119a6906030612300565b60f81b8183815181106119bb576119bb6125be565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506119f5600a866122cd565b945061197d565b949350505050565b6001600160a01b038316611a44576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000828152600b60205260409020546001600160a01b03858116911614611ac2576000828152600b6020526040908190205490517f7af40ae60000000000000000000000000000000000000000000000000000000081526001600160a01b0391821660048201529085166024820152604481018390526064016108ed565b6000828152600b60205260409020546001600160a01b03163314801590611b0d57506001600160a01b0384166000908152600d6020908152604080832033845290915290205460ff16155b8015611b3057506000828152600c60205260409020546001600160a01b03163314155b15611b7f576040517f431ef6160000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b0385166024820152604481018390526064016108ed565b60008054838252600f6020526040918290205491517f06ab59230000000000000000000000000000000000000000000000000000000081527f0000000000000000000000000000000000000000000000000000000000000000600482015260248101929092526001600160a01b03858116604484015216906306ab5923906064016020604051808303816000875af1158015611c1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c439190612319565b506001600160a01b038085166000818152600a60209081526040808320805460001901905593871680835284832080546001019055868352600b825284832080547fffffffffffffffffffffffff00000000000000000000000000000000000000009081168317909155600c90925284832080549092169091559251859392917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a46001600160a01b0383163b156114eb576040517f150b7a020000000000000000000000000000000000000000000000000000000081526001600160a01b0384169063150b7a0290611d419033908890879087906004016125ed565b6020604051808303816000875af1925050508015611d7c575060408051601f3d908101601f19168201909252611d7991810190612629565b60015b611dbd576040517f3a9f8cb30000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201526024016108ed565b7fffffffff0000000000000000000000000000000000000000000000000000000081167f150b7a020000000000000000000000000000000000000000000000000000000014611e43576040517f3a9f8cb30000000000000000000000000000000000000000000000000000000081526001600160a01b03851660048201526024016108ed565b5050505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114610f2157600080fd5b600060208284031215611e8a57600080fd5b8135611e9581611e4a565b9392505050565b60005b83811015611eb7578181015183820152602001611e9f565b50506000910152565b60008151808452611ed8816020860160208601611e9c565b601f01601f19169290920160200192915050565b602081526000611e956020830184611ec0565b600060208284031215611f1157600080fd5b5035919050565b80356001600160a01b0381168114611f2f57600080fd5b919050565b60008060408385031215611f4757600080fd5b611f5083611f18565b946020939093013593505050565b600080600060608486031215611f7357600080fd5b611f7c84611f18565b9250611f8a60208501611f18565b9150604084013590509250925092565b60008060408385031215611fad57600080fd5b50508035926020909101359150565b600060208284031215611fce57600080fd5b611e9582611f18565b60008060208385031215611fea57600080fd5b823567ffffffffffffffff8082111561200257600080fd5b818501915085601f83011261201657600080fd5b81358181111561202557600080fd5b86602082850101111561203757600080fd5b60209290920196919550909350505050565b8015158114610f2157600080fd5b6000806040838503121561206a57600080fd5b61207383611f18565b9150602083013561208381612049565b809150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080600080608085870312156120d357600080fd5b6120dc85611f18565b93506120ea60208601611f18565b925060408501359150606085013567ffffffffffffffff8082111561210e57600080fd5b818701915087601f83011261212257600080fd5b8135818111156121345761213461208e565b604051601f8201601f19908116603f0116810190838211818310171561215c5761215c61208e565b816040528281528a602084870101111561217557600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b600080604083850312156121ac57600080fd5b823561207381611e4a565b600080604083850312156121ca57600080fd5b6121d383611f18565b91506121e160208401611f18565b90509250929050565b600181811c908216806121fe57607f821691505b602082108103610e5e577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60008151612249818560208601611e9c565b9290920192915050565b60008251612265818460208701611e9c565b9190910192915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000826122dc576122dc61226f565b500490565b60008160001904831182151516156122fb576122fb61229e565b500290565b808201808211156123135761231361229e565b92915050565b60006020828403121561232b57600080fd5b5051919050565b60006020828403121561234457600080fd5b8151611e9581612049565b601f821115610cc257600081815260208120601f850160051c810160208610156123765750805b601f850160051c820191505b8181101561239557828155600101612382565b505050505050565b67ffffffffffffffff8311156123b5576123b561208e565b6123c9836123c383546121ea565b8361234f565b6000601f8411600181146123fd57600085156123e55750838201355b600019600387901b1c1916600186901b178355611e43565b600083815260209020601f19861690835b8281101561242e578685013582556020948501946001909201910161240e565b508682101561244b5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b7f697066733a2f2f0000000000000000000000000000000000000000000000000081526000600760008554612491816121ea565b600182811680156124a957600181146124e057612513565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008416868901528583151584028901019450612513565b8960005260208060002060005b858110156125085781548b82018a01529084019082016124ed565b505050858389010194505b507f2f00000000000000000000000000000000000000000000000000000000000000845261254381850189612237565b945050505050612572817f2e6a736f6e0000000000000000000000000000000000000000000000000000009052565b600501949350505050565b600060001982036125905761259061229e565b5060010190565b818103818111156123135761231361229e565b6000826125b9576125b961226f565b500690565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60006001600160a01b0380871683528086166020840152508360408301526080606083015261261f6080830184611ec0565b9695505050505050565b60006020828403121561263b57600080fd5b8151611e9581611e4a56fea2646970667358221220975e24b3039c29aee7abb55762567ff133f686933fe93cf0359531a2e2fd9c2264736f6c63430008100033516d596757584b4144755367577a694e676d7059613450416d68464c33573761474c52354331646b52754e47664d697066733a2f2f516d636579786f4e71665076314c4e66596e6d677861735872386d3867684333546259754662627168483870665600000000000000000000000028b16971b1331a294c13c3a1012f0cd0577fa130000000000000000000000000000000000000000000000000000000000000271000000000000000000000000000000000000000000000000000000000631b2ac0
Deployed Bytecode
0x6080604052600436106102be5760003560e01c80637362377b1161016e578063a37f9f99116100cb578063c87b56dd1161007f578063e8a3d48511610064578063e8a3d4851461077a578063e985e9c51461078f578063f2fde38b146107ca57600080fd5b8063c87b56dd14610726578063d5abeb011461074657600080fd5b8063bb8762c8116100b0578063bb8762c8146106d3578063c0a43a7c146106f3578063c66485b21461070657600080fd5b8063a37f9f9914610693578063b88d4fde146106c057600080fd5b80638da5cb5b1161012257806395d89b411161010757806395d89b411461065657806398adcbba1461066b578063a22cb4651461068057600080fd5b80638da5cb5b14610618578063938e3d7b1461063657600080fd5b80638315ae65116101535780638315ae65146105be5780638467be0d146105f2578063894760691461060557600080fd5b80637362377b1461058257806378e979251461058a57600080fd5b806323b872dd1161021c57806342842e0e116101d05780636817c76c116101b55780636817c76c146105125780636eada5aa1461052857806370a082311461055557600080fd5b806342842e0e146104555780636352211e146104f257600080fd5b806329ee566c1161020157806329ee566c1461047d5780632a55205a146104935780634209a2e1146104d257600080fd5b806323b872dd1461045557806329c68dc11461046857600080fd5b8063081812fc116102735780631249c58b116102585780631249c58b1461040957806318160ddd146104115780631d2e2cc41461043557600080fd5b8063081812fc146103be578063095ea7b3146103f457600080fd5b806301ffc9a7116102a457806301ffc9a71461032a57806302fb0c5e1461036a57806306fdde031461039c57600080fd5b8062b7aff7146102cd57806301e51ae81461030a57600080fd5b366102c857600080fd5b600080fd5b3480156102d957600080fd5b506004546102ed906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561031657600080fd5b506001546102ed906001600160a01b031681565b34801561033657600080fd5b5061035a610345366004611e78565b600e6020526000908152604090205460ff1681565b6040519015158152602001610301565b34801561037657600080fd5b5060005461035a9074010000000000000000000000000000000000000000900460ff1681565b3480156103a857600080fd5b506103b16107ea565b6040516103019190611eec565b3480156103ca57600080fd5b506102ed6103d9366004611eff565b600c602052600090815260409020546001600160a01b031681565b610407610402366004611f34565b610878565b005b610407610967565b34801561041d57600080fd5b5061042760055481565b604051908152602001610301565b34801561044157600080fd5b506000546102ed906001600160a01b031681565b610407610463366004611f5e565b610ca7565b34801561047457600080fd5b50610407610cc7565b34801561048957600080fd5b5061042760085481565b34801561049f57600080fd5b506104b36104ae366004611f9a565b610d6d565b604080516001600160a01b039093168352602083019190915201610301565b3480156104de57600080fd5b506104076104ed366004611eff565b610da4565b3480156104fe57600080fd5b506102ed61050d366004611eff565b610e02565b34801561051e57600080fd5b5061042760065481565b34801561053457600080fd5b50610427610543366004611eff565b600f6020526000908152604090205481565b34801561056157600080fd5b50610427610570366004611fbc565b600a6020526000908152604090205481565b610407610e64565b34801561059657600080fd5b506104277f00000000000000000000000000000000000000000000000000000000631b2ac081565b3480156105ca57600080fd5b506104277f683f1742270402529d673af715ddbd79008c00e88f44a3ec63ba65f9927903e481565b610407610600366004611eff565b610f24565b610407610613366004611fbc565b6112af565b34801561062457600080fd5b506001546001600160a01b03166102ed565b34801561064257600080fd5b50610407610651366004611fd7565b6113d5565b34801561066257600080fd5b506103b161143b565b34801561067757600080fd5b506103b1611448565b61040761068e366004612057565b611455565b34801561069f57600080fd5b506104276106ae366004611eff565b60106020526000908152604090205481565b6104076106ce3660046120bd565b6114df565b3480156106df57600080fd5b506104276106ee366004611eff565b6114f1565b610407610701366004612199565b61159f565b34801561071257600080fd5b50610407610721366004611fbc565b6116e6565b34801561073257600080fd5b506103b1610741366004611eff565b611779565b34801561075257600080fd5b506104277f000000000000000000000000000000000000000000000000000000000000271081565b34801561078657600080fd5b506103b16117ed565b34801561079b57600080fd5b5061035a6107aa3660046121b7565b600d60209081526000928352604080842090915290825290205460ff1681565b3480156107d657600080fd5b506104076107e5366004611fbc565b6117fa565b600280546107f7906121ea565b80601f0160208091040260200160405190810160405280929190818152602001828054610823906121ea565b80156108705780601f1061084557610100808354040283529160200191610870565b820191906000526020600020905b81548152906001019060200180831161085357829003601f168201915b505050505081565b6000818152600b60205260409020546001600160a01b031633146108f6576000818152600b6020526040908190205490517f431ef6160000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b039091166024820152604481018290526064015b60405180910390fd5b6000818152600c602052604080822080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0386169081179091559051839233917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259190a45050565b60005474010000000000000000000000000000000000000000900460ff166109bb576040517feb56075600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f00000000000000000000000000000000000000000000000000000000631b2ac0421015610a15576040517fcffd304500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000271060055410610a70576040517f49084b9400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600654341015610ab9576006546040517f8ad0844f00000000000000000000000000000000000000000000000000000000815260048101919091523460248201526044016108ed565b6005546000610ac7826118c7565b604051602001610ad79190612253565b60408051808303601f1901815290829052805160209091012060008054600480547f5ef2c7f00000000000000000000000000000000000000000000000000000000086527f683f1742270402529d673af715ddbd79008c00e88f44a3ec63ba65f9927903e491860191909152602485018490523360448601526001600160a01b03908116606486015260848501929092529193501690635ef2c7f09060a401600060405180830381600087803b158015610b9057600080fd5b505af1158015610ba4573d6000803e3d6000fd5b5050506000838152600f602090815260408083208590555185935060109291610bfa917f683f1742270402529d673af715ddbd79008c00e88f44a3ec63ba65f9927903e491879101918252602082015260400190565b60408051601f19818403018152918152815160209283012083528282019390935290820160009081209390935560058054600190810190915533808552600a83528385208054909201909155858452600b90915281832080547fffffffffffffffffffffffff0000000000000000000000000000000000000000168217905590518492907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b610cc283838360405180602001604052806000815250611a04565b505050565b6001546001600160a01b03163314610d20576001546040517f8ea458f60000000000000000000000000000000000000000000000000000000081526001600160a01b0390911660048201523360248201526044016108ed565b600080547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff8116740100000000000000000000000000000000000000009182900460ff1615909102179055565b60015460085460009182916001600160a01b0390911690610d8f6064866122cd565b610d9991906122e1565b915091509250929050565b6001546001600160a01b03163314610dfd576001546040517f8ea458f60000000000000000000000000000000000000000000000000000000081526001600160a01b0390911660048201523360248201526044016108ed565b600855565b6000816005548110610e43576040517fb7c882eb000000000000000000000000000000000000000000000000000000008152600481018290526024016108ed565b6000838152600b60205260409020546001600160a01b031691505b50919050565b6001546040516000916001600160a01b03169047908381818185875af1925050503d8060008114610eb1576040519150601f19603f3d011682016040523d82523d6000602084013e610eb6565b606091505b5050905080610f21576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4554485f5452414e534645525f4641494c45440000000000000000000000000060448201526064016108ed565b50565b60005474010000000000000000000000000000000000000000900460ff16610f78576040517feb56075600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f00000000000000000000000000000000000000000000000000000000631b2ac0421015610fd2576040517fcffd304500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600c81118061100d57507f00000000000000000000000000000000000000000000000000000000000027108160055461100b9190612300565b115b15611044576040517f4d6c426100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8060065461105291906122e1565b3410156110a3578060065461106791906122e1565b6040517f8ad0844f00000000000000000000000000000000000000000000000000000000815260048101919091523460248201526044016108ed565b60055460006110b28383612300565b905060005b81831015611292576110c8836118c7565b6040516020016110d89190612253565b60408051808303601f1901815290829052805160209091012060008054600480547f5ef2c7f00000000000000000000000000000000000000000000000000000000086527f683f1742270402529d673af715ddbd79008c00e88f44a3ec63ba65f9927903e491860191909152602485018490523360448601526001600160a01b03908116606486015260848501929092529193501690635ef2c7f09060a401600060405180830381600087803b15801561119157600080fd5b505af11580156111a5573d6000803e3d6000fd5b5050506000848152600f6020908152604080832085905551869350601092916111fb917f683f1742270402529d673af715ddbd79008c00e88f44a3ec63ba65f9927903e491879101918252602082015260400190565b60408051601f198184030181529181528151602092830120835282820193909352908201600090812093909355858352600b905280822080547fffffffffffffffffffffffff0000000000000000000000000000000000000000163390811790915590518592907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a48260010192506110b7565b5060055550336000908152600a6020526040902080549091019055565b6001546040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482018190526001600160a01b03848116936323b872dd9391169084906370a0823190602401602060405180830381865afa15801561131d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113419190612319565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af11580156113ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113d19190612332565b5050565b6001546001600160a01b0316331461142e576001546040517f8ea458f60000000000000000000000000000000000000000000000000000000081526001600160a01b0390911660048201523360248201526044016108ed565b6007610cc282848361239d565b600380546107f7906121ea565b600980546107f7906121ea565b336000818152600d602090815260408083206001600160a01b0387168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6114eb84848484611a04565b50505050565b6000816005548110611532576040517fb7c882eb000000000000000000000000000000000000000000000000000000008152600481018290526024016108ed565b7f683f1742270402529d673af715ddbd79008c00e88f44a3ec63ba65f9927903e4600f600085815260200190815260200160002054604051602001611581929190918252602082015260400190565b60405160208183030381529060405280519060200120915050919050565b6001546001600160a01b031633146115f8576001546040517f8ea458f60000000000000000000000000000000000000000000000000000000081526001600160a01b0390911660048201523360248201526044016108ed565b7fffffffff000000000000000000000000000000000000000000000000000000008083169003611684576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f494e56414c49445f494e544552464143455f53454c4543544f5200000000000060448201526064016108ed565b7fffffffff00000000000000000000000000000000000000000000000000000000919091166000908152600e6020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055565b6001546001600160a01b0316331461173f576001546040517f8ea458f60000000000000000000000000000000000000000000000000000000081526001600160a01b0390911660048201523360248201526044016108ed565b600480547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b60608160055481106117ba576040517fb7c882eb000000000000000000000000000000000000000000000000000000008152600481018290526024016108ed565b60096117c5846118c7565b6040516020016117d692919061245d565b604051602081830303815290604052915050919050565b600780546107f7906121ea565b6001546001600160a01b03163314611853576001546040517f8ea458f60000000000000000000000000000000000000000000000000000000081526001600160a01b0390911660048201523360248201526044016108ed565b6001546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b60608160000361190a57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115611934578061191e8161257d565b915061192d9050600a836122cd565b915061190e565b60008167ffffffffffffffff81111561194f5761194f61208e565b6040519080825280601f01601f191660200182016040528015611979576020820181803683370190505b5090505b84156119fc5761198e600183612597565b915061199b600a866125aa565b6119a6906030612300565b60f81b8183815181106119bb576119bb6125be565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506119f5600a866122cd565b945061197d565b949350505050565b6001600160a01b038316611a44576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000828152600b60205260409020546001600160a01b03858116911614611ac2576000828152600b6020526040908190205490517f7af40ae60000000000000000000000000000000000000000000000000000000081526001600160a01b0391821660048201529085166024820152604481018390526064016108ed565b6000828152600b60205260409020546001600160a01b03163314801590611b0d57506001600160a01b0384166000908152600d6020908152604080832033845290915290205460ff16155b8015611b3057506000828152600c60205260409020546001600160a01b03163314155b15611b7f576040517f431ef6160000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b0385166024820152604481018390526064016108ed565b60008054838252600f6020526040918290205491517f06ab59230000000000000000000000000000000000000000000000000000000081527f683f1742270402529d673af715ddbd79008c00e88f44a3ec63ba65f9927903e4600482015260248101929092526001600160a01b03858116604484015216906306ab5923906064016020604051808303816000875af1158015611c1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c439190612319565b506001600160a01b038085166000818152600a60209081526040808320805460001901905593871680835284832080546001019055868352600b825284832080547fffffffffffffffffffffffff00000000000000000000000000000000000000009081168317909155600c90925284832080549092169091559251859392917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a46001600160a01b0383163b156114eb576040517f150b7a020000000000000000000000000000000000000000000000000000000081526001600160a01b0384169063150b7a0290611d419033908890879087906004016125ed565b6020604051808303816000875af1925050508015611d7c575060408051601f3d908101601f19168201909252611d7991810190612629565b60015b611dbd576040517f3a9f8cb30000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201526024016108ed565b7fffffffff0000000000000000000000000000000000000000000000000000000081167f150b7a020000000000000000000000000000000000000000000000000000000014611e43576040517f3a9f8cb30000000000000000000000000000000000000000000000000000000081526001600160a01b03851660048201526024016108ed565b5050505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114610f2157600080fd5b600060208284031215611e8a57600080fd5b8135611e9581611e4a565b9392505050565b60005b83811015611eb7578181015183820152602001611e9f565b50506000910152565b60008151808452611ed8816020860160208601611e9c565b601f01601f19169290920160200192915050565b602081526000611e956020830184611ec0565b600060208284031215611f1157600080fd5b5035919050565b80356001600160a01b0381168114611f2f57600080fd5b919050565b60008060408385031215611f4757600080fd5b611f5083611f18565b946020939093013593505050565b600080600060608486031215611f7357600080fd5b611f7c84611f18565b9250611f8a60208501611f18565b9150604084013590509250925092565b60008060408385031215611fad57600080fd5b50508035926020909101359150565b600060208284031215611fce57600080fd5b611e9582611f18565b60008060208385031215611fea57600080fd5b823567ffffffffffffffff8082111561200257600080fd5b818501915085601f83011261201657600080fd5b81358181111561202557600080fd5b86602082850101111561203757600080fd5b60209290920196919550909350505050565b8015158114610f2157600080fd5b6000806040838503121561206a57600080fd5b61207383611f18565b9150602083013561208381612049565b809150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080600080608085870312156120d357600080fd5b6120dc85611f18565b93506120ea60208601611f18565b925060408501359150606085013567ffffffffffffffff8082111561210e57600080fd5b818701915087601f83011261212257600080fd5b8135818111156121345761213461208e565b604051601f8201601f19908116603f0116810190838211818310171561215c5761215c61208e565b816040528281528a602084870101111561217557600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b600080604083850312156121ac57600080fd5b823561207381611e4a565b600080604083850312156121ca57600080fd5b6121d383611f18565b91506121e160208401611f18565b90509250929050565b600181811c908216806121fe57607f821691505b602082108103610e5e577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60008151612249818560208601611e9c565b9290920192915050565b60008251612265818460208701611e9c565b9190910192915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000826122dc576122dc61226f565b500490565b60008160001904831182151516156122fb576122fb61229e565b500290565b808201808211156123135761231361229e565b92915050565b60006020828403121561232b57600080fd5b5051919050565b60006020828403121561234457600080fd5b8151611e9581612049565b601f821115610cc257600081815260208120601f850160051c810160208610156123765750805b601f850160051c820191505b8181101561239557828155600101612382565b505050505050565b67ffffffffffffffff8311156123b5576123b561208e565b6123c9836123c383546121ea565b8361234f565b6000601f8411600181146123fd57600085156123e55750838201355b600019600387901b1c1916600186901b178355611e43565b600083815260209020601f19861690835b8281101561242e578685013582556020948501946001909201910161240e565b508682101561244b5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b7f697066733a2f2f0000000000000000000000000000000000000000000000000081526000600760008554612491816121ea565b600182811680156124a957600181146124e057612513565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008416868901528583151584028901019450612513565b8960005260208060002060005b858110156125085781548b82018a01529084019082016124ed565b505050858389010194505b507f2f00000000000000000000000000000000000000000000000000000000000000845261254381850189612237565b945050505050612572817f2e6a736f6e0000000000000000000000000000000000000000000000000000009052565b600501949350505050565b600060001982036125905761259061229e565b5060010190565b818103818111156123135761231361229e565b6000826125b9576125b961226f565b500690565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60006001600160a01b0380871683528086166020840152508360408301526080606083015261261f6080830184611ec0565b9695505050505050565b60006020828403121561263b57600080fd5b8151611e9581611e4a56fea2646970667358221220975e24b3039c29aee7abb55762567ff133f686933fe93cf0359531a2e2fd9c2264736f6c63430008100033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000028b16971b1331a294c13c3a1012f0cd0577fa130000000000000000000000000000000000000000000000000000000000000271000000000000000000000000000000000000000000000000000000000631b2ac0
-----Decoded View---------------
Arg [0] : _resolver (address): 0x28b16971b1331a294C13c3a1012f0Cd0577FA130
Arg [1] : _maxSupply (uint256): 10000
Arg [2] : _startTime (uint256): 1662724800
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 00000000000000000000000028b16971b1331a294c13c3a1012f0cd0577fa130
Arg [1] : 0000000000000000000000000000000000000000000000000000000000002710
Arg [2] : 00000000000000000000000000000000000000000000000000000000631b2ac0
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.