0 txs
0 calls
constructor
constructor(string[] stringParams, address[] addressParams, uint256[] numberParams, bool[] boolParams)
functions
_buyFundFee
viewfunction _buyFundFee() view returns (uint256)
_buyLiquidityFee
viewfunction _buyLiquidityFee() view returns (uint256)
_buyRewardFee
viewfunction _buyRewardFee() view returns (uint256)
_LP_MKTBuyFee
viewfunction _LP_MKTBuyFee() view returns (uint256)
_LP_MKTSellFee
viewfunction _LP_MKTSellFee() view returns (uint256)
_mainPair
viewfunction _mainPair() view returns (address)
_owner
viewfunction _owner() view returns (address)
_rewardList
viewfunction _rewardList(address) view returns (bool)
_sellFundFee
viewfunction _sellFundFee() view returns (uint256)
_sellLiquidityFee
viewfunction _sellLiquidityFee() view returns (uint256)
_sellRewardFee
viewfunction _sellRewardFee() view returns (uint256)
_swapRouter
viewfunction _swapRouter() view returns (address)
_tokenDistributor
viewfunction _tokenDistributor() view returns (address)
allowance
viewfunction allowance(address owner, address spender) view returns (uint256)
balanceOf
viewfunction balanceOf(address account) view returns (uint256)
currency
viewfunction currency() view returns (address)
currencyIsEth
viewfunction currencyIsEth() view returns (bool)
decimals
viewfunction decimals() view returns (uint256)
enableChangeTax
viewfunction enableChangeTax() view returns (bool)
enableKillBlock
viewfunction enableKillBlock() view returns (bool)
enableOffTrade
viewfunction enableOffTrade() view returns (bool)
enableRewardList
viewfunction enableRewardList() view returns (bool)
enableSwapLimit
viewfunction enableSwapLimit() view returns (bool)
enableWalletLimit
viewfunction enableWalletLimit() view returns (bool)
fundAddress
viewfunction fundAddress() view returns (address)
generateLpReceiverAddr
viewfunction generateLpReceiverAddr() view returns (address)
isExcludedFromFee
viewfunction isExcludedFromFee(address account) view returns (bool)
isExcludedFromReward
viewfunction isExcludedFromReward(address account) view returns (bool)
isReward
viewfunction isReward(address account) view returns (uint256)
kb
viewfunction kb() view returns (uint256)
MAX
viewfunction MAX() view returns (uint256)
maxBuyAmount
viewfunction maxBuyAmount() view returns (uint256)
maxWalletAmount
viewfunction maxWalletAmount() view returns (uint256)
name
viewfunction name() view returns (string)
owner
viewfunction owner() view returns (address)
ReceiveAddress
viewfunction ReceiveAddress() view returns (address)
reflectionFromToken
viewfunction reflectionFromToken(uint256 tAmount, bool deductTransferFee, bool isSell) view returns (uint256)
startTradeBlock
viewfunction startTradeBlock() view returns (uint256)
swapAndLiquifyEnabled
viewfunction swapAndLiquifyEnabled() view returns (bool)
swapAtAmount
viewfunction swapAtAmount() view returns (uint256)
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)
approve
nonpayablefunction approve(address spender, uint256 amount) returns (bool)
changeSwapLimit
nonpayablefunction changeSwapLimit(uint256 _maxBuyAmount)
changeWalletLimit
nonpayablefunction changeWalletLimit(uint256 _amount)
claimTokens
nonpayablefunction claimTokens(address token, uint256 amount, address to)
completeCustoms
nonpayablefunction completeCustoms(uint256[] customs)
decreaseAllowance
nonpayablefunction decreaseAllowance(address spender, uint256 subtractedValue) returns (bool)
deliver
nonpayablefunction deliver(uint256 tAmount)
disableChangeTax
nonpayablefunction disableChangeTax()
disableSwapLimit
nonpayablefunction disableSwapLimit()
disableWalletLimit
nonpayablefunction disableWalletLimit()
excludeFromReward
nonpayablefunction excludeFromReward(address account)
includeInReward
nonpayablefunction includeInReward(address account)
increaseAllowance
nonpayablefunction increaseAllowance(address spender, uint256 addedValue) returns (bool)
launch
nonpayablefunction launch()
multi_bclist
nonpayablefunction multi_bclist(address[] addresses, bool value)
renounceOwnership
nonpayablefunction renounceOwnership()
setFeeWhiteList
nonpayablefunction setFeeWhiteList(address[] addr, bool enable)
setFundAddress
nonpayablefunction setFundAddress(address addr)
setGenerateLpReceiverAddr
nonpayablefunction setGenerateLpReceiverAddr(address newAddr)
setkb
nonpayablefunction setkb(uint256 a)
setSwapAndLiquifyEnabled
nonpayablefunction setSwapAndLiquifyEnabled(bool _enabled)
setSwapAtAmount
nonpayablefunction setSwapAtAmount(uint256 swapNumber)
setSwapPairList
nonpayablefunction setSwapPairList(address addr, bool enable)
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)
events
Approval
event Approval(address indexed owner, address indexed spender, uint256 value)
failed_swap
event failed_swap(uint256)
MinTokensBeforeSwapUpdated
event MinTokensBeforeSwapUpdated(uint256 minTokensBeforeSwap)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
SwapAndLiquify
event SwapAndLiquify(uint256 tokensSwapped, uint256 ethReceived, uint256 tokensIntoLiqudity)
SwapAndLiquifyEnabledUpdated
event SwapAndLiquifyEnabledUpdated(bool enabled)
Transfer
event Transfer(address indexed from, address indexed to, uint256 value)
errors
No errors.
creation bytecode
0x6080604052600680546001600160a01b03191661dead17905560006016556026805461ff0019166101001790553480156200003957600080fd5b5060405162004ba038038062004ba08339810160408190526200005c9162000bdf565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35083600081518110620000b357620000b362000d69565b6020026020010151600f9081620000cb919062000e0e565b5083600181518110620000e257620000e262000d69565b602002602001015160109081620000fa919062000e0e565b508160008151811062000111576200011162000d69565b60200260200101516011819055508160018151811062000135576200013562000d69565b6020026020010151600c819055508260008151811062000159576200015962000d69565b6020026020010151600960006101000a8154816001600160a01b0302191690836001600160a01b03160217905550816002815181106200019d576200019d62000d69565b6020026020010151601c8190555081600381518110620001c157620001c162000d69565b602002602001015160178190555081600481518110620001e557620001e562000d69565b6020026020010151601b819055508160058151811062000209576200020962000d69565b6020026020010151601e81905550816006815181106200022d576200022d62000d69565b60200260200101516018819055508160078151811062000251576200025162000d69565b6020026020010151601d819055508160088151811062000275576200027562000d69565b60200260200101516016819055508160098151811062000299576200029962000d69565b602002602001015160138190555081600b81518110620002bd57620002bd62000d69565b602002602001015160148190555080600081518110620002e157620002e162000d69565b6020026020010151601260006101000a81548160ff0219169083151502179055508060018151811062000318576200031862000d69565b6020026020010151601260016101000a81548160ff021916908315150217905550806002815181106200034f576200034f62000d69565b6020026020010151601260026101000a81548160ff0219169083151502179055508060038151811062000386576200038662000d69565b6020026020010151601260036101000a81548160ff02191690831515021790555080600481518110620003bd57620003bd62000d69565b6020026020010151601260046101000a81548160ff02191690831515021790555080600581518110620003f457620003f462000d69565b6020026020010151601260056101000a81548160ff021916908315150217905550806006815181106200042b576200042b62000d69565b6020026020010151601260066101000a81548160ff021916908315150217905550600c546000196200045e919062000ef0565b6200046c9060001962000f1d565b600d55601c54601b5462000481919062000f33565b601f55601e54601d5462000496919062000f33565b6020818155601754601955601854601a55601f54602155602291909155600c54620004ce916127109062001bc86200092d821b17901c565b602781905550600083600181518110620004ec57620004ec62000d69565b602090810291909101015160125490915060ff16156200058c57806001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000545573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200056b919062000f49565b600980546001600160a01b0319166001600160a01b03929092169190911790555b60095460405163095ea7b360e01b81526001600160a01b03838116600483015260001960248301529091169063095ea7b3906044016020604051808303816000875af1158015620005e1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000607919062000f67565b50602380546001600160a01b0319166001600160a01b03831690811790915530600090815260036020908152604080832084845282528083206000199055805163c45a015560e01b8152905192939263c45a0155926004808401939192918290030181865afa1580156200067f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620006a5919062000f49565b6009546040516364e329cb60e11b81523060048201526001600160a01b0391821660248201529192506000919083169063c9c65396906044016020604051808303816000875af1158015620006fe573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000724919062000f49565b602480546001600160a01b0319166001600160a01b0383169081179091556000908152602560205260409020805460ff1916600117905560125490915060ff16620007d5576009546040516001600160a01b03909116906200078690620009c5565b6001600160a01b039091168152602001604051809103906000f080158015620007b3573d6000803e3d6000fd5b50600a80546001600160a01b0319166001600160a01b03929092169190911790555b85600281518110620007eb57620007eb62000d69565b602090810291909101810151602880546001600160a01b0319166001600160a01b039283169081178255600d546000918252600185526040808320919091559154600c549251928352909216927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a38560038151811062000879576200087962000d69565b602090810291909101810151600b80546001600160a01b039283166001600160a01b031991821681179092556029805490911682179055600090815260049092526040808320805460ff19908116600190811790925560285484168552828520805482168317905530855282852080548216831790553385528285208054821683179055328552828520805482168317905560065490931684529220805490911690911790555062000fd195505050505050565b60006200097783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506200098060201b60201c565b90505b92915050565b60008183620009ad5760405162461bcd60e51b8152600401620009a4919062000f85565b60405180910390fd5b506000620009bc848662000fba565b95945050505050565b6101478062004a5983390190565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171562000a145762000a14620009d3565b604052919050565b60006001600160401b0382111562000a385762000a38620009d3565b5060051b60200190565b60005b8381101562000a5f57818101518382015260200162000a45565b50506000910152565b80516001600160a01b038116811462000a8057600080fd5b919050565b600082601f83011262000a9757600080fd5b8151602062000ab062000aaa8362000a1c565b620009e9565b82815260059290921b8401810191818101908684111562000ad057600080fd5b8286015b8481101562000af65762000ae88162000a68565b835291830191830162000ad4565b509695505050505050565b600082601f83011262000b1357600080fd5b8151602062000b2662000aaa8362000a1c565b82815260059290921b8401810191818101908684111562000b4657600080fd5b8286015b8481101562000af6578051835291830191830162000b4a565b8051801515811462000a8057600080fd5b600082601f83011262000b8657600080fd5b8151602062000b9962000aaa8362000a1c565b82815260059290921b8401810191818101908684111562000bb957600080fd5b8286015b8481101562000af65762000bd18162000b63565b835291830191830162000bbd565b6000806000806080858703121562000bf657600080fd5b84516001600160401b038082111562000c0e57600080fd5b818701915087601f83011262000c2357600080fd5b8151602062000c3662000aaa8362000a1c565b82815260059290921b8401810191818101908b84111562000c5657600080fd5b8286015b8481101562000ce95780518681111562000c7357600080fd5b8701603f81018e1362000c8557600080fd5b848101518781111562000c9c5762000c9c620009d3565b62000cb0601f8201601f19168701620009e9565b8181528f604083850101111562000cc75760008081fd5b62000cd9828883016040860162000a42565b8552505091830191830162000c5a565b50918a015191985090935050508082111562000d0457600080fd5b62000d128883890162000a85565b9450604087015191508082111562000d2957600080fd5b62000d378883890162000b01565b9350606087015191508082111562000d4e57600080fd5b5062000d5d8782880162000b74565b91505092959194509250565b634e487b7160e01b600052603260045260246000fd5b600181811c9082168062000d9457607f821691505b60208210810362000db557634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111562000e0957600081815260208120601f850160051c8101602086101562000de45750805b601f850160051c820191505b8181101562000e055782815560010162000df0565b5050505b505050565b81516001600160401b0381111562000e2a5762000e2a620009d3565b62000e428162000e3b845462000d7f565b8462000dbb565b602080601f83116001811462000e7a576000841562000e615750858301515b600019600386901b1c1916600185901b17855562000e05565b600085815260208120601f198616915b8281101562000eab5788860151825594840194600190910190840162000e8a565b508582101562000eca5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601260045260246000fd5b60008262000f025762000f0262000eda565b500690565b634e487b7160e01b600052601160045260246000fd5b818103818111156200097a576200097a62000f07565b808201808211156200097a576200097a62000f07565b60006020828403121562000f5c57600080fd5b620009778262000a68565b60006020828403121562000f7a57600080fd5b620009778262000b63565b602081526000825180602084015262000fa681604085016020870162000a42565b601f01601f19169190910160400192915050565b60008262000fcc5762000fcc62000eda565b500490565b613a788062000fe16000396000f3fe6080604052600436106104095760003560e01c806370a0823111610213578063aa582b4211610123578063ce391c9f116100ab578063dc44b6a01161007a578063dc44b6a014610bd2578063dd62ed3e14610be8578063e5a6b10f14610c2e578063e82bef2914610c4e578063f2fde38b14610c6e57600080fd5b8063ce391c9f14610b58578063d49d518114610b78578063d598643314610b8e578063d710569b14610bb257600080fd5b8063be4fe9a5116100f2578063be4fe9a514610acd578063c0aa931e14610ae3578063c49b9a8014610b03578063c92d567e14610b23578063ce0192f914610b4257600080fd5b8063aa582b4214610a3c578063b02d757f14610a5c578063b2bdfa7b14610a7d578063bd25bf2914610a9d57600080fd5b806388f82020116101a6578063a23270d711610175578063a23270d7146109a4578063a457c2d7146109c6578063a8424861146109e6578063a9059cbb14610a06578063aa4bde2814610a2657600080fd5b806388f82020146109185780638da5cb5b146109515780638e1e08381461096f57806395d89b411461098f57600080fd5b806386917524116101e257806386917524146108b65780638718b24f146108cc57806388790a68146108ec57806388e765ff1461090257600080fd5b806370a0823114610841578063715018a6146108615780637db1342c1461087657806385dc30041461089657600080fd5b80632d838119116103195780634a74bb02116102a1578063553193ca11610270578063553193ca146107b65780635a7ba73c146107cc5780636108a3db146107ec5780636402511e1461080c578063697cfc191461082c57600080fd5b80634a74bb021461071e5780634d5ce0381461073d57806352390c021461075d5780635342acb41461077d57600080fd5b806339509351116102e857806339509351146106885780633bd5d173146106a85780633bfe62ca146106c85780633f63d40f146106de5780634188bf5a146106fe57600080fd5b80632d8381191461061c5780632dab693f1461063c578063313ce567146106525780633685d4191461066857600080fd5b806313114a9d1161039c57806318160ddd1161036b57806318160ddd14610583578063206c17bb1461059857806323b872dd146105d0578063289cfc8f146105f05780632ba7f3591461060657600080fd5b806313114a9d1461051457806314a432c914610529578063150e4c471461054957806315d07d821461056957600080fd5b806306fdde03116103d857806306fdde031461049957806307c3adf0146104bb578063095ea7b3146104df5780630f890b86146104ff57600080fd5b806301339c211461041557806301f3c01e1461042c57806303da2b231461044c578063063be69e1461048457600080fd5b3661041057005b600080fd5b34801561042157600080fd5b5061042a610c8e565b005b34801561043857600080fd5b5061042a6104473660046134f9565b610d09565b34801561045857600080fd5b5060125461046f9065010000000000900460ff1681565b60405190151581526020015b60405180910390f35b34801561049057600080fd5b5061042a610df5565b3480156104a557600080fd5b506104ae610e2f565b60405161047b919061353b565b3480156104c757600080fd5b506104d160175481565b60405190815260200161047b565b3480156104eb57600080fd5b5061046f6104fa366004613589565b610ebd565b34801561050b57600080fd5b5061042a610ed4565b34801561052057600080fd5b50600e546104d1565b34801561053557600080fd5b5061042a6105443660046135b5565b610f10565b34801561055557600080fd5b5061042a610564366004613628565b610f3f565b34801561057557600080fd5b5060125461046f9060ff1681565b34801561058f57600080fd5b50600c546104d1565b3480156105a457600080fd5b506023546105b8906001600160a01b031681565b6040516001600160a01b03909116815260200161047b565b3480156105dc57600080fd5b5061046f6105eb366004613674565b610fda565b3480156105fc57600080fd5b506104d1601f5481565b34801561061257600080fd5b506104d160205481565b34801561062857600080fd5b506104d16106373660046135b5565b611044565b34801561064857600080fd5b506104d160165481565b34801561065e57600080fd5b506104d160115481565b34801561067457600080fd5b5061042a6106833660046136b5565b6110c1565b34801561069457600080fd5b5061046f6106a3366004613589565b611277565b3480156106b457600080fd5b5061042a6106c33660046135b5565b6112ad565b3480156106d457600080fd5b506104d1601e5481565b3480156106ea57600080fd5b506104d16106f93660046136d2565b611399565b34801561070a57600080fd5b506024546105b8906001600160a01b031681565b34801561072a57600080fd5b5060265461046f90610100900460ff1681565b34801561074957600080fd5b506104d16107583660046136b5565b611428565b34801561076957600080fd5b5061042a6107783660046136b5565b611459565b34801561078957600080fd5b5061046f6107983660046136b5565b6001600160a01b031660009081526004602052604090205460ff1690565b3480156107c257600080fd5b506104d160155481565b3480156107d857600080fd5b5060125461046f9062010000900460ff1681565b3480156107f857600080fd5b5061042a610807366004613628565b6115ac565b34801561081857600080fd5b5061042a6108273660046135b5565b611645565b34801561083857600080fd5b5061042a611674565b34801561084d57600080fd5b506104d161085c3660046136b5565b6116af565b34801561086d57600080fd5b5061042a61170e565b34801561088257600080fd5b5061042a6108913660046135b5565b611788565b3480156108a257600080fd5b5061042a6108b13660046136b5565b6117b7565b3480156108c257600080fd5b506104d160275481565b3480156108d857600080fd5b50600a546105b8906001600160a01b031681565b3480156108f857600080fd5b506104d1601d5481565b34801561090e57600080fd5b506104d160135481565b34801561092457600080fd5b5061046f6109333660046136b5565b6001600160a01b031660009081526007602052604090205460ff1690565b34801561095d57600080fd5b506000546001600160a01b03166105b8565b34801561097b57600080fd5b506029546105b8906001600160a01b031681565b34801561099b57600080fd5b506104ae61181b565b3480156109b057600080fd5b5060125461046f90640100000000900460ff1681565b3480156109d257600080fd5b5061046f6109e1366004613589565b611828565b3480156109f257600080fd5b5061042a610a01366004613709565b611877565b348015610a1257600080fd5b5061046f610a21366004613589565b6118cc565b348015610a3257600080fd5b506104d160145481565b348015610a4857600080fd5b5061042a610a57366004613742565b6118d9565b348015610a6857600080fd5b5060125461046f906301000000900460ff1681565b348015610a8957600080fd5b506000546105b8906001600160a01b031681565b348015610aa957600080fd5b5061046f610ab83660046136b5565b60056020526000908152604090205460ff1681565b348015610ad957600080fd5b506104d160185481565b348015610aef57600080fd5b5061042a610afe3660046135b5565b6119e5565b348015610b0f57600080fd5b5061042a610b1e366004613784565b611a14565b348015610b2f57600080fd5b5060125461046f90610100900460ff1681565b348015610b4e57600080fd5b506104d1601c5481565b348015610b6457600080fd5b506028546105b8906001600160a01b031681565b348015610b8457600080fd5b506104d160001981565b348015610b9a57600080fd5b5060125461046f906601000000000000900460ff1681565b348015610bbe57600080fd5b5061042a610bcd3660046136b5565b611a92565b348015610bde57600080fd5b506104d1601b5481565b348015610bf457600080fd5b506104d1610c033660046137a1565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b348015610c3a57600080fd5b506009546105b8906001600160a01b031681565b348015610c5a57600080fd5b50600b546105b8906001600160a01b031681565b348015610c7a57600080fd5b5061042a610c893660046136b5565b611ade565b6000546001600160a01b03163314610cc15760405162461bcd60e51b8152600401610cb8906137cf565b60405180910390fd5b60155415610d035760405162461bcd60e51b815260206004820152600f60248201526e185b1c9958591e481cdd185c9d1959608a1b6044820152606401610cb8565b43601555565b6000546001600160a01b03163314610d335760405162461bcd60e51b8152600401610cb8906137cf565b6001600160a01b038316610d7d576040516001600160a01b0382169083156108fc029084906000818181858888f19350505050158015610d77573d6000803e3d6000fd5b50505050565b60405163a9059cbb60e01b81526001600160a01b0382811660048301526024820184905284169063a9059cbb906044016020604051808303816000875af1158015610dcc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d779190613804565b505050565b6000546001600160a01b03163314610e1f5760405162461bcd60e51b8152600401610cb8906137cf565b6012805464ff0000000019169055565b600f8054610e3c90613821565b80601f0160208091040260200160405190810160405280929190818152602001828054610e6890613821565b8015610eb55780601f10610e8a57610100808354040283529160200191610eb5565b820191906000526020600020905b815481529060010190602001808311610e9857829003601f168201915b505050505081565b6000610eca338484611c0a565b5060015b92915050565b6000546001600160a01b03163314610efe5760405162461bcd60e51b8152600401610cb8906137cf565b6012805466ff00000000000019169055565b6000546001600160a01b03163314610f3a5760405162461bcd60e51b8152600401610cb8906137cf565b601655565b6000546001600160a01b03163314610f695760405162461bcd60e51b8152600401610cb8906137cf565b60005b82811015610d77578160046000868685818110610f8b57610f8b61385b565b9050602002016020810190610fa091906136b5565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905580610fd281613887565b915050610f6c565b6000610fe7848484611d2e565b6110398433611034856040518060600160405280602881526020016139d6602891396001600160a01b038a166000908152600360209081526040808320338452909152902054919061217e565b611c0a565b5060015b9392505050565b6000600d548211156110ab5760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b6064820152608401610cb8565b60006110b56121b8565b905061103d8382611bc8565b6000546001600160a01b031633146110eb5760405162461bcd60e51b8152600401610cb8906137cf565b6001600160a01b03811660009081526007602052604090205460ff166111535760405162461bcd60e51b815260206004820152601b60248201527f4163636f756e7420697320616c7265616479206578636c7564656400000000006044820152606401610cb8565b60005b60085481101561127357816001600160a01b03166008828154811061117d5761117d61385b565b6000918252602090912001546001600160a01b03160361126157600880546111a7906001906138a0565b815481106111b7576111b761385b565b600091825260209091200154600880546001600160a01b0390921691839081106111e3576111e361385b565b600091825260208083209190910180546001600160a01b0319166001600160a01b039485161790559184168152600282526040808220829055600790925220805460ff19169055600880548061123b5761123b6138b3565b600082815260209020810160001990810180546001600160a01b03191690550190555050565b8061126b81613887565b915050611156565b5050565b3360008181526003602090815260408083206001600160a01b03871684529091528120549091610eca91859061103490866121db565b3360008181526007602052604090205460ff16156113225760405162461bcd60e51b815260206004820152602c60248201527f4578636c75646564206164647265737365732063616e6e6f742063616c6c207460448201526b3434b990333ab731ba34b7b760a11b6064820152608401610cb8565b600061132f83600061223a565b505050506001600160a01b03841660009081526001602052604090205491925061135b9190508261228d565b6001600160a01b038316600090815260016020526040902055600d54611381908261228d565b600d55600e5461139190846121db565b600e55505050565b6000600c548411156113ed5760405162461bcd60e51b815260206004820152601f60248201527f416d6f756e74206d757374206265206c657373207468616e20737570706c79006044820152606401610cb8565b8261140d5760006113fe858461223a565b5093955061103d945050505050565b6000611419858461223a565b5092955061103d945050505050565b6001600160a01b03811660009081526005602052604081205460ff161561145157506001919050565b506000919050565b6000546001600160a01b031633146114835760405162461bcd60e51b8152600401610cb8906137cf565b6001600160a01b03811660009081526007602052604090205460ff16156114ec5760405162461bcd60e51b815260206004820152601b60248201527f4163636f756e7420697320616c7265616479206578636c7564656400000000006044820152606401610cb8565b6001600160a01b03811660009081526001602052604090205415611546576001600160a01b03811660009081526001602052604090205461152c90611044565b6001600160a01b0382166000908152600260205260409020555b6001600160a01b03166000818152600760205260408120805460ff191660019081179091556008805491820181559091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30180546001600160a01b0319169091179055565b6000546001600160a01b031633146115d65760405162461bcd60e51b8152600401610cb8906137cf565b60005b82811015610d775781600560008686858181106115f8576115f861385b565b905060200201602081019061160d91906136b5565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905561163e81613887565b90506115d9565b6000546001600160a01b0316331461166f5760405162461bcd60e51b8152600401610cb8906137cf565b602755565b6000546001600160a01b0316331461169e5760405162461bcd60e51b8152600401610cb8906137cf565b6012805465ff000000000019169055565b6001600160a01b03811660009081526007602052604081205460ff16156116ec57506001600160a01b031660009081526002602052604090205490565b6001600160a01b038216600090815260016020526040902054610ece90611044565b6000546001600160a01b031633146117385760405162461bcd60e51b8152600401610cb8906137cf565b6000805460405161dead926001600160a01b03909216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b03191661dead179055565b6000546001600160a01b031633146117b25760405162461bcd60e51b8152600401610cb8906137cf565b601455565b6000546001600160a01b031633146117e15760405162461bcd60e51b8152600401610cb8906137cf565b600b80546001600160a01b039092166001600160a01b0319909216821790556000908152600460205260409020805460ff19166001179055565b60108054610e3c90613821565b6000610eca3384611034856040518060600160405280602581526020016139fe602591393360009081526003602090815260408083206001600160a01b038d168452909152902054919061217e565b6000546001600160a01b031633146118a15760405162461bcd60e51b8152600401610cb8906137cf565b6001600160a01b03919091166000908152602560205260409020805460ff1916911515919091179055565b6000610eca338484611d2e565b6000546001600160a01b031633146119035760405162461bcd60e51b8152600401610cb8906137cf565b818160008181106119165761191661385b565b6020029190910135601b5550818160018181106119355761193561385b565b602002919091013560175550818160028181106119545761195461385b565b6020029190910135601c5550818160038181106119735761197361385b565b6020029190910135601d5550818160048181106119925761199261385b565b602002919091013560185550818160058181106119b1576119b161385b565b6020029190910135601e5550601c54601b546119cc916121db565b601f55601e54601d546119de916121db565b6020555050565b6000546001600160a01b03163314611a0f5760405162461bcd60e51b8152600401610cb8906137cf565b601355565b6000546001600160a01b03163314611a3e5760405162461bcd60e51b8152600401610cb8906137cf565b602680548215156101000261ff00199091161790556040517f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc15990611a8790831515815260200190565b60405180910390a150565b6000546001600160a01b03163314611abc5760405162461bcd60e51b8152600401610cb8906137cf565b602980546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314611b085760405162461bcd60e51b8152600401610cb8906137cf565b6001600160a01b038116611b6d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610cb8565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600061103d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506122cf565b6001600160a01b038316611c6c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610cb8565b6001600160a01b038216611ccd5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610cb8565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316611d925760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610cb8565b6001600160a01b038216611df45760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610cb8565b60008111611e565760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610cb8565b6000611e6184611428565b1115611ea05760405162461bcd60e51b815260206004820152600e60248201526d6973526577617264203e2030202160901b6044820152606401610cb8565b6000611eab306116af565b60275490915081108015908190611ec5575060265460ff16155b8015611ee957506001600160a01b03841660009081526025602052604090205460ff165b8015611f0e57506001600160a01b03851660009081526004602052604090205460ff16155b8015611f3357506001600160a01b03841660009081526004602052604090205460ff16155b8015611f465750602654610100900460ff165b15611f5457611f54826122fd565b6001600160a01b03851660009081526004602052604090205460019060ff1680611f9657506001600160a01b03851660009081526004602052604090205460ff165b15611f9f575060005b801561216a57601254610100900460ff168015611fbc5750601554155b15611fc657600080fd5b601254610100900460ff168015611fe5575060125462010000900460ff165b8015611fff5750601654601554611ffc91906138c9565b43105b15612048576001600160a01b03851660009081526025602052604090205460ff16612048576001600160a01b0385166000908152600560205260409020805460ff191660011790555b601254640100000000900460ff16156120c7576001600160a01b03861660009081526025602052604090205460ff16156120c7576013548411156120c75760405162461bcd60e51b8152602060048201526016602482015275115490cc8c0e880f881b585e081d1e08185b5bdd5b9d60521b6044820152606401610cb8565b60125465010000000000900460ff1680156120fa57506001600160a01b03861660009081526025602052604090205460ff165b1561216a57600061210a866116af565b60145490915061211a86836138c9565b11156121685760405162461bcd60e51b815260206004820152601f60248201527f4578636565646564206d6178696d756d2077616c6c65742062616c616e6365006044820152606401610cb8565b505b612176868686846126bc565b505050505050565b600081848411156121a25760405162461bcd60e51b8152600401610cb8919061353b565b5060006121af84866138a0565b95945050505050565b60008060006121c561283f565b90925090506121d48282611bc8565b9250505090565b6000806121e883856138c9565b90508381101561103d5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610cb8565b60008060008060008060008060006122528b8b6129c1565b92509250925060008060006122708e868661226b6121b8565b612a25565b919d509b5099509497509295509093505050509295509295509295565b600061103d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061217e565b600081836122f05760405162461bcd60e51b8152600401610cb8919061353b565b5060006121af84866138dc565b6026805460ff19166001179055601d54601b54601e54601c5461232091906138c9565b61232a91906138c9565b61233491906138c9565b156126af576000601d54601b5461234b91906138c9565b601d54601b54601e54601c5461236191906138c9565b61236b91906138c9565b61237591906138c9565b61237f90846138dc565b61238991906138fe565b90506000612398826002611bc8565b60125490915060ff166123bc576123b76123b282856138a0565b612a75565b6123ce565b6123ce6123c982856138a0565b612c92565b60125460009060ff1661244e576009546040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa158015612423573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612447919061391d565b9050612451565b50475b600083156124ff576002601d54601b5461246b91906138c9565b61247591906138dc565b6002601d54601b5461248791906138c9565b61249191906138dc565b601d54601b54601e54601c546124a791906138c9565b6124b191906138c9565b6124bb91906138c9565b6124c591906138a0565b6124cf90846138dc565b6124d991906138fe565b60125490915060ff166124f5576124f08382612db8565b6124ff565b6124ff8382612ea3565b60125460ff1615801561251c5750600b546001600160a01b031615155b1561260f57600954600b546040516370a0823160e01b81523060048201526001600160a01b039283169263a9059cbb92169083906370a0823190602401602060405180830381865afa158015612576573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061259a919061391d565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af11580156125e5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126099190613804565b50612669565b600b546001600160a01b0316158015906126295750600047115b1561266957600b546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015612667573d6000803e3d6000fd5b505b60408051858152602081018390529081018690527f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb5619060600160405180910390a1505050505b506026805460ff19169055565b806126c9576126c9612f77565b6001600160a01b03841660009081526007602052604090205460ff16801561270a57506001600160a01b03831660009081526007602052604090205460ff16155b1561271f5761271a848484612fd2565b61281d565b6001600160a01b03841660009081526007602052604090205460ff1615801561276057506001600160a01b03831660009081526007602052604090205460ff165b156127705761271a848484613131565b6001600160a01b03841660009081526007602052604090205460ff161580156127b257506001600160a01b03831660009081526007602052604090205460ff16155b156127c25761271a848484613212565b6001600160a01b03841660009081526007602052604090205460ff16801561280257506001600160a01b03831660009081526007602052604090205460ff165b156128125761271a84848461328e565b61281d848484613212565b80610d7757610d77601954601755601a54601855602154601f55602254602055565b600d54600c546000918291825b6008548110156129915782600160006008848154811061286e5761286e61385b565b60009182526020808320909101546001600160a01b0316835282019290925260400190205411806128d957508160026000600884815481106128b2576128b261385b565b60009182526020808320909101546001600160a01b03168352820192909252604001902054115b156128ef57600d54600c54945094505050509091565b61293560016000600884815481106129095761290961385b565b60009182526020808320909101546001600160a01b03168352820192909252604001902054849061228d565b925061297d60026000600884815481106129515761295161385b565b60009182526020808320909101546001600160a01b03168352820192909252604001902054839061228d565b91508061298981613887565b91505061284c565b50600c54600d546129a191611bc8565b8210156129b857600d54600c549350935050509091565b90939092509050565b6000806000806000856129e9576129d787613339565b90506129e28761335c565b9150612a00565b6129f287613379565b90506129fd87613396565b91505b6000612a1682612a108a8661228d565b9061228d565b95509193509150509250925092565b6000808080612a3488866133b3565b90506000612a4288876133b3565b90506000612a5088886133b3565b90506000612a6282612a10868661228d565b939b939a50919850919650505050505050565b80600003612a805750565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110612ab557612ab561385b565b6001600160a01b039283166020918202929092010152600954825191169082906001908110612ae657612ae661385b565b6001600160a01b039283166020918202929092010152602354612b0c9130911684611c0a565b602354600a54604051635c11d79560e01b81526001600160a01b0392831692635c11d79592612b4992879260009288929116904290600401613936565b600060405180830381600087803b158015612b6357600080fd5b505af1925050508015612b74575060015b612b9b5760405160008152600080516020613a238339815191529060200160405180910390a15b600954600a546040516370a0823160e01b81526001600160a01b039182166004820181905291909216916323b872dd9190309084906370a0823190602401602060405180830381865afa158015612bf6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c1a919061391d565b6040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af1158015612c6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df09190613804565b80600003612c9d5750565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110612cd257612cd261385b565b6001600160a01b039283166020918202929092010152600954825191169082906001908110612d0357612d0361385b565b6001600160a01b039283166020918202929092010152602354612d299130911684611c0a565b60235460405163791ac94760e01b81526001600160a01b039091169063791ac94790612d62908590600090869030904290600401613936565b600060405180830381600087803b158015612d7c57600080fd5b505af1925050508015612d8d575060015b6112735760405160038152600080516020613a23833981519152906020015b60405180910390a15050565b81600003612dc4575050565b602354612ddc9030906001600160a01b031684611c0a565b60235460095460295460405162e8e33760e81b81523060048201526001600160a01b039283166024820152604481018690526064810185905260006084820181905260a482015290821660c48201524260e482015291169063e8e3370090610104016060604051808303816000875af1925050508015612e79575060408051601f3d908101601f19168201909252612e76918101906139a7565b60015b612e9c5760405160018152600080516020613a2383398151915290602001612dac565b5050505050565b81600003612eaf575050565b602354612ec79030906001600160a01b031684611c0a565b60235460295460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af193505050508015612f54575060408051601f3d908101601f19168201909252612f51918101906139a7565b60015b612e9c5760405160028152600080516020613a2383398151915290602001612dac565b601754158015612f875750601f54155b8015612f935750601854155b8015612f9f5750602054155b15612fa657565b6017805460195560188054601a55601f8054602155602080546022556000938490559183905582905555565b6001600160a01b03821660009081526025602052604081205460ff1615612ff7575060015b60008060008060008061300a888861223a565b95509550955095509550955061304e88600260008d6001600160a01b03166001600160a01b031681526020019081526020016000205461228d90919063ffffffff16565b6001600160a01b038b1660009081526002602090815260408083209390935560019052205461307d908761228d565b6001600160a01b03808c1660009081526001602052604080822093909355908b16815220546130ac90866121db565b6001600160a01b038a166000908152600160205260409020556130ce81613435565b6130d884836134bd565b886001600160a01b03168a6001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161311d91815260200190565b60405180910390a350505050505050505050565b6001600160a01b03821660009081526025602052604081205460ff1615613156575060015b600080600080600080613169888861223a565b9550955095509550955095506131ad86600160008d6001600160a01b03166001600160a01b031681526020019081526020016000205461228d90919063ffffffff16565b6001600160a01b03808c16600090815260016020908152604080832094909455918c168152600290915220546131e390846121db565b6001600160a01b038a166000908152600260209081526040808320939093556001905220546130ac90866121db565b6001600160a01b03821660009081526025602052604081205460ff1615613237575060015b60008060008060008061324a888861223a565b95509550955095509550955061307d86600160008d6001600160a01b03166001600160a01b031681526020019081526020016000205461228d90919063ffffffff16565b6001600160a01b03821660009081526025602052604081205460ff16156132b3575060015b6000806000806000806132c6888861223a565b95509550955095509550955061330a88600260008d6001600160a01b03166001600160a01b031681526020019081526020016000205461228d90919063ffffffff16565b6001600160a01b038b166000908152600260209081526040808320939093556001905220546131ad908761228d565b6000610ece612710613356601f54856133b390919063ffffffff16565b90611bc8565b6000610ece612710613356601754856133b390919063ffffffff16565b6000610ece612710613356602054856133b390919063ffffffff16565b6000610ece612710613356601854856133b390919063ffffffff16565b6000826000036133c557506000610ece565b60006133d183856138fe565b9050826133de85836138dc565b1461103d5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610cb8565b600061343f6121b8565b9050600061344d83836133b3565b3060009081526001602052604090205490915061346a90826121db565b3060009081526001602090815260408083209390935560079052205460ff1615610df057306000908152600260205260409020546134a890846121db565b30600090815260026020526040902055505050565b600d546134ca908361228d565b600d55600e546134da90826121db565b600e555050565b6001600160a01b03811681146134f657600080fd5b50565b60008060006060848603121561350e57600080fd5b8335613519816134e1565b9250602084013591506040840135613530816134e1565b809150509250925092565b600060208083528351808285015260005b818110156135685785810183015185820160400152820161354c565b506000604082860101526040601f19601f8301168501019250505092915050565b6000806040838503121561359c57600080fd5b82356135a7816134e1565b946020939093013593505050565b6000602082840312156135c757600080fd5b5035919050565b60008083601f8401126135e057600080fd5b50813567ffffffffffffffff8111156135f857600080fd5b6020830191508360208260051b850101111561361357600080fd5b9250929050565b80151581146134f657600080fd5b60008060006040848603121561363d57600080fd5b833567ffffffffffffffff81111561365457600080fd5b613660868287016135ce565b90945092505060208401356135308161361a565b60008060006060848603121561368957600080fd5b8335613694816134e1565b925060208401356136a4816134e1565b929592945050506040919091013590565b6000602082840312156136c757600080fd5b813561103d816134e1565b6000806000606084860312156136e757600080fd5b8335925060208401356136f98161361a565b915060408401356135308161361a565b6000806040838503121561371c57600080fd5b8235613727816134e1565b915060208301356137378161361a565b809150509250929050565b6000806020838503121561375557600080fd5b823567ffffffffffffffff81111561376c57600080fd5b613778858286016135ce565b90969095509350505050565b60006020828403121561379657600080fd5b813561103d8161361a565b600080604083850312156137b457600080fd5b82356137bf816134e1565b91506020830135613737816134e1565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561381657600080fd5b815161103d8161361a565b600181811c9082168061383557607f821691505b60208210810361385557634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161389957613899613871565b5060010190565b81810381811115610ece57610ece613871565b634e487b7160e01b600052603160045260246000fd5b80820180821115610ece57610ece613871565b6000826138f957634e487b7160e01b600052601260045260246000fd5b500490565b600081600019048311821515161561391857613918613871565b500290565b60006020828403121561392f57600080fd5b5051919050565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156139865784516001600160a01b031683529383019391830191600101613961565b50506001600160a01b03969096166060850152505050608001529392505050565b6000806000606084860312156139bc57600080fd5b835192506020840151915060408401519050925092509256fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fdd991fec16883171717fab234b0393cc1d4c9f5e7790ad1efd9f4a3a3c03ac05a2646970667358221220b18cc99c44e66c5f9d95ff03a878cf69022ccd609d5cc1081289989833d7ec6264736f6c63430008100033608060405234801561001057600080fd5b5060405161014738038061014783398101604081905261002f916100a8565b60405163095ea7b360e01b815233600482015260001960248201526001600160a01b0382169063095ea7b3906044016020604051808303816000875af115801561007d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100a191906100d8565b50506100fa565b6000602082840312156100ba57600080fd5b81516001600160a01b03811681146100d157600080fd5b9392505050565b6000602082840312156100ea57600080fd5b815180151581146100d157600080fd5b603f806101086000396000f3fe6080604052600080fdfea26469706673582212204ac82e061ea0abca212e1bae90192e8af82a374f0da8be7eff8d584b441e8f9164736f6c6343000810003300000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000003a0000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000546494748540000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005464947485400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000008d0d000ee44948fc98c9b98a4fa4921476f08b0d00000000000000000000000010ed43c718714eb63d5aa57b78b54704e256024e000000000000000000000000deb342d4d083a6221257fabaad2387a669a8d456000000000000000000000000949d582cdc0ef854d4e54cf97ac10991e5d95678000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000d3c21bcecceda1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000640000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001