[ { "inputs": [], "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": "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": "uint256", "name": "_amt", "type": "uint256" } ], "name": "adminMint", "outputs": [], "stateMutability": "nonpayable", "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": [], "name": "baseTokenURI", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "claimedFreeMints", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "collectionSize", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "disableFreeMint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "enableFreeMint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_holdings", "type": "uint256" }, { "internalType": "bytes32[]", "name": "_proof", "type": "bytes32[]" } ], "name": "freeMint", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "freeMintActive", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "freeSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "freeSupplyMinted", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "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": "getSate", "outputs": [ { "internalType": "enum CryptowalkersWeapons.State", "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": "mainsaleSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "mainsaleSupplyMinted", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxMint", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxPerWallet", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxfreeMint", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "mintedTokens", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_holdings", "type": "uint256" }, { "internalType": "uint256", "name": "_amt", "type": "uint256" }, { "internalType": "bytes32[]", "name": "_proof", "type": "bytes32[]" } ], "name": "msMint", "outputs": [], "stateMutability": "payable", "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": "price", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "rootHash", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "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": "operator", "type": "address" }, { "internalType": "bool", "name": "approved", "type": "bool" } ], "name": "setApprovalForAll", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "setStateToAdmin", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "setStateToPaused", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "setStateToPublic", "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": "tokenSupply", "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": [ { "internalType": "string", "name": "_newURI", "type": "string" } ], "name": "updateBaseURI", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_addr", "type": "address" }, { "internalType": "uint256", "name": "_amt", "type": "uint256" }, { "internalType": "bytes32[]", "name": "_proof", "type": "bytes32[]" } ], "name": "verifyValidity", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "withdrawAll", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
60806040523480156200001157600080fd5b50604080518082018252601481527f43727970746f77616c6b657273576561706f6e7300000000000000000000000060208083019182528351808501909452600384526243575760e81b908401528151919291620000729160009162000182565b5080516200008890600190602084019062000182565b505050620000a56200009f6200012c60201b60201c565b62000130565b60016007556008805460ff19169055604080516060810190915260288082526200303b60208301398051620000e39160099160209091019062000182565b506001600a819055600b819055600c819055600d805460ff19169055600e557fb51882ff364a2e57b69de4c1e74df3af89859a5b3ee1605bedf812871737f0b1600f5562000265565b3390565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b828054620001909062000228565b90600052602060002090601f016020900481019282620001b45760008555620001ff565b82601f10620001cf57805160ff1916838001178555620001ff565b82800160010185558215620001ff579182015b82811115620001ff578251825591602001919060010190620001e2565b506200020d92915062000211565b5090565b5b808211156200020d576000815560010162000212565b600181811c908216806200023d57607f821691505b602082108114156200025f57634e487b7160e01b600052602260045260246000fd5b50919050565b612dc680620002756000396000f3fe6080604052600436106102e75760003560e01c80637824407f11610184578063b88d4fde116100d6578063defc14ba1161008a578063f01e94a711610064578063f01e94a7146107a0578063f2fde38b146107c0578063fe2b5a74146107e057600080fd5b8063defc14ba1461072f578063e2f36dce14610744578063e985e9c51461075757600080fd5b8063c87b56dd116100bb578063c87b56dd146106e0578063cb5bc2aa14610700578063d547cfb71461071a57600080fd5b8063b88d4fde146106a0578063c1f26123146106c057600080fd5b806395d89b4111610138578063a035b1fe11610112578063a035b1fe14610650578063a22cb4651461066b578063adaa6c1b1461068b57600080fd5b806395d89b41146106065780639a8e97471461061b5780639eb39a541461063b57600080fd5b8063853828b611610169578063853828b6146105b35780638da5cb5b146105c8578063931688cb146105e657600080fd5b80637824407f1461058757806379cef0821461059d57600080fd5b8063384b9f8a1161023d5780636352211e116101f1578063715018a6116101cb578063715018a6146105305780637241dfa0146105455780637501f7411461057257600080fd5b80636352211e146104da57806370a08231146104fa57806370dd7f861461051a57600080fd5b8063453c231011610222578063453c23101461049c57806345c0f533146104b15780634ec91fd0146104c757600080fd5b8063384b9f8a1461046757806342842e0e1461047c57600080fd5b80631d80009a1161029f57806324a6ab0c1161027957806324a6ab0c1461042657806330d394821461043c57806335db19f71461045157600080fd5b80631d80009a146103c057806323b872dd146103d657806323c30fe7146103f657600080fd5b8063081812fc116102d0578063081812fc14610343578063095ea7b31461037b57806318160ddd1461039d57600080fd5b806301ffc9a7146102ec57806306fdde0314610321575b600080fd5b3480156102f857600080fd5b5061030c610307366004612960565b6107f5565b60405190151581526020015b60405180910390f35b34801561032d57600080fd5b50610336610892565b6040516103189190612bd0565b34801561034f57600080fd5b5061036361035e3660046129e3565b610924565b6040516001600160a01b039091168152602001610318565b34801561038757600080fd5b5061039b6103963660046128df565b6109be565b005b3480156103a957600080fd5b506103b2610af0565b604051908152602001610318565b3480156103cc57600080fd5b506103b2600f5481565b3480156103e257600080fd5b5061039b6103f13660046127eb565b610b06565b34801561040257600080fd5b5061030c61041136600461279d565b60116020526000908152604090205460ff1681565b34801561043257600080fd5b506103b26108fd81565b34801561044857600080fd5b506103b2600a81565b34801561045d57600080fd5b506103b2600c5481565b34801561047357600080fd5b5061039b610b8d565b34801561048857600080fd5b5061039b6104973660046127eb565b610bfe565b3480156104a857600080fd5b506103b2600b81565b3480156104bd57600080fd5b506103b261189d81565b61039b6104d5366004612a43565b610c19565b3480156104e657600080fd5b506103636104f53660046129e3565b610f1e565b34801561050657600080fd5b506103b261051536600461279d565b610fa9565b34801561052657600080fd5b506103b2600b5481565b34801561053c57600080fd5b5061039b611043565b34801561055157600080fd5b506103b261056036600461279d565b60106020526000908152604090205481565b34801561057e57600080fd5b506103b2600681565b34801561059357600080fd5b506103b2600e5481565b3480156105a957600080fd5b506103b2610dad81565b3480156105bf57600080fd5b5061039b6110a9565b3480156105d457600080fd5b506006546001600160a01b0316610363565b3480156105f257600080fd5b5061039b61060136600461299a565b6111fb565b34801561061257600080fd5b5061033661126c565b34801561062757600080fd5b5061030c610636366004612909565b61127b565b34801561064757600080fd5b5061039b6112cf565b34801561065c57600080fd5b506103b2666a94d74f43000081565b34801561067757600080fd5b5061039b6106863660046128a3565b611338565b34801561069757600080fd5b5061039b611343565b3480156106ac57600080fd5b5061039b6106bb366004612827565b6113a9565b3480156106cc57600080fd5b5061039b6106db3660046129e3565b611437565b3480156106ec57600080fd5b506103366106fb3660046129e3565b61161e565b34801561070c57600080fd5b50600d5461030c9060ff1681565b34801561072657600080fd5b50610336611707565b34801561073b57600080fd5b5061039b611716565b61039b6107523660046129fc565b611784565b34801561076357600080fd5b5061030c6107723660046127b8565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b3480156107ac57600080fd5b5060085460ff166040516103189190612ba8565b3480156107cc57600080fd5b5061039b6107db36600461279d565b611a2d565b3480156107ec57600080fd5b5061039b611b0f565b60006001600160e01b031982167f80ac58cd00000000000000000000000000000000000000000000000000000000148061085857506001600160e01b031982167f5b5e139f00000000000000000000000000000000000000000000000000000000145b8061088c57507f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b03198316145b92915050565b6060600080546108a190612ca2565b80601f01602080910402602001604051908101604052809291908181526020018280546108cd90612ca2565b801561091a5780601f106108ef5761010080835404028352916020019161091a565b820191906000526020600020905b8154815290600101906020018083116108fd57829003601f168201915b5050505050905090565b6000818152600260205260408120546001600160a01b03166109a25760405162461bcd60e51b815260206004820152602c60248201527f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860448201526b34b9ba32b73a103a37b5b2b760a11b60648201526084015b60405180910390fd5b506000908152600460205260409020546001600160a01b031690565b60006109c982610f1e565b9050806001600160a01b0316836001600160a01b03161415610a535760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560448201527f72000000000000000000000000000000000000000000000000000000000000006064820152608401610999565b336001600160a01b0382161480610a6f5750610a6f8133610772565b610ae15760405162461bcd60e51b815260206004820152603860248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760448201527f6e6572206e6f7220617070726f76656420666f7220616c6c00000000000000006064820152608401610999565b610aeb8383611b7c565b505050565b60006001600e54610b019190612c5f565b905090565b610b103382611bf7565b610b825760405162461bcd60e51b815260206004820152603160248201527f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60448201527f776e6572206e6f7220617070726f7665640000000000000000000000000000006064820152608401610999565b610aeb838383611cea565b6006546001600160a01b03163314610be75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610999565b600880546000919060ff19166001835b0217905550565b610aeb838383604051806020016040528060008152506113a9565b60026007541415610c6c5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610999565b6002600755600160085460ff166002811115610c8a57610c8a612d38565b14610cd75760405162461bcd60e51b815260206004820152601660248201527f4d61696e73616c65206973206e6f7420616374697665000000000000000000006044820152606401610999565b600e54600c54610dad90610cec908590612c14565b108015610d03575061189d610d018483612c14565b105b610d4f5760405162461bcd60e51b815260206004820152601f60248201527f4d61696e73616c6520737570706c7920686173206265656e206d696e746564006044820152606401610999565b60068310610da95760405162461bcd60e51b815260206004820152602160248201527f45786365656473206d6178206d696e747320706572207472616e73616374696f6044820152603760f91b6064820152608401610999565b610db433858461127b565b610e005760405162461bcd60e51b815260206004820152600e60248201527f4e6f7420617574686f72697a65640000000000000000000000000000000000006044820152606401610999565b33600090815260106020526040902054600b90610e1e908590612c14565b10610e6b5760405162461bcd60e51b815260206004820152601860248201527f4578636565646564206d696e7420616c6c6f636174696f6e00000000000000006044820152606401610999565b610e7c83666a94d74f430000612c40565b3414610eca5760405162461bcd60e51b815260206004820152600f60248201527f496e636f727265637420707269636500000000000000000000000000000000006044820152606401610999565b3360009081526010602052604081208054859290610ee9908490612c14565b9250508190555082600c6000828254610f029190612c14565b90915550610f139050338483611ec4565b505060016007555050565b6000818152600260205260408120546001600160a01b03168061088c5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460448201527f656e7420746f6b656e00000000000000000000000000000000000000000000006064820152608401610999565b60006001600160a01b0382166110275760405162461bcd60e51b815260206004820152602a60248201527f4552433732313a2062616c616e636520717565727920666f7220746865207a6560448201527f726f2061646472657373000000000000000000000000000000000000000000006064820152608401610999565b506001600160a01b031660009081526003602052604090205490565b6006546001600160a01b0316331461109d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610999565b6110a76000611f0c565b565b6006546001600160a01b031633146111035760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610999565b600260075414156111565760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610999565b6002600755604051600090339047908381818185875af1925050503d806000811461119d576040519150601f19603f3d011682016040523d82523d6000602084013e6111a2565b606091505b50509050806111f35760405162461bcd60e51b815260206004820152601060248201527f5472616e73666572206661696c65642e000000000000000000000000000000006044820152606401610999565b506001600755565b6006546001600160a01b031633146112555760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610999565b805161126890600990602084019061260a565b5050565b6060600180546108a190612ca2565b600f54604080516001600160a01b03861660208201529081018490526000916112c7916060016040516020818303038152906040528051906020012084611f6b9092919063ffffffff16565b949350505050565b6006546001600160a01b031633146113295760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610999565b600d805460ff19166001179055565b611268338383611f81565b6006546001600160a01b0316331461139d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610999565b600d805460ff19169055565b6113b33383611bf7565b6114255760405162461bcd60e51b815260206004820152603160248201527f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60448201527f776e6572206e6f7220617070726f7665640000000000000000000000000000006064820152608401610999565b61143184848484612050565b50505050565b6002600754141561148a5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610999565b60026007556006546001600160a01b031633146114e95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610999565b600060085460ff16600281111561150257611502612d38565b1461154f5760405162461bcd60e51b815260206004820152601a60248201527f5374617465206d7573742062652073657420746f2061646d696e0000000000006044820152606401610999565b600e54600061155e8383612c14565b905061189d8110801561157f57506101f683600a5461157d9190612c14565b105b6115f15760405162461bcd60e51b815260206004820152602560248201527f4e6f7420656e6f75676820746f6b656e732072656d61696e696e6720696e207360448201527f7570706c790000000000000000000000000000000000000000000000000000006064820152608401610999565b82600a60008282546116039190612c14565b909155506116149050338484611ec4565b5050600160075550565b6000818152600260205260409020546060906001600160a01b03166116ab5760405162461bcd60e51b815260206004820152602f60248201527f4552433732314d657461646174613a2055524920717565727920666f72206e6f60448201527f6e6578697374656e7420746f6b656e00000000000000000000000000000000006064820152608401610999565b6000600980546116ba90612ca2565b9050116116d6576040518060200160405280600081525061088c565b60096116e1836120ce565b6040516020016116f2929190612ac5565b60405160208183030381529060405292915050565b6060600980546108a190612ca2565b6006546001600160a01b031633146117705760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610999565b600880546002919060ff1916600183610bf7565b600260075414156117d75760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610999565b6002600755600160085460ff1660028111156117f5576117f5612d38565b1480156118045750600d5460ff165b6118505760405162461bcd60e51b815260206004820152601760248201527f46726565206d696e74206973206e6f74206163746976650000000000000000006044820152606401610999565b600082118015611866575061186633838361127b565b6118b25760405162461bcd60e51b815260206004820152600e60248201527f4e6f7420617574686f72697a65640000000000000000000000000000000000006044820152606401610999565b600e5460006118c084612200565b90506108fd81600b546118d39190612c14565b1080156118ea575061189d6118e88284612c14565b105b6119365760405162461bcd60e51b815260206004820181905260248201527f46726565206d696e7420737570706c7920686173206265656e206d696e7465646044820152606401610999565b600a81106119905760405162461bcd60e51b815260206004820152602160248201527f45786365656473206d6178206d696e747320706572207472616e73616374696f6044820152603760f91b6064820152608401610999565b3360009081526011602052604090205460ff16156119f05760405162461bcd60e51b815260206004820152601a60248201527f416c726561647920636c61696d65642066726565206d696e74730000000000006044820152606401610999565b336000908152601160205260408120805460ff19166001179055600b8054839290611a1c908490612c14565b90915550610f139050338284611ec4565b6006546001600160a01b03163314611a875760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610999565b6001600160a01b038116611b035760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610999565b611b0c81611f0c565b50565b6006546001600160a01b03163314611b695760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610999565b600880546001919060ff19168280610bf7565b6000818152600460205260409020805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0384169081179091558190611bbe82610f1e565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000818152600260205260408120546001600160a01b0316611c705760405162461bcd60e51b815260206004820152602c60248201527f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860448201526b34b9ba32b73a103a37b5b2b760a11b6064820152608401610999565b6000611c7b83610f1e565b9050806001600160a01b0316846001600160a01b03161480611cb65750836001600160a01b0316611cab84610924565b6001600160a01b0316145b806112c757506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff166112c7565b826001600160a01b0316611cfd82610f1e565b6001600160a01b031614611d795760405162461bcd60e51b815260206004820152602960248201527f4552433732313a207472616e73666572206f6620746f6b656e2074686174206960448201527f73206e6f74206f776e00000000000000000000000000000000000000000000006064820152608401610999565b6001600160a01b038216611df45760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152608401610999565b611dff600082611b7c565b6001600160a01b0383166000908152600360205260408120805460019290611e28908490612c5f565b90915550506001600160a01b0382166000908152600360205260408120805460019290611e56908490612c14565b9091555050600081815260026020526040808220805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b81600e6000828254611ed69190612c14565b90915550600090505b8281101561143157611efa84611ef58385612c14565b61221f565b80611f0481612cdd565b915050611edf565b600680546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff19831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600082611f788584612239565b14949350505050565b816001600160a01b0316836001600160a01b03161415611fe35760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610999565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b61205b848484611cea565b612067848484846122e5565b6114315760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b6064820152608401610999565b60608161210e57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115612138578061212281612cdd565b91506121319050600a83612c2c565b9150612112565b60008167ffffffffffffffff81111561215357612153612d64565b6040519080825280601f01601f19166020018201604052801561217d576020820181803683370190505b5090505b84156112c757612192600183612c5f565b915061219f600a86612cf8565b6121aa906030612c14565b60f81b8183815181106121bf576121bf612d4e565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506121f9600a86612c2c565b9450612181565b60006001601383111561088c57612218600a84612c2c565b9392505050565b61126882826040518060200160405280600081525061243d565b600081815b84518110156122dd57600085828151811061225b5761225b612d4e565b6020026020010151905080831161229d5760408051602081018590529081018290526060016040516020818303038152906040528051906020012092506122ca565b60408051602081018390529081018490526060016040516020818303038152906040528051906020012092505b50806122d581612cdd565b91505061223e565b509392505050565b60006001600160a01b0384163b1561243257604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290612329903390899088908890600401612b6c565b602060405180830381600087803b15801561234357600080fd5b505af1925050508015612373575060408051601f3d908101601f191682019092526123709181019061297d565b60015b612418573d8080156123a1576040519150601f19603f3d011682016040523d82523d6000602084013e6123a6565b606091505b5080516124105760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b6064820152608401610999565b805181602001fd5b6001600160e01b031916630a85bd0160e11b1490506112c7565b506001949350505050565b61244783836124bb565b61245460008484846122e5565b610aeb5760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b6064820152608401610999565b6001600160a01b0382166125115760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610999565b6000818152600260205260409020546001600160a01b0316156125765760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610999565b6001600160a01b038216600090815260036020526040812080546001929061259f908490612c14565b9091555050600081815260026020526040808220805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b82805461261690612ca2565b90600052602060002090601f016020900481019282612638576000855561267e565b82601f1061265157805160ff191683800117855561267e565b8280016001018555821561267e579182015b8281111561267e578251825591602001919060010190612663565b5061268a92915061268e565b5090565b5b8082111561268a576000815560010161268f565b600067ffffffffffffffff8311156126bd576126bd612d64565b6126d0601f8401601f1916602001612be3565b90508281528383830111156126e457600080fd5b828260208301376000602084830101529392505050565b80356001600160a01b038116811461271257600080fd5b919050565b600082601f83011261272857600080fd5b8135602067ffffffffffffffff82111561274457612744612d64565b8160051b612753828201612be3565b83815282810190868401838801850189101561276e57600080fd5b600093505b85841015612791578035835260019390930192918401918401612773565b50979650505050505050565b6000602082840312156127af57600080fd5b612218826126fb565b600080604083850312156127cb57600080fd5b6127d4836126fb565b91506127e2602084016126fb565b90509250929050565b60008060006060848603121561280057600080fd5b612809846126fb565b9250612817602085016126fb565b9150604084013590509250925092565b6000806000806080858703121561283d57600080fd5b612846856126fb565b9350612854602086016126fb565b925060408501359150606085013567ffffffffffffffff81111561287757600080fd5b8501601f8101871361288857600080fd5b612897878235602084016126a3565b91505092959194509250565b600080604083850312156128b657600080fd5b6128bf836126fb565b9150602083013580151581146128d457600080fd5b809150509250929050565b600080604083850312156128f257600080fd5b6128fb836126fb565b946020939093013593505050565b60008060006060848603121561291e57600080fd5b612927846126fb565b925060208401359150604084013567ffffffffffffffff81111561294a57600080fd5b61295686828701612717565b9150509250925092565b60006020828403121561297257600080fd5b813561221881612d7a565b60006020828403121561298f57600080fd5b815161221881612d7a565b6000602082840312156129ac57600080fd5b813567ffffffffffffffff8111156129c357600080fd5b8201601f810184136129d457600080fd5b6112c7848235602084016126a3565b6000602082840312156129f557600080fd5b5035919050565b60008060408385031215612a0f57600080fd5b82359150602083013567ffffffffffffffff811115612a2d57600080fd5b612a3985828601612717565b9150509250929050565b600080600060608486031215612a5857600080fd5b8335925060208401359150604084013567ffffffffffffffff81111561294a57600080fd5b60008151808452612a95816020860160208601612c76565b601f01601f19169290920160200192915050565b60008151612abb818560208601612c76565b9290920192915050565b600080845481600182811c915080831680612ae157607f831692505b6020808410821415612b0157634e487b7160e01b86526022600452602486fd5b818015612b155760018114612b2657612b53565b60ff19861689528489019650612b53565b60008b81526020902060005b86811015612b4b5781548b820152908501908301612b32565b505084890196505b505050505050612b638185612aa9565b95945050505050565b60006001600160a01b03808716835280861660208401525083604083015260806060830152612b9e6080830184612a7d565b9695505050505050565b6020810160038310612bca57634e487b7160e01b600052602160045260246000fd5b91905290565b6020815260006122186020830184612a7d565b604051601f8201601f1916810167ffffffffffffffff81118282101715612c0c57612c0c612d64565b604052919050565b60008219821115612c2757612c27612d0c565b500190565b600082612c3b57612c3b612d22565b500490565b6000816000190483118215151615612c5a57612c5a612d0c565b500290565b600082821015612c7157612c71612d0c565b500390565b60005b83811015612c91578181015183820152602001612c79565b838111156114315750506000910152565b600181811c90821680612cb657607f821691505b60208210811415612cd757634e487b7160e01b600052602260045260246000fd5b50919050565b6000600019821415612cf157612cf1612d0c565b5060010190565b600082612d0757612d07612d22565b500690565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160e01b031981168114611b0c57600080fdfea26469706673582212200a469193b80b36bd98c9195719a3030bcef7c815a5f545770184f6f7e742edd364736f6c6343000807003368747470733a2f2f6170692e63727970746f77616c6b6572732e696f2f6170692f776561706f6e2f