# UpgradeRace_View_UpgradeRaceActivityMainWindow_1571.luac
; fn @UpgradeRaceActivityMainWindow.lua  line 0-0 np=0 va=1 ms=3 code=95 consts=36 upvals=1 protos=28
;   K[0]='UpgradeRaceActivityMainWindow'
;   K[1]='setmetatable'
;   K[2]='m_bCloseWhenFail'
;   K[3]=true
;   K[4]='windowMaskAlpha'
;   K[5]=0
;   K[6]='UpgradeRaceActivityBaseWindow'
;   K[7]='__index'
;   K[8]='Init'
;   K[9]='OnCloseView'
;   K[10]='_OnStateChanged'
;   K[11]='_OnFail'
;   K[12]='OnDestroy'
;   K[13]='_InitModelData'
;   K[14]='_InitView'
;   K[15]='_InitSprite'
;   K[16]='_InitGameObject'
;   K[17]='_GetRoundStandPrefab'
;   K[18]='_InitRoundStand'
;   K[19]='_GetRopePrefab'
;   K[20]='_InitTrack'
;   K[21]='TrySpeedUpAnimation'
;   K[22]='_PlayAnimation'
;   K[23]='_OnAnimationEnd'
;   K[24]='OnBtnClicked'
;   K[25]='OnInfoBtnClick'
;   K[26]='ShowSelfTip'
;   K[27]='ShowRewardTip'
;   K[28]='GetMyselfTrackTransform'
;   K[29]='GetMiddleTransform'
;   K[30]='GetRoundStandTransform'
;   K[31]='_TestOpenEntryWindow'
;   K[32]='TestFinishRoundSmall'
;   K[33]='TestFinishRoundLarge'
;   K[34]='TestGotoLastRound'
;   K[35]='TestFinishWithRobot'
;   upvals: _ENV
0000  GETTABUP  R0 = _ENV[K1('setmetatable')]
0001  NEWTABLE  R1 = {} (0 items)
0002  SETTABLE  R1[K2('m_bCloseWhenFail')] = K3(true)
0003  SETTABLE  R1[K4('windowMaskAlpha')] = K5(0)
0004  GETTABUP  R2 = _ENV[K6('UpgradeRaceActivityBaseWindow')]
0005  CALL      R0 = call(R0, 1 args, 2 rets)
0006  SETTABUP  _ENV[K0('UpgradeRaceActivityMainWindow')] = R0
0007  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0008  GETTABUP  R1 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0009  SETTABLE  R0[K7('__index')] = R1
0010  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0011  CLOSURE   R1 = closure proto0
0012  SETTABLE  R0[K8('Init')] = R1
0013  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0014  CLOSURE   R1 = closure proto1
0015  SETTABLE  R0[K9('OnCloseView')] = R1
0016  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0017  CLOSURE   R1 = closure proto2
0018  SETTABLE  R0[K10('_OnStateChanged')] = R1
0019  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0020  CLOSURE   R1 = closure proto3
0021  SETTABLE  R0[K11('_OnFail')] = R1
0022  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0023  CLOSURE   R1 = closure proto4
0024  SETTABLE  R0[K12('OnDestroy')] = R1
0025  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0026  CLOSURE   R1 = closure proto5
0027  SETTABLE  R0[K13('_InitModelData')] = R1
0028  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0029  CLOSURE   R1 = closure proto6
0030  SETTABLE  R0[K14('_InitView')] = R1
0031  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0032  CLOSURE   R1 = closure proto7
0033  SETTABLE  R0[K15('_InitSprite')] = R1
0034  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0035  CLOSURE   R1 = closure proto8
0036  SETTABLE  R0[K16('_InitGameObject')] = R1
0037  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0038  CLOSURE   R1 = closure proto9
0039  SETTABLE  R0[K17('_GetRoundStandPrefab')] = R1
0040  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0041  CLOSURE   R1 = closure proto10
0042  SETTABLE  R0[K18('_InitRoundStand')] = R1
0043  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0044  CLOSURE   R1 = closure proto11
0045  SETTABLE  R0[K19('_GetRopePrefab')] = R1
0046  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0047  CLOSURE   R1 = closure proto12
0048  SETTABLE  R0[K20('_InitTrack')] = R1
0049  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0050  CLOSURE   R1 = closure proto13
0051  SETTABLE  R0[K21('TrySpeedUpAnimation')] = R1
0052  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0053  CLOSURE   R1 = closure proto14
0054  SETTABLE  R0[K22('_PlayAnimation')] = R1
0055  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0056  CLOSURE   R1 = closure proto15
0057  SETTABLE  R0[K23('_OnAnimationEnd')] = R1
0058  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0059  CLOSURE   R1 = closure proto16
0060  SETTABLE  R0[K24('OnBtnClicked')] = R1
0061  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0062  CLOSURE   R1 = closure proto17
0063  SETTABLE  R0[K25('OnInfoBtnClick')] = R1
0064  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0065  CLOSURE   R1 = closure proto18
0066  SETTABLE  R0[K26('ShowSelfTip')] = R1
0067  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0068  CLOSURE   R1 = closure proto19
0069  SETTABLE  R0[K27('ShowRewardTip')] = R1
0070  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0071  CLOSURE   R1 = closure proto20
0072  SETTABLE  R0[K28('GetMyselfTrackTransform')] = R1
0073  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0074  CLOSURE   R1 = closure proto21
0075  SETTABLE  R0[K29('GetMiddleTransform')] = R1
0076  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0077  CLOSURE   R1 = closure proto22
0078  SETTABLE  R0[K30('GetRoundStandTransform')] = R1
0079  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0080  CLOSURE   R1 = closure proto23
0081  SETTABLE  R0[K31('_TestOpenEntryWindow')] = R1
0082  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0083  CLOSURE   R1 = closure proto24
0084  SETTABLE  R0[K32('TestFinishRoundSmall')] = R1
0085  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0086  CLOSURE   R1 = closure proto25
0087  SETTABLE  R0[K33('TestFinishRoundLarge')] = R1
0088  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0089  CLOSURE   R1 = closure proto26
0090  SETTABLE  R0[K34('TestGotoLastRound')] = R1
0091  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityMainWindow')]
0092  CLOSURE   R1 = closure proto27
0093  SETTABLE  R0[K35('TestFinishWithRobot')] = R1
0094  RETURN    return R0..R-1
; ---------- proto0 [Init] ----------
  ; fn ?  line 72-102 np=4 va=0 ms=9 code=36 consts=16 upvals=1 protos=1
  ;   K[0]='UpgradeRaceActivityBaseWindow'
  ;   K[1]='Init'
  ;   K[2]='m_eventLockCallback'
  ;   K[3]='GetModel'
  ;   K[4]='UpdatePlayerRank'
  ;   K[5]='_InitModelData'
  ;   K[6]='_InitView'
  ;   K[7]='m_bClaimed'
  ;   K[8]='m_rewards'
  ;   K[9]='TryClaimReward'
  ;   K[10]='OnMainWindowOpened'
  ;   K[11]='UpdateLastScore'
  ;   K[12]='SetAnimationRound'
  ;   K[13]='m_round'
  ;   K[14]='NeedPopFailWindow'
  ;   K[15]='RemoveNeedPopFailWindow'
  ;   upvals: _ENV
  ;   locals: self(0-36), activityType(0-36), id(0-36), bAutoPop(0-36), model(11-36)
  0000  GETTABUP  R4 = _ENV[K0('UpgradeRaceActivityBaseWindow')]
  0001  GETTABLE  R4 = R4[K1('Init')]
  0002  MOVE      R5 = R0
  0003  MOVE      R6 = R0
  0004  MOVE      R7 = R0
  0005  MOVE      R8 = R0
  0006  CALL      R4 = call(R4, 0 args, 4 rets)
  0007  CLOSURE   R4 = closure proto0
  0008  SETTABLE  R0[K2('m_eventLockCallback')] = R4
  0009  SELF      R5 = R0[K3('GetModel')] (self)
  0010  CALL      R4 = call(R4, 1 args, 1 rets)
  0011  SELF      R6 = R4[K4('UpdatePlayerRank')] (self)
  0012  CALL      R5 = call(R5, 0 args, 1 rets)
  0013  SELF      R6 = R0[K5('_InitModelData')] (self)
  0014  CALL      R5 = call(R5, 0 args, 1 rets)
  0015  SELF      R6 = R0[K6('_InitView')] (self)
  0016  CALL      R5 = call(R5, 0 args, 1 rets)
  0017  SELF      R6 = R4[K9('TryClaimReward')] (self)
  0018  CALL      R5 = call(R5, 2 args, 1 rets)
  0019  SETTABLE  R0[K8('m_rewards')] = R6
  0020  SETTABLE  R0[K7('m_bClaimed')] = R5
  0021  SELF      R6 = R4[K10('OnMainWindowOpened')] (self)
  0022  MOVE      R7 = R0
  0023  CALL      R5 = call(R5, 0 args, 2 rets)
  0024  SELF      R6 = R4[K11('UpdateLastScore')] (self)
  0025  CALL      R5 = call(R5, 0 args, 1 rets)
  0026  SELF      R6 = R4[K12('SetAnimationRound')] (self)
  0027  GETTABLE  R7 = R0[K13('m_round')]
  0028  CALL      R5 = call(R5, 0 args, 2 rets)
  0029  SELF      R6 = R4[K14('NeedPopFailWindow')] (self)
  0030  CALL      R5 = call(R5, 1 args, 1 rets)
  0031  TEST      if not R5 then   -> -131039
  0032  JMP       (jump)   -> 35
  0033  SELF      R6 = R4[K15('RemoveNeedPopFailWindow')] (self)
  0034  CALL      R5 = call(R5, 0 args, 1 rets)
  0035  RETURN    return R0..R-1
  ; ---------- proto0 [m_eventLockCallback] ----------
    ; fn ?  line 75-77 np=0 va=0 ms=2 code=4 consts=1 upvals=1 protos=0
    ;   K[0]='TrySpeedUpAnimation'
    ;   upvals: self
    0000  GETUPVAL  R0 = self
    0001  SELF      R1 = R0[K0('TrySpeedUpAnimation')] (self)
    0002  CALL      R0 = call(R0, 0 args, 1 rets)
    0003  RETURN    return R0..R-1
; ---------- proto1 [OnCloseView] ----------
  ; fn ?  line 104-108 np=1 va=0 ms=4 code=9 consts=4 upvals=1 protos=0
  ;   K[0]='GetModel'
  ;   K[1]='OnMainWindowClosed'
  ;   K[2]='UpgradeRaceActivityBaseWindow'
  ;   K[3]='OnCloseView'
  ;   upvals: _ENV
  ;   locals: self(0-9), model(2-9)
  0000  SELF      R2 = R0[K0('GetModel')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  SELF      R3 = R1[K1('OnMainWindowClosed')] (self)
  0003  CALL      R2 = call(R2, 0 args, 1 rets)
  0004  GETTABUP  R2 = _ENV[K2('UpgradeRaceActivityBaseWindow')]
  0005  GETTABLE  R2 = R2[K3('OnCloseView')]
  0006  MOVE      R3 = R0
  0007  CALL      R2 = call(R2, 0 args, 1 rets)
  0008  RETURN    return R0..R-1
; ---------- proto2 [_OnStateChanged] ----------
  ; fn ?  line 113-120 np=1 va=0 ms=3 code=9 consts=3 upvals=1 protos=0
  ;   K[0]='m_bPlayingAnimation'
  ;   K[1]='UpgradeRaceActivityBaseWindow'
  ;   K[2]='_OnStateChanged'
  ;   upvals: _ENV
  ;   locals: self(0-9)
  0000  GETTABLE  R1 = R0[K0('m_bPlayingAnimation')]
  0001  TEST      if not R1 then   -> -131069
  0002  JMP       (jump)   -> 4
  0003  RETURN    return R0..R-1
  0004  GETTABUP  R1 = _ENV[K1('UpgradeRaceActivityBaseWindow')]
  0005  GETTABLE  R1 = R1[K2('_OnStateChanged')]
  0006  MOVE      R2 = R0
  0007  CALL      R1 = call(R1, 0 args, 1 rets)
  0008  RETURN    return R0..R-1
; ---------- proto3 [_OnFail] ----------
  ; fn ?  line 123-130 np=1 va=0 ms=3 code=9 consts=3 upvals=1 protos=0
  ;   K[0]='m_bPlayingAnimation'
  ;   K[1]='UpgradeRaceActivityBaseWindow'
  ;   K[2]='_OnFail'
  ;   upvals: _ENV
  ;   locals: self(0-9)
  0000  GETTABLE  R1 = R0[K0('m_bPlayingAnimation')]
  0001  TEST      if not R1 then   -> -131069
  0002  JMP       (jump)   -> 4
  0003  RETURN    return R0..R-1
  0004  GETTABUP  R1 = _ENV[K1('UpgradeRaceActivityBaseWindow')]
  0005  GETTABLE  R1 = R1[K2('_OnFail')]
  0006  MOVE      R2 = R0
  0007  CALL      R1 = call(R1, 0 args, 1 rets)
  0008  RETURN    return R0..R-1
; ---------- proto4 [OnDestroy] ----------
  ; fn ?  line 132-140 np=1 va=0 ms=4 code=17 consts=8 upvals=1 protos=0
  ;   K[0]='UpgradeRaceActivityBaseWindow'
  ;   K[1]='OnDestroy'
  ;   K[2]='GM'
  ;   K[3]='UIManager'
  ;   K[4]='RemoveAllEventLocks'
  ;   K[5]='m_sequence'
  ;   K[6]=nil
  ;   K[7]='Kill'
  ;   upvals: _ENV
  ;   locals: self(0-17)
  0000  GETTABUP  R1 = _ENV[K0('UpgradeRaceActivityBaseWindow')]
  0001  GETTABLE  R1 = R1[K1('OnDestroy')]
  0002  MOVE      R2 = R0
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  GETTABUP  R1 = _ENV[K2('GM')]
  0005  GETTABLE  R1 = R1[K3('UIManager')]
  0006  SELF      R2 = R1[K4('RemoveAllEventLocks')] (self)
  0007  MOVE      R3 = R0
  0008  CALL      R1 = call(R1, 0 args, 2 rets)
  0009  GETTABLE  R1 = R0[K5('m_sequence')]
  0010  EQ        if R1 eq K6(nil)   -> -130286
  0011  JMP       (jump)   -> 16
  0012  GETTABLE  R1 = R0[K5('m_sequence')]
  0013  SELF      R2 = R1[K7('Kill')] (self)
  0014  CALL      R1 = call(R1, 0 args, 1 rets)
  0015  SETTABLE  R0[K5('m_sequence')] = K6(nil)
  0016  RETURN    return R0..R-1
; ---------- proto5 [_InitModelData] ----------
  ; fn ?  line 147-166 np=1 va=0 ms=11 code=61 consts=32 upvals=1 protos=0
  ;   K[0]='GetModel'
  ;   K[1]='m_round'
  ;   K[2]='GetCurrentRoundForDisplay'
  ;   K[3]='m_smallRoundCount'
  ;   K[4]='GetSmallRoundCount'
  ;   K[5]='m_playerNumber'
  ;   K[6]='m_successPlayerNumber'
  ;   K[7]='GetPlayerNumberByRound'
  ;   K[8]='m_bFailed'
  ;   K[9]='IsFailed'
  ;   K[10]='m_targetScore'
  ;   K[11]='GetTargetScoreByRound'
  ;   K[12]='m_roundDefinitionIndex'
  ;   K[13]='GetRoundDefinitionIndexByRound'
  ;   K[14]='m_gapTime'
  ;   K[15]='GetGapTime'
  ;   K[16]='m_mapTrackPlayerData'
  ;   K[17]='ipairs'
  ;   K[18]='GetAllPlayerData'
  ;   K[19]='GetTrack'
  ;   K[20]='Table'
  ;   K[21]='DeepCopy'
  ;   K[22]='m_roundRewards'
  ;   K[23]='GetRewardByRound'
  ;   K[24]='m_animationRound'
  ;   K[25]='GetAnimationRound'
  ;   K[26]='m_bCanClaimReward'
  ;   K[27]='CanClaimReward'
  ;   K[28]='m_selfTrackNumber'
  ;   K[29]='GetSelfTrack'
  ;   K[30]='m_myRank'
  ;   K[31]='GetMyRank'
  ;   upvals: _ENV
  ;   locals: self(0-61), model(2-61), (for generator)(33-44), (for state)(33-44), (for control)(33-44), _(34-42), playerData(34-42)
  0000  SELF      R2 = R0[K0('GetModel')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  SELF      R3 = R1[K2('GetCurrentRoundForDisplay')] (self)
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  SETTABLE  R0[K1('m_round')] = R2
  0005  SELF      R3 = R1[K4('GetSmallRoundCount')] (self)
  0006  CALL      R2 = call(R2, 1 args, 1 rets)
  0007  SETTABLE  R0[K3('m_smallRoundCount')] = R2
  0008  SELF      R3 = R1[K7('GetPlayerNumberByRound')] (self)
  0009  GETTABLE  R4 = R0[K1('m_round')]
  0010  CALL      R2 = call(R2, 2 args, 2 rets)
  0011  SETTABLE  R0[K6('m_successPlayerNumber')] = R3
  0012  SETTABLE  R0[K5('m_playerNumber')] = R2
  0013  SELF      R3 = R1[K9('IsFailed')] (self)
  0014  CALL      R2 = call(R2, 1 args, 1 rets)
  0015  SETTABLE  R0[K8('m_bFailed')] = R2
  0016  SELF      R3 = R1[K11('GetTargetScoreByRound')] (self)
  0017  GETTABLE  R4 = R0[K1('m_round')]
  0018  CALL      R2 = call(R2, 1 args, 2 rets)
  0019  SETTABLE  R0[K10('m_targetScore')] = R2
  0020  SELF      R3 = R1[K13('GetRoundDefinitionIndexByRound')] (self)
  0021  GETTABLE  R4 = R0[K1('m_round')]
  0022  CALL      R2 = call(R2, 1 args, 2 rets)
  0023  SETTABLE  R0[K12('m_roundDefinitionIndex')] = R2
  0024  SELF      R3 = R1[K15('GetGapTime')] (self)
  0025  CALL      R2 = call(R2, 1 args, 1 rets)
  0026  SETTABLE  R0[K14('m_gapTime')] = R2
  0027  NEWTABLE  R2 = {} (0 items)
  0028  SETTABLE  R0[K16('m_mapTrackPlayerData')] = R2
  0029  GETTABUP  R2 = _ENV[K17('ipairs')]
  0030  SELF      R4 = R1[K18('GetAllPlayerData')] (self)
  0031  CALL      R3 = call(R3, -1 args, 1 rets)
  0032  CALL      R2 = call(R2, 3 args, -1 rets)
  0033  JMP       (jump)   -> 42
  0034  GETTABLE  R7 = R0[K16('m_mapTrackPlayerData')]
  0035  SELF      R9 = R6[K19('GetTrack')] (self)
  0036  CALL      R8 = call(R8, 1 args, 1 rets)
  0037  GETTABUP  R9 = _ENV[K20('Table')]
  0038  GETTABLE  R9 = R9[K21('DeepCopy')]
  0039  MOVE      R10 = R0
  0040  CALL      R9 = call(R9, 1 args, 1 rets)
  0041  SETTABLE  R7[R8] = R9
  0042  TFORCALL  tforcall R2
  0043  TFORLOOP  tforloop R4(sBx=-10)   -> 34
  0044  SELF      R3 = R1[K23('GetRewardByRound')] (self)
  0045  GETTABLE  R4 = R0[K1('m_round')]
  0046  CALL      R2 = call(R2, 1 args, 2 rets)
  0047  SETTABLE  R0[K22('m_roundRewards')] = R2
  0048  SELF      R3 = R1[K25('GetAnimationRound')] (self)
  0049  CALL      R2 = call(R2, 1 args, 1 rets)
  0050  SETTABLE  R0[K24('m_animationRound')] = R2
  0051  SELF      R3 = R1[K27('CanClaimReward')] (self)
  0052  CALL      R2 = call(R2, 1 args, 1 rets)
  0053  SETTABLE  R0[K26('m_bCanClaimReward')] = R2
  0054  SELF      R3 = R1[K29('GetSelfTrack')] (self)
  0055  CALL      R2 = call(R2, 1 args, 1 rets)
  0056  SETTABLE  R0[K28('m_selfTrackNumber')] = R2
  0057  SELF      R3 = R1[K31('GetMyRank')] (self)
  0058  CALL      R2 = call(R2, 1 args, 1 rets)
  0059  SETTABLE  R0[K30('m_myRank')] = R2
  0060  RETURN    return R0..R-1
; ---------- proto6 [_InitView] ----------
  ; fn ?  line 172-189 np=1 va=0 ms=10 code=74 consts=39 upvals=1 protos=0
  ;   K[0]='_InitRoundStand'
  ;   K[1]='_InitTrack'
  ;   K[2]='m_targetScoreText'
  ;   K[3]='text'
  ;   K[4]='tostring'
  ;   K[5]='m_targetScore'
  ;   K[6]='_InitGameObject'
  ;   K[7]='m_titleBg%dGo'
  ;   K[8]='_InitSprite'
  ;   K[9]='m_middleBgImage'
  ;   K[10]='m_middleBg%dSprite'
  ;   K[11]='m_bgTopImage'
  ;   K[12]='m_bg%dTopSprite'
  ;   K[13]='m_bgBottomImage'
  ;   K[14]='m_bg%dBottomSprite'
  ;   K[15]='m_titleTextOutline'
  ;   K[16]='effectColor'
  ;   K[17]='UIUtil'
  ;   K[18]='ConvertHexColor2CSColor'
  ;   K[19]='GetActivityDefinition'
  ;   K[20]='RoundDefinition'
  ;   K[21]='m_roundDefinitionIndex'
  ;   K[22]='MainWindowTitleOutlineColor'
  ;   K[23]='m_trackLayout'
  ;   K[24]='padding'
  ;   K[25]='bottom'
  ;   K[26]='TrackOffsetY'
  ;   K[27]=0
  ;   K[28]='m_activityDefinition'
  ;   K[29]='ActivityTokenIconName'
  ;   K[30]='m_middleDescText'
  ;   K[31]='GM'
  ;   K[32]='GameTextModel'
  ;   K[33]='GetText'
  ;   K[34]='upgraderace_rule_desc'
  ;   K[35]='m_successPlayerNumber'
  ;   K[36]='m_selfTipText'
  ;   K[37]='upgraderace_point_hint'
  ;   K[38]='_PlayAnimation'
  ;   upvals: _ENV
  ;   locals: self(0-74), imageName(51-74)
  0000  SELF      R2 = R0[K0('_InitRoundStand')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  SELF      R2 = R0[K1('_InitTrack')] (self)
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  GETTABLE  R1 = R0[K2('m_targetScoreText')]
  0005  GETTABUP  R2 = _ENV[K4('tostring')]
  0006  GETTABLE  R3 = R0[K5('m_targetScore')]
  0007  CALL      R2 = call(R2, 1 args, 1 rets)
  0008  SETTABLE  R1[K3('text')] = R2
  0009  SELF      R2 = R0[K6('_InitGameObject')] (self)
  0010  LOADK     R3 = K7 'm_titleBg%dGo'
  0011  CALL      R1 = call(R1, 0 args, 2 rets)
  0012  SELF      R2 = R0[K8('_InitSprite')] (self)
  0013  GETTABLE  R3 = R0[K9('m_middleBgImage')]
  0014  LOADK     R4 = K10 'm_middleBg%dSprite'
  0015  CALL      R1 = call(R1, 0 args, 3 rets)
  0016  SELF      R2 = R0[K8('_InitSprite')] (self)
  0017  GETTABLE  R3 = R0[K11('m_bgTopImage')]
  0018  LOADK     R4 = K12 'm_bg%dTopSprite'
  0019  LOADBOOL  R5 = true
  0020  CALL      R1 = call(R1, 0 args, 4 rets)
  0021  SELF      R2 = R0[K8('_InitSprite')] (self)
  0022  GETTABLE  R3 = R0[K13('m_bgBottomImage')]
  0023  LOADK     R4 = K14 'm_bg%dBottomSprite'
  0024  LOADBOOL  R5 = true
  0025  CALL      R1 = call(R1, 0 args, 4 rets)
  0026  GETTABLE  R1 = R0[K15('m_titleTextOutline')]
  0027  GETTABUP  R2 = _ENV[K17('UIUtil')]
  0028  GETTABLE  R2 = R2[K18('ConvertHexColor2CSColor')]
  0029  SELF      R4 = R0[K19('GetActivityDefinition')] (self)
  0030  CALL      R3 = call(R3, 1 args, 1 rets)
  0031  GETTABLE  R3 = R3[K20('RoundDefinition')]
  0032  GETTABLE  R4 = R0[K21('m_roundDefinitionIndex')]
  0033  GETTABLE  R3 = R3[R4]
  0034  GETTABLE  R3 = R3[K22('MainWindowTitleOutlineColor')]
  0035  CALL      R2 = call(R2, 1 args, 1 rets)
  0036  SETTABLE  R1[K16('effectColor')] = R2
  0037  GETTABLE  R1 = R0[K23('m_trackLayout')]
  0038  GETTABLE  R1 = R1[K24('padding')]
  0039  SELF      R3 = R0[K19('GetActivityDefinition')] (self)
  0040  CALL      R2 = call(R2, 1 args, 1 rets)
  0041  GETTABLE  R2 = R2[K20('RoundDefinition')]
  0042  GETTABLE  R3 = R0[K21('m_roundDefinitionIndex')]
  0043  GETTABLE  R2 = R2[R3]
  0044  GETTABLE  R2 = R2[K26('TrackOffsetY')]
  0045  TEST      if not R2 then   -> -131024
  0046  JMP       (jump)   -> 48
  0047  LOADK     R2 = K27 0
  0048  SETTABLE  R1[K25('bottom')] = R2
  0049  GETTABLE  R1 = R0[K28('m_activityDefinition')]
  0050  GETTABLE  R1 = R1[K29('ActivityTokenIconName')]
  0051  GETTABLE  R2 = R0[K30('m_middleDescText')]
  0052  GETTABUP  R3 = _ENV[K31('GM')]
  0053  GETTABLE  R3 = R3[K32('GameTextModel')]
  0054  SELF      R4 = R3[K33('GetText')] (self)
  0055  LOADK     R5 = K34 'upgraderace_rule_desc'
  0056  GETTABLE  R6 = R0[K35('m_successPlayerNumber')]
  0057  GETTABLE  R7 = R0[K5('m_targetScore')]
  0058  MOVE      R8 = R0
  0059  MOVE      R9 = R0
  0060  CALL      R3 = call(R3, 1 args, 6 rets)
  0061  SETTABLE  R2[K3('text')] = R3
  0062  GETTABLE  R2 = R0[K36('m_selfTipText')]
  0063  GETTABUP  R3 = _ENV[K31('GM')]
  0064  GETTABLE  R3 = R3[K32('GameTextModel')]
  0065  SELF      R4 = R3[K33('GetText')] (self)
  0066  LOADK     R5 = K37 'upgraderace_point_hint'
  0067  MOVE      R6 = R0
  0068  MOVE      R7 = R0
  0069  CALL      R3 = call(R3, 1 args, 4 rets)
  0070  SETTABLE  R2[K3('text')] = R3
  0071  SELF      R3 = R0[K38('_PlayAnimation')] (self)
  0072  CALL      R2 = call(R2, 0 args, 1 rets)
  0073  RETURN    return R0..R-1
; ---------- proto7 [_InitSprite] ----------
  ; fn ?  line 194-202 np=4 va=0 ms=7 code=24 consts=7 upvals=1 protos=0
  ;   K[0]='string'
  ;   K[1]='format'
  ;   K[2]='m_roundDefinitionIndex'
  ;   K[3]=nil
  ;   K[4]='IsNull'
  ;   K[5]='sprite'
  ;   K[6]='SetNativeSize'
  ;   upvals: _ENV
  ;   locals: self(0-24), imageComponent(0-24), key(0-24), bSetNativeSize(0-24), field(5-24)
  0000  GETTABUP  R4 = _ENV[K0('string')]
  0001  GETTABLE  R4 = R4[K1('format')]
  0002  MOVE      R5 = R0
  0003  GETTABLE  R6 = R0[K2('m_roundDefinitionIndex')]
  0004  CALL      R4 = call(R4, 1 args, 2 rets)
  0005  GETTABLE  R5 = R0[R4]
  0006  EQ        if R1 eq K3(nil)   -> -128245
  0007  JMP       (jump)   -> 23
  0008  GETTABLE  R5 = R0[R4]
  0009  GETTABLE  R5 = R5[K4('IsNull')]
  0010  TEST      if not R5 then   -> -131060
  0011  JMP       (jump)   -> 23
  0012  GETTABLE  R5 = R0[R4]
  0013  SELF      R6 = R5[K4('IsNull')] (self)
  0014  CALL      R5 = call(R5, 1 args, 1 rets)
  0015  TEST      if not R5 then   -> -131054
  0016  JMP       (jump)   -> 23
  0017  GETTABLE  R5 = R0[R4]
  0018  SETTABLE  R1[K5('sprite')] = R5
  0019  TEST      if not R3 then   -> -131051
  0020  JMP       (jump)   -> 23
  0021  SELF      R6 = R1[K6('SetNativeSize')] (self)
  0022  CALL      R5 = call(R5, 0 args, 1 rets)
  0023  RETURN    return R0..R-1
; ---------- proto8 [_InitGameObject] ----------
  ; fn ?  line 205-211 np=2 va=0 ms=6 code=18 consts=6 upvals=1 protos=0
  ;   K[0]='string'
  ;   K[1]='format'
  ;   K[2]='m_roundDefinitionIndex'
  ;   K[3]='UIUtil'
  ;   K[4]='IsEmptyComponent'
  ;   K[5]='SetActive'
  ;   upvals: _ENV
  ;   locals: self(0-18), key(0-18), field(5-18)
  0000  GETTABUP  R2 = _ENV[K0('string')]
  0001  GETTABLE  R2 = R2[K1('format')]
  0002  MOVE      R3 = R0
  0003  GETTABLE  R4 = R0[K2('m_roundDefinitionIndex')]
  0004  CALL      R2 = call(R2, 1 args, 2 rets)
  0005  GETTABUP  R3 = _ENV[K3('UIUtil')]
  0006  GETTABLE  R3 = R3[K4('IsEmptyComponent')]
  0007  GETTABLE  R4 = R0[R2]
  0008  CALL      R3 = call(R3, 1 args, 1 rets)
  0009  TEST      if not R3 then   -> -131061
  0010  JMP       (jump)   -> 12
  0011  RETURN    return R0..R-1
  0012  GETTABUP  R3 = _ENV[K3('UIUtil')]
  0013  GETTABLE  R3 = R3[K5('SetActive')]
  0014  GETTABLE  R4 = R0[R2]
  0015  LOADBOOL  R5 = true
  0016  CALL      R3 = call(R3, 0 args, 2 rets)
  0017  RETURN    return R0..R-1
; ---------- proto9 [_GetRoundStandPrefab] ----------
  ; fn ?  line 214-219 np=2 va=0 ms=5 code=20 consts=5 upvals=1 protos=0
  ;   K[0]='string'
  ;   K[1]='format'
  ;   K[2]='m_roundStand%dPrefab'
  ;   K[3]=nil
  ;   K[4]='IsNull'
  ;   upvals: _ENV
  ;   locals: self(0-20), roundDefinitionIndex(0-20), field(5-20)
  0000  GETTABUP  R2 = _ENV[K0('string')]
  0001  GETTABLE  R2 = R2[K1('format')]
  0002  LOADK     R3 = K2 'm_roundStand%dPrefab'
  0003  MOVE      R4 = R0
  0004  CALL      R2 = call(R2, 1 args, 2 rets)
  0005  GETTABLE  R3 = R0[R2]
  0006  EQ        if R1 eq K3(nil)   -> -129269
  0007  JMP       (jump)   -> 19
  0008  GETTABLE  R3 = R0[R2]
  0009  GETTABLE  R3 = R3[K4('IsNull')]
  0010  TEST      if not R3 then   -> -131060
  0011  JMP       (jump)   -> 19
  0012  GETTABLE  R3 = R0[R2]
  0013  SELF      R4 = R3[K4('IsNull')] (self)
  0014  CALL      R3 = call(R3, 1 args, 1 rets)
  0015  TEST      if not R3 then   -> -131054
  0016  JMP       (jump)   -> 19
  0017  GETTABLE  R3 = R0[R2]
  0018  RETURN    return R3..R2
  0019  RETURN    return R0..R-1
; ---------- proto10 [_InitRoundStand] ----------
  ; fn ?  line 221-235 np=1 va=0 ms=12 code=30 consts=11 upvals=1 protos=0
  ;   K[0]='m_arrRoundStand'
  ;   K[1]='m_roundDefinitionIndex'
  ;   K[2]=1
  ;   K[3]='m_smallRoundCount'
  ;   K[4]='_GetRoundStandPrefab'
  ;   K[5]=nil
  ;   K[6]='Object'
  ;   K[7]='Instantiate'
  ;   K[8]='m_roundStandRoot'
  ;   K[9]='GetLuaTable'
  ;   K[10]='Init'
  ;   upvals: _ENV
  ;   locals: self(0-30), roundStandPrefab(3-30), roundStand(3-30), currentRoundDefinitionIndex(4-30), (for index)(7-29), (for limit)(7-29), (for step)(7-29), roundDefinitionIndex(8-28)
  0000  NEWTABLE  R1 = {} (0 items)
  0001  SETTABLE  R0[K0('m_arrRoundStand')] = R1
  0002  LOADNIL   R1..R1 = nil
  0003  GETTABLE  R3 = R0[K1('m_roundDefinitionIndex')]
  0004  LOADK     R4 = K2 1
  0005  GETTABLE  R5 = R0[K3('m_smallRoundCount')]
  0006  LOADK     R6 = K2 1
  0007  FORPREP   forprep R4(sBx=20)   -> 28
  0008  SELF      R9 = R0[K4('_GetRoundStandPrefab')] (self)
  0009  MOVE      R10 = R0
  0010  CALL      R8 = call(R8, 1 args, 2 rets)
  0011  MOVE      R1 = R0
  0012  EQ        if R1 eq K5(nil)   -> -130285
  0013  JMP       (jump)   -> 28
  0014  GETTABUP  R8 = _ENV[K6('Object')]
  0015  GETTABLE  R8 = R8[K7('Instantiate')]
  0016  MOVE      R9 = R0
  0017  GETTABLE  R10 = R0[K8('m_roundStandRoot')]
  0018  CALL      R8 = call(R8, 1 args, 2 rets)
  0019  SELF      R9 = R8[K9('GetLuaTable')] (self)
  0020  CALL      R8 = call(R8, 1 args, 1 rets)
  0021  MOVE      R2 = R0
  0022  SELF      R9 = R2[K10('Init')] (self)
  0023  MOVE      R10 = R0
  0024  MOVE      R11 = R0
  0025  CALL      R8 = call(R8, 0 args, 3 rets)
  0026  GETTABLE  R8 = R0[K0('m_arrRoundStand')]
  0027  SETTABLE  R8[R7] = R2
  0028  FORLOOP   forloop R4(sBx=-21)   -> 8
  0029  RETURN    return R0..R-1
; ---------- proto11 [_GetRopePrefab] ----------
  ; fn ?  line 238-243 np=1 va=0 ms=4 code=20 consts=6 upvals=1 protos=0
  ;   K[0]='string'
  ;   K[1]='format'
  ;   K[2]='m_rope%dPrefab'
  ;   K[3]='m_roundDefinitionIndex'
  ;   K[4]=nil
  ;   K[5]='IsNull'
  ;   upvals: _ENV
  ;   locals: self(0-20), field(5-20)
  0000  GETTABUP  R1 = _ENV[K0('string')]
  0001  GETTABLE  R1 = R1[K1('format')]
  0002  LOADK     R2 = K2 'm_rope%dPrefab'
  0003  GETTABLE  R3 = R0[K3('m_roundDefinitionIndex')]
  0004  CALL      R1 = call(R1, 1 args, 2 rets)
  0005  GETTABLE  R2 = R0[R1]
  0006  EQ        if R1 eq K4(nil)   -> -129780
  0007  JMP       (jump)   -> 19
  0008  GETTABLE  R2 = R0[R1]
  0009  GETTABLE  R2 = R2[K5('IsNull')]
  0010  TEST      if not R2 then   -> -131060
  0011  JMP       (jump)   -> 19
  0012  GETTABLE  R2 = R0[R1]
  0013  SELF      R3 = R2[K5('IsNull')] (self)
  0014  CALL      R2 = call(R2, 1 args, 1 rets)
  0015  TEST      if not R2 then   -> -131054
  0016  JMP       (jump)   -> 19
  0017  GETTABLE  R2 = R0[R1]
  0018  RETURN    return R2..R1
  0019  RETURN    return R0..R-1
; ---------- proto12 [_InitTrack] ----------
  ; fn ?  line 246-287 np=1 va=0 ms=25 code=88 consts=28 upvals=1 protos=0
  ;   K[0]='_GetRopePrefab'
  ;   K[1]='m_arrTrack'
  ;   K[2]='m_mapRank'
  ;   K[3]=1
  ;   K[4]='m_playerNumber'
  ;   K[5]='m_mapTrackPlayerData'
  ;   K[6]=nil
  ;   K[7]='IsMySelf'
  ;   K[8]='m_trackPrefabSelf'
  ;   K[9]='m_trackPrefabOther'
  ;   K[10]='Object'
  ;   K[11]='Instantiate'
  ;   K[12]='m_trackRoot'
  ;   K[13]='GetLuaTable'
  ;   K[14]='GetRank'
  ;   K[15]='Init'
  ;   K[16]='m_roundDefinitionIndex'
  ;   K[17]='GetLastScore'
  ;   K[18]='GetCurScore'
  ;   K[19]='m_gapTime'
  ;   K[20]='m_targetScore'
  ;   K[21]='GetUserName'
  ;   K[22]='GetIcon'
  ;   K[23]='GetBadge'
  ;   K[24]='GetFrame'
  ;   K[25]='m_roundRewards'
  ;   K[26]='m_successPlayerNumber'
  ;   K[27]='m_myselfTrack'
  ;   upvals: _ENV
  ;   locals: self(0-88), trackprefab(1-88), ropePrefab(3-88), track(4-88), playerData(4-88), (for index)(11-80), (for limit)(11-80), (for step)(11-80), trackNumber(12-79)
  0000  LOADNIL   R1..R1 = nil
  0001  SELF      R3 = R0[K0('_GetRopePrefab')] (self)
  0002  CALL      R2 = call(R2, 1 args, 1 rets)
  0003  LOADNIL   R3..R3 = nil
  0004  NEWTABLE  R5 = {} (0 items)
  0005  SETTABLE  R0[K1('m_arrTrack')] = R5
  0006  NEWTABLE  R5 = {} (0 items)
  0007  SETTABLE  R0[K2('m_mapRank')] = R5
  0008  LOADK     R5 = K3 1
  0009  GETTABLE  R6 = R0[K4('m_playerNumber')]
  0010  LOADK     R7 = K3 1
  0011  FORPREP   forprep R5(sBx=67)   -> 79
  0012  GETTABLE  R9 = R0[K5('m_mapTrackPlayerData')]
  0013  GETTABLE  R4 = R9[R8]
  0014  EQ        if R1 eq K6(nil)   -> -128746
  0015  JMP       (jump)   -> 23
  0016  SELF      R10 = R4[K7('IsMySelf')] (self)
  0017  CALL      R9 = call(R9, 1 args, 1 rets)
  0018  TEST      if not R9 then   -> -131052
  0019  JMP       (jump)   -> 23
  0020  GETTABLE  R9 = R0[K8('m_trackPrefabSelf')]
  0021  TESTSET   if R1 then R1   -> -126440
  0022  JMP       (jump)   -> 24
  0023  GETTABLE  R1 = R0[K9('m_trackPrefabOther')]
  0024  EQ        if R1 eq K6(nil)   -> -129760
  0025  JMP       (jump)   -> 31
  0026  GETTABUP  R9 = _ENV[K10('Object')]
  0027  GETTABLE  R9 = R9[K11('Instantiate')]
  0028  MOVE      R10 = R0
  0029  GETTABLE  R11 = R0[K12('m_trackRoot')]
  0030  CALL      R9 = call(R9, 0 args, 2 rets)
  0031  GETTABUP  R9 = _ENV[K10('Object')]
  0032  GETTABLE  R9 = R9[K11('Instantiate')]
  0033  MOVE      R10 = R0
  0034  GETTABLE  R11 = R0[K12('m_trackRoot')]
  0035  CALL      R9 = call(R9, 1 args, 2 rets)
  0036  SELF      R10 = R9[K13('GetLuaTable')] (self)
  0037  CALL      R9 = call(R9, 1 args, 1 rets)
  0038  MOVE      R3 = R0
  0039  GETTABLE  R9 = R0[K1('m_arrTrack')]
  0040  SETTABLE  R9[R8] = R3
  0041  EQ        if R1 eq K6(nil)   -> -128719
  0042  JMP       (jump)   -> 79
  0043  GETTABLE  R9 = R0[K2('m_mapRank')]
  0044  SELF      R11 = R4[K14('GetRank')] (self)
  0045  CALL      R10 = call(R10, 1 args, 1 rets)
  0046  SETTABLE  R9[R10] = R8
  0047  SELF      R10 = R3[K15('Init')] (self)
  0048  MOVE      R11 = R0
  0049  GETTABLE  R12 = R0[K16('m_roundDefinitionIndex')]
  0050  SELF      R14 = R4[K17('GetLastScore')] (self)
  0051  CALL      R13 = call(R13, 1 args, 1 rets)
  0052  SELF      R15 = R4[K18('GetCurScore')] (self)
  0053  GETTABLE  R16 = R0[K19('m_gapTime')]
  0054  CALL      R14 = call(R14, 1 args, 2 rets)
  0055  GETTABLE  R15 = R0[K20('m_targetScore')]
  0056  SELF      R17 = R4[K14('GetRank')] (self)
  0057  CALL      R16 = call(R16, 1 args, 1 rets)
  0058  SELF      R18 = R4[K21('GetUserName')] (self)
  0059  CALL      R17 = call(R17, 1 args, 1 rets)
  0060  SELF      R19 = R4[K22('GetIcon')] (self)
  0061  CALL      R18 = call(R18, 1 args, 1 rets)
  0062  SELF      R20 = R4[K23('GetBadge')] (self)
  0063  CALL      R19 = call(R19, 1 args, 1 rets)
  0064  SELF      R21 = R4[K24('GetFrame')] (self)
  0065  CALL      R20 = call(R20, 1 args, 1 rets)
  0066  SELF      R22 = R4[K7('IsMySelf')] (self)
  0067  CALL      R21 = call(R21, 1 args, 1 rets)
  0068  GETTABLE  R22 = R0[K25('m_roundRewards')]
  0069  SELF      R24 = R4[K14('GetRank')] (self)
  0070  CALL      R23 = call(R23, 1 args, 1 rets)
  0071  GETTABLE  R22 = R22[R23]
  0072  GETTABLE  R23 = R0[K26('m_successPlayerNumber')]
  0073  CALL      R9 = call(R9, 0 args, 14 rets)
  0074  SELF      R10 = R4[K7('IsMySelf')] (self)
  0075  CALL      R9 = call(R9, 1 args, 1 rets)
  0076  TEST      if not R9 then   -> -130994
  0077  JMP       (jump)   -> 79
  0078  SETTABLE  R0[K27('m_myselfTrack')] = R3
  0079  FORLOOP   forloop R5(sBx=-68)   -> 12
  0080  EQ        if R1 eq K6(nil)   -> -129704
  0081  JMP       (jump)   -> 87
  0082  GETTABUP  R5 = _ENV[K10('Object')]
  0083  GETTABLE  R5 = R5[K11('Instantiate')]
  0084  MOVE      R6 = R0
  0085  GETTABLE  R7 = R0[K12('m_trackRoot')]
  0086  CALL      R5 = call(R5, 0 args, 2 rets)
  0087  RETURN    return R0..R-1
; ---------- proto13 [TrySpeedUpAnimation] ----------
  ; fn ?  line 293-297 np=1 va=0 ms=4 code=8 consts=2 upvals=0 protos=0
  ;   K[0]='m_sequence'
  ;   K[1]='Complete'
  ;   locals: self(0-8)
  0000  GETTABLE  R1 = R0[K0('m_sequence')]
  0001  TEST      if not R1 then   -> -131069
  0002  JMP       (jump)   -> 7
  0003  GETTABLE  R1 = R0[K0('m_sequence')]
  0004  SELF      R2 = R1[K1('Complete')] (self)
  0005  LOADBOOL  R3 = true
  0006  CALL      R1 = call(R1, 0 args, 2 rets)
  0007  RETURN    return R0..R-1
; ---------- proto14 [_PlayAnimation] ----------
  ; fn ?  line 299-455 np=1 va=0 ms=30 code=231 consts=53 upvals=1 protos=3
  ;   K[0]='m_bPlayingAnimation'
  ;   K[1]=true
  ;   K[2]='GM'
  ;   K[3]='UIManager'
  ;   K[4]='SetEventLock'
  ;   K[5]='m_eventLockCallback'
  ;   K[6]='DOTween'
  ;   K[7]='Sequence'
  ;   K[8]='m_sequence'
  ;   K[9]=2
  ;   K[10]=1
  ;   K[11]='m_round'
  ;   K[12]='m_animationRound'
  ;   K[13]='Duration'
  ;   K[14]='m_playerNumber'
  ;   K[15]='m_arrTrack'
  ;   K[16]='Insert'
  ;   K[17]='PlayEnterAnimation'
  ;   K[18]=0
  ;   K[19]=0.2
  ;   K[20]='m_mapRank'
  ;   K[21]=nil
  ;   K[22]='m_mapTrackPlayerData'
  ;   K[23]='GetCurScore'
  ;   K[24]='m_gapTime'
  ;   K[25]='GetLastScore'
  ;   K[26]='m_targetScore'
  ;   K[27]='math'
  ;   K[28]='min'
  ;   K[29]='PlayProgressAnimation'
  ;   K[30]='InsertCallback'
  ;   K[31]='AppendInterval'
  ;   K[32]=0.5
  ;   K[33]='UIUtil'
  ;   K[34]='SetActive'
  ;   K[35]='m_buttonGo'
  ;   K[36]='m_successPlayerNumber'
  ;   K[37]='Append'
  ;   K[38]='PlayRewardBoxAnimation'
  ;   K[39]='ShowRewardBoxImmediately'
  ;   K[40]='m_arrRoundStand'
  ;   K[41]='m_roundDefinitionIndex'
  ;   K[42]='m_bCanClaimReward'
  ;   K[43]='m_bFailed'
  ;   K[44]=0.1
  ;   K[45]='AppendCallback'
  ;   K[46]='m_buttonRectTransform'
  ;   K[47]='localScale'
  ;   K[48]='UIUtil'
  ;   K[49]='SetLocalScale'
  ;   K[50]='DOScale'
  ;   K[51]=0.3
  ;   K[52]='PrependInterval'
  ;   upvals: _ENV
  ;   locals: self(0-231), sequence(11-231), track(13-231), animationTime(14-231), finishAnimationTime(15-231), bEnterAnimation(21-231), enterAnimationStartTime(25-37), (for index)(28-37), (for limit)(28-37), (for step)(28-37), trackNumber(29-36), playerData(38-231), finishSpeed(39-231), trackNumber(40-231), diff(40-231), normalizedDiff(40-231), duration(40-231), startTime(40-231), targetTime(41-231), targetInterval(42-231), mapStartTime(43-231), minStartTime(44-231), (for index)(47-83), (for limit)(47-83), (for step)(47-83), rank(48-82), sequenceStartTime(85-231), progressSequence(86-231), (for index)(89-116), (for limit)(89-116), (for step)(89-116), rank(90-115), bTrackAnimation(122-231), sequenceStartTimeReward(142-231), rewardBoxSequence(145-231), (for index)(148-167), (for limit)(148-167), (for step)(148-167), rank(149-166), scale(208-224)
  0000  SETTABLE  R0[K0('m_bPlayingAnimation')] = K1(true)
  0001  GETTABUP  R1 = _ENV[K2('GM')]
  0002  GETTABLE  R1 = R1[K3('UIManager')]
  0003  SELF      R2 = R1[K4('SetEventLock')] (self)
  0004  LOADBOOL  R3 = true
  0005  MOVE      R4 = R0
  0006  GETTABLE  R5 = R0[K5('m_eventLockCallback')]
  0007  CALL      R1 = call(R1, 0 args, 4 rets)
  0008  GETTABUP  R1 = _ENV[K6('DOTween')]
  0009  GETTABLE  R1 = R1[K7('Sequence')]
  0010  CALL      R1 = call(R1, 1 args, 0 rets)
  0011  SETTABLE  R0[K8('m_sequence')] = R1
  0012  LOADNIL   R2..R2 = nil
  0013  LOADK     R3 = K9 2
  0014  LOADK     R4 = K10 1
  0015  GETTABLE  R5 = R0[K11('m_round')]
  0016  GETTABLE  R6 = R0[K12('m_animationRound')]
  0017  EQ        if R0 eq R6   -> -128487
  0018  JMP       (jump)   -> 20
  0019  LOADBOOL  R5 = false
  0020  LOADBOOL  R5 = true
  0021  TEST      if not R5 then   -> -131049
  0022  JMP       (jump)   -> 37
  0023  SELF      R7 = R1[K13('Duration')] (self)
  0024  CALL      R6 = call(R6, 1 args, 1 rets)
  0025  LOADK     R7 = K10 1
  0026  GETTABLE  R8 = R0[K14('m_playerNumber')]
  0027  LOADK     R9 = K10 1
  0028  FORPREP   forprep R7(sBx=7)   -> 36
  0029  GETTABLE  R11 = R0[K15('m_arrTrack')]
  0030  GETTABLE  R2 = R11[R10]
  0031  SELF      R12 = R1[K16('Insert')] (self)
  0032  MOVE      R13 = R0
  0033  SELF      R15 = R2[K17('PlayEnterAnimation')] (self)
  0034  CALL      R14 = call(R14, -1 args, 1 rets)
  0035  CALL      R11 = call(R11, 0 args, -1 rets)
  0036  FORLOOP   forloop R7(sBx=-8)   -> 29
  0037  LOADNIL   R6..R6 = nil
  0038  DIV       R7 = R4 div K10(1)
  0039  LOADNIL   R8..R8 = nil
  0040  LOADK     R13 = K18 0
  0041  LOADK     R14 = K19 0.2
  0042  NEWTABLE  R15 = {} (0 items)
  0043  LOADK     R16 = K18 0
  0044  LOADK     R17 = K10 1
  0045  GETTABLE  R18 = R0[K14('m_playerNumber')]
  0046  LOADK     R19 = K10 1
  0047  FORPREP   forprep R17(sBx=34)   -> 82
  0048  GETTABLE  R21 = R0[K20('m_mapRank')]
  0049  GETTABLE  R8 = R21[R20]
  0050  EQ        if R1 eq K21(nil)   -> -126647
  0051  JMP       (jump)   -> 82
  0052  GETTABLE  R21 = R0[K22('m_mapTrackPlayerData')]
  0053  GETTABLE  R6 = R21[R8]
  0054  SELF      R22 = R6[K23('GetCurScore')] (self)
  0055  GETTABLE  R23 = R0[K24('m_gapTime')]
  0056  CALL      R21 = call(R21, 1 args, 2 rets)
  0057  SELF      R23 = R6[K25('GetLastScore')] (self)
  0058  CALL      R22 = call(R22, 1 args, 1 rets)
  0059  SUB       R9 = R22 sub R21
  0060  LT        if R0 lt R9   -> 9287
  0061  JMP       (jump)   -> 82
  0062  SELF      R22 = R6[K23('GetCurScore')] (self)
  0063  GETTABLE  R23 = R0[K24('m_gapTime')]
  0064  CALL      R21 = call(R21, 1 args, 2 rets)
  0065  GETTABLE  R22 = R0[K26('m_targetScore')]
  0066  LE        if R0 le R21   -> -119719
  0067  JMP       (jump)   -> 83
  0068  GETTABLE  R21 = R0[K26('m_targetScore')]
  0069  DIV       R10 = R21 div R9
  0070  DIV       R11 = R7 div R10
  0071  SUB       R12 = R11 sub R13
  0072  SETTABLE  R15[R20] = R12
  0073  ADD       R13 = R14 add R13
  0074  GETTABUP  R21 = _ENV[K27('math')]
  0075  GETTABLE  R21 = R21[K28('min')]
  0076  MOVE      R22 = R0
  0077  MOVE      R23 = R0
  0078  CALL      R21 = call(R21, 1 args, 2 rets)
  0079  MOVE      R16 = R0
  0080  JMP       (jump)   -> 82
  0081  JMP       (jump)   -> 83
  0082  FORLOOP   forloop R17(sBx=-35)   -> 48
  0083  SELF      R18 = R1[K13('Duration')] (self)
  0084  CALL      R17 = call(R17, 1 args, 1 rets)
  0085  LOADNIL   R18..R18 = nil
  0086  LOADK     R19 = K10 1
  0087  GETTABLE  R20 = R0[K14('m_playerNumber')]
  0088  LOADK     R21 = K10 1
  0089  FORPREP   forprep R19(sBx=25)   -> 115
  0090  GETTABLE  R23 = R0[K20('m_mapRank')]
  0091  GETTABLE  R8 = R23[R22]
  0092  EQ        if R1 eq K21(nil)   -> -126605
  0093  JMP       (jump)   -> 115
  0094  GETTABLE  R23 = R0[K22('m_mapTrackPlayerData')]
  0095  GETTABLE  R6 = R23[R8]
  0096  GETTABLE  R23 = R0[K15('m_arrTrack')]
  0097  GETTABLE  R23 = R23[R8]
  0098  SELF      R24 = R23[K29('PlayProgressAnimation')] (self)
  0099  MOVE      R25 = R0
  0100  MOVE      R26 = R0
  0101  CALL      R23 = call(R23, 1 args, 3 rets)
  0102  MOVE      R18 = R0
  0103  EQ        if R1 eq K21(nil)   -> -121474
  0104  JMP       (jump)   -> 115
  0105  LOADK     R12 = K18 0
  0106  GETTABLE  R23 = R15[R22]
  0107  EQ        if R1 eq K21(nil)   -> -118910
  0108  JMP       (jump)   -> 111
  0109  GETTABLE  R23 = R15[R22]
  0110  SUB       R12 = R16 sub R23
  0111  SELF      R24 = R1[K16('Insert')] (self)
  0112  ADD       R25 = R12 add R17
  0113  MOVE      R26 = R0
  0114  CALL      R23 = call(R23, 0 args, 3 rets)
  0115  FORLOOP   forloop R19(sBx=-26)   -> 90
  0116  SELF      R20 = R1[K13('Duration')] (self)
  0117  CALL      R19 = call(R19, 1 args, 1 rets)
  0118  LT        if R1 lt R19   -> -122229
  0119  JMP       (jump)   -> 121
  0120  LOADBOOL  R19 = false
  0121  LOADBOOL  R19 = true
  0122  TEST      if not R19 then   -> -130947
  0123  JMP       (jump)   -> 126
  0124  TEST      if not R5 then   -> -130946
  0125  JMP       (jump)   -> 140
  0126  TEST      if not R19 then   -> -130944
  0127  JMP       (jump)   -> 132
  0128  SELF      R21 = R1[K30('InsertCallback')] (self)
  0129  MOVE      R22 = R0
  0130  CLOSURE   R23 = closure proto0
  0131  CALL      R20 = call(R20, 0 args, 3 rets)
  0132  SELF      R21 = R1[K31('AppendInterval')] (self)
  0133  LOADK     R22 = K32 0.5
  0134  CALL      R20 = call(R20, 0 args, 2 rets)
  0135  GETTABUP  R20 = _ENV[K33('UIUtil')]
  0136  GETTABLE  R20 = R20[K34('SetActive')]
  0137  GETTABLE  R21 = R0[K35('m_buttonGo')]
  0138  LOADBOOL  R22 = false
  0139  CALL      R20 = call(R20, 0 args, 2 rets)
  0140  SELF      R21 = R1[K13('Duration')] (self)
  0141  CALL      R20 = call(R20, 1 args, 1 rets)
  0142  GETTABUP  R21 = _ENV[K6('DOTween')]
  0143  GETTABLE  R21 = R21[K7('Sequence')]
  0144  CALL      R21 = call(R21, 1 args, 0 rets)
  0145  LOADK     R22 = K10 1
  0146  GETTABLE  R23 = R0[K36('m_successPlayerNumber')]
  0147  LOADK     R24 = K10 1
  0148  FORPREP   forprep R22(sBx=17)   -> 166
  0149  GETTABLE  R26 = R0[K20('m_mapRank')]
  0150  GETTABLE  R8 = R26[R25]
  0151  EQ        if R1 eq K21(nil)   -> -126546
  0152  JMP       (jump)   -> 166
  0153  GETTABLE  R26 = R0[K15('m_arrTrack')]
  0154  GETTABLE  R2 = R26[R8]
  0155  TEST      if not R19 then   -> -130914
  0156  JMP       (jump)   -> 159
  0157  TEST      if not R5 then   -> -130913
  0158  JMP       (jump)   -> 164
  0159  SELF      R27 = R21[K37('Append')] (self)
  0160  SELF      R29 = R2[K38('PlayRewardBoxAnimation')] (self)
  0161  CALL      R28 = call(R28, -1 args, 1 rets)
  0162  CALL      R26 = call(R26, 0 args, -1 rets)
  0163  JMP       (jump)   -> 166
  0164  SELF      R27 = R2[K39('ShowRewardBoxImmediately')] (self)
  0165  CALL      R26 = call(R26, 0 args, 1 rets)
  0166  FORLOOP   forloop R22(sBx=-18)   -> 149
  0167  TEST      if not R19 then   -> -130902
  0168  JMP       (jump)   -> 171
  0169  TEST      if not R5 then   -> -130901
  0170  JMP       (jump)   -> 177
  0171  SELF      R23 = R1[K16('Insert')] (self)
  0172  SELF      R25 = R1[K13('Duration')] (self)
  0173  CALL      R24 = call(R24, 1 args, 1 rets)
  0174  SUB       R24 = K32(0.5) sub R24
  0175  MOVE      R25 = R0
  0176  CALL      R22 = call(R22, 0 args, 3 rets)
  0177  TEST      if not R5 then   -> -130893
  0178  JMP       (jump)   -> 186
  0179  SELF      R23 = R1[K37('Append')] (self)
  0180  GETTABLE  R24 = R0[K40('m_arrRoundStand')]
  0181  GETTABLE  R25 = R0[K41('m_roundDefinitionIndex')]
  0182  GETTABLE  R24 = R24[R25]
  0183  SELF      R25 = R24[K17('PlayEnterAnimation')] (self)
  0184  CALL      R24 = call(R24, -1 args, 1 rets)
  0185  CALL      R22 = call(R22, 0 args, -1 rets)
  0186  TEST      if not R19 then   -> -130883
  0187  JMP       (jump)   -> 190
  0188  TEST      if not R5 then   -> -130882
  0189  JMP       (jump)   -> 224
  0190  GETTABLE  R22 = R0[K42('m_bCanClaimReward')]
  0191  TEST      if not R22 then   -> -130878
  0192  JMP       (jump)   -> 196
  0193  GETTABLE  R22 = R0[K43('m_bFailed')]
  0194  TEST      if not R22 then   -> -130876
  0195  JMP       (jump)   -> 200
  0196  SELF      R23 = R1[K31('AppendInterval')] (self)
  0197  LOADK     R24 = K32 0.5
  0198  CALL      R22 = call(R22, 0 args, 2 rets)
  0199  JMP       (jump)   -> 224
  0200  SELF      R23 = R1[K31('AppendInterval')] (self)
  0201  LOADK     R24 = K44 0.1
  0202  CALL      R22 = call(R22, 0 args, 2 rets)
  0203  SELF      R23 = R1[K45('AppendCallback')] (self)
  0204  CLOSURE   R24 = closure proto1
  0205  CALL      R22 = call(R22, 0 args, 2 rets)
  0206  GETTABLE  R22 = R0[K46('m_buttonRectTransform')]
  0207  GETTABLE  R22 = R22[K47('localScale')]
  0208  GETTABUP  R23 = _ENV[K48('UIUtil')]
  0209  GETTABLE  R23 = R23[K49('SetLocalScale')]
  0210  GETTABLE  R24 = R0[K46('m_buttonRectTransform')]
  0211  LOADK     R25 = K18 0
  0212  LOADK     R26 = K18 0
  0213  CALL      R23 = call(R23, 0 args, 3 rets)
  0214  SELF      R24 = R1[K37('Append')] (self)
  0215  GETTABLE  R25 = R0[K46('m_buttonRectTransform')]
  0216  SELF      R26 = R25[K50('DOScale')] (self)
  0217  MOVE      R27 = R0
  0218  LOADK     R28 = K51 0.3
  0219  CALL      R25 = call(R25, -1 args, 3 rets)
  0220  CALL      R23 = call(R23, 0 args, -1 rets)
  0221  SELF      R24 = R1[K31('AppendInterval')] (self)
  0222  LOADK     R25 = K51 0.3
  0223  CALL      R23 = call(R23, 0 args, 2 rets)
  0224  SELF      R23 = R1[K45('AppendCallback')] (self)
  0225  CLOSURE   R24 = closure proto2
  0226  CALL      R22 = call(R22, 0 args, 2 rets)
  0227  SELF      R23 = R1[K52('PrependInterval')] (self)
  0228  LOADK     R24 = K32 0.5
  0229  CALL      R22 = call(R22, 0 args, 2 rets)
  0230  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 396-399 np=0 va=0 ms=3 code=12 consts=9 upvals=1 protos=0
    ;   K[0]='GM'
    ;   K[1]='AudioModel'
    ;   K[2]='PlayEffect'
    ;   K[3]='AudioFileConfigName'
    ;   K[4]='bingoChargeProcessAdded'
    ;   K[5]='PlatformInterface'
    ;   K[6]='Vibrate'
    ;   K[7]='EVibrationType'
    ;   K[8]='Medium'
    ;   upvals: _ENV
    0000  GETTABUP  R0 = _ENV[K0('GM')]
    0001  GETTABLE  R0 = R0[K1('AudioModel')]
    0002  SELF      R1 = R0[K2('PlayEffect')] (self)
    0003  GETTABUP  R2 = _ENV[K3('AudioFileConfigName')]
    0004  GETTABLE  R2 = R2[K4('bingoChargeProcessAdded')]
    0005  CALL      R0 = call(R0, 0 args, 2 rets)
    0006  GETTABUP  R0 = _ENV[K5('PlatformInterface')]
    0007  GETTABLE  R0 = R0[K6('Vibrate')]
    0008  GETTABUP  R1 = _ENV[K7('EVibrationType')]
    0009  GETTABLE  R1 = R1[K8('Medium')]
    0010  CALL      R0 = call(R0, 0 args, 1 rets)
    0011  RETURN    return R0..R-1
  ; ---------- proto1 [] ----------
    ; fn ?  line 438-440 np=0 va=0 ms=3 code=6 consts=3 upvals=2 protos=0
    ;   K[0]='UIUtil'
    ;   K[1]='SetActive'
    ;   K[2]='m_buttonGo'
    ;   upvals: _ENV, self
    0000  GETTABUP  R0 = _ENV[K0('UIUtil')]
    0001  GETTABLE  R0 = R0[K1('SetActive')]
    0002  GETTABUP  R1 = self[K2('m_buttonGo')]
    0003  LOADBOOL  R2 = true
    0004  CALL      R0 = call(R0, 0 args, 2 rets)
    0005  RETURN    return R0..R-1
  ; ---------- proto2 [] ----------
    ; fn ?  line 449-452 np=0 va=0 ms=2 code=5 consts=3 upvals=1 protos=0
    ;   K[0]='m_sequence'
    ;   K[1]=nil
    ;   K[2]='_OnAnimationEnd'
    ;   upvals: self
    0000  SETTABUP  self[K0('m_sequence')] = K1(nil)
    0001  GETUPVAL  R0 = self
    0002  SELF      R1 = R0[K2('_OnAnimationEnd')] (self)
    0003  CALL      R0 = call(R0, 0 args, 1 rets)
    0004  RETURN    return R0..R-1
; ---------- proto15 [_OnAnimationEnd] ----------
  ; fn ?  line 457-490 np=1 va=0 ms=16 code=79 consts=27 upvals=1 protos=1
  ;   K[0]='m_bPlayingAnimation'
  ;   K[1]=false
  ;   K[2]='GM'
  ;   K[3]='UIManager'
  ;   K[4]='SetEventLock'
  ;   K[5]='m_eventLockCallback'
  ;   K[6]='GetModel'
  ;   K[7]='m_bClaimed'
  ;   K[8]='Table'
  ;   K[9]='IsEmpty'
  ;   K[10]='m_rewards'
  ;   K[11]='m_selfTrackNumber'
  ;   K[12]='m_arrTrack'
  ;   K[13]='GetRewardBoxTrans'
  ;   K[14]='OpenView'
  ;   K[15]='m_activityDefinition'
  ;   K[16]='RewardWindowPrefabName'
  ;   K[17]='m_activityType'
  ;   K[18]='m_id'
  ;   K[19]='m_myRank'
  ;   K[20]='m_roundDefinitionIndex'
  ;   K[21]='Close'
  ;   K[22]='m_bFailed'
  ;   K[23]='IsActivityValid'
  ;   K[24]='OpenFailWindow'
  ;   K[25]='NeedPopFailWindow'
  ;   K[26]='OnMainWindowAnimationEnd'
  ;   upvals: _ENV
  ;   locals: self(0-79), model(10-79), selfTrackNumber(20-44), selfTrack(22-44), boxTrans(29-44)
  0000  SETTABLE  R0[K0('m_bPlayingAnimation')] = K1(false)
  0001  GETTABUP  R1 = _ENV[K2('GM')]
  0002  GETTABLE  R1 = R1[K3('UIManager')]
  0003  SELF      R2 = R1[K4('SetEventLock')] (self)
  0004  LOADBOOL  R3 = false
  0005  MOVE      R4 = R0
  0006  GETTABLE  R5 = R0[K5('m_eventLockCallback')]
  0007  CALL      R1 = call(R1, 0 args, 4 rets)
  0008  SELF      R2 = R0[K6('GetModel')] (self)
  0009  CALL      R1 = call(R1, 1 args, 1 rets)
  0010  GETTABLE  R2 = R0[K7('m_bClaimed')]
  0011  TEST      if not R2 then   -> -131059
  0012  JMP       (jump)   -> 48
  0013  GETTABUP  R2 = _ENV[K8('Table')]
  0014  GETTABLE  R2 = R2[K9('IsEmpty')]
  0015  GETTABLE  R3 = R0[K10('m_rewards')]
  0016  CALL      R2 = call(R2, 1 args, 1 rets)
  0017  TEST      if not R2 then   -> -131052
  0018  JMP       (jump)   -> 45
  0019  GETTABLE  R2 = R0[K11('m_selfTrackNumber')]
  0020  GETTABLE  R3 = R0[K12('m_arrTrack')]
  0021  GETTABLE  R3 = R3[R2]
  0022  TEST      if not R3 then   -> -131048
  0023  JMP       (jump)   -> 28
  0024  SELF      R5 = R3[K13('GetRewardBoxTrans')] (self)
  0025  CALL      R4 = call(R4, 1 args, 1 rets)
  0026  TEST      if not R4 then   -> -131043
  0027  JMP       (jump)   -> 29
  0028  LOADNIL   R4..R4 = nil
  0029  GETTABUP  R5 = _ENV[K2('GM')]
  0030  GETTABLE  R5 = R5[K3('UIManager')]
  0031  SELF      R6 = R5[K14('OpenView')] (self)
  0032  GETTABLE  R7 = R0[K15('m_activityDefinition')]
  0033  GETTABLE  R7 = R7[K16('RewardWindowPrefabName')]
  0034  GETTABLE  R8 = R0[K17('m_activityType')]
  0035  GETTABLE  R9 = R0[K18('m_id')]
  0036  LOADBOOL  R10 = true
  0037  GETTABLE  R11 = R0[K19('m_myRank')]
  0038  GETTABLE  R12 = R0[K10('m_rewards')]
  0039  MOVE      R13 = R0
  0040  GETTABLE  R14 = R0[K20('m_roundDefinitionIndex')]
  0041  CLOSURE   R15 = closure proto0
  0042  CALL      R5 = call(R5, 0 args, 10 rets)
  0043  JMP       (jump)   -> 78
  0044  JMP       (jump)   -> 78
  0045  SELF      R3 = R0[K21('Close')] (self)
  0046  CALL      R2 = call(R2, 0 args, 1 rets)
  0047  JMP       (jump)   -> 78
  0048  GETTABLE  R2 = R0[K22('m_bFailed')]
  0049  TEST      if not R2 then   -> -131021
  0050  JMP       (jump)   -> 60
  0051  SELF      R3 = R0[K21('Close')] (self)
  0052  CALL      R2 = call(R2, 0 args, 1 rets)
  0053  SELF      R3 = R0[K23('IsActivityValid')] (self)
  0054  CALL      R2 = call(R2, 1 args, 1 rets)
  0055  TEST      if not R2 then   -> -131015
  0056  JMP       (jump)   -> 78
  0057  SELF      R3 = R1[K24('OpenFailWindow')] (self)
  0058  CALL      R2 = call(R2, 0 args, 1 rets)
  0059  JMP       (jump)   -> 78
  0060  SELF      R3 = R0[K23('IsActivityValid')] (self)
  0061  CALL      R2 = call(R2, 1 args, 1 rets)
  0062  TEST      if not R2 then   -> -131007
  0063  JMP       (jump)   -> 67
  0064  SELF      R3 = R0[K21('Close')] (self)
  0065  CALL      R2 = call(R2, 0 args, 1 rets)
  0066  JMP       (jump)   -> 78
  0067  SELF      R3 = R0[K6('GetModel')] (self)
  0068  CALL      R2 = call(R2, 1 args, 1 rets)
  0069  SELF      R3 = R2[K25('NeedPopFailWindow')] (self)
  0070  CALL      R2 = call(R2, 1 args, 1 rets)
  0071  TEST      if not R2 then   -> -130999
  0072  JMP       (jump)   -> 76
  0073  SELF      R3 = R0[K21('Close')] (self)
  0074  CALL      R2 = call(R2, 0 args, 1 rets)
  0075  JMP       (jump)   -> 78
  0076  SELF      R3 = R1[K26('OnMainWindowAnimationEnd')] (self)
  0077  CALL      R2 = call(R2, 0 args, 1 rets)
  0078  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 469-471 np=0 va=0 ms=2 code=4 consts=1 upvals=1 protos=0
    ;   K[0]='SetClaimed'
    ;   upvals: selfTrack
    0000  GETUPVAL  R0 = selfTrack
    0001  SELF      R1 = R0[K0('SetClaimed')] (self)
    0002  CALL      R0 = call(R0, 0 args, 1 rets)
    0003  RETURN    return R0..R-1
; ---------- proto16 [OnBtnClicked] ----------
  ; fn ?  line 497-503 np=1 va=0 ms=4 code=17 consts=7 upvals=1 protos=0
  ;   K[0]='Close'
  ;   K[1]='GM'
  ;   K[2]='SceneManager'
  ;   K[3]='GetGameMode'
  ;   K[4]='EGameMode'
  ;   K[5]='Board'
  ;   K[6]='ChangeGameMode'
  ;   upvals: _ENV
  ;   locals: self(0-17)
  0000  SELF      R2 = R0[K0('Close')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  GETTABUP  R1 = _ENV[K1('GM')]
  0003  GETTABLE  R1 = R1[K2('SceneManager')]
  0004  SELF      R2 = R1[K3('GetGameMode')] (self)
  0005  CALL      R1 = call(R1, 1 args, 1 rets)
  0006  GETTABUP  R2 = _ENV[K4('EGameMode')]
  0007  GETTABLE  R2 = R2[K5('Board')]
  0008  EQ        if R1 eq R2   -> -130548
  0009  JMP       (jump)   -> 16
  0010  GETTABUP  R1 = _ENV[K1('GM')]
  0011  GETTABLE  R1 = R1[K2('SceneManager')]
  0012  SELF      R2 = R1[K6('ChangeGameMode')] (self)
  0013  GETTABUP  R3 = _ENV[K4('EGameMode')]
  0014  GETTABLE  R3 = R3[K5('Board')]
  0015  CALL      R1 = call(R1, 0 args, 2 rets)
  0016  RETURN    return R0..R-1
; ---------- proto17 [OnInfoBtnClick] ----------
  ; fn ?  line 506-508 np=1 va=0 ms=4 code=6 consts=2 upvals=0 protos=0
  ;   K[0]='GetModel'
  ;   K[1]='OpenInfoWindow'
  ;   locals: self(0-6)
  0000  SELF      R2 = R0[K0('GetModel')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  SELF      R2 = R1[K1('OpenInfoWindow')] (self)
  0003  LOADBOOL  R3 = false
  0004  CALL      R1 = call(R1, 0 args, 2 rets)
  0005  RETURN    return R0..R-1
; ---------- proto18 [ShowSelfTip] ----------
  ; fn ?  line 515-518 np=2 va=0 ms=4 code=6 consts=4 upvals=0 protos=0
  ;   K[0]='m_selfTipRectTransform'
  ;   K[1]='position'
  ;   K[2]='m_selfTip'
  ;   K[3]='Show'
  ;   locals: self(0-6), position(0-6)
  0000  GETTABLE  R2 = R0[K0('m_selfTipRectTransform')]
  0001  SETTABLE  R2[K1('position')] = R1
  0002  GETTABLE  R2 = R0[K2('m_selfTip')]
  0003  SELF      R3 = R2[K3('Show')] (self)
  0004  CALL      R2 = call(R2, 0 args, 1 rets)
  0005  RETURN    return R0..R-1
; ---------- proto19 [ShowRewardTip] ----------
  ; fn ?  line 522-526 np=3 va=0 ms=7 code=12 consts=8 upvals=1 protos=0
  ;   K[0]='m_rewardTipRectTransform'
  ;   K[1]='position'
  ;   K[2]='m_rewardTipContent'
  ;   K[3]='Init'
  ;   K[4]='ERewardScene'
  ;   K[5]='Other'
  ;   K[6]='m_rewardTip'
  ;   K[7]='Show'
  ;   upvals: _ENV
  ;   locals: self(0-12), position(0-12), rewards(0-12)
  0000  GETTABLE  R3 = R0[K0('m_rewardTipRectTransform')]
  0001  SETTABLE  R3[K1('position')] = R1
  0002  GETTABLE  R3 = R0[K2('m_rewardTipContent')]
  0003  SELF      R4 = R3[K3('Init')] (self)
  0004  MOVE      R5 = R0
  0005  GETTABUP  R6 = _ENV[K4('ERewardScene')]
  0006  GETTABLE  R6 = R6[K5('Other')]
  0007  CALL      R3 = call(R3, 0 args, 3 rets)
  0008  GETTABLE  R3 = R0[K6('m_rewardTip')]
  0009  SELF      R4 = R3[K7('Show')] (self)
  0010  CALL      R3 = call(R3, 0 args, 1 rets)
  0011  RETURN    return R0..R-1
; ---------- proto20 [GetMyselfTrackTransform] ----------
  ; fn ?  line 533-535 np=1 va=0 ms=2 code=4 consts=2 upvals=0 protos=0
  ;   K[0]='m_myselfTrack'
  ;   K[1]='transform'
  ;   locals: self(0-4)
  0000  GETTABLE  R1 = R0[K0('m_myselfTrack')]
  0001  GETTABLE  R1 = R1[K1('transform')]
  0002  RETURN    return R1..R0
  0003  RETURN    return R0..R-1
; ---------- proto21 [GetMiddleTransform] ----------
  ; fn ?  line 538-540 np=1 va=0 ms=2 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='m_middleRectTrans'
  ;   locals: self(0-3)
  0000  GETTABLE  R1 = R0[K0('m_middleRectTrans')]
  0001  RETURN    return R1..R0
  0002  RETURN    return R0..R-1
; ---------- proto22 [GetRoundStandTransform] ----------
  ; fn ?  line 543-545 np=1 va=0 ms=2 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='m_roundStandRectTransform'
  ;   locals: self(0-3)
  0000  GETTABLE  R1 = R0[K0('m_roundStandRectTransform')]
  0001  RETURN    return R1..R0
  0002  RETURN    return R0..R-1
; ---------- proto23 [_TestOpenEntryWindow] ----------
  ; fn ?  line 551-562 np=1 va=0 ms=4 code=27 consts=10 upvals=1 protos=0
  ;   K[0]='GameConfig'
  ;   K[1]='IsTestMode'
  ;   K[2]='Close'
  ;   K[3]='GetModel'
  ;   K[4]='GetState'
  ;   K[5]='ActivityState'
  ;   K[6]='Started'
  ;   K[7]='HasFinishedAllRounds'
  ;   K[8]='IsDeadline'
  ;   K[9]='OpenCurrentRoundEntryWindow'
  ;   upvals: _ENV
  ;   locals: self(0-27), model(10-27)
  0000  GETTABUP  R1 = _ENV[K0('GameConfig')]
  0001  GETTABLE  R1 = R1[K1('IsTestMode')]
  0002  CALL      R1 = call(R1, 1 args, 0 rets)
  0003  TEST      if not R1 then   -> -131066
  0004  JMP       (jump)   -> 6
  0005  RETURN    return R0..R-1
  0006  SELF      R2 = R0[K2('Close')] (self)
  0007  CALL      R1 = call(R1, 0 args, 1 rets)
  0008  SELF      R2 = R0[K3('GetModel')] (self)
  0009  CALL      R1 = call(R1, 1 args, 1 rets)
  0010  SELF      R3 = R1[K4('GetState')] (self)
  0011  CALL      R2 = call(R2, 1 args, 1 rets)
  0012  GETTABUP  R3 = _ENV[K5('ActivityState')]
  0013  GETTABLE  R3 = R3[K6('Started')]
  0014  EQ        if R0 eq R3   -> -130029
  0015  JMP       (jump)   -> 26
  0016  SELF      R3 = R1[K7('HasFinishedAllRounds')] (self)
  0017  CALL      R2 = call(R2, 1 args, 1 rets)
  0018  TEST      if not R2 then   -> -131051
  0019  JMP       (jump)   -> 26
  0020  SELF      R3 = R1[K8('IsDeadline')] (self)
  0021  CALL      R2 = call(R2, 1 args, 1 rets)
  0022  TEST      if not R2 then   -> -131047
  0023  JMP       (jump)   -> 26
  0024  SELF      R3 = R1[K9('OpenCurrentRoundEntryWindow')] (self)
  0025  CALL      R2 = call(R2, 0 args, 1 rets)
  0026  RETURN    return R0..R-1
; ---------- proto24 [TestFinishRoundSmall] ----------
  ; fn ?  line 565-576 np=1 va=0 ms=3 code=18 consts=6 upvals=1 protos=0
  ;   K[0]='GameConfig'
  ;   K[1]='IsTestMode'
  ;   K[2]='IsActivityValid'
  ;   K[3]='GetModel'
  ;   K[4]='TestFinishRoundSmall'
  ;   K[5]='_TestOpenEntryWindow'
  ;   upvals: _ENV
  ;   locals: self(0-18)
  0000  GETTABUP  R1 = _ENV[K0('GameConfig')]
  0001  GETTABLE  R1 = R1[K1('IsTestMode')]
  0002  CALL      R1 = call(R1, 1 args, 0 rets)
  0003  TEST      if not R1 then   -> -131066
  0004  JMP       (jump)   -> 6
  0005  RETURN    return R0..R-1
  0006  SELF      R2 = R0[K2('IsActivityValid')] (self)
  0007  CALL      R1 = call(R1, 1 args, 1 rets)
  0008  TEST      if not R1 then   -> -131061
  0009  JMP       (jump)   -> 11
  0010  RETURN    return R0..R-1
  0011  SELF      R2 = R0[K3('GetModel')] (self)
  0012  CALL      R1 = call(R1, 1 args, 1 rets)
  0013  SELF      R2 = R1[K4('TestFinishRoundSmall')] (self)
  0014  CALL      R1 = call(R1, 0 args, 1 rets)
  0015  SELF      R2 = R0[K5('_TestOpenEntryWindow')] (self)
  0016  CALL      R1 = call(R1, 0 args, 1 rets)
  0017  RETURN    return R0..R-1
; ---------- proto25 [TestFinishRoundLarge] ----------
  ; fn ?  line 579-590 np=1 va=0 ms=3 code=18 consts=6 upvals=1 protos=0
  ;   K[0]='GameConfig'
  ;   K[1]='IsTestMode'
  ;   K[2]='IsActivityValid'
  ;   K[3]='GetModel'
  ;   K[4]='TestFinishRoundLarge'
  ;   K[5]='_TestOpenEntryWindow'
  ;   upvals: _ENV
  ;   locals: self(0-18)
  0000  GETTABUP  R1 = _ENV[K0('GameConfig')]
  0001  GETTABLE  R1 = R1[K1('IsTestMode')]
  0002  CALL      R1 = call(R1, 1 args, 0 rets)
  0003  TEST      if not R1 then   -> -131066
  0004  JMP       (jump)   -> 6
  0005  RETURN    return R0..R-1
  0006  SELF      R2 = R0[K2('IsActivityValid')] (self)
  0007  CALL      R1 = call(R1, 1 args, 1 rets)
  0008  TEST      if not R1 then   -> -131061
  0009  JMP       (jump)   -> 11
  0010  RETURN    return R0..R-1
  0011  SELF      R2 = R0[K3('GetModel')] (self)
  0012  CALL      R1 = call(R1, 1 args, 1 rets)
  0013  SELF      R2 = R1[K4('TestFinishRoundLarge')] (self)
  0014  CALL      R1 = call(R1, 0 args, 1 rets)
  0015  SELF      R2 = R0[K5('_TestOpenEntryWindow')] (self)
  0016  CALL      R1 = call(R1, 0 args, 1 rets)
  0017  RETURN    return R0..R-1
; ---------- proto26 [TestGotoLastRound] ----------
  ; fn ?  line 593-604 np=1 va=0 ms=3 code=18 consts=6 upvals=1 protos=0
  ;   K[0]='GameConfig'
  ;   K[1]='IsTestMode'
  ;   K[2]='IsActivityValid'
  ;   K[3]='GetModel'
  ;   K[4]='TestGotoLastRound'
  ;   K[5]='_TestOpenEntryWindow'
  ;   upvals: _ENV
  ;   locals: self(0-18)
  0000  GETTABUP  R1 = _ENV[K0('GameConfig')]
  0001  GETTABLE  R1 = R1[K1('IsTestMode')]
  0002  CALL      R1 = call(R1, 1 args, 0 rets)
  0003  TEST      if not R1 then   -> -131066
  0004  JMP       (jump)   -> 6
  0005  RETURN    return R0..R-1
  0006  SELF      R2 = R0[K2('IsActivityValid')] (self)
  0007  CALL      R1 = call(R1, 1 args, 1 rets)
  0008  TEST      if not R1 then   -> -131061
  0009  JMP       (jump)   -> 11
  0010  RETURN    return R0..R-1
  0011  SELF      R2 = R0[K3('GetModel')] (self)
  0012  CALL      R1 = call(R1, 1 args, 1 rets)
  0013  SELF      R2 = R1[K4('TestGotoLastRound')] (self)
  0014  CALL      R1 = call(R1, 0 args, 1 rets)
  0015  SELF      R2 = R0[K5('_TestOpenEntryWindow')] (self)
  0016  CALL      R1 = call(R1, 0 args, 1 rets)
  0017  RETURN    return R0..R-1
; ---------- proto27 [TestFinishWithRobot] ----------
  ; fn ?  line 607-618 np=1 va=0 ms=3 code=18 consts=6 upvals=1 protos=0
  ;   K[0]='GameConfig'
  ;   K[1]='IsTestMode'
  ;   K[2]='IsActivityValid'
  ;   K[3]='GetModel'
  ;   K[4]='TestFinishWithRobot'
  ;   K[5]='Close'
  ;   upvals: _ENV
  ;   locals: self(0-18)
  0000  GETTABUP  R1 = _ENV[K0('GameConfig')]
  0001  GETTABLE  R1 = R1[K1('IsTestMode')]
  0002  CALL      R1 = call(R1, 1 args, 0 rets)
  0003  TEST      if not R1 then   -> -131066
  0004  JMP       (jump)   -> 6
  0005  RETURN    return R0..R-1
  0006  SELF      R2 = R0[K2('IsActivityValid')] (self)
  0007  CALL      R1 = call(R1, 1 args, 1 rets)
  0008  TEST      if not R1 then   -> -131061
  0009  JMP       (jump)   -> 11
  0010  RETURN    return R0..R-1
  0011  SELF      R2 = R0[K3('GetModel')] (self)
  0012  CALL      R1 = call(R1, 1 args, 1 rets)
  0013  SELF      R2 = R1[K4('TestFinishWithRobot')] (self)
  0014  CALL      R1 = call(R1, 0 args, 1 rets)
  0015  SELF      R2 = R0[K5('Close')] (self)
  0016  CALL      R1 = call(R1, 0 args, 1 rets)
  0017  RETURN    return R0..R-1
