# UpgradeRace_View_UpgradeRaceActivityTrack_1586.luac
; fn @UpgradeRaceActivityTrack.lua  line 0-0 np=0 va=1 ms=5 code=72 consts=30 upvals=1 protos=20
;   K[0]='UpgradeRaceActivityTrack'
;   K[1]='__index'
;   K[2]=-184
;   K[3]=300
;   K[4]='Drop'
;   K[5]='drop'
;   K[6]='Idle'
;   K[7]='idle'
;   K[8]='Move'
;   K[9]='go'
;   K[10]='Init'
;   K[11]='OnDestroy'
;   K[12]='_InitView'
;   K[13]='_IsFinished'
;   K[14]='_InitRankGo'
;   K[15]='_InitSpine'
;   K[16]='_UpdateProgress'
;   K[17]='GetAnimationTime'
;   K[18]='_PlayAnimation'
;   K[19]='_PlayAnimationLoop'
;   K[20]='_GetOffset'
;   K[21]='PlayEnterAnimation'
;   K[22]='PlayProgressAnimation'
;   K[23]='PlayRewardBoxAnimation'
;   K[24]='ShowRewardBoxImmediately'
;   K[25]='GetRewardBoxTrans'
;   K[26]='SetClaimed'
;   K[27]='OnBoatBtnClicked'
;   K[28]='OnClaimedRewardBtnClicked'
;   K[29]='OnRewardBtnClicked'
;   upvals: _ENV
;   locals: CLAIMED_ROOT_POS_X(6-72), OFFSET_SCREEN_BORDER(7-72), EAnimationKey(11-72)
0000  NEWTABLE  R0 = {} (0 items)
0001  SETTABUP  _ENV[K0('UpgradeRaceActivityTrack')] = R0
0002  GETTABUP  R0 = _ENV[K0('UpgradeRaceActivityTrack')]
0003  GETTABUP  R1 = _ENV[K0('UpgradeRaceActivityTrack')]
0004  SETTABLE  R0[K1('__index')] = R1
0005  LOADK     R0 = K2 -184
0006  LOADK     R1 = K3 300
0007  NEWTABLE  R2 = {} (0 items)
0008  SETTABLE  R2[K4('Drop')] = K5('drop')
0009  SETTABLE  R2[K6('Idle')] = K7('idle')
0010  SETTABLE  R2[K8('Move')] = K9('go')
0011  GETTABUP  R3 = _ENV[K0('UpgradeRaceActivityTrack')]
0012  CLOSURE   R4 = closure proto0
0013  SETTABLE  R3[K10('Init')] = R4
0014  GETTABUP  R3 = _ENV[K0('UpgradeRaceActivityTrack')]
0015  CLOSURE   R4 = closure proto1
0016  SETTABLE  R3[K11('OnDestroy')] = R4
0017  GETTABUP  R3 = _ENV[K0('UpgradeRaceActivityTrack')]
0018  CLOSURE   R4 = closure proto2
0019  SETTABLE  R3[K12('_InitView')] = R4
0020  GETTABUP  R3 = _ENV[K0('UpgradeRaceActivityTrack')]
0021  CLOSURE   R4 = closure proto3
0022  SETTABLE  R3[K13('_IsFinished')] = R4
0023  GETTABUP  R3 = _ENV[K0('UpgradeRaceActivityTrack')]
0024  CLOSURE   R4 = closure proto4
0025  SETTABLE  R3[K14('_InitRankGo')] = R4
0026  GETTABUP  R3 = _ENV[K0('UpgradeRaceActivityTrack')]
0027  CLOSURE   R4 = closure proto5
0028  SETTABLE  R3[K15('_InitSpine')] = R4
0029  GETTABUP  R3 = _ENV[K0('UpgradeRaceActivityTrack')]
0030  CLOSURE   R4 = closure proto6
0031  SETTABLE  R3[K16('_UpdateProgress')] = R4
0032  GETTABUP  R3 = _ENV[K0('UpgradeRaceActivityTrack')]
0033  CLOSURE   R4 = closure proto7
0034  SETTABLE  R3[K17('GetAnimationTime')] = R4
0035  GETTABUP  R3 = _ENV[K0('UpgradeRaceActivityTrack')]
0036  CLOSURE   R4 = closure proto8
0037  SETTABLE  R3[K18('_PlayAnimation')] = R4
0038  GETTABUP  R3 = _ENV[K0('UpgradeRaceActivityTrack')]
0039  CLOSURE   R4 = closure proto9
0040  SETTABLE  R3[K19('_PlayAnimationLoop')] = R4
0041  GETTABUP  R3 = _ENV[K0('UpgradeRaceActivityTrack')]
0042  CLOSURE   R4 = closure proto10
0043  SETTABLE  R3[K20('_GetOffset')] = R4
0044  GETTABUP  R3 = _ENV[K0('UpgradeRaceActivityTrack')]
0045  CLOSURE   R4 = closure proto11
0046  SETTABLE  R3[K21('PlayEnterAnimation')] = R4
0047  GETTABUP  R3 = _ENV[K0('UpgradeRaceActivityTrack')]
0048  CLOSURE   R4 = closure proto12
0049  SETTABLE  R3[K22('PlayProgressAnimation')] = R4
0050  GETTABUP  R3 = _ENV[K0('UpgradeRaceActivityTrack')]
0051  CLOSURE   R4 = closure proto13
0052  SETTABLE  R3[K23('PlayRewardBoxAnimation')] = R4
0053  GETTABUP  R3 = _ENV[K0('UpgradeRaceActivityTrack')]
0054  CLOSURE   R4 = closure proto14
0055  SETTABLE  R3[K24('ShowRewardBoxImmediately')] = R4
0056  GETTABUP  R3 = _ENV[K0('UpgradeRaceActivityTrack')]
0057  CLOSURE   R4 = closure proto15
0058  SETTABLE  R3[K25('GetRewardBoxTrans')] = R4
0059  GETTABUP  R3 = _ENV[K0('UpgradeRaceActivityTrack')]
0060  CLOSURE   R4 = closure proto16
0061  SETTABLE  R3[K26('SetClaimed')] = R4
0062  GETTABUP  R3 = _ENV[K0('UpgradeRaceActivityTrack')]
0063  CLOSURE   R4 = closure proto17
0064  SETTABLE  R3[K27('OnBoatBtnClicked')] = R4
0065  GETTABUP  R3 = _ENV[K0('UpgradeRaceActivityTrack')]
0066  CLOSURE   R4 = closure proto18
0067  SETTABLE  R3[K28('OnClaimedRewardBtnClicked')] = R4
0068  GETTABUP  R3 = _ENV[K0('UpgradeRaceActivityTrack')]
0069  CLOSURE   R4 = closure proto19
0070  SETTABLE  R3[K29('OnRewardBtnClicked')] = R4
0071  RETURN    return R0..R-1
; ---------- proto0 [Init] ----------
  ; fn ?  line 78-94 np=14 va=0 ms=16 code=16 consts=14 upvals=0 protos=0
  ;   K[0]='m_window'
  ;   K[1]='m_roundDefinitionIndex'
  ;   K[2]='m_lastScore'
  ;   K[3]='m_score'
  ;   K[4]='m_targetScore'
  ;   K[5]='m_rank'
  ;   K[6]='m_userName'
  ;   K[7]='m_icon'
  ;   K[8]='m_badge'
  ;   K[9]='m_frame'
  ;   K[10]='m_bIsMySelf'
  ;   K[11]='m_rewards'
  ;   K[12]='m_successPlayerNumber'
  ;   K[13]='_InitView'
  ;   locals: self(0-16), window(0-16), roundDefinitionIndex(0-16), lastScore(0-16), score(0-16), targetScore(0-16), rank(0-16), userName(0-16), icon(0-16), badge(0-16), frame(0-16), bIsMySelf(0-16), rewards(0-16), successPlayerNumber(0-16)
  0000  SETTABLE  R0[K0('m_window')] = R1
  0001  SETTABLE  R0[K1('m_roundDefinitionIndex')] = R2
  0002  SETTABLE  R0[K2('m_lastScore')] = R3
  0003  SETTABLE  R0[K3('m_score')] = R4
  0004  SETTABLE  R0[K4('m_targetScore')] = R5
  0005  SETTABLE  R0[K5('m_rank')] = R6
  0006  SETTABLE  R0[K6('m_userName')] = R7
  0007  SETTABLE  R0[K7('m_icon')] = R8
  0008  SETTABLE  R0[K8('m_badge')] = R9
  0009  SETTABLE  R0[K9('m_frame')] = R10
  0010  SETTABLE  R0[K10('m_bIsMySelf')] = R11
  0011  SETTABLE  R0[K11('m_rewards')] = R12
  0012  SETTABLE  R0[K12('m_successPlayerNumber')] = R13
  0013  SELF      R15 = R0[K13('_InitView')] (self)
  0014  CALL      R14 = call(R14, 0 args, 1 rets)
  0015  RETURN    return R0..R-1
; ---------- proto1 [OnDestroy] ----------
  ; fn ?  line 96-98 np=1 va=0 ms=3 code=5 consts=2 upvals=1 protos=0
  ;   K[0]='Scheduler'
  ;   K[1]='UnscheduleTarget'
  ;   upvals: _ENV
  ;   locals: self(0-5)
  0000  GETTABUP  R1 = _ENV[K0('Scheduler')]
  0001  GETTABLE  R1 = R1[K1('UnscheduleTarget')]
  0002  MOVE      R2 = R0
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  RETURN    return R0..R-1
; ---------- proto2 [_InitView] ----------
  ; fn ?  line 100-121 np=1 va=0 ms=9 code=76 consts=35 upvals=3 protos=0
  ;   K[0]='_UpdateProgress'
  ;   K[1]='math'
  ;   K[2]='min'
  ;   K[3]='m_lastScore'
  ;   K[4]='m_score'
  ;   K[5]='m_nameText'
  ;   K[6]='text'
  ;   K[7]='m_userName'
  ;   K[8]='m_bIsMySelf'
  ;   K[9]='EAvatarFrame'
  ;   K[10]='Highlight'
  ;   K[11]='Normal'
  ;   K[12]='m_userAvatar'
  ;   K[13]='SetAvatar'
  ;   K[14]='m_icon'
  ;   K[15]='m_badge'
  ;   K[16]='m_frame'
  ;   K[17]='UIUtil'
  ;   K[18]='SetActive'
  ;   K[19]='m_claimedGo'
  ;   K[20]='m_rewardBoxGo'
  ;   K[21]='m_targetScore'
  ;   K[22]='m_rank'
  ;   K[23]='m_successPlayerNumber'
  ;   K[24]='m_boatRootGo'
  ;   K[25]='SetAnchoredPosition'
  ;   K[26]='m_claimedRoot'
  ;   K[27]='_InitRankGo'
  ;   K[28]='m_claimedBox%dGo'
  ;   K[29]='m_claimedMedal%dGo'
  ;   K[30]='m_rewardBox%dGo'
  ;   K[31]='_InitSpine'
  ;   K[32]='m_boat%dSkeletonDataAsset'
  ;   K[33]='_PlayAnimationLoop'
  ;   K[34]='Idle'
  ;   upvals: _ENV, CLAIMED_ROOT_POS_X, EAnimationKey
  ;   locals: self(0-76), frame(19-76)
  0000  SELF      R2 = R0[K0('_UpdateProgress')] (self)
  0001  GETTABUP  R3 = _ENV[K1('math')]
  0002  GETTABLE  R3 = R3[K2('min')]
  0003  GETTABLE  R4 = R0[K3('m_lastScore')]
  0004  GETTABLE  R5 = R0[K4('m_score')]
  0005  CALL      R3 = call(R3, -1 args, 2 rets)
  0006  CALL      R1 = call(R1, 0 args, -1 rets)
  0007  GETTABLE  R1 = R0[K5('m_nameText')]
  0008  GETTABLE  R2 = R0[K7('m_userName')]
  0009  SETTABLE  R1[K6('text')] = R2
  0010  GETTABLE  R1 = R0[K8('m_bIsMySelf')]
  0011  TEST      if not R1 then   -> -131059
  0012  JMP       (jump)   -> 17
  0013  GETTABUP  R1 = _ENV[K9('EAvatarFrame')]
  0014  GETTABLE  R1 = R1[K10('Highlight')]
  0015  TEST      if not R1 then   -> -131054
  0016  JMP       (jump)   -> 19
  0017  GETTABUP  R1 = _ENV[K9('EAvatarFrame')]
  0018  GETTABLE  R1 = R1[K11('Normal')]
  0019  GETTABLE  R2 = R0[K12('m_userAvatar')]
  0020  SELF      R3 = R2[K13('SetAvatar')] (self)
  0021  MOVE      R4 = R0
  0022  GETTABLE  R5 = R0[K14('m_icon')]
  0023  GETTABLE  R6 = R0[K15('m_badge')]
  0024  GETTABLE  R7 = R0[K16('m_frame')]
  0025  GETTABLE  R8 = R0[K8('m_bIsMySelf')]
  0026  CALL      R2 = call(R2, 0 args, 6 rets)
  0027  GETTABUP  R2 = _ENV[K17('UIUtil')]
  0028  GETTABLE  R2 = R2[K18('SetActive')]
  0029  GETTABLE  R3 = R0[K19('m_claimedGo')]
  0030  LOADBOOL  R4 = false
  0031  CALL      R2 = call(R2, 0 args, 2 rets)
  0032  GETTABUP  R2 = _ENV[K17('UIUtil')]
  0033  GETTABLE  R2 = R2[K18('SetActive')]
  0034  GETTABLE  R3 = R0[K20('m_rewardBoxGo')]
  0035  LOADBOOL  R4 = false
  0036  CALL      R2 = call(R2, 0 args, 2 rets)
  0037  GETTABLE  R2 = R0[K3('m_lastScore')]
  0038  GETTABLE  R3 = R0[K21('m_targetScore')]
  0039  LE        if R0 le R2   -> -129493
  0040  JMP       (jump)   -> 60
  0041  GETTABLE  R2 = R0[K22('m_rank')]
  0042  GETTABLE  R3 = R0[K23('m_successPlayerNumber')]
  0043  LE        if R0 le R3   -> -130000
  0044  JMP       (jump)   -> 60
  0045  GETTABUP  R2 = _ENV[K17('UIUtil')]
  0046  GETTABLE  R2 = R2[K18('SetActive')]
  0047  GETTABLE  R3 = R0[K19('m_claimedGo')]
  0048  LOADBOOL  R4 = true
  0049  CALL      R2 = call(R2, 0 args, 2 rets)
  0050  GETTABUP  R2 = _ENV[K17('UIUtil')]
  0051  GETTABLE  R2 = R2[K18('SetActive')]
  0052  GETTABLE  R3 = R0[K24('m_boatRootGo')]
  0053  LOADBOOL  R4 = false
  0054  CALL      R2 = call(R2, 0 args, 2 rets)
  0055  GETTABUP  R2 = _ENV[K17('UIUtil')]
  0056  GETTABLE  R2 = R2[K25('SetAnchoredPosition')]
  0057  GETTABLE  R3 = R0[K26('m_claimedRoot')]
  0058  GETUPVAL  R4 = _ENV
  0059  CALL      R2 = call(R2, 0 args, 2 rets)
  0060  SELF      R3 = R0[K27('_InitRankGo')] (self)
  0061  LOADK     R4 = K28 'm_claimedBox%dGo'
  0062  CALL      R2 = call(R2, 0 args, 2 rets)
  0063  SELF      R3 = R0[K27('_InitRankGo')] (self)
  0064  LOADK     R4 = K29 'm_claimedMedal%dGo'
  0065  CALL      R2 = call(R2, 0 args, 2 rets)
  0066  SELF      R3 = R0[K27('_InitRankGo')] (self)
  0067  LOADK     R4 = K30 'm_rewardBox%dGo'
  0068  CALL      R2 = call(R2, 0 args, 2 rets)
  0069  SELF      R3 = R0[K31('_InitSpine')] (self)
  0070  LOADK     R4 = K32 'm_boat%dSkeletonDataAsset'
  0071  CALL      R2 = call(R2, 0 args, 2 rets)
  0072  SELF      R3 = R0[K33('_PlayAnimationLoop')] (self)
  0073  GETTABUP  R4 = EAnimationKey[K34('Idle')]
  0074  CALL      R2 = call(R2, 0 args, 2 rets)
  0075  RETURN    return R0..R-1
; ---------- proto3 [_IsFinished] ----------
  ; fn ?  line 123-125 np=1 va=0 ms=3 code=8 consts=2 upvals=0 protos=0
  ;   K[0]='m_score'
  ;   K[1]='m_targetScore'
  ;   locals: self(0-8)
  0000  GETTABLE  R1 = R0[K0('m_score')]
  0001  GETTABLE  R2 = R0[K1('m_targetScore')]
  0002  LE        if R1 le R1   -> -130043
  0003  JMP       (jump)   -> 5
  0004  LOADBOOL  R1 = false
  0005  LOADBOOL  R1 = true
  0006  RETURN    return R1..R0
  0007  RETURN    return R0..R-1
; ---------- proto4 [_InitRankGo] ----------
  ; fn ?  line 128-137 np=2 va=0 ms=8 code=36 consts=12 upvals=1 protos=0
  ;   K[0]='string'
  ;   K[1]='format'
  ;   K[2]='m_rank'
  ;   K[3]='UIUtil'
  ;   K[4]='IsEmptyComponent'
  ;   K[5]='GameConfig'
  ;   K[6]='IsTestMode'
  ;   K[7]='m_successPlayerNumber'
  ;   K[8]='Log'
  ;   K[9]='Error'
  ;   K[10]='[晋级小组赛] 缺少对应名次的UI显示：%s，名次：%d'
  ;   K[11]='SetActive'
  ;   upvals: _ENV
  ;   locals: self(0-36), key(0-36), field(5-36)
  0000  GETTABUP  R2 = _ENV[K0('string')]
  0001  GETTABLE  R2 = R2[K1('format')]
  0002  MOVE      R3 = R0
  0003  GETTABLE  R4 = R0[K2('m_rank')]
  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)   -> 30
  0011  GETTABUP  R3 = _ENV[K5('GameConfig')]
  0012  GETTABLE  R3 = R3[K6('IsTestMode')]
  0013  CALL      R3 = call(R3, 1 args, 0 rets)
  0014  TEST      if not R3 then   -> -131056
  0015  JMP       (jump)   -> 29
  0016  GETTABLE  R3 = R0[K2('m_rank')]
  0017  GETTABLE  R4 = R0[K7('m_successPlayerNumber')]
  0018  LE        if R0 le R4   -> -129512
  0019  JMP       (jump)   -> 29
  0020  GETTABUP  R3 = _ENV[K8('Log')]
  0021  GETTABLE  R3 = R3[K9('Error')]
  0022  GETTABUP  R4 = _ENV[K0('string')]
  0023  GETTABLE  R4 = R4[K1('format')]
  0024  LOADK     R5 = K10 '[晋级小组赛] 缺少对应名次的UI显示：%s，名次：%d'
  0025  MOVE      R6 = R0
  0026  GETTABLE  R7 = R0[K2('m_rank')]
  0027  CALL      R4 = call(R4, -1 args, 3 rets)
  0028  CALL      R3 = call(R3, 0 args, -1 rets)
  0029  RETURN    return R0..R-1
  0030  GETTABUP  R3 = _ENV[K3('UIUtil')]
  0031  GETTABLE  R3 = R3[K11('SetActive')]
  0032  GETTABLE  R4 = R0[R2]
  0033  LOADBOOL  R5 = true
  0034  CALL      R3 = call(R3, 0 args, 2 rets)
  0035  RETURN    return R0..R-1
; ---------- proto5 [_InitSpine] ----------
  ; fn ?  line 140-147 np=2 va=0 ms=6 code=26 consts=8 upvals=1 protos=0
  ;   K[0]='string'
  ;   K[1]='format'
  ;   K[2]='m_roundDefinitionIndex'
  ;   K[3]=nil
  ;   K[4]='IsNull'
  ;   K[5]='m_boatSpine'
  ;   K[6]='skeletonDataAsset'
  ;   K[7]='Initialize'
  ;   upvals: _ENV
  ;   locals: self(0-26), key(0-26), field(5-26)
  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  GETTABLE  R3 = R0[R2]
  0006  EQ        if R1 eq K3(nil)   -> -129269
  0007  JMP       (jump)   -> 17
  0008  GETTABLE  R3 = R0[R2]
  0009  GETTABLE  R3 = R3[K4('IsNull')]
  0010  TEST      if not R3 then   -> -131060
  0011  JMP       (jump)   -> 17
  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   -> -131055
  0016  JMP       (jump)   -> 18
  0017  RETURN    return R0..R-1
  0018  GETTABLE  R3 = R0[K5('m_boatSpine')]
  0019  GETTABLE  R4 = R0[R2]
  0020  SETTABLE  R3[K6('skeletonDataAsset')] = R4
  0021  GETTABLE  R3 = R0[K5('m_boatSpine')]
  0022  SELF      R4 = R3[K7('Initialize')] (self)
  0023  LOADBOOL  R5 = true
  0024  CALL      R3 = call(R3, 0 args, 2 rets)
  0025  RETURN    return R0..R-1
; ---------- proto6 [_UpdateProgress] ----------
  ; fn ?  line 150-153 np=2 va=0 ms=6 code=15 consts=10 upvals=1 protos=0
  ;   K[0]='UIUtil'
  ;   K[1]='SetAnchorMax'
  ;   K[2]='m_trackProgressRectTransform'
  ;   K[3]='m_targetScore'
  ;   K[4]='m_scoreText'
  ;   K[5]='text'
  ;   K[6]='tostring'
  ;   K[7]='math'
  ;   K[8]='floor'
  ;   K[9]=0.5
  ;   upvals: _ENV
  ;   locals: self(0-15), score(0-15)
  0000  GETTABUP  R2 = _ENV[K0('UIUtil')]
  0001  GETTABLE  R2 = R2[K1('SetAnchorMax')]
  0002  GETTABLE  R3 = R0[K2('m_trackProgressRectTransform')]
  0003  GETTABLE  R4 = R0[K3('m_targetScore')]
  0004  DIV       R4 = R4 div R1
  0005  CALL      R2 = call(R2, 0 args, 2 rets)
  0006  GETTABLE  R2 = R0[K4('m_scoreText')]
  0007  GETTABUP  R3 = _ENV[K6('tostring')]
  0008  GETTABUP  R4 = _ENV[K7('math')]
  0009  GETTABLE  R4 = R4[K8('floor')]
  0010  ADD       R5 = K9(0.5) add R1
  0011  CALL      R4 = call(R4, -1 args, 1 rets)
  0012  CALL      R3 = call(R3, 1 args, -1 rets)
  0013  SETTABLE  R2[K5('text')] = R3
  0014  RETURN    return R0..R-1
; ---------- proto7 [GetAnimationTime] ----------
  ; fn ?  line 156-163 np=2 va=0 ms=6 code=12 consts=6 upvals=0 protos=0
  ;   K[0]='m_boatSpine'
  ;   K[1]='SkeletonData'
  ;   K[2]='FindAnimation'
  ;   K[3]=nil
  ;   K[4]=0
  ;   K[5]='Duration'
  ;   locals: self(0-12), animationName(0-12), skeletonData(2-12), animation(5-12)
  0000  GETTABLE  R2 = R0[K0('m_boatSpine')]
  0001  GETTABLE  R2 = R2[K1('SkeletonData')]
  0002  SELF      R4 = R2[K2('FindAnimation')] (self)
  0003  MOVE      R5 = R0
  0004  CALL      R3 = call(R3, 1 args, 2 rets)
  0005  EQ        if R0 eq K3(nil)   -> -129270
  0006  JMP       (jump)   -> 9
  0007  LOADK     R4 = K4 0
  0008  RETURN    return R4..R3
  0009  GETTABLE  R4 = R3[K5('Duration')]
  0010  RETURN    return R4..R3
  0011  RETURN    return R0..R-1
; ---------- proto8 [_PlayAnimation] ----------
  ; fn ?  line 165-169 np=3 va=0 ms=9 code=16 consts=5 upvals=0 protos=0
  ;   K[0]='m_boatSpine'
  ;   K[1]='AnimationState'
  ;   K[2]='SetAnimation'
  ;   K[3]=0
  ;   K[4]='AddAnimation'
  ;   locals: self(0-16), animationKey(0-16), animationKeyLoop(0-16)
  0000  GETTABLE  R3 = R0[K0('m_boatSpine')]
  0001  GETTABLE  R3 = R3[K1('AnimationState')]
  0002  SELF      R4 = R3[K2('SetAnimation')] (self)
  0003  LOADK     R5 = K3 0
  0004  MOVE      R6 = R0
  0005  LOADBOOL  R7 = false
  0006  CALL      R3 = call(R3, 0 args, 4 rets)
  0007  GETTABLE  R3 = R0[K0('m_boatSpine')]
  0008  GETTABLE  R3 = R3[K1('AnimationState')]
  0009  SELF      R4 = R3[K4('AddAnimation')] (self)
  0010  LOADK     R5 = K3 0
  0011  MOVE      R6 = R0
  0012  LOADBOOL  R7 = true
  0013  LOADK     R8 = K3 0
  0014  CALL      R3 = call(R3, 0 args, 5 rets)
  0015  RETURN    return R0..R-1
; ---------- proto9 [_PlayAnimationLoop] ----------
  ; fn ?  line 171-174 np=2 va=0 ms=7 code=8 consts=4 upvals=0 protos=0
  ;   K[0]='m_boatSpine'
  ;   K[1]='AnimationState'
  ;   K[2]='SetAnimation'
  ;   K[3]=0
  ;   locals: self(0-8), animationKey(0-8)
  0000  GETTABLE  R2 = R0[K0('m_boatSpine')]
  0001  GETTABLE  R2 = R2[K1('AnimationState')]
  0002  SELF      R3 = R2[K2('SetAnimation')] (self)
  0003  LOADK     R4 = K3 0
  0004  MOVE      R5 = R0
  0005  LOADBOOL  R6 = true
  0006  CALL      R2 = call(R2, 0 args, 4 rets)
  0007  RETURN    return R0..R-1
; ---------- proto10 [_GetOffset] ----------
  ; fn ?  line 176-180 np=1 va=0 ms=4 code=9 consts=5 upvals=0 protos=0
  ;   K[0]='m_trackProgressRectTransform'
  ;   K[1]='parent'
  ;   K[2]='offsetMin'
  ;   K[3]='x'
  ;   K[4]='offsetMax'
  ;   locals: self(0-9), rectTransform(2-9)
  0000  GETTABLE  R1 = R0[K0('m_trackProgressRectTransform')]
  0001  GETTABLE  R1 = R1[K1('parent')]
  0002  GETTABLE  R2 = R1[K2('offsetMin')]
  0003  GETTABLE  R2 = R2[K3('x')]
  0004  GETTABLE  R3 = R1[K4('offsetMax')]
  0005  GETTABLE  R3 = R3[K3('x')]
  0006  UNM       R3 = unm R0
  0007  RETURN    return R2..R1
  0008  RETURN    return R0..R-1
; ---------- proto11 [PlayEnterAnimation] ----------
  ; fn ?  line 182-226 np=1 va=0 ms=12 code=106 consts=40 upvals=2 protos=2
  ;   K[0]='m_userAvatarRectTransform'
  ;   K[1]='anchoredPosition'
  ;   K[2]='x'
  ;   K[3]='UIUtil'
  ;   K[4]='SetAnchoredPosition'
  ;   K[5]=50
  ;   K[6]='m_userAvatarCanvasGroup'
  ;   K[7]='alpha'
  ;   K[8]=0
  ;   K[9]='m_nameRectTransform'
  ;   K[10]='_PlayAnimationLoop'
  ;   K[11]='Move'
  ;   K[12]='m_nameCanvasGroup'
  ;   K[13]='m_scoreRoot'
  ;   K[14]='localScale'
  ;   K[15]='SetLocalScale'
  ;   K[16]='DOTween'
  ;   K[17]='Sequence'
  ;   K[18]='_PlayAnimation'
  ;   K[19]='Drop'
  ;   K[20]='Idle'
  ;   K[21]='m_boatSpine'
  ;   K[22]='Update'
  ;   K[23]='LateUpdate'
  ;   K[24]='timeScale'
  ;   K[25]='Append'
  ;   K[26]='DOAnchorPosX'
  ;   K[27]=0.15
  ;   K[28]='Join'
  ;   K[29]='DOFade'
  ;   K[30]=1
  ;   K[31]='Insert'
  ;   K[32]='Duration'
  ;   K[33]=0.075
  ;   K[34]='InsertCallback'
  ;   K[35]='AppendInterval'
  ;   K[36]=0.5
  ;   K[37]='m_bIsMySelf'
  ;   K[38]=0.25
  ;   K[39]='DOScale'
  ;   upvals: _ENV, EAnimationKey
  ;   locals: self(0-106), anchoredPositionXUserAvatar(3-106), anchoredPositionXName(13-106), scaleScore(25-106), sequence(34-106)
  0000  GETTABLE  R1 = R0[K0('m_userAvatarRectTransform')]
  0001  GETTABLE  R1 = R1[K1('anchoredPosition')]
  0002  GETTABLE  R1 = R1[K2('x')]
  0003  GETTABUP  R2 = _ENV[K3('UIUtil')]
  0004  GETTABLE  R2 = R2[K4('SetAnchoredPosition')]
  0005  GETTABLE  R3 = R0[K0('m_userAvatarRectTransform')]
  0006  SUB       R4 = K5(50) sub R1
  0007  CALL      R2 = call(R2, 0 args, 2 rets)
  0008  GETTABLE  R2 = R0[K6('m_userAvatarCanvasGroup')]
  0009  SETTABLE  R2[K7('alpha')] = K8(0)
  0010  GETTABLE  R2 = R0[K9('m_nameRectTransform')]
  0011  GETTABLE  R2 = R2[K1('anchoredPosition')]
  0012  GETTABLE  R2 = R2[K2('x')]
  0013  GETTABUP  R3 = _ENV[K3('UIUtil')]
  0014  GETTABLE  R3 = R3[K4('SetAnchoredPosition')]
  0015  GETTABLE  R4 = R0[K9('m_nameRectTransform')]
  0016  SUB       R5 = K5(50) sub R2
  0017  CALL      R3 = call(R3, 0 args, 2 rets)
  0018  SELF      R4 = R0[K10('_PlayAnimationLoop')] (self)
  0019  GETTABUP  R5 = EAnimationKey[K11('Move')]
  0020  CALL      R3 = call(R3, 0 args, 2 rets)
  0021  GETTABLE  R3 = R0[K12('m_nameCanvasGroup')]
  0022  SETTABLE  R3[K7('alpha')] = K8(0)
  0023  GETTABLE  R3 = R0[K13('m_scoreRoot')]
  0024  GETTABLE  R3 = R3[K14('localScale')]
  0025  GETTABUP  R4 = _ENV[K3('UIUtil')]
  0026  GETTABLE  R4 = R4[K15('SetLocalScale')]
  0027  GETTABLE  R5 = R0[K13('m_scoreRoot')]
  0028  LOADK     R6 = K8 0
  0029  LOADK     R7 = K8 0
  0030  CALL      R4 = call(R4, 0 args, 3 rets)
  0031  GETTABUP  R4 = _ENV[K16('DOTween')]
  0032  GETTABLE  R4 = R4[K17('Sequence')]
  0033  CALL      R4 = call(R4, 1 args, 0 rets)
  0034  SELF      R6 = R0[K18('_PlayAnimation')] (self)
  0035  GETTABUP  R7 = EAnimationKey[K19('Drop')]
  0036  GETTABUP  R8 = EAnimationKey[K20('Idle')]
  0037  CALL      R5 = call(R5, 0 args, 3 rets)
  0038  GETTABLE  R5 = R0[K21('m_boatSpine')]
  0039  SELF      R6 = R5[K22('Update')] (self)
  0040  LOADK     R7 = K8 0
  0041  CALL      R5 = call(R5, 0 args, 2 rets)
  0042  GETTABLE  R5 = R0[K21('m_boatSpine')]
  0043  SELF      R6 = R5[K23('LateUpdate')] (self)
  0044  LOADK     R7 = K8 0
  0045  CALL      R5 = call(R5, 0 args, 2 rets)
  0046  GETTABLE  R5 = R0[K21('m_boatSpine')]
  0047  SETTABLE  R5[K24('timeScale')] = K8(0)
  0048  SELF      R6 = R4[K25('Append')] (self)
  0049  GETTABLE  R7 = R0[K0('m_userAvatarRectTransform')]
  0050  SELF      R8 = R7[K26('DOAnchorPosX')] (self)
  0051  MOVE      R9 = R0
  0052  LOADK     R10 = K27 0.15
  0053  CALL      R7 = call(R7, -1 args, 3 rets)
  0054  CALL      R5 = call(R5, 0 args, -1 rets)
  0055  SELF      R6 = R4[K28('Join')] (self)
  0056  GETTABLE  R7 = R0[K6('m_userAvatarCanvasGroup')]
  0057  SELF      R8 = R7[K29('DOFade')] (self)
  0058  LOADK     R9 = K30 1
  0059  LOADK     R10 = K27 0.15
  0060  CALL      R7 = call(R7, -1 args, 3 rets)
  0061  CALL      R5 = call(R5, 0 args, -1 rets)
  0062  SELF      R6 = R4[K31('Insert')] (self)
  0063  SELF      R8 = R4[K32('Duration')] (self)
  0064  CALL      R7 = call(R7, 1 args, 1 rets)
  0065  SUB       R7 = K33(0.075) sub R7
  0066  GETTABLE  R8 = R0[K9('m_nameRectTransform')]
  0067  SELF      R9 = R8[K26('DOAnchorPosX')] (self)
  0068  MOVE      R10 = R0
  0069  LOADK     R11 = K27 0.15
  0070  CALL      R8 = call(R8, -1 args, 3 rets)
  0071  CALL      R5 = call(R5, 0 args, -1 rets)
  0072  SELF      R6 = R4[K28('Join')] (self)
  0073  GETTABLE  R7 = R0[K12('m_nameCanvasGroup')]
  0074  SELF      R8 = R7[K29('DOFade')] (self)
  0075  LOADK     R9 = K30 1
  0076  LOADK     R10 = K27 0.15
  0077  CALL      R7 = call(R7, -1 args, 3 rets)
  0078  CALL      R5 = call(R5, 0 args, -1 rets)
  0079  SELF      R6 = R4[K34('InsertCallback')] (self)
  0080  SELF      R8 = R4[K32('Duration')] (self)
  0081  CALL      R7 = call(R7, 1 args, 1 rets)
  0082  SUB       R7 = K33(0.075) sub R7
  0083  CLOSURE   R8 = closure proto0
  0084  CALL      R5 = call(R5, 0 args, 3 rets)
  0085  SELF      R6 = R4[K35('AppendInterval')] (self)
  0086  LOADK     R7 = K36 0.5
  0087  CALL      R5 = call(R5, 0 args, 2 rets)
  0088  GETTABLE  R5 = R0[K37('m_bIsMySelf')]
  0089  TEST      if not R5 then   -> -130981
  0090  JMP       (jump)   -> 97
  0091  SELF      R6 = R4[K34('InsertCallback')] (self)
  0092  SELF      R8 = R4[K32('Duration')] (self)
  0093  CALL      R7 = call(R7, 1 args, 1 rets)
  0094  SUB       R7 = K38(0.25) sub R7
  0095  CLOSURE   R8 = closure proto1
  0096  CALL      R5 = call(R5, 0 args, 3 rets)
  0097  SELF      R6 = R4[K25('Append')] (self)
  0098  GETTABLE  R7 = R0[K13('m_scoreRoot')]
  0099  SELF      R8 = R7[K39('DOScale')] (self)
  0100  MOVE      R9 = R0
  0101  LOADK     R10 = K27 0.15
  0102  CALL      R7 = call(R7, -1 args, 3 rets)
  0103  CALL      R5 = call(R5, 0 args, -1 rets)
  0104  RETURN    return R4..R3
  0105  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 211-216 np=0 va=0 ms=5 code=11 consts=6 upvals=3 protos=1
    ;   K[0]='m_boatSpine'
    ;   K[1]='timeScale'
    ;   K[2]=1.5
    ;   K[3]='DelayExecuteFuncInView'
    ;   K[4]='GetAnimationTime'
    ;   K[5]='Drop'
    ;   upvals: self, _ENV, EAnimationKey
    0000  GETTABUP  R0 = self[K0('m_boatSpine')]
    0001  SETTABLE  R0[K1('timeScale')] = K2(1.5)
    0002  GETTABUP  R0 = _ENV[K3('DelayExecuteFuncInView')]
    0003  CLOSURE   R1 = closure proto0
    0004  GETUPVAL  R2 = self
    0005  SELF      R3 = R2[K4('GetAnimationTime')] (self)
    0006  GETTABUP  R4 = EAnimationKey[K5('Drop')]
    0007  CALL      R2 = call(R2, 1 args, 2 rets)
    0008  GETUPVAL  R3 = self
    0009  CALL      R0 = call(R0, 0 args, 3 rets)
    0010  RETURN    return R0..R-1
    ; ---------- proto0 [] ----------
      ; fn ?  line 213-215 np=0 va=0 ms=2 code=3 consts=3 upvals=1 protos=0
      ;   K[0]='m_boatSpine'
      ;   K[1]='timeScale'
      ;   K[2]=1
      ;   upvals: self
      0000  GETTABUP  R0 = self[K0('m_boatSpine')]
      0001  SETTABLE  R0[K1('timeScale')] = K2(1)
      0002  RETURN    return R0..R-1
  ; ---------- proto1 [] ----------
    ; fn ?  line 219-221 np=0 va=0 ms=3 code=7 consts=5 upvals=1 protos=0
    ;   K[0]='GM'
    ;   K[1]='AudioModel'
    ;   K[2]='PlayEffect'
    ;   K[3]='AudioFileConfigName'
    ;   K[4]='brush_action'
    ;   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('brush_action')]
    0005  CALL      R0 = call(R0, 0 args, 2 rets)
    0006  RETURN    return R0..R-1
; ---------- proto12 [PlayProgressAnimation] ----------
  ; fn ?  line 231-287 np=4 va=0 ms=15 code=90 consts=31 upvals=4 protos=4
  ;   K[0]='m_score'
  ;   K[1]='m_lastScore'
  ;   K[2]='_UpdateProgress'
  ;   K[3]='IsFunction'
  ;   K[4]='_PlayAnimationLoop'
  ;   K[5]='Move'
  ;   K[6]='_IsFinished'
  ;   K[7]='m_targetScore'
  ;   K[8]='DOTween'
  ;   K[9]='Sequence'
  ;   K[10]='Append'
  ;   K[11]='DOVirtual'
  ;   K[12]='Float'
  ;   K[13]='SetEase'
  ;   K[14]='Ease'
  ;   K[15]='Linear'
  ;   K[16]='m_rank'
  ;   K[17]='m_successPlayerNumber'
  ;   K[18]='m_bIsMySelf'
  ;   K[19]='InsertCallback'
  ;   K[20]='Duration'
  ;   K[21]=0.15
  ;   K[22]='AppendCallback'
  ;   K[23]='Join'
  ;   K[24]='m_claimedRoot'
  ;   K[25]='DOAnchorPosX'
  ;   K[26]=0.5
  ;   K[27]='SetEase'
  ;   K[28]='Ease'
  ;   K[29]='OutBack'
  ;   K[30]='OnComplete'
  ;   upvals: _ENV, EAnimationKey, OFFSET_SCREEN_BORDER, CLAIMED_ROOT_POS_X
  ;   locals: self(0-90), animationTime(0-90), finishAnimationTime(0-90), callback(0-90), animationTime(25-90), speed(27-90), animationTime(31-90), sequence(34-90), bSuccess(57-85)
  0000  GETTABLE  R4 = R0[K0('m_score')]
  0001  GETTABLE  R5 = R0[K1('m_lastScore')]
  0002  LE        if R0 le R5   -> -129015
  0003  JMP       (jump)   -> 15
  0004  SELF      R5 = R0[K2('_UpdateProgress')] (self)
  0005  GETTABLE  R6 = R0[K0('m_score')]
  0006  CALL      R4 = call(R4, 0 args, 2 rets)
  0007  GETTABUP  R4 = _ENV[K3('IsFunction')]
  0008  MOVE      R5 = R0
  0009  CALL      R4 = call(R4, 1 args, 1 rets)
  0010  TEST      if not R4 then   -> -131060
  0011  JMP       (jump)   -> 14
  0012  MOVE      R4 = R0
  0013  CALL      R4 = call(R4, 0 args, 0 rets)
  0014  RETURN    return R0..R-1
  0015  SELF      R5 = R0[K4('_PlayAnimationLoop')] (self)
  0016  GETTABUP  R6 = EAnimationKey[K5('Move')]
  0017  CALL      R4 = call(R4, 0 args, 2 rets)
  0018  SELF      R5 = R0[K6('_IsFinished')] (self)
  0019  CALL      R4 = call(R4, 1 args, 1 rets)
  0020  TEST      if not R4 then   -> -131050
  0021  JMP       (jump)   -> 24
  0022  TESTSET   if R1 then R4   -> -130023
  0023  JMP       (jump)   -> 25
  0024  MOVE      R4 = R0
  0025  GETTABLE  R5 = R0[K7('m_targetScore')]
  0026  DIV       R5 = R4 div R5
  0027  GETTABLE  R6 = R0[K0('m_score')]
  0028  GETTABLE  R7 = R0[K1('m_lastScore')]
  0029  SUB       R6 = R7 sub R6
  0030  DIV       R6 = R5 div R6
  0031  GETTABUP  R7 = _ENV[K8('DOTween')]
  0032  GETTABLE  R7 = R7[K9('Sequence')]
  0033  CALL      R7 = call(R7, 1 args, 0 rets)
  0034  SELF      R9 = R7[K10('Append')] (self)
  0035  GETTABUP  R10 = _ENV[K11('DOVirtual')]
  0036  GETTABLE  R10 = R10[K12('Float')]
  0037  GETTABLE  R11 = R0[K1('m_lastScore')]
  0038  GETTABLE  R12 = R0[K0('m_score')]
  0039  MOVE      R13 = R0
  0040  CLOSURE   R14 = closure proto0
  0041  CALL      R10 = call(R10, 1 args, 4 rets)
  0042  SELF      R11 = R10[K13('SetEase')] (self)
  0043  GETTABUP  R12 = _ENV[K14('Ease')]
  0044  GETTABLE  R12 = R12[K15('Linear')]
  0045  CALL      R10 = call(R10, -1 args, 2 rets)
  0046  CALL      R8 = call(R8, 0 args, -1 rets)
  0047  SELF      R9 = R0[K6('_IsFinished')] (self)
  0048  CALL      R8 = call(R8, 1 args, 1 rets)
  0049  TEST      if not R8 then   -> -131021
  0050  JMP       (jump)   -> 85
  0051  GETTABLE  R8 = R0[K16('m_rank')]
  0052  GETTABLE  R9 = R0[K17('m_successPlayerNumber')]
  0053  LE        if R1 le R9   -> -126912
  0054  JMP       (jump)   -> 56
  0055  LOADBOOL  R8 = false
  0056  LOADBOOL  R8 = true
  0057  GETTABLE  R9 = R0[K18('m_bIsMySelf')]
  0058  TEST      if not R9 then   -> -131012
  0059  JMP       (jump)   -> 68
  0060  TEST      if not R8 then   -> -131010
  0061  JMP       (jump)   -> 68
  0062  SELF      R10 = R7[K19('InsertCallback')] (self)
  0063  SELF      R12 = R7[K20('Duration')] (self)
  0064  CALL      R11 = call(R11, 1 args, 1 rets)
  0065  SUB       R11 = K21(0.15) sub R11
  0066  CLOSURE   R12 = closure proto1
  0067  CALL      R9 = call(R9, 0 args, 3 rets)
  0068  SELF      R10 = R7[K22('AppendCallback')] (self)
  0069  CLOSURE   R11 = closure proto2
  0070  CALL      R9 = call(R9, 0 args, 2 rets)
  0071  TEST      if not R8 then   -> -130999
  0072  JMP       (jump)   -> 85
  0073  SELF      R10 = R7[K23('Join')] (self)
  0074  GETTABLE  R11 = R0[K24('m_claimedRoot')]
  0075  SELF      R12 = R11[K25('DOAnchorPosX')] (self)
  0076  GETUPVAL  R13 = _ENV
  0077  LOADK     R14 = K26 0.5
  0078  CALL      R11 = call(R11, 1 args, 3 rets)
  0079  SELF      R12 = R11[K27('SetEase')] (self)
  0080  GETTABUP  R13 = _ENV[K28('Ease')]
  0081  GETTABLE  R13 = R13[K29('OutBack')]
  0082  CALL      R11 = call(R11, -1 args, 2 rets)
  0083  CALL      R9 = call(R9, 0 args, -1 rets)
  0084  JMP       (jump)   -> 85
  0085  SELF      R9 = R7[K30('OnComplete')] (self)
  0086  CLOSURE   R10 = closure proto3
  0087  CALL      R8 = call(R8, 0 args, 2 rets)
  0088  RETURN    return R7..R6
  0089  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 250-252 np=1 va=0 ms=4 code=5 consts=1 upvals=1 protos=0
    ;   K[0]='_UpdateProgress'
    ;   upvals: self
    ;   locals: value(0-5)
    0000  GETUPVAL  R1 = self
    0001  SELF      R2 = R1[K0('_UpdateProgress')] (self)
    0002  MOVE      R3 = R0
    0003  CALL      R1 = call(R1, 0 args, 2 rets)
    0004  RETURN    return R0..R-1
  ; ---------- proto1 [] ----------
    ; fn ?  line 258-260 np=0 va=0 ms=3 code=7 consts=5 upvals=1 protos=0
    ;   K[0]='GM'
    ;   K[1]='AudioModel'
    ;   K[2]='PlayEffect'
    ;   K[3]='AudioFileConfigName'
    ;   K[4]='SfxPkRaceActivityFinish1'
    ;   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('SfxPkRaceActivityFinish1')]
    0005  CALL      R0 = call(R0, 0 args, 2 rets)
    0006  RETURN    return R0..R-1
  ; ---------- proto2 [] ----------
    ; fn ?  line 262-273 np=0 va=0 ms=7 code=38 consts=15 upvals=4 protos=0
    ;   K[0]='m_bIsMySelf'
    ;   K[1]='UIUtil'
    ;   K[2]='SetActive'
    ;   K[3]='m_selfTrackEffectGo'
    ;   K[4]='_GetOffset'
    ;   K[5]='m_boatRoot'
    ;   K[6]='DOAnchorPosX'
    ;   K[7]='m_trackProgressRectTransform'
    ;   K[8]='parent'
    ;   K[9]='rect'
    ;   K[10]='width'
    ;   K[11]='SetEase'
    ;   K[12]='Ease'
    ;   K[13]='Linear'
    ;   K[14]='m_claimedGo'
    ;   upvals: self, bSuccess, _ENV, OFFSET_SCREEN_BORDER
    ;   locals: _(14-38), offsetRight(14-38), targetX(16-38)
    0000  GETTABUP  R0 = self[K0('m_bIsMySelf')]
    0001  TEST      if not R0 then   -> -131069
    0002  JMP       (jump)   -> 11
    0003  GETUPVAL  R0 = self
    0004  TEST      if not R0 then   -> -131066
    0005  JMP       (jump)   -> 11
    0006  GETTABUP  R0 = _ENV[K1('UIUtil')]
    0007  GETTABLE  R0 = R0[K2('SetActive')]
    0008  GETTABUP  R1 = self[K3('m_selfTrackEffectGo')]
    0009  LOADBOOL  R2 = true
    0010  CALL      R0 = call(R0, 0 args, 2 rets)
    0011  GETUPVAL  R0 = self
    0012  SELF      R1 = R0[K4('_GetOffset')] (self)
    0013  CALL      R0 = call(R0, 2 args, 1 rets)
    0014  GETUPVAL  R2 = self
    0015  ADD       R2 = R2 add R1
    0016  GETTABUP  R3 = self[K5('m_boatRoot')]
    0017  SELF      R4 = R3[K6('DOAnchorPosX')] (self)
    0018  MOVE      R5 = R0
    0019  GETTABUP  R6 = self[K7('m_trackProgressRectTransform')]
    0020  GETTABLE  R6 = R6[K8('parent')]
    0021  GETTABLE  R6 = R6[K9('rect')]
    0022  GETTABLE  R6 = R6[K10('width')]
    0023  DIV       R6 = R6 div R2
    0024  CALL      R3 = call(R3, 1 args, 3 rets)
    0025  SELF      R4 = R3[K11('SetEase')] (self)
    0026  GETTABUP  R5 = _ENV[K12('Ease')]
    0027  GETTABLE  R5 = R5[K13('Linear')]
    0028  CALL      R3 = call(R3, 0 args, 2 rets)
    0029  GETUPVAL  R3 = self
    0030  TEST      if not R3 then   -> -131040
    0031  JMP       (jump)   -> 37
    0032  GETTABUP  R3 = _ENV[K1('UIUtil')]
    0033  GETTABLE  R3 = R3[K2('SetActive')]
    0034  GETTABUP  R4 = self[K14('m_claimedGo')]
    0035  LOADBOOL  R5 = true
    0036  CALL      R3 = call(R3, 0 args, 2 rets)
    0037  RETURN    return R0..R-1
  ; ---------- proto3 [] ----------
    ; fn ?  line 279-285 np=0 va=0 ms=3 code=16 consts=5 upvals=4 protos=0
    ;   K[0]='_PlayAnimationLoop'
    ;   K[1]='Idle'
    ;   K[2]='_UpdateProgress'
    ;   K[3]='m_score'
    ;   K[4]='IsFunction'
    ;   upvals: self, EAnimationKey, _ENV, callback
    0000  GETUPVAL  R0 = self
    0001  SELF      R1 = R0[K0('_PlayAnimationLoop')] (self)
    0002  GETTABUP  R2 = EAnimationKey[K1('Idle')]
    0003  CALL      R0 = call(R0, 0 args, 2 rets)
    0004  GETUPVAL  R0 = self
    0005  SELF      R1 = R0[K2('_UpdateProgress')] (self)
    0006  GETTABUP  R2 = self[K3('m_score')]
    0007  CALL      R0 = call(R0, 0 args, 2 rets)
    0008  GETTABUP  R0 = _ENV[K4('IsFunction')]
    0009  GETUPVAL  R1 = self
    0010  CALL      R0 = call(R0, 1 args, 1 rets)
    0011  TEST      if not R0 then   -> -131059
    0012  JMP       (jump)   -> 15
    0013  GETUPVAL  R0 = self
    0014  CALL      R0 = call(R0, 0 args, 0 rets)
    0015  RETURN    return R0..R-1
; ---------- proto13 [PlayRewardBoxAnimation] ----------
  ; fn ?  line 291-315 np=2 va=0 ms=7 code=30 consts=11 upvals=1 protos=3
  ;   K[0]='m_rank'
  ;   K[1]='m_successPlayerNumber'
  ;   K[2]='_IsFinished'
  ;   K[3]='DOTween'
  ;   K[4]='Sequence'
  ;   K[5]='AppendCallback'
  ;   K[6]='AppendInterval'
  ;   K[7]=0.2
  ;   K[8]='InsertCallback'
  ;   K[9]='Duration'
  ;   K[10]=0.1
  ;   upvals: _ENV
  ;   locals: self(0-30), callback(0-30), sequence(13-30)
  0000  GETTABLE  R2 = R0[K0('m_rank')]
  0001  GETTABLE  R3 = R0[K1('m_successPlayerNumber')]
  0002  LT        if R0 lt R2   -> -129530
  0003  JMP       (jump)   -> 5
  0004  RETURN    return R0..R-1
  0005  SELF      R3 = R0[K2('_IsFinished')] (self)
  0006  CALL      R2 = call(R2, 1 args, 1 rets)
  0007  TEST      if not R2 then   -> -131063
  0008  JMP       (jump)   -> 10
  0009  RETURN    return R0..R-1
  0010  GETTABUP  R2 = _ENV[K3('DOTween')]
  0011  GETTABLE  R2 = R2[K4('Sequence')]
  0012  CALL      R2 = call(R2, 1 args, 0 rets)
  0013  SELF      R4 = R2[K5('AppendCallback')] (self)
  0014  CLOSURE   R5 = closure proto0
  0015  CALL      R3 = call(R3, 0 args, 2 rets)
  0016  SELF      R4 = R2[K6('AppendInterval')] (self)
  0017  LOADK     R5 = K7 0.2
  0018  CALL      R3 = call(R3, 0 args, 2 rets)
  0019  SELF      R4 = R2[K8('InsertCallback')] (self)
  0020  SELF      R6 = R2[K9('Duration')] (self)
  0021  CALL      R5 = call(R5, 1 args, 1 rets)
  0022  SUB       R5 = K10(0.1) sub R5
  0023  CLOSURE   R6 = closure proto1
  0024  CALL      R3 = call(R3, 0 args, 3 rets)
  0025  SELF      R4 = R2[K5('AppendCallback')] (self)
  0026  CLOSURE   R5 = closure proto2
  0027  CALL      R3 = call(R3, 0 args, 2 rets)
  0028  RETURN    return R2..R1
  0029  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 302-304 np=0 va=0 ms=3 code=6 consts=3 upvals=2 protos=0
    ;   K[0]='UIUtil'
    ;   K[1]='SetActive'
    ;   K[2]='m_rewardBoxGo'
    ;   upvals: _ENV, self
    0000  GETTABUP  R0 = _ENV[K0('UIUtil')]
    0001  GETTABLE  R0 = R0[K1('SetActive')]
    0002  GETTABUP  R1 = self[K2('m_rewardBoxGo')]
    0003  LOADBOOL  R2 = true
    0004  CALL      R0 = call(R0, 0 args, 2 rets)
    0005  RETURN    return R0..R-1
  ; ---------- proto1 [] ----------
    ; fn ?  line 306-308 np=0 va=0 ms=3 code=7 consts=5 upvals=1 protos=0
    ;   K[0]='GM'
    ;   K[1]='AudioModel'
    ;   K[2]='PlayEffect'
    ;   K[3]='AudioFileConfigName'
    ;   K[4]='plane_appear'
    ;   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('plane_appear')]
    0005  CALL      R0 = call(R0, 0 args, 2 rets)
    0006  RETURN    return R0..R-1
  ; ---------- proto2 [] ----------
    ; fn ?  line 309-313 np=0 va=0 ms=2 code=8 consts=1 upvals=2 protos=0
    ;   K[0]='IsFunction'
    ;   upvals: _ENV, callback
    0000  GETTABUP  R0 = _ENV[K0('IsFunction')]
    0001  GETUPVAL  R1 = _ENV
    0002  CALL      R0 = call(R0, 1 args, 1 rets)
    0003  TEST      if not R0 then   -> -131067
    0004  JMP       (jump)   -> 7
    0005  GETUPVAL  R0 = _ENV
    0006  CALL      R0 = call(R0, 0 args, 0 rets)
    0007  RETURN    return R0..R-1
; ---------- proto14 [ShowRewardBoxImmediately] ----------
  ; fn ?  line 318-328 np=1 va=0 ms=4 code=16 consts=6 upvals=1 protos=0
  ;   K[0]='m_rank'
  ;   K[1]='m_successPlayerNumber'
  ;   K[2]='_IsFinished'
  ;   K[3]='UIUtil'
  ;   K[4]='SetActive'
  ;   K[5]='m_rewardBoxGo'
  ;   upvals: _ENV
  ;   locals: self(0-16)
  0000  GETTABLE  R1 = R0[K0('m_rank')]
  0001  GETTABLE  R2 = R0[K1('m_successPlayerNumber')]
  0002  LT        if R0 lt R1   -> -130043
  0003  JMP       (jump)   -> 5
  0004  RETURN    return R0..R-1
  0005  SELF      R2 = R0[K2('_IsFinished')] (self)
  0006  CALL      R1 = call(R1, 1 args, 1 rets)
  0007  TEST      if not R1 then   -> -131063
  0008  JMP       (jump)   -> 10
  0009  RETURN    return R0..R-1
  0010  GETTABUP  R1 = _ENV[K3('UIUtil')]
  0011  GETTABLE  R1 = R1[K4('SetActive')]
  0012  GETTABLE  R2 = R0[K5('m_rewardBoxGo')]
  0013  LOADBOOL  R3 = true
  0014  CALL      R1 = call(R1, 0 args, 2 rets)
  0015  RETURN    return R0..R-1
; ---------- proto15 [GetRewardBoxTrans] ----------
  ; fn ?  line 330-338 np=1 va=0 ms=4 code=20 consts=6 upvals=1 protos=0
  ;   K[0]='m_rank'
  ;   K[1]='m_successPlayerNumber'
  ;   K[2]='string'
  ;   K[3]='format'
  ;   K[4]='m_claimedBox%dGo'
  ;   K[5]='transform'
  ;   upvals: _ENV
  ;   locals: self(0-20), field(11-20), rewardBoxGo(12-20)
  0000  GETTABLE  R1 = R0[K0('m_rank')]
  0001  GETTABLE  R2 = R0[K1('m_successPlayerNumber')]
  0002  LT        if R0 lt R1   -> -130043
  0003  JMP       (jump)   -> 6
  0004  LOADNIL   R1..R1 = nil
  0005  RETURN    return R1..R0
  0006  GETTABUP  R1 = _ENV[K2('string')]
  0007  GETTABLE  R1 = R1[K3('format')]
  0008  LOADK     R2 = K4 'm_claimedBox%dGo'
  0009  GETTABLE  R3 = R0[K0('m_rank')]
  0010  CALL      R1 = call(R1, 1 args, 2 rets)
  0011  GETTABLE  R2 = R0[R1]
  0012  TEST      if not R2 then   -> -131058
  0013  JMP       (jump)   -> 17
  0014  GETTABLE  R3 = R2[K5('transform')]
  0015  TEST      if not R3 then   -> -131054
  0016  JMP       (jump)   -> 18
  0017  LOADNIL   R3..R3 = nil
  0018  RETURN    return R3..R2
  0019  RETURN    return R0..R-1
; ---------- proto16 [SetClaimed] ----------
  ; fn ?  line 340-344 np=1 va=0 ms=4 code=16 consts=5 upvals=1 protos=0
  ;   K[0]='UIUtil'
  ;   K[1]='SetActive'
  ;   K[2]='m_lightEffectBackGo'
  ;   K[3]='m_lightEffectFrontGo'
  ;   K[4]='m_claimedCheckGo'
  ;   upvals: _ENV
  ;   locals: self(0-16)
  0000  GETTABUP  R1 = _ENV[K0('UIUtil')]
  0001  GETTABLE  R1 = R1[K1('SetActive')]
  0002  GETTABLE  R2 = R0[K2('m_lightEffectBackGo')]
  0003  LOADBOOL  R3 = false
  0004  CALL      R1 = call(R1, 0 args, 2 rets)
  0005  GETTABUP  R1 = _ENV[K0('UIUtil')]
  0006  GETTABLE  R1 = R1[K1('SetActive')]
  0007  GETTABLE  R2 = R0[K3('m_lightEffectFrontGo')]
  0008  LOADBOOL  R3 = false
  0009  CALL      R1 = call(R1, 0 args, 2 rets)
  0010  GETTABUP  R1 = _ENV[K0('UIUtil')]
  0011  GETTABLE  R1 = R1[K1('SetActive')]
  0012  GETTABLE  R2 = R0[K4('m_claimedCheckGo')]
  0013  LOADBOOL  R3 = true
  0014  CALL      R1 = call(R1, 0 args, 2 rets)
  0015  RETURN    return R0..R-1
; ---------- proto17 [OnBoatBtnClicked] ----------
  ; fn ?  line 346-348 np=1 va=0 ms=4 code=6 consts=4 upvals=0 protos=0
  ;   K[0]='m_window'
  ;   K[1]='ShowSelfTip'
  ;   K[2]='m_selfTipRoot'
  ;   K[3]='position'
  ;   locals: self(0-6)
  0000  GETTABLE  R1 = R0[K0('m_window')]
  0001  SELF      R2 = R1[K1('ShowSelfTip')] (self)
  0002  GETTABLE  R3 = R0[K2('m_selfTipRoot')]
  0003  GETTABLE  R3 = R3[K3('position')]
  0004  CALL      R1 = call(R1, 0 args, 2 rets)
  0005  RETURN    return R0..R-1
; ---------- proto18 [OnClaimedRewardBtnClicked] ----------
  ; fn ?  line 350-352 np=1 va=0 ms=5 code=7 consts=5 upvals=0 protos=0
  ;   K[0]='m_window'
  ;   K[1]='ShowRewardTip'
  ;   K[2]='m_claimedRewardTipRoot'
  ;   K[3]='position'
  ;   K[4]='m_rewards'
  ;   locals: self(0-7)
  0000  GETTABLE  R1 = R0[K0('m_window')]
  0001  SELF      R2 = R1[K1('ShowRewardTip')] (self)
  0002  GETTABLE  R3 = R0[K2('m_claimedRewardTipRoot')]
  0003  GETTABLE  R3 = R3[K3('position')]
  0004  GETTABLE  R4 = R0[K4('m_rewards')]
  0005  CALL      R1 = call(R1, 0 args, 3 rets)
  0006  RETURN    return R0..R-1
; ---------- proto19 [OnRewardBtnClicked] ----------
  ; fn ?  line 354-356 np=1 va=0 ms=5 code=7 consts=5 upvals=0 protos=0
  ;   K[0]='m_window'
  ;   K[1]='ShowRewardTip'
  ;   K[2]='m_rewardTipRoot'
  ;   K[3]='position'
  ;   K[4]='m_rewards'
  ;   locals: self(0-7)
  0000  GETTABLE  R1 = R0[K0('m_window')]
  0001  SELF      R2 = R1[K1('ShowRewardTip')] (self)
  0002  GETTABLE  R3 = R0[K2('m_rewardTipRoot')]
  0003  GETTABLE  R3 = R3[K3('position')]
  0004  GETTABLE  R4 = R0[K4('m_rewards')]
  0005  CALL      R1 = call(R1, 0 args, 3 rets)
  0006  RETURN    return R0..R-1
