0 txs
972 calls
constructor
No constructor.
functions
btbConfig
viewfunction btbConfig() view returns (address)
btbToken
viewfunction btbToken() view returns (address)
burnRate
viewfunction burnRate() view returns (uint256)
burnWallet
viewfunction burnWallet() view returns (address)
communityReward
viewfunction communityReward() view returns (uint256)
communityWallet
viewfunction communityWallet() view returns (address)
directReferralReward
viewfunction directReferralReward() view returns (uint256)
getPeriodTotalStaked
viewfunction getPeriodTotalStaked() view returns (uint256[5])
getReferrer
viewfunction getReferrer(address user) view returns (address)
getTotalStakedAmount
viewfunction getTotalStakedAmount(address user) view returns (uint256)
getUserStakes
viewfunction getUserStakes(address user) view returns (tuple[])
getUserTeamTotalStaked
viewfunction getUserTeamTotalStaked(address user) view returns (uint256)
getUserTotalReward
viewfunction getUserTotalReward(address user) view returns (uint256)
getUserVipLevel
viewfunction getUserVipLevel(address user) view returns (uint256)
indirectReferralReward
viewfunction indirectReferralReward() view returns (uint256)
isOpen
viewfunction isOpen() view returns (bool)
isStakingUser
viewfunction isStakingUser(address) view returns (bool)
owner
viewfunction owner() view returns (address)
proxiableUUID
viewfunction proxiableUUID() view returns (bytes32)
rate180Days
viewfunction rate180Days() view returns (uint256)
rate30Days
viewfunction rate30Days() view returns (uint256)
rate365Days
viewfunction rate365Days() view returns (uint256)
rate7Days
viewfunction rate7Days() view returns (uint256)
rate90Days
viewfunction rate90Days() view returns (uint256)
sameLevelReward
viewfunction sameLevelReward() view returns (uint256)
stakes
viewfunction stakes(address, uint256) view returns (uint256 amount, uint256 startTime, uint256 duration, uint256 dailyRewardRate, uint256 lastClaimTime, bool isFullyClaimed)
stakingUsers
viewfunction stakingUsers(uint256) view returns (address)
techReward
viewfunction techReward() view returns (uint256)
techWallet
viewfunction techWallet() view returns (address)
totalStaked180Days
viewfunction totalStaked180Days() view returns (uint256)
totalStaked30Days
viewfunction totalStaked30Days() view returns (uint256)
totalStaked365Days
viewfunction totalStaked365Days() view returns (uint256)
totalStaked7Days
viewfunction totalStaked7Days() view returns (uint256)
totalStaked90Days
viewfunction totalStaked90Days() view returns (uint256)
userInfo
viewfunction userInfo(address) view returns (uint256 teamTotalStaked, uint256 vipLevel, bool isManuallySet)
vipLevelRequirements
viewfunction vipLevelRequirements(uint256) view returns (uint256)
vipLevelRewards
viewfunction vipLevelRewards(uint256) view returns (uint256)
claimReward
nonpayablefunction claimReward()
initialize
nonpayablefunction initialize(address _btbToken, address _btbConfig)
modifyStakeDuration
nonpayablefunction modifyStakeDuration(address user, uint256 stakeIndex, uint256 newDuration)
renounceOwnership
nonpayablefunction renounceOwnership()
setAllStakesFullyClaimedStatus
nonpayablefunction setAllStakesFullyClaimedStatus(address user, bool isFullyClaimed)
setBTBConfig
nonpayablefunction setBTBConfig(address _btbConfig)
setOpenStatus
nonpayablefunction setOpenStatus(bool _isOpen)
setRewardDistributionRates
nonpayablefunction setRewardDistributionRates(uint256 _directReferral, uint256 _indirectReferral, uint256 _community, uint256 _tech, uint256 _sameLevel, uint256 _burn)
setRewardRates
nonpayablefunction setRewardRates(uint256 _rate7Days, uint256 _rate30Days, uint256 _rate90Days, uint256 _rate180Days, uint256 _rate365Days)
setUserVipLevel
nonpayablefunction setUserVipLevel(address user, uint256 level, bool isManuallySet)
setVipLevelRequirements
nonpayablefunction setVipLevelRequirements(uint256[] _requirements)
setVipLevelRewards
nonpayablefunction setVipLevelRewards(uint256[] _rewards)
setWallets
nonpayablefunction setWallets(address _communityWallet, address _techWallet)
stake
nonpayablefunction stake(uint256 amount, uint256 duration)
transferAllStakes
nonpayablefunction transferAllStakes(address fromAddress, address toAddress)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
unstake
nonpayablefunction unstake(uint256 stakeIndex)
upgradeTo
nonpayablefunction upgradeTo(address newImplementation)
upgradeToAndCall
payablefunction upgradeToAndCall(address newImplementation, bytes data) payable
withdrawBNB
nonpayablefunction withdrawBNB(uint256 amount)
withdrawBTB
nonpayablefunction withdrawBTB(uint256 amount)
events
AdminChanged
event AdminChanged(address previousAdmin, address newAdmin)
BeaconUpgraded
event BeaconUpgraded(address indexed beacon)
Initialized
event Initialized(uint8 version)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
RateUpdated
event RateUpdated(uint256 newRate7Days, uint256 newRate30Days, uint256 newRate90Days, uint256 newRate180Days, uint256 newRate365Days)
ReferralRewardPaid
event ReferralRewardPaid(address indexed referrer, address indexed user, uint256 amount, uint256 rewardType)
RewardPaid
event RewardPaid(address indexed user, uint256 reward)
Staked
event Staked(address indexed user, uint256 amount, uint256 duration)
StakeDurationUpdated
event StakeDurationUpdated(address indexed user, uint256 stakeIndex, uint256 oldDuration, uint256 newDuration)
StakesTransferred
event StakesTransferred(address indexed from, address indexed to, uint256 amount, uint256 count)
Unstaked
event Unstaked(address indexed user, uint256 amount)
Upgraded
event Upgraded(address indexed implementation)
VipLevelUpdated
event VipLevelUpdated(address indexed user, uint256 newLevel)
errors
NotOpen
error NotOpen()
creation bytecode
0x306080526103e8610103556101f46101045561012c6101055560c861010655610bb86101078190556105dc610108819055610160604052600060a090815260c0919091526107d060e0526109c46101005261012091909152610dac6101405261006d906101099060066100f4565b506040805160c0810182526000815269d3c21bcecceda100000060208201526a027b46536c66c8e3000000918101919091526a084595161401484a00000060608201526a18d0bf423c03d8de00000060808201526a39e7139a8c08fa0600000060a08201526100e19061010a906006610145565b503480156100ee57600080fd5b506101a0565b828054828255906000526020600020908101928215610135579160200282015b82811115610135578251829061ffff16905591602001919060010190610114565b5061014192915061018b565b5090565b828054828255906000526020600020908101928215610135579160200282015b8281111561013557825182906001600160581b0316905591602001919060010190610165565b5b80821115610141576000815560010161018c565b6080516146d66101d7600039600081816115ab015281816115eb01528181611a0401528181611a440152611ad301526146d66000f3fe6080604052600436106103855760003560e01c80637b0472f0116101d1578063b9bfb2a611610102578063d3f6a157116100a0578063f6e5e24f1161006f578063f6e5e24f14610aa2578063fbaea28114610ab9578063fc6d6f6214610acf578063fdfabc1014610ae657600080fd5b8063d3f6a15714610a22578063f2fde38b14610a42578063f68f2edf14610a62578063f6e3f45814610a8257600080fd5b8063c1650709116100dc578063c165070914610993578063c637b757146109aa578063c7574839146109ca578063c9a050b0146109eb57600080fd5b8063b9bfb2a61461093b578063bd4846061461095b578063bed998501461097c57600080fd5b806392e377b61161016f578063b0cb1b0d11610149578063b0cb1b0d146108c4578063b65553ae146108e4578063b69ed49914610904578063b88a802f1461092657600080fd5b806392e377b6146108535780639718926214610873578063aeef00c51461089357600080fd5b8063842e2981116101ab578063842e2981146107ae5780638b327631146107db5780638da5cb5b146107fb578063911c81cb1461081957600080fd5b80637b0472f01461074e5780637c46a44b1461076e578063815439ed1461078e57600080fd5b8063351ba193116102b6578063485cc9551161025457806352d1902d1161022357806352d1902d146106b5578063584b62a1146106ca5780635ec539a214610719578063715018a61461073957600080fd5b8063485cc9551461064b57806348cc37ad1461066b5780634a9fefc7146106825780634f1ef286146106a257600080fd5b8063441f4f7a11610290578063441f4f7a146105d35780634423f490146105e957806347535d7b14610600578063479cf1de1461062b57600080fd5b8063351ba193146105855780633659cfe61461059c578063379e6bc7146105bc57600080fd5b80631ccee1631161032357806323cbf961116102fd57806323cbf96114610518578063273051791461052e5780632a09ce361461054e5780632e17de781461056557600080fd5b80631ccee163146104c15780631d779bd9146104d85780632275b038146104f857600080fd5b806312d8d1b01161035f57806312d8d1b01461041657806313f5d2f21461042d5780631492886f146104445780631959a0021461046457600080fd5b8063046939891461039157806306228749146103bb578063127f4b2e146103f457600080fd5b3661038c57005b600080fd5b34801561039d57600080fd5b506103a861010f5481565b6040519081526020015b60405180910390f35b3480156103c757600080fd5b50610116546103dc906001600160a01b031681565b6040516001600160a01b0390911681526020016103b2565b34801561040057600080fd5b5061041461040f366004613f40565b610b06565b005b34801561042257600080fd5b506103a86101015481565b34801561043957600080fd5b506103a861010d5481565b34801561045057600080fd5b5061041461045f366004613f6e565b610b4c565b34801561047057600080fd5b506104a461047f366004613fa7565b6101136020526000908152604090208054600182015460029092015490919060ff1683565b6040805193845260208401929092521515908201526060016103b2565b3480156104cd57600080fd5b506103a86101065481565b3480156104e457600080fd5b506103a86104f3366004613f40565b610eb6565b34801561050457600080fd5b50610414610513366004613f40565b610ed8565b34801561052457600080fd5b506103a860fd5481565b34801561053a57600080fd5b506103a8610549366004613fa7565b61102a565b34801561055a57600080fd5b506103a86101035481565b34801561057157600080fd5b50610414610580366004613f40565b611121565b34801561059157600080fd5b506103a861010c5481565b3480156105a857600080fd5b506104146105b7366004613fa7565b6115a1565b3480156105c857600080fd5b506103a861010e5481565b3480156105df57600080fd5b506103a860ff5481565b3480156105f557600080fd5b506103a86101075481565b34801561060c57600080fd5b506101025461061b9060ff1681565b60405190151581526020016103b2565b34801561063757600080fd5b5060fb546103dc906001600160a01b031681565b34801561065757600080fd5b50610414610666366004613f6e565b61167d565b34801561067757600080fd5b506103a861010b5481565b34801561068e57600080fd5b506103dc61069d366004613fa7565b61191a565b6104146106b0366004613fda565b6119fa565b3480156106c157600080fd5b506103a8611ac6565b3480156106d657600080fd5b506106ea6106e53660046140a6565b611b79565b6040805196875260208701959095529385019290925260608401526080830152151560a082015260c0016103b2565b34801561072557600080fd5b506104146107343660046140d2565b611bd1565b34801561074557600080fd5b50610414611c27565b34801561075a57600080fd5b50610414610769366004614149565b611c3b565b34801561077a57600080fd5b50610414610789366004614179565b61204a565b34801561079a57600080fd5b506104146107a9366004614196565b612066565b3480156107ba57600080fd5b506107ce6107c9366004613fa7565b612163565b6040516103b291906141d8565b3480156107e757600080fd5b506104146107f63660046140d2565b612214565b34801561080757600080fd5b506033546001600160a01b03166103dc565b34801561082557600080fd5b506103a8610834366004613fa7565b6001600160a01b03166000908152610113602052604090206001015490565b34801561085f57600080fd5b506103a861086e366004613f40565b61226a565b34801561087f57600080fd5b5061041461088e366004614257565b61227b565b34801561089f57600080fd5b5061061b6108ae366004613fa7565b6101116020526000908152604090205460ff1681565b3480156108d057600080fd5b5060fc546103dc906001600160a01b031681565b3480156108f057600080fd5b506104146108ff366004614292565b6122f4565b34801561091057600080fd5b506109196123be565b6040516103b291906142c0565b34801561093257600080fd5b50610414612401565b34801561094757600080fd5b506103a8610956366004613fa7565b6125f1565b34801561096757600080fd5b50610115546103dc906001600160a01b031681565b34801561098857600080fd5b506103a86101085481565b34801561099f57600080fd5b506103a86101055481565b3480156109b657600080fd5b506104146109c53660046142f1565b6126e5565b3480156109d657600080fd5b50610114546103dc906001600160a01b031681565b3480156109f757600080fd5b506103a8610a06366004613fa7565b6001600160a01b03166000908152610113602052604090205490565b348015610a2e57600080fd5b50610414610a3d366004613f6e565b612710565b348015610a4e57600080fd5b50610414610a5d366004613fa7565b612794565b348015610a6e57600080fd5b506103dc610a7d366004613f40565b61280a565b348015610a8e57600080fd5b50610414610a9d366004613fa7565b612835565b348015610aae57600080fd5b506103a86101045481565b348015610ac557600080fd5b506103a860fe5481565b348015610adb57600080fd5b506103a86101005481565b348015610af257600080fd5b50610414610b01366004614334565b612885565b610b0e612c23565b6033546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610b48573d6000803e3d6000fd5b5050565b610b54612c23565b6001600160a01b038216610ba65760405162461bcd60e51b8152602060048201526014602482015273496e76616c69642066726f6d206164647265737360601b60448201526064015b60405180910390fd5b6001600160a01b038116610bf15760405162461bcd60e51b8152602060048201526012602482015271496e76616c696420746f206164647265737360701b6044820152606401610b9d565b806001600160a01b0316826001600160a01b031603610c525760405162461bcd60e51b815260206004820152601f60248201527f43616e6e6f74207472616e7366657220746f2073616d652061646472657373006044820152606401610b9d565b6001600160a01b0382166000908152610117602052604090208054610cb15760405162461bcd60e51b815260206004820152601560248201527427379039ba30b5b2b9903a37903a3930b739b332b960591b6044820152606401610b9d565b6000610cbc846125f1565b905060005b8254811015610d6c576001600160a01b0384166000908152610117602052604090208354849083908110610cf757610cf7614369565b6000918252602080832084546001808201875595855291909320600692830290930180549290910290920190815581830154818401556002808301549082015560038083015490820155600480830154908201556005918201549101805460ff191660ff909216151591909117905501610cc1565b506001600160a01b038416600090815261011760205260408120610d8f91613dda565b6001600160a01b0384166000908152610111602052604090205460ff1615610dba57610dba84612c7d565b6001600160a01b0383166000908152610111602052604090205460ff16610e505761011080546001600160a01b03851660008181526101126020908152604080832085905560018086019096557fc992a4f4c614c6258b392474376b00c403ba311ad1b24c06537a7c109387f97790940180546001600160a01b03191690931790925561011190915220805460ff191690911790555b610e5a8482612dc2565b610e648382612e67565b81546040805183815260208101929092526001600160a01b0380861692908716917f562825fff89ee2d2427bef7c1589fbf05dfc6756fdb2725ad4c7f7653079c8dd910160405180910390a350505050565b6101098181548110610ec757600080fd5b600091825260209091200154905081565b610ee0612c23565b60fb546040516370a0823160e01b815230600482015282916001600160a01b0316906370a0823190602401602060405180830381865afa158015610f28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4c919061437f565b1015610fa65760405162461bcd60e51b8152602060048201526024808201527f496e73756666696369656e74204254422062616c616e636520696e20636f6e746044820152631c9858dd60e21b6064820152608401610b9d565b60fb546001600160a01b031663a9059cbb610fc96033546001600160a01b031690565b836040518363ffffffff1660e01b8152600401610fe7929190614398565b6020604051808303816000875af1158015611006573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b4891906143b1565b6001600160a01b03811660009081526101176020908152604080832080548251818502810185019093528083528493849084015b828210156110cb5760008481526020908190206040805160c08101825260068602909201805483526001808201548486015260028201549284019290925260038101546060840152600481015460808401526005015460ff16151560a0830152908352909201910161105e565b5050505090506000805b82518110156111195760006111028483815181106110f5576110f5614369565b6020026020010151612eea565b905061110e81846143e4565b9250506001016110d5565b509392505050565b611129613018565b336000908152610117602052604090208054821061117f5760405162461bcd60e51b8152602060048201526013602482015272092dcecc2d8d2c840e6e8c2d6ca40d2dcc8caf606b1b6044820152606401610b9d565b600081838154811061119357611193614369565b60009182526020918290206040805160c0810182526006909302909101805483526001810154938301939093526002830154908201819052600383015460608301526004830154608083015260059092015460ff16151560a082015291506111ff9062015180906143f7565b816020015161120e91906143e4565b42101561125d5760405162461bcd60e51b815260206004820152601f60248201527f5374616b696e6720706572696f64206e6f74207965742066696e6973686564006044820152606401610b9d565b600061126882612eea565b9050816040015160070361129657815161010b805460009061128b90849061440e565b909155506113219050565b8160400151601e036112b757815161010c805460009061128b90849061440e565b8160400151605a036112d857815161010d805460009061128b90849061440e565b816040015160b4036112f957815161010e805460009061128b90849061440e565b816040015161016d0361132157815161010f805460009061131b90849061440e565b90915550505b825483906113319060019061440e565b8154811061134157611341614369565b906000526020600020906006020183858154811061136157611361614369565b600091825260209091208254600690920201908155600180830154908201556002808301549082015560038083015490820155600480830154908201556005918201549101805460ff191660ff909216151591909117905582548390806113ca576113ca614421565b60008281526020812060066000199093019283020181815560018101829055600281018290556003810182905560048101829055600501805460ff1916905591558354900361141c5761141c33612c7d565b60fb54825160405163a9059cbb60e01b81526001600160a01b039092169163a9059cbb9161144f91339190600401614398565b6020604051808303816000875af115801561146e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061149291906143b1565b5080156115105760fb5460405163a9059cbb60e01b81526001600160a01b039091169063a9059cbb906114cb9033908590600401614398565b6020604051808303816000875af11580156114ea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061150e91906143b1565b505b61151e338360000151612dc2565b815160405190815233907f0f5bb82176feb1b5e747e28471aa92156a04d9f3ab9f45f28e2d704232b93f759060200160405180910390a280156115915760405181815233907fe2403640ba68fed3a2f88b7557551d1993f84b99bb10ff833f0cf8db0c5e04869060200160405180910390a25b50505061159e600160c955565b50565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036115e95760405162461bcd60e51b8152600401610b9d90614437565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661163260008051602061465a833981519152546001600160a01b031690565b6001600160a01b0316146116585760405162461bcd60e51b8152600401610b9d90614483565b61166181613071565b6040805160008082526020820190925261159e91839190613079565b600054610100900460ff161580801561169d5750600054600160ff909116105b806116b75750303b1580156116b7575060005460ff166001145b61171a5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b9d565b6000805460ff19166001179055801561173d576000805461ff0019166101001790555b6117456131e4565b60fb80546001600160a01b038086166001600160a01b03199283161790925560fc805492851692821692909217909155610102805460ff191660019081179091556101148054831673c394c50401c26d784292e31713212ad9eb790bb31790556101158054831673827eefd76d6b325c8a202aacb61c84c811a528c817905561011680549092161790556040805160c081018252600081526105dc60208201526107d0918101919091526109c46060820152610bb86080820152610dac60a082015261181690610109906006613dfb565b506040805160c0810182526000815269d3c21bcecceda100000060208201526a027b46536c66c8e3000000918101919091526a084595161401484a00000060608201526a18d0bf423c03d8de00000060808201526a39e7139a8c08fa0600000060a082015261188a9061010a906006613e4c565b50600160fd55600360fe55600560ff55600761010055600a610101556103e8610103556101f46101045561012c6101055560c861010655610bb8610107556105dc610108558015611915576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b60fc54604080516340706c4560e01b815290516000926001600160a01b0316916340706c459160048083019260209291908290030181865afa158015611964573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061198891906144cf565b60405163c4b6ebdf60e01b81526001600160a01b038481166004830152919091169063c4b6ebdf90602401602060405180830381865afa1580156119d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119f491906144cf565b92915050565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003611a425760405162461bcd60e51b8152600401610b9d90614437565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316611a8b60008051602061465a833981519152546001600160a01b031690565b6001600160a01b031614611ab15760405162461bcd60e51b8152600401610b9d90614483565b611aba82613071565b610b4882826001613079565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611b665760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c00000000000000006064820152608401610b9d565b5060008051602061465a83398151915290565b6101176020528160005260406000208181548110611b9657600080fd5b600091825260209091206006909102018054600182015460028301546003840154600485015460059095015493965091945092909160ff1686565b611bd9612c23565b60068114611c1a5760405162461bcd60e51b815260206004820152600e60248201526d0657272206c656e677468203e20360941b6044820152606401610b9d565b6119156101098383613e96565b611c2f612c23565b611c396000613213565b565b6101025460ff16611c5f57604051631bb5f5b360e31b815260040160405180910390fd5b69021e19e0c9bab2400000821015611cc75760405162461bcd60e51b815260206004820152602560248201527f416d6f756e74206d757374206265206174206c656173742031206d696c6c696f6044820152643710212a2160d91b6064820152608401610b9d565b611cdb69021e19e0c9bab240000083614502565b15611d3b5760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d7573742062652061206d756c7469706c65206f662031206d60448201526934b63634b7b710212a2160b11b6064820152608401610b9d565b6000611d463361191a565b90506001600160a01b038116611d8c5760405162461bcd60e51b815260206004820152600b60248201526a3737903932b332b93932b960a91b6044820152606401610b9d565b600082600703611db95760fd5490508361010b6000828254611dae91906143e4565b90915550611e779050565b82601e03611dd95760fe5490508361010c6000828254611dae91906143e4565b82605a03611df95760ff5490508361010d6000828254611dae91906143e4565b8260b403611e1a576101005490508361010e6000828254611dae91906143e4565b8261016d03611e3c576101015490508361010f6000828254611dae91906143e4565b60405162461bcd60e51b815260206004820152601060248201526f24b73b30b634b210323ab930ba34b7b760811b6044820152606401610b9d565b33600081815261011760209081526040808320815160c081018352898152428185018181528285018b8152606084018a81526080850193845260a08501898152865460018082018955978b52898b20965160069091029096019586559251958501959095555160028401559251600383015551600482015590516005909101805460ff19169115159190911790559282526101119052205460ff16611f825761011080543360008181526101126020908152604080832085905560018086019096557fc992a4f4c614c6258b392474376b00c403ba311ad1b24c06537a7c109387f97790940180546001600160a01b03191690931790925561011190915220805460ff191690911790555b60fb546040516323b872dd60e01b8152336004820152306024820152604481018690526001600160a01b03909116906323b872dd906064016020604051808303816000875af1158015611fd9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ffd91906143b1565b506120083385612e67565b604080518581526020810185905233917f1449c6dd7851abc30abf37f57715f492010519147cc2652fbc38202c18a6ee9091015b60405180910390a250505050565b612052612c23565b610102805460ff1916911515919091179055565b61206e612c23565b6001600160a01b0383166120b65760405162461bcd60e51b815260206004820152600f60248201526e496e76616c6964206164647265737360881b6044820152606401610b9d565b60058211156120fb5760405162461bcd60e51b8152602060048201526011602482015270125b9d985b1a5908159254081b195d995b607a1b6044820152606401610b9d565b6001600160a01b0383166000818152610113602090815260409182902060018101869055600201805460ff191685151517905590518481527f5f32098187e849d9348be8c54bed50ec27689c9648b9fce8eaa1b384e8254efd910160405180910390a2505050565b6001600160a01b038116600090815261011760209081526040808320805482518185028101850190935280835260609492939192909184015b828210156122095760008481526020908190206040805160c08101825260068602909201805483526001808201548486015260028201549284019290925260038101546060840152600481015460808401526005015460ff16151560a0830152908352909201910161219c565b505050509050919050565b61221c612c23565b6006811461225d5760405162461bcd60e51b815260206004820152600e60248201526d0657272206c656e677468203e20360941b6044820152606401610b9d565b61191561010a8383613e96565b61010a8181548110610ec757600080fd5b612283612c23565b60fd85905560fe84905560ff839055610100829055610101819055604080518681526020810186905290810184905260608101839052608081018290527f177f986e10c7bc7ae90cd249ff928cc6b24d20e85b0248d4fc8432577151f7909060a00160405180910390a15050505050565b6122fc612c23565b6001600160a01b03821661233d5760405162461bcd60e51b815260206004820152600860248201526737379032b93937b960c11b6044820152606401610b9d565b6001600160a01b038216600090815261011760205260408120805490915b818110156123b757600083828154811061237757612377614369565b6000918252602090912060056006909202019081015490915060ff161515851515146123ae5760058101805460ff19168615151790555b5060010161235b565b5050505050565b6123c6613ed1565b6040518060a0016040528061010b54815260200161010c54815260200161010d54815260200161010e54815260200161010f54815250905090565b612409613018565b3360009081526101176020526040812090805b825481101561256057600083828154811061243957612439614369565b60009182526020909120600690910201600581015490915060ff16612557576040805160c08101825282548152600183015460208201526002830154918101919091526003820154606082015260048201546080820152600582015460ff16151560a08201526000906124ab90612eea565b90508015612555576124bd81856143e4565b935060006201518083600201546124d491906143f7565b83600101546124e391906143e4565b42116124ef5742612511565b62015180836002015461250291906143f7565b836001015461251191906143e4565b60048401819055600284015490915061252e9062015180906143f7565b836001015461253d91906143e4565b81036125535760058301805460ff191660011790555b505b505b5060010161241c565b50600081116125a75760405162461bcd60e51b81526020600482015260136024820152724e6f2072657761726420617661696c61626c6560681b6044820152606401610b9d565b6125b081613265565b60405181815233907fe2403640ba68fed3a2f88b7557551d1993f84b99bb10ff833f0cf8db0c5e04869060200160405180910390a25050611c39600160c955565b6001600160a01b038116600090815261011760209081526040808320805482518185028101850190935280835284938493929190849084015b828210156126975760008481526020908190206040805160c08101825260068602909201805483526001808201548486015260028201549284019290925260038101546060840152600481015460808401526005015460ff16151560a0830152908352909201910161262a565b50505050905060005b81518110156126dc578181815181106126bb576126bb614369565b602002602001015160000151836126d291906143e4565b92506001016126a0565b50909392505050565b6126ed612c23565b610103959095556101049390935561010591909155610106556101075561010855565b612718612c23565b6001600160a01b03821661273e5760405162461bcd60e51b8152600401610b9d90614516565b6001600160a01b0381166127645760405162461bcd60e51b8152600401610b9d90614516565b61011480546001600160a01b039384166001600160a01b0319918216179091556101158054929093169116179055565b61279c612c23565b6001600160a01b0381166128015760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610b9d565b61159e81613213565b610110818154811061281b57600080fd5b6000918252602090912001546001600160a01b0316905081565b61283d612c23565b6001600160a01b0381166128635760405162461bcd60e51b8152600401610b9d90614516565b60fc80546001600160a01b0319166001600160a01b0392909216919091179055565b61288d612c23565b6001600160a01b0383166128da5760405162461bcd60e51b8152602060048201526014602482015273496e76616c69642075736572206164647265737360601b6044820152606401610b9d565b6001600160a01b0383166000908152610117602052604090205482106129385760405162461bcd60e51b8152602060048201526013602482015272092dcecc2d8d2c840e6e8c2d6ca40d2dcc8caf606b1b6044820152606401610b9d565b8060071480612947575080601e145b80612952575080605a145b8061295d57508060b4145b8061296957508061016d145b6129a85760405162461bcd60e51b815260206004820152601060248201526f24b73b30b634b210323ab930ba34b7b760811b6044820152606401610b9d565b6001600160a01b0383166000908152610117602052604081208054849081106129d3576129d3614369565b9060005260206000209060060201905060008160020154905062015180816129fb91906143f7565b8260010154612a0a91906143e4565b4210612a585760405162461bcd60e51b815260206004820152601d60248201527f5374616b6520706572696f6420616c72656164792066696e69736865640000006044820152606401610b9d565b80600703612a8057815461010b8054600090612a7590849061440e565b90915550612afb9050565b80601e03612a9d57815461010c8054600090612a7590849061440e565b80605a03612aba57815461010d8054600090612a7590849061440e565b8060b403612ad757815461010e8054600090612a7590849061440e565b8061016d03612afb57815461010f8054600090612af590849061440e565b90915550505b600282018390556007839003612b335760fd546003830155815461010b8054600090612b289084906143e4565b90915550612bd09050565b82601e03612b585760fe546003830155815461010c8054600090612b289084906143e4565b82605a03612b7d5760ff546003830155815461010d8054600090612b289084906143e4565b8260b403612ba357610100546003830155815461010e8054600090612b289084906143e4565b8261016d03612bd057610101546003830155815461010f8054600090612bca9084906143e4565b90915550505b60408051858152602081018390529081018490526001600160a01b038616907f409317512ca49d1a06b45b30ac767828725b5f6b23fe297e6f4d8a0a92c68eb09060600160405180910390a25050505050565b6033546001600160a01b03163314611c395760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610b9d565b6001600160a01b0381166000908152610111602052604090205460ff16612ca15750565b6001600160a01b0381166000908152610112602052604081205461011054909190612cce9060019061440e565b9050808214612d595760006101108281548110612ced57612ced614369565b60009182526020909120015461011080546001600160a01b039092169250829185908110612d1d57612d1d614369565b600091825260208083209190910180546001600160a01b0319166001600160a01b03948516179055929091168152610112909152604090208290555b610110805480612d6b57612d6b614421565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b0394909416815261011184526040808220805460ff19169055610112909452928320929092555050565b6000612dcd8361191a565b90505b6001600160a01b03811615611915576001600160a01b038116600090815261011360205260409020548211612e33576001600160a01b0381166000908152610113602052604081208054849290612e2890849061440e565b90915550612e4e9050565b6001600160a01b038116600090815261011360205260408120555b612e57816136d4565b612e608161191a565b9050612dd0565b6000612e728361191a565b9050600060645b6001600160a01b03831615801590612e9057508082105b156123b7576001600160a01b0383166000908152610113602052604081208054869290612ebe9084906143e4565b90915550612ecd9050836136d4565b612ed68361191a565b925081612ee281614537565b925050612e79565b600080620151808360400151612f0091906143f7565b8360200151612f0f91906143e4565b4211612f1b5742612f3d565b620151808360400151612f2e91906143f7565b8360200151612f3d91906143e4565b90506000836080015182612f51919061440e565b905080600003612f65575060009392505050565b60008460400151600703612f7c575060fd54612fda565b8460400151601e03612f91575060fe54612fda565b8460400151605a03612fa6575060ff54612fda565b846040015160b403612fbc575061010054612fda565b846040015161016d03612fd3575061010154612fda565b5060608401515b6000612feb620151806127106143f7565b86518490612ffa9085906143f7565b61300491906143f7565b61300e9190614550565b9695505050505050565b600260c9540361306a5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610b9d565b600260c955565b61159e612c23565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff16156130ac576119158361385d565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613106575060408051601f3d908101601f191682019092526131039181019061437f565b60015b6131695760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610b9d565b60008051602061465a83398151915281146131d85760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610b9d565b506119158383836138f9565b600054610100900460ff1661320b5760405162461bcd60e51b8152600401610b9d90614564565b611c3961391e565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60fb5460405163a9059cbb60e01b81526001600160a01b039091169063a9059cbb906132979033908590600401614398565b6020604051808303816000875af11580156132b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132da91906143b1565b503360006132e78261191a565b90506001600160a01b03811615801590613313575069021e19e0c9bab2400000613310826125f1565b10155b156134fb576000612710610103548561332c91906143f7565b6133369190614550565b60fb5460405163a9059cbb60e01b81529192506001600160a01b03169063a9059cbb906133699085908590600401614398565b6020604051808303816000875af1158015613388573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133ac91906143b1565b5060408051828152600160208201526001600160a01b03808616929085169160008051602061463a833981519152910160405180910390a360006133ef8361191a565b90506001600160a01b0381161580159061341b575069021e19e0c9bab2400000613418826125f1565b10155b156134ee576000612710610104548761343491906143f7565b61343e9190614550565b60fb5460405163a9059cbb60e01b81529192506001600160a01b03169063a9059cbb906134719085908590600401614398565b6020604051808303816000875af1158015613490573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134b491906143b1565b5060408051828152600260208201526001600160a01b03808816929085169160008051602061463a833981519152910160405180910390a3505b6134f8838661394e565b50505b6000612710610105548561350f91906143f7565b6135199190614550565b60fb546101145460405163a9059cbb60e01b81529293506001600160a01b039182169263a9059cbb926135529216908590600401614398565b6020604051808303816000875af1158015613571573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061359591906143b1565b50600061271061010654866135aa91906143f7565b6135b49190614550565b60fb546101155460405163a9059cbb60e01b81529293506001600160a01b039182169263a9059cbb926135ed9216908590600401614398565b6020604051808303816000875af115801561360c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061363091906143b1565b506000612710610108548761364591906143f7565b61364f9190614550565b60fb546101165460405163a9059cbb60e01b81529293506001600160a01b039182169263a9059cbb926136889216908590600401614398565b6020604051808303816000875af11580156136a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136cb91906143b1565b50505050505050565b6001600160a01b0381166000908152610113602052604090208054600182015460029092015490919060ff16156137b85760055b600181106137b25761010a818154811061372457613724614369565b9060005260206000200154831015801561373d57508082105b156137a0576001600160a01b0384166000818152610113602052604090819020600101839055517f5f32098187e849d9348be8c54bed50ec27689c9648b9fce8eaa1b384e8254efd906137939084815260200190565b60405180910390a26137b2565b806137aa816145af565b915050613708565b50505050565b600060055b600181106138045761010a81815481106137d9576137d9614369565b906000526020600020015484106137f257809150613804565b806137fc816145af565b9150506137bd565b508181146137b2576001600160a01b0384166000818152610113602052604090819020600101839055517f5f32098187e849d9348be8c54bed50ec27689c9648b9fce8eaa1b384e8254efd9061203c9084815260200190565b6001600160a01b0381163b6138ca5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610b9d565b60008051602061465a83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b61390283613b97565b60008251118061390f5750805b15611915576137b28383613bd7565b600054610100900460ff166139455760405162461bcd60e51b8152600401610b9d90614564565b611c3933613213565b33600090815261011360205260408120600101548391819060055b6001600160a01b038516156136cb576001600160a01b0385166000908152610113602052604090206001015469021e19e0c9bab24000006139a9876125f1565b10613b6a5783811115613a835760006139c3888387613c03565b90508015613a765760fb5460405163a9059cbb60e01b81526001600160a01b039091169063a9059cbb906139fd908a908590600401614398565b6020604051808303816000875af1158015613a1c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a4091906143b1565b50604080518281526003602082015233916001600160a01b038a169160008051602061463a833981519152910160405180910390a35b8194506000935050613b6a565b8381148015613a9157508183105b15613b6a576000612710613aa68960646143f7565b613ab09190614550565b60fb5460405163a9059cbb60e01b81529192506001600160a01b03169063a9059cbb90613ae3908a908590600401614398565b6020604051808303816000875af1158015613b02573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613b2691906143b1565b50604080518281526004602082015233916001600160a01b038a169160008051602061463a833981519152910160405180910390a383613b6581614537565b945050505b613b738661191a565b955060058410158015613b865750818310155b15613b9157506136cb565b50613969565b613ba08161385d565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060613bfc838360405180606001604052806027815260200161467a60279139613cc6565b9392505050565b6000821580613c155750610109548310155b80613c205750818311155b15613c2d57506000613bfc565b610109548210613c3f57506000613bfc565b60006101098481548110613c5557613c55614369565b6000918252602082200154610109549092508410613c74576000613c94565b6101098481548110613c8857613c88614369565b90600052602060002001545b90506000613ca2828461440e565b9050612710613cb182896143f7565b613cbb9190614550565b979650505050505050565b6060600080856001600160a01b031685604051613ce391906145ea565b600060405180830381855af49150503d8060008114613d1e576040519150601f19603f3d011682016040523d82523d6000602084013e613d23565b606091505b509150915061300e8683838760608315613d9e578251600003613d97576001600160a01b0385163b613d975760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610b9d565b5081613da8565b613da88383613db0565b949350505050565b815115613dc05781518083602001fd5b8060405162461bcd60e51b8152600401610b9d9190614606565b508054600082556006029060005260206000209081019061159e9190613eef565b828054828255906000526020600020908101928215613e3c579160200282015b82811115613e3c578251829061ffff16905591602001919060010190613e1b565b50613e48929150613f2b565b5090565b828054828255906000526020600020908101928215613e3c579160200282015b82811115613e3c57825182906affffffffffffffffffffff16905591602001919060010190613e6c565b828054828255906000526020600020908101928215613e3c579160200282015b82811115613e3c578235825591602001919060010190613eb6565b6040518060a001604052806005906020820280368337509192915050565b5b80821115613e48576000808255600182018190556002820181905560038201819055600482015560058101805460ff19169055600601613ef0565b5b80821115613e485760008155600101613f2c565b600060208284031215613f5257600080fd5b5035919050565b6001600160a01b038116811461159e57600080fd5b60008060408385031215613f8157600080fd5b8235613f8c81613f59565b91506020830135613f9c81613f59565b809150509250929050565b600060208284031215613fb957600080fd5b8135613bfc81613f59565b634e487b7160e01b600052604160045260246000fd5b60008060408385031215613fed57600080fd5b8235613ff881613f59565b9150602083013567ffffffffffffffff81111561401457600080fd5b8301601f8101851361402557600080fd5b803567ffffffffffffffff81111561403f5761403f613fc4565b604051601f8201601f19908116603f0116810167ffffffffffffffff8111828210171561406e5761406e613fc4565b60405281815282820160200187101561408657600080fd5b816020840160208301376000602083830101528093505050509250929050565b600080604083850312156140b957600080fd5b82356140c481613f59565b946020939093013593505050565b600080602083850312156140e557600080fd5b823567ffffffffffffffff8111156140fc57600080fd5b8301601f8101851361410d57600080fd5b803567ffffffffffffffff81111561412457600080fd5b8560208260051b840101111561413957600080fd5b6020919091019590945092505050565b6000806040838503121561415c57600080fd5b50508035926020909101359150565b801515811461159e57600080fd5b60006020828403121561418b57600080fd5b8135613bfc8161416b565b6000806000606084860312156141ab57600080fd5b83356141b681613f59565b92506020840135915060408401356141cd8161416b565b809150509250925092565b602080825282518282018190526000918401906040840190835b8181101561424c578351805184526020810151602085015260408101516040850152606081015160608501526080810151608085015260a0810151151560a08501525060c0830192506020840193506001810190506141f2565b509095945050505050565b600080600080600060a0868803121561426f57600080fd5b505083359560208501359550604085013594606081013594506080013592509050565b600080604083850312156142a557600080fd5b82356142b081613f59565b91506020830135613f9c8161416b565b60a08101818360005b60058110156142e85781518352602092830192909101906001016142c9565b50505092915050565b60008060008060008060c0878903121561430a57600080fd5b505084359660208601359650604086013595606081013595506080810135945060a0013592509050565b60008060006060848603121561434957600080fd5b833561435481613f59565b95602085013595506040909401359392505050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561439157600080fd5b5051919050565b6001600160a01b03929092168252602082015260400190565b6000602082840312156143c357600080fd5b8151613bfc8161416b565b634e487b7160e01b600052601160045260246000fd5b808201808211156119f4576119f46143ce565b80820281158282048414176119f4576119f46143ce565b818103818111156119f4576119f46143ce565b634e487b7160e01b600052603160045260246000fd5b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b6163746976652070726f787960a01b606082015260800190565b6000602082840312156144e157600080fd5b8151613bfc81613f59565b634e487b7160e01b600052601260045260246000fd5b600082614511576145116144ec565b500690565b6020808252600790820152666e6f207a65726f60c81b604082015260600190565b600060018201614549576145496143ce565b5060010190565b60008261455f5761455f6144ec565b500490565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6000816145be576145be6143ce565b506000190190565b60005b838110156145e15781810151838201526020016145c9565b50506000910152565b600082516145fc8184602087016145c6565b9190910192915050565b60208152600082518060208401526146258160408501602087016145c6565b601f01601f1916919091016040019291505056fee679beb5d98a54fda65331587d36d13358e8bf295be15e932c482164f8fde95e360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220312c6df6200425bd8659bbe05d94d2dce2d902db7254fa8188f499fb5a5ce3b264736f6c634300081a0033