[ { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "approved", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "operator", "type": "address" }, { "indexed": false, "internalType": "bool", "name": "approved", "type": "bool" } ], "name": "ApprovalForAll", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "_by", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "_tokenId", "type": "uint256" }, { "indexed": false, "internalType": "string", "name": "_name", "type": "string" } ], "name": "ghostNameChange", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "string", "name": "_licenseText", "type": "string" } ], "name": "licenseisLocked", "type": "event" }, { "inputs": [], "name": "MAX_ghosts", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newPrice", "type": "uint256" } ], "name": "_Price", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "approve", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "baseURI", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "_tokenId", "type": "uint256" }, { "internalType": "string", "name": "_name", "type": "string" } ], "name": "changeGhostsName", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "flipSaleState", "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": "", "type": "uint256" } ], "name": "ghostNames", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_owner", "type": "address" } ], "name": "ghostNamesOfOwner", "outputs": [ { "internalType": "string[]", "name": "", "type": "string[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "ghostPrice", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "ghostsReserve", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "ghosts_PROVENANCE", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "operator", "type": "address" } ], "name": "isApprovedForAll", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxghostPurchase", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "numberOfTokens", "type": "uint256" } ], "name": "mintGhosts", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "ownerOf", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_to", "type": "address" }, { "internalType": "uint256", "name": "_reserveAmount", "type": "uint256" } ], "name": "reserveghosts", "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": [], "name": "saleIsActive", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "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": "newBaseURI", "type": "string" } ], "name": "setBaseURI", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "provenanceHash", "type": "string" } ], "name": "setProvenanceHash", "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": "uint256", "name": "_tokenId", "type": "uint256" } ], "name": "viewGhostName", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "withdraw", "outputs": [], "stateMutability": "payable", "type": "function" } ]
608060405260405180602001604052806000815250600b90805190602001906200002b92919062000263565b506040518060400160405280601a81526020017f68747470733a2f2f6176617867686f7374732e696f2f6170692f000000000000815250600c90805190602001906200007992919062000263565b506000600d60006101000a81548160ff021916908315150217905550671bc16d674ec80000600e556000600f60006101000a81548160ff0219169083151502179055506064601155348015620000ce57600080fd5b506040518060400160405280600b81526020017f417661782047686f7374730000000000000000000000000000000000000000008152506040518060400160405280600681526020017f47484f535453000000000000000000000000000000000000000000000000000081525081600090805190602001906200015392919062000263565b5080600190805190602001906200016c92919062000263565b5050506200018f620001836200019560201b60201c565b6200019d60201b60201c565b62000378565b600033905090565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b828054620002719062000313565b90600052602060002090601f016020900481019282620002955760008555620002e1565b82601f10620002b057805160ff1916838001178555620002e1565b82800160010185558215620002e1579182015b82811115620002e0578251825591602001919060010190620002c3565b5b509050620002f09190620002f4565b5090565b5b808211156200030f576000816000905550600101620002f5565b5090565b600060028204905060018216806200032c57607f821691505b6020821081141562000343576200034262000349565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b614fbc80620003886000396000f3fe6080604052600436106102255760003560e01c8063717f0fb611610123578063b88d4fde116100ab578063eb8d24441161006f578063eb8d244414610821578063f2fde38b1461084c578063f4da767714610875578063f7896ca6146108a0578063fafb335f146108cb57610225565b8063b88d4fde1461072a578063c5bdec3414610753578063c87b56dd1461077c578063ce23a4c3146107b9578063e985e9c5146107e457610225565b80638da5cb5b116100f25780638da5cb5b1461064557806395a923151461067057806395d89b41146106ad578063a22cb465146106d8578063b60c1b371461070157610225565b8063717f0fb6146105725780637f591a53146105af5780638462151c146105cb5780638abc27651461060857610225565b806334918dfd116101b157806355f804b31161017557806355f804b31461048d5780636352211e146104b65780636c0360eb146104f357806370a082311461051e578063715018a61461055b57610225565b806334918dfd146103dd5780633ccfd60b146103f457806342842e0e146103fe5780634f6ccce714610427578063557709801461046457610225565b806310969523116101f857806310969523146102f857806318160ddd146103215780631e49c0491461034c57806323b872dd146103775780632f745c59146103a057610225565b806301ffc9a71461022a57806306fdde0314610267578063081812fc14610292578063095ea7b3146102cf575b600080fd5b34801561023657600080fd5b50610251600480360381019061024c9190613665565b6108f6565b60405161025e9190613f21565b60405180910390f35b34801561027357600080fd5b5061027c610970565b6040516102899190613f3c565b60405180910390f35b34801561029e57600080fd5b506102b960048036038101906102b49190613708565b610a02565b6040516102c69190613e38565b60405180910390f35b3480156102db57600080fd5b506102f660048036038101906102f191906135f8565b610a87565b005b34801561030457600080fd5b5061031f600480360381019061031a91906136bf565b610b9f565b005b34801561032d57600080fd5b50610336610c35565b604051610343919061429e565b60405180910390f35b34801561035857600080fd5b50610361610c42565b60405161036e919061429e565b60405180910390f35b34801561038357600080fd5b5061039e600480360381019061039991906134e2565b610c48565b005b3480156103ac57600080fd5b506103c760048036038101906103c291906135f8565b610ca8565b6040516103d4919061429e565b60405180910390f35b3480156103e957600080fd5b506103f2610d4d565b005b6103fc610df5565b005b34801561040a57600080fd5b50610425600480360381019061042091906134e2565b610ec7565b005b34801561043357600080fd5b5061044e60048036038101906104499190613708565b610ee7565b60405161045b919061429e565b60405180910390f35b34801561047057600080fd5b5061048b600480360381019061048691906135f8565b610f58565b005b34801561049957600080fd5b506104b460048036038101906104af91906136bf565b611085565b005b3480156104c257600080fd5b506104dd60048036038101906104d89190613708565b61111b565b6040516104ea9190613e38565b60405180910390f35b3480156104ff57600080fd5b506105086111cd565b6040516105159190613f3c565b60405180910390f35b34801561052a57600080fd5b5061054560048036038101906105409190613475565b61125b565b604051610552919061429e565b60405180910390f35b34801561056757600080fd5b50610570611313565b005b34801561057e57600080fd5b5061059960048036038101906105949190613475565b61139b565b6040516105a69190613edd565b60405180910390f35b6105c960048036038101906105c49190613708565b611549565b005b3480156105d757600080fd5b506105f260048036038101906105ed9190613475565b6116e8565b6040516105ff9190613eff565b60405180910390f35b34801561061457600080fd5b5061062f600480360381019061062a9190613708565b6117f2565b60405161063c9190613f3c565b60405180910390f35b34801561065157600080fd5b5061065a611892565b6040516106679190613e38565b60405180910390f35b34801561067c57600080fd5b5061069760048036038101906106929190613708565b6118bc565b6040516106a49190613f3c565b60405180910390f35b3480156106b957600080fd5b506106c26119aa565b6040516106cf9190613f3c565b60405180910390f35b3480156106e457600080fd5b506106ff60048036038101906106fa91906135b8565b611a3c565b005b34801561070d57600080fd5b5061072860048036038101906107239190613735565b611bbd565b005b34801561073657600080fd5b50610751600480360381019061074c9190613535565b611d8d565b005b34801561075f57600080fd5b5061077a60048036038101906107759190613708565b611def565b005b34801561078857600080fd5b506107a3600480360381019061079e9190613708565b611e75565b6040516107b09190613f3c565b60405180910390f35b3480156107c557600080fd5b506107ce611f1c565b6040516107db9190613f3c565b60405180910390f35b3480156107f057600080fd5b5061080b600480360381019061080691906134a2565b611faa565b6040516108189190613f21565b60405180910390f35b34801561082d57600080fd5b5061083661203e565b6040516108439190613f21565b60405180910390f35b34801561085857600080fd5b50610873600480360381019061086e9190613475565b612051565b005b34801561088157600080fd5b5061088a612149565b604051610897919061429e565b60405180910390f35b3480156108ac57600080fd5b506108b561214f565b6040516108c2919061429e565b60405180910390f35b3480156108d757600080fd5b506108e0612155565b6040516108ed919061429e565b60405180910390f35b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061096957506109688261215a565b5b9050919050565b60606000805461097f906145fb565b80601f01602080910402602001604051908101604052809291908181526020018280546109ab906145fb565b80156109f85780601f106109cd576101008083540402835291602001916109f8565b820191906000526020600020905b8154815290600101906020018083116109db57829003601f168201915b5050505050905090565b6000610a0d8261223c565b610a4c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a439061417e565b60405180910390fd5b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000610a928261111b565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610b03576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610afa9061421e565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610b226122a8565b73ffffffffffffffffffffffffffffffffffffffff161480610b515750610b5081610b4b6122a8565b611faa565b5b610b90576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b87906140be565b60405180910390fd5b610b9a83836122b0565b505050565b610ba76122a8565b73ffffffffffffffffffffffffffffffffffffffff16610bc5611892565b73ffffffffffffffffffffffffffffffffffffffff1614610c1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c129061419e565b60405180910390fd5b80600b9080519060200190610c31929190613274565b5050565b6000600880549050905090565b6109c481565b610c59610c536122a8565b82612369565b610c98576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c8f9061423e565b60405180910390fd5b610ca3838383612447565b505050565b6000610cb38361125b565b8210610cf4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ceb90613f7e565b60405180910390fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b610d556122a8565b73ffffffffffffffffffffffffffffffffffffffff16610d73611892565b73ffffffffffffffffffffffffffffffffffffffff1614610dc9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dc09061419e565b60405180910390fd5b600f60009054906101000a900460ff1615600f60006101000a81548160ff021916908315150217905550565b610dfd6122a8565b73ffffffffffffffffffffffffffffffffffffffff16610e1b611892565b73ffffffffffffffffffffffffffffffffffffffff1614610e71576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e689061419e565b60405180910390fd5b6000610e7b611892565b90508073ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050158015610ec3573d6000803e3d6000fd5b5050565b610ee283838360405180602001604052806000815250611d8d565b505050565b6000610ef1610c35565b8210610f32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f299061425e565b60405180910390fd5b60088281548110610f4657610f45614794565b5b90600052602060002001549050919050565b610f606122a8565b73ffffffffffffffffffffffffffffffffffffffff16610f7e611892565b73ffffffffffffffffffffffffffffffffffffffff1614610fd4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fcb9061419e565b60405180910390fd5b6000610fde610c35565b9050600082118015610ff257506011548211155b611031576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110289061401e565b60405180910390fd5b60005b828110156110645761105184828461104c9190614426565b6126a3565b808061105c9061465e565b915050611034565b5061107a826011546126c190919063ffffffff16565b601181905550505050565b61108d6122a8565b73ffffffffffffffffffffffffffffffffffffffff166110ab611892565b73ffffffffffffffffffffffffffffffffffffffff1614611101576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110f89061419e565b60405180910390fd5b80600c9080519060200190611117929190613274565b5050565b6000806002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156111c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111bb906140fe565b60405180910390fd5b80915050919050565b600c80546111da906145fb565b80601f0160208091040260200160405190810160405280929190818152602001828054611206906145fb565b80156112535780601f1061122857610100808354040283529160200191611253565b820191906000526020600020905b81548152906001019060200180831161123657829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156112cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112c3906140de565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61131b6122a8565b73ffffffffffffffffffffffffffffffffffffffff16611339611892565b73ffffffffffffffffffffffffffffffffffffffff161461138f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113869061419e565b60405180910390fd5b61139960006126d7565b565b606060006113a88361125b565b9050600081141561140a57600067ffffffffffffffff8111156113ce576113cd6147c3565b5b60405190808252806020026020018201604052801561140157816020015b60608152602001906001900390816113ec5790505b50915050611544565b60008167ffffffffffffffff811115611426576114256147c3565b5b60405190808252806020026020018201604052801561145957816020015b60608152602001906001900390816114445790505b50905060005b8281101561153d57601060006114758784610ca8565b8152602001908152602001600020805461148e906145fb565b80601f01602080910402602001604051908101604052809291908181526020018280546114ba906145fb565b80156115075780601f106114dc57610100808354040283529160200191611507565b820191906000526020600020905b8154815290600101906020018083116114ea57829003601f168201915b505050505082828151811061151f5761151e614794565b5b602002602001018190525080806115359061465e565b91505061145f565b8193505050505b919050565b600f60009054906101000a900460ff16611598576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161158f90613ffe565b60405180910390fd5b6000811180156115a95750600a8111155b6115e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115df9061427e565b60405180910390fd5b6109c4611605826115f7610c35565b61279d90919063ffffffff16565b1115611646576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163d9061415e565b60405180910390fd5b61165b81600e546127b390919063ffffffff16565b34101561169d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161169490613f5e565b60405180910390fd5b60005b818110156116e45760006116b2610c35565b90506109c46116bf610c35565b10156116d0576116cf33826126a3565b5b5080806116dc9061465e565b9150506116a0565b5050565b606060006116f58361125b565b9050600081141561175257600067ffffffffffffffff81111561171b5761171a6147c3565b5b6040519080825280602002602001820160405280156117495781602001602082028036833780820191505090505b509150506117ed565b60008167ffffffffffffffff81111561176e5761176d6147c3565b5b60405190808252806020026020018201604052801561179c5781602001602082028036833780820191505090505b50905060005b828110156117e6576117b48582610ca8565b8282815181106117c7576117c6614794565b5b60200260200101818152505080806117de9061465e565b9150506117a2565b8193505050505b919050565b60106020528060005260406000206000915090508054611811906145fb565b80601f016020809104026020016040519081016040528092919081815260200182805461183d906145fb565b801561188a5780601f1061185f5761010080835404028352916020019161188a565b820191906000526020600020905b81548152906001019060200180831161186d57829003601f168201915b505050505081565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606118c6610c35565b8210611907576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118fe9061409e565b60405180910390fd5b601060008381526020019081526020016000208054611925906145fb565b80601f0160208091040260200160405190810160405280929190818152602001828054611951906145fb565b801561199e5780601f106119735761010080835404028352916020019161199e565b820191906000526020600020905b81548152906001019060200180831161198157829003601f168201915b50505050509050919050565b6060600180546119b9906145fb565b80601f01602080910402602001604051908101604052809291908181526020018280546119e5906145fb565b8015611a325780601f10611a0757610100808354040283529160200191611a32565b820191906000526020600020905b815481529060010190602001808311611a1557829003601f168201915b5050505050905090565b611a446122a8565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611ab2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aa99061405e565b60405180910390fd5b8060056000611abf6122a8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff16611b6c6122a8565b73ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611bb19190613f21565b60405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff16611bdd8361111b565b73ffffffffffffffffffffffffffffffffffffffff1614611c33576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c2a9061411e565b60405180910390fd5b600260106000848152602001908152602001600020604051611c559190613dfd565b602060405180830381855afa158015611c72573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190611c959190613638565b600282604051611ca59190613de6565b602060405180830381855afa158015611cc2573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190611ce59190613638565b1415611d26576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d1d906141fe565b60405180910390fd5b80601060008481526020019081526020016000209080519060200190611d4d929190613274565b507f6aa1385854864d4f270796f2ef1118f244d739f7280409e3fb4b07aee52e7066338383604051611d8193929190613e9f565b60405180910390a15050565b611d9e611d986122a8565b83612369565b611ddd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dd49061423e565b60405180910390fd5b611de9848484846127c9565b50505050565b611df76122a8565b73ffffffffffffffffffffffffffffffffffffffff16611e15611892565b73ffffffffffffffffffffffffffffffffffffffff1614611e6b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e629061419e565b60405180910390fd5b80600e8190555050565b6060611e808261223c565b611ebf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611eb6906141de565b60405180910390fd5b6000611ec9612825565b90506000815111611ee95760405180602001604052806000815250611f14565b80611ef3846128b7565b604051602001611f04929190613e14565b6040516020818303038152906040525b915050919050565b600b8054611f29906145fb565b80601f0160208091040260200160405190810160405280929190818152602001828054611f55906145fb565b8015611fa25780601f10611f7757610100808354040283529160200191611fa2565b820191906000526020600020905b815481529060010190602001808311611f8557829003601f168201915b505050505081565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600f60009054906101000a900460ff1681565b6120596122a8565b73ffffffffffffffffffffffffffffffffffffffff16612077611892565b73ffffffffffffffffffffffffffffffffffffffff16146120cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120c49061419e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561213d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161213490613fbe565b60405180910390fd5b612146816126d7565b50565b60115481565b600e5481565b600a81565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061222557507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80612235575061223482612a18565b5b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff166123238361111b565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b60006123748261223c565b6123b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123aa9061407e565b60405180910390fd5b60006123be8361111b565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061242d57508373ffffffffffffffffffffffffffffffffffffffff1661241584610a02565b73ffffffffffffffffffffffffffffffffffffffff16145b8061243e575061243d8185611faa565b5b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff166124678261111b565b73ffffffffffffffffffffffffffffffffffffffff16146124bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124b4906141be565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561252d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125249061403e565b60405180910390fd5b612538838383612a82565b6125436000826122b0565b6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546125939190614507565b925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546125ea9190614426565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4505050565b6126bd828260405180602001604052806000815250612b96565b5050565b600081836126cf9190614507565b905092915050565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081836127ab9190614426565b905092915050565b600081836127c191906144ad565b905092915050565b6127d4848484612447565b6127e084848484612bf1565b61281f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161281690613f9e565b60405180910390fd5b50505050565b6060600c8054612834906145fb565b80601f0160208091040260200160405190810160405280929190818152602001828054612860906145fb565b80156128ad5780601f10612882576101008083540402835291602001916128ad565b820191906000526020600020905b81548152906001019060200180831161289057829003601f168201915b5050505050905090565b606060008214156128ff576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050612a13565b600082905060005b6000821461293157808061291a9061465e565b915050600a8261292a919061447c565b9150612907565b60008167ffffffffffffffff81111561294d5761294c6147c3565b5b6040519080825280601f01601f19166020018201604052801561297f5781602001600182028036833780820191505090505b5090505b60008514612a0c576001826129989190614507565b9150600a856129a791906146a7565b60306129b39190614426565b60f81b8183815181106129c9576129c8614794565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a85612a05919061447c565b9450612983565b8093505050505b919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b612a8d838383612d88565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612ad057612acb81612d8d565b612b0f565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614612b0e57612b0d8382612dd6565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612b5257612b4d81612f43565b612b91565b8273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614612b9057612b8f8282613014565b5b5b505050565b612ba08383613093565b612bad6000848484612bf1565b612bec576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612be390613f9e565b60405180910390fd5b505050565b6000612c128473ffffffffffffffffffffffffffffffffffffffff16613261565b15612d7b578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02612c3b6122a8565b8786866040518563ffffffff1660e01b8152600401612c5d9493929190613e53565b602060405180830381600087803b158015612c7757600080fd5b505af1925050508015612ca857506040513d601f19601f82011682018060405250810190612ca59190613692565b60015b612d2b573d8060008114612cd8576040519150601f19603f3d011682016040523d82523d6000602084013e612cdd565b606091505b50600081511415612d23576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d1a90613f9e565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050612d80565b600190505b949350505050565b505050565b6008805490506009600083815260200190815260200160002081905550600881908060018154018082558091505060019003906000526020600020016000909190919091505550565b60006001612de38461125b565b612ded9190614507565b9050600060076000848152602001908152602001600020549050818114612ed2576000600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550816007600083815260200190815260200160002081905550505b6007600084815260200190815260200160002060009055600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b60006001600880549050612f579190614507565b9050600060096000848152602001908152602001600020549050600060088381548110612f8757612f86614794565b5b906000526020600020015490508060088381548110612fa957612fa8614794565b5b906000526020600020018190555081600960008381526020019081526020016000208190555060096000858152602001908152602001600020600090556008805480612ff857612ff7614765565b5b6001900381819060005260206000200160009055905550505050565b600061301f8361125b565b905081600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002081905550806007600084815260200190815260200160002081905550505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415613103576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130fa9061413e565b60405180910390fd5b61310c8161223c565b1561314c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161314390613fde565b60405180910390fd5b61315860008383612a82565b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546131a89190614426565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b600080823b905060008111915050919050565b828054613280906145fb565b90600052602060002090601f0160209004810192826132a257600085556132e9565b82601f106132bb57805160ff19168380011785556132e9565b828001600101855582156132e9579182015b828111156132e85782518255916020019190600101906132cd565b5b5090506132f691906132fa565b5090565b5b808211156133135760008160009055506001016132fb565b5090565b600061332a613325846142de565b6142b9565b905082815260208101848484011115613346576133456147f7565b5b6133518482856145b9565b509392505050565b600061336c6133678461430f565b6142b9565b905082815260208101848484011115613388576133876147f7565b5b6133938482856145b9565b509392505050565b6000813590506133aa81614f13565b92915050565b6000813590506133bf81614f2a565b92915050565b6000815190506133d481614f41565b92915050565b6000813590506133e981614f58565b92915050565b6000815190506133fe81614f58565b92915050565b600082601f830112613419576134186147f2565b5b8135613429848260208601613317565b91505092915050565b600082601f830112613447576134466147f2565b5b8135613457848260208601613359565b91505092915050565b60008135905061346f81614f6f565b92915050565b60006020828403121561348b5761348a614801565b5b60006134998482850161339b565b91505092915050565b600080604083850312156134b9576134b8614801565b5b60006134c78582860161339b565b92505060206134d88582860161339b565b9150509250929050565b6000806000606084860312156134fb576134fa614801565b5b60006135098682870161339b565b935050602061351a8682870161339b565b925050604061352b86828701613460565b9150509250925092565b6000806000806080858703121561354f5761354e614801565b5b600061355d8782880161339b565b945050602061356e8782880161339b565b935050604061357f87828801613460565b925050606085013567ffffffffffffffff8111156135a05761359f6147fc565b5b6135ac87828801613404565b91505092959194509250565b600080604083850312156135cf576135ce614801565b5b60006135dd8582860161339b565b92505060206135ee858286016133b0565b9150509250929050565b6000806040838503121561360f5761360e614801565b5b600061361d8582860161339b565b925050602061362e85828601613460565b9150509250929050565b60006020828403121561364e5761364d614801565b5b600061365c848285016133c5565b91505092915050565b60006020828403121561367b5761367a614801565b5b6000613689848285016133da565b91505092915050565b6000602082840312156136a8576136a7614801565b5b60006136b6848285016133ef565b91505092915050565b6000602082840312156136d5576136d4614801565b5b600082013567ffffffffffffffff8111156136f3576136f26147fc565b5b6136ff84828501613432565b91505092915050565b60006020828403121561371e5761371d614801565b5b600061372c84828501613460565b91505092915050565b6000806040838503121561374c5761374b614801565b5b600061375a85828601613460565b925050602083013567ffffffffffffffff81111561377b5761377a6147fc565b5b61378785828601613432565b9150509250929050565b600061379d8383613997565b905092915050565b60006137b18383613dc8565b60208301905092915050565b6137c68161453b565b82525050565b60006137d782614375565b6137e181856143bb565b9350836020820285016137f385614340565b8060005b8581101561382f57848403895281516138108582613791565b945061381b836143a1565b925060208a019950506001810190506137f7565b50829750879550505050505092915050565b600061384c82614380565b61385681856143cc565b935061386183614350565b8060005b8381101561389257815161387988826137a5565b9750613884836143ae565b925050600181019050613865565b5085935050505092915050565b6138a88161454d565b82525050565b60006138b98261438b565b6138c381856143dd565b93506138d38185602086016145c8565b6138dc81614806565b840191505092915050565b60006138f28261438b565b6138fc81856143ee565b935061390c8185602086016145c8565b80840191505092915050565b60008154613925816145fb565b61392f81866143ee565b9450600182166000811461394a576001811461395b5761398e565b60ff1983168652818601935061398e565b61396485614360565b60005b8381101561398657815481890152600182019150602081019050613967565b838801955050505b50505092915050565b60006139a282614396565b6139ac81856143f9565b93506139bc8185602086016145c8565b6139c581614806565b840191505092915050565b60006139db82614396565b6139e5818561440a565b93506139f58185602086016145c8565b6139fe81614806565b840191505092915050565b6000613a1482614396565b613a1e818561441b565b9350613a2e8185602086016145c8565b80840191505092915050565b6000613a47601e8361440a565b9150613a5282614817565b602082019050919050565b6000613a6a602b8361440a565b9150613a7582614840565b604082019050919050565b6000613a8d60328361440a565b9150613a988261488f565b604082019050919050565b6000613ab060268361440a565b9150613abb826148de565b604082019050919050565b6000613ad3601c8361440a565b9150613ade8261492d565b602082019050919050565b6000613af660218361440a565b9150613b0182614956565b604082019050919050565b6000613b1960208361440a565b9150613b24826149a5565b602082019050919050565b6000613b3c60248361440a565b9150613b47826149ce565b604082019050919050565b6000613b5f60198361440a565b9150613b6a82614a1d565b602082019050919050565b6000613b82602c8361440a565b9150613b8d82614a46565b604082019050919050565b6000613ba5601b8361440a565b9150613bb082614a95565b602082019050919050565b6000613bc860388361440a565b9150613bd382614abe565b604082019050919050565b6000613beb602a8361440a565b9150613bf682614b0d565b604082019050919050565b6000613c0e60298361440a565b9150613c1982614b5c565b604082019050919050565b6000613c3160298361440a565b9150613c3c82614bab565b604082019050919050565b6000613c5460208361440a565b9150613c5f82614bfa565b602082019050919050565b6000613c77602a8361440a565b9150613c8282614c23565b604082019050919050565b6000613c9a602c8361440a565b9150613ca582614c72565b604082019050919050565b6000613cbd60208361440a565b9150613cc882614cc1565b602082019050919050565b6000613ce060298361440a565b9150613ceb82614cea565b604082019050919050565b6000613d03602f8361440a565b9150613d0e82614d39565b604082019050919050565b6000613d2660238361440a565b9150613d3182614d88565b604082019050919050565b6000613d4960218361440a565b9150613d5482614dd7565b604082019050919050565b6000613d6c60318361440a565b9150613d7782614e26565b604082019050919050565b6000613d8f602c8361440a565b9150613d9a82614e75565b604082019050919050565b6000613db260218361440a565b9150613dbd82614ec4565b604082019050919050565b613dd1816145af565b82525050565b613de0816145af565b82525050565b6000613df282846138e7565b915081905092915050565b6000613e098284613918565b915081905092915050565b6000613e208285613a09565b9150613e2c8284613a09565b91508190509392505050565b6000602082019050613e4d60008301846137bd565b92915050565b6000608082019050613e6860008301876137bd565b613e7560208301866137bd565b613e826040830185613dd7565b8181036060830152613e9481846138ae565b905095945050505050565b6000606082019050613eb460008301866137bd565b613ec16020830185613dd7565b8181036040830152613ed381846139d0565b9050949350505050565b60006020820190508181036000830152613ef781846137cc565b905092915050565b60006020820190508181036000830152613f198184613841565b905092915050565b6000602082019050613f36600083018461389f565b92915050565b60006020820190508181036000830152613f5681846139d0565b905092915050565b60006020820190508181036000830152613f7781613a3a565b9050919050565b60006020820190508181036000830152613f9781613a5d565b9050919050565b60006020820190508181036000830152613fb781613a80565b9050919050565b60006020820190508181036000830152613fd781613aa3565b9050919050565b60006020820190508181036000830152613ff781613ac6565b9050919050565b6000602082019050818103600083015261401781613ae9565b9050919050565b6000602082019050818103600083015261403781613b0c565b9050919050565b6000602082019050818103600083015261405781613b2f565b9050919050565b6000602082019050818103600083015261407781613b52565b9050919050565b6000602082019050818103600083015261409781613b75565b9050919050565b600060208201905081810360008301526140b781613b98565b9050919050565b600060208201905081810360008301526140d781613bbb565b9050919050565b600060208201905081810360008301526140f781613bde565b9050919050565b6000602082019050818103600083015261411781613c01565b9050919050565b6000602082019050818103600083015261413781613c24565b9050919050565b6000602082019050818103600083015261415781613c47565b9050919050565b6000602082019050818103600083015261417781613c6a565b9050919050565b6000602082019050818103600083015261419781613c8d565b9050919050565b600060208201905081810360008301526141b781613cb0565b9050919050565b600060208201905081810360008301526141d781613cd3565b9050919050565b600060208201905081810360008301526141f781613cf6565b9050919050565b6000602082019050818103600083015261421781613d19565b9050919050565b6000602082019050818103600083015261423781613d3c565b9050919050565b6000602082019050818103600083015261425781613d5f565b9050919050565b6000602082019050818103600083015261427781613d82565b9050919050565b6000602082019050818103600083015261429781613da5565b9050919050565b60006020820190506142b36000830184613dd7565b92915050565b60006142c36142d4565b90506142cf828261462d565b919050565b6000604051905090565b600067ffffffffffffffff8211156142f9576142f86147c3565b5b61430282614806565b9050602081019050919050565b600067ffffffffffffffff82111561432a576143296147c3565b5b61433382614806565b9050602081019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b60008190508160005260206000209050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b6000614431826145af565b915061443c836145af565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115614471576144706146d8565b5b828201905092915050565b6000614487826145af565b9150614492836145af565b9250826144a2576144a1614707565b5b828204905092915050565b60006144b8826145af565b91506144c3836145af565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156144fc576144fb6146d8565b5b828202905092915050565b6000614512826145af565b915061451d836145af565b9250828210156145305761452f6146d8565b5b828203905092915050565b60006145468261458f565b9050919050565b60008115159050919050565b6000819050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b82818337600083830152505050565b60005b838110156145e65780820151818401526020810190506145cb565b838111156145f5576000848401525b50505050565b6000600282049050600182168061461357607f821691505b6020821081141561462757614626614736565b5b50919050565b61463682614806565b810181811067ffffffffffffffff82111715614655576146546147c3565b5b80604052505050565b6000614669826145af565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561469c5761469b6146d8565b5b600182019050919050565b60006146b2826145af565b91506146bd836145af565b9250826146cd576146cc614707565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f417661782076616c75652073656e74206973206e6f7420636f72726563740000600082015250565b7f455243373231456e756d657261626c653a206f776e657220696e646578206f7560008201527f74206f6620626f756e6473000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b7f53616c65206d7573742062652061637469766520746f206d696e742067686f7360008201527f7400000000000000000000000000000000000000000000000000000000000000602082015250565b7f4e6f7420656e6f7567682072657365727665206c65667420666f72207465616d600082015250565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b7f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b7f43686f6f736520612067686f73742077697468696e2072616e67650000000000600082015250565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760008201527f6e6572206e6f7220617070726f76656420666f7220616c6c0000000000000000602082015250565b7f4552433732313a2062616c616e636520717565727920666f7220746865207a6560008201527f726f206164647265737300000000000000000000000000000000000000000000602082015250565b7f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460008201527f656e7420746f6b656e0000000000000000000000000000000000000000000000602082015250565b7f4865792c20796f75722077616c6c657420646f65736e2774206f776e2074686960008201527f732067686f737473210000000000000000000000000000000000000000000000602082015250565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b7f507572636861736520776f756c6420657863656564206d617820737570706c7960008201527f206f662067686f73747300000000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f4552433732313a207472616e73666572206f6620746f6b656e2074686174206960008201527f73206e6f74206f776e0000000000000000000000000000000000000000000000602082015250565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b7f4e6577206e616d652069732073616d65206173207468652063757272656e742060008201527f6f6e650000000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60008201527f776e6572206e6f7220617070726f766564000000000000000000000000000000602082015250565b7f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60008201527f7574206f6620626f756e64730000000000000000000000000000000000000000602082015250565b7f43616e206f6e6c79206d696e7420313020746f6b656e7320617420612074696d60008201527f6500000000000000000000000000000000000000000000000000000000000000602082015250565b614f1c8161453b565b8114614f2757600080fd5b50565b614f338161454d565b8114614f3e57600080fd5b50565b614f4a81614559565b8114614f5557600080fd5b50565b614f6181614563565b8114614f6c57600080fd5b50565b614f78816145af565b8114614f8357600080fd5b5056fea2646970667358221220ce9b46e5a51918672b2667928272156d7c9eca19968299d6ea0f332f9f1ac61f64736f6c63430008070033