[ { "inputs": [ { "internalType": "string", "name": "name", "type": "string" }, { "internalType": "string", "name": "symbol", "type": "string" }, { "internalType": "string", "name": "description", "type": "string" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "string", "name": "uri", "type": "string" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "_owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "_approved", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "_tokenId", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "_owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "_operator", "type": "address" }, { "indexed": false, "internalType": "bool", "name": "_approved", "type": "bool" } ], "name": "ApprovalForAll", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "account", "type": "address" } ], "name": "Freeze", "type": "event" }, { "anonymous": false, "inputs": [], "name": "NotFreezable", "type": "event" }, { "anonymous": false, "inputs": [], "name": "NotPausable", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" } ], "name": "OwnershipRenounced", "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": [], "name": "Pause", "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" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "account", "type": "address" } ], "name": "Unfreeze", "type": "event" }, { "anonymous": false, "inputs": [], "name": "Unpause", "type": "event" }, { "inputs": [ { "internalType": "address", "name": "_approved", "type": "address" }, { "internalType": "uint256", "name": "_tokenId", "type": "uint256" } ], "name": "approve", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_owner", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "burn", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "canFreeze", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "canPause", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "description", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "freeze", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "frozen", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_tokenId", "type": "uint256" } ], "name": "getApproved", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "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": "to", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "string", "name": "uri", "type": "string" } ], "name": "mint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "_name", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "notFreezable", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "notPausable", "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": "_owner", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "paused", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_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": "bytes4", "name": "_interfaceID", "type": "bytes4" } ], "name": "supportsInterface", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "_symbol", "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": [], "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": "address", "name": "account", "type": "address" } ], "name": "unfreeze", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "string", "name": "uri", "type": "string" } ], "name": "unfreezeAndMint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "recipient", "type": "address" } ], "name": "unfreezeAndTransfer", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "unpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
60806040526000600c60146101000a81548160ff0219169083151502179055506001600c60156101000a81548160ff0219169083151502179055506001600e60006101000a81548160ff0219169083151502179055503480156200006257600080fd5b506040516200547a3803806200547a833981810160405281019062000088919062000cdc565b60016000806301ffc9a760e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff02191690831515021790555060016000806380ac58cd60e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600080635b5e139f60e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff021916908315150217905550600160008063780e9d6360e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff02191690831515021790555033600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555084600590816200021e91906200102b565b5083600690816200023091906200102b565b506200024283620002bd60201b60201c565b62000255336000620002d260201b60201c565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614620002b2576200029d826000620002d260201b60201c565b620002b1826001836200032e60201b60201c565b5b505050505062001264565b80600f9081620002ce91906200102b565b5050565b8015600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146200038957600080fd5b6200039b8383620003b260201b60201c565b620003ad82826200041c60201b60201c565b505050565b620003c482826200052460201b60201c565b6008819080600181540180825580915050600190039060005260206000200160009091909190915055600160088054905062000401919062001141565b60096000838152602001908152602001600020819055505050565b81600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f303033303032000000000000000000000000000000000000000000000000000081525090620004fb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620004f29190620011ce565b60405180910390fd5b50816007600085815260200190815260200160002090816200051e91906200102b565b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f303033303031000000000000000000000000000000000000000000000000000081525090620005cf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005c69190620011ce565b60405180910390fd5b50600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146040518060400160405280600681526020017f303033303036000000000000000000000000000000000000000000000000000081525090620006ad576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620006a49190620011ce565b60405180910390fd5b50620006c082826200073360201b60201c565b620006d33383836200093560201b60201c565b808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146040518060400160405280600681526020017f30303330303600000000000000000000000000000000000000000000000000008152509062000810576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620008079190620011ce565b60405180910390fd5b50816001600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190806001815401808255809150506001900390600052602060002001600090919091909150556001600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490506200091a919062001141565b600b6000838152602001908152602001600020819055505050565b82826200094982826200095060201b60201c565b5050505050565b600c60149054906101000a900460ff161580620009ba5750600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b620009c457600080fd5b81620009d68162000a7460201b60201c565b1562000a19576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000a109062001242565b60405180910390fd5b8162000a2b8162000a7460201b60201c565b1562000a6e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000a659062001242565b60405180910390fd5b50505050565b6000600e60009054906101000a900460ff16801562000add5750600d60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b9050919050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b62000b4d8262000b02565b810181811067ffffffffffffffff8211171562000b6f5762000b6e62000b13565b5b80604052505050565b600062000b8462000ae4565b905062000b92828262000b42565b919050565b600067ffffffffffffffff82111562000bb55762000bb462000b13565b5b62000bc08262000b02565b9050602081019050919050565b60005b8381101562000bed57808201518184015260208101905062000bd0565b60008484015250505050565b600062000c1062000c0a8462000b97565b62000b78565b90508281526020810184848401111562000c2f5762000c2e62000afd565b5b62000c3c84828562000bcd565b509392505050565b600082601f83011262000c5c5762000c5b62000af8565b5b815162000c6e84826020860162000bf9565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000ca48262000c77565b9050919050565b62000cb68162000c97565b811462000cc257600080fd5b50565b60008151905062000cd68162000cab565b92915050565b600080600080600060a0868803121562000cfb5762000cfa62000aee565b5b600086015167ffffffffffffffff81111562000d1c5762000d1b62000af3565b5b62000d2a8882890162000c44565b955050602086015167ffffffffffffffff81111562000d4e5762000d4d62000af3565b5b62000d5c8882890162000c44565b945050604086015167ffffffffffffffff81111562000d805762000d7f62000af3565b5b62000d8e8882890162000c44565b935050606062000da18882890162000cc5565b925050608086015167ffffffffffffffff81111562000dc55762000dc462000af3565b5b62000dd38882890162000c44565b9150509295509295909350565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000e3357607f821691505b60208210810362000e495762000e4862000deb565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830262000eb37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000e74565b62000ebf868362000e74565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600062000f0c62000f0662000f008462000ed7565b62000ee1565b62000ed7565b9050919050565b6000819050919050565b62000f288362000eeb565b62000f4062000f378262000f13565b84845462000e81565b825550505050565b600090565b62000f5762000f48565b62000f6481848462000f1d565b505050565b5b8181101562000f8c5762000f8060008262000f4d565b60018101905062000f6a565b5050565b601f82111562000fdb5762000fa58162000e4f565b62000fb08462000e64565b8101602085101562000fc0578190505b62000fd862000fcf8562000e64565b83018262000f69565b50505b505050565b600082821c905092915050565b6000620010006000198460080262000fe0565b1980831691505092915050565b60006200101b838362000fed565b9150826002028217905092915050565b620010368262000de0565b67ffffffffffffffff81111562001052576200105162000b13565b5b6200105e825462000e1a565b6200106b82828562000f90565b600060209050601f831160018114620010a357600084156200108e578287015190505b6200109a85826200100d565b8655506200110a565b601f198416620010b38662000e4f565b60005b82811015620010dd57848901518255600182019150602085019450602081019050620010b6565b86831015620010fd5784890151620010f9601f89168262000fed565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006200114e8262000ed7565b91506200115b8362000ed7565b925082820390508181111562001176576200117562001112565b5b92915050565b600082825260208201905092915050565b60006200119a8262000de0565b620011a681856200117c565b9350620011b881856020860162000bcd565b620011c38162000b02565b840191505092915050565b60006020820190508181036000830152620011ea81846200118d565b905092915050565b7f6163636f756e742069732066726f7a656e000000000000000000000000000000600082015250565b60006200122a6011836200117c565b91506200123782620011f2565b602082019050919050565b600060208201905081810360008301526200125d816200121b565b9050919050565b61420680620012746000396000f3fe608060405234801561001057600080fd5b50600436106102065760003560e01c80636352211e1161011a57806395d89b41116100ad578063d05166501161007c578063d051665014610577578063d3fc9864146105a7578063e985e9c5146105c3578063f2fde38b146105f3578063fbc6e84e1461060f57610206565b806395d89b41146104f1578063a22cb4651461050f578063b88d4fde1461052b578063c87b56dd1461054757610206565b80638456cb59116100e95780638456cb59146104915780638d1fdf2f1461049b5780638da5cb5b146104b75780638e6406ef146104d557610206565b80636352211e1461040957806370a0823114610439578063715018a6146104695780637284e4161461047357610206565b80632f745c591161019d57806342966c681161016c57806342966c681461037957806345c8b1a6146103955780634be8b05e146103b15780634f6ccce7146103bb5780635c975abb146103eb57610206565b80632f745c5914610305578063323be1c5146103355780633f4ba83a1461035357806342842e0e1461035d57610206565b8063095ea7b3116101d9578063095ea7b3146102a55780631104bc77146102c157806318160ddd146102cb57806323b872dd146102e957610206565b806301ffc9a71461020b57806306fdde031461023b578063081812fc1461025957806308998b4e14610289575b600080fd5b610225600480360381019061022091906135f6565b61062d565b604051610232919061363e565b60405180910390f35b610243610694565b60405161025091906136e9565b60405180910390f35b610273600480360381019061026e9190613741565b610726565b60405161028091906137af565b60405180910390f35b6102a3600480360381019061029e91906137f6565b610841565b005b6102bf60048036038101906102ba9190613823565b6108b2565b005b6102c9610c95565b005b6102d3610d38565b6040516102e09190613872565b60405180910390f35b61030360048036038101906102fe919061388d565b610d45565b005b61031f600480360381019061031a9190613823565b6110ee565b60405161032c9190613872565b60405180910390f35b61033d611211565b60405161034a919061363e565b60405180910390f35b61035b611224565b005b6103776004803603810190610372919061388d565b6112e0565b005b610393600480360381019061038e9190613741565b611300565b005b6103af60048036038101906103aa91906137f6565b611366565b005b6103b9611411565b005b6103d560048036038101906103d09190613741565b6114cf565b6040516103e29190613872565b60405180910390f35b6103f3611577565b604051610400919061363e565b60405180910390f35b610423600480360381019061041e9190613741565b61158a565b60405161043091906137af565b60405180910390f35b610453600480360381019061044e91906137f6565b611670565b6040516104609190613872565b60405180910390f35b61047161172a565b005b61047b61182d565b60405161048891906136e9565b60405180910390f35b6104996118bf565b005b6104b560048036038101906104b091906137f6565b61197b565b005b6104bf611a26565b6040516104cc91906137af565b60405180910390f35b6104ef60048036038101906104ea9190613945565b611a4c565b005b6104f9611b04565b60405161050691906136e9565b60405180910390f35b610529600480360381019061052491906139e5565b611b96565b005b61054560048036038101906105409190613a7b565b611c93565b005b610561600480360381019061055c9190613741565b611cea565b60405161056e91906136e9565b60405180910390f35b610591600480360381019061058c91906137f6565b611e6d565b60405161059e919061363e565b60405180910390f35b6105c160048036038101906105bc9190613c33565b611e7f565b005b6105dd60048036038101906105d89190613ca2565b611ef2565b6040516105ea919061363e565b60405180910390f35b61060d600480360381019061060891906137f6565b611f86565b005b6106176120d9565b604051610624919061363e565b60405180910390f35b6000806000837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a900460ff169050919050565b6060600580546106a390613d11565b80601f01602080910402602001604051908101604052809291908181526020018280546106cf90613d11565b801561071c5780601f106106f15761010080835404028352916020019161071c565b820191906000526020600020905b8154815290600101906020018083116106ff57829003601f168201915b5050505050905090565b600081600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f303033303032000000000000000000000000000000000000000000000000000081525090610804576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107fb91906136e9565b60405180910390fd5b506002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16915050919050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461089b57600080fd5b6108a481611366565b6108af8160016120ec565b50565b8060006001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614806109ab5750600460008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6040518060400160405280600681526020017f303033303033000000000000000000000000000000000000000000000000000081525090610a22576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a1991906136e9565b60405180910390fd5b5082600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f303033303032000000000000000000000000000000000000000000000000000081525090610aff576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610af691906136e9565b60405180910390fd5b5060006001600086815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f303033303038000000000000000000000000000000000000000000000000000081525090610bdf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bd691906136e9565b60405180910390fd5b50856002600087815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550848673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a4505050505050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610cef57600080fd5b6000600e60006101000a81548160ff0219169083151502179055507fa41ce0eb55e300a1ce656ef6b0c94d7f1f13fab1042ff519cf6bfbf0ed280b1d60405160405180910390a1565b6000600880549050905090565b8060006001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161480610e1657503373ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b80610ea75750600460008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6040518060400160405280600681526020017f303033303034000000000000000000000000000000000000000000000000000081525090610f1e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f1591906136e9565b60405180910390fd5b5082600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f303033303032000000000000000000000000000000000000000000000000000081525090610ffb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ff291906136e9565b60405180910390fd5b5060006001600086815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146040518060400160405280600681526020017f3030333030370000000000000000000000000000000000000000000000000000815250906110da576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110d191906136e9565b60405180910390fd5b506110e586866120ec565b50505050505050565b6000600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054905082106040518060400160405280600681526020017f3030353030370000000000000000000000000000000000000000000000000000815250906111ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a391906136e9565b60405180910390fd5b50600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002082815481106111fe576111fd613d42565b5b9060005260206000200154905092915050565b600c60159054906101000a900460ff1681565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461127e57600080fd5b600c60149054906101000a900460ff1661129757600080fd5b6000600c60146101000a81548160ff0219169083151502179055507f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3360405160405180910390a1565b6112fb838383604051806020016040528060008152506121ac565b505050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461135a57600080fd5b6113638161276b565b50565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146113c057600080fd5b6113cb816000612847565b8073ffffffffffffffffffffffffffffffffffffffff167fca5069937e68fd197927055037f59d7c90bf75ac104e6e375539ef480c3ad6ee60405160405180910390a250565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461146b57600080fd5b6000600c60146101000a81548160ff0219169083151502179055506000600c60156101000a81548160ff0219169083151502179055507faff39f66825d4448497d384dee3f4a3adf00a622960add00806503ae4ccee01c60405160405180910390a1565b600060088054905082106040518060400160405280600681526020017f303035303037000000000000000000000000000000000000000000000000000081525090611550576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154791906136e9565b60405180910390fd5b506008828154811061156557611564613d42565b5b90600052602060002001549050919050565b600c60149054906101000a900460ff1681565b60006001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f30303330303200000000000000000000000000000000000000000000000000008152509061166a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161166191906136e9565b60405180910390fd5b50919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f303033303031000000000000000000000000000000000000000000000000000081525090611719576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161171091906136e9565b60405180910390fd5b50611723826128a3565b9050919050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461178457600080fd5b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482060405160405180910390a26000600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6060600f805461183c90613d11565b80601f016020809104026020016040519081016040528092919081815260200182805461186890613d11565b80156118b55780601f1061188a576101008083540402835291602001916118b5565b820191906000526020600020905b81548152906001019060200180831161189857829003601f168201915b5050505050905090565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461191957600080fd5b600c60159054906101000a900460ff1661193257600080fd5b6001600c60146101000a81548160ff0219169083151502179055507f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62560405160405180910390a1565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146119d557600080fd5b6119e0816001612847565b8073ffffffffffffffffffffffffffffffffffffffff167faf85b60d26151edd11443b704d424da6c43d0468f2235ebae3d1904dbc32304960405160405180910390a250565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611aa657600080fd5b611aaf84611366565b611afe848484848080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050611e7f565b50505050565b606060068054611b1390613d11565b80601f0160208091040260200160405190810160405280929190818152602001828054611b3f90613d11565b8015611b8c5780601f10611b6157610100808354040283529160200191611b8c565b820191906000526020600020905b815481529060010190602001808311611b6f57829003601f168201915b5050505050905090565b80600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611c87919061363e565b60405180910390a35050565b611ce385858585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506121ac565b5050505050565b606081600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f303033303032000000000000000000000000000000000000000000000000000081525090611dc8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dbf91906136e9565b60405180910390fd5b50600760008481526020019081526020016000208054611de790613d11565b80601f0160208091040260200160405190810160405280929190818152602001828054611e1390613d11565b8015611e605780601f10611e3557610100808354040283529160200191611e60565b820191906000526020600020905b815481529060010190602001808311611e4357829003601f168201915b5050505050915050919050565b6000611e78826128ef565b9050919050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611ed957600080fd5b611ee3838361295e565b611eed82826129be565b505050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611fe057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361201957600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600e60009054906101000a900460ff1681565b60006001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905061212d82612ac1565b612138818484612b62565b6121428183612b75565b61214c8383612e3c565b818373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4505050565b8160006001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16148061227d57503373ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b8061230e5750600460008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6040518060400160405280600681526020017f303033303034000000000000000000000000000000000000000000000000000081525090612385576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161237c91906136e9565b60405180910390fd5b5083600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f303033303032000000000000000000000000000000000000000000000000000081525090612462576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161245991906136e9565b60405180910390fd5b5060006001600087815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508773ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146040518060400160405280600681526020017f303033303037000000000000000000000000000000000000000000000000000081525090612541576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161253891906136e9565b60405180910390fd5b50600073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f3030333030310000000000000000000000000000000000000000000000000000815250906125ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125e191906136e9565b60405180910390fd5b506125f587876120ec565b6126148773ffffffffffffffffffffffffffffffffffffffff16613039565b156127615760008773ffffffffffffffffffffffffffffffffffffffff1663150b7a02338b8a8a6040518563ffffffff1660e01b815260040161265a9493929190613dc6565b6020604051808303816000875af1158015612679573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061269d9190613e27565b905063150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916146040518060400160405280600681526020017f30303330303500000000000000000000000000000000000000000000000000008152509061275e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161275591906136e9565b60405180910390fd5b50505b5050505050505050565b6127748161304c565b600060096000838152602001908152602001600020549050600060016008805490506127a09190613e83565b90506000600882815481106127b8576127b7613d42565b5b9060005260206000200154905080600884815481106127da576127d9613d42565b5b906000526020600020018190555060088054806127fa576127f9613eb7565b5b600190038181906000526020600020016000905590558260096000838152602001908152602001600020819055506000600960008681526020019081526020016000208190555050505050565b8015600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490509050919050565b6000600e60009054906101000a900460ff1680156129575750600d60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b9050919050565b612968828261309f565b600881908060018154018082558091505060019003906000526020600020016000909190919091505560016008805490506129a39190613e83565b60096000838152602001908152602001600020819055505050565b81600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f303033303032000000000000000000000000000000000000000000000000000081525090612a9a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a9191906136e9565b60405180910390fd5b5081600760008581526020019081526020016000209081612abb9190614092565b50505050565b600073ffffffffffffffffffffffffffffffffffffffff166002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612b5f576002600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555b50565b8282612b6e8282613298565b5050505050565b8173ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146040518060400160405280600681526020017f303033303037000000000000000000000000000000000000000000000000000081525090612c4e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c4591906136e9565b60405180910390fd5b506001600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556000600b600083815260200190815260200160002054905060006001600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050612cee9190613e83565b9050818114612dd1576000600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208281548110612d4a57612d49613d42565b5b9060005260206000200154905080600a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208481548110612da957612da8613d42565b5b906000526020600020018190555082600b600083815260200190815260200160002081905550505b600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805480612e2057612e1f613eb7565b5b6001900381819060005260206000200160009055905550505050565b600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146040518060400160405280600681526020017f303033303036000000000000000000000000000000000000000000000000000081525090612f16576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f0d91906136e9565b60405180910390fd5b50816001600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190806001815401808255809150506001900390600052602060002001600090919091909150556001600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054905061301e9190613e83565b600b6000838152602001908152602001600020819055505050565b600080823b905060008111915050919050565b613055816133a4565b600060076000838152602001908152602001600020805461307590613d11565b90501461309c5760076000828152602001908152602001600020600061309b919061352d565b5b50565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f303033303031000000000000000000000000000000000000000000000000000081525090613147576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161313e91906136e9565b60405180910390fd5b50600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146040518060400160405280600681526020017f303033303036000000000000000000000000000000000000000000000000000081525090613222576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161321991906136e9565b60405180910390fd5b5061322d8282612e3c565b613238338383612b62565b808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b600c60149054906101000a900460ff1615806133015750600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b61330a57600080fd5b81613314816128ef565b15613354576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161334b906141b0565b60405180910390fd5b8161335e816128ef565b1561339e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613395906141b0565b60405180910390fd5b50505050565b80600073ffffffffffffffffffffffffffffffffffffffff166001600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600681526020017f303033303032000000000000000000000000000000000000000000000000000081525090613480576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161347791906136e9565b60405180910390fd5b5060006001600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506134c283612ac1565b6134cc8184612b75565b82600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4505050565b50805461353990613d11565b6000825580601f1061354b575061356a565b601f016020900490600052602060002090810190613569919061356d565b5b50565b5b8082111561358657600081600090555060010161356e565b5090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6135d38161359e565b81146135de57600080fd5b50565b6000813590506135f0816135ca565b92915050565b60006020828403121561360c5761360b613594565b5b600061361a848285016135e1565b91505092915050565b60008115159050919050565b61363881613623565b82525050565b6000602082019050613653600083018461362f565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015613693578082015181840152602081019050613678565b60008484015250505050565b6000601f19601f8301169050919050565b60006136bb82613659565b6136c58185613664565b93506136d5818560208601613675565b6136de8161369f565b840191505092915050565b6000602082019050818103600083015261370381846136b0565b905092915050565b6000819050919050565b61371e8161370b565b811461372957600080fd5b50565b60008135905061373b81613715565b92915050565b60006020828403121561375757613756613594565b5b60006137658482850161372c565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006137998261376e565b9050919050565b6137a98161378e565b82525050565b60006020820190506137c460008301846137a0565b92915050565b6137d38161378e565b81146137de57600080fd5b50565b6000813590506137f0816137ca565b92915050565b60006020828403121561380c5761380b613594565b5b600061381a848285016137e1565b91505092915050565b6000806040838503121561383a57613839613594565b5b6000613848858286016137e1565b92505060206138598582860161372c565b9150509250929050565b61386c8161370b565b82525050565b60006020820190506138876000830184613863565b92915050565b6000806000606084860312156138a6576138a5613594565b5b60006138b4868287016137e1565b93505060206138c5868287016137e1565b92505060406138d68682870161372c565b9150509250925092565b600080fd5b600080fd5b600080fd5b60008083601f840112613905576139046138e0565b5b8235905067ffffffffffffffff811115613922576139216138e5565b5b60208301915083600182028301111561393e5761393d6138ea565b5b9250929050565b6000806000806060858703121561395f5761395e613594565b5b600061396d878288016137e1565b945050602061397e8782880161372c565b935050604085013567ffffffffffffffff81111561399f5761399e613599565b5b6139ab878288016138ef565b925092505092959194509250565b6139c281613623565b81146139cd57600080fd5b50565b6000813590506139df816139b9565b92915050565b600080604083850312156139fc576139fb613594565b5b6000613a0a858286016137e1565b9250506020613a1b858286016139d0565b9150509250929050565b60008083601f840112613a3b57613a3a6138e0565b5b8235905067ffffffffffffffff811115613a5857613a576138e5565b5b602083019150836001820283011115613a7457613a736138ea565b5b9250929050565b600080600080600060808688031215613a9757613a96613594565b5b6000613aa5888289016137e1565b9550506020613ab6888289016137e1565b9450506040613ac78882890161372c565b935050606086013567ffffffffffffffff811115613ae857613ae7613599565b5b613af488828901613a25565b92509250509295509295909350565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b613b408261369f565b810181811067ffffffffffffffff82111715613b5f57613b5e613b08565b5b80604052505050565b6000613b7261358a565b9050613b7e8282613b37565b919050565b600067ffffffffffffffff821115613b9e57613b9d613b08565b5b613ba78261369f565b9050602081019050919050565b82818337600083830152505050565b6000613bd6613bd184613b83565b613b68565b905082815260208101848484011115613bf257613bf1613b03565b5b613bfd848285613bb4565b509392505050565b600082601f830112613c1a57613c196138e0565b5b8135613c2a848260208601613bc3565b91505092915050565b600080600060608486031215613c4c57613c4b613594565b5b6000613c5a868287016137e1565b9350506020613c6b8682870161372c565b925050604084013567ffffffffffffffff811115613c8c57613c8b613599565b5b613c9886828701613c05565b9150509250925092565b60008060408385031215613cb957613cb8613594565b5b6000613cc7858286016137e1565b9250506020613cd8858286016137e1565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680613d2957607f821691505b602082108103613d3c57613d3b613ce2565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b6000613d9882613d71565b613da28185613d7c565b9350613db2818560208601613675565b613dbb8161369f565b840191505092915050565b6000608082019050613ddb60008301876137a0565b613de860208301866137a0565b613df56040830185613863565b8181036060830152613e078184613d8d565b905095945050505050565b600081519050613e21816135ca565b92915050565b600060208284031215613e3d57613e3c613594565b5b6000613e4b84828501613e12565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000613e8e8261370b565b9150613e998361370b565b9250828203905081811115613eb157613eb0613e54565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302613f487fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82613f0b565b613f528683613f0b565b95508019841693508086168417925050509392505050565b6000819050919050565b6000613f8f613f8a613f858461370b565b613f6a565b61370b565b9050919050565b6000819050919050565b613fa983613f74565b613fbd613fb582613f96565b848454613f18565b825550505050565b600090565b613fd2613fc5565b613fdd818484613fa0565b505050565b5b8181101561400157613ff6600082613fca565b600181019050613fe3565b5050565b601f8211156140465761401781613ee6565b61402084613efb565b8101602085101561402f578190505b61404361403b85613efb565b830182613fe2565b50505b505050565b600082821c905092915050565b60006140696000198460080261404b565b1980831691505092915050565b60006140828383614058565b9150826002028217905092915050565b61409b82613659565b67ffffffffffffffff8111156140b4576140b3613b08565b5b6140be8254613d11565b6140c9828285614005565b600060209050601f8311600181146140fc57600084156140ea578287015190505b6140f48582614076565b86555061415c565b601f19841661410a86613ee6565b60005b828110156141325784890151825560018201915060208501945060208101905061410d565b8683101561414f578489015161414b601f891682614058565b8355505b6001600288020188555050505b505050505050565b7f6163636f756e742069732066726f7a656e000000000000000000000000000000600082015250565b600061419a601183613664565b91506141a582614164565b602082019050919050565b600060208201905081810360008301526141c98161418d565b905091905056fea2646970667358221220905537048eb7830aeeccc8a038416023bb46de7bd886a1a09b2714eed2a7719364736f6c6343000813003300000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000a319bf12a9b89699379411043a3099e74cf0000c0000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000000c43686c6f6520546f6b656e730000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000543484c4f45000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001465726320746f6b656e7320666f722063686c6f650000000000000000000000000000000000000000000000000000000000000000000000000000000000000054687474703a2f2f6c6f63616c686f73743a333030302f76312f6a756e6f2f646f776e6c6f61645f646f63756d656e743f646f635f69643d7075626c69632d6645517479684b506f47466a5871585474396e6f3345000000000000000000000000