# TimeLimitedProgressActivity_View_TimeLimitedProgressSlider_1716.luac
; fn @TimeLimitedProgressSlider.lua  line 0-0 np=0 va=1 ms=2 code=50 consts=16 upvals=1 protos=13
;   K[0]='TimeLimitedProgressSlider'
;   K[1]='__index'
;   K[2]='Init'
;   K[3]='_InitCells'
;   K[4]='PlayProgressAnimation'
;   K[5]='HideProgressForAnim'
;   K[6]='ShowProgressForAnim'
;   K[7]='UpdateContentByScore'
;   K[8]='OnProgressIconClicked'
;   K[9]='ShowTokenDescTip'
;   K[10]='UpdateLevelCellLoopEffect'
;   K[11]='TimeLimitedProgressLevelCell'
;   K[12]='Init'
;   K[13]='UpdateBgSprite'
;   K[14]='UpdateLoopEffectEnabled'
;   K[15]='OnClicked'
;   upvals: _ENV
0000  NEWTABLE  R0 = {} (0 items)
0001  SETTABUP  _ENV[K0('TimeLimitedProgressSlider')] = R0
0002  GETTABUP  R0 = _ENV[K0('TimeLimitedProgressSlider')]
0003  GETTABUP  R1 = _ENV[K0('TimeLimitedProgressSlider')]
0004  SETTABLE  R0[K1('__index')] = R1
0005  GETTABUP  R0 = _ENV[K0('TimeLimitedProgressSlider')]
0006  CLOSURE   R1 = closure proto0
0007  SETTABLE  R0[K2('Init')] = R1
0008  GETTABUP  R0 = _ENV[K0('TimeLimitedProgressSlider')]
0009  CLOSURE   R1 = closure proto1
0010  SETTABLE  R0[K3('_InitCells')] = R1
0011  GETTABUP  R0 = _ENV[K0('TimeLimitedProgressSlider')]
0012  CLOSURE   R1 = closure proto2
0013  SETTABLE  R0[K4('PlayProgressAnimation')] = R1
0014  GETTABUP  R0 = _ENV[K0('TimeLimitedProgressSlider')]
0015  CLOSURE   R1 = closure proto3
0016  SETTABLE  R0[K5('HideProgressForAnim')] = R1
0017  GETTABUP  R0 = _ENV[K0('TimeLimitedProgressSlider')]
0018  CLOSURE   R1 = closure proto4
0019  SETTABLE  R0[K6('ShowProgressForAnim')] = R1
0020  GETTABUP  R0 = _ENV[K0('TimeLimitedProgressSlider')]
0021  CLOSURE   R1 = closure proto5
0022  SETTABLE  R0[K7('UpdateContentByScore')] = R1
0023  GETTABUP  R0 = _ENV[K0('TimeLimitedProgressSlider')]
0024  CLOSURE   R1 = closure proto6
0025  SETTABLE  R0[K8('OnProgressIconClicked')] = R1
0026  GETTABUP  R0 = _ENV[K0('TimeLimitedProgressSlider')]
0027  CLOSURE   R1 = closure proto7
0028  SETTABLE  R0[K9('ShowTokenDescTip')] = R1
0029  GETTABUP  R0 = _ENV[K0('TimeLimitedProgressSlider')]
0030  CLOSURE   R1 = closure proto8
0031  SETTABLE  R0[K10('UpdateLevelCellLoopEffect')] = R1
0032  NEWTABLE  R0 = {} (0 items)
0033  SETTABUP  _ENV[K11('TimeLimitedProgressLevelCell')] = R0
0034  GETTABUP  R0 = _ENV[K11('TimeLimitedProgressLevelCell')]
0035  GETTABUP  R1 = _ENV[K11('TimeLimitedProgressLevelCell')]
0036  SETTABLE  R0[K1('__index')] = R1
0037  GETTABUP  R0 = _ENV[K11('TimeLimitedProgressLevelCell')]
0038  CLOSURE   R1 = closure proto9
0039  SETTABLE  R0[K12('Init')] = R1
0040  GETTABUP  R0 = _ENV[K11('TimeLimitedProgressLevelCell')]
0041  CLOSURE   R1 = closure proto10
0042  SETTABLE  R0[K13('UpdateBgSprite')] = R1
0043  GETTABUP  R0 = _ENV[K11('TimeLimitedProgressLevelCell')]
0044  CLOSURE   R1 = closure proto11
0045  SETTABLE  R0[K14('UpdateLoopEffectEnabled')] = R1
0046  GETTABUP  R0 = _ENV[K11('TimeLimitedProgressLevelCell')]
0047  CLOSURE   R1 = closure proto12
0048  SETTABLE  R0[K15('OnClicked')] = R1
0049  RETURN    return R0..R-1
; ---------- proto0 [Init] ----------
  ; fn ?  line 6-20 np=4 va=0 ms=7 code=30 consts=21 upvals=0 protos=0
  ;   K[0]='m_progressInfo'
  ;   K[1]='m_model'
  ;   K[2]='GetModel'
  ;   K[3]='m_definition'
  ;   K[4]='m_cellSpacingHeight'
  ;   K[5]='CellSpacingHeight'
  ;   K[6]='m_cellHeight'
  ;   K[7]='LevelCellHeight'
  ;   K[8]='m_progressIconHeight'
  ;   K[9]='m_progressIconRect'
  ;   K[10]='sizeDelta'
  ;   K[11]='y'
  ;   K[12]='m_displayScore'
  ;   K[13]='m_maxLevel'
  ;   K[14]='GetMaxLevel'
  ;   K[15]='m_progressAnchorX'
  ;   K[16]='m_progressBgRect'
  ;   K[17]='anchoredPosition'
  ;   K[18]='x'
  ;   K[19]='_InitCells'
  ;   K[20]='UpdateContentByScore'
  ;   locals: self(0-30), progressInfo(0-30), definition(0-30), displayScore(0-30)
  0000  SETTABLE  R0[K0('m_progressInfo')] = R1
  0001  SELF      R5 = R1[K2('GetModel')] (self)
  0002  CALL      R4 = call(R4, 1 args, 1 rets)
  0003  SETTABLE  R0[K1('m_model')] = R4
  0004  SETTABLE  R0[K3('m_definition')] = R2
  0005  GETTABLE  R4 = R0[K3('m_definition')]
  0006  GETTABLE  R4 = R4[K5('CellSpacingHeight')]
  0007  SETTABLE  R0[K4('m_cellSpacingHeight')] = R4
  0008  GETTABLE  R4 = R0[K3('m_definition')]
  0009  GETTABLE  R4 = R4[K7('LevelCellHeight')]
  0010  SETTABLE  R0[K6('m_cellHeight')] = R4
  0011  GETTABLE  R4 = R0[K9('m_progressIconRect')]
  0012  GETTABLE  R4 = R4[K10('sizeDelta')]
  0013  GETTABLE  R4 = R4[K11('y')]
  0014  SETTABLE  R0[K8('m_progressIconHeight')] = R4
  0015  SETTABLE  R0[K12('m_displayScore')] = R3
  0016  GETTABLE  R4 = R0[K0('m_progressInfo')]
  0017  SELF      R5 = R4[K14('GetMaxLevel')] (self)
  0018  CALL      R4 = call(R4, 1 args, 1 rets)
  0019  SETTABLE  R0[K13('m_maxLevel')] = R4
  0020  GETTABLE  R4 = R0[K16('m_progressBgRect')]
  0021  GETTABLE  R4 = R4[K17('anchoredPosition')]
  0022  GETTABLE  R4 = R4[K18('x')]
  0023  SETTABLE  R0[K15('m_progressAnchorX')] = R4
  0024  SELF      R5 = R0[K19('_InitCells')] (self)
  0025  CALL      R4 = call(R4, 0 args, 1 rets)
  0026  SELF      R5 = R0[K20('UpdateContentByScore')] (self)
  0027  MOVE      R6 = R0
  0028  CALL      R4 = call(R4, 0 args, 2 rets)
  0029  RETURN    return R0..R-1
; ---------- proto1 [_InitCells] ----------
  ; fn ?  line 23-35 np=1 va=0 ms=15 code=43 consts=19 upvals=1 protos=0
  ;   K[0]='m_maxLevel'
  ;   K[1]='m_progressInfo'
  ;   K[2]='GetLevelByScore'
  ;   K[3]='m_displayScore'
  ;   K[4]='m_arrProgressCells'
  ;   K[5]=0
  ;   K[6]=-1
  ;   K[7]='Object'
  ;   K[8]='Instantiate'
  ;   K[9]='m_levelCellPrefab'
  ;   K[10]='transform'
  ;   K[11]='GetLuaTable'
  ;   K[12]='Init'
  ;   K[13]='table'
  ;   K[14]='insert'
  ;   K[15]=1
  ;   K[16]='LayoutRebuilder'
  ;   K[17]='ForceRebuildLayoutImmediate'
  ;   K[18]='parent'
  ;   upvals: _ENV
  ;   locals: self(0-43), maxLevel(1-43), displayLevel(5-43), (for index)(10-37), (for limit)(10-37), (for step)(10-37), level(11-36), progressCellObject(16-36), progressCell(18-36)
  0000  GETTABLE  R1 = R0[K0('m_maxLevel')]
  0001  GETTABLE  R2 = R0[K1('m_progressInfo')]
  0002  SELF      R3 = R2[K2('GetLevelByScore')] (self)
  0003  GETTABLE  R4 = R0[K3('m_displayScore')]
  0004  CALL      R2 = call(R2, 1 args, 2 rets)
  0005  NEWTABLE  R3 = {} (0 items)
  0006  SETTABLE  R0[K4('m_arrProgressCells')] = R3
  0007  MOVE      R3 = R0
  0008  LOADK     R4 = K5 0
  0009  LOADK     R5 = K6 -1
  0010  FORPREP   forprep R3(sBx=25)   -> 36
  0011  GETTABUP  R7 = _ENV[K7('Object')]
  0012  GETTABLE  R7 = R7[K8('Instantiate')]
  0013  GETTABLE  R8 = R0[K9('m_levelCellPrefab')]
  0014  GETTABLE  R9 = R0[K10('transform')]
  0015  CALL      R7 = call(R7, 1 args, 2 rets)
  0016  SELF      R9 = R7[K11('GetLuaTable')] (self)
  0017  CALL      R8 = call(R8, 1 args, 1 rets)
  0018  SELF      R10 = R8[K12('Init')] (self)
  0019  MOVE      R11 = R0
  0020  MOVE      R12 = R0
  0021  LT        if R1 lt R2   -> -127975
  0022  JMP       (jump)   -> 24
  0023  LOADBOOL  R13 = false
  0024  LOADBOOL  R13 = true
  0025  EQ        if R1 eq R2   -> -127971
  0026  JMP       (jump)   -> 28
  0027  LOADBOOL  R14 = false
  0028  LOADBOOL  R14 = true
  0029  CALL      R9 = call(R9, 0 args, 5 rets)
  0030  GETTABUP  R9 = _ENV[K13('table')]
  0031  GETTABLE  R9 = R9[K14('insert')]
  0032  GETTABLE  R10 = R0[K4('m_arrProgressCells')]
  0033  LOADK     R11 = K15 1
  0034  MOVE      R12 = R0
  0035  CALL      R9 = call(R9, 0 args, 3 rets)
  0036  FORLOOP   forloop R3(sBx=-26)   -> 11
  0037  GETTABUP  R3 = _ENV[K16('LayoutRebuilder')]
  0038  GETTABLE  R3 = R3[K17('ForceRebuildLayoutImmediate')]
  0039  GETTABLE  R4 = R0[K10('transform')]
  0040  GETTABLE  R4 = R4[K18('parent')]
  0041  CALL      R3 = call(R3, 0 args, 1 rets)
  0042  RETURN    return R0..R-1
; ---------- proto2 [PlayProgressAnimation] ----------
  ; fn ?  line 39-83 np=6 va=0 ms=17 code=51 consts=15 upvals=1 protos=4
  ;   K[0]=1
  ;   K[1]='DOTween'
  ;   K[2]='Sequence'
  ;   K[3]='UpdateContentByScore'
  ;   K[4]='Append'
  ;   K[5]='To'
  ;   K[6]='SetEase'
  ;   K[7]='Ease'
  ;   K[8]='InOutSine'
  ;   K[9]='m_arrProgressCells'
  ;   K[10]=nil
  ;   K[11]='m_progressInfo'
  ;   K[12]='HasFinishedAllLevelByScore'
  ;   K[13]='AppendCallback'
  ;   K[14]='HideProgressForAnim'
  ;   upvals: _ENV
  ;   locals: self(0-51), fromScore(0-51), targetScore(0-51), fromLevel(0-51), targetLevel(0-51), sliderFinishCallback(0-51), sScore(1-51), eScore(2-51), duration(3-51), seq(6-51), targetLevelCell(35-49), nextLevelCell(38-49)
  0000  MOVE      R6 = R0
  0001  MOVE      R7 = R0
  0002  LOADK     R8 = K0 1
  0003  GETTABUP  R9 = _ENV[K1('DOTween')]
  0004  GETTABLE  R9 = R9[K2('Sequence')]
  0005  CALL      R9 = call(R9, 1 args, 0 rets)
  0006  SELF      R11 = R0[K3('UpdateContentByScore')] (self)
  0007  MOVE      R12 = R0
  0008  CALL      R10 = call(R10, 0 args, 2 rets)
  0009  SELF      R11 = R9[K4('Append')] (self)
  0010  GETTABUP  R12 = _ENV[K1('DOTween')]
  0011  GETTABLE  R12 = R12[K5('To')]
  0012  CLOSURE   R13 = closure proto0
  0013  CLOSURE   R14 = closure proto1
  0014  MOVE      R15 = R0
  0015  MOVE      R16 = R0
  0016  CALL      R12 = call(R12, 1 args, 4 rets)
  0017  SELF      R13 = R12[K6('SetEase')] (self)
  0018  GETTABUP  R14 = _ENV[K7('Ease')]
  0019  GETTABLE  R14 = R14[K8('InOutSine')]
  0020  CALL      R12 = call(R12, -1 args, 2 rets)
  0021  CALL      R10 = call(R10, 0 args, -1 rets)
  0022  GETTABLE  R10 = R0[K9('m_arrProgressCells')]
  0023  EQ        if R1 eq K10(nil)   -> -125661
  0024  JMP       (jump)   -> 49
  0025  LT        if R1 lt R4   -> -129505
  0026  JMP       (jump)   -> 33
  0027  GETTABLE  R10 = R0[K11('m_progressInfo')]
  0028  SELF      R11 = R10[K12('HasFinishedAllLevelByScore')] (self)
  0029  MOVE      R12 = R0
  0030  CALL      R10 = call(R10, 1 args, 2 rets)
  0031  TEST      if not R10 then   -> -131039
  0032  JMP       (jump)   -> 49
  0033  GETTABLE  R10 = R0[K9('m_arrProgressCells')]
  0034  GETTABLE  R10 = R10[R4]
  0035  GETTABLE  R11 = R0[K9('m_arrProgressCells')]
  0036  ADD       R12 = K0(1) add R4
  0037  GETTABLE  R11 = R11[R12]
  0038  SELF      R13 = R9[K13('AppendCallback')] (self)
  0039  CLOSURE   R14 = closure proto2
  0040  CALL      R12 = call(R12, 0 args, 2 rets)
  0041  SELF      R13 = R9[K4('Append')] (self)
  0042  SELF      R15 = R0[K14('HideProgressForAnim')] (self)
  0043  CALL      R14 = call(R14, -1 args, 1 rets)
  0044  CALL      R12 = call(R12, 0 args, -1 rets)
  0045  SELF      R13 = R9[K13('AppendCallback')] (self)
  0046  CLOSURE   R14 = closure proto3
  0047  CALL      R12 = call(R12, 0 args, 2 rets)
  0048  JMP       (jump)   -> 49
  0049  RETURN    return R9..R8
  0050  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 50-52 np=0 va=0 ms=2 code=3 consts=0 upvals=1 protos=0
    ;   upvals: sScore
    0000  GETUPVAL  R0 = sScore
    0001  RETURN    return R0..R-1
    0002  RETURN    return R0..R-1
  ; ---------- proto1 [] ----------
    ; fn ?  line 53-56 np=1 va=0 ms=7 code=11 consts=3 upvals=3 protos=0
    ;   K[0]='math'
    ;   K[1]='ceil'
    ;   K[2]='UpdateContentByScore'
    ;   upvals: _ENV, self, fromLevel
    ;   locals: x(0-11), num(4-11)
    0000  GETTABUP  R1 = _ENV[K0('math')]
    0001  GETTABLE  R1 = R1[K1('ceil')]
    0002  MOVE      R2 = R0
    0003  CALL      R1 = call(R1, 1 args, 1 rets)
    0004  GETUPVAL  R2 = _ENV
    0005  SELF      R3 = R2[K2('UpdateContentByScore')] (self)
    0006  MOVE      R4 = R0
    0007  SUB       R5 = R1 sub R0
    0008  GETUPVAL  R6 = _ENV
    0009  CALL      R2 = call(R2, 0 args, 4 rets)
    0010  RETURN    return R0..R-1
  ; ---------- proto2 [] ----------
    ; fn ?  line 64-69 np=0 va=0 ms=4 code=11 consts=2 upvals=2 protos=0
    ;   K[0]='UpdateBgSprite'
    ;   K[1]=nil
    ;   upvals: targetLevelCell, sliderFinishCallback
    0000  GETUPVAL  R0 = targetLevelCell
    0001  SELF      R1 = R0[K0('UpdateBgSprite')] (self)
    0002  LOADBOOL  R2 = true
    0003  LOADBOOL  R3 = true
    0004  CALL      R0 = call(R0, 0 args, 3 rets)
    0005  GETUPVAL  R0 = targetLevelCell
    0006  EQ        if R1 eq K1(nil)   -> -130807
    0007  JMP       (jump)   -> 10
    0008  GETUPVAL  R0 = targetLevelCell
    0009  CALL      R0 = call(R0, 0 args, 0 rets)
    0010  RETURN    return R0..R-1
  ; ---------- proto3 [] ----------
    ; fn ?  line 72-79 np=0 va=0 ms=4 code=6 consts=1 upvals=1 protos=0
    ;   K[0]='UpdateLoopEffectEnabled'
    ;   upvals: targetLevelCell
    0000  GETUPVAL  R0 = targetLevelCell
    0001  SELF      R1 = R0[K0('UpdateLoopEffectEnabled')] (self)
    0002  LOADBOOL  R2 = false
    0003  LOADBOOL  R3 = true
    0004  CALL      R0 = call(R0, 0 args, 3 rets)
    0005  RETURN    return R0..R-1
; ---------- proto3 [HideProgressForAnim] ----------
  ; fn ?  line 86-91 np=1 va=0 ms=8 code=29 consts=14 upvals=1 protos=0
  ;   K[0]='DOTween'
  ;   K[1]='Sequence'
  ;   K[2]='Append'
  ;   K[3]='m_progressBgRect'
  ;   K[4]='DOAnchorPosX'
  ;   K[5]='m_progressAnchorX'
  ;   K[6]=20
  ;   K[7]=0.2
  ;   K[8]='SetEase'
  ;   K[9]='Ease'
  ;   K[10]='OutSine'
  ;   K[11]=120
  ;   K[12]=0.4
  ;   K[13]='InSine'
  ;   upvals: _ENV
  ;   locals: self(0-29), seq(3-29)
  0000  GETTABUP  R1 = _ENV[K0('DOTween')]
  0001  GETTABLE  R1 = R1[K1('Sequence')]
  0002  CALL      R1 = call(R1, 1 args, 0 rets)
  0003  SELF      R3 = R1[K2('Append')] (self)
  0004  GETTABLE  R4 = R0[K3('m_progressBgRect')]
  0005  SELF      R5 = R4[K4('DOAnchorPosX')] (self)
  0006  GETTABLE  R6 = R0[K5('m_progressAnchorX')]
  0007  ADD       R6 = K6(20) add R6
  0008  LOADK     R7 = K7 0.2
  0009  CALL      R4 = call(R4, 1 args, 3 rets)
  0010  SELF      R5 = R4[K8('SetEase')] (self)
  0011  GETTABUP  R6 = _ENV[K9('Ease')]
  0012  GETTABLE  R6 = R6[K10('OutSine')]
  0013  CALL      R4 = call(R4, -1 args, 2 rets)
  0014  CALL      R2 = call(R2, 0 args, -1 rets)
  0015  SELF      R3 = R1[K2('Append')] (self)
  0016  GETTABLE  R4 = R0[K3('m_progressBgRect')]
  0017  SELF      R5 = R4[K4('DOAnchorPosX')] (self)
  0018  GETTABLE  R6 = R0[K5('m_progressAnchorX')]
  0019  SUB       R6 = K11(120) sub R6
  0020  LOADK     R7 = K12 0.4
  0021  CALL      R4 = call(R4, 1 args, 3 rets)
  0022  SELF      R5 = R4[K8('SetEase')] (self)
  0023  GETTABUP  R6 = _ENV[K9('Ease')]
  0024  GETTABLE  R6 = R6[K13('InSine')]
  0025  CALL      R4 = call(R4, -1 args, 2 rets)
  0026  CALL      R2 = call(R2, 0 args, -1 rets)
  0027  RETURN    return R1..R0
  0028  RETURN    return R0..R-1
; ---------- proto4 [ShowProgressForAnim] ----------
  ; fn ?  line 94-97 np=2 va=0 ms=5 code=9 consts=5 upvals=1 protos=0
  ;   K[0]='UIUtil'
  ;   K[1]='SetAnchoredPosition'
  ;   K[2]='m_progressBgRect'
  ;   K[3]='m_progressAnchorX'
  ;   K[4]='UpdateContentByScore'
  ;   upvals: _ENV
  ;   locals: self(0-9), score(0-9)
  0000  GETTABUP  R2 = _ENV[K0('UIUtil')]
  0001  GETTABLE  R2 = R2[K1('SetAnchoredPosition')]
  0002  GETTABLE  R3 = R0[K2('m_progressBgRect')]
  0003  GETTABLE  R4 = R0[K3('m_progressAnchorX')]
  0004  CALL      R2 = call(R2, 0 args, 2 rets)
  0005  SELF      R3 = R0[K4('UpdateContentByScore')] (self)
  0006  MOVE      R4 = R0
  0007  CALL      R2 = call(R2, 0 args, 2 rets)
  0008  RETURN    return R0..R-1
; ---------- proto5 [UpdateContentByScore] ----------
  ; fn ?  line 100-124 np=4 va=0 ms=13 code=62 consts=20 upvals=0 protos=0
  ;   K[0]=0
  ;   K[1]=nil
  ;   K[2]='m_progressInfo'
  ;   K[3]='GetLevelRequiredScoreFromLevelStartByLevel'
  ;   K[4]='GetLevelRequiredScoreByLevel'
  ;   K[5]=1
  ;   K[6]='GetScoreFromLevelStartByScoreForDisplay'
  ;   K[7]='GetLevelByScoreForDisplay'
  ;   K[8]='m_progressText'
  ;   K[9]='text'
  ;   K[10]='/'
  ;   K[11]='transform'
  ;   K[12]='sizeDelta'
  ;   K[13]='y'
  ;   K[14]='m_cellHeight'
  ;   K[15]=2
  ;   K[16]='m_progressIconHeight'
  ;   K[17]='m_maxLevel'
  ;   K[18]='m_slider'
  ;   K[19]='value'
  ;   locals: self(0-62), score(0-62), deltaScore(0-62), fromLevel(0-62), curScore(4-62), level(4-62), curTargetScore(4-62), sliderTotalHeight(42-62), deltaRatio(48-62), baseRatio(51-62), minRatio(52-62), targetRatio(59-62)
  0000  TEST      if not R2 then   -> -131069
  0001  JMP       (jump)   -> 3
  0002  LOADK     R2 = K0 0
  0003  LOADNIL   R4..R4 = nil
  0004  EQ        if R1 eq K1(nil)   -> -129273
  0005  JMP       (jump)   -> 18
  0006  MOVE      R5 = R0
  0007  GETTABLE  R7 = R0[K2('m_progressInfo')]
  0008  SELF      R8 = R7[K3('GetLevelRequiredScoreFromLevelStartByLevel')] (self)
  0009  MOVE      R9 = R0
  0010  CALL      R7 = call(R7, 1 args, 2 rets)
  0011  MOVE      R6 = R0
  0012  GETTABLE  R7 = R0[K2('m_progressInfo')]
  0013  SELF      R8 = R7[K4('GetLevelRequiredScoreByLevel')] (self)
  0014  SUB       R9 = K5(1) sub R5
  0015  CALL      R7 = call(R7, 1 args, 2 rets)
  0016  SUB       R4 = R7 sub R1
  0017  JMP       (jump)   -> 33
  0018  GETTABLE  R7 = R0[K2('m_progressInfo')]
  0019  SELF      R8 = R7[K6('GetScoreFromLevelStartByScoreForDisplay')] (self)
  0020  MOVE      R9 = R0
  0021  CALL      R7 = call(R7, 1 args, 2 rets)
  0022  MOVE      R4 = R0
  0023  GETTABLE  R7 = R0[K2('m_progressInfo')]
  0024  SELF      R8 = R7[K7('GetLevelByScoreForDisplay')] (self)
  0025  MOVE      R9 = R0
  0026  CALL      R7 = call(R7, 1 args, 2 rets)
  0027  MOVE      R5 = R0
  0028  GETTABLE  R7 = R0[K2('m_progressInfo')]
  0029  SELF      R8 = R7[K3('GetLevelRequiredScoreFromLevelStartByLevel')] (self)
  0030  MOVE      R9 = R0
  0031  CALL      R7 = call(R7, 1 args, 2 rets)
  0032  MOVE      R6 = R0
  0033  GETTABLE  R7 = R0[K8('m_progressText')]
  0034  MOVE      R8 = R0
  0035  LOADK     R9 = K10 '/'
  0036  MOVE      R10 = R0
  0037  CONCAT    R8 = concat(R8..R8)
  0038  SETTABLE  R7[K9('text')] = R8
  0039  GETTABLE  R7 = R0[K11('transform')]
  0040  GETTABLE  R7 = R7[K12('sizeDelta')]
  0041  GETTABLE  R7 = R7[K13('y')]
  0042  GETTABLE  R8 = R0[K14('m_cellHeight')]
  0043  DIV       R8 = K15(2) div R8
  0044  GETTABLE  R9 = R0[K16('m_progressIconHeight')]
  0045  DIV       R9 = K15(2) div R9
  0046  ADD       R8 = R9 add R8
  0047  DIV       R8 = R7 div R8
  0048  SUB       R9 = K5(1) sub R5
  0049  GETTABLE  R10 = R0[K17('m_maxLevel')]
  0050  DIV       R9 = R10 div R9
  0051  ADD       R10 = R8 add R9
  0052  GETTABLE  R11 = R0[K17('m_maxLevel')]
  0053  DIV       R11 = R11 div K5(1)
  0054  SUB       R11 = R8 sub R11
  0055  ADD       R12 = R2 add R4
  0056  DIV       R12 = R6 div R12
  0057  MUL       R11 = R12 mul R11
  0058  ADD       R11 = R11 add R10
  0059  GETTABLE  R12 = R0[K18('m_slider')]
  0060  SETTABLE  R12[K19('value')] = R11
  0061  RETURN    return R0..R-1
; ---------- proto6 [OnProgressIconClicked] ----------
  ; fn ?  line 126-129 np=1 va=0 ms=6 code=8 consts=5 upvals=0 protos=0
  ;   K[0]='m_progressIconRect'
  ;   K[1]='transform'
  ;   K[2]='position'
  ;   K[3]='ShowTokenDescTip'
  ;   K[4]=20
  ;   locals: self(0-8), pos(3-8)
  0000  GETTABLE  R1 = R0[K0('m_progressIconRect')]
  0001  GETTABLE  R1 = R1[K1('transform')]
  0002  GETTABLE  R1 = R1[K2('position')]
  0003  SELF      R3 = R0[K3('ShowTokenDescTip')] (self)
  0004  MOVE      R4 = R0
  0005  LOADK     R5 = K4 20
  0006  CALL      R2 = call(R2, 0 args, 3 rets)
  0007  RETURN    return R0..R-1
; ---------- proto7 [ShowTokenDescTip] ----------
  ; fn ?  line 131-133 np=3 va=0 ms=13 code=18 consts=10 upvals=1 protos=0
  ;   K[0]='m_tokenTip'
  ;   K[1]='Show'
  ;   K[2]='m_model'
  ;   K[3]='GetTokenHelper'
  ;   K[4]='GM'
  ;   K[5]='GameTextModel'
  ;   K[6]='GetText'
  ;   K[7]='progress_general_how_to_play'
  ;   K[8]='m_definition'
  ;   K[9]='ActivityTokenIconName'
  ;   upvals: _ENV
  ;   locals: self(0-18), pos(0-18), halfY(0-18)
  0000  GETTABLE  R3 = R0[K0('m_tokenTip')]
  0001  SELF      R4 = R3[K1('Show')] (self)
  0002  MOVE      R5 = R0
  0003  MOVE      R6 = R0
  0004  GETTABLE  R7 = R0[K2('m_model')]
  0005  SELF      R8 = R7[K3('GetTokenHelper')] (self)
  0006  CALL      R7 = call(R7, 1 args, 1 rets)
  0007  GETTABUP  R8 = _ENV[K4('GM')]
  0008  GETTABLE  R8 = R8[K5('GameTextModel')]
  0009  SELF      R9 = R8[K6('GetText')] (self)
  0010  LOADK     R10 = K7 'progress_general_how_to_play'
  0011  GETTABLE  R11 = R0[K8('m_definition')]
  0012  GETTABLE  R11 = R11[K9('ActivityTokenIconName')]
  0013  GETTABLE  R12 = R0[K8('m_definition')]
  0014  GETTABLE  R12 = R12[K9('ActivityTokenIconName')]
  0015  CALL      R8 = call(R8, -1 args, 4 rets)
  0016  CALL      R3 = call(R3, 0 args, -1 rets)
  0017  RETURN    return R0..R-1
; ---------- proto8 [UpdateLevelCellLoopEffect] ----------
  ; fn ?  line 135-140 np=4 va=0 ms=9 code=10 consts=4 upvals=0 protos=0
  ;   K[0]='m_arrProgressCells'
  ;   K[1]=1
  ;   K[2]=nil
  ;   K[3]='UpdateLoopEffectEnabled'
  ;   locals: self(0-10), level(0-10), bShow(0-10), bAnim(0-10), cell(3-10)
  0000  GETTABLE  R4 = R0[K0('m_arrProgressCells')]
  0001  ADD       R5 = K1(1) add R1
  0002  GETTABLE  R4 = R4[R5]
  0003  EQ        if R1 eq K2(nil)   -> -128761
  0004  JMP       (jump)   -> 9
  0005  SELF      R6 = R4[K3('UpdateLoopEffectEnabled')] (self)
  0006  MOVE      R7 = R0
  0007  MOVE      R8 = R0
  0008  CALL      R5 = call(R5, 0 args, 3 rets)
  0009  RETURN    return R0..R-1
; ---------- proto9 [Init] ----------
  ; fn ?  line 147-160 np=5 va=0 ms=8 code=28 consts=11 upvals=1 protos=0
  ;   K[0]='m_slider'
  ;   K[1]=1
  ;   K[2]='m_levelText'
  ;   K[3]='text'
  ;   K[4]=''
  ;   K[5]='UIUtil'
  ;   K[6]='SetActive'
  ;   K[7]='m_boomEffectGo'
  ;   K[8]='m_startIconGo'
  ;   K[9]='UpdateBgSprite'
  ;   K[10]='UpdateLoopEffectEnabled'
  ;   upvals: _ENV
  ;   locals: self(0-28), slider(0-28), level(0-28), bAcquired(0-28), bShowLoop(0-28)
  0000  SETTABLE  R0[K0('m_slider')] = R1
  0001  LE        if R0 le R2   -> 517
  0002  JMP       (jump)   -> 6
  0003  GETTABLE  R5 = R0[K2('m_levelText')]
  0004  SETTABLE  R5[K3('text')] = R2
  0005  JMP       (jump)   -> 8
  0006  GETTABLE  R5 = R0[K2('m_levelText')]
  0007  SETTABLE  R5[K3('text')] = K4('')
  0008  GETTABUP  R5 = _ENV[K5('UIUtil')]
  0009  GETTABLE  R5 = R5[K6('SetActive')]
  0010  GETTABLE  R6 = R0[K7('m_boomEffectGo')]
  0011  LOADBOOL  R7 = false
  0012  CALL      R5 = call(R5, 0 args, 2 rets)
  0013  GETTABUP  R5 = _ENV[K5('UIUtil')]
  0014  GETTABLE  R5 = R5[K6('SetActive')]
  0015  GETTABLE  R6 = R0[K8('m_startIconGo')]
  0016  LT        if R1 lt K1(1)   -> -129773
  0017  JMP       (jump)   -> 19
  0018  LOADBOOL  R7 = false
  0019  LOADBOOL  R7 = true
  0020  CALL      R5 = call(R5, 0 args, 2 rets)
  0021  SELF      R6 = R0[K9('UpdateBgSprite')] (self)
  0022  MOVE      R7 = R0
  0023  CALL      R5 = call(R5, 0 args, 2 rets)
  0024  SELF      R6 = R0[K10('UpdateLoopEffectEnabled')] (self)
  0025  MOVE      R7 = R0
  0026  CALL      R5 = call(R5, 0 args, 2 rets)
  0027  RETURN    return R0..R-1
; ---------- proto10 [UpdateBgSprite] ----------
  ; fn ?  line 162-169 np=3 va=0 ms=6 code=27 consts=16 upvals=1 protos=0
  ;   K[0]='m_IconImg'
  ;   K[1]='sprite'
  ;   K[2]='m_acquiredSprite'
  ;   K[3]='m_normalSprite'
  ;   K[4]='GM'
  ;   K[5]='AudioModel'
  ;   K[6]='PlayEffect'
  ;   K[7]='AudioFileConfigName'
  ;   K[8]='SfxNewItem'
  ;   K[9]='PlatformInterface'
  ;   K[10]='Vibrate'
  ;   K[11]='EVibrationType'
  ;   K[12]='Medium'
  ;   K[13]='UIUtil'
  ;   K[14]='SetActive'
  ;   K[15]='m_boomEffectGo'
  ;   upvals: _ENV
  ;   locals: self(0-27), bAcquired(0-27), bAnim(0-27)
  0000  GETTABLE  R3 = R0[K0('m_IconImg')]
  0001  TEST      if not R1 then   -> -131069
  0002  JMP       (jump)   -> 6
  0003  GETTABLE  R4 = R0[K2('m_acquiredSprite')]
  0004  TEST      if not R4 then   -> -131065
  0005  JMP       (jump)   -> 7
  0006  GETTABLE  R4 = R0[K3('m_normalSprite')]
  0007  SETTABLE  R3[K1('sprite')] = R4
  0008  TEST      if not R2 then   -> -131062
  0009  JMP       (jump)   -> 26
  0010  GETTABUP  R3 = _ENV[K4('GM')]
  0011  GETTABLE  R3 = R3[K5('AudioModel')]
  0012  SELF      R4 = R3[K6('PlayEffect')] (self)
  0013  GETTABUP  R5 = _ENV[K7('AudioFileConfigName')]
  0014  GETTABLE  R5 = R5[K8('SfxNewItem')]
  0015  CALL      R3 = call(R3, 0 args, 2 rets)
  0016  GETTABUP  R3 = _ENV[K9('PlatformInterface')]
  0017  GETTABLE  R3 = R3[K10('Vibrate')]
  0018  GETTABUP  R4 = _ENV[K11('EVibrationType')]
  0019  GETTABLE  R4 = R4[K12('Medium')]
  0020  CALL      R3 = call(R3, 0 args, 1 rets)
  0021  GETTABUP  R3 = _ENV[K13('UIUtil')]
  0022  GETTABLE  R3 = R3[K14('SetActive')]
  0023  GETTABLE  R4 = R0[K15('m_boomEffectGo')]
  0024  LOADBOOL  R5 = true
  0025  CALL      R3 = call(R3, 0 args, 2 rets)
  0026  RETURN    return R0..R-1
; ---------- proto11 [UpdateLoopEffectEnabled] ----------
  ; fn ?  line 171-177 np=3 va=0 ms=7 code=19 consts=8 upvals=1 protos=0
  ;   K[0]='m_loopEffectCanvasGroup'
  ;   K[1]='DOFade'
  ;   K[2]=1
  ;   K[3]=0
  ;   K[4]=0.5
  ;   K[5]='UIUtil'
  ;   K[6]='SetActive'
  ;   K[7]='m_loopEffectGo'
  ;   upvals: _ENV
  ;   locals: self(0-19), bShow(0-19), bAnim(0-19)
  0000  TEST      if not R2 then   -> -131070
  0001  JMP       (jump)   -> 13
  0002  GETTABLE  R3 = R0[K0('m_loopEffectCanvasGroup')]
  0003  SELF      R4 = R3[K1('DOFade')] (self)
  0004  TEST      if not R1 then   -> -131066
  0005  JMP       (jump)   -> 9
  0006  LOADK     R5 = K2 1
  0007  TEST      if not R5 then   -> -131062
  0008  JMP       (jump)   -> 10
  0009  LOADK     R5 = K3 0
  0010  LOADK     R6 = K4 0.5
  0011  CALL      R3 = call(R3, 0 args, 3 rets)
  0012  JMP       (jump)   -> 18
  0013  GETTABUP  R3 = _ENV[K5('UIUtil')]
  0014  GETTABLE  R3 = R3[K6('SetActive')]
  0015  GETTABLE  R4 = R0[K7('m_loopEffectGo')]
  0016  MOVE      R5 = R0
  0017  CALL      R3 = call(R3, 0 args, 2 rets)
  0018  RETURN    return R0..R-1
; ---------- proto12 [OnClicked] ----------
  ; fn ?  line 179-182 np=1 va=0 ms=6 code=8 consts=5 upvals=0 protos=0
  ;   K[0]='transform'
  ;   K[1]='position'
  ;   K[2]='m_slider'
  ;   K[3]='ShowTokenDescTip'
  ;   K[4]=25
  ;   locals: self(0-8), pos(2-8)
  0000  GETTABLE  R1 = R0[K0('transform')]
  0001  GETTABLE  R1 = R1[K1('position')]
  0002  GETTABLE  R2 = R0[K2('m_slider')]
  0003  SELF      R3 = R2[K3('ShowTokenDescTip')] (self)
  0004  MOVE      R4 = R0
  0005  LOADK     R5 = K4 25
  0006  CALL      R2 = call(R2, 0 args, 3 rets)
  0007  RETURN    return R0..R-1
