0 txs
1 call
constructor
constructor((address owner, address taxWallet, address teamFinanceLocker, uint256 minLiq, uint256 supply, uint256 initTaxType, uint256 initInterval, uint256 countInterval, uint256 maxBuyTax, uint256 minBuyTax, uint256 maxSellTax, uint256 minSellTax, uint256 lpTax, uint256 maxWallet, uint256 maxTx, uint256 preventSwap, uint256 maxSwap, uint256 taxSwapThreshold, string name, string symbol) params)
functions
allowance
viewfunction allowance(address owner, address spender) view returns (uint256)
balanceOf
viewfunction balanceOf(address account) view returns (uint256)
decimals
viewfunction decimals() view returns (uint8)
getLPDetails
viewfunction getLPDetails() view returns (tuple)
name
viewfunction name() view returns (string)
owner
viewfunction owner() view returns (address)
symbol
viewfunction symbol() view returns (string)
totalSupply
viewfunction totalSupply() view returns (uint256)
approve
nonpayablefunction approve(address spender, uint256 amount) returns (bool)
burnLP
nonpayablefunction burnLP()
createPair
nonpayablefunction createPair(address router)
extendLock
nonpayablefunction extendLock(uint256 ldays)
increaseLimits
nonpayablefunction increaseLimits(uint256 maxwallet, uint256 maxtx)
increaseStakingShare
nonpayablefunction increaseStakingShare(uint256 share)
launchStaking
nonpayablefunction launchStaking(uint256 share, tuple params)
lockOnTeamFinance
payablefunction lockOnTeamFinance(uint256 lockPeriodSec) payable
rescueERC20
nonpayablefunction rescueERC20(address _address)
retrieveLock
nonpayablefunction retrieveLock()
setSocials
nonpayablefunction setSocials(string telegram, string twitter, string website)
startTrading
payablefunction startTrading(uint256 lockPeriod, bool shouldBurn, address router) payable
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 ownerAddress, address indexed spender, uint256 value)
ExternalLocked
event ExternalLocked(uint256 lockPeriod)
IncreasedLimits
event IncreasedLimits(uint256 maxWallet, uint256 maxTx)
LockRetrieved
event LockRetrieved()
LockUpdated
event LockUpdated(uint256 ldays)
LpBurnt
event LpBurnt()
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
SocialsSet
event SocialsSet(string telegram, string twitter, string website)
StakingArgs
event StakingArgs((address facetAddress, uint8 action, bytes4[] functionSelectors)[] _diamondCut, (address owner, uint256 withdrawTimeout) params)
StakingLaunched
event StakingLaunched(address stakingPool, address owner, uint256 share)
StakingMade
event StakingMade(uint256 amount)
StakingShareIncreased
event StakingShareIncreased(uint256 share)
TaxGiven
event TaxGiven(uint256 amount)
TaxMade
event TaxMade(uint256 amount)
TradingEnabled
event TradingEnabled(address pair, uint256 liq, uint256 lockPeriod, bool isBurnt, address router)
Transfer
event Transfer(address indexed from, address indexed to, uint256 value)
errors
No errors.
creation bytecode
0x608060405234801561001057600080fd5b50604051614ccb380380614ccb83398101604081905261002f916103eb565b80516001600160a01b03166100785760405162461bcd60e51b815260040161006f906020808252600490820152636f776e3160e01b604082015260600190565b60405180910390fd5b8051600380546001600160a01b0319166001600160a01b0390921691821790556040516000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a36040810151600680546001600160a01b039283166001600160a01b031991821617909155600c80548216331790556060830151600455610100830151601181905560129081556101208401516013556101408401516014819055601555610160840151601655610180840151602a5560a0840151600e5560c0840151600f5560e08401516010556000600d556018805460ff191690911790556020830151600b8054919093169116179055610240810151601a9061018190826105e0565b50610260810151601b9061019590826105e0565b5060808101516019819055610220820151601e55610200820151601f556023805460ff60b01b1916600160b01b1790556101a0820151612710916101d9919061069f565b6101e391906106ca565b6020556101c0810151601954612710916101fc9161069f565b61020691906106ca565b6021556101a08101516127101480156102255750806101c00151612710145b15610238576023805460ff60b01b191690555b7f3e470cf1ec3767d0209f5128c840997ff9b70dfe0da263b3f94eb114a05d9327816101a00151826101c0015160405161027c929190918252602082015260400190565b60405180910390a160195430600081815260096020908152604080832085905551938452919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36101e00151601d556106ec565b634e487b7160e01b600052604160045260246000fd5b60405161028081016001600160401b0381118282101715610315576103156102dc565b60405290565b604051601f8201601f191681016001600160401b0381118282101715610343576103436102dc565b604052919050565b80516001600160a01b038116811461036257600080fd5b919050565b600082601f83011261037857600080fd5b81516001600160401b03811115610391576103916102dc565b60206103a5601f8301601f1916820161031b565b82815285828487010111156103b957600080fd5b60005b838110156103d75785810183015182820184015282016103bc565b506000928101909101919091529392505050565b6000602082840312156103fd57600080fd5b81516001600160401b038082111561041457600080fd5b90830190610280828603121561042957600080fd5b6104316102f2565b61043a8361034b565b81526104486020840161034b565b60208201526104596040840161034b565b6040820152606083810151908201526080808401519082015260a0808401519082015260c0808401519082015260e08084015190820152610100808401519082015261012080840151908201526101408084015190820152610160808401519082015261018080840151908201526101a080840151908201526101c080840151908201526101e0808401519082015261020080840151908201526102208084015190820152610240808401518381111561051257600080fd5b61051e88828701610367565b828401525050610260808401518381111561053857600080fd5b61054488828701610367565b918301919091525095945050505050565b600181811c9082168061056957607f821691505b60208210810361058957634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156105db576000816000526020600020601f850160051c810160208610156105b85750805b601f850160051c820191505b818110156105d7578281556001016105c4565b5050505b505050565b81516001600160401b038111156105f9576105f96102dc565b61060d816106078454610555565b8461058f565b602080601f831160018114610642576000841561062a5750858301515b600019600386901b1c1916600185901b1785556105d7565b600085815260208120601f198616915b8281101561067157888601518255948401946001909101908401610652565b508582101561068f5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b80820281158282048414176106c457634e487b7160e01b600052601160045260246000fd5b92915050565b6000826106e757634e487b7160e01b600052601260045260246000fd5b500490565b6145d0806106fb6000396000f3fe6080604052600436106101845760003560e01c80635c89dfe1116100d6578063a9059cbb1161007f578063db7c4dda11610059578063db7c4dda14610420578063dd62ed3e14610433578063f2fde38b1461047957600080fd5b8063a9059cbb146103c0578063af66394d146103e0578063ccec37161461040057600080fd5b80638da5cb5b116100b05780638da5cb5b1461036357806395d89b411461038b5780639ccb0744146103a057600080fd5b80635c89dfe1146102eb57806370a082311461030d57806378f8484b1461034357600080fd5b806320ffb26d1161013857806344ee3a1c1161011257806344ee3a1c146102a35780634839c8b3146102c35780635a180e4b146102d857600080fd5b806320ffb26d1461024157806323b872dd14610261578063313ce5671461028157600080fd5b80630b45260e116101695780630b45260e146101eb5780630d0da2d41461020257806318160ddd1461022257600080fd5b806306fdde0314610190578063095ea7b3146101bb57600080fd5b3661018b57005b600080fd5b34801561019c57600080fd5b506101a5610499565b6040516101b291906133b7565b60405180910390f35b3480156101c757600080fd5b506101db6101d63660046133e6565b61052b565b60405190151581526020016101b2565b3480156101f757600080fd5b50610200610542565b005b34801561020e57600080fd5b5061020061021d3660046134b5565b61074e565b34801561022e57600080fd5b506019545b6040519081526020016101b2565b34801561024d57600080fd5b5061020061025c36600461353d565b6107d1565b34801561026d57600080fd5b506101db61027c366004613556565b6108c0565b34801561028d57600080fd5b5060185460405160ff90911681526020016101b2565b3480156102af57600080fd5b506102006102be36600461353d565b610969565b3480156102cf57600080fd5b50610200610aa5565b6102006102e636600461353d565b610cdf565b3480156102f757600080fd5b50610300610fbf565b6040516101b29190613597565b34801561031957600080fd5b5061023361032836600461365d565b6001600160a01b031660009081526009602052604090205490565b34801561034f57600080fd5b5061020061035e36600461367a565b611109565b34801561036f57600080fd5b506003546040516001600160a01b0390911681526020016101b2565b34801561039757600080fd5b506101a56112cd565b3480156103ac57600080fd5b506102006103bb36600461365d565b6112dc565b3480156103cc57600080fd5b506101db6103db3660046133e6565b6115f8565b3480156103ec57600080fd5b506102006103fb36600461369c565b611605565b34801561040c57600080fd5b5061020061041b36600461365d565b611c06565b61020061042e36600461371e565b611d99565b34801561043f57600080fd5b5061023361044e366004613760565b6001600160a01b039182166000908152600a6020908152604080832093909416825291909152205490565b34801561048557600080fd5b5061020061049436600461365d565b612495565b6060601a80546104a890613799565b80601f01602080910402602001604051908101604052809291908181526020018280546104d490613799565b80156105215780601f106104f657610100808354040283529160200191610521565b820191906000526020600020905b81548152906001019060200180831161050457829003601f168201915b5050505050905090565b600061053833848461256b565b5060015b92915050565b6003546001600160a01b0316331461058e5760405162461bcd60e51b8152600401610585906020808252600490820152636f776e3160e01b604082015260600190565b60405180910390fd5b602354600160c01b900460ff161580156105b25750602354600160c81b900460ff16155b80156105c75750602354600160a01b900460ff165b6105f85760405162461bcd60e51b81526020600482015260026024820152616f3160f01b6044820152606401610585565b6023805460ff60c01b1916600160c01b1790556040517fc43e780723fe0e2a85c0bd4291955d83cac42c6036fd8bf58b10463d3f9f1ae890600090a16023546040516370a0823160e01b81523060048201526001600160a01b039091169063a9059cbb9061dead9083906370a0823190602401602060405180830381865afa158015610688573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ac91906137d3565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af11580156106f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071b91906137ec565b61074c5760405162461bcd60e51b8152602060048201526002602482015261379960f11b6044820152606401610585565b565b6003546001600160a01b031633146107915760405162461bcd60e51b8152600401610585906020808252600490820152636f776e3160e01b604082015260600190565b7fce8f0dec1027cc062f7de8fc4d175e91d917fa9ad1d94ed3e4ae30b76bf9b0388383836040516107c493929190613809565b60405180910390a1505050565b6003546001600160a01b031633146108145760405162461bcd60e51b8152600401610585906020808252600490820152636f776e3160e01b604082015260600190565b60006025541180156108265750600081115b61082f57600080fd5b80602560008282546108419190613862565b9091555050602554606410156108825760405162461bcd60e51b8152600401610585906020808252600490820152633798989960e11b604082015260600190565b7fcc5d343fa3728e63489d08b6f42d710f12e9126dec83f9b9a9fa74b7e54d22416025546040516108b591815260200190565b60405180910390a150565b6001600160a01b0383166000908152600a602090815260408083203384529091528120548211156109195760405162461bcd60e51b81526020600482015260036024820152626e323560e81b6044820152606401610585565b6001600160a01b0384166000908152600a602090815260408083203380855292529091205461095491869161094f908690613875565b61256b565b61095f8484846125f2565b5060019392505050565b6003546001600160a01b031633146109ac5760405162461bcd60e51b8152600401610585906020808252600490820152636f776e3160e01b604082015260600190565b602354600160c81b900460ff161580156109d05750602354600160c01b900460ff16155b80156109e55750602354600160a01b900460ff165b610a165760405162461bcd60e51b81526020600482015260026024820152616f3360f01b6044820152606401610585565b4260245462015180610a289190613888565b601754610a359190613862565b1015610a5b576201518060175442610a4d9190613875565b610a57919061389f565b6024555b8060246000828254610a6d9190613862565b90915550506024546040519081527fa7b24c66dd3269a292a60b3facdbb8f3e7557d1e19e64d99e0d6ee7250be63ad906020016108b5565b6003546001600160a01b03163314610ae85760405162461bcd60e51b8152600401610585906020808252600490820152636f776e3160e01b604082015260600190565b602354600160c81b900460ff16158015610b0c5750602354600160c01b900460ff16155b8015610b215750602354600160a01b900460ff165b610b525760405162461bcd60e51b81526020600482015260026024820152611bcd60f21b6044820152606401610585565b42602454603c610b629190613888565b610b6d90603c613888565b610b78906018613888565b601754610b859190613862565b101561074c5760238054600160c81b60ff60c81b198216179091556040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610be6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c0a91906137d3565b6040519091507faf0fe1663cb7e005c807c426024d6b7bedd6fea7b9df02852418932d71cd78bd90600090a160235460405163a9059cbb60e01b8152336004820152602481018390526001600160a01b039091169063a9059cbb906044016020604051808303816000875af1158015610c87573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cab91906137ec565b610cdc5760405162461bcd60e51b81526020600482015260026024820152616f3560f01b6044820152606401610585565b50565b6003546001600160a01b03163314610d225760405162461bcd60e51b8152600401610585906020808252600490820152636f776e3160e01b604082015260600190565b602354600160c01b900460ff16158015610d465750602354600160c81b900460ff16155b8015610d605750602354600160a01b900460ff1615156001145b610d955760405162461bcd60e51b8152600401610585906020808252600490820152636c74663160e01b604082015260600190565b610e10811015610dd05760405162461bcd60e51b815260040161058590602080825260049082015263363a331960e11b604082015260600190565b6023546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610e19573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e3d91906137d3565b60235460065460405163095ea7b360e01b81526001600160a01b03918216600482015260248101849052929350169063095ea7b3906044016020604051808303816000875af1158015610e94573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb891906137ec565b506006546023546001600160a01b0391821691635af06fed913491163385610ee08842613862565b6040516001600160e01b031960e088901b1681526001600160a01b0394851660048201529390921660248401526044830152606482015260006084820181905260a482015260c40160206040518083038185885af1158015610f46573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f6b91906137d3565b6005556023805460ff60c81b1916600160c81b1790556040517f814370fb3d2954065c7327341b589091fbd3f878369295d8bf1beaea1a256e0e90610fb39084815260200190565b60405180910390a15050565b611059604051806101c0016040528060006001600160a01b03168152602001600081526020016000815260200160008152602001600081526020016000151581526020016000815260200160001515815260200160006001600160a01b0316815260200160008152602001600081526020016000815260200160006001600160a01b0316815260200160006001600160a01b031681525090565b604080516101c0810182526023546001600160a01b03168152600d54602082015260115491810191909152601454606082015260808101611098612b44565b815260235460ff600160c01b8204811615156020808501919091526017546040850152600160b01b909204161515606083015260006080830181905260055460a084015260215460c0840152905460e08301526022546001600160a01b031661010083015261012090910152919050565b6003546001600160a01b0316331461114c5760405162461bcd60e51b8152600401610585906020808252600490820152636f776e3160e01b604082015260600190565b602354600160b01b900460ff1661116257600080fd5b6020546064836019546111759190613888565b61117f919061389f565b1015801561118e575060648211155b6111c05760405162461bcd60e51b81526020600482015260036024820152626e323360e81b6044820152606401610585565b6021546064826019546111d39190613888565b6111dd919061389f565b101580156111ec575060648111155b61121e5760405162461bcd60e51b81526020600482015260036024820152621b8c8d60ea1b6044820152606401610585565b60648260195461122e9190613888565b611238919061389f565b60205560195460649061124c908390613888565b611256919061389f565b6021556064821480156112695750806064145b1561129757602380547fffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff1690555b60408051838152602081018390527f3e470cf1ec3767d0209f5128c840997ff9b70dfe0da263b3f94eb114a05d93279101610fb3565b6060601b80546104a890613799565b6003546001600160a01b0316331461131f5760405162461bcd60e51b8152600401610585906020808252600490820152636f776e3160e01b604082015260600190565b602854610100900460ff161561135d5760405162461bcd60e51b815260206004820152600360248201526270633160e81b6044820152606401610585565b600c5460405163a992664760e01b81526001600160a01b0383811660048301529091169063a992664790602401602060405180830381865afa1580156113a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113cb91906137ec565b6113d457600080fd5b602280546001600160a01b0319166001600160a01b038381169182178355601954306000908152600a6020908152604080832095835294815290849020919091559254825163c45a015560e01b8152925191169263c45a015592600480820193918290030181865afa15801561144e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061147291906138c1565b6001600160a01b031663c9c6539630602260009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156114d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f891906138c1565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015611545573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061156991906138c1565b602380546001600160a01b039283166001600160a01b0319909116811782556000908152600860208181526040808420805460ff19908116600190811790925595548716855260078352818520805487168217905560228054881686528286208054881683179055549096168452919052902080549091169091179055506028805461ff001916610100179055565b60006105383384846125f2565b6003546001600160a01b031633146116485760405162461bcd60e51b8152600401610585906020808252600490820152636f776e3160e01b604082015260600190565b600082118015611659575060648211155b61168b5760405162461bcd60e51b81526020600482015260036024820152626f313160e81b6044820152606401610585565b602554156116c15760405162461bcd60e51b815260206004820152600360248201526237989960e91b6044820152606401610585565b6202a3008160200151101580156116de5750620d2f008160200151105b6117105760405162461bcd60e51b81526020600482015260036024820152626f313360e81b6044820152606401610585565b60408051600280825260608201909252600091829190816020015b6040805160608082018352600080835260208301529181019190915281526020019060019003908161172b57505060408051600480825260a08201909252919250600091906020820160808036833701905050905063cdffacc660e01b8160008151811061179b5761179b6138de565b6001600160e01b03199092166020928302919091019091015280516314bbdacb60e21b90829060019081106117d2576117d26138de565b6001600160e01b03199092166020928302919091019091015280516356fe50af60e11b9082906002908110611809576118096138de565b6001600160e01b0319909216602092830291909101909101528051637a0ed62760e01b9082906003908110611840576118406138de565b6001600160e01b031990921660209283029190910182015260408051606081019091526001600160a01b0385168152908101600081526020018281525082600081518110611890576118906138de565b6020908102919091010152604080516009808252610140820190925260009181602001602082028036833701905050905063f2fde38b60e01b816000815181106118dc576118dc6138de565b6001600160e01b0319909216602092830291909101909101528051638da5cb5b60e01b9082906001908110611913576119136138de565b6001600160e01b03199092166020928302919091019091015280516366761b8b60e11b908290600290811061194a5761194a6138de565b6001600160e01b031990921660209283029190910190910152805163534a7e1d60e11b9082906003908110611981576119816138de565b6001600160e01b03199092166020928302919091019091015280516305c2fbcf60e31b90829060049081106119b8576119b86138de565b6001600160e01b0319909216602092830291909101909101528051634f91440d60e01b90829060059081106119ef576119ef6138de565b6001600160e01b0319909216602092830291909101909101528051633ccfd60b60e01b9082906006908110611a2657611a266138de565b6001600160e01b031990921660209283029190910190910152805163372500ab60e01b9082906007908110611a5d57611a5d6138de565b6001600160e01b031990921660209283029190910190910152805163cc3d967b60e01b9082906008908110611a9457611a946138de565b6001600160e01b031990921660209283029190910182015260408051606081019091526000808252909182019081526020018281525083600181518110611add57611add6138de565b602090810291909101015233855260405160009084908790611afe90613364565b611b099291906138f4565b604051809103906000f080158015611b25573d6000803e3d6000fd5b506001600160a01b03811660008181526007602090815260408083208054600160ff199182168117909255600884529382902080549094161790925560255482519384523391840191909152908201529091507fc718bf738f6d7cb0af735b17552ef9e5f1857d1719d7f882b8780ea2f08b3e7f9060600160405180910390a17f0f68eb5d57e43eb10403cd2bf67724161e9b323797195515ea96c0a0c150c93f8487604051611bd69291906138f4565b60405180910390a1602680546001600160a01b0319166001600160a01b0392909216919091179055505050505050565b6003546001600160a01b03163314611c495760405162461bcd60e51b8152600401610585906020808252600490820152636f776e3160e01b604082015260600190565b6023546001600160a01b0390811690821603611c6457600080fd5b306001600160a01b03821603611c7957600080fd5b600b546040516370a0823160e01b81523060048201526001600160a01b038381169263a9059cbb9291169083906370a0823190602401602060405180830381865afa158015611ccc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf091906137d3565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015611d3b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d5f91906137ec565b611d915760405162461bcd60e51b815260206004820152600360248201526237199960e91b6044820152606401610585565b610cdc612ba4565b6003546001600160a01b03163314611ddc5760405162461bcd60e51b8152600401610585906020808252600490820152636f776e3160e01b604082015260600190565b602354600160a01b900460ff1615611e1b5760405162461bcd60e51b81526020600482015260026024820152616e3160f01b6044820152606401610585565b600454471015611e525760405162461bcd60e51b8152602060048201526002602482015261371960f11b6044820152606401610585565b81611e65576001831015611e6557600080fd5b602380547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16600160a01b17908190556021546020549091600160b01b900460ff16801515600103611ebc57505060195490508060005b3060008181526007602090815260408083208054600160ff199182168117909255600380546001600160a01b0390811687528487208054841685179055600c8054821688528588208054851686179055600b80548316895286892080548616871790557fb0c2646e02af70b79e3fe9277b98373379f54150e4e26b2b5650139f7a75a65d8054861687179055898952600890975285882080548516861790559154811687528487208054841685179055905481168652838620805483168417905593549093168452908320805483168217905561dead9092527f046fee3d77c34a6c5e10c3be6dc4b132c30449dbf4f0bc07684896dd09334299805490911690911790558515611fe157506023805460ff60c01b1916600160c01b1790556000611ff4565b60248790556023805460ff60c01b191690555b3060009081526009602052604081205442601755602854909161010090910460ff16151590036122a757600c5460405163a992664760e01b81526001600160a01b0388811660048301529091169063a992664790602401602060405180830381865afa158015612068573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061208c91906137ec565b61209557600080fd5b602280546001600160a01b0319166001600160a01b038881169182178355601954306000908152600a6020908152604080832095835294815290849020919091559254825163c45a015560e01b8152925191169263c45a015592600480820193918290030181865afa15801561210f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061213391906138c1565b6001600160a01b031663c9c6539630602260009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612195573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121b991906138c1565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015612206573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061222a91906138c1565b602380546001600160a01b0319166001600160a01b0392831690811782556000908152600860208181526040808420805460ff199081166001908117909255955487168552600783528185208054871682179055602280548816865282862080548816831790555490961684529190529020805490911690911790555b602354602454602254604080516001600160a01b039485168152476020820152808201939093528a151560608401529216608082015290517f0157a1a09a393e0b2567e699c9fafaa987dd8440f4b66795e9667d8749d7239e9181900360a00190a160235460225460405163095ea7b360e01b81526001600160a01b039182166004820152600019602482015291169063095ea7b3906044016020604051808303816000875af115801561235f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061238391906137ec565b6123b45760405162461bcd60e51b81526020600482015260026024820152616e3360f01b6044820152606401610585565b6022546001600160a01b031663f305d719473084600080886123d742603c613862565b60405160e089901b6001600160e01b03191681526001600160a01b039687166004820152602481019590955260448501939093526064840191909152909216608482015260a481019190915260c40160606040518083038185885af1158015612444573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061246991906139f7565b50506028805460ff191660019081179091558415159003905061248b57600192505b5050505050505050565b6003546001600160a01b031633146124d85760405162461bcd60e51b8152600401610585906020808252600490820152636f776e3160e01b604082015260600190565b6003546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600380546001600160a01b0319166001600160a01b0392831690811782556000908152600760209081526040808320805460ff199081166001908117909255945490951683526008909152902080549091169091179055565b6001600160a01b03831661257e57600080fd5b6001600160a01b03821661259157600080fd5b6001600160a01b038381166000818152600a602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831661260557600080fd5b6001600160a01b03821661261857600080fd5b6001600160a01b0383166000908152600960205260409020548111156126665760405162461bcd60e51b8152602060048201526003602482015262371b1b60e91b6044820152606401610585565b602354600090600160a01b900460ff16801561268b5750602354600160b01b900460ff165b80156126b057506001600160a01b03841660009081526007602052604090205460ff16155b80156126d557506001600160a01b03831660009081526007602052604090205460ff16155b15612712578160215410156127125760405162461bcd60e51b815260206004820152600360248201526206e33360ec1b6044820152606401610585565b602354600160a01b900460ff1680156127345750602354600160b01b900460ff165b801561275957506001600160a01b03831660009081526008602052604090205460ff16155b156127bb57602080546001600160a01b03851660009081526009909252604090912054612787908490613862565b11156127bb5760405162461bcd60e51b81526020600482015260036024820152626e333160e81b6044820152606401610585565b6003546001600160a01b038581169116148015906127e757506003546001600160a01b03848116911614155b80156127fa575060285460ff1615156001145b156128bd576023546001600160a01b03858116911614801561282a57506022546001600160a01b03848116911614155b1561286b57600d805490600061283f83613a25565b919050555061284e6001612c6c565b60646011548361285e9190613888565b612868919061389f565b90505b6023546001600160a01b03848116911614801561289157506001600160a01b0384163014155b156128bd576128a06000612c6c565b6064601454836128b09190613888565b6128ba919061389f565b90505b30600090815260096020526040812054602354909190600160a81b900460ff161580156128f757506023546001600160a01b038681169116145b801561290c57506001600160a01b0386163014155b80156129185750600082115b80156129275750601d54600d54115b1561298d57601e5482118061294a575061a8c0601754426129489190613875565b115b1561298d57601c5443111561298d57601f548210156129715761296c82612e6e565b61297c565b61297c601f54612e6e565b6129854761302b565b5043601c5560015b8215612a0857306000908152600960205260409020546129ae908490613862565b30600081815260096020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906129ff9087815260200190565b60405180910390a35b6001600160a01b038616600090815260096020526040902054612a2c908590613875565b6001600160a01b0380881660009081526009602052604080822093909355908716815220548390612a5e908690613862565b612a689190613875565b6001600160a01b0380871660008181526009602052604090209290925587167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef612ab28688613875565b60405190815260200160405180910390a38015612b3c576000612afe600b60009054906101000a90046001600160a01b0316620186a0476040518060200160405280600081525061334a565b90508015612b3a576040514781527f2488b4123934dca0dca56f8f7005a71c0a52e2c9158fe31ac31869efe776d6eb9060200160405180910390a15b505b505050505050565b602354600090600160a01b900460ff16612b5e5750600090565b60006201518060175442612b729190613875565b612b7c919061389f565b9050602454811115612b9057600091505090565b80602454612b9e9190613875565b91505090565b602354600160a81b900460ff16158015612bc75750602354600160a01b900460ff165b1561074c57478015610cdc57612bdc8161302b565b600b546040516000916001600160a01b03169047908381818185875af1925050503d8060008114612c29576040519150601f19603f3d011682016040523d82523d6000602084013e612c2e565b606091505b505090508015612c68576040514781527f2488b4123934dca0dca56f8f7005a71c0a52e2c9158fe31ac31869efe776d6eb90602001610fb3565b5050565b60008060008315612c8b57601254925060135491506011549050612c9b565b6015549250601654915060145490505b818114612e6857600e54600003612d4857600f54601754612cbc9190613862565b4210612cc9575080612e52565b6002600f54612cd8919061389f565b601754612ce59190613862565b4210612d12576004612cf78385613875565b612d01919061389f565b612d0b9083613862565b9050612e52565b6004600f54612d21919061389f565b601754612d2e9190613862565b4210612d40576002612cf78385613875565b50815b612e52565b600e54600103612d8457601054600d541115612d65575080612d68565b50815b601754612d7790611c20613862565b4210612d43575080612e52565b600e54600203612e4f57601054600d541180612daf5750600f54601754612dab9190613862565b4210155b15612dbb575080612e52565b6002601054612dca919061389f565b600d541180612df457506002600f54612de3919061389f565b601754612df09190613862565b4210155b15612e05576004612cf78385613875565b6004601054612e14919061389f565b600d541180612e3e57506004600f54612e2d919061389f565b601754612e3a9190613862565b4210155b15612d40576002612cf78385613875565b50805b8315612e62576011819055612e68565b60148190555b50505050565b6023805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110612eb657612eb66138de565b6001600160a01b03928316602091820292909201810191909152602254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015612f0f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f3391906138c1565b81600181518110612f4657612f466138de565b6001600160a01b0390921660209283029190910190910152602a5415612f975760c8602a5483612f769190613888565b612f80919061389f565b6029819055612f8f9083613875565b602781905591505b602254612faf9030906001600160a01b03168461256b565b60225460405163791ac94760e01b81526001600160a01b039091169063791ac94790612fe8908590600090869030904290600401613a3e565b600060405180830381600087803b15801561300257600080fd5b505af1158015613016573d6000803e3d6000fd5b50506023805460ff60a81b1916905550505050565b60008060008062015180601754426130439190613875565b101561312957606461305686600a613888565b613060919061389f565b93507f27becf433f6eafb15520b27cdc27123fc4bb3ab578777db9f713bd54da1611a68460405161309391815260200190565b60405180910390a1600c546040516000916001600160a01b03169086908381818185875af1925050503d80600081146130e8576040519150601f19603f3d011682016040523d82523d6000602084013e6130ed565b606091505b50509050806131275760405162461bcd60e51b8152600401610585906020808252600490820152636e73393960e01b604082015260600190565b505b6000602a5411801561313d57506000602954115b1561324357602754856029546131539190613888565b61315d919061389f565b60298054600091829055602791909155602254919450915061318a9030906001600160a01b03168361256b565b6022546001600160a01b031663f305d719843084600080836131ad42603c613862565b60405160e089901b6001600160e01b03191681526001600160a01b039687166004820152602481019590955260448501939093526064840191909152909216608482015260a481019190915260c40160606040518083038185885af115801561321a573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061323f91906139f7565b5050505b6026546001600160a01b03161561334357606482846132628789613875565b61326c9190613875565b6132769190613888565b613280919061389f565b6026546040519193506000916001600160a01b039091169084908381818185875af1925050503d80600081146132d2576040519150601f19603f3d011682016040523d82523d6000602084013e6132d7565b606091505b505090508061330e5760405162461bcd60e51b81526020600482015260036024820152626e733960e81b6044820152606401610585565b6040518381527f3392b75a0721e4605be82daf22af3b927da9086deccc7dbb947b37bf895d3deb9060200160405180910390a1505b5050505050565b600080600080845160208601878a8af19695505050505050565b610ae980613ab283390190565b6000815180845260005b818110156133975760208185018101518683018201520161337b565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006133ca6020830184613371565b9392505050565b6001600160a01b0381168114610cdc57600080fd5b600080604083850312156133f957600080fd5b8235613404816133d1565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261343957600080fd5b813567ffffffffffffffff8082111561345457613454613412565b604051601f8301601f19908116603f0116810190828211818310171561347c5761347c613412565b8160405283815286602085880101111561349557600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806000606084860312156134ca57600080fd5b833567ffffffffffffffff808211156134e257600080fd5b6134ee87838801613428565b9450602086013591508082111561350457600080fd5b61351087838801613428565b9350604086013591508082111561352657600080fd5b5061353386828701613428565b9150509250925092565b60006020828403121561354f57600080fd5b5035919050565b60008060006060848603121561356b57600080fd5b8335613576816133d1565b92506020840135613586816133d1565b929592945050506040919091013590565b81516001600160a01b031681526101c081016020830151602083015260408301516040830152606083015160608301526080830151608083015260a08301516135e460a084018215159052565b5060c083015160c083015260e083015161360260e084018215159052565b50610100838101516001600160a01b0390811691840191909152610120808501519084015261014080850151908401526101608085015190840152610180808501518216908401526101a09384015116929091019190915290565b60006020828403121561366f57600080fd5b81356133ca816133d1565b6000806040838503121561368d57600080fd5b50508035926020909101359150565b60008082840360608112156136b057600080fd5b833592506040601f19820112156136c657600080fd5b506040516040810181811067ffffffffffffffff821117156136ea576136ea613412565b60405260208401356136fb816133d1565b81526040939093013560208401525092909150565b8015158114610cdc57600080fd5b60008060006060848603121561373357600080fd5b83359250602084013561374581613710565b91506040840135613755816133d1565b809150509250925092565b6000806040838503121561377357600080fd5b823561377e816133d1565b9150602083013561378e816133d1565b809150509250929050565b600181811c908216806137ad57607f821691505b6020821081036137cd57634e487b7160e01b600052602260045260246000fd5b50919050565b6000602082840312156137e557600080fd5b5051919050565b6000602082840312156137fe57600080fd5b81516133ca81613710565b60608152600061381c6060830186613371565b828103602084015261382e8186613371565b905082810360408401526138428185613371565b9695505050505050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561053c5761053c61384c565b8181038181111561053c5761053c61384c565b808202811582820484141761053c5761053c61384c565b6000826138bc57634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156138d357600080fd5b81516133ca816133d1565b634e487b7160e01b600052603260045260246000fd5b60006060808301606084528086518083526080925060808601915060808160051b8701016020808a0160005b848110156139c657607f198a850301865281518885016001600160a01b038251168652848201516003811061396557634e487b7160e01b600052602160045260246000fd5b868601526040918201519186018a905281519081905290840190600090898701905b808310156139b15783516001600160e01b0319168252928601926001929092019190860190613987565b50978501979550505090820190600101613920565b50508196506139ea8189018a80516001600160a01b03168252602090810151910152565b5050505050509392505050565b600080600060608486031215613a0c57600080fd5b8351925060208401519150604084015190509250925092565b600060018201613a3757613a3761384c565b5060010190565b600060a08201878352602087602085015260a0604085015281875180845260c08601915060208901935060005b81811015613a905784516001600160a01b031683529383019391830191600101613a6b565b50506001600160a01b0396909616606085015250505060800152939250505056fe608060405234801561001057600080fd5b50604051610ae9380380610ae983398101604081905261002f91610608565b80516001600160a01b031661004357600080fd5b6040805160008082526020820190925261005e9184916100f2565b80516100699061028e565b6348e2b09360e01b60009081527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131f60209081527f65d510a5d8f7ef134ec444f7f34ee808c8eeb5177cdfd16be0c40fe1ab433695805460ff19166001908117909155670de0b6b3a7640000905581546001600160a01b0319163317909155015160035550610838565b7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131e54600080516020610ac98339815191529061ffff81169081906000906007161561014f5750600381901c60009081526001840160205260409020545b60005b87518110156101d2576101c583838a848151811061017257610172610796565b6020026020010151600001518b858151811061019057610190610796565b6020026020010151602001518c86815181106101ae576101ae610796565b60200260200101516040015161031160201b60201c565b9093509150600101610152565b508282146101ee5760028401805461ffff191661ffff84161790555b600782161561021057600382901c600090815260018501602052604090208190555b6001600160a01b038616156102515760405162461bcd60e51b81526020600482015260026024820152616c3160f01b60448201526064015b60405180910390fd5b8451156102855760405162461bcd60e51b8152602060048201526002602482015261361960f11b6044820152606401610248565b50505050505050565b7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c132080546001600160a01b031981166001600160a01b03848116918217909355604051600080516020610ac9833981519152939092169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3505050565b60008080600080516020610ac98339815191529050600084511161035c5760405162461bcd60e51b81526020600482015260026024820152616c3360f01b6044820152606401610248565b6000856002811115610370576103706107ac565b036104a55761039f86604051806040016040528060028152602001611b0d60f21b8152506104de60201b60201c565b60005b845181101561049f5760008582815181106103bf576103bf610796565b6020908102919091018101516001600160e01b03198116600090815291859052604090912054909150606081901c1561041f5760405162461bcd60e51b81526020600482015260026024820152616c3560f01b6044820152606401610248565b6001600160e01b031980831660008181526020879052604090206001600160601b031960608d901b168e17905560e060058e901b811692831c199c909c1690821c179a8190036104835760038c901c600090815260018601602052604081209b909b555b8b61048d816107c2565b9c5050600190930192506103a2915050565b506104d2565b60405162461bcd60e51b8152602060048201526002602482015261361b60f11b6044820152606401610248565b50959694955050505050565b813b81816104ff5760405162461bcd60e51b815260040161024891906107e9565b50505050565b634e487b7160e01b600052604160045260246000fd5b604051606081016001600160401b038111828210171561053d5761053d610505565b60405290565b604051601f8201601f191681016001600160401b038111828210171561056b5761056b610505565b604052919050565b60006001600160401b0382111561058c5761058c610505565b5060051b60200190565b80516001600160a01b03811681146105ad57600080fd5b919050565b6000604082840312156105c457600080fd5b604080519081016001600160401b03811182821017156105e6576105e6610505565b6040529050806105f583610596565b8152602083015160208201525092915050565b6000806060838503121561061b57600080fd5b82516001600160401b038082111561063257600080fd5b818501915085601f83011261064657600080fd5b8151602061065b61065683610573565b610543565b82815260059290921b8401810191818101908984111561067a57600080fd5b8286015b848110156107785780518681111561069557600080fd5b87016060818d03601f190112156106ab57600080fd5b6106b361051b565b6106be868301610596565b81526040820151600381106106d257600080fd5b818701526060820151888111156106e857600080fd5b8083019250508c603f8301126106fd57600080fd5b8582015161070d61065682610573565b81815260059190911b830160400190878101908f83111561072d57600080fd5b6040850194505b828510156107635784516001600160e01b03198116811461075457600080fd5b82529388019390880190610734565b6040840152505084525091830191830161067e565b5096506107899050888883016105b2565b9450505050509250929050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b6000600182016107e257634e487b7160e01b600052601160045260246000fd5b5060010190565b60006020808352835180602085015260005b81811015610817578581018301518582016040015282016107fb565b506000604082860101526040601f19601f8301168501019250505092915050565b610282806108476000396000f3fe6080604052366101345734806100425760405162461bcd60e51b815260206004820152600360248201526239b21960e91b60448201526064015b60405180910390fd5b33600090815260076020526040812080548392906100619084906101fa565b90915550506006805482919060009061007b9084906101fa565b90915550506002546000036100aa57806000600401600082825461009f91906101fa565b909155506100ee9050565b6002546001546004546100bd90846101fa565b6100c79190610213565b6100d1919061022a565b600580546000906100e39084906101fa565b909155505060006004555b60055460405133917f731185b941ee4773f1c8f1cf0c22be2c6b4eaeb0075fbb4c524ac1f80ad391f39161012a91858252602082015260400190565b60405180910390a2005b600080357fffffffff000000000000000000000000000000000000000000000000000000001681527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c6020819052604090912054819060601c806101c05760405162461bcd60e51b815260206004820152600360248201526273643160e81b6044820152606401610039565b3660008037600080366000845af43d6000803e8080156101df573d6000f35b3d6000fd5b634e487b7160e01b600052601160045260246000fd5b8082018082111561020d5761020d6101e4565b92915050565b808202811582820484141761020d5761020d6101e4565b60008261024757634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212201b42dcee54bc15a7fa7367cfe3a6eac1caf522ead8e432d52387346c8156d75264736f6c63430008190033c8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131ca2646970667358221220f47650e388c6a94bc104701bc62299acb7b547f7a59cc249c6935e6f0c7854a364736f6c634300081900330000000000000000000000000000000000000000000000000000000000000020000000000000000000000000ae094f3d145320f38f811a12a577b2b72786f2a0000000000000000000000000ae094f3d145320f38f811a12a577b2b72786f2a00000000000000000000000000c89c0407775dd89b12918b9c0aa42bf96518820000000000000000000000000000000000000000000000000002386f26fc100000000000000000000000000000000000000000000204fce5e3e2502611000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000e1000000000000000000000000000000000000000000000000000000000000000280000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000640000000000000000000000000000000000000000000000000000000000000064000000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000052b7d2dcc80cd2e4000000000000000000000000000000000000000000000000084595161401484a000000000000000000000000000000000000000000000000000000000000000000028000000000000000000000000000000000000000000000000000000000000002c0000000000000000000000000000000000000000000000000000000000000000e54656368537570706f727465646400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000045445434800000000000000000000000000000000000000000000000000000000