# DoubleWheelActivity_Model_DoubleWheelActivityModel_1988.luac
; fn @DoubleWheelActivityModel.lua  line 0-0 np=0 va=1 ms=4 code=374 consts=145 upvals=1 protos=116
;   K[0]='DoubleWheelActivityModel'
;   K[1]='setmetatable'
;   K[2]='BaseActivityModel'
;   K[3]='__index'
;   K[4]='ConfigKey'
;   K[5]='doubleWheelConfig'
;   K[6]='RewardConfigKey'
;   K[7]='doubleWheelReward'
;   K[8]='ContentConfigKey'
;   K[9]='doubleWheelContent'
;   K[10]='TriggerStartTime'
;   K[11]='s_time'
;   K[12]='HasClaimedInitToken'
;   K[13]='i_tkn'
;   K[14]='TokenCount'
;   K[15]='tkn'
;   K[16]='CurrentWheelIndex'
;   K[17]='w_id'
;   K[18]='RewardIndexTaken'
;   K[19]='rwd_tkn'
;   K[20]='HasPaidThisWheel'
;   K[21]='hptw'
;   K[22]='PaidRewardsToClaimCount'
;   K[23]='p_rwd_c'
;   K[24]='LastPopCount'
;   K[25]='l_cnt'
;   K[26]='InitToken'
;   K[27]='initToken'
;   K[28]='Init'
;   K[29]='Destroy'
;   K[30]='GetActivityDefinition'
;   K[31]='_CalculateState'
;   K[32]='_OnStateChanged'
;   K[33]='_SetActivityOpened'
;   K[34]='IsActivityOpen'
;   K[35]='IsActivityFinished'
;   K[36]='GetResourceLabels'
;   K[37]='_LoadDBTableValues'
;   K[38]='_DropData'
;   K[39]='_GetLogPrefix'
;   K[40]='_LoadOtherServerConfig'
;   K[41]='DoubleWheelActivityModel'
;   K[42]='_CheckConfigValid'
;   K[43]='DoubleWheelActivityModel'
;   K[44]='GetTotalWheelCount'
;   K[45]='GetWheelConfig'
;   K[46]='GetRewardCount'
;   K[47]='GetRewardConfig'
;   K[48]='GetContentConfig'
;   K[49]='GetCurrentWheelConfig'
;   K[50]='GetCurrentTokenNeeded'
;   K[51]='GetCurrentTotalRewardCount'
;   K[52]='GetCurrentRewardConfig'
;   K[53]='GetCurrentIndexWeightInfo'
;   K[54]='GetInitToken'
;   K[55]='GetNextPopCount'
;   K[56]='IsBestReward'
;   K[57]='GetCostEnergyInfo'
;   K[58]='GetTriggerStartTime'
;   K[59]='SetTriggerStartTime'
;   K[60]='HasClaimedInitToken'
;   K[61]='SetHasClaimedInitToken'
;   K[62]='GetTokenCount'
;   K[63]='SetTokenCount'
;   K[64]='GetCurrentWheelIndex'
;   K[65]='SetCurrentWheelIndex'
;   K[66]='_LoadRewardIndexTaken'
;   K[67]='_SaveRewardIndexTaken'
;   K[68]='GetRewardIndexTaken'
;   K[69]='GetLastRewardIndexTaken'
;   K[70]='IsRewardIndexTaken'
;   K[71]='SetRewardIndexTaken'
;   K[72]='ClearRewardIndexTaken'
;   K[73]='SetHasPaidThisWheel'
;   K[74]='GetPaidRewardsToClaimCount'
;   K[75]='SetPaidRewardsToClaimCount'
;   K[76]='GetLastPopCount'
;   K[77]='SetLastPopCount'
;   K[78]='_ChangeTokenCount'
;   K[79]='GetRewardTakenCount'
;   K[80]='GetCurrentRoundIndex'
;   K[81]='GetSpinCount'
;   K[82]='IsCurrentWheelSpinFinished'
;   K[83]='IsLastWheel'
;   K[84]='HasPaidRewardsToClaim'
;   K[85]='HasLastChance'
;   K[86]='IsLastChanceValid'
;   K[87]='CanFinishCurrentWheelSpin'
;   K[88]='UpdateLastPopCount'
;   K[89]='CanPopByDailyOpenTime'
;   K[90]='RecordWindowDailyOpenTime'
;   K[91]='ClearWindowDailyOpenTime'
;   K[92]='_DispatchStateChangedEvent'
;   K[93]='_DispatchRefreshEntryEvent'
;   K[94]='_DispatchPurchaseSuccessEvent'
;   K[95]='_DispatchScoreChangedEvent'
;   K[96]='_DispatchWheelUpgradedEvent'
;   K[97]='_DispatchMainWindowOpenedEvent'
;   K[98]='_DispatchMainWindowAnimationEndEvent'
;   K[99]='_DispatchMainWindowStartSpinEvent'
;   K[100]='_DispatchMainWindowSpinEndEvent'
;   K[101]='_DispatchMainWindowUnlockButtonClickedEvent'
;   K[102]='_DispatchMainWindowClosedEvent'
;   K[103]='_OpenWindow'
;   K[104]='OpenMainWindow'
;   K[105]='OpenPurchaseWindow'
;   K[106]='OpenHelpWindow'
;   K[107]='OpenTwoButtonWindow'
;   K[108]='IsMainWindowPoped'
;   K[109]='IsEndWindowPoped'
;   K[110]='CanPopMainWindowBySpinCount'
;   K[111]='OnCheckPopup'
;   K[112]='OnMainWindowPoped'
;   K[113]='OnMainWindowAnimationEnd'
;   K[114]='OnStartSpin'
;   K[115]='OnSpinEnd'
;   K[116]='OnUnlockBtnClicked'
;   K[117]='OnMainWindowClosed'
;   K[118]='CanAddScore'
;   K[119]='AcquireActivityToken'
;   K[120]='ConsumeActivityToken'
;   K[121]='GetActivityTokenNumber'
;   K[122]='_ClaimRewards'
;   K[123]='_ClaimPaidRewards'
;   K[124]='GetPaidRewardsForPurchase'
;   K[125]='_ClaimRewardsForPurchase'
;   K[126]='CanSpin'
;   K[127]='TrySpin'
;   K[128]='IsCurrentWheelFinished'
;   K[129]='CanUpgradeWheelNecessary'
;   K[130]='CanUpgradeWheel'
;   K[131]='TryUpgradeWheel'
;   K[132]='_OnUpgradeWheel'
;   K[133]='StartPurchase'
;   K[134]='RestoreIapRewards'
;   K[135]='_OnPurchaseSuccess'
;   K[136]='TryClaimRewardsForPurchase'
;   K[137]='_IsEntryVisible'
;   K[138]='ShouldShowRedPoint'
;   K[139]='GetMapEntryShowConfig'
;   K[140]='OnEntryClicked'
;   K[141]='GetButtonTarget'
;   K[142]='TestUpgrade'
;   K[143]='_LogSpinReward'
;   K[144]='_LogPurchase'
;   upvals: _ENV
;   locals: DBKey(23-374), GeneralActivityConfKey(25-374)
0000  GETTABUP  R0 = _ENV[K1('setmetatable')]
0001  NEWTABLE  R1 = {} (0 items)
0002  GETTABUP  R2 = _ENV[K2('BaseActivityModel')]
0003  CALL      R0 = call(R0, 1 args, 2 rets)
0004  SETTABUP  _ENV[K0('DoubleWheelActivityModel')] = R0
0005  GETTABUP  R0 = _ENV[K0('DoubleWheelActivityModel')]
0006  GETTABUP  R1 = _ENV[K0('DoubleWheelActivityModel')]
0007  SETTABLE  R0[K3('__index')] = R1
0008  GETTABUP  R0 = _ENV[K0('DoubleWheelActivityModel')]
0009  SETTABLE  R0[K4('ConfigKey')] = K5('doubleWheelConfig')
0010  GETTABUP  R0 = _ENV[K0('DoubleWheelActivityModel')]
0011  SETTABLE  R0[K6('RewardConfigKey')] = K7('doubleWheelReward')
0012  GETTABUP  R0 = _ENV[K0('DoubleWheelActivityModel')]
0013  SETTABLE  R0[K8('ContentConfigKey')] = K9('doubleWheelContent')
0014  NEWTABLE  R0 = {} (0 items)
0015  SETTABLE  R0[K10('TriggerStartTime')] = K11('s_time')
0016  SETTABLE  R0[K12('HasClaimedInitToken')] = K13('i_tkn')
0017  SETTABLE  R0[K14('TokenCount')] = K15('tkn')
0018  SETTABLE  R0[K16('CurrentWheelIndex')] = K17('w_id')
0019  SETTABLE  R0[K18('RewardIndexTaken')] = K19('rwd_tkn')
0020  SETTABLE  R0[K20('HasPaidThisWheel')] = K21('hptw')
0021  SETTABLE  R0[K22('PaidRewardsToClaimCount')] = K23('p_rwd_c')
0022  SETTABLE  R0[K24('LastPopCount')] = K25('l_cnt')
0023  NEWTABLE  R1 = {} (0 items)
0024  SETTABLE  R1[K26('InitToken')] = K27('initToken')
0025  GETTABUP  R2 = _ENV[K0('DoubleWheelActivityModel')]
0026  CLOSURE   R3 = closure proto0
0027  SETTABLE  R2[K28('Init')] = R3
0028  GETTABUP  R2 = _ENV[K0('DoubleWheelActivityModel')]
0029  CLOSURE   R3 = closure proto1
0030  SETTABLE  R2[K29('Destroy')] = R3
0031  GETTABUP  R2 = _ENV[K0('DoubleWheelActivityModel')]
0032  CLOSURE   R3 = closure proto2
0033  SETTABLE  R2[K30('GetActivityDefinition')] = R3
0034  GETTABUP  R2 = _ENV[K0('DoubleWheelActivityModel')]
0035  CLOSURE   R3 = closure proto3
0036  SETTABLE  R2[K31('_CalculateState')] = R3
0037  GETTABUP  R2 = _ENV[K0('DoubleWheelActivityModel')]
0038  CLOSURE   R3 = closure proto4
0039  SETTABLE  R2[K32('_OnStateChanged')] = R3
0040  GETTABUP  R2 = _ENV[K0('DoubleWheelActivityModel')]
0041  CLOSURE   R3 = closure proto5
0042  SETTABLE  R2[K33('_SetActivityOpened')] = R3
0043  GETTABUP  R2 = _ENV[K0('DoubleWheelActivityModel')]
0044  CLOSURE   R3 = closure proto6
0045  SETTABLE  R2[K34('IsActivityOpen')] = R3
0046  GETTABUP  R2 = _ENV[K0('DoubleWheelActivityModel')]
0047  CLOSURE   R3 = closure proto7
0048  SETTABLE  R2[K35('IsActivityFinished')] = R3
0049  GETTABUP  R2 = _ENV[K0('DoubleWheelActivityModel')]
0050  CLOSURE   R3 = closure proto8
0051  SETTABLE  R2[K36('GetResourceLabels')] = R3
0052  GETTABUP  R2 = _ENV[K0('DoubleWheelActivityModel')]
0053  CLOSURE   R3 = closure proto9
0054  SETTABLE  R2[K37('_LoadDBTableValues')] = R3
0055  GETTABUP  R2 = _ENV[K0('DoubleWheelActivityModel')]
0056  CLOSURE   R3 = closure proto10
0057  SETTABLE  R2[K38('_DropData')] = R3
0058  GETTABUP  R2 = _ENV[K0('DoubleWheelActivityModel')]
0059  CLOSURE   R3 = closure proto11
0060  SETTABLE  R2[K39('_GetLogPrefix')] = R3
0061  GETTABUP  R2 = _ENV[K0('DoubleWheelActivityModel')]
0062  CLOSURE   R3 = closure proto12
0063  SETTABLE  R2[K40('_LoadOtherServerConfig')] = R3
0064  GETTABUP  R2 = _ENV[K41('DoubleWheelActivityModel')]
0065  CLOSURE   R3 = closure proto13
0066  SETTABLE  R2[K42('_CheckConfigValid')] = R3
0067  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0068  CLOSURE   R3 = closure proto14
0069  SETTABLE  R2[K44('GetTotalWheelCount')] = R3
0070  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0071  CLOSURE   R3 = closure proto15
0072  SETTABLE  R2[K45('GetWheelConfig')] = R3
0073  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0074  CLOSURE   R3 = closure proto16
0075  SETTABLE  R2[K46('GetRewardCount')] = R3
0076  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0077  CLOSURE   R3 = closure proto17
0078  SETTABLE  R2[K47('GetRewardConfig')] = R3
0079  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0080  CLOSURE   R3 = closure proto18
0081  SETTABLE  R2[K48('GetContentConfig')] = R3
0082  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0083  CLOSURE   R3 = closure proto19
0084  SETTABLE  R2[K49('GetCurrentWheelConfig')] = R3
0085  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0086  CLOSURE   R3 = closure proto20
0087  SETTABLE  R2[K50('GetCurrentTokenNeeded')] = R3
0088  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0089  CLOSURE   R3 = closure proto21
0090  SETTABLE  R2[K51('GetCurrentTotalRewardCount')] = R3
0091  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0092  CLOSURE   R3 = closure proto22
0093  SETTABLE  R2[K52('GetCurrentRewardConfig')] = R3
0094  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0095  CLOSURE   R3 = closure proto23
0096  SETTABLE  R2[K53('GetCurrentIndexWeightInfo')] = R3
0097  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0098  CLOSURE   R3 = closure proto24
0099  SETTABLE  R2[K54('GetInitToken')] = R3
0100  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0101  CLOSURE   R3 = closure proto25
0102  SETTABLE  R2[K55('GetNextPopCount')] = R3
0103  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0104  CLOSURE   R3 = closure proto26
0105  SETTABLE  R2[K56('IsBestReward')] = R3
0106  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0107  CLOSURE   R3 = closure proto27
0108  SETTABLE  R2[K57('GetCostEnergyInfo')] = R3
0109  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0110  CLOSURE   R3 = closure proto28
0111  SETTABLE  R2[K58('GetTriggerStartTime')] = R3
0112  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0113  CLOSURE   R3 = closure proto29
0114  SETTABLE  R2[K59('SetTriggerStartTime')] = R3
0115  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0116  CLOSURE   R3 = closure proto30
0117  SETTABLE  R2[K60('HasClaimedInitToken')] = R3
0118  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0119  CLOSURE   R3 = closure proto31
0120  SETTABLE  R2[K61('SetHasClaimedInitToken')] = R3
0121  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0122  CLOSURE   R3 = closure proto32
0123  SETTABLE  R2[K62('GetTokenCount')] = R3
0124  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0125  CLOSURE   R3 = closure proto33
0126  SETTABLE  R2[K63('SetTokenCount')] = R3
0127  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0128  CLOSURE   R3 = closure proto34
0129  SETTABLE  R2[K64('GetCurrentWheelIndex')] = R3
0130  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0131  CLOSURE   R3 = closure proto35
0132  SETTABLE  R2[K65('SetCurrentWheelIndex')] = R3
0133  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0134  CLOSURE   R3 = closure proto36
0135  SETTABLE  R2[K66('_LoadRewardIndexTaken')] = R3
0136  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0137  CLOSURE   R3 = closure proto37
0138  SETTABLE  R2[K67('_SaveRewardIndexTaken')] = R3
0139  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0140  CLOSURE   R3 = closure proto38
0141  SETTABLE  R2[K68('GetRewardIndexTaken')] = R3
0142  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0143  CLOSURE   R3 = closure proto39
0144  SETTABLE  R2[K69('GetLastRewardIndexTaken')] = R3
0145  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0146  CLOSURE   R3 = closure proto40
0147  SETTABLE  R2[K70('IsRewardIndexTaken')] = R3
0148  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0149  CLOSURE   R3 = closure proto41
0150  SETTABLE  R2[K71('SetRewardIndexTaken')] = R3
0151  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0152  CLOSURE   R3 = closure proto42
0153  SETTABLE  R2[K72('ClearRewardIndexTaken')] = R3
0154  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0155  CLOSURE   R3 = closure proto43
0156  SETTABLE  R2[K20('HasPaidThisWheel')] = R3
0157  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0158  CLOSURE   R3 = closure proto44
0159  SETTABLE  R2[K73('SetHasPaidThisWheel')] = R3
0160  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0161  CLOSURE   R3 = closure proto45
0162  SETTABLE  R2[K74('GetPaidRewardsToClaimCount')] = R3
0163  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0164  CLOSURE   R3 = closure proto46
0165  SETTABLE  R2[K75('SetPaidRewardsToClaimCount')] = R3
0166  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0167  CLOSURE   R3 = closure proto47
0168  SETTABLE  R2[K76('GetLastPopCount')] = R3
0169  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0170  CLOSURE   R3 = closure proto48
0171  SETTABLE  R2[K77('SetLastPopCount')] = R3
0172  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0173  CLOSURE   R3 = closure proto49
0174  SETTABLE  R2[K78('_ChangeTokenCount')] = R3
0175  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0176  CLOSURE   R3 = closure proto50
0177  SETTABLE  R2[K79('GetRewardTakenCount')] = R3
0178  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0179  CLOSURE   R3 = closure proto51
0180  SETTABLE  R2[K80('GetCurrentRoundIndex')] = R3
0181  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0182  CLOSURE   R3 = closure proto52
0183  SETTABLE  R2[K81('GetSpinCount')] = R3
0184  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0185  CLOSURE   R3 = closure proto53
0186  SETTABLE  R2[K82('IsCurrentWheelSpinFinished')] = R3
0187  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0188  CLOSURE   R3 = closure proto54
0189  SETTABLE  R2[K83('IsLastWheel')] = R3
0190  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0191  CLOSURE   R3 = closure proto55
0192  SETTABLE  R2[K84('HasPaidRewardsToClaim')] = R3
0193  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0194  CLOSURE   R3 = closure proto56
0195  SETTABLE  R2[K85('HasLastChance')] = R3
0196  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0197  CLOSURE   R3 = closure proto57
0198  SETTABLE  R2[K86('IsLastChanceValid')] = R3
0199  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0200  CLOSURE   R3 = closure proto58
0201  SETTABLE  R2[K87('CanFinishCurrentWheelSpin')] = R3
0202  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0203  CLOSURE   R3 = closure proto59
0204  SETTABLE  R2[K88('UpdateLastPopCount')] = R3
0205  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0206  CLOSURE   R3 = closure proto60
0207  SETTABLE  R2[K89('CanPopByDailyOpenTime')] = R3
0208  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0209  CLOSURE   R3 = closure proto61
0210  SETTABLE  R2[K90('RecordWindowDailyOpenTime')] = R3
0211  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0212  CLOSURE   R3 = closure proto62
0213  SETTABLE  R2[K91('ClearWindowDailyOpenTime')] = R3
0214  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0215  CLOSURE   R3 = closure proto63
0216  SETTABLE  R2[K92('_DispatchStateChangedEvent')] = R3
0217  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0218  CLOSURE   R3 = closure proto64
0219  SETTABLE  R2[K93('_DispatchRefreshEntryEvent')] = R3
0220  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0221  CLOSURE   R3 = closure proto65
0222  SETTABLE  R2[K94('_DispatchPurchaseSuccessEvent')] = R3
0223  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0224  CLOSURE   R3 = closure proto66
0225  SETTABLE  R2[K95('_DispatchScoreChangedEvent')] = R3
0226  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0227  CLOSURE   R3 = closure proto67
0228  SETTABLE  R2[K96('_DispatchWheelUpgradedEvent')] = R3
0229  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0230  CLOSURE   R3 = closure proto68
0231  SETTABLE  R2[K97('_DispatchMainWindowOpenedEvent')] = R3
0232  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0233  CLOSURE   R3 = closure proto69
0234  SETTABLE  R2[K98('_DispatchMainWindowAnimationEndEvent')] = R3
0235  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0236  CLOSURE   R3 = closure proto70
0237  SETTABLE  R2[K99('_DispatchMainWindowStartSpinEvent')] = R3
0238  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0239  CLOSURE   R3 = closure proto71
0240  SETTABLE  R2[K100('_DispatchMainWindowSpinEndEvent')] = R3
0241  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0242  CLOSURE   R3 = closure proto72
0243  SETTABLE  R2[K101('_DispatchMainWindowUnlockButtonClickedEvent')] = R3
0244  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0245  CLOSURE   R3 = closure proto73
0246  SETTABLE  R2[K102('_DispatchMainWindowClosedEvent')] = R3
0247  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0248  CLOSURE   R3 = closure proto74
0249  SETTABLE  R2[K103('_OpenWindow')] = R3
0250  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0251  CLOSURE   R3 = closure proto75
0252  SETTABLE  R2[K104('OpenMainWindow')] = R3
0253  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0254  CLOSURE   R3 = closure proto76
0255  SETTABLE  R2[K105('OpenPurchaseWindow')] = R3
0256  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0257  CLOSURE   R3 = closure proto77
0258  SETTABLE  R2[K106('OpenHelpWindow')] = R3
0259  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0260  CLOSURE   R3 = closure proto78
0261  SETTABLE  R2[K107('OpenTwoButtonWindow')] = R3
0262  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0263  CLOSURE   R3 = closure proto79
0264  SETTABLE  R2[K108('IsMainWindowPoped')] = R3
0265  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0266  CLOSURE   R3 = closure proto80
0267  SETTABLE  R2[K109('IsEndWindowPoped')] = R3
0268  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0269  CLOSURE   R3 = closure proto81
0270  SETTABLE  R2[K110('CanPopMainWindowBySpinCount')] = R3
0271  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0272  CLOSURE   R3 = closure proto82
0273  SETTABLE  R2[K111('OnCheckPopup')] = R3
0274  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0275  CLOSURE   R3 = closure proto83
0276  SETTABLE  R2[K112('OnMainWindowPoped')] = R3
0277  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0278  CLOSURE   R3 = closure proto84
0279  SETTABLE  R2[K113('OnMainWindowAnimationEnd')] = R3
0280  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0281  CLOSURE   R3 = closure proto85
0282  SETTABLE  R2[K114('OnStartSpin')] = R3
0283  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0284  CLOSURE   R3 = closure proto86
0285  SETTABLE  R2[K115('OnSpinEnd')] = R3
0286  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0287  CLOSURE   R3 = closure proto87
0288  SETTABLE  R2[K116('OnUnlockBtnClicked')] = R3
0289  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0290  CLOSURE   R3 = closure proto88
0291  SETTABLE  R2[K117('OnMainWindowClosed')] = R3
0292  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0293  CLOSURE   R3 = closure proto89
0294  SETTABLE  R2[K118('CanAddScore')] = R3
0295  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0296  CLOSURE   R3 = closure proto90
0297  SETTABLE  R2[K119('AcquireActivityToken')] = R3
0298  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0299  CLOSURE   R3 = closure proto91
0300  SETTABLE  R2[K120('ConsumeActivityToken')] = R3
0301  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0302  CLOSURE   R3 = closure proto92
0303  SETTABLE  R2[K121('GetActivityTokenNumber')] = R3
0304  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0305  CLOSURE   R3 = closure proto93
0306  SETTABLE  R2[K122('_ClaimRewards')] = R3
0307  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0308  CLOSURE   R3 = closure proto94
0309  SETTABLE  R2[K123('_ClaimPaidRewards')] = R3
0310  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0311  CLOSURE   R3 = closure proto95
0312  SETTABLE  R2[K124('GetPaidRewardsForPurchase')] = R3
0313  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0314  CLOSURE   R3 = closure proto96
0315  SETTABLE  R2[K125('_ClaimRewardsForPurchase')] = R3
0316  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0317  CLOSURE   R3 = closure proto97
0318  SETTABLE  R2[K126('CanSpin')] = R3
0319  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0320  CLOSURE   R3 = closure proto98
0321  SETTABLE  R2[K127('TrySpin')] = R3
0322  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0323  CLOSURE   R3 = closure proto99
0324  SETTABLE  R2[K128('IsCurrentWheelFinished')] = R3
0325  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0326  CLOSURE   R3 = closure proto100
0327  SETTABLE  R2[K129('CanUpgradeWheelNecessary')] = R3
0328  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0329  CLOSURE   R3 = closure proto101
0330  SETTABLE  R2[K130('CanUpgradeWheel')] = R3
0331  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0332  CLOSURE   R3 = closure proto102
0333  SETTABLE  R2[K131('TryUpgradeWheel')] = R3
0334  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0335  CLOSURE   R3 = closure proto103
0336  SETTABLE  R2[K132('_OnUpgradeWheel')] = R3
0337  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0338  CLOSURE   R3 = closure proto104
0339  SETTABLE  R2[K133('StartPurchase')] = R3
0340  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0341  CLOSURE   R3 = closure proto105
0342  SETTABLE  R2[K134('RestoreIapRewards')] = R3
0343  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0344  CLOSURE   R3 = closure proto106
0345  SETTABLE  R2[K135('_OnPurchaseSuccess')] = R3
0346  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0347  CLOSURE   R3 = closure proto107
0348  SETTABLE  R2[K136('TryClaimRewardsForPurchase')] = R3
0349  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0350  CLOSURE   R3 = closure proto108
0351  SETTABLE  R2[K137('_IsEntryVisible')] = R3
0352  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0353  CLOSURE   R3 = closure proto109
0354  SETTABLE  R2[K138('ShouldShowRedPoint')] = R3
0355  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0356  CLOSURE   R3 = closure proto110
0357  SETTABLE  R2[K139('GetMapEntryShowConfig')] = R3
0358  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0359  CLOSURE   R3 = closure proto111
0360  SETTABLE  R2[K140('OnEntryClicked')] = R3
0361  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0362  CLOSURE   R3 = closure proto112
0363  SETTABLE  R2[K141('GetButtonTarget')] = R3
0364  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0365  CLOSURE   R3 = closure proto113
0366  SETTABLE  R2[K142('TestUpgrade')] = R3
0367  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0368  CLOSURE   R3 = closure proto114
0369  SETTABLE  R2[K143('_LogSpinReward')] = R3
0370  GETTABUP  R2 = _ENV[K43('DoubleWheelActivityModel')]
0371  CLOSURE   R3 = closure proto115
0372  SETTABLE  R2[K144('_LogPurchase')] = R3
0373  RETURN    return R0..R-1
; ---------- proto0 [Init] ----------
  ; fn ?  line 35-39 np=3 va=0 ms=7 code=18 consts=9 upvals=1 protos=0
  ;   K[0]='m_activityDefinition'
  ;   K[1]='DoubleWheelActivityDefinition'
  ;   K[2]='m_tokenHelper'
  ;   K[3]='ActivityTokenHelper'
  ;   K[4]='Create'
  ;   K[5]='EFlyElementLabelStyle'
  ;   K[6]='Default'
  ;   K[7]='BaseActivityModel'
  ;   K[8]='Init'
  ;   upvals: _ENV
  ;   locals: self(0-18), activityType(0-18), virtualDBTable(0-18)
  0000  GETTABUP  R3 = _ENV[K1('DoubleWheelActivityDefinition')]
  0001  GETTABLE  R3 = R3[R1]
  0002  SETTABLE  R0[K0('m_activityDefinition')] = R3
  0003  GETTABUP  R3 = _ENV[K3('ActivityTokenHelper')]
  0004  GETTABLE  R3 = R3[K4('Create')]
  0005  MOVE      R4 = R0
  0006  MOVE      R5 = R0
  0007  GETTABUP  R6 = _ENV[K5('EFlyElementLabelStyle')]
  0008  GETTABLE  R6 = R6[K6('Default')]
  0009  CALL      R3 = call(R3, 1 args, 3 rets)
  0010  SETTABLE  R0[K2('m_tokenHelper')] = R3
  0011  GETTABUP  R3 = _ENV[K7('BaseActivityModel')]
  0012  GETTABLE  R3 = R3[K8('Init')]
  0013  MOVE      R4 = R0
  0014  MOVE      R5 = R0
  0015  MOVE      R6 = R0
  0016  CALL      R3 = call(R3, 0 args, 3 rets)
  0017  RETURN    return R0..R-1
; ---------- proto1 [Destroy] ----------
  ; fn ?  line 41-44 np=1 va=0 ms=3 code=8 consts=3 upvals=1 protos=0
  ;   K[0]='BaseActivityModel'
  ;   K[1]='Destroy'
  ;   K[2]='m_tokenHelper'
  ;   upvals: _ENV
  ;   locals: self(0-8)
  0000  GETTABUP  R1 = _ENV[K0('BaseActivityModel')]
  0001  GETTABLE  R1 = R1[K1('Destroy')]
  0002  MOVE      R2 = R0
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  GETTABLE  R1 = R0[K2('m_tokenHelper')]
  0005  SELF      R2 = R1[K1('Destroy')] (self)
  0006  CALL      R1 = call(R1, 0 args, 1 rets)
  0007  RETURN    return R0..R-1
; ---------- proto2 [GetActivityDefinition] ----------
  ; fn ?  line 47-49 np=1 va=0 ms=2 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='m_activityDefinition'
  ;   locals: self(0-3)
  0000  GETTABLE  R1 = R0[K0('m_activityDefinition')]
  0001  RETURN    return R1..R0
  0002  RETURN    return R0..R-1
; ---------- proto3 [_CalculateState] ----------
  ; fn ?  line 53-59 np=2 va=0 ms=6 code=22 consts=8 upvals=1 protos=0
  ;   K[0]='BaseActivityModel'
  ;   K[1]='_CalculateState'
  ;   K[2]='ActivityState'
  ;   K[3]='Started'
  ;   K[4]='IsActivityFinished'
  ;   K[5]='Ended'
  ;   K[6]='m_config'
  ;   K[7]='rTime'
  ;   upvals: _ENV
  ;   locals: self(0-22), bIgnoreCondition(0-22), state(5-22), nextStateTime(5-22)
  0000  GETTABUP  R2 = _ENV[K0('BaseActivityModel')]
  0001  GETTABLE  R2 = R2[K1('_CalculateState')]
  0002  MOVE      R3 = R0
  0003  MOVE      R4 = R0
  0004  CALL      R2 = call(R2, 2 args, 2 rets)
  0005  GETTABUP  R4 = _ENV[K2('ActivityState')]
  0006  GETTABLE  R4 = R4[K3('Started')]
  0007  EQ        if R0 eq R4   -> -130035
  0008  JMP       (jump)   -> 18
  0009  SELF      R5 = R0[K4('IsActivityFinished')] (self)
  0010  CALL      R4 = call(R4, 1 args, 1 rets)
  0011  TEST      if not R4 then   -> -131059
  0012  JMP       (jump)   -> 18
  0013  GETTABUP  R4 = _ENV[K2('ActivityState')]
  0014  GETTABLE  R4 = R4[K5('Ended')]
  0015  GETTABLE  R5 = R0[K6('m_config')]
  0016  GETTABLE  R5 = R5[K7('rTime')]
  0017  RETURN    return R4..R3
  0018  MOVE      R4 = R0
  0019  MOVE      R5 = R0
  0020  RETURN    return R4..R3
  0021  RETURN    return R0..R-1
; ---------- proto4 [_OnStateChanged] ----------
  ; fn ?  line 62-82 np=1 va=0 ms=8 code=50 consts=24 upvals=1 protos=0
  ;   K[0]='BaseActivityModel'
  ;   K[1]='_OnStateChanged'
  ;   K[2]='GetState'
  ;   K[3]='ActivityState'
  ;   K[4]='Started'
  ;   K[5]='HasClaimedInitToken'
  ;   K[6]='GetInitToken'
  ;   K[7]=0
  ;   K[8]='PROPERTY_TYPE'
  ;   K[9]='m_activityDefinition'
  ;   K[10]='ActivityTokenPropertyType'
  ;   K[11]='PROPERTY_COUNT'
  ;   K[12]='RewardApi'
  ;   K[13]='CryptRewards'
  ;   K[14]='AcquireRewardsLogic'
  ;   K[15]='EPropertySource'
  ;   K[16]='Give'
  ;   K[17]='EBIType'
  ;   K[18]='DoubleWheelInitToken'
  ;   K[19]='ERewardScene'
  ;   K[20]='Other'
  ;   K[21]='SetHasClaimedInitToken'
  ;   K[22]='_DispatchStateChangedEvent'
  ;   K[23]='_DispatchRefreshEntryEvent'
  ;   upvals: _ENV
  ;   locals: self(0-50), state(6-50), rewards(29-45)
  0000  GETTABUP  R1 = _ENV[K0('BaseActivityModel')]
  0001  GETTABLE  R1 = R1[K1('_OnStateChanged')]
  0002  MOVE      R2 = R0
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  SELF      R2 = R0[K2('GetState')] (self)
  0005  CALL      R1 = call(R1, 1 args, 1 rets)
  0006  GETTABUP  R2 = _ENV[K3('ActivityState')]
  0007  GETTABLE  R2 = R2[K4('Started')]
  0008  EQ        if R0 eq R2   -> -130548
  0009  JMP       (jump)   -> 45
  0010  SELF      R3 = R0[K5('HasClaimedInitToken')] (self)
  0011  CALL      R2 = call(R2, 1 args, 1 rets)
  0012  TEST      if not R2 then   -> -131057
  0013  JMP       (jump)   -> 45
  0014  SELF      R3 = R0[K6('GetInitToken')] (self)
  0015  CALL      R2 = call(R2, 1 args, 1 rets)
  0016  LT        if R0 lt R2   -> 3604
  0017  JMP       (jump)   -> 45
  0018  NEWTABLE  R2 = {} (1 items)
  0019  NEWTABLE  R3 = {} (0 items)
  0020  GETTABUP  R4 = _ENV[K8('PROPERTY_TYPE')]
  0021  GETTABLE  R5 = R0[K9('m_activityDefinition')]
  0022  GETTABLE  R5 = R5[K10('ActivityTokenPropertyType')]
  0023  SETTABLE  R3[R4] = R5
  0024  GETTABUP  R4 = _ENV[K11('PROPERTY_COUNT')]
  0025  SELF      R6 = R0[K6('GetInitToken')] (self)
  0026  CALL      R5 = call(R5, 1 args, 1 rets)
  0027  SETTABLE  R3[R4] = R5
  0028  SETLIST   setlist R2[B=1,C=1]
  0029  GETTABUP  R3 = _ENV[K12('RewardApi')]
  0030  GETTABLE  R3 = R3[K13('CryptRewards')]
  0031  MOVE      R4 = R0
  0032  CALL      R3 = call(R3, 0 args, 1 rets)
  0033  GETTABUP  R3 = _ENV[K12('RewardApi')]
  0034  GETTABLE  R3 = R3[K14('AcquireRewardsLogic')]
  0035  MOVE      R4 = R0
  0036  GETTABUP  R5 = _ENV[K15('EPropertySource')]
  0037  GETTABLE  R5 = R5[K16('Give')]
  0038  GETTABUP  R6 = _ENV[K17('EBIType')]
  0039  GETTABLE  R6 = R6[K18('DoubleWheelInitToken')]
  0040  GETTABUP  R7 = _ENV[K19('ERewardScene')]
  0041  GETTABLE  R7 = R7[K20('Other')]
  0042  CALL      R3 = call(R3, 0 args, 4 rets)
  0043  SELF      R4 = R0[K21('SetHasClaimedInitToken')] (self)
  0044  CALL      R3 = call(R3, 0 args, 1 rets)
  0045  SELF      R3 = R0[K22('_DispatchStateChangedEvent')] (self)
  0046  CALL      R2 = call(R2, 0 args, 1 rets)
  0047  SELF      R3 = R0[K23('_DispatchRefreshEntryEvent')] (self)
  0048  CALL      R2 = call(R2, 0 args, 1 rets)
  0049  RETURN    return R0..R-1
; ---------- proto5 [_SetActivityOpened] ----------
  ; fn ?  line 85-90 np=1 va=0 ms=5 code=15 consts=7 upvals=1 protos=0
  ;   K[0]='HasActivityOpened'
  ;   K[1]='SetTriggerStartTime'
  ;   K[2]='GM'
  ;   K[3]='GameModel'
  ;   K[4]='GetServerTime'
  ;   K[5]='BaseActivityModel'
  ;   K[6]='_SetActivityOpened'
  ;   upvals: _ENV
  ;   locals: self(0-15)
  0000  SELF      R2 = R0[K0('HasActivityOpened')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  TEST      if not R1 then   -> -131067
  0003  JMP       (jump)   -> 10
  0004  SELF      R2 = R0[K1('SetTriggerStartTime')] (self)
  0005  GETTABUP  R3 = _ENV[K2('GM')]
  0006  GETTABLE  R3 = R3[K3('GameModel')]
  0007  SELF      R4 = R3[K4('GetServerTime')] (self)
  0008  CALL      R3 = call(R3, -1 args, 1 rets)
  0009  CALL      R1 = call(R1, 0 args, -1 rets)
  0010  GETTABUP  R1 = _ENV[K5('BaseActivityModel')]
  0011  GETTABLE  R1 = R1[K6('_SetActivityOpened')]
  0012  MOVE      R2 = R0
  0013  CALL      R1 = call(R1, 0 args, 1 rets)
  0014  RETURN    return R0..R-1
; ---------- proto6 [IsActivityOpen] ----------
  ; fn ?  line 93-95 np=1 va=0 ms=3 code=10 consts=3 upvals=1 protos=0
  ;   K[0]='GetState'
  ;   K[1]='ActivityState'
  ;   K[2]='Started'
  ;   upvals: _ENV
  ;   locals: self(0-10)
  0000  SELF      R2 = R0[K0('GetState')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  GETTABUP  R2 = _ENV[K1('ActivityState')]
  0003  GETTABLE  R2 = R2[K2('Started')]
  0004  EQ        if R1 eq R2   -> -130552
  0005  JMP       (jump)   -> 7
  0006  LOADBOOL  R1 = false
  0007  LOADBOOL  R1 = true
  0008  RETURN    return R1..R0
  0009  RETURN    return R0..R-1
; ---------- proto7 [IsActivityFinished] ----------
  ; fn ?  line 98-100 np=1 va=0 ms=3 code=8 consts=2 upvals=0 protos=0
  ;   K[0]='IsLastWheel'
  ;   K[1]='IsCurrentWheelFinished'
  ;   locals: self(0-8)
  0000  SELF      R2 = R0[K0('IsLastWheel')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  TEST      if not R1 then   -> -131068
  0003  JMP       (jump)   -> 6
  0004  SELF      R2 = R0[K1('IsCurrentWheelFinished')] (self)
  0005  CALL      R1 = call(R1, 1 args, 1 rets)
  0006  RETURN    return R1..R0
  0007  RETURN    return R0..R-1
; ---------- proto8 [GetResourceLabels] ----------
  ; fn ?  line 104-106 np=1 va=0 ms=2 code=4 consts=2 upvals=0 protos=0
  ;   K[0]='m_activityDefinition'
  ;   K[1]='ResourceLabels'
  ;   locals: self(0-4)
  0000  GETTABLE  R1 = R0[K0('m_activityDefinition')]
  0001  GETTABLE  R1 = R1[K1('ResourceLabels')]
  0002  RETURN    return R1..R0
  0003  RETURN    return R0..R-1
; ---------- proto9 [_LoadDBTableValues] ----------
  ; fn ?  line 110-112 np=1 va=0 ms=3 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='_LoadRewardIndexTaken'
  ;   locals: self(0-3)
  0000  SELF      R2 = R0[K0('_LoadRewardIndexTaken')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  RETURN    return R0..R-1
; ---------- proto10 [_DropData] ----------
  ; fn ?  line 115-118 np=1 va=0 ms=3 code=7 consts=3 upvals=1 protos=0
  ;   K[0]='BaseActivityModel'
  ;   K[1]='_DropData'
  ;   K[2]='m_arrRewardIndexTaken'
  ;   upvals: _ENV
  ;   locals: self(0-7)
  0000  GETTABUP  R1 = _ENV[K0('BaseActivityModel')]
  0001  GETTABLE  R1 = R1[K1('_DropData')]
  0002  MOVE      R2 = R0
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  NEWTABLE  R1 = {} (0 items)
  0005  SETTABLE  R0[K2('m_arrRewardIndexTaken')] = R1
  0006  RETURN    return R0..R-1
; ---------- proto11 [_GetLogPrefix] ----------
  ; fn ?  line 124-126 np=2 va=0 ms=6 code=13 consts=5 upvals=1 protos=0
  ;   K[0]='string'
  ;   K[1]='format'
  ;   K[2]='[双转盘礼包] 活动id=<color=#FFA000>%d</color>，'
  ;   K[3]='id'
  ;   K[4]='GetId'
  ;   upvals: _ENV
  ;   locals: self(0-13), config(0-13)
  0000  GETTABUP  R2 = _ENV[K0('string')]
  0001  GETTABLE  R2 = R2[K1('format')]
  0002  LOADK     R3 = K2 '[双转盘礼包] 活动id=<color=#FFA000>%d</color>，'
  0003  TEST      if not R1 then   -> -131067
  0004  JMP       (jump)   -> 8
  0005  GETTABLE  R4 = R1[K3('id')]
  0006  TEST      if not R4 then   -> -131063
  0007  JMP       (jump)   -> 10
  0008  SELF      R5 = R0[K4('GetId')] (self)
  0009  CALL      R4 = call(R4, 1 args, 1 rets)
  0010  TAILCALL  tailcall(R2, 0)
  0011  RETURN    return R2..R1
  0012  RETURN    return R0..R-1
; ---------- proto12 [_LoadOtherServerConfig] ----------
  ; fn ?  line 128-152 np=2 va=0 ms=13 code=61 consts=24 upvals=1 protos=1
  ;   K[0]='m_tokenHelper'
  ;   K[1]='LoadConfig'
  ;   K[2]='DoubleWheelActivityModel'
  ;   K[3]='ConfigKey'
  ;   K[4]='Table'
  ;   K[5]='IsEmpty'
  ;   K[6]=0
  ;   K[7]='Log'
  ;   K[8]='Error'
  ;   K[9]='string'
  ;   K[10]='format'
  ;   K[11]='%s没有找到配置：<color=#FFA000>%s</color>，配置需要使用dynamic_include关联表%s！'
  ;   K[12]='_GetLogPrefix'
  ;   K[13]='LogTag'
  ;   K[14]='ConfigCheck'
  ;   K[15]='ipairs'
  ;   K[16]='DoubleWheelActivityConfig'
  ;   K[17]='Create'
  ;   K[18]='table'
  ;   K[19]='insert'
  ;   K[20]='sort'
  ;   K[21]='m_config'
  ;   K[22]='arrWheelConfig'
  ;   K[23]='_CheckConfigValid'
  ;   upvals: _ENV
  ;   locals: self(0-61), config(0-61), arrWheelConfig(5-61), arrRawConfig(8-61), (for generator)(37-49), (for state)(37-49), (for control)(37-49), _(38-47), rawConfig(38-47), wheelConfig(42-47), sortByWheelIndex(50-61)
  0000  GETTABLE  R2 = R0[K0('m_tokenHelper')]
  0001  SELF      R3 = R2[K1('LoadConfig')] (self)
  0002  MOVE      R4 = R0
  0003  CALL      R2 = call(R2, 0 args, 2 rets)
  0004  NEWTABLE  R2 = {} (0 items)
  0005  GETTABUP  R3 = _ENV[K2('DoubleWheelActivityModel')]
  0006  GETTABLE  R3 = R3[K3('ConfigKey')]
  0007  GETTABLE  R3 = R1[R3]
  0008  GETTABUP  R4 = _ENV[K4('Table')]
  0009  GETTABLE  R4 = R4[K5('IsEmpty')]
  0010  MOVE      R5 = R0
  0011  CALL      R4 = call(R4, 1 args, 1 rets)
  0012  TEST      if not R4 then   -> -131057
  0013  JMP       (jump)   -> 17
  0014  LEN       R4 = len R0
  0015  LE        if R0 le K6(0)   -> -128745
  0016  JMP       (jump)   -> 34
  0017  GETTABUP  R4 = _ENV[K7('Log')]
  0018  GETTABLE  R4 = R4[K8('Error')]
  0019  GETTABUP  R5 = _ENV[K9('string')]
  0020  GETTABLE  R5 = R5[K10('format')]
  0021  LOADK     R6 = K11 '%s没有找到配置：<color=#FFA000>%s</color>，配置需要使用dynamic_include关联表%s！'
  0022  SELF      R8 = R0[K12('_GetLogPrefix')] (self)
  0023  MOVE      R9 = R0
  0024  CALL      R7 = call(R7, 1 args, 2 rets)
  0025  GETTABUP  R8 = _ENV[K2('DoubleWheelActivityModel')]
  0026  GETTABLE  R8 = R8[K3('ConfigKey')]
  0027  GETTABUP  R9 = _ENV[K2('DoubleWheelActivityModel')]
  0028  GETTABLE  R9 = R9[K3('ConfigKey')]
  0029  CALL      R5 = call(R5, 1 args, 4 rets)
  0030  GETTABUP  R6 = _ENV[K13('LogTag')]
  0031  GETTABLE  R6 = R6[K14('ConfigCheck')]
  0032  CALL      R4 = call(R4, 0 args, 2 rets)
  0033  RETURN    return R0..R-1
  0034  GETTABUP  R4 = _ENV[K15('ipairs')]
  0035  MOVE      R5 = R0
  0036  CALL      R4 = call(R4, 3 args, 1 rets)
  0037  JMP       (jump)   -> 47
  0038  GETTABUP  R9 = _ENV[K16('DoubleWheelActivityConfig')]
  0039  GETTABLE  R9 = R9[K17('Create')]
  0040  MOVE      R10 = R0
  0041  CALL      R9 = call(R9, 1 args, 1 rets)
  0042  GETTABUP  R10 = _ENV[K18('table')]
  0043  GETTABLE  R10 = R10[K19('insert')]
  0044  MOVE      R11 = R0
  0045  MOVE      R12 = R0
  0046  CALL      R10 = call(R10, 0 args, 2 rets)
  0047  TFORCALL  tforcall R4
  0048  TFORLOOP  tforloop R6(sBx=-11)   -> 38
  0049  CLOSURE   R4 = closure proto0
  0050  GETTABUP  R5 = _ENV[K18('table')]
  0051  GETTABLE  R5 = R5[K20('sort')]
  0052  MOVE      R6 = R0
  0053  MOVE      R7 = R0
  0054  CALL      R5 = call(R5, 0 args, 2 rets)
  0055  GETTABLE  R5 = R0[K21('m_config')]
  0056  SETTABLE  R5[K22('arrWheelConfig')] = R2
  0057  SELF      R6 = R0[K23('_CheckConfigValid')] (self)
  0058  MOVE      R7 = R0
  0059  CALL      R5 = call(R5, 0 args, 2 rets)
  0060  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 145-147 np=2 va=0 ms=5 code=10 consts=1 upvals=0 protos=0
    ;   K[0]='GetWheelIndex'
    ;   locals: configA(0-10), configB(0-10)
    0000  SELF      R3 = R0[K0('GetWheelIndex')] (self)
    0001  CALL      R2 = call(R2, 1 args, 1 rets)
    0002  SELF      R4 = R1[K0('GetWheelIndex')] (self)
    0003  CALL      R3 = call(R3, 1 args, 1 rets)
    0004  LT        if R1 lt R3   -> -130039
    0005  JMP       (jump)   -> 7
    0006  LOADBOOL  R2 = false
    0007  LOADBOOL  R2 = true
    0008  RETURN    return R2..R1
    0009  RETURN    return R0..R-1
; ---------- proto13 [_CheckConfigValid] ----------
  ; fn ?  line 154-265 np=2 va=0 ms=43 code=531 consts=63 upvals=1 protos=1
  ;   K[0]='GameConfig'
  ;   K[1]='IsTestMode'
  ;   K[2]=6
  ;   K[3]=8
  ;   K[4]=10
  ;   K[5]='ipairs'
  ;   K[6]='m_config'
  ;   K[7]='arrWheelConfig'
  ;   K[8]='GetWheelIndex'
  ;   K[9]='Log'
  ;   K[10]='Error'
  ;   K[11]='string'
  ;   K[12]='format'
  ;   K[13]='%s配置表%s里，wheelIndex=%d，<color=#FFA000>wheelIndex配置错误</color>，这是第%d条配置，期望wheelIndex=%d，当前wheelIndex=%d'
  ;   K[14]='_GetLogPrefix'
  ;   K[15]='DoubleWheelActivityModel'
  ;   K[16]='ConfigKey'
  ;   K[17]='LogTag'
  ;   K[18]='ConfigCheck'
  ;   K[19]='Table'
  ;   K[20]='IsEmpty'
  ;   K[21]='arrRewardConfig'
  ;   K[22]='GetRewardCount'
  ;   K[23]='%s配置表%s里，wheelIndex=%d，<color=#FFA000>奖励数量配置错误</color>，期望奖励数量=%d，当前奖励数量=%d，转盘只支持按以下顺序配置奖励数量：%s'
  ;   K[24]='table'
  ;   K[25]='concat'
  ;   K[26]=';'
  ;   K[27]='GetInitToken'
  ;   K[28]='GetTokenNeeded'
  ;   K[29]=1
  ;   K[30]=nil
  ;   K[31]='%s配置表%s里，wheelIndex=%d，initToken=%d，<color=#FFA000>initToken配置错误</color>，当前wheelIndex=%d大于1，只能在wheelIndex=1的配置里配置初始积分initToken！'
  ;   K[32]='%s配置表%s里，wheelIndex=%d，initToken=%d，tokenNeed=%d，<color=#FFA000>initToken配置错误</color>，初始积分initToken必须大于等于第一个转盘的tokenNeed所需分数，否则引导会卡死！'
  ;   K[33]='%s配置表%s里，wheelIndex=%d，<color=#FFA000>缺少配置初始积分</color>，初始积分initToken必须大于等于第一个转盘的tokenNeed所需分数，否则引导会卡死！'
  ;   K[34]='%s配置表%s里，wheelIndex=%d，没有找到配置：<color=#FFA000>%s</color>，配置需要使用include关联表%s！'
  ;   K[35]='RewardConfigKey'
  ;   K[36]='GetIndex'
  ;   K[37]='%s配置表%s里，wheelIndex=%d，配置表%s里，index=%d，<color=#FFA000>index配置错误</color>，这是第%d条奖励配置，期望index=%d，当前index=%d'
  ;   K[38]='GetRewards'
  ;   K[39]='%s配置表%s里，wheelIndex=%d，配置表%s里，index=%d，rewards=%s，<color=#FFA000>rewards配置错误</color>，奖励类型只能是1种，当前奖励有%d种！'
  ;   K[40]='ConfigUtil'
  ;   K[41]='Rewards2String'
  ;   K[42]='GetPaidRewards'
  ;   K[43]='%s配置表%s里，wheelIndex=%d，配置表%s里，index=%d，paidRewards=%s，<color=#FFA000>paidRewards配置错误</color>，奖励类型只能是1种，当前奖励有%d种！'
  ;   K[44]='arrContentConfig'
  ;   K[45]='ContentConfigKey'
  ;   K[46]='ShallowCopy'
  ;   K[47]='GetRoundMin'
  ;   K[48]='GetRoundMax'
  ;   K[49]='%s配置表%s里，wheelIndex=%d，配置表%s里，roundMin=%d，roundMax=%d，<color=#FFA000>roundMin配置错误</color>，上一条配置的roundMax=%d，本条配置期望roundMin=%d，当前roundMin=%d'
  ;   K[50]='%s配置表%s里，wheelIndex=%d，配置表%s里，roundMin=%d，roundMax=%d，<color=#FFA000>roundMin配置错误</color>，这是第一条配置，期望roundMin=1，当前roundMin=%d'
  ;   K[51]=0
  ;   K[52]='%s配置表%s里，wheelIndex=%d，配置表%s里，roundMin=%d，roundMax=%d，<color=#FFA000>roundMax配置错误</color>，这是最后一条配置，roundMax需要和奖励数量一致，期望roundMax=%d，当前roundMax=%d'
  ;   K[53]='%s配置表%s里，wheelIndex=%d，配置表%s里，roundMin=%d，roundMax=%d，<color=#FFA000>roundMin/roundMax配置错误</color>，roundMin必须小于等于roundMax'
  ;   K[54]='GetIndexWeightInfo'
  ;   K[55]='insert'
  ;   K[56]='%d-%d'
  ;   K[57]='Index'
  ;   K[58]='Weight'
  ;   K[59]='%s配置表%s里，wheelIndex=%d，配置表%s里，roundMin=%d，roundMax=%d，giftWeight=%s，<color=#FFA000>giftWeight配置错误</color>，奖励序号%d有重复项！'
  ;   K[60]='%s配置表%s里，wheelIndex=%d，配置表%s里，roundMin=%d，roundMax=%d，giftWeight=%s，<color=#FFA000>giftWeight配置错误</color>，奖励序号%d不在1到%d的范围内！'
  ;   K[61]=true
  ;   K[62]='%s配置表%s里，wheelIndex=%d，配置表%s里，roundMin=%d，roundMax=%d，giftWeight=%s，<color=#FFA000>giftWeight配置错误</color>，大于0的权重数量为%d，当前roundMax=%d，权重数量需要大于等于roundMax来保证该轮有奖励可以被抽取！'
  ;   upvals: _ENV
  ;   locals: self(0-531), config(0-531), expectedRewardCount(11-531), (for generator)(15-530), (for state)(15-530), (for control)(15-530), expectedWheelIndex(16-528), wheelConfig(16-528), wheelIndex(18-528), initToken(77-528), tokenNeed(79-528), (for generator)(169-253), (for state)(169-253), (for control)(169-253), expectedRewardIndex(170-251), rewardConfig(170-251), rewardIndex(172-251), rewards(197-251), paidRewards(225-251), lastRoundMax(280-528), arrContentConfig(284-528), sortByRewardIndex(285-528), (for generator)(288-528), (for state)(288-528), (for control)(288-528), index(289-526), contentConfig(289-526), roundMin(293-526), roundMax(293-526), rewardCount(356-526), giftWeight(405-526), logGiftWeight(406-526), (for generator)(409-422), (for state)(409-422), (for control)(409-422), _(410-420), indexWeightInfo(410-420), mapIndex(423-526), count(424-526), (for generator)(427-497), (for state)(427-497), (for control)(427-497), _(428-495), indexWeightInfo(428-495)
  0000  GETTABUP  R2 = _ENV[K0('GameConfig')]
  0001  GETTABLE  R2 = R2[K1('IsTestMode')]
  0002  CALL      R2 = call(R2, 1 args, 0 rets)
  0003  TEST      if not R2 then   -> -131066
  0004  JMP       (jump)   -> 6
  0005  RETURN    return R0..R-1
  0006  NEWTABLE  R2 = {} (3 items)
  0007  LOADK     R3 = K2 6
  0008  LOADK     R4 = K3 8
  0009  LOADK     R5 = K4 10
  0010  SETLIST   setlist R2[B=1,C=3]
  0011  GETTABUP  R3 = _ENV[K5('ipairs')]
  0012  GETTABLE  R4 = R0[K6('m_config')]
  0013  GETTABLE  R4 = R4[K7('arrWheelConfig')]
  0014  CALL      R3 = call(R3, 3 args, 1 rets)
  0015  JMP       (jump)   -> 528
  0016  SELF      R9 = R7[K8('GetWheelIndex')] (self)
  0017  CALL      R8 = call(R8, 1 args, 1 rets)
  0018  EQ        if R1 eq R8   -> -127972
  0019  JMP       (jump)   -> 38
  0020  GETTABUP  R9 = _ENV[K9('Log')]
  0021  GETTABLE  R9 = R9[K10('Error')]
  0022  GETTABUP  R10 = _ENV[K11('string')]
  0023  GETTABLE  R10 = R10[K12('format')]
  0024  LOADK     R11 = K13 '%s配置表%s里，wheelIndex=%d，<color=#FFA000>wheelIndex配置错误</color>，这是第%d条配置，期望wheelIndex=%d，当前wheelIndex=%d'
  0025  SELF      R13 = R0[K14('_GetLogPrefix')] (self)
  0026  MOVE      R14 = R0
  0027  CALL      R12 = call(R12, 1 args, 2 rets)
  0028  GETTABUP  R13 = _ENV[K15('DoubleWheelActivityModel')]
  0029  GETTABLE  R13 = R13[K16('ConfigKey')]
  0030  MOVE      R14 = R0
  0031  MOVE      R15 = R0
  0032  MOVE      R16 = R0
  0033  MOVE      R17 = R0
  0034  CALL      R10 = call(R10, 1 args, 7 rets)
  0035  GETTABUP  R11 = _ENV[K17('LogTag')]
  0036  GETTABLE  R11 = R11[K18('ConfigCheck')]
  0037  CALL      R9 = call(R9, 0 args, 2 rets)
  0038  LEN       R9 = len R0
  0039  LE        if R0 le R9   -> -126926
  0040  JMP       (jump)   -> 75
  0041  GETTABUP  R9 = _ENV[K19('Table')]
  0042  GETTABLE  R9 = R9[K20('IsEmpty')]
  0043  GETTABLE  R10 = R7[K21('arrRewardConfig')]
  0044  CALL      R9 = call(R9, 1 args, 1 rets)
  0045  TEST      if not R9 then   -> -131024
  0046  JMP       (jump)   -> 75
  0047  SELF      R10 = R7[K22('GetRewardCount')] (self)
  0048  CALL      R9 = call(R9, 1 args, 1 rets)
  0049  GETTABLE  R10 = R2[R8]
  0050  EQ        if R1 eq R10   -> -126402
  0051  JMP       (jump)   -> 75
  0052  GETTABUP  R9 = _ENV[K9('Log')]
  0053  GETTABLE  R9 = R9[K10('Error')]
  0054  GETTABUP  R10 = _ENV[K11('string')]
  0055  GETTABLE  R10 = R10[K12('format')]
  0056  LOADK     R11 = K23 '%s配置表%s里，wheelIndex=%d，<color=#FFA000>奖励数量配置错误</color>，期望奖励数量=%d，当前奖励数量=%d，转盘只支持按以下顺序配置奖励数量：%s'
  0057  SELF      R13 = R0[K14('_GetLogPrefix')] (self)
  0058  MOVE      R14 = R0
  0059  CALL      R12 = call(R12, 1 args, 2 rets)
  0060  GETTABUP  R13 = _ENV[K15('DoubleWheelActivityModel')]
  0061  GETTABLE  R13 = R13[K16('ConfigKey')]
  0062  MOVE      R14 = R0
  0063  SELF      R16 = R7[K22('GetRewardCount')] (self)
  0064  CALL      R15 = call(R15, 1 args, 1 rets)
  0065  GETTABLE  R16 = R2[R8]
  0066  GETTABUP  R17 = _ENV[K24('table')]
  0067  GETTABLE  R17 = R17[K25('concat')]
  0068  MOVE      R18 = R0
  0069  LOADK     R19 = K26 ';'
  0070  CALL      R17 = call(R17, -1 args, 2 rets)
  0071  CALL      R10 = call(R10, 1 args, -1 rets)
  0072  GETTABUP  R11 = _ENV[K17('LogTag')]
  0073  GETTABLE  R11 = R11[K18('ConfigCheck')]
  0074  CALL      R9 = call(R9, 0 args, 2 rets)
  0075  SELF      R10 = R7[K27('GetInitToken')] (self)
  0076  CALL      R9 = call(R9, 1 args, 1 rets)
  0077  SELF      R11 = R7[K28('GetTokenNeeded')] (self)
  0078  CALL      R10 = call(R10, 1 args, 1 rets)
  0079  LT        if R0 lt R8   -> 14937
  0080  JMP       (jump)   -> 101
  0081  EQ        if R1 eq K30(nil)   -> -126095
  0082  JMP       (jump)   -> 140
  0083  GETTABUP  R11 = _ENV[K9('Log')]
  0084  GETTABLE  R11 = R11[K10('Error')]
  0085  GETTABUP  R12 = _ENV[K11('string')]
  0086  GETTABLE  R12 = R12[K12('format')]
  0087  LOADK     R13 = K31 '%s配置表%s里，wheelIndex=%d，initToken=%d，<color=#FFA000>initToken配置错误</color>，当前wheelIndex=%d大于1，只能在wheelIndex=1的配置里配置初始积分initToken！'
  0088  SELF      R15 = R0[K14('_GetLogPrefix')] (self)
  0089  MOVE      R16 = R0
  0090  CALL      R14 = call(R14, 1 args, 2 rets)
  0091  GETTABUP  R15 = _ENV[K15('DoubleWheelActivityModel')]
  0092  GETTABLE  R15 = R15[K16('ConfigKey')]
  0093  MOVE      R16 = R0
  0094  MOVE      R17 = R0
  0095  MOVE      R18 = R0
  0096  CALL      R12 = call(R12, 1 args, 6 rets)
  0097  GETTABUP  R13 = _ENV[K17('LogTag')]
  0098  GETTABLE  R13 = R13[K18('ConfigCheck')]
  0099  CALL      R11 = call(R11, 0 args, 2 rets)
  0100  JMP       (jump)   -> 140
  0101  EQ        if R1 eq K30(nil)   -> -126075
  0102  JMP       (jump)   -> 123
  0103  LT        if R0 lt R10   -> -126349
  0104  JMP       (jump)   -> 123
  0105  GETTABUP  R11 = _ENV[K9('Log')]
  0106  GETTABLE  R11 = R11[K10('Error')]
  0107  GETTABUP  R12 = _ENV[K11('string')]
  0108  GETTABLE  R12 = R12[K12('format')]
  0109  LOADK     R13 = K32 '%s配置表%s里，wheelIndex=%d，initToken=%d，tokenNeed=%d，<color=#FFA000>initToken配置错误</color>，初始积分initToken必须大于等于第一个转盘的tokenNeed所需分数，否则引导会卡死！'
  0110  SELF      R15 = R0[K14('_GetLogPrefix')] (self)
  0111  MOVE      R16 = R0
  0112  CALL      R14 = call(R14, 1 args, 2 rets)
  0113  GETTABUP  R15 = _ENV[K15('DoubleWheelActivityModel')]
  0114  GETTABLE  R15 = R15[K16('ConfigKey')]
  0115  MOVE      R16 = R0
  0116  MOVE      R17 = R0
  0117  MOVE      R18 = R0
  0118  CALL      R12 = call(R12, 1 args, 6 rets)
  0119  GETTABUP  R13 = _ENV[K17('LogTag')]
  0120  GETTABLE  R13 = R13[K18('ConfigCheck')]
  0121  CALL      R11 = call(R11, 0 args, 2 rets)
  0122  JMP       (jump)   -> 140
  0123  EQ        if R0 eq K30(nil)   -> -126053
  0124  JMP       (jump)   -> 140
  0125  GETTABUP  R11 = _ENV[K9('Log')]
  0126  GETTABLE  R11 = R11[K10('Error')]
  0127  GETTABUP  R12 = _ENV[K11('string')]
  0128  GETTABLE  R12 = R12[K12('format')]
  0129  LOADK     R13 = K33 '%s配置表%s里，wheelIndex=%d，<color=#FFA000>缺少配置初始积分</color>，初始积分initToken必须大于等于第一个转盘的tokenNeed所需分数，否则引导会卡死！'
  0130  SELF      R15 = R0[K14('_GetLogPrefix')] (self)
  0131  MOVE      R16 = R0
  0132  CALL      R14 = call(R14, 1 args, 2 rets)
  0133  GETTABUP  R15 = _ENV[K15('DoubleWheelActivityModel')]
  0134  GETTABLE  R15 = R15[K16('ConfigKey')]
  0135  MOVE      R16 = R0
  0136  CALL      R12 = call(R12, 1 args, 4 rets)
  0137  GETTABUP  R13 = _ENV[K17('LogTag')]
  0138  GETTABLE  R13 = R13[K18('ConfigCheck')]
  0139  CALL      R11 = call(R11, 0 args, 2 rets)
  0140  GETTABUP  R11 = _ENV[K19('Table')]
  0141  GETTABLE  R11 = R11[K20('IsEmpty')]
  0142  GETTABLE  R12 = R7[K21('arrRewardConfig')]
  0143  CALL      R11 = call(R11, 1 args, 1 rets)
  0144  TEST      if not R11 then   -> -130926
  0145  JMP       (jump)   -> 166
  0146  GETTABUP  R11 = _ENV[K9('Log')]
  0147  GETTABLE  R11 = R11[K10('Error')]
  0148  GETTABUP  R12 = _ENV[K11('string')]
  0149  GETTABLE  R12 = R12[K12('format')]
  0150  LOADK     R13 = K34 '%s配置表%s里，wheelIndex=%d，没有找到配置：<color=#FFA000>%s</color>，配置需要使用include关联表%s！'
  0151  SELF      R15 = R0[K14('_GetLogPrefix')] (self)
  0152  MOVE      R16 = R0
  0153  CALL      R14 = call(R14, 1 args, 2 rets)
  0154  GETTABUP  R15 = _ENV[K15('DoubleWheelActivityModel')]
  0155  GETTABLE  R15 = R15[K16('ConfigKey')]
  0156  MOVE      R16 = R0
  0157  GETTABUP  R17 = _ENV[K15('DoubleWheelActivityModel')]
  0158  GETTABLE  R17 = R17[K35('RewardConfigKey')]
  0159  GETTABUP  R18 = _ENV[K15('DoubleWheelActivityModel')]
  0160  GETTABLE  R18 = R18[K35('RewardConfigKey')]
  0161  CALL      R12 = call(R12, 1 args, 6 rets)
  0162  GETTABUP  R13 = _ENV[K17('LogTag')]
  0163  GETTABLE  R13 = R13[K18('ConfigCheck')]
  0164  CALL      R11 = call(R11, 0 args, 2 rets)
  0165  JMP       (jump)   -> 253
  0166  GETTABUP  R11 = _ENV[K5('ipairs')]
  0167  GETTABLE  R12 = R7[K21('arrRewardConfig')]
  0168  CALL      R11 = call(R11, 3 args, 1 rets)
  0169  JMP       (jump)   -> 251
  0170  SELF      R17 = R15[K36('GetIndex')] (self)
  0171  CALL      R16 = call(R16, 1 args, 1 rets)
  0172  EQ        if R1 eq R16   -> -123714
  0173  JMP       (jump)   -> 195
  0174  GETTABUP  R17 = _ENV[K9('Log')]
  0175  GETTABLE  R17 = R17[K10('Error')]
  0176  GETTABUP  R18 = _ENV[K11('string')]
  0177  GETTABLE  R18 = R18[K12('format')]
  0178  LOADK     R19 = K37 '%s配置表%s里，wheelIndex=%d，配置表%s里，index=%d，<color=#FFA000>index配置错误</color>，这是第%d条奖励配置，期望index=%d，当前index=%d'
  0179  SELF      R21 = R0[K14('_GetLogPrefix')] (self)
  0180  MOVE      R22 = R0
  0181  CALL      R20 = call(R20, 1 args, 2 rets)
  0182  GETTABUP  R21 = _ENV[K15('DoubleWheelActivityModel')]
  0183  GETTABLE  R21 = R21[K16('ConfigKey')]
  0184  MOVE      R22 = R0
  0185  GETTABUP  R23 = _ENV[K15('DoubleWheelActivityModel')]
  0186  GETTABLE  R23 = R23[K35('RewardConfigKey')]
  0187  MOVE      R24 = R0
  0188  MOVE      R25 = R0
  0189  MOVE      R26 = R0
  0190  MOVE      R27 = R0
  0191  CALL      R18 = call(R18, 1 args, 9 rets)
  0192  GETTABUP  R19 = _ENV[K17('LogTag')]
  0193  GETTABLE  R19 = R19[K18('ConfigCheck')]
  0194  CALL      R17 = call(R17, 0 args, 2 rets)
  0195  SELF      R18 = R15[K38('GetRewards')] (self)
  0196  CALL      R17 = call(R17, 1 args, 1 rets)
  0197  LEN       R18 = len R0
  0198  LT        if R0 lt R18   -> 15066
  0199  JMP       (jump)   -> 223
  0200  GETTABUP  R18 = _ENV[K9('Log')]
  0201  GETTABLE  R18 = R18[K10('Error')]
  0202  GETTABUP  R19 = _ENV[K11('string')]
  0203  GETTABLE  R19 = R19[K12('format')]
  0204  LOADK     R20 = K39 '%s配置表%s里，wheelIndex=%d，配置表%s里，index=%d，rewards=%s，<color=#FFA000>rewards配置错误</color>，奖励类型只能是1种，当前奖励有%d种！'
  0205  SELF      R22 = R0[K14('_GetLogPrefix')] (self)
  0206  MOVE      R23 = R0
  0207  CALL      R21 = call(R21, 1 args, 2 rets)
  0208  GETTABUP  R22 = _ENV[K15('DoubleWheelActivityModel')]
  0209  GETTABLE  R22 = R22[K16('ConfigKey')]
  0210  MOVE      R23 = R0
  0211  GETTABUP  R24 = _ENV[K15('DoubleWheelActivityModel')]
  0212  GETTABLE  R24 = R24[K35('RewardConfigKey')]
  0213  MOVE      R25 = R0
  0214  GETTABUP  R26 = _ENV[K40('ConfigUtil')]
  0215  GETTABLE  R26 = R26[K41('Rewards2String')]
  0216  MOVE      R27 = R0
  0217  CALL      R26 = call(R26, 1 args, 1 rets)
  0218  LEN       R27 = len R0
  0219  CALL      R19 = call(R19, 1 args, 8 rets)
  0220  GETTABUP  R20 = _ENV[K17('LogTag')]
  0221  GETTABLE  R20 = R20[K18('ConfigCheck')]
  0222  CALL      R18 = call(R18, 0 args, 2 rets)
  0223  SELF      R19 = R15[K42('GetPaidRewards')] (self)
  0224  CALL      R18 = call(R18, 1 args, 1 rets)
  0225  LEN       R19 = len R0
  0226  LT        if R0 lt R19   -> 15095
  0227  JMP       (jump)   -> 251
  0228  GETTABUP  R19 = _ENV[K9('Log')]
  0229  GETTABLE  R19 = R19[K10('Error')]
  0230  GETTABUP  R20 = _ENV[K11('string')]
  0231  GETTABLE  R20 = R20[K12('format')]
  0232  LOADK     R21 = K43 '%s配置表%s里，wheelIndex=%d，配置表%s里，index=%d，paidRewards=%s，<color=#FFA000>paidRewards配置错误</color>，奖励类型只能是1种，当前奖励有%d种！'
  0233  SELF      R23 = R0[K14('_GetLogPrefix')] (self)
  0234  MOVE      R24 = R0
  0235  CALL      R22 = call(R22, 1 args, 2 rets)
  0236  GETTABUP  R23 = _ENV[K15('DoubleWheelActivityModel')]
  0237  GETTABLE  R23 = R23[K16('ConfigKey')]
  0238  MOVE      R24 = R0
  0239  GETTABUP  R25 = _ENV[K15('DoubleWheelActivityModel')]
  0240  GETTABLE  R25 = R25[K35('RewardConfigKey')]
  0241  MOVE      R26 = R0
  0242  GETTABUP  R27 = _ENV[K40('ConfigUtil')]
  0243  GETTABLE  R27 = R27[K41('Rewards2String')]
  0244  MOVE      R28 = R0
  0245  CALL      R27 = call(R27, 1 args, 1 rets)
  0246  LEN       R28 = len R0
  0247  CALL      R20 = call(R20, 1 args, 8 rets)
  0248  GETTABUP  R21 = _ENV[K17('LogTag')]
  0249  GETTABLE  R21 = R21[K18('ConfigCheck')]
  0250  CALL      R19 = call(R19, 0 args, 2 rets)
  0251  TFORCALL  tforcall R11
  0252  TFORLOOP  tforloop R13(sBx=-83)   -> 170
  0253  GETTABUP  R11 = _ENV[K19('Table')]
  0254  GETTABLE  R11 = R11[K20('IsEmpty')]
  0255  GETTABLE  R12 = R7[K44('arrContentConfig')]
  0256  CALL      R11 = call(R11, 1 args, 1 rets)
  0257  TEST      if not R11 then   -> -130813
  0258  JMP       (jump)   -> 279
  0259  GETTABUP  R11 = _ENV[K9('Log')]
  0260  GETTABLE  R11 = R11[K10('Error')]
  0261  GETTABUP  R12 = _ENV[K11('string')]
  0262  GETTABLE  R12 = R12[K12('format')]
  0263  LOADK     R13 = K34 '%s配置表%s里，wheelIndex=%d，没有找到配置：<color=#FFA000>%s</color>，配置需要使用include关联表%s！'
  0264  SELF      R15 = R0[K14('_GetLogPrefix')] (self)
  0265  MOVE      R16 = R0
  0266  CALL      R14 = call(R14, 1 args, 2 rets)
  0267  GETTABUP  R15 = _ENV[K15('DoubleWheelActivityModel')]
  0268  GETTABLE  R15 = R15[K16('ConfigKey')]
  0269  MOVE      R16 = R0
  0270  GETTABUP  R17 = _ENV[K15('DoubleWheelActivityModel')]
  0271  GETTABLE  R17 = R17[K45('ContentConfigKey')]
  0272  GETTABUP  R18 = _ENV[K15('DoubleWheelActivityModel')]
  0273  GETTABLE  R18 = R18[K45('ContentConfigKey')]
  0274  CALL      R12 = call(R12, 1 args, 6 rets)
  0275  GETTABUP  R13 = _ENV[K17('LogTag')]
  0276  GETTABLE  R13 = R13[K18('ConfigCheck')]
  0277  CALL      R11 = call(R11, 0 args, 2 rets)
  0278  JMP       (jump)   -> 528
  0279  LOADNIL   R11..R11 = nil
  0280  GETTABUP  R12 = _ENV[K19('Table')]
  0281  GETTABLE  R12 = R12[K46('ShallowCopy')]
  0282  GETTABLE  R13 = R7[K44('arrContentConfig')]
  0283  CALL      R12 = call(R12, 1 args, 1 rets)
  0284  CLOSURE   R13 = closure proto0
  0285  GETTABUP  R14 = _ENV[K5('ipairs')]
  0286  MOVE      R15 = R0
  0287  CALL      R14 = call(R14, 3 args, 1 rets)
  0288  JMP       (jump)   -> 526
  0289  SELF      R20 = R18[K47('GetRoundMin')] (self)
  0290  CALL      R19 = call(R19, 1 args, 1 rets)
  0291  SELF      R21 = R18[K48('GetRoundMax')] (self)
  0292  CALL      R20 = call(R20, 1 args, 1 rets)
  0293  EQ        if R1 eq K30(nil)   -> -124859
  0294  JMP       (jump)   -> 321
  0295  ADD       R21 = K29(1) add R11
  0296  EQ        if R1 eq R21   -> -121025
  0297  JMP       (jump)   -> 321
  0298  GETTABUP  R21 = _ENV[K9('Log')]
  0299  GETTABLE  R21 = R21[K10('Error')]
  0300  GETTABUP  R22 = _ENV[K11('string')]
  0301  GETTABLE  R22 = R22[K12('format')]
  0302  LOADK     R23 = K49 '%s配置表%s里，wheelIndex=%d，配置表%s里，roundMin=%d，roundMax=%d，<color=#FFA000>roundMin配置错误</color>，上一条配置的roundMax=%d，本条配置期望roundMin=%d，当前roundMin=%d'
  0303  SELF      R25 = R0[K14('_GetLogPrefix')] (self)
  0304  MOVE      R26 = R0
  0305  CALL      R24 = call(R24, 1 args, 2 rets)
  0306  GETTABUP  R25 = _ENV[K15('DoubleWheelActivityModel')]
  0307  GETTABLE  R25 = R25[K16('ConfigKey')]
  0308  MOVE      R26 = R0
  0309  GETTABUP  R27 = _ENV[K15('DoubleWheelActivityModel')]
  0310  GETTABLE  R27 = R27[K45('ContentConfigKey')]
  0311  MOVE      R28 = R0
  0312  MOVE      R29 = R0
  0313  MOVE      R30 = R0
  0314  ADD       R31 = K29(1) add R11
  0315  MOVE      R32 = R0
  0316  CALL      R22 = call(R22, 1 args, 10 rets)
  0317  GETTABUP  R23 = _ENV[K17('LogTag')]
  0318  GETTABLE  R23 = R23[K18('ConfigCheck')]
  0319  CALL      R21 = call(R21, 0 args, 2 rets)
  0320  JMP       (jump)   -> 345
  0321  EQ        if R0 eq K30(nil)   -> -124831
  0322  JMP       (jump)   -> 345
  0323  EQ        if R1 eq K29(1)   -> -120734
  0324  JMP       (jump)   -> 345
  0325  GETTABUP  R21 = _ENV[K9('Log')]
  0326  GETTABLE  R21 = R21[K10('Error')]
  0327  GETTABUP  R22 = _ENV[K11('string')]
  0328  GETTABLE  R22 = R22[K12('format')]
  0329  LOADK     R23 = K50 '%s配置表%s里，wheelIndex=%d，配置表%s里，roundMin=%d，roundMax=%d，<color=#FFA000>roundMin配置错误</color>，这是第一条配置，期望roundMin=1，当前roundMin=%d'
  0330  SELF      R25 = R0[K14('_GetLogPrefix')] (self)
  0331  MOVE      R26 = R0
  0332  CALL      R24 = call(R24, 1 args, 2 rets)
  0333  GETTABUP  R25 = _ENV[K15('DoubleWheelActivityModel')]
  0334  GETTABLE  R25 = R25[K16('ConfigKey')]
  0335  MOVE      R26 = R0
  0336  GETTABUP  R27 = _ENV[K15('DoubleWheelActivityModel')]
  0337  GETTABLE  R27 = R27[K45('ContentConfigKey')]
  0338  MOVE      R28 = R0
  0339  MOVE      R29 = R0
  0340  MOVE      R30 = R0
  0341  CALL      R22 = call(R22, 1 args, 8 rets)
  0342  GETTABUP  R23 = _ENV[K17('LogTag')]
  0343  GETTABLE  R23 = R23[K18('ConfigCheck')]
  0344  CALL      R21 = call(R21, 0 args, 2 rets)
  0345  GETTABUP  R21 = _ENV[K19('Table')]
  0346  GETTABLE  R21 = R21[K20('IsEmpty')]
  0347  GETTABLE  R22 = R7[K21('arrRewardConfig')]
  0348  CALL      R21 = call(R21, 1 args, 1 rets)
  0349  TEST      if not R21 then   -> -130721
  0350  JMP       (jump)   -> 354
  0351  LOADK     R21 = K51 0
  0352  TEST      if not R21 then   -> -130717
  0353  JMP       (jump)   -> 356
  0354  SELF      R22 = R7[K22('GetRewardCount')] (self)
  0355  CALL      R21 = call(R21, 1 args, 1 rets)
  0356  LEN       R22 = len R0
  0357  EQ        if R0 eq R22   -> -121987
  0358  JMP       (jump)   -> 382
  0359  EQ        if R1 eq R21   -> -120450
  0360  JMP       (jump)   -> 382
  0361  GETTABUP  R22 = _ENV[K9('Log')]
  0362  GETTABLE  R22 = R22[K10('Error')]
  0363  GETTABUP  R23 = _ENV[K11('string')]
  0364  GETTABLE  R23 = R23[K12('format')]
  0365  LOADK     R24 = K52 '%s配置表%s里，wheelIndex=%d，配置表%s里，roundMin=%d，roundMax=%d，<color=#FFA000>roundMax配置错误</color>，这是最后一条配置，roundMax需要和奖励数量一致，期望roundMax=%d，当前roundMax=%d'
  0366  SELF      R26 = R0[K14('_GetLogPrefix')] (self)
  0367  MOVE      R27 = R0
  0368  CALL      R25 = call(R25, 1 args, 2 rets)
  0369  GETTABUP  R26 = _ENV[K15('DoubleWheelActivityModel')]
  0370  GETTABLE  R26 = R26[K16('ConfigKey')]
  0371  MOVE      R27 = R0
  0372  GETTABUP  R28 = _ENV[K15('DoubleWheelActivityModel')]
  0373  GETTABLE  R28 = R28[K45('ContentConfigKey')]
  0374  MOVE      R29 = R0
  0375  MOVE      R30 = R0
  0376  MOVE      R31 = R0
  0377  MOVE      R32 = R0
  0378  CALL      R23 = call(R23, 1 args, 9 rets)
  0379  GETTABUP  R24 = _ENV[K17('LogTag')]
  0380  GETTABLE  R24 = R24[K18('ConfigCheck')]
  0381  CALL      R22 = call(R22, 0 args, 2 rets)
  0382  LT        if R0 lt R19   -> -120429
  0383  JMP       (jump)   -> 403
  0384  GETTABUP  R22 = _ENV[K9('Log')]
  0385  GETTABLE  R22 = R22[K10('Error')]
  0386  GETTABUP  R23 = _ENV[K11('string')]
  0387  GETTABLE  R23 = R23[K12('format')]
  0388  LOADK     R24 = K53 '%s配置表%s里，wheelIndex=%d，配置表%s里，roundMin=%d，roundMax=%d，<color=#FFA000>roundMin/roundMax配置错误</color>，roundMin必须小于等于roundMax'
  0389  SELF      R26 = R0[K14('_GetLogPrefix')] (self)
  0390  MOVE      R27 = R0
  0391  CALL      R25 = call(R25, 1 args, 2 rets)
  0392  GETTABUP  R26 = _ENV[K15('DoubleWheelActivityModel')]
  0393  GETTABLE  R26 = R26[K16('ConfigKey')]
  0394  MOVE      R27 = R0
  0395  GETTABUP  R28 = _ENV[K15('DoubleWheelActivityModel')]
  0396  GETTABLE  R28 = R28[K45('ContentConfigKey')]
  0397  MOVE      R29 = R0
  0398  MOVE      R30 = R0
  0399  CALL      R23 = call(R23, 1 args, 7 rets)
  0400  GETTABUP  R24 = _ENV[K17('LogTag')]
  0401  GETTABLE  R24 = R24[K18('ConfigCheck')]
  0402  CALL      R22 = call(R22, 0 args, 2 rets)
  0403  SELF      R23 = R18[K54('GetIndexWeightInfo')] (self)
  0404  CALL      R22 = call(R22, 1 args, 1 rets)
  0405  NEWTABLE  R23 = {} (0 items)
  0406  GETTABUP  R24 = _ENV[K5('ipairs')]
  0407  MOVE      R25 = R0
  0408  CALL      R24 = call(R24, 3 args, 1 rets)
  0409  JMP       (jump)   -> 420
  0410  GETTABUP  R29 = _ENV[K24('table')]
  0411  GETTABLE  R29 = R29[K55('insert')]
  0412  MOVE      R30 = R0
  0413  GETTABUP  R31 = _ENV[K11('string')]
  0414  GETTABLE  R31 = R31[K12('format')]
  0415  LOADK     R32 = K56 '%d-%d'
  0416  GETTABLE  R33 = R28[K57('Index')]
  0417  GETTABLE  R34 = R28[K58('Weight')]
  0418  CALL      R31 = call(R31, -1 args, 3 rets)
  0419  CALL      R29 = call(R29, 0 args, -1 rets)
  0420  TFORCALL  tforcall R24
  0421  TFORLOOP  tforloop R26(sBx=-12)   -> 410
  0422  NEWTABLE  R24 = {} (0 items)
  0423  LOADK     R25 = K51 0
  0424  GETTABUP  R26 = _ENV[K5('ipairs')]
  0425  MOVE      R27 = R0
  0426  CALL      R26 = call(R26, 3 args, 1 rets)
  0427  JMP       (jump)   -> 495
  0428  GETTABLE  R31 = R30[K57('Index')]
  0429  GETTABLE  R31 = R24[R31]
  0430  TEST      if not R31 then   -> -130640
  0431  JMP       (jump)   -> 457
  0432  GETTABUP  R31 = _ENV[K9('Log')]
  0433  GETTABLE  R31 = R31[K10('Error')]
  0434  GETTABUP  R32 = _ENV[K11('string')]
  0435  GETTABLE  R32 = R32[K12('format')]
  0436  LOADK     R33 = K59 '%s配置表%s里，wheelIndex=%d，配置表%s里，roundMin=%d，roundMax=%d，giftWeight=%s，<color=#FFA000>giftWeight配置错误</color>，奖励序号%d有重复项！'
  0437  SELF      R35 = R0[K14('_GetLogPrefix')] (self)
  0438  MOVE      R36 = R0
  0439  CALL      R34 = call(R34, 1 args, 2 rets)
  0440  GETTABUP  R35 = _ENV[K15('DoubleWheelActivityModel')]
  0441  GETTABLE  R35 = R35[K16('ConfigKey')]
  0442  MOVE      R36 = R0
  0443  GETTABUP  R37 = _ENV[K15('DoubleWheelActivityModel')]
  0444  GETTABLE  R37 = R37[K45('ContentConfigKey')]
  0445  MOVE      R38 = R0
  0446  MOVE      R39 = R0
  0447  GETTABUP  R40 = _ENV[K24('table')]
  0448  GETTABLE  R40 = R40[K25('concat')]
  0449  MOVE      R41 = R0
  0450  LOADK     R42 = K26 ';'
  0451  CALL      R40 = call(R40, 1 args, 2 rets)
  0452  GETTABLE  R41 = R30[K57('Index')]
  0453  CALL      R32 = call(R32, 1 args, 9 rets)
  0454  GETTABUP  R33 = _ENV[K17('LogTag')]
  0455  GETTABLE  R33 = R33[K18('ConfigCheck')]
  0456  CALL      R31 = call(R31, 0 args, 2 rets)
  0457  GETTABLE  R31 = R30[K57('Index')]
  0458  LT        if R1 lt K29(1)   -> -114455
  0459  JMP       (jump)   -> 463
  0460  GETTABLE  R31 = R30[K57('Index')]
  0461  LT        if R0 lt R31   -> -119826
  0462  JMP       (jump)   -> 489
  0463  GETTABUP  R31 = _ENV[K9('Log')]
  0464  GETTABLE  R31 = R31[K10('Error')]
  0465  GETTABUP  R32 = _ENV[K11('string')]
  0466  GETTABLE  R32 = R32[K12('format')]
  0467  LOADK     R33 = K60 '%s配置表%s里，wheelIndex=%d，配置表%s里，roundMin=%d，roundMax=%d，giftWeight=%s，<color=#FFA000>giftWeight配置错误</color>，奖励序号%d不在1到%d的范围内！'
  0468  SELF      R35 = R0[K14('_GetLogPrefix')] (self)
  0469  MOVE      R36 = R0
  0470  CALL      R34 = call(R34, 1 args, 2 rets)
  0471  GETTABUP  R35 = _ENV[K15('DoubleWheelActivityModel')]
  0472  GETTABLE  R35 = R35[K16('ConfigKey')]
  0473  MOVE      R36 = R0
  0474  GETTABUP  R37 = _ENV[K15('DoubleWheelActivityModel')]
  0475  GETTABLE  R37 = R37[K45('ContentConfigKey')]
  0476  MOVE      R38 = R0
  0477  MOVE      R39 = R0
  0478  GETTABUP  R40 = _ENV[K24('table')]
  0479  GETTABLE  R40 = R40[K25('concat')]
  0480  MOVE      R41 = R0
  0481  LOADK     R42 = K26 ';'
  0482  CALL      R40 = call(R40, 1 args, 2 rets)
  0483  GETTABLE  R41 = R30[K57('Index')]
  0484  MOVE      R42 = R0
  0485  CALL      R32 = call(R32, 1 args, 10 rets)
  0486  GETTABUP  R33 = _ENV[K17('LogTag')]
  0487  GETTABLE  R33 = R33[K18('ConfigCheck')]
  0488  CALL      R31 = call(R31, 0 args, 2 rets)
  0489  GETTABLE  R31 = R30[K57('Index')]
  0490  SETTABLE  R24[R31] = K61(true)
  0491  GETTABLE  R31 = R30[K58('Weight')]
  0492  LT        if R0 lt R31   -> 26637
  0493  JMP       (jump)   -> 495
  0494  ADD       R25 = K29(1) add R25
  0495  TFORCALL  tforcall R26
  0496  TFORLOOP  tforloop R28(sBx=-69)   -> 428
  0497  LT        if R0 lt R20   -> -117753
  0498  JMP       (jump)   -> 525
  0499  GETTABUP  R26 = _ENV[K9('Log')]
  0500  GETTABLE  R26 = R26[K10('Error')]
  0501  GETTABUP  R27 = _ENV[K11('string')]
  0502  GETTABLE  R27 = R27[K12('format')]
  0503  LOADK     R28 = K62 '%s配置表%s里，wheelIndex=%d，配置表%s里，roundMin=%d，roundMax=%d，giftWeight=%s，<color=#FFA000>giftWeight配置错误</color>，大于0的权重数量为%d，当前roundMax=%d，权重数量需要大于等于roundMax来保证该轮有奖励可以被抽取！'
  0504  SELF      R30 = R0[K14('_GetLogPrefix')] (self)
  0505  MOVE      R31 = R0
  0506  CALL      R29 = call(R29, 1 args, 2 rets)
  0507  GETTABUP  R30 = _ENV[K15('DoubleWheelActivityModel')]
  0508  GETTABLE  R30 = R30[K16('ConfigKey')]
  0509  MOVE      R31 = R0
  0510  GETTABUP  R32 = _ENV[K15('DoubleWheelActivityModel')]
  0511  GETTABLE  R32 = R32[K45('ContentConfigKey')]
  0512  MOVE      R33 = R0
  0513  MOVE      R34 = R0
  0514  GETTABUP  R35 = _ENV[K24('table')]
  0515  GETTABLE  R35 = R35[K25('concat')]
  0516  MOVE      R36 = R0
  0517  LOADK     R37 = K26 ';'
  0518  CALL      R35 = call(R35, 1 args, 2 rets)
  0519  MOVE      R36 = R0
  0520  MOVE      R37 = R0
  0521  CALL      R27 = call(R27, 1 args, 10 rets)
  0522  GETTABUP  R28 = _ENV[K17('LogTag')]
  0523  GETTABLE  R28 = R28[K18('ConfigCheck')]
  0524  CALL      R26 = call(R26, 0 args, 2 rets)
  0525  MOVE      R11 = R0
  0526  TFORCALL  tforcall R14
  0527  TFORLOOP  tforloop R16(sBx=-239)   -> 289
  0528  TFORCALL  tforcall R3
  0529  TFORLOOP  tforloop R5(sBx=-514)   -> 16
  0530  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 219-221 np=2 va=0 ms=5 code=10 consts=1 upvals=0 protos=0
    ;   K[0]='GetRoundMin'
    ;   locals: configA(0-10), configB(0-10)
    0000  SELF      R3 = R0[K0('GetRoundMin')] (self)
    0001  CALL      R2 = call(R2, 1 args, 1 rets)
    0002  SELF      R4 = R1[K0('GetRoundMin')] (self)
    0003  CALL      R3 = call(R3, 1 args, 1 rets)
    0004  LT        if R1 lt R3   -> -130039
    0005  JMP       (jump)   -> 7
    0006  LOADBOOL  R2 = false
    0007  LOADBOOL  R2 = true
    0008  RETURN    return R2..R1
    0009  RETURN    return R0..R-1
; ---------- proto14 [GetTotalWheelCount] ----------
  ; fn ?  line 272-274 np=1 va=0 ms=2 code=5 consts=2 upvals=0 protos=0
  ;   K[0]='m_config'
  ;   K[1]='arrWheelConfig'
  ;   locals: self(0-5)
  0000  GETTABLE  R1 = R0[K0('m_config')]
  0001  GETTABLE  R1 = R1[K1('arrWheelConfig')]
  0002  LEN       R1 = len R0
  0003  RETURN    return R1..R0
  0004  RETURN    return R0..R-1
; ---------- proto15 [GetWheelConfig] ----------
  ; fn ?  line 277-279 np=2 va=0 ms=3 code=5 consts=2 upvals=0 protos=0
  ;   K[0]='m_config'
  ;   K[1]='arrWheelConfig'
  ;   locals: self(0-5), wheelIndex(0-5)
  0000  GETTABLE  R2 = R0[K0('m_config')]
  0001  GETTABLE  R2 = R2[K1('arrWheelConfig')]
  0002  GETTABLE  R2 = R2[R1]
  0003  RETURN    return R2..R1
  0004  RETURN    return R0..R-1
; ---------- proto16 [GetRewardCount] ----------
  ; fn ?  line 282-284 np=2 va=0 ms=5 code=7 consts=2 upvals=0 protos=0
  ;   K[0]='GetWheelConfig'
  ;   K[1]='GetRewardCount'
  ;   locals: self(0-7), wheelIndex(0-7)
  0000  SELF      R3 = R0[K0('GetWheelConfig')] (self)
  0001  MOVE      R4 = R0
  0002  CALL      R2 = call(R2, 1 args, 2 rets)
  0003  SELF      R3 = R2[K1('GetRewardCount')] (self)
  0004  TAILCALL  tailcall(R2, 0)
  0005  RETURN    return R2..R1
  0006  RETURN    return R0..R-1
; ---------- proto17 [GetRewardConfig] ----------
  ; fn ?  line 288-290 np=3 va=0 ms=6 code=8 consts=2 upvals=0 protos=0
  ;   K[0]='GetWheelConfig'
  ;   K[1]='GetRewardConfig'
  ;   locals: self(0-8), wheelIndex(0-8), rewardIndex(0-8)
  0000  SELF      R4 = R0[K0('GetWheelConfig')] (self)
  0001  MOVE      R5 = R0
  0002  CALL      R3 = call(R3, 1 args, 2 rets)
  0003  SELF      R4 = R3[K1('GetRewardConfig')] (self)
  0004  MOVE      R5 = R0
  0005  TAILCALL  tailcall(R3, 0)
  0006  RETURN    return R3..R2
  0007  RETURN    return R0..R-1
; ---------- proto18 [GetContentConfig] ----------
  ; fn ?  line 294-296 np=3 va=0 ms=6 code=8 consts=2 upvals=0 protos=0
  ;   K[0]='GetWheelConfig'
  ;   K[1]='GetContentConfig'
  ;   locals: self(0-8), wheelIndex(0-8), roundIndex(0-8)
  0000  SELF      R4 = R0[K0('GetWheelConfig')] (self)
  0001  MOVE      R5 = R0
  0002  CALL      R3 = call(R3, 1 args, 2 rets)
  0003  SELF      R4 = R3[K1('GetContentConfig')] (self)
  0004  MOVE      R5 = R0
  0005  TAILCALL  tailcall(R3, 0)
  0006  RETURN    return R3..R2
  0007  RETURN    return R0..R-1
; ---------- proto19 [GetCurrentWheelConfig] ----------
  ; fn ?  line 299-301 np=1 va=0 ms=5 code=6 consts=2 upvals=0 protos=0
  ;   K[0]='GetWheelConfig'
  ;   K[1]='GetCurrentWheelIndex'
  ;   locals: self(0-6)
  0000  SELF      R2 = R0[K0('GetWheelConfig')] (self)
  0001  SELF      R4 = R0[K1('GetCurrentWheelIndex')] (self)
  0002  CALL      R3 = call(R3, -1 args, 1 rets)
  0003  TAILCALL  tailcall(R1, 0)
  0004  RETURN    return R1..R0
  0005  RETURN    return R0..R-1
; ---------- proto20 [GetCurrentTokenNeeded] ----------
  ; fn ?  line 304-306 np=1 va=0 ms=3 code=6 consts=2 upvals=0 protos=0
  ;   K[0]='GetCurrentWheelConfig'
  ;   K[1]='GetTokenNeeded'
  ;   locals: self(0-6)
  0000  SELF      R2 = R0[K0('GetCurrentWheelConfig')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  SELF      R2 = R1[K1('GetTokenNeeded')] (self)
  0003  TAILCALL  tailcall(R1, 0)
  0004  RETURN    return R1..R0
  0005  RETURN    return R0..R-1
; ---------- proto21 [GetCurrentTotalRewardCount] ----------
  ; fn ?  line 309-311 np=1 va=0 ms=5 code=6 consts=2 upvals=0 protos=0
  ;   K[0]='GetRewardCount'
  ;   K[1]='GetCurrentWheelIndex'
  ;   locals: self(0-6)
  0000  SELF      R2 = R0[K0('GetRewardCount')] (self)
  0001  SELF      R4 = R0[K1('GetCurrentWheelIndex')] (self)
  0002  CALL      R3 = call(R3, -1 args, 1 rets)
  0003  TAILCALL  tailcall(R1, 0)
  0004  RETURN    return R1..R0
  0005  RETURN    return R0..R-1
; ---------- proto22 [GetCurrentRewardConfig] ----------
  ; fn ?  line 315-317 np=2 va=0 ms=6 code=7 consts=2 upvals=0 protos=0
  ;   K[0]='GetRewardConfig'
  ;   K[1]='GetCurrentWheelIndex'
  ;   locals: self(0-7), rewardIndex(0-7)
  0000  SELF      R3 = R0[K0('GetRewardConfig')] (self)
  0001  SELF      R5 = R0[K1('GetCurrentWheelIndex')] (self)
  0002  CALL      R4 = call(R4, 1 args, 1 rets)
  0003  MOVE      R5 = R0
  0004  TAILCALL  tailcall(R2, 0)
  0005  RETURN    return R2..R1
  0006  RETURN    return R0..R-1
; ---------- proto23 [GetCurrentIndexWeightInfo] ----------
  ; fn ?  line 320-326 np=1 va=0 ms=6 code=14 consts=5 upvals=0 protos=0
  ;   K[0]='GetContentConfig'
  ;   K[1]='GetCurrentWheelIndex'
  ;   K[2]='GetCurrentRoundIndex'
  ;   K[3]=nil
  ;   K[4]='GetIndexWeightInfo'
  ;   locals: self(0-14), contentConfig(6-14)
  0000  SELF      R2 = R0[K0('GetContentConfig')] (self)
  0001  SELF      R4 = R0[K1('GetCurrentWheelIndex')] (self)
  0002  CALL      R3 = call(R3, 1 args, 1 rets)
  0003  SELF      R5 = R0[K2('GetCurrentRoundIndex')] (self)
  0004  CALL      R4 = call(R4, -1 args, 1 rets)
  0005  CALL      R1 = call(R1, 1 args, -1 rets)
  0006  EQ        if R1 eq K3(nil)   -> -130293
  0007  JMP       (jump)   -> 11
  0008  SELF      R3 = R1[K4('GetIndexWeightInfo')] (self)
  0009  TAILCALL  tailcall(R2, 0)
  0010  RETURN    return R2..R1
  0011  LOADNIL   R2..R2 = nil
  0012  RETURN    return R2..R1
  0013  RETURN    return R0..R-1
; ---------- proto24 [GetInitToken] ----------
  ; fn ?  line 329-335 np=1 va=0 ms=4 code=14 consts=5 upvals=0 protos=0
  ;   K[0]='GetWheelConfig'
  ;   K[1]=1
  ;   K[2]=nil
  ;   K[3]='GetInitToken'
  ;   K[4]=0
  ;   locals: self(0-14), wheelConfig(3-14)
  0000  SELF      R2 = R0[K0('GetWheelConfig')] (self)
  0001  LOADK     R3 = K1 1
  0002  CALL      R1 = call(R1, 1 args, 2 rets)
  0003  EQ        if R1 eq K2(nil)   -> -130297
  0004  JMP       (jump)   -> 11
  0005  SELF      R3 = R1[K3('GetInitToken')] (self)
  0006  CALL      R2 = call(R2, 1 args, 1 rets)
  0007  TEST      if not R2 then   -> -131062
  0008  JMP       (jump)   -> 10
  0009  LOADK     R2 = K4 0
  0010  RETURN    return R2..R1
  0011  LOADK     R2 = K4 0
  0012  RETURN    return R2..R1
  0013  RETURN    return R0..R-1
; ---------- proto25 [GetNextPopCount] ----------
  ; fn ?  line 338-347 np=1 va=0 ms=9 code=18 consts=4 upvals=1 protos=0
  ;   K[0]='GetCurrentWheelConfig'
  ;   K[1]='GetPopCount'
  ;   K[2]='ipairs'
  ;   K[3]='GetLastPopCount'
  ;   upvals: _ENV
  ;   locals: self(0-18), arrPopCount(4-18), (for generator)(7-15), (for state)(7-15), (for control)(7-15), _(8-13), popCount(8-13)
  0000  SELF      R2 = R0[K0('GetCurrentWheelConfig')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  SELF      R2 = R1[K1('GetPopCount')] (self)
  0003  CALL      R1 = call(R1, 1 args, 1 rets)
  0004  GETTABUP  R2 = _ENV[K2('ipairs')]
  0005  MOVE      R3 = R0
  0006  CALL      R2 = call(R2, 3 args, 1 rets)
  0007  JMP       (jump)   -> 13
  0008  SELF      R8 = R0[K3('GetLastPopCount')] (self)
  0009  CALL      R7 = call(R7, 1 args, 1 rets)
  0010  LT        if R0 lt R6   -> -127470
  0011  JMP       (jump)   -> 13
  0012  RETURN    return R6..R5
  0013  TFORCALL  tforcall R2
  0014  TFORLOOP  tforloop R4(sBx=-7)   -> 8
  0015  LOADNIL   R2..R2 = nil
  0016  RETURN    return R2..R1
  0017  RETURN    return R0..R-1
; ---------- proto26 [IsBestReward] ----------
  ; fn ?  line 351-353 np=3 va=0 ms=7 code=15 consts=5 upvals=1 protos=0
  ;   K[0]='Table'
  ;   K[1]='ListContain'
  ;   K[2]='GetWheelConfig'
  ;   K[3]='GetBestRewardIndex'
  ;   K[4]=false
  ;   upvals: _ENV
  ;   locals: self(0-15), wheelIndex(0-15), rewardIndex(0-15)
  0000  GETTABUP  R3 = _ENV[K0('Table')]
  0001  GETTABLE  R3 = R3[K1('ListContain')]
  0002  SELF      R5 = R0[K2('GetWheelConfig')] (self)
  0003  MOVE      R6 = R0
  0004  CALL      R4 = call(R4, 1 args, 2 rets)
  0005  SELF      R5 = R4[K3('GetBestRewardIndex')] (self)
  0006  CALL      R4 = call(R4, 1 args, 1 rets)
  0007  MOVE      R5 = R0
  0008  CALL      R3 = call(R3, 1 args, 2 rets)
  0009  EQ        if R0 eq K4(false)   -> -129265
  0010  JMP       (jump)   -> 12
  0011  LOADBOOL  R3 = false
  0012  LOADBOOL  R3 = true
  0013  RETURN    return R3..R2
  0014  RETURN    return R0..R-1
; ---------- proto27 [GetCostEnergyInfo] ----------
  ; fn ?  line 355-357 np=1 va=0 ms=3 code=5 consts=2 upvals=0 protos=0
  ;   K[0]='m_tokenHelper'
  ;   K[1]='GetCostEnergyInfo'
  ;   locals: self(0-5)
  0000  GETTABLE  R1 = R0[K0('m_tokenHelper')]
  0001  SELF      R2 = R1[K1('GetCostEnergyInfo')] (self)
  0002  TAILCALL  tailcall(R1, 0)
  0003  RETURN    return R1..R0
  0004  RETURN    return R0..R-1
; ---------- proto28 [GetTriggerStartTime] ----------
  ; fn ?  line 363-365 np=1 va=0 ms=4 code=5 consts=2 upvals=1 protos=0
  ;   K[0]='_DBTableGetNumber'
  ;   K[1]='TriggerStartTime'
  ;   upvals: DBKey
  ;   locals: self(0-5)
  0000  SELF      R2 = R0[K0('_DBTableGetNumber')] (self)
  0001  GETTABUP  R3 = DBKey[K1('TriggerStartTime')]
  0002  TAILCALL  tailcall(R1, 0)
  0003  RETURN    return R1..R0
  0004  RETURN    return R0..R-1
; ---------- proto29 [SetTriggerStartTime] ----------
  ; fn ?  line 368-370 np=2 va=0 ms=6 code=5 consts=2 upvals=1 protos=0
  ;   K[0]='_DBTableSet'
  ;   K[1]='TriggerStartTime'
  ;   upvals: DBKey
  ;   locals: self(0-5), triggerStartTime(0-5)
  0000  SELF      R3 = R0[K0('_DBTableSet')] (self)
  0001  GETTABUP  R4 = DBKey[K1('TriggerStartTime')]
  0002  MOVE      R5 = R0
  0003  CALL      R2 = call(R2, 0 args, 3 rets)
  0004  RETURN    return R0..R-1
; ---------- proto30 [HasClaimedInitToken] ----------
  ; fn ?  line 372-374 np=1 va=0 ms=4 code=10 consts=3 upvals=2 protos=0
  ;   K[0]='_DBTableGetNumber'
  ;   K[1]='HasClaimedInitToken'
  ;   K[2]='TRUE_VALUE'
  ;   upvals: DBKey, _ENV
  ;   locals: self(0-10)
  0000  SELF      R2 = R0[K0('_DBTableGetNumber')] (self)
  0001  GETTABUP  R3 = DBKey[K1('HasClaimedInitToken')]
  0002  CALL      R1 = call(R1, 1 args, 2 rets)
  0003  GETTABUP  R2 = _ENV[K2('TRUE_VALUE')]
  0004  EQ        if R1 eq R2   -> -130552
  0005  JMP       (jump)   -> 7
  0006  LOADBOOL  R1 = false
  0007  LOADBOOL  R1 = true
  0008  RETURN    return R1..R0
  0009  RETURN    return R0..R-1
; ---------- proto31 [SetHasClaimedInitToken] ----------
  ; fn ?  line 376-378 np=1 va=0 ms=5 code=5 consts=3 upvals=2 protos=0
  ;   K[0]='_DBTableSet'
  ;   K[1]='HasClaimedInitToken'
  ;   K[2]='TRUE_VALUE'
  ;   upvals: DBKey, _ENV
  ;   locals: self(0-5)
  0000  SELF      R2 = R0[K0('_DBTableSet')] (self)
  0001  GETTABUP  R3 = DBKey[K1('HasClaimedInitToken')]
  0002  GETTABUP  R4 = _ENV[K2('TRUE_VALUE')]
  0003  CALL      R1 = call(R1, 0 args, 3 rets)
  0004  RETURN    return R0..R-1
; ---------- proto32 [GetTokenCount] ----------
  ; fn ?  line 380-382 np=1 va=0 ms=4 code=5 consts=2 upvals=1 protos=0
  ;   K[0]='_DBTableGetNumber'
  ;   K[1]='TokenCount'
  ;   upvals: DBKey
  ;   locals: self(0-5)
  0000  SELF      R2 = R0[K0('_DBTableGetNumber')] (self)
  0001  GETTABUP  R3 = DBKey[K1('TokenCount')]
  0002  TAILCALL  tailcall(R1, 0)
  0003  RETURN    return R1..R0
  0004  RETURN    return R0..R-1
; ---------- proto33 [SetTokenCount] ----------
  ; fn ?  line 385-387 np=2 va=0 ms=6 code=5 consts=2 upvals=1 protos=0
  ;   K[0]='_DBTableSet'
  ;   K[1]='TokenCount'
  ;   upvals: DBKey
  ;   locals: self(0-5), tokenCount(0-5)
  0000  SELF      R3 = R0[K0('_DBTableSet')] (self)
  0001  GETTABUP  R4 = DBKey[K1('TokenCount')]
  0002  MOVE      R5 = R0
  0003  CALL      R2 = call(R2, 0 args, 3 rets)
  0004  RETURN    return R0..R-1
; ---------- proto34 [GetCurrentWheelIndex] ----------
  ; fn ?  line 389-391 np=1 va=0 ms=5 code=6 consts=3 upvals=1 protos=0
  ;   K[0]='_DBTableGetNumber'
  ;   K[1]='CurrentWheelIndex'
  ;   K[2]=1
  ;   upvals: DBKey
  ;   locals: self(0-6)
  0000  SELF      R2 = R0[K0('_DBTableGetNumber')] (self)
  0001  GETTABUP  R3 = DBKey[K1('CurrentWheelIndex')]
  0002  LOADK     R4 = K2 1
  0003  TAILCALL  tailcall(R1, 0)
  0004  RETURN    return R1..R0
  0005  RETURN    return R0..R-1
; ---------- proto35 [SetCurrentWheelIndex] ----------
  ; fn ?  line 394-396 np=2 va=0 ms=6 code=5 consts=2 upvals=1 protos=0
  ;   K[0]='_DBTableSet'
  ;   K[1]='CurrentWheelIndex'
  ;   upvals: DBKey
  ;   locals: self(0-5), currentWheelIndex(0-5)
  0000  SELF      R3 = R0[K0('_DBTableSet')] (self)
  0001  GETTABUP  R4 = DBKey[K1('CurrentWheelIndex')]
  0002  MOVE      R5 = R0
  0003  CALL      R2 = call(R2, 0 args, 3 rets)
  0004  RETURN    return R0..R-1
; ---------- proto36 [_LoadRewardIndexTaken] ----------
  ; fn ?  line 398-400 np=1 va=0 ms=4 code=5 consts=3 upvals=1 protos=0
  ;   K[0]='m_arrRewardIndexTaken'
  ;   K[1]='_DBTableGetTable'
  ;   K[2]='RewardIndexTaken'
  ;   upvals: DBKey
  ;   locals: self(0-5)
  0000  SELF      R2 = R0[K1('_DBTableGetTable')] (self)
  0001  GETTABUP  R3 = DBKey[K2('RewardIndexTaken')]
  0002  CALL      R1 = call(R1, 1 args, 2 rets)
  0003  SETTABLE  R0[K0('m_arrRewardIndexTaken')] = R1
  0004  RETURN    return R0..R-1
; ---------- proto37 [_SaveRewardIndexTaken] ----------
  ; fn ?  line 402-404 np=1 va=0 ms=5 code=5 consts=3 upvals=1 protos=0
  ;   K[0]='_DBTableSetTable'
  ;   K[1]='RewardIndexTaken'
  ;   K[2]='m_arrRewardIndexTaken'
  ;   upvals: DBKey
  ;   locals: self(0-5)
  0000  SELF      R2 = R0[K0('_DBTableSetTable')] (self)
  0001  GETTABUP  R3 = DBKey[K1('RewardIndexTaken')]
  0002  GETTABLE  R4 = R0[K2('m_arrRewardIndexTaken')]
  0003  CALL      R1 = call(R1, 0 args, 3 rets)
  0004  RETURN    return R0..R-1
; ---------- proto38 [GetRewardIndexTaken] ----------
  ; fn ?  line 406-408 np=1 va=0 ms=2 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='m_arrRewardIndexTaken'
  ;   locals: self(0-3)
  0000  GETTABLE  R1 = R0[K0('m_arrRewardIndexTaken')]
  0001  RETURN    return R1..R0
  0002  RETURN    return R0..R-1
; ---------- proto39 [GetLastRewardIndexTaken] ----------
  ; fn ?  line 410-415 np=1 va=0 ms=3 code=14 consts=3 upvals=1 protos=0
  ;   K[0]='Table'
  ;   K[1]='IsEmpty'
  ;   K[2]='m_arrRewardIndexTaken'
  ;   upvals: _ENV
  ;   locals: self(0-14)
  0000  GETTABUP  R1 = _ENV[K0('Table')]
  0001  GETTABLE  R1 = R1[K1('IsEmpty')]
  0002  GETTABLE  R2 = R0[K2('m_arrRewardIndexTaken')]
  0003  CALL      R1 = call(R1, 1 args, 1 rets)
  0004  TEST      if not R1 then   -> -131065
  0005  JMP       (jump)   -> 11
  0006  GETTABLE  R1 = R0[K2('m_arrRewardIndexTaken')]
  0007  GETTABLE  R2 = R0[K2('m_arrRewardIndexTaken')]
  0008  LEN       R2 = len R0
  0009  GETTABLE  R1 = R1[R2]
  0010  RETURN    return R1..R0
  0011  LOADNIL   R1..R1 = nil
  0012  RETURN    return R1..R0
  0013  RETURN    return R0..R-1
; ---------- proto40 [IsRewardIndexTaken] ----------
  ; fn ?  line 418-420 np=2 va=0 ms=5 code=7 consts=3 upvals=1 protos=0
  ;   K[0]='Table'
  ;   K[1]='ListContain'
  ;   K[2]='m_arrRewardIndexTaken'
  ;   upvals: _ENV
  ;   locals: self(0-7), rewardIndex(0-7)
  0000  GETTABUP  R2 = _ENV[K0('Table')]
  0001  GETTABLE  R2 = R2[K1('ListContain')]
  0002  GETTABLE  R3 = R0[K2('m_arrRewardIndexTaken')]
  0003  MOVE      R4 = R0
  0004  TAILCALL  tailcall(R2, 0)
  0005  RETURN    return R2..R1
  0006  RETURN    return R0..R-1
; ---------- proto41 [SetRewardIndexTaken] ----------
  ; fn ?  line 423-426 np=2 va=0 ms=5 code=8 consts=4 upvals=1 protos=0
  ;   K[0]='table'
  ;   K[1]='insert'
  ;   K[2]='m_arrRewardIndexTaken'
  ;   K[3]='_SaveRewardIndexTaken'
  ;   upvals: _ENV
  ;   locals: self(0-8), rewardIndex(0-8)
  0000  GETTABUP  R2 = _ENV[K0('table')]
  0001  GETTABLE  R2 = R2[K1('insert')]
  0002  GETTABLE  R3 = R0[K2('m_arrRewardIndexTaken')]
  0003  MOVE      R4 = R0
  0004  CALL      R2 = call(R2, 0 args, 2 rets)
  0005  SELF      R3 = R0[K3('_SaveRewardIndexTaken')] (self)
  0006  CALL      R2 = call(R2, 0 args, 1 rets)
  0007  RETURN    return R0..R-1
; ---------- proto42 [ClearRewardIndexTaken] ----------
  ; fn ?  line 428-431 np=1 va=0 ms=3 code=5 consts=2 upvals=0 protos=0
  ;   K[0]='m_arrRewardIndexTaken'
  ;   K[1]='_SaveRewardIndexTaken'
  ;   locals: self(0-5)
  0000  NEWTABLE  R1 = {} (0 items)
  0001  SETTABLE  R0[K0('m_arrRewardIndexTaken')] = R1
  0002  SELF      R2 = R0[K1('_SaveRewardIndexTaken')] (self)
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  RETURN    return R0..R-1
; ---------- proto43 [HasPaidThisWheel] ----------
  ; fn ?  line 433-435 np=1 va=0 ms=4 code=10 consts=3 upvals=2 protos=0
  ;   K[0]='_DBTableGetNumber'
  ;   K[1]='HasPaidThisWheel'
  ;   K[2]='TRUE_VALUE'
  ;   upvals: DBKey, _ENV
  ;   locals: self(0-10)
  0000  SELF      R2 = R0[K0('_DBTableGetNumber')] (self)
  0001  GETTABUP  R3 = DBKey[K1('HasPaidThisWheel')]
  0002  CALL      R1 = call(R1, 1 args, 2 rets)
  0003  GETTABUP  R2 = _ENV[K2('TRUE_VALUE')]
  0004  EQ        if R1 eq R2   -> -130552
  0005  JMP       (jump)   -> 7
  0006  LOADBOOL  R1 = false
  0007  LOADBOOL  R1 = true
  0008  RETURN    return R1..R0
  0009  RETURN    return R0..R-1
; ---------- proto44 [SetHasPaidThisWheel] ----------
  ; fn ?  line 438-444 np=2 va=0 ms=6 code=11 consts=4 upvals=2 protos=0
  ;   K[0]='_DBTableSet'
  ;   K[1]='HasPaidThisWheel'
  ;   K[2]='TRUE_VALUE'
  ;   K[3]='_DBTableRemove'
  ;   upvals: DBKey, _ENV
  ;   locals: self(0-11), bHasPaidThisWheel(0-11)
  0000  TEST      if not R1 then   -> -131070
  0001  JMP       (jump)   -> 7
  0002  SELF      R3 = R0[K0('_DBTableSet')] (self)
  0003  GETTABUP  R4 = DBKey[K1('HasPaidThisWheel')]
  0004  GETTABUP  R5 = _ENV[K2('TRUE_VALUE')]
  0005  CALL      R2 = call(R2, 0 args, 3 rets)
  0006  JMP       (jump)   -> 10
  0007  SELF      R3 = R0[K3('_DBTableRemove')] (self)
  0008  GETTABUP  R4 = DBKey[K1('HasPaidThisWheel')]
  0009  CALL      R2 = call(R2, 0 args, 2 rets)
  0010  RETURN    return R0..R-1
; ---------- proto45 [GetPaidRewardsToClaimCount] ----------
  ; fn ?  line 446-448 np=1 va=0 ms=4 code=5 consts=2 upvals=1 protos=0
  ;   K[0]='_DBTableGetNumber'
  ;   K[1]='PaidRewardsToClaimCount'
  ;   upvals: DBKey
  ;   locals: self(0-5)
  0000  SELF      R2 = R0[K0('_DBTableGetNumber')] (self)
  0001  GETTABUP  R3 = DBKey[K1('PaidRewardsToClaimCount')]
  0002  TAILCALL  tailcall(R1, 0)
  0003  RETURN    return R1..R0
  0004  RETURN    return R0..R-1
; ---------- proto46 [SetPaidRewardsToClaimCount] ----------
  ; fn ?  line 451-457 np=2 va=0 ms=6 code=11 consts=3 upvals=1 protos=0
  ;   K[0]='_DBTableSet'
  ;   K[1]='PaidRewardsToClaimCount'
  ;   K[2]='_DBTableRemove'
  ;   upvals: DBKey
  ;   locals: self(0-11), paidRewardsToClaimCount(0-11)
  0000  TEST      if not R1 then   -> -131070
  0001  JMP       (jump)   -> 7
  0002  SELF      R3 = R0[K0('_DBTableSet')] (self)
  0003  GETTABUP  R4 = DBKey[K1('PaidRewardsToClaimCount')]
  0004  MOVE      R5 = R0
  0005  CALL      R2 = call(R2, 0 args, 3 rets)
  0006  JMP       (jump)   -> 10
  0007  SELF      R3 = R0[K2('_DBTableRemove')] (self)
  0008  GETTABUP  R4 = DBKey[K1('PaidRewardsToClaimCount')]
  0009  CALL      R2 = call(R2, 0 args, 2 rets)
  0010  RETURN    return R0..R-1
; ---------- proto47 [GetLastPopCount] ----------
  ; fn ?  line 459-461 np=1 va=0 ms=4 code=5 consts=2 upvals=1 protos=0
  ;   K[0]='_DBTableGetNumber'
  ;   K[1]='LastPopCount'
  ;   upvals: DBKey
  ;   locals: self(0-5)
  0000  SELF      R2 = R0[K0('_DBTableGetNumber')] (self)
  0001  GETTABUP  R3 = DBKey[K1('LastPopCount')]
  0002  TAILCALL  tailcall(R1, 0)
  0003  RETURN    return R1..R0
  0004  RETURN    return R0..R-1
; ---------- proto48 [SetLastPopCount] ----------
  ; fn ?  line 464-466 np=2 va=0 ms=6 code=5 consts=2 upvals=1 protos=0
  ;   K[0]='_DBTableSet'
  ;   K[1]='LastPopCount'
  ;   upvals: DBKey
  ;   locals: self(0-5), lastPopCount(0-5)
  0000  SELF      R3 = R0[K0('_DBTableSet')] (self)
  0001  GETTABUP  R4 = DBKey[K1('LastPopCount')]
  0002  MOVE      R5 = R0
  0003  CALL      R2 = call(R2, 0 args, 3 rets)
  0004  RETURN    return R0..R-1
; ---------- proto49 [_ChangeTokenCount] ----------
  ; fn ?  line 473-475 np=2 va=0 ms=6 code=6 consts=2 upvals=0 protos=0
  ;   K[0]='SetTokenCount'
  ;   K[1]='GetTokenCount'
  ;   locals: self(0-6), delta(0-6)
  0000  SELF      R3 = R0[K0('SetTokenCount')] (self)
  0001  SELF      R5 = R0[K1('GetTokenCount')] (self)
  0002  CALL      R4 = call(R4, 1 args, 1 rets)
  0003  ADD       R4 = R1 add R4
  0004  CALL      R2 = call(R2, 0 args, 2 rets)
  0005  RETURN    return R0..R-1
; ---------- proto50 [GetRewardTakenCount] ----------
  ; fn ?  line 478-480 np=1 va=0 ms=2 code=4 consts=1 upvals=0 protos=0
  ;   K[0]='m_arrRewardIndexTaken'
  ;   locals: self(0-4)
  0000  GETTABLE  R1 = R0[K0('m_arrRewardIndexTaken')]
  0001  LEN       R1 = len R0
  0002  RETURN    return R1..R0
  0003  RETURN    return R0..R-1
; ---------- proto51 [GetCurrentRoundIndex] ----------
  ; fn ?  line 483-485 np=1 va=0 ms=3 code=5 consts=2 upvals=0 protos=0
  ;   K[0]='GetRewardTakenCount'
  ;   K[1]=1
  ;   locals: self(0-5)
  0000  SELF      R2 = R0[K0('GetRewardTakenCount')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  ADD       R1 = K1(1) add R1
  0003  RETURN    return R1..R0
  0004  RETURN    return R0..R-1
; ---------- proto52 [GetSpinCount] ----------
  ; fn ?  line 488-494 np=1 va=0 ms=6 code=20 consts=7 upvals=1 protos=0
  ;   K[0]='GetCurrentTotalRewardCount'
  ;   K[1]='GetRewardTakenCount'
  ;   K[2]='math'
  ;   K[3]='floor'
  ;   K[4]='GetTokenCount'
  ;   K[5]='GetCurrentTokenNeeded'
  ;   K[6]='min'
  ;   upvals: _ENV
  ;   locals: self(0-20), rewardRemainedCount(5-20), spinCount(13-20)
  0000  SELF      R2 = R0[K0('GetCurrentTotalRewardCount')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  SELF      R3 = R0[K1('GetRewardTakenCount')] (self)
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  SUB       R1 = R2 sub R1
  0005  GETTABUP  R2 = _ENV[K2('math')]
  0006  GETTABLE  R2 = R2[K3('floor')]
  0007  SELF      R4 = R0[K4('GetTokenCount')] (self)
  0008  CALL      R3 = call(R3, 1 args, 1 rets)
  0009  SELF      R5 = R0[K5('GetCurrentTokenNeeded')] (self)
  0010  CALL      R4 = call(R4, 1 args, 1 rets)
  0011  DIV       R3 = R4 div R3
  0012  CALL      R2 = call(R2, 1 args, 1 rets)
  0013  GETTABUP  R3 = _ENV[K2('math')]
  0014  GETTABLE  R3 = R3[K6('min')]
  0015  MOVE      R4 = R0
  0016  MOVE      R5 = R0
  0017  TAILCALL  tailcall(R3, 0)
  0018  RETURN    return R3..R2
  0019  RETURN    return R0..R-1
; ---------- proto53 [IsCurrentWheelSpinFinished] ----------
  ; fn ?  line 497-499 np=1 va=0 ms=4 code=10 consts=2 upvals=0 protos=0
  ;   K[0]='GetRewardTakenCount'
  ;   K[1]='GetCurrentTotalRewardCount'
  ;   locals: self(0-10)
  0000  SELF      R2 = R0[K0('GetRewardTakenCount')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  SELF      R3 = R0[K1('GetCurrentTotalRewardCount')] (self)
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  LE        if R1 le R1   -> -130041
  0005  JMP       (jump)   -> 7
  0006  LOADBOOL  R1 = false
  0007  LOADBOOL  R1 = true
  0008  RETURN    return R1..R0
  0009  RETURN    return R0..R-1
; ---------- proto54 [IsLastWheel] ----------
  ; fn ?  line 502-504 np=1 va=0 ms=4 code=10 consts=2 upvals=0 protos=0
  ;   K[0]='GetCurrentWheelIndex'
  ;   K[1]='GetTotalWheelCount'
  ;   locals: self(0-10)
  0000  SELF      R2 = R0[K0('GetCurrentWheelIndex')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  SELF      R3 = R0[K1('GetTotalWheelCount')] (self)
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  EQ        if R1 eq R2   -> -130552
  0005  JMP       (jump)   -> 7
  0006  LOADBOOL  R1 = false
  0007  LOADBOOL  R1 = true
  0008  RETURN    return R1..R0
  0009  RETURN    return R0..R-1
; ---------- proto55 [HasPaidRewardsToClaim] ----------
  ; fn ?  line 507-509 np=1 va=0 ms=3 code=12 consts=3 upvals=0 protos=0
  ;   K[0]='HasPaidThisWheel'
  ;   K[1]='GetPaidRewardsToClaimCount'
  ;   K[2]=0
  ;   locals: self(0-12)
  0000  SELF      R2 = R0[K0('HasPaidThisWheel')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  TEST      if not R1 then   -> -131068
  0003  JMP       (jump)   -> 10
  0004  SELF      R2 = R0[K1('GetPaidRewardsToClaimCount')] (self)
  0005  CALL      R1 = call(R1, 1 args, 1 rets)
  0006  LT        if R1 lt R1   -> 1033
  0007  JMP       (jump)   -> 9
  0008  LOADBOOL  R1 = false
  0009  LOADBOOL  R1 = true
  0010  RETURN    return R1..R0
  0011  RETURN    return R0..R-1
; ---------- proto56 [HasLastChance] ----------
  ; fn ?  line 512-514 np=1 va=0 ms=3 code=17 consts=5 upvals=1 protos=0
  ;   K[0]='GetState'
  ;   K[1]='ActivityState'
  ;   K[2]='Ended'
  ;   K[3]='IsEndWindowPoped'
  ;   K[4]='CanSpin'
  ;   upvals: _ENV
  ;   locals: self(0-17)
  0000  SELF      R2 = R0[K0('GetState')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  GETTABUP  R2 = _ENV[K1('ActivityState')]
  0003  GETTABLE  R2 = R2[K2('Ended')]
  0004  EQ        if R0 eq R2   -> -130552
  0005  JMP       (jump)   -> 13
  0006  SELF      R2 = R0[K3('IsEndWindowPoped')] (self)
  0007  CALL      R1 = call(R1, 1 args, 1 rets)
  0008  TEST      if not R1 then   -> -131061
  0009  JMP       (jump)   -> 13
  0010  SELF      R2 = R0[K4('CanSpin')] (self)
  0011  CALL      R1 = call(R1, 1 args, 1 rets)
  0012  JMP       (jump)   -> 15
  0013  LOADBOOL  R1 = false
  0014  LOADBOOL  R1 = true
  0015  RETURN    return R1..R0
  0016  RETURN    return R0..R-1
; ---------- proto57 [IsLastChanceValid] ----------
  ; fn ?  line 517-519 np=1 va=0 ms=3 code=19 consts=5 upvals=0 protos=0
  ;   K[0]='CanSpin'
  ;   K[1]='GetRewardTakenCount'
  ;   K[2]=0
  ;   K[3]='HasPaidThisWheel'
  ;   K[4]='HasPaidRewardsToClaim'
  ;   locals: self(0-19)
  0000  SELF      R2 = R0[K0('CanSpin')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  TEST      if not R1 then   -> -131067
  0003  JMP       (jump)   -> 17
  0004  SELF      R2 = R0[K1('GetRewardTakenCount')] (self)
  0005  CALL      R1 = call(R1, 1 args, 1 rets)
  0006  LT        if R0 lt R1   -> 1033
  0007  JMP       (jump)   -> 12
  0008  SELF      R2 = R0[K3('HasPaidThisWheel')] (self)
  0009  CALL      R1 = call(R1, 1 args, 1 rets)
  0010  TEST      if not R1 then   -> -131060
  0011  JMP       (jump)   -> 16
  0012  SELF      R2 = R0[K4('HasPaidRewardsToClaim')] (self)
  0013  CALL      R1 = call(R1, 1 args, 1 rets)
  0014  JMP       (jump)   -> 17
  0015  LOADBOOL  R1 = false
  0016  LOADBOOL  R1 = true
  0017  RETURN    return R1..R0
  0018  RETURN    return R0..R-1
; ---------- proto58 [CanFinishCurrentWheelSpin] ----------
  ; fn ?  line 522-524 np=1 va=0 ms=4 code=13 consts=3 upvals=0 protos=0
  ;   K[0]='GetSpinCount'
  ;   K[1]='GetRewardTakenCount'
  ;   K[2]='GetCurrentTotalRewardCount'
  ;   locals: self(0-13)
  0000  SELF      R2 = R0[K0('GetSpinCount')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  SELF      R3 = R0[K1('GetRewardTakenCount')] (self)
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  ADD       R1 = R2 add R1
  0005  SELF      R3 = R0[K2('GetCurrentTotalRewardCount')] (self)
  0006  CALL      R2 = call(R2, 1 args, 1 rets)
  0007  LE        if R1 le R1   -> -130038
  0008  JMP       (jump)   -> 10
  0009  LOADBOOL  R1 = false
  0010  LOADBOOL  R1 = true
  0011  RETURN    return R1..R0
  0012  RETURN    return R0..R-1
; ---------- proto59 [UpdateLastPopCount] ----------
  ; fn ?  line 527-529 np=1 va=0 ms=5 code=5 consts=2 upvals=0 protos=0
  ;   K[0]='SetLastPopCount'
  ;   K[1]='GetSpinCount'
  ;   locals: self(0-5)
  0000  SELF      R2 = R0[K0('SetLastPopCount')] (self)
  0001  SELF      R4 = R0[K1('GetSpinCount')] (self)
  0002  CALL      R3 = call(R3, -1 args, 1 rets)
  0003  CALL      R1 = call(R1, 0 args, -1 rets)
  0004  RETURN    return R0..R-1
; ---------- proto60 [CanPopByDailyOpenTime] ----------
  ; fn ?  line 532-536 np=1 va=0 ms=5 code=20 consts=9 upvals=1 protos=0
  ;   K[0]='GM'
  ;   K[1]='GameModel'
  ;   K[2]='GetServerTime'
  ;   K[3]='PlayerPrefs'
  ;   K[4]='GetInt'
  ;   K[5]='EPlayerPrefKey'
  ;   K[6]='DoubleWheelActivityDailyOpenTime'
  ;   K[7]=0
  ;   K[8]='Sec2Day'
  ;   upvals: _ENV
  ;   locals: self(0-20), serverTime(4-20), openTime(10-20)
  0000  GETTABUP  R1 = _ENV[K0('GM')]
  0001  GETTABLE  R1 = R1[K1('GameModel')]
  0002  SELF      R2 = R1[K2('GetServerTime')] (self)
  0003  CALL      R1 = call(R1, 1 args, 1 rets)
  0004  GETTABUP  R2 = _ENV[K3('PlayerPrefs')]
  0005  GETTABLE  R2 = R2[K4('GetInt')]
  0006  GETTABUP  R3 = _ENV[K5('EPlayerPrefKey')]
  0007  GETTABLE  R3 = R3[K6('DoubleWheelActivityDailyOpenTime')]
  0008  LOADK     R4 = K7 0
  0009  CALL      R2 = call(R2, 1 args, 2 rets)
  0010  GETTABUP  R3 = _ENV[K8('Sec2Day')]
  0011  IDIV      R3 = R3 idiv R1
  0012  GETTABUP  R4 = _ENV[K8('Sec2Day')]
  0013  IDIV      R4 = R4 idiv R2
  0014  LT        if R1 lt R3   -> -129005
  0015  JMP       (jump)   -> 17
  0016  LOADBOOL  R3 = false
  0017  LOADBOOL  R3 = true
  0018  RETURN    return R3..R2
  0019  RETURN    return R0..R-1
; ---------- proto61 [RecordWindowDailyOpenTime] ----------
  ; fn ?  line 539-541 np=1 va=0 ms=5 code=10 consts=7 upvals=1 protos=0
  ;   K[0]='PlayerPrefs'
  ;   K[1]='SetInt'
  ;   K[2]='EPlayerPrefKey'
  ;   K[3]='DoubleWheelActivityDailyOpenTime'
  ;   K[4]='GM'
  ;   K[5]='GameModel'
  ;   K[6]='GetServerTime'
  ;   upvals: _ENV
  ;   locals: self(0-10)
  0000  GETTABUP  R1 = _ENV[K0('PlayerPrefs')]
  0001  GETTABLE  R1 = R1[K1('SetInt')]
  0002  GETTABUP  R2 = _ENV[K2('EPlayerPrefKey')]
  0003  GETTABLE  R2 = R2[K3('DoubleWheelActivityDailyOpenTime')]
  0004  GETTABUP  R3 = _ENV[K4('GM')]
  0005  GETTABLE  R3 = R3[K5('GameModel')]
  0006  SELF      R4 = R3[K6('GetServerTime')] (self)
  0007  CALL      R3 = call(R3, -1 args, 1 rets)
  0008  CALL      R1 = call(R1, 0 args, -1 rets)
  0009  RETURN    return R0..R-1
; ---------- proto62 [ClearWindowDailyOpenTime] ----------
  ; fn ?  line 544-546 np=1 va=0 ms=3 code=6 consts=4 upvals=1 protos=0
  ;   K[0]='PlayerPrefs'
  ;   K[1]='DeleteKey'
  ;   K[2]='EPlayerPrefKey'
  ;   K[3]='DoubleWheelActivityDailyOpenTime'
  ;   upvals: _ENV
  ;   locals: self(0-6)
  0000  GETTABUP  R1 = _ENV[K0('PlayerPrefs')]
  0001  GETTABLE  R1 = R1[K1('DeleteKey')]
  0002  GETTABUP  R2 = _ENV[K2('EPlayerPrefKey')]
  0003  GETTABLE  R2 = R2[K3('DoubleWheelActivityDailyOpenTime')]
  0004  CALL      R1 = call(R1, 0 args, 1 rets)
  0005  RETURN    return R0..R-1
; ---------- proto63 [_DispatchStateChangedEvent] ----------
  ; fn ?  line 552-554 np=1 va=0 ms=4 code=7 consts=4 upvals=1 protos=0
  ;   K[0]='EventDispatcher'
  ;   K[1]='DispatchEvent'
  ;   K[2]='GetActivityDefinition'
  ;   K[3]='StateChangedEvent'
  ;   upvals: _ENV
  ;   locals: self(0-7)
  0000  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0001  GETTABLE  R1 = R1[K1('DispatchEvent')]
  0002  SELF      R3 = R0[K2('GetActivityDefinition')] (self)
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  GETTABLE  R2 = R2[K3('StateChangedEvent')]
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto64 [_DispatchRefreshEntryEvent] ----------
  ; fn ?  line 556-558 np=1 va=0 ms=4 code=7 consts=4 upvals=1 protos=0
  ;   K[0]='EventDispatcher'
  ;   K[1]='DispatchEvent'
  ;   K[2]='GetActivityDefinition'
  ;   K[3]='RefreshEntryEvent'
  ;   upvals: _ENV
  ;   locals: self(0-7)
  0000  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0001  GETTABLE  R1 = R1[K1('DispatchEvent')]
  0002  SELF      R3 = R0[K2('GetActivityDefinition')] (self)
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  GETTABLE  R2 = R2[K3('RefreshEntryEvent')]
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto65 [_DispatchPurchaseSuccessEvent] ----------
  ; fn ?  line 560-562 np=1 va=0 ms=4 code=7 consts=4 upvals=1 protos=0
  ;   K[0]='EventDispatcher'
  ;   K[1]='DispatchEvent'
  ;   K[2]='GetActivityDefinition'
  ;   K[3]='PurchaseSuccessEvent'
  ;   upvals: _ENV
  ;   locals: self(0-7)
  0000  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0001  GETTABLE  R1 = R1[K1('DispatchEvent')]
  0002  SELF      R3 = R0[K2('GetActivityDefinition')] (self)
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  GETTABLE  R2 = R2[K3('PurchaseSuccessEvent')]
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto66 [_DispatchScoreChangedEvent] ----------
  ; fn ?  line 565-567 np=2 va=0 ms=5 code=9 consts=5 upvals=1 protos=0
  ;   K[0]='EventDispatcher'
  ;   K[1]='DispatchEvent'
  ;   K[2]='GetActivityDefinition'
  ;   K[3]='ScoreChangedEvent'
  ;   K[4]='delta'
  ;   upvals: _ENV
  ;   locals: self(0-9), delta(0-9)
  0000  GETTABUP  R2 = _ENV[K0('EventDispatcher')]
  0001  GETTABLE  R2 = R2[K1('DispatchEvent')]
  0002  SELF      R4 = R0[K2('GetActivityDefinition')] (self)
  0003  CALL      R3 = call(R3, 1 args, 1 rets)
  0004  GETTABLE  R3 = R3[K3('ScoreChangedEvent')]
  0005  NEWTABLE  R4 = {} (0 items)
  0006  SETTABLE  R4[K4('delta')] = R1
  0007  CALL      R2 = call(R2, 0 args, 2 rets)
  0008  RETURN    return R0..R-1
; ---------- proto67 [_DispatchWheelUpgradedEvent] ----------
  ; fn ?  line 569-571 np=1 va=0 ms=4 code=7 consts=4 upvals=1 protos=0
  ;   K[0]='EventDispatcher'
  ;   K[1]='DispatchEvent'
  ;   K[2]='GetActivityDefinition'
  ;   K[3]='WheelUpgradedEvent'
  ;   upvals: _ENV
  ;   locals: self(0-7)
  0000  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0001  GETTABLE  R1 = R1[K1('DispatchEvent')]
  0002  SELF      R3 = R0[K2('GetActivityDefinition')] (self)
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  GETTABLE  R2 = R2[K3('WheelUpgradedEvent')]
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto68 [_DispatchMainWindowOpenedEvent] ----------
  ; fn ?  line 573-575 np=1 va=0 ms=4 code=7 consts=4 upvals=1 protos=0
  ;   K[0]='EventDispatcher'
  ;   K[1]='DispatchEvent'
  ;   K[2]='GetActivityDefinition'
  ;   K[3]='MainWindowOpenedEvent'
  ;   upvals: _ENV
  ;   locals: self(0-7)
  0000  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0001  GETTABLE  R1 = R1[K1('DispatchEvent')]
  0002  SELF      R3 = R0[K2('GetActivityDefinition')] (self)
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  GETTABLE  R2 = R2[K3('MainWindowOpenedEvent')]
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto69 [_DispatchMainWindowAnimationEndEvent] ----------
  ; fn ?  line 577-579 np=1 va=0 ms=4 code=7 consts=4 upvals=1 protos=0
  ;   K[0]='EventDispatcher'
  ;   K[1]='DispatchEvent'
  ;   K[2]='GetActivityDefinition'
  ;   K[3]='MainWindowAnimationEndEvent'
  ;   upvals: _ENV
  ;   locals: self(0-7)
  0000  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0001  GETTABLE  R1 = R1[K1('DispatchEvent')]
  0002  SELF      R3 = R0[K2('GetActivityDefinition')] (self)
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  GETTABLE  R2 = R2[K3('MainWindowAnimationEndEvent')]
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto70 [_DispatchMainWindowStartSpinEvent] ----------
  ; fn ?  line 581-583 np=1 va=0 ms=4 code=7 consts=4 upvals=1 protos=0
  ;   K[0]='EventDispatcher'
  ;   K[1]='DispatchEvent'
  ;   K[2]='GetActivityDefinition'
  ;   K[3]='MainWindowStartSpinEvent'
  ;   upvals: _ENV
  ;   locals: self(0-7)
  0000  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0001  GETTABLE  R1 = R1[K1('DispatchEvent')]
  0002  SELF      R3 = R0[K2('GetActivityDefinition')] (self)
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  GETTABLE  R2 = R2[K3('MainWindowStartSpinEvent')]
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto71 [_DispatchMainWindowSpinEndEvent] ----------
  ; fn ?  line 585-587 np=1 va=0 ms=4 code=7 consts=4 upvals=1 protos=0
  ;   K[0]='EventDispatcher'
  ;   K[1]='DispatchEvent'
  ;   K[2]='GetActivityDefinition'
  ;   K[3]='MainWindowSpinEndEvent'
  ;   upvals: _ENV
  ;   locals: self(0-7)
  0000  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0001  GETTABLE  R1 = R1[K1('DispatchEvent')]
  0002  SELF      R3 = R0[K2('GetActivityDefinition')] (self)
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  GETTABLE  R2 = R2[K3('MainWindowSpinEndEvent')]
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto72 [_DispatchMainWindowUnlockButtonClickedEvent] ----------
  ; fn ?  line 589-591 np=1 va=0 ms=4 code=7 consts=4 upvals=1 protos=0
  ;   K[0]='EventDispatcher'
  ;   K[1]='DispatchEvent'
  ;   K[2]='GetActivityDefinition'
  ;   K[3]='MainWindowUnlockButtonClickedEvent'
  ;   upvals: _ENV
  ;   locals: self(0-7)
  0000  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0001  GETTABLE  R1 = R1[K1('DispatchEvent')]
  0002  SELF      R3 = R0[K2('GetActivityDefinition')] (self)
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  GETTABLE  R2 = R2[K3('MainWindowUnlockButtonClickedEvent')]
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto73 [_DispatchMainWindowClosedEvent] ----------
  ; fn ?  line 593-595 np=1 va=0 ms=4 code=7 consts=4 upvals=1 protos=0
  ;   K[0]='EventDispatcher'
  ;   K[1]='DispatchEvent'
  ;   K[2]='GetActivityDefinition'
  ;   K[3]='MainWindowClosedEvent'
  ;   upvals: _ENV
  ;   locals: self(0-7)
  0000  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0001  GETTABLE  R1 = R1[K1('DispatchEvent')]
  0002  SELF      R3 = R0[K2('GetActivityDefinition')] (self)
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  GETTABLE  R2 = R2[K3('MainWindowClosedEvent')]
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto74 [_OpenWindow] ----------
  ; fn ?  line 602-604 np=2 va=1 ms=8 code=11 consts=5 upvals=1 protos=0
  ;   K[0]='GM'
  ;   K[1]='UIManager'
  ;   K[2]='OpenView'
  ;   K[3]='GetType'
  ;   K[4]='GetId'
  ;   upvals: _ENV
  ;   locals: self(0-11), prefabName(0-11)
  0000  GETTABUP  R2 = _ENV[K0('GM')]
  0001  GETTABLE  R2 = R2[K1('UIManager')]
  0002  SELF      R3 = R2[K2('OpenView')] (self)
  0003  MOVE      R4 = R0
  0004  SELF      R6 = R0[K3('GetType')] (self)
  0005  CALL      R5 = call(R5, 1 args, 1 rets)
  0006  SELF      R7 = R0[K4('GetId')] (self)
  0007  CALL      R6 = call(R6, 1 args, 1 rets)
  0008  VARARG    R7 = vararg(0)
  0009  CALL      R2 = call(R2, 0 args, -1 rets)
  0010  RETURN    return R0..R-1
; ---------- proto75 [OpenMainWindow] ----------
  ; fn ?  line 608-610 np=2 va=0 ms=6 code=7 consts=3 upvals=0 protos=0
  ;   K[0]='_OpenWindow'
  ;   K[1]='GetActivityDefinition'
  ;   K[2]='MainWindowPrefabName'
  ;   locals: self(0-7), bAuto(0-7)
  0000  SELF      R3 = R0[K0('_OpenWindow')] (self)
  0001  SELF      R5 = R0[K1('GetActivityDefinition')] (self)
  0002  CALL      R4 = call(R4, 1 args, 1 rets)
  0003  GETTABLE  R4 = R4[K2('MainWindowPrefabName')]
  0004  MOVE      R5 = R0
  0005  CALL      R2 = call(R2, 0 args, 3 rets)
  0006  RETURN    return R0..R-1
; ---------- proto76 [OpenPurchaseWindow] ----------
  ; fn ?  line 616-618 np=4 va=0 ms=10 code=9 consts=3 upvals=0 protos=0
  ;   K[0]='_OpenWindow'
  ;   K[1]='GetActivityDefinition'
  ;   K[2]='PurchaseWindowPrefabName'
  ;   locals: self(0-9), bAuto(0-9), bLastChance(0-9), closeCallback(0-9)
  0000  SELF      R5 = R0[K0('_OpenWindow')] (self)
  0001  SELF      R7 = R0[K1('GetActivityDefinition')] (self)
  0002  CALL      R6 = call(R6, 1 args, 1 rets)
  0003  GETTABLE  R6 = R6[K2('PurchaseWindowPrefabName')]
  0004  MOVE      R7 = R0
  0005  MOVE      R8 = R0
  0006  MOVE      R9 = R0
  0007  CALL      R4 = call(R4, 0 args, 5 rets)
  0008  RETURN    return R0..R-1
; ---------- proto77 [OpenHelpWindow] ----------
  ; fn ?  line 622-624 np=2 va=0 ms=6 code=7 consts=3 upvals=0 protos=0
  ;   K[0]='_OpenWindow'
  ;   K[1]='GetActivityDefinition'
  ;   K[2]='HelpWindowPrefabName'
  ;   locals: self(0-7), bAuto(0-7)
  0000  SELF      R3 = R0[K0('_OpenWindow')] (self)
  0001  SELF      R5 = R0[K1('GetActivityDefinition')] (self)
  0002  CALL      R4 = call(R4, 1 args, 1 rets)
  0003  GETTABLE  R4 = R4[K2('HelpWindowPrefabName')]
  0004  MOVE      R5 = R0
  0005  CALL      R2 = call(R2, 0 args, 3 rets)
  0006  RETURN    return R0..R-1
; ---------- proto78 [OpenTwoButtonWindow] ----------
  ; fn ?  line 630-632 np=3 va=0 ms=9 code=9 consts=3 upvals=0 protos=0
  ;   K[0]='_OpenWindow'
  ;   K[1]='GetActivityDefinition'
  ;   K[2]='TwoButtonWindowPrefabName'
  ;   locals: self(0-9), redButtonCallback(0-9), greenButtonCallback(0-9)
  0000  SELF      R4 = R0[K0('_OpenWindow')] (self)
  0001  SELF      R6 = R0[K1('GetActivityDefinition')] (self)
  0002  CALL      R5 = call(R5, 1 args, 1 rets)
  0003  GETTABLE  R5 = R5[K2('TwoButtonWindowPrefabName')]
  0004  LOADBOOL  R6 = false
  0005  MOVE      R7 = R0
  0006  MOVE      R8 = R0
  0007  CALL      R3 = call(R3, 0 args, 5 rets)
  0008  RETURN    return R0..R-1
; ---------- proto79 [IsMainWindowPoped] ----------
  ; fn ?  line 635-637 np=1 va=0 ms=4 code=6 consts=3 upvals=1 protos=0
  ;   K[0]='HasWindowOpenedOnce'
  ;   K[1]='ActivityState'
  ;   K[2]='Started'
  ;   upvals: _ENV
  ;   locals: self(0-6)
  0000  SELF      R2 = R0[K0('HasWindowOpenedOnce')] (self)
  0001  GETTABUP  R3 = _ENV[K1('ActivityState')]
  0002  GETTABLE  R3 = R3[K2('Started')]
  0003  TAILCALL  tailcall(R1, 0)
  0004  RETURN    return R1..R0
  0005  RETURN    return R0..R-1
; ---------- proto80 [IsEndWindowPoped] ----------
  ; fn ?  line 640-642 np=1 va=0 ms=4 code=6 consts=3 upvals=1 protos=0
  ;   K[0]='HasWindowOpenedOnce'
  ;   K[1]='ActivityState'
  ;   K[2]='Ended'
  ;   upvals: _ENV
  ;   locals: self(0-6)
  0000  SELF      R2 = R0[K0('HasWindowOpenedOnce')] (self)
  0001  GETTABUP  R3 = _ENV[K1('ActivityState')]
  0002  GETTABLE  R3 = R3[K2('Ended')]
  0003  TAILCALL  tailcall(R1, 0)
  0004  RETURN    return R1..R0
  0005  RETURN    return R0..R-1
; ---------- proto81 [CanPopMainWindowBySpinCount] ----------
  ; fn ?  line 645-660 np=1 va=0 ms=5 code=23 consts=5 upvals=0 protos=0
  ;   K[0]='GetNextPopCount'
  ;   K[1]='GetSpinCount'
  ;   K[2]=nil
  ;   K[3]='CanFinishCurrentWheelSpin'
  ;   K[4]='CanPopByDailyOpenTime'
  ;   locals: self(0-23), nextPopCount(2-23), spinCount(4-23)
  0000  SELF      R2 = R0[K0('GetNextPopCount')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  SELF      R3 = R0[K1('GetSpinCount')] (self)
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  EQ        if R1 eq K2(nil)   -> -130296
  0005  JMP       (jump)   -> 10
  0006  LE        if R0 le R2   -> -130550
  0007  JMP       (jump)   -> 10
  0008  LOADBOOL  R3 = true
  0009  RETURN    return R3..R2
  0010  SELF      R4 = R0[K3('CanFinishCurrentWheelSpin')] (self)
  0011  CALL      R3 = call(R3, 1 args, 1 rets)
  0012  TEST      if not R3 then   -> -131058
  0013  JMP       (jump)   -> 20
  0014  SELF      R4 = R0[K4('CanPopByDailyOpenTime')] (self)
  0015  CALL      R3 = call(R3, 1 args, 1 rets)
  0016  TEST      if not R3 then   -> -131054
  0017  JMP       (jump)   -> 20
  0018  LOADBOOL  R3 = true
  0019  RETURN    return R3..R2
  0020  LOADBOOL  R3 = false
  0021  RETURN    return R3..R2
  0022  RETURN    return R0..R-1
; ---------- proto82 [OnCheckPopup] ----------
  ; fn ?  line 664-696 np=2 va=0 ms=8 code=72 consts=16 upvals=1 protos=0
  ;   K[0]='GetState'
  ;   K[1]='ActivityState'
  ;   K[2]='Started'
  ;   K[3]='IsMainWindowPoped'
  ;   K[4]='OpenMainWindow'
  ;   K[5]='HasPaidRewardsToClaim'
  ;   K[6]='CanPopMainWindowBySpinCount'
  ;   K[7]='Ended'
  ;   K[8]='HasLastChance'
  ;   K[9]='TryClaimRewardsForPurchase'
  ;   K[10]='Table'
  ;   K[11]='IsEmpty'
  ;   K[12]='RewardWindow'
  ;   K[13]='Open'
  ;   K[14]='ERewardScene'
  ;   K[15]='Other'
  ;   upvals: _ENV
  ;   locals: self(0-72), ePopupScene(0-72), arrRewards(55-71)
  0000  SELF      R3 = R0[K0('GetState')] (self)
  0001  CALL      R2 = call(R2, 1 args, 1 rets)
  0002  GETTABUP  R3 = _ENV[K1('ActivityState')]
  0003  GETTABLE  R3 = R3[K2('Started')]
  0004  EQ        if R0 eq R3   -> -130039
  0005  JMP       (jump)   -> 34
  0006  SELF      R3 = R0[K3('IsMainWindowPoped')] (self)
  0007  CALL      R2 = call(R2, 1 args, 1 rets)
  0008  TEST      if not R2 then   -> -131061
  0009  JMP       (jump)   -> 15
  0010  SELF      R3 = R0[K4('OpenMainWindow')] (self)
  0011  LOADBOOL  R4 = true
  0012  CALL      R2 = call(R2, 0 args, 2 rets)
  0013  LOADBOOL  R2 = true
  0014  RETURN    return R2..R1
  0015  SELF      R3 = R0[K5('HasPaidRewardsToClaim')] (self)
  0016  CALL      R2 = call(R2, 1 args, 1 rets)
  0017  TEST      if not R2 then   -> -131053
  0018  JMP       (jump)   -> 24
  0019  SELF      R3 = R0[K4('OpenMainWindow')] (self)
  0020  LOADBOOL  R4 = true
  0021  CALL      R2 = call(R2, 0 args, 2 rets)
  0022  LOADBOOL  R2 = true
  0023  RETURN    return R2..R1
  0024  SELF      R3 = R0[K6('CanPopMainWindowBySpinCount')] (self)
  0025  CALL      R2 = call(R2, 1 args, 1 rets)
  0026  TEST      if not R2 then   -> -131044
  0027  JMP       (jump)   -> 71
  0028  SELF      R3 = R0[K4('OpenMainWindow')] (self)
  0029  LOADBOOL  R4 = true
  0030  CALL      R2 = call(R2, 0 args, 2 rets)
  0031  LOADBOOL  R2 = true
  0032  RETURN    return R2..R1
  0033  JMP       (jump)   -> 71
  0034  SELF      R3 = R0[K0('GetState')] (self)
  0035  CALL      R2 = call(R2, 1 args, 1 rets)
  0036  GETTABUP  R3 = _ENV[K1('ActivityState')]
  0037  GETTABLE  R3 = R3[K7('Ended')]
  0038  EQ        if R0 eq R3   -> -130005
  0039  JMP       (jump)   -> 71
  0040  SELF      R3 = R0[K8('HasLastChance')] (self)
  0041  CALL      R2 = call(R2, 1 args, 1 rets)
  0042  TEST      if not R2 then   -> -131028
  0043  JMP       (jump)   -> 49
  0044  SELF      R3 = R0[K4('OpenMainWindow')] (self)
  0045  LOADBOOL  R4 = true
  0046  CALL      R2 = call(R2, 0 args, 2 rets)
  0047  LOADBOOL  R2 = true
  0048  RETURN    return R2..R1
  0049  SELF      R3 = R0[K5('HasPaidRewardsToClaim')] (self)
  0050  CALL      R2 = call(R2, 1 args, 1 rets)
  0051  TEST      if not R2 then   -> -131019
  0052  JMP       (jump)   -> 71
  0053  SELF      R3 = R0[K9('TryClaimRewardsForPurchase')] (self)
  0054  CALL      R2 = call(R2, 1 args, 1 rets)
  0055  GETTABUP  R3 = _ENV[K10('Table')]
  0056  GETTABLE  R3 = R3[K11('IsEmpty')]
  0057  MOVE      R4 = R0
  0058  CALL      R3 = call(R3, 1 args, 1 rets)
  0059  TEST      if not R3 then   -> -131010
  0060  JMP       (jump)   -> 71
  0061  GETTABUP  R3 = _ENV[K12('RewardWindow')]
  0062  GETTABLE  R3 = R3[K13('Open')]
  0063  MOVE      R4 = R0
  0064  LOADNIL   R5..R5 = nil
  0065  LOADBOOL  R6 = true
  0066  GETTABUP  R7 = _ENV[K14('ERewardScene')]
  0067  GETTABLE  R7 = R7[K15('Other')]
  0068  CALL      R3 = call(R3, 0 args, 4 rets)
  0069  LOADBOOL  R3 = true
  0070  RETURN    return R3..R2
  0071  RETURN    return R0..R-1
; ---------- proto83 [OnMainWindowPoped] ----------
  ; fn ?  line 699-707 np=1 va=0 ms=3 code=11 consts=4 upvals=0 protos=0
  ;   K[0]='UpdateLastPopCount'
  ;   K[1]='CanFinishCurrentWheelSpin'
  ;   K[2]='RecordWindowDailyOpenTime'
  ;   K[3]='_DispatchMainWindowOpenedEvent'
  ;   locals: self(0-11)
  0000  SELF      R2 = R0[K0('UpdateLastPopCount')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  SELF      R2 = R0[K1('CanFinishCurrentWheelSpin')] (self)
  0003  CALL      R1 = call(R1, 1 args, 1 rets)
  0004  TEST      if not R1 then   -> -131066
  0005  JMP       (jump)   -> 8
  0006  SELF      R2 = R0[K2('RecordWindowDailyOpenTime')] (self)
  0007  CALL      R1 = call(R1, 0 args, 1 rets)
  0008  SELF      R2 = R0[K3('_DispatchMainWindowOpenedEvent')] (self)
  0009  CALL      R1 = call(R1, 0 args, 1 rets)
  0010  RETURN    return R0..R-1
; ---------- proto84 [OnMainWindowAnimationEnd] ----------
  ; fn ?  line 709-711 np=1 va=0 ms=3 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='_DispatchMainWindowAnimationEndEvent'
  ;   locals: self(0-3)
  0000  SELF      R2 = R0[K0('_DispatchMainWindowAnimationEndEvent')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  RETURN    return R0..R-1
; ---------- proto85 [OnStartSpin] ----------
  ; fn ?  line 713-715 np=1 va=0 ms=3 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='_DispatchMainWindowStartSpinEvent'
  ;   locals: self(0-3)
  0000  SELF      R2 = R0[K0('_DispatchMainWindowStartSpinEvent')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  RETURN    return R0..R-1
; ---------- proto86 [OnSpinEnd] ----------
  ; fn ?  line 717-719 np=1 va=0 ms=3 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='_DispatchMainWindowSpinEndEvent'
  ;   locals: self(0-3)
  0000  SELF      R2 = R0[K0('_DispatchMainWindowSpinEndEvent')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  RETURN    return R0..R-1
; ---------- proto87 [OnUnlockBtnClicked] ----------
  ; fn ?  line 723-726 np=3 va=0 ms=8 code=8 consts=2 upvals=0 protos=0
  ;   K[0]='OpenPurchaseWindow'
  ;   K[1]='_DispatchMainWindowUnlockButtonClickedEvent'
  ;   locals: self(0-8), bLastChance(0-8), closeCallback(0-8)
  0000  SELF      R4 = R0[K0('OpenPurchaseWindow')] (self)
  0001  LOADNIL   R5..R5 = nil
  0002  MOVE      R6 = R0
  0003  MOVE      R7 = R0
  0004  CALL      R3 = call(R3, 0 args, 4 rets)
  0005  SELF      R4 = R0[K1('_DispatchMainWindowUnlockButtonClickedEvent')] (self)
  0006  CALL      R3 = call(R3, 0 args, 1 rets)
  0007  RETURN    return R0..R-1
; ---------- proto88 [OnMainWindowClosed] ----------
  ; fn ?  line 728-730 np=1 va=0 ms=3 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='_DispatchMainWindowClosedEvent'
  ;   locals: self(0-3)
  0000  SELF      R2 = R0[K0('_DispatchMainWindowClosedEvent')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  RETURN    return R0..R-1
; ---------- proto89 [CanAddScore] ----------
  ; fn ?  line 737-739 np=1 va=0 ms=3 code=4 consts=1 upvals=0 protos=0
  ;   K[0]='IsActivityOpen'
  ;   locals: self(0-4)
  0000  SELF      R2 = R0[K0('IsActivityOpen')] (self)
  0001  TAILCALL  tailcall(R1, 0)
  0002  RETURN    return R1..R0
  0003  RETURN    return R0..R-1
; ---------- proto90 [AcquireActivityToken] ----------
  ; fn ?  line 742-746 np=2 va=0 ms=5 code=7 consts=2 upvals=0 protos=0
  ;   K[0]='_ChangeTokenCount'
  ;   K[1]='_DispatchScoreChangedEvent'
  ;   locals: self(0-7), count(0-7)
  0000  SELF      R3 = R0[K0('_ChangeTokenCount')] (self)
  0001  MOVE      R4 = R0
  0002  CALL      R2 = call(R2, 0 args, 2 rets)
  0003  SELF      R3 = R0[K1('_DispatchScoreChangedEvent')] (self)
  0004  MOVE      R4 = R0
  0005  CALL      R2 = call(R2, 0 args, 2 rets)
  0006  RETURN    return R0..R-1
; ---------- proto91 [ConsumeActivityToken] ----------
  ; fn ?  line 749-760 np=4 va=0 ms=11 code=28 consts=9 upvals=1 protos=0
  ;   K[0]=0
  ;   K[1]='GetActivityTokenNumber'
  ;   K[2]='_ChangeTokenCount'
  ;   K[3]='_DispatchScoreChangedEvent'
  ;   K[4]='GM'
  ;   K[5]='PropertyDataManager'
  ;   K[6]='DispatchConsumeEvent'
  ;   K[7]='GetActivityDefinition'
  ;   K[8]='ActivityTokenPropertyType'
  ;   upvals: _ENV
  ;   locals: self(0-28), count(0-28), scene(0-28), consumer(0-28)
  0000  LE        if R1 le K0(0)   -> -130302
  0001  JMP       (jump)   -> 6
  0002  SELF      R5 = R0[K1('GetActivityTokenNumber')] (self)
  0003  CALL      R4 = call(R4, 1 args, 1 rets)
  0004  LT        if R0 lt R1   -> -129017
  0005  JMP       (jump)   -> 8
  0006  LOADBOOL  R4 = false
  0007  RETURN    return R4..R3
  0008  SELF      R5 = R0[K2('_ChangeTokenCount')] (self)
  0009  UNM       R6 = unm R0
  0010  CALL      R4 = call(R4, 0 args, 2 rets)
  0011  SELF      R5 = R0[K3('_DispatchScoreChangedEvent')] (self)
  0012  UNM       R6 = unm R0
  0013  CALL      R4 = call(R4, 0 args, 2 rets)
  0014  GETTABUP  R4 = _ENV[K4('GM')]
  0015  GETTABLE  R4 = R4[K5('PropertyDataManager')]
  0016  SELF      R5 = R4[K6('DispatchConsumeEvent')] (self)
  0017  SELF      R7 = R0[K7('GetActivityDefinition')] (self)
  0018  CALL      R6 = call(R6, 1 args, 1 rets)
  0019  GETTABLE  R6 = R6[K8('ActivityTokenPropertyType')]
  0020  MOVE      R7 = R0
  0021  MOVE      R8 = R0
  0022  LOADNIL   R9..R9 = nil
  0023  MOVE      R10 = R0
  0024  CALL      R4 = call(R4, 0 args, 6 rets)
  0025  LOADBOOL  R4 = true
  0026  RETURN    return R4..R3
  0027  RETURN    return R0..R-1
; ---------- proto92 [GetActivityTokenNumber] ----------
  ; fn ?  line 762-764 np=1 va=0 ms=3 code=4 consts=1 upvals=0 protos=0
  ;   K[0]='GetTokenCount'
  ;   locals: self(0-4)
  0000  SELF      R2 = R0[K0('GetTokenCount')] (self)
  0001  TAILCALL  tailcall(R1, 0)
  0002  RETURN    return R1..R0
  0003  RETURN    return R0..R-1
; ---------- proto93 [_ClaimRewards] ----------
  ; fn ?  line 773-775 np=3 va=0 ms=13 code=22 consts=11 upvals=1 protos=0
  ;   K[0]='RewardApi'
  ;   K[1]='AcquireRewardsLogic'
  ;   K[2]='GetRewards'
  ;   K[3]='EPropertySource'
  ;   K[4]='Give'
  ;   K[5]='Buy'
  ;   K[6]='EBIType'
  ;   K[7]='DoubleWheelReward'
  ;   K[8]='ERewardScene'
  ;   K[9]='Other'
  ;   K[10]='GetCurrentWheelIndex'
  ;   upvals: _ENV
  ;   locals: self(0-22), rewardConfig(0-22), bFree(0-22)
  0000  GETTABUP  R3 = _ENV[K0('RewardApi')]
  0001  GETTABLE  R3 = R3[K1('AcquireRewardsLogic')]
  0002  SELF      R5 = R1[K2('GetRewards')] (self)
  0003  CALL      R4 = call(R4, 1 args, 1 rets)
  0004  TEST      if not R2 then   -> -131066
  0005  JMP       (jump)   -> 10
  0006  GETTABUP  R5 = _ENV[K3('EPropertySource')]
  0007  GETTABLE  R5 = R5[K4('Give')]
  0008  TEST      if not R5 then   -> -131061
  0009  JMP       (jump)   -> 12
  0010  GETTABUP  R5 = _ENV[K3('EPropertySource')]
  0011  GETTABLE  R5 = R5[K5('Buy')]
  0012  GETTABUP  R6 = _ENV[K6('EBIType')]
  0013  GETTABLE  R6 = R6[K7('DoubleWheelReward')]
  0014  GETTABUP  R7 = _ENV[K8('ERewardScene')]
  0015  GETTABLE  R7 = R7[K9('Other')]
  0016  LOADNIL   R8..R8 = nil
  0017  SELF      R12 = R0[K10('GetCurrentWheelIndex')] (self)
  0018  CALL      R11 = call(R11, -1 args, 1 rets)
  0019  TAILCALL  tailcall(R3, 0)
  0020  RETURN    return R3..R2
  0021  RETURN    return R0..R-1
; ---------- proto94 [_ClaimPaidRewards] ----------
  ; fn ?  line 779-781 np=2 va=0 ms=12 code=16 consts=10 upvals=1 protos=0
  ;   K[0]='RewardApi'
  ;   K[1]='AcquireRewardsLogic'
  ;   K[2]='GetPaidRewards'
  ;   K[3]='EPropertySource'
  ;   K[4]='Buy'
  ;   K[5]='EBIType'
  ;   K[6]='DoubleWheelReward'
  ;   K[7]='ERewardScene'
  ;   K[8]='Other'
  ;   K[9]='GetCurrentWheelIndex'
  ;   upvals: _ENV
  ;   locals: self(0-16), rewardConfig(0-16)
  0000  GETTABUP  R2 = _ENV[K0('RewardApi')]
  0001  GETTABLE  R2 = R2[K1('AcquireRewardsLogic')]
  0002  SELF      R4 = R1[K2('GetPaidRewards')] (self)
  0003  CALL      R3 = call(R3, 1 args, 1 rets)
  0004  GETTABUP  R4 = _ENV[K3('EPropertySource')]
  0005  GETTABLE  R4 = R4[K4('Buy')]
  0006  GETTABUP  R5 = _ENV[K5('EBIType')]
  0007  GETTABLE  R5 = R5[K6('DoubleWheelReward')]
  0008  GETTABUP  R6 = _ENV[K7('ERewardScene')]
  0009  GETTABLE  R6 = R6[K8('Other')]
  0010  LOADNIL   R7..R7 = nil
  0011  SELF      R11 = R0[K9('GetCurrentWheelIndex')] (self)
  0012  CALL      R10 = call(R10, -1 args, 1 rets)
  0013  TAILCALL  tailcall(R2, 0)
  0014  RETURN    return R2..R1
  0015  RETURN    return R0..R-1
; ---------- proto95 [GetPaidRewardsForPurchase] ----------
  ; fn ?  line 784-802 np=1 va=0 ms=11 code=33 consts=7 upvals=1 protos=0
  ;   K[0]=1
  ;   K[1]='GetCurrentTotalRewardCount'
  ;   K[2]='GetCurrentRewardConfig'
  ;   K[3]='GetPaidRewards'
  ;   K[4]='IsRewardIndexTaken'
  ;   K[5]='Table'
  ;   K[6]='ListAppend'
  ;   upvals: _ENV
  ;   locals: self(0-33), paidRewardsInstant(1-33), paidRewardsToSpin(2-33), (for index)(6-29), (for limit)(6-29), (for step)(6-29), rewardIndex(7-28), paidRewards(12-28)
  0000  NEWTABLE  R1 = {} (0 items)
  0001  NEWTABLE  R2 = {} (0 items)
  0002  LOADK     R3 = K0 1
  0003  SELF      R5 = R0[K1('GetCurrentTotalRewardCount')] (self)
  0004  CALL      R4 = call(R4, 1 args, 1 rets)
  0005  LOADK     R5 = K0 1
  0006  FORPREP   forprep R3(sBx=21)   -> 28
  0007  SELF      R8 = R0[K2('GetCurrentRewardConfig')] (self)
  0008  MOVE      R9 = R0
  0009  CALL      R7 = call(R7, 1 args, 2 rets)
  0010  SELF      R8 = R7[K3('GetPaidRewards')] (self)
  0011  CALL      R7 = call(R7, 1 args, 1 rets)
  0012  SELF      R9 = R0[K4('IsRewardIndexTaken')] (self)
  0013  MOVE      R10 = R0
  0014  CALL      R8 = call(R8, 1 args, 2 rets)
  0015  TEST      if not R8 then   -> -131055
  0016  JMP       (jump)   -> 23
  0017  GETTABUP  R8 = _ENV[K5('Table')]
  0018  GETTABLE  R8 = R8[K6('ListAppend')]
  0019  MOVE      R9 = R0
  0020  MOVE      R10 = R0
  0021  CALL      R8 = call(R8, 0 args, 2 rets)
  0022  JMP       (jump)   -> 28
  0023  GETTABUP  R8 = _ENV[K5('Table')]
  0024  GETTABLE  R8 = R8[K6('ListAppend')]
  0025  MOVE      R9 = R0
  0026  MOVE      R10 = R0
  0027  CALL      R8 = call(R8, 0 args, 2 rets)
  0028  FORLOOP   forloop R3(sBx=-22)   -> 7
  0029  MOVE      R3 = R0
  0030  MOVE      R4 = R0
  0031  RETURN    return R3..R2
  0032  RETURN    return R0..R-1
; ---------- proto96 [_ClaimRewardsForPurchase] ----------
  ; fn ?  line 805-808 np=1 va=0 ms=8 code=14 consts=9 upvals=1 protos=0
  ;   K[0]='GetPaidRewardsForPurchase'
  ;   K[1]='RewardApi'
  ;   K[2]='AcquireRewardsLogic'
  ;   K[3]='EPropertySource'
  ;   K[4]='Buy'
  ;   K[5]='EBIType'
  ;   K[6]='DoubleWheelPaidReward'
  ;   K[7]='ERewardScene'
  ;   K[8]='Other'
  ;   upvals: _ENV
  ;   locals: self(0-14), paidRewardsInstant(2-14), _(2-14)
  0000  SELF      R2 = R0[K0('GetPaidRewardsForPurchase')] (self)
  0001  CALL      R1 = call(R1, 2 args, 1 rets)
  0002  GETTABUP  R3 = _ENV[K1('RewardApi')]
  0003  GETTABLE  R3 = R3[K2('AcquireRewardsLogic')]
  0004  MOVE      R4 = R0
  0005  GETTABUP  R5 = _ENV[K3('EPropertySource')]
  0006  GETTABLE  R5 = R5[K4('Buy')]
  0007  GETTABUP  R6 = _ENV[K5('EBIType')]
  0008  GETTABLE  R6 = R6[K6('DoubleWheelPaidReward')]
  0009  GETTABUP  R7 = _ENV[K7('ERewardScene')]
  0010  GETTABLE  R7 = R7[K8('Other')]
  0011  TAILCALL  tailcall(R3, 0)
  0012  RETURN    return R3..R2
  0013  RETURN    return R0..R-1
; ---------- proto97 [CanSpin] ----------
  ; fn ?  line 815-817 np=1 va=0 ms=3 code=8 consts=2 upvals=0 protos=0
  ;   K[0]='GetSpinCount'
  ;   K[1]=0
  ;   locals: self(0-8)
  0000  SELF      R2 = R0[K0('GetSpinCount')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  LT        if R1 lt R1   -> 517
  0003  JMP       (jump)   -> 5
  0004  LOADBOOL  R1 = false
  0005  LOADBOOL  R1 = true
  0006  RETURN    return R1..R0
  0007  RETURN    return R0..R-1
; ---------- proto98 [TrySpin] ----------
  ; fn ?  line 820-903 np=1 va=0 ms=31 code=227 consts=60 upvals=1 protos=0
  ;   K[0]='CanSpin'
  ;   K[1]='Table'
  ;   K[2]='ShallowCopy'
  ;   K[3]='GetCurrentIndexWeightInfo'
  ;   K[4]=nil
  ;   K[5]=1
  ;   K[6]=-1
  ;   K[7]='IsRewardIndexTaken'
  ;   K[8]='Index'
  ;   K[9]='table'
  ;   K[10]='remove'
  ;   K[11]='IsEmpty'
  ;   K[12]='pairs'
  ;   K[13]='insert'
  ;   K[14]='string'
  ;   K[15]='format'
  ;   K[16]='%d-%d'
  ;   K[17]='Weight'
  ;   K[18]='Log'
  ;   K[19]='Error'
  ;   K[20]='%s尝试抽取奖励，但排除当前已抽取奖励后，待抽取奖励列表为空，请检查配置内容是否正确。当前轮次：%d，当前已抽取奖励数量：%d，当前待抽取奖励配置：%s'
  ;   K[21]='_GetLogPrefix'
  ;   K[22]='GetCurrentWheelIndex'
  ;   K[23]='GetRewardTakenCount'
  ;   K[24]='concat'
  ;   K[25]='; '
  ;   K[26]='ListWeightSelectOne'
  ;   K[27]='GetCurrentRewardConfig'
  ;   K[28]='_ClaimRewards'
  ;   K[29]='HasPaidThisWheel'
  ;   K[30]='_ClaimPaidRewards'
  ;   K[31]=0
  ;   K[32]='ipairs'
  ;   K[33]='math'
  ;   K[34]='max'
  ;   K[35]=100
  ;   K[36]='StringUtil'
  ;   K[37]='MakeColorFormat'
  ;   K[38]='奖励序号 %d | 权重 %d（%.2f%%） | 免费奖励 %s | 付费奖励 %s'
  ;   K[39]='ConfigUtil'
  ;   K[40]='Rewards2String'
  ;   K[41]='GetRewards'
  ;   K[42]='GetPaidRewards'
  ;   K[43]='FFA000'
  ;   K[44]='Info'
  ;   K[45]='[双转盘礼包] 抽奖，当前转盘 %d，当前抽取次数 %d，已抽取记录 %s，总权重：%d，抽取结果：\n%s'
  ;   K[46]='GetRewardIndexTaken'
  ;   K[47]=';'
  ;   K[48]='\n'
  ;   K[49]='SetRewardIndexTaken'
  ;   K[50]='ConsumeActivityToken'
  ;   K[51]='GetCurrentTokenNeeded'
  ;   K[52]='EBIType'
  ;   K[53]='DoubleWheelSpin'
  ;   K[54]='_LogSpinReward'
  ;   K[55]='IsCurrentWheelSpinFinished'
  ;   K[56]='LogActivity'
  ;   K[57]='ActivityRankUp'
  ;   K[58]='UpdateLastPopCount'
  ;   K[59]='IsBestReward'
  ;   upvals: _ENV
  ;   locals: self(0-227), indexWeightInfo(11-227), (for index)(18-31), (for limit)(18-31), (for step)(18-31), i(19-30), logWeightInfo(38-75), (for generator)(42-55), (for state)(42-55), (for control)(42-55), _(43-53), info(43-53), result(79-227), rewardIndex(80-227), rewardConfig(83-227), rewards(84-227), paidRewards(84-227), bFree(92-105), logWeight(106-227), totalWeight(107-227), (for generator)(110-115), (for state)(110-115), (for control)(110-115), _(111-113), info(111-113), (for generator)(124-166), (for state)(124-166), (for control)(124-166), _(125-164), info(125-164), index(126-164), weight(127-164), probability(129-164), bResult(134-164), infoConfig(137-164)
  0000  SELF      R2 = R0[K0('CanSpin')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  TEST      if not R1 then   -> -131067
  0003  JMP       (jump)   -> 6
  0004  LOADNIL   R1..R1 = nil
  0005  RETURN    return R1..R0
  0006  GETTABUP  R1 = _ENV[K1('Table')]
  0007  GETTABLE  R1 = R1[K2('ShallowCopy')]
  0008  SELF      R3 = R0[K3('GetCurrentIndexWeightInfo')] (self)
  0009  CALL      R2 = call(R2, -1 args, 1 rets)
  0010  CALL      R1 = call(R1, 1 args, -1 rets)
  0011  EQ        if R0 eq K4(nil)   -> -130287
  0012  JMP       (jump)   -> 15
  0013  LOADNIL   R2..R2 = nil
  0014  RETURN    return R2..R1
  0015  LEN       R2 = len R0
  0016  LOADK     R3 = K5 1
  0017  LOADK     R4 = K6 -1
  0018  FORPREP   forprep R2(sBx=11)   -> 30
  0019  SELF      R7 = R0[K7('IsRewardIndexTaken')] (self)
  0020  GETTABLE  R8 = R1[R5]
  0021  GETTABLE  R8 = R8[K8('Index')]
  0022  CALL      R6 = call(R6, 1 args, 2 rets)
  0023  TEST      if not R6 then   -> -131047
  0024  JMP       (jump)   -> 30
  0025  GETTABUP  R6 = _ENV[K9('table')]
  0026  GETTABLE  R6 = R6[K10('remove')]
  0027  MOVE      R7 = R0
  0028  MOVE      R8 = R0
  0029  CALL      R6 = call(R6, 0 args, 2 rets)
  0030  FORLOOP   forloop R2(sBx=-12)   -> 19
  0031  GETTABUP  R2 = _ENV[K1('Table')]
  0032  GETTABLE  R2 = R2[K11('IsEmpty')]
  0033  MOVE      R3 = R0
  0034  CALL      R2 = call(R2, 1 args, 1 rets)
  0035  TEST      if not R2 then   -> -131035
  0036  JMP       (jump)   -> 75
  0037  NEWTABLE  R2 = {} (0 items)
  0038  GETTABUP  R3 = _ENV[K12('pairs')]
  0039  SELF      R5 = R0[K3('GetCurrentIndexWeightInfo')] (self)
  0040  CALL      R4 = call(R4, -1 args, 1 rets)
  0041  CALL      R3 = call(R3, 3 args, -1 rets)
  0042  JMP       (jump)   -> 53
  0043  GETTABUP  R8 = _ENV[K9('table')]
  0044  GETTABLE  R8 = R8[K13('insert')]
  0045  MOVE      R9 = R0
  0046  GETTABUP  R10 = _ENV[K14('string')]
  0047  GETTABLE  R10 = R10[K15('format')]
  0048  LOADK     R11 = K16 '%d-%d'
  0049  GETTABLE  R12 = R7[K8('Index')]
  0050  GETTABLE  R13 = R7[K17('Weight')]
  0051  CALL      R10 = call(R10, -1 args, 3 rets)
  0052  CALL      R8 = call(R8, 0 args, -1 rets)
  0053  TFORCALL  tforcall R3
  0054  TFORLOOP  tforloop R5(sBx=-12)   -> 43
  0055  GETTABUP  R3 = _ENV[K18('Log')]
  0056  GETTABLE  R3 = R3[K19('Error')]
  0057  GETTABUP  R4 = _ENV[K14('string')]
  0058  GETTABLE  R4 = R4[K15('format')]
  0059  LOADK     R5 = K20 '%s尝试抽取奖励，但排除当前已抽取奖励后，待抽取奖励列表为空，请检查配置内容是否正确。当前轮次：%d，当前已抽取奖励数量：%d，当前待抽取奖励配置：%s'
  0060  SELF      R7 = R0[K21('_GetLogPrefix')] (self)
  0061  CALL      R6 = call(R6, 1 args, 1 rets)
  0062  SELF      R8 = R0[K22('GetCurrentWheelIndex')] (self)
  0063  CALL      R7 = call(R7, 1 args, 1 rets)
  0064  SELF      R9 = R0[K23('GetRewardTakenCount')] (self)
  0065  CALL      R8 = call(R8, 1 args, 1 rets)
  0066  GETTABUP  R9 = _ENV[K9('table')]
  0067  GETTABLE  R9 = R9[K24('concat')]
  0068  MOVE      R10 = R0
  0069  LOADK     R11 = K25 '; '
  0070  CALL      R9 = call(R9, -1 args, 2 rets)
  0071  CALL      R4 = call(R4, -1 args, -1 rets)
  0072  CALL      R3 = call(R3, 0 args, -1 rets)
  0073  LOADNIL   R3..R3 = nil
  0074  RETURN    return R3..R2
  0075  GETTABUP  R2 = _ENV[K1('Table')]
  0076  GETTABLE  R2 = R2[K26('ListWeightSelectOne')]
  0077  MOVE      R3 = R0
  0078  CALL      R2 = call(R2, 1 args, 1 rets)
  0079  GETTABLE  R3 = R2[K8('Index')]
  0080  SELF      R5 = R0[K27('GetCurrentRewardConfig')] (self)
  0081  MOVE      R6 = R0
  0082  CALL      R4 = call(R4, 1 args, 2 rets)
  0083  LOADNIL   R5..R5 = nil
  0084  EQ        if R1 eq K4(nil)   -> -128678
  0085  JMP       (jump)   -> 105
  0086  SELF      R8 = R0[K22('GetCurrentWheelIndex')] (self)
  0087  CALL      R7 = call(R7, 1 args, 1 rets)
  0088  EQ        if R1 eq K5(1)   -> -127137
  0089  JMP       (jump)   -> 91
  0090  LOADBOOL  R7 = false
  0091  LOADBOOL  R7 = true
  0092  SELF      R9 = R0[K28('_ClaimRewards')] (self)
  0093  MOVE      R10 = R0
  0094  MOVE      R11 = R0
  0095  CALL      R8 = call(R8, 1 args, 3 rets)
  0096  MOVE      R5 = R0
  0097  SELF      R9 = R0[K29('HasPaidThisWheel')] (self)
  0098  CALL      R8 = call(R8, 1 args, 1 rets)
  0099  TEST      if not R8 then   -> -130971
  0100  JMP       (jump)   -> 105
  0101  SELF      R9 = R0[K30('_ClaimPaidRewards')] (self)
  0102  MOVE      R10 = R0
  0103  CALL      R8 = call(R8, 1 args, 2 rets)
  0104  MOVE      R6 = R0
  0105  NEWTABLE  R7 = {} (0 items)
  0106  LOADK     R8 = K31 0
  0107  GETTABUP  R9 = _ENV[K32('ipairs')]
  0108  MOVE      R10 = R0
  0109  CALL      R9 = call(R9, 3 args, 1 rets)
  0110  JMP       (jump)   -> 113
  0111  GETTABLE  R14 = R13[K17('Weight')]
  0112  ADD       R8 = R14 add R8
  0113  TFORCALL  tforcall R9
  0114  TFORLOOP  tforloop R11(sBx=-4)   -> 111
  0115  GETTABUP  R9 = _ENV[K33('math')]
  0116  GETTABLE  R9 = R9[K34('max')]
  0117  LOADK     R10 = K5 1
  0118  MOVE      R11 = R0
  0119  CALL      R9 = call(R9, 1 args, 2 rets)
  0120  MOVE      R8 = R0
  0121  GETTABUP  R9 = _ENV[K32('ipairs')]
  0122  MOVE      R10 = R0
  0123  CALL      R9 = call(R9, 3 args, 1 rets)
  0124  JMP       (jump)   -> 164
  0125  GETTABLE  R14 = R13[K8('Index')]
  0126  GETTABLE  R15 = R13[K17('Weight')]
  0127  DIV       R16 = R8 div R15
  0128  MUL       R16 = K35(100) mul R16
  0129  GETTABLE  R17 = R13[K8('Index')]
  0130  EQ        if R1 eq R3   -> -122233
  0131  JMP       (jump)   -> 133
  0132  LOADBOOL  R17 = false
  0133  LOADBOOL  R17 = true
  0134  SELF      R19 = R0[K27('GetCurrentRewardConfig')] (self)
  0135  GETTABLE  R20 = R13[K8('Index')]
  0136  CALL      R18 = call(R18, 1 args, 2 rets)
  0137  GETTABUP  R19 = _ENV[K9('table')]
  0138  GETTABLE  R19 = R19[K13('insert')]
  0139  MOVE      R20 = R0
  0140  GETTABUP  R21 = _ENV[K36('StringUtil')]
  0141  GETTABLE  R21 = R21[K37('MakeColorFormat')]
  0142  GETTABUP  R22 = _ENV[K14('string')]
  0143  GETTABLE  R22 = R22[K15('format')]
  0144  LOADK     R23 = K38 '奖励序号 %d | 权重 %d（%.2f%%） | 免费奖励 %s | 付费奖励 %s'
  0145  MOVE      R24 = R0
  0146  MOVE      R25 = R0
  0147  MOVE      R26 = R0
  0148  GETTABUP  R27 = _ENV[K39('ConfigUtil')]
  0149  GETTABLE  R27 = R27[K40('Rewards2String')]
  0150  SELF      R29 = R18[K41('GetRewards')] (self)
  0151  CALL      R28 = call(R28, -1 args, 1 rets)
  0152  CALL      R27 = call(R27, 1 args, -1 rets)
  0153  GETTABUP  R28 = _ENV[K39('ConfigUtil')]
  0154  GETTABLE  R28 = R28[K40('Rewards2String')]
  0155  SELF      R30 = R18[K42('GetPaidRewards')] (self)
  0156  CALL      R29 = call(R29, -1 args, 1 rets)
  0157  CALL      R28 = call(R28, -1 args, -1 rets)
  0158  CALL      R22 = call(R22, 1 args, -1 rets)
  0159  TESTSET   if R0 then R23   -> -122207
  0160  JMP       (jump)   -> 162
  0161  LOADK     R23 = K43 'FFA000'
  0162  CALL      R21 = call(R21, -1 args, 2 rets)
  0163  CALL      R19 = call(R19, 0 args, -1 rets)
  0164  TFORCALL  tforcall R9
  0165  TFORLOOP  tforloop R11(sBx=-41)   -> 125
  0166  GETTABUP  R9 = _ENV[K18('Log')]
  0167  GETTABLE  R9 = R9[K44('Info')]
  0168  GETTABUP  R10 = _ENV[K14('string')]
  0169  GETTABLE  R10 = R10[K15('format')]
  0170  LOADK     R11 = K45 '[双转盘礼包] 抽奖，当前转盘 %d，当前抽取次数 %d，已抽取记录 %s，总权重：%d，抽取结果：\n%s'
  0171  SELF      R13 = R0[K22('GetCurrentWheelIndex')] (self)
  0172  CALL      R12 = call(R12, 1 args, 1 rets)
  0173  SELF      R14 = R0[K23('GetRewardTakenCount')] (self)
  0174  CALL      R13 = call(R13, 1 args, 1 rets)
  0175  ADD       R13 = K5(1) add R13
  0176  GETTABUP  R14 = _ENV[K9('table')]
  0177  GETTABLE  R14 = R14[K24('concat')]
  0178  SELF      R16 = R0[K46('GetRewardIndexTaken')] (self)
  0179  CALL      R15 = call(R15, 1 args, 1 rets)
  0180  LOADK     R16 = K47 ';'
  0181  CALL      R14 = call(R14, 1 args, 2 rets)
  0182  MOVE      R15 = R0
  0183  GETTABUP  R16 = _ENV[K9('table')]
  0184  GETTABLE  R16 = R16[K24('concat')]
  0185  MOVE      R17 = R0
  0186  LOADK     R18 = K48 '\n'
  0187  CALL      R16 = call(R16, -1 args, 2 rets)
  0188  CALL      R10 = call(R10, -1 args, -1 rets)
  0189  CALL      R9 = call(R9, 0 args, -1 rets)
  0190  SELF      R10 = R0[K49('SetRewardIndexTaken')] (self)
  0191  MOVE      R11 = R0
  0192  CALL      R9 = call(R9, 0 args, 2 rets)
  0193  SELF      R10 = R0[K50('ConsumeActivityToken')] (self)
  0194  SELF      R12 = R0[K51('GetCurrentTokenNeeded')] (self)
  0195  CALL      R11 = call(R11, 1 args, 1 rets)
  0196  GETTABUP  R12 = _ENV[K52('EBIType')]
  0197  GETTABLE  R12 = R12[K53('DoubleWheelSpin')]
  0198  LOADNIL   R13..R13 = nil
  0199  CALL      R9 = call(R9, 0 args, 4 rets)
  0200  SELF      R10 = R0[K54('_LogSpinReward')] (self)
  0201  MOVE      R11 = R0
  0202  CALL      R9 = call(R9, 0 args, 2 rets)
  0203  SELF      R10 = R0[K55('IsCurrentWheelSpinFinished')] (self)
  0204  CALL      R9 = call(R9, 1 args, 1 rets)
  0205  TEST      if not R9 then   -> -130865
  0206  JMP       (jump)   -> 213
  0207  SELF      R10 = R0[K56('LogActivity')] (self)
  0208  GETTABUP  R11 = _ENV[K52('EBIType')]
  0209  GETTABLE  R11 = R11[K57('ActivityRankUp')]
  0210  SELF      R13 = R0[K22('GetCurrentWheelIndex')] (self)
  0211  CALL      R12 = call(R12, -1 args, 1 rets)
  0212  CALL      R9 = call(R9, 0 args, -1 rets)
  0213  SELF      R10 = R0[K58('UpdateLastPopCount')] (self)
  0214  CALL      R9 = call(R9, 0 args, 1 rets)
  0215  MOVE      R9 = R0
  0216  SELF      R11 = R0[K29('HasPaidThisWheel')] (self)
  0217  CALL      R10 = call(R10, 1 args, 1 rets)
  0218  SELF      R12 = R0[K59('IsBestReward')] (self)
  0219  SELF      R14 = R0[K22('GetCurrentWheelIndex')] (self)
  0220  CALL      R13 = call(R13, 1 args, 1 rets)
  0221  MOVE      R14 = R0
  0222  CALL      R11 = call(R11, 1 args, 3 rets)
  0223  MOVE      R12 = R0
  0224  MOVE      R13 = R0
  0225  RETURN    return R9..R8
  0226  RETURN    return R0..R-1
; ---------- proto99 [IsCurrentWheelFinished] ----------
  ; fn ?  line 910-912 np=1 va=0 ms=3 code=13 consts=3 upvals=0 protos=0
  ;   K[0]='IsCurrentWheelSpinFinished'
  ;   K[1]='HasPaidThisWheel'
  ;   K[2]='HasPaidRewardsToClaim'
  ;   locals: self(0-13)
  0000  SELF      R2 = R0[K0('IsCurrentWheelSpinFinished')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  TEST      if not R1 then   -> -131068
  0003  JMP       (jump)   -> 11
  0004  SELF      R2 = R0[K1('HasPaidThisWheel')] (self)
  0005  CALL      R1 = call(R1, 1 args, 1 rets)
  0006  TEST      if not R1 then   -> -131064
  0007  JMP       (jump)   -> 11
  0008  SELF      R2 = R0[K2('HasPaidRewardsToClaim')] (self)
  0009  CALL      R1 = call(R1, 1 args, 1 rets)
  0010  NOT       R1 = not R0
  0011  RETURN    return R1..R0
  0012  RETURN    return R0..R-1
; ---------- proto100 [CanUpgradeWheelNecessary] ----------
  ; fn ?  line 915-917 np=1 va=0 ms=3 code=11 consts=2 upvals=0 protos=0
  ;   K[0]='IsLastWheel'
  ;   K[1]='IsActivityOpen'
  ;   locals: self(0-11)
  0000  SELF      R2 = R0[K0('IsLastWheel')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  TEST      if not R1 then   -> -131067
  0003  JMP       (jump)   -> 7
  0004  SELF      R2 = R0[K1('IsActivityOpen')] (self)
  0005  CALL      R1 = call(R1, 1 args, 1 rets)
  0006  JMP       (jump)   -> 9
  0007  LOADBOOL  R1 = false
  0008  LOADBOOL  R1 = true
  0009  RETURN    return R1..R0
  0010  RETURN    return R0..R-1
; ---------- proto101 [CanUpgradeWheel] ----------
  ; fn ?  line 920-922 np=1 va=0 ms=3 code=8 consts=2 upvals=0 protos=0
  ;   K[0]='IsCurrentWheelFinished'
  ;   K[1]='CanUpgradeWheelNecessary'
  ;   locals: self(0-8)
  0000  SELF      R2 = R0[K0('IsCurrentWheelFinished')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  TEST      if not R1 then   -> -131068
  0003  JMP       (jump)   -> 6
  0004  SELF      R2 = R0[K1('CanUpgradeWheelNecessary')] (self)
  0005  CALL      R1 = call(R1, 1 args, 1 rets)
  0006  RETURN    return R1..R0
  0007  RETURN    return R0..R-1
; ---------- proto102 [TryUpgradeWheel] ----------
  ; fn ?  line 925-932 np=1 va=0 ms=3 code=11 consts=2 upvals=0 protos=0
  ;   K[0]='CanUpgradeWheel'
  ;   K[1]='_OnUpgradeWheel'
  ;   locals: self(0-11)
  0000  SELF      R2 = R0[K0('CanUpgradeWheel')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  TEST      if not R1 then   -> -131067
  0003  JMP       (jump)   -> 6
  0004  LOADBOOL  R1 = false
  0005  RETURN    return R1..R0
  0006  SELF      R2 = R0[K1('_OnUpgradeWheel')] (self)
  0007  CALL      R1 = call(R1, 0 args, 1 rets)
  0008  LOADBOOL  R1 = true
  0009  RETURN    return R1..R0
  0010  RETURN    return R0..R-1
; ---------- proto103 [_OnUpgradeWheel] ----------
  ; fn ?  line 935-951 np=1 va=0 ms=5 code=26 consts=13 upvals=1 protos=0
  ;   K[0]='SetCurrentWheelIndex'
  ;   K[1]='GetCurrentWheelIndex'
  ;   K[2]=1
  ;   K[3]='ClearRewardIndexTaken'
  ;   K[4]='SetHasPaidThisWheel'
  ;   K[5]='UpdateLastPopCount'
  ;   K[6]='CanFinishCurrentWheelSpin'
  ;   K[7]='ClearWindowDailyOpenTime'
  ;   K[8]='LogActivity'
  ;   K[9]='EBIType'
  ;   K[10]='ActivityStarted'
  ;   K[11]=''
  ;   K[12]='_DispatchWheelUpgradedEvent'
  ;   upvals: _ENV
  ;   locals: self(0-26)
  0000  SELF      R2 = R0[K0('SetCurrentWheelIndex')] (self)
  0001  SELF      R4 = R0[K1('GetCurrentWheelIndex')] (self)
  0002  CALL      R3 = call(R3, 1 args, 1 rets)
  0003  ADD       R3 = K2(1) add R3
  0004  CALL      R1 = call(R1, 0 args, 2 rets)
  0005  SELF      R2 = R0[K3('ClearRewardIndexTaken')] (self)
  0006  CALL      R1 = call(R1, 0 args, 1 rets)
  0007  SELF      R2 = R0[K4('SetHasPaidThisWheel')] (self)
  0008  LOADBOOL  R3 = false
  0009  CALL      R1 = call(R1, 0 args, 2 rets)
  0010  SELF      R2 = R0[K5('UpdateLastPopCount')] (self)
  0011  CALL      R1 = call(R1, 0 args, 1 rets)
  0012  SELF      R2 = R0[K6('CanFinishCurrentWheelSpin')] (self)
  0013  CALL      R1 = call(R1, 1 args, 1 rets)
  0014  TEST      if not R1 then   -> -131055
  0015  JMP       (jump)   -> 18
  0016  SELF      R2 = R0[K7('ClearWindowDailyOpenTime')] (self)
  0017  CALL      R1 = call(R1, 0 args, 1 rets)
  0018  SELF      R2 = R0[K8('LogActivity')] (self)
  0019  GETTABUP  R3 = _ENV[K9('EBIType')]
  0020  GETTABLE  R3 = R3[K10('ActivityStarted')]
  0021  LOADK     R4 = K11 ''
  0022  CALL      R1 = call(R1, 0 args, 3 rets)
  0023  SELF      R2 = R0[K12('_DispatchWheelUpgradedEvent')] (self)
  0024  CALL      R1 = call(R1, 0 args, 1 rets)
  0025  RETURN    return R0..R-1
; ---------- proto104 [StartPurchase] ----------
  ; fn ?  line 958-970 np=1 va=0 ms=7 code=22 consts=11 upvals=1 protos=1
  ;   K[0]='HasPaidThisWheel'
  ;   K[1]='Log'
  ;   K[2]='Error'
  ;   K[3]='[双转盘礼包] 已购买本轮，但仍然尝试发起支付！'
  ;   K[4]='GM'
  ;   K[5]='InAppPurchaseModel'
  ;   K[6]='StartPurchase'
  ;   K[7]='GetCurrentWheelConfig'
  ;   K[8]='GetIAPType'
  ;   K[9]='EBIType'
  ;   K[10]='ShopBuy'
  ;   upvals: _ENV
  ;   locals: self(0-22), purchaseCallback(10-22)
  0000  SELF      R2 = R0[K0('HasPaidThisWheel')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  TEST      if not R1 then   -> -131068
  0003  JMP       (jump)   -> 9
  0004  GETTABUP  R1 = _ENV[K1('Log')]
  0005  GETTABLE  R1 = R1[K2('Error')]
  0006  LOADK     R2 = K3 '[双转盘礼包] 已购买本轮，但仍然尝试发起支付！'
  0007  CALL      R1 = call(R1, 0 args, 1 rets)
  0008  RETURN    return R0..R-1
  0009  CLOSURE   R1 = closure proto0
  0010  GETTABUP  R2 = _ENV[K4('GM')]
  0011  GETTABLE  R2 = R2[K5('InAppPurchaseModel')]
  0012  SELF      R3 = R2[K6('StartPurchase')] (self)
  0013  SELF      R5 = R0[K7('GetCurrentWheelConfig')] (self)
  0014  CALL      R4 = call(R4, 1 args, 1 rets)
  0015  SELF      R5 = R4[K8('GetIAPType')] (self)
  0016  CALL      R4 = call(R4, 1 args, 1 rets)
  0017  MOVE      R5 = R0
  0018  GETTABUP  R6 = _ENV[K9('EBIType')]
  0019  GETTABLE  R6 = R6[K10('ShopBuy')]
  0020  CALL      R2 = call(R2, 0 args, 4 rets)
  0021  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 966-968 np=0 va=0 ms=2 code=4 consts=1 upvals=1 protos=0
    ;   K[0]='_OnPurchaseSuccess'
    ;   upvals: self
    0000  GETUPVAL  R0 = self
    0001  SELF      R1 = R0[K0('_OnPurchaseSuccess')] (self)
    0002  CALL      R0 = call(R0, 0 args, 1 rets)
    0003  RETURN    return R0..R-1
; ---------- proto105 [RestoreIapRewards] ----------
  ; fn ?  line 974-982 np=2 va=0 ms=4 code=17 consts=4 upvals=0 protos=0
  ;   K[0]='GetCurrentWheelConfig'
  ;   K[1]='GetIAPType'
  ;   K[2]='HasPaidThisWheel'
  ;   K[3]='_OnPurchaseSuccess'
  ;   locals: self(0-17), eIAPType(0-17)
  0000  SELF      R3 = R0[K0('GetCurrentWheelConfig')] (self)
  0001  CALL      R2 = call(R2, 1 args, 1 rets)
  0002  SELF      R3 = R2[K1('GetIAPType')] (self)
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  EQ        if R0 eq R2   -> -130552
  0005  JMP       (jump)   -> 14
  0006  SELF      R3 = R0[K2('HasPaidThisWheel')] (self)
  0007  CALL      R2 = call(R2, 1 args, 1 rets)
  0008  TEST      if not R2 then   -> -131061
  0009  JMP       (jump)   -> 14
  0010  SELF      R3 = R0[K3('_OnPurchaseSuccess')] (self)
  0011  CALL      R2 = call(R2, 0 args, 1 rets)
  0012  LOADBOOL  R2 = true
  0013  RETURN    return R2..R1
  0014  LOADBOOL  R2 = false
  0015  RETURN    return R2..R1
  0016  RETURN    return R0..R-1
; ---------- proto106 [_OnPurchaseSuccess] ----------
  ; fn ?  line 985-1002 np=1 va=0 ms=5 code=20 consts=7 upvals=0 protos=0
  ;   K[0]='HasConfig'
  ;   K[1]='SetHasPaidThisWheel'
  ;   K[2]='GetRewardTakenCount'
  ;   K[3]=0
  ;   K[4]='SetPaidRewardsToClaimCount'
  ;   K[5]='_LogPurchase'
  ;   K[6]='_DispatchPurchaseSuccessEvent'
  ;   locals: self(0-20), rewardTakenCount(10-20)
  0000  SELF      R2 = R0[K0('HasConfig')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  TEST      if not R1 then   -> -131067
  0003  JMP       (jump)   -> 5
  0004  RETURN    return R0..R-1
  0005  SELF      R2 = R0[K1('SetHasPaidThisWheel')] (self)
  0006  LOADBOOL  R3 = true
  0007  CALL      R1 = call(R1, 0 args, 2 rets)
  0008  SELF      R2 = R0[K2('GetRewardTakenCount')] (self)
  0009  CALL      R1 = call(R1, 1 args, 1 rets)
  0010  LT        if R0 lt R1   -> 1549
  0011  JMP       (jump)   -> 15
  0012  SELF      R3 = R0[K4('SetPaidRewardsToClaimCount')] (self)
  0013  MOVE      R4 = R0
  0014  CALL      R2 = call(R2, 0 args, 2 rets)
  0015  SELF      R3 = R0[K5('_LogPurchase')] (self)
  0016  CALL      R2 = call(R2, 0 args, 1 rets)
  0017  SELF      R3 = R0[K6('_DispatchPurchaseSuccessEvent')] (self)
  0018  CALL      R2 = call(R2, 0 args, 1 rets)
  0019  RETURN    return R0..R-1
; ---------- proto107 [TryClaimRewardsForPurchase] ----------
  ; fn ?  line 1005-1032 np=1 va=0 ms=14 code=47 consts=13 upvals=1 protos=0
  ;   K[0]='HasPaidRewardsToClaim'
  ;   K[1]=1
  ;   K[2]='GetPaidRewardsToClaimCount'
  ;   K[3]='GetRewardIndexTaken'
  ;   K[4]='table'
  ;   K[5]='insert'
  ;   K[6]='sort'
  ;   K[7]='ipairs'
  ;   K[8]='GetCurrentRewardConfig'
  ;   K[9]='Table'
  ;   K[10]='ListAppend'
  ;   K[11]='_ClaimPaidRewards'
  ;   K[12]='SetPaidRewardsToClaimCount'
  ;   upvals: _ENV
  ;   locals: self(0-47), arrRewards(7-47), arrRewardIndex(8-47), (for index)(12-22), (for limit)(12-22), (for step)(12-22), takenIndex(13-21), rewardIndex(16-21), (for generator)(29-42), (for state)(29-42), (for control)(29-42), _(30-40), rewardIndex(30-40), rewardConfig(33-40)
  0000  SELF      R2 = R0[K0('HasPaidRewardsToClaim')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  TEST      if not R1 then   -> -131067
  0003  JMP       (jump)   -> 6
  0004  LOADNIL   R1..R1 = nil
  0005  RETURN    return R1..R0
  0006  NEWTABLE  R1 = {} (0 items)
  0007  NEWTABLE  R2 = {} (0 items)
  0008  LOADK     R3 = K1 1
  0009  SELF      R5 = R0[K2('GetPaidRewardsToClaimCount')] (self)
  0010  CALL      R4 = call(R4, 1 args, 1 rets)
  0011  LOADK     R5 = K1 1
  0012  FORPREP   forprep R3(sBx=8)   -> 21
  0013  SELF      R8 = R0[K3('GetRewardIndexTaken')] (self)
  0014  CALL      R7 = call(R7, 1 args, 1 rets)
  0015  GETTABLE  R7 = R7[R6]
  0016  GETTABUP  R8 = _ENV[K4('table')]
  0017  GETTABLE  R8 = R8[K5('insert')]
  0018  MOVE      R9 = R0
  0019  MOVE      R10 = R0
  0020  CALL      R8 = call(R8, 0 args, 2 rets)
  0021  FORLOOP   forloop R3(sBx=-9)   -> 13
  0022  GETTABUP  R3 = _ENV[K4('table')]
  0023  GETTABLE  R3 = R3[K6('sort')]
  0024  MOVE      R4 = R0
  0025  CALL      R3 = call(R3, 0 args, 1 rets)
  0026  GETTABUP  R3 = _ENV[K7('ipairs')]
  0027  MOVE      R4 = R0
  0028  CALL      R3 = call(R3, 3 args, 1 rets)
  0029  JMP       (jump)   -> 40
  0030  SELF      R9 = R0[K8('GetCurrentRewardConfig')] (self)
  0031  MOVE      R10 = R0
  0032  CALL      R8 = call(R8, 1 args, 2 rets)
  0033  GETTABUP  R9 = _ENV[K9('Table')]
  0034  GETTABLE  R9 = R9[K10('ListAppend')]
  0035  MOVE      R10 = R0
  0036  SELF      R12 = R0[K11('_ClaimPaidRewards')] (self)
  0037  MOVE      R13 = R0
  0038  CALL      R11 = call(R11, -1 args, 2 rets)
  0039  CALL      R9 = call(R9, 0 args, -1 rets)
  0040  TFORCALL  tforcall R3
  0041  TFORLOOP  tforloop R5(sBx=-12)   -> 30
  0042  SELF      R4 = R0[K12('SetPaidRewardsToClaimCount')] (self)
  0043  LOADNIL   R5..R5 = nil
  0044  CALL      R3 = call(R3, 0 args, 2 rets)
  0045  RETURN    return R1..R0
  0046  RETURN    return R0..R-1
; ---------- proto108 [_IsEntryVisible] ----------
  ; fn ?  line 1038-1040 np=1 va=0 ms=3 code=4 consts=1 upvals=0 protos=0
  ;   K[0]='IsActivityOpen'
  ;   locals: self(0-4)
  0000  SELF      R2 = R0[K0('IsActivityOpen')] (self)
  0001  TAILCALL  tailcall(R1, 0)
  0002  RETURN    return R1..R0
  0003  RETURN    return R0..R-1
; ---------- proto109 [ShouldShowRedPoint] ----------
  ; fn ?  line 1043-1045 np=1 va=0 ms=3 code=4 consts=1 upvals=0 protos=0
  ;   K[0]='CanSpin'
  ;   locals: self(0-4)
  0000  SELF      R2 = R0[K0('CanSpin')] (self)
  0001  TAILCALL  tailcall(R1, 0)
  0002  RETURN    return R1..R0
  0003  RETURN    return R0..R-1
; ---------- proto110 [GetMapEntryShowConfig] ----------
  ; fn ?  line 1048-1058 np=1 va=0 ms=4 code=20 consts=11 upvals=1 protos=1
  ;   K[0]='statusChangeEvent'
  ;   K[1]='GetActivityDefinition'
  ;   K[2]='RefreshEntryEvent'
  ;   K[3]='eEntryRootKey'
  ;   K[4]='EEntryRootKey'
  ;   K[5]='Bundle'
  ;   K[6]='entryPrefabName'
  ;   K[7]='EntryPrefabName'
  ;   K[8]='hudKey'
  ;   K[9]='EntryButtonKey'
  ;   K[10]='checkFun'
  ;   upvals: _ENV
  ;   locals: self(0-20)
  0000  NEWTABLE  R1 = {} (0 items)
  0001  SELF      R3 = R0[K1('GetActivityDefinition')] (self)
  0002  CALL      R2 = call(R2, 1 args, 1 rets)
  0003  GETTABLE  R2 = R2[K2('RefreshEntryEvent')]
  0004  SETTABLE  R1[K0('statusChangeEvent')] = R2
  0005  GETTABUP  R2 = _ENV[K4('EEntryRootKey')]
  0006  GETTABLE  R2 = R2[K5('Bundle')]
  0007  SETTABLE  R1[K3('eEntryRootKey')] = R2
  0008  SELF      R3 = R0[K1('GetActivityDefinition')] (self)
  0009  CALL      R2 = call(R2, 1 args, 1 rets)
  0010  GETTABLE  R2 = R2[K7('EntryPrefabName')]
  0011  SETTABLE  R1[K6('entryPrefabName')] = R2
  0012  SELF      R3 = R0[K1('GetActivityDefinition')] (self)
  0013  CALL      R2 = call(R2, 1 args, 1 rets)
  0014  GETTABLE  R2 = R2[K9('EntryButtonKey')]
  0015  SETTABLE  R1[K8('hudKey')] = R2
  0016  CLOSURE   R2 = closure proto0
  0017  SETTABLE  R1[K10('checkFun')] = R2
  0018  RETURN    return R1..R0
  0019  RETURN    return R0..R-1
  ; ---------- proto0 [checkFun] ----------
    ; fn ?  line 1054-1056 np=0 va=0 ms=2 code=5 consts=1 upvals=1 protos=0
    ;   K[0]='_IsEntryVisible'
    ;   upvals: self
    0000  GETUPVAL  R0 = self
    0001  SELF      R1 = R0[K0('_IsEntryVisible')] (self)
    0002  TAILCALL  tailcall(R0, 0)
    0003  RETURN    return R0..R-1
    0004  RETURN    return R0..R-1
; ---------- proto111 [OnEntryClicked] ----------
  ; fn ?  line 1061-1065 np=1 va=0 ms=3 code=7 consts=2 upvals=0 protos=0
  ;   K[0]='IsActivityOpen'
  ;   K[1]='OpenMainWindow'
  ;   locals: self(0-7)
  0000  SELF      R2 = R0[K0('IsActivityOpen')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  TEST      if not R1 then   -> -131068
  0003  JMP       (jump)   -> 6
  0004  SELF      R2 = R0[K1('OpenMainWindow')] (self)
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto112 [GetButtonTarget] ----------
  ; fn ?  line 1070-1121 np=2 va=0 ms=16 code=76 consts=26 upvals=1 protos=3
  ;   K[0]='pairs'
  ;   K[1]='DoubleWheelActivityDefinition'
  ;   K[2]='ActivityTokenPropertyType'
  ;   K[3]='GM'
  ;   K[4]='UIManager'
  ;   K[5]='GetOpenedViewByName'
  ;   K[6]='MainWindowPrefabName'
  ;   K[7]=nil
  ;   K[8]='GetHudButton'
  ;   K[9]='UIUtil'
  ;   K[10]='IsEmptyComponent'
  ;   K[11]='SceneManager'
  ;   K[12]='GetGameMode'
  ;   K[13]='EGameMode'
  ;   K[14]='Board'
  ;   K[15]='CollectEntryPrefabName'
  ;   K[16]='BoardEntryShowArea'
  ;   K[17]='Add'
  ;   K[18]='GetLuaTable'
  ;   K[19]='RegisterFlyEndCallback'
  ;   K[20]='RegisterIconScaleAnimationCallback'
  ;   K[21]='GM'
  ;   K[22]='Main'
  ;   K[23]='TutorialHelper'
  ;   K[24]='GetHudButton'
  ;   K[25]='EntryButtonKey'
  ;   upvals: _ENV
  ;   locals: propertyType(0-76), flyCount(0-76), (for generator)(3-73), (for state)(3-73), (for control)(3-73), activityType(4-71), activityDefinition(4-71), mainWindow(12-70), hudButton(16-23), prefabName(35-56), innerGoSave(36-56), go(36-56), button(48-55)
  0000  GETTABUP  R2 = _ENV[K0('pairs')]
  0001  GETTABUP  R3 = _ENV[K1('DoubleWheelActivityDefinition')]
  0002  CALL      R2 = call(R2, 3 args, 1 rets)
  0003  JMP       (jump)   -> 71
  0004  GETTABLE  R7 = R6[K2('ActivityTokenPropertyType')]
  0005  EQ        if R0 eq R7   -> -131058
  0006  JMP       (jump)   -> 71
  0007  GETTABUP  R7 = _ENV[K3('GM')]
  0008  GETTABLE  R7 = R7[K4('UIManager')]
  0009  SELF      R8 = R7[K5('GetOpenedViewByName')] (self)
  0010  GETTABLE  R9 = R6[K6('MainWindowPrefabName')]
  0011  CALL      R7 = call(R7, 1 args, 2 rets)
  0012  EQ        if R1 eq K7(nil)   -> -127211
  0013  JMP       (jump)   -> 24
  0014  SELF      R9 = R7[K8('GetHudButton')] (self)
  0015  CALL      R8 = call(R8, 1 args, 1 rets)
  0016  GETTABUP  R9 = _ENV[K9('UIUtil')]
  0017  GETTABLE  R9 = R9[K10('IsEmptyComponent')]
  0018  MOVE      R10 = R0
  0019  CALL      R9 = call(R9, 1 args, 1 rets)
  0020  TEST      if not R9 then   -> -131049
  0021  JMP       (jump)   -> 71
  0022  RETURN    return R8..R7
  0023  JMP       (jump)   -> 71
  0024  GETTABUP  R8 = _ENV[K3('GM')]
  0025  GETTABLE  R8 = R8[K11('SceneManager')]
  0026  SELF      R9 = R8[K12('GetGameMode')] (self)
  0027  CALL      R8 = call(R8, 1 args, 1 rets)
  0028  GETTABUP  R9 = _ENV[K13('EGameMode')]
  0029  GETTABLE  R9 = R9[K14('Board')]
  0030  EQ        if R0 eq R9   -> -126935
  0031  JMP       (jump)   -> 57
  0032  EQ        if R1 eq K7(nil)   -> -130263
  0033  JMP       (jump)   -> 71
  0034  GETTABLE  R8 = R6[K15('CollectEntryPrefabName')]
  0035  LOADNIL   R9..R9 = nil
  0036  GETTABUP  R11 = _ENV[K16('BoardEntryShowArea')]
  0037  GETTABLE  R11 = R11[K17('Add')]
  0038  MOVE      R12 = R0
  0039  MOVE      R13 = R0
  0040  CLOSURE   R14 = closure proto0
  0041  LOADBOOL  R15 = true
  0042  CALL      R11 = call(R11, 1 args, 4 rets)
  0043  MOVE      R10 = R0
  0044  EQ        if R1 eq K7(nil)   -> -125643
  0045  JMP       (jump)   -> 71
  0046  SELF      R12 = R10[K18('GetLuaTable')] (self)
  0047  CALL      R11 = call(R11, 1 args, 1 rets)
  0048  SELF      R13 = R11[K19('RegisterFlyEndCallback')] (self)
  0049  CLOSURE   R14 = closure proto1
  0050  CALL      R12 = call(R12, 0 args, 2 rets)
  0051  SELF      R13 = R11[K20('RegisterIconScaleAnimationCallback')] (self)
  0052  CLOSURE   R14 = closure proto2
  0053  CALL      R12 = call(R12, 0 args, 2 rets)
  0054  RETURN    return R11..R10
  0055  JMP       (jump)   -> 71
  0056  JMP       (jump)   -> 71
  0057  GETTABUP  R8 = _ENV[K21('GM')]
  0058  GETTABLE  R8 = R8[K11('SceneManager')]
  0059  SELF      R9 = R8[K12('GetGameMode')] (self)
  0060  CALL      R8 = call(R8, 1 args, 1 rets)
  0061  GETTABUP  R9 = _ENV[K13('EGameMode')]
  0062  GETTABLE  R9 = R9[K22('Main')]
  0063  EQ        if R0 eq R9   -> -126902
  0064  JMP       (jump)   -> 71
  0065  GETTABUP  R8 = _ENV[K23('TutorialHelper')]
  0066  GETTABLE  R8 = R8[K24('GetHudButton')]
  0067  GETTABLE  R9 = R6[K25('EntryButtonKey')]
  0068  TAILCALL  tailcall(R8, 0)
  0069  RETURN    return R8..R7
  0070  JMP       (jump)   -> 71
  0071  TFORCALL  tforcall R2
  0072  TFORLOOP  tforloop R4(sBx=-69)   -> 4
  0073  LOADNIL   R2..R2 = nil
  0074  RETURN    return R2..R1
  0075  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 1086-1096 np=1 va=0 ms=7 code=47 consts=20 upvals=3 protos=0
    ;   K[0]='UIUtil'
    ;   K[1]='IsEmptyComponent'
    ;   K[2]='transform'
    ;   K[3]='position'
    ;   K[4]='y'
    ;   K[5]='TutorialHelper'
    ;   K[6]='GetHudButton'
    ;   K[7]='ESceneViewHudButtonKey'
    ;   K[8]='Map'
    ;   K[9]='GetLuaTable'
    ;   K[10]='Init'
    ;   K[11]='GM'
    ;   K[12]='ActivityManager'
    ;   K[13]='GetModel'
    ;   K[14]='UIManager'
    ;   K[15]='GetOpenedTopView'
    ;   K[16]='GetSortingOrder'
    ;   K[17]=0
    ;   K[18]='SetSortingOrder'
    ;   K[19]=1
    ;   upvals: _ENV, activityType, go
    ;   locals: innerGo(0-47), entry(19-46), topView(36-46), sortingOrder(43-46)
    0000  GETTABUP  R1 = _ENV[K0('UIUtil')]
    0001  GETTABLE  R1 = R1[K1('IsEmptyComponent')]
    0002  MOVE      R2 = R0
    0003  CALL      R1 = call(R1, 1 args, 1 rets)
    0004  TEST      if not R1 then   -> -131065
    0005  JMP       (jump)   -> 46
    0006  GETTABLE  R1 = R0[K2('transform')]
    0007  GETTABLE  R1 = R1[K3('position')]
    0008  GETTABUP  R2 = _ENV[K5('TutorialHelper')]
    0009  GETTABLE  R2 = R2[K6('GetHudButton')]
    0010  GETTABUP  R3 = _ENV[K7('ESceneViewHudButtonKey')]
    0011  GETTABLE  R3 = R3[K8('Map')]
    0012  CALL      R2 = call(R2, 1 args, 1 rets)
    0013  GETTABLE  R2 = R2[K2('transform')]
    0014  GETTABLE  R2 = R2[K3('position')]
    0015  GETTABLE  R2 = R2[K4('y')]
    0016  SETTABLE  R1[K4('y')] = R2
    0017  SELF      R2 = R0[K9('GetLuaTable')] (self)
    0018  CALL      R1 = call(R1, 1 args, 1 rets)
    0019  SELF      R3 = R1[K10('Init')] (self)
    0020  GETTABUP  R4 = _ENV[K11('GM')]
    0021  GETTABLE  R4 = R4[K12('ActivityManager')]
    0022  SELF      R5 = R4[K13('GetModel')] (self)
    0023  GETUPVAL  R6 = _ENV
    0024  CALL      R4 = call(R4, 1 args, 2 rets)
    0025  GETUPVAL  R5 = _ENV
    0026  TEST      if not R5 then   -> -131044
    0027  JMP       (jump)   -> 31
    0028  GETUPVAL  R5 = _ENV
    0029  SELF      R6 = R5[K9('GetLuaTable')] (self)
    0030  CALL      R5 = call(R5, 1 args, 1 rets)
    0031  CALL      R2 = call(R2, 0 args, 3 rets)
    0032  GETTABUP  R2 = _ENV[K11('GM')]
    0033  GETTABLE  R2 = R2[K14('UIManager')]
    0034  SELF      R3 = R2[K15('GetOpenedTopView')] (self)
    0035  CALL      R2 = call(R2, 1 args, 1 rets)
    0036  TEST      if not R2 then   -> -131034
    0037  JMP       (jump)   -> 42
    0038  SELF      R4 = R2[K16('GetSortingOrder')] (self)
    0039  CALL      R3 = call(R3, 1 args, 1 rets)
    0040  TEST      if not R3 then   -> -131029
    0041  JMP       (jump)   -> 43
    0042  LOADK     R3 = K17 0
    0043  SELF      R5 = R1[K18('SetSortingOrder')] (self)
    0044  ADD       R6 = K19(1) add R3
    0045  CALL      R4 = call(R4, 0 args, 2 rets)
    0046  RETURN    return R0..R-1
  ; ---------- proto1 [] ----------
    ; fn ?  line 1101-1105 np=0 va=0 ms=4 code=6 consts=3 upvals=2 protos=1
    ;   K[0]='DelayExecuteFunc'
    ;   K[1]=1
    ;   K[2]='self'
    ;   upvals: _ENV, prefabName
    0000  GETTABUP  R0 = _ENV[K0('DelayExecuteFunc')]
    0001  CLOSURE   R1 = closure proto0
    0002  LOADK     R2 = K1 1
    0003  GETTABUP  R3 = _ENV[K2('self')]
    0004  CALL      R0 = call(R0, 0 args, 3 rets)
    0005  RETURN    return R0..R-1
    ; ---------- proto0 [] ----------
      ; fn ?  line 1102-1104 np=0 va=0 ms=2 code=5 consts=2 upvals=2 protos=0
      ;   K[0]='BoardEntryShowArea'
      ;   K[1]='Finish'
      ;   upvals: _ENV, prefabName
      0000  GETTABUP  R0 = _ENV[K0('BoardEntryShowArea')]
      0001  GETTABLE  R0 = R0[K1('Finish')]
      0002  GETUPVAL  R1 = _ENV
      0003  CALL      R0 = call(R0, 0 args, 1 rets)
      0004  RETURN    return R0..R-1
  ; ---------- proto2 [] ----------
    ; fn ?  line 1106-1111 np=1 va=0 ms=4 code=14 consts=9 upvals=1 protos=0
    ;   K[0]='GM'
    ;   K[1]='AudioModel'
    ;   K[2]='PlayEffectWithFrameLimit'
    ;   K[3]='AudioFileConfigName'
    ;   K[4]='SfxRewardCrush'
    ;   K[5]='PlatformInterface'
    ;   K[6]='Vibrate'
    ;   K[7]='EVibrationType'
    ;   K[8]='Light'
    ;   upvals: _ENV
    ;   locals: needEffect(0-14)
    0000  TEST      if not R0 then   -> -131070
    0001  JMP       (jump)   -> 13
    0002  GETTABUP  R1 = _ENV[K0('GM')]
    0003  GETTABLE  R1 = R1[K1('AudioModel')]
    0004  SELF      R2 = R1[K2('PlayEffectWithFrameLimit')] (self)
    0005  GETTABUP  R3 = _ENV[K3('AudioFileConfigName')]
    0006  GETTABLE  R3 = R3[K4('SfxRewardCrush')]
    0007  CALL      R1 = call(R1, 0 args, 2 rets)
    0008  GETTABUP  R1 = _ENV[K5('PlatformInterface')]
    0009  GETTABLE  R1 = R1[K6('Vibrate')]
    0010  GETTABUP  R2 = _ENV[K7('EVibrationType')]
    0011  GETTABLE  R2 = R2[K8('Light')]
    0012  CALL      R1 = call(R1, 0 args, 1 rets)
    0013  RETURN    return R0..R-1
; ---------- proto113 [TestUpgrade] ----------
  ; fn ?  line 1127-1139 np=1 va=0 ms=3 code=17 consts=4 upvals=1 protos=0
  ;   K[0]='GameConfig'
  ;   K[1]='IsTestMode'
  ;   K[2]='IsLastWheel'
  ;   K[3]='_OnUpgradeWheel'
  ;   upvals: _ENV
  ;   locals: self(0-17)
  0000  GETTABUP  R1 = _ENV[K0('GameConfig')]
  0001  GETTABLE  R1 = R1[K1('IsTestMode')]
  0002  CALL      R1 = call(R1, 1 args, 0 rets)
  0003  TEST      if not R1 then   -> -131066
  0004  JMP       (jump)   -> 6
  0005  RETURN    return R0..R-1
  0006  SELF      R2 = R0[K2('IsLastWheel')] (self)
  0007  CALL      R1 = call(R1, 1 args, 1 rets)
  0008  TEST      if not R1 then   -> -131062
  0009  JMP       (jump)   -> 12
  0010  LOADBOOL  R1 = false
  0011  RETURN    return R1..R0
  0012  SELF      R2 = R0[K3('_OnUpgradeWheel')] (self)
  0013  CALL      R1 = call(R1, 0 args, 1 rets)
  0014  LOADBOOL  R1 = true
  0015  RETURN    return R1..R0
  0016  RETURN    return R0..R-1
; ---------- proto114 [_LogSpinReward] ----------
  ; fn ?  line 1146-1157 np=2 va=0 ms=11 code=83 consts=25 upvals=1 protos=0
  ;   K[0]='table'
  ;   K[1]='insert'
  ;   K[2]='string'
  ;   K[3]='format'
  ;   K[4]='isPaid:%d'
  ;   K[5]='HasPaidThisWheel'
  ;   K[6]=1
  ;   K[7]=0
  ;   K[8]='free:%s'
  ;   K[9]='ConfigUtil'
  ;   K[10]='Rewards2String'
  ;   K[11]='GetRewards'
  ;   K[12]='paid:%s'
  ;   K[13]='GetPaidRewards'
  ;   K[14]='lv:%d'
  ;   K[15]='GetCurrentWheelIndex'
  ;   K[16]='GetPaidRewardsForPurchase'
  ;   K[17]='acum:%s'
  ;   K[18]='GM'
  ;   K[19]='BIManager'
  ;   K[20]='LogAction'
  ;   K[21]='EBIType'
  ;   K[22]='DoubleWheelSpinReward'
  ;   K[23]='concat'
  ;   K[24]=';'
  ;   upvals: _ENV
  ;   locals: self(0-83), rewardConfig(0-83), strAction(1-83), paidRewardsInstant(59-71), _(59-71)
  0000  NEWTABLE  R2 = {} (0 items)
  0001  GETTABUP  R3 = _ENV[K0('table')]
  0002  GETTABLE  R3 = R3[K1('insert')]
  0003  MOVE      R4 = R0
  0004  GETTABUP  R5 = _ENV[K2('string')]
  0005  GETTABLE  R5 = R5[K3('format')]
  0006  LOADK     R6 = K4 'isPaid:%d'
  0007  SELF      R8 = R0[K5('HasPaidThisWheel')] (self)
  0008  CALL      R7 = call(R7, 1 args, 1 rets)
  0009  TEST      if not R7 then   -> -131061
  0010  JMP       (jump)   -> 14
  0011  LOADK     R7 = K6 1
  0012  TEST      if not R7 then   -> -131057
  0013  JMP       (jump)   -> 15
  0014  LOADK     R7 = K7 0
  0015  CALL      R5 = call(R5, -1 args, 2 rets)
  0016  CALL      R3 = call(R3, 0 args, -1 rets)
  0017  GETTABUP  R3 = _ENV[K0('table')]
  0018  GETTABLE  R3 = R3[K1('insert')]
  0019  MOVE      R4 = R0
  0020  GETTABUP  R5 = _ENV[K2('string')]
  0021  GETTABLE  R5 = R5[K3('format')]
  0022  LOADK     R6 = K8 'free:%s'
  0023  GETTABUP  R7 = _ENV[K9('ConfigUtil')]
  0024  GETTABLE  R7 = R7[K10('Rewards2String')]
  0025  SELF      R9 = R1[K11('GetRewards')] (self)
  0026  CALL      R8 = call(R8, -1 args, 1 rets)
  0027  CALL      R7 = call(R7, -1 args, -1 rets)
  0028  CALL      R5 = call(R5, -1 args, -1 rets)
  0029  CALL      R3 = call(R3, 0 args, -1 rets)
  0030  GETTABUP  R3 = _ENV[K0('table')]
  0031  GETTABLE  R3 = R3[K1('insert')]
  0032  MOVE      R4 = R0
  0033  GETTABUP  R5 = _ENV[K2('string')]
  0034  GETTABLE  R5 = R5[K3('format')]
  0035  LOADK     R6 = K12 'paid:%s'
  0036  GETTABUP  R7 = _ENV[K9('ConfigUtil')]
  0037  GETTABLE  R7 = R7[K10('Rewards2String')]
  0038  SELF      R9 = R1[K13('GetPaidRewards')] (self)
  0039  CALL      R8 = call(R8, -1 args, 1 rets)
  0040  CALL      R7 = call(R7, -1 args, -1 rets)
  0041  CALL      R5 = call(R5, -1 args, -1 rets)
  0042  CALL      R3 = call(R3, 0 args, -1 rets)
  0043  GETTABUP  R3 = _ENV[K0('table')]
  0044  GETTABLE  R3 = R3[K1('insert')]
  0045  MOVE      R4 = R0
  0046  GETTABUP  R5 = _ENV[K2('string')]
  0047  GETTABLE  R5 = R5[K3('format')]
  0048  LOADK     R6 = K14 'lv:%d'
  0049  SELF      R8 = R0[K15('GetCurrentWheelIndex')] (self)
  0050  CALL      R7 = call(R7, -1 args, 1 rets)
  0051  CALL      R5 = call(R5, -1 args, -1 rets)
  0052  CALL      R3 = call(R3, 0 args, -1 rets)
  0053  SELF      R4 = R0[K5('HasPaidThisWheel')] (self)
  0054  CALL      R3 = call(R3, 1 args, 1 rets)
  0055  TEST      if not R3 then   -> -131014
  0056  JMP       (jump)   -> 71
  0057  SELF      R4 = R0[K16('GetPaidRewardsForPurchase')] (self)
  0058  CALL      R3 = call(R3, 2 args, 1 rets)
  0059  GETTABUP  R5 = _ENV[K0('table')]
  0060  GETTABLE  R5 = R5[K1('insert')]
  0061  MOVE      R6 = R0
  0062  GETTABUP  R7 = _ENV[K2('string')]
  0063  GETTABLE  R7 = R7[K3('format')]
  0064  LOADK     R8 = K17 'acum:%s'
  0065  GETTABUP  R9 = _ENV[K9('ConfigUtil')]
  0066  GETTABLE  R9 = R9[K10('Rewards2String')]
  0067  MOVE      R10 = R0
  0068  CALL      R9 = call(R9, -1 args, 1 rets)
  0069  CALL      R7 = call(R7, -1 args, -1 rets)
  0070  CALL      R5 = call(R5, 0 args, -1 rets)
  0071  GETTABUP  R3 = _ENV[K18('GM')]
  0072  GETTABLE  R3 = R3[K19('BIManager')]
  0073  SELF      R4 = R3[K20('LogAction')] (self)
  0074  GETTABUP  R5 = _ENV[K21('EBIType')]
  0075  GETTABLE  R5 = R5[K22('DoubleWheelSpinReward')]
  0076  GETTABUP  R6 = _ENV[K0('table')]
  0077  GETTABLE  R6 = R6[K23('concat')]
  0078  MOVE      R7 = R0
  0079  LOADK     R8 = K24 ';'
  0080  CALL      R6 = call(R6, -1 args, 2 rets)
  0081  CALL      R3 = call(R3, 0 args, -1 rets)
  0082  RETURN    return R0..R-1
; ---------- proto115 [_LogPurchase] ----------
  ; fn ?  line 1159-1165 np=1 va=0 ms=10 code=37 consts=17 upvals=1 protos=0
  ;   K[0]='GetPaidRewardsForPurchase'
  ;   K[1]='table'
  ;   K[2]='insert'
  ;   K[3]='string'
  ;   K[4]='format'
  ;   K[5]='lv:%d'
  ;   K[6]='GetCurrentWheelIndex'
  ;   K[7]='acum:%s'
  ;   K[8]='ConfigUtil'
  ;   K[9]='Rewards2String'
  ;   K[10]='GM'
  ;   K[11]='BIManager'
  ;   K[12]='LogAction'
  ;   K[13]='EBIType'
  ;   K[14]='DoubleWheelPurchaseReward'
  ;   K[15]='concat'
  ;   K[16]=';'
  ;   upvals: _ENV
  ;   locals: self(0-37), paidRewardsInstant(2-37), _(2-37), strAction(3-37)
  0000  SELF      R2 = R0[K0('GetPaidRewardsForPurchase')] (self)
  0001  CALL      R1 = call(R1, 2 args, 1 rets)
  0002  NEWTABLE  R3 = {} (0 items)
  0003  GETTABUP  R4 = _ENV[K1('table')]
  0004  GETTABLE  R4 = R4[K2('insert')]
  0005  MOVE      R5 = R0
  0006  GETTABUP  R6 = _ENV[K3('string')]
  0007  GETTABLE  R6 = R6[K4('format')]
  0008  LOADK     R7 = K5 'lv:%d'
  0009  SELF      R9 = R0[K6('GetCurrentWheelIndex')] (self)
  0010  CALL      R8 = call(R8, -1 args, 1 rets)
  0011  CALL      R6 = call(R6, -1 args, -1 rets)
  0012  CALL      R4 = call(R4, 0 args, -1 rets)
  0013  GETTABUP  R4 = _ENV[K1('table')]
  0014  GETTABLE  R4 = R4[K2('insert')]
  0015  MOVE      R5 = R0
  0016  GETTABUP  R6 = _ENV[K3('string')]
  0017  GETTABLE  R6 = R6[K4('format')]
  0018  LOADK     R7 = K7 'acum:%s'
  0019  GETTABUP  R8 = _ENV[K8('ConfigUtil')]
  0020  GETTABLE  R8 = R8[K9('Rewards2String')]
  0021  MOVE      R9 = R0
  0022  CALL      R8 = call(R8, -1 args, 1 rets)
  0023  CALL      R6 = call(R6, -1 args, -1 rets)
  0024  CALL      R4 = call(R4, 0 args, -1 rets)
  0025  GETTABUP  R4 = _ENV[K10('GM')]
  0026  GETTABLE  R4 = R4[K11('BIManager')]
  0027  SELF      R5 = R4[K12('LogAction')] (self)
  0028  GETTABUP  R6 = _ENV[K13('EBIType')]
  0029  GETTABLE  R6 = R6[K14('DoubleWheelPurchaseReward')]
  0030  GETTABUP  R7 = _ENV[K1('table')]
  0031  GETTABLE  R7 = R7[K15('concat')]
  0032  MOVE      R8 = R0
  0033  LOADK     R9 = K16 ';'
  0034  CALL      R7 = call(R7, -1 args, 2 rets)
  0035  CALL      R4 = call(R4, 0 args, -1 rets)
  0036  RETURN    return R0..R-1
