abi, bytecode

abi

[ { "inputs": [ { "internalType": "contract QVEtoken", "name": "qveTokenAddress", "type": "address" }, { "internalType": "contract QVEnft", "name": "qvenft", "type": "address" }, { "internalType": "contract QVEstaking", "name": "qveStaking", "type": "address" }, { "internalType": "contract QVEswap", "name": "qveSwap", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "sender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "NFTDeposited", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "receiver", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "NFTWithdrawn", "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": "sender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "Received", "type": "event" }, { "inputs": [], "name": "QVEliquidityPool", "outputs": [ { "internalType": "uint256", "name": "balance", "type": "uint256" }, { "internalType": "uint256", "name": "at", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "burnInvestmentGuarantee", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "qveStakeAmount", "type": "uint256" } ], "name": "doQVEStake", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getAmountHavetobePayed", "outputs": [ { "internalType": "address", "name": "investor", "type": "address" }, { "internalType": "uint256", "name": "investedAmount", "type": "uint256" }, { "internalType": "uint256", "name": "profit", "type": "uint256" }, { "internalType": "uint256", "name": "strategyId", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getBalanceOfStakingContract", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "address", "type": "address" } ], "name": "getEthBalance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getEthMarginVault", "outputs": [ { "components": [ { "components": [ { "internalType": "uint256", "name": "marginAmount", "type": "uint256" }, { "internalType": "uint256", "name": "at", "type": "uint256" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "internalType": "struct QVEcore.marginDetail[]", "name": "marginDetails", "type": "tuple[]" }, { "internalType": "uint256[]", "name": "holdNFT", "type": "uint256[]" } ], "internalType": "struct QVEcore.userMarginData", "name": "", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "investor", "type": "address" }, { "internalType": "uint256", "name": "investmentIndex", "type": "uint256" }, { "internalType": "uint256", "name": "strategyId", "type": "uint256" } ], "name": "getIndividualProfit", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getInputedMarginCount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getNFTbalance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getNfts", "outputs": [ { "components": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "uint256", "name": "at", "type": "uint256" } ], "internalType": "struct QVEcore.NFTFragment[]", "name": "", "type": "tuple[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" } ], "name": "getPersonalStakeInfo", "outputs": [ { "components": [ { "internalType": "uint256", "name": "amount", "type": "uint256" }, { "internalType": "uint256[]", "name": "at", "type": "uint256[]" } ], "internalType": "struct QVEstaking.StakeInfo", "name": "", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getQVELiquidityAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" } ], "name": "getQVEbalance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "staker", "type": "address" } ], "name": "getStakePercentage", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "strategyId", "type": "uint256" } ], "name": "getStrategyProfitPercentage", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getSwapETHliquidity", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getSwapQVEliquidity", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getTokenOwner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getTotalSettlement", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getTotalStakeNum", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getTotalStaked", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getTotalStakers", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getmarginForNFT", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "strategy", "type": "uint256" } ], "name": "getstrategyAddress", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "individualInvestments", "outputs": [ { "internalType": "uint256", "name": "investedAmount", "type": "uint256" }, { "internalType": "uint256", "name": "strategyInitialBalance", "type": "uint256" }, { "internalType": "uint256", "name": "at", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "nftOwner", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "bytes", "name": "", "type": "bytes" } ], "name": "onERC721Received", "outputs": [ { "internalType": "bytes4", "name": "", "type": "bytes4" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "qveStaking", "outputs": [ { "internalType": "contract QVEstaking", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "qveSwap", "outputs": [ { "internalType": "contract QVEswap", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "qvenft", "outputs": [ { "internalType": "contract QVEnft", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "qvetoken", "outputs": [ { "internalType": "contract QVEtoken", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bool", "name": "lockup", "type": "bool" }, { "internalType": "uint256", "name": "sendAmount", "type": "uint256" }, { "internalType": "uint256", "name": "strategyId", "type": "uint256" } ], "name": "receiveAsset", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "strategyId", "type": "uint256" } ], "name": "receiveFromAPI", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "sendAmount", "type": "uint256" }, { "internalType": "uint256", "name": "strategyId", "type": "uint256" } ], "name": "sendFromBotToContract", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "address", "name": "from", "type": "address" } ], "name": "sendIntoContract", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "strategyId", "type": "uint256" }, { "internalType": "address payable", "name": "botAddress", "type": "address" } ], "name": "setStrategy", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "qveAmount", "type": "uint256" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "shortenLockup", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "strategies", "outputs": [ { "internalType": "address payable", "name": "botAddress", "type": "address" }, { "internalType": "uint256", "name": "initialBalance", "type": "uint256" }, { "internalType": "uint256", "name": "currentBalance", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenAmount", "type": "uint256" } ], "name": "swapETHtoQVE", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenAmount", "type": "uint256" } ], "name": "swapQVEtoETH_", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "tokenIdToStrategyId", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "totalInvestedAmount", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "strategyId", "type": "uint256" }, { "internalType": "uint256", "name": "newBalance", "type": "uint256" } ], "name": "updateStrategyBalance", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]

byte code

60806040523480156200001157600080fd5b50604051620058493803806200584983398181016040528101906200003791906200037f565b620000576200004b6200016560201b60201c565b6200016d60201b60201c565b83600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050620003f1565b600033905090565b60008060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600060016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620002648262000237565b9050919050565b6000620002788262000257565b9050919050565b6200028a816200026b565b81146200029657600080fd5b50565b600081519050620002aa816200027f565b92915050565b6000620002bd8262000257565b9050919050565b620002cf81620002b0565b8114620002db57600080fd5b50565b600081519050620002ef81620002c4565b92915050565b6000620003028262000257565b9050919050565b6200031481620002f5565b81146200032057600080fd5b50565b600081519050620003348162000309565b92915050565b6000620003478262000257565b9050919050565b62000359816200033a565b81146200036557600080fd5b50565b60008151905062000379816200034e565b92915050565b600080600080608085870312156200039c576200039b62000232565b5b6000620003ac8782880162000299565b9450506020620003bf87828801620002de565b9350506040620003d28782880162000323565b9250506060620003e58782880162000368565b91505092959194509250565b61544880620004016000396000f3fe6080604052600436106102815760003560e01c80637a378e051161014f578063bc338ae9116100c1578063dbe30d451161007a578063dbe30d4514610add578063de5775f514610b1a578063e2c048c314610b45578063ef89696514610b70578063f2fde38b14610bad578063faac432514610bd6576102d6565b8063bc338ae9146109a5578063c37601d6146109e2578063c660032c14610a1f578063d574ea3d14610a4a578063d68fbd6614610a89578063d8cb55e314610ab2576102d6565b80638e5d763f116101135780638e5d763f1461086d5780639b8f2f64146108985780639f853ec0146108d5578063a51de24614610900578063b6ae980e1461093d578063b6c2c43b1461097a576102d6565b80637a378e051461076057806383ce61471461079d57806385e48dd2146107da5780638866b937146108175780638da5cb5b14610842576102d6565b80633ee5191d116101f35780635948be3b116101ac5780635948be3b14610632578063617ef8501461067157806369394135146106b15780636c7b77fc146106dc5780636d95381e1461070c578063715018a614610749576102d6565b80633ee5191d146104fd5780634d2301cc1461052d5780634ede96661461056a57806350cea7661461059a578063510b7f98146105ca57806356289c29146105f5576102d6565b8063219841841161024557806321984184146103e957806326d35aea146104145780632adcbebd146104515780632b1c41581461047c57806331ed0db4146104a757806338d00575146104d2576102d6565b8063051b637a146102db5780630917e776146103185780630e301d2414610343578063150b7a021461036f5780631f6ce039146103ac576102d6565b366102d6573373ffffffffffffffffffffffffffffffffffffffff167f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f88525874346040516102cc9190613ad1565b60405180910390a2005b600080fd5b3480156102e757600080fd5b5061030260048036038101906102fd9190613b5e565b610bff565b60405161030f9190613c86565b60405180910390f35b34801561032457600080fd5b5061032d610caf565b60405161033a9190613ad1565b60405180910390f35b34801561034f57600080fd5b50610358610d47565b604051610366929190613ca8565b60405180910390f35b34801561037b57600080fd5b5061039660048036038101906103919190613d62565b610d59565b6040516103a39190613e25565b60405180910390f35b3480156103b857600080fd5b506103d360048036038101906103ce9190613e40565b610dfd565b6040516103e09190613e7c565b60405180910390f35b3480156103f557600080fd5b506103fe610e3a565b60405161040b9190613ad1565b60405180910390f35b34801561042057600080fd5b5061043b60048036038101906104369190613e40565b610ed2565b6040516104489190613ad1565b60405180910390f35b34801561045d57600080fd5b50610466610eef565b6040516104739190613ef6565b60405180910390f35b34801561048857600080fd5b50610491610f15565b60405161049e9190613f32565b60405180910390f35b3480156104b357600080fd5b506104bc610f3b565b6040516104c99190613ad1565b60405180910390f35b3480156104de57600080fd5b506104e7610fd3565b6040516104f49190613ad1565b60405180910390f35b61051760048036038101906105129190613e40565b61106b565b6040516105249190613f68565b60405180910390f35b34801561053957600080fd5b50610554600480360381019061054f9190613b5e565b6110ff565b6040516105619190613ad1565b60405180910390f35b610584600480360381019061057f9190613e40565b611120565b6040516105919190613f68565b60405180910390f35b6105b460048036038101906105af9190613f83565b6111bb565b6040516105c19190613f68565b60405180910390f35b3480156105d657600080fd5b506105df61127f565b6040516105ec9190613fe4565b60405180910390f35b34801561060157600080fd5b5061061c60048036038101906106179190613e40565b6112a5565b6040516106299190613f68565b60405180910390f35b34801561063e57600080fd5b5061065960048036038101906106549190613fff565b611412565b6040516106689392919061403f565b60405180910390f35b34801561067d57600080fd5b5061069860048036038101906106939190613e40565b611459565b6040516106a89493929190614076565b60405180910390f35b3480156106bd57600080fd5b506106c66114a2565b6040516106d391906140dc565b60405180910390f35b6106f660048036038101906106f19190614123565b6114c8565b6040516107039190613f68565b60405180910390f35b34801561071857600080fd5b50610733600480360381019061072e9190614176565b61174a565b6040516107409190613ad1565b60405180910390f35b34801561075557600080fd5b5061075e611831565b005b34801561076c57600080fd5b5061078760048036038101906107829190613e40565b611845565b6040516107949190613f68565b60405180910390f35b3480156107a957600080fd5b506107c460048036038101906107bf9190613f83565b611bb9565b6040516107d19190613f68565b60405180910390f35b3480156107e657600080fd5b5061080160048036038101906107fc9190613b5e565b611cb0565b60405161080e9190613ad1565b60405180910390f35b34801561082357600080fd5b5061082c611d55565b6040516108399190613ad1565b60405180910390f35b34801561084e57600080fd5b50610857611d66565b6040516108649190613e7c565b60405180910390f35b34801561087957600080fd5b50610882611d8f565b60405161088f9190613ad1565b60405180910390f35b3480156108a457600080fd5b506108bf60048036038101906108ba9190613b5e565b611e27565b6040516108cc9190613ad1565b60405180910390f35b3480156108e157600080fd5b506108ea611ecc565b6040516108f79190613ad1565b60405180910390f35b34801561090c57600080fd5b5061092760048036038101906109229190613e40565b611ed9565b6040516109349190613e7c565b60405180910390f35b34801561094957600080fd5b50610964600480360381019061095f9190613e40565b611f19565b6040516109719190613ad1565b60405180910390f35b34801561098657600080fd5b5061098f611fb3565b60405161099c9190613ad1565b60405180910390f35b3480156109b157600080fd5b506109cc60048036038101906109c79190613e40565b61204b565b6040516109d99190613f68565b60405180910390f35b3480156109ee57600080fd5b50610a096004803603810190610a049190613e40565b6120e5565b604051610a169190613ad1565b60405180910390f35b348015610a2b57600080fd5b50610a346120fd565b604051610a419190613ad1565b60405180910390f35b348015610a5657600080fd5b50610a716004803603810190610a6c9190613e40565b612195565b604051610a80939291906141ea565b60405180910390f35b348015610a9557600080fd5b50610ab06004803603810190610aab9190613f83565b6121df565b005b348015610abe57600080fd5b50610ac76122dd565b604051610ad491906142ff565b60405180910390f35b348015610ae957600080fd5b50610b046004803603810190610aff9190613e40565b612390565b604051610b119190613ad1565b60405180910390f35b348015610b2657600080fd5b50610b2f6123a8565b604051610b3c9190613ad1565b60405180910390f35b348015610b5157600080fd5b50610b5a61244b565b604051610b679190614456565b60405180910390f35b348015610b7c57600080fd5b50610b976004803603810190610b929190614478565b612577565b604051610ba49190613f68565b60405180910390f35b348015610bb957600080fd5b50610bd46004803603810190610bcf9190613b5e565b612614565b005b348015610be257600080fd5b50610bfd6004803603810190610bf891906144e4565b612697565b005b610c076139e6565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663051b637a836040518263ffffffff1660e01b8152600401610c629190613e7c565b600060405180830381865afa158015610c7f573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610ca891906146fe565b9050919050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630917e7766040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d1e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d429190614747565b905090565b600b8060000154908060010154905082565b600060405180604001604052806008600087815260200190815260200160002054815260200142815250600a600086815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082015181600001556020820151816001015590505063150b7a0260e01b905095945050505050565b60006009600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663eea9a9996040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ea9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ecd9190614747565b905090565b600060086000838152602001908152602001600020549050919050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166331ed0db46040518163ffffffff1660e01b8152600401602060405180830381865afa158015610faa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fce9190614747565b905090565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166338d005756040518163ffffffff1660e01b8152600401602060405180830381865afa158015611042573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110669190614747565b905090565b600061107682611ed9565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146110e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110da906147f7565b60405180910390fd5b6110ec346127ae565b506110f633612800565b60019050919050565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c663a1073484336040518463ffffffff1660e01b8152600401611180929190614817565b6000604051808303818588803b15801561119957600080fd5b505af11580156111ad573d6000803e3d6000fd5b505050505060019050919050565b60008234146111ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111f6906148b2565b60405180910390fd5b61120882611ed9565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611275576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161126c906147f7565b60405180910390fd5b6001905092915050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900460ff16156112f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112ed9061491e565b60405180910390fd5b60016000806101000a81548160ff021916908315150217905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663adc9772e33846040518363ffffffff1660e01b815260040161136d92919061493e565b6020604051808303816000875af115801561138c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113b0919061497c565b6113ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113e6906149f5565b60405180910390fd5b6001905060008060006101000a81548160ff021916908315150217905550919050565b6010602052816000526040600020818154811061142e57600080fd5b9060005260206000209060030201600091509150508060000154908060010154908060020154905083565b600080600080600e60008681526020019081526020016000205490503393506008600086815260200190815260200160002054925061149933868361174a565b91509193509193565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600082341461150c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150390614a61565b60405180910390fd5b6000600d600084815260200190815260200160002060010154036115465734600d6000848152602001908152602001600020600101819055505b34600d6000848152602001908152602001600020600201600082825461156c9190614ab0565b9250508190555060006040518060600160405280348152602001600d6000868152602001908152602001600020600201548152602001428152509050601060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819080600181540180825580915050600190039060005260206000209060030201600090919091909150600082015181600001556020820151816001015560408201518160020155505061163b83346129bc565b5034600f6000858152602001908152602001600020600082825461165f9190614ab0565b92505081905550600061167134612b2c565b6040516020016116819190614c13565b6040516020818303038152906040529050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630890d80c826040518263ffffffff1660e01b81526004016116ed9190614d5d565b6020604051808303816000875af115801561170c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611730919061497c565b5061173c348786612bfa565b506001925050509392505050565b600080601060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020848154811061179e5761179d614da5565b5b9060005260206000209060030201604051806060016040529081600082015481526020016001820154815260200160028201548152505090506000600d600085815260200190815260200160002060020154905060008260200151826118049190614dd4565b9050826020015181846000015161181b9190614e08565b6118259190614e79565b93505050509392505050565b611839612c82565b6118436000612d00565b565b60003373ffffffffffffffffffffffffffffffffffffffff166009600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146118e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118df90614ef6565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636352211e846040518263ffffffff1660e01b815260040161195a9190613ad1565b602060405180830381865afa158015611977573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061199b9190614f2b565b73ffffffffffffffffffffffffffffffffffffffff16146119f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119e890614ef6565b60405180910390fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16632890e0d7836040518263ffffffff1660e01b8152600401611a4c9190613ad1565b6020604051808303816000875af1158015611a6b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a8f919061497c565b50600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635f367b0333611afd670de0b6b3a76400006008600088815260200190815260200160002054612dc590919063ffffffff16565b6040518363ffffffff1660e01b8152600401611b1a92919061493e565b6020604051808303816000875af1158015611b39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b5d919061497c565b611b9c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9390614fa4565b60405180910390fd5b611ba63383612ddb565b611bb08233612f51565b60019050919050565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b2c3a7178430856040518463ffffffff1660e01b8152600401611c1a93929190614fc4565b6020604051808303816000875af1158015611c39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c5d919061497c565b611c9c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c9390615047565b60405180910390fd5b611ca5836134bf565b506001905092915050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166385e48dd2836040518263ffffffff1660e01b8152600401611d0d9190613e7c565b602060405180830381865afa158015611d2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d4e9190614747565b9050919050565b6000611d6160016134f0565b905090565b60008060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638e5d763f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611dfe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e229190614747565b905090565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f8b2cb4f836040518263ffffffff1660e01b8152600401611e849190613e7c565b602060405180830381865afa158015611ea1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ec59190614747565b9050919050565b6000600b60000154905090565b6000600d600083815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600080611f58600f600085815260200190815260200160002054600d6000868152602001908152602001600020600201546134fe90919063ffffffff16565b90506000600f60008581526020019081526020016000205403611f7f576000915050611fae565b600f600084815260200190815260200160002054606482611fa09190614e08565b611faa9190614e79565b9150505b919050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166383efb96a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612022573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120469190614747565b905090565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636527b55d83336040518363ffffffff1660e01b81526004016120aa929190614817565b600060405180830381600087803b1580156120c457600080fd5b505af11580156120d8573d6000803e3d6000fd5b5050505060019050919050565b600f6020528060005260406000206000915090505481565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c660032c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561216c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121909190614747565b905090565b600d6020528060005260406000206000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010154908060020154905083565b600073ffffffffffffffffffffffffffffffffffffffff16600d600084815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603612284576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161227b906150b3565b60405180910390fd5b6000600d600084815260200190815260200160002060010154036122be5780600d6000848152602001908152602001600020600101819055505b80600d6000848152602001908152602001600020600201819055505050565b6060600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001805480602002602001604051908101604052809291908181526020016000905b8282101561238757838290600052602060002090600202016040518060400160405290816000820154815260200160018201548152505081526020019060010190612341565b50505050905090565b600e6020528060005260406000206000915090505481565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231336040518263ffffffff1660e01b81526004016124059190613e7c565b602060405180830381865afa158015612422573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124469190614747565b905090565b612453613a00565b601160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060405180604001604052908160008201805480602002602001604051908101604052809291908181526020016000905b8282101561251257838290600052602060002090600302016040518060600160405290816000820154815260200160018201548152602001600282015481525050815260200190600101906124c2565b5050505081526020016001820180548060200260200160405190810160405280929190818152602001828054801561256957602002820191906000526020600020905b815481526020019060010190808311612555575b505050505081525050905090565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd8330866040518463ffffffff1660e01b81526004016125d8939291906150d3565b600060405180830381600087803b1580156125f257600080fd5b505af1158015612606573d6000803e3d6000fd5b505050506001905092915050565b61261c612c82565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361268b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126829061517c565b60405180910390fd5b61269481612d00565b50565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603612706576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126fd906151e8565b60405180910390fd5b60405180606001604052808273ffffffffffffffffffffffffffffffffffffffff168152602001600081526020016000815250600d600084815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010155604082015181600201559050505050565b60003373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501580156127f6573d6000803e3d6000fd5b5060019050919050565b601060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061284b9190613a1a565b60005b600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000180549050811015612966576000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000182815481106128f1576128f0614da5565b5b90600052602060002090600202016000015490506009600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600860008281526020019081526020016000206000905550808061295e90615208565b91505061284e565b50600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600080820160006129b79190613a3e565b505050565b60008073ffffffffffffffffffffffffffffffffffffffff16600d600085815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603612a62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a59906151e8565b60405180910390fd5b81471015612aa5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a9c906152c2565b60405180910390fd5b600d600084815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015612b21573d6000803e3d6000fd5b506001905092915050565b606060006001612b3b84613514565b01905060008167ffffffffffffffff811115612b5a57612b5961453a565b5b6040519080825280601f01601f191660200182016040528015612b8c5781602001600182028036833780820191505090505b509050600082602001820190505b600115612bef578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8581612be357612be2614e4a565b5b04945060008503612b9a575b819350505050919050565b600080612c08338686613667565b905082600e600083815260200190815260200160002081905550612c2d33868361388f565b612c6c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c639061532e565b60405180910390fd5b612c7660016139c8565b60019150509392505050565b612c8a6139de565b73ffffffffffffffffffffffffffffffffffffffff16612ca8611d66565b73ffffffffffffffffffffffffffffffffffffffff1614612cfe576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612cf59061539a565b60405180910390fd5b565b60008060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600060016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008183612dd39190614e08565b905092915050565b6000601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905060008060005b8380549050811015612e8d576008600086815260200190815260200160002054848281548110612e5757612e56614da5565b5b90600052602060002090600302016000015403612e7a5780925060019150612e8d565b8080612e8590615208565b915050612e24565b508015612f4a578260018480549050612ea69190614dd4565b81548110612eb757612eb6614da5565b5b9060005260206000209060030201838381548110612ed857612ed7614da5565b5b906000526020600020906003020160008201548160000155600182015481600101556002820154816002015590505082805480612f1857612f176153ba565b5b600190038181906000526020600020906003020160008082016000905560018201600090556002820160009055505090555b5050505050565b60008060005b601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018054905081101561302f5784601160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018281548110612ff957612ff8614da5565b5b9060005260206000209060030201600201540361301c578092506001915061302f565b808061302790615208565b915050612f57565b5080156131f057601160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000016001601160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001805490506130ca9190614dd4565b815481106130db576130da614da5565b5b9060005260206000209060030201601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001838154811061313d5761313c614da5565b5b9060005260206000209060030201600082015481600001556001820154816001015560028201548160020155905050601160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018054806131be576131bd6153ba565b5b600190038181906000526020600020906003020160008082016000905560018201600090556002820160009055505090555b60005b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018054905081101561346b5784600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001828154811061329557613294614da5565b5b9060005260206000209060020201600001540361345857600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000016001600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001805490506133409190614dd4565b8154811061335157613350614da5565b5b9060005260206000209060020201600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000182815481106133b3576133b2614da5565b5b90600052602060002090600202016000820154816000015560018201548160010155905050600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000180548061342a576134296153ba565b5b600190038181906000526020600020906002020160008082016000905560018201600090555050905561346b565b808061346390615208565b9150506131f3565b5060086000858152602001908152602001600020600090556009600085815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550505050565b600081600b60000160008282546134d69190614ab0565b9250508190555042600b6001018190555060019050919050565b600081600001549050919050565b6000818361350c9190614dd4565b905092915050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310613572577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000838161356857613567614e4a565b5b0492506040810190505b6d04ee2d6d415b85acef810000000083106135af576d04ee2d6d415b85acef810000000083816135a5576135a4614e4a565b5b0492506020810190505b662386f26fc1000083106135de57662386f26fc1000083816135d4576135d3614e4a565b5b0492506010810190505b6305f5e1008310613607576305f5e10083816135fd576135fc614e4a565b5b0492506008810190505b612710831061362c57612710838161362257613621614e4a565b5b0492506004810190505b6064831061364f576064838161364557613644614e4a565b5b0492506002810190505b600a831061365e576001810190505b80915050919050565b60008060009054906101000a900460ff16156136b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016136af9061491e565b60405180910390fd5b60016000806101000a81548160ff0219169083151502179055506000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f42c69d686856040518363ffffffff1660e01b81526004016137319291906153e9565b6020604051808303816000875af1158015613750573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137749190614747565b9050600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160405180604001604052808381526020014281525090806001815401808255809150506001900390600052602060002090600202016000909190919091506000820151816000015560208201518160010155505061381733858361388f565b50846009600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508091505060008060006101000a81548160ff0219169083151502179055509392505050565b600080601160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000190508060405180606001604052808681526020014281526020018581525090806001815401808255809150506001900390600052602060002090600302016000909190919091506000820151816000015560208201518160010155604082015181600201555050601160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010183908060018154018082558091505060019003906000526020600020016000909190919091505583600860008581526020019081526020016000208190555060019150509392505050565b6001816000016000828254019250508190555050565b600033905090565b604051806040016040528060008152602001606081525090565b604051806040016040528060608152602001606081525090565b5080546000825560030290600052602060002090810190613a3b9190613a62565b50565b5080546000825560020290600052602060002090810190613a5f9190613a91565b50565b5b80821115613a8d576000808201600090556001820160009055600282016000905550600301613a63565b5090565b5b80821115613ab457600080820160009055600182016000905550600201613a92565b5090565b6000819050919050565b613acb81613ab8565b82525050565b6000602082019050613ae66000830184613ac2565b92915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000613b2b82613b00565b9050919050565b613b3b81613b20565b8114613b4657600080fd5b50565b600081359050613b5881613b32565b92915050565b600060208284031215613b7457613b73613af6565b5b6000613b8284828501613b49565b91505092915050565b613b9481613ab8565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000613bd28383613b8b565b60208301905092915050565b6000602082019050919050565b6000613bf682613b9a565b613c008185613ba5565b9350613c0b83613bb6565b8060005b83811015613c3c578151613c238882613bc6565b9750613c2e83613bde565b925050600181019050613c0f565b5085935050505092915050565b6000604083016000830151613c616000860182613b8b565b5060208301518482036020860152613c798282613beb565b9150508091505092915050565b60006020820190508181036000830152613ca08184613c49565b905092915050565b6000604082019050613cbd6000830185613ac2565b613cca6020830184613ac2565b9392505050565b613cda81613ab8565b8114613ce557600080fd5b50565b600081359050613cf781613cd1565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f840112613d2257613d21613cfd565b5b8235905067ffffffffffffffff811115613d3f57613d3e613d02565b5b602083019150836001820283011115613d5b57613d5a613d07565b5b9250929050565b600080600080600060808688031215613d7e57613d7d613af6565b5b6000613d8c88828901613b49565b9550506020613d9d88828901613b49565b9450506040613dae88828901613ce8565b935050606086013567ffffffffffffffff811115613dcf57613dce613afb565b5b613ddb88828901613d0c565b92509250509295509295909350565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b613e1f81613dea565b82525050565b6000602082019050613e3a6000830184613e16565b92915050565b600060208284031215613e5657613e55613af6565b5b6000613e6484828501613ce8565b91505092915050565b613e7681613b20565b82525050565b6000602082019050613e916000830184613e6d565b92915050565b6000819050919050565b6000613ebc613eb7613eb284613b00565b613e97565b613b00565b9050919050565b6000613ece82613ea1565b9050919050565b6000613ee082613ec3565b9050919050565b613ef081613ed5565b82525050565b6000602082019050613f0b6000830184613ee7565b92915050565b6000613f1c82613ec3565b9050919050565b613f2c81613f11565b82525050565b6000602082019050613f476000830184613f23565b92915050565b60008115159050919050565b613f6281613f4d565b82525050565b6000602082019050613f7d6000830184613f59565b92915050565b60008060408385031215613f9a57613f99613af6565b5b6000613fa885828601613ce8565b9250506020613fb985828601613ce8565b9150509250929050565b6000613fce82613ec3565b9050919050565b613fde81613fc3565b82525050565b6000602082019050613ff96000830184613fd5565b92915050565b6000806040838503121561401657614015613af6565b5b600061402485828601613b49565b925050602061403585828601613ce8565b9150509250929050565b60006060820190506140546000830186613ac2565b6140616020830185613ac2565b61406e6040830184613ac2565b949350505050565b600060808201905061408b6000830187613e6d565b6140986020830186613ac2565b6140a56040830185613ac2565b6140b26060830184613ac2565b95945050505050565b60006140c682613ec3565b9050919050565b6140d6816140bb565b82525050565b60006020820190506140f160008301846140cd565b92915050565b61410081613f4d565b811461410b57600080fd5b50565b60008135905061411d816140f7565b92915050565b60008060006060848603121561413c5761413b613af6565b5b600061414a8682870161410e565b935050602061415b86828701613ce8565b925050604061416c86828701613ce8565b9150509250925092565b60008060006060848603121561418f5761418e613af6565b5b600061419d86828701613b49565b93505060206141ae86828701613ce8565b92505060406141bf86828701613ce8565b9150509250925092565b60006141d482613b00565b9050919050565b6141e4816141c9565b82525050565b60006060820190506141ff60008301866141db565b61420c6020830185613ac2565b6142196040830184613ac2565b949350505050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6040820160008201516142636000850182613b8b565b5060208201516142766020850182613b8b565b50505050565b6000614288838361424d565b60408301905092915050565b6000602082019050919050565b60006142ac82614221565b6142b6818561422c565b93506142c18361423d565b8060005b838110156142f25781516142d9888261427c565b97506142e483614294565b9250506001810190506142c5565b5085935050505092915050565b6000602082019050818103600083015261431981846142a1565b905092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6060820160008201516143636000850182613b8b565b5060208201516143766020850182613b8b565b5060408201516143896040850182613b8b565b50505050565b600061439b838361434d565b60608301905092915050565b6000602082019050919050565b60006143bf82614321565b6143c9818561432c565b93506143d48361433d565b8060005b838110156144055781516143ec888261438f565b97506143f7836143a7565b9250506001810190506143d8565b5085935050505092915050565b6000604083016000830151848203600086015261442f82826143b4565b915050602083015184820360208601526144498282613beb565b9150508091505092915050565b600060208201905081810360008301526144708184614412565b905092915050565b6000806040838503121561448f5761448e613af6565b5b600061449d85828601613ce8565b92505060206144ae85828601613b49565b9150509250929050565b6144c1816141c9565b81146144cc57600080fd5b50565b6000813590506144de816144b8565b92915050565b600080604083850312156144fb576144fa613af6565b5b600061450985828601613ce8565b925050602061451a858286016144cf565b9150509250929050565b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61457282614529565b810181811067ffffffffffffffff821117156145915761459061453a565b5b80604052505050565b60006145a4613aec565b90506145b08282614569565b919050565b600080fd5b6000815190506145c981613cd1565b92915050565b600067ffffffffffffffff8211156145ea576145e961453a565b5b602082029050602081019050919050565b600061460e614609846145cf565b61459a565b9050808382526020820190506020840283018581111561463157614630613d07565b5b835b8181101561465a578061464688826145ba565b845260208401935050602081019050614633565b5050509392505050565b600082601f83011261467957614678613cfd565b5b81516146898482602086016145fb565b91505092915050565b6000604082840312156146a8576146a7614524565b5b6146b2604061459a565b905060006146c2848285016145ba565b600083015250602082015167ffffffffffffffff8111156146e6576146e56145b5565b5b6146f284828501614664565b60208301525092915050565b60006020828403121561471457614713613af6565b5b600082015167ffffffffffffffff81111561473257614731613afb565b5b61473e84828501614692565b91505092915050565b60006020828403121561475d5761475c613af6565b5b600061476b848285016145ba565b91505092915050565b600082825260208201905092915050565b7f5761726e203a2053656e6420747279696e672061646472657373206973206e6f60008201527f7420746865207374726174656779204164647265737300000000000000000000602082015250565b60006147e1603683614774565b91506147ec82614785565b604082019050919050565b60006020820190508181036000830152614810816147d4565b9050919050565b600060408201905061482c6000830185613ac2565b6148396020830184613e6d565b9392505050565b7f5761726e203a2053656e6420616d6f756e7420697320646966666572656e742060008201527f77697468206d73672e76616c7565000000000000000000000000000000000000602082015250565b600061489c602e83614774565b91506148a782614840565b604082019050919050565b600060208201905081810360008301526148cb8161488f565b9050919050565b7f4e6f205265456e7472616e637900000000000000000000000000000000000000600082015250565b6000614908600d83614774565b9150614913826148d2565b602082019050919050565b60006020820190508181036000830152614937816148fb565b9050919050565b60006040820190506149536000830185613e6d565b6149606020830184613ac2565b9392505050565b600081519050614976816140f7565b92915050565b60006020828403121561499257614991613af6565b5b60006149a084828501614967565b91505092915050565b7f5761726e203a20515645207374616b696e67206661696c656400000000000000600082015250565b60006149df601983614774565b91506149ea826149a9565b602082019050919050565b60006020820190508181036000830152614a0e816149d2565b9050919050565b7f5761726e203a204d69736d6174636865642073656e7420616d6f756e74000000600082015250565b6000614a4b601d83614774565b9150614a5682614a15565b602082019050919050565b60006020820190508181036000830152614a7a81614a3e565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000614abb82613ab8565b9150614ac683613ab8565b9250828201905080821115614ade57614add614a81565b5b92915050565b600081905092915050565b7f5b47756172616e7465656420496e766573746d656e74204d617267696e5d2d2d60008201527f3a00000000000000000000000000000000000000000000000000000000000000602082015250565b6000614b4b602183614ae4565b9150614b5682614aef565b602182019050919050565b600081519050919050565b60005b83811015614b8a578082015181840152602081019050614b6f565b60008484015250505050565b6000614ba182614b61565b614bab8185614ae4565b9350614bbb818560208601614b6c565b80840191505092915050565b7f5745490000000000000000000000000000000000000000000000000000000000600082015250565b6000614bfd600383614ae4565b9150614c0882614bc7565b600382019050919050565b6000614c1e82614b3e565b9150614c2a8284614b96565b9150614c3582614bf0565b915081905092915050565b7f5374616b696e672047756172616e746565204361726400000000000000000000600082015250565b6000614c76601683614774565b9150614c8182614c40565b602082019050919050565b6000614c9782614b61565b614ca18185614774565b9350614cb1818560208601614b6c565b614cba81614529565b840191505092915050565b7f68747470733a2f2f697066732e696f2f697066732f516d5155756d713869596360008201527f41395838756f61664d325955384c6579794d4b7a554e32484635464770364e7060208201527f5845563f66696c656e616d653d47726f7570253230343538342e6a7067000000604082015250565b6000614d47605d83614774565b9150614d5282614cc5565b606082019050919050565b60006060820190508181036000830152614d7681614c69565b90508181036020830152614d8a8184614c8c565b90508181036040830152614d9d81614d3a565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000614ddf82613ab8565b9150614dea83613ab8565b9250828203905081811115614e0257614e01614a81565b5b92915050565b6000614e1382613ab8565b9150614e1e83613ab8565b9250828202614e2c81613ab8565b91508282048414831517614e4357614e42614a81565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000614e8482613ab8565b9150614e8f83613ab8565b925082614e9f57614e9e614e4a565b5b828204905092915050565b7f5761726e203a20596f7520617265206e6f7420746865204e4654206f776e6572600082015250565b6000614ee0602083614774565b9150614eeb82614eaa565b602082019050919050565b60006020820190508181036000830152614f0f81614ed3565b9050919050565b600081519050614f2581613b32565b92915050565b600060208284031215614f4157614f40613af6565b5b6000614f4f84828501614f16565b91505092915050565b7f5761726e203a205472616e73666572206661696c656400000000000000000000600082015250565b6000614f8e601683614774565b9150614f9982614f58565b602082019050919050565b60006020820190508181036000830152614fbd81614f81565b9050919050565b6000606082019050614fd96000830186613ac2565b614fe66020830185613e6d565b614ff36040830184613ac2565b949350505050565b7f5761726e203a204c6f636b75702073686f7274656e206661696c656400000000600082015250565b6000615031601c83614774565b915061503c82614ffb565b602082019050919050565b6000602082019050818103600083015261506081615024565b9050919050565b7f5761726e203a20537472617465677920646f6573206e6f742065786973740000600082015250565b600061509d601e83614774565b91506150a882615067565b602082019050919050565b600060208201905081810360008301526150cc81615090565b9050919050565b60006060820190506150e86000830186613e6d565b6150f56020830185613e6d565b6151026040830184613ac2565b949350505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000615166602683614774565b91506151718261510a565b604082019050919050565b6000602082019050818103600083015261519581615159565b9050919050565b7f5761726e203a20496e76616c696420626f742061646472657373000000000000600082015250565b60006151d2601a83614774565b91506151dd8261519c565b602082019050919050565b60006020820190508181036000830152615201816151c5565b9050919050565b600061521382613ab8565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361524557615244614a81565b5b600182019050919050565b7f5761726e203a20496e73756666696369656e742062616c616e636520696e206360008201527f6f6e747261637400000000000000000000000000000000000000000000000000602082015250565b60006152ac602783614774565b91506152b782615250565b604082019050919050565b600060208201905081810360008301526152db8161529f565b9050919050565b7f5761726e203a205661756c7420757064617465206661696c6564000000000000600082015250565b6000615318601a83614774565b9150615323826152e2565b602082019050919050565b600060208201905081810360008301526153478161530b565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000615384602083614774565b915061538f8261534e565b602082019050919050565b600060208201905081810360008301526153b381615377565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b60006040820190506153fe6000830185613e6d565b61540b6020830184613f59565b939250505056fea2646970667358221220768bf77c4d771bb662af30a59e658a75ca5b5603c4390b4f47587c3126d0b8d964736f6c63430008120033

Last updated