# Model_Activity_ActivityTokenHelper_157.luac
; fn @ActivityTokenHelper.lua  line 0-0 np=0 va=1 ms=9 code=154 consts=93 upvals=1 protos=27
;   K[0]='empty'
;   K[1]='EActTokenAcquireType'
;   K[2]='Merge'
;   K[3]='merge'
;   K[4]='CostEnergy'
;   K[5]='costenergy'
;   K[6]='ProducerClick'
;   K[7]='producerClick'
;   K[8]='FinishOrder'
;   K[9]='order'
;   K[10]='ShopItem'
;   K[11]='shopItem'
;   K[12]='Cook'
;   K[13]='cook'
;   K[14]='ERoundType'
;   K[15]='Up'
;   K[16]='up'
;   K[17]='Down'
;   K[18]='down'
;   K[19]='Round'
;   K[20]='round'
;   K[21]='Down_1'
;   K[22]='down_1'
;   K[23]='EFlyElementLabelStyle'
;   K[24]='Default'
;   K[25]='textColor'
;   K[26]='CSColor'
;   K[27]=1
;   K[28]=0.9882352941176471
;   K[29]=0.5137254901960784
;   K[30]='size'
;   K[31]=57
;   K[32]='outlineColor'
;   K[33]=0.5490196078431373
;   K[34]=0.17647058823529413
;   K[35]=0.08627450980392157
;   K[36]='shadowColor'
;   K[37]=0.5019607843137255
;   K[38]=0.16862745098039217
;   K[39]='outlineDis'
;   K[40]='Vector2'
;   K[41]=2
;   K[42]='shadowDis'
;   K[43]=0
;   K[44]=-3
;   K[45]='pairs'
;   K[46]='__index'
;   K[47]='noDelayTime'
;   K[48]=true
;   K[49]='floatUp'
;   K[50]='ActivityTokenHelper'
;   K[51]='ath_ce'
;   K[52]='ath_cp'
;   K[53]='ath_re'
;   K[54]='ath_o_'
;   K[55]='ath_ck_'
;   K[56]='Create'
;   K[57]='ActivityTokenHelper'
;   K[58]='Init'
;   K[59]='LoadConfig'
;   K[60]='SetCustomFunc2SelectProduceConfig'
;   K[61]='IsValid'
;   K[62]='_AddEventListener'
;   K[63]='Destroy'
;   K[64]='_OnItemMerge'
;   K[65]='ActivityTokenHelper'
;   K[66]='_OnEnergyCosumed'
;   K[67]='ActivityTokenHelper'
;   K[68]='_OnProducerItemClicked'
;   K[69]='ActivityTokenHelper'
;   K[70]='_OnShopBuyItem'
;   K[71]='ActivityTokenHelper'
;   K[72]='_OnBuyItem'
;   K[73]='ActivityTokenHelper'
;   K[74]='PlayAcquireAnim'
;   K[75]='CanAddOrderReward'
;   K[76]='GetOrderExtraReward'
;   K[77]='ActivityTokenHelper'
;   K[78]='_OnOrderFinished'
;   K[79]='CanAddCookReward'
;   K[80]='GetCookExtraReward'
;   K[81]='ActivityTokenHelper'
;   K[82]='_OnItemCookStarted'
;   K[83]='_OnItemCookEnded'
;   K[84]='GetAddReward'
;   K[85]='ActivityTokenHelper'
;   K[86]='TryUseRatioReward'
;   K[87]='GetRatioRewards'
;   K[88]='ActivityTokenHelper'
;   K[89]='IsAcquireTypeValid'
;   K[90]='GetCostEnergyInfo'
;   K[91]='CheckScoreConfig'
;   K[92]='_CheckConfigSpecial'
;   upvals: _ENV
;   locals: EmptyRewardType(1-154), (for generator)(54-58), (for state)(54-58), (for control)(54-58), k(55-56), v(55-56), DefaultViewData(61-154), DB_KEY_COST_ENERGY(68-154), DB_KEY_CLICK_PRODUCER(69-154), DB_KEY_RANDOM_ENERGY(70-154), DB_KEY_ORDER_REWARD_PREFIX(71-154), DB_KEY_COOK_PREFIX(72-154)
0000  LOADK     R0 = K0 'empty'
0001  NEWTABLE  R1 = {} (0 items)
0002  SETTABLE  R1[K2('Merge')] = K3('merge')
0003  SETTABLE  R1[K4('CostEnergy')] = K5('costenergy')
0004  SETTABLE  R1[K6('ProducerClick')] = K7('producerClick')
0005  SETTABLE  R1[K8('FinishOrder')] = K9('order')
0006  SETTABLE  R1[K10('ShopItem')] = K11('shopItem')
0007  SETTABLE  R1[K12('Cook')] = K13('cook')
0008  SETTABUP  _ENV[K1('EActTokenAcquireType')] = R1
0009  NEWTABLE  R1 = {} (0 items)
0010  SETTABLE  R1[K15('Up')] = K16('up')
0011  SETTABLE  R1[K17('Down')] = K18('down')
0012  SETTABLE  R1[K19('Round')] = K20('round')
0013  SETTABLE  R1[K21('Down_1')] = K22('down_1')
0014  SETTABUP  _ENV[K14('ERoundType')] = R1
0015  NEWTABLE  R1 = {} (0 items)
0016  NEWTABLE  R2 = {} (0 items)
0017  GETTABUP  R3 = _ENV[K26('CSColor')]
0018  LOADK     R4 = K27 1
0019  LOADK     R5 = K28 0.9882352941176471
0020  LOADK     R6 = K29 0.5137254901960784
0021  LOADK     R7 = K27 1
0022  CALL      R3 = call(R3, 1 args, 4 rets)
0023  SETTABLE  R2[K25('textColor')] = R3
0024  SETTABLE  R2[K30('size')] = K31(57)
0025  GETTABUP  R3 = _ENV[K26('CSColor')]
0026  LOADK     R4 = K33 0.5490196078431373
0027  LOADK     R5 = K34 0.17647058823529413
0028  LOADK     R6 = K35 0.08627450980392157
0029  LOADK     R7 = K27 1
0030  CALL      R3 = call(R3, 1 args, 4 rets)
0031  SETTABLE  R2[K32('outlineColor')] = R3
0032  GETTABUP  R3 = _ENV[K26('CSColor')]
0033  LOADK     R4 = K27 1
0034  LOADK     R5 = K37 0.5019607843137255
0035  LOADK     R6 = K38 0.16862745098039217
0036  LOADK     R7 = K27 1
0037  CALL      R3 = call(R3, 1 args, 4 rets)
0038  SETTABLE  R2[K36('shadowColor')] = R3
0039  GETTABUP  R3 = _ENV[K40('Vector2')]
0040  LOADK     R4 = K41 2
0041  LOADK     R5 = K41 2
0042  CALL      R3 = call(R3, 1 args, 2 rets)
0043  SETTABLE  R2[K39('outlineDis')] = R3
0044  GETTABUP  R3 = _ENV[K40('Vector2')]
0045  LOADK     R4 = K43 0
0046  LOADK     R5 = K44 -3
0047  CALL      R3 = call(R3, 1 args, 2 rets)
0048  SETTABLE  R2[K42('shadowDis')] = R3
0049  SETTABLE  R1[K24('Default')] = R2
0050  SETTABUP  _ENV[K23('EFlyElementLabelStyle')] = R1
0051  GETTABUP  R1 = _ENV[K45('pairs')]
0052  GETTABUP  R2 = _ENV[K23('EFlyElementLabelStyle')]
0053  CALL      R1 = call(R1, 3 args, 1 rets)
0054  JMP       (jump)   -> 56
0055  SETTABLE  R5[K46('__index')] = R5
0056  TFORCALL  tforcall R1
0057  TFORLOOP  tforloop R3(sBx=-3)   -> 55
0058  NEWTABLE  R1 = {} (0 items)
0059  SETTABLE  R1[K47('noDelayTime')] = K48(true)
0060  SETTABLE  R1[K49('floatUp')] = K48(true)
0061  SETTABLE  R1[K46('__index')] = R1
0062  NEWTABLE  R2 = {} (0 items)
0063  SETTABUP  _ENV[K50('ActivityTokenHelper')] = R2
0064  GETTABUP  R2 = _ENV[K50('ActivityTokenHelper')]
0065  GETTABUP  R3 = _ENV[K50('ActivityTokenHelper')]
0066  SETTABLE  R2[K46('__index')] = R3
0067  LOADK     R2 = K51 'ath_ce'
0068  LOADK     R3 = K52 'ath_cp'
0069  LOADK     R4 = K53 'ath_re'
0070  LOADK     R5 = K54 'ath_o_'
0071  LOADK     R6 = K55 'ath_ck_'
0072  GETTABUP  R7 = _ENV[K50('ActivityTokenHelper')]
0073  CLOSURE   R8 = closure proto0
0074  SETTABLE  R7[K56('Create')] = R8
0075  GETTABUP  R7 = _ENV[K57('ActivityTokenHelper')]
0076  CLOSURE   R8 = closure proto1
0077  SETTABLE  R7[K58('Init')] = R8
0078  GETTABUP  R7 = _ENV[K57('ActivityTokenHelper')]
0079  CLOSURE   R8 = closure proto2
0080  SETTABLE  R7[K59('LoadConfig')] = R8
0081  GETTABUP  R7 = _ENV[K57('ActivityTokenHelper')]
0082  CLOSURE   R8 = closure proto3
0083  SETTABLE  R7[K60('SetCustomFunc2SelectProduceConfig')] = R8
0084  GETTABUP  R7 = _ENV[K57('ActivityTokenHelper')]
0085  CLOSURE   R8 = closure proto4
0086  SETTABLE  R7[K61('IsValid')] = R8
0087  GETTABUP  R7 = _ENV[K57('ActivityTokenHelper')]
0088  CLOSURE   R8 = closure proto5
0089  SETTABLE  R7[K62('_AddEventListener')] = R8
0090  GETTABUP  R7 = _ENV[K57('ActivityTokenHelper')]
0091  CLOSURE   R8 = closure proto6
0092  SETTABLE  R7[K63('Destroy')] = R8
0093  GETTABUP  R7 = _ENV[K57('ActivityTokenHelper')]
0094  CLOSURE   R8 = closure proto7
0095  SETTABLE  R7[K64('_OnItemMerge')] = R8
0096  GETTABUP  R7 = _ENV[K65('ActivityTokenHelper')]
0097  CLOSURE   R8 = closure proto8
0098  SETTABLE  R7[K66('_OnEnergyCosumed')] = R8
0099  GETTABUP  R7 = _ENV[K67('ActivityTokenHelper')]
0100  CLOSURE   R8 = closure proto9
0101  SETTABLE  R7[K68('_OnProducerItemClicked')] = R8
0102  GETTABUP  R7 = _ENV[K69('ActivityTokenHelper')]
0103  CLOSURE   R8 = closure proto10
0104  SETTABLE  R7[K70('_OnShopBuyItem')] = R8
0105  GETTABUP  R7 = _ENV[K71('ActivityTokenHelper')]
0106  CLOSURE   R8 = closure proto11
0107  SETTABLE  R7[K72('_OnBuyItem')] = R8
0108  GETTABUP  R7 = _ENV[K73('ActivityTokenHelper')]
0109  CLOSURE   R8 = closure proto12
0110  SETTABLE  R7[K74('PlayAcquireAnim')] = R8
0111  GETTABUP  R7 = _ENV[K73('ActivityTokenHelper')]
0112  CLOSURE   R8 = closure proto13
0113  SETTABLE  R7[K75('CanAddOrderReward')] = R8
0114  GETTABUP  R7 = _ENV[K73('ActivityTokenHelper')]
0115  CLOSURE   R8 = closure proto14
0116  SETTABLE  R7[K76('GetOrderExtraReward')] = R8
0117  GETTABUP  R7 = _ENV[K77('ActivityTokenHelper')]
0118  CLOSURE   R8 = closure proto15
0119  SETTABLE  R7[K78('_OnOrderFinished')] = R8
0120  GETTABUP  R7 = _ENV[K77('ActivityTokenHelper')]
0121  CLOSURE   R8 = closure proto16
0122  SETTABLE  R7[K79('CanAddCookReward')] = R8
0123  GETTABUP  R7 = _ENV[K77('ActivityTokenHelper')]
0124  CLOSURE   R8 = closure proto17
0125  SETTABLE  R7[K80('GetCookExtraReward')] = R8
0126  GETTABUP  R7 = _ENV[K81('ActivityTokenHelper')]
0127  CLOSURE   R8 = closure proto18
0128  SETTABLE  R7[K82('_OnItemCookStarted')] = R8
0129  GETTABUP  R7 = _ENV[K81('ActivityTokenHelper')]
0130  CLOSURE   R8 = closure proto19
0131  SETTABLE  R7[K83('_OnItemCookEnded')] = R8
0132  GETTABUP  R7 = _ENV[K81('ActivityTokenHelper')]
0133  CLOSURE   R8 = closure proto20
0134  SETTABLE  R7[K84('GetAddReward')] = R8
0135  GETTABUP  R7 = _ENV[K85('ActivityTokenHelper')]
0136  CLOSURE   R8 = closure proto21
0137  SETTABLE  R7[K86('TryUseRatioReward')] = R8
0138  GETTABUP  R7 = _ENV[K85('ActivityTokenHelper')]
0139  CLOSURE   R8 = closure proto22
0140  SETTABLE  R7[K87('GetRatioRewards')] = R8
0141  GETTABUP  R7 = _ENV[K88('ActivityTokenHelper')]
0142  CLOSURE   R8 = closure proto23
0143  SETTABLE  R7[K89('IsAcquireTypeValid')] = R8
0144  GETTABUP  R7 = _ENV[K88('ActivityTokenHelper')]
0145  CLOSURE   R8 = closure proto24
0146  SETTABLE  R7[K90('GetCostEnergyInfo')] = R8
0147  GETTABUP  R7 = _ENV[K88('ActivityTokenHelper')]
0148  CLOSURE   R8 = closure proto25
0149  SETTABLE  R7[K91('CheckScoreConfig')] = R8
0150  GETTABUP  R7 = _ENV[K88('ActivityTokenHelper')]
0151  CLOSURE   R8 = closure proto26
0152  SETTABLE  R7[K92('_CheckConfigSpecial')] = R8
0153  RETURN    return R0..R-1
; ---------- proto0 [Create] ----------
  ; fn ?  line 104-108 np=4 va=0 ms=11 code=12 consts=3 upvals=1 protos=0
  ;   K[0]='setmetatable'
  ;   K[1]='ActivityTokenHelper'
  ;   K[2]='Init'
  ;   upvals: _ENV
  ;   locals: model(0-12), dbTable(0-12), flyLabelStyle(0-12), viewDataParam(0-12), helper(4-12)
  0000  GETTABUP  R4 = _ENV[K0('setmetatable')]
  0001  NEWTABLE  R5 = {} (0 items)
  0002  GETTABUP  R6 = _ENV[K1('ActivityTokenHelper')]
  0003  CALL      R4 = call(R4, 1 args, 2 rets)
  0004  SELF      R6 = R4[K2('Init')] (self)
  0005  MOVE      R7 = R0
  0006  MOVE      R8 = R0
  0007  MOVE      R9 = R0
  0008  MOVE      R10 = R0
  0009  CALL      R5 = call(R5, 0 args, 5 rets)
  0010  RETURN    return R4..R3
  0011  RETURN    return R0..R-1
; ---------- proto1 [Init] ----------
  ; fn ?  line 113-152 np=5 va=0 ms=8 code=73 consts=16 upvals=2 protos=4
  ;   K[0]='m_model'
  ;   K[1]='m_dbTable'
  ;   K[2]='_AddEventListener'
  ;   K[3]='m_bIsValid'
  ;   K[4]=false
  ;   K[5]='m_labelStyle'
  ;   K[6]='EFlyElementLabelStyle'
  ;   K[7]='Default'
  ;   K[8]='m_viewDataParam'
  ;   K[9]='setmetatable'
  ;   K[10]='__index'
  ;   K[11]='CanAddOrderReward'
  ;   K[12]='BaseActivityModel'
  ;   K[13]='GetOrderExtraReward'
  ;   K[14]='CanAddCookReward'
  ;   K[15]='GetCookExtraReward'
  ;   upvals: _ENV, DefaultViewData
  ;   locals: self(0-73), model(0-73), dbTable(0-73), flyLabelStyle(0-73), viewDataParam(0-73)
  0000  SETTABLE  R0[K0('m_model')] = R1
  0001  SETTABLE  R0[K1('m_dbTable')] = R2
  0002  SELF      R6 = R0[K2('_AddEventListener')] (self)
  0003  CALL      R5 = call(R5, 0 args, 1 rets)
  0004  SETTABLE  R0[K3('m_bIsValid')] = K4(false)
  0005  TESTSET   if R1 then R5   -> -129528
  0006  JMP       (jump)   -> 9
  0007  GETTABUP  R5 = _ENV[K6('EFlyElementLabelStyle')]
  0008  GETTABLE  R5 = R5[K7('Default')]
  0009  SETTABLE  R0[K5('m_labelStyle')] = R5
  0010  GETTABUP  R5 = _ENV[K9('setmetatable')]
  0011  TESTSET   if R1 then R6   -> -129010
  0012  JMP       (jump)   -> 14
  0013  NEWTABLE  R6 = {} (0 items)
  0014  GETUPVAL  R7 = _ENV
  0015  CALL      R5 = call(R5, 1 args, 2 rets)
  0016  SETTABLE  R0[K8('m_viewDataParam')] = R5
  0017  GETTABLE  R5 = R0[K8('m_viewDataParam')]
  0018  GETTABLE  R6 = R0[K8('m_viewDataParam')]
  0019  SETTABLE  R5[K10('__index')] = R6
  0020  GETTABLE  R5 = R0[K0('m_model')]
  0021  GETTABLE  R5 = R5[K11('CanAddOrderReward')]
  0022  TEST      if not R5 then   -> -131048
  0023  JMP       (jump)   -> 30
  0024  GETTABLE  R5 = R0[K0('m_model')]
  0025  GETTABLE  R5 = R5[K11('CanAddOrderReward')]
  0026  GETTABUP  R6 = _ENV[K12('BaseActivityModel')]
  0027  GETTABLE  R6 = R6[K11('CanAddOrderReward')]
  0028  EQ        if R0 eq R6   -> -128476
  0029  JMP       (jump)   -> 33
  0030  GETTABLE  R5 = R0[K0('m_model')]
  0031  CLOSURE   R6 = closure proto0
  0032  SETTABLE  R5[K11('CanAddOrderReward')] = R6
  0033  GETTABLE  R5 = R0[K0('m_model')]
  0034  GETTABLE  R5 = R5[K13('GetOrderExtraReward')]
  0035  TEST      if not R5 then   -> -131035
  0036  JMP       (jump)   -> 43
  0037  GETTABLE  R5 = R0[K0('m_model')]
  0038  GETTABLE  R5 = R5[K13('GetOrderExtraReward')]
  0039  GETTABUP  R6 = _ENV[K12('BaseActivityModel')]
  0040  GETTABLE  R6 = R6[K13('GetOrderExtraReward')]
  0041  EQ        if R0 eq R6   -> -128463
  0042  JMP       (jump)   -> 46
  0043  GETTABLE  R5 = R0[K0('m_model')]
  0044  CLOSURE   R6 = closure proto1
  0045  SETTABLE  R5[K13('GetOrderExtraReward')] = R6
  0046  GETTABLE  R5 = R0[K0('m_model')]
  0047  GETTABLE  R5 = R5[K14('CanAddCookReward')]
  0048  TEST      if not R5 then   -> -131022
  0049  JMP       (jump)   -> 56
  0050  GETTABLE  R5 = R0[K0('m_model')]
  0051  GETTABLE  R5 = R5[K14('CanAddCookReward')]
  0052  GETTABUP  R6 = _ENV[K12('BaseActivityModel')]
  0053  GETTABLE  R6 = R6[K14('CanAddCookReward')]
  0054  EQ        if R0 eq R6   -> -128450
  0055  JMP       (jump)   -> 59
  0056  GETTABLE  R5 = R0[K0('m_model')]
  0057  CLOSURE   R6 = closure proto2
  0058  SETTABLE  R5[K14('CanAddCookReward')] = R6
  0059  GETTABLE  R5 = R0[K0('m_model')]
  0060  GETTABLE  R5 = R5[K15('GetCookExtraReward')]
  0061  TEST      if not R5 then   -> -131009
  0062  JMP       (jump)   -> 69
  0063  GETTABLE  R5 = R0[K0('m_model')]
  0064  GETTABLE  R5 = R5[K15('GetCookExtraReward')]
  0065  GETTABUP  R6 = _ENV[K12('BaseActivityModel')]
  0066  GETTABLE  R6 = R6[K15('GetCookExtraReward')]
  0067  EQ        if R0 eq R6   -> -128437
  0068  JMP       (jump)   -> 72
  0069  GETTABLE  R5 = R0[K0('m_model')]
  0070  CLOSURE   R6 = closure proto3
  0071  SETTABLE  R5[K15('GetCookExtraReward')] = R6
  0072  RETURN    return R0..R-1
  ; ---------- proto0 [CanAddOrderReward] ----------
    ; fn ?  line 126-128 np=2 va=0 ms=5 code=6 consts=1 upvals=1 protos=0
    ;   K[0]='CanAddOrderReward'
    ;   upvals: self
    ;   locals: model(0-6), orderType(0-6)
    0000  GETUPVAL  R2 = self
    0001  SELF      R3 = R2[K0('CanAddOrderReward')] (self)
    0002  MOVE      R4 = R0
    0003  TAILCALL  tailcall(R2, 0)
    0004  RETURN    return R2..R1
    0005  RETURN    return R0..R-1
  ; ---------- proto1 [GetOrderExtraReward] ----------
    ; fn ?  line 133-135 np=4 va=0 ms=8 code=7 consts=1 upvals=1 protos=0
    ;   K[0]='GetOrderExtraReward'
    ;   upvals: self
    ;   locals: model(0-7), orderScore(0-7), coinNum(0-7), orderId(0-7)
    0000  GETUPVAL  R4 = self
    0001  SELF      R5 = R4[K0('GetOrderExtraReward')] (self)
    0002  MOVE      R6 = R0
    0003  MOVE      R7 = R0
    0004  TAILCALL  tailcall(R4, 0)
    0005  RETURN    return R4..R3
    0006  RETURN    return R0..R-1
  ; ---------- proto2 [CanAddCookReward] ----------
    ; fn ?  line 141-143 np=1 va=0 ms=3 code=5 consts=1 upvals=1 protos=0
    ;   K[0]='CanAddCookReward'
    ;   upvals: self
    ;   locals: model(0-5)
    0000  GETUPVAL  R1 = self
    0001  SELF      R2 = R1[K0('CanAddCookReward')] (self)
    0002  TAILCALL  tailcall(R1, 0)
    0003  RETURN    return R1..R0
    0004  RETURN    return R0..R-1
  ; ---------- proto3 [GetCookExtraReward] ----------
    ; fn ?  line 148-150 np=2 va=0 ms=5 code=6 consts=1 upvals=1 protos=0
    ;   K[0]='GetCookExtraReward'
    ;   upvals: self
    ;   locals: model(0-6), recipe(0-6)
    0000  GETUPVAL  R2 = self
    0001  SELF      R3 = R2[K0('GetCookExtraReward')] (self)
    0002  MOVE      R4 = R0
    0003  TAILCALL  tailcall(R2, 0)
    0004  RETURN    return R2..R1
    0005  RETURN    return R0..R-1
; ---------- proto2 [LoadConfig] ----------
  ; fn ?  line 155-185 np=2 va=0 ms=5 code=92 consts=23 upvals=1 protos=0
  ;   K[0]='Table'
  ;   K[1]='IsEmpty'
  ;   K[2]='produce_token_control'
  ;   K[3]='m_costEnergyCfg'
  ;   K[4]=nil
  ;   K[5]='m_arrProduceCfgs'
  ;   K[6]=1
  ;   K[7]='clickNum'
  ;   K[8]='energyNum'
  ;   K[9]='Log'
  ;   K[10]='Error'
  ;   K[11]='produce_token_control 中 clickNum 和 energyNum 不应同时配置'
  ;   K[12]='m_arrMergeCfgs'
  ;   K[13]='merge_token_control'
  ;   K[14]='m_arrOrderCfgs'
  ;   K[15]='order_token_control'
  ;   K[16]='m_arrShopItemCfgs'
  ;   K[17]='shopItem_token_control'
  ;   K[18]='m_arrCookCfgs'
  ;   K[19]='cook_token_control'
  ;   K[20]='m_bIsValid'
  ;   K[21]='CheckScoreConfig'
  ;   K[22]='_CheckConfigSpecial'
  ;   upvals: _ENV
  ;   locals: self(0-92), config(0-92)
  0000  GETTABUP  R2 = _ENV[K0('Table')]
  0001  GETTABLE  R2 = R2[K1('IsEmpty')]
  0002  GETTABLE  R3 = R1[K2('produce_token_control')]
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  TEST      if not R2 then   -> -131066
  0005  JMP       (jump)   -> 10
  0006  SETTABLE  R0[K3('m_costEnergyCfg')] = K4(nil)
  0007  NEWTABLE  R2 = {} (0 items)
  0008  SETTABLE  R0[K5('m_arrProduceCfgs')] = R2
  0009  JMP       (jump)   -> 27
  0010  GETTABLE  R2 = R1[K2('produce_token_control')]
  0011  SETTABLE  R0[K5('m_arrProduceCfgs')] = R2
  0012  GETTABLE  R2 = R1[K2('produce_token_control')]
  0013  GETTABLE  R2 = R2[K6(1)]
  0014  SETTABLE  R0[K3('m_costEnergyCfg')] = R2
  0015  GETTABLE  R2 = R0[K3('m_costEnergyCfg')]
  0016  GETTABLE  R2 = R2[K7('clickNum')]
  0017  TEST      if not R2 then   -> -131053
  0018  JMP       (jump)   -> 27
  0019  GETTABLE  R2 = R0[K3('m_costEnergyCfg')]
  0020  GETTABLE  R2 = R2[K8('energyNum')]
  0021  TEST      if not R2 then   -> -131049
  0022  JMP       (jump)   -> 27
  0023  GETTABUP  R2 = _ENV[K9('Log')]
  0024  GETTABLE  R2 = R2[K10('Error')]
  0025  LOADK     R3 = K11 'produce_token_control 中 clickNum 和 energyNum 不应同时配置'
  0026  CALL      R2 = call(R2, 0 args, 1 rets)
  0027  GETTABLE  R2 = R1[K13('merge_token_control')]
  0028  TEST      if not R2 then   -> -131041
  0029  JMP       (jump)   -> 31
  0030  NEWTABLE  R2 = {} (0 items)
  0031  SETTABLE  R0[K12('m_arrMergeCfgs')] = R2
  0032  GETTABLE  R2 = R1[K15('order_token_control')]
  0033  TEST      if not R2 then   -> -131036
  0034  JMP       (jump)   -> 36
  0035  NEWTABLE  R2 = {} (0 items)
  0036  SETTABLE  R0[K14('m_arrOrderCfgs')] = R2
  0037  GETTABLE  R2 = R1[K17('shopItem_token_control')]
  0038  TEST      if not R2 then   -> -131031
  0039  JMP       (jump)   -> 41
  0040  NEWTABLE  R2 = {} (0 items)
  0041  SETTABLE  R0[K16('m_arrShopItemCfgs')] = R2
  0042  GETTABLE  R2 = R1[K19('cook_token_control')]
  0043  TEST      if not R2 then   -> -131026
  0044  JMP       (jump)   -> 46
  0045  NEWTABLE  R2 = {} (0 items)
  0046  SETTABLE  R0[K18('m_arrCookCfgs')] = R2
  0047  GETTABLE  R2 = R0[K3('m_costEnergyCfg')]
  0048  EQ        if R0 eq K4(nil)   -> -129738
  0049  JMP       (jump)   -> 75
  0050  GETTABUP  R2 = _ENV[K0('Table')]
  0051  GETTABLE  R2 = R2[K1('IsEmpty')]
  0052  GETTABLE  R3 = R0[K12('m_arrMergeCfgs')]
  0053  CALL      R2 = call(R2, 1 args, 1 rets)
  0054  TEST      if not R2 then   -> -131016
  0055  JMP       (jump)   -> 75
  0056  GETTABUP  R2 = _ENV[K0('Table')]
  0057  GETTABLE  R2 = R2[K1('IsEmpty')]
  0058  GETTABLE  R3 = R0[K14('m_arrOrderCfgs')]
  0059  CALL      R2 = call(R2, 1 args, 1 rets)
  0060  TEST      if not R2 then   -> -131010
  0061  JMP       (jump)   -> 75
  0062  GETTABUP  R2 = _ENV[K0('Table')]
  0063  GETTABLE  R2 = R2[K1('IsEmpty')]
  0064  GETTABLE  R3 = R0[K16('m_arrShopItemCfgs')]
  0065  CALL      R2 = call(R2, 1 args, 1 rets)
  0066  TEST      if not R2 then   -> -131004
  0067  JMP       (jump)   -> 75
  0068  GETTABUP  R2 = _ENV[K0('Table')]
  0069  GETTABLE  R2 = R2[K1('IsEmpty')]
  0070  GETTABLE  R3 = R0[K18('m_arrCookCfgs')]
  0071  CALL      R2 = call(R2, 1 args, 1 rets)
  0072  NOT       R2 = not R0
  0073  JMP       (jump)   -> 76
  0074  LOADBOOL  R2 = false
  0075  LOADBOOL  R2 = true
  0076  SETTABLE  R0[K20('m_bIsValid')] = R2
  0077  SELF      R3 = R0[K21('CheckScoreConfig')] (self)
  0078  GETTABLE  R4 = R0[K12('m_arrMergeCfgs')]
  0079  CALL      R2 = call(R2, 0 args, 2 rets)
  0080  SELF      R3 = R0[K21('CheckScoreConfig')] (self)
  0081  GETTABLE  R4 = R0[K14('m_arrOrderCfgs')]
  0082  CALL      R2 = call(R2, 0 args, 2 rets)
  0083  SELF      R3 = R0[K21('CheckScoreConfig')] (self)
  0084  GETTABLE  R4 = R0[K16('m_arrShopItemCfgs')]
  0085  CALL      R2 = call(R2, 0 args, 2 rets)
  0086  SELF      R3 = R0[K21('CheckScoreConfig')] (self)
  0087  GETTABLE  R4 = R0[K18('m_arrCookCfgs')]
  0088  CALL      R2 = call(R2, 0 args, 2 rets)
  0089  SELF      R3 = R0[K22('_CheckConfigSpecial')] (self)
  0090  CALL      R2 = call(R2, 0 args, 1 rets)
  0091  RETURN    return R0..R-1
; ---------- proto3 [SetCustomFunc2SelectProduceConfig] ----------
  ; fn ?  line 187-189 np=2 va=0 ms=2 code=2 consts=1 upvals=0 protos=0
  ;   K[0]='m_selectProduceCfgFunc'
  ;   locals: self(0-2), func(0-2)
  0000  SETTABLE  R0[K0('m_selectProduceCfgFunc')] = R1
  0001  RETURN    return R0..R-1
; ---------- proto4 [IsValid] ----------
  ; fn ?  line 191-193 np=1 va=0 ms=2 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='m_bIsValid'
  ;   locals: self(0-3)
  0000  GETTABLE  R1 = R0[K0('m_bIsValid')]
  0001  RETURN    return R1..R0
  0002  RETURN    return R0..R-1
; ---------- proto5 [_AddEventListener] ----------
  ; fn ?  line 195-206 np=1 va=0 ms=5 code=64 consts=20 upvals=1 protos=0
  ;   K[0]='EventDispatcher'
  ;   K[1]='AddListener'
  ;   K[2]='EEventType'
  ;   K[3]='CosumeEnergy'
  ;   K[4]='_OnEnergyCosumed'
  ;   K[5]='ProducerItemClick'
  ;   K[6]='_OnProducerItemClicked'
  ;   K[7]='ItemMerged'
  ;   K[8]='_OnItemMerge'
  ;   K[9]='OrderFinished'
  ;   K[10]='_OnOrderFinished'
  ;   K[11]='ItemCookStarted'
  ;   K[12]='_OnItemCookStarted'
  ;   K[13]='ItemCookEnded'
  ;   K[14]='_OnItemCookEnded'
  ;   K[15]='ShopBuyItemSuccess'
  ;   K[16]='_OnShopBuyItem'
  ;   K[17]='BuyBubble'
  ;   K[18]='_OnBuyItem'
  ;   K[19]='BuyCobweb'
  ;   upvals: _ENV
  ;   locals: self(0-64)
  0000  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0001  GETTABLE  R1 = R1[K1('AddListener')]
  0002  GETTABUP  R2 = _ENV[K2('EEventType')]
  0003  GETTABLE  R2 = R2[K3('CosumeEnergy')]
  0004  MOVE      R3 = R0
  0005  GETTABLE  R4 = R0[K4('_OnEnergyCosumed')]
  0006  CALL      R1 = call(R1, 0 args, 3 rets)
  0007  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0008  GETTABLE  R1 = R1[K1('AddListener')]
  0009  GETTABUP  R2 = _ENV[K2('EEventType')]
  0010  GETTABLE  R2 = R2[K5('ProducerItemClick')]
  0011  MOVE      R3 = R0
  0012  GETTABLE  R4 = R0[K6('_OnProducerItemClicked')]
  0013  CALL      R1 = call(R1, 0 args, 3 rets)
  0014  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0015  GETTABLE  R1 = R1[K1('AddListener')]
  0016  GETTABUP  R2 = _ENV[K2('EEventType')]
  0017  GETTABLE  R2 = R2[K7('ItemMerged')]
  0018  MOVE      R3 = R0
  0019  GETTABLE  R4 = R0[K8('_OnItemMerge')]
  0020  CALL      R1 = call(R1, 0 args, 3 rets)
  0021  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0022  GETTABLE  R1 = R1[K1('AddListener')]
  0023  GETTABUP  R2 = _ENV[K2('EEventType')]
  0024  GETTABLE  R2 = R2[K9('OrderFinished')]
  0025  MOVE      R3 = R0
  0026  GETTABLE  R4 = R0[K10('_OnOrderFinished')]
  0027  CALL      R1 = call(R1, 0 args, 3 rets)
  0028  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0029  GETTABLE  R1 = R1[K1('AddListener')]
  0030  GETTABUP  R2 = _ENV[K2('EEventType')]
  0031  GETTABLE  R2 = R2[K11('ItemCookStarted')]
  0032  MOVE      R3 = R0
  0033  GETTABLE  R4 = R0[K12('_OnItemCookStarted')]
  0034  CALL      R1 = call(R1, 0 args, 3 rets)
  0035  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0036  GETTABLE  R1 = R1[K1('AddListener')]
  0037  GETTABUP  R2 = _ENV[K2('EEventType')]
  0038  GETTABLE  R2 = R2[K13('ItemCookEnded')]
  0039  MOVE      R3 = R0
  0040  GETTABLE  R4 = R0[K14('_OnItemCookEnded')]
  0041  CALL      R1 = call(R1, 0 args, 3 rets)
  0042  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0043  GETTABLE  R1 = R1[K1('AddListener')]
  0044  GETTABUP  R2 = _ENV[K2('EEventType')]
  0045  GETTABLE  R2 = R2[K15('ShopBuyItemSuccess')]
  0046  MOVE      R3 = R0
  0047  GETTABLE  R4 = R0[K16('_OnShopBuyItem')]
  0048  CALL      R1 = call(R1, 0 args, 3 rets)
  0049  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0050  GETTABLE  R1 = R1[K1('AddListener')]
  0051  GETTABUP  R2 = _ENV[K2('EEventType')]
  0052  GETTABLE  R2 = R2[K17('BuyBubble')]
  0053  MOVE      R3 = R0
  0054  GETTABLE  R4 = R0[K18('_OnBuyItem')]
  0055  CALL      R1 = call(R1, 0 args, 3 rets)
  0056  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0057  GETTABLE  R1 = R1[K1('AddListener')]
  0058  GETTABUP  R2 = _ENV[K2('EEventType')]
  0059  GETTABLE  R2 = R2[K19('BuyCobweb')]
  0060  MOVE      R3 = R0
  0061  GETTABLE  R4 = R0[K18('_OnBuyItem')]
  0062  CALL      R1 = call(R1, 0 args, 3 rets)
  0063  RETURN    return R0..R-1
; ---------- proto6 [Destroy] ----------
  ; fn ?  line 208-210 np=1 va=0 ms=3 code=5 consts=2 upvals=1 protos=0
  ;   K[0]='EventDispatcher'
  ;   K[1]='RemoveTarget'
  ;   upvals: _ENV
  ;   locals: self(0-5)
  0000  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0001  GETTABLE  R1 = R1[K1('RemoveTarget')]
  0002  MOVE      R2 = R0
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  RETURN    return R0..R-1
; ---------- proto7 [_OnItemMerge] ----------
  ; fn ?  line 213-240 np=2 va=0 ms=12 code=83 consts=34 upvals=1 protos=0
  ;   K[0]='Table'
  ;   K[1]='IsEmpty'
  ;   K[2]='m_arrMergeCfgs'
  ;   K[3]='m_model'
  ;   K[4]='CanAddScore'
  ;   K[5]='GM'
  ;   K[6]='ItemDataModel'
  ;   K[7]='GetItemScore'
  ;   K[8]='New'
  ;   K[9]='GetCode'
  ;   K[10]=0
  ;   K[11]='pairs'
  ;   K[12]='score_min'
  ;   K[13]=nil
  ;   K[14]='score_max'
  ;   K[15]='ActivityTokenHelper'
  ;   K[16]='GetAddReward'
  ;   K[17]='MainBoardView'
  ;   K[18]='GetInstance'
  ;   K[19]='PositionUtil'
  ;   K[20]='UICameraScreen2World'
  ;   K[21]='ConvertBoardPositionToScreenPosition'
  ;   K[22]='GetPosition'
  ;   K[23]='PlayAcquireAnim'
  ;   K[24]='RewardApi'
  ;   K[25]='AcquireRewardsLogic'
  ;   K[26]='EPropertySource'
  ;   K[27]='Give'
  ;   K[28]='EBIType'
  ;   K[29]='MergeItem'
  ;   K[30]='ERewardScene'
  ;   K[31]='Other'
  ;   K[32]='CacheItemType'
  ;   K[33]='Stack'
  ;   upvals: _ENV
  ;   locals: self(0-83), msg(0-83), score(19-83), reward(23-83), (for generator)(26-48), (for state)(26-48), (for control)(26-48), _(27-46), v(27-46), boardView(53-82), uiWorldPosition(63-67)
  0000  GETTABUP  R2 = _ENV[K0('Table')]
  0001  GETTABLE  R2 = R2[K1('IsEmpty')]
  0002  GETTABLE  R3 = R0[K2('m_arrMergeCfgs')]
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  TEST      if not R2 then   -> -131065
  0005  JMP       (jump)   -> 11
  0006  GETTABLE  R2 = R0[K3('m_model')]
  0007  SELF      R3 = R2[K4('CanAddScore')] (self)
  0008  CALL      R2 = call(R2, 1 args, 1 rets)
  0009  TEST      if not R2 then   -> -131060
  0010  JMP       (jump)   -> 12
  0011  RETURN    return R0..R-1
  0012  GETTABUP  R2 = _ENV[K5('GM')]
  0013  GETTABLE  R2 = R2[K6('ItemDataModel')]
  0014  SELF      R3 = R2[K7('GetItemScore')] (self)
  0015  GETTABLE  R4 = R1[K8('New')]
  0016  SELF      R5 = R4[K9('GetCode')] (self)
  0017  CALL      R4 = call(R4, -1 args, 1 rets)
  0018  CALL      R2 = call(R2, 1 args, -1 rets)
  0019  LE        if R0 le K10(0)   -> -129761
  0020  JMP       (jump)   -> 22
  0021  RETURN    return R0..R-1
  0022  LOADNIL   R3..R3 = nil
  0023  GETTABUP  R4 = _ENV[K11('pairs')]
  0024  GETTABLE  R5 = R0[K2('m_arrMergeCfgs')]
  0025  CALL      R4 = call(R4, 3 args, 1 rets)
  0026  JMP       (jump)   -> 46
  0027  GETTABLE  R9 = R8[K12('score_min')]
  0028  EQ        if R1 eq K13(nil)   -> -126165
  0029  JMP       (jump)   -> 33
  0030  GETTABLE  R9 = R8[K12('score_min')]
  0031  LE        if R0 le R2   -> -126429
  0032  JMP       (jump)   -> 46
  0033  GETTABLE  R9 = R8[K14('score_max')]
  0034  EQ        if R1 eq K13(nil)   -> -126159
  0035  JMP       (jump)   -> 39
  0036  GETTABLE  R9 = R8[K14('score_max')]
  0037  LT        if R0 lt R9   -> -130000
  0038  JMP       (jump)   -> 46
  0039  GETTABUP  R9 = _ENV[K15('ActivityTokenHelper')]
  0040  GETTABLE  R9 = R9[K16('GetAddReward')]
  0041  MOVE      R10 = R0
  0042  MOVE      R11 = R0
  0043  CALL      R9 = call(R9, 1 args, 2 rets)
  0044  MOVE      R3 = R0
  0045  JMP       (jump)   -> 48
  0046  TFORCALL  tforcall R4
  0047  TFORLOOP  tforloop R6(sBx=-21)   -> 27
  0048  EQ        if R1 eq K13(nil)   -> -129217
  0049  JMP       (jump)   -> 82
  0050  GETTABUP  R4 = _ENV[K17('MainBoardView')]
  0051  GETTABLE  R4 = R4[K18('GetInstance')]
  0052  CALL      R4 = call(R4, 1 args, 0 rets)
  0053  EQ        if R1 eq K13(nil)   -> -128700
  0054  JMP       (jump)   -> 67
  0055  GETTABUP  R5 = _ENV[K19('PositionUtil')]
  0056  GETTABLE  R5 = R5[K20('UICameraScreen2World')]
  0057  SELF      R7 = R4[K21('ConvertBoardPositionToScreenPosition')] (self)
  0058  GETTABLE  R8 = R1[K8('New')]
  0059  SELF      R9 = R8[K22('GetPosition')] (self)
  0060  CALL      R8 = call(R8, -1 args, 1 rets)
  0061  CALL      R6 = call(R6, -1 args, -1 rets)
  0062  CALL      R5 = call(R5, 1 args, -1 rets)
  0063  SELF      R7 = R0[K23('PlayAcquireAnim')] (self)
  0064  MOVE      R8 = R0
  0065  MOVE      R9 = R0
  0066  CALL      R6 = call(R6, 0 args, 3 rets)
  0067  GETTABUP  R5 = _ENV[K24('RewardApi')]
  0068  GETTABLE  R5 = R5[K25('AcquireRewardsLogic')]
  0069  NEWTABLE  R6 = {} (1 items)
  0070  MOVE      R7 = R0
  0071  SETLIST   setlist R6[B=1,C=1]
  0072  GETTABUP  R7 = _ENV[K26('EPropertySource')]
  0073  GETTABLE  R7 = R7[K27('Give')]
  0074  GETTABUP  R8 = _ENV[K28('EBIType')]
  0075  GETTABLE  R8 = R8[K29('MergeItem')]
  0076  GETTABUP  R9 = _ENV[K30('ERewardScene')]
  0077  GETTABLE  R9 = R9[K31('Other')]
  0078  LOADNIL   R10..R10 = nil
  0079  GETTABUP  R11 = _ENV[K32('CacheItemType')]
  0080  GETTABLE  R11 = R11[K33('Stack')]
  0081  CALL      R5 = call(R5, 0 args, 6 rets)
  0082  RETURN    return R0..R-1
; ---------- proto8 [_OnEnergyCosumed] ----------
  ; fn ?  line 243-283 np=2 va=0 ms=14 code=99 consts=35 upvals=2 protos=0
  ;   K[0]='m_selectProduceCfgFunc'
  ;   K[1]=nil
  ;   K[2]='m_costEnergyCfg'
  ;   K[3]='m_arrProduceCfgs'
  ;   K[4]='energyNum'
  ;   K[5]='m_model'
  ;   K[6]='CanAddScore'
  ;   K[7]='num'
  ;   K[8]='m_dbTable'
  ;   K[9]='GetValue'
  ;   K[10]='DB_VALUE_KEY'
  ;   K[11]='tonumber'
  ;   K[12]=0
  ;   K[13]='ActivityTokenHelper'
  ;   K[14]='GetAddReward'
  ;   K[15]='PROPERTY_COUNT'
  ;   K[16]='Set'
  ;   K[17]='MainBoardView'
  ;   K[18]='GetInstance'
  ;   K[19]='PositionUtil'
  ;   K[20]='UICameraScreen2World'
  ;   K[21]='ConvertBoardPositionToScreenPosition'
  ;   K[22]='pos'
  ;   K[23]='PlayAcquireAnim'
  ;   K[24]='RewardApi'
  ;   K[25]='CryptOneReward'
  ;   K[26]='AcquireRewardsLogic'
  ;   K[27]='EPropertySource'
  ;   K[28]='Give'
  ;   K[29]='EBIType'
  ;   K[30]='CostEnergy'
  ;   K[31]='ERewardScene'
  ;   K[32]='Other'
  ;   K[33]='CacheItemType'
  ;   K[34]='Stack'
  ;   upvals: DB_KEY_COST_ENERGY, _ENV
  ;   locals: self(0-99), msg(0-99), num(21-99), originCost(26-99), energyReward(34-99), energyNum(36-99), boardView(67-98), uiWorldPosition(75-79)
  0000  GETTABLE  R2 = R0[K0('m_selectProduceCfgFunc')]
  0001  EQ        if R1 eq K1(nil)   -> -129788
  0002  JMP       (jump)   -> 7
  0003  GETTABLE  R2 = R0[K0('m_selectProduceCfgFunc')]
  0004  GETTABLE  R3 = R0[K3('m_arrProduceCfgs')]
  0005  CALL      R2 = call(R2, 1 args, 1 rets)
  0006  SETTABLE  R0[K2('m_costEnergyCfg')] = R2
  0007  GETTABLE  R2 = R0[K2('m_costEnergyCfg')]
  0008  EQ        if R1 eq K1(nil)   -> -129781
  0009  JMP       (jump)   -> 19
  0010  GETTABLE  R2 = R0[K2('m_costEnergyCfg')]
  0011  GETTABLE  R2 = R2[K4('energyNum')]
  0012  EQ        if R1 eq K1(nil)   -> -129777
  0013  JMP       (jump)   -> 19
  0014  GETTABLE  R2 = R0[K5('m_model')]
  0015  SELF      R3 = R2[K6('CanAddScore')] (self)
  0016  CALL      R2 = call(R2, 1 args, 1 rets)
  0017  TEST      if not R2 then   -> -131052
  0018  JMP       (jump)   -> 20
  0019  RETURN    return R0..R-1
  0020  GETTABLE  R2 = R1[K7('num')]
  0021  GETTABLE  R3 = R0[K8('m_dbTable')]
  0022  SELF      R4 = R3[K9('GetValue')] (self)
  0023  GETUPVAL  R5 = DB_KEY_COST_ENERGY
  0024  GETTABUP  R6 = _ENV[K10('DB_VALUE_KEY')]
  0025  CALL      R3 = call(R3, 1 args, 3 rets)
  0026  GETTABUP  R4 = _ENV[K11('tonumber')]
  0027  MOVE      R5 = R0
  0028  CALL      R4 = call(R4, 1 args, 1 rets)
  0029  TESTSET   if R1 then R3   -> -128992
  0030  JMP       (jump)   -> 32
  0031  LOADK     R3 = K12 0
  0032  ADD       R2 = R2 add R3
  0033  LOADNIL   R4..R4 = nil
  0034  GETTABLE  R5 = R0[K2('m_costEnergyCfg')]
  0035  GETTABLE  R5 = R5[K4('energyNum')]
  0036  EQ        if R1 eq K1(nil)   -> -128217
  0037  JMP       (jump)   -> 56
  0038  LE        if R0 le R2   -> -128470
  0039  JMP       (jump)   -> 56
  0040  GETTABUP  R6 = _ENV[K13('ActivityTokenHelper')]
  0041  GETTABLE  R6 = R6[K14('GetAddReward')]
  0042  GETTABLE  R7 = R0[K2('m_costEnergyCfg')]
  0043  LOADNIL   R8..R8 = nil
  0044  LOADBOOL  R9 = true
  0045  CALL      R6 = call(R6, 1 args, 3 rets)
  0046  MOVE      R4 = R0
  0047  EQ        if R1 eq K1(nil)   -> -128718
  0048  JMP       (jump)   -> 55
  0049  GETTABUP  R6 = _ENV[K15('PROPERTY_COUNT')]
  0050  GETTABUP  R7 = _ENV[K15('PROPERTY_COUNT')]
  0051  GETTABLE  R7 = R4[R7]
  0052  IDIV      R8 = R5 idiv R2
  0053  MUL       R7 = R8 mul R7
  0054  SETTABLE  R4[R6] = R7
  0055  MOD       R2 = R5 mod R2
  0056  GETTABLE  R6 = R0[K8('m_dbTable')]
  0057  SELF      R7 = R6[K16('Set')] (self)
  0058  GETUPVAL  R8 = DB_KEY_COST_ENERGY
  0059  GETTABUP  R9 = _ENV[K10('DB_VALUE_KEY')]
  0060  MOVE      R10 = R0
  0061  CALL      R6 = call(R6, 0 args, 4 rets)
  0062  EQ        if R1 eq K1(nil)   -> -128703
  0063  JMP       (jump)   -> 98
  0064  GETTABUP  R6 = _ENV[K17('MainBoardView')]
  0065  GETTABLE  R6 = R6[K18('GetInstance')]
  0066  CALL      R6 = call(R6, 1 args, 0 rets)
  0067  EQ        if R1 eq K1(nil)   -> -127674
  0068  JMP       (jump)   -> 79
  0069  GETTABUP  R7 = _ENV[K19('PositionUtil')]
  0070  GETTABLE  R7 = R7[K20('UICameraScreen2World')]
  0071  SELF      R9 = R6[K21('ConvertBoardPositionToScreenPosition')] (self)
  0072  GETTABLE  R10 = R1[K22('pos')]
  0073  CALL      R8 = call(R8, -1 args, 2 rets)
  0074  CALL      R7 = call(R7, 1 args, -1 rets)
  0075  SELF      R9 = R0[K23('PlayAcquireAnim')] (self)
  0076  MOVE      R10 = R0
  0077  MOVE      R11 = R0
  0078  CALL      R8 = call(R8, 0 args, 3 rets)
  0079  GETTABUP  R7 = _ENV[K24('RewardApi')]
  0080  GETTABLE  R7 = R7[K25('CryptOneReward')]
  0081  MOVE      R8 = R0
  0082  CALL      R7 = call(R7, 0 args, 1 rets)
  0083  GETTABUP  R7 = _ENV[K24('RewardApi')]
  0084  GETTABLE  R7 = R7[K26('AcquireRewardsLogic')]
  0085  NEWTABLE  R8 = {} (1 items)
  0086  MOVE      R9 = R0
  0087  SETLIST   setlist R8[B=1,C=1]
  0088  GETTABUP  R9 = _ENV[K27('EPropertySource')]
  0089  GETTABLE  R9 = R9[K28('Give')]
  0090  GETTABUP  R10 = _ENV[K29('EBIType')]
  0091  GETTABLE  R10 = R10[K30('CostEnergy')]
  0092  GETTABUP  R11 = _ENV[K31('ERewardScene')]
  0093  GETTABLE  R11 = R11[K32('Other')]
  0094  LOADNIL   R12..R12 = nil
  0095  GETTABUP  R13 = _ENV[K33('CacheItemType')]
  0096  GETTABLE  R13 = R13[K34('Stack')]
  0097  CALL      R7 = call(R7, 0 args, 6 rets)
  0098  RETURN    return R0..R-1
; ---------- proto9 [_OnProducerItemClicked] ----------
  ; fn ?  line 286-319 np=2 va=0 ms=14 code=90 consts=33 upvals=2 protos=0
  ;   K[0]='m_costEnergyCfg'
  ;   K[1]=nil
  ;   K[2]='clickNum'
  ;   K[3]='m_model'
  ;   K[4]='CanAddScore'
  ;   K[5]='tonumber'
  ;   K[6]='m_dbTable'
  ;   K[7]='GetValue'
  ;   K[8]='DB_VALUE_KEY'
  ;   K[9]=0
  ;   K[10]=1
  ;   K[11]='ActivityTokenHelper'
  ;   K[12]='GetAddReward'
  ;   K[13]='PROPERTY_COUNT'
  ;   K[14]='Set'
  ;   K[15]='MainBoardView'
  ;   K[16]='GetInstance'
  ;   K[17]='PositionUtil'
  ;   K[18]='UICameraScreen2World'
  ;   K[19]='ConvertBoardPositionToScreenPosition'
  ;   K[20]='pos'
  ;   K[21]='PlayAcquireAnim'
  ;   K[22]='RewardApi'
  ;   K[23]='CryptOneReward'
  ;   K[24]='AcquireRewardsLogic'
  ;   K[25]='EPropertySource'
  ;   K[26]='Give'
  ;   K[27]='EBIType'
  ;   K[28]='ClickProducerItem'
  ;   K[29]='ERewardScene'
  ;   K[30]='Other'
  ;   K[31]='CacheItemType'
  ;   K[32]='Stack'
  ;   upvals: _ENV, DB_KEY_CLICK_PRODUCER
  ;   locals: self(0-90), msg(0-90), originClickNum(23-90), curClickNum(24-90), clickNum(26-90), reward(27-90), boardView(58-89), uiWorldPosition(66-70)
  0000  GETTABLE  R2 = R0[K0('m_costEnergyCfg')]
  0001  EQ        if R1 eq K1(nil)   -> -129788
  0002  JMP       (jump)   -> 12
  0003  GETTABLE  R2 = R0[K0('m_costEnergyCfg')]
  0004  GETTABLE  R2 = R2[K2('clickNum')]
  0005  EQ        if R1 eq K1(nil)   -> -129784
  0006  JMP       (jump)   -> 12
  0007  GETTABLE  R2 = R0[K3('m_model')]
  0008  SELF      R3 = R2[K4('CanAddScore')] (self)
  0009  CALL      R2 = call(R2, 1 args, 1 rets)
  0010  TEST      if not R2 then   -> -131059
  0011  JMP       (jump)   -> 13
  0012  RETURN    return R0..R-1
  0013  GETTABUP  R2 = _ENV[K5('tonumber')]
  0014  GETTABLE  R3 = R0[K6('m_dbTable')]
  0015  SELF      R4 = R3[K7('GetValue')] (self)
  0016  GETUPVAL  R5 = _ENV
  0017  GETTABUP  R6 = _ENV[K8('DB_VALUE_KEY')]
  0018  CALL      R3 = call(R3, -1 args, 3 rets)
  0019  CALL      R2 = call(R2, 1 args, -1 rets)
  0020  TEST      if not R2 then   -> -131049
  0021  JMP       (jump)   -> 23
  0022  LOADK     R2 = K9 0
  0023  ADD       R3 = K10(1) add R2
  0024  GETTABLE  R4 = R0[K0('m_costEnergyCfg')]
  0025  GETTABLE  R4 = R4[K2('clickNum')]
  0026  LOADNIL   R5..R5 = nil
  0027  EQ        if R1 eq K1(nil)   -> -128738
  0028  JMP       (jump)   -> 47
  0029  LE        if R0 le R3   -> -128990
  0030  JMP       (jump)   -> 47
  0031  GETTABUP  R6 = _ENV[K11('ActivityTokenHelper')]
  0032  GETTABLE  R6 = R6[K12('GetAddReward')]
  0033  GETTABLE  R7 = R0[K0('m_costEnergyCfg')]
  0034  LOADNIL   R8..R8 = nil
  0035  LOADBOOL  R9 = true
  0036  CALL      R6 = call(R6, 1 args, 3 rets)
  0037  MOVE      R5 = R0
  0038  EQ        if R1 eq K1(nil)   -> -128215
  0039  JMP       (jump)   -> 46
  0040  GETTABUP  R6 = _ENV[K13('PROPERTY_COUNT')]
  0041  GETTABUP  R7 = _ENV[K13('PROPERTY_COUNT')]
  0042  GETTABLE  R7 = R5[R7]
  0043  IDIV      R8 = R4 idiv R3
  0044  MUL       R7 = R8 mul R7
  0045  SETTABLE  R5[R6] = R7
  0046  MOD       R3 = R4 mod R3
  0047  GETTABLE  R6 = R0[K6('m_dbTable')]
  0048  SELF      R7 = R6[K14('Set')] (self)
  0049  GETUPVAL  R8 = _ENV
  0050  GETTABUP  R9 = _ENV[K8('DB_VALUE_KEY')]
  0051  MOVE      R10 = R0
  0052  CALL      R6 = call(R6, 0 args, 4 rets)
  0053  EQ        if R1 eq K1(nil)   -> -128200
  0054  JMP       (jump)   -> 89
  0055  GETTABUP  R6 = _ENV[K15('MainBoardView')]
  0056  GETTABLE  R6 = R6[K16('GetInstance')]
  0057  CALL      R6 = call(R6, 1 args, 0 rets)
  0058  EQ        if R1 eq K1(nil)   -> -127683
  0059  JMP       (jump)   -> 70
  0060  GETTABUP  R7 = _ENV[K17('PositionUtil')]
  0061  GETTABLE  R7 = R7[K18('UICameraScreen2World')]
  0062  SELF      R9 = R6[K19('ConvertBoardPositionToScreenPosition')] (self)
  0063  GETTABLE  R10 = R1[K20('pos')]
  0064  CALL      R8 = call(R8, -1 args, 2 rets)
  0065  CALL      R7 = call(R7, 1 args, -1 rets)
  0066  SELF      R9 = R0[K21('PlayAcquireAnim')] (self)
  0067  MOVE      R10 = R0
  0068  MOVE      R11 = R0
  0069  CALL      R8 = call(R8, 0 args, 3 rets)
  0070  GETTABUP  R7 = _ENV[K22('RewardApi')]
  0071  GETTABLE  R7 = R7[K23('CryptOneReward')]
  0072  MOVE      R8 = R0
  0073  CALL      R7 = call(R7, 0 args, 1 rets)
  0074  GETTABUP  R7 = _ENV[K22('RewardApi')]
  0075  GETTABLE  R7 = R7[K24('AcquireRewardsLogic')]
  0076  NEWTABLE  R8 = {} (1 items)
  0077  MOVE      R9 = R0
  0078  SETLIST   setlist R8[B=1,C=1]
  0079  GETTABUP  R9 = _ENV[K25('EPropertySource')]
  0080  GETTABLE  R9 = R9[K26('Give')]
  0081  GETTABUP  R10 = _ENV[K27('EBIType')]
  0082  GETTABLE  R10 = R10[K28('ClickProducerItem')]
  0083  GETTABUP  R11 = _ENV[K29('ERewardScene')]
  0084  GETTABLE  R11 = R11[K30('Other')]
  0085  LOADNIL   R12..R12 = nil
  0086  GETTABUP  R13 = _ENV[K31('CacheItemType')]
  0087  GETTABLE  R13 = R13[K32('Stack')]
  0088  CALL      R7 = call(R7, 0 args, 6 rets)
  0089  RETURN    return R0..R-1
; ---------- proto10 [_OnShopBuyItem] ----------
  ; fn ?  line 321-348 np=2 va=0 ms=12 code=78 consts=31 upvals=1 protos=1
  ;   K[0]='m_arrShopItemCfgs'
  ;   K[1]=1
  ;   K[2]=nil
  ;   K[3]='m_model'
  ;   K[4]='CanAddScore'
  ;   K[5]='GM'
  ;   K[6]='ItemDataModel'
  ;   K[7]='GetItemScore'
  ;   K[8]='shopData'
  ;   K[9]='itemCode'
  ;   K[10]='costType'
  ;   K[11]='EPropertyType'
  ;   K[12]='Gem'
  ;   K[13]=0
  ;   K[14]='ipairs'
  ;   K[15]='score_min'
  ;   K[16]='score_max'
  ;   K[17]='ActivityTokenHelper'
  ;   K[18]='GetAddReward'
  ;   K[19]='RewardApi'
  ;   K[20]='AcquireRewardsLogic'
  ;   K[21]='EPropertySource'
  ;   K[22]='Give'
  ;   K[23]='EBIType'
  ;   K[24]='ShopItem'
  ;   K[25]='ERewardScene'
  ;   K[26]='Other'
  ;   K[27]='CacheItemType'
  ;   K[28]='Stack'
  ;   K[29]='DelayExecuteFunc'
  ;   K[30]=0.1
  ;   upvals: _ENV
  ;   locals: self(0-78), msg(0-78), score(19-78), reward(31-78), (for generator)(34-56), (for state)(34-56), (for control)(34-56), _(35-54), v(35-54)
  0000  GETTABLE  R2 = R0[K0('m_arrShopItemCfgs')]
  0001  TEST      if not R2 then   -> -131069
  0002  JMP       (jump)   -> 12
  0003  GETTABLE  R2 = R0[K0('m_arrShopItemCfgs')]
  0004  GETTABLE  R2 = R2[K1(1)]
  0005  EQ        if R1 eq K2(nil)   -> -129783
  0006  JMP       (jump)   -> 12
  0007  GETTABLE  R2 = R0[K3('m_model')]
  0008  SELF      R3 = R2[K4('CanAddScore')] (self)
  0009  CALL      R2 = call(R2, 1 args, 1 rets)
  0010  TEST      if not R2 then   -> -131059
  0011  JMP       (jump)   -> 13
  0012  RETURN    return R0..R-1
  0013  GETTABUP  R2 = _ENV[K5('GM')]
  0014  GETTABLE  R2 = R2[K6('ItemDataModel')]
  0015  SELF      R3 = R2[K7('GetItemScore')] (self)
  0016  GETTABLE  R4 = R1[K8('shopData')]
  0017  GETTABLE  R4 = R4[K9('itemCode')]
  0018  CALL      R2 = call(R2, 1 args, 2 rets)
  0019  GETTABLE  R3 = R1[K8('shopData')]
  0020  GETTABLE  R3 = R3[K10('costType')]
  0021  GETTABUP  R4 = _ENV[K11('EPropertyType')]
  0022  GETTABLE  R4 = R4[K12('Gem')]
  0023  EQ        if R0 eq R4   -> -129507
  0024  JMP       (jump)   -> 29
  0025  EQ        if R1 eq K2(nil)   -> -129763
  0026  JMP       (jump)   -> 29
  0027  EQ        if R0 eq K13(0)   -> -129750
  0028  JMP       (jump)   -> 30
  0029  RETURN    return R0..R-1
  0030  LOADNIL   R3..R3 = nil
  0031  GETTABUP  R4 = _ENV[K14('ipairs')]
  0032  GETTABLE  R5 = R0[K0('m_arrShopItemCfgs')]
  0033  CALL      R4 = call(R4, 3 args, 1 rets)
  0034  JMP       (jump)   -> 54
  0035  GETTABLE  R9 = R8[K15('score_min')]
  0036  EQ        if R1 eq K2(nil)   -> -126168
  0037  JMP       (jump)   -> 41
  0038  GETTABLE  R9 = R8[K15('score_min')]
  0039  LE        if R0 le R2   -> -126421
  0040  JMP       (jump)   -> 54
  0041  GETTABLE  R9 = R8[K16('score_max')]
  0042  EQ        if R1 eq K2(nil)   -> -126162
  0043  JMP       (jump)   -> 47
  0044  GETTABLE  R9 = R8[K16('score_max')]
  0045  LT        if R0 lt R9   -> -129992
  0046  JMP       (jump)   -> 54
  0047  GETTABUP  R9 = _ENV[K17('ActivityTokenHelper')]
  0048  GETTABLE  R9 = R9[K18('GetAddReward')]
  0049  MOVE      R10 = R0
  0050  MOVE      R11 = R0
  0051  CALL      R9 = call(R9, 1 args, 2 rets)
  0052  MOVE      R3 = R0
  0053  JMP       (jump)   -> 56
  0054  TFORCALL  tforcall R4
  0055  TFORLOOP  tforloop R6(sBx=-21)   -> 35
  0056  EQ        if R1 eq K2(nil)   -> -129220
  0057  JMP       (jump)   -> 77
  0058  GETTABUP  R4 = _ENV[K19('RewardApi')]
  0059  GETTABLE  R4 = R4[K20('AcquireRewardsLogic')]
  0060  NEWTABLE  R5 = {} (1 items)
  0061  MOVE      R6 = R0
  0062  SETLIST   setlist R5[B=1,C=1]
  0063  GETTABUP  R6 = _ENV[K21('EPropertySource')]
  0064  GETTABLE  R6 = R6[K22('Give')]
  0065  GETTABUP  R7 = _ENV[K23('EBIType')]
  0066  GETTABLE  R7 = R7[K24('ShopItem')]
  0067  GETTABUP  R8 = _ENV[K25('ERewardScene')]
  0068  GETTABLE  R8 = R8[K26('Other')]
  0069  LOADNIL   R9..R9 = nil
  0070  GETTABUP  R10 = _ENV[K27('CacheItemType')]
  0071  GETTABLE  R10 = R10[K28('Stack')]
  0072  CALL      R4 = call(R4, 0 args, 6 rets)
  0073  GETTABUP  R4 = _ENV[K29('DelayExecuteFunc')]
  0074  CLOSURE   R5 = closure proto0
  0075  LOADK     R6 = K30 0.1
  0076  CALL      R4 = call(R4, 0 args, 2 rets)
  0077  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 344-346 np=0 va=0 ms=6 code=13 consts=5 upvals=4 protos=0
    ;   K[0]='PlayAcquireAnim'
    ;   K[1]='uiPos'
    ;   K[2]='Vector3'
    ;   K[3]=0
    ;   K[4]=100
    ;   upvals: self, msg, _ENV, reward
    0000  GETUPVAL  R0 = self
    0001  SELF      R1 = R0[K0('PlayAcquireAnim')] (self)
    0002  GETTABUP  R2 = msg[K1('uiPos')]
    0003  TEST      if not R2 then   -> -131066
    0004  JMP       (jump)   -> 10
    0005  GETTABUP  R2 = _ENV[K2('Vector3')]
    0006  LOADK     R3 = K3 0
    0007  LOADK     R4 = K4 100
    0008  LOADK     R5 = K3 0
    0009  CALL      R2 = call(R2, 1 args, 3 rets)
    0010  GETUPVAL  R3 = self
    0011  CALL      R0 = call(R0, 0 args, 3 rets)
    0012  RETURN    return R0..R-1
; ---------- proto11 [_OnBuyItem] ----------
  ; fn ?  line 351-381 np=2 va=0 ms=13 code=82 consts=35 upvals=1 protos=0
  ;   K[0]='Table'
  ;   K[1]='IsEmpty'
  ;   K[2]='m_arrShopItemCfgs'
  ;   K[3]='m_model'
  ;   K[4]='CanAddScore'
  ;   K[5]='source'
  ;   K[6]='GM'
  ;   K[7]='ItemDataModel'
  ;   K[8]='GetItemScore'
  ;   K[9]='newItemCode'
  ;   K[10]=0
  ;   K[11]='ipairs'
  ;   K[12]='score_min'
  ;   K[13]=nil
  ;   K[14]='score_max'
  ;   K[15]='ActivityTokenHelper'
  ;   K[16]='GetAddReward'
  ;   K[17]='MainBoardView'
  ;   K[18]='GetInstance'
  ;   K[19]='PositionUtil'
  ;   K[20]='UICameraScreen2World'
  ;   K[21]='ConvertBoardPositionToScreenPosition'
  ;   K[22]='GetPosition'
  ;   K[23]='z'
  ;   K[24]='PlayAcquireAnim'
  ;   K[25]='RewardApi'
  ;   K[26]='AcquireRewardsLogic'
  ;   K[27]='EPropertySource'
  ;   K[28]='Give'
  ;   K[29]='EBIType'
  ;   K[30]='BuyBubble'
  ;   K[31]='ERewardScene'
  ;   K[32]='Other'
  ;   K[33]='CacheItemType'
  ;   K[34]='Stack'
  ;   upvals: _ENV
  ;   locals: self(0-82), msg(0-82), itemModel(13-82), score(18-82), reward(22-82), (for generator)(25-47), (for state)(25-47), (for control)(25-47), _(26-45), v(26-45), boardView(52-81), uiWorldPosition(61-66)
  0000  GETTABUP  R2 = _ENV[K0('Table')]
  0001  GETTABLE  R2 = R2[K1('IsEmpty')]
  0002  GETTABLE  R3 = R0[K2('m_arrShopItemCfgs')]
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  TEST      if not R2 then   -> -131065
  0005  JMP       (jump)   -> 11
  0006  GETTABLE  R2 = R0[K3('m_model')]
  0007  SELF      R3 = R2[K4('CanAddScore')] (self)
  0008  CALL      R2 = call(R2, 1 args, 1 rets)
  0009  TEST      if not R2 then   -> -131060
  0010  JMP       (jump)   -> 12
  0011  RETURN    return R0..R-1
  0012  GETTABLE  R2 = R1[K5('source')]
  0013  GETTABUP  R3 = _ENV[K6('GM')]
  0014  GETTABLE  R3 = R3[K7('ItemDataModel')]
  0015  SELF      R4 = R3[K8('GetItemScore')] (self)
  0016  GETTABLE  R5 = R1[K9('newItemCode')]
  0017  CALL      R3 = call(R3, 1 args, 2 rets)
  0018  LE        if R0 le K10(0)   -> -129250
  0019  JMP       (jump)   -> 21
  0020  RETURN    return R0..R-1
  0021  LOADNIL   R4..R4 = nil
  0022  GETTABUP  R5 = _ENV[K11('ipairs')]
  0023  GETTABLE  R6 = R0[K2('m_arrShopItemCfgs')]
  0024  CALL      R5 = call(R5, 3 args, 1 rets)
  0025  JMP       (jump)   -> 45
  0026  GETTABLE  R10 = R9[K12('score_min')]
  0027  EQ        if R1 eq K13(nil)   -> -125654
  0028  JMP       (jump)   -> 32
  0029  GETTABLE  R10 = R9[K12('score_min')]
  0030  LE        if R0 le R3   -> -125917
  0031  JMP       (jump)   -> 45
  0032  GETTABLE  R10 = R9[K14('score_max')]
  0033  EQ        if R1 eq K13(nil)   -> -125648
  0034  JMP       (jump)   -> 38
  0035  GETTABLE  R10 = R9[K14('score_max')]
  0036  LT        if R0 lt R10   -> -129488
  0037  JMP       (jump)   -> 45
  0038  GETTABUP  R10 = _ENV[K15('ActivityTokenHelper')]
  0039  GETTABLE  R10 = R10[K16('GetAddReward')]
  0040  MOVE      R11 = R0
  0041  MOVE      R12 = R0
  0042  CALL      R10 = call(R10, 1 args, 2 rets)
  0043  MOVE      R4 = R0
  0044  JMP       (jump)   -> 47
  0045  TFORCALL  tforcall R5
  0046  TFORLOOP  tforloop R7(sBx=-21)   -> 26
  0047  EQ        if R1 eq K13(nil)   -> -128706
  0048  JMP       (jump)   -> 81
  0049  GETTABUP  R5 = _ENV[K17('MainBoardView')]
  0050  GETTABLE  R5 = R5[K18('GetInstance')]
  0051  CALL      R5 = call(R5, 1 args, 0 rets)
  0052  EQ        if R1 eq K13(nil)   -> -128189
  0053  JMP       (jump)   -> 66
  0054  GETTABUP  R6 = _ENV[K19('PositionUtil')]
  0055  GETTABLE  R6 = R6[K20('UICameraScreen2World')]
  0056  SELF      R8 = R5[K21('ConvertBoardPositionToScreenPosition')] (self)
  0057  SELF      R10 = R2[K22('GetPosition')] (self)
  0058  CALL      R9 = call(R9, -1 args, 1 rets)
  0059  CALL      R7 = call(R7, -1 args, -1 rets)
  0060  CALL      R6 = call(R6, 1 args, -1 rets)
  0061  SETTABLE  R6[K23('z')] = K10(0)
  0062  SELF      R8 = R0[K24('PlayAcquireAnim')] (self)
  0063  MOVE      R9 = R0
  0064  MOVE      R10 = R0
  0065  CALL      R7 = call(R7, 0 args, 3 rets)
  0066  GETTABUP  R6 = _ENV[K25('RewardApi')]
  0067  GETTABLE  R6 = R6[K26('AcquireRewardsLogic')]
  0068  NEWTABLE  R7 = {} (1 items)
  0069  MOVE      R8 = R0
  0070  SETLIST   setlist R7[B=1,C=1]
  0071  GETTABUP  R8 = _ENV[K27('EPropertySource')]
  0072  GETTABLE  R8 = R8[K28('Give')]
  0073  GETTABUP  R9 = _ENV[K29('EBIType')]
  0074  GETTABLE  R9 = R9[K30('BuyBubble')]
  0075  GETTABUP  R10 = _ENV[K31('ERewardScene')]
  0076  GETTABLE  R10 = R10[K32('Other')]
  0077  LOADNIL   R11..R11 = nil
  0078  GETTABUP  R12 = _ENV[K33('CacheItemType')]
  0079  GETTABLE  R12 = R12[K34('Stack')]
  0080  CALL      R6 = call(R6, 0 args, 6 rets)
  0081  RETURN    return R0..R-1
; ---------- proto12 [PlayAcquireAnim] ----------
  ; fn ?  line 386-395 np=3 va=0 ms=9 code=31 consts=18 upvals=1 protos=0
  ;   K[0]='z'
  ;   K[1]=0
  ;   K[2]='setmetatable'
  ;   K[3]='arrWorldPos'
  ;   K[4]='flyCount'
  ;   K[5]=1
  ;   K[6]='floatLabel'
  ;   K[7]='text'
  ;   K[8]='+'
  ;   K[9]='PROPERTY_COUNT'
  ;   K[10]='m_labelStyle'
  ;   K[11]='bUseFrameCache'
  ;   K[12]=true
  ;   K[13]='m_viewDataParam'
  ;   K[14]='RewardApi'
  ;   K[15]='AcquireRewardsInView'
  ;   K[16]='ERewardScene'
  ;   K[17]='Other'
  ;   upvals: _ENV
  ;   locals: self(0-31), uiWorldPosition(0-31), reward(0-31), viewData(21-31)
  0000  SETTABLE  R1[K0('z')] = K1(0)
  0001  GETTABUP  R3 = _ENV[K2('setmetatable')]
  0002  NEWTABLE  R4 = {} (0 items)
  0003  NEWTABLE  R5 = {} (1 items)
  0004  MOVE      R6 = R0
  0005  SETLIST   setlist R5[B=1,C=1]
  0006  SETTABLE  R4[K3('arrWorldPos')] = R5
  0007  SETTABLE  R4[K4('flyCount')] = K5(1)
  0008  GETTABUP  R5 = _ENV[K2('setmetatable')]
  0009  NEWTABLE  R6 = {} (0 items)
  0010  LOADK     R7 = K8 '+'
  0011  GETTABUP  R8 = _ENV[K9('PROPERTY_COUNT')]
  0012  GETTABLE  R8 = R2[R8]
  0013  CONCAT    R7 = concat(R7..R7)
  0014  SETTABLE  R6[K7('text')] = R7
  0015  GETTABLE  R7 = R0[K10('m_labelStyle')]
  0016  CALL      R5 = call(R5, 1 args, 2 rets)
  0017  SETTABLE  R4[K6('floatLabel')] = R5
  0018  SETTABLE  R4[K11('bUseFrameCache')] = K12(true)
  0019  GETTABLE  R5 = R0[K13('m_viewDataParam')]
  0020  CALL      R3 = call(R3, 1 args, 2 rets)
  0021  GETTABUP  R4 = _ENV[K14('RewardApi')]
  0022  GETTABLE  R4 = R4[K15('AcquireRewardsInView')]
  0023  NEWTABLE  R5 = {} (1 items)
  0024  MOVE      R6 = R0
  0025  SETLIST   setlist R5[B=1,C=1]
  0026  MOVE      R6 = R0
  0027  GETTABUP  R7 = _ENV[K16('ERewardScene')]
  0028  GETTABLE  R7 = R7[K17('Other')]
  0029  CALL      R4 = call(R4, 0 args, 3 rets)
  0030  RETURN    return R0..R-1
; ---------- proto13 [CanAddOrderReward] ----------
  ; fn ?  line 398-406 np=2 va=0 ms=4 code=17 consts=5 upvals=0 protos=0
  ;   K[0]='m_arrOrderCfgs'
  ;   K[1]=1
  ;   K[2]=nil
  ;   K[3]='m_model'
  ;   K[4]='CanAddScore'
  ;   locals: self(0-17), orderType(0-17)
  0000  GETTABLE  R2 = R0[K0('m_arrOrderCfgs')]
  0001  TEST      if not R2 then   -> -131069
  0002  JMP       (jump)   -> 12
  0003  GETTABLE  R2 = R0[K0('m_arrOrderCfgs')]
  0004  GETTABLE  R2 = R2[K1(1)]
  0005  EQ        if R1 eq K2(nil)   -> -129783
  0006  JMP       (jump)   -> 12
  0007  GETTABLE  R2 = R0[K3('m_model')]
  0008  SELF      R3 = R2[K4('CanAddScore')] (self)
  0009  CALL      R2 = call(R2, 1 args, 1 rets)
  0010  TEST      if not R2 then   -> -131059
  0011  JMP       (jump)   -> 14
  0012  LOADBOOL  R2 = false
  0013  RETURN    return R2..R1
  0014  LOADBOOL  R2 = true
  0015  RETURN    return R2..R1
  0016  RETURN    return R0..R-1
; ---------- proto14 [GetOrderExtraReward] ----------
  ; fn ?  line 410-428 np=3 va=0 ms=19 code=69 consts=19 upvals=2 protos=0
  ;   K[0]='m_dbTable'
  ;   K[1]='GetValue'
  ;   K[2]='DB_VALUE_KEY'
  ;   K[3]='StringUtil'
  ;   K[4]='IsNilOrEmpty'
  ;   K[5]='json'
  ;   K[6]='decode'
  ;   K[7]='Replace'
  ;   K[8]='@'
  ;   K[9]=','
  ;   K[10]='pairs'
  ;   K[11]='m_arrOrderCfgs'
  ;   K[12]='score_min'
  ;   K[13]=nil
  ;   K[14]='score_max'
  ;   K[15]='ActivityTokenHelper'
  ;   K[16]='GetAddReward'
  ;   K[17]='Set'
  ;   K[18]='encode'
  ;   upvals: DB_KEY_ORDER_REWARD_PREFIX, _ENV
  ;   locals: self(0-69), orderScore(0-69), orderId(0-69), dbID(3-69), rewardStr(8-69), reward(25-69), (for generator)(28-67), (for state)(28-67), (for control)(28-67), _(29-65), v(29-65)
  0000  GETUPVAL  R3 = DB_KEY_ORDER_REWARD_PREFIX
  0001  MOVE      R4 = R0
  0002  CONCAT    R3 = concat(R3..R3)
  0003  GETTABLE  R4 = R0[K0('m_dbTable')]
  0004  SELF      R5 = R4[K1('GetValue')] (self)
  0005  MOVE      R6 = R0
  0006  GETTABUP  R7 = _ENV[K2('DB_VALUE_KEY')]
  0007  CALL      R4 = call(R4, 1 args, 3 rets)
  0008  GETTABUP  R5 = _ENV[K3('StringUtil')]
  0009  GETTABLE  R5 = R5[K4('IsNilOrEmpty')]
  0010  MOVE      R6 = R0
  0011  CALL      R5 = call(R5, 1 args, 1 rets)
  0012  TEST      if not R5 then   -> -131057
  0013  JMP       (jump)   -> 24
  0014  GETTABUP  R5 = _ENV[K5('json')]
  0015  GETTABLE  R5 = R5[K6('decode')]
  0016  GETTABUP  R6 = _ENV[K3('StringUtil')]
  0017  GETTABLE  R6 = R6[K7('Replace')]
  0018  MOVE      R7 = R0
  0019  LOADK     R8 = K8 '@'
  0020  LOADK     R9 = K9 ','
  0021  CALL      R6 = call(R6, -1 args, 3 rets)
  0022  TAILCALL  tailcall(R5, 0)
  0023  RETURN    return R5..R4
  0024  LOADNIL   R5..R5 = nil
  0025  GETTABUP  R6 = _ENV[K10('pairs')]
  0026  GETTABLE  R7 = R0[K11('m_arrOrderCfgs')]
  0027  CALL      R6 = call(R6, 3 args, 1 rets)
  0028  JMP       (jump)   -> 65
  0029  GETTABLE  R11 = R10[K12('score_min')]
  0030  EQ        if R1 eq K13(nil)   -> -125139
  0031  JMP       (jump)   -> 35
  0032  GETTABLE  R11 = R10[K12('score_min')]
  0033  LE        if R0 le R1   -> -125404
  0034  JMP       (jump)   -> 65
  0035  GETTABLE  R11 = R10[K14('score_max')]
  0036  EQ        if R1 eq K13(nil)   -> -125133
  0037  JMP       (jump)   -> 41
  0038  GETTABLE  R11 = R10[K14('score_max')]
  0039  LT        if R0 lt R11   -> -130508
  0040  JMP       (jump)   -> 65
  0041  GETTABUP  R11 = _ENV[K15('ActivityTokenHelper')]
  0042  GETTABLE  R11 = R11[K16('GetAddReward')]
  0043  MOVE      R12 = R0
  0044  MOVE      R13 = R0
  0045  LOADBOOL  R14 = true
  0046  CALL      R11 = call(R11, 1 args, 3 rets)
  0047  MOVE      R5 = R0
  0048  EQ        if R1 eq K13(nil)   -> -128193
  0049  JMP       (jump)   -> 65
  0050  GETTABLE  R11 = R0[K0('m_dbTable')]
  0051  SELF      R12 = R11[K17('Set')] (self)
  0052  MOVE      R13 = R0
  0053  GETTABUP  R14 = _ENV[K2('DB_VALUE_KEY')]
  0054  GETTABUP  R15 = _ENV[K3('StringUtil')]
  0055  GETTABLE  R15 = R15[K7('Replace')]
  0056  GETTABUP  R16 = _ENV[K5('json')]
  0057  GETTABLE  R16 = R16[K18('encode')]
  0058  MOVE      R17 = R0
  0059  CALL      R16 = call(R16, 1 args, 1 rets)
  0060  LOADK     R17 = K9 ','
  0061  LOADK     R18 = K8 '@'
  0062  CALL      R15 = call(R15, -1 args, 3 rets)
  0063  CALL      R11 = call(R11, 0 args, -1 rets)
  0064  RETURN    return R5..R4
  0065  TFORCALL  tforcall R6
  0066  TFORLOOP  tforloop R8(sBx=-38)   -> 29
  0067  RETURN    return R0..R-1
  0068  RETURN    return R0..R-1
; ---------- proto15 [_OnOrderFinished] ----------
  ; fn ?  line 430-433 np=2 va=0 ms=7 code=10 consts=4 upvals=1 protos=0
  ;   K[0]='order'
  ;   K[1]='GetId'
  ;   K[2]='m_dbTable'
  ;   K[3]='Remove'
  ;   upvals: DB_KEY_ORDER_REWARD_PREFIX
  ;   locals: self(0-10), msg(0-10), id(3-10)
  0000  GETTABLE  R2 = R1[K0('order')]
  0001  SELF      R3 = R2[K1('GetId')] (self)
  0002  CALL      R2 = call(R2, 1 args, 1 rets)
  0003  GETTABLE  R3 = R0[K2('m_dbTable')]
  0004  SELF      R4 = R3[K3('Remove')] (self)
  0005  GETUPVAL  R5 = DB_KEY_ORDER_REWARD_PREFIX
  0006  MOVE      R6 = R0
  0007  CONCAT    R5 = concat(R5..R5)
  0008  CALL      R3 = call(R3, 0 args, 2 rets)
  0009  RETURN    return R0..R-1
; ---------- proto16 [CanAddCookReward] ----------
  ; fn ?  line 437-445 np=1 va=0 ms=3 code=17 consts=5 upvals=0 protos=0
  ;   K[0]='m_arrCookCfgs'
  ;   K[1]=1
  ;   K[2]=nil
  ;   K[3]='m_model'
  ;   K[4]='CanAddScore'
  ;   locals: self(0-17)
  0000  GETTABLE  R1 = R0[K0('m_arrCookCfgs')]
  0001  TEST      if not R1 then   -> -131069
  0002  JMP       (jump)   -> 12
  0003  GETTABLE  R1 = R0[K0('m_arrCookCfgs')]
  0004  GETTABLE  R1 = R1[K1(1)]
  0005  EQ        if R1 eq K2(nil)   -> -130295
  0006  JMP       (jump)   -> 12
  0007  GETTABLE  R1 = R0[K3('m_model')]
  0008  SELF      R2 = R1[K4('CanAddScore')] (self)
  0009  CALL      R1 = call(R1, 1 args, 1 rets)
  0010  TEST      if not R1 then   -> -131059
  0011  JMP       (jump)   -> 14
  0012  LOADBOOL  R1 = false
  0013  RETURN    return R1..R0
  0014  LOADBOOL  R1 = true
  0015  RETURN    return R1..R0
  0016  RETURN    return R0..R-1
; ---------- proto17 [GetCookExtraReward] ----------
  ; fn ?  line 449-458 np=2 va=0 ms=12 code=33 consts=10 upvals=1 protos=0
  ;   K[0]='GM'
  ;   K[1]='ItemDataModel'
  ;   K[2]='GetItemScore'
  ;   K[3]='pairs'
  ;   K[4]='m_arrCookCfgs'
  ;   K[5]='score_min'
  ;   K[6]=nil
  ;   K[7]='score_max'
  ;   K[8]='ActivityTokenHelper'
  ;   K[9]='GetAddReward'
  ;   upvals: _ENV
  ;   locals: self(0-33), recipe(0-33), score(5-33), reward(6-33), (for generator)(9-30), (for state)(9-30), (for control)(9-30), _(10-28), v(10-28)
  0000  GETTABUP  R2 = _ENV[K0('GM')]
  0001  GETTABLE  R2 = R2[K1('ItemDataModel')]
  0002  SELF      R3 = R2[K2('GetItemScore')] (self)
  0003  MOVE      R4 = R0
  0004  CALL      R2 = call(R2, 1 args, 2 rets)
  0005  LOADNIL   R3..R3 = nil
  0006  GETTABUP  R4 = _ENV[K3('pairs')]
  0007  GETTABLE  R5 = R0[K4('m_arrCookCfgs')]
  0008  CALL      R4 = call(R4, 3 args, 1 rets)
  0009  JMP       (jump)   -> 28
  0010  GETTABLE  R9 = R8[K5('score_min')]
  0011  EQ        if R1 eq K6(nil)   -> -126189
  0012  JMP       (jump)   -> 16
  0013  GETTABLE  R9 = R8[K5('score_min')]
  0014  LE        if R0 le R2   -> -126446
  0015  JMP       (jump)   -> 28
  0016  GETTABLE  R9 = R8[K7('score_max')]
  0017  EQ        if R1 eq K6(nil)   -> -126183
  0018  JMP       (jump)   -> 22
  0019  GETTABLE  R9 = R8[K7('score_max')]
  0020  LT        if R0 lt R9   -> -130017
  0021  JMP       (jump)   -> 28
  0022  GETTABUP  R9 = _ENV[K8('ActivityTokenHelper')]
  0023  GETTABLE  R9 = R9[K9('GetAddReward')]
  0024  MOVE      R10 = R0
  0025  MOVE      R11 = R0
  0026  TAILCALL  tailcall(R9, 0)
  0027  RETURN    return R9..R8
  0028  TFORCALL  tforcall R4
  0029  TFORLOOP  tforloop R6(sBx=-20)   -> 10
  0030  LOADNIL   R4..R4 = nil
  0031  RETURN    return R4..R3
  0032  RETURN    return R0..R-1
; ---------- proto18 [_OnItemCookStarted] ----------
  ; fn ?  line 461-503 np=2 va=0 ms=15 code=117 consts=56 upvals=2 protos=0
  ;   K[0]='item'
  ;   K[1]='isOrderNeedDish'
  ;   K[2]='Table'
  ;   K[3]='IsEmpty'
  ;   K[4]='m_arrCookCfgs'
  ;   K[5]='m_model'
  ;   K[6]='CanAddScore'
  ;   K[7]='dish'
  ;   K[8]='GetId'
  ;   K[9]='GetCookExtraReward'
  ;   K[10]=nil
  ;   K[11]='MainBoardView'
  ;   K[12]='GetInstance'
  ;   K[13]='PositionUtil'
  ;   K[14]='UICameraScreen2World'
  ;   K[15]='ConvertBoardPositionToScreenPosition'
  ;   K[16]='GetPosition'
  ;   K[17]='z'
  ;   K[18]=0
  ;   K[19]='noDiffusion'
  ;   K[20]=true
  ;   K[21]='bCreateAtBtm'
  ;   K[22]='floatDt'
  ;   K[23]=0.3
  ;   K[24]='setmetatable'
  ;   K[25]='arrWorldPos'
  ;   K[26]='flyCount'
  ;   K[27]=1
  ;   K[28]='floatLabel'
  ;   K[29]='text'
  ;   K[30]='+'
  ;   K[31]='PROPERTY_COUNT'
  ;   K[32]='bRight'
  ;   K[33]='m_labelStyle'
  ;   K[34]='bUseFrameCache'
  ;   K[35]='arrFlyPause'
  ;   K[36]='arrFloatDt'
  ;   K[37]='arrSecondViewData'
  ;   K[38]='m_viewDataParam'
  ;   K[39]='RewardApi'
  ;   K[40]='AcquireRewardsInView'
  ;   K[41]='ERewardScene'
  ;   K[42]='Other'
  ;   K[43]='AcquireRewardsLogic'
  ;   K[44]='EPropertySource'
  ;   K[45]='Give'
  ;   K[46]='EBIType'
  ;   K[47]='CookItem'
  ;   K[48]='CacheItemType'
  ;   K[49]='Stack'
  ;   K[50]='string'
  ;   K[51]='format'
  ;   K[52]='%s%s'
  ;   K[53]='m_dbTable'
  ;   K[54]='Set'
  ;   K[55]='DB_VALUE_KEY'
  ;   upvals: _ENV, DB_KEY_COOK_PREFIX
  ;   locals: self(0-117), msg(0-117), itemModel(22-117), dish(23-117), itemId(25-117), reward(28-117), boardView(33-116), uiWorldPosition(42-89), secondViewData(47-89), viewData(80-89), dbKey(110-116)
  0000  TEST      if not R1 then   -> -131070
  0001  JMP       (jump)   -> 8
  0002  GETTABLE  R2 = R1[K0('item')]
  0003  TEST      if not R2 then   -> -131067
  0004  JMP       (jump)   -> 8
  0005  GETTABLE  R2 = R1[K1('isOrderNeedDish')]
  0006  TEST      if not R2 then   -> -131063
  0007  JMP       (jump)   -> 9
  0008  RETURN    return R0..R-1
  0009  GETTABUP  R2 = _ENV[K2('Table')]
  0010  GETTABLE  R2 = R2[K3('IsEmpty')]
  0011  GETTABLE  R3 = R0[K4('m_arrCookCfgs')]
  0012  CALL      R2 = call(R2, 1 args, 1 rets)
  0013  TEST      if not R2 then   -> -131056
  0014  JMP       (jump)   -> 20
  0015  GETTABLE  R2 = R0[K5('m_model')]
  0016  SELF      R3 = R2[K6('CanAddScore')] (self)
  0017  CALL      R2 = call(R2, 1 args, 1 rets)
  0018  TEST      if not R2 then   -> -131051
  0019  JMP       (jump)   -> 21
  0020  RETURN    return R0..R-1
  0021  GETTABLE  R2 = R1[K0('item')]
  0022  GETTABLE  R3 = R1[K7('dish')]
  0023  SELF      R5 = R2[K8('GetId')] (self)
  0024  CALL      R4 = call(R4, 1 args, 1 rets)
  0025  SELF      R6 = R0[K9('GetCookExtraReward')] (self)
  0026  MOVE      R7 = R0
  0027  CALL      R5 = call(R5, 1 args, 2 rets)
  0028  EQ        if R1 eq K10(nil)   -> -128216
  0029  JMP       (jump)   -> 116
  0030  GETTABUP  R6 = _ENV[K11('MainBoardView')]
  0031  GETTABLE  R6 = R6[K12('GetInstance')]
  0032  CALL      R6 = call(R6, 1 args, 0 rets)
  0033  EQ        if R1 eq K10(nil)   -> -127699
  0034  JMP       (jump)   -> 89
  0035  GETTABUP  R7 = _ENV[K13('PositionUtil')]
  0036  GETTABLE  R7 = R7[K14('UICameraScreen2World')]
  0037  SELF      R9 = R6[K15('ConvertBoardPositionToScreenPosition')] (self)
  0038  SELF      R11 = R2[K16('GetPosition')] (self)
  0039  CALL      R10 = call(R10, -1 args, 1 rets)
  0040  CALL      R8 = call(R8, -1 args, -1 rets)
  0041  CALL      R7 = call(R7, 1 args, -1 rets)
  0042  SETTABLE  R7[K17('z')] = K18(0)
  0043  NEWTABLE  R8 = {} (0 items)
  0044  SETTABLE  R8[K19('noDiffusion')] = K20(true)
  0045  SETTABLE  R8[K21('bCreateAtBtm')] = K20(true)
  0046  SETTABLE  R8[K22('floatDt')] = K23(0.3)
  0047  GETTABUP  R9 = _ENV[K24('setmetatable')]
  0048  NEWTABLE  R10 = {} (0 items)
  0049  NEWTABLE  R11 = {} (1 items)
  0050  MOVE      R12 = R0
  0051  SETLIST   setlist R11[B=1,C=1]
  0052  SETTABLE  R10[K25('arrWorldPos')] = R11
  0053  SETTABLE  R10[K26('flyCount')] = K27(1)
  0054  GETTABUP  R11 = _ENV[K24('setmetatable')]
  0055  NEWTABLE  R12 = {} (0 items)
  0056  LOADK     R13 = K30 '+'
  0057  GETTABUP  R14 = _ENV[K31('PROPERTY_COUNT')]
  0058  GETTABLE  R14 = R5[R14]
  0059  CONCAT    R13 = concat(R13..R13)
  0060  SETTABLE  R12[K29('text')] = R13
  0061  SETTABLE  R12[K32('bRight')] = K20(true)
  0062  GETTABLE  R13 = R0[K33('m_labelStyle')]
  0063  CALL      R11 = call(R11, 1 args, 2 rets)
  0064  SETTABLE  R10[K28('floatLabel')] = R11
  0065  SETTABLE  R10[K34('bUseFrameCache')] = K20(true)
  0066  NEWTABLE  R11 = {} (1 items)
  0067  LOADK     R12 = K23 0.3
  0068  SETLIST   setlist R11[B=1,C=1]
  0069  SETTABLE  R10[K35('arrFlyPause')] = R11
  0070  NEWTABLE  R11 = {} (1 items)
  0071  LOADK     R12 = K23 0.3
  0072  SETLIST   setlist R11[B=1,C=1]
  0073  SETTABLE  R10[K36('arrFloatDt')] = R11
  0074  NEWTABLE  R11 = {} (1 items)
  0075  MOVE      R12 = R0
  0076  SETLIST   setlist R11[B=1,C=1]
  0077  SETTABLE  R10[K37('arrSecondViewData')] = R11
  0078  GETTABLE  R11 = R0[K38('m_viewDataParam')]
  0079  CALL      R9 = call(R9, 1 args, 2 rets)
  0080  GETTABUP  R10 = _ENV[K39('RewardApi')]
  0081  GETTABLE  R10 = R10[K40('AcquireRewardsInView')]
  0082  NEWTABLE  R11 = {} (1 items)
  0083  MOVE      R12 = R0
  0084  SETLIST   setlist R11[B=1,C=1]
  0085  MOVE      R12 = R0
  0086  GETTABUP  R13 = _ENV[K41('ERewardScene')]
  0087  GETTABLE  R13 = R13[K42('Other')]
  0088  CALL      R10 = call(R10, 0 args, 3 rets)
  0089  GETTABUP  R7 = _ENV[K39('RewardApi')]
  0090  GETTABLE  R7 = R7[K43('AcquireRewardsLogic')]
  0091  NEWTABLE  R8 = {} (1 items)
  0092  MOVE      R9 = R0
  0093  SETLIST   setlist R8[B=1,C=1]
  0094  GETTABUP  R9 = _ENV[K44('EPropertySource')]
  0095  GETTABLE  R9 = R9[K45('Give')]
  0096  GETTABUP  R10 = _ENV[K46('EBIType')]
  0097  GETTABLE  R10 = R10[K47('CookItem')]
  0098  GETTABUP  R11 = _ENV[K41('ERewardScene')]
  0099  GETTABLE  R11 = R11[K42('Other')]
  0100  LOADNIL   R12..R12 = nil
  0101  GETTABUP  R13 = _ENV[K48('CacheItemType')]
  0102  GETTABLE  R13 = R13[K49('Stack')]
  0103  CALL      R7 = call(R7, 0 args, 6 rets)
  0104  GETTABUP  R7 = _ENV[K50('string')]
  0105  GETTABLE  R7 = R7[K51('format')]
  0106  LOADK     R8 = K52 '%s%s'
  0107  GETUPVAL  R9 = _ENV
  0108  MOVE      R10 = R0
  0109  CALL      R7 = call(R7, 1 args, 3 rets)
  0110  GETTABLE  R8 = R0[K53('m_dbTable')]
  0111  SELF      R9 = R8[K54('Set')] (self)
  0112  MOVE      R10 = R0
  0113  GETTABUP  R11 = _ENV[K55('DB_VALUE_KEY')]
  0114  MOVE      R12 = R0
  0115  CALL      R8 = call(R8, 0 args, 4 rets)
  0116  RETURN    return R0..R-1
; ---------- proto19 [_OnItemCookEnded] ----------
  ; fn ?  line 506-539 np=2 va=0 ms=18 code=94 consts=34 upvals=2 protos=0
  ;   K[0]='item'
  ;   K[1]='Table'
  ;   K[2]='IsEmpty'
  ;   K[3]='m_arrCookCfgs'
  ;   K[4]='m_model'
  ;   K[5]='CanAddScore'
  ;   K[6]='isRevert'
  ;   K[7]='GetId'
  ;   K[8]='string'
  ;   K[9]='format'
  ;   K[10]='%s%s'
  ;   K[11]='m_dbTable'
  ;   K[12]='GetValue'
  ;   K[13]='DB_VALUE_KEY'
  ;   K[14]=nil
  ;   K[15]='GetCookExtraReward'
  ;   K[16]='PROPERTY_TYPE'
  ;   K[17]='math'
  ;   K[18]='min'
  ;   K[19]='GM'
  ;   K[20]='PropertyDataManager'
  ;   K[21]='GetPropertyNum'
  ;   K[22]='PROPERTY_COUNT'
  ;   K[23]='IsPropertyTypeAllowRevert'
  ;   K[24]='Consume'
  ;   K[25]='EBIType'
  ;   K[26]='UndoCook'
  ;   K[27]='GameConfig'
  ;   K[28]='IsTestMode'
  ;   K[29]='Log'
  ;   K[30]='Error'
  ;   K[31]='[ActivityTokenHelper] 取消制作菜品：%s，cook获取奖励需要回退：%s-%d，无法进行回退，请检查是否符合预期！活动名称：%s'
  ;   K[32]='GetType'
  ;   K[33]='Remove'
  ;   upvals: _ENV, DB_KEY_COOK_PREFIX
  ;   locals: self(0-94), msg(0-94), itemModel(19-94), isRevert(23-94), itemId(25-94), dbKey(31-94), dish(38-89), reward(43-89), ePropertyType(45-89), count(55-89)
  0000  TEST      if not R1 then   -> -131070
  0001  JMP       (jump)   -> 5
  0002  GETTABLE  R2 = R1[K0('item')]
  0003  TEST      if not R2 then   -> -131066
  0004  JMP       (jump)   -> 6
  0005  RETURN    return R0..R-1
  0006  GETTABUP  R2 = _ENV[K1('Table')]
  0007  GETTABLE  R2 = R2[K2('IsEmpty')]
  0008  GETTABLE  R3 = R0[K3('m_arrCookCfgs')]
  0009  CALL      R2 = call(R2, 1 args, 1 rets)
  0010  TEST      if not R2 then   -> -131059
  0011  JMP       (jump)   -> 17
  0012  GETTABLE  R2 = R0[K4('m_model')]
  0013  SELF      R3 = R2[K5('CanAddScore')] (self)
  0014  CALL      R2 = call(R2, 1 args, 1 rets)
  0015  TEST      if not R2 then   -> -131054
  0016  JMP       (jump)   -> 18
  0017  RETURN    return R0..R-1
  0018  GETTABLE  R2 = R1[K0('item')]
  0019  GETTABLE  R3 = R1[K6('isRevert')]
  0020  TEST      if not R3 then   -> -131049
  0021  JMP       (jump)   -> 23
  0022  LOADBOOL  R3 = false
  0023  SELF      R5 = R2[K7('GetId')] (self)
  0024  CALL      R4 = call(R4, 1 args, 1 rets)
  0025  GETTABUP  R5 = _ENV[K8('string')]
  0026  GETTABLE  R5 = R5[K9('format')]
  0027  LOADK     R6 = K10 '%s%s'
  0028  GETUPVAL  R7 = _ENV
  0029  MOVE      R8 = R0
  0030  CALL      R5 = call(R5, 1 args, 3 rets)
  0031  TEST      if not R3 then   -> -131039
  0032  JMP       (jump)   -> 89
  0033  GETTABLE  R6 = R0[K11('m_dbTable')]
  0034  SELF      R7 = R6[K12('GetValue')] (self)
  0035  MOVE      R8 = R0
  0036  GETTABUP  R9 = _ENV[K13('DB_VALUE_KEY')]
  0037  CALL      R6 = call(R6, 1 args, 3 rets)
  0038  EQ        if R1 eq K14(nil)   -> -127690
  0039  JMP       (jump)   -> 89
  0040  SELF      R8 = R0[K15('GetCookExtraReward')] (self)
  0041  MOVE      R9 = R0
  0042  CALL      R7 = call(R7, 1 args, 2 rets)
  0043  GETTABUP  R8 = _ENV[K16('PROPERTY_TYPE')]
  0044  GETTABLE  R8 = R7[R8]
  0045  GETTABUP  R9 = _ENV[K17('math')]
  0046  GETTABLE  R9 = R9[K18('min')]
  0047  GETTABUP  R10 = _ENV[K19('GM')]
  0048  GETTABLE  R10 = R10[K20('PropertyDataManager')]
  0049  SELF      R11 = R10[K21('GetPropertyNum')] (self)
  0050  MOVE      R12 = R0
  0051  CALL      R10 = call(R10, 1 args, 2 rets)
  0052  GETTABUP  R11 = _ENV[K22('PROPERTY_COUNT')]
  0053  GETTABLE  R11 = R7[R11]
  0054  CALL      R9 = call(R9, 1 args, 2 rets)
  0055  GETTABUP  R10 = _ENV[K19('GM')]
  0056  GETTABLE  R10 = R10[K20('PropertyDataManager')]
  0057  SELF      R11 = R10[K23('IsPropertyTypeAllowRevert')] (self)
  0058  MOVE      R12 = R0
  0059  CALL      R10 = call(R10, 1 args, 2 rets)
  0060  TEST      if not R10 then   -> -131010
  0061  JMP       (jump)   -> 71
  0062  GETTABUP  R10 = _ENV[K19('GM')]
  0063  GETTABLE  R10 = R10[K20('PropertyDataManager')]
  0064  SELF      R11 = R10[K24('Consume')] (self)
  0065  MOVE      R12 = R0
  0066  MOVE      R13 = R0
  0067  GETTABUP  R14 = _ENV[K25('EBIType')]
  0068  GETTABLE  R14 = R14[K26('UndoCook')]
  0069  CALL      R10 = call(R10, 0 args, 4 rets)
  0070  JMP       (jump)   -> 89
  0071  GETTABUP  R10 = _ENV[K27('GameConfig')]
  0072  GETTABLE  R10 = R10[K28('IsTestMode')]
  0073  CALL      R10 = call(R10, 1 args, 0 rets)
  0074  TEST      if not R10 then   -> -130996
  0075  JMP       (jump)   -> 89
  0076  GETTABUP  R10 = _ENV[K29('Log')]
  0077  GETTABLE  R10 = R10[K30('Error')]
  0078  GETTABUP  R11 = _ENV[K8('string')]
  0079  GETTABLE  R11 = R11[K9('format')]
  0080  LOADK     R12 = K31 '[ActivityTokenHelper] 取消制作菜品：%s，cook获取奖励需要回退：%s-%d，无法进行回退，请检查是否符合预期！活动名称：%s'
  0081  MOVE      R13 = R0
  0082  MOVE      R14 = R0
  0083  MOVE      R15 = R0
  0084  GETTABLE  R16 = R0[K4('m_model')]
  0085  SELF      R17 = R16[K32('GetType')] (self)
  0086  CALL      R16 = call(R16, -1 args, 1 rets)
  0087  CALL      R11 = call(R11, -1 args, -1 rets)
  0088  CALL      R10 = call(R10, 0 args, -1 rets)
  0089  GETTABLE  R6 = R0[K11('m_dbTable')]
  0090  SELF      R7 = R6[K33('Remove')] (self)
  0091  MOVE      R8 = R0
  0092  CALL      R6 = call(R6, 0 args, 2 rets)
  0093  RETURN    return R0..R-1
; ---------- proto20 [GetAddReward] ----------
  ; fn ?  line 546-568 np=3 va=0 ms=8 code=40 consts=14 upvals=2 protos=0
  ;   K[0]='IsAutoRun'
  ;   K[1]='GM'
  ;   K[2]='TestAutoRunModel'
  ;   K[3]='ignoreActivityGain'
  ;   K[4]='Table'
  ;   K[5]='ListWeightSelectOne'
  ;   K[6]='rewardsWeight'
  ;   K[7]='PROPERTY_TYPE'
  ;   K[8]='ActivityTokenHelper'
  ;   K[9]='TryUseRatioReward'
  ;   K[10]='Weight'
  ;   K[11]=nil
  ;   K[12]='RewardApi'
  ;   K[13]='CryptOneReward'
  ;   upvals: _ENV, EmptyRewardType
  ;   locals: config(0-40), score(0-40), bWithoutCrypt(0-40), reward(15-40)
  0000  GETTABUP  R3 = _ENV[K0('IsAutoRun')]
  0001  CALL      R3 = call(R3, 1 args, 0 rets)
  0002  TEST      if not R3 then   -> -131068
  0003  JMP       (jump)   -> 11
  0004  GETTABUP  R3 = _ENV[K1('GM')]
  0005  GETTABLE  R3 = R3[K2('TestAutoRunModel')]
  0006  GETTABLE  R3 = R3[K3('ignoreActivityGain')]
  0007  TEST      if not R3 then   -> -131063
  0008  JMP       (jump)   -> 11
  0009  LOADNIL   R3..R3 = nil
  0010  RETURN    return R3..R2
  0011  GETTABUP  R3 = _ENV[K4('Table')]
  0012  GETTABLE  R3 = R3[K5('ListWeightSelectOne')]
  0013  GETTABLE  R4 = R0[K6('rewardsWeight')]
  0014  CALL      R3 = call(R3, 1 args, 1 rets)
  0015  GETTABUP  R4 = _ENV[K7('PROPERTY_TYPE')]
  0016  GETTABLE  R4 = R3[R4]
  0017  GETUPVAL  R5 = _ENV
  0018  EQ        if R0 eq R5   -> -128999
  0019  JMP       (jump)   -> 22
  0020  LOADNIL   R4..R4 = nil
  0021  RETURN    return R4..R3
  0022  GETTABUP  R4 = _ENV[K8('ActivityTokenHelper')]
  0023  GETTABLE  R4 = R4[K9('TryUseRatioReward')]
  0024  MOVE      R5 = R0
  0025  MOVE      R6 = R0
  0026  MOVE      R7 = R0
  0027  CALL      R4 = call(R4, 1 args, 3 rets)
  0028  MOVE      R3 = R0
  0029  TEST      if not R3 then   -> -131041
  0030  JMP       (jump)   -> 32
  0031  SETTABLE  R3[K10('Weight')] = K11(nil)
  0032  TEST      if not R2 then   -> -131037
  0033  JMP       (jump)   -> 38
  0034  GETTABUP  R4 = _ENV[K12('RewardApi')]
  0035  GETTABLE  R4 = R4[K13('CryptOneReward')]
  0036  MOVE      R5 = R0
  0037  CALL      R4 = call(R4, 0 args, 1 rets)
  0038  RETURN    return R3..R2
  0039  RETURN    return R0..R-1
; ---------- proto21 [TryUseRatioReward] ----------
  ; fn ?  line 570-595 np=3 va=0 ms=8 code=63 consts=17 upvals=1 protos=0
  ;   K[0]='Table'
  ;   K[1]='ShallowCopy'
  ;   K[2]='ratio'
  ;   K[3]=nil
  ;   K[4]='roundType'
  ;   K[5]='PROPERTY_COUNT'
  ;   K[6]='ERoundType'
  ;   K[7]='Up'
  ;   K[8]='math'
  ;   K[9]='ceil'
  ;   K[10]='Down'
  ;   K[11]='floor'
  ;   K[12]='Down_1'
  ;   K[13]='max'
  ;   K[14]=1
  ;   K[15]=0.5
  ;   K[16]=0
  ;   upvals: _ENV
  ;   locals: reward(0-63), config(0-63), score(0-63), roundType(11-61), targetNum(16-61)
  0000  GETTABUP  R3 = _ENV[K0('Table')]
  0001  GETTABLE  R3 = R3[K1('ShallowCopy')]
  0002  MOVE      R4 = R0
  0003  CALL      R3 = call(R3, 1 args, 1 rets)
  0004  MOVE      R0 = R0
  0005  GETTABLE  R3 = R1[K2('ratio')]
  0006  EQ        if R1 eq K3(nil)   -> -129269
  0007  JMP       (jump)   -> 61
  0008  EQ        if R1 eq K3(nil)   -> -129779
  0009  JMP       (jump)   -> 61
  0010  GETTABLE  R3 = R1[K4('roundType')]
  0011  GETTABUP  R4 = _ENV[K5('PROPERTY_COUNT')]
  0012  GETTABLE  R4 = R0[R4]
  0013  GETTABLE  R5 = R1[K2('ratio')]
  0014  MUL       R4 = R5 mul R4
  0015  MUL       R4 = R2 mul R4
  0016  GETTABUP  R5 = _ENV[K6('ERoundType')]
  0017  GETTABLE  R5 = R5[K7('Up')]
  0018  EQ        if R0 eq R5   -> -129511
  0019  JMP       (jump)   -> 26
  0020  GETTABUP  R5 = _ENV[K8('math')]
  0021  GETTABLE  R5 = R5[K9('ceil')]
  0022  MOVE      R6 = R0
  0023  CALL      R5 = call(R5, 1 args, 1 rets)
  0024  MOVE      R4 = R0
  0025  JMP       (jump)   -> 55
  0026  GETTABUP  R5 = _ENV[K6('ERoundType')]
  0027  GETTABLE  R5 = R5[K10('Down')]
  0028  EQ        if R0 eq R5   -> -129501
  0029  JMP       (jump)   -> 36
  0030  GETTABUP  R5 = _ENV[K8('math')]
  0031  GETTABLE  R5 = R5[K11('floor')]
  0032  MOVE      R6 = R0
  0033  CALL      R5 = call(R5, 1 args, 1 rets)
  0034  MOVE      R4 = R0
  0035  JMP       (jump)   -> 55
  0036  GETTABUP  R5 = _ENV[K6('ERoundType')]
  0037  GETTABLE  R5 = R5[K12('Down_1')]
  0038  EQ        if R0 eq R5   -> -129491
  0039  JMP       (jump)   -> 50
  0040  GETTABUP  R5 = _ENV[K8('math')]
  0041  GETTABLE  R5 = R5[K13('max')]
  0042  GETTABUP  R6 = _ENV[K8('math')]
  0043  GETTABLE  R6 = R6[K11('floor')]
  0044  MOVE      R7 = R0
  0045  CALL      R6 = call(R6, 1 args, 1 rets)
  0046  LOADK     R7 = K14 1
  0047  CALL      R5 = call(R5, 1 args, 2 rets)
  0048  MOVE      R4 = R0
  0049  JMP       (jump)   -> 55
  0050  GETTABUP  R5 = _ENV[K8('math')]
  0051  GETTABLE  R5 = R5[K11('floor')]
  0052  ADD       R6 = K15(0.5) add R4
  0053  CALL      R5 = call(R5, 1 args, 1 rets)
  0054  MOVE      R4 = R0
  0055  LE        if R0 le K16(0)   -> -128695
  0056  JMP       (jump)   -> 59
  0057  LOADNIL   R5..R5 = nil
  0058  RETURN    return R5..R4
  0059  GETTABUP  R5 = _ENV[K5('PROPERTY_COUNT')]
  0060  SETTABLE  R0[R5] = R4
  0061  RETURN    return R0..R-1
  0062  RETURN    return R0..R-1
; ---------- proto22 [GetRatioRewards] ----------
  ; fn ?  line 597-603 np=2 va=0 ms=13 code=18 consts=5 upvals=1 protos=0
  ;   K[0]='ipairs'
  ;   K[1]='rewardsWeight'
  ;   K[2]=1
  ;   K[3]='ActivityTokenHelper'
  ;   K[4]='TryUseRatioReward'
  ;   upvals: _ENV
  ;   locals: config(0-18), score(0-18), rewards(1-18), (for generator)(4-16), (for state)(4-16), (for control)(4-16), _(5-14), reward(5-14)
  0000  NEWTABLE  R2 = {} (0 items)
  0001  GETTABUP  R3 = _ENV[K0('ipairs')]
  0002  GETTABLE  R4 = R0[K1('rewardsWeight')]
  0003  CALL      R3 = call(R3, 3 args, 1 rets)
  0004  JMP       (jump)   -> 14
  0005  LEN       R8 = len R0
  0006  ADD       R8 = K2(1) add R8
  0007  GETTABUP  R9 = _ENV[K3('ActivityTokenHelper')]
  0008  GETTABLE  R9 = R9[K4('TryUseRatioReward')]
  0009  MOVE      R10 = R0
  0010  MOVE      R11 = R0
  0011  MOVE      R12 = R0
  0012  CALL      R9 = call(R9, 1 args, 3 rets)
  0013  SETTABLE  R2[R8] = R9
  0014  TFORCALL  tforcall R3
  0015  TFORLOOP  tforloop R5(sBx=-11)   -> 5
  0016  RETURN    return R2..R1
  0017  RETURN    return R0..R-1
; ---------- proto23 [IsAcquireTypeValid] ----------
  ; fn ?  line 605-619 np=2 va=0 ms=4 code=74 consts=17 upvals=1 protos=0
  ;   K[0]='EActTokenAcquireType'
  ;   K[1]='CostEnergy'
  ;   K[2]='m_costEnergyCfg'
  ;   K[3]=nil
  ;   K[4]='energyNum'
  ;   K[5]='ProducerClick'
  ;   K[6]='clickNum'
  ;   K[7]='FinishOrder'
  ;   K[8]='Table'
  ;   K[9]='IsEmpty'
  ;   K[10]='m_arrOrderCfgs'
  ;   K[11]='Merge'
  ;   K[12]='m_arrMergeCfgs'
  ;   K[13]='ShopItem'
  ;   K[14]='m_arrShopItemCfgs'
  ;   K[15]='Cook'
  ;   K[16]='m_arrCookCfgs'
  ;   upvals: _ENV
  ;   locals: self(0-74), type(0-74)
  0000  GETTABUP  R2 = _ENV[K0('EActTokenAcquireType')]
  0001  GETTABLE  R2 = R2[K1('CostEnergy')]
  0002  EQ        if R0 eq R2   -> -130554
  0003  JMP       (jump)   -> 15
  0004  GETTABLE  R2 = R0[K2('m_costEnergyCfg')]
  0005  EQ        if R1 eq K3(nil)   -> -129782
  0006  JMP       (jump)   -> 11
  0007  GETTABLE  R2 = R0[K2('m_costEnergyCfg')]
  0008  GETTABLE  R2 = R2[K4('energyNum')]
  0009  EQ        if R0 eq K3(nil)   -> -129778
  0010  JMP       (jump)   -> 12
  0011  LOADBOOL  R2 = false
  0012  LOADBOOL  R2 = true
  0013  RETURN    return R2..R1
  0014  JMP       (jump)   -> 73
  0015  GETTABUP  R2 = _ENV[K0('EActTokenAcquireType')]
  0016  GETTABLE  R2 = R2[K5('ProducerClick')]
  0017  EQ        if R0 eq R2   -> -130539
  0018  JMP       (jump)   -> 30
  0019  GETTABLE  R2 = R0[K2('m_costEnergyCfg')]
  0020  EQ        if R1 eq K3(nil)   -> -129767
  0021  JMP       (jump)   -> 26
  0022  GETTABLE  R2 = R0[K2('m_costEnergyCfg')]
  0023  GETTABLE  R2 = R2[K6('clickNum')]
  0024  EQ        if R0 eq K3(nil)   -> -129763
  0025  JMP       (jump)   -> 27
  0026  LOADBOOL  R2 = false
  0027  LOADBOOL  R2 = true
  0028  RETURN    return R2..R1
  0029  JMP       (jump)   -> 73
  0030  GETTABUP  R2 = _ENV[K0('EActTokenAcquireType')]
  0031  GETTABLE  R2 = R2[K7('FinishOrder')]
  0032  EQ        if R0 eq R2   -> -130524
  0033  JMP       (jump)   -> 41
  0034  GETTABUP  R2 = _ENV[K8('Table')]
  0035  GETTABLE  R2 = R2[K9('IsEmpty')]
  0036  GETTABLE  R3 = R0[K10('m_arrOrderCfgs')]
  0037  CALL      R2 = call(R2, 1 args, 1 rets)
  0038  NOT       R2 = not R0
  0039  RETURN    return R2..R1
  0040  JMP       (jump)   -> 73
  0041  GETTABUP  R2 = _ENV[K0('EActTokenAcquireType')]
  0042  GETTABLE  R2 = R2[K11('Merge')]
  0043  EQ        if R0 eq R2   -> -130513
  0044  JMP       (jump)   -> 52
  0045  GETTABUP  R2 = _ENV[K8('Table')]
  0046  GETTABLE  R2 = R2[K9('IsEmpty')]
  0047  GETTABLE  R3 = R0[K12('m_arrMergeCfgs')]
  0048  CALL      R2 = call(R2, 1 args, 1 rets)
  0049  NOT       R2 = not R0
  0050  RETURN    return R2..R1
  0051  JMP       (jump)   -> 73
  0052  GETTABUP  R2 = _ENV[K0('EActTokenAcquireType')]
  0053  GETTABLE  R2 = R2[K13('ShopItem')]
  0054  EQ        if R0 eq R2   -> -130502
  0055  JMP       (jump)   -> 63
  0056  GETTABUP  R2 = _ENV[K8('Table')]
  0057  GETTABLE  R2 = R2[K9('IsEmpty')]
  0058  GETTABLE  R3 = R0[K14('m_arrShopItemCfgs')]
  0059  CALL      R2 = call(R2, 1 args, 1 rets)
  0060  NOT       R2 = not R0
  0061  RETURN    return R2..R1
  0062  JMP       (jump)   -> 73
  0063  GETTABUP  R2 = _ENV[K0('EActTokenAcquireType')]
  0064  GETTABLE  R2 = R2[K15('Cook')]
  0065  EQ        if R0 eq R2   -> -130491
  0066  JMP       (jump)   -> 73
  0067  GETTABUP  R2 = _ENV[K8('Table')]
  0068  GETTABLE  R2 = R2[K9('IsEmpty')]
  0069  GETTABLE  R3 = R0[K16('m_arrCookCfgs')]
  0070  CALL      R2 = call(R2, 1 args, 1 rets)
  0071  NOT       R2 = not R0
  0072  RETURN    return R2..R1
  0073  RETURN    return R0..R-1
; ---------- proto24 [GetCostEnergyInfo] ----------
  ; fn ?  line 621-632 np=1 va=0 ms=10 code=37 consts=13 upvals=1 protos=0
  ;   K[0]='m_costEnergyCfg'
  ;   K[1]=nil
  ;   K[2]='energyNum'
  ;   K[3]='Table'
  ;   K[4]='IsEmpty'
  ;   K[5]='rewardsWeight'
  ;   K[6]=0
  ;   K[7]='ipairs'
  ;   K[8]='PROPERTY_TYPE'
  ;   K[9]='m_model'
  ;   K[10]='GetActivityDefinition'
  ;   K[11]='ActivityTokenPropertyType'
  ;   K[12]='PROPERTY_COUNT'
  ;   upvals: _ENV
  ;   locals: self(0-37), tokenNum(15-36), (for generator)(19-32), (for state)(19-32), (for control)(19-32), _(20-30), reward(20-30)
  0000  GETTABLE  R1 = R0[K0('m_costEnergyCfg')]
  0001  EQ        if R1 eq K1(nil)   -> -130300
  0002  JMP       (jump)   -> 36
  0003  GETTABLE  R1 = R0[K0('m_costEnergyCfg')]
  0004  GETTABLE  R1 = R1[K2('energyNum')]
  0005  EQ        if R1 eq K1(nil)   -> -130296
  0006  JMP       (jump)   -> 36
  0007  GETTABUP  R1 = _ENV[K3('Table')]
  0008  GETTABLE  R1 = R1[K4('IsEmpty')]
  0009  GETTABLE  R2 = R0[K0('m_costEnergyCfg')]
  0010  GETTABLE  R2 = R2[K5('rewardsWeight')]
  0011  CALL      R1 = call(R1, 1 args, 1 rets)
  0012  TEST      if not R1 then   -> -131057
  0013  JMP       (jump)   -> 36
  0014  LOADK     R1 = K6 0
  0015  GETTABUP  R2 = _ENV[K7('ipairs')]
  0016  GETTABLE  R3 = R0[K0('m_costEnergyCfg')]
  0017  GETTABLE  R3 = R3[K5('rewardsWeight')]
  0018  CALL      R2 = call(R2, 3 args, 1 rets)
  0019  JMP       (jump)   -> 30
  0020  GETTABUP  R7 = _ENV[K8('PROPERTY_TYPE')]
  0021  GETTABLE  R7 = R6[R7]
  0022  GETTABLE  R8 = R0[K9('m_model')]
  0023  SELF      R9 = R8[K10('GetActivityDefinition')] (self)
  0024  CALL      R8 = call(R8, 1 args, 1 rets)
  0025  GETTABLE  R8 = R8[K11('ActivityTokenPropertyType')]
  0026  EQ        if R0 eq R8   -> -127452
  0027  JMP       (jump)   -> 30
  0028  GETTABUP  R7 = _ENV[K12('PROPERTY_COUNT')]
  0029  GETTABLE  R1 = R6[R7]
  0030  TFORCALL  tforcall R2
  0031  TFORLOOP  tforloop R4(sBx=-12)   -> 20
  0032  GETTABLE  R2 = R0[K0('m_costEnergyCfg')]
  0033  GETTABLE  R2 = R2[K2('energyNum')]
  0034  MOVE      R3 = R0
  0035  RETURN    return R2..R1
  0036  RETURN    return R0..R-1
; ---------- proto25 [CheckScoreConfig] ----------
  ; fn ?  line 636-668 np=2 va=0 ms=14 code=54 consts=16 upvals=1 protos=2
  ;   K[0]='Table'
  ;   K[1]='IsEmpty'
  ;   K[2]='GameConfig'
  ;   K[3]='IsTestMode'
  ;   K[4]='ShallowCopy'
  ;   K[5]='table'
  ;   K[6]='sort'
  ;   K[7]='ipairs'
  ;   K[8]='Log'
  ;   K[9]='Error'
  ;   K[10]='[ActivityTokenHelper] 配置出错, score_min的值大于score_max的值，请检查！'
  ;   K[11]=nil
  ;   K[12]='math'
  ;   K[13]='abs'
  ;   K[14]=0.001
  ;   K[15]='[ActivityTokenHelper] 配置出错, score的总区间不连续请检查！'
  ;   upvals: _ENV
  ;   locals: self(0-54), arrConfig(0-54), tmpConfig(16-54), getMinMaxFunc(22-54), scoreMin(23-54), scoreMax(23-54), lastMax(23-54), (for generator)(26-53), (for state)(26-53), (for control)(26-53), _(27-51), config(27-51)
  0000  GETTABUP  R2 = _ENV[K0('Table')]
  0001  GETTABLE  R2 = R2[K1('IsEmpty')]
  0002  MOVE      R3 = R0
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  TEST      if not R2 then   -> -131065
  0005  JMP       (jump)   -> 11
  0006  GETTABUP  R2 = _ENV[K2('GameConfig')]
  0007  GETTABLE  R2 = R2[K3('IsTestMode')]
  0008  CALL      R2 = call(R2, 1 args, 0 rets)
  0009  TEST      if not R2 then   -> -131060
  0010  JMP       (jump)   -> 12
  0011  RETURN    return R0..R-1
  0012  GETTABUP  R2 = _ENV[K0('Table')]
  0013  GETTABLE  R2 = R2[K4('ShallowCopy')]
  0014  MOVE      R3 = R0
  0015  CALL      R2 = call(R2, 1 args, 1 rets)
  0016  GETTABUP  R3 = _ENV[K5('table')]
  0017  GETTABLE  R3 = R3[K6('sort')]
  0018  MOVE      R4 = R0
  0019  CLOSURE   R5 = closure proto0
  0020  CALL      R3 = call(R3, 0 args, 2 rets)
  0021  CLOSURE   R3 = closure proto1
  0022  LOADNIL   R4..R4 = nil
  0023  GETTABUP  R7 = _ENV[K7('ipairs')]
  0024  MOVE      R8 = R0
  0025  CALL      R7 = call(R7, 3 args, 1 rets)
  0026  JMP       (jump)   -> 51
  0027  MOVE      R12 = R0
  0028  MOVE      R13 = R0
  0029  CALL      R12 = call(R12, 2 args, 1 rets)
  0030  MOVE      R5 = R0
  0031  MOVE      R4 = R0
  0032  LT        if R0 lt R4   -> -128474
  0033  JMP       (jump)   -> 38
  0034  GETTABUP  R12 = _ENV[K8('Log')]
  0035  GETTABLE  R12 = R12[K9('Error')]
  0036  LOADK     R13 = K10 '[ActivityTokenHelper] 配置出错, score_min的值大于score_max的值，请检查！'
  0037  CALL      R12 = call(R12, 0 args, 1 rets)
  0038  EQ        if R1 eq K11(nil)   -> -127693
  0039  JMP       (jump)   -> 50
  0040  GETTABUP  R12 = _ENV[K12('math')]
  0041  GETTABLE  R12 = R12[K13('abs')]
  0042  SUB       R13 = R4 sub R6
  0043  CALL      R12 = call(R12, 1 args, 1 rets)
  0044  LT        if R0 lt R12   -> 7226
  0045  JMP       (jump)   -> 50
  0046  GETTABUP  R12 = _ENV[K8('Log')]
  0047  GETTABLE  R12 = R12[K9('Error')]
  0048  LOADK     R13 = K15 '[ActivityTokenHelper] 配置出错, score的总区间不连续请检查！'
  0049  CALL      R12 = call(R12, 0 args, 1 rets)
  0050  MOVE      R6 = R0
  0051  TFORCALL  tforcall R7
  0052  TFORLOOP  tforloop R9(sBx=-26)   -> 27
  0053  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 643-648 np=2 va=0 ms=5 code=16 consts=3 upvals=1 protos=0
    ;   K[0]='score_min'
    ;   K[1]='math'
    ;   K[2]='mininteger'
    ;   upvals: _ENV
    ;   locals: a(0-16), b(0-16), minA(5-16), minB(10-16)
    0000  GETTABLE  R2 = R0[K0('score_min')]
    0001  TEST      if not R2 then   -> -131068
    0002  JMP       (jump)   -> 5
    0003  GETTABUP  R2 = _ENV[K1('math')]
    0004  GETTABLE  R2 = R2[K2('mininteger')]
    0005  GETTABLE  R3 = R1[K0('score_min')]
    0006  TEST      if not R3 then   -> -131063
    0007  JMP       (jump)   -> 10
    0008  GETTABUP  R3 = _ENV[K1('math')]
    0009  GETTABLE  R3 = R3[K2('mininteger')]
    0010  LT        if R1 lt R3   -> -130033
    0011  JMP       (jump)   -> 13
    0012  LOADBOOL  R4 = false
    0013  LOADBOOL  R4 = true
    0014  RETURN    return R4..R3
    0015  RETURN    return R0..R-1
  ; ---------- proto1 [] ----------
    ; fn ?  line 650-652 np=1 va=0 ms=3 code=12 consts=5 upvals=1 protos=0
    ;   K[0]='score_min'
    ;   K[1]='math'
    ;   K[2]='mininteger'
    ;   K[3]='score_max'
    ;   K[4]='maxinteger'
    ;   upvals: _ENV
    ;   locals: config(0-12)
    0000  GETTABLE  R1 = R0[K0('score_min')]
    0001  TEST      if not R1 then   -> -131068
    0002  JMP       (jump)   -> 5
    0003  GETTABUP  R1 = _ENV[K1('math')]
    0004  GETTABLE  R1 = R1[K2('mininteger')]
    0005  GETTABLE  R2 = R0[K3('score_max')]
    0006  TEST      if not R2 then   -> -131063
    0007  JMP       (jump)   -> 10
    0008  GETTABUP  R2 = _ENV[K1('math')]
    0009  GETTABLE  R2 = R2[K4('maxinteger')]
    0010  RETURN    return R1..R0
    0011  RETURN    return R0..R-1
; ---------- proto26 [_CheckConfigSpecial] ----------
  ; fn ?  line 670-686 np=1 va=0 ms=18 code=46 consts=18 upvals=1 protos=0
  ;   K[0]='GameConfig'
  ;   K[1]='IsTestMode'
  ;   K[2]='Table'
  ;   K[3]='IsEmpty'
  ;   K[4]='m_arrCookCfgs'
  ;   K[5]='ipairs'
  ;   K[6]='rewardsWeight'
  ;   K[7]='PROPERTY_TYPE'
  ;   K[8]='GM'
  ;   K[9]='PropertyDataManager'
  ;   K[10]='IsPropertyTypeAllowRevert'
  ;   K[11]='Log'
  ;   K[12]='Error'
  ;   K[13]='string'
  ;   K[14]='format'
  ;   K[15]='[ActivityTokenHelper] 配置出错，奖励类型%s不支持资产回退，请适配资产回退或改为使用其他奖励类型，活动名称：%s'
  ;   K[16]='m_model'
  ;   K[17]='GetType'
  ;   upvals: _ENV
  ;   locals: self(0-46), ePropertyType(13-45), (for generator)(16-45), (for state)(16-45), (for control)(16-45), _(17-43), config(17-43), (for generator)(20-43), (for state)(20-43), (for control)(20-43), _(21-41), reward(21-41)
  0000  GETTABUP  R1 = _ENV[K0('GameConfig')]
  0001  GETTABLE  R1 = R1[K1('IsTestMode')]
  0002  CALL      R1 = call(R1, 1 args, 0 rets)
  0003  TEST      if not R1 then   -> -131066
  0004  JMP       (jump)   -> 6
  0005  RETURN    return R0..R-1
  0006  GETTABUP  R1 = _ENV[K2('Table')]
  0007  GETTABLE  R1 = R1[K3('IsEmpty')]
  0008  GETTABLE  R2 = R0[K4('m_arrCookCfgs')]
  0009  CALL      R1 = call(R1, 1 args, 1 rets)
  0010  TEST      if not R1 then   -> -131059
  0011  JMP       (jump)   -> 45
  0012  LOADNIL   R1..R1 = nil
  0013  GETTABUP  R2 = _ENV[K5('ipairs')]
  0014  GETTABLE  R3 = R0[K4('m_arrCookCfgs')]
  0015  CALL      R2 = call(R2, 3 args, 1 rets)
  0016  JMP       (jump)   -> 43
  0017  GETTABUP  R7 = _ENV[K5('ipairs')]
  0018  GETTABLE  R8 = R6[K6('rewardsWeight')]
  0019  CALL      R7 = call(R7, 3 args, 1 rets)
  0020  JMP       (jump)   -> 41
  0021  GETTABUP  R12 = _ENV[K7('PROPERTY_TYPE')]
  0022  GETTABLE  R1 = R11[R12]
  0023  GETTABUP  R12 = _ENV[K8('GM')]
  0024  GETTABLE  R12 = R12[K9('PropertyDataManager')]
  0025  SELF      R13 = R12[K10('IsPropertyTypeAllowRevert')] (self)
  0026  MOVE      R14 = R0
  0027  CALL      R12 = call(R12, 1 args, 2 rets)
  0028  TEST      if not R12 then   -> -131041
  0029  JMP       (jump)   -> 41
  0030  GETTABUP  R12 = _ENV[K11('Log')]
  0031  GETTABLE  R12 = R12[K12('Error')]
  0032  GETTABUP  R13 = _ENV[K13('string')]
  0033  GETTABLE  R13 = R13[K14('format')]
  0034  LOADK     R14 = K15 '[ActivityTokenHelper] 配置出错，奖励类型%s不支持资产回退，请适配资产回退或改为使用其他奖励类型，活动名称：%s'
  0035  MOVE      R15 = R0
  0036  GETTABLE  R16 = R0[K16('m_model')]
  0037  SELF      R17 = R16[K17('GetType')] (self)
  0038  CALL      R16 = call(R16, -1 args, 1 rets)
  0039  CALL      R13 = call(R13, -1 args, -1 rets)
  0040  CALL      R12 = call(R12, 0 args, -1 rets)
  0041  TFORCALL  tforcall R7
  0042  TFORLOOP  tforloop R9(sBx=-22)   -> 21
  0043  TFORCALL  tforcall R2
  0044  TFORLOOP  tforloop R4(sBx=-28)   -> 17
  0045  RETURN    return R0..R-1
