[ { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "approved", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "operator", "type": "address" }, { "indexed": false, "internalType": "bool", "name": "approved", "type": "bool" } ], "name": "ApprovalForAll", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "inputs": [ { "internalType": "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" } ], "name": "getApproved", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "guaranteed", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "operator", "type": "address" } ], "name": "isApprovedForAll", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "receiver", "type": "address" }, { "internalType": "bytes32[]", "name": "proof", "type": "bytes32[]" } ], "name": "mintAllowlist", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "mintFromReserved", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "receiver", "type": "address" } ], "name": "mintPublic", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "mintState", "outputs": [ { "internalType": "enum UprisingGenesisOrigins.MintState", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "mintedOnGuaranteed", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "mintedOnOversubscribed", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "oldOwner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "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": [], "name": "reserved", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "reservedMinted", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "rootForGuaranteed", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "rootForOversubscribed", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "safeTransferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "safeTransferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "operator", "type": "address" }, { "internalType": "bool", "name": "approved", "type": "bool" } ], "name": "setApprovalForAll", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "newBaseURI", "type": "string" } ], "name": "setBaseURI", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "count", "type": "uint256" } ], "name": "setGuaranteedCount", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "merkleRoot_", "type": "bytes32" } ], "name": "setMerkleOversubscribed", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "merkleRoot_", "type": "bytes32" } ], "name": "setMerkleRootGuaranteed", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "mintState_", "type": "uint256" } ], "name": "setMintState", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "count", "type": "uint256" } ], "name": "setReservedCount", "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": "tokenId", "type": "uint256" } ], "name": "tokenURI", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalAllowListMinted", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalGuaranteedAllowListMinted", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalMinted", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalOversubscribedAllowListMinted", "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" } ]
6080604052610457600a55606f600b556000601560006101000a81548160ff0219169083600381111562000038576200003762000244565b5b02179055503480156200004a57600080fd5b506040518060400160405280601981526020017f5570726973696e672047656e657369733a204f726967696e73000000000000008152506040518060400160405280600381526020017f55474f00000000000000000000000000000000000000000000000000000000008152508160009081620000c89190620004ed565b508060019081620000da9190620004ed565b505050620000fd620000f16200012e60201b60201c565b6200013660201b60201c565b60405180606001604052806036815260200162004d366036913960099081620001279190620004ed565b50620005d4565b600033905090565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905080600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550426008819055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620002f557607f821691505b6020821081036200030b576200030a620002ad565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620003757fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000336565b62000381868362000336565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620003ce620003c8620003c28462000399565b620003a3565b62000399565b9050919050565b6000819050919050565b620003ea83620003ad565b62000402620003f982620003d5565b84845462000343565b825550505050565b600090565b620004196200040a565b62000426818484620003df565b505050565b5b818110156200044e57620004426000826200040f565b6001810190506200042c565b5050565b601f8211156200049d57620004678162000311565b620004728462000326565b8101602085101562000482578190505b6200049a620004918562000326565b8301826200042b565b50505b505050565b600082821c905092915050565b6000620004c260001984600802620004a2565b1980831691505092915050565b6000620004dd8383620004af565b9150826002028217905092915050565b620004f88262000273565b67ffffffffffffffff8111156200051457620005136200027e565b5b620005208254620002dc565b6200052d82828562000452565b600060209050601f83116001811462000565576000841562000550578287015190505b6200055c8582620004cf565b865550620005cc565b601f198416620005758662000311565b60005b828110156200059f5784890151825560018201915060208501945060208101905062000578565b86831015620005bf5784890151620005bb601f891682620004af565b8355505b6001600288020188555050505b505050505050565b61475280620005e46000396000f3fe608060405234801561001057600080fd5b50600436106102485760003560e01c80638da5cb5b1161013b578063c87b56dd116100b8578063f20423141161007c578063f2042314146106c9578063f2fde38b146106e7578063f487404f14610703578063f9c957d814610721578063fe60d12c1461073d57610248565b8063c87b56dd1461060f578063d371f76b1461063f578063d5abeb011461065d578063e921dad21461067b578063e985e9c51461069957610248565b8063ab81e062116100ff578063ab81e0621461056d578063ad8c3f3314610589578063b2422232146105a5578063b88d4fde146105d5578063c051e38a146105f157610248565b80638da5cb5b146104db57806395d89b41146104f9578063a06cb71914610517578063a22cb46514610533578063a2309ff81461054f57610248565b806335d5959a116101c95780636352211e1161018d5780636352211e146104235780636c0360eb1461045357806370a0823114610471578063715018a6146104a1578063893807aa146104ab57610248565b806335d5959a146103935780633c186018146103af57806342842e0e146103cd5780634f297ccc146103e957806355f804b31461040757610248565b80630bb862d1116102105780630bb862d11461030357806316f9b7071461031f57806323b872dd1461033b5780632dc7b8551461035757806332f4681c1461037557610248565b806301ffc9a71461024d57806306fdde031461027d578063081812fc1461029b578063084520b4146102cb578063095ea7b3146102e7575b600080fd5b61026760048036038101906102629190612b89565b61075b565b6040516102749190612bd1565b60405180910390f35b61028561083d565b6040516102929190612c7c565b60405180910390f35b6102b560048036038101906102b09190612cd4565b6108cf565b6040516102c29190612d42565b60405180910390f35b6102e560048036038101906102e09190612d89565b610915565b005b61030160048036038101906102fc9190612d89565b610a3c565b005b61031d60048036038101906103189190612cd4565b610b53565b005b61033960048036038101906103349190612cd4565b610c0e565b005b61035560048036038101906103509190612dc9565b610c94565b005b61035f610cf4565b60405161036c9190612e35565b60405180910390f35b61037d610cfa565b60405161038a9190612e5f565b60405180910390f35b6103ad60048036038101906103a89190612ea6565b610d00565b005b6103b7610d86565b6040516103c49190612e5f565b60405180910390f35b6103e760048036038101906103e29190612dc9565b610dab565b005b6103f1610dcb565b6040516103fe9190612e5f565b60405180910390f35b610421600480360381019061041c9190613008565b610dd1565b005b61043d60048036038101906104389190612cd4565b610e60565b60405161044a9190612d42565b60405180910390f35b61045b610ee6565b6040516104689190612c7c565b60405180910390f35b61048b60048036038101906104869190613051565b610f74565b6040516104989190612e5f565b60405180910390f35b6104a961102b565b005b6104c560048036038101906104c09190613051565b6110b3565b6040516104d29190612bd1565b60405180910390f35b6104e36110d3565b6040516104f09190612d42565b60405180910390f35b6105016110fd565b60405161050e9190612c7c565b60405180910390f35b610531600480360381019061052c9190613051565b61118f565b005b61054d600480360381019061054891906130aa565b611284565b005b61055761129a565b6040516105649190612e5f565b60405180910390f35b6105876004803603810190610582919061314a565b6112ab565b005b6105a3600480360381019061059e9190612ea6565b6117aa565b005b6105bf60048036038101906105ba9190613051565b611830565b6040516105cc9190612bd1565b60405180910390f35b6105ef60048036038101906105ea919061324b565b611850565b005b6105f96118b2565b6040516106069190613345565b60405180910390f35b61062960048036038101906106249190612cd4565b6118c5565b6040516106369190612c7c565b60405180910390f35b610647611971565b6040516106549190612e5f565b60405180910390f35b610665611982565b6040516106729190612e5f565b60405180910390f35b610683611988565b6040516106909190612e35565b60405180910390f35b6106b360048036038101906106ae9190613360565b61198e565b6040516106c09190612bd1565b60405180910390f35b6106d1611a22565b6040516106de9190612e5f565b60405180910390f35b61070160048036038101906106fc9190613051565b611a33565b005b61070b611b2a565b6040516107189190612d42565b60405180910390f35b61073b60048036038101906107369190612cd4565b611b54565b005b610745611bda565b6040516107529190612e5f565b60405180910390f35b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061082657507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610836575061083582611be0565b5b9050919050565b60606000805461084c906133cf565b80601f0160208091040260200160405190810160405280929190818152602001828054610878906133cf565b80156108c55780601f1061089a576101008083540402835291602001916108c5565b820191906000526020600020905b8154815290600101906020018083116108a857829003601f168201915b5050505050905090565b60006108da82611c4a565b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b61091d611c95565b73ffffffffffffffffffffffffffffffffffffffff1661093b6110d3565b73ffffffffffffffffffffffffffffffffffffffff1614610991576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109889061344c565b60405180910390fd5b600b54600c54826109a2919061349b565b11156109e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109da9061351b565b60405180910390fd5b60005b81811015610a1e5760006109fa6012611c9d565b9050610a066012611cab565b610a108482611cc1565b8180600101925050506109e6565b5080600c6000828254610a31919061349b565b925050819055505050565b6000610a4782610e60565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610ab7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aae906135ad565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610ad6611c95565b73ffffffffffffffffffffffffffffffffffffffff161480610b055750610b0481610aff611c95565b61198e565b5b610b44576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b3b9061363f565b60405180910390fd5b610b4e8383611cdf565b505050565b610b5b611c95565b73ffffffffffffffffffffffffffffffffffffffff16610b796110d3565b73ffffffffffffffffffffffffffffffffffffffff1614610bcf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bc69061344c565b60405180910390fd5b806003811115610be257610be16132ce565b5b601560006101000a81548160ff02191690836003811115610c0657610c056132ce565b5b021790555050565b610c16611c95565b73ffffffffffffffffffffffffffffffffffffffff16610c346110d3565b73ffffffffffffffffffffffffffffffffffffffff1614610c8a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c819061344c565b60405180910390fd5b80600b8190555050565b610ca5610c9f611c95565b82611d98565b610ce4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cdb906136d1565b60405180910390fd5b610cef838383611e76565b505050565b600e5481565b600d5481565b610d08611c95565b73ffffffffffffffffffffffffffffffffffffffff16610d266110d3565b73ffffffffffffffffffffffffffffffffffffffff1614610d7c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d739061344c565b60405180910390fd5b80600e8190555050565b6000610d926014611c9d565b610d9c6013611c9d565b610da6919061349b565b905090565b610dc683838360405180602001604052806000815250611850565b505050565b600c5481565b610dd9611c95565b73ffffffffffffffffffffffffffffffffffffffff16610df76110d3565b73ffffffffffffffffffffffffffffffffffffffff1614610e4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e449061344c565b60405180910390fd5b8060099081610e5c919061389d565b5050565b600080610e6c83612181565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610edd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ed4906139bb565b60405180910390fd5b80915050919050565b60098054610ef3906133cf565b80601f0160208091040260200160405190810160405280929190818152602001828054610f1f906133cf565b8015610f6c5780601f10610f4157610100808354040283529160200191610f6c565b820191906000526020600020905b815481529060010190602001808311610f4f57829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610fe4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fdb90613a4d565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b611033611c95565b73ffffffffffffffffffffffffffffffffffffffff166110516110d3565b73ffffffffffffffffffffffffffffffffffffffff16146110a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161109e9061344c565b60405180910390fd5b6110b160006121be565b565b60116020528060005260406000206000915054906101000a900460ff1681565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606001805461110c906133cf565b80601f0160208091040260200160405190810160405280929190818152602001828054611138906133cf565b80156111855780601f1061115a57610100808354040283529160200191611185565b820191906000526020600020905b81548152906001019060200180831161116857829003601f168201915b5050505050905090565b6003808111156111a2576111a16132ce565b5b601560009054906101000a900460ff1660038111156111c4576111c36132ce565b5b14611204576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111fb90613ab9565b60405180910390fd5b600b54600a546112149190613ad9565b61121e6012611c9d565b1061125e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161125590613b7f565b60405180910390fd5b600061126a6012611c9d565b90506112766012611cab565b6112808282611cc1565b5050565b61129661128f611c95565b83836122cc565b5050565b60006112a66012611c9d565b905090565b600160038111156112bf576112be6132ce565b5b601560009054906101000a900460ff1660038111156112e1576112e06132ce565b5b14806113205750600260038111156112fc576112fb6132ce565b5b601560009054906101000a900460ff16600381111561131e5761131d6132ce565b5b145b61135f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161135690613beb565b60405180910390fd5b600a5461136c6012611c9d565b106113ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113a390613c57565b60405180910390fd5b6000836040516020016113bf9190613cbf565b6040516020818303038152906040528051906020012090506000600160038111156113ed576113ec6132ce565b5b601560009054906101000a900460ff16600381111561140f5761140e6132ce565b5b0361155a57600e54905060001515601060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515146114ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114a390613d4c565b60405180910390fd5b600d546114b7611a22565b106114f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ee90613db8565b60405180910390fd5b6115016013611cab565b6001601060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b6002600381111561156e5761156d6132ce565b5b601560009054906101000a900460ff1660038111156115905761158f6132ce565b5b036116f557600f54905060001515601160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151461162d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162490613e4a565b60405180910390fd5b600d54600b54600a546116409190613ad9565b61164a9190613ad9565b611652611971565b10611692576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161168990613eb6565b60405180910390fd5b61169c6014611cab565b6001601160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b611741848480806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050508284612438565b611780576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161177790613f22565b60405180910390fd5b600061178c6012611c9d565b90506117986012611cab565b6117a28682611cc1565b505050505050565b6117b2611c95565b73ffffffffffffffffffffffffffffffffffffffff166117d06110d3565b73ffffffffffffffffffffffffffffffffffffffff1614611826576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161181d9061344c565b60405180910390fd5b80600f8190555050565b60106020528060005260406000206000915054906101000a900460ff1681565b61186161185b611c95565b83611d98565b6118a0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611897906136d1565b60405180910390fd5b6118ac8484848461244f565b50505050565b601560009054906101000a900460ff1681565b60606118d16012611c9d565b821115611913576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161190a90613f8e565b60405180910390fd5b600060098054611922906133cf565b90501161193e576040518060200160405280600081525061196a565b6009611949836124ab565b60405160200161195a929190614093565b6040516020818303038152906040525b9050919050565b600061197d6014611c9d565b905090565b600a5481565b600f5481565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000611a2e6013611c9d565b905090565b611a3b611c95565b73ffffffffffffffffffffffffffffffffffffffff16611a596110d3565b73ffffffffffffffffffffffffffffffffffffffff1614611aaf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aa69061344c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611b1e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b1590614138565b60405180910390fd5b611b27816121be565b50565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b611b5c611c95565b73ffffffffffffffffffffffffffffffffffffffff16611b7a6110d3565b73ffffffffffffffffffffffffffffffffffffffff1614611bd0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bc79061344c565b60405180910390fd5b80600d8190555050565b600b5481565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b611c538161260b565b611c92576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c89906139bb565b60405180910390fd5b50565b600033905090565b600081600001549050919050565b6001816000016000828254019250508190555050565b611cdb82826040518060200160405280600081525061264c565b5050565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16611d5283610e60565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000611da38261260b565b611de2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dd9906141ca565b60405180910390fd5b6000611ded83610e60565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480611e2f5750611e2e818561198e565b5b80611e6d57508373ffffffffffffffffffffffffffffffffffffffff16611e55846108cf565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff16611e9682610e60565b73ffffffffffffffffffffffffffffffffffffffff1614611eec576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ee39061425c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611f5b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f52906142ee565b60405180910390fd5b611f6883838360016126a7565b8273ffffffffffffffffffffffffffffffffffffffff16611f8882610e60565b73ffffffffffffffffffffffffffffffffffffffff1614611fde576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fd59061425c565b60405180910390fd5b6004600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546120649190613ad9565b925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546120bb919061349b565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461217c83838360016126ad565b505050565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905080600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550426008819055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361233a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123319061435a565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c318360405161242b9190612bd1565b60405180910390a3505050565b60008261244585846126b3565b1490509392505050565b61245a848484611e76565b61246684848484612766565b6124a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161249c906143ec565b60405180910390fd5b50505050565b6060600082036124f2576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050612606565b600082905060005b6000821461252457808061250d9061440c565b915050600a8261251d9190614483565b91506124fa565b60008167ffffffffffffffff8111156125405761253f612edd565b5b6040519080825280601f01601f1916602001820160405280156125725781602001600182028036833780820191505090505b5090505b600085146125ff5760018261258b9190613ad9565b9150600a8561259a91906144b4565b60306125a6919061349b565b60f81b8183815181106125bc576125bb6144e5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a856125f89190614483565b9450612576565b8093505050505b919050565b60008073ffffffffffffffffffffffffffffffffffffffff1661262d83612181565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b61265683836128ed565b6126636000848484612766565b6126a2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612699906143ec565b60405180910390fd5b505050565b50505050565b50505050565b60008082905060005b845181101561275b5760008582815181106126da576126d96144e5565b5b6020026020010151905080831161271b5782816040516020016126fe929190614535565b604051602081830303815290604052805190602001209250612747565b808360405160200161272e929190614535565b6040516020818303038152906040528051906020012092505b5080806127539061440c565b9150506126bc565b508091505092915050565b60006127878473ffffffffffffffffffffffffffffffffffffffff16612b0a565b156128e0578373ffffffffffffffffffffffffffffffffffffffff1663150b7a026127b0611c95565b8786866040518563ffffffff1660e01b81526004016127d294939291906145b6565b6020604051808303816000875af192505050801561280e57506040513d601f19601f8201168201806040525081019061280b9190614617565b60015b612890573d806000811461283e576040519150601f19603f3d011682016040523d82523d6000602084013e612843565b606091505b506000815103612888576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161287f906143ec565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149150506128e5565b600190505b949350505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361295c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161295390614690565b60405180910390fd5b6129658161260b565b156129a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161299c906146fc565b60405180910390fd5b6129b36000838360016126a7565b6129bc8161260b565b156129fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129f3906146fc565b60405180910390fd5b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4612b066000838360016126ad565b5050565b600080823b905060008111915050919050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b612b6681612b31565b8114612b7157600080fd5b50565b600081359050612b8381612b5d565b92915050565b600060208284031215612b9f57612b9e612b27565b5b6000612bad84828501612b74565b91505092915050565b60008115159050919050565b612bcb81612bb6565b82525050565b6000602082019050612be66000830184612bc2565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612c26578082015181840152602081019050612c0b565b60008484015250505050565b6000601f19601f8301169050919050565b6000612c4e82612bec565b612c588185612bf7565b9350612c68818560208601612c08565b612c7181612c32565b840191505092915050565b60006020820190508181036000830152612c968184612c43565b905092915050565b6000819050919050565b612cb181612c9e565b8114612cbc57600080fd5b50565b600081359050612cce81612ca8565b92915050565b600060208284031215612cea57612ce9612b27565b5b6000612cf884828501612cbf565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612d2c82612d01565b9050919050565b612d3c81612d21565b82525050565b6000602082019050612d576000830184612d33565b92915050565b612d6681612d21565b8114612d7157600080fd5b50565b600081359050612d8381612d5d565b92915050565b60008060408385031215612da057612d9f612b27565b5b6000612dae85828601612d74565b9250506020612dbf85828601612cbf565b9150509250929050565b600080600060608486031215612de257612de1612b27565b5b6000612df086828701612d74565b9350506020612e0186828701612d74565b9250506040612e1286828701612cbf565b9150509250925092565b6000819050919050565b612e2f81612e1c565b82525050565b6000602082019050612e4a6000830184612e26565b92915050565b612e5981612c9e565b82525050565b6000602082019050612e746000830184612e50565b92915050565b612e8381612e1c565b8114612e8e57600080fd5b50565b600081359050612ea081612e7a565b92915050565b600060208284031215612ebc57612ebb612b27565b5b6000612eca84828501612e91565b91505092915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b612f1582612c32565b810181811067ffffffffffffffff82111715612f3457612f33612edd565b5b80604052505050565b6000612f47612b1d565b9050612f538282612f0c565b919050565b600067ffffffffffffffff821115612f7357612f72612edd565b5b612f7c82612c32565b9050602081019050919050565b82818337600083830152505050565b6000612fab612fa684612f58565b612f3d565b905082815260208101848484011115612fc757612fc6612ed8565b5b612fd2848285612f89565b509392505050565b600082601f830112612fef57612fee612ed3565b5b8135612fff848260208601612f98565b91505092915050565b60006020828403121561301e5761301d612b27565b5b600082013567ffffffffffffffff81111561303c5761303b612b2c565b5b61304884828501612fda565b91505092915050565b60006020828403121561306757613066612b27565b5b600061307584828501612d74565b91505092915050565b61308781612bb6565b811461309257600080fd5b50565b6000813590506130a48161307e565b92915050565b600080604083850312156130c1576130c0612b27565b5b60006130cf85828601612d74565b92505060206130e085828601613095565b9150509250929050565b600080fd5b600080fd5b60008083601f84011261310a57613109612ed3565b5b8235905067ffffffffffffffff811115613127576131266130ea565b5b602083019150836020820283011115613143576131426130ef565b5b9250929050565b60008060006040848603121561316357613162612b27565b5b600061317186828701612d74565b935050602084013567ffffffffffffffff81111561319257613191612b2c565b5b61319e868287016130f4565b92509250509250925092565b600067ffffffffffffffff8211156131c5576131c4612edd565b5b6131ce82612c32565b9050602081019050919050565b60006131ee6131e9846131aa565b612f3d565b90508281526020810184848401111561320a57613209612ed8565b5b613215848285612f89565b509392505050565b600082601f83011261323257613231612ed3565b5b81356132428482602086016131db565b91505092915050565b6000806000806080858703121561326557613264612b27565b5b600061327387828801612d74565b945050602061328487828801612d74565b935050604061329587828801612cbf565b925050606085013567ffffffffffffffff8111156132b6576132b5612b2c565b5b6132c28782880161321d565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6004811061330e5761330d6132ce565b5b50565b600081905061331f826132fd565b919050565b600061332f82613311565b9050919050565b61333f81613324565b82525050565b600060208201905061335a6000830184613336565b92915050565b6000806040838503121561337757613376612b27565b5b600061338585828601612d74565b925050602061339685828601612d74565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806133e757607f821691505b6020821081036133fa576133f96133a0565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000613436602083612bf7565b915061344182613400565b602082019050919050565b6000602082019050818103600083015261346581613429565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006134a682612c9e565b91506134b183612c9e565b92508282019050808211156134c9576134c861346c565b5b92915050565b7f416d6f756e74206578636565647320726573657276656420737570706c790000600082015250565b6000613505601e83612bf7565b9150613510826134cf565b602082019050919050565b60006020820190508181036000830152613534816134f8565b9050919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000613597602183612bf7565b91506135a28261353b565b604082019050919050565b600060208201905081810360008301526135c68161358a565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b6000613629603d83612bf7565b9150613634826135cd565b604082019050919050565b600060208201905081810360008301526136588161361c565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b60006136bb602d83612bf7565b91506136c68261365f565b604082019050919050565b600060208201905081810360008301526136ea816136ae565b9050919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026137537fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82613716565b61375d8683613716565b95508019841693508086168417925050509392505050565b6000819050919050565b600061379a61379561379084612c9e565b613775565b612c9e565b9050919050565b6000819050919050565b6137b48361377f565b6137c86137c0826137a1565b848454613723565b825550505050565b600090565b6137dd6137d0565b6137e88184846137ab565b505050565b5b8181101561380c576138016000826137d5565b6001810190506137ee565b5050565b601f82111561385157613822816136f1565b61382b84613706565b8101602085101561383a578190505b61384e61384685613706565b8301826137ed565b50505b505050565b600082821c905092915050565b600061387460001984600802613856565b1980831691505092915050565b600061388d8383613863565b9150826002028217905092915050565b6138a682612bec565b67ffffffffffffffff8111156138bf576138be612edd565b5b6138c982546133cf565b6138d4828285613810565b600060209050601f83116001811461390757600084156138f5578287015190505b6138ff8582613881565b865550613967565b601f198416613915866136f1565b60005b8281101561393d57848901518255600182019150602085019450602081019050613918565b8683101561395a5784890151613956601f891682613863565b8355505b6001600288020188555050505b505050505050565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b60006139a5601883612bf7565b91506139b08261396f565b602082019050919050565b600060208201905081810360008301526139d481613998565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b6000613a37602983612bf7565b9150613a42826139db565b604082019050919050565b60006020820190508181036000830152613a6681613a2a565b9050919050565b7f5075626c6963206d696e7420696e616374697665000000000000000000000000600082015250565b6000613aa3601483612bf7565b9150613aae82613a6d565b602082019050919050565b60006020820190508181036000830152613ad281613a96565b9050919050565b6000613ae482612c9e565b9150613aef83612c9e565b9250828203905081811115613b0757613b0661346c565b5b92915050565b7f4d617820617661696c61626c65207075626c696320737570706c79206d696e7460008201527f6564000000000000000000000000000000000000000000000000000000000000602082015250565b6000613b69602283612bf7565b9150613b7482613b0d565b604082019050919050565b60006020820190508181036000830152613b9881613b5c565b9050919050565b7f4e6f7420696e20616c6c6f776c697374206d696e74696e672073746174657300600082015250565b6000613bd5601f83612bf7565b9150613be082613b9f565b602082019050919050565b60006020820190508181036000830152613c0481613bc8565b9050919050565b7f4d617820737570706c79206d696e746564000000000000000000000000000000600082015250565b6000613c41601183612bf7565b9150613c4c82613c0b565b602082019050919050565b60006020820190508181036000830152613c7081613c34565b9050919050565b60008160601b9050919050565b6000613c8f82613c77565b9050919050565b6000613ca182613c84565b9050919050565b613cb9613cb482612d21565b613c96565b82525050565b6000613ccb8284613ca8565b60148201915081905092915050565b7f5573657220616c7265616479206d696e746564206f6e2067756172616e74656560008201527f64206c6973740000000000000000000000000000000000000000000000000000602082015250565b6000613d36602683612bf7565b9150613d4182613cda565b604082019050919050565b60006020820190508181036000830152613d6581613d29565b9050919050565b7f4d61782067756172616e7465656420737570706c79206d696e74656400000000600082015250565b6000613da2601c83612bf7565b9150613dad82613d6c565b602082019050919050565b60006020820190508181036000830152613dd181613d95565b9050919050565b7f5573657220616c7265616479206d696e746564206f6e206f766572737562736360008201527f7269626564206c69737400000000000000000000000000000000000000000000602082015250565b6000613e34602a83612bf7565b9150613e3f82613dd8565b604082019050919050565b60006020820190508181036000830152613e6381613e27565b9050919050565b7f4d617820616c6c6f77206c69737420737570706c79206d696e74656400000000600082015250565b6000613ea0601c83612bf7565b9150613eab82613e6a565b602082019050919050565b60006020820190508181036000830152613ecf81613e93565b9050919050565b7f496e76616c69642070726f6f6600000000000000000000000000000000000000600082015250565b6000613f0c600d83612bf7565b9150613f1782613ed6565b602082019050919050565b60006020820190508181036000830152613f3b81613eff565b9050919050565b7f55524920717565727920666f72206e6f6e6578697374656e7420746f6b656e00600082015250565b6000613f78601f83612bf7565b9150613f8382613f42565b602082019050919050565b60006020820190508181036000830152613fa781613f6b565b9050919050565b600081905092915050565b60008154613fc6816133cf565b613fd08186613fae565b94506001821660008114613feb576001811461400057614033565b60ff1983168652811515820286019350614033565b614009856136f1565b60005b8381101561402b5781548189015260018201915060208101905061400c565b838801955050505b50505092915050565b600061404782612bec565b6140518185613fae565b9350614061818560208601612c08565b80840191505092915050565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815250565b600061409f8285613fb9565b91506140ab828461403c565b91506140b68261406d565b6005820191508190509392505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000614122602683612bf7565b915061412d826140c6565b604082019050919050565b6000602082019050818103600083015261415181614115565b9050919050565b7f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b60006141b4602c83612bf7565b91506141bf82614158565b604082019050919050565b600060208201905081810360008301526141e3816141a7565b9050919050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b6000614246602583612bf7565b9150614251826141ea565b604082019050919050565b6000602082019050818103600083015261427581614239565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006142d8602483612bf7565b91506142e38261427c565b604082019050919050565b60006020820190508181036000830152614307816142cb565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b6000614344601983612bf7565b915061434f8261430e565b602082019050919050565b6000602082019050818103600083015261437381614337565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b60006143d6603283612bf7565b91506143e18261437a565b604082019050919050565b60006020820190508181036000830152614405816143c9565b9050919050565b600061441782612c9e565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036144495761444861346c565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061448e82612c9e565b915061449983612c9e565b9250826144a9576144a8614454565b5b828204905092915050565b60006144bf82612c9e565b91506144ca83612c9e565b9250826144da576144d9614454565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000819050919050565b61452f61452a82612e1c565b614514565b82525050565b6000614541828561451e565b602082019150614551828461451e565b6020820191508190509392505050565b600081519050919050565b600082825260208201905092915050565b600061458882614561565b614592818561456c565b93506145a2818560208601612c08565b6145ab81612c32565b840191505092915050565b60006080820190506145cb6000830187612d33565b6145d86020830186612d33565b6145e56040830185612e50565b81810360608301526145f7818461457d565b905095945050505050565b60008151905061461181612b5d565b92915050565b60006020828403121561462d5761462c612b27565b5b600061463b84828501614602565b91505092915050565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b600061467a602083612bf7565b915061468582614644565b602082019050919050565b600060208201905081810360008301526146a98161466d565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b60006146e6601c83612bf7565b91506146f1826146b0565b602082019050919050565b60006020820190508181036000830152614715816146d9565b905091905056fea264697066735822122094ba8e15e1a979ee7ca96b9f21f677a3002c19a9820127fea1b77a066a0fd6b564736f6c63430008120033697066733a2f2f516d65464a3654506e764a6336583664794b31786a5272315444624e57387674754a75765472566a6b56384859582f