[ { "inputs": [ { "internalType": "string", "name": "baseURI_", "type": "string" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "ApprovalCallerNotOwnerNorApproved", "type": "error" }, { "inputs": [], "name": "ApprovalQueryForNonexistentToken", "type": "error" }, { "inputs": [], "name": "BalanceQueryForZeroAddress", "type": "error" }, { "inputs": [], "name": "MintERC2309QuantityExceedsLimit", "type": "error" }, { "inputs": [], "name": "MintToZeroAddress", "type": "error" }, { "inputs": [], "name": "MintZeroQuantity", "type": "error" }, { "inputs": [], "name": "OwnerQueryForNonexistentToken", "type": "error" }, { "inputs": [], "name": "OwnershipNotInitializedForExtraData", "type": "error" }, { "inputs": [], "name": "TransferCallerNotOwnerNorApproved", "type": "error" }, { "inputs": [], "name": "TransferFromIncorrectOwner", "type": "error" }, { "inputs": [], "name": "TransferToNonERC721ReceiverImplementer", "type": "error" }, { "inputs": [], "name": "TransferToZeroAddress", "type": "error" }, { "inputs": [], "name": "URIQueryForNonexistentToken", "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": "uint256", "name": "fromTokenId", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "toTokenId", "type": "uint256" }, { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" } ], "name": "ConsecutiveTransfer", "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" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "approve", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "baseURI", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getApproved", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "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": "maxPerWallet", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "mint", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "mintPerWallet", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "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": "tokenId", "type": "uint256" } ], "name": "ownerOf", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "paused", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "reserveMint", "outputs": [], "stateMutability": "nonpayable", "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": "payable", "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": "payable", "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": "baseURI_", "type": "string" } ], "name": "setBaseURI", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_maxPerWallet", "type": "uint256" } ], "name": "setMaxPerWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_mintPrice", "type": "uint256" } ], "name": "setMintPrice", "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": [], "name": "toggleSale", "outputs": [], "stateMutability": "nonpayable", "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": "payable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "withdraw", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
608060405260e06009556003600a5566138a388a43c000600b556001600c5f6101000a81548160ff0219169083151502179055506040518060400160405280600581526020017f2e6a736f6e000000000000000000000000000000000000000000000000000000815250600e9081620000799190620004c2565b5034801562000086575f80fd5b5060405162003595380380620035958339818101604052810190620000ac9190620006fe565b6040518060400160405280600c81526020017f4445464f52474520412e492e00000000000000000000000000000000000000008152506040518060400160405280600381526020017f44414900000000000000000000000000000000000000000000000000000000008152508160029081620001299190620004c2565b5080600390816200013b9190620004c2565b506200014c6200018c60201b60201c565b5f81905550505062000173620001676200019460201b60201c565b6200019b60201b60201c565b80600f9081620001849190620004c2565b50506200074d565b5f6001905090565b5f33905090565b5f60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160085f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680620002da57607f821691505b602082108103620002f057620002ef62000295565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302620003547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000317565b62000360868362000317565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f620003aa620003a46200039e8462000378565b62000381565b62000378565b9050919050565b5f819050919050565b620003c5836200038a565b620003dd620003d482620003b1565b84845462000323565b825550505050565b5f90565b620003f3620003e5565b62000400818484620003ba565b505050565b5b8181101562000427576200041b5f82620003e9565b60018101905062000406565b5050565b601f82111562000476576200044081620002f6565b6200044b8462000308565b810160208510156200045b578190505b620004736200046a8562000308565b83018262000405565b50505b505050565b5f82821c905092915050565b5f620004985f19846008026200047b565b1980831691505092915050565b5f620004b2838362000487565b9150826002028217905092915050565b620004cd826200025e565b67ffffffffffffffff811115620004e957620004e862000268565b5b620004f58254620002c2565b620005028282856200042b565b5f60209050601f83116001811462000538575f841562000523578287015190505b6200052f8582620004a5565b8655506200059e565b601f1984166200054886620002f6565b5f5b8281101562000571578489015182556001820191506020850194506020810190506200054a565b868310156200059157848901516200058d601f89168262000487565b8355505b6001600288020188555050505b505050505050565b5f604051905090565b5f80fd5b5f80fd5b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b620005da82620005bf565b810181811067ffffffffffffffff82111715620005fc57620005fb62000268565b5b80604052505050565b5f62000610620005a6565b90506200061e8282620005cf565b919050565b5f67ffffffffffffffff82111562000640576200063f62000268565b5b6200064b82620005bf565b9050602081019050919050565b5f5b83811015620006775780820151818401526020810190506200065a565b5f8484015250505050565b5f62000698620006928462000623565b62000605565b905082815260208101848484011115620006b757620006b6620005bb565b5b620006c484828562000658565b509392505050565b5f82601f830112620006e357620006e2620005b7565b5b8151620006f584826020860162000682565b91505092915050565b5f60208284031215620007165762000715620005af565b5b5f82015167ffffffffffffffff811115620007365762000735620005b3565b5b6200074484828501620006cc565b91505092915050565b612e3a806200075b5f395ff3fe6080604052600436106101cc575f3560e01c806370a08231116100f6578063b0ea180211610094578063e268e4d311610063578063e268e4d3146105f8578063e985e9c514610620578063f2fde38b1461065c578063f4a0a52814610684576101cc565b8063b0ea18021461054e578063b88d4fde14610576578063c87b56dd14610592578063d5abeb01146105ce576101cc565b80638da5cb5b116100d05780638da5cb5b146104b657806395d89b41146104e0578063a0712d681461050a578063a22cb46514610526576101cc565b806370a082311461044e578063715018a61461048a5780637d8966e4146104a0576101cc565b80633ccfd60b1161016e5780635c975abb1161013d5780635c975abb146103945780636352211e146103be5780636817c76c146103fa5780636c0360eb14610424576101cc565b80633ccfd60b1461031057806342842e0e14610326578063453c23101461034257806355f804b31461036c576101cc565b8063095ea7b3116101aa578063095ea7b31461027257806313413cd21461028e57806318160ddd146102ca57806323b872dd146102f4576101cc565b806301ffc9a7146101d057806306fdde031461020c578063081812fc14610236575b5f80fd5b3480156101db575f80fd5b506101f660048036038101906101f19190611e73565b6106ac565b6040516102039190611eb8565b60405180910390f35b348015610217575f80fd5b5061022061073d565b60405161022d9190611f5b565b60405180910390f35b348015610241575f80fd5b5061025c60048036038101906102579190611fae565b6107cd565b6040516102699190612018565b60405180910390f35b61028c6004803603810190610287919061205b565b610847565b005b348015610299575f80fd5b506102b460048036038101906102af9190612099565b610986565b6040516102c191906120d3565b60405180910390f35b3480156102d5575f80fd5b506102de61099b565b6040516102eb91906120d3565b60405180910390f35b61030e600480360381019061030991906120ec565b6109b0565b005b34801561031b575f80fd5b50610324610cbe565b005b610340600480360381019061033b91906120ec565b610d71565b005b34801561034d575f80fd5b50610356610d90565b60405161036391906120d3565b60405180910390f35b348015610377575f80fd5b50610392600480360381019061038d9190612268565b610d96565b005b34801561039f575f80fd5b506103a8610db1565b6040516103b59190611eb8565b60405180910390f35b3480156103c9575f80fd5b506103e460048036038101906103df9190611fae565b610dc3565b6040516103f19190612018565b60405180910390f35b348015610405575f80fd5b5061040e610dd4565b60405161041b91906120d3565b60405180910390f35b34801561042f575f80fd5b50610438610dda565b6040516104459190611f5b565b60405180910390f35b348015610459575f80fd5b50610474600480360381019061046f9190612099565b610e66565b60405161048191906120d3565b60405180910390f35b348015610495575f80fd5b5061049e610f1b565b005b3480156104ab575f80fd5b506104b4610f2e565b005b3480156104c1575f80fd5b506104ca610f60565b6040516104d79190612018565b60405180910390f35b3480156104eb575f80fd5b506104f4610f88565b6040516105019190611f5b565b60405180910390f35b610524600480360381019061051f9190611fae565b611018565b005b348015610531575f80fd5b5061054c600480360381019061054791906122d9565b611269565b005b348015610559575f80fd5b50610574600480360381019061056f919061205b565b61136f565b005b610590600480360381019061058b91906123b5565b611385565b005b34801561059d575f80fd5b506105b860048036038101906105b39190611fae565b6113f7565b6040516105c59190611f5b565b60405180910390f35b3480156105d9575f80fd5b506105e2611476565b6040516105ef91906120d3565b60405180910390f35b348015610603575f80fd5b5061061e60048036038101906106199190611fae565b61147c565b005b34801561062b575f80fd5b5061064660048036038101906106419190612435565b61148e565b6040516106539190611eb8565b60405180910390f35b348015610667575f80fd5b50610682600480360381019061067d9190612099565b61151c565b005b34801561068f575f80fd5b506106aa60048036038101906106a59190611fae565b61159e565b005b5f6301ffc9a760e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061070657506380ac58cd60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806107365750635b5e139f60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b9050919050565b60606002805461074c906124a0565b80601f0160208091040260200160405190810160405280929190818152602001828054610778906124a0565b80156107c35780601f1061079a576101008083540402835291602001916107c3565b820191905f5260205f20905b8154815290600101906020018083116107a657829003601f168201915b5050505050905090565b5f6107d7826115b0565b61080d576040517fcf4700e400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60065f8381526020019081526020015f205f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b5f61085182610dc3565b90508073ffffffffffffffffffffffffffffffffffffffff1661087261160a565b73ffffffffffffffffffffffffffffffffffffffff16146108d55761089e8161089961160a565b61148e565b6108d4576040517fcfb3b94200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b8260065f8481526020019081526020015f205f015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550818373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a4505050565b600d602052805f5260405f205f915090505481565b5f6109a4611611565b6001545f540303905090565b5f6109ba82611619565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610a21576040517fa114810000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f80610a2c846116dc565b91509150610a428187610a3d61160a565b6116ff565b610a8e57610a5786610a5261160a565b61148e565b610a8d576040517f59c896be00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603610af3576040517fea553b3400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610b008686866001611742565b8015610b0a575f82555b60055f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8154600190039190508190555060055f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f815460010191905081905550610bd285610bae888887611748565b7c02000000000000000000000000000000000000000000000000000000001761176f565b60045f8681526020019081526020015f20819055505f7c0200000000000000000000000000000000000000000000000000000000841603610c4e575f6001850190505f60045f8381526020019081526020015f205403610c4c575f548114610c4b578360045f8381526020019081526020015f20819055505b5b505b838573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610cb68686866001611799565b505050505050565b610cc661179f565b5f3373ffffffffffffffffffffffffffffffffffffffff1647604051610ceb906124fd565b5f6040518083038185875af1925050503d805f8114610d25576040519150601f19603f3d011682016040523d82523d5f602084013e610d2a565b606091505b5050905080610d6e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d659061255b565b60405180910390fd5b50565b610d8b83838360405180602001604052805f815250611385565b505050565b600a5481565b610d9e61179f565b80600f9081610dad9190612716565b5050565b600c5f9054906101000a900460ff1681565b5f610dcd82611619565b9050919050565b600b5481565b600f8054610de7906124a0565b80601f0160208091040260200160405190810160405280929190818152602001828054610e13906124a0565b8015610e5e5780601f10610e3557610100808354040283529160200191610e5e565b820191905f5260205f20905b815481529060010190602001808311610e4157829003601f168201915b505050505081565b5f8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ecc576040517f8f4eb60400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff60055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054169050919050565b610f2361179f565b610f2c5f61181d565b565b610f3661179f565b600c5f9054906101000a900460ff1615600c5f6101000a81548160ff021916908315150217905550565b5f60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060038054610f97906124a0565b80601f0160208091040260200160405190810160405280929190818152602001828054610fc3906124a0565b801561100e5780601f10610fe55761010080835404028352916020019161100e565b820191905f5260205f20905b815481529060010190602001808311610ff157829003601f168201915b5050505050905090565b3373ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff1614611086576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161107d9061282f565b60405180910390fd5b600c5f9054906101000a900460ff16156110d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110cc90612897565b60405180910390fd5b600954816110e161099b565b6110eb91906128e2565b111561112c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111239061295f565b60405180910390fd5b600a5481600d5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461117891906128e2565b11156111b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111b0906129c7565b60405180910390fd5b80600b546111c791906129e5565b341015611209576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120090612a70565b60405180910390fd5b80600d5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461125591906128e2565b9250508190555061126633826118e0565b50565b8060075f61127561160a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff1661131e61160a565b73ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516113639190611eb8565b60405180910390a35050565b61137761179f565b61138182826118e0565b5050565b6113908484846109b0565b5f8373ffffffffffffffffffffffffffffffffffffffff163b146113f1576113ba84848484611a89565b6113f0576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b50505050565b6060611402826115b0565b611441576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161143890612afe565b60405180910390fd5b600f61144c83611bd4565b600e60405160200161146093929190612bd6565b6040516020818303038152906040529050919050565b60095481565b61148461179f565b80600a8190555050565b5f60075f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16905092915050565b61152461179f565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611592576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161158990612c76565b60405180910390fd5b61159b8161181d565b50565b6115a661179f565b80600b8190555050565b5f816115ba611611565b111580156115c857505f5482105b801561160357505f7c010000000000000000000000000000000000000000000000000000000060045f8581526020019081526020015f205416145b9050919050565b5f33905090565b5f6001905090565b5f8082905080611627611611565b116116a5575f548110156116a4575f60045f8381526020019081526020015f205490505f7c01000000000000000000000000000000000000000000000000000000008216036116a2575b5f81036116985760045f836001900393508381526020019081526020015f20549050611671565b80925050506116d7565b505b5b6040517fdf2d9b4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b919050565b5f805f60065f8581526020019081526020015f2090508092508254915050915091565b5f73ffffffffffffffffffffffffffffffffffffffff8316925073ffffffffffffffffffffffffffffffffffffffff821691508382148383141790509392505050565b50505050565b5f8060e883901c905060e861175e868684611c9e565b62ffffff16901b9150509392505050565b5f73ffffffffffffffffffffffffffffffffffffffff83169250814260a01b178317905092915050565b50505050565b6117a7611ca6565b73ffffffffffffffffffffffffffffffffffffffff166117c5610f60565b73ffffffffffffffffffffffffffffffffffffffff161461181b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161181290612cde565b60405180910390fd5b565b5f60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160085f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f805490505f820361191e576040517fb562e8dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61192a5f848385611742565b600160406001901b17820260055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254019250508190555061199c8361198d5f865f611748565b61199685611cad565b1761176f565b60045f8381526020019081526020015f20819055505f80838301905073ffffffffffffffffffffffffffffffffffffffff8516915082825f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f80a4600183015b818114611a365780835f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f80a46001810190506119fd565b505f8203611a70576040517f2e07630000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805f819055505050611a845f848385611799565b505050565b5f8373ffffffffffffffffffffffffffffffffffffffff1663150b7a02611aae61160a565b8786866040518563ffffffff1660e01b8152600401611ad09493929190612d4e565b6020604051808303815f875af1925050508015611b0b57506040513d601f19601f82011682018060405250810190611b089190612dac565b60015b611b81573d805f8114611b39576040519150601f19603f3d011682016040523d82523d5f602084013e611b3e565b606091505b505f815103611b79576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050949350505050565b60605f6001611be284611cbc565b0190505f8167ffffffffffffffff811115611c0057611bff612144565b5b6040519080825280601f01601f191660200182016040528015611c325781602001600182028036833780820191505090505b5090505f82602001820190505b600115611c93578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8581611c8857611c87612dd7565b5b0494505f8503611c3f575b819350505050919050565b5f9392505050565b5f33905090565b5f6001821460e11b9050919050565b5f805f90507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310611d18577a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008381611d0e57611d0d612dd7565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310611d55576d04ee2d6d415b85acef81000000008381611d4b57611d4a612dd7565b5b0492506020810190505b662386f26fc100008310611d8457662386f26fc100008381611d7a57611d79612dd7565b5b0492506010810190505b6305f5e1008310611dad576305f5e1008381611da357611da2612dd7565b5b0492506008810190505b6127108310611dd2576127108381611dc857611dc7612dd7565b5b0492506004810190505b60648310611df55760648381611deb57611dea612dd7565b5b0492506002810190505b600a8310611e04576001810190505b80915050919050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b611e5281611e1e565b8114611e5c575f80fd5b50565b5f81359050611e6d81611e49565b92915050565b5f60208284031215611e8857611e87611e16565b5b5f611e9584828501611e5f565b91505092915050565b5f8115159050919050565b611eb281611e9e565b82525050565b5f602082019050611ecb5f830184611ea9565b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015611f08578082015181840152602081019050611eed565b5f8484015250505050565b5f601f19601f8301169050919050565b5f611f2d82611ed1565b611f378185611edb565b9350611f47818560208601611eeb565b611f5081611f13565b840191505092915050565b5f6020820190508181035f830152611f738184611f23565b905092915050565b5f819050919050565b611f8d81611f7b565b8114611f97575f80fd5b50565b5f81359050611fa881611f84565b92915050565b5f60208284031215611fc357611fc2611e16565b5b5f611fd084828501611f9a565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61200282611fd9565b9050919050565b61201281611ff8565b82525050565b5f60208201905061202b5f830184612009565b92915050565b61203a81611ff8565b8114612044575f80fd5b50565b5f8135905061205581612031565b92915050565b5f806040838503121561207157612070611e16565b5b5f61207e85828601612047565b925050602061208f85828601611f9a565b9150509250929050565b5f602082840312156120ae576120ad611e16565b5b5f6120bb84828501612047565b91505092915050565b6120cd81611f7b565b82525050565b5f6020820190506120e65f8301846120c4565b92915050565b5f805f6060848603121561210357612102611e16565b5b5f61211086828701612047565b935050602061212186828701612047565b925050604061213286828701611f9a565b9150509250925092565b5f80fd5b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61217a82611f13565b810181811067ffffffffffffffff8211171561219957612198612144565b5b80604052505050565b5f6121ab611e0d565b90506121b78282612171565b919050565b5f67ffffffffffffffff8211156121d6576121d5612144565b5b6121df82611f13565b9050602081019050919050565b828183375f83830152505050565b5f61220c612207846121bc565b6121a2565b90508281526020810184848401111561222857612227612140565b5b6122338482856121ec565b509392505050565b5f82601f83011261224f5761224e61213c565b5b813561225f8482602086016121fa565b91505092915050565b5f6020828403121561227d5761227c611e16565b5b5f82013567ffffffffffffffff81111561229a57612299611e1a565b5b6122a68482850161223b565b91505092915050565b6122b881611e9e565b81146122c2575f80fd5b50565b5f813590506122d3816122af565b92915050565b5f80604083850312156122ef576122ee611e16565b5b5f6122fc85828601612047565b925050602061230d858286016122c5565b9150509250929050565b5f67ffffffffffffffff82111561233157612330612144565b5b61233a82611f13565b9050602081019050919050565b5f61235961235484612317565b6121a2565b90508281526020810184848401111561237557612374612140565b5b6123808482856121ec565b509392505050565b5f82601f83011261239c5761239b61213c565b5b81356123ac848260208601612347565b91505092915050565b5f805f80608085870312156123cd576123cc611e16565b5b5f6123da87828801612047565b94505060206123eb87828801612047565b93505060406123fc87828801611f9a565b925050606085013567ffffffffffffffff81111561241d5761241c611e1a565b5b61242987828801612388565b91505092959194509250565b5f806040838503121561244b5761244a611e16565b5b5f61245885828601612047565b925050602061246985828601612047565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806124b757607f821691505b6020821081036124ca576124c9612473565b5b50919050565b5f81905092915050565b50565b5f6124e85f836124d0565b91506124f3826124da565b5f82019050919050565b5f612507826124dd565b9150819050919050565b7f5472616e73616374696f6e206661696c656400000000000000000000000000005f82015250565b5f612545601283611edb565b915061255082612511565b602082019050919050565b5f6020820190508181035f83015261257281612539565b9050919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026125d57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261259a565b6125df868361259a565b95508019841693508086168417925050509392505050565b5f819050919050565b5f61261a61261561261084611f7b565b6125f7565b611f7b565b9050919050565b5f819050919050565b61263383612600565b61264761263f82612621565b8484546125a6565b825550505050565b5f90565b61265b61264f565b61266681848461262a565b505050565b5b818110156126895761267e5f82612653565b60018101905061266c565b5050565b601f8211156126ce5761269f81612579565b6126a88461258b565b810160208510156126b7578190505b6126cb6126c38561258b565b83018261266b565b50505b505050565b5f82821c905092915050565b5f6126ee5f19846008026126d3565b1980831691505092915050565b5f61270683836126df565b9150826002028217905092915050565b61271f82611ed1565b67ffffffffffffffff81111561273857612737612144565b5b61274282546124a0565b61274d82828561268d565b5f60209050601f83116001811461277e575f841561276c578287015190505b61277685826126fb565b8655506127dd565b601f19841661278c86612579565b5f5b828110156127b35784890151825560018201915060208501945060208101905061278e565b868310156127d057848901516127cc601f8916826126df565b8355505b6001600288020188555050505b505050505050565b7f436f6e7472616374206d696e74206973206e6f7420616c6c6f776564000000005f82015250565b5f612819601c83611edb565b9150612824826127e5565b602082019050919050565b5f6020820190508181035f8301526128468161280d565b9050919050565b7f53616c65206973206e6f742061637469766500000000000000000000000000005f82015250565b5f612881601283611edb565b915061288c8261284d565b602082019050919050565b5f6020820190508181035f8301526128ae81612875565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6128ec82611f7b565b91506128f783611f7b565b925082820190508082111561290f5761290e6128b5565b5b92915050565b7f4d6178207075626c696320737570706c792065786365656465640000000000005f82015250565b5f612949601a83611edb565b915061295482612915565b602082019050919050565b5f6020820190508181035f8301526129768161293d565b9050919050565b7f4d6178206d696e74207065722077616c6c6574206578636565646564000000005f82015250565b5f6129b1601c83611edb565b91506129bc8261297d565b602082019050919050565b5f6020820190508181035f8301526129de816129a5565b9050919050565b5f6129ef82611f7b565b91506129fa83611f7b565b9250828202612a0881611f7b565b91508282048414831517612a1f57612a1e6128b5565b5b5092915050565b7f496e73756666696369656e742066756e647300000000000000000000000000005f82015250565b5f612a5a601283611edb565b9150612a6582612a26565b602082019050919050565b5f6020820190508181035f830152612a8781612a4e565b9050919050565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f5f8201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b5f612ae8602f83611edb565b9150612af382612a8e565b604082019050919050565b5f6020820190508181035f830152612b1581612adc565b9050919050565b5f81905092915050565b5f8154612b32816124a0565b612b3c8186612b1c565b9450600182165f8114612b565760018114612b6b57612b9d565b60ff1983168652811515820286019350612b9d565b612b7485612579565b5f5b83811015612b9557815481890152600182019150602081019050612b76565b838801955050505b50505092915050565b5f612bb082611ed1565b612bba8185612b1c565b9350612bca818560208601611eeb565b80840191505092915050565b5f612be18286612b26565b9150612bed8285612ba6565b9150612bf98284612b26565b9150819050949350505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f612c60602683611edb565b9150612c6b82612c06565b604082019050919050565b5f6020820190508181035f830152612c8d81612c54565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f612cc8602083611edb565b9150612cd382612c94565b602082019050919050565b5f6020820190508181035f830152612cf581612cbc565b9050919050565b5f81519050919050565b5f82825260208201905092915050565b5f612d2082612cfc565b612d2a8185612d06565b9350612d3a818560208601611eeb565b612d4381611f13565b840191505092915050565b5f608082019050612d615f830187612009565b612d6e6020830186612009565b612d7b60408301856120c4565b8181036060830152612d8d8184612d16565b905095945050505050565b5f81519050612da681611e49565b92915050565b5f60208284031215612dc157612dc0611e16565b5b5f612dce84828501612d98565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffdfea2646970667358221220cbf5e999cec2800ace66fed723127ace8bbcb5ad0c3bfbfdbd10cebb18cdc84164736f6c6343000816003300000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000036697066733a2f2f516d51433570425762616574396a41666a594a644e43744c796e6e3352396b63364864314b3373443141735246342f00000000000000000000
0xa2646970667358221220cbf5e999cec2800ace66fed723127ace8bbcb5ad0c3bfbfdbd10cebb18cdc84164736f6c6343000816003300000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000036697066733a2f2f516d51433570425762616574396a41666a594a644e43744c796e6e3352396b63364864314b3373443141735246342f00000000000000000000