0 txs
0 calls
constructor
constructor(address _polkaBridgeNFT, address _owner, address _WETH)
functions
getBalanceItemByPackageId
viewfunction getBalanceItemByPackageId(uint256 packageId) view returns (uint256)
getPackageInfo
viewfunction getPackageInfo(uint256 packageId) view returns (tuple retSt)
getPoolInfo
viewfunction getPoolInfo(uint256 pid) view returns (tuple retSt)
getPurchasedPackageIds
viewfunction getPurchasedPackageIds(address user_, uint256 pid) view returns (uint256[])
getRemainINOToken
viewfunction getRemainINOToken(uint256 packageId) view returns (uint256)
IsWhitelist
viewfunction IsWhitelist(address user, uint256 pid) view returns (bool)
name
viewfunction name() view returns (string)
owner
viewfunction owner() view returns (address)
packageLength
viewfunction packageLength() view returns (uint256)
polkaBridgeNFT
viewfunction polkaBridgeNFT() view returns (address)
poolLength
viewfunction poolLength() view returns (uint256)
purchasecheck
viewfunction purchasecheck(uint256, address) view returns (bool)
supportsInterface
purefunction supportsInterface(bytes4 interfaceId) pure returns (bool)
WETH
viewfunction WETH() view returns (address)
whitelist
viewfunction whitelist(uint256, address) view returns (uint256 Id, bool IsWhitelist, uint256 WhitelistDate, uint256 PurchaseTime, bool IsClaimed, uint256 TotalETHPurchase, uint256 PurchasedItemCount)
activePool
nonpayablefunction activePool(uint256 pid)
addMulWhitelist
nonpayablefunction addMulWhitelist(address[] user, uint256 pid)
addPackageToPool
nonpayablefunction addPackageToPool(uint256 _PoolId, uint256 _MinimumTokenSoldout, uint256 _TotalItemCount, uint256 _RatePerETH)
addPool
nonpayablefunction addPool(uint256 _Begin, uint256 _End, uint256 _Type, uint256 _AmountPBRRequire, uint256 _LockDuration, uint256 _claimType)
addWhitelist
nonpayablefunction addWhitelist(address user, uint256 pid)
changeOwner
nonpayablefunction changeOwner(address _owner)
claimPool
nonpayablefunction claimPool(uint256 pid)
onERC1155BatchReceived
nonpayablefunction onERC1155BatchReceived(address, address, uint256[], uint256[], bytes) returns (bytes4)
onERC1155Received
nonpayablefunction onERC1155Received(address, address, uint256, uint256, bytes) returns (bytes4)
onERC721Received
nonpayablefunction onERC721Received(address, address, uint256, bytes) returns (bytes4)
purchaseINO
payablefunction purchaseINO(uint256 packageId, uint256 quantity) payable
renounceOwnership
nonpayablefunction renounceOwnership()
stopPool
nonpayablefunction stopPool(uint256 pid)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
updatePackage
nonpayablefunction updatePackage(uint256 _PackageId, uint256 _PoolId, uint256 _MinimumTokenSoldout, uint256 _TotalItemCount, uint256 _RatePerETH)
updatePool
nonpayablefunction updatePool(uint256 pid, uint256 _Begin, uint256 _End, uint256 _Type, uint256 _AmountPBRRequire, uint256 _LockDuration, uint256 _claimType)
updateWhitelist
nonpayablefunction updateWhitelist(address user, uint256 pid, bool isWhitelist)
withdrawErc20
nonpayablefunction withdrawErc20(address token)
withdrawETHFund
nonpayablefunction withdrawETHFund()
withdrawPoolFund
nonpayablefunction withdrawPoolFund()
events
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
errors
No errors.
creation bytecode
0x60a06040526040518060400160405280601081526020017f506f6c6b614272696467653a20494e4f0000000000000000000000000000000081525060029080519060200190620000519291906200023a565b503480156200005f57600080fd5b5060405162005f1c38038062005f1c83398181016040528101906200008591906200032f565b620000a5620000996200016e60201b60201c565b6200017660201b60201c565b6001808190555081600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1660601b8152505082600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505062000494565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8280546200024890620003e1565b90600052602060002090601f0160209004810192826200026c5760008555620002b8565b82601f106200028757805160ff1916838001178555620002b8565b82800160010185558215620002b8579182015b82811115620002b75782518255916020019190600101906200029a565b5b509050620002c79190620002cb565b5090565b5b80821115620002e6576000816000905550600101620002cc565b5090565b600081519050620002fb8162000446565b92915050565b600081519050620003128162000460565b92915050565b60008151905062000329816200047a565b92915050565b6000806000606084860312156200034557600080fd5b6000620003558682870162000318565b9350506020620003688682870162000301565b92505060406200037b86828701620002ea565b9150509250925092565b60006200039282620003c1565b9050919050565b6000620003a682620003c1565b9050919050565b6000620003ba8262000385565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006002820490506001821680620003fa57607f821691505b6020821081141562000411576200041062000417565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b620004518162000385565b81146200045d57600080fd5b50565b6200046b8162000399565b81146200047757600080fd5b50565b6200048581620003ad565b81146200049157600080fd5b50565b60805160601c615a4d620004cf6000396000818161131b0152818161139c01528181611f2201528181611fcd015261389e0152615a4d6000f3fe6080604052600436106102085760003560e01c80637023cee011610118578063a6f9dae1116100a0578063c7e42b1b1161006f578063c7e42b1b14610777578063ce49ff61146107a0578063cec2a0b4146107cb578063f23a6e6114610808578063f2fde38b146108455761020f565b8063a6f9dae1146106bd578063ad5c4648146106e6578063b39d900914610711578063bc197c811461073a5761020f565b80638042c3f2116100e75780638042c3f2146105b25780638583e823146105ef5780638da5cb5b1461062c5780639c13180614610657578063a571d18c146106945761020f565b80637023cee014610520578063715018a614610549578063753969da14610560578063795d121c146105895761020f565b80631a1d69ec1161019b5780634b25bfce1161016a5780634b25bfce1461042357806353ffa299146104665780635729bd4c1461047d57806364e4ffb4146104a657806364ee0776146104e35761020f565b80631a1d69ec1461037b5780631f4552cb146103a45780631faee868146103bb5780632f380b35146103e65761020f565b806308405e74116101d757806308405e74146102c35780630ac2d472146102ec5780630f4d035714610315578063150b7a021461033e5761020f565b806301ffc9a71461021457806306fdde0314610251578063081e3eda1461027c578063083d7de2146102a75761020f565b3661020f57005b600080fd5b34801561022057600080fd5b5061023b6004803603810190610236919061464b565b61086e565b6040516102489190614f97565b60405180910390f35b34801561025d57600080fd5b506102666108bf565b6040516102739190614fe8565b60405180910390f35b34801561028857600080fd5b5061029161094d565b60405161029e91906151ce565b60405180910390f35b6102c160048036038101906102bc919061472b565b61095a565b005b3480156102cf57600080fd5b506102ea60048036038101906102e5919061457f565b61147e565b005b3480156102f857600080fd5b50610313600480360381019061030e91906148ca565b61168e565b005b34801561032157600080fd5b5061033c6004803603810190610337919061469d565b61193e565b005b34801561034a57600080fd5b5061036560048036038101906103609190614439565b611aee565b6040516103729190614fb2565b60405180910390f35b34801561038757600080fd5b506103a2600480360381019061039d91906145ce565b611b02565b005b3480156103b057600080fd5b506103b9611ea2565b005b3480156103c757600080fd5b506103d06120c2565b6040516103dd91906151ce565b60405180910390f35b3480156103f257600080fd5b5061040d6004803603810190610408919061469d565b6120cf565b60405161041a919061518a565b60405180910390f35b34801561042f57600080fd5b5061044a600480360381019061044591906146ef565b612233565b60405161045d97969594939291906151e9565b60405180910390f35b34801561047257600080fd5b5061047b61229c565b005b34801561048957600080fd5b506104a4600480360381019061049f919061469d565b6123cc565b005b3480156104b257600080fd5b506104cd60048036038101906104c8919061469d565b6125cd565b6040516104da91906151ac565b60405180910390f35b3480156104ef57600080fd5b5061050a6004803603810190610505919061469d565b612712565b60405161051791906151ce565b60405180910390f35b34801561052c57600080fd5b50610547600480360381019061054291906147ca565b6127dc565b005b34801561055557600080fd5b5061055e6129d6565b005b34801561056c57600080fd5b5061058760048036038101906105829190614767565b612a5e565b005b34801561059557600080fd5b506105b060048036038101906105ab919061469d565b612cb2565b005b3480156105be57600080fd5b506105d960048036038101906105d49190614543565b6132ea565b6040516105e69190614f75565b60405180910390f35b3480156105fb57600080fd5b506106166004803603810190610611919061469d565b613396565b60405161062391906151ce565b60405180910390f35b34801561063857600080fd5b50610641613403565b60405161064e9190614ed9565b60405180910390f35b34801561066357600080fd5b5061067e60048036038101906106799190614543565b61342c565b60405161068b9190614f97565b60405180910390f35b3480156106a057600080fd5b506106bb60048036038101906106b69190614841565b61358f565b005b3480156106c957600080fd5b506106e460048036038101906106df9190614351565b6137dc565b005b3480156106f257600080fd5b506106fb61389c565b6040516107089190614ed9565b60405180910390f35b34801561071d57600080fd5b5061073860048036038101906107339190614543565b6138c0565b005b34801561074657600080fd5b50610761600480360381019061075c919061437a565b613b80565b60405161076e9190614fb2565b60405180910390f35b34801561078357600080fd5b5061079e60048036038101906107999190614674565b613b95565b005b3480156107ac57600080fd5b506107b5613cd0565b6040516107c29190614fcd565b60405180910390f35b3480156107d757600080fd5b506107f260048036038101906107ed91906146ef565b613cf6565b6040516107ff9190614f97565b60405180910390f35b34801561081457600080fd5b5061082f600480360381019061082a91906144b4565b613d25565b60405161083c9190614fb2565b60405180910390f35b34801561085157600080fd5b5061086c60048036038101906108679190614328565b613d3a565b005b60006301ffc9a760e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b600280546108cc906155ff565b80601f01602080910402602001604051908101604052809291908181526020018280546108f8906155ff565b80156109455780601f1061091a57610100808354040283529160200191610945565b820191906000526020600020905b81548152906001019060200180831161092857829003601f168201915b505050505081565b6000600980549050905090565b600260015414156109a0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109979061512a565b60405180910390fd5b600260018190555060006109be600184613e3290919063ffffffff16565b90506000600a82815481106109fc577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600702016001015490506000610a26600183613e3290919063ffffffff16565b905060098181548110610a62577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b020160090160009054906101000a900460ff16610ac0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ab79061516a565b60405180910390fd5b60098181548110610afa577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b0201600101544210158015610b66575060098181548110610b50577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b0201600201544211155b610ba5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b9c9061514a565b60405180910390fd5b600260098281548110610be1577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b0201600301541415610c4357610c03338361342c565b610c42576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c39906150ea565b60405180910390fd5b5b60003490506000610cc96ec097ce7bc90715b34b9f1000000000610cbb600a8881548110610c9a577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600702016005015485613e4890919063ffffffff16565b613e5e90919063ffffffff16565b905085811015610d0e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d05906150aa565b60405180910390fd5b600086821115610dcb57610dbd670de0b6b3a7640000610daf610da0610d90670de0b6b3a7640000600a8c81548110610d70577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020906007020160050154613e5e90919063ffffffff16565b6001613e5e90919063ffffffff16565b8a613e4890919063ffffffff16565b613e4890919063ffffffff16565b83610dc89190615497565b90505b6000610dd689612712565b9050600a8781548110610e12577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000209060070201600301548111610e65576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e5c906150ca565b60405180910390fd5b87811015610ea8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e9f906150ca565b60405180910390fd5b610f0e84600660008c815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050154613e7490919063ffffffff16565b600660008b815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050181905550610fcb88600660008c815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060154613e7490919063ffffffff16565b600660008b815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206006018190555042600660008b815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030181905550600760008a815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661126c57600a8781548110611116577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000209060070201600601339080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600760008b815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000206007018990806001815401808255809150506001900390600052602060002001600090919091909150555b6112ca88600a89815481106112aa577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020906007020160020154613e7490919063ffffffff16565b600a8881548110611304577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000209060070201600201819055507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d0e30db0856040518263ffffffff1660e01b81526004016000604051808303818588803b15801561138157600080fd5b505af1158015611395573d6000803e3d6000fd5b50505050507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16632e1a7d4d836040518263ffffffff1660e01b81526004016113f391906151ce565b600060405180830381600087803b15801561140d57600080fd5b505af1158015611421573d6000803e3d6000fd5b505050503373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f1935050505015801561146b573d6000803e3d6000fd5b5050505050505050600180819055505050565b611486613e8a565b73ffffffffffffffffffffffffffffffffffffffff166114a4613403565b73ffffffffffffffffffffffffffffffffffffffff16146114fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114f19061508a565b60405180910390fd5b6000611510600184613e3290919063ffffffff16565b905060006009828154811061154e577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b0201600a018054806020026020016040519081016040528092919081815260200182805480156115a957602002820191906000526020600020905b815481526020019060010190808311611595575b5050505050905060008151905060005b818110156116855760008382815181106115fc577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101519050856006600083815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160006101000a81548160ff02191690831515021790555050808061167d90615662565b9150506115b9565b50505050505050565b611696613e8a565b73ffffffffffffffffffffffffffffffffffffffff166116b4613403565b73ffffffffffffffffffffffffffffffffffffffff161461170a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117019061508a565b60405180910390fd5b6000611720600189613e3290919063ffffffff16565b9050816009828154811061175d577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b02016008018190555060008711156117cc5786600982815481106117b6577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b0201600101819055505b6000861115611826578560098281548110611810577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b0201600201819055505b600085111561188057846009828154811061186a577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b0201600301819055505b60008411156118da5783600982815481106118c4577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b0201600401819055505b600083111561193457826009828154811061191e577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b0201600501819055505b5050505050505050565b611946613e8a565b73ffffffffffffffffffffffffffffffffffffffff16611964613403565b73ffffffffffffffffffffffffffffffffffffffff16146119ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119b19061508a565b60405180910390fd5b60006119d0600183613e3290919063ffffffff16565b9050600060098281548110611a0e577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b020160090160006101000a81548160ff021916908315150217905550600160098281548110611a72577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b020160090160016101000a81548160ff0219169083151502179055504260098281548110611ad5577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b0201600701819055505050565b600063150b7a0260e01b9050949350505050565b611b0a613e8a565b73ffffffffffffffffffffffffffffffffffffffff16611b28613403565b73ffffffffffffffffffffffffffffffffffffffff1614611b7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b759061508a565b60405180910390fd5b6000611b94600183613e3290919063ffffffff16565b9050600060098281548110611bd2577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b0201600a01805480602002602001604051908101604052809291908181526020018280548015611c2d57602002820191906000526020600020905b815481526020019060010190808311611c19575b5050505050905060008151905060005b8551811015611e9a5760005b82811015611e86576000848281518110611c8c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101519050866006600083815260200190815260200160002060008a8681518110611ce5577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018190555060016006600083815260200190815260200160002060008a8681518110611d7e577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160006101000a81548160ff021916908315150217905550426006600083815260200190815260200160002060008a8681518110611e29577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020181905550508080611e7e90615662565b915050611c49565b508080611e9290615662565b915050611c3d565b505050505050565b611eaa613e8a565b73ffffffffffffffffffffffffffffffffffffffff16611ec8613403565b73ffffffffffffffffffffffffffffffffffffffff1614611f1e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f159061508a565b60405180910390fd5b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401611f799190614ed9565b60206040518083038186803b158015611f9157600080fd5b505afa158015611fa5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fc991906146c6565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16632e1a7d4d826040518263ffffffff1660e01b815260040161202491906151ce565b600060405180830381600087803b15801561203e57600080fd5b505af1158015612052573d6000803e3d6000fd5b50505050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f193505050501580156120be573d6000803e3d6000fd5b5050565b6000600a80549050905090565b6120d7613f56565b60006120ed600184613e3290919063ffffffff16565b905060098181548110612129577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b0201604051806101800160405290816000820154815260200160018201548152602001600282015481526020016003820154815260200160048201548152602001600582015481526020016006820154815260200160078201548152602001600882015481526020016009820160009054906101000a900460ff161515151581526020016009820160019054906101000a900460ff16151515158152602001600a820180548060200260200160405190810160405280929190818152602001828054801561222257602002820191906000526020600020905b81548152602001906001019080831161220e575b505050505081525050915050919050565b6006602052816000526040600020602052806000526040600020600091509150508060000154908060010160009054906101000a900460ff16908060020154908060030154908060040160009054906101000a900460ff16908060050154908060060154905087565b6122a4613e8a565b73ffffffffffffffffffffffffffffffffffffffff166122c2613403565b73ffffffffffffffffffffffffffffffffffffffff1614612318576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161230f9061508a565b60405180910390fd5b600047905060008111612360576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123579061500a565b60405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156123c8573d6000803e3d6000fd5b5050565b6123d4613e8a565b73ffffffffffffffffffffffffffffffffffffffff166123f2613403565b73ffffffffffffffffffffffffffffffffffffffff1614612448576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161243f9061508a565b60405180910390fd5b600061245e600183613e3290919063ffffffff16565b905060016009828154811061249c577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b020160090160006101000a81548160ff021916908315150217905550600060098281548110612500577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b020160090160016101000a81548160ff0219169083151502179055504260098281548110612563577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b0201600601819055506000600982815481106125b4577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b0201600701819055505050565b6125d5613fbb565b60006125eb600184613e3290919063ffffffff16565b9050600a8181548110612627577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600702016040518060e00160405290816000820154815260200160018201548152602001600282015481526020016003820154815260200160048201548152602001600582015481526020016006820180548060200260200160405190810160405280929190818152602001828054801561270157602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190600101908083116126b7575b505050505081525050915050919050565b600080612729600184613e3290919063ffffffff16565b90506127d4600a8281548110612768577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020906007020160020154600a83815481106127b4577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020906007020160040154613e3290919063ffffffff16565b915050919050565b6127e4613e8a565b73ffffffffffffffffffffffffffffffffffffffff16612802613403565b73ffffffffffffffffffffffffffffffffffffffff1614612858576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161284f9061508a565b60405180910390fd5b600061286e600187613e3290919063ffffffff16565b905084600a82815481106128ab577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020906007020160010181905550600084111561291a5783600a8281548110612904577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000209060070201600301819055505b60008311156129745782600a828154811061295e577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000209060070201600401819055505b60008211156129ce5781600a82815481106129b8577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000209060070201600501819055505b505050505050565b6129de613e8a565b73ffffffffffffffffffffffffffffffffffffffff166129fc613403565b73ffffffffffffffffffffffffffffffffffffffff1614612a52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a499061508a565b60405180910390fd5b612a5c6000613e92565b565b612a66613e8a565b73ffffffffffffffffffffffffffffffffffffffff16612a84613403565b73ffffffffffffffffffffffffffffffffffffffff1614612ada576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ad19061508a565b60405180910390fd5b6000612af56001600a80549050613e7490919063ffffffff16565b9050600a6040518060e0016040528083815260200187815260200160008152602001868152602001858152602001848152602001600067ffffffffffffffff811115612b6a577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051908082528060200260200182016040528015612b985781602001602082028036833780820191505090505b508152509080600181540180825580915050600190039060005260206000209060070201600090919091909150600082015181600001556020820151816001015560408201518160020155606082015181600301556080820151816004015560a0820151816005015560c0820151816006019080519060200190612c1d929190613ff8565b5050506000612c36600187613e3290919063ffffffff16565b905060098181548110612c72577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b0201600a01829080600181540180825580915050600190039060005260206000200160009091909190915055505050505050565b60026001541415612cf8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612cef9061512a565b60405180910390fd5b60026001819055506000612d16600183613e3290919063ffffffff16565b9050600160098281548110612d54577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b02016008015414612da6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d9d9061510a565b60405180910390fd5b600260098281548110612de2577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b0201600301541415612e4457612e04338361342c565b612e43576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e3a906150ea565b60405180910390fd5b5b612eed60098281548110612e81577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b02016005015460098381548110612ecd577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b020160020154613e7490919063ffffffff16565b4211612f2e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f259061506a565b60405180910390fd5b6000600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020600701805480602002602001604051908101604052809291908181526020018280548015612fcd57602002820191906000526020600020905b815481526020019060010190808311612fb9575b505050505090506000815190506006600083600081518110613018577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160009054906101000a900460ff16156130bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130b39061502a565b60405180910390fd5b60005b818110156132dc576000838281518110613102577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015190506007600082815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156132c85760006006600083815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600601549050600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f242432a303385856040518563ffffffff1660e01b81526004016132289493929190614f1d565b600060405180830381600087803b15801561324257600080fd5b505af1158015613256573d6000803e3d6000fd5b5050505060016006600084815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160006101000a81548160ff021916908315150217905550505b5080806132d490615662565b9150506130bf565b505050506001808190555050565b6060600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002060070180548060200260200160405190810160405280929190818152602001828054801561338957602002820191906000526020600020905b815481526020019060010190808311613375575b5050505050905092915050565b6000806133ad600184613e3290919063ffffffff16565b9050600a81815481106133e9577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b906000526020600020906007020160040154915050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600080613443600184613e3290919063ffffffff16565b9050600060098281548110613481577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b0201600a018054806020026020016040519081016040528092919081815260200182805480156134dc57602002820191906000526020600020905b8154815260200190600101908083116134c8575b505050505090506006600082600081518110613521577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900460ff169250505092915050565b613597613e8a565b73ffffffffffffffffffffffffffffffffffffffff166135b5613403565b73ffffffffffffffffffffffffffffffffffffffff161461360b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016136029061508a565b60405180910390fd5b60096040518061018001604052806136326001600980549050613e7490919063ffffffff16565b81526020018881526020018781526020018681526020018581526020018481526020016000815260200160008152602001838152602001600115158152602001600015158152602001600067ffffffffffffffff8111156136bc577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040519080825280602002602001820160405280156136ea5781602001602082028036833780820191505090505b5081525090806001815401808255809150506001900390600052602060002090600b0201600090919091909150600082015181600001556020820151816001015560408201518160020155606082015181600301556080820151816004015560a0820151816005015560c0820151816006015560e0820151816007015561010082015181600801556101208201518160090160006101000a81548160ff0219169083151502179055506101408201518160090160016101000a81548160ff02191690831515021790555061016082015181600a0190805190602001906137d1929190614082565b505050505050505050565b6137e4613e8a565b73ffffffffffffffffffffffffffffffffffffffff16613802613403565b73ffffffffffffffffffffffffffffffffffffffff1614613858576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161384f9061508a565b60405180910390fd5b80600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6138c8613e8a565b73ffffffffffffffffffffffffffffffffffffffff166138e6613403565b73ffffffffffffffffffffffffffffffffffffffff161461393c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016139339061508a565b60405180910390fd5b6000613952600183613e3290919063ffffffff16565b9050600060098281548110613990577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002090600b0201600a018054806020026020016040519081016040528092919081815260200182805480156139eb57602002820191906000526020600020905b8154815260200190600101908083116139d7575b5050505050905060008151905060005b81811015613b78576000838281518110613a3e577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101519050856006600083815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018190555060016006600083815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160006101000a81548160ff021916908315150217905550426006600083815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020181905550508080613b7090615662565b9150506139fb565b505050505050565b600063bc197c8160e01b905095945050505050565b8073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401613c0d9190614ed9565b60206040518083038186803b158015613c2557600080fd5b505afa158015613c39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613c5d91906146c6565b6040518363ffffffff1660e01b8152600401613c7a929190614ef4565b602060405180830381600087803b158015613c9457600080fd5b505af1158015613ca8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ccc9190614622565b5050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60076020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b600063f23a6e6160e01b905095945050505050565b613d42613e8a565b73ffffffffffffffffffffffffffffffffffffffff16613d60613403565b73ffffffffffffffffffffffffffffffffffffffff1614613db6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613dad9061508a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415613e26576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613e1d9061504a565b60405180910390fd5b613e2f81613e92565b50565b60008183613e409190615497565b905092915050565b60008183613e56919061543d565b905092915050565b60008183613e6c919061540c565b905092915050565b60008183613e8291906153b6565b905092915050565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b604051806101800160405280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600015158152602001600015158152602001606081525090565b6040518060e00160405280600081526020016000815260200160008152602001600081526020016000815260200160008152602001606081525090565b828054828255906000526020600020908101928215614071579160200282015b828111156140705782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555091602001919060010190614018565b5b50905061407e91906140cf565b5090565b8280548282559060005260206000209081019282156140be579160200282015b828111156140bd5782518255916020019190600101906140a2565b5b5090506140cb91906140cf565b5090565b5b808211156140e85760008160009055506001016140d0565b5090565b60006140ff6140fa8461527d565b615258565b9050808382526020820190508285602086028201111561411e57600080fd5b60005b8581101561414e57816141348882614202565b845260208401935060208301925050600181019050614121565b5050509392505050565b600061416b614166846152a9565b615258565b9050808382526020820190508285602086028201111561418a57600080fd5b60005b858110156141ba57816141a088826142fe565b84526020840193506020830192505060018101905061418d565b5050509392505050565b60006141d76141d2846152d5565b615258565b9050828152602081018484840111156141ef57600080fd5b6141fa8482856155bd565b509392505050565b6000813590506142118161598d565b92915050565b600081359050614226816159a4565b92915050565b600082601f83011261423d57600080fd5b813561424d8482602086016140ec565b91505092915050565b600082601f83011261426757600080fd5b8135614277848260208601614158565b91505092915050565b60008135905061428f816159bb565b92915050565b6000815190506142a4816159bb565b92915050565b6000813590506142b9816159d2565b92915050565b600082601f8301126142d057600080fd5b81356142e08482602086016141c4565b91505092915050565b6000813590506142f8816159e9565b92915050565b60008135905061430d81615a00565b92915050565b60008151905061432281615a00565b92915050565b60006020828403121561433a57600080fd5b600061434884828501614202565b91505092915050565b60006020828403121561436357600080fd5b600061437184828501614217565b91505092915050565b600080600080600060a0868803121561439257600080fd5b60006143a088828901614202565b95505060206143b188828901614202565b945050604086013567ffffffffffffffff8111156143ce57600080fd5b6143da88828901614256565b935050606086013567ffffffffffffffff8111156143f757600080fd5b61440388828901614256565b925050608086013567ffffffffffffffff81111561442057600080fd5b61442c888289016142bf565b9150509295509295909350565b6000806000806080858703121561444f57600080fd5b600061445d87828801614202565b945050602061446e87828801614202565b935050604061447f878288016142fe565b925050606085013567ffffffffffffffff81111561449c57600080fd5b6144a8878288016142bf565b91505092959194509250565b600080600080600060a086880312156144cc57600080fd5b60006144da88828901614202565b95505060206144eb88828901614202565b94505060406144fc888289016142fe565b935050606061450d888289016142fe565b925050608086013567ffffffffffffffff81111561452a57600080fd5b614536888289016142bf565b9150509295509295909350565b6000806040838503121561455657600080fd5b600061456485828601614202565b9250506020614575858286016142fe565b9150509250929050565b60008060006060848603121561459457600080fd5b60006145a286828701614202565b93505060206145b3868287016142fe565b92505060406145c486828701614280565b9150509250925092565b600080604083850312156145e157600080fd5b600083013567ffffffffffffffff8111156145fb57600080fd5b6146078582860161422c565b9250506020614618858286016142fe565b9150509250929050565b60006020828403121561463457600080fd5b600061464284828501614295565b91505092915050565b60006020828403121561465d57600080fd5b600061466b848285016142aa565b91505092915050565b60006020828403121561468657600080fd5b6000614694848285016142e9565b91505092915050565b6000602082840312156146af57600080fd5b60006146bd848285016142fe565b91505092915050565b6000602082840312156146d857600080fd5b60006146e684828501614313565b91505092915050565b6000806040838503121561470257600080fd5b6000614710858286016142fe565b925050602061472185828601614202565b9150509250929050565b6000806040838503121561473e57600080fd5b600061474c858286016142fe565b925050602061475d858286016142fe565b9150509250929050565b6000806000806080858703121561477d57600080fd5b600061478b878288016142fe565b945050602061479c878288016142fe565b93505060406147ad878288016142fe565b92505060606147be878288016142fe565b91505092959194509250565b600080600080600060a086880312156147e257600080fd5b60006147f0888289016142fe565b9550506020614801888289016142fe565b9450506040614812888289016142fe565b9350506060614823888289016142fe565b9250506080614834888289016142fe565b9150509295509295909350565b60008060008060008060c0878903121561485a57600080fd5b600061486889828a016142fe565b965050602061487989828a016142fe565b955050604061488a89828a016142fe565b945050606061489b89828a016142fe565b93505060806148ac89828a016142fe565b92505060a06148bd89828a016142fe565b9150509295509295509295565b600080600080600080600060e0888a0312156148e557600080fd5b60006148f38a828b016142fe565b97505060206149048a828b016142fe565b96505060406149158a828b016142fe565b95505060606149268a828b016142fe565b94505060806149378a828b016142fe565b93505060a06149488a828b016142fe565b92505060c06149598a828b016142fe565b91505092959891949750929550565b600061497483836149a7565b60208301905092915050565b600061498c8383614ebb565b60208301905092915050565b6149a181615563565b82525050565b6149b0816154cb565b82525050565b6149bf816154cb565b82525050565b60006149d082615326565b6149da8185615361565b93506149e583615306565b8060005b83811015614a165781516149fd8882614968565b9750614a0883615347565b9250506001810190506149e9565b5085935050505092915050565b6000614a2e82615331565b614a388185615372565b9350614a4383615316565b8060005b83811015614a74578151614a5b8882614980565b9750614a6683615354565b925050600181019050614a47565b5085935050505092915050565b6000614a8c82615331565b614a968185615383565b9350614aa183615316565b8060005b83811015614ad2578151614ab98882614980565b9750614ac483615354565b925050600181019050614aa5565b5085935050505092915050565b614ae8816154ef565b82525050565b614af7816154ef565b82525050565b614b06816154fb565b82525050565b614b1581615575565b82525050565b6000614b268261533c565b614b3081856153a5565b9350614b408185602086016155cc565b614b4981615767565b840191505092915050565b6000614b61600f836153a5565b9150614b6c82615778565b602082019050919050565b6000614b846014836153a5565b9150614b8f826157a1565b602082019050919050565b6000614ba76026836153a5565b9150614bb2826157ca565b604082019050919050565b6000614bca601d836153a5565b9150614bd582615819565b602082019050919050565b6000614bed6020836153a5565b9150614bf882615842565b602082019050919050565b6000614c10600083615394565b9150614c1b8261586b565b600082019050919050565b6000614c336012836153a5565b9150614c3e8261586e565b602082019050919050565b6000614c56600c836153a5565b9150614c6182615897565b602082019050919050565b6000614c79600c836153a5565b9150614c84826158c0565b602082019050919050565b6000614c9c600d836153a5565b9150614ca7826158e9565b602082019050919050565b6000614cbf601f836153a5565b9150614cca82615912565b602082019050919050565b6000614ce2600c836153a5565b9150614ced8261593b565b602082019050919050565b6000614d05600c836153a5565b9150614d1082615964565b602082019050919050565b600061018083016000830151614d346000860182614ebb565b506020830151614d476020860182614ebb565b506040830151614d5a6040860182614ebb565b506060830151614d6d6060860182614ebb565b506080830151614d806080860182614ebb565b5060a0830151614d9360a0860182614ebb565b5060c0830151614da660c0860182614ebb565b5060e0830151614db960e0860182614ebb565b50610100830151614dce610100860182614ebb565b50610120830151614de3610120860182614adf565b50610140830151614df8610140860182614adf565b50610160830151848203610160860152614e128282614a23565b9150508091505092915050565b600060e083016000830151614e376000860182614ebb565b506020830151614e4a6020860182614ebb565b506040830151614e5d6040860182614ebb565b506060830151614e706060860182614ebb565b506080830151614e836080860182614ebb565b5060a0830151614e9660a0860182614ebb565b5060c083015184820360c0860152614eae82826149c5565b9150508091505092915050565b614ec481615559565b82525050565b614ed381615559565b82525050565b6000602082019050614eee60008301846149b6565b92915050565b6000604082019050614f096000830185614998565b614f166020830184614eca565b9392505050565b600060a082019050614f3260008301876149b6565b614f3f60208301866149b6565b614f4c6040830185614eca565b614f596060830184614eca565b8181036080830152614f6a81614c03565b905095945050505050565b60006020820190508181036000830152614f8f8184614a81565b905092915050565b6000602082019050614fac6000830184614aee565b92915050565b6000602082019050614fc76000830184614afd565b92915050565b6000602082019050614fe26000830184614b0c565b92915050565b600060208201905081810360008301526150028184614b1b565b905092915050565b6000602082019050818103600083015261502381614b54565b9050919050565b6000602082019050818103600083015261504381614b77565b9050919050565b6000602082019050818103600083015261506381614b9a565b9050919050565b6000602082019050818103600083015261508381614bbd565b9050919050565b600060208201905081810360008301526150a381614be0565b9050919050565b600060208201905081810360008301526150c381614c26565b9050919050565b600060208201905081810360008301526150e381614c49565b9050919050565b6000602082019050818103600083015261510381614c6c565b9050919050565b6000602082019050818103600083015261512381614c8f565b9050919050565b6000602082019050818103600083015261514381614cb2565b9050919050565b6000602082019050818103600083015261516381614cd5565b9050919050565b6000602082019050818103600083015261518381614cf8565b9050919050565b600060208201905081810360008301526151a48184614d1b565b905092915050565b600060208201905081810360008301526151c68184614e1f565b905092915050565b60006020820190506151e36000830184614eca565b92915050565b600060e0820190506151fe600083018a614eca565b61520b6020830189614aee565b6152186040830188614eca565b6152256060830187614eca565b6152326080830186614aee565b61523f60a0830185614eca565b61524c60c0830184614eca565b98975050505050505050565b6000615262615273565b905061526e8282615631565b919050565b6000604051905090565b600067ffffffffffffffff82111561529857615297615738565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156152c4576152c3615738565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156152f0576152ef615738565b5b6152f982615767565b9050602081019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b60006153c182615559565b91506153cc83615559565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115615401576154006156ab565b5b828201905092915050565b600061541782615559565b915061542283615559565b925082615432576154316156da565b5b828204905092915050565b600061544882615559565b915061545383615559565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561548c5761548b6156ab565b5b828202905092915050565b60006154a282615559565b91506154ad83615559565b9250828210156154c0576154bf6156ab565b5b828203905092915050565b60006154d682615539565b9050919050565b60006154e882615539565b9050919050565b60008115159050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6000615532826154cb565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600061556e82615599565b9050919050565b600061558082615587565b9050919050565b600061559282615539565b9050919050565b60006155a4826155ab565b9050919050565b60006155b682615539565b9050919050565b82818337600083830152505050565b60005b838110156155ea5780820151818401526020810190506155cf565b838111156155f9576000848401525b50505050565b6000600282049050600182168061561757607f821691505b6020821081141561562b5761562a615709565b5b50919050565b61563a82615767565b810181811067ffffffffffffffff8211171561565957615658615738565b5b80604052505050565b600061566d82615559565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156156a05761569f6156ab565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f6e6f7420656e6f7567682066756e640000000000000000000000000000000000600082015250565b7f7573657220616c726561647920636c61696d6564000000000000000000000000600082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f6e6f74206f6e2074696d6520666f7220636c61696d696e67204e465473000000600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b50565b7f696e73756666696369656e742066756e64730000000000000000000000000000600082015250565b7f494e4f20736f6c64206f75740000000000000000000000000000000000000000600082015250565b7f696e76616c696420757365720000000000000000000000000000000000000000600082015250565b7f696e76616c696420636c61696d00000000000000000000000000000000000000600082015250565b7f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00600082015250565b7f696e76616c69642074696d650000000000000000000000000000000000000000600082015250565b7f696e76616c696420706f6f6c0000000000000000000000000000000000000000600082015250565b615996816154cb565b81146159a157600080fd5b50565b6159ad816154dd565b81146159b857600080fd5b50565b6159c4816154ef565b81146159cf57600080fd5b50565b6159db816154fb565b81146159e657600080fd5b50565b6159f281615527565b81146159fd57600080fd5b50565b615a0981615559565b8114615a1457600080fd5b5056fea26469706673582212205886b1feda1adea9bf0d4b71d282ee52dc0fafbd24f34754a3d1d591b405415d64736f6c63430008020033000000000000000000000000071bca02b8e5374bed8a2fd75b27ad77751b7f3900000000000000000000000057866ed63ca5f9744cef9aa270bd1f1dce935831000000000000000000000000bb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c