831 txs
746 calls
constructor
constructor()
functions
DAILY_ROI
viewfunction DAILY_ROI() view returns (uint256)
DEV_PERCENT
viewfunction DEV_PERCENT() view returns (uint256)
dev1
viewfunction dev1() view returns (address)
dev2
viewfunction dev2() view returns (address)
FSP
viewfunction FSP() view returns (address)
generateUserId
purefunction generateUserId(uint256 idNumber) pure returns (string)
getCurrentExchangeRate
viewfunction getCurrentExchangeRate() view returns (uint256 fspPerUSDT)
getFSPAmount
viewfunction getFSPAmount(uint256 usdtAmount) view returns (uint256)
getRankProgress
viewfunction getRankProgress(address userAddress) view returns (uint256[18] teamSizeTargets, uint256[18] weakLegTargets, uint256[18] teamSizeAchieved, uint256[18] weakLegAchieved, uint256[18] teamSizeRemaining, uint256[18] weakLegRemaining, uint256[18] completionPercents, uint256[18] bonusAmounts, bool[18] isAchieved)
getRankProgressDetailed
viewfunction getRankProgressDetailed(address userAddress) view returns (uint256[18] teamSizeTargets, uint256[18] weakLegTargets, uint256[18] currentTeamSizes, uint256[18] currentWeakLegSizes, uint256[18] teamSizePercents, uint256[18] weakLegPercents, uint256[18] overallPercents, uint256[18] bonusAmounts, bool[18] isAchieved)
getTeamSupportProgress
viewfunction getTeamSupportProgress(address user) view returns (uint256 currentLevel, uint256 currentTeamSize, uint256 currentWeakerLegVolume, uint256 nextLevelTeamSizeRequirement, uint256 nextLevelWeakLegRequirement, uint256 nextLevelBonus)
getUserDashboard
viewfunction getUserDashboard(address userAddress) view returns (tuple)
getUserDepositInfo
viewfunction getUserDepositInfo(address userAddress) view returns (uint256 depositCount, uint256[] depositTimes, uint256[] depositAmounts)
getUserdirects
viewfunction getUserdirects(address userAddress) view returns (address[])
getUserInfo
viewfunction getUserInfo(address userAddress) view returns (string userId, uint256 totalDeposit, uint256 totalWithdrawns, uint256 totalReferralBonuss, uint256 currentRank, uint256 leftVolume, uint256 rightVolume, uint256 directCount, uint256 checkpoint)
getUserRoiInfo
viewfunction getUserRoiInfo(address userAddress) view returns (uint256[] timePassed, uint256[] pendingRoi, uint256[] totalRoi, uint256[] MaxRoi, uint256[] amount)
getUserWithdrawals
viewfunction getUserWithdrawals(address userAddress) view returns (tuple[])
getUserWithdrawReport
viewfunction getUserWithdrawReport(address userAddress) view returns (uint256 totalWithdrawnAmount, uint256 totalWithdrawCount, uint256 averageWithdrawAmount, uint256 lastWithdrawTime, uint256 firstWithdrawTime, tuple[] withdrawalHistory)
INVEST_MIN_AMOUNT
viewfunction INVEST_MIN_AMOUNT() view returns (uint256)
levelRoiPercents
viewfunction levelRoiPercents(uint256) view returns (uint256)
levelRoiRequirements
viewfunction levelRoiRequirements(uint256) view returns (uint256)
MAX_ROI
viewfunction MAX_ROI() view returns (uint256)
milestoneBonus
viewfunction milestoneBonus(uint256) view returns (uint256)
owner
viewfunction owner() view returns (address)
PERCENTS_DIVIDER
viewfunction PERCENTS_DIVIDER() view returns (uint256)
priceOracle
viewfunction priceOracle() view returns (address)
referralPercents
viewfunction referralPercents(uint256) view returns (uint256)
teamSupportBonusAmounts
viewfunction teamSupportBonusAmounts(uint256) view returns (uint256)
teamSupportRequiredTeamSizes
viewfunction teamSupportRequiredTeamSizes(uint256) view returns (uint256)
teamSupportRequiredWeakLegSizes
viewfunction teamSupportRequiredWeakLegSizes(uint256) view returns (uint256)
TIME_STEP
viewfunction TIME_STEP() view returns (uint256)
totalInvested
viewfunction totalInvested() view returns (uint256)
totalReferralBonus
viewfunction totalReferralBonus() view returns (uint256)
totalUsers
viewfunction totalUsers() view returns (uint256)
totalWithdrawn
viewfunction totalWithdrawn() view returns (uint256)
userIdToAddress
viewfunction userIdToAddress(string) view returns (address)
users
viewfunction users(address) view returns (string userId, uint256 checkpoint, address referrer, uint256 referralBonus, uint256 totalInvested, uint256 totalWithdrawn, tuple binaryTree, bool isRegistered, uint256 myTeamCount, uint256 availableBonus, uint256 totalBonus, uint256 lastBoostUpdate, uint256 lockedBoostTotal, uint256 teamSupportLevel, uint256 totalTeamSupportBonus, uint256 directReferralCount, uint256 totalDirectInvestmentAmount, uint256 lastMilestoneReached, uint256 businessCalculatorVolume, uint256 totalBusinessVolume, uint256 lastBonusResetTimestamp, uint256 totalExtraBonusProfit, uint256 businessCountAfterBonus, uint256 pendingRewards, uint256 totalClaimableRewards, uint256 totalDevFeePaid)
invest
nonpayablefunction invest(address referrer, uint256 amount)
reinvest
nonpayablefunction reinvest(uint256 amount)
updateFSPToken
nonpayablefunction updateFSPToken(address _fspToken)
updatePriceOracle
nonpayablefunction updatePriceOracle(address _priceOracle)
withdraw
nonpayablefunction withdraw(uint256 amount)
events
BinaryPlacement
event BinaryPlacement(address indexed user, address indexed parent, bool isLeft)
BusinessCalculatorReset
event BusinessCalculatorReset(address indexed user, uint256 previousVolume, uint256 bonusAmount)
BusinessVolumeUpdated
event BusinessVolumeUpdated(address indexed user, uint256 newVolume, uint256 businessCount)
MilestoneBonusAchieved
event MilestoneBonusAchieved(address indexed user, uint256 milestone, uint256 bonusAmount, uint256 totalDirectInvestment)
NewDeposit
event NewDeposit(address indexed user, uint256 amount)
RankAchieved
event RankAchieved(address indexed user, uint256 rank, uint256 bonus)
ReferralPayout
event ReferralPayout(address indexed referrer, address indexed referral, uint256 amount, uint256 level)
RewardsPendingDueToLimit
event RewardsPendingDueToLimit(address indexed user, uint256 pendingAmount, uint256 claimableAmount, uint256 totalDeposit)
TeamSupportBonusAchieved
event TeamSupportBonusAchieved(address indexed user, uint256 level, uint256 bonusAmount, uint256 weakerLegVolume)
UserRegistered
event UserRegistered(address indexed user, string userId, address indexed referrer)
Withdrawn
event Withdrawn(address indexed user, uint256 amount)
errors
No errors.
creation bytecode
0x60806040523462000e2b576200001462000e30565b60648152603c602082015260326040820152601e6060820152600a6080820152600560a0820152600560c0820152600560e08201526005610100820152600561012082015260056101408201526005610160820152600561018082015260056101a082015260056101c0820152600554600f60055580600f1062000dd1575b50600560005260206000209060005b600f811062000db957620000b562000e30565b6001815260026020820152600360408201526004606082015260056080820152600660a0820152600760c0820152600860e08201526009610100820152600a610120820152600b610140820152600c610160820152600d610180820152600e6101a0820152600f6101c0820152600654600f60065580600f1062000d70575b50600660005260206000209060005b600f811062000d58576200015662000e51565b60328152609660208201526101f460408201526104b0606082015261096060808201526112c060a082015261258060c0820152614b0060e082015261960061010082015262012c00610120820152620258006101408201526204b000610160820152620960006101808201526212c0006101a0820152622580006101c0820152624b00006101e082015262960000610200820152630119b08061022082015260075460126007558060121062000cfe575b50600760005260206000209060005b6012811062000ce3576200022962000e51565b601981526032602082015260af604082015261015e606082015261025860808201526104b060a082015261096060c08201526112c060e0820152612580610100820152614b0061012082015261960061014082015262012c00610160820152620258006101808201526204b0006101a0820152620960006101c08201526212c0006101e082015262258000610200820152628cd84061022082015260085460126008558060121062000c89575b50600860005260206000209060005b6012811062000c6f57620002f862000e51565b6802b5e3af16b1880000815268056bc75e2d631000006020820152681043561a88293000006040820152681b1ae4d6e2ef500000606082015268410d586a20a4c00000608082015268821ab0d4414980000060a08201526901043561a8829300000060c08201526902086ac351052600000060e0820152690410d586a20a4c000000610100820152690821ab0d441498000000610120820152691043561a882930000000610140820152692086ac3510526000000061016082015269410d586a20a4c000000061018082015269821ab0d44149800000006101a08201526a01043561a88293000000006101c08201526a02086ac3510526000000006101e08201526a1043561a882930000000006102008201526a2086ac351052600000000061022082015260095460126009558060121062000c15575b50600960005260206000209060005b6012811062000bf7576200045162000e30565b612710815261177060208201526113886040820152610bb860608201526103e860808201526101f460a08201526101f460c08201526101f460e08201526101f46101008201526101f46101208201526101f46101408201526101f46101608201526101f46101808201526101f46101a08201526101f46101c0820152600a54600f600a5580600f1062000b9d575b50600a60005260206000209060005b600f811062000b84576040516001600160401b03606082019081119082111762000a5a57606081016040526107d08152610fa060208201526117706040820152600b546003600b558060031062000b2a575b50600b60005260206000209060005b6003811062000b1157600080546001600160a01b031990811673dc84096074269d8f304d476124101249d105b60d1790915560018054821673ff5b696a21981ac6f3d3fc8e1df8318cfbd4d9041790556002805482167317e57edc37df25f25188e7de99bdec9208553b0e17905560038054821673240bdef0e578cfc9bf59969d7b0740db8852ddda17905560048054909116731221278908f8ec3aa1babdb39813426cdc4b803f17905560408051906201ea29906001600160401b039083019081119083111762000a5a576040820160405260068252602036818401376000905b6006821062000a70577317e57edc37df25f25188e7de99bdec9208553b0e600052600c602052825183907f76b11f7e52b1af0d7d7d569e535200e5545ffde923c2f73e59d811b24c65f333906001600160401b03811162000a5a578154600181811c9116801562000a4f575b602082101462000a3957601f8111620009f7575b50806020601f82116001146200098b576000916200097f575b508160011b916000199060031b1c19161781555b60108101600160ff19825416179055600060168201556000601c8201556000601d820155600060208201556000601f82015542601e82015560006021820155600060228201556000601882015560006017820155604051602081845162000749818385890162000e8b565b600d9082019081520301902080546001600160a01b0319167317e57edc37df25f25188e7de99bdec9208553b0e179055600e54620007879062000eb0565b600e5560038101546001600160a01b0316916001915b6001600160a01b03841615620008f85760018060a01b038416600052600c6020526008604060002001836000526020526040600020620007de815462000eb0565b90556001600160a01b0384166000908152600c602052604090206012018054620008089062000eb0565b905560018060a01b038416600052600c60205260406000209160078301549160005b600654811015620008bf576006600052600080516020620052ca833981519152810154620008619190851015620008675762000eb0565b6200082a565b801580620008a3575b62000897575b80600052600986016020526040600020600160ff1982541617905562000eb0565b42601587015562000876565b50806000526009860160205260ff604060002054161562000870565b506001600160a01b039586166000908152600c60205260409020600301549095169493909250620008f1915062000eb0565b916200079d565b7f43864134af361805265e0c6a51a53b97a54d02d4753018d0d1ef2d19a44ff6027317e57edc37df25f25188e7de99bdec9208553b0e91600360018060a01b0391015416926040805180926020825262000962815180928160208601526020868601910162000e8b565b601f01601f19168101030190a3604051614409908162000ec18239f35b905083015184620006ca565b91508260005260206000206000925b601f1983168410620009de576001935082601f19811610620009c4575b5050811b018155620006de565b85015160001960f88460031b161c191690558480620009b7565b858101518255602093840193600190920191016200099a565b62000a2790836000526020600020601f840160051c8101916020851062000a2e575b601f0160051c019062000e72565b83620006b1565b909150819062000a19565b634e487b7160e01b600052602260045260246000fd5b90607f16906200069d565b634e487b7160e01b600052604160045260246000fd5b6030600a82068101811162000afb5760058381031162000afb57835183600503101562000ae55762000ade91600a918282060160f81b7fff000000000000000000000000000000000000000000000000000000000000001660001a6005859003860160200153049162000eb0565b9062000631565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600190602061ffff84511693019281850155016200054f565b600b60005262000b7d907f0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01db9017f0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01dbc62000e72565b8162000540565b600190602061ffff8451169301928185015501620004ee565b600a60005262000bf0907fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8017fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2b762000e72565b81620004df565b81516001600160581b0316818401556020909101906001016200043e565b600960005262000c68907f6e1540171b6c0c960b71a7020d9f60077f6af931a8bbf590da0223dacf75c7af017f6e1540171b6c0c960b71a7020d9f60077f6af931a8bbf590da0223dacf75c7c162000e72565b816200042f565b600190602062ffffff8451169301928185015501620002e5565b600860005262000cdc907ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee3017ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ef562000e72565b81620002d6565b600190602063ffffffff845116930192818501550162000216565b600760005262000d51907fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688017fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c69a62000e72565b8162000207565b600190602060ff845116930192818501550162000143565b600660005262000db290600080516020620052ca833981519152017ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d4e62000e72565b8162000134565b600190602060ff8451169301928185015501620000a2565b600560005262000e24907f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0017f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3dbf62000e72565b3862000093565b600080fd5b604051906101e082016001600160401b0381118382101762000a5a57604052565b6040519061024082016001600160401b0381118382101762000a5a57604052565b81811062000e7e575050565b6000815560010162000e72565b60005b83811062000e9f5750506000910152565b818101518382015260200162000e8e565b600019811462000afb576001019056fe6102e080604052600436101561001457600080fd5b60003560e01c90816301c234a814612ccd57508063054612db14612c17578063223b364a14612b645780632630c12f14612b3b57806327532d2714612b1e5780632e1a7d4d1461274257806332bc298c1461272457806339d1fc821461268d5780633ca967f3146125fd5780634059d2a0146125df5780634b2fa18d146125b65780634b319713146125985780635216aeec1461257a5780635b9f2c29146125515780636386c1c7146124a8578063709d8ed51461247f57806374714e951461244c5780638013f3a71461242357806383b4918b146122a25780638da5cb5b14612279578063963920a31461225057806396d81e24146122325780639de4ba0214612209578063a327c45d146121e0578063a76b2921146121b7578063a7ca1f4714611e27578063a87430ba14611b4d578063ab8a3c6b14611b30578063b09b8c9214611b07578063b3a7834d14611a4c578063b9b8c24614610f01578063bff1f9e114610ee3578063c21be6ae14610e24578063ccb384af14610ded578063daafa90714610d61578063e262113e14610d3d578063e49aa2b714610c70578063e4a70e1914610be0578063e502eb6814610b8f578063ed18ea82146109af578063f682788a146107385763faaf8076146101ee57600080fd5b3461073357602036600319011261073357610207612ce9565b61020f613cdc565b506001600160a01b0381166000908152600c60205260409020610231826139ef565b60009160009360006001908184018054915b8281106106cf5750505050600582015490816003810204600314821517156105b45760009460068401549660038402881061066e575b505060018060a01b038116600052600c602052620151806102b56040600020926102b06102aa601586015442613299565b9161383b565b6131cb565b046000906000600554905b818110610624575050612710918281029281840414901517156105b4576016620186a06102f0930493015461324a565b9080821161061c575b5060078301546000805b8281106105d65750610313613cdc565b96848852602088015260128501546040880152606087015260808601528360a086015260c085015261034e600e830154600f8401549061324a565b60e085015261035d838661324a565b9461036d6013840154809761324a565b61010086015260006017840154801515806105ca575b61058d575b50610120860152601a830154600a5415610577576102a096602395620186a06103db61040294600a6000527fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a854906131cb565b0461014089015260048601546101608901526103f7828261324a565b61018089015261324a565b61040f8260038502613299565b908181111561057057505b6101a0860152601d8301546101c086015260208301546101e0860152601f83015461020086015260218301549081610220870152600383026102408701526003808402821015930211610566575b501515610260840152015461028082015261028060405191805183526020810151602084015260408101516040840152606081015160608401526080810151608084015260a081015160a084015260c081015160c084015260e081015160e08401526101008101516101008401526101208101516101208401526101408101516101408401526101608101516101608401526101808101516101808401526101a08101516101a08401526101c08101516101c08401526101e08101516101e084015261020081015161020084015261022081015161022084015261024081015161024084015261026081015115156102608401520151610280820152f35b9050151538610468565b905061041a565b634e487b7160e01b600052603260045260246000fd5b8091506000198101116105b4576105a79060001901612d6d565b90549060031b1c38610388565b634e487b7160e01b600052601160045260246000fd5b50600954811115610383565b90610611610617916105eb8460078a01612e80565b60018060a01b0391549060031b1c16600052600c6020526005604060002001549061324a565b916132a6565b610303565b9050386102f9565b806000526009850160205260ff6040600020541661064b575b610646906132a6565b6102c0565b9261066661064691600a87016020526040600020549061324a565b93905061063d565b90955061067e8760038502613299565b95806003810204600314811517156105b457600361069f876106a69461324a565b9102613299565b94808611156106c857945b85116106bf575b3880610279565b600094506106b8565b50846106b1565b6106d981836132b5565b508054620493e0918282029282840414821517156105b45786620186a091015492048210610712575b505061070d906132a6565b610243565b9061072561072b9261070d949c9b61324a565b9961324a565b989038610702565b600080fd5b3461073357602036600319011261073357610751612ce9565b610759613db9565b610761613db9565b610769613db9565b91610772613db9565b9061077b613db9565b90610784613db9565b61028052610790613db9565b90610799613db9565b926107a2613db9565b946107c86107c28a60018060a01b0316600052600c602052604060002090565b9961433d565b601290818b0154601760009c01549b5b8381106107ff57505050506107fb9697985060405198899861028051948a6130b5565b0390f35b80808e8d8f8661085a858e936108176108f79a612cff565b9690549561082484612d36565b6102c052546102a05261083d84888a60031b1c92613dde565b52610854836102a0516102c05160031b1c92613dde565b52613dde565b5287610866858c613dde565b528383111561093b57600061087b858d613dde565b52600061088b8561028051613dde565b525b600382901b81901c871061092557505060645b6102a0516102c05160031b1c87106109035760645b808210156108fc57505b6108c9838d613dde565b528b6108e5836108d881612d6d565b90549060031b1c92613dde565b52116108f1828d613dde565b526132a6565b6107d8565b90506108bf565b6109206102a0516102c05160031b1c61091b896131b5565b6131de565b6108b5565b6109369160031b1c61091b876131b5565b6108a0565b86818360031b1c116000146109a85761095987828460031b1c613299565b610963858d613dde565b52876102a0516102c05160031b1c116000146109a15761098e886102a0516102c05160031b1c613299565b61099b8561028051613dde565b5261088d565b600061098e565b6000610959565b34610733576020366003190112610733576109c8612ce9565b6109d0613db9565b6109d8613db9565b906109e1613db9565b6109e9613db9565b6109f1613db9565b6109f9613db9565b610a01613db9565b91610a0a613db9565b93610a13613db9565b95610a39610a338b60018060a01b0316600052600c602052604060002090565b9a61433d565b601290818c0154601760009d01549c5b838110610a6757505050506107fb97989950604051998a998a6130b5565b808b8f8f938f6108f1928f8f8f8f8f908f610b33938f8f9e610b499f918c809c8483610ac184809c819b9961085483809c610aa182612cff565b90549060031b1c610ab2838c613dde565b528c610854836108d881612d36565b52610acc8383613dde565b518110610b7a5750505060645b610ae38488613dde565b52610aee8383613dde565b518110610b585750505060645b610b058383613dde565b52610b108284613dde565b51610b1b8383613dde565b511115610b4e5750610b2c91613dde565b5192613dde565b52610b41836108d881612d6d565b521192613dde565b610a49565b610b2c9250613dde565b610b7592610b68610b6e926131b5565b92613dde565b51906131de565b610afb565b610b8a92610b68610b6e926131b5565b610ad9565b34610733576020366003190112610733576001600160a01b03610bb0612ce9565b16600052600c6020526107fb610bcc6011604060002001613c5b565b60405191829160208352602083019061304e565b34610733576020806003193601126107335760015460405163e4a70e1960e01b81526004803590820152908290829060249082906001600160a01b03165afa908115610c6457600091610c37575b50604051908152f35b90508181813d8311610c5d575b610c4e8183612f86565b81010312610733575182610c2e565b503d610c44565b6040513d6000823e3d90fd5b346107335760208060031936011261073357610c8a612ce9565b6001600160a01b03166000908152600c82526040812060108101548291908290610cb69060ff16613257565b6006610cc460118401613c5b565b9201549382519384610d00575b6107fb94604051978897885287015260408601526060850152608084015260c060a084015260c083019061304e565b505050610d0d82846131de565b9160001981018181116105b457610d25869184613cc8565b51015182511561057757828601518601519193610cd1565b346107335760003660031901126107335760206040516801158e460913d000008152f35b3461073357602036600319011261073357610d7a612ce9565b6002546001600160a01b03919082163303610da857166001600160601b0360a01b6000541617600055600080f35b60405162461bcd60e51b815260206004820152601f60248201527f4f6e6c79206f776e65722063616e207570646174652046535020746f6b656e006044820152606490fd5b346107335760203660031901126107335760043560085481101561073357610e16602091612d36565b90546040519160031b1c8152f35b34610733576020806003193601126107335760043567ffffffffffffffff8082116107335736602383011215610733578160040135908111610ecd5760405190610e77601f8201601f1916850183612f86565b80825283820192366024838301011161073357816000926024879301863783010152610eab60405192839251928391612e98565b600d90820190815281900382019020546040516001600160a01b039091168152f35b634e487b7160e01b600052604160045260246000fd5b34610733576000366003190112610733576020600e54604051908152f35b3461073357604036600319011261073357610f1a612ce9565b610f316801158e460913d000006024351015613160565b60015460405163e4a70e1960e01b808252602480356004840152909392602091839182906001600160a01b03165afa908115610c6457600091611a19575b50600080546040516323b872dd60e01b81523360048201523060248201526044810193909352602091839160649183916001600160a01b03165af1908115610c64576000916119fa575b50156119bf57611388918260243502926024358404146024351517156105b457600154604051918252620186a084046004830152602090829060249082906001600160a01b03165afa8015610c645760009061198c575b6000805460035460405163a9059cbb60e01b81526001600160a01b039182166004820152600185901c602482015294506020928592604492849291165af1908115610c645761106d6020926110b19460009161196f575b506131fe565b600080546004805460405163a9059cbb60e01b81526001600160a01b039182169281019290925260019490941c602482015294859390911691839182906044820190565b03925af18015610c64576110cc9160009161194057506131fe565b336000908152600c60205260409020916110f0620186a0602385019204825461324a565b9055601082015460ff1661192e57611107906140d5565b60018060a01b03811680600052600c602052604060002033600052600b81016020526040600020805460ff8116156118c4575b50505033600052600c6020526003604060002001906001600160601b0360a01b825416179055600e546201ea299081018091116105b45761117a9061400c565b33600052600c602052604060002091815167ffffffffffffffff8111610ecd576111a48454612f14565b601f8111611880575b50806020601f82116001146118195760009161180e575b508160011b916000199060031b1c19161783555b60108301600160ff19825416179055600060168401556000601c8401556000601d840155600060208401556000601f84015542601e8401556000602184015560006022840155600060188401556000601784015560405160208184516112418183858901612e98565b8101600d815203019020336001600160601b0360a01b825416179055611268600e546132a6565b600e556003830154600192906001600160a01b03165b6001600160a01b0381161561131d5760018060a01b038116600052600c60205260086040600020018460005260205260406000206112bc81546132a6565b90556001600160a01b0381166000908152600c6020526040902060120180546112e4906132a6565b90556112ef8161412b565b6001600160a01b039081166000908152600c60205260409020600301541692611317906132a6565b9261127e565b50915091600360018060a01b0391015416907f43864134af361805265e0c6a51a53b97a54d02d4753018d0d1ef2d19a44ff602604051602081528061136733946020830190612ebb565b0390a35b6001600160a01b038181166000908152600c602081905260409091209081018054909216908161177957505080546001600160a01b03191633908117909155604051600181526001600160a01b03909216917fdaa8b63c83c384e625529c0bc77b03f8b61a64de7119f576043da1db85b1b28690602090a35b6113f060243582613def565b336000908152600c60205260409020600301546001600160a01b031680611578575b6001905b600f82111580611566575b1561151f5761142f826141d2565b80611464575b506001600160a01b039081166000908152600c6020526040902060030154169061145e906132a6565b90611416565b611474620186a0916024356131cb565b0460018060a01b03821680600052600c602052600460406000200161149a83825461324a565b905560116114a983825461324a565b905580600052600c60205260136040600020016114c783825461324a565b905580600052600c60205260146040600020016114e583825461324a565b90556040519182528360208301527f91d67fa7721dc1bc71750db116186e9fee3972fdbd536aa712091c96614969b860403393a383611435565b6003830154611536906001600160a01b031661420f565b60405160243581527f2cb77763bc1e8490c1a904905c4d74b4269919aca114464f4bb4d911e60de36460203392a2005b506001600160a01b0381161515611421565b80600052601a604060002001611591602435825461324a565b905580600052600c602052807fd5dc7bd8a183da1aebfd3bbf0f3ba7c49c2c550baaf2cbf302b91e7a319882d96040806000206020601c8201916115d8602435845461324a565b809355601d81016115ec602435825461324a565b9055016115f981546132a6565b80915582519182526020820152a280600052600c602052604060002060198101549060058210158061176e575b611632575b5050611412565b60058204601b8201908082541061164b575b505061162b565b60001984019384116105b4576116676003600587960406612da4565b9054601c8501549160031b1c81611680575b5050611644565b7feb194bf739b855e9603ee5205193d291a9870f7fa3ae5028f899b05670dbc47a9483620186a06116b6601a94611760966131cb565b0495601383016116c788825461324a565b9055601483016116d888825461324a565b9055601f83016116e988825461324a565b90555586600052600c602052867f09f1e2605c01dc9fd401193f685387f6be5fe66e31a85ca4f17ac1f9fedaec78604080600020601c81019060008254925560006020820155601e429101558151908152886020820152a20154604051938493846040919493926060820195825260208201520152565b0390a2808380808080611679565b506005820615611626565b600d8101805490935091906001600160a01b03831690816117e6575050506001600160a01b03191633908117909155604051600081526001600160a01b03909216917fdaa8b63c83c384e625529c0bc77b03f8b61a64de7119f576043da1db85b1b28690602090a36113e4565b600f929550600e91945080935001549101541015600014611807575061136b565b905061136b565b9050830151866111c4565b91508460005260206000206000925b601f1983168410611868576001935082601f1981161061184f575b5050811b0183556111d8565b85015160001960f88460031b161c191690558680611843565b85810151825560209384019360019092019101611828565b846000526020600020601f830160051c8101602084106118bd575b601f830160051c820181106118b15750506111ad565b6000815560010161189b565b508061189b565b60ff191660011790556007810180549190600160401b831015610ecd57826118f3916001601995018155612e80565b81546001600160a01b0360039290921b91821b19163390911b17905501805461191b906132a6565b90556119268261412b565b83808061113a565b5061193b60243533613f81565b6113e4565b611962915060203d602011611968575b61195a8183612f86565b81019061319d565b84611067565b503d611950565b6119869150843d86116119685761195a8183612f86565b87611067565b506020813d6020116119b7575b816119a660209383612f86565b810103126107335760009051611010565b3d9150611999565b60405162461bcd60e51b81526020600482015260136024820152721194d4081d1c985b9cd9995c8819985a5b1959606a1b6044820152606490fd5b611a13915060203d6020116119685761195a8183612f86565b83610fb9565b90506020813d602011611a44575b81611a3460209383612f86565b8101031261073357516020610f6f565b3d9150611a27565b34610733576020366003190112610733576001600160a01b03611a6d612ce9565b16600052600c60205260016040600020018054611a8981613d87565b91611a9382613d87565b9060005b838110611ace5750506107fb90611ac06040519485948552606060208601526060850190612ee0565b908382036040850152612ee0565b806002611ade611b0293856132b5565b500154611aeb8288613cc8565b52611af681846132b5565b50546108f18286613cc8565b611a97565b346107335760203660031901126107335760043560095481101561073357610e16602091612d6d565b346107335760003660031901126107335760206040516103e88152f35b34610733576020366003190112610733576001600160a01b03611b6e612ce9565b16600052600c602052611b8860406000208060a052612fa8565b60a051600281015460c05260038101546001600160a01b03166102605260048101546101605260058101546101a0526006810154604051909291906080810167ffffffffffffffff811182821017610ecd5760146013601260ff60106060601697611cd560189b60179b60159a604052600c60018060a01b0391015416835260018060a01b03600d60a0510154166020840152600e60a05101546040840152600f60a0510154848401526023601960a0519e8f9e8f9e8f9e8f9e8f9e8f9e8f9e8f9e8f0154169d01549d01549d01549d01549d01549d01549d01549d01549d601a81015461018052601b81015460e052601c8101546101e052601d8101546101c052601e81015461010052601f81015461020052602081015461022052602181015461012052602281015461024052015460805260405180610140526103a0809152610140510190612ebb565b9b60c051602061014051015261026051604061014051015261016051836101405101526101a051608061014051015260a061014051015260018060a01b0381511660c061014051015260018060a01b0360208201511660e0610140510152604081015161010061014051015201516101206101405101521515610140805101526101606101405101526101806101405101526101a06101405101526101c06101405101526101e06101405101526102006101405101526102206101405101526102406101405101526101805161026061014051015260e0516102806101405101526101e0516102a06101405101526101c0516102c0610140510152610100516102e0610140510152610200516103006101405101526102205161032061014051015261012051610340610140510152610240516103606101405101526080516103806101405101526101405180910390f35b3461073357602036600319011261073357611e40612ce9565b6001600160a01b0381166000908152600c60205260409020600181015491611e6783613d87565b91611e7184613d87565b611e7a85613d87565b90611e8486613d87565b92611eb3611e9a611e9489613d87565b9661383b565b62015180611eac601585015442613299565b04906131cb565b9060009760005b8181106121025750888311156120fb5788905b60005b818110611f3757611eff8a6107fb8b611f298c611f1b8d611f0d8e604051998a9960a08b5260a08b0190612ee0565b9089820360208b0152612ee0565b908782036040890152612ee0565b908582036060870152612ee0565b908382036080850152612ee0565b611f4481600186016132b5565b509060405191611f5383612f6a565b6000835260006020840152600060408401526000606084015260006080840152805492620493e09380858102048514811517156105b4578e6080938a620186a061202498850204928360608701528487870152611fb4600284015442613299565b60208701526001830154948a90869086821061202957505050505050506000825260408201525b8051611fe7848b613cc8565b526020810151611ff7848f613cc8565b526040810151612007848c613cc8565b526060810151612017848d613cc8565b5201516108f1828c613cc8565b611ed0565b61205d9261091b612057926120516201518061204960038c015442613299565b048092613730565b976131cb565b95613299565b908b8261207857505050505050600082526040820152611fdb565b6120cb956120c694848111156120f55750835b84808211156120ec5761209d91613299565b818111156120e45750915b80156120d75761091b6120bd926004946131cb565b935b015461324a565b61324a565b82526040820152611fdb565b50505060046000936120bf565b9050916120a8565b5050600061209d565b9361208b565b8290611ecd565b986121108a600185016132b5565b50805490620493e08083029083820414831517156105b457620186a0900491600182015491838310156121a957612195949261216661218f95936201518061215f600361216c96015442613299565b0490613730565b92613299565b90818111156121a45750805b8082111561219a5761218991613299565b9061324a565b996132a6565b611eba565b505060009061324a565b612178565b5050505098612195906132a6565b346107335760203660031901126107335760043560065481101561073357610e16602091612e49565b34610733576000366003190112610733576003546040516001600160a01b039091168152602090f35b346107335760203660031901126107335760043560075481101561073357610e16602091612cff565b34610733576000366003190112610733576020604051620493e08152f35b3461073357602036600319011261073357600435600a5481101561073357610e16602091612e12565b34610733576000366003190112610733576002546040516001600160a01b039091168152602090f35b346107335760203660031901126107335760043533600052600c60205260406000206122d460ff601083015416613257565b6122e96801158e460913d00000831015613160565b6122f233613756565b6123096122fe336139ef565b60138301549061324a565b82116123df57600581018054600683018054926123268686613def565b6123308686613550565b5061233c86835461324a565b825561234a8660105461324a565b60105554906003820291808304600314901517156105b45754106123ab575b836123748133613f81565b61237d3361412b565b6040519081527f2cb77763bc1e8490c1a904905c4d74b4269919aca114464f4bb4d911e60de36460203392a2005b6003810290808204600314901517156105b45711156123cc575b8080612369565b60006016820155601542910155816123c5565b606460405162461bcd60e51b815260206004820152602060248201527f416d6f756e74206578636565647320617661696c61626c652062616c616e63656044820152fd5b34610733576000366003190112610733576004546040516001600160a01b039091168152602090f35b34610733576020366003190112610733576107fb61246b60043561400c565b604051918291602083526020830190612ebb565b346107335760203660031901126107335760043560055481101561073357610e16602091612ddb565b34610733576020366003190112610733576001600160a01b036124c9612ce9565b16600052600c6020526125236040600020600581015460068201549160048101546017820154600e830154600f8401549160198501549361250e600287015496612fa8565b97604051998a99610120808c528b0190612ebb565b9760208a015260408901526060880152608087015260a086015260c085015260e08401526101008301520390f35b34610733576000366003190112610733576000546040516001600160a01b039091168152602090f35b34610733576000366003190112610733576020600f54604051908152f35b34610733576000366003190112610733576020601054604051908152f35b3461073357602036600319011261073357600435600b5481101561073357610e16602091612da4565b34610733576000366003190112610733576020601154604051908152f35b346107335760003660031901126107335760015460405163e4a70e1960e01b8152670de0b6b3a7640000600482015290602090829060249082906001600160a01b03165afa8015610c645760009061265b575b602090604051908152f35b506020813d8211612685575b8161267460209383612f86565b810103126107335760209051612650565b3d9150612667565b34610733576020366003190112610733576126a6612ce9565b6002546001600160a01b039190821633036126d457166001600160601b0360a01b6001541617600155600080f35b60405162461bcd60e51b815260206004820152602260248201527f4f6e6c79206f776e65722063616e20757064617465207072696365206f7261636044820152616c6560f01b6064820152608490fd5b34610733576000366003190112610733576020604051620151808152f35b34610733576020806003193601126107335733600052600c815260406000209061277260ff601084015416613257565b600282019081546201518081018091116105b457421115612aee57612799600435846132d1565b918215612ab357429055600683016127b283825461324a565b90556127c08260105461324a565b601055604051601184016127d382612f4e565b8382528282014281528154600160401b811015610ecd5760018101808455811015610577576001926000528460002090831b01925183555191015561138880830290838204036105b457620186a0900460018060a01b03938460015416916040519263e4a70e1960e01b938481528660048201528581602481855afa948515610c64578691600096612a82575b5060246040518094819382528660048301525afa908115610c6457600091612a54575b5060236128979160011c930191825461324a565b90556000805460405163a9059cbb60e01b808252336004830152602482019590955291859183916044918391908b165af1908115610c6457600091612a37575b50156129f257600080546003546040518581529088166001600160a01b03166004820152602481018490529596918591879160449183919086165af1928315610c64576129308594612966976000916129d557506131fe565b6000828154169260045416916040519788958694859384526004840160209093929193604081019460018060a01b031681520152565b03925af1918215610c64577f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5926129a4916000916129b857506131fe565b6129ad33613756565b6040519283523392a2005b6129cf9150833d85116119685761195a8183612f86565b85611067565b6129ec9150863d88116119685761195a8183612f86565b89611067565b60405162461bcd60e51b815260048101849052601a60248201527f5769746864726177616c207472616e73666572206661696c65640000000000006044820152606490fd5b612a4e9150843d86116119685761195a8183612f86565b866128d7565b90508481813d8311612a7b575b612a6b8183612f86565b8101031261073357516023612883565b503d612a61565b8281939297503d8311612aac575b612a9a8183612f86565b81010312610733578590519489612860565b503d612a90565b60405162461bcd60e51b81526004810183905260136024820152724e6f7468696e6720746f20776974686472617760681b6044820152606490fd5b6064906040519062461bcd60e51b825260048201526009602482015268546f6f206561726c7960b81b6044820152fd5b346107335760003660031901126107335760206040516113888152f35b34610733576000366003190112610733576001546040516001600160a01b039091168152602090f35b346107335760203660031901126107335760c0612b7f612ce9565b6001600160a01b0381166000908152600c602052604081208190819093612baf601260178701549601549161433d565b906007548610612bdb575b604051958652602086015260408501526060840152608083015260a0820152f35b9350915050612be983612cff565b90549060031b1c612bf984612d36565b90549060031b1c91612c0a85612d6d565b90549060031b1c93612bba565b3461073357602080600319360112610733576001600160a01b039081612c3b612ce9565b16600052600c8152600760406000200160405191828183549182815201908193600052826000209060005b818110612cb75750505083612c7c910384612f86565b60405192818401908285525180915260408401929160005b828110612ca15785850386f35b8351871685529381019392810192600101612c94565b8254881684529284019260019283019201612c66565b346107335760003660031901126107335780620186a060209252f35b600435906001600160a01b038216820361073357565b6007548110156105775760076000527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6880190600090565b6008548110156105775760086000527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30190600090565b6009548110156105775760096000527f6e1540171b6c0c960b71a7020d9f60077f6af931a8bbf590da0223dacf75c7af0190600090565b600b5481101561057757600b6000527f0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01db90190600090565b6005548110156105775760056000527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db00190600090565b600a5481101561057757600a6000527fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a80190600090565b6006548110156105775760066000527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0190600090565b80548210156105775760005260206000200190600090565b60005b838110612eab5750506000910152565b8181015183820152602001612e9b565b90602091612ed481518092818552858086019101612e98565b601f01601f1916010190565b90815180825260208080930193019160005b828110612f00575050505090565b835185529381019392810192600101612ef2565b90600182811c92168015612f44575b6020831014612f2e57565b634e487b7160e01b600052602260045260246000fd5b91607f1691612f23565b6040810190811067ffffffffffffffff821117610ecd57604052565b60a0810190811067ffffffffffffffff821117610ecd57604052565b90601f8019910116810190811067ffffffffffffffff821117610ecd57604052565b9060405191826000825492612fbc84612f14565b90818452600194858116908160001461302b5750600114612fe8575b5050612fe692500383612f86565b565b9093915060005260209081600020936000915b818310613013575050612fe693508201013880612fd8565b85548884018501529485019487945091830191612ffb565b915050612fe694506020925060ff191682840152151560051b8201013880612fd8565b90815180825260208080930193019160005b82811061306e575050505090565b8351805186528201518583015260409094019392810192600101613060565b6000915b6012831061309e57505050565b600190825181526020809101920192019190613091565b9998979593918a9795939161144089019b6130cf9161308d565b61024088016130dd9161308d565b61048087016130eb9161308d565b6106c086016130f99161308d565b61090085016131079161308d565b610b4084016131159161308d565b610d8083016131239161308d565b610fc082016131319161308d565b61120001906000915b6012831061314757505050565b600190825115158152602080910192019201919061313a565b1561316757565b60405162461bcd60e51b815260206004820152600e60248201526d416d6f756e7420746f6f206c6f7760901b6044820152606490fd5b90816020910312610733575180151581036107335790565b906064820291808304606414901517156105b457565b818102929181159184041417156105b457565b81156131e8570490565b634e487b7160e01b600052601260045260246000fd5b1561320557565b60405162461bcd60e51b815260206004820152601760248201527f44657620666565207472616e73666572206661696c65640000000000000000006044820152606490fd5b919082018092116105b457565b1561325e57565b60405162461bcd60e51b8152602060048201526013602482015272155cd95c881b9bdd081c9959da5cdd195c9959606a1b6044820152606490fd5b919082039182116105b457565b60001981146105b45760010190565b8054821015610577576000526005602060002091020190600090565b906000811561354a5780928260058201546003810290808204600314901517156135365760068301548082111561352d5761330b91613299565b905b811561352457811061351c575b506013810180549081151580613513575b6134dc575b5050826133a8575b818061339f575b80613392575b613350575b50505090565b6133789161337f93946016612166930180549250828710600014613388578694858094613299565b905561324a565b5038808061334a565b8294858094613299565b5060168101541515613345565b5082151561333f565b939092600092835b6001870180548610156133ee576133e89160046133d0886133e2946132b5565b506133da816136b1565b01549061324a565b946132a6565b936133b0565b50909350949093919480613403575b50613338565b92949093838610156134d25785929190915b83916000935b60019081890180548710806134c9575b156134ae578661343a916132b5565b509160048301928354938a8a861561349d57916134656133e296949261091b89979561348e9a6131cb565b948a8611613495575b91859391613480856120579795613299565b90550161337883825461324a565b939261341b565b8a955061346e565b5050505050939461348e91506132a6565b509796505096909391506134c29250613299565b91386133fd565b5085151561342b565b8392919091613415565b61350192949550818610600014613509576134f8868093613299565b90558094613299565b913880613330565b6134f88280613299565b5084151561332b565b92503861331a565b50505091505090565b5050829061330d565b634e487b7160e01b84526011600452602484fd5b91505090565b9080156136aa576000918160138201805490811515806136a2575b613667575b505050816135c3575b811515806135b6575b61358b57505090565b6121666135b292936016613378930190815491828710600014613388578694858094613299565b5090565b5060168101541515613582565b92909160005b6001808601805483108061365e575b1561365357826135e7916132b5565b50906135f2826136b1565b600482019182549283613612575b5050505061360d906132a6565b6135c9565b9261360d949795613480936136399361363f96848a10600014613649578996878096613299565b93613299565b9390388080613600565b8496878096613299565b505050919092613579565b508515156135d8565b90919461368f9394505081851060001461369857613686858093613299565b90558093613299565b90388080613570565b6136868280613299565b50600161356b565b5050600090565b60038101906136c1825442613299565b90811561372b576136d9620151808254930483613730565b91620493e0908181029181830414901517156105b45761370390620186a060018401549104613299565b808311613722575b50600461371b910191825461324a565b9055429055565b9150600461370b565b505050565b6103e8908181029181830414901517156105b457620186a091613752916131cb565b0490565b600060018060a01b0382168152600c602052604081206015810192835480421115613834576102aa6137889142613299565b83918115158061382b575b61380d575b5050826005830154801580156137ca575b50506137b9575060160155429055565b9150601661371b910191825461324a565b6003820291820460031417156137f957600684015490818111156137a9576137f29250613299565b38806137a9565b634e487b7160e01b85526011600452602485fd5b6201518090049081156137985761382492506131cb565b3880613798565b50801515613793565b5050505050565b6001600160a01b03166000908152600c6020908152604080832060055484938493600984019291908590815b8481106139af5750612710908183029280840483149015171561399b57620186a080930495895b8681106138f157505050505050508085116138e5575b506016015490806138b5838661324a565b116138c05750505090565b91925090818111156138de576138d69250613299565b38808061334a565b50506138d6565b935083915060166138a4565b808b5281865260ff838c205416613911575b61390c906132a6565b61388e565b989a8a8561393a8c61392d87600a8f0195868d52205491612ddb565b90549060031b1c906131cb565b04908b8d528752838c2054858102908082048714901517156139875791613971613977928861390c95049283821161397f5761324a565b9d61324a565b999050613903565b83915061324a565b634e487b7160e01b8d52601160045260248dfd5b634e487b7160e01b89526011600452602489fd5b80895285845260ff828a2054166139cf575b6139ca906132a6565b613867565b916139e76139ca91600a89018652838b20549061324a565b9290506139c1565b90600060018060a01b0383168152600c6020526040812090600193848301918254928315613c3757819682946015870154804211600014613c2c57613a37613a3d9142613299565b9561383b565b849580151580613c23575b613c03575b5050835b818110613a8f575050505094601692613a7b92613a84969750818111600014613a8757509061324a565b9101549061324a565b90565b90509061324a565b613a9981856132b5565b50805490620493e0808302908382041483151715613bef57620186a09004858201549080821015613b1c5790613ace91613299565b9b8c15613be25787918d6003820154804211613bbb575b5091612189613b13926004948c9087801515998a613ba8575b505080821015613b9e5750948591015461324a565b9c818111613b2e575b50505050613b29906132a6565b613a51565b9185613b43613b29969c93613b619695613299565b938b15159081613b96575b81613b8e575b50613b6b575b505061324a565b9690388080613b1c565b61091b613b78928c6131cb565b808311613b86575b85613b5a565b915038613b80565b905038613b54565b899150613b4e565b90509485916120bf565b613bb3929350613730565b908738613afe565b600493919450613b139262015180613bd66121899342613299565b04959294509250613ae5565b9b505050613b29906132a6565b634e487b7160e01b88526011600452602488fd5b620151809004908115613a4d57613c1b9296506131cb565b933880613a4d565b50811515613a48565b50613a3d849561383b565b50505050601601549150565b67ffffffffffffffff8111610ecd5760051b60200190565b908154613c6781613c43565b92604093613c7785519182612f86565b828152809460208092019260005281600020906000935b858510613c9d57505050505050565b6002846001928451613cae81612f4e565b865481528487015483820152815201930194019391613c8e565b80518210156105775760209160051b010190565b604051906102a0820182811067ffffffffffffffff821117610ecd57604052816102806000918281528260208201528260408201528260608201528260808201528260a08201528260c08201528260e08201528261010082015282610120820152826101408201528261016082015282610180820152826101a0820152826101c0820152826101e0820152826102008201528261022082015282610240820152826102608201520152565b90613d9182613c43565b613d9e6040519182612f86565b8281528092613daf601f1991613c43565b0190602036910137565b6040519061024080830183811067ffffffffffffffff821117610ecd57604052368337565b9060128110156105775760051b0190565b9060019182810190604090815190613e0682612f6a565b8482526020908183019260009384815285820142815260608301914283526080840198878a52805490600160401b821015613f6d5790613e4a918d820181556132b5565b949094613f5957518455518a8401555160028301555160038083019190915595516004909101556005018054919591613e8490839061324a565b9055600f94613e9482875461324a565b865533808452600c8083528585208701546001600160a01b03989194869290918a168b5b613ecb575b505050505050505050505050565b8a8116948515613f53578589528787528989208089015484928e16908e1603613f4057600e915001613efe84825461324a565b90555b848852868652600a898920018489528652888820613f2084825461324a565b9055938752858552613f398a8a8a8a20015416936132a6565b928b613eb8565b01613f4c84825461324a565b9055613f01565b50613ebd565b634e487b7160e01b88526004889052602488fd5b634e487b7160e01b89526041600452602489fd5b6001600160a01b03166000908152600c6020526040902060218101805492909183613fad575b50505050565b6003820291808304600314901517156105b457613ff6926013928086111561400157613fda908096613299565b905560228101613feb85825461324a565b90550191825461324a565b905538808080613fa7565b50613fda8580613299565b620f423f8111614090576040519061402382612f4e565b60068083526020918236818601376000905b828210614043575050505090565b600a60309181810683018093116105b45760058481039081116105b45787518110156105775761408a9360f81b6001600160f81b03191660001a90880187015304916132a6565b90614035565b60405162461bcd60e51b815260206004820152601760248201527f4e756d62657220657863656564732036206469676974730000000000000000006044820152606490fd5b6001600160a01b03818116801590811561410d575b8115614103575b506140fa575090565b90506002541690565b90503314386140f1565b809150600052600c60205260ff6010604060002001541615906140ea565b6001600160a01b03166000908152600c60209081526040808320600781015493919290825b6006548110156141ca578061416761417a92612e49565b90549060031b1c87101561417f576132a6565b614150565b8015806141b3575b6141a8575b808552600983018452858520805460ff191660011790556132a6565b42601584015561418c565b5080855260098301845260ff868620541615614187565b505050505050565b80158015614204575b6141fe5760001981019081116105b4576141f490612e12565b90549060031b1c90565b50600090565b50600a5481116141db565b906001600160a01b0382168015614338576000818152600c60205260406142388183209561433d565b906012860154601787019081545b60075481101561432d5761425981612cff565b9054600391821b1c83101580614315575b156143095761427882612d6d565b9054911b1c60138a0161428c82825461324a565b905560148a0161429d82825461324a565b905560188a016142ae82825461324a565b905560018201808311613bef578085558551908152602081019190915260408101869052614304919088907f7925e44d6b902b3c2548320c5b581213423264689e7d4cb4c2364b113c50b53590606090a26132a6565b614246565b50505050505050509050565b5061431f82612d36565b905490821b1c86101561426a565b505050505050509050565b509050565b60018060a01b03809116600052600c602052614372604060002091600d61436982600c86015416614383565b93015416614383565b8082101561437e575090565b905090565b6001600160a01b0390811680156136aa57600052600c60205260406000206143b082600c83015416614383565b60010191826001116105b457600d6143ca92015416614383565b613a849161324a56fea2646970667358221220fa8ec9b04091218e0298fe424332350c0a63f435c9e26bcffd9a06e573d05d1d64736f6c63430008140033f652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f