[ { "inputs": [ { "internalType": "uint256", "name": "maxBatchSize_", "type": "uint256" }, { "internalType": "uint256", "name": "startIndex_", "type": "uint256" }, { "internalType": "uint256", "name": "endIndex_", "type": "uint256" }, { "internalType": "address", "name": "_layerZeroEndpoint", "type": "address" } ], "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": false, "internalType": "address", "name": "_by", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "_tokenId", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "_internaltokenID", "type": "uint256" } ], "name": "InternaltokenidChange", "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": [], "name": "GOKU", "outputs": [ { "internalType": "contract IGOKU", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MAX_MINT_ETHEREUM", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MaxPatchPerTx", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_to", "type": "address" }, { "internalType": "uint256", "name": "mintamount", "type": "uint256" } ], "name": "MintByOwner", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "Mintprice", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "UPGRADE_PRICE", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "approve", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "bSalesStart", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "bUpgradeIsActive", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "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": "flipSalesStart", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "flipUpgradeIsActive", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getApproved", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getOwnershipData", "outputs": [ { "components": [ { "internalType": "address", "name": "addr", "type": "address" }, { "internalType": "uint64", "name": "startTimestamp", "type": "uint64" } ], "internalType": "struct ERC721B.TokenOwnership", "name": "", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_tokenId", "type": "uint256" } ], "name": "getupgradedtokenID", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "operator", "type": "address" } ], "name": "isApprovedForAll", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "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": [ { "internalType": "uint8", "name": "numTokens", "type": "uint8" } ], "name": "mint", "outputs": [], "stateMutability": "payable", "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": "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": [ { "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": "string", "name": "URI", "type": "string" } ], "name": "setBaseURI", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_GOKUToken", "type": "address" } ], "name": "setGOKUTokenaddress", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newVal", "type": "uint256" } ], "name": "setGasForDestinationLzReceive", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_MAX_MINT", "type": "uint256" } ], "name": "setMaxMintNum", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_Mintprice", "type": "uint256" } ], "name": "setMintprice", "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": "bytes4", "name": "interfaceId", "type": "bytes4" } ], "name": "supportsInterface", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "index", "type": "uint256" } ], "name": "tokenByIndex", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "uint256", "name": "index", "type": "uint256" } ], "name": "tokenOfOwnerByIndex", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "tokenURI", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "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": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "upgrade", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "upgradenewtokenid", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "withdraw", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
60a060405260006001819055600281905560038190556004819055600555600680546001600160a01b03191661dead179055670f43fc2c04ee00006012556014805461ffff19169055620557306015553480156200005c57600080fd5b506040516200462b3803806200462b8339810160408190526200007f916200041b565b6040518060400160405280601681526020017f476f6b75646f20506172616469736520284156415829000000000000000000008152506040518060400160405280600e81526020016d476f6b75646f506172616469736560901b815250858585620000f9620000f36200032160201b60201c565b62000325565b600083116200015e5760405162461bcd60e51b815260206004820152602760248201527f455243373231423a206d61782062617463682073697a65206d757374206265206044820152666e6f6e7a65726f60c81b606482015260840160405180910390fd5b84516200017390600790602088019062000375565b5083516200018990600890602087019062000375565b50608092909252600181815560049190915560058290556003919091556013879055620001ba92508491506200046c565b601155600d80546001600160a01b039092166001600160a01b031992831617905560166020527f0263c2b778d062355049effc2dece97bc6547ff8a88a3258daa512061c2153dd8054821673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc21790557f4c4dc693d7db52f85fe052106f4b4b920e78e8ef37dee82878a60ab8585faf498054821673da9dfa130df4de4673b89022ee50ff26f6ea73cf1790557fcaff291fe014adc6b72a172705750b4cabe8f8667664d2924a166caab288564880548216736262998ced04146fa42253a5c0af90ca02dfd2a31790557ff06d282f967055cb1eee17e04aa005b9682a620f4bbcfaee55ba78607a3d87ae8054821673a7efae728d2936e78bda97dc267687568dd593f317905560046000527fec061709de2491458f4c981032059d7d19b0e55f45018bac6b3e660bdc959a59805490911673be0eb53f46cd790cd13851d5eff43d12404d33e817905550620004d0915050565b3390565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b828054620003839062000493565b90600052602060002090601f016020900481019282620003a75760008555620003f2565b82601f10620003c257805160ff1916838001178555620003f2565b82800160010185558215620003f2579182015b82811115620003f2578251825591602001919060010190620003d5565b506200040092915062000404565b5090565b5b8082111562000400576000815560010162000405565b600080600080608085870312156200043257600080fd5b845160208601516040870151606088015192965090945092506001600160a01b03811681146200046157600080fd5b939692955090935050565b600082198211156200048e57634e487b7160e01b600052601160045260246000fd5b500190565b600181811c90821680620004a857607f821691505b60208210811415620004ca57634e487b7160e01b600052602260045260246000fd5b50919050565b608051614131620004fa600039600081816127500152818161277a0152612ef301526141316000f3fe6080604052600436106102925760003560e01c8063715018a61161015a578063b88d4fde116100c1578063d1deba1f1161007a578063d1deba1f1461082e578063e0622b2714610841578063e985e9c514610861578063eb8d72b7146108aa578063f2fde38b146108ca578063ff688979146108ea57600080fd5b8063b88d4fde14610785578063bfa26a58146107a5578063c87b56dd146107c5578063c8e69206146107e5578063cc7ad72814610805578063cf89fa031461081b57600080fd5b80639231ab2a116101135780639231ab2a146106aa578063923b0359146106f7578063943fb8721461071157806395d89b4114610731578063a22cb46514610746578063b65342c21461076657600080fd5b8063715018a61461059f5780637533d788146105b45780637fbd3fb3146105d45780638462151c146105f45780638da5cb5b146106215780638ee749121461063f57600080fd5b80633ccfd60b116101fe578063556621cc116101b7578063556621cc146104e957806355f804b3146104ff5780635fd1798c1461051f5780636352211e1461054c5780636ecd23061461056c57806370a082311461057f57600080fd5b80633ccfd60b1461043c5780633edfc01d1461045157806342842e0e1461047e57806344e1faef1461049e5780634d56b4e3146104b35780634f6ccce7146104c957600080fd5b806318160ddd1161025057806318160ddd146103885780631c37a822146103a757806323b872dd146103c75780632f745c59146103e75780632fcbe1b714610407578063367480011461041c57600080fd5b80621d35671461029757806301ffc9a7146102b957806302f369bc146102ee57806306fdde0314610326578063081812fc14610348578063095ea7b314610368575b600080fd5b3480156102a357600080fd5b506102b76102b2366004613924565b610908565b005b3480156102c557600080fd5b506102d96102d4366004613754565b610b02565b60405190151581526020015b60405180910390f35b3480156102fa57600080fd5b5060185461030e906001600160a01b031681565b6040516001600160a01b0390911681526020016102e5565b34801561033257600080fd5b5061033b610b6f565b6040516102e59190613b92565b34801561035457600080fd5b5061030e6103633660046139b8565b610c01565b34801561037457600080fd5b506102b7610383366004613728565b610c8a565b34801561039457600080fd5b506002545b6040519081526020016102e5565b3480156103b357600080fd5b506102b76103c2366004613924565b610da2565b3480156103d357600080fd5b506102b76103e2366004613649565b610e11565b3480156103f357600080fd5b50610399610402366004613728565b610e1c565b34801561041357600080fd5b506102b7610fec565b34801561042857600080fd5b506102b76104373660046139b8565b611033565b34801561044857600080fd5b506102b7611062565b34801561045d57600080fd5b5061039961046c3660046139b8565b60009081526017602052604090205490565b34801561048a57600080fd5b506102b7610499366004613649565b611147565b3480156104aa57600080fd5b506102b7611162565b3480156104bf57600080fd5b5061039960115481565b3480156104d557600080fd5b506103996104e43660046139b8565b6111a0565b3480156104f557600080fd5b5061039960125481565b34801561050b57600080fd5b506102b761051a36600461378e565b611355565b34801561052b57600080fd5b5061039961053a3660046139b8565b60176020526000908152604090205481565b34801561055857600080fd5b5061030e6105673660046139b8565b611396565b6102b761057a3660046139f5565b6113a8565b34801561058b57600080fd5b5061039961059a3660046135c5565b6114ff565b3480156105ab57600080fd5b506102b7611601565b3480156105c057600080fd5b5061033b6105cf3660046137d6565b611637565b3480156105e057600080fd5b506102b76105ef3660046139b8565b6116d1565b34801561060057600080fd5b5061061461060f3660046135c5565b611700565b6040516102e59190613b4e565b34801561062d57600080fd5b506000546001600160a01b031661030e565b34801561064b57600080fd5b5061069561065a366004613843565b600e60209081526000938452604080852084518086018401805192815290840195840195909520945292905282529020805460019091015482565b604080519283526020830191909152016102e5565b3480156106b657600080fd5b506106ca6106c53660046139b8565b6117be565b6040805182516001600160a01b031681526020928301516001600160401b031692810192909252016102e5565b34801561070357600080fd5b506014546102d99060ff1681565b34801561071d57600080fd5b506102b761072c3660046139b8565b6117db565b34801561073d57600080fd5b5061033b61180a565b34801561075257600080fd5b506102b76107613660046136f5565b611819565b34801561077257600080fd5b506014546102d990610100900460ff1681565b34801561079157600080fd5b506102b76107a036600461368a565b6118de565b3480156107b157600080fd5b506102b76107c0366004613728565b611911565b3480156107d157600080fd5b5061033b6107e03660046139b8565b61197a565b3480156107f157600080fd5b506102b76108003660046135c5565b611a45565b34801561081157600080fd5b5061039960135481565b6102b761082936600461399c565b611a91565b6102b761083c366004613899565b611d6e565b34801561084d57600080fd5b506102d961085c366004613728565b611efb565b34801561086d57600080fd5b506102d961087c366004613610565b6001600160a01b039182166000908152600c6020908152604080832093909416825291909152205460ff1690565b3480156108b657600080fd5b506102b76108c53660046137f1565b6120ad565b3480156108d657600080fd5b506102b76108e53660046135c5565b6120f5565b3480156108f657600080fd5b5061039969010f0cf064dd5920000081565b600d546001600160a01b0316331461091f57600080fd5b61ffff84166000908152600f60205260409020805461093d90613fd2565b9050835114801561097c575061ffff84166000908152600f602052604090819020905161096a9190613a70565b60405180910390208380519060200120145b6109ea5760405162461bcd60e51b815260206004820152603460248201527f4e6f6e626c6f636b696e6752656365697665723a20696e76616c696420736f756044820152731c98d9481cd95b991a5b99c818dbdb9d1c9858dd60621b60648201526084015b60405180910390fd5b604051630e1bd41160e11b81523090631c37a82290610a13908790879087908790600401613dba565b600060405180830381600087803b158015610a2d57600080fd5b505af1925050508015610a3e575060015b610afc576040518060400160405280825181526020018280519060200120815250600e60008661ffff1661ffff16815260200190815260200160002084604051610a889190613a54565b9081526040805191829003602090810183206001600160401b038716600090815290825291909120835181559201516001909201919091557fe6f254030bcb01ffd20558175c13fcaed6d1520be7becee4c961b65f79243b0d90610af3908690869086908690613dba565b60405180910390a15b50505050565b60006001600160e01b031982166380ac58cd60e01b1480610b3357506001600160e01b03198216635b5e139f60e01b145b80610b4e57506001600160e01b0319821663780e9d6360e01b145b80610b6957506301ffc9a760e01b6001600160e01b03198316145b92915050565b606060078054610b7e90613fd2565b80601f0160208091040260200160405190810160405280929190818152602001828054610baa90613fd2565b8015610bf75780601f10610bcc57610100808354040283529160200191610bf7565b820191906000526020600020905b815481529060010190602001808311610bda57829003601f168201915b5050505050905090565b6000610c0c8261218d565b610c6e5760405162461bcd60e51b815260206004820152602d60248201527f455243373231423a20617070726f76656420717565727920666f72206e6f6e6560448201526c3c34b9ba32b73a103a37b5b2b760991b60648201526084016109e1565b506000908152600b60205260409020546001600160a01b031690565b6000610c9582611396565b9050806001600160a01b0316836001600160a01b03161415610d045760405162461bcd60e51b815260206004820152602260248201527f455243373231423a20617070726f76616c20746f2063757272656e74206f776e60448201526132b960f11b60648201526084016109e1565b336001600160a01b0382161480610d205750610d20813361087c565b610d925760405162461bcd60e51b815260206004820152603960248201527f455243373231423a20617070726f76652063616c6c6572206973206e6f74206f60448201527f776e6572206e6f7220617070726f76656420666f7220616c6c0000000000000060648201526084016109e1565b610d9d83838361221b565b505050565b333014610e055760405162461bcd60e51b815260206004820152602b60248201527f4e6f6e626c6f636b696e6752656365697665723a2063616c6c6572206d75737460448201526a10313290213934b233b29760a91b60648201526084016109e1565b610afc84848484612277565b610d9d8383836122a4565b6000610e27836114ff565b8210610e805760405162461bcd60e51b815260206004820152602260248201527f455243373231413a206f776e657220696e646578206f7574206f6620626f756e604482015261647360f01b60648201526084016109e1565b60008060005b6003548111610f8c576000818152600960209081526040918290208251808401909352546001600160a01b0381168352600160a01b90046001600160401b031690820152610ed382612624565b8015610ee0575060015482105b15610f3a5780516001600160a01b031615610efa57805192505b866001600160a01b0316836001600160a01b03161415610f355785841415610f2757509250610b69915050565b83610f3181614029565b9450505b610f79565b866001600160a01b031681600001516001600160a01b03161415610f795785841415610f6b57509250610b69915050565b83610f7581614029565b9450505b5080610f8481614029565b915050610e86565b5060405162461bcd60e51b815260206004820152602e60248201527f455243373231413a20756e61626c6520746f2067657420746f6b656e206f662060448201526d0deeedccae440c4f240d2dcc8caf60931b60648201526084016109e1565b6000546001600160a01b031633146110165760405162461bcd60e51b81526004016109e190613c39565b6014805461ff001981166101009182900460ff1615909102179055565b6000546001600160a01b0316331461105d5760405162461bcd60e51b81526004016109e190613c39565b601255565b6000546001600160a01b0316331461108c5760405162461bcd60e51b81526004016109e190613c39565b4773e7b39710e2b1c7027ba2870b4a1adfee3cf4499273153aade21b072169ffab664d88192da3d0f0ff64816108fc600a6110c8866004613f31565b6110d29190613f1d565b6040518115909202916000818181858888f193505050501580156110fa573d6000803e3d6000fd5b506001600160a01b0381166108fc600a611115866006613f31565b61111f9190613f1d565b6040518115909202916000818181858888f19350505050158015610afc573d6000803e3d6000fd5b610d9d838383604051806020016040528060008152506118de565b6000546001600160a01b0316331461118c5760405162461bcd60e51b81526004016109e190613c39565b6014805460ff19811660ff90911615179055565b60006003548211156112005760405162461bcd60e51b815260206004820152602360248201527f455243373231423a20676c6f62616c20696e646578206f7574206f6620626f756044820152626e647360e81b60648201526084016109e1565b6000805b60035481116112fe576000818152600960209081526040918290208251808401909352546001600160a01b0381168352600160a01b90046001600160401b03169082015261125182612624565b1561129f5760065481516001600160a01b03908116911614801590611277575060015482105b1561129a578483141561128c57509392505050565b8261129681614029565b9350505b6112eb565b80516001600160a01b0316158015906112c8575060065481516001600160a01b03908116911614155b156112eb57848314156112dd57509392505050565b826112e781614029565b9350505b50806112f681614029565b915050611204565b5060405162461bcd60e51b815260206004820152602560248201527f455243373231413a20756e61626c6520746f2067657420746f6b656e206279206044820152640d2dcc8caf60db1b60648201526084016109e1565b6000546001600160a01b0316331461137f5760405162461bcd60e51b81526004016109e190613c39565b80516113929060109060208401906133b2565b5050565b60006113a18261263c565b5192915050565b60145460ff166113f05760405162461bcd60e51b815260206004820152601360248201527214d85b19481a5cc81b9bdd081cdd185c9d1959606a1b60448201526064016109e1565b6011548160ff1661140060025490565b61140a9190613f05565b11156114285760405162461bcd60e51b81526004016109e190613c6e565b60008160ff1611801561144057506013548160ff1611155b6114985760405162461bcd60e51b8152602060048201526024808201527f43616e206e6f74206d696e74206d6f7265207468616e204d61785061746368506044820152630cae4a8f60e31b60648201526084016109e1565b8060ff166012546114a99190613f31565b3410156114ef5760405162461bcd60e51b81526020600482015260146024820152732737ba103830b4b21032b737bab3b41022aa241760611b60448201526064016109e1565b6114fc338260ff1661285f565b50565b60006001600160a01b03821661156b5760405162461bcd60e51b815260206004820152602b60248201527f455243373231423a2062616c616e636520717565727920666f7220746865207a60448201526a65726f206164647265737360a81b60648201526084016109e1565b6006546001600160a01b03838116911614156115dc5760405162461bcd60e51b815260206004820152602a60248201527f455243373231423a2062616c616e636520717565727920666f7220746865206260448201526975726e6164647265737360b01b60648201526084016109e1565b506001600160a01b03166000908152600a60205260409020546001600160801b031690565b6000546001600160a01b0316331461162b5760405162461bcd60e51b81526004016109e190613c39565b6116356000612879565b565b600f602052600090815260409020805461165090613fd2565b80601f016020809104026020016040519081016040528092919081815260200182805461167c90613fd2565b80156116c95780601f1061169e576101008083540402835291602001916116c9565b820191906000526020600020905b8154815290600101906020018083116116ac57829003601f168201915b505050505081565b6000546001600160a01b031633146116fb5760405162461bcd60e51b81526004016109e190613c39565b601155565b6060600061170d836114ff565b90508061172e5760408051600080825260208201909252905b509392505050565b6000816001600160401b038111156117485761174861409a565b604051908082528060200260200182016040528015611771578160200160208202803683370190505b50905060005b82811015611726576117898582610e1c565b82828151811061179b5761179b614084565b6020908102919091010152806117b081614029565b915050611777565b50919050565b6040805180820190915260008082526020820152610b698261263c565b6000546001600160a01b031633146118055760405162461bcd60e51b81526004016109e190613c39565b601555565b606060088054610b7e90613fd2565b6001600160a01b0382163314156118725760405162461bcd60e51b815260206004820152601a60248201527f455243373231423a20617070726f766520746f2063616c6c657200000000000060448201526064016109e1565b336000818152600c602090815260408083206001600160a01b03871680855290835292819020805460ff191686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6118e98484846122a4565b6118f5848484846128c9565b610afc5760405162461bcd60e51b81526004016109e190613ba5565b6000546001600160a01b0316331461193b5760405162461bcd60e51b81526004016109e190613c39565b6011548161194860025490565b6119529190613f05565b11156119705760405162461bcd60e51b81526004016109e190613c6e565b611392828261285f565b60606119858261218d565b6119e95760405162461bcd60e51b815260206004820152602f60248201527f4552433732314d657461646174613a2055524920717565727920666f72206e6f60448201526e3732bc34b9ba32b73a103a37b5b2b760891b60648201526084016109e1565b60006119f36129d7565b90506000815111611a135760405180602001604052806000815250611a3e565b80611a1d846129e6565b604051602001611a2e929190613ae2565b6040516020818303038152906040525b9392505050565b6000546001600160a01b03163314611a6f5760405162461bcd60e51b81526004016109e190613c39565b601880546001600160a01b0319166001600160a01b0392909216919091179055565b611a9a81611396565b6001600160a01b0316336001600160a01b031614611b055760405162461bcd60e51b815260206004820152602260248201527f596f75206d757374206f776e2074686520746f6b656e20746f20747261766572604482015261736560f01b60648201526084016109e1565b61ffff82166000908152600f602052604081208054611b2390613fd2565b905011611b895760405162461bcd60e51b815260206004820152602e60248201527f5468697320636861696e2069732063757272656e746c7920756e617661696c6160448201526d189b1948199bdc881d1c985d995b60921b60648201526084016109e1565b611b9281612ae3565b60408051336020820152808201839052815180820383018152606082018352601554600160f01b60808401526082808401919091528351808403909101815260a2830193849052600d5463040a7bb160e41b90945290926001926000916001600160a01b0316906340a7bb1090611c15908990309089908790899060a601613d05565b604080518083038186803b158015611c2c57600080fd5b505afa158015611c40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c6491906139d1565b50905080341015611ce95760405162461bcd60e51b815260206004820152604360248201527f4d73672e76616c7565206e6f7420656e6f75676820746f20636f766572206d6560448201527f73736167654665652e2053656e642067617320666f72206d657373616765206660648201526265657360e81b608482015260a4016109e1565b600d5461ffff87166000908152600f6020526040808220905162c5803160e81b81526001600160a01b039093169263c5803100923492611d34928c928b913391908b90600401613e03565b6000604051808303818588803b158015611d4d57600080fd5b505af1158015611d61573d6000803e3d6000fd5b5050505050505050505050565b61ffff85166000908152600e60205260408082209051611d8f908790613a54565b90815260408051602092819003830190206001600160401b0387166000908152925290206001810154909150611e165760405162461bcd60e51b815260206004820152602660248201527f4e6f6e626c6f636b696e6752656365697665723a206e6f2073746f726564206d60448201526565737361676560d01b60648201526084016109e1565b805482148015611e40575080600101548383604051611e36929190613a44565b6040518091039020145b611e8c5760405162461bcd60e51b815260206004820152601a60248201527f4c617965725a65726f3a20696e76616c6964207061796c6f616400000000000060448201526064016109e1565b60008082556001820155604051630e1bd41160e11b81523090631c37a82290611ec19089908990899089908990600401613d59565b600060405180830381600087803b158015611edb57600080fd5b505af1158015611eef573d6000803e3d6000fd5b50505050505050505050565b601454600090610100900460ff16611f615760405162461bcd60e51b815260206004820152602360248201527f436f6d706f7365206973206e6f742061637469766520617420746865206d6f6d604482015262195b9d60ea1b60648201526084016109e1565b826001600160a01b0316611f7483611396565b6001600160a01b031614611fca5760405162461bcd60e51b815260206004820152601a60248201527f596f7520646f206e6f742068617665207468697320746f6b656e00000000000060448201526064016109e1565b601854604051632770a7eb60e21b815233600482015269010f0cf064dd5920000060248201526001600160a01b0390911690639dc29fac90604401600060405180830381600087803b15801561201f57600080fd5b505af1158015612033573d6000803e3d6000fd5b5050505060006120458361270f612d0e565b60008481526017602090815260409182902061ffff939093169283905581513381529081018690529081018290529091507fca0575f72e92b6b92d99f84ba94ef11af6dd857a77a3c02c45b73046b3518aea9060600160405180910390a15060019392505050565b6000546001600160a01b031633146120d75760405162461bcd60e51b81526004016109e190613c39565b61ffff83166000908152600f60205260409020610afc908383613436565b6000546001600160a01b0316331461211f5760405162461bcd60e51b81526004016109e190613c39565b6001600160a01b0381166121845760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016109e1565b6114fc81612879565b600061219882612624565b156121cf5760015482108015610b69575050600654600091825260096020526040909120546001600160a01b039182169116141590565b6000828152600960205260409020546001600160a01b031615801590610b69575050600654600091825260096020526040909120546001600160a01b039182169116141590565b919050565b6000828152600b602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6000808280602001905181019061228e91906135e2565b9150915061229c8282612df0565b505050505050565b60006122af8261263c565b80519091506000906001600160a01b0316336001600160a01b031614806122e65750336122db84610c01565b6001600160a01b0316145b806122f8575081516122f8903361087c565b9050806123625760405162461bcd60e51b815260206004820152603260248201527f455243373231423a207472616e736665722063616c6c6572206973206e6f74206044820152711bdddb995c881b9bdc88185c1c1c9bdd995960721b60648201526084016109e1565b846001600160a01b031682600001516001600160a01b0316146123d65760405162461bcd60e51b815260206004820152602660248201527f455243373231423a207472616e736665722066726f6d20696e636f72726563746044820152651037bbb732b960d11b60648201526084016109e1565b6001600160a01b03841661243a5760405162461bcd60e51b815260206004820152602560248201527f455243373231423a207472616e7366657220746f20746865207a65726f206164604482015264647265737360d81b60648201526084016109e1565b61244a600084846000015161221b565b6001600160a01b0385166000908152600a6020526040812080546001929061247c9084906001600160801b0316613f50565b82546101009290920a6001600160801b038181021990931691831602179091556001600160a01b0386166000908152600a6020526040812080546001945090926124c891859116613ee3565b82546001600160801b039182166101009390930a9283029190920219909116179055506040805180820182526001600160a01b0380871682526001600160401b03428116602080850191825260008981526009909152948520935184549151909216600160a01b026001600160e01b0319909116919092161717905561254f846001613f05565b905061255a81612624565b801561257b57506000818152600960205260409020546001600160a01b0316155b156125f0576125898161218d565b156125f05760408051808201825284516001600160a01b0390811682526020808701516001600160401b039081168285019081526000878152600990935294909120925183549451909116600160a01b026001600160e01b03199094169116179190911790555b83856001600160a01b0316876001600160a01b03166000805160206140dc83398151915260405160405180910390a461229c565b60006004548210158015610b69575050600554101590565b60408051808201909152600080825260208201526126598261218d565b6126b85760405162461bcd60e51b815260206004820152602a60248201527f455243373231423a206f776e657220717565727920666f72206e6f6e657869736044820152693a32b73a103a37b5b2b760b11b60648201526084016109e1565b6000828152600960209081526040918290208251808401909352546001600160a01b0381168352600160a01b90046001600160401b0316908201526126fc83612624565b61274c5780516001600160a01b031615801590612729575060065481516001600160a01b03908116911614155b156127345792915050565b60405162461bcd60e51b81526004016109e190613cb6565b60007f000000000000000000000000000000000000000000000000000000000000000084106127ad5761279f7f000000000000000000000000000000000000000000000000000000000000000085613f78565b6127aa906001613f05565b90505b6004548110156127bc57506004545b835b818110612846576000818152600960209081526040918290208251808401909352546001600160a01b038116808452600160a01b9091046001600160401b03169183019190915290935015801590612826575060065483516001600160a01b03908116911614155b156128345750909392505050565b8061283e81613fbb565b9150506127be565b5060405162461bcd60e51b81526004016109e190613cb6565b611392828260405180602001604052806000815250612e0a565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60006001600160a01b0384163b156129cb57604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061290d903390899088908890600401613b11565b602060405180830381600087803b15801561292757600080fd5b505af1925050508015612957575060408051601f3d908101601f1916820190925261295491810190613771565b60015b6129b1573d808015612985576040519150601f19603f3d011682016040523d82523d6000602084013e61298a565b606091505b5080516129a95760405162461bcd60e51b81526004016109e190613ba5565b805181602001fd5b6001600160e01b031916630a85bd0160e11b1490506129cf565b5060015b949350505050565b606060108054610b7e90613fd2565b606081612a0a5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115612a345780612a1e81614029565b9150612a2d9050600a83613f1d565b9150612a0e565b6000816001600160401b03811115612a4e57612a4e61409a565b6040519080825280601f01601f191660200182016040528015612a78576020820181803683370190505b5090505b84156129cf57612a8d600183613f78565b9150612a9a600a86614044565b612aa5906030613f05565b60f81b818381518110612aba57612aba614084565b60200101906001600160f81b031916908160001a905350612adc600a86613f1d565b9450612a7c565b6000612aee8261263c565b90506000612afb83611396565b9050612b096000848361221b565b6001600160a01b0381166000908152600a60209081526040918290208251808401845290546001600160801b038082168352600160801b9091041691810191909152815180830190925280519091908190612b6690600190613f50565b6001600160801b0316815260200160018360200151612b859190613f50565b6001600160801b039081169091526001600160a01b0384166000908152600a602090815260408220845194909101518316600160801b02939092169290921790556002805491612bd483613fbb565b90915550506040805180820182526006546001600160a01b0390811682526001600160401b03428116602080850191825260008a81526009909152948520935184549151909216600160a01b026001600160e01b03199091169190921617179055612c40856001613f05565b9050612c4b81612624565b8015612c6c57506000818152600960205260409020546001600160a01b0316155b15612ce157612c7a8161218d565b15612ce15760408051808201825285516001600160a01b0390811682526020808801516001600160401b039081168285019081526000878152600990935294909120925183549451909116600160a01b026001600160e01b03199094169116179190911790555b60405185906000906001600160a01b038616906000805160206140dc833981519152908390a45050505050565b600080805b60058161ffff161015612d5c5761ffff8116600090815260166020526040902054612d48906001600160a01b03163183613f05565b915080612d5481614007565b915050612d13565b50600084612d6b600143613f78565b40414433612d7860025490565b6040805160208101979097528601949094526bffffffffffffffffffffffff19606093841b811684870152607486019290925290911b16609483015260a882015260c8810183905260e80160408051601f1981840301815291905280516020909101209050612de78482614044565b95945050505050565b611392828260405180602001604052806000815250613161565b6001546001600160a01b038416612e6d5760405162461bcd60e51b815260206004820152602160248201527f455243373231423a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b60648201526084016109e1565b6006546001600160a01b0385811691161415612e9b5760405162461bcd60e51b81526004016109e190613bf8565b612ea48161218d565b15612ef15760405162461bcd60e51b815260206004820152601d60248201527f455243373231423a20746f6b656e20616c7265616479206d696e74656400000060448201526064016109e1565b7f0000000000000000000000000000000000000000000000000000000000000000831115612f6c5760405162461bcd60e51b815260206004820152602260248201527f455243373231423a207175616e7469747920746f206d696e7420746f6f2068696044820152610ced60f31b60648201526084016109e1565b6001600160a01b0384166000908152600a60209081526040918290208251808401845290546001600160801b038082168352600160801b9091041691810191909152815180830190925280519091908190612fc8908790613ee3565b6001600160801b03168152602001858360200151612fe69190613ee3565b6001600160801b039081169091526001600160a01b038088166000818152600a602090815260408083208751978301518716600160801b029790961696909617909455845180860186529182526001600160401b034281168386019081528883526009909552948120915182549451909516600160a01b026001600160e01b031990941694909216939093179190911790915582905b858110156131565760405182906001600160a01b038916906000906000805160206140dc833981519152908290a46130b760008884886128c9565b61311f5760405162461bcd60e51b815260206004820152603360248201527f455243373231413a207472616e7366657220746f206e6f6e204552433732315260448201527232b1b2b4bb32b91034b6b83632b6b2b73a32b960691b60648201526084016109e1565b8161312981614029565b60028054919450909150600061313e83614029565b9190505550808061314e90614029565b91505061307c565b50600181905561229c565b61316b83836131df565b61317860008484846128c9565b610d9d5760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b60648201526084016109e1565b6001600160a01b0382166132355760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016109e1565b6006546001600160a01b03838116911614156132635760405162461bcd60e51b81526004016109e190613bf8565b6002805490600061327383614029565b91905055506003548111156132885760038190555b6001600160a01b0382166000908152600a60209081526040918290208251808401845290546001600160801b038082168352600160801b90910416918101919091528151808301909252805190919081906132e4906001613ee3565b6001600160801b03168152602001826020015160016133039190613ee3565b6001600160801b039081169091526001600160a01b038086166000818152600a602090815260408083208751978301518716600160801b029790961696909617909455845180860186528281526001600160401b034281168287019081528984526009909652868320915182549651909116600160a01b026001600160e01b0319909616941693909317939093179091559151849291906000805160206140dc833981519152908290a4505050565b8280546133be90613fd2565b90600052602060002090601f0160209004810192826133e05760008555613426565b82601f106133f957805160ff1916838001178555613426565b82800160010185558215613426579182015b8281111561342657825182559160200191906001019061340b565b506134329291506134aa565b5090565b82805461344290613fd2565b90600052602060002090601f0160209004810192826134645760008555613426565b82601f1061347d5782800160ff19823516178555613426565b82800160010185558215613426579182015b8281111561342657823582559160200191906001019061348f565b5b8082111561343257600081556001016134ab565b60006001600160401b03808411156134d9576134d961409a565b604051601f8501601f19908116603f011681019082821181831017156135015761350161409a565b8160405280935085815286868601111561351a57600080fd5b858560208301376000602087830101525050509392505050565b60008083601f84011261354657600080fd5b5081356001600160401b0381111561355d57600080fd5b60208301915083602082850101111561357557600080fd5b9250929050565b600082601f83011261358d57600080fd5b611a3e838335602085016134bf565b803561ffff8116811461221657600080fd5b80356001600160401b038116811461221657600080fd5b6000602082840312156135d757600080fd5b8135611a3e816140b0565b600080604083850312156135f557600080fd5b8251613600816140b0565b6020939093015192949293505050565b6000806040838503121561362357600080fd5b823561362e816140b0565b9150602083013561363e816140b0565b809150509250929050565b60008060006060848603121561365e57600080fd5b8335613669816140b0565b92506020840135613679816140b0565b929592945050506040919091013590565b600080600080608085870312156136a057600080fd5b84356136ab816140b0565b935060208501356136bb816140b0565b92506040850135915060608501356001600160401b038111156136dd57600080fd5b6136e98782880161357c565b91505092959194509250565b6000806040838503121561370857600080fd5b8235613713816140b0565b91506020830135801515811461363e57600080fd5b6000806040838503121561373b57600080fd5b8235613746816140b0565b946020939093013593505050565b60006020828403121561376657600080fd5b8135611a3e816140c5565b60006020828403121561378357600080fd5b8151611a3e816140c5565b6000602082840312156137a057600080fd5b81356001600160401b038111156137b657600080fd5b8201601f810184136137c757600080fd5b6129cf848235602084016134bf565b6000602082840312156137e857600080fd5b611a3e8261359c565b60008060006040848603121561380657600080fd5b61380f8461359c565b925060208401356001600160401b0381111561382a57600080fd5b61383686828701613534565b9497909650939450505050565b60008060006060848603121561385857600080fd5b6138618461359c565b925060208401356001600160401b0381111561387c57600080fd5b6138888682870161357c565b925050604084013590509250925092565b6000806000806000608086880312156138b157600080fd5b6138ba8661359c565b945060208601356001600160401b03808211156138d657600080fd5b6138e289838a0161357c565b95506138f0604089016135ae565b9450606088013591508082111561390657600080fd5b5061391388828901613534565b969995985093965092949392505050565b6000806000806080858703121561393a57600080fd5b6139438561359c565b935060208501356001600160401b038082111561395f57600080fd5b61396b8883890161357c565b9450613979604088016135ae565b9350606087013591508082111561398f57600080fd5b506136e98782880161357c565b600080604083850312156139af57600080fd5b6137468361359c565b6000602082840312156139ca57600080fd5b5035919050565b600080604083850312156139e457600080fd5b505080516020909101519092909150565b600060208284031215613a0757600080fd5b813560ff81168114611a3e57600080fd5b60008151808452613a30816020860160208601613f8f565b601f01601f19169290920160200192915050565b8183823760009101908152919050565b60008251613a66818460208701613f8f565b9190910192915050565b6000808354613a7e81613fd2565b60018281168015613a965760018114613aa757613ad6565b60ff19841687528287019450613ad6565b8760005260208060002060005b85811015613acd5781548a820152908401908201613ab4565b50505082870194505b50929695505050505050565b60008351613af4818460208801613f8f565b835190830190613b08818360208801613f8f565b01949350505050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090613b4490830184613a18565b9695505050505050565b6020808252825182820181905260009190848201906040850190845b81811015613b8657835183529284019291840191600101613b6a565b50909695505050505050565b602081526000611a3e6020830184613a18565b60208082526033908201527f455243373231423a207472616e7366657220746f206e6f6e204552433732315260408201527232b1b2b4bb32b91034b6b83632b6b2b73a32b960691b606082015260800190565b60208082526021908201527f455243373231423a206d696e7420746f20746865206275726e206164647265736040820152607360f81b606082015260800190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526028908201527f43616e206e6f74206d696e74206d6f7265207468616e204d41585f4d494e545f604082015267455448455245554d60c01b606082015260800190565b6020808252602f908201527f455243373231423a20756e61626c6520746f2064657465726d696e652074686560408201526e1037bbb732b91037b3103a37b5b2b760891b606082015260800190565b61ffff861681526001600160a01b038516602082015260a060408201819052600090613d3390830186613a18565b84151560608401528281036080840152613d4d8185613a18565b98975050505050505050565b61ffff86168152608060208201526000613d766080830187613a18565b6001600160401b03861660408401528281036060840152838152838560208301376000602085830101526020601f19601f8601168201019150509695505050505050565b61ffff85168152608060208201526000613dd76080830186613a18565b6001600160401b03851660408401528281036060840152613df88185613a18565b979650505050505050565b61ffff871681526000602060c08184015260008854613e2181613fd2565b8060c087015260e0600180841660008114613e435760018114613e5857613e86565b60ff1985168984015261010089019550613e86565b8d6000528660002060005b85811015613e7e5781548b8201860152908301908801613e63565b8a0184019650505b50505050508381036040850152613e9d8189613a18565b915050613eb560608401876001600160a01b03169052565b6001600160a01b038516608084015282810360a0840152613ed68185613a18565b9998505050505050505050565b60006001600160801b03808316818516808303821115613b0857613b08614058565b60008219821115613f1857613f18614058565b500190565b600082613f2c57613f2c61406e565b500490565b6000816000190483118215151615613f4b57613f4b614058565b500290565b60006001600160801b0383811690831681811015613f7057613f70614058565b039392505050565b600082821015613f8a57613f8a614058565b500390565b60005b83811015613faa578181015183820152602001613f92565b83811115610afc5750506000910152565b600081613fca57613fca614058565b506000190190565b600181811c90821680613fe657607f821691505b602082108114156117b857634e487b7160e01b600052602260045260246000fd5b600061ffff8083168181141561401f5761401f614058565b6001019392505050565b600060001982141561403d5761403d614058565b5060010190565b6000826140535761405361406e565b500690565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b03811681146114fc57600080fd5b6001600160e01b0319811681146114fc57600080fdfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220f81bc3c015020f3777428be9cc7ec29622ccaa7ea74ad74f8a8a8b736d804f0064736f6c6343000807003300000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000fa000000000000000000000000000000000000000000000000000000000000011f70000000000000000000000003c2269811836af69497e5f486a85d7316753cf62