50 txs
52 calls
constructor
constructor()
functions
blacklisted
viewfunction blacklisted(address) view returns (bool)
BONUS_ROUND
viewfunction BONUS_ROUND() view returns (uint64)
calcDepositPercentsMonthly
viewfunction calcDepositPercentsMonthly(address user) view returns (uint256[])
DEPOSIT_COMISSION
viewfunction DEPOSIT_COMISSION() view returns (uint64)
directRefBonusSize
viewfunction directRefBonusSize() view returns (uint8)
getAllUserDeposits
viewfunction getAllUserDeposits(address user) view returns (uint8[], uint32[], uint256[], uint256[], uint256[], bool[])
getCommision
viewfunction getCommision() view returns (uint256)
getUserDepositsByIndexes
viewfunction getUserDepositsByIndexes(address user, uint16[] depositIndexes) view returns (uint8[] depositTariffIds, uint32[] depositAts, uint256[] depositAmounts, uint256[] depositPaidOuts, uint256[] depositPercentsMonthly, bool[] depositClosed)
getWithdrawValue
viewfunction getWithdrawValue(address user) view returns (uint256)
investors
viewfunction investors(address) view returns (uint32 id, uint16 numDeposits, address referrer, uint16 referralCount, uint256 totalDepositedByRefs, uint256 invested, uint256 withdrawn)
MAX_DEPOSIT
viewfunction MAX_DEPOSIT() view returns (uint128)
MIN_DEPOSIT
viewfunction MIN_DEPOSIT() view returns (uint128)
state
viewfunction state() view returns (bool)
tariffs
viewfunction tariffs(uint256) view returns (uint32 time, uint8 percent, uint256 max_depo, bool status, uint32 withdrawPeriod)
votes1
viewfunction votes1() view returns (bool)
votes2
viewfunction votes2() view returns (bool)
votes3
viewfunction votes3() view returns (bool)
WITHDRAW_COMISSION
viewfunction WITHDRAW_COMISSION() view returns (uint64)
addAddressToBlacklist
nonpayablefunction addAddressToBlacklist(address addr) returns (bool success)
deposit
payablefunction deposit(uint8 _tariff, uint256 amount, address _referrer) payable returns (uint8, uint256, address)
depositForUser
nonpayablefunction depositForUser(uint8 _tariff, uint256 amount, address _wallet, address _referrer) returns (uint8, uint256, address)
removeAddressFromBlacklist
nonpayablefunction removeAddressFromBlacklist(address addr) returns (bool success)
setBonusRound
nonpayablefunction setBonusRound(uint64 newRound) returns (uint64)
setMaxDeposit
nonpayablefunction setMaxDeposit(uint128 max) returns (uint128)
setMinDeposit
nonpayablefunction setMinDeposit(uint128 min) returns (uint128)
setRefBonus
nonpayablefunction setRefBonus(uint8 percent) returns (uint8)
setTariffStatus
nonpayablefunction setTariffStatus(uint256 _tariff, bool _status) returns (bool)
setTokenContract
nonpayablefunction setTokenContract(address _tokenContract)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
turnOff
nonpayablefunction turnOff() returns (bool)
turnOn
nonpayablefunction turnOn() returns (bool)
voting
nonpayablefunction voting() returns (bool)
withdraw
nonpayablefunction withdraw()
withdrawThreeVoices
nonpayablefunction withdrawThreeVoices(uint256 amount)
events
DepositEvent
event DepositEvent(uint8 tariff, uint256 indexed _amount, address indexed _user)
withdrawEvent
event withdrawEvent(address indexed _user, uint256 indexed _amount)
errors
No errors.
creation bytecode
0x60806040527a084595161401484a000000000000000000010f0cf064dd59200000600055600180546001600160881b031916600517905534801561004257600080fd5b5060038054680100000000000000003302600160401b600160e01b0319909116178155600480546006805462ffffff1916905560ff60c01b1963ffffffff428116600160a01b029190911664ffffffffff60a01b199092169190911782556040805160a0810182526303b538008152600c60208201908152600080546001600160801b03600160801b9091041693830193845260016060840181815262278d0060808601908152600580549384018155909352935197027f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db081018054935160ff166401000000000264ffffffffff19948516998816999099179890981790975592517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db187015590517f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db29095018054925184166101000264ffffffff001996151596909616929091169190911793909317909255805463ffffffff60d01b1916600160d01b9081178083550490911690601a6101dc83610292565b82546101009290920a63ffffffff8181021990931691831602179091556003546801000000000000000090046001600160a01b03166000908152600760205260409020805463ffffffff1916928216929092179091556004805460ff60c81b19169081905561025791600160a01b90910416620697806102b7565b600460146101000a81548163ffffffff021916908363ffffffff1602179055506102d9565b634e487b7160e01b600052601160045260246000fd5b600063ffffffff821663ffffffff81036102ae576102ae61027c565b60010192915050565b63ffffffff81811683821601908111156102d3576102d361027c565b92915050565b613ae5806102e86000396000f3fe6080604052600436106101ff5760003560e01c8063af10c8101161010e578063e025fac5116100a7578063ec7dced511610079578063f2fde38b11610061578063f2fde38b14610740578063fce1ccca14610760578063fdaad9131461077557005b8063ec7dced514610700578063f2c816ae1461072057005b8063e025fac51461062f578063e1e158a51461066a578063e6d72ed01461068a578063e8f2be52146106aa57005b8063c19d93fb116100e0578063c19d93fb14610599578063ca786f6d146105b8578063dbac26e9146105d8578063dd5967c31461060857005b8063af10c81014610529578063b0a46a821461053e578063ba33ed7d14610564578063bbcd5bbe1461057957005b80633fcd0aec116101985780637968a7c81161016a578063908ea3e711610152578063908ea3e7146104af578063a6c455cc146104cf578063ad4f48df1461050957005b80637968a7c814610475578063878c13df1461048f57005b80633fcd0aec1461033c5780635b4405961461035f578063675cd6e21461037f5780636f7bc9be146103b757005b80632c7a2e5b116101d15780632c7a2e5b146102c8578063332336df146102e757806335e82f3a146103075780633ccfd60b1461032757005b80630fe3709f146102085780631327e2581461023f57806323833186146102695780632516b3c11461029657005b3661020657005b005b34801561021457600080fd5b506102286102233660046135b2565b6107a3565b60405160ff90911681526020015b60405180910390f35b34801561024b57600080fd5b506006546102599060ff1681565b6040519015158152602001610236565b34801561027557600080fd5b506102896102843660046135eb565b61081b565b6040516102369190613642565b3480156102a257600080fd5b506102b66102b13660046135eb565b610bef565b604051610236969594939291906136c1565b3480156102d457600080fd5b5060065461025990610100900460ff1681565b3480156102f357600080fd5b506006546102599062010000900460ff1681565b34801561031357600080fd5b506102596103223660046135eb565b61101e565b34801561033357600080fd5b506102066110be565b34801561034857600080fd5b506103516113c4565b604051908152602001610236565b34801561036b57600080fd5b5061035161037a3660046135eb565b611425565b34801561038b57600080fd5b5061039f61039a366004613770565b611a0f565b6040516001600160801b039091168152602001610236565b3480156103c357600080fd5b506104276103d23660046135eb565b6007602052600090815260409020805460028201546003830154600484015460059094015463ffffffff9093169361ffff808416946001600160a01b036201000086041694600160b01b900490911692919087565b6040805163ffffffff909816885261ffff96871660208901526001600160a01b0390951694870194909452939091166060850152608084015260a083019190915260c082015260e001610236565b34801561048157600080fd5b506001546102289060ff1681565b34801561049b57600080fd5b506102066104aa366004613799565b611aa4565b3480156104bb57600080fd5b506102596104ca3660046137c0565b611c53565b3480156104db57600080fd5b506003546104f09067ffffffffffffffff1681565b60405167ffffffffffffffff9091168152602001610236565b34801561051557600080fd5b506104f06105243660046137f0565b611cec565b34801561053557600080fd5b50610259611d6b565b34801561054a57600080fd5b506001546104f090610100900467ffffffffffffffff1681565b34801561057057600080fd5b50610259611e09565b34801561058557600080fd5b506102066105943660046135eb565b611e9e565b3480156105a557600080fd5b50600454600160c01b900460ff16610259565b3480156105c457600080fd5b5061039f6105d3366004613770565b611f2f565b3480156105e457600080fd5b506102596105f33660046135eb565b60086020526000908152604090205460ff1681565b34801561061457600080fd5b5060005461039f90600160801b90046001600160801b031681565b61064261063d36600461381a565b611faf565b6040805160ff909416845260208401929092526001600160a01b031690820152606001610236565b34801561067657600080fd5b5060005461039f906001600160801b031681565b34801561069657600080fd5b506106426106a5366004613856565b6120c6565b3480156106b657600080fd5b506106ca6106c5366004613799565b61224c565b6040805163ffffffff968716815260ff90951660208601528401929092521515606083015291909116608082015260a001610236565b34801561070c57600080fd5b506102b661071b3660046138cb565b61229e565b34801561072c57600080fd5b5061025961073b3660046135eb565b612691565b34801561074c57600080fd5b5061020661075b3660046135eb565b612734565b34801561076c57600080fd5b506102596127df565b34801561078157600080fd5b506001546104f0906901000000000000000000900467ffffffffffffffff1681565b600354600090600160401b90046001600160a01b031633146108025760405162461bcd60e51b8152602060048201526013602482015272139bc81cdd59999a58da595b9d081c9a59da1d606a1b60448201526064015b60405180910390fd5b506001805460ff191660ff83169081179091555b919050565b3360009081526008602052604090205460609060ff161561083b57600080fd5b600454600160c01b900460ff16151560010361085657600080fd5b6001600160a01b03821660009081526007602052604081206002015461ffff1667ffffffffffffffff81111561088e5761088e6138a3565b6040519080825280602002602001820160405280156108b7578160200160208202803683370190505b50905060005b6001600160a01b03841660009081526007602052604090206002015461ffff9081169082161015610be8576001600160a01b038416600090815260076020908152604080832061ffff851684526001908101835292819020815161012081018352815460ff9081168252828601549482019490945260028201549281019290925260038101546060830152600481015463ffffffff808216608085015264010000000082041660a0840152600160401b9004909216151560c0820152600582015460e0820152600690910154610100820152610998906128aa565b10610be0576001600160a01b038416600090815260076020908152604080832061ffff851684526001908101835292819020815161012081018352815460ff9081168252828601549482019490945260028201549281019290925260038101546060830152600481015463ffffffff808216608085015264010000000082041660a0840152600160401b9004909216151560c0820152600582015460e082015260069091015461010082015260649190610a51906128aa565b610a5b91906139c4565b6001600160a01b038616600090815260076020908152604080832061ffff871684526001908101835292819020815161012081018352815460ff9081168252948201549381019390935260028101549183019190915260038101546060830152600481015463ffffffff808216608085015264010000000082041660a0840152600160401b9004909216151560c0820152600582015460e0820152600690910154610100820152610b0b906128aa565b610b1591906139ee565b6001600160a01b038616600090815260076020908152604080832061ffff8716845260010190915290205460058054909160ff16908110610b5857610b58613a01565b600091825260208083206003909202909101546001600160a01b038916835260078252604080842061ffff88168552600101909252912060060154610ba99160ff6401000000009091041690613a17565b610bb39190613a17565b610bbd9190613a2e565b828261ffff1681518110610bd357610bd3613a01565b6020026020010181815250505b6001016108bd565b5092915050565b336000908152600860205260409020546060908190819081908190819060ff1615610c1957600080fd5b6001600160a01b03871660009081526007602052604081206002015461ffff1667ffffffffffffffff811115610c5157610c516138a3565b604051908082528060200260200182016040528015610c7a578160200160208202803683370190505b506001600160a01b0389166000908152600760205260408120600201549192509061ffff1667ffffffffffffffff811115610cb757610cb76138a3565b604051908082528060200260200182016040528015610ce0578160200160208202803683370190505b506001600160a01b038a166000908152600760205260408120600201549192509061ffff1667ffffffffffffffff811115610d1d57610d1d6138a3565b604051908082528060200260200182016040528015610d46578160200160208202803683370190505b506001600160a01b038b166000908152600760205260408120600201549192509061ffff1667ffffffffffffffff811115610d8357610d836138a3565b604051908082528060200260200182016040528015610dac578160200160208202803683370190505b5090506000610dba8c61081b565b6001600160a01b038d166000908152600760205260408120600201549192509061ffff1667ffffffffffffffff811115610df657610df66138a3565b604051908082528060200260200182016040528015610e1f578160200160208202803683370190505b50905060005b6001600160a01b038e1660009081526007602052604090206002015461ffff9081169082161015611009576001600160a01b038e16600090815260076020908152604080832061ffff8516808552600190910190925290912054885160ff9091169189918110610e9757610e97613a01565b60ff9092166020928302919091018201526001600160a01b038f16600090815260078252604080822061ffff85168084526001909101909352902060040154875163ffffffff9091169188918110610ef157610ef1613a01565b63ffffffff9092166020928302919091018201526001600160a01b038f16600090815260078252604080822061ffff85168084526001918201909452912001548651909187918110610f4557610f45613a01565b6020908102919091018101919091526001600160a01b038f16600090815260078252604080822061ffff851680845260019091019093529020600201548551909186918110610f9657610f96613a01565b6020908102919091018101919091526001600160a01b038f16600090815260078252604080822061ffff851680845260019091019093529020600401548351600160401b90910460ff169184918110610ff157610ff1613a01565b91151560209283029190910190910152600101610e25565b50949c939b5091995097509550909350915050565b600354600090600160401b90046001600160a01b031633146110785760405162461bcd60e51b8152602060048201526013602482015272139bc81cdd59999a58da595b9d081c9a59da1d606a1b60448201526064016107f9565b6001600160a01b03821660009081526008602052604090205460ff161561081657506001600160a01b03166000908152600860205260409020805460ff19169055600190565b3360009081526008602052604090205460ff16156110db57600080fd5b600454600160c01b900460ff1615156001036110f657600080fd5b3361110057600080fd5b600061110b33612930565b90506000811161115d5760405162461bcd60e51b815260206004820152601360248201527f496e73756666696369656e7420616d6f756e740000000000000000000000000060448201526064016107f9565b6004546001546001600160a01b039091169063a9059cbb90339061119090610100900467ffffffffffffffff16856139ee565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af11580156111f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112179190613a42565b5060015460025461123791610100900467ffffffffffffffff1690613a5f565b60025560005b3360009081526007602052604090206002015461ffff90811690821610156113645733600090815260076020908152604080832061ffff851684526001019091529020600401544264010000000090910463ffffffff16116112fd5733600090815260076020908152604080832061ffff851684526001019091529020600281015460039091015411156112f85733600090815260076020908152604080832061ffff85168452600101909152902060038101546002909101555b61135c565b33600090815260076020908152604080832061ffff8516845260010190915290206002810154600590910154111561135c5733600090815260076020908152604080832061ffff85168452600101909152902060058101546002909101555b60010161123d565b5033600090815260076020526040902060050154611383908290613a5f565b3360008181526007602052604080822060050193909355915183927f87d5f4772963d1f9b76047158b4ae97c420a1b3bff2a746c828beffd9e7c3e2691a350565b600354600090600160401b90046001600160a01b0316331461141e5760405162461bcd60e51b8152602060048201526013602482015272139bc81cdd59999a58da595b9d081c9a59da1d606a1b60448201526064016107f9565b5060025490565b6001600160a01b03811660009081526007602052604081206002015481908190819061ffff1667ffffffffffffffff811115611463576114636138a3565b6040519080825280602002602001820160405280156114f457816020015b6114e1604051806101200160405280600060ff168152602001600081526020016000815260200160008152602001600063ffffffff168152602001600063ffffffff16815260200160001515815260200160008152602001600081525090565b8152602001906001900390816114815790505b50905060005b6001600160a01b03861660009081526007602052604090206002015461ffff90811690821610156119ed576001600160a01b038616600090815260076020908152604080832061ffff851684526001908101835292819020815161012081018352815460ff9081168252828601549482019490945260028201549281019290925260038101546060830152600481015463ffffffff808216608085015264010000000082041660a0840152600160401b9004909216151560c0820152600582015460e08201526006909101546101008201526115d5906128aa565b10156115e2576000611802565b6001600160a01b038616600090815260076020908152604080832061ffff851684526001908101835292819020815161012081018352815460ff9081168252828601549482019490945260028201549281019290925260038101546060830152600481015463ffffffff808216608085015264010000000082041660a0840152600160401b9004909216151560c0820152600582015460e082015260069091015461010082015260649190611696906128aa565b6116a091906139c4565b6001600160a01b038816600090815260076020908152604080832061ffff871684526001908101835292819020815161012081018352815460ff9081168252948201549381019390935260028101549183019190915260038101546060830152600481015463ffffffff808216608085015264010000000082041660a0840152600160401b9004909216151560c0820152600582015460e0820152600690910154610100820152611750906128aa565b61175a91906139ee565b6001600160a01b038816600090815260076020908152604080832061ffff8716845260010190915290205460058054909160ff1690811061179d5761179d613a01565b600091825260208083206003909202909101546001600160a01b038b16835260078252604080842061ffff881685526001019092529120600601546117ee9160ff6401000000009091041690613a17565b6117f89190613a17565b6118029190613a2e565b828261ffff168151811061181857611818613a01565b60209081029190910181015160e001919091526001600160a01b038716600090815260078252604080822061ffff85168352600101909252206002015461185f9084613a5f565b6001600160a01b038716600090815260076020908152604080832061ffff86168452600101909152902060040154909350600160401b900460ff16806118e157506001600160a01b038616600090815260076020908152604080832061ffff851684526001019091529020600401544264010000000090910463ffffffff1611155b1561196d576001600160a01b038616600090815260076020908152604080832061ffff8516808552600190910190925290912060060154835190918491811061192c5761192c613a01565b602002602001015160e001516119429190613a5f565b828261ffff168151811061195857611958613a01565b602002602001015160600181815250506119b6565b818161ffff168151811061198357611983613a01565b602002602001015160e00151828261ffff16815181106119a5576119a5613a01565b602002602001015160600181815250505b818161ffff16815181106119cc576119cc613a01565b602002602001015160600151846119e39190613a5f565b93506001016114fa565b508183116119fc576000611a06565b611a0682846139ee565b95945050505050565b600354600090600160401b90046001600160a01b03163314611a695760405162461bcd60e51b8152602060048201526013602482015272139bc81cdd59999a58da595b9d081c9a59da1d606a1b60448201526064016107f9565b50600080547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166001600160801b0392909216918217905590565b600354600160401b90046001600160a01b03163314611afb5760405162461bcd60e51b8152602060048201526013602482015272139bc81cdd59999a58da595b9d081c9a59da1d606a1b60448201526064016107f9565b60065460ff168015611b145750600654610100900460ff165b8015611b28575060065462010000900460ff165b611b745760405162461bcd60e51b815260206004820152600c60248201527f4e656564203320766f746573000000000000000000000000000000000000000060448201526064016107f9565b60065460ff168015611b8d5750600654610100900460ff165b8015611ba1575060065462010000900460ff165b15611c505747811115611bb357600080fd5b600480546040517fa9059cbb0000000000000000000000000000000000000000000000000000000081523392810192909252602482018390526001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015611c1e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c429190613a42565b506006805462ffffff191690555b50565b600354600090600160401b90046001600160a01b03163314611cad5760405162461bcd60e51b8152602060048201526013602482015272139bc81cdd59999a58da595b9d081c9a59da1d606a1b60448201526064016107f9565b8160058481548110611cc157611cc1613a01565b60009182526020909120600390910201600201805460ff191691151591909117905550805b92915050565b600354600090600160401b90046001600160a01b03163314611d465760405162461bcd60e51b8152602060048201526013602482015272139bc81cdd59999a58da595b9d081c9a59da1d606a1b60448201526064016107f9565b506003805467ffffffffffffffff191667ffffffffffffffff92909216918217905590565b600354600090600160401b90046001600160a01b03163314611dc55760405162461bcd60e51b8152602060048201526013602482015272139bc81cdd59999a58da595b9d081c9a59da1d606a1b60448201526064016107f9565b50600480547fffffffffffff0000ffffffffffffffffffffffffffffffffffffffffffffffff16908190556006805462ffffff19169055600160c01b900460ff1690565b600354600090600160401b90046001600160a01b03163314611e635760405162461bcd60e51b8152602060048201526013602482015272139bc81cdd59999a58da595b9d081c9a59da1d606a1b60448201526064016107f9565b50600480547fffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffffffff16600160c01b90811791829055900460ff1690565b600354600160401b90046001600160a01b03163314611ef55760405162461bcd60e51b8152602060048201526013602482015272139bc81cdd59999a58da595b9d081c9a59da1d606a1b60448201526064016107f9565b600480547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b600354600090600160401b90046001600160a01b03163314611f895760405162461bcd60e51b8152602060048201526013602482015272139bc81cdd59999a58da595b9d081c9a59da1d606a1b60448201526064016107f9565b50600080546001600160801b03908116600160801b938216840217918290559190041690565b60008080336001600160a01b0385160361200b5760405162461bcd60e51b815260206004820181905260248201527f596f752063616e6e6f7420626520796f7572206f776e2072656665727265722160448201526064016107f9565b3360009081526007602052604090205463ffffffff16156120a957336000908152600760205260409020600201546001600160a01b038581166201000090920416146120a95760405162461bcd60e51b815260206004820152602760248201527f5265666572726572206d69736d6174636820666f72206578697374696e672069604482015266373b32b9ba37b960c91b60648201526084016107f9565b6120b7868633876000612e2a565b92509250925093509350939050565b60035460009081908190600160401b90046001600160a01b031633146121245760405162461bcd60e51b8152602060048201526013602482015272139bc81cdd59999a58da595b9d081c9a59da1d606a1b60448201526064016107f9565b846001600160a01b0316846001600160a01b0316036121855760405162461bcd60e51b815260206004820181905260248201527f596f752063616e6e6f7420626520796f7572206f776e2072656665727265722160448201526064016107f9565b6001600160a01b03851660009081526007602052604090205463ffffffff161561222e576001600160a01b0385811660009081526007602052604090206002015462010000900481169085161461222e5760405162461bcd60e51b815260206004820152602760248201527f5265666572726572206d69736d6174636820666f72206578697374696e672069604482015266373b32b9ba37b960c91b60648201526084016107f9565b61223c878787876001612e2a565b9250925092509450945094915050565b6005818154811061225c57600080fd5b600091825260209091206003909102018054600182015460029092015463ffffffff808316945060ff6401000000009093048316939282169161010090041685565b336000908152600860205260409020546060908190819081908190819060ff16156122c857600080fd5b865167ffffffffffffffff8111156122e2576122e26138a3565b60405190808252806020026020018201604052801561230b578160200160208202803683370190505b509550865167ffffffffffffffff811115612328576123286138a3565b604051908082528060200260200182016040528015612351578160200160208202803683370190505b509450865167ffffffffffffffff81111561236e5761236e6138a3565b604051908082528060200260200182016040528015612397578160200160208202803683370190505b509350865167ffffffffffffffff8111156123b4576123b46138a3565b6040519080825280602002602001820160405280156123dd578160200160208202803683370190505b509250865167ffffffffffffffff8111156123fa576123fa6138a3565b604051908082528060200260200182016040528015612423578160200160208202803683370190505b509150865167ffffffffffffffff811115612440576124406138a3565b604051908082528060200260200182016040528015612469578160200160208202803683370190505b50905060005b87518161ffff161015612686576001600160a01b038916600090815260076020908152604080832061ffff8516808552600190910190925290912054885160ff90911691899181106124c3576124c3613a01565b60ff9092166020928302919091018201526001600160a01b038a16600090815260078252604080822061ffff85168084526001909101909352902060040154875163ffffffff909116918891811061251d5761251d613a01565b63ffffffff9092166020928302919091018201526001600160a01b038a16600090815260078252604080822061ffff8516808452600191820190945291200154865190918791811061257157612571613a01565b6020908102919091018101919091526001600160a01b038a16600090815260078252604080822061ffff8516808452600190910190935290206002015485519091869181106125c2576125c2613a01565b6020908102919091018101919091526001600160a01b038a16600090815260078252604080822061ffff851680845260019091019093529020600401548351600160401b90910460ff16918491811061261d5761261d613a01565b911515602092830291909101909101526126368961081b565b8161ffff168151811061264b5761264b613a01565b6020026020010151838261ffff168151811061266957612669613a01565b60209081029190910101528061267e81613a72565b91505061246f565b509295509295509295565b600354600090600160401b90046001600160a01b031633146126eb5760405162461bcd60e51b8152602060048201526013602482015272139bc81cdd59999a58da595b9d081c9a59da1d606a1b60448201526064016107f9565b6001600160a01b03821660009081526008602052604090205460ff1661081657506001600160a01b03166000908152600860205260409020805460ff1916600190811790915590565b600354600160401b90046001600160a01b0316331461278b5760405162461bcd60e51b8152602060048201526013602482015272139bc81cdd59999a58da595b9d081c9a59da1d606a1b60448201526064016107f9565b6001600160a01b03811661279e57600080fd5b600380546001600160a01b03909216600160401b027fffffffff0000000000000000000000000000000000000000ffffffffffffffff909216919091179055565b60007fffffffffffffffffffffffffde315239d97a9e0f41768b94d9cd419d72eb76c6330161281c57506006805460ff1916600190811790915590565b7fffffffffffffffffffffffffb4f4baabeb4e6720ac6c60c1915e7c90549d333e330161285f57506006805461ff00191661010090811791829055900460ff1690565b7fffffffffffffffffffffffff4503530aefa4b4d9c462e1d60cab29c66e3815ea33016128a457506006805462ff000019166201000090811791829055900460ff1690565b50600090565b60006005826000015160ff16815481106128c6576128c6613a01565b906000526020600020906003020160020160019054906101000a900463ffffffff1663ffffffff16826080015163ffffffff168360a0015163ffffffff16421061291a578360a0015163ffffffff1661291c565b425b61292691906139ee565b611ce69190613a2e565b60008080805b6001600160a01b03851660009081526007602052604090206002015461ffff9081169082161015612e09576001600160a01b038516600090815260076020908152604080832061ffff851684526001908101835292819020815161012081018352815460ff9081168252828601549482019490945260028201549281019290925260038101546060830152600481015463ffffffff808216608085015264010000000082041660a0840152600160401b9004909216151560c0820152600582015460e0820152600690910154610100820152612a11906128aa565b1015612a1e576000612c3e565b6001600160a01b038516600090815260076020908152604080832061ffff851684526001908101835292819020815161012081018352815460ff9081168252828601549482019490945260028201549281019290925260038101546060830152600481015463ffffffff808216608085015264010000000082041660a0840152600160401b9004909216151560c0820152600582015460e082015260069091015461010082015260649190612ad2906128aa565b612adc91906139c4565b6001600160a01b038716600090815260076020908152604080832061ffff871684526001908101835292819020815161012081018352815460ff9081168252948201549381019390935260028101549183019190915260038101546060830152600481015463ffffffff808216608085015264010000000082041660a0840152600160401b9004909216151560c0820152600582015460e0820152600690910154610100820152612b8c906128aa565b612b9691906139ee565b6001600160a01b038716600090815260076020908152604080832061ffff8716845260010190915290205460058054909160ff16908110612bd957612bd9613a01565b600091825260208083206003909202909101546001600160a01b038a16835260078252604080842061ffff88168552600101909252912060060154612c2a9160ff6401000000009091041690613a17565b612c349190613a17565b612c3e9190613a2e565b6001600160a01b038616600090815260076020908152604080832061ffff861684526001019091529020600581019190915560020154612c7e9083613a5f565b6001600160a01b038616600090815260076020908152604080832061ffff86168452600101909152902060040154909250600160401b900460ff1680612d0057506001600160a01b038516600090815260076020908152604080832061ffff851684526001019091529020600401544264010000000090910463ffffffff1611155b15612d91576001600160a01b038516600090815260076020908152604080832061ffff85168452600101909152902060048101805468ff00000000000000001916600160401b1790556006810154600590910154612d5e9190613a5f565b6001600160a01b038616600090815260076020908152604080832061ffff86168452600101909152902060030155612dc7565b6001600160a01b038516600090815260076020908152604080832061ffff85168452600101909152902060058101546003909101555b6001600160a01b038516600090815260076020908152604080832061ffff85168452600101909152902060030154612dff9084613a5f565b9250600101612936565b50808211612e18576000612e22565b612e2281836139ee565b949350505050565b600080806001600160a01b038616331480612e565750600354600160401b90046001600160a01b031633145b612ea25760405162461bcd60e51b815260206004820152600960248201527f4e6f20616363657373000000000000000000000000000000000000000000000060448201526064016107f9565b8684612f3f57600480546040517f23b872dd0000000000000000000000000000000000000000000000000000000081523392810192909252306024830152604482018390526001600160a01b0316906323b872dd906064016020604051808303816000875af1158015612f19573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f3d9190613a42565b505b60058960ff1681548110612f5557612f55613a01565b6000918252602082206002600390920201015460ff1615159003612fbb5760405162461bcd60e51b815260206004820152601960248201527f5468697320746172696666206973207475726e6564206f66660000000000000060448201526064016107f9565b80156133ff57612fcb8787613478565b6000546001600160801b03168110801590612ff85750600054600160801b90046001600160801b03168111155b6130445760405162461bcd60e51b815260206004820152601b60248201527f4d696e206f72206d6178206465706f736974206578636565646564000000000060448201526064016107f9565b600454600160c81b900460ff161561305b57600080fd5b6004805460ff60c81b1916600160c81b17905560035467ffffffffffffffff16156130a75760035460649061309a9067ffffffffffffffff1683613a17565b6130a49190613a2e565b90505b6001600160a01b038716600090815260076020526040812060040180548392906130d2908490613a5f565b90915550506001600160a01b038088166000908152600760205260408082206002015462010000900490921681529081206003018054839290613116908490613a5f565b909155505060408051610120810190915260ff8a1681526001546020820190613156906901000000000000000000900467ffffffffffffffff16846139ee565b815260200160008152602001600081526020014263ffffffff16815260200160058b60ff168154811061318b5761318b613a01565b60009182526020909120600390910201546131ac9063ffffffff1642613a5f565b63ffffffff16815260006020808301829052604080840183905260609093018590526001600160a01b038b168252600790529081206002810180546001909201929161ffff1690826131fd83613a72565b825461ffff91821661010093840a90810290830219909116179092559116825260208083019390935260409182016000208451815460ff91821660ff199091161782559385015160018281019190915592850151600282015560608501516003820155608085015160048201805460a088015160c08901511515600160401b0268ff00000000000000001963ffffffff9283166401000000000267ffffffffffffffff199094169290951691909117919091179290921691909117905560e08501516005820155930151600690930192909255905416158015906132df575084155b156133f1576004546001546000916001600160a01b03169063a9059cbb90899060649061330f9060ff1687613a17565b6133199190613a2e565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af115801561337c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133a09190613a42565b9050806133ef5760405162461bcd60e51b815260206004820152600f60248201527f7061795f746f5f524546206661696c000000000000000000000000000000000060448201526064016107f9565b505b6004805460ff60c81b191690555b60405160ff8a1681526001600160a01b0388169082907f7a08fd8936934bab9123e2f93a79092bf06bd01ede8119b9ea1ebb4b43c9b43d9060200160405180910390a3600154600254613469916901000000000000000000900467ffffffffffffffff1690613a5f565b60025597989596505050505050565b60048054600160d01b900463ffffffff1690601a61349583613a93565b82546101009290920a63ffffffff8181021990931691831602179091556004546001600160a01b0385811660009081526007602052604090208054600160d01b90930490931663ffffffff1990921691909117825560029091015462010000900416905061354e576001600160a01b038083166000908152600760205260409020600201805491831662010000027fffffffffffffffffffff0000000000000000000000000000000000000000ffff9092169190911790555b6001600160a01b03811660009081526007602052604090206002018054600160b01b900461ffff1690601661358283613a72565b91906101000a81548161ffff021916908361ffff160217905550505050565b803560ff8116811461081657600080fd5b6000602082840312156135c457600080fd5b6135cd826135a1565b9392505050565b80356001600160a01b038116811461081657600080fd5b6000602082840312156135fd57600080fd5b6135cd826135d4565b600081518084526020840193506020830160005b8281101561363857815186526020958601959091019060010161361a565b5093949350505050565b6020815260006135cd6020830184613606565b600081518084526020840193506020830160005b8281101561363857815163ffffffff16865260209586019590910190600101613669565b600081518084526020840193506020830160005b8281101561363857815115158652602095860195909101906001016136a1565b60c08082528751908201819052600090602089019060e0840190835b818110156136fe57835160ff168352602093840193909201916001016136dd565b50508381036020850152613712818a613655565b91505082810360408401526137278188613606565b9050828103606084015261373b8187613606565b9050828103608084015261374f8186613606565b905082810360a0840152613763818561368d565b9998505050505050505050565b60006020828403121561378257600080fd5b81356001600160801b03811681146135cd57600080fd5b6000602082840312156137ab57600080fd5b5035919050565b8015158114611c5057600080fd5b600080604083850312156137d357600080fd5b8235915060208301356137e5816137b2565b809150509250929050565b60006020828403121561380257600080fd5b813567ffffffffffffffff811681146135cd57600080fd5b60008060006060848603121561382f57600080fd5b613838846135a1565b92506020840135915061384d604085016135d4565b90509250925092565b6000806000806080858703121561386c57600080fd5b613875856135a1565b93506020850135925061388a604086016135d4565b9150613898606086016135d4565b905092959194509250565b634e487b7160e01b600052604160045260246000fd5b803561ffff8116811461081657600080fd5b600080604083850312156138de57600080fd5b6138e7836135d4565b9150602083013567ffffffffffffffff81111561390357600080fd5b8301601f8101851361391457600080fd5b803567ffffffffffffffff81111561392e5761392e6138a3565b8060051b604051601f19603f830116810181811067ffffffffffffffff8211171561395b5761395b6138a3565b60405291825260208184018101929081018884111561397957600080fd5b6020850194505b8385101561399f57613991856138b9565b815260209485019401613980565b50809450505050509250929050565b634e487b7160e01b600052601260045260246000fd5b6000826139d3576139d36139ae565b500690565b634e487b7160e01b600052601160045260246000fd5b81810381811115611ce657611ce66139d8565b634e487b7160e01b600052603260045260246000fd5b8082028115828204841417611ce657611ce66139d8565b600082613a3d57613a3d6139ae565b500490565b600060208284031215613a5457600080fd5b81516135cd816137b2565b80820180821115611ce657611ce66139d8565b600061ffff821661ffff8103613a8a57613a8a6139d8565b60010192915050565b600063ffffffff821663ffffffff8103613a8a57613a8a6139d856fea2646970667358221220953b34cb8c20db9093200ca14b114ce84d013910c4248eae9e5356d9527b27b364736f6c634300081a0033