# FrameDecoActivity_Model_FrameDecoActivityModel_1725.luac
; fn @FrameDecoActivityModel.lua  line 0-0 np=0 va=1 ms=6 code=272 consts=109 upvals=1 protos=83
;   K[0]='FrameDecoActivityModel'
;   K[1]='setmetatable'
;   K[2]='BaseActivityModel'
;   K[3]='__index'
;   K[4]='HasClaimedInitToken'
;   K[5]='i_tkn'
;   K[6]='TokenCount'
;   K[7]='tkn'
;   K[8]='CurrentStage'
;   K[9]='stg'
;   K[10]='RewardTaken'
;   K[11]='rwd_%d_%d'
;   K[12]='StageRewardTaken'
;   K[13]='stg_rwd_%d'
;   K[14]='DecoSlotBuilt'
;   K[15]='dsb_%s'
;   K[16]='DecoSlotCanExchange'
;   K[17]='dsce_%s'
;   K[18]='StageConfigKey'
;   K[19]='frameDecoReward'
;   K[20]='InitToken'
;   K[21]='frameDecoInitToken'
;   K[22]='Init'
;   K[23]='Destroy'
;   K[24]='GetActivityDefinition'
;   K[25]='_CalculateState'
;   K[26]='_OnStateChanged'
;   K[27]='IsActivityOpen'
;   K[28]='GetResourceLabels'
;   K[29]='GetActiveModel'
;   K[30]='_GetLogPrefix'
;   K[31]='_LoadOtherServerConfig'
;   K[32]='FrameDecoActivityModel'
;   K[33]='_CheckConfigValid'
;   K[34]='FrameDecoActivityModel'
;   K[35]='GetStageRewardConfig'
;   K[36]='GetTotalStage'
;   K[37]='GetAllStageRewardConfig'
;   K[38]='GetStageRedeemConfig'
;   K[39]='GetStageRedeemCount'
;   K[40]='GetInitToken'
;   K[41]='DB_VALUE_KEY'
;   K[42]=1
;   K[43]='_DBTableGetValue'
;   K[44]='_DBTableGetNumber'
;   K[45]='_DBTableSet'
;   K[46]='_DBTableSetTable'
;   K[47]='_DBTableRemove'
;   K[48]='HasClaimedInitToken'
;   K[49]='SetHasClaimedInitToken'
;   K[50]='GetTokenCount'
;   K[51]='SetTokenCount'
;   K[52]='GetCurrentStage'
;   K[53]='SetCurrentStage'
;   K[54]='_GetRewardTakenKey'
;   K[55]='IsRewardTaken'
;   K[56]='SetRewardTaken'
;   K[57]='_GetStageRewardTakenKey'
;   K[58]='IsStageRewardTaken'
;   K[59]='SetStageRewardTaken'
;   K[60]='_GetDecoSlotBuiltKey'
;   K[61]='IsDecoSlotBuilt'
;   K[62]='SetDecoSlotCanExchange'
;   K[63]='_GetDecoSlotCanExchangeKey'
;   K[64]='IsDecoSlotCanExchange'
;   K[65]='SetDecoSlotBuilt'
;   K[66]='_GetDailyPopupTime'
;   K[67]='SetDailyPopupTime'
;   K[68]='_DispatchStateChangedEvent'
;   K[69]='_DispatchRefreshEntryEvent'
;   K[70]='_DispatchScoreChangedEvent'
;   K[71]='_DispatchStageUnlockedEvent'
;   K[72]='_DispatchRedeemDecoSlotEvent'
;   K[73]='_DispatchRedeemRewardEvent'
;   K[74]='_DispatchStageRewardEvent'
;   K[75]='DispatchPlayAnimationEndEvent'
;   K[76]='_DispatchUpdateRedPointEvent'
;   K[77]='_ChangeTokenCount'
;   K[78]='GetRedeemDecoSlotViewData'
;   K[79]='ClearRedeemDecoSlotData'
;   K[80]='GetRedeemRewardViewData'
;   K[81]='ClearRedeemRewardViewData'
;   K[82]='GetStageRewardViewData'
;   K[83]='ClearStageRewardViewData'
;   K[84]='CanAddScore'
;   K[85]='AcquireActivityToken'
;   K[86]='ConsumeActivityToken'
;   K[87]='GetActivityTokenNumber'
;   K[88]='IsTokenReward'
;   K[89]='GetButtonTarget'
;   K[90]='CanClaimRewardsInStage'
;   K[91]='HasClaimedAllRewardsInStage'
;   K[92]='HasClaimedAllRewards'
;   K[93]='RedeemReward'
;   K[94]='AcquireStageReward'
;   K[95]='RefreshDecoSlotCanExchangeState'
;   K[96]='GetRewardFrameId'
;   K[97]='OnEntryClicked'
;   K[98]='_OpenWindow'
;   K[99]='OpenStartWindow'
;   K[100]='OpenMainWindow'
;   K[101]='CanPopupDailyWindow'
;   K[102]='GetMapEntryShowConfig'
;   K[103]='GetBoardEntryShowConfig'
;   K[104]='GetRewardProgressInfo'
;   K[105]='GetStageTotalRedeemCount'
;   K[106]='_LogStageFinished'
;   K[107]='_LogTakeFrameReward'
;   K[108]='_LogTakeAllReward'
;   upvals: _ENV
;   locals: DBKey(16-272), GeneralActivityConfKey(20-272), DB_VALUE_KEY(72-272), TRUE_VALUE(73-272)
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('FrameDecoActivityModel')] = R0
0005  GETTABUP  R0 = _ENV[K0('FrameDecoActivityModel')]
0006  GETTABUP  R1 = _ENV[K0('FrameDecoActivityModel')]
0007  SETTABLE  R0[K3('__index')] = R1
0008  NEWTABLE  R0 = {} (0 items)
0009  SETTABLE  R0[K4('HasClaimedInitToken')] = K5('i_tkn')
0010  SETTABLE  R0[K6('TokenCount')] = K7('tkn')
0011  SETTABLE  R0[K8('CurrentStage')] = K9('stg')
0012  SETTABLE  R0[K10('RewardTaken')] = K11('rwd_%d_%d')
0013  SETTABLE  R0[K12('StageRewardTaken')] = K13('stg_rwd_%d')
0014  SETTABLE  R0[K14('DecoSlotBuilt')] = K15('dsb_%s')
0015  SETTABLE  R0[K16('DecoSlotCanExchange')] = K17('dsce_%s')
0016  GETTABUP  R1 = _ENV[K0('FrameDecoActivityModel')]
0017  SETTABLE  R1[K18('StageConfigKey')] = K19('frameDecoReward')
0018  NEWTABLE  R1 = {} (0 items)
0019  SETTABLE  R1[K20('InitToken')] = K21('frameDecoInitToken')
0020  GETTABUP  R2 = _ENV[K0('FrameDecoActivityModel')]
0021  CLOSURE   R3 = closure proto0
0022  SETTABLE  R2[K22('Init')] = R3
0023  GETTABUP  R2 = _ENV[K0('FrameDecoActivityModel')]
0024  CLOSURE   R3 = closure proto1
0025  SETTABLE  R2[K23('Destroy')] = R3
0026  GETTABUP  R2 = _ENV[K0('FrameDecoActivityModel')]
0027  CLOSURE   R3 = closure proto2
0028  SETTABLE  R2[K24('GetActivityDefinition')] = R3
0029  GETTABUP  R2 = _ENV[K0('FrameDecoActivityModel')]
0030  CLOSURE   R3 = closure proto3
0031  SETTABLE  R2[K25('_CalculateState')] = R3
0032  GETTABUP  R2 = _ENV[K0('FrameDecoActivityModel')]
0033  CLOSURE   R3 = closure proto4
0034  SETTABLE  R2[K26('_OnStateChanged')] = R3
0035  GETTABUP  R2 = _ENV[K0('FrameDecoActivityModel')]
0036  CLOSURE   R3 = closure proto5
0037  SETTABLE  R2[K27('IsActivityOpen')] = R3
0038  GETTABUP  R2 = _ENV[K0('FrameDecoActivityModel')]
0039  CLOSURE   R3 = closure proto6
0040  SETTABLE  R2[K28('GetResourceLabels')] = R3
0041  GETTABUP  R2 = _ENV[K0('FrameDecoActivityModel')]
0042  CLOSURE   R3 = closure proto7
0043  SETTABLE  R2[K29('GetActiveModel')] = R3
0044  GETTABUP  R2 = _ENV[K0('FrameDecoActivityModel')]
0045  CLOSURE   R3 = closure proto8
0046  SETTABLE  R2[K30('_GetLogPrefix')] = R3
0047  GETTABUP  R2 = _ENV[K0('FrameDecoActivityModel')]
0048  CLOSURE   R3 = closure proto9
0049  SETTABLE  R2[K31('_LoadOtherServerConfig')] = R3
0050  GETTABUP  R2 = _ENV[K32('FrameDecoActivityModel')]
0051  CLOSURE   R3 = closure proto10
0052  SETTABLE  R2[K33('_CheckConfigValid')] = R3
0053  GETTABUP  R2 = _ENV[K34('FrameDecoActivityModel')]
0054  CLOSURE   R3 = closure proto11
0055  SETTABLE  R2[K35('GetStageRewardConfig')] = R3
0056  GETTABUP  R2 = _ENV[K34('FrameDecoActivityModel')]
0057  CLOSURE   R3 = closure proto12
0058  SETTABLE  R2[K36('GetTotalStage')] = R3
0059  GETTABUP  R2 = _ENV[K34('FrameDecoActivityModel')]
0060  CLOSURE   R3 = closure proto13
0061  SETTABLE  R2[K37('GetAllStageRewardConfig')] = R3
0062  GETTABUP  R2 = _ENV[K34('FrameDecoActivityModel')]
0063  CLOSURE   R3 = closure proto14
0064  SETTABLE  R2[K38('GetStageRedeemConfig')] = R3
0065  GETTABUP  R2 = _ENV[K34('FrameDecoActivityModel')]
0066  CLOSURE   R3 = closure proto15
0067  SETTABLE  R2[K39('GetStageRedeemCount')] = R3
0068  GETTABUP  R2 = _ENV[K34('FrameDecoActivityModel')]
0069  CLOSURE   R3 = closure proto16
0070  SETTABLE  R2[K40('GetInitToken')] = R3
0071  GETTABUP  R2 = _ENV[K41('DB_VALUE_KEY')]
0072  LOADK     R3 = K42 1
0073  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0074  CLOSURE   R5 = closure proto17
0075  SETTABLE  R4[K43('_DBTableGetValue')] = R5
0076  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0077  CLOSURE   R5 = closure proto18
0078  SETTABLE  R4[K44('_DBTableGetNumber')] = R5
0079  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0080  CLOSURE   R5 = closure proto19
0081  SETTABLE  R4[K45('_DBTableSet')] = R5
0082  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0083  CLOSURE   R5 = closure proto20
0084  SETTABLE  R4[K46('_DBTableSetTable')] = R5
0085  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0086  CLOSURE   R5 = closure proto21
0087  SETTABLE  R4[K47('_DBTableRemove')] = R5
0088  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0089  CLOSURE   R5 = closure proto22
0090  SETTABLE  R4[K48('HasClaimedInitToken')] = R5
0091  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0092  CLOSURE   R5 = closure proto23
0093  SETTABLE  R4[K49('SetHasClaimedInitToken')] = R5
0094  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0095  CLOSURE   R5 = closure proto24
0096  SETTABLE  R4[K50('GetTokenCount')] = R5
0097  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0098  CLOSURE   R5 = closure proto25
0099  SETTABLE  R4[K51('SetTokenCount')] = R5
0100  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0101  CLOSURE   R5 = closure proto26
0102  SETTABLE  R4[K52('GetCurrentStage')] = R5
0103  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0104  CLOSURE   R5 = closure proto27
0105  SETTABLE  R4[K53('SetCurrentStage')] = R5
0106  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0107  CLOSURE   R5 = closure proto28
0108  SETTABLE  R4[K54('_GetRewardTakenKey')] = R5
0109  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0110  CLOSURE   R5 = closure proto29
0111  SETTABLE  R4[K55('IsRewardTaken')] = R5
0112  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0113  CLOSURE   R5 = closure proto30
0114  SETTABLE  R4[K56('SetRewardTaken')] = R5
0115  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0116  CLOSURE   R5 = closure proto31
0117  SETTABLE  R4[K57('_GetStageRewardTakenKey')] = R5
0118  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0119  CLOSURE   R5 = closure proto32
0120  SETTABLE  R4[K58('IsStageRewardTaken')] = R5
0121  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0122  CLOSURE   R5 = closure proto33
0123  SETTABLE  R4[K59('SetStageRewardTaken')] = R5
0124  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0125  CLOSURE   R5 = closure proto34
0126  SETTABLE  R4[K60('_GetDecoSlotBuiltKey')] = R5
0127  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0128  CLOSURE   R5 = closure proto35
0129  SETTABLE  R4[K61('IsDecoSlotBuilt')] = R5
0130  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0131  CLOSURE   R5 = closure proto36
0132  SETTABLE  R4[K62('SetDecoSlotCanExchange')] = R5
0133  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0134  CLOSURE   R5 = closure proto37
0135  SETTABLE  R4[K63('_GetDecoSlotCanExchangeKey')] = R5
0136  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0137  CLOSURE   R5 = closure proto38
0138  SETTABLE  R4[K64('IsDecoSlotCanExchange')] = R5
0139  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0140  CLOSURE   R5 = closure proto39
0141  SETTABLE  R4[K65('SetDecoSlotBuilt')] = R5
0142  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0143  CLOSURE   R5 = closure proto40
0144  SETTABLE  R4[K66('_GetDailyPopupTime')] = R5
0145  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0146  CLOSURE   R5 = closure proto41
0147  SETTABLE  R4[K67('SetDailyPopupTime')] = R5
0148  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0149  CLOSURE   R5 = closure proto42
0150  SETTABLE  R4[K68('_DispatchStateChangedEvent')] = R5
0151  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0152  CLOSURE   R5 = closure proto43
0153  SETTABLE  R4[K69('_DispatchRefreshEntryEvent')] = R5
0154  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0155  CLOSURE   R5 = closure proto44
0156  SETTABLE  R4[K70('_DispatchScoreChangedEvent')] = R5
0157  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0158  CLOSURE   R5 = closure proto45
0159  SETTABLE  R4[K71('_DispatchStageUnlockedEvent')] = R5
0160  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0161  CLOSURE   R5 = closure proto46
0162  SETTABLE  R4[K72('_DispatchRedeemDecoSlotEvent')] = R5
0163  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0164  CLOSURE   R5 = closure proto47
0165  SETTABLE  R4[K73('_DispatchRedeemRewardEvent')] = R5
0166  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0167  CLOSURE   R5 = closure proto48
0168  SETTABLE  R4[K74('_DispatchStageRewardEvent')] = R5
0169  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0170  CLOSURE   R5 = closure proto49
0171  SETTABLE  R4[K75('DispatchPlayAnimationEndEvent')] = R5
0172  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0173  CLOSURE   R5 = closure proto50
0174  SETTABLE  R4[K76('_DispatchUpdateRedPointEvent')] = R5
0175  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0176  CLOSURE   R5 = closure proto51
0177  SETTABLE  R4[K77('_ChangeTokenCount')] = R5
0178  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0179  CLOSURE   R5 = closure proto52
0180  SETTABLE  R4[K78('GetRedeemDecoSlotViewData')] = R5
0181  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0182  CLOSURE   R5 = closure proto53
0183  SETTABLE  R4[K79('ClearRedeemDecoSlotData')] = R5
0184  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0185  CLOSURE   R5 = closure proto54
0186  SETTABLE  R4[K80('GetRedeemRewardViewData')] = R5
0187  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0188  CLOSURE   R5 = closure proto55
0189  SETTABLE  R4[K81('ClearRedeemRewardViewData')] = R5
0190  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0191  CLOSURE   R5 = closure proto56
0192  SETTABLE  R4[K82('GetStageRewardViewData')] = R5
0193  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0194  CLOSURE   R5 = closure proto57
0195  SETTABLE  R4[K83('ClearStageRewardViewData')] = R5
0196  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0197  CLOSURE   R5 = closure proto58
0198  SETTABLE  R4[K84('CanAddScore')] = R5
0199  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0200  CLOSURE   R5 = closure proto59
0201  SETTABLE  R4[K85('AcquireActivityToken')] = R5
0202  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0203  CLOSURE   R5 = closure proto60
0204  SETTABLE  R4[K86('ConsumeActivityToken')] = R5
0205  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0206  CLOSURE   R5 = closure proto61
0207  SETTABLE  R4[K87('GetActivityTokenNumber')] = R5
0208  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0209  CLOSURE   R5 = closure proto62
0210  SETTABLE  R4[K88('IsTokenReward')] = R5
0211  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0212  CLOSURE   R5 = closure proto63
0213  SETTABLE  R4[K89('GetButtonTarget')] = R5
0214  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0215  CLOSURE   R5 = closure proto64
0216  SETTABLE  R4[K90('CanClaimRewardsInStage')] = R5
0217  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0218  CLOSURE   R5 = closure proto65
0219  SETTABLE  R4[K91('HasClaimedAllRewardsInStage')] = R5
0220  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0221  CLOSURE   R5 = closure proto66
0222  SETTABLE  R4[K92('HasClaimedAllRewards')] = R5
0223  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0224  CLOSURE   R5 = closure proto67
0225  SETTABLE  R4[K93('RedeemReward')] = R5
0226  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0227  CLOSURE   R5 = closure proto68
0228  SETTABLE  R4[K94('AcquireStageReward')] = R5
0229  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0230  CLOSURE   R5 = closure proto69
0231  SETTABLE  R4[K95('RefreshDecoSlotCanExchangeState')] = R5
0232  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0233  CLOSURE   R5 = closure proto70
0234  SETTABLE  R4[K96('GetRewardFrameId')] = R5
0235  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0236  CLOSURE   R5 = closure proto71
0237  SETTABLE  R4[K97('OnEntryClicked')] = R5
0238  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0239  CLOSURE   R5 = closure proto72
0240  SETTABLE  R4[K98('_OpenWindow')] = R5
0241  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0242  CLOSURE   R5 = closure proto73
0243  SETTABLE  R4[K99('OpenStartWindow')] = R5
0244  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0245  CLOSURE   R5 = closure proto74
0246  SETTABLE  R4[K100('OpenMainWindow')] = R5
0247  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0248  CLOSURE   R5 = closure proto75
0249  SETTABLE  R4[K101('CanPopupDailyWindow')] = R5
0250  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0251  CLOSURE   R5 = closure proto76
0252  SETTABLE  R4[K102('GetMapEntryShowConfig')] = R5
0253  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0254  CLOSURE   R5 = closure proto77
0255  SETTABLE  R4[K103('GetBoardEntryShowConfig')] = R5
0256  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0257  CLOSURE   R5 = closure proto78
0258  SETTABLE  R4[K104('GetRewardProgressInfo')] = R5
0259  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0260  CLOSURE   R5 = closure proto79
0261  SETTABLE  R4[K105('GetStageTotalRedeemCount')] = R5
0262  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0263  CLOSURE   R5 = closure proto80
0264  SETTABLE  R4[K106('_LogStageFinished')] = R5
0265  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0266  CLOSURE   R5 = closure proto81
0267  SETTABLE  R4[K107('_LogTakeFrameReward')] = R5
0268  GETTABUP  R4 = _ENV[K34('FrameDecoActivityModel')]
0269  CLOSURE   R5 = closure proto82
0270  SETTABLE  R4[K108('_LogTakeAllReward')] = R5
0271  RETURN    return R0..R-1
; ---------- proto0 [Init] ----------
  ; fn ?  line 31-35 np=3 va=0 ms=7 code=18 consts=9 upvals=1 protos=0
  ;   K[0]='m_activityDefinition'
  ;   K[1]='FrameDecoActivityDefinition'
  ;   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('FrameDecoActivityDefinition')]
  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 37-40 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 43-45 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 48-55 np=1 va=1 ms=5 code=22 consts=8 upvals=1 protos=0
  ;   K[0]='BaseActivityModel'
  ;   K[1]='_CalculateState'
  ;   K[2]='ActivityState'
  ;   K[3]='Started'
  ;   K[4]='HasClaimedAllRewards'
  ;   K[5]='Ended'
  ;   K[6]='m_config'
  ;   K[7]='rTime'
  ;   upvals: _ENV
  ;   locals: self(0-22), state(5-22), nextStateTime(5-22)
  0000  GETTABUP  R1 = _ENV[K0('BaseActivityModel')]
  0001  GETTABLE  R1 = R1[K1('_CalculateState')]
  0002  MOVE      R2 = R0
  0003  VARARG    R3 = vararg(0)
  0004  CALL      R1 = call(R1, 2 args, -1 rets)
  0005  GETTABUP  R3 = _ENV[K2('ActivityState')]
  0006  GETTABLE  R3 = R3[K3('Started')]
  0007  EQ        if R0 eq R3   -> -130548
  0008  JMP       (jump)   -> 18
  0009  SELF      R4 = R0[K4('HasClaimedAllRewards')] (self)
  0010  CALL      R3 = call(R3, 1 args, 1 rets)
  0011  TEST      if not R3 then   -> -131059
  0012  JMP       (jump)   -> 18
  0013  GETTABUP  R3 = _ENV[K2('ActivityState')]
  0014  GETTABLE  R3 = R3[K5('Ended')]
  0015  GETTABLE  R4 = R0[K6('m_config')]
  0016  GETTABLE  R4 = R4[K7('rTime')]
  0017  RETURN    return R3..R2
  0018  MOVE      R3 = R0
  0019  MOVE      R4 = R0
  0020  RETURN    return R3..R2
  0021  RETURN    return R0..R-1
; ---------- proto4 [_OnStateChanged] ----------
  ; fn ?  line 58-78 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]='FrameDecoTutorialInitToken'
  ;   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('FrameDecoTutorialInitToken')]
  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 [IsActivityOpen] ----------
  ; fn ?  line 81-83 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
; ---------- proto6 [GetResourceLabels] ----------
  ; fn ?  line 87-89 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
; ---------- proto7 [GetActiveModel] ----------
  ; fn ?  line 92-107 np=0 va=0 ms=11 code=48 consts=12 upvals=1 protos=0
  ;   K[0]='pairs'
  ;   K[1]='FrameDecoActivityDefinition'
  ;   K[2]='GM'
  ;   K[3]='ActivityManager'
  ;   K[4]='GetModel'
  ;   K[5]=nil
  ;   K[6]='GetState'
  ;   K[7]='ActivityState'
  ;   K[8]='Started'
  ;   K[9]='GetStartTime'
  ;   K[10]='tonumber'
  ;   K[11]='GetId'
  ;   upvals: _ENV
  ;   locals: model(1-48), activeModel(1-48), (for generator)(4-46), (for state)(4-46), (for control)(4-46), activityType(5-44), definition(5-44)
  0000  LOADNIL   R0..R0 = nil
  0001  GETTABUP  R2 = _ENV[K0('pairs')]
  0002  GETTABUP  R3 = _ENV[K1('FrameDecoActivityDefinition')]
  0003  CALL      R2 = call(R2, 3 args, 1 rets)
  0004  JMP       (jump)   -> 44
  0005  GETTABUP  R7 = _ENV[K2('GM')]
  0006  GETTABLE  R7 = R7[K3('ActivityManager')]
  0007  SELF      R8 = R7[K4('GetModel')] (self)
  0008  MOVE      R9 = R0
  0009  CALL      R7 = call(R7, 1 args, 2 rets)
  0010  MOVE      R0 = R0
  0011  EQ        if R1 eq K5(nil)   -> -130798
  0012  JMP       (jump)   -> 44
  0013  SELF      R8 = R0[K6('GetState')] (self)
  0014  CALL      R7 = call(R7, 1 args, 1 rets)
  0015  GETTABUP  R8 = _ENV[K7('ActivityState')]
  0016  GETTABLE  R8 = R8[K8('Started')]
  0017  EQ        if R0 eq R8   -> -127461
  0018  JMP       (jump)   -> 44
  0019  EQ        if R1 eq K5(nil)   -> -130278
  0020  JMP       (jump)   -> 43
  0021  SELF      R8 = R0[K9('GetStartTime')] (self)
  0022  CALL      R7 = call(R7, 1 args, 1 rets)
  0023  SELF      R9 = R1[K9('GetStartTime')] (self)
  0024  CALL      R8 = call(R8, 1 args, 1 rets)
  0025  LT        if R1 lt R7   -> -126942
  0026  JMP       (jump)   -> 43
  0027  SELF      R8 = R0[K9('GetStartTime')] (self)
  0028  CALL      R7 = call(R7, 1 args, 1 rets)
  0029  SELF      R9 = R1[K9('GetStartTime')] (self)
  0030  CALL      R8 = call(R8, 1 args, 1 rets)
  0031  EQ        if R0 eq R8   -> -127447
  0032  JMP       (jump)   -> 44
  0033  GETTABUP  R7 = _ENV[K10('tonumber')]
  0034  SELF      R9 = R0[K11('GetId')] (self)
  0035  CALL      R8 = call(R8, -1 args, 1 rets)
  0036  CALL      R7 = call(R7, 1 args, -1 rets)
  0037  GETTABUP  R8 = _ENV[K10('tonumber')]
  0038  SELF      R10 = R1[K11('GetId')] (self)
  0039  CALL      R9 = call(R9, -1 args, 1 rets)
  0040  CALL      R8 = call(R8, 1 args, -1 rets)
  0041  LT        if R0 lt R7   -> -126926
  0042  JMP       (jump)   -> 44
  0043  MOVE      R1 = R0
  0044  TFORCALL  tforcall R2
  0045  TFORLOOP  tforloop R4(sBx=-41)   -> 5
  0046  RETURN    return R1..R0
  0047  RETURN    return R0..R-1
; ---------- proto8 [_GetLogPrefix] ----------
  ; fn ?  line 113-115 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
; ---------- proto9 [_LoadOtherServerConfig] ----------
  ; fn ?  line 117-179 np=2 va=0 ms=24 code=130 consts=37 upvals=1 protos=2
  ;   K[0]='m_tokenHelper'
  ;   K[1]='LoadConfig'
  ;   K[2]='FrameDecoActivityModel'
  ;   K[3]='StageConfigKey'
  ;   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>，配置需要使用include关联表%s！'
  ;   K[12]='_GetLogPrefix'
  ;   K[13]='LogTag'
  ;   K[14]='ConfigCheck'
  ;   K[15]='ipairs'
  ;   K[16]='FrameDecoActivityStageConfig'
  ;   K[17]='Create'
  ;   K[18]='IsStageReward'
  ;   K[19]='table'
  ;   K[20]='insert'
  ;   K[21]='GetStage'
  ;   K[22]='sort'
  ;   K[23]='pairs'
  ;   K[24]='GetRewards'
  ;   K[25]='GM'
  ;   K[26]='UserProfileModel'
  ;   K[27]='IsValidRewardType'
  ;   K[28]='EProfilePropertyType'
  ;   K[29]='Frame'
  ;   K[30]='PROPERTY_TYPE'
  ;   K[31]=nil
  ;   K[32]='m_config'
  ;   K[33]='arrStageRewardConfig'
  ;   K[34]='mapStageRedeemConfig'
  ;   K[35]='frameReward'
  ;   K[36]='_CheckConfigValid'
  ;   upvals: _ENV
  ;   locals: self(0-130), config(0-130), arrStageRewardConfig(5-130), mapStageRedeemConfig(6-130), arrRawConfig(9-130), stageConfig(36-130), stage(36-130), (for generator)(39-70), (for state)(39-70), (for control)(39-70), _(40-68), rawConfig(40-68), sortByStage(71-130), sortByIndex(77-130), (for generator)(80-88), (for state)(80-88), (for control)(80-88), stage(81-86), arrStageRedeemConfig(81-86), frameReward(89-130), (for generator)(92-120), (for state)(92-120), (for control)(92-120), _(93-118), stageRewardConfig(93-118), (for generator)(100-116), (for state)(100-116), (for control)(100-116), _(101-114), reward(101-114)
  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  NEWTABLE  R3 = {} (0 items)
  0006  GETTABUP  R4 = _ENV[K2('FrameDecoActivityModel')]
  0007  GETTABLE  R4 = R4[K3('StageConfigKey')]
  0008  GETTABLE  R4 = R1[R4]
  0009  GETTABUP  R5 = _ENV[K4('Table')]
  0010  GETTABLE  R5 = R5[K5('IsEmpty')]
  0011  MOVE      R6 = R0
  0012  CALL      R5 = call(R5, 1 args, 1 rets)
  0013  TEST      if not R5 then   -> -131056
  0014  JMP       (jump)   -> 18
  0015  LEN       R5 = len R0
  0016  LE        if R0 le K6(0)   -> -128232
  0017  JMP       (jump)   -> 35
  0018  GETTABUP  R5 = _ENV[K7('Log')]
  0019  GETTABLE  R5 = R5[K8('Error')]
  0020  GETTABUP  R6 = _ENV[K9('string')]
  0021  GETTABLE  R6 = R6[K10('format')]
  0022  LOADK     R7 = K11 '%s没有找到配置：<color=#FFA000>%s</color>，配置需要使用include关联表%s！'
  0023  SELF      R9 = R0[K12('_GetLogPrefix')] (self)
  0024  MOVE      R10 = R0
  0025  CALL      R8 = call(R8, 1 args, 2 rets)
  0026  GETTABUP  R9 = _ENV[K2('FrameDecoActivityModel')]
  0027  GETTABLE  R9 = R9[K3('StageConfigKey')]
  0028  GETTABUP  R10 = _ENV[K2('FrameDecoActivityModel')]
  0029  GETTABLE  R10 = R10[K3('StageConfigKey')]
  0030  CALL      R6 = call(R6, 1 args, 4 rets)
  0031  GETTABUP  R7 = _ENV[K13('LogTag')]
  0032  GETTABLE  R7 = R7[K14('ConfigCheck')]
  0033  CALL      R5 = call(R5, 0 args, 2 rets)
  0034  RETURN    return R0..R-1
  0035  LOADNIL   R5..R5 = nil
  0036  GETTABUP  R7 = _ENV[K15('ipairs')]
  0037  MOVE      R8 = R0
  0038  CALL      R7 = call(R7, 3 args, 1 rets)
  0039  JMP       (jump)   -> 68
  0040  GETTABUP  R12 = _ENV[K16('FrameDecoActivityStageConfig')]
  0041  GETTABLE  R12 = R12[K17('Create')]
  0042  MOVE      R13 = R0
  0043  CALL      R12 = call(R12, 1 args, 1 rets)
  0044  MOVE      R5 = R0
  0045  SELF      R13 = R5[K18('IsStageReward')] (self)
  0046  CALL      R12 = call(R12, 1 args, 1 rets)
  0047  TEST      if not R12 then   -> -131023
  0048  JMP       (jump)   -> 55
  0049  GETTABUP  R12 = _ENV[K19('table')]
  0050  GETTABLE  R12 = R12[K20('insert')]
  0051  MOVE      R13 = R0
  0052  MOVE      R14 = R0
  0053  CALL      R12 = call(R12, 0 args, 2 rets)
  0054  JMP       (jump)   -> 68
  0055  SELF      R13 = R5[K21('GetStage')] (self)
  0056  CALL      R12 = call(R12, 1 args, 1 rets)
  0057  MOVE      R6 = R0
  0058  GETTABLE  R12 = R3[R6]
  0059  TEST      if not R12 then   -> -131010
  0060  JMP       (jump)   -> 62
  0061  NEWTABLE  R12 = {} (0 items)
  0062  SETTABLE  R3[R6] = R12
  0063  GETTABUP  R12 = _ENV[K19('table')]
  0064  GETTABLE  R12 = R12[K20('insert')]
  0065  GETTABLE  R13 = R3[R6]
  0066  MOVE      R14 = R0
  0067  CALL      R12 = call(R12, 0 args, 2 rets)
  0068  TFORCALL  tforcall R7
  0069  TFORLOOP  tforloop R9(sBx=-30)   -> 40
  0070  CLOSURE   R7 = closure proto0
  0071  GETTABUP  R8 = _ENV[K19('table')]
  0072  GETTABLE  R8 = R8[K22('sort')]
  0073  MOVE      R9 = R0
  0074  MOVE      R10 = R0
  0075  CALL      R8 = call(R8, 0 args, 2 rets)
  0076  CLOSURE   R8 = closure proto1
  0077  GETTABUP  R9 = _ENV[K23('pairs')]
  0078  MOVE      R10 = R0
  0079  CALL      R9 = call(R9, 3 args, 1 rets)
  0080  JMP       (jump)   -> 86
  0081  GETTABUP  R14 = _ENV[K19('table')]
  0082  GETTABLE  R14 = R14[K22('sort')]
  0083  MOVE      R15 = R0
  0084  MOVE      R16 = R0
  0085  CALL      R14 = call(R14, 0 args, 2 rets)
  0086  TFORCALL  tforcall R9
  0087  TFORLOOP  tforloop R11(sBx=-7)   -> 81
  0088  LOADNIL   R9..R9 = nil
  0089  GETTABUP  R10 = _ENV[K15('ipairs')]
  0090  MOVE      R11 = R0
  0091  CALL      R10 = call(R10, 3 args, 1 rets)
  0092  JMP       (jump)   -> 118
  0093  GETTABUP  R15 = _ENV[K15('ipairs')]
  0094  SELF      R17 = R14[K24('GetRewards')] (self)
  0095  CALL      R16 = call(R16, 1 args, 1 rets)
  0096  TEST      if not R16 then   -> -130973
  0097  JMP       (jump)   -> 99
  0098  NEWTABLE  R16 = {} (0 items)
  0099  CALL      R15 = call(R15, 3 args, 1 rets)
  0100  JMP       (jump)   -> 114
  0101  GETTABUP  R20 = _ENV[K25('GM')]
  0102  GETTABLE  R20 = R20[K26('UserProfileModel')]
  0103  SELF      R21 = R20[K27('IsValidRewardType')] (self)
  0104  GETTABUP  R22 = _ENV[K28('EProfilePropertyType')]
  0105  GETTABLE  R22 = R22[K29('Frame')]
  0106  GETTABUP  R23 = _ENV[K30('PROPERTY_TYPE')]
  0107  GETTABLE  R23 = R19[R23]
  0108  CALL      R20 = call(R20, 1 args, 3 rets)
  0109  TEST      if not R20 then   -> -130961
  0110  JMP       (jump)   -> 114
  0111  GETTABUP  R20 = _ENV[K30('PROPERTY_TYPE')]
  0112  GETTABLE  R9 = R19[R20]
  0113  JMP       (jump)   -> 116
  0114  TFORCALL  tforcall R15
  0115  TFORLOOP  tforloop R17(sBx=-15)   -> 101
  0116  EQ        if R0 eq K31(nil)   -> -126059
  0117  JMP       (jump)   -> 120
  0118  TFORCALL  tforcall R10
  0119  TFORLOOP  tforloop R12(sBx=-27)   -> 93
  0120  GETTABLE  R10 = R0[K32('m_config')]
  0121  SETTABLE  R10[K33('arrStageRewardConfig')] = R2
  0122  GETTABLE  R10 = R0[K32('m_config')]
  0123  SETTABLE  R10[K34('mapStageRedeemConfig')] = R3
  0124  GETTABLE  R10 = R0[K32('m_config')]
  0125  SETTABLE  R10[K35('frameReward')] = R9
  0126  SELF      R11 = R0[K36('_CheckConfigValid')] (self)
  0127  MOVE      R12 = R0
  0128  CALL      R10 = call(R10, 0 args, 2 rets)
  0129  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]='GetStage'
    ;   locals: configA(0-10), configB(0-10)
    0000  SELF      R3 = R0[K0('GetStage')] (self)
    0001  CALL      R2 = call(R2, 1 args, 1 rets)
    0002  SELF      R4 = R1[K0('GetStage')] (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
  ; ---------- proto1 [] ----------
    ; fn ?  line 153-155 np=2 va=0 ms=5 code=10 consts=1 upvals=0 protos=0
    ;   K[0]='GetIndex'
    ;   locals: configA(0-10), configB(0-10)
    0000  SELF      R3 = R0[K0('GetIndex')] (self)
    0001  CALL      R2 = call(R2, 1 args, 1 rets)
    0002  SELF      R4 = R1[K0('GetIndex')] (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
; ---------- proto10 [_CheckConfigValid] ----------
  ; fn ?  line 181-337 np=2 va=0 ms=32 code=569 consts=70 upvals=2 protos=0
  ;   K[0]='GameConfig'
  ;   K[1]='IsTestMode'
  ;   K[2]='ipairs'
  ;   K[3]='m_config'
  ;   K[4]='arrStageRewardConfig'
  ;   K[5]='GetRewards'
  ;   K[6]='GM'
  ;   K[7]='UserProfileModel'
  ;   K[8]='IsValidRewardType'
  ;   K[9]='EProfilePropertyType'
  ;   K[10]='Frame'
  ;   K[11]='PROPERTY_TYPE'
  ;   K[12]='GetFrameViewConfig'
  ;   K[13]='Table'
  ;   K[14]='IsEmpty'
  ;   K[15]='deco'
  ;   K[16]=true
  ;   K[17]=nil
  ;   K[18]='Log'
  ;   K[19]='Error'
  ;   K[20]='string'
  ;   K[21]='format'
  ;   K[22]='%s配置表%s里，阶段奖励里<color=#FFA000>没有找到头像框奖励</color>'
  ;   K[23]='_GetLogPrefix'
  ;   K[24]='FrameDecoActivityModel'
  ;   K[25]='StageConfigKey'
  ;   K[26]='LogTag'
  ;   K[27]='ConfigCheck'
  ;   K[28]='GetStage'
  ;   K[29]='%s配置表%s里，stage=%d的配置'
  ;   K[30]='%s<color=#FFA000>stage错误</color>，这是第%d条<color=#1976D2>阶段奖励配置</color>，期望stage=%d，当前stage=%d；阶段奖励配置需要index为空'
  ;   K[31]='GetDecoSlot'
  ;   K[32]='%s<color=#FFA000>slot错配</color>，当前slot=%s，这是阶段奖励，阶段奖励配置期望slot为空'
  ;   K[33]='GetTokenNeeded'
  ;   K[34]='%s<color=#FFA000>need错配</color>，当前need=%d，这是阶段奖励，阶段奖励配置期望need为空'
  ;   K[35]='mapStageRedeemConfig'
  ;   K[36]='%s<color=#FFA000>缺少兑换奖励</color>，阶段内兑换奖励不应为空'
  ;   K[37]='GetIndex'
  ;   K[38]='%sindex=%d的配置'
  ;   K[39]='%s<color=#FFA000>index错误</color>，这是第%d条<color=#1976D2>阶段兑换配置</color>，期望index=%d，当前index=%d；阶段兑换配置需要index不为空'
  ;   K[40]='%s<color=#FFA000>奖励重复配置</color>，这是<color=#1976D2>装饰物碎片</color>，装饰物碎片不能跟常规奖励同时配置，当前slot=%s，当前rewards=%s'
  ;   K[41]='ConfigUtil'
  ;   K[42]='Rewards2String'
  ;   K[43]='%s<color=#FFA000>装饰物碎片不合法</color>，这是<color=#1976D2>装饰物碎片</color>，当前头像框=%s，当前deco=%s，没有找到头像框所属装饰物碎片配置，当前合法碎片=%s'
  ;   K[44]='table'
  ;   K[45]='concat'
  ;   K[46]=';'
  ;   K[47]='%s<color=#FFA000>装饰物碎片阶段不合法</color>，这是<color=#1976D2>装饰物碎片</color>，当前deco=%s，当前stage=%d，头像框奖励所在阶段=%d，装饰物碎片不应该在头像框所在阶段后'
  ;   K[48]='%s<color=#FFA000>装饰物碎片重复投放</color>，这是<color=#1976D2>装饰物碎片</color>，当前deco=%s，之前相同碎片的stage=%d，index=%d'
  ;   K[49]='stage'
  ;   K[50]='index'
  ;   K[51]='%s<color=#FFA000>奖励为空</color>，这是<color=#1976D2>阶段兑换配置</color>，阶段兑换配置期望奖励slot/rewards不为空'
  ;   K[52]=1
  ;   K[53]='%s<color=#FFA000>常规奖励种类不合法</color>，这是<color=#1976D2>常规奖励</color>，当前rewards=%s，奖励种类=%d，阶段兑换常规奖励只能是1种'
  ;   K[54]='%s<color=#FFA000>常规奖励阶段不合法</color>，这是<color=#1976D2>常规奖励</color>，当前rewards=%s，当前stage=%d，头像框奖励所在阶段=%d，常规奖励不应该在头像框所在阶段前'
  ;   K[55]='%s<color=#FFA000>兑换所需碎片为空</color>，这是<color=#1976D2>阶段兑换配置</color>，阶段兑换配置期望兑换所需碎片need不为空'
  ;   K[56]='pairs'
  ;   K[57]='%s<color=#FFA000>阶段兑换奖励超出阶段数量</color>，这是<color=#1976D2>阶段兑换配置</color>，当前stage=%d，阶段奖励总数=%d，<color=#FFA000>请检查阶段奖励配置是否有缺少</color>'
  ;   K[58]='insert'
  ;   K[59]='%s配置表%s里，<color=#FFA000>装饰物碎片未完全投放</color>，当前头像框=%s，当前缺少装饰物碎片deco=%s'
  ;   K[60]='GetInitToken'
  ;   K[61]='math'
  ;   K[62]='maxinteger'
  ;   K[63]='tostring'
  ;   K[64]='%s初始积分%s=%d，无法兑换第一阶段奖励，可能导致引导步骤提前结束，第一阶段奖励积分要求=%s'
  ;   K[65]='InitToken'
  ;   K[66]='GetTotalStage'
  ;   K[67]='GetStageRedeemCount'
  ;   K[68]='IsDecoReward'
  ;   K[69]='%s配置表%s里, 阶段:%s, 序号:%s, 奖励必须为装饰物'
  ;   upvals: _ENV, GeneralActivityConfKey
  ;   locals: self(0-569), config(0-569), frameReward(7-569), frameRewardStage(7-569), frameConfig(8-569), mapDecoSlot(9-569), (for generator)(13-67), (for state)(13-67), (for control)(13-67), stage(14-65), stageRewardConfig(14-65), (for generator)(21-63), (for state)(21-63), (for control)(21-63), _(22-61), reward(22-61), (for generator)(56-60), (for state)(56-60), (for control)(56-60), _(57-58), deco(57-58), logPrefix(84-569), logPrefixIndex(84-569), stage(84-569), arrStageRedeemConfig(84-569), index(84-569), mapFoundDecoSlot(85-569), (for generator)(89-386), (for state)(89-386), (for control)(89-386), expectedStage(90-384), stageRewardConfig(90-384), (for generator)(174-384), (for state)(174-384), (for control)(174-384), expectedIndex(175-382), stageRedeemConfig(175-382), (for generator)(390-423), (for state)(390-423), (for control)(390-423), stage(391-421), arrStageRedeemConfig(391-421), arrMissingDecoSlot(436-476), (for generator)(439-450), (for state)(439-450), (for control)(439-450), _(440-448), deco(440-448), arrStrTokenNeeded(477-569), tokenNeeded(478-569), initToken(480-569), bFound(481-569), (for generator)(489-509), (for state)(489-509), (for control)(489-509), _(490-507), stageRedeemConfig(490-507), rewardConfig(531-569), (for index)(535-568), (for limit)(535-568), (for step)(535-568), stage(536-567), (for index)(541-567), (for limit)(541-567), (for step)(541-567), i(542-566)
  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  LOADNIL   R2..R2 = nil
  0007  NEWTABLE  R4 = {} (0 items)
  0008  NEWTABLE  R5 = {} (0 items)
  0009  GETTABUP  R6 = _ENV[K2('ipairs')]
  0010  GETTABLE  R7 = R0[K3('m_config')]
  0011  GETTABLE  R7 = R7[K4('arrStageRewardConfig')]
  0012  CALL      R6 = call(R6, 3 args, 1 rets)
  0013  JMP       (jump)   -> 65
  0014  GETTABUP  R11 = _ENV[K2('ipairs')]
  0015  SELF      R13 = R10[K5('GetRewards')] (self)
  0016  CALL      R12 = call(R12, 1 args, 1 rets)
  0017  TEST      if not R12 then   -> -131052
  0018  JMP       (jump)   -> 20
  0019  NEWTABLE  R12 = {} (0 items)
  0020  CALL      R11 = call(R11, 3 args, 1 rets)
  0021  JMP       (jump)   -> 61
  0022  GETTABUP  R16 = _ENV[K6('GM')]
  0023  GETTABLE  R16 = R16[K7('UserProfileModel')]
  0024  SELF      R17 = R16[K8('IsValidRewardType')] (self)
  0025  GETTABUP  R18 = _ENV[K9('EProfilePropertyType')]
  0026  GETTABLE  R18 = R18[K10('Frame')]
  0027  GETTABUP  R19 = _ENV[K11('PROPERTY_TYPE')]
  0028  GETTABLE  R19 = R15[R19]
  0029  CALL      R16 = call(R16, 1 args, 3 rets)
  0030  TEST      if not R16 then   -> -131040
  0031  JMP       (jump)   -> 61
  0032  GETTABUP  R16 = _ENV[K11('PROPERTY_TYPE')]
  0033  GETTABLE  R2 = R15[R16]
  0034  MOVE      R3 = R0
  0035  GETTABUP  R16 = _ENV[K6('GM')]
  0036  GETTABLE  R16 = R16[K7('UserProfileModel')]
  0037  SELF      R17 = R16[K12('GetFrameViewConfig')] (self)
  0038  MOVE      R18 = R0
  0039  CALL      R16 = call(R16, 1 args, 2 rets)
  0040  MOVE      R4 = R0
  0041  GETTABUP  R16 = _ENV[K13('Table')]
  0042  GETTABLE  R16 = R16[K14('IsEmpty')]
  0043  MOVE      R17 = R0
  0044  CALL      R16 = call(R16, 1 args, 1 rets)
  0045  TEST      if not R16 then   -> -131024
  0046  JMP       (jump)   -> 63
  0047  GETTABUP  R16 = _ENV[K13('Table')]
  0048  GETTABLE  R16 = R16[K14('IsEmpty')]
  0049  GETTABLE  R17 = R4[K15('deco')]
  0050  CALL      R16 = call(R16, 1 args, 1 rets)
  0051  TEST      if not R16 then   -> -131018
  0052  JMP       (jump)   -> 63
  0053  GETTABUP  R16 = _ENV[K2('ipairs')]
  0054  GETTABLE  R17 = R4[K15('deco')]
  0055  CALL      R16 = call(R16, 3 args, 1 rets)
  0056  JMP       (jump)   -> 58
  0057  SETTABLE  R5[R20] = K16(true)
  0058  TFORCALL  tforcall R16
  0059  TFORLOOP  tforloop R18(sBx=-3)   -> 57
  0060  JMP       (jump)   -> 63
  0061  TFORCALL  tforcall R11
  0062  TFORLOOP  tforloop R13(sBx=-41)   -> 22
  0063  EQ        if R0 eq K17(nil)   -> -129710
  0064  JMP       (jump)   -> 67
  0065  TFORCALL  tforcall R6
  0066  TFORLOOP  tforloop R8(sBx=-53)   -> 14
  0067  EQ        if R0 eq K17(nil)   -> -129706
  0068  JMP       (jump)   -> 83
  0069  GETTABUP  R6 = _ENV[K18('Log')]
  0070  GETTABLE  R6 = R6[K19('Error')]
  0071  GETTABUP  R7 = _ENV[K20('string')]
  0072  GETTABLE  R7 = R7[K21('format')]
  0073  LOADK     R8 = K22 '%s配置表%s里，阶段奖励里<color=#FFA000>没有找到头像框奖励</color>'
  0074  SELF      R10 = R0[K23('_GetLogPrefix')] (self)
  0075  MOVE      R11 = R0
  0076  CALL      R9 = call(R9, 1 args, 2 rets)
  0077  GETTABUP  R10 = _ENV[K24('FrameDecoActivityModel')]
  0078  GETTABLE  R10 = R10[K25('StageConfigKey')]
  0079  CALL      R7 = call(R7, 1 args, 3 rets)
  0080  GETTABUP  R8 = _ENV[K26('LogTag')]
  0081  GETTABLE  R8 = R8[K27('ConfigCheck')]
  0082  CALL      R6 = call(R6, 0 args, 2 rets)
  0083  LOADNIL   R6..R6 = nil
  0084  NEWTABLE  R11 = {} (0 items)
  0085  GETTABUP  R12 = _ENV[K2('ipairs')]
  0086  GETTABLE  R13 = R0[K3('m_config')]
  0087  GETTABLE  R13 = R13[K4('arrStageRewardConfig')]
  0088  CALL      R12 = call(R12, 3 args, 1 rets)
  0089  JMP       (jump)   -> 384
  0090  SELF      R18 = R16[K28('GetStage')] (self)
  0091  CALL      R17 = call(R17, 1 args, 1 rets)
  0092  MOVE      R8 = R0
  0093  GETTABUP  R17 = _ENV[K20('string')]
  0094  GETTABLE  R17 = R17[K21('format')]
  0095  LOADK     R18 = K29 '%s配置表%s里，stage=%d的配置'
  0096  SELF      R20 = R0[K23('_GetLogPrefix')] (self)
  0097  MOVE      R21 = R0
  0098  CALL      R19 = call(R19, 1 args, 2 rets)
  0099  GETTABUP  R20 = _ENV[K24('FrameDecoActivityModel')]
  0100  GETTABLE  R20 = R20[K25('StageConfigKey')]
  0101  MOVE      R21 = R0
  0102  CALL      R17 = call(R17, 1 args, 4 rets)
  0103  MOVE      R6 = R0
  0104  EQ        if R1 eq R8   -> -123278
  0105  JMP       (jump)   -> 119
  0106  GETTABUP  R17 = _ENV[K18('Log')]
  0107  GETTABLE  R17 = R17[K19('Error')]
  0108  GETTABUP  R18 = _ENV[K20('string')]
  0109  GETTABLE  R18 = R18[K21('format')]
  0110  LOADK     R19 = K30 '%s<color=#FFA000>stage错误</color>，这是第%d条<color=#1976D2>阶段奖励配置</color>，期望stage=%d，当前stage=%d；阶段奖励配置需要index为空'
  0111  MOVE      R20 = R0
  0112  MOVE      R21 = R0
  0113  MOVE      R22 = R0
  0114  MOVE      R23 = R0
  0115  CALL      R18 = call(R18, 1 args, 5 rets)
  0116  GETTABUP  R19 = _ENV[K26('LogTag')]
  0117  GETTABLE  R19 = R19[K27('ConfigCheck')]
  0118  CALL      R17 = call(R17, 0 args, 2 rets)
  0119  SELF      R18 = R16[K31('GetDecoSlot')] (self)
  0120  CALL      R17 = call(R17, 1 args, 1 rets)
  0121  EQ        if R1 eq K17(nil)   -> -121972
  0122  JMP       (jump)   -> 135
  0123  GETTABUP  R17 = _ENV[K18('Log')]
  0124  GETTABLE  R17 = R17[K19('Error')]
  0125  GETTABUP  R18 = _ENV[K20('string')]
  0126  GETTABLE  R18 = R18[K21('format')]
  0127  LOADK     R19 = K32 '%s<color=#FFA000>slot错配</color>，当前slot=%s，这是阶段奖励，阶段奖励配置期望slot为空'
  0128  MOVE      R20 = R0
  0129  SELF      R22 = R16[K31('GetDecoSlot')] (self)
  0130  CALL      R21 = call(R21, -1 args, 1 rets)
  0131  CALL      R18 = call(R18, 1 args, -1 rets)
  0132  GETTABUP  R19 = _ENV[K26('LogTag')]
  0133  GETTABLE  R19 = R19[K27('ConfigCheck')]
  0134  CALL      R17 = call(R17, 0 args, 2 rets)
  0135  SELF      R18 = R16[K33('GetTokenNeeded')] (self)
  0136  CALL      R17 = call(R17, 1 args, 1 rets)
  0137  EQ        if R1 eq K17(nil)   -> -121956
  0138  JMP       (jump)   -> 151
  0139  GETTABUP  R17 = _ENV[K18('Log')]
  0140  GETTABLE  R17 = R17[K19('Error')]
  0141  GETTABUP  R18 = _ENV[K20('string')]
  0142  GETTABLE  R18 = R18[K21('format')]
  0143  LOADK     R19 = K34 '%s<color=#FFA000>need错配</color>，当前need=%d，这是阶段奖励，阶段奖励配置期望need为空'
  0144  MOVE      R20 = R0
  0145  SELF      R22 = R16[K33('GetTokenNeeded')] (self)
  0146  CALL      R21 = call(R21, -1 args, 1 rets)
  0147  CALL      R18 = call(R18, 1 args, -1 rets)
  0148  GETTABUP  R19 = _ENV[K26('LogTag')]
  0149  GETTABLE  R19 = R19[K27('ConfigCheck')]
  0150  CALL      R17 = call(R17, 0 args, 2 rets)
  0151  GETTABLE  R17 = R0[K3('m_config')]
  0152  GETTABLE  R17 = R17[K35('mapStageRedeemConfig')]
  0153  GETTABLE  R9 = R17[R15]
  0154  GETTABUP  R17 = _ENV[K13('Table')]
  0155  GETTABLE  R17 = R17[K14('IsEmpty')]
  0156  MOVE      R18 = R0
  0157  CALL      R17 = call(R17, 1 args, 1 rets)
  0158  TEST      if not R17 then   -> -130912
  0159  JMP       (jump)   -> 171
  0160  GETTABUP  R17 = _ENV[K18('Log')]
  0161  GETTABLE  R17 = R17[K19('Error')]
  0162  GETTABUP  R18 = _ENV[K20('string')]
  0163  GETTABLE  R18 = R18[K21('format')]
  0164  LOADK     R19 = K36 '%s<color=#FFA000>缺少兑换奖励</color>，阶段内兑换奖励不应为空'
  0165  MOVE      R20 = R0
  0166  CALL      R18 = call(R18, 1 args, 2 rets)
  0167  GETTABUP  R19 = _ENV[K26('LogTag')]
  0168  GETTABLE  R19 = R19[K27('ConfigCheck')]
  0169  CALL      R17 = call(R17, 0 args, 2 rets)
  0170  JMP       (jump)   -> 384
  0171  GETTABUP  R17 = _ENV[K2('ipairs')]
  0172  MOVE      R18 = R0
  0173  CALL      R17 = call(R17, 3 args, 1 rets)
  0174  JMP       (jump)   -> 382
  0175  SELF      R23 = R21[K37('GetIndex')] (self)
  0176  CALL      R22 = call(R22, 1 args, 1 rets)
  0177  MOVE      R10 = R0
  0178  GETTABUP  R22 = _ENV[K20('string')]
  0179  GETTABLE  R22 = R22[K21('format')]
  0180  LOADK     R23 = K38 '%sindex=%d的配置'
  0181  MOVE      R24 = R0
  0182  MOVE      R25 = R0
  0183  CALL      R22 = call(R22, 1 args, 3 rets)
  0184  MOVE      R7 = R0
  0185  EQ        if R1 eq R10   -> -120635
  0186  JMP       (jump)   -> 200
  0187  GETTABUP  R22 = _ENV[K18('Log')]
  0188  GETTABLE  R22 = R22[K19('Error')]
  0189  GETTABUP  R23 = _ENV[K20('string')]
  0190  GETTABLE  R23 = R23[K21('format')]
  0191  LOADK     R24 = K39 '%s<color=#FFA000>index错误</color>，这是第%d条<color=#1976D2>阶段兑换配置</color>，期望index=%d，当前index=%d；阶段兑换配置需要index不为空'
  0192  MOVE      R25 = R0
  0193  MOVE      R26 = R0
  0194  MOVE      R27 = R0
  0195  MOVE      R28 = R0
  0196  CALL      R23 = call(R23, 1 args, 5 rets)
  0197  GETTABUP  R24 = _ENV[K26('LogTag')]
  0198  GETTABLE  R24 = R24[K27('ConfigCheck')]
  0199  CALL      R22 = call(R22, 0 args, 2 rets)
  0200  SELF      R23 = R21[K31('GetDecoSlot')] (self)
  0201  CALL      R22 = call(R22, 1 args, 1 rets)
  0202  EQ        if R1 eq K17(nil)   -> -119331
  0203  JMP       (jump)   -> 306
  0204  GETTABUP  R22 = _ENV[K13('Table')]
  0205  GETTABLE  R22 = R22[K14('IsEmpty')]
  0206  SELF      R24 = R21[K5('GetRewards')] (self)
  0207  CALL      R23 = call(R23, -1 args, 1 rets)
  0208  CALL      R22 = call(R22, 1 args, -1 rets)
  0209  TEST      if not R22 then   -> -130860
  0210  JMP       (jump)   -> 228
  0211  GETTABUP  R22 = _ENV[K18('Log')]
  0212  GETTABLE  R22 = R22[K19('Error')]
  0213  GETTABUP  R23 = _ENV[K20('string')]
  0214  GETTABLE  R23 = R23[K21('format')]
  0215  LOADK     R24 = K40 '%s<color=#FFA000>奖励重复配置</color>，这是<color=#1976D2>装饰物碎片</color>，装饰物碎片不能跟常规奖励同时配置，当前slot=%s，当前rewards=%s'
  0216  MOVE      R25 = R0
  0217  SELF      R27 = R21[K31('GetDecoSlot')] (self)
  0218  CALL      R26 = call(R26, 1 args, 1 rets)
  0219  GETTABUP  R27 = _ENV[K41('ConfigUtil')]
  0220  GETTABLE  R27 = R27[K42('Rewards2String')]
  0221  SELF      R29 = R21[K5('GetRewards')] (self)
  0222  CALL      R28 = call(R28, -1 args, 1 rets)
  0223  CALL      R27 = call(R27, -1 args, -1 rets)
  0224  CALL      R23 = call(R23, 1 args, -1 rets)
  0225  GETTABUP  R24 = _ENV[K26('LogTag')]
  0226  GETTABLE  R24 = R24[K27('ConfigCheck')]
  0227  CALL      R22 = call(R22, 0 args, 2 rets)
  0228  EQ        if R1 eq K17(nil)   -> -129545
  0229  JMP       (jump)   -> 256
  0230  SELF      R23 = R21[K31('GetDecoSlot')] (self)
  0231  CALL      R22 = call(R22, 1 args, 1 rets)
  0232  GETTABLE  R22 = R5[R22]
  0233  TEST      if not R22 then   -> -130836
  0234  JMP       (jump)   -> 256
  0235  GETTABUP  R22 = _ENV[K18('Log')]
  0236  GETTABLE  R22 = R22[K19('Error')]
  0237  GETTABUP  R23 = _ENV[K20('string')]
  0238  GETTABLE  R23 = R23[K21('format')]
  0239  LOADK     R24 = K43 '%s<color=#FFA000>装饰物碎片不合法</color>，这是<color=#1976D2>装饰物碎片</color>，当前头像框=%s，当前deco=%s，没有找到头像框所属装饰物碎片配置，当前合法碎片=%s'
  0240  MOVE      R25 = R0
  0241  MOVE      R26 = R0
  0242  SELF      R28 = R21[K31('GetDecoSlot')] (self)
  0243  CALL      R27 = call(R27, 1 args, 1 rets)
  0244  GETTABUP  R28 = _ENV[K44('table')]
  0245  GETTABLE  R28 = R28[K45('concat')]
  0246  GETTABLE  R29 = R4[K15('deco')]
  0247  TEST      if not R29 then   -> -130822
  0248  JMP       (jump)   -> 250
  0249  NEWTABLE  R29 = {} (0 items)
  0250  LOADK     R30 = K46 ';'
  0251  CALL      R28 = call(R28, -1 args, 2 rets)
  0252  CALL      R23 = call(R23, 1 args, -1 rets)
  0253  GETTABUP  R24 = _ENV[K26('LogTag')]
  0254  GETTABLE  R24 = R24[K27('ConfigCheck')]
  0255  CALL      R22 = call(R22, 0 args, 2 rets)
  0256  EQ        if R1 eq K17(nil)   -> -129005
  0257  JMP       (jump)   -> 274
  0258  LT        if R0 lt R8   -> -129268
  0259  JMP       (jump)   -> 274
  0260  GETTABUP  R22 = _ENV[K18('Log')]
  0261  GETTABLE  R22 = R22[K19('Error')]
  0262  GETTABUP  R23 = _ENV[K20('string')]
  0263  GETTABLE  R23 = R23[K21('format')]
  0264  LOADK     R24 = K47 '%s<color=#FFA000>装饰物碎片阶段不合法</color>，这是<color=#1976D2>装饰物碎片</color>，当前deco=%s，当前stage=%d，头像框奖励所在阶段=%d，装饰物碎片不应该在头像框所在阶段后'
  0265  MOVE      R25 = R0
  0266  SELF      R27 = R21[K31('GetDecoSlot')] (self)
  0267  CALL      R26 = call(R26, 1 args, 1 rets)
  0268  MOVE      R27 = R0
  0269  MOVE      R28 = R0
  0270  CALL      R23 = call(R23, 1 args, 5 rets)
  0271  GETTABUP  R24 = _ENV[K26('LogTag')]
  0272  GETTABLE  R24 = R24[K27('ConfigCheck')]
  0273  CALL      R22 = call(R22, 0 args, 2 rets)
  0274  SELF      R23 = R21[K31('GetDecoSlot')] (self)
  0275  CALL      R22 = call(R22, 1 args, 1 rets)
  0276  GETTABLE  R22 = R11[R22]
  0277  EQ        if R1 eq K17(nil)   -> -119256
  0278  JMP       (jump)   -> 299
  0279  GETTABUP  R22 = _ENV[K18('Log')]
  0280  GETTABLE  R22 = R22[K19('Error')]
  0281  GETTABUP  R23 = _ENV[K20('string')]
  0282  GETTABLE  R23 = R23[K21('format')]
  0283  LOADK     R24 = K48 '%s<color=#FFA000>装饰物碎片重复投放</color>，这是<color=#1976D2>装饰物碎片</color>，当前deco=%s，之前相同碎片的stage=%d，index=%d'
  0284  MOVE      R25 = R0
  0285  SELF      R27 = R21[K31('GetDecoSlot')] (self)
  0286  CALL      R26 = call(R26, 1 args, 1 rets)
  0287  SELF      R28 = R21[K31('GetDecoSlot')] (self)
  0288  CALL      R27 = call(R27, 1 args, 1 rets)
  0289  GETTABLE  R27 = R11[R27]
  0290  GETTABLE  R27 = R27[K49('stage')]
  0291  SELF      R29 = R21[K31('GetDecoSlot')] (self)
  0292  CALL      R28 = call(R28, 1 args, 1 rets)
  0293  GETTABLE  R28 = R11[R28]
  0294  GETTABLE  R28 = R28[K50('index')]
  0295  CALL      R23 = call(R23, 1 args, 5 rets)
  0296  GETTABUP  R24 = _ENV[K26('LogTag')]
  0297  GETTABLE  R24 = R24[K27('ConfigCheck')]
  0298  CALL      R22 = call(R22, 0 args, 2 rets)
  0299  SELF      R23 = R21[K31('GetDecoSlot')] (self)
  0300  CALL      R22 = call(R22, 1 args, 1 rets)
  0301  NEWTABLE  R23 = {} (0 items)
  0302  SETTABLE  R23[K49('stage')] = R8
  0303  SETTABLE  R23[K50('index')] = R10
  0304  SETTABLE  R11[R22] = R23
  0305  JMP       (jump)   -> 368
  0306  GETTABUP  R22 = _ENV[K13('Table')]
  0307  GETTABLE  R22 = R22[K14('IsEmpty')]
  0308  SELF      R24 = R21[K5('GetRewards')] (self)
  0309  CALL      R23 = call(R23, -1 args, 1 rets)
  0310  CALL      R22 = call(R22, 1 args, -1 rets)
  0311  TEST      if not R22 then   -> -130759
  0312  JMP       (jump)   -> 324
  0313  GETTABUP  R22 = _ENV[K18('Log')]
  0314  GETTABLE  R22 = R22[K19('Error')]
  0315  GETTABUP  R23 = _ENV[K20('string')]
  0316  GETTABLE  R23 = R23[K21('format')]
  0317  LOADK     R24 = K51 '%s<color=#FFA000>奖励为空</color>，这是<color=#1976D2>阶段兑换配置</color>，阶段兑换配置期望奖励slot/rewards不为空'
  0318  MOVE      R25 = R0
  0319  CALL      R23 = call(R23, 1 args, 2 rets)
  0320  GETTABUP  R24 = _ENV[K26('LogTag')]
  0321  GETTABLE  R24 = R24[K27('ConfigCheck')]
  0322  CALL      R22 = call(R22, 0 args, 2 rets)
  0323  JMP       (jump)   -> 368
  0324  SELF      R23 = R21[K5('GetRewards')] (self)
  0325  CALL      R22 = call(R22, 1 args, 1 rets)
  0326  LEN       R22 = len R0
  0327  LT        if R0 lt R22   -> 26975
  0328  JMP       (jump)   -> 347
  0329  GETTABUP  R22 = _ENV[K18('Log')]
  0330  GETTABLE  R22 = R22[K19('Error')]
  0331  GETTABUP  R23 = _ENV[K20('string')]
  0332  GETTABLE  R23 = R23[K21('format')]
  0333  LOADK     R24 = K53 '%s<color=#FFA000>常规奖励种类不合法</color>，这是<color=#1976D2>常规奖励</color>，当前rewards=%s，奖励种类=%d，阶段兑换常规奖励只能是1种'
  0334  MOVE      R25 = R0
  0335  GETTABUP  R26 = _ENV[K41('ConfigUtil')]
  0336  GETTABLE  R26 = R26[K42('Rewards2String')]
  0337  SELF      R28 = R21[K5('GetRewards')] (self)
  0338  CALL      R27 = call(R27, -1 args, 1 rets)
  0339  CALL      R26 = call(R26, 1 args, -1 rets)
  0340  SELF      R28 = R21[K5('GetRewards')] (self)
  0341  CALL      R27 = call(R27, 1 args, 1 rets)
  0342  LEN       R27 = len R0
  0343  CALL      R23 = call(R23, 1 args, 4 rets)
  0344  GETTABUP  R24 = _ENV[K26('LogTag')]
  0345  GETTABLE  R24 = R24[K27('ConfigCheck')]
  0346  CALL      R22 = call(R22, 0 args, 2 rets)
  0347  EQ        if R1 eq K17(nil)   -> -128914
  0348  JMP       (jump)   -> 368
  0349  LE        if R0 le R3   -> -126622
  0350  JMP       (jump)   -> 368
  0351  GETTABUP  R22 = _ENV[K18('Log')]
  0352  GETTABLE  R22 = R22[K19('Error')]
  0353  GETTABUP  R23 = _ENV[K20('string')]
  0354  GETTABLE  R23 = R23[K21('format')]
  0355  LOADK     R24 = K54 '%s<color=#FFA000>常规奖励阶段不合法</color>，这是<color=#1976D2>常规奖励</color>，当前rewards=%s，当前stage=%d，头像框奖励所在阶段=%d，常规奖励不应该在头像框所在阶段前'
  0356  MOVE      R25 = R0
  0357  GETTABUP  R26 = _ENV[K41('ConfigUtil')]
  0358  GETTABLE  R26 = R26[K42('Rewards2String')]
  0359  SELF      R28 = R21[K5('GetRewards')] (self)
  0360  CALL      R27 = call(R27, -1 args, 1 rets)
  0361  CALL      R26 = call(R26, 1 args, -1 rets)
  0362  MOVE      R27 = R0
  0363  MOVE      R28 = R0
  0364  CALL      R23 = call(R23, 1 args, 5 rets)
  0365  GETTABUP  R24 = _ENV[K26('LogTag')]
  0366  GETTABLE  R24 = R24[K27('ConfigCheck')]
  0367  CALL      R22 = call(R22, 0 args, 2 rets)
  0368  SELF      R23 = R21[K33('GetTokenNeeded')] (self)
  0369  CALL      R22 = call(R22, 1 args, 1 rets)
  0370  EQ        if R0 eq K17(nil)   -> -119163
  0371  JMP       (jump)   -> 382
  0372  GETTABUP  R22 = _ENV[K18('Log')]
  0373  GETTABLE  R22 = R22[K19('Error')]
  0374  GETTABUP  R23 = _ENV[K20('string')]
  0375  GETTABLE  R23 = R23[K21('format')]
  0376  LOADK     R24 = K55 '%s<color=#FFA000>兑换所需碎片为空</color>，这是<color=#1976D2>阶段兑换配置</color>，阶段兑换配置期望兑换所需碎片need不为空'
  0377  MOVE      R25 = R0
  0378  CALL      R23 = call(R23, 1 args, 2 rets)
  0379  GETTABUP  R24 = _ENV[K26('LogTag')]
  0380  GETTABLE  R24 = R24[K27('ConfigCheck')]
  0381  CALL      R22 = call(R22, 0 args, 2 rets)
  0382  TFORCALL  tforcall R17
  0383  TFORLOOP  tforloop R19(sBx=-209)   -> 175
  0384  TFORCALL  tforcall R12
  0385  TFORLOOP  tforloop R14(sBx=-296)   -> 90
  0386  GETTABUP  R12 = _ENV[K56('pairs')]
  0387  GETTABLE  R13 = R0[K3('m_config')]
  0388  GETTABLE  R13 = R13[K35('mapStageRedeemConfig')]
  0389  CALL      R12 = call(R12, 3 args, 1 rets)
  0390  JMP       (jump)   -> 421
  0391  GETTABUP  R17 = _ENV[K20('string')]
  0392  GETTABLE  R17 = R17[K21('format')]
  0393  LOADK     R18 = K29 '%s配置表%s里，stage=%d的配置'
  0394  SELF      R20 = R0[K23('_GetLogPrefix')] (self)
  0395  MOVE      R21 = R0
  0396  CALL      R19 = call(R19, 1 args, 2 rets)
  0397  GETTABUP  R20 = _ENV[K24('FrameDecoActivityModel')]
  0398  GETTABLE  R20 = R20[K25('StageConfigKey')]
  0399  MOVE      R21 = R0
  0400  CALL      R17 = call(R17, 1 args, 4 rets)
  0401  MOVE      R6 = R0
  0402  GETTABLE  R17 = R0[K3('m_config')]
  0403  GETTABLE  R17 = R17[K4('arrStageRewardConfig')]
  0404  LEN       R17 = len R0
  0405  LT        if R0 lt R15   -> -121946
  0406  JMP       (jump)   -> 421
  0407  GETTABUP  R17 = _ENV[K18('Log')]
  0408  GETTABLE  R17 = R17[K19('Error')]
  0409  GETTABUP  R18 = _ENV[K20('string')]
  0410  GETTABLE  R18 = R18[K21('format')]
  0411  LOADK     R19 = K57 '%s<color=#FFA000>阶段兑换奖励超出阶段数量</color>，这是<color=#1976D2>阶段兑换配置</color>，当前stage=%d，阶段奖励总数=%d，<color=#FFA000>请检查阶段奖励配置是否有缺少</color>'
  0412  MOVE      R20 = R0
  0413  MOVE      R21 = R0
  0414  GETTABLE  R22 = R0[K3('m_config')]
  0415  GETTABLE  R22 = R22[K4('arrStageRewardConfig')]
  0416  LEN       R22 = len R0
  0417  CALL      R18 = call(R18, 1 args, 4 rets)
  0418  GETTABUP  R19 = _ENV[K26('LogTag')]
  0419  GETTABLE  R19 = R19[K27('ConfigCheck')]
  0420  CALL      R17 = call(R17, 0 args, 2 rets)
  0421  TFORCALL  tforcall R12
  0422  TFORLOOP  tforloop R14(sBx=-32)   -> 391
  0423  GETTABUP  R12 = _ENV[K13('Table')]
  0424  GETTABLE  R12 = R12[K14('IsEmpty')]
  0425  MOVE      R13 = R0
  0426  CALL      R12 = call(R12, 1 args, 1 rets)
  0427  TEST      if not R12 then   -> -130642
  0428  JMP       (jump)   -> 476
  0429  GETTABUP  R12 = _ENV[K13('Table')]
  0430  GETTABLE  R12 = R12[K14('IsEmpty')]
  0431  GETTABLE  R13 = R4[K15('deco')]
  0432  CALL      R12 = call(R12, 1 args, 1 rets)
  0433  TEST      if not R12 then   -> -130636
  0434  JMP       (jump)   -> 476
  0435  NEWTABLE  R12 = {} (0 items)
  0436  GETTABUP  R13 = _ENV[K2('ipairs')]
  0437  GETTABLE  R14 = R4[K15('deco')]
  0438  CALL      R13 = call(R13, 3 args, 1 rets)
  0439  JMP       (jump)   -> 448
  0440  GETTABLE  R18 = R11[R17]
  0441  TEST      if not R18 then   -> -130628
  0442  JMP       (jump)   -> 448
  0443  GETTABUP  R18 = _ENV[K44('table')]
  0444  GETTABLE  R18 = R18[K58('insert')]
  0445  MOVE      R19 = R0
  0446  MOVE      R20 = R0
  0447  CALL      R18 = call(R18, 0 args, 2 rets)
  0448  TFORCALL  tforcall R13
  0449  TFORLOOP  tforloop R15(sBx=-10)   -> 440
  0450  GETTABUP  R13 = _ENV[K13('Table')]
  0451  GETTABLE  R13 = R13[K14('IsEmpty')]
  0452  MOVE      R14 = R0
  0453  CALL      R13 = call(R13, 1 args, 1 rets)
  0454  TEST      if not R13 then   -> -130615
  0455  JMP       (jump)   -> 476
  0456  GETTABUP  R13 = _ENV[K18('Log')]
  0457  GETTABLE  R13 = R13[K19('Error')]
  0458  GETTABUP  R14 = _ENV[K20('string')]
  0459  GETTABLE  R14 = R14[K21('format')]
  0460  LOADK     R15 = K59 '%s配置表%s里，<color=#FFA000>装饰物碎片未完全投放</color>，当前头像框=%s，当前缺少装饰物碎片deco=%s'
  0461  SELF      R17 = R0[K23('_GetLogPrefix')] (self)
  0462  MOVE      R18 = R0
  0463  CALL      R16 = call(R16, 1 args, 2 rets)
  0464  GETTABUP  R17 = _ENV[K24('FrameDecoActivityModel')]
  0465  GETTABLE  R17 = R17[K25('StageConfigKey')]
  0466  MOVE      R18 = R0
  0467  GETTABUP  R19 = _ENV[K44('table')]
  0468  GETTABLE  R19 = R19[K45('concat')]
  0469  MOVE      R20 = R0
  0470  LOADK     R21 = K46 ';'
  0471  CALL      R19 = call(R19, -1 args, 2 rets)
  0472  CALL      R14 = call(R14, 1 args, -1 rets)
  0473  GETTABUP  R15 = _ENV[K26('LogTag')]
  0474  GETTABLE  R15 = R15[K27('ConfigCheck')]
  0475  CALL      R13 = call(R13, 0 args, 2 rets)
  0476  NEWTABLE  R12 = {} (0 items)
  0477  LOADNIL   R13..R13 = nil
  0478  SELF      R15 = R0[K60('GetInitToken')] (self)
  0479  CALL      R14 = call(R14, 1 args, 1 rets)
  0480  LOADBOOL  R15 = false
  0481  GETTABUP  R16 = _ENV[K2('ipairs')]
  0482  GETTABLE  R17 = R0[K3('m_config')]
  0483  GETTABLE  R17 = R17[K35('mapStageRedeemConfig')]
  0484  GETTABLE  R17 = R17[K52(1)]
  0485  TEST      if not R17 then   -> -130584
  0486  JMP       (jump)   -> 488
  0487  NEWTABLE  R17 = {} (0 items)
  0488  CALL      R16 = call(R16, 3 args, 1 rets)
  0489  JMP       (jump)   -> 507
  0490  SELF      R22 = R20[K33('GetTokenNeeded')] (self)
  0491  CALL      R21 = call(R21, 1 args, 1 rets)
  0492  TESTSET   if R1 then R13   -> -119825
  0493  JMP       (jump)   -> 496
  0494  GETTABUP  R21 = _ENV[K61('math')]
  0495  GETTABLE  R13 = R21[K62('maxinteger')]
  0496  LE        if R0 le R14   -> -123904
  0497  JMP       (jump)   -> 500
  0498  LOADBOOL  R15 = true
  0499  JMP       (jump)   -> 509
  0500  GETTABUP  R21 = _ENV[K44('table')]
  0501  GETTABLE  R21 = R21[K58('insert')]
  0502  MOVE      R22 = R0
  0503  GETTABUP  R23 = _ENV[K63('tostring')]
  0504  MOVE      R24 = R0
  0505  CALL      R23 = call(R23, -1 args, 1 rets)
  0506  CALL      R21 = call(R21, 0 args, -1 rets)
  0507  TFORCALL  tforcall R16
  0508  TFORLOOP  tforloop R18(sBx=-19)   -> 490
  0509  TEST      if not R15 then   -> -130560
  0510  JMP       (jump)   -> 530
  0511  GETTABUP  R16 = _ENV[K18('Log')]
  0512  GETTABLE  R16 = R16[K19('Error')]
  0513  GETTABUP  R17 = _ENV[K20('string')]
  0514  GETTABLE  R17 = R17[K21('format')]
  0515  LOADK     R18 = K64 '%s初始积分%s=%d，无法兑换第一阶段奖励，可能导致引导步骤提前结束，第一阶段奖励积分要求=%s'
  0516  SELF      R20 = R0[K23('_GetLogPrefix')] (self)
  0517  MOVE      R21 = R0
  0518  CALL      R19 = call(R19, 1 args, 2 rets)
  0519  GETTABUP  R20 = GeneralActivityConfKey[K65('InitToken')]
  0520  MOVE      R21 = R0
  0521  GETTABUP  R22 = _ENV[K44('table')]
  0522  GETTABLE  R22 = R22[K45('concat')]
  0523  MOVE      R23 = R0
  0524  LOADK     R24 = K46 ';'
  0525  CALL      R22 = call(R22, -1 args, 2 rets)
  0526  CALL      R17 = call(R17, 1 args, -1 rets)
  0527  GETTABUP  R18 = _ENV[K26('LogTag')]
  0528  GETTABLE  R18 = R18[K27('ConfigCheck')]
  0529  CALL      R16 = call(R16, 0 args, 2 rets)
  0530  LOADNIL   R16..R16 = nil
  0531  LOADK     R17 = K52 1
  0532  SELF      R19 = R0[K66('GetTotalStage')] (self)
  0533  CALL      R18 = call(R18, 1 args, 1 rets)
  0534  LOADK     R19 = K52 1
  0535  FORPREP   forprep R17(sBx=31)   -> 567
  0536  LOADK     R21 = K52 1
  0537  SELF      R23 = R0[K67('GetStageRedeemCount')] (self)
  0538  MOVE      R24 = R0
  0539  CALL      R22 = call(R22, 1 args, 2 rets)
  0540  LOADK     R23 = K52 1
  0541  FORPREP   forprep R21(sBx=24)   -> 566
  0542  GETTABLE  R25 = R0[K3('m_config')]
  0543  GETTABLE  R25 = R25[K35('mapStageRedeemConfig')]
  0544  GETTABLE  R25 = R25[R20]
  0545  GETTABLE  R16 = R25[R24]
  0546  EQ        if R1 eq K17(nil)   -> -122059
  0547  JMP       (jump)   -> 566
  0548  SELF      R26 = R16[K68('IsDecoReward')] (self)
  0549  CALL      R25 = call(R25, 1 args, 1 rets)
  0550  TEST      if not R25 then   -> -130519
  0551  JMP       (jump)   -> 566
  0552  GETTABUP  R25 = _ENV[K18('Log')]
  0553  GETTABLE  R25 = R25[K19('Error')]
  0554  GETTABUP  R26 = _ENV[K20('string')]
  0555  GETTABLE  R26 = R26[K21('format')]
  0556  LOADK     R27 = K69 '%s配置表%s里, 阶段:%s, 序号:%s, 奖励必须为装饰物'
  0557  SELF      R29 = R0[K23('_GetLogPrefix')] (self)
  0558  MOVE      R30 = R0
  0559  CALL      R28 = call(R28, 1 args, 2 rets)
  0560  GETTABUP  R29 = _ENV[K24('FrameDecoActivityModel')]
  0561  GETTABLE  R29 = R29[K25('StageConfigKey')]
  0562  MOVE      R30 = R0
  0563  MOVE      R31 = R0
  0564  CALL      R26 = call(R26, -1 args, 5 rets)
  0565  CALL      R25 = call(R25, 0 args, -1 rets)
  0566  FORLOOP   forloop R21(sBx=-25)   -> 542
  0567  FORLOOP   forloop R17(sBx=-32)   -> 536
  0568  RETURN    return R0..R-1
; ---------- proto11 [GetStageRewardConfig] ----------
  ; fn ?  line 345-347 np=2 va=0 ms=3 code=5 consts=2 upvals=0 protos=0
  ;   K[0]='m_config'
  ;   K[1]='arrStageRewardConfig'
  ;   locals: self(0-5), stage(0-5)
  0000  GETTABLE  R2 = R0[K0('m_config')]
  0001  GETTABLE  R2 = R2[K1('arrStageRewardConfig')]
  0002  GETTABLE  R2 = R2[R1]
  0003  RETURN    return R2..R1
  0004  RETURN    return R0..R-1
; ---------- proto12 [GetTotalStage] ----------
  ; fn ?  line 350-352 np=1 va=0 ms=2 code=5 consts=2 upvals=0 protos=0
  ;   K[0]='m_config'
  ;   K[1]='arrStageRewardConfig'
  ;   locals: self(0-5)
  0000  GETTABLE  R1 = R0[K0('m_config')]
  0001  GETTABLE  R1 = R1[K1('arrStageRewardConfig')]
  0002  LEN       R1 = len R0
  0003  RETURN    return R1..R0
  0004  RETURN    return R0..R-1
; ---------- proto13 [GetAllStageRewardConfig] ----------
  ; fn ?  line 354-356 np=1 va=0 ms=2 code=4 consts=2 upvals=0 protos=0
  ;   K[0]='m_config'
  ;   K[1]='arrStageRewardConfig'
  ;   locals: self(0-4)
  0000  GETTABLE  R1 = R0[K0('m_config')]
  0001  GETTABLE  R1 = R1[K1('arrStageRewardConfig')]
  0002  RETURN    return R1..R0
  0003  RETURN    return R0..R-1
; ---------- proto14 [GetStageRedeemConfig] ----------
  ; fn ?  line 361-363 np=3 va=0 ms=4 code=6 consts=2 upvals=0 protos=0
  ;   K[0]='m_config'
  ;   K[1]='mapStageRedeemConfig'
  ;   locals: self(0-6), stage(0-6), index(0-6)
  0000  GETTABLE  R3 = R0[K0('m_config')]
  0001  GETTABLE  R3 = R3[K1('mapStageRedeemConfig')]
  0002  GETTABLE  R3 = R3[R1]
  0003  GETTABLE  R3 = R3[R2]
  0004  RETURN    return R3..R2
  0005  RETURN    return R0..R-1
; ---------- proto15 [GetStageRedeemCount] ----------
  ; fn ?  line 367-369 np=2 va=0 ms=3 code=6 consts=2 upvals=0 protos=0
  ;   K[0]='m_config'
  ;   K[1]='mapStageRedeemConfig'
  ;   locals: self(0-6), stage(0-6)
  0000  GETTABLE  R2 = R0[K0('m_config')]
  0001  GETTABLE  R2 = R2[K1('mapStageRedeemConfig')]
  0002  GETTABLE  R2 = R2[R1]
  0003  LEN       R2 = len R0
  0004  RETURN    return R2..R1
  0005  RETURN    return R0..R-1
; ---------- proto16 [GetInitToken] ----------
  ; fn ?  line 371-373 np=1 va=0 ms=5 code=10 consts=5 upvals=2 protos=0
  ;   K[0]='GetGeneralConfig'
  ;   K[1]='InitToken'
  ;   K[2]='EConfigParamType'
  ;   K[3]='Int'
  ;   K[4]=0
  ;   upvals: GeneralActivityConfKey, _ENV
  ;   locals: self(0-10)
  0000  SELF      R2 = R0[K0('GetGeneralConfig')] (self)
  0001  GETTABUP  R3 = GeneralActivityConfKey[K1('InitToken')]
  0002  GETTABUP  R4 = _ENV[K2('EConfigParamType')]
  0003  GETTABLE  R4 = R4[K3('Int')]
  0004  CALL      R1 = call(R1, 1 args, 3 rets)
  0005  TEST      if not R1 then   -> -131064
  0006  JMP       (jump)   -> 8
  0007  LOADK     R1 = K4 0
  0008  RETURN    return R1..R0
  0009  RETURN    return R0..R-1
; ---------- proto17 [_DBTableGetValue] ----------
  ; fn ?  line 384-386 np=2 va=0 ms=6 code=7 consts=2 upvals=1 protos=0
  ;   K[0]='m_dbTable'
  ;   K[1]='GetValue'
  ;   upvals: DB_VALUE_KEY
  ;   locals: self(0-7), key(0-7)
  0000  GETTABLE  R2 = R0[K0('m_dbTable')]
  0001  SELF      R3 = R2[K1('GetValue')] (self)
  0002  MOVE      R4 = R0
  0003  GETUPVAL  R5 = DB_VALUE_KEY
  0004  TAILCALL  tailcall(R2, 0)
  0005  RETURN    return R2..R1
  0006  RETURN    return R0..R-1
; ---------- proto18 [_DBTableGetNumber] ----------
  ; fn ?  line 390-393 np=3 va=0 ms=7 code=13 consts=3 upvals=1 protos=0
  ;   K[0]=0
  ;   K[1]='tonumber'
  ;   K[2]='_DBTableGetValue'
  ;   upvals: _ENV
  ;   locals: self(0-13), key(0-13), defaultValue(0-13)
  0000  TEST      if not R2 then   -> -131069
  0001  JMP       (jump)   -> 3
  0002  LOADK     R2 = K0 0
  0003  GETTABUP  R3 = _ENV[K1('tonumber')]
  0004  SELF      R5 = R0[K2('_DBTableGetValue')] (self)
  0005  MOVE      R6 = R0
  0006  CALL      R4 = call(R4, -1 args, 2 rets)
  0007  CALL      R3 = call(R3, 1 args, -1 rets)
  0008  TEST      if not R3 then   -> -131061
  0009  JMP       (jump)   -> 11
  0010  MOVE      R3 = R0
  0011  RETURN    return R3..R2
  0012  RETURN    return R0..R-1
; ---------- proto19 [_DBTableSet] ----------
  ; fn ?  line 397-399 np=3 va=0 ms=8 code=7 consts=2 upvals=1 protos=0
  ;   K[0]='m_dbTable'
  ;   K[1]='Set'
  ;   upvals: DB_VALUE_KEY
  ;   locals: self(0-7), key(0-7), value(0-7)
  0000  GETTABLE  R3 = R0[K0('m_dbTable')]
  0001  SELF      R4 = R3[K1('Set')] (self)
  0002  MOVE      R5 = R0
  0003  GETUPVAL  R6 = DB_VALUE_KEY
  0004  MOVE      R7 = R0
  0005  CALL      R3 = call(R3, 0 args, 4 rets)
  0006  RETURN    return R0..R-1
; ---------- proto20 [_DBTableSetTable] ----------
  ; fn ?  line 403-405 np=3 va=0 ms=8 code=8 consts=3 upvals=1 protos=0
  ;   K[0]='_DBTableSet'
  ;   K[1]='json'
  ;   K[2]='encode'
  ;   upvals: _ENV
  ;   locals: self(0-8), key(0-8), value(0-8)
  0000  SELF      R4 = R0[K0('_DBTableSet')] (self)
  0001  MOVE      R5 = R0
  0002  GETTABUP  R6 = _ENV[K1('json')]
  0003  GETTABLE  R6 = R6[K2('encode')]
  0004  MOVE      R7 = R0
  0005  CALL      R6 = call(R6, -1 args, 1 rets)
  0006  CALL      R3 = call(R3, 0 args, -1 rets)
  0007  RETURN    return R0..R-1
; ---------- proto21 [_DBTableRemove] ----------
  ; fn ?  line 408-410 np=2 va=0 ms=5 code=5 consts=2 upvals=0 protos=0
  ;   K[0]='m_dbTable'
  ;   K[1]='Remove'
  ;   locals: self(0-5), key(0-5)
  0000  GETTABLE  R2 = R0[K0('m_dbTable')]
  0001  SELF      R3 = R2[K1('Remove')] (self)
  0002  MOVE      R4 = R0
  0003  CALL      R2 = call(R2, 0 args, 2 rets)
  0004  RETURN    return R0..R-1
; ---------- proto22 [HasClaimedInitToken] ----------
  ; fn ?  line 413-415 np=1 va=0 ms=4 code=10 consts=2 upvals=2 protos=0
  ;   K[0]='_DBTableGetNumber'
  ;   K[1]='HasClaimedInitToken'
  ;   upvals: DBKey, TRUE_VALUE
  ;   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  GETUPVAL  R2 = DBKey
  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
; ---------- proto23 [SetHasClaimedInitToken] ----------
  ; fn ?  line 417-419 np=1 va=0 ms=5 code=5 consts=2 upvals=2 protos=0
  ;   K[0]='_DBTableSet'
  ;   K[1]='HasClaimedInitToken'
  ;   upvals: DBKey, TRUE_VALUE
  ;   locals: self(0-5)
  0000  SELF      R2 = R0[K0('_DBTableSet')] (self)
  0001  GETTABUP  R3 = DBKey[K1('HasClaimedInitToken')]
  0002  GETUPVAL  R4 = DBKey
  0003  CALL      R1 = call(R1, 0 args, 3 rets)
  0004  RETURN    return R0..R-1
; ---------- proto24 [GetTokenCount] ----------
  ; fn ?  line 421-423 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
; ---------- proto25 [SetTokenCount] ----------
  ; fn ?  line 426-428 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
; ---------- proto26 [GetCurrentStage] ----------
  ; fn ?  line 430-432 np=1 va=0 ms=5 code=6 consts=3 upvals=1 protos=0
  ;   K[0]='_DBTableGetNumber'
  ;   K[1]='CurrentStage'
  ;   K[2]=1
  ;   upvals: DBKey
  ;   locals: self(0-6)
  0000  SELF      R2 = R0[K0('_DBTableGetNumber')] (self)
  0001  GETTABUP  R3 = DBKey[K1('CurrentStage')]
  0002  LOADK     R4 = K2 1
  0003  TAILCALL  tailcall(R1, 0)
  0004  RETURN    return R1..R0
  0005  RETURN    return R0..R-1
; ---------- proto27 [SetCurrentStage] ----------
  ; fn ?  line 435-437 np=2 va=0 ms=6 code=5 consts=2 upvals=1 protos=0
  ;   K[0]='_DBTableSet'
  ;   K[1]='CurrentStage'
  ;   upvals: DBKey
  ;   locals: self(0-5), currentStage(0-5)
  0000  SELF      R3 = R0[K0('_DBTableSet')] (self)
  0001  GETTABUP  R4 = DBKey[K1('CurrentStage')]
  0002  MOVE      R5 = R0
  0003  CALL      R2 = call(R2, 0 args, 3 rets)
  0004  RETURN    return R0..R-1
; ---------- proto28 [_GetRewardTakenKey] ----------
  ; fn ?  line 441-443 np=3 va=0 ms=7 code=8 consts=3 upvals=2 protos=0
  ;   K[0]='string'
  ;   K[1]='format'
  ;   K[2]='RewardTaken'
  ;   upvals: _ENV, DBKey
  ;   locals: self(0-8), stage(0-8), index(0-8)
  0000  GETTABUP  R3 = _ENV[K0('string')]
  0001  GETTABLE  R3 = R3[K1('format')]
  0002  GETTABUP  R4 = DBKey[K2('RewardTaken')]
  0003  MOVE      R5 = R0
  0004  MOVE      R6 = R0
  0005  TAILCALL  tailcall(R3, 0)
  0006  RETURN    return R3..R2
  0007  RETURN    return R0..R-1
; ---------- proto29 [IsRewardTaken] ----------
  ; fn ?  line 447-449 np=3 va=0 ms=9 code=13 consts=2 upvals=1 protos=0
  ;   K[0]='_DBTableGetNumber'
  ;   K[1]='_GetRewardTakenKey'
  ;   upvals: TRUE_VALUE
  ;   locals: self(0-13), stage(0-13), index(0-13)
  0000  SELF      R4 = R0[K0('_DBTableGetNumber')] (self)
  0001  SELF      R6 = R0[K1('_GetRewardTakenKey')] (self)
  0002  MOVE      R7 = R0
  0003  MOVE      R8 = R0
  0004  CALL      R5 = call(R5, -1 args, 3 rets)
  0005  CALL      R3 = call(R3, 1 args, -1 rets)
  0006  GETUPVAL  R4 = TRUE_VALUE
  0007  EQ        if R1 eq R4   -> -129523
  0008  JMP       (jump)   -> 10
  0009  LOADBOOL  R3 = false
  0010  LOADBOOL  R3 = true
  0011  RETURN    return R3..R2
  0012  RETURN    return R0..R-1
; ---------- proto30 [SetRewardTaken] ----------
  ; fn ?  line 453-455 np=3 va=0 ms=9 code=9 consts=2 upvals=1 protos=0
  ;   K[0]='_DBTableSet'
  ;   K[1]='_GetRewardTakenKey'
  ;   upvals: TRUE_VALUE
  ;   locals: self(0-9), stage(0-9), index(0-9)
  0000  SELF      R4 = R0[K0('_DBTableSet')] (self)
  0001  SELF      R6 = R0[K1('_GetRewardTakenKey')] (self)
  0002  MOVE      R7 = R0
  0003  MOVE      R8 = R0
  0004  CALL      R5 = call(R5, 1 args, 3 rets)
  0005  GETUPVAL  R6 = TRUE_VALUE
  0006  TAILCALL  tailcall(R3, 0)
  0007  RETURN    return R3..R2
  0008  RETURN    return R0..R-1
; ---------- proto31 [_GetStageRewardTakenKey] ----------
  ; fn ?  line 458-460 np=2 va=0 ms=5 code=7 consts=3 upvals=2 protos=0
  ;   K[0]='string'
  ;   K[1]='format'
  ;   K[2]='StageRewardTaken'
  ;   upvals: _ENV, DBKey
  ;   locals: self(0-7), stage(0-7)
  0000  GETTABUP  R2 = _ENV[K0('string')]
  0001  GETTABLE  R2 = R2[K1('format')]
  0002  GETTABUP  R3 = DBKey[K2('StageRewardTaken')]
  0003  MOVE      R4 = R0
  0004  TAILCALL  tailcall(R2, 0)
  0005  RETURN    return R2..R1
  0006  RETURN    return R0..R-1
; ---------- proto32 [IsStageRewardTaken] ----------
  ; fn ?  line 463-465 np=2 va=0 ms=7 code=12 consts=2 upvals=1 protos=0
  ;   K[0]='_DBTableGetNumber'
  ;   K[1]='_GetStageRewardTakenKey'
  ;   upvals: TRUE_VALUE
  ;   locals: self(0-12), stage(0-12)
  0000  SELF      R3 = R0[K0('_DBTableGetNumber')] (self)
  0001  SELF      R5 = R0[K1('_GetStageRewardTakenKey')] (self)
  0002  MOVE      R6 = R0
  0003  CALL      R4 = call(R4, -1 args, 2 rets)
  0004  CALL      R2 = call(R2, 1 args, -1 rets)
  0005  GETUPVAL  R3 = TRUE_VALUE
  0006  EQ        if R1 eq R3   -> -130037
  0007  JMP       (jump)   -> 9
  0008  LOADBOOL  R2 = false
  0009  LOADBOOL  R2 = true
  0010  RETURN    return R2..R1
  0011  RETURN    return R0..R-1
; ---------- proto33 [SetStageRewardTaken] ----------
  ; fn ?  line 468-470 np=2 va=0 ms=7 code=8 consts=2 upvals=1 protos=0
  ;   K[0]='_DBTableSet'
  ;   K[1]='_GetStageRewardTakenKey'
  ;   upvals: TRUE_VALUE
  ;   locals: self(0-8), stage(0-8)
  0000  SELF      R3 = R0[K0('_DBTableSet')] (self)
  0001  SELF      R5 = R0[K1('_GetStageRewardTakenKey')] (self)
  0002  MOVE      R6 = R0
  0003  CALL      R4 = call(R4, 1 args, 2 rets)
  0004  GETUPVAL  R5 = TRUE_VALUE
  0005  TAILCALL  tailcall(R2, 0)
  0006  RETURN    return R2..R1
  0007  RETURN    return R0..R-1
; ---------- proto34 [_GetDecoSlotBuiltKey] ----------
  ; fn ?  line 473-475 np=2 va=0 ms=5 code=7 consts=3 upvals=2 protos=0
  ;   K[0]='string'
  ;   K[1]='format'
  ;   K[2]='DecoSlotBuilt'
  ;   upvals: _ENV, DBKey
  ;   locals: self(0-7), slot(0-7)
  0000  GETTABUP  R2 = _ENV[K0('string')]
  0001  GETTABLE  R2 = R2[K1('format')]
  0002  GETTABUP  R3 = DBKey[K2('DecoSlotBuilt')]
  0003  MOVE      R4 = R0
  0004  TAILCALL  tailcall(R2, 0)
  0005  RETURN    return R2..R1
  0006  RETURN    return R0..R-1
; ---------- proto35 [IsDecoSlotBuilt] ----------
  ; fn ?  line 478-480 np=2 va=0 ms=7 code=12 consts=2 upvals=1 protos=0
  ;   K[0]='_DBTableGetNumber'
  ;   K[1]='_GetDecoSlotBuiltKey'
  ;   upvals: TRUE_VALUE
  ;   locals: self(0-12), slot(0-12)
  0000  SELF      R3 = R0[K0('_DBTableGetNumber')] (self)
  0001  SELF      R5 = R0[K1('_GetDecoSlotBuiltKey')] (self)
  0002  MOVE      R6 = R0
  0003  CALL      R4 = call(R4, -1 args, 2 rets)
  0004  CALL      R2 = call(R2, 1 args, -1 rets)
  0005  GETUPVAL  R3 = TRUE_VALUE
  0006  EQ        if R1 eq R3   -> -130037
  0007  JMP       (jump)   -> 9
  0008  LOADBOOL  R2 = false
  0009  LOADBOOL  R2 = true
  0010  RETURN    return R2..R1
  0011  RETURN    return R0..R-1
; ---------- proto36 [SetDecoSlotCanExchange] ----------
  ; fn ?  line 483-485 np=3 va=0 ms=8 code=13 consts=3 upvals=1 protos=0
  ;   K[0]='_DBTableSet'
  ;   K[1]='_GetDecoSlotCanExchangeKey'
  ;   K[2]=0
  ;   upvals: TRUE_VALUE
  ;   locals: self(0-13), slot(0-13), bExchange(0-13)
  0000  SELF      R4 = R0[K0('_DBTableSet')] (self)
  0001  SELF      R6 = R0[K1('_GetDecoSlotCanExchangeKey')] (self)
  0002  MOVE      R7 = R0
  0003  CALL      R5 = call(R5, 1 args, 2 rets)
  0004  TEST      if not R2 then   -> -131066
  0005  JMP       (jump)   -> 9
  0006  GETUPVAL  R6 = TRUE_VALUE
  0007  TEST      if not R6 then   -> -131062
  0008  JMP       (jump)   -> 10
  0009  LOADK     R6 = K2 0
  0010  TAILCALL  tailcall(R3, 0)
  0011  RETURN    return R3..R2
  0012  RETURN    return R0..R-1
; ---------- proto37 [_GetDecoSlotCanExchangeKey] ----------
  ; fn ?  line 488-490 np=2 va=0 ms=5 code=7 consts=3 upvals=2 protos=0
  ;   K[0]='string'
  ;   K[1]='format'
  ;   K[2]='DecoSlotCanExchange'
  ;   upvals: _ENV, DBKey
  ;   locals: self(0-7), slot(0-7)
  0000  GETTABUP  R2 = _ENV[K0('string')]
  0001  GETTABLE  R2 = R2[K1('format')]
  0002  GETTABUP  R3 = DBKey[K2('DecoSlotCanExchange')]
  0003  MOVE      R4 = R0
  0004  TAILCALL  tailcall(R2, 0)
  0005  RETURN    return R2..R1
  0006  RETURN    return R0..R-1
; ---------- proto38 [IsDecoSlotCanExchange] ----------
  ; fn ?  line 493-495 np=2 va=0 ms=7 code=12 consts=2 upvals=1 protos=0
  ;   K[0]='_DBTableGetNumber'
  ;   K[1]='_GetDecoSlotCanExchangeKey'
  ;   upvals: TRUE_VALUE
  ;   locals: self(0-12), slot(0-12)
  0000  SELF      R3 = R0[K0('_DBTableGetNumber')] (self)
  0001  SELF      R5 = R0[K1('_GetDecoSlotCanExchangeKey')] (self)
  0002  MOVE      R6 = R0
  0003  CALL      R4 = call(R4, -1 args, 2 rets)
  0004  CALL      R2 = call(R2, 1 args, -1 rets)
  0005  GETUPVAL  R3 = TRUE_VALUE
  0006  EQ        if R1 eq R3   -> -130037
  0007  JMP       (jump)   -> 9
  0008  LOADBOOL  R2 = false
  0009  LOADBOOL  R2 = true
  0010  RETURN    return R2..R1
  0011  RETURN    return R0..R-1
; ---------- proto39 [SetDecoSlotBuilt] ----------
  ; fn ?  line 498-500 np=2 va=0 ms=7 code=8 consts=2 upvals=1 protos=0
  ;   K[0]='_DBTableSet'
  ;   K[1]='_GetDecoSlotBuiltKey'
  ;   upvals: TRUE_VALUE
  ;   locals: self(0-8), slot(0-8)
  0000  SELF      R3 = R0[K0('_DBTableSet')] (self)
  0001  SELF      R5 = R0[K1('_GetDecoSlotBuiltKey')] (self)
  0002  MOVE      R6 = R0
  0003  CALL      R4 = call(R4, 1 args, 2 rets)
  0004  GETUPVAL  R5 = TRUE_VALUE
  0005  TAILCALL  tailcall(R2, 0)
  0006  RETURN    return R2..R1
  0007  RETURN    return R0..R-1
; ---------- proto40 [_GetDailyPopupTime] ----------
  ; fn ?  line 502-504 np=1 va=0 ms=4 code=8 consts=5 upvals=1 protos=0
  ;   K[0]='PlayerPrefs'
  ;   K[1]='GetInt'
  ;   K[2]='EPlayerPrefKey'
  ;   K[3]='FrameDecoActivityDailyOpenTime'
  ;   K[4]=0
  ;   upvals: _ENV
  ;   locals: self(0-8)
  0000  GETTABUP  R1 = _ENV[K0('PlayerPrefs')]
  0001  GETTABLE  R1 = R1[K1('GetInt')]
  0002  GETTABUP  R2 = _ENV[K2('EPlayerPrefKey')]
  0003  GETTABLE  R2 = R2[K3('FrameDecoActivityDailyOpenTime')]
  0004  LOADK     R3 = K4 0
  0005  TAILCALL  tailcall(R1, 0)
  0006  RETURN    return R1..R0
  0007  RETURN    return R0..R-1
; ---------- proto41 [SetDailyPopupTime] ----------
  ; fn ?  line 506-508 np=2 va=0 ms=5 code=7 consts=4 upvals=1 protos=0
  ;   K[0]='PlayerPrefs'
  ;   K[1]='SetInt'
  ;   K[2]='EPlayerPrefKey'
  ;   K[3]='FrameDecoActivityDailyOpenTime'
  ;   upvals: _ENV
  ;   locals: self(0-7), time(0-7)
  0000  GETTABUP  R2 = _ENV[K0('PlayerPrefs')]
  0001  GETTABLE  R2 = R2[K1('SetInt')]
  0002  GETTABUP  R3 = _ENV[K2('EPlayerPrefKey')]
  0003  GETTABLE  R3 = R3[K3('FrameDecoActivityDailyOpenTime')]
  0004  MOVE      R4 = R0
  0005  CALL      R2 = call(R2, 0 args, 2 rets)
  0006  RETURN    return R0..R-1
; ---------- proto42 [_DispatchStateChangedEvent] ----------
  ; fn ?  line 514-516 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
; ---------- proto43 [_DispatchRefreshEntryEvent] ----------
  ; fn ?  line 518-520 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
; ---------- proto44 [_DispatchScoreChangedEvent] ----------
  ; fn ?  line 522-524 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]='ScoreChangedEvent'
  ;   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('ScoreChangedEvent')]
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto45 [_DispatchStageUnlockedEvent] ----------
  ; fn ?  line 526-528 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]='StageUnlockedEvent'
  ;   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('StageUnlockedEvent')]
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto46 [_DispatchRedeemDecoSlotEvent] ----------
  ; fn ?  line 530-532 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]='RedeemDecoSlotEvent'
  ;   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('RedeemDecoSlotEvent')]
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto47 [_DispatchRedeemRewardEvent] ----------
  ; fn ?  line 534-536 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]='RedeemRewardEvent'
  ;   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('RedeemRewardEvent')]
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto48 [_DispatchStageRewardEvent] ----------
  ; fn ?  line 538-540 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]='StageRewardEvent'
  ;   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('StageRewardEvent')]
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto49 [DispatchPlayAnimationEndEvent] ----------
  ; fn ?  line 542-544 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]='PlayAnimationEndEvent'
  ;   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('PlayAnimationEndEvent')]
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto50 [_DispatchUpdateRedPointEvent] ----------
  ; fn ?  line 546-548 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]='UpdateRedPointEvent'
  ;   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('UpdateRedPointEvent')]
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto51 [_ChangeTokenCount] ----------
  ; fn ?  line 555-557 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
; ---------- proto52 [GetRedeemDecoSlotViewData] ----------
  ; fn ?  line 559-562 np=1 va=0 ms=7 code=12 consts=3 upvals=1 protos=0
  ;   K[0]='table'
  ;   K[1]='unpack'
  ;   K[2]='m_redeemDecoSlotViewData'
  ;   upvals: _ENV
  ;   locals: self(0-12), slot(7-12), stage(7-12), index(7-12)
  0000  GETTABUP  R1 = _ENV[K0('table')]
  0001  GETTABLE  R1 = R1[K1('unpack')]
  0002  GETTABLE  R2 = R0[K2('m_redeemDecoSlotViewData')]
  0003  TEST      if not R2 then   -> -131066
  0004  JMP       (jump)   -> 6
  0005  NEWTABLE  R2 = {} (0 items)
  0006  CALL      R1 = call(R1, 3 args, 1 rets)
  0007  MOVE      R4 = R0
  0008  MOVE      R5 = R0
  0009  MOVE      R6 = R0
  0010  RETURN    return R4..R3
  0011  RETURN    return R0..R-1
; ---------- proto53 [ClearRedeemDecoSlotData] ----------
  ; fn ?  line 564-566 np=1 va=0 ms=2 code=2 consts=2 upvals=0 protos=0
  ;   K[0]='m_redeemDecoSlotViewData'
  ;   K[1]=nil
  ;   locals: self(0-2)
  0000  SETTABLE  R0[K0('m_redeemDecoSlotViewData')] = K1(nil)
  0001  RETURN    return R0..R-1
; ---------- proto54 [GetRedeemRewardViewData] ----------
  ; fn ?  line 568-571 np=1 va=0 ms=7 code=12 consts=3 upvals=1 protos=0
  ;   K[0]='table'
  ;   K[1]='unpack'
  ;   K[2]='m_redeemRewardViewData'
  ;   upvals: _ENV
  ;   locals: self(0-12), arrRedeemRewards(7-12), stage(7-12), index(7-12)
  0000  GETTABUP  R1 = _ENV[K0('table')]
  0001  GETTABLE  R1 = R1[K1('unpack')]
  0002  GETTABLE  R2 = R0[K2('m_redeemRewardViewData')]
  0003  TEST      if not R2 then   -> -131066
  0004  JMP       (jump)   -> 6
  0005  NEWTABLE  R2 = {} (0 items)
  0006  CALL      R1 = call(R1, 3 args, 1 rets)
  0007  MOVE      R4 = R0
  0008  MOVE      R5 = R0
  0009  MOVE      R6 = R0
  0010  RETURN    return R4..R3
  0011  RETURN    return R0..R-1
; ---------- proto55 [ClearRedeemRewardViewData] ----------
  ; fn ?  line 573-575 np=1 va=0 ms=2 code=2 consts=2 upvals=0 protos=0
  ;   K[0]='m_redeemRewardViewData'
  ;   K[1]=nil
  ;   locals: self(0-2)
  0000  SETTABLE  R0[K0('m_redeemRewardViewData')] = K1(nil)
  0001  RETURN    return R0..R-1
; ---------- proto56 [GetStageRewardViewData] ----------
  ; fn ?  line 577-580 np=1 va=0 ms=5 code=11 consts=3 upvals=1 protos=0
  ;   K[0]='table'
  ;   K[1]='unpack'
  ;   K[2]='m_stageRewardViewData'
  ;   upvals: _ENV
  ;   locals: self(0-11), arrStageRewards(7-11), stage(7-11)
  0000  GETTABUP  R1 = _ENV[K0('table')]
  0001  GETTABLE  R1 = R1[K1('unpack')]
  0002  GETTABLE  R2 = R0[K2('m_stageRewardViewData')]
  0003  TEST      if not R2 then   -> -131066
  0004  JMP       (jump)   -> 6
  0005  NEWTABLE  R2 = {} (0 items)
  0006  CALL      R1 = call(R1, 2 args, 1 rets)
  0007  MOVE      R3 = R0
  0008  MOVE      R4 = R0
  0009  RETURN    return R3..R2
  0010  RETURN    return R0..R-1
; ---------- proto57 [ClearStageRewardViewData] ----------
  ; fn ?  line 582-584 np=1 va=0 ms=2 code=2 consts=2 upvals=0 protos=0
  ;   K[0]='m_stageRewardViewData'
  ;   K[1]=nil
  ;   locals: self(0-2)
  0000  SETTABLE  R0[K0('m_stageRewardViewData')] = K1(nil)
  0001  RETURN    return R0..R-1
; ---------- proto58 [CanAddScore] ----------
  ; fn ?  line 592-594 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
; ---------- proto59 [AcquireActivityToken] ----------
  ; fn ?  line 597-601 np=2 va=0 ms=5 code=6 consts=2 upvals=0 protos=0
  ;   K[0]='_ChangeTokenCount'
  ;   K[1]='_DispatchScoreChangedEvent'
  ;   locals: self(0-6), count(0-6)
  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  CALL      R2 = call(R2, 0 args, 1 rets)
  0005  RETURN    return R0..R-1
; ---------- proto60 [ConsumeActivityToken] ----------
  ; fn ?  line 604-615 np=4 va=0 ms=11 code=27 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-27), count(0-27), scene(0-27), consumer(0-27)
  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  CALL      R4 = call(R4, 0 args, 1 rets)
  0013  GETTABUP  R4 = _ENV[K4('GM')]
  0014  GETTABLE  R4 = R4[K5('PropertyDataManager')]
  0015  SELF      R5 = R4[K6('DispatchConsumeEvent')] (self)
  0016  SELF      R7 = R0[K7('GetActivityDefinition')] (self)
  0017  CALL      R6 = call(R6, 1 args, 1 rets)
  0018  GETTABLE  R6 = R6[K8('ActivityTokenPropertyType')]
  0019  MOVE      R7 = R0
  0020  MOVE      R8 = R0
  0021  LOADNIL   R9..R9 = nil
  0022  MOVE      R10 = R0
  0023  CALL      R4 = call(R4, 0 args, 6 rets)
  0024  LOADBOOL  R4 = true
  0025  RETURN    return R4..R3
  0026  RETURN    return R0..R-1
; ---------- proto61 [GetActivityTokenNumber] ----------
  ; fn ?  line 617-619 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
; ---------- proto62 [IsTokenReward] ----------
  ; fn ?  line 621-628 np=1 va=0 ms=7 code=14 consts=3 upvals=1 protos=0
  ;   K[0]='pairs'
  ;   K[1]='FrameDecoActivityDefinition'
  ;   K[2]='ActivityTokenPropertyType'
  ;   upvals: _ENV
  ;   locals: propertyType(0-14), (for generator)(3-11), (for state)(3-11), (for control)(3-11), activityType(4-9), activityDefinition(4-9)
  0000  GETTABUP  R1 = _ENV[K0('pairs')]
  0001  GETTABUP  R2 = _ENV[K1('FrameDecoActivityDefinition')]
  0002  CALL      R1 = call(R1, 3 args, 1 rets)
  0003  JMP       (jump)   -> 9
  0004  GETTABLE  R6 = R5[K2('ActivityTokenPropertyType')]
  0005  EQ        if R0 eq R6   -> -131059
  0006  JMP       (jump)   -> 9
  0007  LOADBOOL  R6 = true
  0008  RETURN    return R6..R5
  0009  TFORCALL  tforcall R1
  0010  TFORLOOP  tforloop R3(sBx=-7)   -> 4
  0011  LOADBOOL  R1 = false
  0012  RETURN    return R1..R0
  0013  RETURN    return R0..R-1
; ---------- proto63 [GetButtonTarget] ----------
  ; fn ?  line 630-655 np=2 va=0 ms=14 code=67 consts=22 upvals=1 protos=0
  ;   K[0]='pairs'
  ;   K[1]='FrameDecoActivityDefinition'
  ;   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]='MainBoardView'
  ;   K[16]='GetInstance'
  ;   K[17]='GetOrderArea'
  ;   K[18]='GetIconAreaByActivityType'
  ;   K[19]='Main'
  ;   K[20]='TutorialHelper'
  ;   K[21]='EntryButtonKey'
  ;   upvals: _ENV
  ;   locals: propertyType(0-67), flyCount(0-67), mainWindow(1-67), hudButton(1-67), (for generator)(4-64), (for state)(4-64), (for control)(4-64), activityType(5-62), activityDefinition(5-62), boardView(38-48), orderArea(42-48)
  0000  LOADNIL   R2..R2 = nil
  0001  GETTABUP  R4 = _ENV[K0('pairs')]
  0002  GETTABUP  R5 = _ENV[K1('FrameDecoActivityDefinition')]
  0003  CALL      R4 = call(R4, 3 args, 1 rets)
  0004  JMP       (jump)   -> 62
  0005  GETTABLE  R9 = R8[K2('ActivityTokenPropertyType')]
  0006  EQ        if R0 eq R9   -> -131055
  0007  JMP       (jump)   -> 62
  0008  GETTABUP  R9 = _ENV[K3('GM')]
  0009  GETTABLE  R9 = R9[K4('UIManager')]
  0010  SELF      R10 = R9[K5('GetOpenedViewByName')] (self)
  0011  GETTABLE  R11 = R8[K6('MainWindowPrefabName')]
  0012  CALL      R9 = call(R9, 1 args, 2 rets)
  0013  MOVE      R2 = R0
  0014  EQ        if R1 eq K7(nil)   -> -129769
  0015  JMP       (jump)   -> 27
  0016  SELF      R10 = R2[K8('GetHudButton')] (self)
  0017  CALL      R9 = call(R9, 1 args, 1 rets)
  0018  MOVE      R3 = R0
  0019  GETTABUP  R9 = _ENV[K9('UIUtil')]
  0020  GETTABLE  R9 = R9[K10('IsEmptyComponent')]
  0021  MOVE      R10 = R0
  0022  CALL      R9 = call(R9, 1 args, 1 rets)
  0023  TEST      if not R9 then   -> -131046
  0024  JMP       (jump)   -> 62
  0025  RETURN    return R3..R2
  0026  JMP       (jump)   -> 62
  0027  GETTABUP  R9 = _ENV[K3('GM')]
  0028  GETTABLE  R9 = R9[K11('SceneManager')]
  0029  SELF      R10 = R9[K12('GetGameMode')] (self)
  0030  CALL      R9 = call(R9, 1 args, 1 rets)
  0031  GETTABUP  R10 = _ENV[K13('EGameMode')]
  0032  GETTABLE  R10 = R10[K14('Board')]
  0033  EQ        if R0 eq R10   -> -126419
  0034  JMP       (jump)   -> 49
  0035  GETTABUP  R9 = _ENV[K15('MainBoardView')]
  0036  GETTABLE  R9 = R9[K16('GetInstance')]
  0037  CALL      R9 = call(R9, 1 args, 0 rets)
  0038  EQ        if R1 eq K7(nil)   -> -126161
  0039  JMP       (jump)   -> 62
  0040  SELF      R11 = R9[K17('GetOrderArea')] (self)
  0041  CALL      R10 = call(R10, 1 args, 1 rets)
  0042  EQ        if R1 eq K7(nil)   -> -125645
  0043  JMP       (jump)   -> 62
  0044  SELF      R12 = R10[K18('GetIconAreaByActivityType')] (self)
  0045  MOVE      R13 = R0
  0046  TAILCALL  tailcall(R11, 0)
  0047  RETURN    return R11..R10
  0048  JMP       (jump)   -> 62
  0049  GETTABUP  R9 = _ENV[K3('GM')]
  0050  GETTABLE  R9 = R9[K11('SceneManager')]
  0051  SELF      R10 = R9[K12('GetGameMode')] (self)
  0052  CALL      R9 = call(R9, 1 args, 1 rets)
  0053  GETTABUP  R10 = _ENV[K13('EGameMode')]
  0054  GETTABLE  R10 = R10[K19('Main')]
  0055  EQ        if R0 eq R10   -> -126397
  0056  JMP       (jump)   -> 62
  0057  GETTABUP  R9 = _ENV[K20('TutorialHelper')]
  0058  GETTABLE  R9 = R9[K8('GetHudButton')]
  0059  GETTABLE  R10 = R8[K21('EntryButtonKey')]
  0060  TAILCALL  tailcall(R9, 0)
  0061  RETURN    return R9..R8
  0062  TFORCALL  tforcall R4
  0063  TFORLOOP  tforloop R6(sBx=-59)   -> 5
  0064  LOADNIL   R4..R4 = nil
  0065  RETURN    return R4..R3
  0066  RETURN    return R0..R-1
; ---------- proto64 [CanClaimRewardsInStage] ----------
  ; fn ?  line 662-681 np=2 va=0 ms=12 code=42 consts=8 upvals=0 protos=0
  ;   K[0]='GetCurrentStage'
  ;   K[1]='GetTotalStage'
  ;   K[2]='GetStageRedeemCount'
  ;   K[3]=1
  ;   K[4]='GetStageRedeemConfig'
  ;   K[5]='IsRewardTaken'
  ;   K[6]='GetTokenCount'
  ;   K[7]='need'
  ;   locals: self(0-42), stage(0-42), stageRedeemCount(15-42), config(16-42), (for index)(19-39), (for limit)(19-39), (for step)(19-39), index(20-38)
  0000  SELF      R3 = R0[K0('GetCurrentStage')] (self)
  0001  CALL      R2 = call(R2, 1 args, 1 rets)
  0002  LT        if R0 lt R1   -> -130043
  0003  JMP       (jump)   -> 6
  0004  LOADBOOL  R2 = false
  0005  RETURN    return R2..R1
  0006  SELF      R3 = R0[K1('GetTotalStage')] (self)
  0007  CALL      R2 = call(R2, 1 args, 1 rets)
  0008  LT        if R0 lt R1   -> -130037
  0009  JMP       (jump)   -> 12
  0010  LOADBOOL  R2 = false
  0011  RETURN    return R2..R1
  0012  SELF      R3 = R0[K2('GetStageRedeemCount')] (self)
  0013  MOVE      R4 = R0
  0014  CALL      R2 = call(R2, 1 args, 2 rets)
  0015  LOADNIL   R3..R3 = nil
  0016  LOADK     R4 = K3 1
  0017  MOVE      R5 = R0
  0018  LOADK     R6 = K3 1
  0019  FORPREP   forprep R4(sBx=18)   -> 38
  0020  SELF      R9 = R0[K4('GetStageRedeemConfig')] (self)
  0021  MOVE      R10 = R0
  0022  MOVE      R11 = R0
  0023  CALL      R8 = call(R8, 1 args, 3 rets)
  0024  MOVE      R3 = R0
  0025  SELF      R9 = R0[K5('IsRewardTaken')] (self)
  0026  MOVE      R10 = R0
  0027  MOVE      R11 = R0
  0028  CALL      R8 = call(R8, 1 args, 3 rets)
  0029  TEST      if not R8 then   -> -131040
  0030  JMP       (jump)   -> 38
  0031  SELF      R9 = R0[K6('GetTokenCount')] (self)
  0032  CALL      R8 = call(R8, 1 args, 1 rets)
  0033  GETTABLE  R9 = R3[K7('need')]
  0034  LE        if R0 le R8   -> -126420
  0035  JMP       (jump)   -> 38
  0036  LOADBOOL  R8 = true
  0037  RETURN    return R8..R7
  0038  FORLOOP   forloop R4(sBx=-19)   -> 20
  0039  LOADBOOL  R4 = false
  0040  RETURN    return R4..R3
  0041  RETURN    return R0..R-1
; ---------- proto65 [HasClaimedAllRewardsInStage] ----------
  ; fn ?  line 684-692 np=2 va=0 ms=11 code=19 consts=3 upvals=0 protos=0
  ;   K[0]='GetStageRedeemCount'
  ;   K[1]=1
  ;   K[2]='IsRewardTaken'
  ;   locals: self(0-19), stage(0-19), stageRedeemCount(3-19), (for index)(6-16), (for limit)(6-16), (for step)(6-16), index(7-15)
  0000  SELF      R3 = R0[K0('GetStageRedeemCount')] (self)
  0001  MOVE      R4 = R0
  0002  CALL      R2 = call(R2, 1 args, 2 rets)
  0003  LOADK     R3 = K1 1
  0004  MOVE      R4 = R0
  0005  LOADK     R5 = K1 1
  0006  FORPREP   forprep R3(sBx=8)   -> 15
  0007  SELF      R8 = R0[K2('IsRewardTaken')] (self)
  0008  MOVE      R9 = R0
  0009  MOVE      R10 = R0
  0010  CALL      R7 = call(R7, 1 args, 3 rets)
  0011  TEST      if not R7 then   -> -131058
  0012  JMP       (jump)   -> 15
  0013  LOADBOOL  R7 = false
  0014  RETURN    return R7..R6
  0015  FORLOOP   forloop R3(sBx=-9)   -> 7
  0016  LOADBOOL  R3 = true
  0017  RETURN    return R3..R2
  0018  RETURN    return R0..R-1
; ---------- proto66 [HasClaimedAllRewards] ----------
  ; fn ?  line 695-697 np=1 va=0 ms=5 code=6 consts=2 upvals=0 protos=0
  ;   K[0]='IsStageRewardTaken'
  ;   K[1]='GetTotalStage'
  ;   locals: self(0-6)
  0000  SELF      R2 = R0[K0('IsStageRewardTaken')] (self)
  0001  SELF      R4 = R0[K1('GetTotalStage')] (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
; ---------- proto67 [RedeemReward] ----------
  ; fn ?  line 701-746 np=3 va=0 ms=14 code=113 consts=37 upvals=1 protos=0
  ;   K[0]='IsRewardTaken'
  ;   K[1]='GetCurrentStage'
  ;   K[2]='GetStageRedeemConfig'
  ;   K[3]='GetTokenNeeded'
  ;   K[4]='GetTokenCount'
  ;   K[5]='IsDecoReward'
  ;   K[6]='deco'
  ;   K[7]='rewards'
  ;   K[8]='ConsumeActivityToken'
  ;   K[9]='EBIType'
  ;   K[10]='FrameDecoRedeem'
  ;   K[11]='GetDecoSlot'
  ;   K[12]='SetDecoSlotBuilt'
  ;   K[13]='GM'
  ;   K[14]='BIManager'
  ;   K[15]='LogAcquire'
  ;   K[16]=1
  ;   K[17]='FrameDecoRedeemReward'
  ;   K[18]='m_redeemDecoSlotViewData'
  ;   K[19]='table'
  ;   K[20]='pack'
  ;   K[21]='_DispatchRedeemDecoSlotEvent'
  ;   K[22]='GetRewards'
  ;   K[23]='RewardApi'
  ;   K[24]='FilterRewards'
  ;   K[25]='ERewardScene'
  ;   K[26]='Other'
  ;   K[27]='AcquireRewardsLogic'
  ;   K[28]='EPropertySource'
  ;   K[29]='Give'
  ;   K[30]='m_redeemRewardViewData'
  ;   K[31]='_DispatchRedeemRewardEvent'
  ;   K[32]='SetRewardTaken'
  ;   K[33]='HasClaimedAllRewardsInStage'
  ;   K[34]='AcquireStageReward'
  ;   K[35]='RefreshDecoSlotCanExchangeState'
  ;   K[36]='_DispatchUpdateRedPointEvent'
  ;   upvals: _ENV
  ;   locals: self(0-113), stage(0-113), index(0-113), config(18-113), tokenNeeded(20-113), bIsDecoReward(28-113), consumer(34-113), slot(44-65), arrRedeemRewards(68-94)
  0000  SELF      R4 = R0[K0('IsRewardTaken')] (self)
  0001  MOVE      R5 = R0
  0002  MOVE      R6 = R0
  0003  CALL      R3 = call(R3, 1 args, 3 rets)
  0004  TEST      if not R3 then   -> -131066
  0005  JMP       (jump)   -> 8
  0006  LOADBOOL  R3 = false
  0007  RETURN    return R3..R2
  0008  SELF      R4 = R0[K1('GetCurrentStage')] (self)
  0009  CALL      R3 = call(R3, 1 args, 1 rets)
  0010  LT        if R0 lt R1   -> -129523
  0011  JMP       (jump)   -> 14
  0012  LOADBOOL  R3 = false
  0013  RETURN    return R3..R2
  0014  SELF      R4 = R0[K2('GetStageRedeemConfig')] (self)
  0015  MOVE      R5 = R0
  0016  MOVE      R6 = R0
  0017  CALL      R3 = call(R3, 1 args, 3 rets)
  0018  SELF      R5 = R3[K3('GetTokenNeeded')] (self)
  0019  CALL      R4 = call(R4, 1 args, 1 rets)
  0020  SELF      R6 = R0[K4('GetTokenCount')] (self)
  0021  CALL      R5 = call(R5, 1 args, 1 rets)
  0022  LT        if R0 lt R4   -> -128484
  0023  JMP       (jump)   -> 26
  0024  LOADBOOL  R5 = false
  0025  RETURN    return R5..R4
  0026  SELF      R6 = R3[K5('IsDecoReward')] (self)
  0027  CALL      R5 = call(R5, 1 args, 1 rets)
  0028  TEST      if not R5 then   -> -131042
  0029  JMP       (jump)   -> 33
  0030  LOADK     R6 = K6 'deco'
  0031  TEST      if not R6 then   -> -131038
  0032  JMP       (jump)   -> 34
  0033  LOADK     R6 = K7 'rewards'
  0034  SELF      R8 = R0[K8('ConsumeActivityToken')] (self)
  0035  MOVE      R9 = R0
  0036  GETTABUP  R10 = _ENV[K9('EBIType')]
  0037  GETTABLE  R10 = R10[K10('FrameDecoRedeem')]
  0038  MOVE      R11 = R0
  0039  CALL      R7 = call(R7, 0 args, 4 rets)
  0040  TEST      if not R5 then   -> -131030
  0041  JMP       (jump)   -> 66
  0042  SELF      R8 = R3[K11('GetDecoSlot')] (self)
  0043  CALL      R7 = call(R7, 1 args, 1 rets)
  0044  SELF      R9 = R0[K12('SetDecoSlotBuilt')] (self)
  0045  MOVE      R10 = R0
  0046  CALL      R8 = call(R8, 0 args, 2 rets)
  0047  GETTABUP  R8 = _ENV[K13('GM')]
  0048  GETTABLE  R8 = R8[K14('BIManager')]
  0049  SELF      R9 = R8[K15('LogAcquire')] (self)
  0050  MOVE      R10 = R0
  0051  LOADK     R11 = K16 1
  0052  GETTABUP  R12 = _ENV[K9('EBIType')]
  0053  GETTABLE  R12 = R12[K17('FrameDecoRedeemReward')]
  0054  LOADBOOL  R13 = true
  0055  CALL      R8 = call(R8, 0 args, 5 rets)
  0056  GETTABUP  R8 = _ENV[K19('table')]
  0057  GETTABLE  R8 = R8[K20('pack')]
  0058  MOVE      R9 = R0
  0059  MOVE      R10 = R0
  0060  MOVE      R11 = R0
  0061  CALL      R8 = call(R8, 1 args, 3 rets)
  0062  SETTABLE  R0[K18('m_redeemDecoSlotViewData')] = R8
  0063  SELF      R9 = R0[K21('_DispatchRedeemDecoSlotEvent')] (self)
  0064  CALL      R8 = call(R8, 0 args, 1 rets)
  0065  JMP       (jump)   -> 94
  0066  SELF      R8 = R3[K22('GetRewards')] (self)
  0067  CALL      R7 = call(R7, 1 args, 1 rets)
  0068  GETTABUP  R8 = _ENV[K23('RewardApi')]
  0069  GETTABLE  R8 = R8[K24('FilterRewards')]
  0070  MOVE      R9 = R0
  0071  GETTABUP  R10 = _ENV[K25('ERewardScene')]
  0072  GETTABLE  R10 = R10[K26('Other')]
  0073  CALL      R8 = call(R8, 1 args, 2 rets)
  0074  MOVE      R7 = R0
  0075  GETTABUP  R8 = _ENV[K23('RewardApi')]
  0076  GETTABLE  R8 = R8[K27('AcquireRewardsLogic')]
  0077  MOVE      R9 = R0
  0078  GETTABUP  R10 = _ENV[K28('EPropertySource')]
  0079  GETTABLE  R10 = R10[K29('Give')]
  0080  GETTABUP  R11 = _ENV[K9('EBIType')]
  0081  GETTABLE  R11 = R11[K17('FrameDecoRedeemReward')]
  0082  GETTABUP  R12 = _ENV[K25('ERewardScene')]
  0083  GETTABLE  R12 = R12[K26('Other')]
  0084  CALL      R8 = call(R8, 0 args, 4 rets)
  0085  GETTABUP  R8 = _ENV[K19('table')]
  0086  GETTABLE  R8 = R8[K20('pack')]
  0087  MOVE      R9 = R0
  0088  MOVE      R10 = R0
  0089  MOVE      R11 = R0
  0090  CALL      R8 = call(R8, 1 args, 3 rets)
  0091  SETTABLE  R0[K30('m_redeemRewardViewData')] = R8
  0092  SELF      R9 = R0[K31('_DispatchRedeemRewardEvent')] (self)
  0093  CALL      R8 = call(R8, 0 args, 1 rets)
  0094  SELF      R8 = R0[K32('SetRewardTaken')] (self)
  0095  MOVE      R9 = R0
  0096  MOVE      R10 = R0
  0097  CALL      R7 = call(R7, 0 args, 3 rets)
  0098  SELF      R8 = R0[K33('HasClaimedAllRewardsInStage')] (self)
  0099  MOVE      R9 = R0
  0100  CALL      R7 = call(R7, 1 args, 2 rets)
  0101  TEST      if not R7 then   -> -130969
  0102  JMP       (jump)   -> 106
  0103  SELF      R8 = R0[K34('AcquireStageReward')] (self)
  0104  MOVE      R9 = R0
  0105  CALL      R7 = call(R7, 0 args, 2 rets)
  0106  SELF      R8 = R0[K35('RefreshDecoSlotCanExchangeState')] (self)
  0107  CALL      R7 = call(R7, 0 args, 1 rets)
  0108  SELF      R8 = R0[K36('_DispatchUpdateRedPointEvent')] (self)
  0109  CALL      R7 = call(R7, 0 args, 1 rets)
  0110  LOADBOOL  R7 = true
  0111  RETURN    return R7..R6
  0112  RETURN    return R0..R-1
; ---------- proto68 [AcquireStageReward] ----------
  ; fn ?  line 749-780 np=2 va=0 ms=12 code=75 consts=29 upvals=1 protos=0
  ;   K[0]='IsStageRewardTaken'
  ;   K[1]='GetStageRewardConfig'
  ;   K[2]='GetRewards'
  ;   K[3]='Table'
  ;   K[4]='IsEmpty'
  ;   K[5]='RewardApi'
  ;   K[6]='FilterRewards'
  ;   K[7]='ERewardScene'
  ;   K[8]='Other'
  ;   K[9]='AcquireRewardsLogic'
  ;   K[10]='EPropertySource'
  ;   K[11]='Give'
  ;   K[12]='EBIType'
  ;   K[13]='FrameDecoStageReward'
  ;   K[14]='m_stageRewardViewData'
  ;   K[15]='table'
  ;   K[16]='pack'
  ;   K[17]='ipairs'
  ;   K[18]='PROPERTY_TYPE'
  ;   K[19]='GetRewardFrameId'
  ;   K[20]='_LogTakeFrameReward'
  ;   K[21]='_DispatchStageRewardEvent'
  ;   K[22]='_LogStageFinished'
  ;   K[23]='SetStageRewardTaken'
  ;   K[24]='SetCurrentStage'
  ;   K[25]=1
  ;   K[26]='HasClaimedAllRewards'
  ;   K[27]='_DispatchStageUnlockedEvent'
  ;   K[28]='_LogTakeAllReward'
  ;   upvals: _ENV
  ;   locals: self(0-75), stage(0-75), config(9-75), arrStageRewards(11-75), (for generator)(43-55), (for state)(43-55), (for control)(43-55), _(44-53), reward(44-53)
  0000  SELF      R3 = R0[K0('IsStageRewardTaken')] (self)
  0001  MOVE      R4 = R0
  0002  CALL      R2 = call(R2, 1 args, 2 rets)
  0003  TEST      if not R2 then   -> -131067
  0004  JMP       (jump)   -> 6
  0005  RETURN    return R0..R-1
  0006  SELF      R3 = R0[K1('GetStageRewardConfig')] (self)
  0007  MOVE      R4 = R0
  0008  CALL      R2 = call(R2, 1 args, 2 rets)
  0009  SELF      R4 = R2[K2('GetRewards')] (self)
  0010  CALL      R3 = call(R3, 1 args, 1 rets)
  0011  GETTABUP  R4 = _ENV[K3('Table')]
  0012  GETTABLE  R4 = R4[K4('IsEmpty')]
  0013  MOVE      R5 = R0
  0014  CALL      R4 = call(R4, 1 args, 1 rets)
  0015  TEST      if not R4 then   -> -131054
  0016  JMP       (jump)   -> 55
  0017  GETTABUP  R4 = _ENV[K5('RewardApi')]
  0018  GETTABLE  R4 = R4[K6('FilterRewards')]
  0019  MOVE      R5 = R0
  0020  GETTABUP  R6 = _ENV[K7('ERewardScene')]
  0021  GETTABLE  R6 = R6[K8('Other')]
  0022  CALL      R4 = call(R4, 1 args, 2 rets)
  0023  MOVE      R3 = R0
  0024  GETTABUP  R4 = _ENV[K5('RewardApi')]
  0025  GETTABLE  R4 = R4[K9('AcquireRewardsLogic')]
  0026  MOVE      R5 = R0
  0027  GETTABUP  R6 = _ENV[K10('EPropertySource')]
  0028  GETTABLE  R6 = R6[K11('Give')]
  0029  GETTABUP  R7 = _ENV[K12('EBIType')]
  0030  GETTABLE  R7 = R7[K13('FrameDecoStageReward')]
  0031  GETTABUP  R8 = _ENV[K7('ERewardScene')]
  0032  GETTABLE  R8 = R8[K8('Other')]
  0033  CALL      R4 = call(R4, 0 args, 4 rets)
  0034  GETTABUP  R4 = _ENV[K15('table')]
  0035  GETTABLE  R4 = R4[K16('pack')]
  0036  MOVE      R5 = R0
  0037  MOVE      R6 = R0
  0038  CALL      R4 = call(R4, 1 args, 2 rets)
  0039  SETTABLE  R0[K14('m_stageRewardViewData')] = R4
  0040  GETTABUP  R4 = _ENV[K17('ipairs')]
  0041  MOVE      R5 = R0
  0042  CALL      R4 = call(R4, 3 args, 1 rets)
  0043  JMP       (jump)   -> 53
  0044  GETTABUP  R9 = _ENV[K18('PROPERTY_TYPE')]
  0045  GETTABLE  R9 = R8[R9]
  0046  SELF      R11 = R0[K19('GetRewardFrameId')] (self)
  0047  CALL      R10 = call(R10, 1 args, 1 rets)
  0048  EQ        if R0 eq R10   -> -126404
  0049  JMP       (jump)   -> 53
  0050  SELF      R10 = R0[K20('_LogTakeFrameReward')] (self)
  0051  CALL      R9 = call(R9, 0 args, 1 rets)
  0052  JMP       (jump)   -> 55
  0053  TFORCALL  tforcall R4
  0054  TFORLOOP  tforloop R6(sBx=-11)   -> 44
  0055  SELF      R5 = R0[K21('_DispatchStageRewardEvent')] (self)
  0056  CALL      R4 = call(R4, 0 args, 1 rets)
  0057  SELF      R5 = R0[K22('_LogStageFinished')] (self)
  0058  CALL      R4 = call(R4, 0 args, 1 rets)
  0059  SELF      R5 = R0[K23('SetStageRewardTaken')] (self)
  0060  MOVE      R6 = R0
  0061  CALL      R4 = call(R4, 0 args, 2 rets)
  0062  SELF      R5 = R0[K24('SetCurrentStage')] (self)
  0063  ADD       R6 = K25(1) add R1
  0064  CALL      R4 = call(R4, 0 args, 2 rets)
  0065  SELF      R5 = R0[K26('HasClaimedAllRewards')] (self)
  0066  CALL      R4 = call(R4, 1 args, 1 rets)
  0067  TEST      if not R4 then   -> -131002
  0068  JMP       (jump)   -> 72
  0069  SELF      R5 = R0[K27('_DispatchStageUnlockedEvent')] (self)
  0070  CALL      R4 = call(R4, 0 args, 1 rets)
  0071  JMP       (jump)   -> 74
  0072  SELF      R5 = R0[K28('_LogTakeAllReward')] (self)
  0073  CALL      R4 = call(R4, 0 args, 1 rets)
  0074  RETURN    return R0..R-1
; ---------- proto69 [RefreshDecoSlotCanExchangeState] ----------
  ; fn ?  line 782-799 np=1 va=0 ms=14 code=56 consts=15 upvals=1 protos=0
  ;   K[0]='GetState'
  ;   K[1]='ActivityState'
  ;   K[2]='Released'
  ;   K[3]='HasClaimedAllRewards'
  ;   K[4]='GetCurrentStage'
  ;   K[5]='GetStageRedeemCount'
  ;   K[6]=1
  ;   K[7]='IsRewardTaken'
  ;   K[8]='GetStageRedeemConfig'
  ;   K[9]='IsDecoReward'
  ;   K[10]='IsDecoSlotCanExchange'
  ;   K[11]='GetDecoSlot'
  ;   K[12]='SetDecoSlotCanExchange'
  ;   K[13]='GetActivityTokenNumber'
  ;   K[14]='GetTokenNeeded'
  ;   upvals: _ENV
  ;   locals: self(0-56), curStage(13-56), redeemCount(16-56), config(17-56), (for index)(20-55), (for limit)(20-55), (for step)(20-55), i(21-54)
  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('Released')]
  0004  EQ        if R1 eq R2   -> -130552
  0005  JMP       (jump)   -> 10
  0006  SELF      R2 = R0[K3('HasClaimedAllRewards')] (self)
  0007  CALL      R1 = call(R1, 1 args, 1 rets)
  0008  TEST      if not R1 then   -> -131062
  0009  JMP       (jump)   -> 11
  0010  RETURN    return R0..R-1
  0011  SELF      R2 = R0[K4('GetCurrentStage')] (self)
  0012  CALL      R1 = call(R1, 1 args, 1 rets)
  0013  SELF      R3 = R0[K5('GetStageRedeemCount')] (self)
  0014  MOVE      R4 = R0
  0015  CALL      R2 = call(R2, 1 args, 2 rets)
  0016  LOADNIL   R3..R3 = nil
  0017  LOADK     R4 = K6 1
  0018  MOVE      R5 = R0
  0019  LOADK     R6 = K6 1
  0020  FORPREP   forprep R4(sBx=33)   -> 54
  0021  SELF      R9 = R0[K7('IsRewardTaken')] (self)
  0022  MOVE      R10 = R0
  0023  MOVE      R11 = R0
  0024  CALL      R8 = call(R8, 1 args, 3 rets)
  0025  TEST      if not R8 then   -> -131044
  0026  JMP       (jump)   -> 54
  0027  SELF      R9 = R0[K8('GetStageRedeemConfig')] (self)
  0028  MOVE      R10 = R0
  0029  MOVE      R11 = R0
  0030  CALL      R8 = call(R8, 1 args, 3 rets)
  0031  MOVE      R3 = R0
  0032  SELF      R9 = R3[K9('IsDecoReward')] (self)
  0033  CALL      R8 = call(R8, 1 args, 1 rets)
  0034  TEST      if not R8 then   -> -131036
  0035  JMP       (jump)   -> 54
  0036  SELF      R9 = R0[K10('IsDecoSlotCanExchange')] (self)
  0037  SELF      R11 = R3[K11('GetDecoSlot')] (self)
  0038  CALL      R10 = call(R10, -1 args, 1 rets)
  0039  CALL      R8 = call(R8, 1 args, -1 rets)
  0040  TEST      if not R8 then   -> -131030
  0041  JMP       (jump)   -> 54
  0042  SELF      R9 = R0[K12('SetDecoSlotCanExchange')] (self)
  0043  SELF      R11 = R3[K11('GetDecoSlot')] (self)
  0044  CALL      R10 = call(R10, 1 args, 1 rets)
  0045  SELF      R12 = R0[K13('GetActivityTokenNumber')] (self)
  0046  CALL      R11 = call(R11, 1 args, 1 rets)
  0047  SELF      R13 = R3[K14('GetTokenNeeded')] (self)
  0048  CALL      R12 = call(R12, 1 args, 1 rets)
  0049  LE        if R1 le R11   -> -124866
  0050  JMP       (jump)   -> 52
  0051  LOADBOOL  R11 = false
  0052  LOADBOOL  R11 = true
  0053  CALL      R8 = call(R8, 0 args, 3 rets)
  0054  FORLOOP   forloop R4(sBx=-34)   -> 21
  0055  RETURN    return R0..R-1
; ---------- proto70 [GetRewardFrameId] ----------
  ; fn ?  line 806-808 np=1 va=0 ms=2 code=4 consts=2 upvals=0 protos=0
  ;   K[0]='m_config'
  ;   K[1]='frameReward'
  ;   locals: self(0-4)
  0000  GETTABLE  R1 = R0[K0('m_config')]
  0001  GETTABLE  R1 = R1[K1('frameReward')]
  0002  RETURN    return R1..R0
  0003  RETURN    return R0..R-1
; ---------- proto71 [OnEntryClicked] ----------
  ; fn ?  line 815-821 np=1 va=0 ms=4 code=12 consts=5 upvals=1 protos=0
  ;   K[0]='HasWindowOpenedOnce'
  ;   K[1]='ActivityState'
  ;   K[2]='Started'
  ;   K[3]='OpenStartWindow'
  ;   K[4]='OpenMainWindow'
  ;   upvals: _ENV
  ;   locals: self(0-12)
  0000  SELF      R2 = R0[K0('HasWindowOpenedOnce')] (self)
  0001  GETTABUP  R3 = _ENV[K1('ActivityState')]
  0002  GETTABLE  R3 = R3[K2('Started')]
  0003  CALL      R1 = call(R1, 1 args, 2 rets)
  0004  TEST      if not R1 then   -> -131065
  0005  JMP       (jump)   -> 9
  0006  SELF      R2 = R0[K3('OpenStartWindow')] (self)
  0007  CALL      R1 = call(R1, 0 args, 1 rets)
  0008  JMP       (jump)   -> 11
  0009  SELF      R2 = R0[K4('OpenMainWindow')] (self)
  0010  CALL      R1 = call(R1, 0 args, 1 rets)
  0011  RETURN    return R0..R-1
; ---------- proto72 [_OpenWindow] ----------
  ; fn ?  line 824-826 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
; ---------- proto73 [OpenStartWindow] ----------
  ; fn ?  line 828-830 np=2 va=0 ms=6 code=7 consts=3 upvals=0 protos=0
  ;   K[0]='_OpenWindow'
  ;   K[1]='GetActivityDefinition'
  ;   K[2]='StartWindowPrefabName'
  ;   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('StartWindowPrefabName')]
  0004  MOVE      R5 = R0
  0005  CALL      R2 = call(R2, 0 args, 3 rets)
  0006  RETURN    return R0..R-1
; ---------- proto74 [OpenMainWindow] ----------
  ; fn ?  line 834-836 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
; ---------- proto75 [CanPopupDailyWindow] ----------
  ; fn ?  line 838-856 np=1 va=0 ms=6 code=30 consts=9 upvals=1 protos=0
  ;   K[0]='GetState'
  ;   K[1]='ActivityState'
  ;   K[2]='Started'
  ;   K[3]='GetCurrentStage'
  ;   K[4]='CanClaimRewardsInStage'
  ;   K[5]='GM'
  ;   K[6]='GameModel'
  ;   K[7]='GetServerDay'
  ;   K[8]='_GetDailyPopupTime'
  ;   upvals: _ENV
  ;   locals: self(0-30), state(2-30), stage(10-30), serverDay(21-30)
  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)   -> 8
  0006  LOADBOOL  R2 = false
  0007  RETURN    return R2..R1
  0008  SELF      R3 = R0[K3('GetCurrentStage')] (self)
  0009  CALL      R2 = call(R2, 1 args, 1 rets)
  0010  SELF      R4 = R0[K4('CanClaimRewardsInStage')] (self)
  0011  MOVE      R5 = R0
  0012  CALL      R3 = call(R3, 1 args, 2 rets)
  0013  TEST      if not R3 then   -> -131056
  0014  JMP       (jump)   -> 17
  0015  LOADBOOL  R3 = false
  0016  RETURN    return R3..R2
  0017  GETTABUP  R3 = _ENV[K5('GM')]
  0018  GETTABLE  R3 = R3[K6('GameModel')]
  0019  SELF      R4 = R3[K7('GetServerDay')] (self)
  0020  CALL      R3 = call(R3, 1 args, 1 rets)
  0021  SELF      R5 = R0[K8('_GetDailyPopupTime')] (self)
  0022  CALL      R4 = call(R4, 1 args, 1 rets)
  0023  LE        if R0 le R4   -> -129507
  0024  JMP       (jump)   -> 27
  0025  LOADBOOL  R4 = false
  0026  RETURN    return R4..R3
  0027  LOADBOOL  R4 = true
  0028  RETURN    return R4..R3
  0029  RETURN    return R0..R-1
; ---------- proto76 [GetMapEntryShowConfig] ----------
  ; fn ?  line 863-873 np=1 va=0 ms=3 code=17 consts=10 upvals=0 protos=1
  ;   K[0]='statusChangeEvent'
  ;   K[1]='m_activityDefinition'
  ;   K[2]='StateChangedEvent'
  ;   K[3]='eEntryRootKey'
  ;   K[4]='EntryRootKey'
  ;   K[5]='entryPrefabName'
  ;   K[6]='EntryPrefabName'
  ;   K[7]='hudKey'
  ;   K[8]='EntryButtonKey'
  ;   K[9]='checkFun'
  ;   locals: self(0-17)
  0000  NEWTABLE  R1 = {} (0 items)
  0001  GETTABLE  R2 = R0[K1('m_activityDefinition')]
  0002  GETTABLE  R2 = R2[K2('StateChangedEvent')]
  0003  SETTABLE  R1[K0('statusChangeEvent')] = R2
  0004  GETTABLE  R2 = R0[K1('m_activityDefinition')]
  0005  GETTABLE  R2 = R2[K4('EntryRootKey')]
  0006  SETTABLE  R1[K3('eEntryRootKey')] = R2
  0007  GETTABLE  R2 = R0[K1('m_activityDefinition')]
  0008  GETTABLE  R2 = R2[K6('EntryPrefabName')]
  0009  SETTABLE  R1[K5('entryPrefabName')] = R2
  0010  GETTABLE  R2 = R0[K1('m_activityDefinition')]
  0011  GETTABLE  R2 = R2[K8('EntryButtonKey')]
  0012  SETTABLE  R1[K7('hudKey')] = R2
  0013  CLOSURE   R2 = closure proto0
  0014  SETTABLE  R1[K9('checkFun')] = R2
  0015  RETURN    return R1..R0
  0016  RETURN    return R0..R-1
  ; ---------- proto0 [checkFun] ----------
    ; fn ?  line 869-871 np=0 va=0 ms=2 code=5 consts=1 upvals=1 protos=0
    ;   K[0]='IsActivityOpen'
    ;   upvals: self
    0000  GETUPVAL  R0 = self
    0001  SELF      R1 = R0[K0('IsActivityOpen')] (self)
    0002  TAILCALL  tailcall(R0, 0)
    0003  RETURN    return R0..R-1
    0004  RETURN    return R0..R-1
; ---------- proto77 [GetBoardEntryShowConfig] ----------
  ; fn ?  line 876-885 np=1 va=0 ms=3 code=14 consts=8 upvals=0 protos=1
  ;   K[0]='statusChangeEvent'
  ;   K[1]='m_activityDefinition'
  ;   K[2]='StateChangedEvent'
  ;   K[3]='eEntryRootKey'
  ;   K[4]='EntryRootKey'
  ;   K[5]='entryPrefabName'
  ;   K[6]='BoardEntryPrefabName'
  ;   K[7]='checkFun'
  ;   locals: self(0-14)
  0000  NEWTABLE  R1 = {} (0 items)
  0001  GETTABLE  R2 = R0[K1('m_activityDefinition')]
  0002  GETTABLE  R2 = R2[K2('StateChangedEvent')]
  0003  SETTABLE  R1[K0('statusChangeEvent')] = R2
  0004  GETTABLE  R2 = R0[K1('m_activityDefinition')]
  0005  GETTABLE  R2 = R2[K4('EntryRootKey')]
  0006  SETTABLE  R1[K3('eEntryRootKey')] = R2
  0007  GETTABLE  R2 = R0[K1('m_activityDefinition')]
  0008  GETTABLE  R2 = R2[K6('BoardEntryPrefabName')]
  0009  SETTABLE  R1[K5('entryPrefabName')] = R2
  0010  CLOSURE   R2 = closure proto0
  0011  SETTABLE  R1[K7('checkFun')] = R2
  0012  RETURN    return R1..R0
  0013  RETURN    return R0..R-1
  ; ---------- proto0 [checkFun] ----------
    ; fn ?  line 881-883 np=0 va=0 ms=2 code=5 consts=1 upvals=1 protos=0
    ;   K[0]='IsActivityOpen'
    ;   upvals: self
    0000  GETUPVAL  R0 = self
    0001  SELF      R1 = R0[K0('IsActivityOpen')] (self)
    0002  TAILCALL  tailcall(R0, 0)
    0003  RETURN    return R0..R-1
    0004  RETURN    return R0..R-1
; ---------- proto78 [GetRewardProgressInfo] ----------
  ; fn ?  line 890-909 np=1 va=0 ms=16 code=42 consts=10 upvals=1 protos=0
  ;   K[0]='m_config'
  ;   K[1]=nil
  ;   K[2]='GetState'
  ;   K[3]='ActivityState'
  ;   K[4]='Released'
  ;   K[5]=0
  ;   K[6]=1
  ;   K[7]='GetTotalStage'
  ;   K[8]='GetStageRedeemCount'
  ;   K[9]='IsRewardTaken'
  ;   upvals: _ENV
  ;   locals: self(0-42), total(13-42), cur(14-42), redeemCount(15-42), (for index)(19-38), (for limit)(19-38), (for step)(19-38), stage(20-37), (for index)(28-37), (for limit)(28-37), (for step)(28-37), i(29-36)
  0000  GETTABLE  R1 = R0[K0('m_config')]
  0001  EQ        if R1 eq K1(nil)   -> -130300
  0002  JMP       (jump)   -> 9
  0003  SELF      R2 = R0[K2('GetState')] (self)
  0004  CALL      R1 = call(R1, 1 args, 1 rets)
  0005  GETTABUP  R2 = _ENV[K3('ActivityState')]
  0006  GETTABLE  R2 = R2[K4('Released')]
  0007  EQ        if R0 eq R2   -> -130549
  0008  JMP       (jump)   -> 12
  0009  LOADK     R1 = K5 0
  0010  LOADK     R2 = K5 0
  0011  RETURN    return R1..R0
  0012  LOADK     R1 = K5 0
  0013  LOADK     R2 = K5 0
  0014  LOADNIL   R3..R3 = nil
  0015  LOADK     R4 = K6 1
  0016  SELF      R6 = R0[K7('GetTotalStage')] (self)
  0017  CALL      R5 = call(R5, 1 args, 1 rets)
  0018  LOADK     R6 = K6 1
  0019  FORPREP   forprep R4(sBx=17)   -> 37
  0020  SELF      R9 = R0[K8('GetStageRedeemCount')] (self)
  0021  MOVE      R10 = R0
  0022  CALL      R8 = call(R8, 1 args, 2 rets)
  0023  MOVE      R3 = R0
  0024  ADD       R1 = R3 add R1
  0025  LOADK     R8 = K6 1
  0026  MOVE      R9 = R0
  0027  LOADK     R10 = K6 1
  0028  FORPREP   forprep R8(sBx=7)   -> 36
  0029  SELF      R13 = R0[K9('IsRewardTaken')] (self)
  0030  MOVE      R14 = R0
  0031  MOVE      R15 = R0
  0032  CALL      R12 = call(R12, 1 args, 3 rets)
  0033  TEST      if not R12 then   -> -131037
  0034  JMP       (jump)   -> 36
  0035  ADD       R2 = K6(1) add R2
  0036  FORLOOP   forloop R8(sBx=-8)   -> 29
  0037  FORLOOP   forloop R4(sBx=-18)   -> 20
  0038  MOVE      R4 = R0
  0039  MOVE      R5 = R0
  0040  RETURN    return R4..R3
  0041  RETURN    return R0..R-1
; ---------- proto79 [GetStageTotalRedeemCount] ----------
  ; fn ?  line 911-917 np=2 va=0 ms=10 code=12 consts=3 upvals=0 protos=0
  ;   K[0]=0
  ;   K[1]=1
  ;   K[2]='GetStageRedeemCount'
  ;   locals: self(0-12), stage(0-12), result(1-12), (for index)(4-10), (for limit)(4-10), (for step)(4-10), i(5-9)
  0000  LOADK     R2 = K0 0
  0001  LOADK     R3 = K1 1
  0002  MOVE      R4 = R0
  0003  LOADK     R5 = K1 1
  0004  FORPREP   forprep R3(sBx=4)   -> 9
  0005  SELF      R8 = R0[K2('GetStageRedeemCount')] (self)
  0006  MOVE      R9 = R0
  0007  CALL      R7 = call(R7, 1 args, 2 rets)
  0008  ADD       R2 = R7 add R2
  0009  FORLOOP   forloop R3(sBx=-5)   -> 5
  0010  RETURN    return R2..R1
  0011  RETURN    return R0..R-1
; ---------- proto80 [_LogStageFinished] ----------
  ; fn ?  line 923-926 np=1 va=0 ms=6 code=8 consts=4 upvals=1 protos=0
  ;   K[0]='GetCurrentStage'
  ;   K[1]='LogActivity'
  ;   K[2]='EBIType'
  ;   K[3]='ActivityRankUp'
  ;   upvals: _ENV
  ;   locals: self(0-8), stage(2-8)
  0000  SELF      R2 = R0[K0('GetCurrentStage')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  SELF      R3 = R0[K1('LogActivity')] (self)
  0003  GETTABUP  R4 = _ENV[K2('EBIType')]
  0004  GETTABLE  R4 = R4[K3('ActivityRankUp')]
  0005  MOVE      R5 = R0
  0006  CALL      R2 = call(R2, 0 args, 3 rets)
  0007  RETURN    return R0..R-1
; ---------- proto81 [_LogTakeFrameReward] ----------
  ; fn ?  line 928-930 np=1 va=0 ms=4 code=7 consts=5 upvals=1 protos=0
  ;   K[0]='GM'
  ;   K[1]='BIManager'
  ;   K[2]='LogAction'
  ;   K[3]='EBIType'
  ;   K[4]='FrameDecoTakeFrameReward'
  ;   upvals: _ENV
  ;   locals: self(0-7)
  0000  GETTABUP  R1 = _ENV[K0('GM')]
  0001  GETTABLE  R1 = R1[K1('BIManager')]
  0002  SELF      R2 = R1[K2('LogAction')] (self)
  0003  GETTABUP  R3 = _ENV[K3('EBIType')]
  0004  GETTABLE  R3 = R3[K4('FrameDecoTakeFrameReward')]
  0005  CALL      R1 = call(R1, 0 args, 2 rets)
  0006  RETURN    return R0..R-1
; ---------- proto82 [_LogTakeAllReward] ----------
  ; fn ?  line 932-934 np=1 va=0 ms=4 code=7 consts=5 upvals=1 protos=0
  ;   K[0]='GM'
  ;   K[1]='BIManager'
  ;   K[2]='LogAction'
  ;   K[3]='EBIType'
  ;   K[4]='FrameDecoTakeAllReward'
  ;   upvals: _ENV
  ;   locals: self(0-7)
  0000  GETTABUP  R1 = _ENV[K0('GM')]
  0001  GETTABLE  R1 = R1[K1('BIManager')]
  0002  SELF      R2 = R1[K2('LogAction')] (self)
  0003  GETTABUP  R3 = _ENV[K3('EBIType')]
  0004  GETTABLE  R3 = R3[K4('FrameDecoTakeAllReward')]
  0005  CALL      R1 = call(R1, 0 args, 2 rets)
  0006  RETURN    return R0..R-1
