# LuckyBlastActivity_View_LuckyBlastActivityTopRightEntry_1766.luac
; fn @LuckyBlastActivityTopRightEntry.lua  line 0-0 np=0 va=1 ms=3 code=96 consts=33 upvals=1 protos=29
;   K[0]='LuckyBlastActivityTopRightEntry'
;   K[1]='setmetatable'
;   K[2]='HudGeneralButton'
;   K[3]='__index'
;   K[4]='Awake'
;   K[5]='Init'
;   K[6]='OnDestroy'
;   K[7]='_TryAddListeners'
;   K[8]='TryPopTip'
;   K[9]='_OnTopRightEntryShowTip'
;   K[10]='UpdatePerSecond'
;   K[11]='GetModel'
;   K[12]='_IsModelIdChanged'
;   K[13]='OnBtnClicked'
;   K[14]='GetIconNode'
;   K[15]='_OnSelectPdChain'
;   K[16]='_OnPdChainTriggerEndedEvent'
;   K[17]='_OnRefreshEnergyConsumed'
;   K[18]='_UpdateFinishTime'
;   K[19]='_InitView'
;   K[20]='OnGameModeChanged'
;   K[21]='_TryKillSliderSequence'
;   K[22]='_TryKillScaleSequence'
;   K[23]='UpdateView'
;   K[24]='_UpdateLight'
;   K[25]='_UpdateEnergyConsumed'
;   K[26]='_UpdateMaxEffect'
;   K[27]='SetVisible'
;   K[28]='IconScaleAnimation'
;   K[29]='UpdateButtonGraphics'
;   K[30]='_ShowTipWithKey'
;   K[31]='DORootScale'
;   K[32]='_OnEnergyRequirementSatisfied'
;   upvals: _ENV
0000  GETTABUP  R0 = _ENV[K1('setmetatable')]
0001  NEWTABLE  R1 = {} (0 items)
0002  GETTABUP  R2 = _ENV[K2('HudGeneralButton')]
0003  CALL      R0 = call(R0, 1 args, 2 rets)
0004  SETTABUP  _ENV[K0('LuckyBlastActivityTopRightEntry')] = R0
0005  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0006  GETTABUP  R1 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0007  SETTABLE  R0[K3('__index')] = R1
0008  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0009  CLOSURE   R1 = closure proto0
0010  SETTABLE  R0[K4('Awake')] = R1
0011  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0012  CLOSURE   R1 = closure proto1
0013  SETTABLE  R0[K5('Init')] = R1
0014  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0015  CLOSURE   R1 = closure proto2
0016  SETTABLE  R0[K6('OnDestroy')] = R1
0017  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0018  CLOSURE   R1 = closure proto3
0019  SETTABLE  R0[K7('_TryAddListeners')] = R1
0020  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0021  CLOSURE   R1 = closure proto4
0022  SETTABLE  R0[K8('TryPopTip')] = R1
0023  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0024  CLOSURE   R1 = closure proto5
0025  SETTABLE  R0[K9('_OnTopRightEntryShowTip')] = R1
0026  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0027  CLOSURE   R1 = closure proto6
0028  SETTABLE  R0[K10('UpdatePerSecond')] = R1
0029  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0030  CLOSURE   R1 = closure proto7
0031  SETTABLE  R0[K11('GetModel')] = R1
0032  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0033  CLOSURE   R1 = closure proto8
0034  SETTABLE  R0[K12('_IsModelIdChanged')] = R1
0035  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0036  CLOSURE   R1 = closure proto9
0037  SETTABLE  R0[K13('OnBtnClicked')] = R1
0038  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0039  CLOSURE   R1 = closure proto10
0040  SETTABLE  R0[K14('GetIconNode')] = R1
0041  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0042  CLOSURE   R1 = closure proto11
0043  SETTABLE  R0[K15('_OnSelectPdChain')] = R1
0044  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0045  CLOSURE   R1 = closure proto12
0046  SETTABLE  R0[K16('_OnPdChainTriggerEndedEvent')] = R1
0047  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0048  CLOSURE   R1 = closure proto13
0049  SETTABLE  R0[K17('_OnRefreshEnergyConsumed')] = R1
0050  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0051  CLOSURE   R1 = closure proto14
0052  SETTABLE  R0[K18('_UpdateFinishTime')] = R1
0053  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0054  CLOSURE   R1 = closure proto15
0055  SETTABLE  R0[K19('_InitView')] = R1
0056  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0057  CLOSURE   R1 = closure proto16
0058  SETTABLE  R0[K20('OnGameModeChanged')] = R1
0059  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0060  CLOSURE   R1 = closure proto17
0061  SETTABLE  R0[K21('_TryKillSliderSequence')] = R1
0062  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0063  CLOSURE   R1 = closure proto18
0064  SETTABLE  R0[K22('_TryKillScaleSequence')] = R1
0065  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0066  CLOSURE   R1 = closure proto19
0067  SETTABLE  R0[K23('UpdateView')] = R1
0068  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0069  CLOSURE   R1 = closure proto20
0070  SETTABLE  R0[K24('_UpdateLight')] = R1
0071  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0072  CLOSURE   R1 = closure proto21
0073  SETTABLE  R0[K25('_UpdateEnergyConsumed')] = R1
0074  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0075  CLOSURE   R1 = closure proto22
0076  SETTABLE  R0[K26('_UpdateMaxEffect')] = R1
0077  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0078  CLOSURE   R1 = closure proto23
0079  SETTABLE  R0[K27('SetVisible')] = R1
0080  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0081  CLOSURE   R1 = closure proto24
0082  SETTABLE  R0[K28('IconScaleAnimation')] = R1
0083  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0084  CLOSURE   R1 = closure proto25
0085  SETTABLE  R0[K29('UpdateButtonGraphics')] = R1
0086  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0087  CLOSURE   R1 = closure proto26
0088  SETTABLE  R0[K30('_ShowTipWithKey')] = R1
0089  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0090  CLOSURE   R1 = closure proto27
0091  SETTABLE  R0[K31('DORootScale')] = R1
0092  GETTABUP  R0 = _ENV[K0('LuckyBlastActivityTopRightEntry')]
0093  CLOSURE   R1 = closure proto28
0094  SETTABLE  R0[K32('_OnEnergyRequirementSatisfied')] = R1
0095  RETURN    return R0..R-1
; ---------- proto0 [Awake] ----------
  ; fn ?  line 20-30 np=1 va=0 ms=3 code=12 consts=10 upvals=0 protos=0
  ;   K[0]='m_originScale'
  ;   K[1]='transform'
  ;   K[2]='localScale'
  ;   K[3]='m_bDisplay'
  ;   K[4]=true
  ;   K[5]='m_bScaled'
  ;   K[6]=false
  ;   K[7]='_TryAddListeners'
  ;   K[8]='OnGameModeChanged'
  ;   K[9]='UpdateButtonGraphics'
  ;   locals: self(0-12)
  0000  GETTABLE  R1 = R0[K1('transform')]
  0001  GETTABLE  R1 = R1[K2('localScale')]
  0002  SETTABLE  R0[K0('m_originScale')] = R1
  0003  SETTABLE  R0[K3('m_bDisplay')] = K4(true)
  0004  SETTABLE  R0[K5('m_bScaled')] = K6(false)
  0005  SELF      R2 = R0[K7('_TryAddListeners')] (self)
  0006  CALL      R1 = call(R1, 0 args, 1 rets)
  0007  SELF      R2 = R0[K8('OnGameModeChanged')] (self)
  0008  CALL      R1 = call(R1, 0 args, 1 rets)
  0009  SELF      R2 = R0[K9('UpdateButtonGraphics')] (self)
  0010  CALL      R1 = call(R1, 0 args, 1 rets)
  0011  RETURN    return R0..R-1
; ---------- proto1 [Init] ----------
  ; fn ?  line 33-41 np=2 va=0 ms=4 code=13 consts=7 upvals=0 protos=0
  ;   K[0]='m_model'
  ;   K[1]='m_id'
  ;   K[2]='GetModel'
  ;   K[3]='GetId'
  ;   K[4]='_TryAddListeners'
  ;   K[5]='_InitView'
  ;   K[6]='OnGameModeChanged'
  ;   locals: self(0-13), model(0-13)
  0000  SETTABLE  R0[K0('m_model')] = R1
  0001  SELF      R3 = R0[K2('GetModel')] (self)
  0002  CALL      R2 = call(R2, 1 args, 1 rets)
  0003  SELF      R3 = R2[K3('GetId')] (self)
  0004  CALL      R2 = call(R2, 1 args, 1 rets)
  0005  SETTABLE  R0[K1('m_id')] = R2
  0006  SELF      R3 = R0[K4('_TryAddListeners')] (self)
  0007  CALL      R2 = call(R2, 0 args, 1 rets)
  0008  SELF      R3 = R0[K5('_InitView')] (self)
  0009  CALL      R2 = call(R2, 0 args, 1 rets)
  0010  SELF      R3 = R0[K6('OnGameModeChanged')] (self)
  0011  CALL      R2 = call(R2, 0 args, 1 rets)
  0012  RETURN    return R0..R-1
; ---------- proto2 [OnDestroy] ----------
  ; fn ?  line 43-51 np=1 va=0 ms=3 code=26 consts=12 upvals=1 protos=0
  ;   K[0]='HudGeneralButton'
  ;   K[1]='OnDestroy'
  ;   K[2]='UIUtil'
  ;   K[3]='IsEmptyComponent'
  ;   K[4]='m_tip'
  ;   K[5]='transform'
  ;   K[6]='parent'
  ;   K[7]='Object'
  ;   K[8]='Destroy'
  ;   K[9]='gameObject'
  ;   K[10]='_TryKillSliderSequence'
  ;   K[11]='_TryKillScaleSequence'
  ;   upvals: _ENV
  ;   locals: self(0-26)
  0000  GETTABUP  R1 = _ENV[K0('HudGeneralButton')]
  0001  GETTABLE  R1 = R1[K1('OnDestroy')]
  0002  MOVE      R2 = R0
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  GETTABUP  R1 = _ENV[K2('UIUtil')]
  0005  GETTABLE  R1 = R1[K3('IsEmptyComponent')]
  0006  GETTABLE  R2 = R0[K4('m_tip')]
  0007  CALL      R1 = call(R1, 1 args, 1 rets)
  0008  TEST      if not R1 then   -> -131061
  0009  JMP       (jump)   -> 21
  0010  GETTABLE  R1 = R0[K4('m_tip')]
  0011  GETTABLE  R1 = R1[K5('transform')]
  0012  GETTABLE  R1 = R1[K6('parent')]
  0013  GETTABLE  R2 = R0[K5('transform')]
  0014  EQ        if R1 eq R2   -> -130542
  0015  JMP       (jump)   -> 21
  0016  GETTABUP  R1 = _ENV[K7('Object')]
  0017  GETTABLE  R1 = R1[K8('Destroy')]
  0018  GETTABLE  R2 = R0[K4('m_tip')]
  0019  GETTABLE  R2 = R2[K9('gameObject')]
  0020  CALL      R1 = call(R1, 0 args, 1 rets)
  0021  SELF      R2 = R0[K10('_TryKillSliderSequence')] (self)
  0022  CALL      R1 = call(R1, 0 args, 1 rets)
  0023  SELF      R2 = R0[K11('_TryKillScaleSequence')] (self)
  0024  CALL      R1 = call(R1, 0 args, 1 rets)
  0025  RETURN    return R0..R-1
; ---------- proto3 [_TryAddListeners] ----------
  ; fn ?  line 53-64 np=1 va=0 ms=6 code=56 consts=20 upvals=1 protos=0
  ;   K[0]='GetModel'
  ;   K[1]=nil
  ;   K[2]='gameObject'
  ;   K[3]='activeInHierarchy'
  ;   K[4]='EventDispatcher'
  ;   K[5]='AddListener'
  ;   K[6]='EEventType'
  ;   K[7]='ChangeGameMode'
  ;   K[8]='OnGameModeChanged'
  ;   K[9]='GetActivityDefinition'
  ;   K[10]='SelectPdChainEvent'
  ;   K[11]='_OnSelectPdChain'
  ;   K[12]='PdChainTriggerEndedEvent'
  ;   K[13]='_OnPdChainTriggerEndedEvent'
  ;   K[14]='RefreshEnergyConsumedEvent'
  ;   K[15]='_OnRefreshEnergyConsumed'
  ;   K[16]='EnergyRequirementSatisfiedEvent'
  ;   K[17]='_OnEnergyRequirementSatisfied'
  ;   K[18]='TopRightEntryShowTip'
  ;   K[19]='_OnTopRightEntryShowTip'
  ;   upvals: _ENV
  ;   locals: self(0-56), model(2-56)
  0000  SELF      R2 = R0[K0('GetModel')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  EQ        if R1 eq K1(nil)   -> -130299
  0003  JMP       (jump)   -> 8
  0004  GETTABLE  R2 = R0[K2('gameObject')]
  0005  GETTABLE  R2 = R2[K3('activeInHierarchy')]
  0006  TEST      if not R2 then   -> -131063
  0007  JMP       (jump)   -> 9
  0008  RETURN    return R0..R-1
  0009  GETTABUP  R2 = _ENV[K4('EventDispatcher')]
  0010  GETTABLE  R2 = R2[K5('AddListener')]
  0011  GETTABUP  R3 = _ENV[K6('EEventType')]
  0012  GETTABLE  R3 = R3[K7('ChangeGameMode')]
  0013  MOVE      R4 = R0
  0014  GETTABLE  R5 = R0[K8('OnGameModeChanged')]
  0015  CALL      R2 = call(R2, 0 args, 3 rets)
  0016  GETTABUP  R2 = _ENV[K4('EventDispatcher')]
  0017  GETTABLE  R2 = R2[K5('AddListener')]
  0018  SELF      R4 = R1[K9('GetActivityDefinition')] (self)
  0019  CALL      R3 = call(R3, 1 args, 1 rets)
  0020  GETTABLE  R3 = R3[K10('SelectPdChainEvent')]
  0021  MOVE      R4 = R0
  0022  GETTABLE  R5 = R0[K11('_OnSelectPdChain')]
  0023  CALL      R2 = call(R2, 0 args, 3 rets)
  0024  GETTABUP  R2 = _ENV[K4('EventDispatcher')]
  0025  GETTABLE  R2 = R2[K5('AddListener')]
  0026  SELF      R4 = R1[K9('GetActivityDefinition')] (self)
  0027  CALL      R3 = call(R3, 1 args, 1 rets)
  0028  GETTABLE  R3 = R3[K12('PdChainTriggerEndedEvent')]
  0029  MOVE      R4 = R0
  0030  GETTABLE  R5 = R0[K13('_OnPdChainTriggerEndedEvent')]
  0031  CALL      R2 = call(R2, 0 args, 3 rets)
  0032  GETTABUP  R2 = _ENV[K4('EventDispatcher')]
  0033  GETTABLE  R2 = R2[K5('AddListener')]
  0034  SELF      R4 = R1[K9('GetActivityDefinition')] (self)
  0035  CALL      R3 = call(R3, 1 args, 1 rets)
  0036  GETTABLE  R3 = R3[K14('RefreshEnergyConsumedEvent')]
  0037  MOVE      R4 = R0
  0038  GETTABLE  R5 = R0[K15('_OnRefreshEnergyConsumed')]
  0039  CALL      R2 = call(R2, 0 args, 3 rets)
  0040  GETTABUP  R2 = _ENV[K4('EventDispatcher')]
  0041  GETTABLE  R2 = R2[K5('AddListener')]
  0042  SELF      R4 = R1[K9('GetActivityDefinition')] (self)
  0043  CALL      R3 = call(R3, 1 args, 1 rets)
  0044  GETTABLE  R3 = R3[K16('EnergyRequirementSatisfiedEvent')]
  0045  MOVE      R4 = R0
  0046  GETTABLE  R5 = R0[K17('_OnEnergyRequirementSatisfied')]
  0047  CALL      R2 = call(R2, 0 args, 3 rets)
  0048  GETTABUP  R2 = _ENV[K4('EventDispatcher')]
  0049  GETTABLE  R2 = R2[K5('AddListener')]
  0050  GETTABUP  R3 = _ENV[K6('EEventType')]
  0051  GETTABLE  R3 = R3[K18('TopRightEntryShowTip')]
  0052  MOVE      R4 = R0
  0053  GETTABLE  R5 = R0[K19('_OnTopRightEntryShowTip')]
  0054  CALL      R2 = call(R2, 0 args, 3 rets)
  0055  RETURN    return R0..R-1
; ---------- proto4 [TryPopTip] ----------
  ; fn ?  line 66-76 np=1 va=0 ms=4 code=15 consts=5 upvals=0 protos=0
  ;   K[0]='m_bWaitShowFinishedTip'
  ;   K[1]=nil
  ;   K[2]='m_bLight'
  ;   K[3]='_ShowTipWithKey'
  ;   K[4]='luckyBlast_tip_full'
  ;   locals: self(0-15)
  0000  GETTABLE  R1 = R0[K0('m_bWaitShowFinishedTip')]
  0001  TEST      if not R1 then   -> -131069
  0002  JMP       (jump)   -> 12
  0003  SETTABLE  R0[K0('m_bWaitShowFinishedTip')] = K1(nil)
  0004  GETTABLE  R1 = R0[K2('m_bLight')]
  0005  TEST      if not R1 then   -> -131065
  0006  JMP       (jump)   -> 12
  0007  SELF      R2 = R0[K3('_ShowTipWithKey')] (self)
  0008  LOADK     R3 = K4 'luckyBlast_tip_full'
  0009  CALL      R1 = call(R1, 0 args, 2 rets)
  0010  LOADBOOL  R1 = true
  0011  RETURN    return R1..R0
  0012  LOADBOOL  R1 = false
  0013  RETURN    return R1..R0
  0014  RETURN    return R0..R-1
; ---------- proto5 [_OnTopRightEntryShowTip] ----------
  ; fn ?  line 78-83 np=2 va=0 ms=5 code=15 consts=5 upvals=0 protos=0
  ;   K[0]='m_bWaitShowFinishedTip'
  ;   K[1]=nil
  ;   K[2]='tip'
  ;   K[3]='m_tip'
  ;   K[4]='Hide'
  ;   locals: self(0-15), msg(0-15)
  0000  SETTABLE  R0[K0('m_bWaitShowFinishedTip')] = K1(nil)
  0001  TEST      if not R1 then   -> -131069
  0002  JMP       (jump)   -> 14
  0003  GETTABLE  R2 = R1[K2('tip')]
  0004  TEST      if not R2 then   -> -131066
  0005  JMP       (jump)   -> 14
  0006  GETTABLE  R2 = R1[K2('tip')]
  0007  GETTABLE  R3 = R0[K3('m_tip')]
  0008  EQ        if R1 eq R3   -> -130035
  0009  JMP       (jump)   -> 14
  0010  GETTABLE  R2 = R0[K3('m_tip')]
  0011  SELF      R3 = R2[K4('Hide')] (self)
  0012  LOADBOOL  R4 = true
  0013  CALL      R2 = call(R2, 0 args, 2 rets)
  0014  RETURN    return R0..R-1
; ---------- proto6 [UpdatePerSecond] ----------
  ; fn ?  line 85-96 np=1 va=0 ms=9 code=36 consts=18 upvals=1 protos=0
  ;   K[0]='GetModel'
  ;   K[1]=nil
  ;   K[2]='IsActivityOpen'
  ;   K[3]='m_countdownText'
  ;   K[4]='text'
  ;   K[5]='GM'
  ;   K[6]='GameTextModel'
  ;   K[7]='GetText'
  ;   K[8]='countdown_finished'
  ;   K[9]='TimeUtil'
  ;   K[10]='ParseTimeDescription'
  ;   K[11]='math'
  ;   K[12]='max'
  ;   K[13]=0
  ;   K[14]='m_finishTime'
  ;   K[15]='GameModel'
  ;   K[16]='GetServerTime'
  ;   K[17]=1
  ;   upvals: _ENV
  ;   locals: self(0-36), model(2-36)
  0000  SELF      R2 = R0[K0('GetModel')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  EQ        if R0 eq K1(nil)   -> -130299
  0003  JMP       (jump)   -> 5
  0004  RETURN    return R0..R-1
  0005  SELF      R3 = R1[K2('IsActivityOpen')] (self)
  0006  CALL      R2 = call(R2, 1 args, 1 rets)
  0007  TEST      if not R2 then   -> -131062
  0008  JMP       (jump)   -> 17
  0009  GETTABLE  R2 = R0[K3('m_countdownText')]
  0010  GETTABUP  R3 = _ENV[K5('GM')]
  0011  GETTABLE  R3 = R3[K6('GameTextModel')]
  0012  SELF      R4 = R3[K7('GetText')] (self)
  0013  LOADK     R5 = K8 'countdown_finished'
  0014  CALL      R3 = call(R3, 1 args, 2 rets)
  0015  SETTABLE  R2[K4('text')] = R3
  0016  JMP       (jump)   -> 35
  0017  GETTABLE  R2 = R0[K3('m_countdownText')]
  0018  GETTABUP  R3 = _ENV[K9('TimeUtil')]
  0019  GETTABLE  R3 = R3[K10('ParseTimeDescription')]
  0020  GETTABUP  R4 = _ENV[K11('math')]
  0021  GETTABLE  R4 = R4[K12('max')]
  0022  LOADK     R5 = K13 0
  0023  GETTABLE  R6 = R0[K14('m_finishTime')]
  0024  GETTABUP  R7 = _ENV[K5('GM')]
  0025  GETTABLE  R7 = R7[K15('GameModel')]
  0026  SELF      R8 = R7[K16('GetServerTime')] (self)
  0027  CALL      R7 = call(R7, 1 args, 1 rets)
  0028  SUB       R6 = R7 sub R6
  0029  CALL      R4 = call(R4, 1 args, 2 rets)
  0030  LOADK     R5 = K17 1
  0031  LOADBOOL  R6 = false
  0032  LOADBOOL  R7 = false
  0033  CALL      R3 = call(R3, 1 args, 4 rets)
  0034  SETTABLE  R2[K4('text')] = R3
  0035  RETURN    return R0..R-1
; ---------- proto7 [GetModel] ----------
  ; fn ?  line 98-100 np=1 va=0 ms=2 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='m_model'
  ;   locals: self(0-3)
  0000  GETTABLE  R1 = R0[K0('m_model')]
  0001  RETURN    return R1..R0
  0002  RETURN    return R0..R-1
; ---------- proto8 [_IsModelIdChanged] ----------
  ; fn ?  line 102-104 np=1 va=0 ms=4 code=11 consts=3 upvals=0 protos=0
  ;   K[0]='m_id'
  ;   K[1]='GetModel'
  ;   K[2]='GetId'
  ;   locals: self(0-11)
  0000  GETTABLE  R1 = R0[K0('m_id')]
  0001  SELF      R3 = R0[K1('GetModel')] (self)
  0002  CALL      R2 = call(R2, 1 args, 1 rets)
  0003  SELF      R3 = R2[K2('GetId')] (self)
  0004  CALL      R2 = call(R2, 1 args, 1 rets)
  0005  EQ        if R0 eq R2   -> -130551
  0006  JMP       (jump)   -> 8
  0007  LOADBOOL  R1 = false
  0008  LOADBOOL  R1 = true
  0009  RETURN    return R1..R0
  0010  RETURN    return R0..R-1
; ---------- proto9 [OnBtnClicked] ----------
  ; fn ?  line 106-108 np=1 va=0 ms=3 code=5 consts=2 upvals=0 protos=0
  ;   K[0]='GetModel'
  ;   K[1]='OnEntryClicked'
  ;   locals: self(0-5)
  0000  SELF      R2 = R0[K0('GetModel')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  SELF      R2 = R1[K1('OnEntryClicked')] (self)
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  RETURN    return R0..R-1
; ---------- proto10 [GetIconNode] ----------
  ; fn ?  line 110-112 np=1 va=0 ms=2 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='m_iconNode'
  ;   locals: self(0-3)
  0000  GETTABLE  R1 = R0[K0('m_iconNode')]
  0001  RETURN    return R1..R0
  0002  RETURN    return R0..R-1
; ---------- proto11 [_OnSelectPdChain] ----------
  ; fn ?  line 114-118 np=1 va=0 ms=3 code=7 consts=3 upvals=0 protos=0
  ;   K[0]='_UpdateLight'
  ;   K[1]='_UpdateEnergyConsumed'
  ;   K[2]='_UpdateMaxEffect'
  ;   locals: self(0-7)
  0000  SELF      R2 = R0[K0('_UpdateLight')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  SELF      R2 = R0[K1('_UpdateEnergyConsumed')] (self)
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  SELF      R2 = R0[K2('_UpdateMaxEffect')] (self)
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto12 [_OnPdChainTriggerEndedEvent] ----------
  ; fn ?  line 120-124 np=1 va=0 ms=3 code=7 consts=3 upvals=0 protos=0
  ;   K[0]='_UpdateLight'
  ;   K[1]='_UpdateEnergyConsumed'
  ;   K[2]='_UpdateMaxEffect'
  ;   locals: self(0-7)
  0000  SELF      R2 = R0[K0('_UpdateLight')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  SELF      R2 = R0[K1('_UpdateEnergyConsumed')] (self)
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  SELF      R2 = R0[K2('_UpdateMaxEffect')] (self)
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto13 [_OnRefreshEnergyConsumed] ----------
  ; fn ?  line 126-128 np=1 va=0 ms=3 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='_UpdateEnergyConsumed'
  ;   locals: self(0-3)
  0000  SELF      R2 = R0[K0('_UpdateEnergyConsumed')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  RETURN    return R0..R-1
; ---------- proto14 [_UpdateFinishTime] ----------
  ; fn ?  line 130-133 np=1 va=0 ms=3 code=8 consts=4 upvals=0 protos=0
  ;   K[0]='m_finishTime'
  ;   K[1]='GetModel'
  ;   K[2]='GetTriggerEndTime'
  ;   K[3]='UpdatePerSecond'
  ;   locals: self(0-8)
  0000  SELF      R2 = R0[K1('GetModel')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  SELF      R2 = R1[K2('GetTriggerEndTime')] (self)
  0003  CALL      R1 = call(R1, 1 args, 1 rets)
  0004  SETTABLE  R0[K0('m_finishTime')] = R1
  0005  SELF      R2 = R0[K3('UpdatePerSecond')] (self)
  0006  CALL      R1 = call(R1, 0 args, 1 rets)
  0007  RETURN    return R0..R-1
; ---------- proto15 [_InitView] ----------
  ; fn ?  line 135-150 np=1 va=0 ms=7 code=54 consts=23 upvals=1 protos=0
  ;   K[0]='GetModel'
  ;   K[1]=nil
  ;   K[2]='IsHideTopRightEntry'
  ;   K[3]='m_canvasGroup'
  ;   K[4]='alpha'
  ;   K[5]=0
  ;   K[6]='UIUtil'
  ;   K[7]='SetLocalScale'
  ;   K[8]='transform'
  ;   K[9]=0.8
  ;   K[10]='UpdateView'
  ;   K[11]='GM'
  ;   K[12]='ResourceLoader'
  ;   K[13]='LoadPrefab'
  ;   K[14]='DataResource'
  ;   K[15]='ScenePrefabConfig'
  ;   K[16]='GetConfig'
  ;   K[17]='GetItemSpreadTrailEffectConfig'
  ;   K[18]='effectPrefabName'
  ;   K[19]='m_preloadEffectRoot'
  ;   K[20]='V3Zero'
  ;   K[21]='GetActivityDefinition'
  ;   K[22]='ItemSpreadTriggerEffectPrefabName'
  ;   upvals: _ENV
  ;   locals: self(0-54)
  0000  SELF      R2 = R0[K0('GetModel')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  EQ        if R0 eq K1(nil)   -> -130299
  0003  JMP       (jump)   -> 5
  0004  RETURN    return R0..R-1
  0005  SELF      R2 = R0[K0('GetModel')] (self)
  0006  CALL      R1 = call(R1, 1 args, 1 rets)
  0007  SELF      R2 = R1[K2('IsHideTopRightEntry')] (self)
  0008  CALL      R1 = call(R1, 1 args, 1 rets)
  0009  TEST      if not R1 then   -> -131061
  0010  JMP       (jump)   -> 19
  0011  GETTABLE  R1 = R0[K3('m_canvasGroup')]
  0012  SETTABLE  R1[K4('alpha')] = K5(0)
  0013  GETTABUP  R1 = _ENV[K6('UIUtil')]
  0014  GETTABLE  R1 = R1[K7('SetLocalScale')]
  0015  GETTABLE  R2 = R0[K8('transform')]
  0016  LOADK     R3 = K9 0.8
  0017  LOADK     R4 = K9 0.8
  0018  CALL      R1 = call(R1, 0 args, 3 rets)
  0019  SELF      R2 = R0[K10('UpdateView')] (self)
  0020  CALL      R1 = call(R1, 0 args, 1 rets)
  0021  GETTABUP  R1 = _ENV[K11('GM')]
  0022  GETTABLE  R1 = R1[K12('ResourceLoader')]
  0023  SELF      R2 = R1[K13('LoadPrefab')] (self)
  0024  GETTABUP  R3 = _ENV[K11('GM')]
  0025  GETTABLE  R3 = R3[K14('DataResource')]
  0026  GETTABLE  R3 = R3[K15('ScenePrefabConfig')]
  0027  SELF      R4 = R3[K16('GetConfig')] (self)
  0028  SELF      R6 = R0[K0('GetModel')] (self)
  0029  CALL      R5 = call(R5, 1 args, 1 rets)
  0030  SELF      R6 = R5[K17('GetItemSpreadTrailEffectConfig')] (self)
  0031  CALL      R5 = call(R5, 1 args, 1 rets)
  0032  GETTABLE  R5 = R5[K18('effectPrefabName')]
  0033  CALL      R3 = call(R3, 1 args, 2 rets)
  0034  GETTABLE  R4 = R0[K19('m_preloadEffectRoot')]
  0035  GETTABUP  R5 = _ENV[K20('V3Zero')]
  0036  CALL      R1 = call(R1, 0 args, 4 rets)
  0037  GETTABUP  R1 = _ENV[K11('GM')]
  0038  GETTABLE  R1 = R1[K12('ResourceLoader')]
  0039  SELF      R2 = R1[K13('LoadPrefab')] (self)
  0040  GETTABUP  R3 = _ENV[K11('GM')]
  0041  GETTABLE  R3 = R3[K14('DataResource')]
  0042  GETTABLE  R3 = R3[K15('ScenePrefabConfig')]
  0043  SELF      R4 = R3[K16('GetConfig')] (self)
  0044  SELF      R6 = R0[K0('GetModel')] (self)
  0045  CALL      R5 = call(R5, 1 args, 1 rets)
  0046  SELF      R6 = R5[K21('GetActivityDefinition')] (self)
  0047  CALL      R5 = call(R5, 1 args, 1 rets)
  0048  GETTABLE  R5 = R5[K22('ItemSpreadTriggerEffectPrefabName')]
  0049  CALL      R3 = call(R3, 1 args, 2 rets)
  0050  GETTABLE  R4 = R0[K19('m_preloadEffectRoot')]
  0051  GETTABUP  R5 = _ENV[K20('V3Zero')]
  0052  CALL      R1 = call(R1, 0 args, 4 rets)
  0053  RETURN    return R0..R-1
; ---------- proto16 [OnGameModeChanged] ----------
  ; fn ?  line 152-169 np=1 va=0 ms=4 code=42 consts=21 upvals=1 protos=0
  ;   K[0]='_TryKillScaleSequence'
  ;   K[1]='HudGeneralButton'
  ;   K[2]='OnGameModeChanged'
  ;   K[3]='UIUtil'
  ;   K[4]='IsEmptyComponent'
  ;   K[5]='m_tip'
  ;   K[6]='Hide'
  ;   K[7]='GetModel'
  ;   K[8]=nil
  ;   K[9]='GetState'
  ;   K[10]='ActivityState'
  ;   K[11]='Released'
  ;   K[12]='UpdateView'
  ;   K[13]='GM'
  ;   K[14]='SceneManager'
  ;   K[15]='GetGameMode'
  ;   K[16]='EGameMode'
  ;   K[17]='Board'
  ;   K[18]='m_bLight'
  ;   K[19]='m_bWaitShowFinishedTip'
  ;   K[20]=true
  ;   upvals: _ENV
  ;   locals: self(0-42), model(18-42)
  0000  SELF      R2 = R0[K0('_TryKillScaleSequence')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  GETTABUP  R1 = _ENV[K1('HudGeneralButton')]
  0003  GETTABLE  R1 = R1[K2('OnGameModeChanged')]
  0004  MOVE      R2 = R0
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  GETTABUP  R1 = _ENV[K3('UIUtil')]
  0007  GETTABLE  R1 = R1[K4('IsEmptyComponent')]
  0008  GETTABLE  R2 = R0[K5('m_tip')]
  0009  CALL      R1 = call(R1, 1 args, 1 rets)
  0010  TEST      if not R1 then   -> -131059
  0011  JMP       (jump)   -> 16
  0012  GETTABLE  R1 = R0[K5('m_tip')]
  0013  SELF      R2 = R1[K6('Hide')] (self)
  0014  LOADBOOL  R3 = true
  0015  CALL      R1 = call(R1, 0 args, 2 rets)
  0016  SELF      R2 = R0[K7('GetModel')] (self)
  0017  CALL      R1 = call(R1, 1 args, 1 rets)
  0018  EQ        if R1 eq K8(nil)   -> -130276
  0019  JMP       (jump)   -> 26
  0020  SELF      R3 = R1[K9('GetState')] (self)
  0021  CALL      R2 = call(R2, 1 args, 1 rets)
  0022  GETTABUP  R3 = _ENV[K10('ActivityState')]
  0023  GETTABLE  R3 = R3[K11('Released')]
  0024  EQ        if R0 eq R3   -> -130019
  0025  JMP       (jump)   -> 27
  0026  RETURN    return R0..R-1
  0027  SELF      R3 = R0[K12('UpdateView')] (self)
  0028  CALL      R2 = call(R2, 0 args, 1 rets)
  0029  GETTABUP  R2 = _ENV[K13('GM')]
  0030  GETTABLE  R2 = R2[K14('SceneManager')]
  0031  SELF      R3 = R2[K15('GetGameMode')] (self)
  0032  CALL      R2 = call(R2, 1 args, 1 rets)
  0033  GETTABUP  R3 = _ENV[K16('EGameMode')]
  0034  GETTABLE  R3 = R3[K17('Board')]
  0035  EQ        if R0 eq R3   -> -130008
  0036  JMP       (jump)   -> 41
  0037  GETTABLE  R2 = R0[K18('m_bLight')]
  0038  TEST      if not R2 then   -> -131032
  0039  JMP       (jump)   -> 41
  0040  SETTABLE  R0[K19('m_bWaitShowFinishedTip')] = K20(true)
  0041  RETURN    return R0..R-1
; ---------- proto17 [_TryKillSliderSequence] ----------
  ; fn ?  line 171-176 np=1 va=0 ms=3 code=8 consts=3 upvals=0 protos=0
  ;   K[0]='m_sliderSequence'
  ;   K[1]=nil
  ;   K[2]='Kill'
  ;   locals: self(0-8)
  0000  GETTABLE  R1 = R0[K0('m_sliderSequence')]
  0001  EQ        if R1 eq K1(nil)   -> -130300
  0002  JMP       (jump)   -> 7
  0003  GETTABLE  R1 = R0[K0('m_sliderSequence')]
  0004  SELF      R2 = R1[K2('Kill')] (self)
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  SETTABLE  R0[K0('m_sliderSequence')] = K1(nil)
  0007  RETURN    return R0..R-1
; ---------- proto18 [_TryKillScaleSequence] ----------
  ; fn ?  line 178-183 np=1 va=0 ms=3 code=8 consts=3 upvals=0 protos=0
  ;   K[0]='m_scaleSequence'
  ;   K[1]=nil
  ;   K[2]='Kill'
  ;   locals: self(0-8)
  0000  GETTABLE  R1 = R0[K0('m_scaleSequence')]
  0001  EQ        if R1 eq K1(nil)   -> -130300
  0002  JMP       (jump)   -> 7
  0003  GETTABLE  R1 = R0[K0('m_scaleSequence')]
  0004  SELF      R2 = R1[K2('Kill')] (self)
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  SETTABLE  R0[K0('m_scaleSequence')] = K1(nil)
  0007  RETURN    return R0..R-1
; ---------- proto19 [UpdateView] ----------
  ; fn ?  line 185-195 np=1 va=0 ms=4 code=14 consts=6 upvals=0 protos=0
  ;   K[0]='GetModel'
  ;   K[1]=nil
  ;   K[2]='_UpdateFinishTime'
  ;   K[3]='_UpdateLight'
  ;   K[4]='_UpdateEnergyConsumed'
  ;   K[5]='_UpdateMaxEffect'
  ;   locals: self(0-14), model(2-14)
  0000  SELF      R2 = R0[K0('GetModel')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  EQ        if R0 eq K1(nil)   -> -130299
  0003  JMP       (jump)   -> 5
  0004  RETURN    return R0..R-1
  0005  SELF      R3 = R0[K2('_UpdateFinishTime')] (self)
  0006  CALL      R2 = call(R2, 0 args, 1 rets)
  0007  SELF      R3 = R0[K3('_UpdateLight')] (self)
  0008  CALL      R2 = call(R2, 0 args, 1 rets)
  0009  SELF      R3 = R0[K4('_UpdateEnergyConsumed')] (self)
  0010  CALL      R2 = call(R2, 0 args, 1 rets)
  0011  SELF      R3 = R0[K5('_UpdateMaxEffect')] (self)
  0012  CALL      R2 = call(R2, 0 args, 1 rets)
  0013  RETURN    return R0..R-1
; ---------- proto20 [_UpdateLight] ----------
  ; fn ?  line 197-200 np=1 va=0 ms=4 code=11 consts=6 upvals=1 protos=0
  ;   K[0]='m_bLight'
  ;   K[1]='GetModel'
  ;   K[2]='CanSpin'
  ;   K[3]='UIUtil'
  ;   K[4]='SetActive'
  ;   K[5]='m_lightGo'
  ;   upvals: _ENV
  ;   locals: self(0-11)
  0000  SELF      R2 = R0[K1('GetModel')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  SELF      R2 = R1[K2('CanSpin')] (self)
  0003  CALL      R1 = call(R1, 1 args, 1 rets)
  0004  SETTABLE  R0[K0('m_bLight')] = R1
  0005  GETTABUP  R1 = _ENV[K3('UIUtil')]
  0006  GETTABLE  R1 = R1[K4('SetActive')]
  0007  GETTABLE  R2 = R0[K5('m_lightGo')]
  0008  GETTABLE  R3 = R0[K0('m_bLight')]
  0009  CALL      R1 = call(R1, 0 args, 2 rets)
  0010  RETURN    return R0..R-1
; ---------- proto21 [_UpdateEnergyConsumed] ----------
  ; fn ?  line 202-217 np=1 va=0 ms=9 code=38 consts=15 upvals=1 protos=1
  ;   K[0]=1
  ;   K[1]='GetModel'
  ;   K[2]='HasNextStage'
  ;   K[3]='GetEnergyConsumed'
  ;   K[4]='GetNextStageEnergyRequired'
  ;   K[5]=0
  ;   K[6]='_TryKillSliderSequence'
  ;   K[7]='DOTween'
  ;   K[8]='Sequence'
  ;   K[9]='Append'
  ;   K[10]='m_progressSlider'
  ;   K[11]='DOValue'
  ;   K[12]=0.5
  ;   K[13]='AppendCallback'
  ;   K[14]='m_sliderSequence'
  ;   upvals: _ENV
  ;   locals: self(0-38), targetSliderValue(1-38), energyConsumed(11-21), nextStageEnergyRequired(15-21), sequence(26-38)
  0000  LOADK     R1 = K0 1
  0001  SELF      R3 = R0[K1('GetModel')] (self)
  0002  CALL      R2 = call(R2, 1 args, 1 rets)
  0003  SELF      R3 = R2[K2('HasNextStage')] (self)
  0004  CALL      R2 = call(R2, 1 args, 1 rets)
  0005  TEST      if not R2 then   -> -131065
  0006  JMP       (jump)   -> 21
  0007  SELF      R3 = R0[K1('GetModel')] (self)
  0008  CALL      R2 = call(R2, 1 args, 1 rets)
  0009  SELF      R3 = R2[K3('GetEnergyConsumed')] (self)
  0010  CALL      R2 = call(R2, 1 args, 1 rets)
  0011  SELF      R4 = R0[K1('GetModel')] (self)
  0012  CALL      R3 = call(R3, 1 args, 1 rets)
  0013  SELF      R4 = R3[K4('GetNextStageEnergyRequired')] (self)
  0014  CALL      R3 = call(R3, 1 args, 1 rets)
  0015  LT        if R0 lt R3   -> 2580
  0016  JMP       (jump)   -> 20
  0017  DIV       R4 = R3 div R2
  0018  TESTSET   if R1 then R1   -> -129003
  0019  JMP       (jump)   -> 21
  0020  LOADK     R1 = K5 0
  0021  SELF      R3 = R0[K6('_TryKillSliderSequence')] (self)
  0022  CALL      R2 = call(R2, 0 args, 1 rets)
  0023  GETTABUP  R2 = _ENV[K7('DOTween')]
  0024  GETTABLE  R2 = R2[K8('Sequence')]
  0025  CALL      R2 = call(R2, 1 args, 0 rets)
  0026  SELF      R4 = R2[K9('Append')] (self)
  0027  GETTABLE  R5 = R0[K10('m_progressSlider')]
  0028  SELF      R6 = R5[K11('DOValue')] (self)
  0029  MOVE      R7 = R0
  0030  LOADK     R8 = K12 0.5
  0031  CALL      R5 = call(R5, -1 args, 3 rets)
  0032  CALL      R3 = call(R3, 0 args, -1 rets)
  0033  SELF      R4 = R2[K13('AppendCallback')] (self)
  0034  CLOSURE   R5 = closure proto0
  0035  CALL      R3 = call(R3, 0 args, 2 rets)
  0036  SETTABLE  R0[K14('m_sliderSequence')] = R2
  0037  RETURN    return R0..R-1
  ; ---------- proto0 [m_sliderSequence] ----------
    ; fn ?  line 213-215 np=0 va=0 ms=2 code=2 consts=2 upvals=1 protos=0
    ;   K[0]='m_sliderSequence'
    ;   K[1]=nil
    ;   upvals: self
    0000  SETTABUP  self[K0('m_sliderSequence')] = K1(nil)
    0001  RETURN    return R0..R-1
; ---------- proto22 [_UpdateMaxEffect] ----------
  ; fn ?  line 219-221 np=1 va=0 ms=5 code=10 consts=5 upvals=1 protos=0
  ;   K[0]='UIUtil'
  ;   K[1]='SetActive'
  ;   K[2]='m_maxEffectGo'
  ;   K[3]='GetModel'
  ;   K[4]='HasNextStage'
  ;   upvals: _ENV
  ;   locals: self(0-10)
  0000  GETTABUP  R1 = _ENV[K0('UIUtil')]
  0001  GETTABLE  R1 = R1[K1('SetActive')]
  0002  GETTABLE  R2 = R0[K2('m_maxEffectGo')]
  0003  SELF      R4 = R0[K3('GetModel')] (self)
  0004  CALL      R3 = call(R3, 1 args, 1 rets)
  0005  SELF      R4 = R3[K4('HasNextStage')] (self)
  0006  CALL      R3 = call(R3, 1 args, 1 rets)
  0007  NOT       R3 = not R0
  0008  CALL      R1 = call(R1, 0 args, 2 rets)
  0009  RETURN    return R0..R-1
; ---------- proto23 [SetVisible] ----------
  ; fn ?  line 223-235 np=1 va=0 ms=11 code=37 consts=19 upvals=1 protos=1
  ;   K[0]='m_scaleEffect'
  ;   K[1]='Play'
  ;   K[2]=0.016666666666666666
  ;   K[3]='DOTween'
  ;   K[4]='Sequence'
  ;   K[5]='Append'
  ;   K[6]='transform'
  ;   K[7]='DOScale'
  ;   K[8]='Vector3'
  ;   K[9]=1.2
  ;   K[10]=1
  ;   K[11]=15
  ;   K[12]='Join'
  ;   K[13]='m_canvasGroup'
  ;   K[14]='DOFade'
  ;   K[15]='V3One'
  ;   K[16]=5
  ;   K[17]='AppendCallback'
  ;   K[18]='m_scaleSequence'
  ;   upvals: _ENV
  ;   locals: self(0-37), timePerFrame(4-37), sequence(7-37)
  0000  GETTABLE  R1 = R0[K0('m_scaleEffect')]
  0001  SELF      R2 = R1[K1('Play')] (self)
  0002  CALL      R1 = call(R1, 0 args, 1 rets)
  0003  LOADK     R1 = K2 0.016666666666666666
  0004  GETTABUP  R2 = _ENV[K3('DOTween')]
  0005  GETTABLE  R2 = R2[K4('Sequence')]
  0006  CALL      R2 = call(R2, 1 args, 0 rets)
  0007  SELF      R4 = R2[K5('Append')] (self)
  0008  GETTABLE  R5 = R0[K6('transform')]
  0009  SELF      R6 = R5[K7('DOScale')] (self)
  0010  GETTABUP  R7 = _ENV[K8('Vector3')]
  0011  LOADK     R8 = K9 1.2
  0012  LOADK     R9 = K9 1.2
  0013  LOADK     R10 = K10 1
  0014  CALL      R7 = call(R7, 1 args, 3 rets)
  0015  MUL       R8 = R1 mul K11(15)
  0016  CALL      R5 = call(R5, -1 args, 3 rets)
  0017  CALL      R3 = call(R3, 0 args, -1 rets)
  0018  SELF      R4 = R2[K12('Join')] (self)
  0019  GETTABLE  R5 = R0[K13('m_canvasGroup')]
  0020  SELF      R6 = R5[K14('DOFade')] (self)
  0021  LOADK     R7 = K10 1
  0022  MUL       R8 = R1 mul K11(15)
  0023  CALL      R5 = call(R5, -1 args, 3 rets)
  0024  CALL      R3 = call(R3, 0 args, -1 rets)
  0025  SELF      R4 = R2[K5('Append')] (self)
  0026  GETTABLE  R5 = R0[K6('transform')]
  0027  SELF      R6 = R5[K7('DOScale')] (self)
  0028  GETTABUP  R7 = _ENV[K15('V3One')]
  0029  MUL       R8 = R1 mul K16(5)
  0030  CALL      R5 = call(R5, -1 args, 3 rets)
  0031  CALL      R3 = call(R3, 0 args, -1 rets)
  0032  SELF      R4 = R2[K17('AppendCallback')] (self)
  0033  CLOSURE   R5 = closure proto0
  0034  CALL      R3 = call(R3, 0 args, 2 rets)
  0035  SETTABLE  R0[K18('m_scaleSequence')] = R2
  0036  RETURN    return R0..R-1
  ; ---------- proto0 [m_scaleSequence] ----------
    ; fn ?  line 231-233 np=0 va=0 ms=2 code=2 consts=2 upvals=1 protos=0
    ;   K[0]='m_scaleSequence'
    ;   K[1]=nil
    ;   upvals: self
    0000  SETTABUP  self[K0('m_scaleSequence')] = K1(nil)
    0001  RETURN    return R0..R-1
; ---------- proto24 [IconScaleAnimation] ----------
  ; fn ?  line 237-244 np=2 va=0 ms=5 code=18 consts=8 upvals=1 protos=0
  ;   K[0]='HudGeneralButton'
  ;   K[1]='IconScaleAnimation'
  ;   K[2]='_UpdateLight'
  ;   K[3]='m_bLight'
  ;   K[4]='GetModel'
  ;   K[5]='OnTokenHit'
  ;   K[6]='_ShowTipWithKey'
  ;   K[7]='luckyBlast_tip_full'
  ;   upvals: _ENV
  ;   locals: self(0-18), needEffect(0-18)
  0000  GETTABUP  R2 = _ENV[K0('HudGeneralButton')]
  0001  GETTABLE  R2 = R2[K1('IconScaleAnimation')]
  0002  MOVE      R3 = R0
  0003  MOVE      R4 = R0
  0004  CALL      R2 = call(R2, 0 args, 2 rets)
  0005  SELF      R3 = R0[K2('_UpdateLight')] (self)
  0006  CALL      R2 = call(R2, 0 args, 1 rets)
  0007  GETTABLE  R2 = R0[K3('m_bLight')]
  0008  TEST      if not R2 then   -> -131062
  0009  JMP       (jump)   -> 17
  0010  SELF      R3 = R0[K4('GetModel')] (self)
  0011  CALL      R2 = call(R2, 1 args, 1 rets)
  0012  SELF      R3 = R2[K5('OnTokenHit')] (self)
  0013  CALL      R2 = call(R2, 0 args, 1 rets)
  0014  SELF      R3 = R0[K6('_ShowTipWithKey')] (self)
  0015  LOADK     R4 = K7 'luckyBlast_tip_full'
  0016  CALL      R2 = call(R2, 0 args, 2 rets)
  0017  RETURN    return R0..R-1
; ---------- proto25 [UpdateButtonGraphics] ----------
  ; fn ?  line 246-255 np=1 va=0 ms=5 code=23 consts=9 upvals=1 protos=0
  ;   K[0]='UIUtil'
  ;   K[1]='IsEmptyComponent'
  ;   K[2]='m_tip'
  ;   K[3]='transform'
  ;   K[4]='localPosition'
  ;   K[5]='SetParent'
  ;   K[6]='parent'
  ;   K[7]='m_multiImageButton'
  ;   K[8]='UpdateGraphics'
  ;   upvals: _ENV
  ;   locals: self(0-23), localPosition(10-23)
  0000  GETTABUP  R1 = _ENV[K0('UIUtil')]
  0001  GETTABLE  R1 = R1[K1('IsEmptyComponent')]
  0002  GETTABLE  R2 = R0[K2('m_tip')]
  0003  CALL      R1 = call(R1, 1 args, 1 rets)
  0004  TEST      if not R1 then   -> -131066
  0005  JMP       (jump)   -> 7
  0006  RETURN    return R0..R-1
  0007  GETTABLE  R1 = R0[K2('m_tip')]
  0008  GETTABLE  R1 = R1[K3('transform')]
  0009  GETTABLE  R1 = R1[K4('localPosition')]
  0010  GETTABLE  R2 = R0[K2('m_tip')]
  0011  GETTABLE  R2 = R2[K3('transform')]
  0012  SELF      R3 = R2[K5('SetParent')] (self)
  0013  GETTABLE  R4 = R0[K3('transform')]
  0014  GETTABLE  R4 = R4[K6('parent')]
  0015  CALL      R2 = call(R2, 0 args, 2 rets)
  0016  GETTABLE  R2 = R0[K2('m_tip')]
  0017  GETTABLE  R2 = R2[K3('transform')]
  0018  SETTABLE  R2[K4('localPosition')] = R1
  0019  GETTABLE  R2 = R0[K7('m_multiImageButton')]
  0020  SELF      R3 = R2[K8('UpdateGraphics')] (self)
  0021  CALL      R2 = call(R2, 0 args, 1 rets)
  0022  RETURN    return R0..R-1
; ---------- proto26 [_ShowTipWithKey] ----------
  ; fn ?  line 259-270 np=3 va=0 ms=7 code=37 consts=19 upvals=1 protos=0
  ;   K[0]='GM'
  ;   K[1]='SceneManager'
  ;   K[2]='GetGameMode'
  ;   K[3]='EGameMode'
  ;   K[4]='Board'
  ;   K[5]='UIUtil'
  ;   K[6]='IsEmptyComponent'
  ;   K[7]='m_tip'
  ;   K[8]='m_tipText'
  ;   K[9]='text'
  ;   K[10]='GameTextModel'
  ;   K[11]='GetText'
  ;   K[12]='Show'
  ;   K[13]=2
  ;   K[14]='EventDispatcher'
  ;   K[15]='DispatchEvent'
  ;   K[16]='EEventType'
  ;   K[17]='TopRightEntryShowTip'
  ;   K[18]='tip'
  ;   upvals: _ENV
  ;   locals: self(0-37), key(0-37), delay(0-37)
  0000  GETTABUP  R3 = _ENV[K0('GM')]
  0001  GETTABLE  R3 = R3[K1('SceneManager')]
  0002  SELF      R4 = R3[K2('GetGameMode')] (self)
  0003  CALL      R3 = call(R3, 1 args, 1 rets)
  0004  GETTABUP  R4 = _ENV[K3('EGameMode')]
  0005  GETTABLE  R4 = R4[K4('Board')]
  0006  EQ        if R1 eq R4   -> -129524
  0007  JMP       (jump)   -> 9
  0008  RETURN    return R0..R-1
  0009  GETTABUP  R3 = _ENV[K5('UIUtil')]
  0010  GETTABLE  R3 = R3[K6('IsEmptyComponent')]
  0011  GETTABLE  R4 = R0[K7('m_tip')]
  0012  CALL      R3 = call(R3, 1 args, 1 rets)
  0013  TEST      if not R3 then   -> -131057
  0014  JMP       (jump)   -> 16
  0015  RETURN    return R0..R-1
  0016  GETTABLE  R3 = R0[K8('m_tipText')]
  0017  GETTABUP  R4 = _ENV[K0('GM')]
  0018  GETTABLE  R4 = R4[K10('GameTextModel')]
  0019  SELF      R5 = R4[K11('GetText')] (self)
  0020  MOVE      R6 = R0
  0021  CALL      R4 = call(R4, 1 args, 2 rets)
  0022  SETTABLE  R3[K9('text')] = R4
  0023  GETTABLE  R3 = R0[K7('m_tip')]
  0024  SELF      R4 = R3[K12('Show')] (self)
  0025  LOADK     R5 = K13 2
  0026  MOVE      R6 = R0
  0027  CALL      R3 = call(R3, 0 args, 3 rets)
  0028  GETTABUP  R3 = _ENV[K14('EventDispatcher')]
  0029  GETTABLE  R3 = R3[K15('DispatchEvent')]
  0030  GETTABUP  R4 = _ENV[K16('EEventType')]
  0031  GETTABLE  R4 = R4[K17('TopRightEntryShowTip')]
  0032  NEWTABLE  R5 = {} (0 items)
  0033  GETTABLE  R6 = R0[K7('m_tip')]
  0034  SETTABLE  R5[K18('tip')] = R6
  0035  CALL      R3 = call(R3, 0 args, 2 rets)
  0036  RETURN    return R0..R-1
; ---------- proto27 [DORootScale] ----------
  ; fn ?  line 273-282 np=2 va=0 ms=11 code=49 consts=17 upvals=1 protos=0
  ;   K[0]='Vector3'
  ;   K[1]='m_originScale'
  ;   K[2]='x'
  ;   K[3]=1.1
  ;   K[4]='y'
  ;   K[5]=0.95
  ;   K[6]='z'
  ;   K[7]=0.9
  ;   K[8]=1.15
  ;   K[9]='DOTween'
  ;   K[10]='Sequence'
  ;   K[11]='Append'
  ;   K[12]='transform'
  ;   K[13]='DOScale'
  ;   K[14]=0.04
  ;   K[15]='AppendCallback'
  ;   K[16]=0.07
  ;   upvals: _ENV
  ;   locals: self(0-49), callback(0-49), targetScale1(10-49), targetScale2(20-49), sequence(23-49)
  0000  GETTABUP  R2 = _ENV[K0('Vector3')]
  0001  GETTABLE  R3 = R0[K1('m_originScale')]
  0002  GETTABLE  R3 = R3[K2('x')]
  0003  MUL       R3 = K3(1.1) mul R3
  0004  GETTABLE  R4 = R0[K1('m_originScale')]
  0005  GETTABLE  R4 = R4[K4('y')]
  0006  MUL       R4 = K5(0.95) mul R4
  0007  GETTABLE  R5 = R0[K1('m_originScale')]
  0008  GETTABLE  R5 = R5[K6('z')]
  0009  CALL      R2 = call(R2, 1 args, 3 rets)
  0010  GETTABUP  R3 = _ENV[K0('Vector3')]
  0011  GETTABLE  R4 = R0[K1('m_originScale')]
  0012  GETTABLE  R4 = R4[K2('x')]
  0013  MUL       R4 = K7(0.9) mul R4
  0014  GETTABLE  R5 = R0[K1('m_originScale')]
  0015  GETTABLE  R5 = R5[K4('y')]
  0016  MUL       R5 = K8(1.15) mul R5
  0017  GETTABLE  R6 = R0[K1('m_originScale')]
  0018  GETTABLE  R6 = R6[K6('z')]
  0019  CALL      R3 = call(R3, 1 args, 3 rets)
  0020  GETTABUP  R4 = _ENV[K9('DOTween')]
  0021  GETTABLE  R4 = R4[K10('Sequence')]
  0022  CALL      R4 = call(R4, 1 args, 0 rets)
  0023  SELF      R6 = R4[K11('Append')] (self)
  0024  GETTABLE  R7 = R0[K12('transform')]
  0025  SELF      R8 = R7[K13('DOScale')] (self)
  0026  MOVE      R9 = R0
  0027  LOADK     R10 = K14 0.04
  0028  CALL      R7 = call(R7, -1 args, 3 rets)
  0029  CALL      R5 = call(R5, 0 args, -1 rets)
  0030  SELF      R6 = R4[K11('Append')] (self)
  0031  GETTABLE  R7 = R0[K12('transform')]
  0032  SELF      R8 = R7[K13('DOScale')] (self)
  0033  MOVE      R9 = R0
  0034  LOADK     R10 = K14 0.04
  0035  CALL      R7 = call(R7, -1 args, 3 rets)
  0036  CALL      R5 = call(R5, 0 args, -1 rets)
  0037  SELF      R6 = R4[K15('AppendCallback')] (self)
  0038  MOVE      R7 = R0
  0039  CALL      R5 = call(R5, 0 args, 2 rets)
  0040  SELF      R6 = R4[K11('Append')] (self)
  0041  GETTABLE  R7 = R0[K12('transform')]
  0042  SELF      R8 = R7[K13('DOScale')] (self)
  0043  GETTABLE  R9 = R0[K1('m_originScale')]
  0044  LOADK     R10 = K16 0.07
  0045  CALL      R7 = call(R7, -1 args, 3 rets)
  0046  CALL      R5 = call(R5, 0 args, -1 rets)
  0047  RETURN    return R4..R3
  0048  RETURN    return R0..R-1
; ---------- proto28 [_OnEnergyRequirementSatisfied] ----------
  ; fn ?  line 284-303 np=2 va=0 ms=14 code=44 consts=25 upvals=1 protos=1
  ;   K[0]='itemModel'
  ;   K[1]='MainBoardView'
  ;   K[2]='GetInstance'
  ;   K[3]=nil
  ;   K[4]='PositionUtil'
  ;   K[5]='UICameraScreen2World'
  ;   K[6]='ConvertBoardPositionToScreenPosition'
  ;   K[7]='GetPosition'
  ;   K[8]='GM'
  ;   K[9]='UIManager'
  ;   K[10]='GetOpenedViewByName'
  ;   K[11]='UIPrefabConfigName'
  ;   K[12]='BaseSceneView'
  ;   K[13]='transform'
  ;   K[14]='z'
  ;   K[15]='position'
  ;   K[16]='DataResource'
  ;   K[17]='UIPrefabConfig'
  ;   K[18]='GetConfig'
  ;   K[19]='GetModel'
  ;   K[20]='GetActivityDefinition'
  ;   K[21]='TokenCollectPrefabName'
  ;   K[22]='ResourceLoader'
  ;   K[23]='LoadPrefab'
  ;   K[24]='V3Zero'
  ;   upvals: _ENV
  ;   locals: self(0-44), msg(0-44), itemModel(1-44), boardView(4-44), uiWorldPosition(13-43), loadRoot(20-43), resConfig(33-43), callback(34-43)
  0000  GETTABLE  R2 = R1[K0('itemModel')]
  0001  GETTABUP  R3 = _ENV[K1('MainBoardView')]
  0002  GETTABLE  R3 = R3[K2('GetInstance')]
  0003  CALL      R3 = call(R3, 1 args, 0 rets)
  0004  EQ        if R1 eq K3(nil)   -> -129271
  0005  JMP       (jump)   -> 43
  0006  GETTABUP  R4 = _ENV[K4('PositionUtil')]
  0007  GETTABLE  R4 = R4[K5('UICameraScreen2World')]
  0008  SELF      R6 = R3[K6('ConvertBoardPositionToScreenPosition')] (self)
  0009  SELF      R8 = R2[K7('GetPosition')] (self)
  0010  CALL      R7 = call(R7, -1 args, 1 rets)
  0011  CALL      R5 = call(R5, -1 args, -1 rets)
  0012  CALL      R4 = call(R4, 1 args, -1 rets)
  0013  GETTABUP  R5 = _ENV[K8('GM')]
  0014  GETTABLE  R5 = R5[K9('UIManager')]
  0015  SELF      R6 = R5[K10('GetOpenedViewByName')] (self)
  0016  GETTABUP  R7 = _ENV[K11('UIPrefabConfigName')]
  0017  GETTABLE  R7 = R7[K12('BaseSceneView')]
  0018  CALL      R5 = call(R5, 1 args, 2 rets)
  0019  GETTABLE  R5 = R5[K13('transform')]
  0020  GETTABLE  R6 = R5[K15('position')]
  0021  GETTABLE  R6 = R6[K14('z')]
  0022  SETTABLE  R4[K14('z')] = R6
  0023  GETTABUP  R6 = _ENV[K8('GM')]
  0024  GETTABLE  R6 = R6[K16('DataResource')]
  0025  GETTABLE  R6 = R6[K17('UIPrefabConfig')]
  0026  SELF      R7 = R6[K18('GetConfig')] (self)
  0027  SELF      R9 = R0[K19('GetModel')] (self)
  0028  CALL      R8 = call(R8, 1 args, 1 rets)
  0029  SELF      R9 = R8[K20('GetActivityDefinition')] (self)
  0030  CALL      R8 = call(R8, 1 args, 1 rets)
  0031  GETTABLE  R8 = R8[K21('TokenCollectPrefabName')]
  0032  CALL      R6 = call(R6, 1 args, 2 rets)
  0033  CLOSURE   R7 = closure proto0
  0034  GETTABUP  R8 = _ENV[K8('GM')]
  0035  GETTABLE  R8 = R8[K22('ResourceLoader')]
  0036  SELF      R9 = R8[K23('LoadPrefab')] (self)
  0037  MOVE      R10 = R0
  0038  MOVE      R11 = R0
  0039  GETTABUP  R12 = _ENV[K24('V3Zero')]
  0040  MOVE      R13 = R0
  0041  CALL      R8 = call(R8, 0 args, 5 rets)
  0042  JMP       (jump)   -> 43
  0043  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 295-300 np=1 va=0 ms=5 code=9 consts=4 upvals=2 protos=0
    ;   K[0]='transform'
    ;   K[1]='position'
    ;   K[2]='GetLuaTable'
    ;   K[3]='Init'
    ;   upvals: uiWorldPosition, self
    ;   locals: gameObject(0-9), token(5-9)
    0000  GETTABLE  R1 = R0[K0('transform')]
    0001  GETUPVAL  R2 = uiWorldPosition
    0002  SETTABLE  R1[K1('position')] = R2
    0003  SELF      R2 = R0[K2('GetLuaTable')] (self)
    0004  CALL      R1 = call(R1, 1 args, 1 rets)
    0005  SELF      R3 = R1[K3('Init')] (self)
    0006  GETUPVAL  R4 = uiWorldPosition
    0007  CALL      R2 = call(R2, 0 args, 2 rets)
    0008  RETURN    return R0..R-1
