13 txs
131 calls
constructor
constructor(address _uniswapRouter, address _marketing, address _developer)
functions
_isExcludedFromFee
viewfunction _isExcludedFromFee(address) view returns (bool)
allowance
viewfunction allowance(address owner, address spender) view returns (uint256)
balanceOf
viewfunction balanceOf(address account) view returns (uint256)
decimals
viewfunction decimals() view returns (uint8)
developer
viewfunction developer() view returns (address)
excludedFromRewards
viewfunction excludedFromRewards(address) view returns (bool)
getDistributionState
viewfunction getDistributionState() view returns (uint256 contractBalance, uint256 totalAvailable, uint256 holderTokens, uint256 lastIdx, uint256 minIdx)
getHolderByIndex
viewfunction getHolderByIndex(uint256 index) view returns (address holderAddress, uint256 balance, uint256 staked)
getHolderInfo
viewfunction getHolderInfo(address holder) view returns (uint256 index, uint256 amountToClaim, uint256 lastClaimedTimestamp, uint256 balance, uint256 stakedAmount, bool excluded)
holdersList
viewfunction holdersList(address) view returns (uint256 index, uint256 amountToClaim, uint256 lastClaimedTimestamp)
indexToHolder
viewfunction indexToHolder(uint256) view returns (address)
marketing
viewfunction marketing() view returns (address)
name
viewfunction name() view returns (string)
owner
viewfunction owner() view returns (address)
staking
viewfunction staking() view returns (address)
symbol
viewfunction symbol() view returns (string)
totalAvailableToClaim
viewfunction totalAvailableToClaim() view returns (uint256)
totalHoldedTokens
viewfunction totalHoldedTokens() view returns (uint256)
totalSupply
viewfunction totalSupply() view returns (uint256)
tradingOpen
viewfunction tradingOpen() view returns (bool)
approve
nonpayablefunction approve(address spender, uint256 value) returns (bool)
claim
nonpayablefunction claim()
excludeFromRewards
nonpayablefunction excludeFromRewards(address _address, bool _isExclude)
excludeFromTax
nonpayablefunction excludeFromTax(address _address, bool _isExclude)
openTrading
nonpayablefunction openTrading()
renounceOwnership
nonpayablefunction renounceOwnership()
setStakingAddress
nonpayablefunction setStakingAddress(address _address)
transfer
nonpayablefunction transfer(address to, uint256 value) returns (bool)
transferFrom
nonpayablefunction transferFrom(address from, address to, uint256 value) returns (bool)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
updateStakedBalance
nonpayablefunction updateStakedBalance(address user, uint256 amount)
events
Approval
event Approval(address indexed owner, address indexed spender, uint256 value)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
RewardsClaimed
event RewardsClaimed(address indexed user, uint256 amount)
Transfer
event Transfer(address indexed from, address indexed to, uint256 value)
UpdateExcludedFromRewards
event UpdateExcludedFromRewards(address indexed account, bool isExcluded)
UpdateExcludedFromTax
event UpdateExcludedFromTax(address indexed account, bool isExcluded)
errors
ERC20InsufficientAllowance
error ERC20InsufficientAllowance(address spender, uint256 allowance, uint256 needed)
ERC20InsufficientBalance
error ERC20InsufficientBalance(address sender, uint256 balance, uint256 needed)
ERC20InvalidApprover
error ERC20InvalidApprover(address approver)
ERC20InvalidReceiver
error ERC20InvalidReceiver(address receiver)
ERC20InvalidSender
error ERC20InvalidSender(address sender)
ERC20InvalidSpender
error ERC20InvalidSpender(address spender)
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
ReentrancyGuardReentrantCall
error ReentrancyGuardReentrantCall()
creation bytecode
0x60e0604052735e325eda8064b456f4781070c0738d849c824258600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507389f30783108e2f9191db4a44ae2a516327c99575600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555069065a4da25d3016c00000600c556000600d556000600e556000600f5560006010556000601660006101000a81548160ff0219169083151502179055506000601660016101000a81548160ff0219169083151502179055503480156200011357600080fd5b506040516200586538038062005865833981810160405281019062000139919062000c8a565b336040518060400160405280600781526020017f41756469744149000000000000000000000000000000000000000000000000008152506040518060400160405280600581526020017f41554441490000000000000000000000000000000000000000000000000000008152508160039081620001b7919062000f60565b508060049081620001c9919062000f60565b505050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603620002415760006040517f1e4fbdf700000000000000000000000000000000000000000000000000000000815260040162000238919062001058565b60405180910390fd5b62000252816200065760201b60201c565b506001600681905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620002cd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002c490620010fc565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036200033f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620003369062001194565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603620003b1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620003a8906200122c565b60405180910390fd5b82600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff168152505062000443336a52b7d2dcc80cd2e40000006200071d60201b60201c565b60016011600062000459620007aa60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160116000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506200059e62000590620007aa60201b60201c565b6001620007d460201b60201c565b620005d3600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166001620007d460201b60201c565b620005e6306001620007d460201b60201c565b8173ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff1681525050505050620013cf565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620007925760006040517fec442f0500000000000000000000000000000000000000000000000000000000815260040162000789919062001058565b60405180910390fd5b620007a6600083836200090160201b60201c565b5050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b620007e462000b3160201b60201c565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000856576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200084d906200129e565b60405180910390fd5b80601560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f3453aad620edfb737e1025fc5b238de98ab421a458d3715761a917b22d3afa0f82604051620008f59190620012dd565b60405180910390a25050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603620009575780600260008282546200094a919062001329565b9250508190555062000a2d565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015620009e6578381836040517fe450d38c000000000000000000000000000000000000000000000000000000008152600401620009dd9392919062001375565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000a78578060026000828254039250508190555062000ac5565b806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000b249190620013b2565b60405180910390a3505050565b62000b4162000bd360201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1662000b67620007aa60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff161462000bd15762000b9362000bd360201b60201c565b6040517f118cdaa700000000000000000000000000000000000000000000000000000000815260040162000bc8919062001058565b60405180910390fd5b565b600033905090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000c0d8262000be0565b9050919050565b62000c1f8162000c00565b811462000c2b57600080fd5b50565b60008151905062000c3f8162000c14565b92915050565b600062000c528262000be0565b9050919050565b62000c648162000c45565b811462000c7057600080fd5b50565b60008151905062000c848162000c59565b92915050565b60008060006060848603121562000ca65762000ca562000bdb565b5b600062000cb68682870162000c2e565b935050602062000cc98682870162000c73565b925050604062000cdc8682870162000c73565b9150509250925092565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000d6857607f821691505b60208210810362000d7e5762000d7d62000d20565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830262000de87fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000da9565b62000df4868362000da9565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600062000e4162000e3b62000e358462000e0c565b62000e16565b62000e0c565b9050919050565b6000819050919050565b62000e5d8362000e20565b62000e7562000e6c8262000e48565b84845462000db6565b825550505050565b600090565b62000e8c62000e7d565b62000e9981848462000e52565b505050565b5b8181101562000ec15762000eb560008262000e82565b60018101905062000e9f565b5050565b601f82111562000f105762000eda8162000d84565b62000ee58462000d99565b8101602085101562000ef5578190505b62000f0d62000f048562000d99565b83018262000e9e565b50505b505050565b600082821c905092915050565b600062000f356000198460080262000f15565b1980831691505092915050565b600062000f50838362000f22565b9150826002028217905092915050565b62000f6b8262000ce6565b67ffffffffffffffff81111562000f875762000f8662000cf1565b5b62000f93825462000d4f565b62000fa082828562000ec5565b600060209050601f83116001811462000fd8576000841562000fc3578287015190505b62000fcf858262000f42565b8655506200103f565b601f19841662000fe88662000d84565b60005b82811015620010125784890151825560018201915060208501945060208101905062000feb565b868310156200103257848901516200102e601f89168262000f22565b8355505b6001600288020188555050505b505050505050565b620010528162000c00565b82525050565b60006020820190506200106f600083018462001047565b92915050565b600082825260208201905092915050565b7f6d61726b6574696e672061646472657373207a65726f2061646472657373206560008201527f7863657074696f6e000000000000000000000000000000000000000000000000602082015250565b6000620010e460288362001075565b9150620010f18262001086565b604082019050919050565b600060208201905081810360008301526200111781620010d5565b9050919050565b7f646576656c6f7065722061646472657373207a65726f2061646472657373206560008201527f7863657074696f6e000000000000000000000000000000000000000000000000602082015250565b60006200117c60288362001075565b915062001189826200111e565b604082019050919050565b60006020820190508181036000830152620011af816200116d565b9050919050565b7f556e697377617020726f75746572207a65726f2061646472657373206578636560008201527f7074696f6e000000000000000000000000000000000000000000000000000000602082015250565b60006200121460258362001075565b91506200122182620011b6565b604082019050919050565b60006020820190508181036000830152620012478162001205565b9050919050565b7f6164647265737320300000000000000000000000000000000000000000000000600082015250565b60006200128660098362001075565b915062001293826200124e565b602082019050919050565b60006020820190508181036000830152620012b98162001277565b9050919050565b60008115159050919050565b620012d781620012c0565b82525050565b6000602082019050620012f46000830184620012cc565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000620013368262000e0c565b9150620013438362000e0c565b92508282019050808211156200135e576200135d620012fa565b5b92915050565b6200136f8162000e0c565b82525050565b60006060820190506200138c600083018662001047565b6200139b602083018562001364565b620013aa604083018462001364565b949350505050565b6000602082019050620013c9600083018462001364565b92915050565b60805160a05160c0516144586200140d6000396000818161117b01526127440152600081816109bd01526128100152600061250401526144586000f3fe6080604052600436106101dc5760003560e01c80638dec4af311610102578063cb8106f411610095578063f2fde38b11610064578063f2fde38b146106ed578063f4e0d9ac14610716578063f82f235f1461073f578063ffb54a991461077c576101e3565b8063cb8106f414610617578063dd62ed3e14610656578063e291a72914610693578063ee56977e146106be576101e3565b8063c6a30647116100d1578063c6a306471461056d578063c9567bf914610596578063ca4b208b146105ad578063cb35ac0b146105d8576101e3565b80638dec4af31461049f57806395d89b41146104dc578063a33b273714610507578063a9059cbb14610530576101e3565b8063313ce5671161017a57806370a082311161014957806370a08231146103e3578063715018a614610420578063768dc710146104375780638da5cb5b14610474576101e3565b8063313ce567146103345780634cf088d91461035f5780634e71d92d1461038a57806354e4067a146103a1576101e3565b806323b872dd116101b657806323b872dd1461027857806329451729146102b55780632ad4cab7146102e05780632d3e474a14610309576101e3565b806306fdde03146101e5578063095ea7b31461021057806318160ddd1461024d576101e3565b366101e357005b005b3480156101f157600080fd5b506101fa6107a7565b60405161020791906135e0565b60405180910390f35b34801561021c57600080fd5b506102376004803603810190610232919061369b565b610839565b60405161024491906136f6565b60405180910390f35b34801561025957600080fd5b5061026261085c565b60405161026f9190613720565b60405180910390f35b34801561028457600080fd5b5061029f600480360381019061029a919061373b565b610866565b6040516102ac91906136f6565b60405180910390f35b3480156102c157600080fd5b506102ca610895565b6040516102d79190613720565b60405180910390f35b3480156102ec57600080fd5b50610307600480360381019061030291906137ba565b61089b565b005b34801561031557600080fd5b5061031e6109bb565b60405161032b919061381b565b60405180910390f35b34801561034057600080fd5b506103496109df565b6040516103569190613852565b60405180910390f35b34801561036b57600080fd5b506103746109e8565b604051610381919061387c565b60405180910390f35b34801561039657600080fd5b5061039f610a0e565b005b3480156103ad57600080fd5b506103c860048036038101906103c39190613897565b610c4e565b6040516103da969594939291906138c4565b60405180910390f35b3480156103ef57600080fd5b5061040a60048036038101906104059190613897565b610d7e565b6040516104179190613720565b60405180910390f35b34801561042c57600080fd5b50610435610dc6565b005b34801561044357600080fd5b5061045e60048036038101906104599190613897565b610dda565b60405161046b91906136f6565b60405180910390f35b34801561048057600080fd5b50610489610dfa565b604051610496919061387c565b60405180910390f35b3480156104ab57600080fd5b506104c660048036038101906104c19190613925565b610e24565b6040516104d3919061387c565b60405180910390f35b3480156104e857600080fd5b506104f1610e57565b6040516104fe91906135e0565b60405180910390f35b34801561051357600080fd5b5061052e6004803603810190610529919061369b565b610ee9565b005b34801561053c57600080fd5b506105576004803603810190610552919061369b565b610fc1565b60405161056491906136f6565b60405180910390f35b34801561057957600080fd5b50610594600480360381019061058f91906137ba565b610fe4565b005b3480156105a257600080fd5b506105ab611104565b005b3480156105b957600080fd5b506105c2611179565b6040516105cf919061381b565b60405180910390f35b3480156105e457600080fd5b506105ff60048036038101906105fa9190613897565b61119d565b60405161060e93929190613952565b60405180910390f35b34801561062357600080fd5b5061063e60048036038101906106399190613925565b6111c7565b60405161064d93929190613989565b60405180910390f35b34801561066257600080fd5b5061067d600480360381019061067891906139c0565b6112d3565b60405161068a9190613720565b60405180910390f35b34801561069f57600080fd5b506106a861135a565b6040516106b59190613720565b60405180910390f35b3480156106ca57600080fd5b506106d3611360565b6040516106e4959493929190613a00565b60405180910390f35b3480156106f957600080fd5b50610714600480360381019061070f9190613897565b611386565b005b34801561072257600080fd5b5061073d60048036038101906107389190613897565b61140c565b005b34801561074b57600080fd5b5061076660048036038101906107619190613897565b611577565b60405161077391906136f6565b60405180910390f35b34801561078857600080fd5b50610791611597565b60405161079e91906136f6565b60405180910390f35b6060600380546107b690613a82565b80601f01602080910402602001604051908101604052809291908181526020018280546107e290613a82565b801561082f5780601f106108045761010080835404028352916020019161082f565b820191906000526020600020905b81548152906001019060200180831161081257829003601f168201915b5050505050905090565b6000806108446115aa565b90506108518185856115b2565b600191505092915050565b6000600254905090565b6000806108716115aa565b905061087e8582856115c4565b610889858585611658565b60019150509392505050565b600f5481565b6108a3611f88565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610912576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161090990613aff565b60405180910390fd5b80601560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f3453aad620edfb737e1025fc5b238de98ab421a458d3715761a917b22d3afa0f826040516109af91906136f6565b60405180910390a25050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60006012905090565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610a1661200f565b6000601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154905060008111610aa0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a9790613b6b565b60405180910390fd5b6000601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018190555042601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002018190555080600f6000828254610b419190613bba565b9250508190555060003373ffffffffffffffffffffffffffffffffffffffff1682604051610b6e90613c1f565b60006040518083038185875af1925050503d8060008114610bab576040519150601f19603f3d011682016040523d82523d6000602084013e610bb0565b606091505b5050905080610bf4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610beb90613c80565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff167ffc30cddea38e2bf4d6ea7d3f9ed3b6ad7f176419f4963bd81318067a4aee73fe83604051610c3a9190613720565b60405180910390a25050610c4c612055565b565b6000806000806000806000601360008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060405180606001604052908160008201548152602001600182015481526020016002820154815250509050806000015181602001518260400151610cdb8b610d7e565b601260008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054601560008e73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169650965096509650965096505091939550919395565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610dce611f88565b610dd8600061205f565b565b60116020528060005260406000206000915054906101000a900460ff1681565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60146020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b606060048054610e6690613a82565b80601f0160208091040260200160405190810160405280929190818152602001828054610e9290613a82565b8015610edf5780601f10610eb457610100808354040283529160200191610edf565b820191906000526020600020905b815481529060010190602001808311610ec257829003601f168201915b5050505050905090565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610f79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f7090613d12565b60405180910390fd5b80601260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b600080610fcc6115aa565b9050610fd9818585611658565b600191505092915050565b610fec611f88565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361105b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161105290613aff565b60405180910390fd5b80601160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167fbcb0010c8adfbd183728fee65133576fc1f54f36e7e7911a4323d90157340ee3826040516110f891906136f6565b60405180910390a25050565b61110c611f88565b601660019054906101000a900460ff161561115c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115390613d7e565b60405180910390fd5b6001601660016101000a81548160ff021916908315150217905550565b7f000000000000000000000000000000000000000000000000000000000000000081565b60136020528060005260406000206000915090508060000154908060010154908060020154905083565b6000806000806014600086815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905080600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361123f576000611249565b61124882610d7e565b5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036112845760006112c5565b601260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020545b935093509350509193909250565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60105481565b600080600080600047600f54601054600d54600e54945094509450945094509091929394565b61138e611f88565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036114005760006040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081526004016113f7919061387c565b60405180910390fd5b6114098161205f565b50565b611414611f88565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611483576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161147a90613e10565b60405180910390fd5b80600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001601560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60156020528060005260406000206000915054906101000a900460ff1681565b601660019054906101000a900460ff1681565b600033905090565b6115bf8383836001612125565b505050565b60006115d084846112d3565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146116525781811015611642578281836040517ffb8f41b200000000000000000000000000000000000000000000000000000000815260040161163993929190613989565b60405180910390fd5b61165184848484036000612125565b5b50505050565b6000811161169b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161169290613ea2565b60405180910390fd5b806116a584610d7e565b10156116e6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116dd90613f0e565b60405180910390fd5b600080479050600073ffffffffffffffffffffffffffffffffffffffff16600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff160361191f57600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156117af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117d39190613f43565b73ffffffffffffffffffffffffffffffffffffffff1663e6a4390530600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561185c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118809190613f43565b6040518363ffffffff1660e01b815260040161189d929190613f70565b602060405180830381865afa1580156118ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118de9190613f43565b600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161480156119c95750600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b611cb357601160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611a6e5750601160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b80611ac65750600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b611cb257600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161480611b735750600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16145b15611bd057601660019054906101000a900460ff16611bc7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bbe90613fe5565b60405180910390fd5b60059150611cb1565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611cb057601660019054906101000a900460ff16611c74576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c6b90613fe5565b60405180910390fd5b600591506000611c8330610d7e565b9050601660009054906101000a900460ff16611cae57600c54811115611cad57611cac816122fc565b5b5b505b5b5b5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611d9e57611d10610dfa565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611d995782601260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611d919190614005565b925050819055505b611f08565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603611f0757611dfb610dfa565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611f065782601260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611eaf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ea690614085565b60405180910390fd5b82601260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611efe9190613bba565b925050819055505b5b5b600060648385611f1891906140a5565b611f229190614116565b905060008185611f329190613bba565b9050611f3f878783612595565b6000821115611f5457611f53873084612595565b5b633b9aca00600f5484611f679190613bba565b10611f7557611f74612689565b5b611f7f8787612b7f565b50505050505050565b611f906115aa565b73ffffffffffffffffffffffffffffffffffffffff16611fae610dfa565b73ffffffffffffffffffffffffffffffffffffffff161461200d57611fd16115aa565b6040517f118cdaa7000000000000000000000000000000000000000000000000000000008152600401612004919061387c565b60405180910390fd5b565b60026006540361204b576040517f3ee5aeb500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002600681905550565b6001600681905550565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036121975760006040517fe602df0500000000000000000000000000000000000000000000000000000000815260040161218e919061387c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036122095760006040517f94280d62000000000000000000000000000000000000000000000000000000008152600401612200919061387c565b60405180910390fd5b81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080156122f6578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516122ed9190613720565b60405180910390a35b50505050565b6001601660006101000a81548160ff0219169083151502179055506000600267ffffffffffffffff81111561233457612333614147565b5b6040519080825280602002602001820160405280156123625781602001602082028036833780820191505090505b509050308160008151811061237a57612379614176565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612421573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124459190613f43565b8160018151811061245957612458614176565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506124c030600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846115b2565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947836000847f0000000000000000000000000000000000000000000000000000000000000000426040518663ffffffff1660e01b81526004016125449594939291906142a8565b600060405180830381600087803b15801561255e57600080fd5b505af1158015612572573d6000803e3d6000fd5b50505050506000601660006101000a81548160ff02191690831515021790555050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036126075760006040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081526004016125fe919061387c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036126795760006040517fec442f05000000000000000000000000000000000000000000000000000000008152600401612670919061387c565b60405180910390fd5b61268483838361332b565b505050565b61269161200f565b60004790506000600f54826126a69190613bba565b9050600081116126eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126e29061434e565b60405180910390fd5b600060646028836126fc91906140a5565b6127069190614116565b90506000606460148461271991906140a5565b6127239190614116565b905060008282856127349190613bba565b61273e9190613bba565b905060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168360405161278690613c1f565b60006040518083038185875af1925050503d80600081146127c3576040519150601f19603f3d011682016040523d82523d6000602084013e6127c8565b606091505b505090508061280c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161280390613c80565b60405180910390fd5b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168560405161285290613c1f565b60006040518083038185875af1925050503d806000811461288f576040519150601f19603f3d011682016040523d82523d6000602084013e612894565b606091505b50509050806128d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128cf906143ba565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660146000600d54815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612b6e5782600f60008282546129539190614005565b925050819055506000600e549050600080600e5490505b600d548111612b6357600073ffffffffffffffffffffffffffffffffffffffff166014600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146129e857816129e757809250600191505b5b6000601260006014600085815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612a996014600085815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610d7e565b612aa39190614005565b905060006010548289612ab691906140a5565b612ac09190614116565b905080601360006014600087815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001016000828254612b479190614005565b9250508190555050508080612b5b906143da565b91505061296a565b5081600e8190555050505b50505050505050612b7d612055565b565b600069152d02c7e14af680000090506000600267ffffffffffffffff811115612bab57612baa614147565b5b604051908082528060200260200182016040528015612bd95781602001602082028036833780820191505090505b5090508381600081518110612bf157612bf0614176565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508281600181518110612c4057612c3f614176565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506000600267ffffffffffffffff811115612c9757612c96614147565b5b604051908082528060200260200182016040528015612cc55781602001602082028036833780820191505090505b5090508481600081518110612cdd57612cdc614176565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508381600181518110612d2c57612d2b614176565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060005b600281101561332357600060136000858481518110612d8b57612d8a614176565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101549050600060136000868581518110612dec57612deb614176565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201549050600060136000878681518110612e4d57612e4c614176565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015414612f465760126000858581518110612eaf57612eae614176565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205460106000828254612f039190613bba565b92505081905550612f2d858481518110612f2057612f1f614176565b5b6020026020010151610d7e565b60106000828254612f3e9190613bba565b925050819055505b6014600060136000888781518110612f6157612f60614176565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905560136000868581518110612fef57612fee614176565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600080820160009055600182016000905560028201600090555050856012600086868151811061306457613063614176565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546130ca8786815181106130bd576130bc614176565b5b6020026020010151610d7e565b6130d49190614005565b101580156131465750601560008685815181106130f4576130f3614176565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561330e57600d600081548092919061315e906143da565b91905055506040518060600160405280600d548152602001838152602001828152506013600087868151811061319757613196614176565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000155602082015181600101556040820151816002015590505084838151811061320d5761320c614176565b5b602002602001015160146000600d54815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060006012600086868151811061328157613280614176565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546132e78786815181106132da576132d9614176565b5b6020026020010151610d7e565b6132f19190614005565b905080601060008282546133059190614005565b92505081905550505b5050808061331b906143da565b915050612d69565b505050505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361337d5780600260008282546133719190614005565b92505081905550613450565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015613409578381836040517fe450d38c00000000000000000000000000000000000000000000000000000000815260040161340093929190613989565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361349957806002600082825403925050819055506134e6565b806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516135439190613720565b60405180910390a3505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561358a57808201518184015260208101905061356f565b60008484015250505050565b6000601f19601f8301169050919050565b60006135b282613550565b6135bc818561355b565b93506135cc81856020860161356c565b6135d581613596565b840191505092915050565b600060208201905081810360008301526135fa81846135a7565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061363282613607565b9050919050565b61364281613627565b811461364d57600080fd5b50565b60008135905061365f81613639565b92915050565b6000819050919050565b61367881613665565b811461368357600080fd5b50565b6000813590506136958161366f565b92915050565b600080604083850312156136b2576136b1613602565b5b60006136c085828601613650565b92505060206136d185828601613686565b9150509250929050565b60008115159050919050565b6136f0816136db565b82525050565b600060208201905061370b60008301846136e7565b92915050565b61371a81613665565b82525050565b60006020820190506137356000830184613711565b92915050565b60008060006060848603121561375457613753613602565b5b600061376286828701613650565b935050602061377386828701613650565b925050604061378486828701613686565b9150509250925092565b613797816136db565b81146137a257600080fd5b50565b6000813590506137b48161378e565b92915050565b600080604083850312156137d1576137d0613602565b5b60006137df85828601613650565b92505060206137f0858286016137a5565b9150509250929050565b600061380582613607565b9050919050565b613815816137fa565b82525050565b6000602082019050613830600083018461380c565b92915050565b600060ff82169050919050565b61384c81613836565b82525050565b60006020820190506138676000830184613843565b92915050565b61387681613627565b82525050565b6000602082019050613891600083018461386d565b92915050565b6000602082840312156138ad576138ac613602565b5b60006138bb84828501613650565b91505092915050565b600060c0820190506138d96000830189613711565b6138e66020830188613711565b6138f36040830187613711565b6139006060830186613711565b61390d6080830185613711565b61391a60a08301846136e7565b979650505050505050565b60006020828403121561393b5761393a613602565b5b600061394984828501613686565b91505092915050565b60006060820190506139676000830186613711565b6139746020830185613711565b6139816040830184613711565b949350505050565b600060608201905061399e600083018661386d565b6139ab6020830185613711565b6139b86040830184613711565b949350505050565b600080604083850312156139d7576139d6613602565b5b60006139e585828601613650565b92505060206139f685828601613650565b9150509250929050565b600060a082019050613a156000830188613711565b613a226020830187613711565b613a2f6040830186613711565b613a3c6060830185613711565b613a496080830184613711565b9695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680613a9a57607f821691505b602082108103613aad57613aac613a53565b5b50919050565b7f6164647265737320300000000000000000000000000000000000000000000000600082015250565b6000613ae960098361355b565b9150613af482613ab3565b602082019050919050565b60006020820190508181036000830152613b1881613adc565b9050919050565b7f4e6f7468696e6720746f20636c61696d00000000000000000000000000000000600082015250565b6000613b5560108361355b565b9150613b6082613b1f565b602082019050919050565b60006020820190508181036000830152613b8481613b48565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000613bc582613665565b9150613bd083613665565b9250828203905081811115613be857613be7613b8b565b5b92915050565b600081905092915050565b50565b6000613c09600083613bee565b9150613c1482613bf9565b600082019050919050565b6000613c2a82613bfc565b9150819050919050565b7f646576656c6f706572207472616e73666572206661696c65642e000000000000600082015250565b6000613c6a601a8361355b565b9150613c7582613c34565b602082019050919050565b60006020820190508181036000830152613c9981613c5d565b9050919050565b7f4f6e6c79207374616b696e6720636f6e74726163742063616e2075706461746560008201527f2062616c616e6365210000000000000000000000000000000000000000000000602082015250565b6000613cfc60298361355b565b9150613d0782613ca0565b604082019050919050565b60006020820190508181036000830152613d2b81613cef565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b6000613d6860178361355b565b9150613d7382613d32565b602082019050919050565b60006020820190508181036000830152613d9781613d5b565b9050919050565b7f61646472657373206973206e6f7420666f756e642c2074727920746f20696e7060008201527f75742061646472657373206f66207265616c207374616b696e67000000000000602082015250565b6000613dfa603a8361355b565b9150613e0582613d9e565b604082019050919050565b60006020820190508181036000830152613e2981613ded565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000613e8c60298361355b565b9150613e9782613e30565b604082019050919050565b60006020820190508181036000830152613ebb81613e7f565b9050919050565b7f42616c616e6365206c657373207468616e207472616e73666572000000000000600082015250565b6000613ef8601a8361355b565b9150613f0382613ec2565b602082019050919050565b60006020820190508181036000830152613f2781613eeb565b9050919050565b600081519050613f3d81613639565b92915050565b600060208284031215613f5957613f58613602565b5b6000613f6784828501613f2e565b91505092915050565b6000604082019050613f85600083018561386d565b613f92602083018461386d565b9392505050565b7f54726164696e67206973206e6f74206f70656e20796574000000000000000000600082015250565b6000613fcf60178361355b565b9150613fda82613f99565b602082019050919050565b60006020820190508181036000830152613ffe81613fc2565b9050919050565b600061401082613665565b915061401b83613665565b925082820190508082111561403357614032613b8b565b5b92915050565b7f696e73756666696369656e742062616c616e6365000000000000000000000000600082015250565b600061406f60148361355b565b915061407a82614039565b602082019050919050565b6000602082019050818103600083015261409e81614062565b9050919050565b60006140b082613665565b91506140bb83613665565b92508282026140c981613665565b915082820484148315176140e0576140df613b8b565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061412182613665565b915061412c83613665565b92508261413c5761413b6140e7565b5b828204905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000819050919050565b6000819050919050565b60006141d46141cf6141ca846141a5565b6141af565b613665565b9050919050565b6141e4816141b9565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61421f81613627565b82525050565b60006142318383614216565b60208301905092915050565b6000602082019050919050565b6000614255826141ea565b61425f81856141f5565b935061426a83614206565b8060005b8381101561429b5781516142828882614225565b975061428d8361423d565b92505060018101905061426e565b5085935050505092915050565b600060a0820190506142bd6000830188613711565b6142ca60208301876141db565b81810360408301526142dc818661424a565b90506142eb606083018561386d565b6142f86080830184613711565b9695505050505050565b7f436f6e74726163742062616c616e6365206973207a65726f0000000000000000600082015250565b600061433860188361355b565b915061434382614302565b602082019050919050565b600060208201905081810360008301526143678161432b565b9050919050565b7f6d61726b6574696e67207472616e73666572206661696c65642e000000000000600082015250565b60006143a4601a8361355b565b91506143af8261436e565b602082019050919050565b600060208201905081810360008301526143d381614397565b9050919050565b60006143e582613665565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361441757614416613b8b565b5b60018201905091905056fea26469706673582212201662ebbbaef7dbfccb5964d8351a7e607245a995eca3c1f45a959edb742f2d2164736f6c634300081400330000000000000000000000004752ba5dbc23f44d87826276bf6fd6b1c372ad2400000000000000000000000082503946e026e9f3c82a5a494e6f27fbfd3f735000000000000000000000000082503946e026e9f3c82a5a494e6f27fbfd3f7350