[ { "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": "to", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "Mint", "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": "buyer", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "approvedForTime", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getApproved", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "getNFTPrice", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "operator", "type": "address" } ], "name": "isApprovedForAll", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" } ], "name": "mintAsDAO", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "nonpayable", "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" } ], "name": "requestMint", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "safeTransferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "bytes", "name": "_data", "type": "bytes" } ], "name": "safeTransferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "operator", "type": "address" }, { "internalType": "bool", "name": "approved", "type": "bool" } ], "name": "setApprovalForAll", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "newBaseURI", "type": "string" } ], "name": "setBaseURI", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "daoWalletAddress", "type": "address" } ], "name": "setDAOWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "devWalletAddress", "type": "address" } ], "name": "setDevWallet", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "canMintNFT", "type": "bool" } ], "name": "setPublicCanMintNFT", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "newStartPrice", "type": "uint256" } ], "name": "setStartPrice", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "timeContract", "type": "address" } ], "name": "setTimeContract", "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": "tokenOwner", "type": "address" } ], "name": "totalNumberOfTokens", "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" } ]
608060405260405180602001604052806000815250600d90805190602001906200002b929190620002b7565b506301c9c380600e556000600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000601160146101000a81548160ff0219169083151502179055503480156200012257600080fd5b506040518060400160405280600881526020017f54726970734e46540000000000000000000000000000000000000000000000008152506040518060400160405280600481526020017f54524950000000000000000000000000000000000000000000000000000000008152508160009080519060200190620001a7929190620002b7565b508060019080519060200190620001c0929190620002b7565b505050620001e3620001d7620001e960201b60201c565b620001f160201b60201c565b620003cc565b600033905090565b6000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b828054620002c59062000367565b90600052602060002090601f016020900481019282620002e9576000855562000335565b82601f106200030457805160ff191683800117855562000335565b8280016001018555821562000335579182015b828111156200033457825182559160200191906001019062000317565b5b50905062000344919062000348565b5090565b5b808211156200036357600081600090555060010162000349565b5090565b600060028204905060018216806200038057607f821691505b602082108114156200039757620003966200039d565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6151a080620003dc6000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c80636352211e11610104578063a22cb465116100a2578063d06c8b6011610071578063d06c8b6014610589578063e02142d6146105a5578063e985e9c5146105d5578063f2fde38b14610605576101da565b8063a22cb46514610505578063b88d4fde14610521578063c38d404b1461053d578063c87b56dd14610559576101da565b80638da5cb5b116100de5780638da5cb5b14610469578063929761791461048757806395241511146104b757806395d89b41146104e7576101da565b80636352211e146103ff57806370a082311461042f578063715018a61461045f576101da565b80631f53ac021161017c57806342842e0e1161014b57806342842e0e146103675780634f6ccce7146103835780635542c33e146103b357806355f804b3146103e3576101da565b80631f53ac02146102e357806323b872dd146102ff5780632f745c591461031b5780633d4662881461034b576101da565b8063095ea7b3116101b8578063095ea7b31461025d57806317d861541461027957806318160ddd1461029557806318776c7a146102b3576101da565b806301ffc9a7146101df57806306fdde031461020f578063081812fc1461022d575b600080fd5b6101f960048036038101906101f49190613977565b610621565b60405161020691906140fe565b60405180910390f35b610217610633565b6040516102249190614119565b60405180910390f35b61024760048036038101906102429190613a0a565b6106c5565b6040516102549190614037565b60405180910390f35b610277600480360381019061027291906138e9565b61074a565b005b610293600480360381019061028e9190613a0a565b610862565b005b61029d6108e8565b6040516102aa91906144bb565b60405180910390f35b6102cd60048036038101906102c891906138e9565b6108f5565b6040516102da91906140fe565b60405180910390f35b6102fd60048036038101906102f8919061377e565b610a2d565b005b610319600480360381019061031491906137e3565b610aed565b005b610335600480360381019061033091906138e9565b610b4d565b60405161034291906144bb565b60405180910390f35b6103656004803603810190610360919061377e565b610bf2565b005b610381600480360381019061037c91906137e3565b610cb2565b005b61039d60048036038101906103989190613a0a565b610cd2565b6040516103aa91906144bb565b60405180910390f35b6103cd60048036038101906103c8919061377e565b610d69565b6040516103da91906144bb565b60405180910390f35b6103fd60048036038101906103f891906139c9565b610df7565b005b61041960048036038101906104149190613a0a565b610e8d565b6040516104269190614037565b60405180910390f35b6104496004803603810190610444919061377e565b610f3f565b60405161045691906144bb565b60405180910390f35b610467610ff7565b005b61047161107f565b60405161047e9190614037565b60405180910390f35b6104a1600480360381019061049c9190613a0a565b6110a9565b6040516104ae91906144bb565b60405180910390f35b6104d160048036038101906104cc919061377e565b6112a9565b6040516104de91906144bb565b60405180910390f35b6104ef6116ac565b6040516104fc9190614119565b60405180910390f35b61051f600480360381019061051a91906138ad565b61173e565b005b61053b60048036038101906105369190613832565b611754565b005b61055760048036038101906105529190613925565b6117b6565b005b610573600480360381019061056e9190613a0a565b61184f565b6040516105809190614119565b60405180910390f35b6105a3600480360381019061059e919061377e565b611861565b005b6105bf60048036038101906105ba919061377e565b611921565b6040516105cc91906144bb565b60405180910390f35b6105ef60048036038101906105ea91906137a7565b611a25565b6040516105fc91906140fe565b60405180910390f35b61061f600480360381019061061a919061377e565b611ab9565b005b600061062c82611bb1565b9050919050565b606060008054610642906147c4565b80601f016020809104026020016040519081016040528092919081815260200182805461066e906147c4565b80156106bb5780601f10610690576101008083540402835291602001916106bb565b820191906000526020600020905b81548152906001019060200180831161069e57829003601f168201915b5050505050905090565b60006106d082611c2b565b61070f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107069061439b565b60405180910390fd5b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600061075582610e8d565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156107c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107bd9061441b565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166107e5611c97565b73ffffffffffffffffffffffffffffffffffffffff16148061081457506108138161080e611c97565b611a25565b5b610853576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161084a9061427b565b60405180910390fd5b61085d8383611c9f565b505050565b61086a611c97565b73ffffffffffffffffffffffffffffffffffffffff1661088861107f565b73ffffffffffffffffffffffffffffffffffffffff16146108de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108d5906143bb565b60405180910390fd5b80600e8190555050565b6000600980549050905090565b600082600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610968576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161095f9061423b565b60405180910390fd5b6000600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905060008173ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e87306040518363ffffffff1660e01b81526004016109cc929190614052565b60206040518083038186803b1580156109e457600080fd5b505afa1580156109f8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a1c9190613a33565b905084811015935050505092915050565b610a35611c97565b73ffffffffffffffffffffffffffffffffffffffff16610a5361107f565b73ffffffffffffffffffffffffffffffffffffffff1614610aa9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aa0906143bb565b60405180910390fd5b80601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610afe610af8611c97565b82611d58565b610b3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b349061445b565b60405180910390fd5b610b48838383611e36565b505050565b6000610b5883610f3f565b8210610b99576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b909061413b565b60405180910390fd5b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b610bfa611c97565b73ffffffffffffffffffffffffffffffffffffffff16610c1861107f565b73ffffffffffffffffffffffffffffffffffffffff1614610c6e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c65906143bb565b60405180910390fd5b80600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610ccd83838360405180602001604052806000815250611754565b505050565b6000610cdc6108e8565b8210610d1d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d149061447b565b60405180910390fd5b60098281548110610d57577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001549050919050565b6000610d73611c97565b73ffffffffffffffffffffffffffffffffffffffff16610d9161107f565b73ffffffffffffffffffffffffffffffffffffffff1614610de7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dde906143bb565b60405180910390fd5b610df082612092565b9050919050565b610dff611c97565b73ffffffffffffffffffffffffffffffffffffffff16610e1d61107f565b73ffffffffffffffffffffffffffffffffffffffff1614610e73576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e6a906143bb565b60405180910390fd5b80600d9080519060200190610e89929190613578565b5050565b6000806002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610f36576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f2d906142db565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610fb0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fa7906142bb565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610fff611c97565b73ffffffffffffffffffffffffffffffffffffffff1661101d61107f565b73ffffffffffffffffffffffffffffffffffffffff1614611073576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161106a906143bb565b60405180910390fd5b61107d6000612134565b565b6000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060009050600062989680905060006003610d056110c99190614642565b9050600185101580156110dc5750808511155b156110eb57600e54925061129e565b6001816110f891906145b5565b8510158015611113575060028161110f9190614673565b8511155b1561112d5781600e5461112691906145b5565b925061129d565b6000600160028361113e9190614673565b61114891906145b5565b905060006003836111599190614642565b9050600082905060006001838361117091906145b5565b61117a91906146cd565b9050600060018261118b91906145b5565b905060006001858361119d91906145b5565b6111a791906146cd565b905060006001826111b891906145b5565b9050600086826111c891906145b5565b9050600081610d056111da91906146cd565b905080826111e891906145b5565b9150868e101580156111fa5750858e11155b156112205760028b61120c9190614673565b600e5461121991906145b5565b9b50611293565b848e101580156112305750838e11155b156112565760038b6112429190614673565b600e5461124f91906145b5565b9b50611292565b828e101580156112665750818e11155b1561128c5760048b6112789190614673565b600e5461128591906145b5565b9b50611291565b60009b505b5b5b5050505050505050505b5b829350505050919050565b600081600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561131c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113139061423b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156113ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113a5906141bb565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611440576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114379061443b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156114d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114c99061429b565b60405180910390fd5b6040516020016114e190614022565b60405160208183030381529060405280519060200120600d604051602001611509919061400b565b604051602081830303815290604052805190602001201415611560576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611557906141db565b60405180910390fd5b601160149054906101000a900460ff166115af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115a69061431b565b60405180910390fd5b610d056115bc600c6121fa565b106115fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115f39061437b565b60405180910390fd5b6000600161160a600c6121fa565b61161491906145b5565b90506000611621826110a9565b905061162d85826108f5565b61166c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116639061449b565b60405180910390fd5b6116998582600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16612208565b6116a285612092565b9350505050919050565b6060600180546116bb906147c4565b80601f01602080910402602001604051908101604052809291908181526020018280546116e7906147c4565b80156117345780601f1061170957610100808354040283529160200191611734565b820191906000526020600020905b81548152906001019060200180831161171757829003601f168201915b5050505050905090565b611750611749611c97565b83836123b3565b5050565b61176561175f611c97565b83611d58565b6117a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161179b9061445b565b60405180910390fd5b6117b084848484612520565b50505050565b6117be611c97565b73ffffffffffffffffffffffffffffffffffffffff166117dc61107f565b73ffffffffffffffffffffffffffffffffffffffff1614611832576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611829906143bb565b60405180910390fd5b80601160146101000a81548160ff02191690831515021790555050565b606061185a8261257c565b9050919050565b611869611c97565b73ffffffffffffffffffffffffffffffffffffffff1661188761107f565b73ffffffffffffffffffffffffffffffffffffffff16146118dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118d4906143bb565b60405180910390fd5b80601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600081600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611994576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161198b9061423b565b60405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff166370a08231846040518263ffffffff1660e01b81526004016119cd9190614037565b60206040518083038186803b1580156119e557600080fd5b505afa1580156119f9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a1d9190613a33565b915050919050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b611ac1611c97565b73ffffffffffffffffffffffffffffffffffffffff16611adf61107f565b73ffffffffffffffffffffffffffffffffffffffff1614611b35576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b2c906143bb565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611ba5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9c9061417b565b60405180910390fd5b611bae81612134565b50565b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480611c245750611c23826126ce565b5b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16611d1283610e8d565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000611d6382611c2b565b611da2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d999061425b565b60405180910390fd5b6000611dad83610e8d565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480611e1c57508373ffffffffffffffffffffffffffffffffffffffff16611e04846106c5565b73ffffffffffffffffffffffffffffffffffffffff16145b80611e2d5750611e2c8185611a25565b5b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff16611e5682610e8d565b73ffffffffffffffffffffffffffffffffffffffff1614611eac576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ea3906143db565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611f1c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f13906141fb565b60405180910390fd5b611f278383836127b0565b611f32600082611c9f565b6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611f8291906146cd565b925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611fd991906145b5565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4505050565b600061209e600c6127c0565b60006120aa600c6121fa565b90506120b683826127d6565b6120e7816120c3836129a4565b6040516020016120d39190613fe9565b604051602081830303815290604052612b79565b808373ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d412139688560405160405180910390a380915050919050565b6000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081600001549050919050565b600060646050846122199190614673565b6122239190614642565b9050600060646014856122369190614673565b6122409190614642565b905060008390508073ffffffffffffffffffffffffffffffffffffffff166323b872dd87601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16866040518463ffffffff1660e01b81526004016122a69392919061407b565b602060405180830381600087803b1580156122c057600080fd5b505af11580156122d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122f8919061394e565b508073ffffffffffffffffffffffffffffffffffffffff166323b872dd87601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16856040518463ffffffff1660e01b81526004016123589392919061407b565b602060405180830381600087803b15801561237257600080fd5b505af1158015612386573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123aa919061394e565b50505050505050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612422576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124199061421b565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c318360405161251391906140fe565b60405180910390a3505050565b61252b848484611e36565b61253784848484612bed565b612576576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161256d9061415b565b60405180910390fd5b50505050565b606061258782611c2b565b6125c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125bd9061435b565b60405180910390fd5b60006006600084815260200190815260200160002080546125e6906147c4565b80601f0160208091040260200160405190810160405280929190818152602001828054612612906147c4565b801561265f5780601f106126345761010080835404028352916020019161265f565b820191906000526020600020905b81548152906001019060200180831161264257829003601f168201915b505050505090506000612670612d84565b90506000815114156126865781925050506126c9565b6000825111156126bb5780826040516020016126a3929190613fc5565b604051602081830303815290604052925050506126c9565b6126c484612e16565b925050505b919050565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061279957507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806127a957506127a882612ebd565b5b9050919050565b6127bb838383612f27565b505050565b6001816000016000828254019250508190555050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612846576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161283d9061433b565b60405180910390fd5b61284f81611c2b565b1561288f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128869061419b565b60405180910390fd5b61289b600083836127b0565b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546128eb91906145b5565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45050565b606060008214156129ec576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050612b74565b600082905060005b60008214612a1e578080612a0790614827565b915050600a82612a179190614642565b91506129f4565b60008167ffffffffffffffff811115612a60577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040519080825280601f01601f191660200182016040528015612a925781602001600182028036833780820191505090505b50905060008290505b60008614612b6c57600181612ab091906146cd565b90506000600a8088612ac29190614642565b612acc9190614673565b87612ad791906146cd565b6030612ae3919061460b565b905060008160f81b905080848481518110612b27577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a88612b639190614642565b97505050612a9b565b819450505050505b919050565b612b8282611c2b565b612bc1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612bb8906142fb565b60405180910390fd5b80600660008481526020019081526020016000209080519060200190612be8929190613578565b505050565b6000612c0e8473ffffffffffffffffffffffffffffffffffffffff1661303b565b15612d77578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02612c37611c97565b8786866040518563ffffffff1660e01b8152600401612c5994939291906140b2565b602060405180830381600087803b158015612c7357600080fd5b505af1925050508015612ca457506040513d601f19601f82011682018060405250810190612ca191906139a0565b60015b612d27573d8060008114612cd4576040519150601f19603f3d011682016040523d82523d6000602084013e612cd9565b606091505b50600081511415612d1f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d169061415b565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050612d7c565b600190505b949350505050565b6060600d8054612d93906147c4565b80601f0160208091040260200160405190810160405280929190818152602001828054612dbf906147c4565b8015612e0c5780601f10612de157610100808354040283529160200191612e0c565b820191906000526020600020905b815481529060010190602001808311612def57829003601f168201915b5050505050905090565b6060612e2182611c2b565b612e60576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e57906143fb565b60405180910390fd5b6000612e6a612d84565b90506000815111612e8a5760405180602001604052806000815250612eb5565b80612e948461304e565b604051602001612ea5929190613fc5565b6040516020818303038152906040525b915050919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b612f328383836131fb565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612f7557612f7081613200565b612fb4565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614612fb357612fb28382613249565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612ff757612ff2816133b6565b613036565b8273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16146130355761303482826134f9565b5b5b505050565b600080823b905060008111915050919050565b60606000821415613096576040518060400160405280600181526020017f300000000000000000000000000000000000000000000000000000000000000081525090506131f6565b600082905060005b600082146130c85780806130b190614827565b915050600a826130c19190614642565b915061309e565b60008167ffffffffffffffff81111561310a577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040519080825280601f01601f19166020018201604052801561313c5781602001600182028036833780820191505090505b5090505b600085146131ef5760018261315591906146cd565b9150600a856131649190614870565b603061317091906145b5565b60f81b8183815181106131ac577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a856131e89190614642565b9450613140565b8093505050505b919050565b505050565b600980549050600a600083815260200190815260200160002081905550600981908060018154018082558091505060019003906000526020600020016000909190919091505550565b6000600161325684610f3f565b61326091906146cd565b9050600060086000848152602001908152602001600020549050818114613345576000600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550816008600083815260200190815260200160002081905550505b6008600084815260200190815260200160002060009055600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b600060016009805490506133ca91906146cd565b90506000600a6000848152602001908152602001600020549050600060098381548110613420577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020015490508060098381548110613468577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020018190555081600a600083815260200190815260200160002081905550600a60008581526020019081526020016000206000905560098054806134dd577f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b6001900381819060005260206000200160009055905550505050565b600061350483610f3f565b905081600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002081905550806008600084815260200190815260200160002081905550505050565b828054613584906147c4565b90600052602060002090601f0160209004810192826135a657600085556135ed565b82601f106135bf57805160ff19168380011785556135ed565b828001600101855582156135ed579182015b828111156135ec5782518255916020019190600101906135d1565b5b5090506135fa91906135fe565b5090565b5b808211156136175760008160009055506001016135ff565b5090565b600061362e613629846144fb565b6144d6565b90508281526020810184848401111561364657600080fd5b613651848285614782565b509392505050565b600061366c6136678461452c565b6144d6565b90508281526020810184848401111561368457600080fd5b61368f848285614782565b509392505050565b6000813590506136a68161510e565b92915050565b6000813590506136bb81615125565b92915050565b6000815190506136d081615125565b92915050565b6000813590506136e58161513c565b92915050565b6000815190506136fa8161513c565b92915050565b600082601f83011261371157600080fd5b813561372184826020860161361b565b91505092915050565b600082601f83011261373b57600080fd5b813561374b848260208601613659565b91505092915050565b60008135905061376381615153565b92915050565b60008151905061377881615153565b92915050565b60006020828403121561379057600080fd5b600061379e84828501613697565b91505092915050565b600080604083850312156137ba57600080fd5b60006137c885828601613697565b92505060206137d985828601613697565b9150509250929050565b6000806000606084860312156137f857600080fd5b600061380686828701613697565b935050602061381786828701613697565b925050604061382886828701613754565b9150509250925092565b6000806000806080858703121561384857600080fd5b600061385687828801613697565b945050602061386787828801613697565b935050604061387887828801613754565b925050606085013567ffffffffffffffff81111561389557600080fd5b6138a187828801613700565b91505092959194509250565b600080604083850312156138c057600080fd5b60006138ce85828601613697565b92505060206138df858286016136ac565b9150509250929050565b600080604083850312156138fc57600080fd5b600061390a85828601613697565b925050602061391b85828601613754565b9150509250929050565b60006020828403121561393757600080fd5b6000613945848285016136ac565b91505092915050565b60006020828403121561396057600080fd5b600061396e848285016136c1565b91505092915050565b60006020828403121561398957600080fd5b6000613997848285016136d6565b91505092915050565b6000602082840312156139b257600080fd5b60006139c0848285016136eb565b91505092915050565b6000602082840312156139db57600080fd5b600082013567ffffffffffffffff8111156139f557600080fd5b613a018482850161372a565b91505092915050565b600060208284031215613a1c57600080fd5b6000613a2a84828501613754565b91505092915050565b600060208284031215613a4557600080fd5b6000613a5384828501613769565b91505092915050565b613a6581614701565b82525050565b613a7481614713565b82525050565b6000613a8582614572565b613a8f8185614588565b9350613a9f818560208601614791565b613aa88161495d565b840191505092915050565b6000613abe8261457d565b613ac88185614599565b9350613ad8818560208601614791565b613ae18161495d565b840191505092915050565b6000613af78261457d565b613b0181856145aa565b9350613b11818560208601614791565b80840191505092915050565b60008154613b2a816147c4565b613b3481866145aa565b94506001821660008114613b4f5760018114613b6057613b93565b60ff19831686528186019350613b93565b613b698561455d565b60005b83811015613b8b57815481890152600182019150602081019050613b6c565b838801955050505b50505092915050565b6000613ba9602b83614599565b9150613bb48261496e565b604082019050919050565b6000613bcc603283614599565b9150613bd7826149bd565b604082019050919050565b6000613bef602683614599565b9150613bfa82614a0c565b604082019050919050565b6000613c12601c83614599565b9150613c1d82614a5b565b602082019050919050565b6000613c35602783614599565b9150613c4082614a84565b604082019050919050565b6000613c58601383614599565b9150613c6382614ad3565b602082019050919050565b6000613c7b602483614599565b9150613c8682614afc565b604082019050919050565b6000613c9e601983614599565b9150613ca982614b4b565b602082019050919050565b6000613cc1602283614599565b9150613ccc82614b74565b604082019050919050565b6000613ce4602c83614599565b9150613cef82614bc3565b604082019050919050565b6000613d07603883614599565b9150613d1282614c12565b604082019050919050565b6000613d2a602083614599565b9150613d3582614c61565b602082019050919050565b6000613d4d602a83614599565b9150613d5882614c8a565b604082019050919050565b6000613d70602983614599565b9150613d7b82614cd9565b604082019050919050565b6000613d93602e83614599565b9150613d9e82614d28565b604082019050919050565b6000613db6602d83614599565b9150613dc182614d77565b604082019050919050565b6000613dd9602083614599565b9150613de482614dc6565b602082019050919050565b6000613dfc603183614599565b9150613e0782614def565b604082019050919050565b6000613e1f601283614599565b9150613e2a82614e3e565b602082019050919050565b6000613e42602c83614599565b9150613e4d82614e67565b604082019050919050565b6000613e656005836145aa565b9150613e7082614eb6565b600582019050919050565b6000613e88602083614599565b9150613e9382614edf565b602082019050919050565b6000613eab602983614599565b9150613eb682614f08565b604082019050919050565b6000613ece602f83614599565b9150613ed982614f57565b604082019050919050565b6000613ef1602183614599565b9150613efc82614fa6565b604082019050919050565b6000613f14602083614599565b9150613f1f82614ff5565b602082019050919050565b6000613f376000836145aa565b9150613f428261501e565b600082019050919050565b6000613f5a603183614599565b9150613f6582615021565b604082019050919050565b6000613f7d602c83614599565b9150613f8882615070565b604082019050919050565b6000613fa0602683614599565b9150613fab826150bf565b604082019050919050565b613fbf8161476b565b82525050565b6000613fd18285613aec565b9150613fdd8284613aec565b91508190509392505050565b6000613ff58284613aec565b915061400082613e58565b915081905092915050565b60006140178284613b1d565b915081905092915050565b600061402d82613f2a565b9150819050919050565b600060208201905061404c6000830184613a5c565b92915050565b60006040820190506140676000830185613a5c565b6140746020830184613a5c565b9392505050565b60006060820190506140906000830186613a5c565b61409d6020830185613a5c565b6140aa6040830184613fb6565b949350505050565b60006080820190506140c76000830187613a5c565b6140d46020830186613a5c565b6140e16040830185613fb6565b81810360608301526140f38184613a7a565b905095945050505050565b60006020820190506141136000830184613a6b565b92915050565b600060208201905081810360008301526141338184613ab3565b905092915050565b6000602082019050818103600083015261415481613b9c565b9050919050565b6000602082019050818103600083015261417481613bbf565b9050919050565b6000602082019050818103600083015261419481613be2565b9050919050565b600060208201905081810360008301526141b481613c05565b9050919050565b600060208201905081810360008301526141d481613c28565b9050919050565b600060208201905081810360008301526141f481613c4b565b9050919050565b6000602082019050818103600083015261421481613c6e565b9050919050565b6000602082019050818103600083015261423481613c91565b9050919050565b6000602082019050818103600083015261425481613cb4565b9050919050565b6000602082019050818103600083015261427481613cd7565b9050919050565b6000602082019050818103600083015261429481613cfa565b9050919050565b600060208201905081810360008301526142b481613d1d565b9050919050565b600060208201905081810360008301526142d481613d40565b9050919050565b600060208201905081810360008301526142f481613d63565b9050919050565b6000602082019050818103600083015261431481613d86565b9050919050565b6000602082019050818103600083015261433481613da9565b9050919050565b6000602082019050818103600083015261435481613dcc565b9050919050565b6000602082019050818103600083015261437481613def565b9050919050565b6000602082019050818103600083015261439481613e12565b9050919050565b600060208201905081810360008301526143b481613e35565b9050919050565b600060208201905081810360008301526143d481613e7b565b9050919050565b600060208201905081810360008301526143f481613e9e565b9050919050565b6000602082019050818103600083015261441481613ec1565b9050919050565b6000602082019050818103600083015261443481613ee4565b9050919050565b6000602082019050818103600083015261445481613f07565b9050919050565b6000602082019050818103600083015261447481613f4d565b9050919050565b6000602082019050818103600083015261449481613f70565b9050919050565b600060208201905081810360008301526144b481613f93565b9050919050565b60006020820190506144d06000830184613fb6565b92915050565b60006144e06144f1565b90506144ec82826147f6565b919050565b6000604051905090565b600067ffffffffffffffff8211156145165761451561492e565b5b61451f8261495d565b9050602081019050919050565b600067ffffffffffffffff8211156145475761454661492e565b5b6145508261495d565b9050602081019050919050565b60008190508160005260206000209050919050565b600081519050919050565b600081519050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b60006145c08261476b565b91506145cb8361476b565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115614600576145ff6148a1565b5b828201905092915050565b600061461682614775565b915061462183614775565b92508260ff03821115614637576146366148a1565b5b828201905092915050565b600061464d8261476b565b91506146588361476b565b925082614668576146676148d0565b5b828204905092915050565b600061467e8261476b565b91506146898361476b565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156146c2576146c16148a1565b5b828202905092915050565b60006146d88261476b565b91506146e38361476b565b9250828210156146f6576146f56148a1565b5b828203905092915050565b600061470c8261474b565b9050919050565b60008115159050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b82818337600083830152505050565b60005b838110156147af578082015181840152602081019050614794565b838111156147be576000848401525b50505050565b600060028204905060018216806147dc57607f821691505b602082108114156147f0576147ef6148ff565b5b50919050565b6147ff8261495d565b810181811067ffffffffffffffff8211171561481e5761481d61492e565b5b80604052505050565b60006148328261476b565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415614865576148646148a1565b5b600182019050919050565b600061487b8261476b565b91506148868361476b565b925082614896576148956148d0565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f455243373231456e756d657261626c653a206f776e657220696e646578206f7560008201527f74206f6620626f756e6473000000000000000000000000000000000000000000602082015250565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b7f54696d654552433230436f6e7472616374206973207374696c6c207a65726f2060008201527f6164647265737300000000000000000000000000000000000000000000000000602082015250565b7f4261736520555249206973206e6f742073657400000000000000000000000000600082015250565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b7f416464726573732063616e6e6f7420626520746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760008201527f6e6572206e6f7220617070726f76656420666f7220616c6c0000000000000000602082015250565b7f4445562057616c6c6574206973207374696c6c207a65726f2061646472657373600082015250565b7f4552433732313a2062616c616e636520717565727920666f7220746865207a6560008201527f726f206164647265737300000000000000000000000000000000000000000000602082015250565b7f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460008201527f656e7420746f6b656e0000000000000000000000000000000000000000000000602082015250565b7f45524337323155524953746f726167653a2055524920736574206f66206e6f6e60008201527f6578697374656e7420746f6b656e000000000000000000000000000000000000602082015250565b7f545249505320617265206e6f742061626c6520746f206265206d696e7465642060008201527f617420746869732074696d652e00000000000000000000000000000000000000602082015250565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b7f45524337323155524953746f726167653a2055524920717565727920666f722060008201527f6e6f6e6578697374656e7420746f6b656e000000000000000000000000000000602082015250565b7f4e6f6e65206c65667420746f206d696e74210000000000000000000000000000600082015250565b7f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f4552433732313a207472616e73666572206f6620746f6b656e2074686174206960008201527f73206e6f74206f776e0000000000000000000000000000000000000000000000602082015250565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b7f44414f2057616c6c6574206973207374696c6c207a65726f2061646472657373600082015250565b50565b7f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60008201527f776e6572206e6f7220617070726f766564000000000000000000000000000000602082015250565b7f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60008201527f7574206f6620626f756e64730000000000000000000000000000000000000000602082015250565b7f54696d65206861736e2774206265656e20617070726f76656420666f7220747260008201527f616e736665720000000000000000000000000000000000000000000000000000602082015250565b61511781614701565b811461512257600080fd5b50565b61512e81614713565b811461513957600080fd5b50565b6151458161471f565b811461515057600080fd5b50565b61515c8161476b565b811461516757600080fd5b5056fea264697066735822122033072d23d9ed4832e0175d973fdbe0f1b083ad3c3abcbbcc971b8dfa1cc2790a64736f6c63430008040033