[ { "inputs": [ { "internalType": "string", "name": "nftName", "type": "string" }, { "internalType": "string", "name": "nftSymbol", "type": "string" }, { "internalType": "string", "name": "baseTokenURI", "type": "string" }, { "internalType": "address", "name": "_royaltyRecipient", "type": "address" }, { "internalType": "uint256", "name": "_startAt", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "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": "uint256", "name": "_id", "type": "uint256" }, { "indexed": true, "internalType": "uint256", "name": "_price", "type": "uint256" } ], "name": "Claim", "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": "tokenId", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "stateMutability": "payable", "type": "fallback" }, { "inputs": [], "name": "DURATION_STEP", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MAX_CLAIM_PER_WALLET", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MAX_MINTABLE", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MAX_PER_CLAIM", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MIN_PRICE", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MintIsOpen", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "ROYALTY_VALUE", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "STARTING_NFT_PRICE", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "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": "n", "type": "uint256" } ], "name": "claim", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "discountRate", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_addr", "type": "address" } ], "name": "getAdmins", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getApproved", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getPublicPrice", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "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": "last_price", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "minted", "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": "tokenId", "type": "uint256" } ], "name": "ownerOf", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "n", "type": "uint256" }, { "internalType": "address", "name": "_adr", "type": "address" } ], "name": "premint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "publicMintedAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "royaltyInfo", "outputs": [ { "internalType": "address", "name": "receiver", "type": "address" }, { "internalType": "uint256", "name": "royaltyAmount", "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": "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": "_addr", "type": "address[]" } ], "name": "setAdmins", "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": "string", "name": "uri", "type": "string" } ], "name": "setBaseUri", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_royaltyRecipient", "type": "address" } ], "name": "setRoyaltyAddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_startAt", "type": "uint256" } ], "name": "setStartAt", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "startAt", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "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": [], "name": "toggleMint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "index", "type": "uint256" } ], "name": "tokenByIndex", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "uint256", "name": "index", "type": "uint256" } ], "name": "tokenOfOwnerByIndex", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "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", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "withdraw", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
671bc16d674ec80000600c5566d362ef4c22c000608052600f805460ff1916600117905560c06040819052600060a08190526200003f916010916200015b565b50600060115560006012553480156200005757600080fd5b50604051620030de380380620030de8339810160408190526200007a91620002b4565b845185908590620000939060009060208501906200015b565b508051620000a99060019060208401906200015b565b505050620000c6620000c06200010560201b60201c565b62000109565b601480546001600160a01b0319166001600160a01b0384161790558251620000f69060109060208601906200015b565b50600d5550620003c192505050565b3390565b600a80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b82805462000169906200036e565b90600052602060002090601f0160209004810192826200018d5760008555620001d8565b82601f10620001a857805160ff1916838001178555620001d8565b82800160010185558215620001d8579182015b82811115620001d8578251825591602001919060010190620001bb565b50620001e6929150620001ea565b5090565b5b80821115620001e65760008155600101620001eb565b600082601f83011262000212578081fd5b81516001600160401b03808211156200022f576200022f620003ab565b604051601f8301601f19908116603f011681019082821181831017156200025a576200025a620003ab565b8160405283815260209250868385880101111562000276578485fd5b8491505b838210156200029957858201830151818301840152908201906200027a565b83821115620002aa57848385830101525b9695505050505050565b600080600080600060a08688031215620002cc578081fd5b85516001600160401b0380821115620002e3578283fd5b620002f189838a0162000201565b9650602088015191508082111562000307578283fd5b6200031589838a0162000201565b955060408801519150808211156200032b578283fd5b506200033a8882890162000201565b606088015190945090506001600160a01b038116811462000359578182fd5b80925050608086015190509295509295909350565b6002810460018216806200038357607f821691505b60208210811415620003a557634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052604160045260246000fd5b608051612cfa620003e460003960008181610a1d01526113660152612cfa6000f3fe6080604052600436106102605760003560e01c80636b907eba11610144578063ad9f20a6116100b6578063e6c0e6d51161007a578063e6c0e6d51461066c578063e985e9c514610681578063ead29d4e146106a1578063f2fde38b146106c1578063f3a133a9146106e1578063fde625e61461070157610267565b8063ad9f20a6146105ed578063b88d4fde14610602578063c744656514610622578063c87b56dd14610637578063d3dd5fe01461065757610267565b806393791b031161010857806393791b031461054357806395d89b4114610558578063a0bcfc7f1461056d578063a22cb4651461058d578063accc1d5e146105ad578063ad5f2210146105cd57610267565b80636b907eba146104cf5780636f7bf4ae146104e457806370a08231146104f9578063715018a6146105195780638da5cb5b1461052e57610267565b8063363e86fe116101dd5780634345bf3d116101a15780634345bf3d146104455780634f02c4201461045a5780634f6ccce71461046f578063538dba3e1461048f5780635471f49f1461029f5780636352211e146104af57610267565b8063363e86fe146103d3578063379607f5146103e85780633ccfd60b146103fb5780633f879faf1461041057806342842e0e1461042557610267565b8063095ea7b311610224578063095ea7b31461033057806318160ddd1461035057806323b872dd146103655780632a55205a146103855780632f745c59146103b357610267565b806301ffc9a714610269578063042e2d0b1461029f57806306d254da146102c157806306fdde03146102e1578063081812fc1461030357610267565b3661026757005b005b34801561027557600080fd5b50610289610284366004612226565b610716565b60405161029691906123d4565b60405180910390f35b3480156102ab57600080fd5b506102b4610729565b6040516102969190612b6b565b3480156102cd57600080fd5b506102676102dc366004612054565b61072e565b3480156102ed57600080fd5b506102f6610798565b60405161029691906123df565b34801561030f57600080fd5b5061032361031e3660046122a4565b61082b565b604051610296919061236a565b34801561033c57600080fd5b5061026761034b36600461218e565b61086e565b34801561035c57600080fd5b506102b4610906565b34801561037157600080fd5b506102676103803660046120a0565b61090c565b34801561039157600080fd5b506103a56103a03660046122de565b610944565b6040516102969291906123bb565b3480156103bf57600080fd5b506102b46103ce36600461218e565b6109a2565b3480156103df57600080fd5b506102b46109f4565b6102676103f63660046122a4565b610aba565b34801561040757600080fd5b50610267610d85565b34801561041c57600080fd5b506102b4610e32565b34801561043157600080fd5b506102676104403660046120a0565b610e38565b34801561045157600080fd5b506102b4610e53565b34801561046657600080fd5b506102b4610e59565b34801561047b57600080fd5b506102b461048a3660046122a4565b610e5f565b34801561049b57600080fd5b506102676104aa3660046122bc565b610eba565b3480156104bb57600080fd5b506103236104ca3660046122a4565b610fc6565b3480156104db57600080fd5b50610289610ffb565b3480156104f057600080fd5b506102b4611004565b34801561050557600080fd5b506102b4610514366004612054565b611009565b34801561052557600080fd5b5061026761104d565b34801561053a57600080fd5b50610323611098565b34801561054f57600080fd5b506102b46110a7565b34801561056457600080fd5b506102f66110ad565b34801561057957600080fd5b5061026761058836600461225e565b6110bc565b34801561059957600080fd5b506102676105a8366004612154565b611112565b3480156105b957600080fd5b506102676105c83660046121b7565b611124565b3480156105d957600080fd5b506102896105e8366004612054565b6111e3565b3480156105f957600080fd5b506102b4611243565b34801561060e57600080fd5b5061026761061d3660046120db565b61124f565b34801561062e57600080fd5b506102b4611288565b34801561064357600080fd5b506102f66106523660046122a4565b61128e565b34801561066357600080fd5b50610267611311565b34801561067857600080fd5b506102b4611364565b34801561068d57600080fd5b5061028961069c36600461206e565b611388565b3480156106ad57600080fd5b506102b46106bc366004612054565b6113b6565b3480156106cd57600080fd5b506102676106dc366004612054565b6113c8565b3480156106ed57600080fd5b506102676106fc3660046122a4565b611436565b34801561070d57600080fd5b506102b461147a565b600061072182611480565b90505b919050565b600a81565b6107366114a5565b6001600160a01b0316610747611098565b6001600160a01b0316146107765760405162461bcd60e51b815260040161076d9061293d565b60405180910390fd5b601480546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080546107a790612c02565b80601f01602080910402602001604051908101604052809291908181526020018280546107d390612c02565b80156108205780601f106107f557610100808354040283529160200191610820565b820191906000526020600020905b81548152906001019060200180831161080357829003601f168201915b505050505090505b90565b6000610836826114a9565b6108525760405162461bcd60e51b815260040161076d906128f1565b506000908152600460205260409020546001600160a01b031690565b600061087982610fc6565b9050806001600160a01b0316836001600160a01b031614156108ad5760405162461bcd60e51b815260040161076d90612a2f565b806001600160a01b03166108bf6114a5565b6001600160a01b031614806108db57506108db8161069c6114a5565b6108f75760405162461bcd60e51b815260040161076d90612747565b61090183836114c6565b505050565b60085490565b61091d6109176114a5565b82611534565b6109395760405162461bcd60e51b815260040161076d90612a70565b6109018383836115b9565b6000828152600b602090815260408083208151808301909252546001600160a01b038116808352600160a01b90910462ffffff1692820183905292916127109061098e9086612ba0565b6109989190612b8c565b9150509250929050565b60006109ad83611009565b82106109cb5760405162461bcd60e51b815260040161076d9061248d565b506001600160a01b03919091166000908152600660209081526040808320938352929052205490565b600080600d5442610a059190612bbf565b90506000610a14607e83612b8c565b90506000610a427f000000000000000000000000000000000000000000000000000000000000000083612ba0565b90506000600d544210610aac5781600c541015610a6d57670429d069189e0000945050505050610828565b81600c54610a7b9190612bbf565b9050670429d069189e0000811015610aa157670429d069189e0000945050505050610828565b935061082892505050565b600c54945050505050610828565b600f5460ff161515600114610ae15760405162461bcd60e51b815260040161076d906129f8565b600d54421015610b035760405162461bcd60e51b815260040161076d90612b0d565b610bdd610b0e610906565b610b189083612b74565b1115610b365760405162461bcd60e51b815260040161076d906123f2565b60008111610b565760405162461bcd60e51b815260040161076d906126e0565b600a811115610b775760405162461bcd60e51b815260040161076d906125ec565b33600090815260156020526040902054600a11610ba65760405162461bcd60e51b815260040161076d90612b36565b33600090815260156020526040902054600a90610bc39083612b74565b1115610be15760405162461bcd60e51b815260040161076d90612972565b6000610beb6109f4565b9050610bf78282612ba0565b341015610c165760405162461bcd60e51b815260040161076d90612879565b3360009081526015602052604081208054849290610c35908490612b74565b9091555060009050610c478383612ba0565b90508060126000828254610c5b9190612b74565b9091555060009050610c6d8234612bbf565b604051909150309083156108fc029084906000818181858888f19350505050158015610c9d573d6000803e3d6000fd5b5060005b84811015610d3157610cbc610cb46114a5565b6011546116ec565b601154601454610cd891906001600160a01b03166103e8611706565b600160116000828254610ceb9190612b74565b90915550506011546040518591907f022e3d29644ead4083349ca84d24bcac368b2461819b70f5921fea15de4dec4d90600090a380610d2981612c3d565b915050610ca1565b50600e8390558015610d7f57610d456114a5565b6001600160a01b03166108fc829081150290604051600060405180830381858888f19350505050158015610d7d573d6000803e3d6000fd5b505b50505050565b60136000610d916114a5565b6001600160a01b0316815260208101919091526040016000205460ff161515600114610dcf5760405162461bcd60e51b815260040161076d90612717565b60004711610def5760405162461bcd60e51b815260040161076d90612460565b610df76114a5565b6001600160a01b03166108fc479081150290604051600060405180830381858888f19350505050158015610e2f573d6000803e3d6000fd5b50565b610bdd81565b6109018383836040518060200160405280600081525061124f565b600c5481565b60115481565b6000610e69610906565b8210610e875760405162461bcd60e51b815260040161076d90612ac1565b60088281548110610ea857634e487b7160e01b600052603260045260246000fd5b90600052602060002001549050919050565b610ec26114a5565b6001600160a01b0316610ed3611098565b6001600160a01b031614610ef95760405162461bcd60e51b815260040161076d9061293d565b60008211610f195760405162461bcd60e51b815260040161076d906126e0565b600a821115610f3a5760405162461bcd60e51b815260040161076d90612837565b60005b8281101561090157610f51826011546116ec565b601154601454610f6d91906001600160a01b03166103e8611706565b600160116000828254610f809190612b74565b9091555050601154604051600091907f022e3d29644ead4083349ca84d24bcac368b2461819b70f5921fea15de4dec4d908390a380610fbe81612c3d565b915050610f3d565b6000818152600260205260408120546001600160a01b0316806107215760405162461bcd60e51b815260040161076d906127ee565b600f5460ff1681565b607e81565b60006001600160a01b0382166110315760405162461bcd60e51b815260040161076d906127a4565b506001600160a01b031660009081526003602052604090205490565b6110556114a5565b6001600160a01b0316611066611098565b6001600160a01b03161461108c5760405162461bcd60e51b815260040161076d9061293d565b6110966000611788565b565b600a546001600160a01b031690565b6103e881565b6060600180546107a790612c02565b6110c46114a5565b6001600160a01b03166110d5611098565b6001600160a01b0316146110fb5760405162461bcd60e51b815260040161076d9061293d565b805161110e906010906020840190611f2e565b5050565b61110e61111d6114a5565b83836117da565b61112c6114a5565b6001600160a01b031661113d611098565b6001600160a01b0316146111635760405162461bcd60e51b815260040161076d9061293d565b60005b818110156109015760016013600085858581811061119457634e487b7160e01b600052603260045260246000fd5b90506020020160208101906111a99190612054565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055806111db81612c3d565b915050611166565b60006111ed6114a5565b6001600160a01b03166111fe611098565b6001600160a01b0316146112245760405162461bcd60e51b815260040161076d9061293d565b506001600160a01b031660009081526013602052604090205460ff1690565b670429d069189e000081565b61126061125a6114a5565b83611534565b61127c5760405162461bcd60e51b815260040161076d90612a70565b610d7f8484848461187d565b600d5481565b6060611299826114a9565b6112b55760405162461bcd60e51b815260040161076d906129a9565b60006112bf6118b0565b905060008151116112df576040518060200160405280600081525061130a565b806112e9846118bf565b6040516020016112fa92919061232b565b6040516020818303038152906040525b9392505050565b6113196114a5565b6001600160a01b031661132a611098565b6001600160a01b0316146113505760405162461bcd60e51b815260040161076d9061293d565b600f805460ff19811660ff90911615179055565b7f000000000000000000000000000000000000000000000000000000000000000081565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b60156020526000908152604090205481565b6113d06114a5565b6001600160a01b03166113e1611098565b6001600160a01b0316146114075760405162461bcd60e51b815260040161076d9061293d565b6001600160a01b03811661142d5760405162461bcd60e51b815260040161076d9061252a565b610e2f81611788565b61143e6114a5565b6001600160a01b031661144f611098565b6001600160a01b0316146114755760405162461bcd60e51b815260040161076d9061293d565b600d55565b600e5481565b60006001600160e01b0319821663152a902d60e11b14806107215750610721826119da565b3390565b6000908152600260205260409020546001600160a01b0316151590565b600081815260046020526040902080546001600160a01b0319166001600160a01b03841690811790915581906114fb82610fc6565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600061153f826114a9565b61155b5760405162461bcd60e51b815260040161076d90612694565b600061156683610fc6565b9050806001600160a01b0316846001600160a01b031614806115a15750836001600160a01b03166115968461082b565b6001600160a01b0316145b806115b157506115b18185611388565b949350505050565b826001600160a01b03166115cc82610fc6565b6001600160a01b0316146115f25760405162461bcd60e51b815260040161076d90612570565b6001600160a01b0382166116185760405162461bcd60e51b815260040161076d90612619565b6116238383836119ff565b61162e6000826114c6565b6001600160a01b0383166000908152600360205260408120805460019290611657908490612bbf565b90915550506001600160a01b0382166000908152600360205260408120805460019290611685908490612b74565b909155505060008181526002602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4610901838383610901565b61110e828260405180602001604052806000815250611a0a565b6127108111156117285760405162461bcd60e51b815260040161076d90612429565b6040805180820182526001600160a01b03938416815262ffffff92831660208083019182526000968752600b905291909420935184549151909216600160a01b0262ffffff60a01b19929093166001600160a01b03199091161716179055565b600a80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b816001600160a01b0316836001600160a01b0316141561180c5760405162461bcd60e51b815260040161076d9061265d565b6001600160a01b0383811660008181526005602090815260408083209487168084529490915290819020805460ff1916851515179055517f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31906118709085906123d4565b60405180910390a3505050565b6118888484846115b9565b61189484848484611a3d565b610d7f5760405162461bcd60e51b815260040161076d906124d8565b6060601080546107a790612c02565b6060816118e457506040805180820190915260018152600360fc1b6020820152610724565b8160005b811561190e57806118f881612c3d565b91506119079050600a83612b8c565b91506118e8565b60008167ffffffffffffffff81111561193757634e487b7160e01b600052604160045260246000fd5b6040519080825280601f01601f191660200182016040528015611961576020820181803683370190505b5090505b84156115b157611976600183612bbf565b9150611983600a86612c58565b61198e906030612b74565b60f81b8183815181106119b157634e487b7160e01b600052603260045260246000fd5b60200101906001600160f81b031916908160001a9053506119d3600a86612b8c565b9450611965565b60006001600160e01b0319821663780e9d6360e01b1480610721575061072182611b58565b610901838383611b98565b611a148383611c21565b611a216000848484611a3d565b6109015760405162461bcd60e51b815260040161076d906124d8565b6000611a51846001600160a01b0316611d08565b15611b4d57836001600160a01b031663150b7a02611a6d6114a5565b8786866040518563ffffffff1660e01b8152600401611a8f949392919061237e565b602060405180830381600087803b158015611aa957600080fd5b505af1925050508015611ad9575060408051601f3d908101601f19168201909252611ad691810190612242565b60015b611b33573d808015611b07576040519150601f19603f3d011682016040523d82523d6000602084013e611b0c565b606091505b508051611b2b5760405162461bcd60e51b815260040161076d906124d8565b805181602001fd5b6001600160e01b031916630a85bd0160e11b1490506115b1565b506001949350505050565b60006001600160e01b031982166380ac58cd60e01b1480611b8957506001600160e01b03198216635b5e139f60e01b145b80610721575061072182611d17565b611ba3838383610901565b6001600160a01b038316611bbf57611bba81611d30565b611be2565b816001600160a01b0316836001600160a01b031614611be257611be28382611d74565b6001600160a01b038216611bfe57611bf981611e11565b610901565b826001600160a01b0316826001600160a01b031614610901576109018282611eea565b6001600160a01b038216611c475760405162461bcd60e51b815260040161076d906128bc565b611c50816114a9565b15611c6d5760405162461bcd60e51b815260040161076d906125b5565b611c79600083836119ff565b6001600160a01b0382166000908152600360205260408120805460019290611ca2908490612b74565b909155505060008181526002602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a461110e60008383610901565b6001600160a01b03163b151590565b6001600160e01b031981166301ffc9a760e01b14919050565b600880546000838152600960205260408120829055600182018355919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30155565b60006001611d8184611009565b611d8b9190612bbf565b600083815260076020526040902054909150808214611dde576001600160a01b03841660009081526006602090815260408083208584528252808320548484528184208190558352600790915290208190555b5060009182526007602090815260408084208490556001600160a01b039094168352600681528383209183525290812055565b600854600090611e2390600190612bbf565b60008381526009602052604081205460088054939450909284908110611e5957634e487b7160e01b600052603260045260246000fd5b906000526020600020015490508060088381548110611e8857634e487b7160e01b600052603260045260246000fd5b6000918252602080832090910192909255828152600990915260408082208490558582528120556008805480611ece57634e487b7160e01b600052603160045260246000fd5b6001900381819060005260206000200160009055905550505050565b6000611ef583611009565b6001600160a01b039093166000908152600660209081526040808320868452825280832085905593825260079052919091209190915550565b828054611f3a90612c02565b90600052602060002090601f016020900481019282611f5c5760008555611fa2565b82601f10611f7557805160ff1916838001178555611fa2565b82800160010185558215611fa2579182015b82811115611fa2578251825591602001919060010190611f87565b50611fae929150611fb2565b5090565b5b80821115611fae5760008155600101611fb3565b600067ffffffffffffffff80841115611fe257611fe2612c98565b604051601f8501601f19908116603f0116810190828211818310171561200a5761200a612c98565b8160405280935085815286868601111561202357600080fd5b858560208301376000602087830101525050509392505050565b80356001600160a01b038116811461072457600080fd5b600060208284031215612065578081fd5b61130a8261203d565b60008060408385031215612080578081fd5b6120898361203d565b91506120976020840161203d565b90509250929050565b6000806000606084860312156120b4578081fd5b6120bd8461203d565b92506120cb6020850161203d565b9150604084013590509250925092565b600080600080608085870312156120f0578081fd5b6120f98561203d565b93506121076020860161203d565b925060408501359150606085013567ffffffffffffffff811115612129578182fd5b8501601f81018713612139578182fd5b61214887823560208401611fc7565b91505092959194509250565b60008060408385031215612166578182fd5b61216f8361203d565b915060208301358015158114612183578182fd5b809150509250929050565b600080604083850312156121a0578182fd5b6121a98361203d565b946020939093013593505050565b600080602083850312156121c9578182fd5b823567ffffffffffffffff808211156121e0578384fd5b818501915085601f8301126121f3578384fd5b813581811115612201578485fd5b8660208083028501011115612214578485fd5b60209290920196919550909350505050565b600060208284031215612237578081fd5b813561130a81612cae565b600060208284031215612253578081fd5b815161130a81612cae565b60006020828403121561226f578081fd5b813567ffffffffffffffff811115612285578182fd5b8201601f81018413612295578182fd5b6115b184823560208401611fc7565b6000602082840312156122b5578081fd5b5035919050565b600080604083850312156122ce578182fd5b823591506120976020840161203d565b600080604083850312156122f0578182fd5b50508035926020909101359150565b60008151808452612317816020860160208601612bd6565b601f01601f19169290920160200192915050565b6000835161233d818460208801612bd6565b835190830190612351818360208801612bd6565b64173539b7b760d91b9101908152600501949350505050565b6001600160a01b0391909116815260200190565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906123b1908301846122ff565b9695505050505050565b6001600160a01b03929092168252602082015260400190565b901515815260200190565b60006020825261130a60208301846122ff565b60208082526018908201527f4e6f7420656e6f756768206c65667420746f206d696e742e0000000000000000604082015260600190565b6020808252601a908201527f45524332393831526f79616c746965733a20546f6f2068696768000000000000604082015260600190565b6020808252601390820152724e6f7468696e6720746f20776974686472617760681b604082015260600190565b6020808252602b908201527f455243373231456e756d657261626c653a206f776e657220696e646578206f7560408201526a74206f6620626f756e647360a81b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b60208082526026908201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160408201526564647265737360d01b606082015260800190565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b6020808252601c908201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604082015260600190565b60208082526013908201527204d61782070657220636c61696d20697320313606c1b604082015260600190565b60208082526024908201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646040820152637265737360e01b606082015260800190565b60208082526019908201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604082015260600190565b6020808252602c908201527f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860408201526b34b9ba32b73a103a37b5b2b760a11b606082015260800190565b6020808252601f908201527f4e756d626572206e65656420746f20626520686967686572207468616e203000604082015260600190565b6020808252601690820152752cb7bab91030b932903737ba103a34329037bbb732b960511b604082015260600190565b60208082526038908201527f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760408201527f6e6572206e6f7220617070726f76656420666f7220616c6c0000000000000000606082015260800190565b6020808252602a908201527f4552433732313a2062616c616e636520717565727920666f7220746865207a65604082015269726f206164647265737360b01b606082015260800190565b60208082526029908201527f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460408201526832b73a103a37b5b2b760b91b606082015260800190565b60208082526022908201527f796f752063616e277420636c61696d2074686174206d756368206174206f756e604082015261636560f01b606082015260800190565b60208082526023908201527f45746865722076616c75652073656e742069732062656c6f772074686520707260408201526269636560e81b606082015260800190565b6020808252818101527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604082015260600190565b6020808252602c908201527f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860408201526b34b9ba32b73a103a37b5b2b760a11b606082015260800190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6020808252601f908201527f796f752063616e2774206561726c7920636c61696d2074686174206d75636800604082015260600190565b6020808252602f908201527f4552433732314d657461646174613a2055524920717565727920666f72206e6f60408201526e3732bc34b9ba32b73a103a37b5b2b760891b606082015260800190565b60208082526018908201527f4d696e742069732063757272656e746c7920636c6f7365640000000000000000604082015260600190565b60208082526021908201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656040820152603960f91b606082015260800190565b60208082526031908201527f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f6040820152701ddb995c881b9bdc88185c1c1c9bdd9959607a1b606082015260800190565b6020808252602c908201527f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60408201526b7574206f6620626f756e647360a01b606082015260800190565b6020808252600f908201526e139bdd081cdd185c9d1959081e595d608a1b604082015260600190565b6020808252818101527f6578636565647320746865207075626c6963206d696e74696e67206c696d6974604082015260600190565b90815260200190565b60008219821115612b8757612b87612c6c565b500190565b600082612b9b57612b9b612c82565b500490565b6000816000190483118215151615612bba57612bba612c6c565b500290565b600082821015612bd157612bd1612c6c565b500390565b60005b83811015612bf1578181015183820152602001612bd9565b83811115610d7f5750506000910152565b600281046001821680612c1657607f821691505b60208210811415612c3757634e487b7160e01b600052602260045260246000fd5b50919050565b6000600019821415612c5157612c51612c6c565b5060010190565b600082612c6757612c67612c82565b500690565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160e01b031981168114610e2f57600080fdfea2646970667358221220c8860b0d8580fac139e1e47350e1704df562c3675e2d18f3fb1ec267fe9a51ba64736f6c6343000801003300000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000012000000000000000000000000077b1afa7a159184ca7b6c891ba7c4f62da83b7410000000000000000000000000000000000000000000000000000000062eab7a0000000000000000000000000000000000000000000000000000000000000001154686520537061636574726f6e61757473000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000453505453000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000036697066733a2f2f516d50676b4d6b42577936694c317a347331714734544a6f5a5257575a5a45513935616d575737336b74616f67542f00000000000000000000