Loading
[ { "inputs": [ { "internalType": "string", "name": "_uri", "type": "string" }, { "internalType": "address", "name": "_layerZeroEndpoint", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "ApprovalCallerNotOwnerNorApproved", "type": "error" }, { "inputs": [], "name": "ApprovalQueryForNonexistentToken", "type": "error" }, { "inputs": [], "name": "ApproveToCaller", "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": false, "internalType": "uint16", "name": "_srcChainId", "type": "uint16" }, { "indexed": false, "internalType": "bytes", "name": "_srcAddress", "type": "bytes" }, { "indexed": false, "internalType": "uint64", "name": "_nonce", "type": "uint64" }, { "indexed": false, "internalType": "bytes", "name": "_payload", "type": "bytes" } ], "name": "MessageFailed", "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": "_mintAmount", "type": "uint256" }, { "internalType": "address", "name": "_receiver", "type": "address" } ], "name": "Airdrop", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "FreeMintCollection", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_mintAmount", "type": "uint256" } ], "name": "Kickflip", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_mintAmount", "type": "uint256" } ], "name": "PublicMint", "outputs": [], "stateMutability": "payable", "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": "bridgeable", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "donate", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "", "type": "uint16" }, { "internalType": "bytes", "name": "", "type": "bytes" }, { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "failedMessages", "outputs": [ { "internalType": "uint256", "name": "payloadLength", "type": "uint256" }, { "internalType": "bytes32", "name": "payloadHash", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "freeprice", "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": "hiddenMetadataUri", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "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": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "kickflipClaimed", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "kickflipSale", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_srcChainId", "type": "uint16" }, { "internalType": "bytes", "name": "_srcAddress", "type": "bytes" }, { "internalType": "uint64", "name": "_nonce", "type": "uint64" }, { "internalType": "bytes", "name": "_payload", "type": "bytes" } ], "name": "lzReceive", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "maxLimitPerWallet", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxMintAmountPerTx", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_srcChainId", "type": "uint16" }, { "internalType": "bytes", "name": "_srcAddress", "type": "bytes" }, { "internalType": "uint64", "name": "_nonce", "type": "uint64" }, { "internalType": "bytes", "name": "_payload", "type": "bytes" } ], "name": "onLzReceive", "outputs": [], "stateMutability": "nonpayable", "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": "publicSale", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_srcChainId", "type": "uint16" }, { "internalType": "bytes", "name": "_srcAddress", "type": "bytes" }, { "internalType": "uint64", "name": "_nonce", "type": "uint64" }, { "internalType": "bytes", "name": "_payload", "type": "bytes" } ], "name": "retryMessage", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "revealed", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "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": [ { "internalType": "bool", "name": "_state", "type": "bool" } ], "name": "setBridgeStatus", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_contractaddress", "type": "address" } ], "name": "setFreeMintCollectionAddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newVal", "type": "uint256" } ], "name": "setGasForDestinationLzReceive", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "_hiddenMetadataUri", "type": "string" } ], "name": "setHiddenMetadataUri", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_maxMintAmountPerTx", "type": "uint256" } ], "name": "setMaxMintAmountPerTx", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_price", "type": "uint256" } ], "name": "setPrice", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "_state", "type": "bool" } ], "name": "setRevealed", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "_chainId", "type": "uint16" }, { "internalType": "bytes", "name": "_trustedRemote", "type": "bytes" } ], "name": "setTrustedRemote", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "_uriSuffix", "type": "string" } ], "name": "setUriSuffix", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_price", "type": "uint256" } ], "name": "setfreeprice", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "_state", "type": "bool" } ], "name": "setkickflipSale", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_maxLimitPerWallet", "type": "uint256" } ], "name": "setmaxLimitPerWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "_publicSale", "type": "bool" } ], "name": "setpublicSale", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_supplyLimit", "type": "uint256" } ], "name": "setsupplyLimit", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "_uri", "type": "string" } ], "name": "seturi", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "supplyLimit", "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": "tokenIDStart", "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": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "tokensOfOwner", "outputs": [ { "internalType": "uint256[]", "name": "", "type": "uint256[]" } ], "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": "uint16", "name": "_chainId", "type": "uint16" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "traverseChains", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "uint16", "name": "", "type": "uint16" } ], "name": "trustedRemoteLookup", "outputs": [ { "internalType": "bytes", "name": "", "type": "bytes" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "uri", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "uriSuffix", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "withdraw", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
60c06040526005608081905264173539b7b760d91b60a09081526200002891600e919062000290565b506040805180820190915260188082527f697066733a2f2f4349442f66696c656e616d652e6a736f6e000000000000000060209092019182526200006f91600f9162000290565b506647d5fb9d5bc000601055600060115561028c6012556103f760135560016014819055601960158190556016805462ffffff191690556018805460ff1916909217909155620557309055601a80546001600160a01b031916731325cba8123f2bf381911ef36e23738f2e2e4697179055348015620000ed57600080fd5b50604051620040a6380380620040a6833981016040819052620001109162000369565b604080518082018252600f81526e7230636b657420666c69707065727360881b6020808301918252835180850190945260068452651c8c18dad95d60d21b908401528151919291620001659160029162000290565b5080516200017b90600390602084019062000290565b5050601254600055506200018f33620001c6565b60016009556200019f8262000218565b600a80546001600160a01b0319166001600160a01b03929092169190911790555062000496565b600880546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6008546001600160a01b03163314620002775760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640160405180910390fd5b80516200028c90600d90602084019062000290565b5050565b8280546200029e906200045a565b90600052602060002090601f016020900481019282620002c257600085556200030d565b82601f10620002dd57805160ff19168380011785556200030d565b828001600101855582156200030d579182015b828111156200030d578251825591602001919060010190620002f0565b506200031b9291506200031f565b5090565b5b808211156200031b576000815560010162000320565b634e487b7160e01b600052604160045260246000fd5b80516001600160a01b03811681146200036457600080fd5b919050565b600080604083850312156200037d57600080fd5b82516001600160401b03808211156200039557600080fd5b818501915085601f830112620003aa57600080fd5b815181811115620003bf57620003bf62000336565b604051601f8201601f19908116603f01168101908382118183101715620003ea57620003ea62000336565b816040528281526020935088848487010111156200040757600080fd5b600091505b828210156200042b57848201840151818301850152908301906200040c565b828211156200043d5760008484830101525b95506200044f9150508582016200034c565b925050509250929050565b600181811c908216806200046f57607f821691505b6020821081036200049057634e487b7160e01b600052602260045260246000fd5b50919050565b613c0080620004a66000396000f3fe60806040526004361061038a5760003560e01c80637512ecfd116101dc578063b071401b11610102578063e0a80853116100a0578063ed88c68e1161006f578063ed88c68e146103af578063f2fde38b14610a63578063f4fb584614610a83578063f648498014610ab357600080fd5b8063e0a80853146109c5578063e985e9c5146109e5578063eac989f814610a2e578063eb8d72b714610a4357600080fd5b8063cf89fa03116100dc578063cf89fa031461095f578063d1deba1f14610972578063d58a848314610985578063d9f0a671146109a557600080fd5b8063b071401b146108ff578063b88d4fde1461091f578063c87b56dd1461093f57600080fd5b806391b7f5ed1161017a5780639fb17e34116101495780639fb17e34146108a1578063a035b1fe146108b4578063a22cb465146108ca578063a45ba8e7146108ea57600080fd5b806391b7f5ed1461083657806394354fd014610856578063943fb8721461086c57806395d89b411461088c57600080fd5b8063801903a4116101b6578063801903a4146107665780638462151c146107805780638da5cb5b146107ad5780638ee74912146107cb57600080fd5b80637512ecfd146107105780637533d788146107265780637871e1541461074657600080fd5b80633fbc67c5116102c15780635503a0e81161025f5780636352211e1161022e5780636352211e146106a857806370a08231146106c8578063715018a6146106e85780637454430b146106fd57600080fd5b80635503a0e81461063d578063596cf96e146106525780635a0b8b23146106725780635c22abd21461068857600080fd5b80634deb86751161029b5780634deb8675146105cd5780634fdd43cb146105e35780635183022714610603578063530da8ef1461061d57600080fd5b80633fbc67c51461056d57806340e1c23c1461058d57806342842e0e146105ad57600080fd5b806318160ddd1161032e57806323b872dd1161030857806323b872dd146104f957806331d97bc31461051957806333bc1c5c146105395780633ccfd60b1461055857600080fd5b806318160ddd146104a057806319d1997a146104c35780631c37a822146104d957600080fd5b806306fdde031161036a57806306fdde0314610406578063081812fc14610428578063095ea7b31461046057806316ba10e01461048057600080fd5b80621d35671461038f57806275770a146103b157806301ffc9a7146103d1575b600080fd5b34801561039b57600080fd5b506103af6103aa3660046131e8565b610ad3565b005b3480156103bd57600080fd5b506103af6103cc36600461326d565b610cd7565b3480156103dd57600080fd5b506103f16103ec36600461329c565b610d24565b60405190151581526020015b60405180910390f35b34801561041257600080fd5b5061041b610dc1565b6040516103fd9190613311565b34801561043457600080fd5b5061044861044336600461326d565b610e53565b6040516001600160a01b0390911681526020016103fd565b34801561046c57600080fd5b506103af61047b366004613339565b610eb0565b34801561048c57600080fd5b506103af61049b366004613365565b610f76565b3480156104ac57600080fd5b506104b5610fd5565b6040519081526020016103fd565b3480156104cf57600080fd5b506104b560135481565b3480156104e557600080fd5b506103af6104f43660046131e8565b610fed565b34801561050557600080fd5b506103af6105143660046133ae565b61106e565b34801561052557600080fd5b50601a54610448906001600160a01b031681565b34801561054557600080fd5b506016546103f190610100900460ff1681565b34801561056457600080fd5b506103af611244565b34801561057957600080fd5b506103af6105883660046133ef565b61135c565b34801561059957600080fd5b506103af6105a836600461341c565b6113d3565b3480156105b957600080fd5b506103af6105c83660046133ae565b61142e565b3480156105d957600080fd5b506104b560125481565b3480156105ef57600080fd5b506103af6105fe366004613365565b61144e565b34801561060f57600080fd5b506018546103f19060ff1681565b34801561062957600080fd5b506016546103f19062010000900460ff1681565b34801561064957600080fd5b5061041b6114a9565b34801561065e57600080fd5b506103af61066d36600461326d565b611537565b34801561067e57600080fd5b506104b560155481565b34801561069457600080fd5b506103af6106a336600461341c565b611584565b3480156106b457600080fd5b506104486106c336600461326d565b6115e6565b3480156106d457600080fd5b506104b56106e33660046133ef565b6115f1565b3480156106f457600080fd5b506103af611659565b6103af61070b36600461326d565b6116ad565b34801561071c57600080fd5b506104b560115481565b34801561073257600080fd5b5061041b610741366004613437565b6119db565b34801561075257600080fd5b506103af610761366004613452565b6119f4565b34801561077257600080fd5b506016546103f19060ff1681565b34801561078c57600080fd5b506107a061079b3660046133ef565b611aaa565b6040516103fd9190613482565b3480156107b957600080fd5b506008546001600160a01b0316610448565b3480156107d757600080fd5b506108216107e63660046134c6565b600b60209081526000938452604080852084518086018401805192815290840195840195909520945292905282529020805460019091015482565b604080519283526020830191909152016103fd565b34801561084257600080fd5b506103af61085136600461326d565b611b9c565b34801561086257600080fd5b506104b560145481565b34801561087857600080fd5b506103af61088736600461326d565b611be9565b34801561089857600080fd5b5061041b611c36565b6103af6108af36600461326d565b611c45565b3480156108c057600080fd5b506104b560105481565b3480156108d657600080fd5b506103af6108e536600461351d565b611e2d565b3480156108f657600080fd5b5061041b611edb565b34801561090b57600080fd5b506103af61091a36600461326d565b611ee8565b34801561092b57600080fd5b506103af61093a366004613552565b611f35565b34801561094b57600080fd5b5061041b61095a36600461326d565b611f79565b6103af61096d3660046135b2565b6120f6565b6103af610980366004613617565b6124ae565b34801561099157600080fd5b506103af6109a036600461341c565b612653565b3480156109b157600080fd5b506103af6109c036600461326d565b6126b7565b3480156109d157600080fd5b506103af6109e036600461341c565b612704565b3480156109f157600080fd5b506103f1610a003660046136a3565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205460ff1690565b348015610a3a57600080fd5b5061041b61275f565b348015610a4f57600080fd5b506103af610a5e3660046136d1565b61276c565b348015610a6f57600080fd5b506103af610a7e3660046133ef565b6127d2565b348015610a8f57600080fd5b506103f1610a9e3660046133ef565b60176020526000908152604090205460ff1681565b348015610abf57600080fd5b506103af610ace366004613365565b61289f565b600a546001600160a01b03163314610aea57600080fd5b61ffff84166000908152600c602052604090208054610b0890613724565b90508351148015610b47575061ffff84166000908152600c6020526040908190209051610b3591906137cd565b60405180910390208380519060200120145b610bbe5760405162461bcd60e51b815260206004820152603460248201527f4e6f6e626c6f636b696e6752656365697665723a20696e76616c696420736f7560448201527f7263652073656e64696e6720636f6e747261637400000000000000000000000060648201526084015b60405180910390fd5b604051630e1bd41160e11b81523090631c37a82290610be79087908790879087906004016137d9565b600060405180830381600087803b158015610c0157600080fd5b505af1925050508015610c12575060015b610cd1576040518060400160405280825181526020018280519060200120815250600b60008661ffff1661ffff16815260200190815260200160002084604051610c5c9190613823565b90815260408051918290036020908101832067ffffffffffffffff8716600090815290825291909120835181559201516001909201919091557fe6f254030bcb01ffd20558175c13fcaed6d1520be7becee4c961b65f79243b0d90610cc89086908690869086906137d9565b60405180910390a15b50505050565b6008546001600160a01b03163314610d1f5760405162461bcd60e51b81526020600482018190526024820152600080516020613bab8339815191526044820152606401610bb5565b601355565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b031983161480610d8757507f80ac58cd000000000000000000000000000000000000000000000000000000006001600160e01b03198316145b80610dbb57507f5b5e139f000000000000000000000000000000000000000000000000000000006001600160e01b03198316145b92915050565b606060028054610dd090613724565b80601f0160208091040260200160405190810160405280929190818152602001828054610dfc90613724565b8015610e495780601f10610e1e57610100808354040283529160200191610e49565b820191906000526020600020905b815481529060010190602001808311610e2c57829003601f168201915b5050505050905090565b6000610e5e826128fa565b610e94576040517fcf4700e400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b506000908152600660205260409020546001600160a01b031690565b6000610ebb826115e6565b9050336001600160a01b03821614610f0d57610ed78133610a00565b610f0d576040517fcfb3b94200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600082815260066020526040808220805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6008546001600160a01b03163314610fbe5760405162461bcd60e51b81526020600482018190526024820152600080516020613bab8339815191526044820152606401610bb5565b8051610fd190600e906020840190613000565b5050565b6000610fe060125490565b6001546000540303905090565b3330146110625760405162461bcd60e51b815260206004820152602b60248201527f4e6f6e626c6f636b696e6752656365697665723a2063616c6c6572206d75737460448201527f206265204272696467652e0000000000000000000000000000000000000000006064820152608401610bb5565b610cd184848484612936565b60006110798261295b565b9050836001600160a01b0316816001600160a01b0316146110c6576040517fa114810000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600082815260066020526040902080546110f28187335b6001600160a01b039081169116811491141790565b61111d576111008633610a00565b61111d57604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b03851661115d576040517fea553b3400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b801561116857600082555b6001600160a01b038681166000908152600560205260408082208054600019019055918716808252919020805460010190554260a01b17600160e11b17600085815260046020526040812091909155600160e11b841690036111fa576001840160008181526004602052604081205490036111f85760005481146111f85760008181526004602052604090208490555b505b83856001600160a01b0316876001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45b505050505050565b6008546001600160a01b0316331461128c5760405162461bcd60e51b81526020600482018190526024820152600080516020613bab8339815191526044820152606401610bb5565b6002600954036112de5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610bb5565b600260095560006112f76008546001600160a01b031690565b6001600160a01b03164760405160006040518083038185875af1925050503d8060008114611341576040519150601f19603f3d011682016040523d82523d6000602084013e611346565b606091505b505090508061135457600080fd5b506001600955565b6008546001600160a01b031633146113a45760405162461bcd60e51b81526020600482018190526024820152600080516020613bab8339815191526044820152606401610bb5565b601a805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6008546001600160a01b0316331461141b5760405162461bcd60e51b81526020600482018190526024820152600080516020613bab8339815191526044820152606401610bb5565b6016805460ff1916911515919091179055565b61144983838360405180602001604052806000815250611f35565b505050565b6008546001600160a01b031633146114965760405162461bcd60e51b81526020600482018190526024820152600080516020613bab8339815191526044820152606401610bb5565b8051610fd190600f906020840190613000565b600e80546114b690613724565b80601f01602080910402602001604051908101604052809291908181526020018280546114e290613724565b801561152f5780601f106115045761010080835404028352916020019161152f565b820191906000526020600020905b81548152906001019060200180831161151257829003601f168201915b505050505081565b6008546001600160a01b0316331461157f5760405162461bcd60e51b81526020600482018190526024820152600080516020613bab8339815191526044820152606401610bb5565b601155565b6008546001600160a01b031633146115cc5760405162461bcd60e51b81526020600482018190526024820152600080516020613bab8339815191526044820152606401610bb5565b601680549115156101000261ff0019909216919091179055565b6000610dbb8261295b565b60006001600160a01b038216611633576040517f8f4eb60400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b506001600160a01b031660009081526005602052604090205467ffffffffffffffff1690565b6008546001600160a01b031633146116a15760405162461bcd60e51b81526020600482018190526024820152600080516020613bab8339815191526044820152606401610bb5565b6116ab60006129ea565b565b601a546040516370a0823160e01b81523360048201526001600160a01b039091169060009082906370a0823190602401602060405180830381865afa1580156116fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061171e919061383f565b60000361172d57506000611798565b6040516370a0823160e01b81523360048201526001600160a01b038316906370a0823190602401602060405180830381865afa158015611771573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611795919061383f565b90505b60165460ff166117ea5760405162461bcd60e51b815260206004820152601b60248201527f546865206b69636b666c697053616c65206973207061757365642100000000006044820152606401610bb5565b8060000361183a5760405162461bcd60e51b815260206004820152601760248201527f596f7520646f6e74206f776e20616e7920746f6b656e730000000000000000006044820152606401610bb5565b60008311801561184a5750808311155b6118965760405162461bcd60e51b815260206004820152601260248201527f46726565204d696e7420457863656564656400000000000000000000000000006044820152606401610bb5565b601354836118a2610fd5565b6118ac919061386e565b11156118fa5760405162461bcd60e51b815260206004820152601460248201527f4d617820737570706c79206578636565646564210000000000000000000000006044820152606401610bb5565b826011546119089190613886565b3410156119575760405162461bcd60e51b815260206004820152601360248201527f496e73756666696369656e742066756e647321000000000000000000000000006044820152606401610bb5565b3360009081526017602052604090205460ff16156119b75760405162461bcd60e51b815260206004820152601860248201527f4164647265737320616c726561647920636c61696d65642100000000000000006044820152606401610bb5565b336000818152601760205260409020805460ff191660011790556114499084612a49565b600c60205260009081526040902080546114b690613724565b6008546001600160a01b03163314611a3c5760405162461bcd60e51b81526020600482018190526024820152600080516020613bab8339815191526044820152606401610bb5565b60135482611a48610fd5565b611a52919061386e565b1115611aa05760405162461bcd60e51b815260206004820152601460248201527f4d617820737570706c79206578636565646564210000000000000000000000006044820152606401610bb5565b610fd18183612a49565b60606000611ab7836115f1565b67ffffffffffffffff811115611acf57611acf613124565b604051908082528060200260200182016040528015611af8578160200160208202803683370190505b5090506000611b0660005490565b905060008060005b83811015611b91576000611b2182612a63565b9050806040015115611b335750611b89565b80516001600160a01b031615611b4857805192505b876001600160a01b0316836001600160a01b031603611b875781868580600101965081518110611b7a57611b7a6138a5565b6020026020010181815250505b505b600101611b0e565b509295945050505050565b6008546001600160a01b03163314611be45760405162461bcd60e51b81526020600482018190526024820152600080516020613bab8339815191526044820152606401610bb5565b601055565b6008546001600160a01b03163314611c315760405162461bcd60e51b81526020600482018190526024820152600080516020613bab8339815191526044820152606401610bb5565b601955565b606060038054610dd090613724565b601654610100900460ff16611c9c5760405162461bcd60e51b815260206004820152601960248201527f546865205075626c696353616c652069732070617573656421000000000000006044820152606401610bb5565b600081118015611cae57506014548111155b611cfa5760405162461bcd60e51b815260206004820152601460248201527f496e76616c6964206d696e7420616d6f756e74210000000000000000000000006044820152606401610bb5565b60135481611d06610fd5565b611d10919061386e565b1115611d5e5760405162461bcd60e51b815260206004820152601460248201527f4d617820737570706c79206578636565646564210000000000000000000000006044820152606401610bb5565b60155481611d6b336115f1565b611d75919061386e565b1115611dc35760405162461bcd60e51b815260206004820152601d60248201527f4d6178206d696e74207065722077616c6c6574206578636565646564210000006044820152606401610bb5565b80601054611dd19190613886565b341015611e205760405162461bcd60e51b815260206004820152601360248201527f496e73756666696369656e742066756e647321000000000000000000000000006044820152606401610bb5565b611e2a3382612a49565b50565b336001600160a01b03831603611e6f576040517fb06307db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3360008181526007602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b600f80546114b690613724565b6008546001600160a01b03163314611f305760405162461bcd60e51b81526020600482018190526024820152600080516020613bab8339815191526044820152606401610bb5565b601455565b611f4084848461106e565b6001600160a01b0383163b15610cd157611f5c84848484612ae2565b610cd1576040516368d2bf6b60e11b815260040160405180910390fd5b6060611f84826128fa565b611ff65760405162461bcd60e51b815260206004820152602f60248201527f4552433732314d657461646174613a2055524920717565727920666f72206e6f60448201527f6e6578697374656e7420746f6b656e00000000000000000000000000000000006064820152608401610bb5565b60185460ff16151560000361209757600f805461201290613724565b80601f016020809104026020016040519081016040528092919081815260200182805461203e90613724565b801561208b5780601f106120605761010080835404028352916020019161208b565b820191906000526020600020905b81548152906001019060200180831161206e57829003601f168201915b50505050509050919050565b60006120a1612bce565b905060008151116120c157604051806020016040528060008152506120ef565b806120cb84612bdd565b600e6040516020016120df939291906138bb565b6040516020818303038152906040525b9392505050565b6120ff816115e6565b6001600160a01b0316336001600160a01b0316146121855760405162461bcd60e51b815260206004820152602260248201527f596f75206d757374206f776e2074686520746f6b656e20746f2074726176657260448201527f73650000000000000000000000000000000000000000000000000000000000006064820152608401610bb5565b61ffff82166000908152600c6020526040812080546121a390613724565b9050116122185760405162461bcd60e51b815260206004820152602e60248201527f5468697320636861696e2069732063757272656e746c7920756e617661696c6160448201527f626c6520666f722074726176656c0000000000000000000000000000000000006064820152608401610bb5565b61222181612d12565b604080513360208201528082018390528151808203830181526060820183526019547e0100000000000000000000000000000000000000000000000000000000000060808401526082808401919091528351808403909101815260a2830193849052600a547f40a7bb100000000000000000000000000000000000000000000000000000000090945290926001926000916001600160a01b0316906340a7bb10906122d8908990309089908790899060a6016138ed565b6040805180830381865afa1580156122f4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612318919061393f565b509050803410156123b75760405162461bcd60e51b815260206004820152605460248201527f7230636b657420666c6970706572733a206d73672e76616c7565206e6f74206560448201527f6e6f75676820746f20636f766572206d6573736167654665652e2053656e642060648201527f67617320666f72206d6573736167652066656573000000000000000000000000608482015260a401610bb5565b60165462010000900460ff1661240f5760405162461bcd60e51b815260206004820152601560248201527f54686520627269646765206973207061757365642100000000000000000000006044820152606401610bb5565b600a5461ffff87166000908152600c602052604080822090517fc58031000000000000000000000000000000000000000000000000000000000081526001600160a01b039093169263c5803100923492612474928c928b913391908b90600401613963565b6000604051808303818588803b15801561248d57600080fd5b505af11580156124a1573d6000803e3d6000fd5b5050505050505050505050565b61ffff85166000908152600b602052604080822090516124cf908790613823565b908152604080516020928190038301902067ffffffffffffffff8716600090815292529020600181015490915061256e5760405162461bcd60e51b815260206004820152602660248201527f4e6f6e626c6f636b696e6752656365697665723a206e6f2073746f726564206d60448201527f65737361676500000000000000000000000000000000000000000000000000006064820152608401610bb5565b80548214801561259857508060010154838360405161258e929190613a43565b6040518091039020145b6125e45760405162461bcd60e51b815260206004820152601a60248201527f4c617965725a65726f3a20696e76616c6964207061796c6f61640000000000006044820152606401610bb5565b60008082556001820155604051630e1bd41160e11b81523090631c37a822906126199089908990899089908990600401613a53565b600060405180830381600087803b15801561263357600080fd5b505af1158015612647573d6000803e3d6000fd5b50505050505050505050565b6008546001600160a01b0316331461269b5760405162461bcd60e51b81526020600482018190526024820152600080516020613bab8339815191526044820152606401610bb5565b60168054911515620100000262ff000019909216919091179055565b6008546001600160a01b031633146126ff5760405162461bcd60e51b81526020600482018190526024820152600080516020613bab8339815191526044820152606401610bb5565b601555565b6008546001600160a01b0316331461274c5760405162461bcd60e51b81526020600482018190526024820152600080516020613bab8339815191526044820152606401610bb5565b6018805460ff1916911515919091179055565b600d80546114b690613724565b6008546001600160a01b031633146127b45760405162461bcd60e51b81526020600482018190526024820152600080516020613bab8339815191526044820152606401610bb5565b61ffff83166000908152600c60205260409020610cd1908383613084565b6008546001600160a01b0316331461281a5760405162461bcd60e51b81526020600482018190526024820152600080516020613bab8339815191526044820152606401610bb5565b6001600160a01b0381166128965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610bb5565b611e2a816129ea565b6008546001600160a01b031633146128e75760405162461bcd60e51b81526020600482018190526024820152600080516020613bab8339815191526044820152606401610bb5565b8051610fd190600d906020840190613000565b60008161290660125490565b11158015612915575060005482105b8015610dbb575050600090815260046020526040902054600160e01b161590565b6000808280602001905181019061294d9190613ab5565b9150915061123c8282612a49565b6000818061296860125490565b116129b8576000548110156129b85760008181526004602052604081205490600160e01b821690036129b6575b806000036120ef575060001901600081815260046020526040902054612995565b505b6040517fdf2d9b4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600880546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff19831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610fd1828260405180602001604052806000815250612d1d565b604080516080810182526000808252602082018190529181018290526060810191909152600082815260046020526040902054610dbb90604080516080810182526001600160a01b038316815260a083901c67ffffffffffffffff166020820152600160e01b831615159181019190915260e89190911c606082015290565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a0290612b17903390899088908890600401613ae3565b6020604051808303816000875af1925050508015612b52575060408051601f3d908101601f19168201909252612b4f91810190613b1f565b60015b612bb0573d808015612b80576040519150601f19603f3d011682016040523d82523d6000602084013e612b85565b606091505b508051600003612ba8576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b1490505b949350505050565b6060600d8054610dd090613724565b606081600003612c2057505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115612c4a5780612c3481613b3c565b9150612c439050600a83613b6b565b9150612c24565b60008167ffffffffffffffff811115612c6557612c65613124565b6040519080825280601f01601f191660200182016040528015612c8f576020820181803683370190505b5090505b8415612bc657612ca4600183613b7f565b9150612cb1600a86613b96565b612cbc90603061386e565b60f81b818381518110612cd157612cd16138a5565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350612d0b600a86613b6b565b9450612c93565b611e2a816000612d8a565b612d278383612eed565b6001600160a01b0383163b15611449576000548281035b612d516000868380600101945086612ae2565b612d6e576040516368d2bf6b60e11b815260040160405180910390fd5b818110612d3e578160005414612d8357600080fd5b5050505050565b6000612d958361295b565b905080600080612db386600090815260066020526040902080549091565b915091508415612df357612dc88184336110dd565b612df357612dd68333610a00565b612df357604051632ce44b5f60e11b815260040160405180910390fd5b8015612dfe57600082555b6001600160a01b038316600081815260056020526040902080546fffffffffffffffffffffffffffffffff0190554260a01b177c030000000000000000000000000000000000000000000000000000000017600087815260046020526040812091909155600160e11b85169003612ea557600186016000818152600460205260408120549003612ea3576000548114612ea35760008181526004602052604090208590555b505b60405186906000906001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050600180548101905550505050565b6000546001600160a01b038316612f30576040517f2e07630000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b81600003612f6a576040517fb562e8dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b038316600081815260056020526040902080546801000000000000000185020190554260a01b6001841460e11b1717600082815260046020526040902055808281015b6040516001830192906001600160a01b038716906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a4808210612fb45760005550505050565b82805461300c90613724565b90600052602060002090601f01602090048101928261302e5760008555613074565b82601f1061304757805160ff1916838001178555613074565b82800160010185558215613074579182015b82811115613074578251825591602001919060010190613059565b506130809291506130f8565b5090565b82805461309090613724565b90600052602060002090601f0160209004810192826130b25760008555613074565b82601f106130cb5782800160ff19823516178555613074565b82800160010185558215613074579182015b828111156130745782358255916020019190600101906130dd565b5b8082111561308057600081556001016130f9565b803561ffff8116811461311f57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b600067ffffffffffffffff8084111561315557613155613124565b604051601f8501601f19908116603f0116810190828211818310171561317d5761317d613124565b8160405280935085815286868601111561319657600080fd5b858560208301376000602087830101525050509392505050565b600082601f8301126131c157600080fd5b6120ef8383356020850161313a565b803567ffffffffffffffff8116811461311f57600080fd5b600080600080608085870312156131fe57600080fd5b6132078561310d565b9350602085013567ffffffffffffffff8082111561322457600080fd5b613230888389016131b0565b945061323e604088016131d0565b9350606087013591508082111561325457600080fd5b50613261878288016131b0565b91505092959194509250565b60006020828403121561327f57600080fd5b5035919050565b6001600160e01b031981168114611e2a57600080fd5b6000602082840312156132ae57600080fd5b81356120ef81613286565b60005b838110156132d45781810151838201526020016132bc565b83811115610cd15750506000910152565b600081518084526132fd8160208601602086016132b9565b601f01601f19169290920160200192915050565b6020815260006120ef60208301846132e5565b6001600160a01b0381168114611e2a57600080fd5b6000806040838503121561334c57600080fd5b823561335781613324565b946020939093013593505050565b60006020828403121561337757600080fd5b813567ffffffffffffffff81111561338e57600080fd5b8201601f8101841361339f57600080fd5b612bc68482356020840161313a565b6000806000606084860312156133c357600080fd5b83356133ce81613324565b925060208401356133de81613324565b929592945050506040919091013590565b60006020828403121561340157600080fd5b81356120ef81613324565b8035801515811461311f57600080fd5b60006020828403121561342e57600080fd5b6120ef8261340c565b60006020828403121561344957600080fd5b6120ef8261310d565b6000806040838503121561346557600080fd5b82359150602083013561347781613324565b809150509250929050565b6020808252825182820181905260009190848201906040850190845b818110156134ba5783518352928401929184019160010161349e565b50909695505050505050565b6000806000606084860312156134db57600080fd5b6134e48461310d565b9250602084013567ffffffffffffffff81111561350057600080fd5b61350c868287016131b0565b925050604084013590509250925092565b6000806040838503121561353057600080fd5b823561353b81613324565b91506135496020840161340c565b90509250929050565b6000806000806080858703121561356857600080fd5b843561357381613324565b9350602085013561358381613324565b925060408501359150606085013567ffffffffffffffff8111156135a657600080fd5b613261878288016131b0565b600080604083850312156135c557600080fd5b6133578361310d565b60008083601f8401126135e057600080fd5b50813567ffffffffffffffff8111156135f857600080fd5b60208301915083602082850101111561361057600080fd5b9250929050565b60008060008060006080868803121561362f57600080fd5b6136388661310d565b9450602086013567ffffffffffffffff8082111561365557600080fd5b61366189838a016131b0565b955061366f604089016131d0565b9450606088013591508082111561368557600080fd5b50613692888289016135ce565b969995985093965092949392505050565b600080604083850312156136b657600080fd5b82356136c181613324565b9150602083013561347781613324565b6000806000604084860312156136e657600080fd5b6136ef8461310d565b9250602084013567ffffffffffffffff81111561370b57600080fd5b613717868287016135ce565b9497909650939450505050565b600181811c9082168061373857607f821691505b60208210810361375857634e487b7160e01b600052602260045260246000fd5b50919050565b6000815461376b81613724565b600182811680156137835760018114613794576137c3565b60ff198416875282870194506137c3565b8560005260208060002060005b858110156137ba5781548a8201529084019082016137a1565b50505082870194505b5050505092915050565b60006120ef828461375e565b61ffff851681526080602082015260006137f660808301866132e5565b67ffffffffffffffff85166040840152828103606084015261381881856132e5565b979650505050505050565b600082516138358184602087016132b9565b9190910192915050565b60006020828403121561385157600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b6000821982111561388157613881613858565b500190565b60008160001904831182151516156138a0576138a0613858565b500290565b634e487b7160e01b600052603260045260246000fd5b600084516138cd8184602089016132b9565b8451908301906138e18183602089016132b9565b6138188183018661375e565b61ffff861681526001600160a01b038516602082015260a06040820152600061391960a08301866132e5565b8415156060840152828103608084015261393381856132e5565b98975050505050505050565b6000806040838503121561395257600080fd5b505080516020909101519092909150565b61ffff871681526000602060c0818401526000885461398181613724565b8060c087015260e06001808416600081146139a357600181146139b8576139e6565b60ff19851689840152610100890195506139e6565b8d6000528660002060005b858110156139de5781548b82018601529083019088016139c3565b8a0184019650505b505050505083810360408501526139fd81896132e5565b915050613a1560608401876001600160a01b03169052565b6001600160a01b038516608084015282810360a0840152613a3681856132e5565b9998505050505050505050565b8183823760009101908152919050565b61ffff86168152608060208201526000613a7060808301876132e5565b67ffffffffffffffff861660408401528281036060840152838152838560208301376000602085830101526020601f19601f8601168201019150509695505050505050565b60008060408385031215613ac857600080fd5b8251613ad381613324565b6020939093015192949293505050565b60006001600160a01b03808716835280861660208401525083604083015260806060830152613b1560808301846132e5565b9695505050505050565b600060208284031215613b3157600080fd5b81516120ef81613286565b600060018201613b4e57613b4e613858565b5060010190565b634e487b7160e01b600052601260045260246000fd5b600082613b7a57613b7a613b55565b500490565b600082821015613b9157613b91613858565b500390565b600082613ba557613ba5613b55565b50069056fe4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a264697066735822122044f08db158dab77dd76d39c7563408f5a31792bcea872fd00b995139a920dc9e64736f6c634300080e003300000000000000000000000000000000000000000000000000000000000000400000000000000000000000003c2269811836af69497e5f486a85d7316753cf62000000000000000000000000000000000000000000000000000000000000005168747470733a2f2f676174657761792e70696e6174612e636c6f75642f697066732f516d577a793165544172757a41794b615863324e69467273434a7a426e414147555636777435526d314b554b6a382f000000000000000000000000000000