[ { "inputs": [ { "internalType": "string", "name": "baseURI_", "type": "string" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "address", "name": "owner", "type": "address" } ], "name": "ERC721IncorrectOwner", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "operator", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "ERC721InsufficientApproval", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "approver", "type": "address" } ], "name": "ERC721InvalidApprover", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "operator", "type": "address" } ], "name": "ERC721InvalidOperator", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "ERC721InvalidOwner", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "receiver", "type": "address" } ], "name": "ERC721InvalidReceiver", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" } ], "name": "ERC721InvalidSender", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "ERC721NonexistentToken", "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": "tokenId", "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": "initiator", "type": "address" }, { "indexed": true, "internalType": "address", "name": "receiver", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "keyId", "type": "uint256" } ], "name": "FaucetDried", "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": "tokenId", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "approve", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "address", "name": "receiver", "type": "address" } ], "name": "dryFaucet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getApproved", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getMintPrice", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_ref", "type": "address" } ], "name": "getMintRefShareByAddress", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "operator", "type": "address" } ], "name": "isApprovedForAll", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "mintPrice", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "mintRefShare", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "ownerOf", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address payable", "name": "ref", "type": "address" } ], "name": "safeMint", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "safeTransferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "safeTransferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "operator", "type": "address" }, { "internalType": "bool", "name": "approved", "type": "bool" } ], "name": "setApprovalForAll", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newPrice", "type": "uint256" } ], "name": "setMintPrice", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint8", "name": "_nRef", "type": "uint8" } ], "name": "setMintRefShare", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "addresses", "type": "address[]" }, { "internalType": "uint8[]", "name": "percentages", "type": "uint8[]" } ], "name": "setOtherMintRefShares", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes4", "name": "interfaceId", "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": [ { "internalType": "uint256", "name": "tokenId", "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": "tokenId", "type": "uint256" } ], "name": "transferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address payable", "name": "to", "type": "address" } ], "name": "withdraw", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
608060405234801562000010575f80fd5b5060405162001be138038062001be18339810160408190526200003391620000f0565b6040518060400160405280600f81526020016e427269636b732042657261204b657960881b8152506040518060400160405280600581526020016462624b455960d81b815250815f90816200008991906200024a565b5060016200009882826200024a565b5060069150620000ab905082826200024a565b5050600880546001600160a01b0319163317905565ba72482dd000600955600a805460ff1916601917905562000312565b634e487b7160e01b5f52604160045260245ffd5b5f602080838503121562000102575f80fd5b82516001600160401b038082111562000119575f80fd5b818501915085601f8301126200012d575f80fd5b815181811115620001425762000142620000dc565b604051601f8201601f19908116603f011681019083821181831017156200016d576200016d620000dc565b81604052828152888684870101111562000185575f80fd5b5f93505b82841015620001a8578484018601518185018701529285019262000189565b5f86848301015280965050505050505092915050565b600181811c90821680620001d357607f821691505b602082108103620001f257634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111562000245575f81815260208120601f850160051c81016020861015620002205750805b601f850160051c820191505b8181101562000241578281556001016200022c565b5050505b505050565b81516001600160401b03811115620002665762000266620000dc565b6200027e81620002778454620001be565b84620001f8565b602080601f831160018114620002b4575f84156200029c5750858301515b5f19600386901b1c1916600185901b17855562000241565b5f85815260208120601f198616915b82811015620002e457888601518255948401946001909101908401620002c3565b50858210156200030257878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b6118c180620003205f395ff3fe608060405260043610610147575f3560e01c806370a08231116100b3578063c0b80aa11161006d578063c0b80aa11461037d578063c87b56dd1461039c578063da548e38146103bb578063dc5320c7146103e6578063e985e9c514610405578063f4a0a52814610424575f80fd5b806370a08231146102d9578063818c410e146102f857806395d89b4114610317578063a22cb4651461032b578063a7f93ebd1461034a578063b88d4fde1461035e575f80fd5b806323b872dd1161010457806323b872dd1461023557806340d097c31461025457806342842e0e1461026757806351cff8d9146102865780636352211e146102a55780636817c76c146102c4575f80fd5b806301ffc9a71461014b57806306fdde031461017f578063081812fc146101a0578063095ea7b3146101d75780630d022b5b146101f857806318160ddd14610217575b5f80fd5b348015610156575f80fd5b5061016a61016536600461135a565b610443565b60405190151581526020015b60405180910390f35b34801561018a575f80fd5b50610193610494565b60405161017691906113b8565b3480156101ab575f80fd5b506101bf6101ba3660046113ca565b610523565b6040516001600160a01b039091168152602001610176565b3480156101e2575f80fd5b506101f66101f13660046113f5565b61054a565b005b348015610203575f80fd5b506101f661021236600461150b565b610559565b348015610222575f80fd5b506007545b604051908152602001610176565b348015610240575f80fd5b506101f661024f3660046115c7565b61065c565b6101f6610262366004611605565b6106e5565b348015610272575f80fd5b506101f66102813660046115c7565b6108e4565b348015610291575f80fd5b506101f66102a0366004611605565b6108fe565b3480156102b0575f80fd5b506101bf6102bf3660046113ca565b61098d565b3480156102cf575f80fd5b5061022760095481565b3480156102e4575f80fd5b506102276102f3366004611605565b610997565b348015610303575f80fd5b506101f6610312366004611620565b6109dc565b348015610322575f80fd5b50610193610a39565b348015610336575f80fd5b506101f6610345366004611639565b610a48565b348015610355575f80fd5b50600954610227565b348015610369575f80fd5b506101f6610378366004611674565b610a53565b348015610388575f80fd5b506101f6610397366004611731565b610a6a565b3480156103a7575f80fd5b506101936103b63660046113ca565b610b07565b3480156103c6575f80fd5b50600a546103d49060ff1681565b60405160ff9091168152602001610176565b3480156103f1575f80fd5b506103d4610400366004611605565b610b23565b348015610410575f80fd5b5061016a61041f366004611754565b610b57565b34801561042f575f80fd5b506101f661043e3660046113ca565b610b84565b5f6001600160e01b031982166380ac58cd60e01b148061047357506001600160e01b03198216635b5e139f60e01b145b8061048e57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60605f80546104a290611780565b80601f01602080910402602001604051908101604052809291908181526020018280546104ce90611780565b80156105195780601f106104f057610100808354040283529160200191610519565b820191905f5260205f20905b8154815290600101906020018083116104fc57829003601f168201915b5050505050905090565b5f61052d82610bbe565b505f828152600460205260409020546001600160a01b031661048e565b610555828233610bf6565b5050565b6008546001600160a01b0316331461058c5760405162461bcd60e51b8152600401610583906117b8565b60405180910390fd5b80518251146105cc5760405162461bcd60e51b815260206004820152600c60248201526b436865636b2061727261797360a01b6044820152606401610583565b5f5b8251811015610657578181815181106105e9576105e96117e8565b6020026020010151600b5f858481518110610606576106066117e8565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f6101000a81548160ff021916908360ff160217905550808061064f906117fc565b9150506105ce565b505050565b6001600160a01b03821661068557604051633250574960e11b81525f6004820152602401610583565b5f610691838333610c03565b9050836001600160a01b0316816001600160a01b0316146106df576040516364283d7b60e01b81526001600160a01b0380861660048301526024820184905282166044820152606401610583565b50505050565b6009543410156107375760405162461bcd60e51b815260206004820152601e60248201527f6d73672e76616c7565206d757374206265203e3d206d696e74507269636500006044820152606401610583565b5f3390505f6107496007546001610cf5565b90506107558282610d4b565b6007819055346001600160a01b0384163014610842575f6107796009546064610d64565b90505f61078586610b23565b60ff1690505f6107958383610db2565b90505f876001600160a01b0316826040515f6040518083038185875af1925050503d805f81146107e0576040519150601f19603f3d011682016040523d82523d5f602084013e6107e5565b606091505b50509050806108315760405162461bcd60e51b81526020600482015260186024820152774661696c656420746f2073656e642072656620736861726560401b6044820152606401610583565b61083b8583610e00565b9450505050505b6008546040515f916001600160a01b03169083908381818185875af1925050503d805f811461088c576040519150601f19603f3d011682016040523d82523d5f602084013e610891565b606091505b50509050806108dd5760405162461bcd60e51b81526020600482015260186024820152774661696c656420746f2073656e642072656620736861726560401b6044820152606401610583565b5050505050565b61065783838360405180602001604052805f815250610a53565b6008546001600160a01b031633146109285760405162461bcd60e51b8152600401610583906117b8565b33610931575f80fd5b60405147905f906001600160a01b0384169083908381818185875af1925050503d805f811461097b576040519150601f19603f3d011682016040523d82523d5f602084013e610980565b606091505b5050905080610657575f80fd5b5f61048e82610bbe565b5f6001600160a01b0382166109c1576040516322718ad960e21b81525f6004820152602401610583565b506001600160a01b03165f9081526003602052604090205490565b6008546001600160a01b03163314610a065760405162461bcd60e51b8152600401610583906117b8565b60648160ff1610610a15575f80fd5b5f8160ff1611610a23575f80fd5b600a805460ff191660ff92909216919091179055565b6060600180546104a290611780565b610555338383610e4e565b610a5e84848461065c565b6106df84848484610eec565b610a738261098d565b6001600160a01b0316336001600160a01b031614610ac35760405162461bcd60e51b815260206004820152600d60248201526c2737ba103a34329037bbb732b960991b6044820152606401610583565b610acc8261100b565b60405182906001600160a01b0383169033907f8fd631c073cf5aadcf93e6b3c32cd9140fdf87e0559a01d884e0f55b026d0d88905f90a45050565b6060610b1282610bbe565b505f610b1c611043565b9392505050565b6001600160a01b0381165f908152600b602052604081205460ff168015610b4a5780610b1c565b600a5460ff169392505050565b6001600160a01b039182165f90815260056020908152604080832093909416825291909152205460ff1690565b6008546001600160a01b03163314610bae5760405162461bcd60e51b8152600401610583906117b8565b805f03610bb9575f80fd5b600955565b5f818152600260205260408120546001600160a01b03168061048e57604051637e27328960e01b815260048101849052602401610583565b6106578383836001611052565b5f828152600260205260408120546001600160a01b0390811690831615610c2f57610c2f818486611156565b6001600160a01b03811615610c6957610c4a5f855f80611052565b6001600160a01b0381165f90815260036020526040902080545f190190555b6001600160a01b03851615610c97576001600160a01b0385165f908152600360205260409020805460010190555b5f8481526002602052604080822080546001600160a01b0319166001600160a01b0389811691821790925591518793918516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4949350505050565b5f805f610d0285856111ba565b9150915081610d435760405162461bcd60e51b815260206004820152600d60248201526c11985a5b1959081d1bc8105919609a1b6044820152606401610583565b949350505050565b610555828260405180602001604052805f8152506111e1565b5f805f610d7185856111f7565b9150915081610d435760405162461bcd60e51b815260206004820152600d60248201526c2330b4b632b2103a37902234bb60991b6044820152606401610583565b5f805f610dbf8585611227565b9150915081610d435760405162461bcd60e51b815260206004820152600d60248201526c11985a5b1959081d1bc8135d5b609a1b6044820152606401610583565b5f805f610e0d8585611260565b9150915081610d435760405162461bcd60e51b815260206004820152600d60248201526c2330b4b632b2103a379029bab160991b6044820152606401610583565b6001600160a01b038216610e8057604051630b61174360e31b81526001600160a01b0383166004820152602401610583565b6001600160a01b038381165f81815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b0383163b156106df57604051630a85bd0160e11b81526001600160a01b0384169063150b7a0290610f2e903390889087908790600401611820565b6020604051808303815f875af1925050508015610f68575060408051601f3d908101601f19168201909252610f659181019061185c565b60015b610fcf573d808015610f95576040519150601f19603f3d011682016040523d82523d5f602084013e610f9a565b606091505b5080515f03610fc757604051633250574960e11b81526001600160a01b0385166004820152602401610583565b805181602001fd5b6001600160e01b03198116630a85bd0160e11b146108dd57604051633250574960e11b81526001600160a01b0385166004820152602401610583565b5f6110175f835f610c03565b90506001600160a01b03811661055557604051637e27328960e01b815260048101839052602401610583565b6060600680546104a290611780565b808061106657506001600160a01b03821615155b15611127575f61107584610bbe565b90506001600160a01b038316158015906110a15750826001600160a01b0316816001600160a01b031614155b80156110b457506110b28184610b57565b155b156110dd5760405163a9fbf51f60e01b81526001600160a01b0384166004820152602401610583565b81156111255783856001600160a01b0316826001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b50505f90815260046020526040902080546001600160a01b0319166001600160a01b0392909216919091179055565b611161838383611280565b610657576001600160a01b03831661118f57604051637e27328960e01b815260048101829052602401610583565b60405163177e802f60e01b81526001600160a01b038316600482015260248101829052604401610583565b5f80838301848110156111d3575f8092509250506111da565b6001925090505b9250929050565b6111eb83836112e1565b6106575f848484610eec565b5f80825f0361120a57505f9050806111da565b600183858161121b5761121b611877565b04915091509250929050565b5f80835f0361123b5750600190505f6111da565b8383028385828161124e5761124e611877565b04146111d3575f8092509250506111da565b5f808383111561127457505f9050806111da565b50600193919092039150565b5f6001600160a01b03831615801590610d435750826001600160a01b0316846001600160a01b031614806112b957506112b98484610b57565b80610d435750505f908152600460205260409020546001600160a01b03908116911614919050565b6001600160a01b03821661130a57604051633250574960e11b81525f6004820152602401610583565b5f61131683835f610c03565b90506001600160a01b03811615610657576040516339e3563760e11b81525f6004820152602401610583565b6001600160e01b031981168114611357575f80fd5b50565b5f6020828403121561136a575f80fd5b8135610b1c81611342565b5f81518084525f5b818110156113995760208185018101518683018201520161137d565b505f602082860101526020601f19601f83011685010191505092915050565b602081525f610b1c6020830184611375565b5f602082840312156113da575f80fd5b5035919050565b6001600160a01b0381168114611357575f80fd5b5f8060408385031215611406575f80fd5b8235611411816113e1565b946020939093013593505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561145c5761145c61141f565b604052919050565b5f67ffffffffffffffff82111561147d5761147d61141f565b5060051b60200190565b803560ff81168114611497575f80fd5b919050565b5f82601f8301126114ab575f80fd5b813560206114c06114bb83611464565b611433565b82815260059290921b840181019181810190868411156114de575f80fd5b8286015b84811015611500576114f381611487565b83529183019183016114e2565b509695505050505050565b5f806040838503121561151c575f80fd5b823567ffffffffffffffff80821115611533575f80fd5b818501915085601f830112611546575f80fd5b813560206115566114bb83611464565b82815260059290921b84018101918181019089841115611574575f80fd5b948201945b8386101561159b57853561158c816113e1565b82529482019490820190611579565b965050860135925050808211156115b0575f80fd5b506115bd8582860161149c565b9150509250929050565b5f805f606084860312156115d9575f80fd5b83356115e4816113e1565b925060208401356115f4816113e1565b929592945050506040919091013590565b5f60208284031215611615575f80fd5b8135610b1c816113e1565b5f60208284031215611630575f80fd5b610b1c82611487565b5f806040838503121561164a575f80fd5b8235611655816113e1565b915060208301358015158114611669575f80fd5b809150509250929050565b5f805f8060808587031215611687575f80fd5b8435611692816113e1565b93506020858101356116a3816113e1565b935060408601359250606086013567ffffffffffffffff808211156116c6575f80fd5b818801915088601f8301126116d9575f80fd5b8135818111156116eb576116eb61141f565b6116fd601f8201601f19168501611433565b91508082528984828501011115611712575f80fd5b80848401858401375f8482840101525080935050505092959194509250565b5f8060408385031215611742575f80fd5b823591506020830135611669816113e1565b5f8060408385031215611765575f80fd5b8235611770816113e1565b91506020830135611669816113e1565b600181811c9082168061179457607f821691505b6020821081036117b257634e487b7160e01b5f52602260045260245ffd5b50919050565b602080825260169082015275427269636b733a206e6f7420746865206f776e65722160501b604082015260600190565b634e487b7160e01b5f52603260045260245ffd5b5f6001820161181957634e487b7160e01b5f52601160045260245ffd5b5060010190565b6001600160a01b03858116825284166020820152604081018390526080606082018190525f9061185290830184611375565b9695505050505050565b5f6020828403121561186c575f80fd5b8151610b1c81611342565b634e487b7160e01b5f52601260045260245ffdfea2646970667358221220b9715966495428e84b0c0ec7fae01f5c5e9651d0ba19370589ca29f120c3b5fd64736f6c6343000814003300000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000035697066733a2f2f516d5a674571644b336b4c6476557a6262417662694b4e733753585675356159677a566471366b4b7970506774520000000000000000000000