# UI_SubView_BaseRankScrollView_374.luac
; fn @BaseRankScrollView.lua  line 0-0 np=0 va=1 ms=2 code=71 consts=29 upvals=1 protos=20
;   K[0]='BaseRankScrollView'
;   K[1]='TopFloatOffset'
;   K[2]=0
;   K[3]='BottomFloatOffset'
;   K[4]='TopThresholdPadding'
;   K[5]='FloatBottom'
;   K[6]=true
;   K[7]='FloatTop'
;   K[8]='__index'
;   K[9]='Init'
;   K[10]='OnDestroy'
;   K[11]='_InitFloatOwnCell'
;   K[12]='_InitRankCells'
;   K[13]='PlayRankUpAnimation'
;   K[14]='_GetRankingUpScrollContentTargetY'
;   K[15]='_GetRankingUpAnimationDuration'
;   K[16]='_GetTopThresholdPosY'
;   K[17]='_GetBottomThresholdPosY'
;   K[18]='_GetFloatCellRankChangeTween'
;   K[19]='_AdjustFloatOwnCellAppearance'
;   K[20]='_ToggleFloatOwnCellVisible'
;   K[21]='ForceHideFloatOwnCell'
;   K[22]='_GetMaxScrollContentOffsetY'
;   K[23]='_GetScrollContentPosY'
;   K[24]='GetCell'
;   K[25]='GetListItemByIndex'
;   K[26]='SetUserRank'
;   K[27]='GetUserRank'
;   K[28]='_GetMaxCellCount'
;   upvals: _ENV
0000  NEWTABLE  R0 = {} (0 items)
0001  SETTABLE  R0[K1('TopFloatOffset')] = K2(0)
0002  SETTABLE  R0[K3('BottomFloatOffset')] = K2(0)
0003  SETTABLE  R0[K4('TopThresholdPadding')] = K2(0)
0004  SETTABLE  R0[K5('FloatBottom')] = K6(true)
0005  SETTABLE  R0[K7('FloatTop')] = K6(true)
0006  SETTABUP  _ENV[K0('BaseRankScrollView')] = R0
0007  GETTABUP  R0 = _ENV[K0('BaseRankScrollView')]
0008  GETTABUP  R1 = _ENV[K0('BaseRankScrollView')]
0009  SETTABLE  R0[K8('__index')] = R1
0010  GETTABUP  R0 = _ENV[K0('BaseRankScrollView')]
0011  CLOSURE   R1 = closure proto0
0012  SETTABLE  R0[K9('Init')] = R1
0013  GETTABUP  R0 = _ENV[K0('BaseRankScrollView')]
0014  CLOSURE   R1 = closure proto1
0015  SETTABLE  R0[K10('OnDestroy')] = R1
0016  GETTABUP  R0 = _ENV[K0('BaseRankScrollView')]
0017  CLOSURE   R1 = closure proto2
0018  SETTABLE  R0[K11('_InitFloatOwnCell')] = R1
0019  GETTABUP  R0 = _ENV[K0('BaseRankScrollView')]
0020  CLOSURE   R1 = closure proto3
0021  SETTABLE  R0[K12('_InitRankCells')] = R1
0022  GETTABUP  R0 = _ENV[K0('BaseRankScrollView')]
0023  CLOSURE   R1 = closure proto4
0024  SETTABLE  R0[K13('PlayRankUpAnimation')] = R1
0025  GETTABUP  R0 = _ENV[K0('BaseRankScrollView')]
0026  CLOSURE   R1 = closure proto5
0027  SETTABLE  R0[K14('_GetRankingUpScrollContentTargetY')] = R1
0028  GETTABUP  R0 = _ENV[K0('BaseRankScrollView')]
0029  CLOSURE   R1 = closure proto6
0030  SETTABLE  R0[K15('_GetRankingUpAnimationDuration')] = R1
0031  GETTABUP  R0 = _ENV[K0('BaseRankScrollView')]
0032  CLOSURE   R1 = closure proto7
0033  SETTABLE  R0[K16('_GetTopThresholdPosY')] = R1
0034  GETTABUP  R0 = _ENV[K0('BaseRankScrollView')]
0035  CLOSURE   R1 = closure proto8
0036  SETTABLE  R0[K17('_GetBottomThresholdPosY')] = R1
0037  GETTABUP  R0 = _ENV[K0('BaseRankScrollView')]
0038  CLOSURE   R1 = closure proto9
0039  SETTABLE  R0[K18('_GetFloatCellRankChangeTween')] = R1
0040  GETTABUP  R0 = _ENV[K0('BaseRankScrollView')]
0041  CLOSURE   R1 = closure proto10
0042  SETTABLE  R0[K19('_AdjustFloatOwnCellAppearance')] = R1
0043  GETTABUP  R0 = _ENV[K0('BaseRankScrollView')]
0044  CLOSURE   R1 = closure proto11
0045  SETTABLE  R0[K20('_ToggleFloatOwnCellVisible')] = R1
0046  GETTABUP  R0 = _ENV[K0('BaseRankScrollView')]
0047  CLOSURE   R1 = closure proto12
0048  SETTABLE  R0[K21('ForceHideFloatOwnCell')] = R1
0049  GETTABUP  R0 = _ENV[K0('BaseRankScrollView')]
0050  CLOSURE   R1 = closure proto13
0051  SETTABLE  R0[K22('_GetMaxScrollContentOffsetY')] = R1
0052  GETTABUP  R0 = _ENV[K0('BaseRankScrollView')]
0053  CLOSURE   R1 = closure proto14
0054  SETTABLE  R0[K23('_GetScrollContentPosY')] = R1
0055  GETTABUP  R0 = _ENV[K0('BaseRankScrollView')]
0056  CLOSURE   R1 = closure proto15
0057  SETTABLE  R0[K24('GetCell')] = R1
0058  GETTABUP  R0 = _ENV[K0('BaseRankScrollView')]
0059  CLOSURE   R1 = closure proto16
0060  SETTABLE  R0[K25('GetListItemByIndex')] = R1
0061  GETTABUP  R0 = _ENV[K0('BaseRankScrollView')]
0062  CLOSURE   R1 = closure proto17
0063  SETTABLE  R0[K26('SetUserRank')] = R1
0064  GETTABUP  R0 = _ENV[K0('BaseRankScrollView')]
0065  CLOSURE   R1 = closure proto18
0066  SETTABLE  R0[K27('GetUserRank')] = R1
0067  GETTABUP  R0 = _ENV[K0('BaseRankScrollView')]
0068  CLOSURE   R1 = closure proto19
0069  SETTABLE  R0[K28('_GetMaxCellCount')] = R1
0070  RETURN    return R0..R-1
; ---------- proto0 [Init] ----------
  ; fn ?  line 19-21 np=1 va=0 ms=3 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='_InitRankCells'
  ;   locals: self(0-3)
  0000  SELF      R2 = R0[K0('_InitRankCells')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  RETURN    return R0..R-1
; ---------- proto1 [OnDestroy] ----------
  ; fn ?  line 23-25 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 [_InitFloatOwnCell] ----------
  ; fn ?  line 27-41 np=1 va=0 ms=4 code=44 consts=23 upvals=1 protos=0
  ;   K[0]='m_scrollContentTransform'
  ;   K[1]='m_scrollRect'
  ;   K[2]='content'
  ;   K[3]='m_scrollContentHeight'
  ;   K[4]='transform'
  ;   K[5]='sizeDelta'
  ;   K[6]='y'
  ;   K[7]='m_cellHeight'
  ;   K[8]='m_floatRankCellRect'
  ;   K[9]='m_maxCellCountInContent'
  ;   K[10]='math'
  ;   K[11]='ceil'
  ;   K[12]='m_padding'
  ;   K[13]=0
  ;   K[14]='m_halfValidContentHeight'
  ;   K[15]=2
  ;   K[16]='m_floatOwnRankCellGo'
  ;   K[17]='gameObject'
  ;   K[18]='m_floatOwnRankCellTransform'
  ;   K[19]='m_floatOwnRankCellTopPosition'
  ;   K[20]='TopFloatOffset'
  ;   K[21]='m_floatOwnRankCellBottomPosition'
  ;   K[22]='BottomFloatOffset'
  ;   upvals: _ENV
  ;   locals: self(0-44)
  0000  GETTABLE  R1 = R0[K1('m_scrollRect')]
  0001  GETTABLE  R1 = R1[K2('content')]
  0002  SETTABLE  R0[K0('m_scrollContentTransform')] = R1
  0003  GETTABLE  R1 = R0[K1('m_scrollRect')]
  0004  GETTABLE  R1 = R1[K4('transform')]
  0005  GETTABLE  R1 = R1[K5('sizeDelta')]
  0006  GETTABLE  R1 = R1[K6('y')]
  0007  SETTABLE  R0[K3('m_scrollContentHeight')] = R1
  0008  GETTABLE  R1 = R0[K8('m_floatRankCellRect')]
  0009  GETTABLE  R1 = R1[K5('sizeDelta')]
  0010  GETTABLE  R1 = R1[K6('y')]
  0011  SETTABLE  R0[K7('m_cellHeight')] = R1
  0012  GETTABUP  R1 = _ENV[K10('math')]
  0013  GETTABLE  R1 = R1[K11('ceil')]
  0014  GETTABLE  R2 = R0[K3('m_scrollContentHeight')]
  0015  GETTABLE  R3 = R0[K7('m_cellHeight')]
  0016  DIV       R2 = R3 div R2
  0017  CALL      R1 = call(R1, 1 args, 1 rets)
  0018  SETTABLE  R0[K9('m_maxCellCountInContent')] = R1
  0019  SETTABLE  R0[K12('m_padding')] = K13(0)
  0020  GETTABLE  R1 = R0[K3('m_scrollContentHeight')]
  0021  GETTABLE  R2 = R0[K12('m_padding')]
  0022  SUB       R1 = R2 sub R1
  0023  GETTABLE  R2 = R0[K7('m_cellHeight')]
  0024  SUB       R1 = R2 sub R1
  0025  DIV       R1 = K15(2) div R1
  0026  SETTABLE  R0[K14('m_halfValidContentHeight')] = R1
  0027  GETTABLE  R1 = R0[K8('m_floatRankCellRect')]
  0028  GETTABLE  R1 = R1[K17('gameObject')]
  0029  SETTABLE  R0[K16('m_floatOwnRankCellGo')] = R1
  0030  GETTABLE  R1 = R0[K8('m_floatRankCellRect')]
  0031  SETTABLE  R0[K18('m_floatOwnRankCellTransform')] = R1
  0032  GETTABLE  R1 = R0[K12('m_padding')]
  0033  GETTABLE  R2 = R0[K20('TopFloatOffset')]
  0034  ADD       R1 = R2 add R1
  0035  SETTABLE  R0[K19('m_floatOwnRankCellTopPosition')] = R1
  0036  GETTABLE  R1 = R0[K3('m_scrollContentHeight')]
  0037  UNM       R1 = unm R0
  0038  GETTABLE  R2 = R0[K7('m_cellHeight')]
  0039  ADD       R1 = R2 add R1
  0040  GETTABLE  R2 = R0[K22('BottomFloatOffset')]
  0041  ADD       R1 = R2 add R1
  0042  SETTABLE  R0[K21('m_floatOwnRankCellBottomPosition')] = R1
  0043  RETURN    return R0..R-1
; ---------- proto3 [_InitRankCells] ----------
  ; fn ?  line 43-51 np=1 va=0 ms=7 code=15 consts=8 upvals=1 protos=1
  ;   K[0]='_InitFloatOwnCell'
  ;   K[1]='ListViewParam'
  ;   K[2]='CopyDefaultInitParam'
  ;   K[3]='mItemDefaultWithPaddingSize'
  ;   K[4]='m_cellHeight'
  ;   K[5]='m_loopListView'
  ;   K[6]='InitListView'
  ;   K[7]='_GetMaxCellCount'
  ;   upvals: _ENV
  ;   locals: self(0-15), initParam(5-15)
  0000  SELF      R2 = R0[K0('_InitFloatOwnCell')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  GETTABUP  R1 = _ENV[K1('ListViewParam')]
  0003  GETTABLE  R1 = R1[K2('CopyDefaultInitParam')]
  0004  CALL      R1 = call(R1, 1 args, 0 rets)
  0005  GETTABLE  R2 = R0[K4('m_cellHeight')]
  0006  SETTABLE  R1[K3('mItemDefaultWithPaddingSize')] = R2
  0007  GETTABLE  R2 = R0[K5('m_loopListView')]
  0008  SELF      R3 = R2[K6('InitListView')] (self)
  0009  SELF      R5 = R0[K7('_GetMaxCellCount')] (self)
  0010  CALL      R4 = call(R4, 1 args, 1 rets)
  0011  CLOSURE   R5 = closure proto0
  0012  MOVE      R6 = R0
  0013  CALL      R2 = call(R2, 0 args, 4 rets)
  0014  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 48-50 np=2 va=0 ms=6 code=7 consts=1 upvals=1 protos=0
    ;   K[0]='GetListItemByIndex'
    ;   upvals: self
    ;   locals: listView(0-7), cellIndex(0-7)
    0000  GETUPVAL  R2 = self
    0001  SELF      R3 = R2[K0('GetListItemByIndex')] (self)
    0002  MOVE      R4 = R0
    0003  MOVE      R5 = R0
    0004  TAILCALL  tailcall(R2, 0)
    0005  RETURN    return R2..R1
    0006  RETURN    return R0..R-1
; ---------- proto4 [PlayRankUpAnimation] ----------
  ; fn ?  line 54-101 np=5 va=0 ms=16 code=109 consts=46 upvals=1 protos=2
  ;   K[0]='_GetRankingUpAnimationDuration'
  ;   K[1]='m_scrollRect'
  ;   K[2]='movementType'
  ;   K[3]='ScrollRect'
  ;   K[4]='MovementType'
  ;   K[5]='Unrestricted'
  ;   K[6]=0
  ;   K[7]='m_scrollContentTransform'
  ;   K[8]='SetLocalPosY'
  ;   K[9]='_GetTopThresholdPosY'
  ;   K[10]='_GetBottomThresholdPosY'
  ;   K[11]='m_loopListView'
  ;   K[12]='GetShownItemByItemIndex'
  ;   K[13]=1
  ;   K[14]=nil
  ;   K[15]='gameObject'
  ;   K[16]='SetActive'
  ;   K[17]='RefreshAllShownItem'
  ;   K[18]='m_bRankingUp'
  ;   K[19]=true
  ;   K[20]='SetUserRank'
  ;   K[21]='m_floatOwnRankCellGo'
  ;   K[22]='m_floatOwnRankCellTransform'
  ;   K[23]='SetAnchoredPosY'
  ;   K[24]='m_floatOwnRankCellTopPosition'
  ;   K[25]='m_floatOwnRankCellBottomPosition'
  ;   K[26]='GM'
  ;   K[27]='UIManager'
  ;   K[28]='SetEventLock'
  ;   K[29]='DOTween'
  ;   K[30]='Sequence'
  ;   K[31]='AppendInterval'
  ;   K[32]='Append'
  ;   K[33]='DOAnchorPosY'
  ;   K[34]='SetEase'
  ;   K[35]='Ease'
  ;   K[36]='InSine'
  ;   K[37]='Join'
  ;   K[38]='DOLocalMoveY'
  ;   K[39]='_GetRankingUpScrollContentTargetY'
  ;   K[40]='InOutQuint'
  ;   K[41]='OnUpdate'
  ;   K[42]='_GetFloatCellRankChangeTween'
  ;   K[43]=0.3
  ;   K[44]='InOutCubic'
  ;   K[45]='OnKill'
  ;   upvals: _ENV
  ;   locals: self(0-109), lastRank(0-109), curRank(0-109), completeCallback(0-109), appearCallback(0-109), beforeStartPauseDt(4-109), floatDt(4-109), scrollDt(4-109), cell(28-34), seq(62-109)
  0000  SELF      R6 = R0[K0('_GetRankingUpAnimationDuration')] (self)
  0001  MOVE      R7 = R0
  0002  MOVE      R8 = R0
  0003  CALL      R5 = call(R5, 3 args, 3 rets)
  0004  GETTABLE  R8 = R0[K1('m_scrollRect')]
  0005  GETTABUP  R9 = _ENV[K3('ScrollRect')]
  0006  GETTABLE  R9 = R9[K4('MovementType')]
  0007  GETTABLE  R9 = R9[K5('Unrestricted')]
  0008  SETTABLE  R8[K2('movementType')] = R9
  0009  EQ        if R0 eq K6(0)   -> -127727
  0010  JMP       (jump)   -> 18
  0011  GETTABLE  R8 = R0[K7('m_scrollContentTransform')]
  0012  SELF      R9 = R8[K8('SetLocalPosY')] (self)
  0013  SELF      R11 = R0[K9('_GetTopThresholdPosY')] (self)
  0014  MOVE      R12 = R0
  0015  CALL      R10 = call(R10, -1 args, 2 rets)
  0016  CALL      R8 = call(R8, 0 args, -1 rets)
  0017  JMP       (jump)   -> 34
  0018  GETTABLE  R8 = R0[K7('m_scrollContentTransform')]
  0019  SELF      R9 = R8[K8('SetLocalPosY')] (self)
  0020  SELF      R11 = R0[K10('_GetBottomThresholdPosY')] (self)
  0021  MOVE      R12 = R0
  0022  CALL      R10 = call(R10, -1 args, 2 rets)
  0023  CALL      R8 = call(R8, 0 args, -1 rets)
  0024  GETTABLE  R8 = R0[K11('m_loopListView')]
  0025  SELF      R9 = R8[K12('GetShownItemByItemIndex')] (self)
  0026  SUB       R10 = K13(1) sub R1
  0027  CALL      R8 = call(R8, 1 args, 2 rets)
  0028  EQ        if R1 eq K14(nil)   -> -126676
  0029  JMP       (jump)   -> 34
  0030  GETTABLE  R9 = R8[K15('gameObject')]
  0031  SELF      R10 = R9[K16('SetActive')] (self)
  0032  LOADBOOL  R11 = false
  0033  CALL      R9 = call(R9, 0 args, 2 rets)
  0034  GETTABLE  R8 = R0[K11('m_loopListView')]
  0035  SELF      R9 = R8[K17('RefreshAllShownItem')] (self)
  0036  CALL      R8 = call(R8, 0 args, 1 rets)
  0037  SETTABLE  R0[K18('m_bRankingUp')] = K19(true)
  0038  SELF      R9 = R0[K20('SetUserRank')] (self)
  0039  MOVE      R10 = R0
  0040  CALL      R8 = call(R8, 0 args, 2 rets)
  0041  GETTABLE  R8 = R0[K21('m_floatOwnRankCellGo')]
  0042  SELF      R9 = R8[K16('SetActive')] (self)
  0043  LOADBOOL  R10 = true
  0044  CALL      R8 = call(R8, 0 args, 2 rets)
  0045  GETTABLE  R8 = R0[K22('m_floatOwnRankCellTransform')]
  0046  SELF      R9 = R8[K23('SetAnchoredPosY')] (self)
  0047  EQ        if R0 eq K6(0)   -> -127689
  0048  JMP       (jump)   -> 52
  0049  GETTABLE  R10 = R0[K24('m_floatOwnRankCellTopPosition')]
  0050  TEST      if not R10 then   -> -131019
  0051  JMP       (jump)   -> 53
  0052  GETTABLE  R10 = R0[K25('m_floatOwnRankCellBottomPosition')]
  0053  CALL      R8 = call(R8, 0 args, 2 rets)
  0054  GETTABUP  R8 = _ENV[K26('GM')]
  0055  GETTABLE  R8 = R8[K27('UIManager')]
  0056  SELF      R9 = R8[K28('SetEventLock')] (self)
  0057  LOADBOOL  R10 = true
  0058  CALL      R8 = call(R8, 0 args, 2 rets)
  0059  GETTABUP  R8 = _ENV[K29('DOTween')]
  0060  GETTABLE  R8 = R8[K30('Sequence')]
  0061  CALL      R8 = call(R8, 1 args, 0 rets)
  0062  SELF      R10 = R8[K31('AppendInterval')] (self)
  0063  MOVE      R11 = R0
  0064  CALL      R9 = call(R9, 0 args, 2 rets)
  0065  SELF      R10 = R8[K32('Append')] (self)
  0066  GETTABLE  R11 = R0[K22('m_floatOwnRankCellTransform')]
  0067  SELF      R12 = R11[K33('DOAnchorPosY')] (self)
  0068  GETTABLE  R13 = R0[K24('m_floatOwnRankCellTopPosition')]
  0069  MOVE      R14 = R0
  0070  CALL      R11 = call(R11, 1 args, 3 rets)
  0071  SELF      R12 = R11[K34('SetEase')] (self)
  0072  GETTABUP  R13 = _ENV[K35('Ease')]
  0073  GETTABLE  R13 = R13[K36('InSine')]
  0074  CALL      R11 = call(R11, -1 args, 2 rets)
  0075  CALL      R9 = call(R9, 0 args, -1 rets)
  0076  SELF      R10 = R8[K37('Join')] (self)
  0077  GETTABLE  R11 = R0[K7('m_scrollContentTransform')]
  0078  SELF      R12 = R11[K38('DOLocalMoveY')] (self)
  0079  SELF      R14 = R0[K39('_GetRankingUpScrollContentTargetY')] (self)
  0080  MOVE      R15 = R0
  0081  CALL      R13 = call(R13, 1 args, 2 rets)
  0082  MOVE      R14 = R0
  0083  CALL      R11 = call(R11, 1 args, 3 rets)
  0084  SELF      R12 = R11[K34('SetEase')] (self)
  0085  GETTABUP  R13 = _ENV[K35('Ease')]
  0086  GETTABLE  R13 = R13[K40('InOutQuint')]
  0087  CALL      R11 = call(R11, 1 args, 2 rets)
  0088  SELF      R12 = R11[K41('OnUpdate')] (self)
  0089  CLOSURE   R13 = closure proto0
  0090  CALL      R11 = call(R11, -1 args, 2 rets)
  0091  CALL      R9 = call(R9, 0 args, -1 rets)
  0092  SELF      R10 = R8[K37('Join')] (self)
  0093  SELF      R12 = R0[K42('_GetFloatCellRankChangeTween')] (self)
  0094  SUB       R13 = K43(0.3) sub R7
  0095  MOVE      R14 = R0
  0096  CALL      R11 = call(R11, 1 args, 3 rets)
  0097  SELF      R12 = R11[K34('SetEase')] (self)
  0098  GETTABUP  R13 = _ENV[K35('Ease')]
  0099  GETTABLE  R13 = R13[K44('InOutCubic')]
  0100  CALL      R11 = call(R11, -1 args, 2 rets)
  0101  CALL      R9 = call(R9, 0 args, -1 rets)
  0102  SELF      R10 = R8[K45('OnKill')] (self)
  0103  CLOSURE   R11 = closure proto1
  0104  CALL      R9 = call(R9, 0 args, 2 rets)
  0105  MOVE      R9 = R0
  0106  MOVE      R10 = R0
  0107  RETURN    return R9..R8
  0108  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 80-86 np=0 va=0 ms=2 code=11 consts=2 upvals=2 protos=0
    ;   K[0]=nil
    ;   K[1]='m_floatOwnCellVisible'
    ;   upvals: appearCallback, self
    0000  GETUPVAL  R0 = appearCallback
    0001  EQ        if R1 eq K0(nil)   -> -130813
    0002  JMP       (jump)   -> 10
    0003  GETTABUP  R0 = self[K1('m_floatOwnCellVisible')]
    0004  TEST      if not R0 then   -> -131065
    0005  JMP       (jump)   -> 10
    0006  GETUPVAL  R0 = appearCallback
    0007  CALL      R0 = call(R0, 0 args, 0 rets)
    0008  LOADNIL   R0..R0 = nil
    0009  SETUPVAL  appearCallback = R0
    0010  RETURN    return R0..R-1
  ; ---------- proto1 [] ----------
    ; fn ?  line 88-98 np=0 va=0 ms=3 code=28 consts=16 upvals=4 protos=0
    ;   K[0]='m_bRankingUp'
    ;   K[1]=false
    ;   K[2]='m_loopListView'
    ;   K[3]='RefreshAllShownItem'
    ;   K[4]='m_scrollRect'
    ;   K[5]='movementType'
    ;   K[6]='ScrollRect'
    ;   K[7]='MovementType'
    ;   K[8]='Elastic'
    ;   K[9]='GM'
    ;   K[10]='UIManager'
    ;   K[11]='SetEventLock'
    ;   K[12]='SetUserRank'
    ;   K[13]='m_floatOwnRankCell'
    ;   K[14]='UpdateRank'
    ;   K[15]=nil
    ;   upvals: self, _ENV, curRank, completeCallback
    0000  SETTABUP  self[K0('m_bRankingUp')] = K1(false)
    0001  GETTABUP  R0 = self[K2('m_loopListView')]
    0002  SELF      R1 = R0[K3('RefreshAllShownItem')] (self)
    0003  CALL      R0 = call(R0, 0 args, 1 rets)
    0004  GETTABUP  R0 = self[K4('m_scrollRect')]
    0005  GETTABUP  R1 = _ENV[K6('ScrollRect')]
    0006  GETTABLE  R1 = R1[K7('MovementType')]
    0007  GETTABLE  R1 = R1[K8('Elastic')]
    0008  SETTABLE  R0[K5('movementType')] = R1
    0009  GETTABUP  R0 = _ENV[K9('GM')]
    0010  GETTABLE  R0 = R0[K10('UIManager')]
    0011  SELF      R1 = R0[K11('SetEventLock')] (self)
    0012  LOADBOOL  R2 = false
    0013  CALL      R0 = call(R0, 0 args, 2 rets)
    0014  GETUPVAL  R0 = self
    0015  SELF      R1 = R0[K12('SetUserRank')] (self)
    0016  GETUPVAL  R2 = self
    0017  CALL      R0 = call(R0, 0 args, 2 rets)
    0018  GETTABUP  R0 = self[K13('m_floatOwnRankCell')]
    0019  SELF      R1 = R0[K14('UpdateRank')] (self)
    0020  GETUPVAL  R2 = self
    0021  CALL      R0 = call(R0, 0 args, 2 rets)
    0022  GETUPVAL  R0 = self
    0023  EQ        if R1 eq K15(nil)   -> -130776
    0024  JMP       (jump)   -> 27
    0025  GETUPVAL  R0 = self
    0026  CALL      R0 = call(R0, 0 args, 0 rets)
    0027  RETURN    return R0..R-1
; ---------- proto5 [_GetRankingUpScrollContentTargetY] ----------
  ; fn ?  line 103-108 np=2 va=0 ms=7 code=20 consts=7 upvals=1 protos=0
  ;   K[0]='_GetTopThresholdPosY'
  ;   K[1]='m_halfValidContentHeight'
  ;   K[2]='math'
  ;   K[3]='max'
  ;   K[4]=0
  ;   K[5]='min'
  ;   K[6]='_GetMaxScrollContentOffsetY'
  ;   upvals: _ENV
  ;   locals: self(0-20), rank(0-20), myNewRankCenterOffsetY(5-20)
  0000  SELF      R3 = R0[K0('_GetTopThresholdPosY')] (self)
  0001  MOVE      R4 = R0
  0002  CALL      R2 = call(R2, 1 args, 2 rets)
  0003  GETTABLE  R3 = R0[K1('m_halfValidContentHeight')]
  0004  SUB       R2 = R3 sub R2
  0005  GETTABUP  R3 = _ENV[K2('math')]
  0006  GETTABLE  R3 = R3[K3('max')]
  0007  MOVE      R4 = R0
  0008  LOADK     R5 = K4 0
  0009  CALL      R3 = call(R3, 1 args, 2 rets)
  0010  MOVE      R2 = R0
  0011  GETTABUP  R3 = _ENV[K2('math')]
  0012  GETTABLE  R3 = R3[K5('min')]
  0013  MOVE      R4 = R0
  0014  SELF      R6 = R0[K6('_GetMaxScrollContentOffsetY')] (self)
  0015  CALL      R5 = call(R5, -1 args, 1 rets)
  0016  CALL      R3 = call(R3, 1 args, -1 rets)
  0017  MOVE      R2 = R0
  0018  RETURN    return R2..R1
  0019  RETURN    return R0..R-1
; ---------- proto6 [_GetRankingUpAnimationDuration] ----------
  ; fn ?  line 114-141 np=3 va=0 ms=10 code=37 consts=12 upvals=1 protos=0
  ;   K[0]='Log'
  ;   K[1]='Assert'
  ;   K[2]='BaseRankScrollView:_GetRankingUpAnimationDuration'
  ;   K[3]=0.5
  ;   K[4]=0.3
  ;   K[5]='math'
  ;   K[6]='max'
  ;   K[7]=1
  ;   K[8]='min'
  ;   K[9]=2.5
  ;   K[10]='m_maxCellCountInContent'
  ;   K[11]=0
  ;   upvals: _ENV
  ;   locals: self(0-37), rankFrom(0-37), rankTo(0-37), deltaRank(13-37), beforeStartPauseDt(14-37), scrollDt(15-37), floatDt(28-37)
  0000  GETTABUP  R3 = _ENV[K0('Log')]
  0001  GETTABLE  R3 = R3[K1('Assert')]
  0002  TESTSET   if R0 then R4   -> -130556
  0003  JMP       (jump)   -> 10
  0004  TESTSET   if R0 then R4   -> -130042
  0005  JMP       (jump)   -> 10
  0006  LT        if R1 lt R1   -> -130039
  0007  JMP       (jump)   -> 9
  0008  LOADBOOL  R4 = false
  0009  LOADBOOL  R4 = true
  0010  LOADK     R5 = K2 'BaseRankScrollView:_GetRankingUpAnimationDuration'
  0011  CALL      R3 = call(R3, 0 args, 2 rets)
  0012  SUB       R3 = R2 sub R1
  0013  LOADK     R4 = K3 0.5
  0014  MUL       R5 = K4(0.3) mul R3
  0015  GETTABUP  R6 = _ENV[K5('math')]
  0016  GETTABLE  R6 = R6[K6('max')]
  0017  MOVE      R7 = R0
  0018  LOADK     R8 = K7 1
  0019  CALL      R6 = call(R6, 1 args, 2 rets)
  0020  MOVE      R5 = R0
  0021  GETTABUP  R6 = _ENV[K5('math')]
  0022  GETTABLE  R6 = R6[K8('min')]
  0023  MOVE      R7 = R0
  0024  LOADK     R8 = K9 2.5
  0025  CALL      R6 = call(R6, 1 args, 2 rets)
  0026  MOVE      R5 = R0
  0027  MUL       R6 = K4(0.3) mul R5
  0028  GETTABLE  R7 = R0[K10('m_maxCellCountInContent')]
  0029  LE        if R0 le R7   -> -129498
  0030  JMP       (jump)   -> 32
  0031  LOADK     R6 = K11 0
  0032  MOVE      R7 = R0
  0033  MOVE      R8 = R0
  0034  MOVE      R9 = R0
  0035  RETURN    return R7..R6
  0036  RETURN    return R0..R-1
; ---------- proto7 [_GetTopThresholdPosY] ----------
  ; fn ?  line 143-148 np=2 va=0 ms=4 code=13 consts=4 upvals=0 protos=0
  ;   K[0]=1
  ;   K[1]='m_cellHeight'
  ;   K[2]='m_padding'
  ;   K[3]='TopThresholdPadding'
  ;   locals: self(0-13), rank(0-13)
  0000  TEST      if not R1 then   -> -131069
  0001  JMP       (jump)   -> 4
  0002  LOADNIL   R2..R2 = nil
  0003  RETURN    return R2..R1
  0004  SUB       R2 = K0(1) sub R1
  0005  GETTABLE  R3 = R0[K1('m_cellHeight')]
  0006  MUL       R2 = R3 mul R2
  0007  GETTABLE  R3 = R0[K2('m_padding')]
  0008  ADD       R2 = R3 add R2
  0009  GETTABLE  R3 = R0[K3('TopThresholdPadding')]
  0010  ADD       R2 = R3 add R2
  0011  RETURN    return R2..R1
  0012  RETURN    return R0..R-1
; ---------- proto8 [_GetBottomThresholdPosY] ----------
  ; fn ?  line 150-155 np=2 va=0 ms=5 code=15 consts=5 upvals=0 protos=0
  ;   K[0]='_GetTopThresholdPosY'
  ;   K[1]='m_scrollContentHeight'
  ;   K[2]='m_cellHeight'
  ;   K[3]='m_loopListView'
  ;   K[4]='EndPadding'
  ;   locals: self(0-15), rank(0-15)
  0000  TEST      if not R1 then   -> -131069
  0001  JMP       (jump)   -> 3
  0002  RETURN    return R0..R-1
  0003  SELF      R3 = R0[K0('_GetTopThresholdPosY')] (self)
  0004  MOVE      R4 = R0
  0005  CALL      R2 = call(R2, 1 args, 2 rets)
  0006  GETTABLE  R3 = R0[K1('m_scrollContentHeight')]
  0007  SUB       R2 = R3 sub R2
  0008  GETTABLE  R3 = R0[K2('m_cellHeight')]
  0009  ADD       R2 = R3 add R2
  0010  GETTABLE  R3 = R0[K3('m_loopListView')]
  0011  GETTABLE  R3 = R3[K4('EndPadding')]
  0012  SUB       R2 = R3 sub R2
  0013  RETURN    return R2..R1
  0014  RETURN    return R0..R-1
; ---------- proto9 [_GetFloatCellRankChangeTween] ----------
  ; fn ?  line 157-167 np=3 va=0 ms=8 code=9 consts=2 upvals=1 protos=2
  ;   K[0]='DOTween'
  ;   K[1]='To'
  ;   upvals: _ENV
  ;   locals: self(0-9), duration(0-9), rankTo(0-9)
  0000  GETTABUP  R3 = _ENV[K0('DOTween')]
  0001  GETTABLE  R3 = R3[K1('To')]
  0002  CLOSURE   R4 = closure proto0
  0003  CLOSURE   R5 = closure proto1
  0004  MOVE      R6 = R0
  0005  MOVE      R7 = R0
  0006  TAILCALL  tailcall(R3, 0)
  0007  RETURN    return R3..R2
  0008  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 158-160 np=0 va=0 ms=2 code=5 consts=1 upvals=1 protos=0
    ;   K[0]='GetUserRank'
    ;   upvals: self
    0000  GETUPVAL  R0 = self
    0001  SELF      R1 = R0[K0('GetUserRank')] (self)
    0002  TAILCALL  tailcall(R0, 0)
    0003  RETURN    return R0..R-1
    0004  RETURN    return R0..R-1
  ; ---------- proto1 [] ----------
    ; fn ?  line 161-163 np=1 va=0 ms=4 code=5 consts=1 upvals=1 protos=0
    ;   K[0]='SetUserRank'
    ;   upvals: self
    ;   locals: rank(0-5)
    0000  GETUPVAL  R1 = self
    0001  SELF      R2 = R1[K0('SetUserRank')] (self)
    0002  MOVE      R3 = R0
    0003  CALL      R1 = call(R1, 0 args, 2 rets)
    0004  RETURN    return R0..R-1
; ---------- proto10 [_AdjustFloatOwnCellAppearance] ----------
  ; fn ?  line 169-198 np=2 va=0 ms=13 code=76 consts=21 upvals=1 protos=0
  ;   K[0]='m_bHideFloatOwnCell'
  ;   K[1]='m_scrollContentTransform'
  ;   K[2]='localPosition'
  ;   K[3]='y'
  ;   K[4]='_GetTopThresholdPosY'
  ;   K[5]='_GetBottomThresholdPosY'
  ;   K[6]='math'
  ;   K[7]='floor'
  ;   K[8]='FloatBottom'
  ;   K[9]='m_bRankingUp'
  ;   K[10]='m_floatOwnRankCellTransform'
  ;   K[11]='SetAnchoredPosY'
  ;   K[12]='m_floatOwnRankCellBottomPosition'
  ;   K[13]='FloatTop'
  ;   K[14]='m_floatOwnRankCellTopPosition'
  ;   K[15]='_ToggleFloatOwnCellVisible'
  ;   K[16]='Log'
  ;   K[17]='Info'
  ;   K[18]='curPosY: '
  ;   K[19]=', top: '
  ;   K[20]=', bottom: '
  ;   upvals: _ENV
  ;   locals: self(0-76), index(0-76), curPosY(7-76), topThreshold(10-76), bottomThreshold(13-76), floatOwnCellActive(19-76)
  0000  GETTABLE  R2 = R0[K0('m_bHideFloatOwnCell')]
  0001  TEST      if not R2 then   -> -131069
  0002  JMP       (jump)   -> 4
  0003  RETURN    return R0..R-1
  0004  GETTABLE  R2 = R0[K1('m_scrollContentTransform')]
  0005  GETTABLE  R2 = R2[K2('localPosition')]
  0006  GETTABLE  R2 = R2[K3('y')]
  0007  SELF      R4 = R0[K4('_GetTopThresholdPosY')] (self)
  0008  MOVE      R5 = R0
  0009  CALL      R3 = call(R3, 1 args, 2 rets)
  0010  SELF      R5 = R0[K5('_GetBottomThresholdPosY')] (self)
  0011  MOVE      R6 = R0
  0012  CALL      R4 = call(R4, 1 args, 2 rets)
  0013  TEST      if not R3 then   -> -131057
  0014  JMP       (jump)   -> 17
  0015  TEST      if not R4 then   -> -131054
  0016  JMP       (jump)   -> 18
  0017  RETURN    return R0..R-1
  0018  LOADBOOL  R5 = false
  0019  GETTABUP  R6 = _ENV[K6('math')]
  0020  GETTABLE  R6 = R6[K7('floor')]
  0021  MOVE      R7 = R0
  0022  CALL      R6 = call(R6, 1 args, 1 rets)
  0023  GETTABUP  R7 = _ENV[K6('math')]
  0024  GETTABLE  R7 = R7[K7('floor')]
  0025  MOVE      R8 = R0
  0026  CALL      R7 = call(R7, 1 args, 1 rets)
  0027  LT        if R0 lt R7   -> -127964
  0028  JMP       (jump)   -> 41
  0029  GETTABLE  R6 = R0[K8('FloatBottom')]
  0030  TEST      if not R6 then   -> -131040
  0031  JMP       (jump)   -> 41
  0032  LOADBOOL  R5 = true
  0033  GETTABLE  R6 = R0[K9('m_bRankingUp')]
  0034  TEST      if not R6 then   -> -131035
  0035  JMP       (jump)   -> 62
  0036  GETTABLE  R6 = R0[K10('m_floatOwnRankCellTransform')]
  0037  SELF      R7 = R6[K11('SetAnchoredPosY')] (self)
  0038  GETTABLE  R8 = R0[K12('m_floatOwnRankCellBottomPosition')]
  0039  CALL      R6 = call(R6, 0 args, 2 rets)
  0040  JMP       (jump)   -> 62
  0041  GETTABUP  R6 = _ENV[K6('math')]
  0042  GETTABLE  R6 = R6[K7('floor')]
  0043  MOVE      R7 = R0
  0044  CALL      R6 = call(R6, 1 args, 1 rets)
  0045  GETTABUP  R7 = _ENV[K6('math')]
  0046  GETTABLE  R7 = R7[K7('floor')]
  0047  MOVE      R8 = R0
  0048  CALL      R7 = call(R7, 1 args, 1 rets)
  0049  LT        if R0 lt R6   -> -127431
  0050  JMP       (jump)   -> 62
  0051  GETTABLE  R6 = R0[K13('FloatTop')]
  0052  TEST      if not R6 then   -> -131018
  0053  JMP       (jump)   -> 62
  0054  LOADBOOL  R5 = true
  0055  GETTABLE  R6 = R0[K9('m_bRankingUp')]
  0056  TEST      if not R6 then   -> -131013
  0057  JMP       (jump)   -> 62
  0058  GETTABLE  R6 = R0[K10('m_floatOwnRankCellTransform')]
  0059  SELF      R7 = R6[K11('SetAnchoredPosY')] (self)
  0060  GETTABLE  R8 = R0[K14('m_floatOwnRankCellTopPosition')]
  0061  CALL      R6 = call(R6, 0 args, 2 rets)
  0062  SELF      R7 = R0[K15('_ToggleFloatOwnCellVisible')] (self)
  0063  MOVE      R8 = R0
  0064  CALL      R6 = call(R6, 0 args, 2 rets)
  0065  GETTABUP  R6 = _ENV[K16('Log')]
  0066  GETTABLE  R6 = R6[K17('Info')]
  0067  LOADK     R7 = K18 'curPosY: '
  0068  MOVE      R8 = R0
  0069  LOADK     R9 = K19 ', top: '
  0070  MOVE      R10 = R0
  0071  LOADK     R11 = K20 ', bottom: '
  0072  MOVE      R12 = R0
  0073  CONCAT    R7 = concat(R7..R7)
  0074  CALL      R6 = call(R6, 0 args, 1 rets)
  0075  RETURN    return R0..R-1
; ---------- proto11 [_ToggleFloatOwnCellVisible] ----------
  ; fn ?  line 200-218 np=2 va=0 ms=6 code=33 consts=12 upvals=0 protos=0
  ;   K[0]='m_floatOwnCellVisible'
  ;   K[1]='m_floatOwnCellTween'
  ;   K[2]='Kill'
  ;   K[3]=nil
  ;   K[4]='m_floatOwnRankCellGo'
  ;   K[5]='SetActive'
  ;   K[6]='m_floatOwnRankCellTransform'
  ;   K[7]='SetLocalScaleXY'
  ;   K[8]=1
  ;   K[9]='DOScale'
  ;   K[10]=1.02
  ;   K[11]=0.2
  ;   locals: self(0-33), active(0-33)
  0000  GETTABLE  R2 = R0[K0('m_floatOwnCellVisible')]
  0001  EQ        if R1 eq R1   -> -130044
  0002  JMP       (jump)   -> 32
  0003  GETTABLE  R2 = R0[K1('m_floatOwnCellTween')]
  0004  TEST      if not R2 then   -> -131066
  0005  JMP       (jump)   -> 10
  0006  GETTABLE  R2 = R0[K1('m_floatOwnCellTween')]
  0007  SELF      R3 = R2[K2('Kill')] (self)
  0008  CALL      R2 = call(R2, 0 args, 1 rets)
  0009  SETTABLE  R0[K1('m_floatOwnCellTween')] = K3(nil)
  0010  TEST      if not R1 then   -> -131060
  0011  JMP       (jump)   -> 27
  0012  GETTABLE  R2 = R0[K4('m_floatOwnRankCellGo')]
  0013  SELF      R3 = R2[K5('SetActive')] (self)
  0014  LOADBOOL  R4 = true
  0015  CALL      R2 = call(R2, 0 args, 2 rets)
  0016  GETTABLE  R2 = R0[K6('m_floatOwnRankCellTransform')]
  0017  SELF      R3 = R2[K7('SetLocalScaleXY')] (self)
  0018  LOADK     R4 = K8 1
  0019  CALL      R2 = call(R2, 0 args, 2 rets)
  0020  GETTABLE  R2 = R0[K6('m_floatOwnRankCellTransform')]
  0021  SELF      R3 = R2[K9('DOScale')] (self)
  0022  LOADK     R4 = K10 1.02
  0023  LOADK     R5 = K11 0.2
  0024  CALL      R2 = call(R2, 1 args, 3 rets)
  0025  SETTABLE  R0[K1('m_floatOwnCellTween')] = R2
  0026  JMP       (jump)   -> 31
  0027  GETTABLE  R2 = R0[K4('m_floatOwnRankCellGo')]
  0028  SELF      R3 = R2[K5('SetActive')] (self)
  0029  LOADBOOL  R4 = false
  0030  CALL      R2 = call(R2, 0 args, 2 rets)
  0031  SETTABLE  R0[K0('m_floatOwnCellVisible')] = R1
  0032  RETURN    return R0..R-1
; ---------- proto12 [ForceHideFloatOwnCell] ----------
  ; fn ?  line 221-227 np=2 va=0 ms=6 code=10 consts=4 upvals=1 protos=1
  ;   K[0]='_ToggleFloatOwnCellVisible'
  ;   K[1]='m_bHideFloatOwnCell'
  ;   K[2]=true
  ;   K[3]='DelayExecuteFuncInView'
  ;   upvals: _ENV
  ;   locals: self(0-10), duration(0-10)
  0000  SELF      R3 = R0[K0('_ToggleFloatOwnCellVisible')] (self)
  0001  LOADBOOL  R4 = false
  0002  CALL      R2 = call(R2, 0 args, 2 rets)
  0003  SETTABLE  R0[K1('m_bHideFloatOwnCell')] = K2(true)
  0004  GETTABUP  R2 = _ENV[K3('DelayExecuteFuncInView')]
  0005  CLOSURE   R3 = closure proto0
  0006  MOVE      R4 = R0
  0007  MOVE      R5 = R0
  0008  CALL      R2 = call(R2, 0 args, 3 rets)
  0009  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 224-226 np=0 va=0 ms=2 code=2 consts=2 upvals=1 protos=0
    ;   K[0]='m_bHideFloatOwnCell'
    ;   K[1]=false
    ;   upvals: self
    0000  SETTABUP  self[K0('m_bHideFloatOwnCell')] = K1(false)
    0001  RETURN    return R0..R-1
; ---------- proto13 [_GetMaxScrollContentOffsetY] ----------
  ; fn ?  line 229-231 np=1 va=0 ms=4 code=15 consts=8 upvals=1 protos=0
  ;   K[0]='math'
  ;   K[1]='max'
  ;   K[2]='_GetMaxCellCount'
  ;   K[3]='m_cellHeight'
  ;   K[4]='m_loopListView'
  ;   K[5]='EndPadding'
  ;   K[6]='m_scrollContentHeight'
  ;   K[7]=0
  ;   upvals: _ENV
  ;   locals: self(0-15)
  0000  GETTABUP  R1 = _ENV[K0('math')]
  0001  GETTABLE  R1 = R1[K1('max')]
  0002  SELF      R3 = R0[K2('_GetMaxCellCount')] (self)
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  GETTABLE  R3 = R0[K3('m_cellHeight')]
  0005  MUL       R2 = R3 mul R2
  0006  GETTABLE  R3 = R0[K4('m_loopListView')]
  0007  GETTABLE  R3 = R3[K5('EndPadding')]
  0008  ADD       R2 = R3 add R2
  0009  GETTABLE  R3 = R0[K6('m_scrollContentHeight')]
  0010  SUB       R2 = R3 sub R2
  0011  LOADK     R3 = K7 0
  0012  TAILCALL  tailcall(R1, 0)
  0013  RETURN    return R1..R0
  0014  RETURN    return R0..R-1
; ---------- proto14 [_GetScrollContentPosY] ----------
  ; fn ?  line 233-242 np=1 va=0 ms=5 code=29 consts=11 upvals=1 protos=0
  ;   K[0]='m_scrollContentMaxPosY'
  ;   K[1]='m_scrollContentTransform'
  ;   K[2]='rect'
  ;   K[3]='height'
  ;   K[4]='parent'
  ;   K[5]='localPosition'
  ;   K[6]='y'
  ;   K[7]='math'
  ;   K[8]='min'
  ;   K[9]='max'
  ;   K[10]=0
  ;   upvals: _ENV
  ;   locals: self(0-29), posY(15-29)
  0000  GETTABLE  R1 = R0[K0('m_scrollContentMaxPosY')]
  0001  TEST      if not R1 then   -> -131068
  0002  JMP       (jump)   -> 12
  0003  GETTABLE  R1 = R0[K1('m_scrollContentTransform')]
  0004  GETTABLE  R1 = R1[K2('rect')]
  0005  GETTABLE  R1 = R1[K3('height')]
  0006  GETTABLE  R2 = R0[K1('m_scrollContentTransform')]
  0007  GETTABLE  R2 = R2[K4('parent')]
  0008  GETTABLE  R2 = R2[K2('rect')]
  0009  GETTABLE  R2 = R2[K3('height')]
  0010  SUB       R1 = R2 sub R1
  0011  SETTABLE  R0[K0('m_scrollContentMaxPosY')] = R1
  0012  GETTABLE  R1 = R0[K1('m_scrollContentTransform')]
  0013  GETTABLE  R1 = R1[K5('localPosition')]
  0014  GETTABLE  R1 = R1[K6('y')]
  0015  GETTABUP  R2 = _ENV[K7('math')]
  0016  GETTABLE  R2 = R2[K8('min')]
  0017  MOVE      R3 = R0
  0018  GETTABLE  R4 = R0[K0('m_scrollContentMaxPosY')]
  0019  CALL      R2 = call(R2, 1 args, 2 rets)
  0020  MOVE      R1 = R0
  0021  GETTABUP  R2 = _ENV[K7('math')]
  0022  GETTABLE  R2 = R2[K9('max')]
  0023  MOVE      R3 = R0
  0024  LOADK     R4 = K10 0
  0025  CALL      R2 = call(R2, 1 args, 2 rets)
  0026  MOVE      R1 = R0
  0027  RETURN    return R1..R0
  0028  RETURN    return R0..R-1
; ---------- proto15 [GetCell] ----------
  ; fn ?  line 244-246 np=2 va=0 ms=5 code=6 consts=2 upvals=0 protos=0
  ;   K[0]='m_loopListView'
  ;   K[1]='GetShownItemByItemIndex'
  ;   locals: self(0-6), index(0-6)
  0000  GETTABLE  R2 = R0[K0('m_loopListView')]
  0001  SELF      R3 = R2[K1('GetShownItemByItemIndex')] (self)
  0002  MOVE      R4 = R0
  0003  TAILCALL  tailcall(R2, 0)
  0004  RETURN    return R2..R1
  0005  RETURN    return R0..R-1
; ---------- proto16 [GetListItemByIndex] ----------
  ; fn ?  line 248-250 np=3 va=0 ms=6 code=6 consts=3 upvals=1 protos=0
  ;   K[0]='Log'
  ;   K[1]='Assert'
  ;   K[2]='GetListItemByIndex()是抽象接口'
  ;   upvals: _ENV
  ;   locals: self(0-6), listView(0-6), cellIndex(0-6)
  0000  GETTABUP  R3 = _ENV[K0('Log')]
  0001  GETTABLE  R3 = R3[K1('Assert')]
  0002  LOADBOOL  R4 = false
  0003  LOADK     R5 = K2 'GetListItemByIndex()是抽象接口'
  0004  CALL      R3 = call(R3, 0 args, 2 rets)
  0005  RETURN    return R0..R-1
; ---------- proto17 [SetUserRank] ----------
  ; fn ?  line 252-254 np=2 va=0 ms=5 code=6 consts=3 upvals=1 protos=0
  ;   K[0]='Log'
  ;   K[1]='Assert'
  ;   K[2]='SetUserRank()是抽象接口'
  ;   upvals: _ENV
  ;   locals: self(0-6), rank(0-6)
  0000  GETTABUP  R2 = _ENV[K0('Log')]
  0001  GETTABLE  R2 = R2[K1('Assert')]
  0002  LOADBOOL  R3 = false
  0003  LOADK     R4 = K2 'SetUserRank()是抽象接口'
  0004  CALL      R2 = call(R2, 0 args, 2 rets)
  0005  RETURN    return R0..R-1
; ---------- proto18 [GetUserRank] ----------
  ; fn ?  line 256-258 np=1 va=0 ms=4 code=6 consts=3 upvals=1 protos=0
  ;   K[0]='Log'
  ;   K[1]='Assert'
  ;   K[2]='GetUserRank()是抽象接口'
  ;   upvals: _ENV
  ;   locals: self(0-6)
  0000  GETTABUP  R1 = _ENV[K0('Log')]
  0001  GETTABLE  R1 = R1[K1('Assert')]
  0002  LOADBOOL  R2 = false
  0003  LOADK     R3 = K2 'GetUserRank()是抽象接口'
  0004  CALL      R1 = call(R1, 0 args, 2 rets)
  0005  RETURN    return R0..R-1
; ---------- proto19 [_GetMaxCellCount] ----------
  ; fn ?  line 260-262 np=1 va=0 ms=4 code=6 consts=3 upvals=1 protos=0
  ;   K[0]='Log'
  ;   K[1]='Assert'
  ;   K[2]='_GetMaxCellCount()是抽象接口'
  ;   upvals: _ENV
  ;   locals: self(0-6)
  0000  GETTABUP  R1 = _ENV[K0('Log')]
  0001  GETTABLE  R1 = R1[K1('Assert')]
  0002  LOADBOOL  R2 = false
  0003  LOADK     R3 = K2 '_GetMaxCellCount()是抽象接口'
  0004  CALL      R1 = call(R1, 0 args, 2 rets)
  0005  RETURN    return R0..R-1
