0 txs
0 calls
constructor
constructor(string _n, string _s, uint8 _d, uint256 _ts, uint256 _tax, uint256 _bb, uint256 _mkt, address _ma)
functions
_maxTxAmount
viewfunction _maxTxAmount() view returns (uint256)
_taxFee
viewfunction _taxFee() view returns (uint256)
allowance
viewfunction allowance(address owner, address spender) view returns (uint256)
balanceOf
viewfunction balanceOf(address account) view returns (uint256)
buyBackEnabled
viewfunction buyBackEnabled() view returns (bool)
buybackFee
viewfunction buybackFee() view returns (uint256)
buyBackUpperLimitAmount
viewfunction buyBackUpperLimitAmount() view returns (uint256)
deadAddress
viewfunction deadAddress() view returns (address)
decimals
viewfunction decimals() view returns (uint8)
getTime
viewfunction getTime() view returns (uint256)
getUnlockTime
viewfunction getUnlockTime() view returns (uint256)
isExcludedFromFee
viewfunction isExcludedFromFee(address account) view returns (bool)
isExcludedFromReward
viewfunction isExcludedFromReward(address account) view returns (bool)
marketingAddress
viewfunction marketingAddress() view returns (address)
marketingFee
viewfunction marketingFee() view returns (uint256)
minimumTokensBeforeSwapAmount
viewfunction minimumTokensBeforeSwapAmount() view returns (uint256)
name
viewfunction name() view returns (string)
owner
viewfunction owner() view returns (address)
reflectionFromToken
viewfunction reflectionFromToken(uint256 tAmount, bool deductTransferFee) view returns (uint256)
swapAndLiquifyEnabled
viewfunction swapAndLiquifyEnabled() view returns (bool)
symbol
viewfunction symbol() view returns (string)
tokenFromReflection
viewfunction tokenFromReflection(uint256 rAmount) view returns (uint256)
totalFees
viewfunction totalFees() view returns (uint256)
totalSupply
viewfunction totalSupply() view returns (uint256)
uniswapV2Pair
viewfunction uniswapV2Pair() view returns (address)
uniswapV2Router
viewfunction uniswapV2Router() view returns (address)
approve
nonpayablefunction approve(address spender, uint256 amount) returns (bool)
decreaseAllowance
nonpayablefunction decreaseAllowance(address spender, uint256 subtractedValue) returns (bool)
deliver
nonpayablefunction deliver(uint256 tAmount)
excludeFromFee
nonpayablefunction excludeFromFee(address account)
excludeFromReward
nonpayablefunction excludeFromReward(address account)
includeInFee
nonpayablefunction includeInFee(address account)
includeInReward
nonpayablefunction includeInReward(address account)
increaseAllowance
nonpayablefunction increaseAllowance(address spender, uint256 addedValue) returns (bool)
lock
nonpayablefunction lock(uint256 time)
presale
nonpayablefunction presale(bool _presale)
renounceOwnership
nonpayablefunction renounceOwnership()
setBuyBackEnabled
nonpayablefunction setBuyBackEnabled(bool _enabled)
setBuybackFee
nonpayablefunction setBuybackFee(uint256 _buybackFee)
setBuybackUpperLimit
nonpayablefunction setBuybackUpperLimit(uint256 buyBackLimit)
setMarketingAddress
nonpayablefunction setMarketingAddress(address _marketingAddress)
setMarketingFee
nonpayablefunction setMarketingFee(uint256 _marketingFee)
setMaxTxAmount
nonpayablefunction setMaxTxAmount(uint256 maxTxAmount)
setNumTokensSellToAddToLiquidity
nonpayablefunction setNumTokensSellToAddToLiquidity(uint256 _minimumTokensBeforeSwap)
setSwapAndLiquifyEnabled
nonpayablefunction setSwapAndLiquifyEnabled(bool _enabled)
setTaxFee
nonpayablefunction setTaxFee(uint256 taxFee)
transfer
nonpayablefunction transfer(address recipient, uint256 amount) returns (bool)
transferFrom
nonpayablefunction transferFrom(address sender, address recipient, uint256 amount) returns (bool)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
unlock
nonpayablefunction unlock()
events
Approval
event Approval(address indexed owner, address indexed spender, uint256 value)
BuyBackEnabledUpdated
event BuyBackEnabledUpdated(bool enabled)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
RewardLiquidityProviders
event RewardLiquidityProviders(uint256 tokenAmount)
SwapAndLiquify
event SwapAndLiquify(uint256 tokensSwapped, uint256 ethReceived, uint256 tokensIntoLiqudity)
SwapAndLiquifyEnabledUpdated
event SwapAndLiquifyEnabledUpdated(bool enabled)
SwapETHForTokens
event SwapETHForTokens(uint256 amountIn, address[] path)
SwapTokensForETH
event SwapTokensForETH(uint256 amountIn, address[] path)
Transfer
event Transfer(address indexed from, address indexed to, uint256 value)
errors
No errors.
creation bytecode
0x60e060405261dead73ffffffffffffffffffffffffffffffffffffffff1660809073ffffffffffffffffffffffffffffffffffffffff1660601b8152506001601e60016101000a81548160ff0219169083151502179055506001601e60026101000a81548160ff0219169083151502179055503480156200007f57600080fd5b506040516200730b3803806200730b8339818101604052810190620000a5919062000a8b565b6000620000b76200077760201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35060058210156200019c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620001939062000cb6565b60405180910390fd5b87600e9080519060200190620001b4929190620008e6565b5086600f9080519060200190620001cd929190620008e6565b5085601060006101000a81548160ff021916908360ff160217905550601060009054906101000a900460ff16600a62000207919062000e60565b8562000214919062000f9d565b600b81905550600b546000196200022c919062001126565b6000196200023b919062000ffe565b600c8190555080600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073ee89c2e6462141356c580f97be3d5a35abc3b27e600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550836011819055506011546012819055508260158190555060155460168190555081601781905550601754601881905550818362000315919062000d70565b6013819055506013546014819055506005601981905550620003646003620003506103e8600b546200077f60201b62002ba81790919060201c565b620007d160201b62002bf21790919060201c565b601a81905550601a54601b81905550620003ab600262000397612710600b546200077f60201b62002ba81790919060201c565b620007d160201b62002bf21790919060201c565b601c81905550670de0b6b3a7640000601d81905550600c5460056000620003d76200077760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060007310ed43c718714eb63d5aa57b78b54704e256024e90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156200047557600080fd5b505afa1580156200048a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004b0919062000a59565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200051357600080fd5b505afa15801562000528573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200054e919062000a59565b6040518363ffffffff1660e01b81526004016200056d92919062000c43565b602060405180830381600087803b1580156200058857600080fd5b505af11580156200059d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620005c3919062000a59565b73ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff1660601b815250508073ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff1660601b81525050600160086000620006466200085560201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600860003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620006ff6200077760201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600b5460405162000760919062000cd8565b60405180910390a350505050505050505062001338565b600033905090565b6000620007c983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506200087e60201b60201c565b905092915050565b600080831415620007e657600090506200084f565b60008284620007f6919062000f9d565b905082848262000807919062000dcd565b146200084a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620008419062000c94565b60405180910390fd5b809150505b92915050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008083118290620008c8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620008bf919062000c70565b60405180910390fd5b5060008385620008d9919062000dcd565b9050809150509392505050565b828054620008f490620010ba565b90600052602060002090601f01602090048101928262000918576000855562000964565b82601f106200093357805160ff191683800117855562000964565b8280016001018555821562000964579182015b828111156200096357825182559160200191906001019062000946565b5b50905062000973919062000977565b5090565b5b808211156200099257600081600090555060010162000978565b5090565b6000620009ad620009a78462000d1e565b62000cf5565b905082815260208101848484011115620009cc57620009cb6200121f565b5b620009d984828562001084565b509392505050565b600081519050620009f281620012ea565b92915050565b600082601f83011262000a105762000a0f6200121a565b5b815162000a2284826020860162000996565b91505092915050565b60008151905062000a3c8162001304565b92915050565b60008151905062000a53816200131e565b92915050565b60006020828403121562000a725762000a7162001229565b5b600062000a8284828501620009e1565b91505092915050565b600080600080600080600080610100898b03121562000aaf5762000aae62001229565b5b600089015167ffffffffffffffff81111562000ad05762000acf62001224565b5b62000ade8b828c01620009f8565b985050602089015167ffffffffffffffff81111562000b025762000b0162001224565b5b62000b108b828c01620009f8565b975050604062000b238b828c0162000a42565b965050606062000b368b828c0162000a2b565b955050608062000b498b828c0162000a2b565b94505060a062000b5c8b828c0162000a2b565b93505060c062000b6f8b828c0162000a2b565b92505060e062000b828b828c01620009e1565b9150509295985092959890939650565b62000b9d8162001039565b82525050565b600062000bb08262000d54565b62000bbc818562000d5f565b935062000bce81856020860162001084565b62000bd9816200122e565b840191505092915050565b600062000bf360218362000d5f565b915062000c00826200124c565b604082019050919050565b600062000c1a60278362000d5f565b915062000c27826200129b565b604082019050919050565b62000c3d816200106d565b82525050565b600060408201905062000c5a600083018562000b92565b62000c69602083018462000b92565b9392505050565b6000602082019050818103600083015262000c8c818462000ba3565b905092915050565b6000602082019050818103600083015262000caf8162000be4565b9050919050565b6000602082019050818103600083015262000cd18162000c0b565b9050919050565b600060208201905062000cef600083018462000c32565b92915050565b600062000d0162000d14565b905062000d0f8282620010f0565b919050565b6000604051905090565b600067ffffffffffffffff82111562000d3c5762000d3b620011eb565b5b62000d47826200122e565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600062000d7d826200106d565b915062000d8a836200106d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111562000dc25762000dc16200115e565b5b828201905092915050565b600062000dda826200106d565b915062000de7836200106d565b92508262000dfa5762000df96200118d565b5b828204905092915050565b6000808291508390505b600185111562000e575780860481111562000e2f5762000e2e6200115e565b5b600185161562000e3f5780820291505b808102905062000e4f856200123f565b945062000e0f565b94509492505050565b600062000e6d826200106d565b915062000e7a8362001077565b925062000ea97fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000eb1565b905092915050565b60008262000ec3576001905062000f96565b8162000ed3576000905062000f96565b816001811462000eec576002811462000ef75762000f2d565b600191505062000f96565b60ff84111562000f0c5762000f0b6200115e565b5b8360020a91508482111562000f265762000f256200115e565b5b5062000f96565b5060208310610133831016604e8410600b841016171562000f675782820a90508381111562000f615762000f606200115e565b5b62000f96565b62000f76848484600162000e05565b9250905081840481111562000f905762000f8f6200115e565b5b81810290505b9392505050565b600062000faa826200106d565b915062000fb7836200106d565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161562000ff35762000ff26200115e565b5b828202905092915050565b60006200100b826200106d565b915062001018836200106d565b9250828210156200102e576200102d6200115e565b5b828203905092915050565b600062001046826200104d565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015620010a457808201518184015260208101905062001087565b83811115620010b4576000848401525b50505050565b60006002820490506001821680620010d357607f821691505b60208210811415620010ea57620010e9620011bc565b5b50919050565b620010fb826200122e565b810181811067ffffffffffffffff821117156200111d576200111c620011eb565b5b80604052505050565b600062001133826200106d565b915062001140836200106d565b9250826200115357620011526200118d565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160011c9050919050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4d61726b6574696e67206665652063616e206e6f74206265206c65737320746860008201527f616e20302e352500000000000000000000000000000000000000000000000000602082015250565b620012f58162001039565b81146200130157600080fd5b50565b6200130f816200106d565b81146200131b57600080fd5b50565b620013298162001077565b81146200133557600080fd5b50565b60805160601c60a05160601c60c05160601c615f69620013a2600039600081816116c9015261306d015260008181610c7701528181613c6b01528181613d5b01528181613d8201528181613eec0152614027015260008181610d7e01526140670152615f696000f3fe6080604052600436106102cd5760003560e01c8063625e764c11610175578063a5ece941116100dc578063dd46706411610095578063ec28438a1161006f578063ec28438a14610b17578063edc2fcfb14610b40578063f0f165af14610b69578063f2fde38b14610b92576102d4565b8063dd46706414610a88578063dd62ed3e14610ab1578063ea2f0b3714610aee576102d4565b8063a5ece9411461098c578063a69df4b5146109b7578063a9059cbb146109ce578063bdc653ef14610a0b578063c4081a4c14610a36578063c49b9a8014610a5f576102d4565b806388f820201161012e57806388f82020146108685780638da5cb5b146108a5578063906e9dd0146108d057806395d89b41146108f9578063a073d37f14610924578063a457c2d71461094f576102d4565b8063625e764c1461076c5780636b67c4df1461079557806370a08231146107c0578063715018a6146107fd5780637d1db4a51461081457806382d2a4bb1461083f576102d4565b80633b124fe71161023457806349bd5a5e116101ed5780635342acb4116101c75780635342acb4146106ae578063557ed1ba146106eb578063602bc62b146107165780636053a0e314610741576102d4565b806349bd5a5e1461062f5780634a74bb021461065a57806352390c0214610685576102d4565b80633b124fe7146105215780633b2d081c1461054c5780633bd5d17314610577578063437823ec146105a05780634549b039146105c95780634567bfba14610606576102d4565b806327c8f8351161028657806327c8f835146103ff57806329370cc61461042a5780632d83811914610453578063313ce567146104905780633685d419146104bb57806339509351146104e4576102d4565b806306fdde03146102d9578063095ea7b31461030457806313114a9d146103415780631694505e1461036c57806318160ddd1461039757806323b872dd146103c2576102d4565b366102d457005b600080fd5b3480156102e557600080fd5b506102ee610bbb565b6040516102fb9190615339565b60405180910390f35b34801561031057600080fd5b5061032b60048036038101906103269190614e2d565b610c4d565b60405161033891906152b7565b60405180910390f35b34801561034d57600080fd5b50610356610c6b565b604051610363919061557b565b60405180910390f35b34801561037857600080fd5b50610381610c75565b60405161038e91906152d2565b60405180910390f35b3480156103a357600080fd5b506103ac610c99565b6040516103b9919061557b565b60405180910390f35b3480156103ce57600080fd5b506103e960048036038101906103e49190614dda565b610ca3565b6040516103f691906152b7565b60405180910390f35b34801561040b57600080fd5b50610414610d7c565b6040516104219190615281565b60405180910390f35b34801561043657600080fd5b50610451600480360381019061044c9190614e6d565b610da0565b005b34801561045f57600080fd5b5061047a60048036038101906104759190614e9a565b610e89565b604051610487919061557b565b60405180910390f35b34801561049c57600080fd5b506104a5610ef7565b6040516104b29190615620565b60405180910390f35b3480156104c757600080fd5b506104e260048036038101906104dd9190614d40565b610f0e565b005b3480156104f057600080fd5b5061050b60048036038101906105069190614e2d565b61125d565b60405161051891906152b7565b60405180910390f35b34801561052d57600080fd5b50610536611310565b604051610543919061557b565b60405180910390f35b34801561055857600080fd5b50610561611316565b60405161056e919061557b565b60405180910390f35b34801561058357600080fd5b5061059e60048036038101906105999190614e9a565b61131c565b005b3480156105ac57600080fd5b506105c760048036038101906105c29190614d40565b611497565b005b3480156105d557600080fd5b506105f060048036038101906105eb9190614ec7565b611587565b6040516105fd919061557b565b60405180910390f35b34801561061257600080fd5b5061062d60048036038101906106289190614e9a565b61160b565b005b34801561063b57600080fd5b506106446116c7565b6040516106519190615281565b60405180910390f35b34801561066657600080fd5b5061066f6116eb565b60405161067c91906152b7565b60405180910390f35b34801561069157600080fd5b506106ac60048036038101906106a79190614d40565b6116fe565b005b3480156106ba57600080fd5b506106d560048036038101906106d09190614d40565b6119b2565b6040516106e291906152b7565b60405180910390f35b3480156106f757600080fd5b50610700611a08565b60405161070d919061557b565b60405180910390f35b34801561072257600080fd5b5061072b611a10565b604051610738919061557b565b60405180910390f35b34801561074d57600080fd5b50610756611a1a565b60405161076391906152b7565b60405180910390f35b34801561077857600080fd5b50610793600480360381019061078e9190614e9a565b611a2d565b005b3480156107a157600080fd5b506107aa611b2e565b6040516107b7919061557b565b60405180910390f35b3480156107cc57600080fd5b506107e760048036038101906107e29190614d40565b611b34565b6040516107f4919061557b565b60405180910390f35b34801561080957600080fd5b50610812611c1f565b005b34801561082057600080fd5b50610829611d72565b604051610836919061557b565b60405180910390f35b34801561084b57600080fd5b5061086660048036038101906108619190614e9a565b611d78565b005b34801561087457600080fd5b5061088f600480360381019061088a9190614d40565b611e17565b60405161089c91906152b7565b60405180910390f35b3480156108b157600080fd5b506108ba611e6d565b6040516108c79190615281565b60405180910390f35b3480156108dc57600080fd5b506108f760048036038101906108f29190614d40565b611e96565b005b34801561090557600080fd5b5061090e611f6f565b60405161091b9190615339565b60405180910390f35b34801561093057600080fd5b50610939612001565b604051610946919061557b565b60405180910390f35b34801561095b57600080fd5b5061097660048036038101906109719190614e2d565b61200b565b60405161098391906152b7565b60405180910390f35b34801561099857600080fd5b506109a16120d8565b6040516109ae919061529c565b60405180910390f35b3480156109c357600080fd5b506109cc6120fe565b005b3480156109da57600080fd5b506109f560048036038101906109f09190614e2d565b6122d2565b604051610a0291906152b7565b60405180910390f35b348015610a1757600080fd5b50610a206122f0565b604051610a2d919061557b565b60405180910390f35b348015610a4257600080fd5b50610a5d6004803603810190610a589190614e9a565b6122fa565b005b348015610a6b57600080fd5b50610a866004803603810190610a819190614e6d565b612399565b005b348015610a9457600080fd5b50610aaf6004803603810190610aaa9190614e9a565b612482565b005b348015610abd57600080fd5b50610ad86004803603810190610ad39190614d9a565b612649565b604051610ae5919061557b565b60405180910390f35b348015610afa57600080fd5b50610b156004803603810190610b109190614d40565b6126d0565b005b348015610b2357600080fd5b50610b3e6004803603810190610b399190614e9a565b6127c0565b005b348015610b4c57600080fd5b50610b676004803603810190610b629190614e6d565b61285f565b005b348015610b7557600080fd5b50610b906004803603810190610b8b9190614e9a565b612947565b005b348015610b9e57600080fd5b50610bb96004803603810190610bb49190614d40565b6129e6565b005b6060600e8054610bca90615875565b80601f0160208091040260200160405190810160405280929190818152602001828054610bf690615875565b8015610c435780601f10610c1857610100808354040283529160200191610c43565b820191906000526020600020905b815481529060010190602001808311610c2657829003601f168201915b5050505050905090565b6000610c61610c5a612c6d565b8484612c75565b6001905092915050565b6000600d54905090565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000600b54905090565b6000610cb0848484612e40565b610d7184610cbc612c6d565b610d6c85604051806060016040528060288152602001615ee760289139600760008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610d22612c6d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546131f69092919063ffffffff16565b612c75565b600190509392505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b610da8612c6d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e35576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e2c9061549b565b60405180910390fd5b80601e60026101000a81548160ff0219169083151502179055507f3794234fa370c9f3b948dda3e3040530785b2ef1eb27dda3ffde478f4e2643c081604051610e7e91906152b7565b60405180910390a150565b6000600c54821115610ed0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ec79061537b565b60405180910390fd5b6000610eda61325a565b9050610eef8184612ba890919063ffffffff16565b915050919050565b6000601060009054906101000a900460ff16905090565b610f16612c6d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610fa3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9a9061549b565b60405180910390fd5b600960008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661102f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611026906153fb565b60405180910390fd5b60005b600a80549050811015611259578173ffffffffffffffffffffffffffffffffffffffff16600a828154811061106a576110696159ac565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561124657600a6001600a805490506110c59190615771565b815481106110d6576110d56159ac565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600a8281548110611115576111146159ac565b5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600a80548061120c5761120b61597d565b5b6001900381819060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690559055611259565b8080611251906158a7565b915050611032565b5050565b600061130661126a612c6d565b84611301856007600061127b612c6d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461328590919063ffffffff16565b612c75565b6001905092915050565b60115481565b60155481565b6000611326612c6d565b9050600960008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156113b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113ac9061553b565b60405180910390fd5b60006113c0836132e3565b5050505050905061141981600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461333f90919063ffffffff16565b600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061147181600c5461333f90919063ffffffff16565b600c8190555061148c83600d5461328590919063ffffffff16565b600d81905550505050565b61149f612c6d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461152c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115239061549b565b60405180910390fd5b6001600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600b548311156115ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115c59061541b565b60405180910390fd5b816115ee5760006115de846132e3565b5050505050905080915050611605565b60006115f9846132e3565b50505050915050809150505b92915050565b611613612c6d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146116a0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116979061549b565b60405180910390fd5b806015819055506116be60175460155461328590919063ffffffff16565b60138190555050565b7f000000000000000000000000000000000000000000000000000000000000000081565b601e60019054906101000a900460ff1681565b611706612c6d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611793576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178a9061549b565b60405180910390fd5b600960008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611820576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611817906153fb565b60405180910390fd5b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411156118f4576118b0600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610e89565b600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6001600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600a819080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600042905090565b6000600254905090565b601e60029054906101000a900460ff1681565b611a35612c6d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611ac2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ab99061549b565b60405180910390fd5b601954811015611b07576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611afe9061545b565b60405180910390fd5b80601781905550611b2560175460155461328590919063ffffffff16565b60138190555050565b60175481565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611bcf57600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050611c1a565b611c17600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610e89565b90505b919050565b611c27612c6d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611cb4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cab9061549b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b601a5481565b611d80612c6d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611e0d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e049061549b565b60405180910390fd5b80601d8190555050565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b611e9e612c6d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611f2b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f229061549b565b60405180910390fd5b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6060600f8054611f7e90615875565b80601f0160208091040260200160405190810160405280929190818152602001828054611faa90615875565b8015611ff75780601f10611fcc57610100808354040283529160200191611ff7565b820191906000526020600020905b815481529060010190602001808311611fda57829003601f168201915b5050505050905090565b6000601c54905090565b60006120ce612018612c6d565b846120c985604051806060016040528060258152602001615f0f6025913960076000612042612c6d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546131f69092919063ffffffff16565b612c75565b6001905092915050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b3373ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461218e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121859061555b565b60405180910390fd5b60025442116121d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121c99061551b565b60405180910390fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60006122e66122df612c6d565b8484612e40565b6001905092915050565b6000601d54905090565b612302612c6d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461238f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123869061549b565b60405180910390fd5b8060118190555050565b6123a1612c6d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461242e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124259061549b565b60405180910390fd5b80601e60016101000a81548160ff0219169083151502179055507f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc1598160405161247791906152b7565b60405180910390a150565b61248a612c6d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612517576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161250e9061549b565b60405180910390fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080426125c59190615690565b600281905550600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6126d8612c6d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612765576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161275c9061549b565b60405180910390fd5b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6127c8612c6d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612855576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161284c9061549b565b60405180910390fd5b80601a8190555050565b612867612c6d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146128f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128eb9061549b565b60405180910390fd5b8015612928576129046000612399565b61290c613389565b601a54601b8190555061291d610c99565b601a81905550612944565b6129326001612399565b61293a6133ee565b601b54601a819055505b50565b61294f612c6d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146129dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129d39061549b565b60405180910390fd5b80601c8190555050565b6129ee612c6d565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612a7b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a729061549b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612aeb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ae29061539b565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000612bea83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250613414565b905092915050565b600080831415612c055760009050612c67565b60008284612c139190615717565b9050828482612c2291906156e6565b14612c62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c599061547b565b60405180910390fd5b809150505b92915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612ce5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612cdc906154fb565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612d55576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d4c906153bb565b60405180910390fd5b80600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051612e33919061557b565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612eb0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ea7906154db565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612f20576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f179061535b565b60405180910390fd5b60008111612f63576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f5a906154bb565b60405180910390fd5b612f6b611e6d565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015612fd95750612fa9611e6d565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561302457601a54811115613023576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161301a9061543b565b60405180910390fd5b5b600061302f30611b34565b90506000601c548210159050601e60009054906101000a900460ff161580156130645750601e60019054906101000a900460ff165b80156130bb57507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b156131315780156130d557601c5491506130d482613477565b5b6000479050601e60029054906101000a900460ff1680156130fd5750670de0b6b3a764000081115b1561312f57601d5481111561311257601d5490505b61312e613129606483612ba890919063ffffffff16565b613593565b5b505b600060019050600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806131d85750600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156131e257600090505b6131ee868686846135df565b505050505050565b600083831115829061323e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016132359190615339565b60405180910390fd5b506000838561324d9190615771565b9050809150509392505050565b6000806000613267613836565b9150915061327e8183612ba890919063ffffffff16565b9250505090565b60008082846132949190615690565b9050838110156132d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016132d0906153db565b60405180910390fd5b8091505092915050565b60008060008060008060008060006132fa8a613ae9565b92509250925060008060006133188d868661331361325a565b613b43565b9250925092508282828888889b509b509b509b509b509b5050505050505091939550919395565b600061338183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506131f6565b905092915050565b600060115414801561339d57506000601354145b156133a7576133ec565b60115460128190555060135460148190555060155460168190555060175460188190555060006011819055506000601381905550600060158190555060006017819055505b565b601254601181905550601454601381905550601654601581905550601854601781905550565b6000808311829061345b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016134529190615339565b60405180910390fd5b506000838561346a91906156e6565b9050809150509392505050565b6001601e60006101000a81548160ff02191690831515021790555060004790506134a082613bcc565b60006134b5824761333f90919063ffffffff16565b905061350b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166135066019546134f860135486612ba890919063ffffffff16565b612bf290919063ffffffff16565b613e51565b613573600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1661356e61354b60195460175461333f90919063ffffffff16565b61356060135486612ba890919063ffffffff16565b612bf290919063ffffffff16565b613e51565b50506000601e60006101000a81548160ff02191690831515021790555050565b6001601e60006101000a81548160ff02191690831515021790555060008111156135c1576135c081613e9c565b5b6000601e60006101000a81548160ff02191690831515021790555050565b806135ed576135ec613389565b5b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156136905750600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156136a5576136a0848484614129565b613822565b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156137485750600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561375d57613758848484614389565b613821565b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156137ff5750600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156138145761380f8484846145e9565b613820565b61381f8484846148de565b5b5b5b806138305761382f6133ee565b5b50505050565b6000806000600c5490506000600b54905060005b600a80549050811015613aac578260056000600a84815481106138705761386f6159ac565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054118061395e57508160066000600a84815481106138f6576138f56159ac565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b1561397557600c54600b5494509450505050613ae5565b613a0560056000600a84815481106139905761398f6159ac565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548461333f90919063ffffffff16565b9250613a9760066000600a8481548110613a2257613a216159ac565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361333f90919063ffffffff16565b91508080613aa4906158a7565b91505061384a565b50613ac4600b54600c54612ba890919063ffffffff16565b821015613adc57600c54600b54935093505050613ae5565b81819350935050505b9091565b600080600080613af885614aa9565b90506000613b0586614adb565b90506000613b2e82613b20858a61333f90919063ffffffff16565b61333f90919063ffffffff16565b90508083839550955095505050509193909250565b600080600080613b5c8589612bf290919063ffffffff16565b90506000613b738689612bf290919063ffffffff16565b90506000613b8a8789612bf290919063ffffffff16565b90506000613bb382613ba5858761333f90919063ffffffff16565b61333f90919063ffffffff16565b9050838184965096509650505050509450945094915050565b6000600267ffffffffffffffff811115613be957613be86159db565b5b604051908082528060200260200182016040528015613c175781602001602082028036833780820191505090505b5090503081600081518110613c2f57613c2e6159ac565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015613ccf57600080fd5b505afa158015613ce3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613d079190614d6d565b81600181518110613d1b57613d1a6159ac565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050613d80307f000000000000000000000000000000000000000000000000000000000000000084612c75565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401613de29594939291906155c6565b600060405180830381600087803b158015613dfc57600080fd5b505af1158015613e10573d6000803e3d6000fd5b505050507f32cde87eb454f3a0b875ab23547023107cfad454363ec88ba5695e2c24aa52a78282604051613e45929190615596565b60405180910390a15050565b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015613e97573d6000803e3d6000fd5b505050565b6000600267ffffffffffffffff811115613eb957613eb86159db565b5b604051908082528060200260200182016040528015613ee75781602001602082028036833780820191505090505b5090507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015613f5057600080fd5b505afa158015613f64573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f889190614d6d565b81600081518110613f9c57613f9b6159ac565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250503081600181518110613feb57613fea6159ac565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663b6f9de95836000847f000000000000000000000000000000000000000000000000000000000000000061409b61012c4261328590919063ffffffff16565b6040518663ffffffff1660e01b81526004016140ba94939291906152ed565b6000604051808303818588803b1580156140d357600080fd5b505af11580156140e7573d6000803e3d6000fd5b50505050507f6fd378a9d8b7345c2e5b18229aaf1e39d32b177b501d0a0d26a0a858a23a9624828260405161411d929190615596565b60405180910390a15050565b60008060008060008061413b876132e3565b95509550955095509550955061419987600660008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461333f90919063ffffffff16565b600660008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061422e86600560008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461333f90919063ffffffff16565b600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506142c385600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461328590919063ffffffff16565b600560008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061430f81614b0d565b6143198483614cb2565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051614376919061557b565b60405180910390a3505050505050505050565b60008060008060008061439b876132e3565b9550955095509550955095506143f986600560008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461333f90919063ffffffff16565b600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061448e83600660008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461328590919063ffffffff16565b600660008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061452385600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461328590919063ffffffff16565b600560008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061456f81614b0d565b6145798483614cb2565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516145d6919061557b565b60405180910390a3505050505050505050565b6000806000806000806145fb876132e3565b95509550955095509550955061465987600660008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461333f90919063ffffffff16565b600660008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506146ee86600560008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461333f90919063ffffffff16565b600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061478383600660008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461328590919063ffffffff16565b600660008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061481885600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461328590919063ffffffff16565b600560008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061486481614b0d565b61486e8483614cb2565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516148cb919061557b565b60405180910390a3505050505050505050565b6000806000806000806148f0876132e3565b95509550955095509550955061494e86600560008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461333f90919063ffffffff16565b600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506149e385600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461328590919063ffffffff16565b600560008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550614a2f81614b0d565b614a398483614cb2565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051614a96919061557b565b60405180910390a3505050505050505050565b6000614ad46103e8614ac660115485612bf290919063ffffffff16565b612ba890919063ffffffff16565b9050919050565b6000614b066103e8614af860135485612bf290919063ffffffff16565b612ba890919063ffffffff16565b9050919050565b6000614b1761325a565b90506000614b2e8284612bf290919063ffffffff16565b9050614b8281600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461328590919063ffffffff16565b600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615614cad57614c6983600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461328590919063ffffffff16565b600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b505050565b614cc782600c5461333f90919063ffffffff16565b600c81905550614ce281600d5461328590919063ffffffff16565b600d819055505050565b600081359050614cfb81615ea1565b92915050565b600081519050614d1081615ea1565b92915050565b600081359050614d2581615eb8565b92915050565b600081359050614d3a81615ecf565b92915050565b600060208284031215614d5657614d55615a0a565b5b6000614d6484828501614cec565b91505092915050565b600060208284031215614d8357614d82615a0a565b5b6000614d9184828501614d01565b91505092915050565b60008060408385031215614db157614db0615a0a565b5b6000614dbf85828601614cec565b9250506020614dd085828601614cec565b9150509250929050565b600080600060608486031215614df357614df2615a0a565b5b6000614e0186828701614cec565b9350506020614e1286828701614cec565b9250506040614e2386828701614d2b565b9150509250925092565b60008060408385031215614e4457614e43615a0a565b5b6000614e5285828601614cec565b9250506020614e6385828601614d2b565b9150509250929050565b600060208284031215614e8357614e82615a0a565b5b6000614e9184828501614d16565b91505092915050565b600060208284031215614eb057614eaf615a0a565b5b6000614ebe84828501614d2b565b91505092915050565b60008060408385031215614ede57614edd615a0a565b5b6000614eec85828601614d2b565b9250506020614efd85828601614d16565b9150509250929050565b6000614f138383614f2e565b60208301905092915050565b614f28816157b7565b82525050565b614f37816157a5565b82525050565b614f46816157a5565b82525050565b6000614f578261564b565b614f61818561566e565b9350614f6c8361563b565b8060005b83811015614f9d578151614f848882614f07565b9750614f8f83615661565b925050600181019050614f70565b5085935050505092915050565b614fb3816157c9565b82525050565b614fc28161580c565b82525050565b614fd181615830565b82525050565b6000614fe282615656565b614fec818561567f565b9350614ffc818560208601615842565b61500581615a0f565b840191505092915050565b600061501d60238361567f565b915061502882615a20565b604082019050919050565b6000615040602a8361567f565b915061504b82615a6f565b604082019050919050565b600061506360268361567f565b915061506e82615abe565b604082019050919050565b600061508660228361567f565b915061509182615b0d565b604082019050919050565b60006150a9601b8361567f565b91506150b482615b5c565b602082019050919050565b60006150cc601b8361567f565b91506150d782615b85565b602082019050919050565b60006150ef601f8361567f565b91506150fa82615bae565b602082019050919050565b600061511260288361567f565b915061511d82615bd7565b604082019050919050565b6000615135602c8361567f565b915061514082615c26565b604082019050919050565b600061515860218361567f565b915061516382615c75565b604082019050919050565b600061517b60208361567f565b915061518682615cc4565b602082019050919050565b600061519e60298361567f565b91506151a982615ced565b604082019050919050565b60006151c160258361567f565b91506151cc82615d3c565b604082019050919050565b60006151e460248361567f565b91506151ef82615d8b565b604082019050919050565b6000615207601f8361567f565b915061521282615dda565b602082019050919050565b600061522a602c8361567f565b915061523582615e03565b604082019050919050565b600061524d60238361567f565b915061525882615e52565b604082019050919050565b61526c816157f5565b82525050565b61527b816157ff565b82525050565b60006020820190506152966000830184614f3d565b92915050565b60006020820190506152b16000830184614f1f565b92915050565b60006020820190506152cc6000830184614faa565b92915050565b60006020820190506152e76000830184614fb9565b92915050565b60006080820190506153026000830187614fc8565b81810360208301526153148186614f4c565b90506153236040830185614f3d565b6153306060830184615263565b95945050505050565b600060208201905081810360008301526153538184614fd7565b905092915050565b6000602082019050818103600083015261537481615010565b9050919050565b6000602082019050818103600083015261539481615033565b9050919050565b600060208201905081810360008301526153b481615056565b9050919050565b600060208201905081810360008301526153d481615079565b9050919050565b600060208201905081810360008301526153f48161509c565b9050919050565b60006020820190508181036000830152615414816150bf565b9050919050565b60006020820190508181036000830152615434816150e2565b9050919050565b6000602082019050818103600083015261545481615105565b9050919050565b6000602082019050818103600083015261547481615128565b9050919050565b600060208201905081810360008301526154948161514b565b9050919050565b600060208201905081810360008301526154b48161516e565b9050919050565b600060208201905081810360008301526154d481615191565b9050919050565b600060208201905081810360008301526154f4816151b4565b9050919050565b60006020820190508181036000830152615514816151d7565b9050919050565b60006020820190508181036000830152615534816151fa565b9050919050565b600060208201905081810360008301526155548161521d565b9050919050565b6000602082019050818103600083015261557481615240565b9050919050565b60006020820190506155906000830184615263565b92915050565b60006040820190506155ab6000830185615263565b81810360208301526155bd8184614f4c565b90509392505050565b600060a0820190506155db6000830188615263565b6155e86020830187614fc8565b81810360408301526155fa8186614f4c565b90506156096060830185614f3d565b6156166080830184615263565b9695505050505050565b60006020820190506156356000830184615272565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061569b826157f5565b91506156a6836157f5565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156156db576156da6158f0565b5b828201905092915050565b60006156f1826157f5565b91506156fc836157f5565b92508261570c5761570b61591f565b5b828204905092915050565b6000615722826157f5565b915061572d836157f5565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615615766576157656158f0565b5b828202905092915050565b600061577c826157f5565b9150615787836157f5565b92508282101561579a576157996158f0565b5b828203905092915050565b60006157b0826157d5565b9050919050565b60006157c2826157d5565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006158178261581e565b9050919050565b6000615829826157d5565b9050919050565b600061583b826157f5565b9050919050565b60005b83811015615860578082015181840152602081019050615845565b8381111561586f576000848401525b50505050565b6000600282049050600182168061588d57607f821691505b602082108114156158a1576158a061594e565b5b50919050565b60006158b2826157f5565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156158e5576158e46158f0565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f4163636f756e7420697320616c7265616479206578636c756465640000000000600082015250565b7f416d6f756e74206d757374206265206c657373207468616e20737570706c7900600082015250565b7f5472616e7366657220616d6f756e74206578636565647320746865206d61785460008201527f78416d6f756e742e000000000000000000000000000000000000000000000000602082015250565b7f4d61726b6574696e67206665652063616e206e6f74206265206c65737320746860008201527f616e20352070657263656e740000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f436f6e7472616374206973206c6f636b656420756e74696c2037206461797300600082015250565b7f4578636c75646564206164647265737365732063616e6e6f742063616c6c207460008201527f6869732066756e6374696f6e0000000000000000000000000000000000000000602082015250565b7f596f7520646f6e27742068617665207065726d697373696f6e20746f20756e6c60008201527f6f636b0000000000000000000000000000000000000000000000000000000000602082015250565b615eaa816157a5565b8114615eb557600080fd5b50565b615ec1816157c9565b8114615ecc57600080fd5b50565b615ed8816157f5565b8114615ee357600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220dd94d37842da41dcd48e0b242fe196935169464e48339109b4c262b3d6d376cd64736f6c63430008050033000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000003b9aca00000000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000014000000000000000000000000cbe5438cd9d1d86273a9a462835ffaf5fe9d52660000000000000000000000000000000000000000000000000000000000000010576869726c2046696e616e6365207632000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007574849524c563200000000000000000000000000000000000000000000000000