# AlbumActivity_View_AlbumActivityMainWindow_1117.luac
; fn @AlbumActivityMainWindow.lua  line 0-0 np=0 va=1 ms=3 code=146 consts=47 upvals=1 protos=44
;   K[0]='AlbumActivityGroupIcon'
;   K[1]='__index'
;   K[2]='Init'
;   K[3]='InitPackInfo'
;   K[4]='UpdateRedPoint'
;   K[5]='OnDestroy'
;   K[6]='OnButtonClicked'
;   K[7]='GetCanvAlpha'
;   K[8]='GetMiddleRect'
;   K[9]='_UpdateContent'
;   K[10]='PlayHitAnim'
;   K[11]='IsPlayProgressAnim'
;   K[12]='AlbumActivityMainWindow'
;   K[13]='setmetatable'
;   K[14]='AlbumActivityBaseWindow'
;   K[15]='UpdateSetLayoutPadding'
;   K[16]='_OnCloseView'
;   K[17]='TryStartLimitAlbumStartTutorial'
;   K[18]='OnHelpBtnClick'
;   K[19]='OnGroupIconClicked'
;   K[20]='GetPackIndexBySetId'
;   K[21]='OnCloseBtnClick'
;   K[22]='InitPack'
;   K[23]='LocateFirstPlayAnimationPosition'
;   K[24]='UpdateLimitAlbumContent'
;   K[25]='_OnLimitAlbumEnded'
;   K[26]='TryRemoveLimitAlbumContent'
;   K[27]='TryResetScrollToTop'
;   K[28]='GetSetCell'
;   K[29]='InitRewards'
;   K[30]='_UpdateContent'
;   K[31]='UpdateProgress'
;   K[32]='_OnLimitAlbumStateChange'
;   K[33]='UpdateCardSets'
;   K[34]='OnRedPointRefresh'
;   K[35]='UpdatePerSecond'
;   K[36]='TryPopRemindJokerWindow'
;   K[37]='PlayIconShowAct'
;   K[38]='GetHelpBtnTransf'
;   K[39]='GetBadgeRewardTrans'
;   K[40]='OnBtnRecycleClicked'
;   K[41]='UpdateCycleRefresh'
;   K[42]='OnJokerBtnClicked'
;   K[43]='GetRewardAreaRect'
;   K[44]='UpdateJokerContent'
;   K[45]='FlyCard2SetCell'
;   K[46]='_GetProgressMiddleVerticalNormalizedPosition'
;   upvals: _ENV
0000  NEWTABLE  R0 = {} (0 items)
0001  SETTABUP  _ENV[K0('AlbumActivityGroupIcon')] = R0
0002  GETTABUP  R0 = _ENV[K0('AlbumActivityGroupIcon')]
0003  GETTABUP  R1 = _ENV[K0('AlbumActivityGroupIcon')]
0004  SETTABLE  R0[K1('__index')] = R1
0005  GETTABUP  R0 = _ENV[K0('AlbumActivityGroupIcon')]
0006  CLOSURE   R1 = closure proto0
0007  SETTABLE  R0[K2('Init')] = R1
0008  GETTABUP  R0 = _ENV[K0('AlbumActivityGroupIcon')]
0009  CLOSURE   R1 = closure proto1
0010  SETTABLE  R0[K3('InitPackInfo')] = R1
0011  GETTABUP  R0 = _ENV[K0('AlbumActivityGroupIcon')]
0012  CLOSURE   R1 = closure proto2
0013  SETTABLE  R0[K4('UpdateRedPoint')] = R1
0014  GETTABUP  R0 = _ENV[K0('AlbumActivityGroupIcon')]
0015  CLOSURE   R1 = closure proto3
0016  SETTABLE  R0[K5('OnDestroy')] = R1
0017  GETTABUP  R0 = _ENV[K0('AlbumActivityGroupIcon')]
0018  CLOSURE   R1 = closure proto4
0019  SETTABLE  R0[K6('OnButtonClicked')] = R1
0020  GETTABUP  R0 = _ENV[K0('AlbumActivityGroupIcon')]
0021  CLOSURE   R1 = closure proto5
0022  SETTABLE  R0[K7('GetCanvAlpha')] = R1
0023  GETTABUP  R0 = _ENV[K0('AlbumActivityGroupIcon')]
0024  CLOSURE   R1 = closure proto6
0025  SETTABLE  R0[K8('GetMiddleRect')] = R1
0026  GETTABUP  R0 = _ENV[K0('AlbumActivityGroupIcon')]
0027  CLOSURE   R1 = closure proto7
0028  SETTABLE  R0[K9('_UpdateContent')] = R1
0029  GETTABUP  R0 = _ENV[K0('AlbumActivityGroupIcon')]
0030  CLOSURE   R1 = closure proto8
0031  SETTABLE  R0[K10('PlayHitAnim')] = R1
0032  GETTABUP  R0 = _ENV[K0('AlbumActivityGroupIcon')]
0033  CLOSURE   R1 = closure proto9
0034  SETTABLE  R0[K11('IsPlayProgressAnim')] = R1
0035  GETTABUP  R0 = _ENV[K13('setmetatable')]
0036  NEWTABLE  R1 = {} (0 items)
0037  GETTABUP  R2 = _ENV[K14('AlbumActivityBaseWindow')]
0038  CALL      R0 = call(R0, 1 args, 2 rets)
0039  SETTABUP  _ENV[K12('AlbumActivityMainWindow')] = R0
0040  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0041  GETTABUP  R1 = _ENV[K12('AlbumActivityMainWindow')]
0042  SETTABLE  R0[K1('__index')] = R1
0043  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0044  CLOSURE   R1 = closure proto10
0045  SETTABLE  R0[K2('Init')] = R1
0046  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0047  CLOSURE   R1 = closure proto11
0048  SETTABLE  R0[K5('OnDestroy')] = R1
0049  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0050  CLOSURE   R1 = closure proto12
0051  SETTABLE  R0[K15('UpdateSetLayoutPadding')] = R1
0052  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0053  CLOSURE   R1 = closure proto13
0054  SETTABLE  R0[K16('_OnCloseView')] = R1
0055  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0056  CLOSURE   R1 = closure proto14
0057  SETTABLE  R0[K17('TryStartLimitAlbumStartTutorial')] = R1
0058  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0059  CLOSURE   R1 = closure proto15
0060  SETTABLE  R0[K18('OnHelpBtnClick')] = R1
0061  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0062  CLOSURE   R1 = closure proto16
0063  SETTABLE  R0[K19('OnGroupIconClicked')] = R1
0064  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0065  CLOSURE   R1 = closure proto17
0066  SETTABLE  R0[K20('GetPackIndexBySetId')] = R1
0067  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0068  CLOSURE   R1 = closure proto18
0069  SETTABLE  R0[K21('OnCloseBtnClick')] = R1
0070  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0071  CLOSURE   R1 = closure proto19
0072  SETTABLE  R0[K22('InitPack')] = R1
0073  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0074  CLOSURE   R1 = closure proto20
0075  SETTABLE  R0[K23('LocateFirstPlayAnimationPosition')] = R1
0076  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0077  CLOSURE   R1 = closure proto21
0078  SETTABLE  R0[K24('UpdateLimitAlbumContent')] = R1
0079  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0080  CLOSURE   R1 = closure proto22
0081  SETTABLE  R0[K25('_OnLimitAlbumEnded')] = R1
0082  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0083  CLOSURE   R1 = closure proto23
0084  SETTABLE  R0[K26('TryRemoveLimitAlbumContent')] = R1
0085  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0086  CLOSURE   R1 = closure proto24
0087  SETTABLE  R0[K27('TryResetScrollToTop')] = R1
0088  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0089  CLOSURE   R1 = closure proto25
0090  SETTABLE  R0[K28('GetSetCell')] = R1
0091  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0092  CLOSURE   R1 = closure proto26
0093  SETTABLE  R0[K29('InitRewards')] = R1
0094  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0095  CLOSURE   R1 = closure proto27
0096  SETTABLE  R0[K30('_UpdateContent')] = R1
0097  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0098  CLOSURE   R1 = closure proto28
0099  SETTABLE  R0[K31('UpdateProgress')] = R1
0100  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0101  CLOSURE   R1 = closure proto29
0102  SETTABLE  R0[K32('_OnLimitAlbumStateChange')] = R1
0103  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0104  CLOSURE   R1 = closure proto30
0105  SETTABLE  R0[K33('UpdateCardSets')] = R1
0106  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0107  CLOSURE   R1 = closure proto31
0108  SETTABLE  R0[K34('OnRedPointRefresh')] = R1
0109  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0110  CLOSURE   R1 = closure proto32
0111  SETTABLE  R0[K35('UpdatePerSecond')] = R1
0112  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0113  CLOSURE   R1 = closure proto33
0114  SETTABLE  R0[K36('TryPopRemindJokerWindow')] = R1
0115  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0116  CLOSURE   R1 = closure proto34
0117  SETTABLE  R0[K37('PlayIconShowAct')] = R1
0118  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0119  CLOSURE   R1 = closure proto35
0120  SETTABLE  R0[K38('GetHelpBtnTransf')] = R1
0121  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0122  CLOSURE   R1 = closure proto36
0123  SETTABLE  R0[K39('GetBadgeRewardTrans')] = R1
0124  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0125  CLOSURE   R1 = closure proto37
0126  SETTABLE  R0[K40('OnBtnRecycleClicked')] = R1
0127  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0128  CLOSURE   R1 = closure proto38
0129  SETTABLE  R0[K41('UpdateCycleRefresh')] = R1
0130  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0131  CLOSURE   R1 = closure proto39
0132  SETTABLE  R0[K42('OnJokerBtnClicked')] = R1
0133  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0134  CLOSURE   R1 = closure proto40
0135  SETTABLE  R0[K43('GetRewardAreaRect')] = R1
0136  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0137  CLOSURE   R1 = closure proto41
0138  SETTABLE  R0[K44('UpdateJokerContent')] = R1
0139  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0140  CLOSURE   R1 = closure proto42
0141  SETTABLE  R0[K45('FlyCard2SetCell')] = R1
0142  GETTABUP  R0 = _ENV[K12('AlbumActivityMainWindow')]
0143  CLOSURE   R1 = closure proto43
0144  SETTABLE  R0[K46('_GetProgressMiddleVerticalNormalizedPosition')] = R1
0145  RETURN    return R0..R-1
; ---------- proto0 [Init] ----------
  ; fn ?  line 9-23 np=5 va=0 ms=9 code=24 consts=14 upvals=1 protos=0
  ;   K[0]='m_mainWindow'
  ;   K[1]='m_setIndex'
  ;   K[2]='m_cardSets'
  ;   K[3]='m_config'
  ;   K[4]='m_model'
  ;   K[5]='m_activityDefinition'
  ;   K[6]='GetActivityDefinition'
  ;   K[7]='InitPackInfo'
  ;   K[8]='UpdateRedPoint'
  ;   K[9]='EventDispatcher'
  ;   K[10]='AddListener'
  ;   K[11]='EEventType'
  ;   K[12]='JokerExchangeNewCard'
  ;   K[13]='_UpdateContent'
  ;   upvals: _ENV
  ;   locals: self(0-24), setIndex(0-24), cardSets(0-24), model(0-24), window(0-24)
  0000  SETTABLE  R0[K0('m_mainWindow')] = R4
  0001  SETTABLE  R0[K1('m_setIndex')] = R1
  0002  SETTABLE  R0[K2('m_cardSets')] = R2
  0003  GETTABLE  R5 = R0[K2('m_cardSets')]
  0004  GETTABLE  R6 = R0[K1('m_setIndex')]
  0005  GETTABLE  R5 = R5[R6]
  0006  SETTABLE  R0[K3('m_config')] = R5
  0007  SETTABLE  R0[K4('m_model')] = R3
  0008  GETTABLE  R5 = R0[K4('m_model')]
  0009  SELF      R6 = R5[K6('GetActivityDefinition')] (self)
  0010  CALL      R5 = call(R5, 1 args, 1 rets)
  0011  SETTABLE  R0[K5('m_activityDefinition')] = R5
  0012  SELF      R6 = R0[K7('InitPackInfo')] (self)
  0013  CALL      R5 = call(R5, 0 args, 1 rets)
  0014  SELF      R6 = R0[K8('UpdateRedPoint')] (self)
  0015  CALL      R5 = call(R5, 0 args, 1 rets)
  0016  GETTABUP  R5 = _ENV[K9('EventDispatcher')]
  0017  GETTABLE  R5 = R5[K10('AddListener')]
  0018  GETTABUP  R6 = _ENV[K11('EEventType')]
  0019  GETTABLE  R6 = R6[K12('JokerExchangeNewCard')]
  0020  MOVE      R7 = R0
  0021  GETTABLE  R8 = R0[K13('_UpdateContent')]
  0022  CALL      R5 = call(R5, 0 args, 3 rets)
  0023  RETURN    return R0..R-1
; ---------- proto1 [InitPackInfo] ----------
  ; fn ?  line 25-32 np=1 va=0 ms=8 code=25 consts=15 upvals=1 protos=0
  ;   K[0]='_UpdateContent'
  ;   K[1]='m_config'
  ;   K[2]='setId'
  ;   K[3]='m_model'
  ;   K[4]='GetCardSetPicId'
  ;   K[5]='m_name'
  ;   K[6]='text'
  ;   K[7]='GM'
  ;   K[8]='GameTextModel'
  ;   K[9]='GetText'
  ;   K[10]='_name'
  ;   K[11]='SpriteUtil'
  ;   K[12]='SetImage'
  ;   K[13]='m_IconImageImg'
  ;   K[14]='ImageFileConfigName'
  ;   upvals: _ENV
  ;   locals: self(0-25), setId(4-25), picId(8-25)
  0000  SELF      R2 = R0[K0('_UpdateContent')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  GETTABLE  R1 = R0[K1('m_config')]
  0003  GETTABLE  R1 = R1[K2('setId')]
  0004  GETTABLE  R2 = R0[K3('m_model')]
  0005  SELF      R3 = R2[K4('GetCardSetPicId')] (self)
  0006  MOVE      R4 = R0
  0007  CALL      R2 = call(R2, 1 args, 2 rets)
  0008  GETTABLE  R3 = R0[K5('m_name')]
  0009  GETTABUP  R4 = _ENV[K7('GM')]
  0010  GETTABLE  R4 = R4[K8('GameTextModel')]
  0011  SELF      R5 = R4[K9('GetText')] (self)
  0012  MOVE      R6 = R0
  0013  LOADK     R7 = K10 '_name'
  0014  CONCAT    R6 = concat(R6..R6)
  0015  CALL      R4 = call(R4, 1 args, 2 rets)
  0016  SETTABLE  R3[K6('text')] = R4
  0017  GETTABUP  R3 = _ENV[K11('SpriteUtil')]
  0018  GETTABLE  R3 = R3[K12('SetImage')]
  0019  GETTABLE  R4 = R0[K13('m_IconImageImg')]
  0020  GETTABUP  R5 = _ENV[K14('ImageFileConfigName')]
  0021  GETTABLE  R5 = R5[R2]
  0022  LOADBOOL  R6 = false
  0023  CALL      R3 = call(R3, 0 args, 3 rets)
  0024  RETURN    return R0..R-1
; ---------- proto2 [UpdateRedPoint] ----------
  ; fn ?  line 34-36 np=1 va=0 ms=7 code=14 consts=9 upvals=1 protos=0
  ;   K[0]='UIUtil'
  ;   K[1]='SetActive'
  ;   K[2]='m_newGo'
  ;   K[3]='Table'
  ;   K[4]='IsEmpty'
  ;   K[5]='m_model'
  ;   K[6]='GetRedPointInfoBySetID'
  ;   K[7]='m_config'
  ;   K[8]='setId'
  ;   upvals: _ENV
  ;   locals: self(0-14)
  0000  GETTABUP  R1 = _ENV[K0('UIUtil')]
  0001  GETTABLE  R1 = R1[K1('SetActive')]
  0002  GETTABLE  R2 = R0[K2('m_newGo')]
  0003  GETTABUP  R3 = _ENV[K3('Table')]
  0004  GETTABLE  R3 = R3[K4('IsEmpty')]
  0005  GETTABLE  R4 = R0[K5('m_model')]
  0006  SELF      R5 = R4[K6('GetRedPointInfoBySetID')] (self)
  0007  GETTABLE  R6 = R0[K7('m_config')]
  0008  GETTABLE  R6 = R6[K8('setId')]
  0009  CALL      R4 = call(R4, -1 args, 2 rets)
  0010  CALL      R3 = call(R3, 1 args, -1 rets)
  0011  NOT       R3 = not R0
  0012  CALL      R1 = call(R1, 0 args, 2 rets)
  0013  RETURN    return R0..R-1
; ---------- proto3 [OnDestroy] ----------
  ; fn ?  line 38-57 np=1 va=0 ms=4 code=37 consts=14 upvals=1 protos=0
  ;   K[0]='Scheduler'
  ;   K[1]='UnscheduleTarget'
  ;   K[2]='EventDispatcher'
  ;   K[3]='RemoveTarget'
  ;   K[4]='m_setProgressSeq'
  ;   K[5]=nil
  ;   K[6]='Kill'
  ;   K[7]='m_completeTween'
  ;   K[8]='GM'
  ;   K[9]='UIManager'
  ;   K[10]='RemoveAllEventLocks'
  ;   K[11]='m_model'
  ;   K[12]='RemoveAllHandlers'
  ;   K[13]='GetEvent'
  ;   upvals: _ENV
  ;   locals: self(0-37)
  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  GETTABUP  R1 = _ENV[K2('EventDispatcher')]
  0005  GETTABLE  R1 = R1[K3('RemoveTarget')]
  0006  MOVE      R2 = R0
  0007  CALL      R1 = call(R1, 0 args, 1 rets)
  0008  GETTABLE  R1 = R0[K4('m_setProgressSeq')]
  0009  EQ        if R1 eq K5(nil)   -> -130288
  0010  JMP       (jump)   -> 15
  0011  GETTABLE  R1 = R0[K4('m_setProgressSeq')]
  0012  SELF      R2 = R1[K6('Kill')] (self)
  0013  CALL      R1 = call(R1, 0 args, 1 rets)
  0014  SETTABLE  R0[K4('m_setProgressSeq')] = K5(nil)
  0015  GETTABLE  R1 = R0[K7('m_completeTween')]
  0016  EQ        if R1 eq K5(nil)   -> -130281
  0017  JMP       (jump)   -> 22
  0018  GETTABLE  R1 = R0[K7('m_completeTween')]
  0019  SELF      R2 = R1[K6('Kill')] (self)
  0020  CALL      R1 = call(R1, 0 args, 1 rets)
  0021  SETTABLE  R0[K7('m_completeTween')] = K5(nil)
  0022  GETTABUP  R1 = _ENV[K8('GM')]
  0023  GETTABLE  R1 = R1[K9('UIManager')]
  0024  SELF      R2 = R1[K10('RemoveAllEventLocks')] (self)
  0025  MOVE      R3 = R0
  0026  CALL      R1 = call(R1, 0 args, 2 rets)
  0027  GETTABLE  R1 = R0[K11('m_model')]
  0028  EQ        if R1 eq K5(nil)   -> -130269
  0029  JMP       (jump)   -> 36
  0030  GETTABUP  R1 = _ENV[K12('RemoveAllHandlers')]
  0031  GETTABLE  R2 = R0[K11('m_model')]
  0032  SELF      R3 = R2[K13('GetEvent')] (self)
  0033  CALL      R2 = call(R2, 1 args, 1 rets)
  0034  MOVE      R3 = R0
  0035  CALL      R1 = call(R1, 0 args, 2 rets)
  0036  RETURN    return R0..R-1
; ---------- proto4 [OnButtonClicked] ----------
  ; fn ?  line 59-61 np=1 va=0 ms=4 code=6 consts=4 upvals=0 protos=0
  ;   K[0]='m_mainWindow'
  ;   K[1]='OnGroupIconClicked'
  ;   K[2]='m_config'
  ;   K[3]='setId'
  ;   locals: self(0-6)
  0000  GETTABLE  R1 = R0[K0('m_mainWindow')]
  0001  SELF      R2 = R1[K1('OnGroupIconClicked')] (self)
  0002  GETTABLE  R3 = R0[K2('m_config')]
  0003  GETTABLE  R3 = R3[K3('setId')]
  0004  CALL      R1 = call(R1, 0 args, 2 rets)
  0005  RETURN    return R0..R-1
; ---------- proto5 [GetCanvAlpha] ----------
  ; fn ?  line 63-65 np=1 va=0 ms=2 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='m_cardIconCanv'
  ;   locals: self(0-3)
  0000  GETTABLE  R1 = R0[K0('m_cardIconCanv')]
  0001  RETURN    return R1..R0
  0002  RETURN    return R0..R-1
; ---------- proto6 [GetMiddleRect] ----------
  ; fn ?  line 67-69 np=1 va=0 ms=2 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='m_nodeRectTrans'
  ;   locals: self(0-3)
  0000  GETTABLE  R1 = R0[K0('m_nodeRectTrans')]
  0001  RETURN    return R1..R0
  0002  RETURN    return R0..R-1
; ---------- proto7 [_UpdateContent] ----------
  ; fn ?  line 71-120 np=1 va=0 ms=13 code=80 consts=31 upvals=1 protos=3
  ;   K[0]='m_model'
  ;   K[1]='GetWindowSetProgress'
  ;   K[2]='m_config'
  ;   K[3]='setId'
  ;   K[4]='GetSetCollectProgress'
  ;   K[5]='m_progressSlider'
  ;   K[6]='value'
  ;   K[7]='m_progressText'
  ;   K[8]='text'
  ;   K[9]='/'
  ;   K[10]='UIUtil'
  ;   K[11]='SetActive'
  ;   K[12]='m_checkGo'
  ;   K[13]='m_progressGo'
  ;   K[14]='m_bPlayAnim'
  ;   K[15]=true
  ;   K[16]='DOTween'
  ;   K[17]='Sequence'
  ;   K[18]=0.6
  ;   K[19]='AppendInterval'
  ;   K[20]=1
  ;   K[21]='Append'
  ;   K[22]='DOValue'
  ;   K[23]='SetEase'
  ;   K[24]='Ease'
  ;   K[25]='InOutSine'
  ;   K[26]='Join'
  ;   K[27]='To'
  ;   K[28]='AppendCallback'
  ;   K[29]='m_setProgressSeq'
  ;   K[30]='SetWindowSetProgress'
  ;   upvals: _ENV
  ;   locals: self(0-80), lastSetCard(5-80), curSetCard(10-80), maxSetCard(10-80), seq(41-73), duration(42-73)
  0000  GETTABLE  R1 = R0[K0('m_model')]
  0001  SELF      R2 = R1[K1('GetWindowSetProgress')] (self)
  0002  GETTABLE  R3 = R0[K2('m_config')]
  0003  GETTABLE  R3 = R3[K3('setId')]
  0004  CALL      R1 = call(R1, 1 args, 2 rets)
  0005  GETTABLE  R2 = R0[K0('m_model')]
  0006  SELF      R3 = R2[K4('GetSetCollectProgress')] (self)
  0007  GETTABLE  R4 = R0[K2('m_config')]
  0008  GETTABLE  R4 = R4[K3('setId')]
  0009  CALL      R2 = call(R2, 2 args, 2 rets)
  0010  GETTABLE  R4 = R0[K5('m_progressSlider')]
  0011  DIV       R5 = R3 div R1
  0012  SETTABLE  R4[K6('value')] = R5
  0013  GETTABLE  R4 = R0[K7('m_progressText')]
  0014  MOVE      R5 = R0
  0015  LOADK     R6 = K9 '/'
  0016  MOVE      R7 = R0
  0017  CONCAT    R5 = concat(R5..R5)
  0018  SETTABLE  R4[K8('text')] = R5
  0019  GETTABUP  R4 = _ENV[K10('UIUtil')]
  0020  GETTABLE  R4 = R4[K11('SetActive')]
  0021  GETTABLE  R5 = R0[K12('m_checkGo')]
  0022  LE        if R1 le R1   -> -129511
  0023  JMP       (jump)   -> 25
  0024  LOADBOOL  R6 = false
  0025  LOADBOOL  R6 = true
  0026  CALL      R4 = call(R4, 0 args, 2 rets)
  0027  GETTABUP  R4 = _ENV[K10('UIUtil')]
  0028  GETTABLE  R4 = R4[K11('SetActive')]
  0029  GETTABLE  R5 = R0[K13('m_progressGo')]
  0030  LT        if R1 lt R3   -> -130525
  0031  JMP       (jump)   -> 33
  0032  LOADBOOL  R6 = false
  0033  LOADBOOL  R6 = true
  0034  CALL      R4 = call(R4, 0 args, 2 rets)
  0035  LT        if R0 lt R2   -> -130521
  0036  JMP       (jump)   -> 73
  0037  SETTABLE  R0[K14('m_bPlayAnim')] = K15(true)
  0038  GETTABUP  R4 = _ENV[K16('DOTween')]
  0039  GETTABLE  R4 = R4[K17('Sequence')]
  0040  CALL      R4 = call(R4, 1 args, 0 rets)
  0041  LOADK     R5 = K18 0.6
  0042  SELF      R7 = R4[K19('AppendInterval')] (self)
  0043  LOADK     R8 = K20 1
  0044  CALL      R6 = call(R6, 0 args, 2 rets)
  0045  SELF      R7 = R4[K21('Append')] (self)
  0046  GETTABLE  R8 = R0[K5('m_progressSlider')]
  0047  SELF      R9 = R8[K22('DOValue')] (self)
  0048  DIV       R10 = R3 div R2
  0049  MOVE      R11 = R0
  0050  CALL      R8 = call(R8, 1 args, 3 rets)
  0051  SELF      R9 = R8[K23('SetEase')] (self)
  0052  GETTABUP  R10 = _ENV[K24('Ease')]
  0053  GETTABLE  R10 = R10[K25('InOutSine')]
  0054  CALL      R8 = call(R8, -1 args, 2 rets)
  0055  CALL      R6 = call(R6, 0 args, -1 rets)
  0056  SELF      R7 = R4[K26('Join')] (self)
  0057  GETTABUP  R8 = _ENV[K16('DOTween')]
  0058  GETTABLE  R8 = R8[K27('To')]
  0059  CLOSURE   R9 = closure proto0
  0060  CLOSURE   R10 = closure proto1
  0061  MOVE      R11 = R0
  0062  MOVE      R12 = R0
  0063  CALL      R8 = call(R8, 1 args, 4 rets)
  0064  SELF      R9 = R8[K23('SetEase')] (self)
  0065  GETTABUP  R10 = _ENV[K24('Ease')]
  0066  GETTABLE  R10 = R10[K25('InOutSine')]
  0067  CALL      R8 = call(R8, -1 args, 2 rets)
  0068  CALL      R6 = call(R6, 0 args, -1 rets)
  0069  SELF      R7 = R4[K28('AppendCallback')] (self)
  0070  CLOSURE   R8 = closure proto2
  0071  CALL      R6 = call(R6, 0 args, 2 rets)
  0072  SETTABLE  R0[K29('m_setProgressSeq')] = R4
  0073  GETTABLE  R4 = R0[K0('m_model')]
  0074  SELF      R5 = R4[K30('SetWindowSetProgress')] (self)
  0075  GETTABLE  R6 = R0[K2('m_config')]
  0076  GETTABLE  R6 = R6[K3('setId')]
  0077  MOVE      R7 = R0
  0078  CALL      R4 = call(R4, 0 args, 3 rets)
  0079  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 89-91 np=0 va=0 ms=2 code=3 consts=0 upvals=1 protos=0
    ;   upvals: lastSetCard
    0000  GETUPVAL  R0 = lastSetCard
    0001  RETURN    return R0..R-1
    0002  RETURN    return R0..R-1
  ; ---------- proto1 [] ----------
    ; fn ?  line 92-95 np=1 va=0 ms=6 code=11 consts=5 upvals=3 protos=0
    ;   K[0]='math'
    ;   K[1]='ceil'
    ;   K[2]='m_progressText'
    ;   K[3]='text'
    ;   K[4]='/'
    ;   upvals: _ENV, self, maxSetCard
    ;   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  GETTABUP  R2 = self[K2('m_progressText')]
    0005  MOVE      R3 = R0
    0006  LOADK     R4 = K4 '/'
    0007  GETUPVAL  R5 = _ENV
    0008  CONCAT    R3 = concat(R3..R3)
    0009  SETTABLE  R2[K3('text')] = R3
    0010  RETURN    return R0..R-1
  ; ---------- proto2 [m_setProgressSeq] ----------
    ; fn ?  line 98-115 np=0 va=0 ms=8 code=58 consts=25 upvals=4 protos=1
    ;   K[0]='m_setProgressSeq'
    ;   K[1]=nil
    ;   K[2]='UIUtil'
    ;   K[3]='SetActive'
    ;   K[4]='m_checkGo'
    ;   K[5]='m_progressGo'
    ;   K[6]='SetLocalScale'
    ;   K[7]='transform'
    ;   K[8]=0
    ;   K[9]='m_completeTween'
    ;   K[10]='DOTween'
    ;   K[11]='Sequence'
    ;   K[12]='Append'
    ;   K[13]='DOScale'
    ;   K[14]='Vector3'
    ;   K[15]=1.1
    ;   K[16]=1
    ;   K[17]=0.3
    ;   K[18]='SetEase'
    ;   K[19]='Ease'
    ;   K[20]='InSine'
    ;   K[21]='V3One'
    ;   K[22]=0.1
    ;   K[23]='OutSine'
    ;   K[24]='AppendCallback'
    ;   upvals: self, curSetCard, maxSetCard, _ENV
    0000  SETTABUP  self[K0('m_setProgressSeq')] = K1(nil)
    0001  GETUPVAL  R0 = self
    0002  GETUPVAL  R1 = self
    0003  LE        if R0 le R0   -> -130555
    0004  JMP       (jump)   -> 57
    0005  GETTABUP  R0 = _ENV[K2('UIUtil')]
    0006  GETTABLE  R0 = R0[K3('SetActive')]
    0007  GETTABUP  R1 = self[K4('m_checkGo')]
    0008  LOADBOOL  R2 = true
    0009  CALL      R0 = call(R0, 0 args, 2 rets)
    0010  GETTABUP  R0 = _ENV[K2('UIUtil')]
    0011  GETTABLE  R0 = R0[K3('SetActive')]
    0012  GETTABUP  R1 = self[K5('m_progressGo')]
    0013  LOADBOOL  R2 = false
    0014  CALL      R0 = call(R0, 0 args, 2 rets)
    0015  GETTABUP  R0 = _ENV[K2('UIUtil')]
    0016  GETTABLE  R0 = R0[K6('SetLocalScale')]
    0017  GETTABUP  R1 = self[K4('m_checkGo')]
    0018  GETTABLE  R1 = R1[K7('transform')]
    0019  LOADK     R2 = K8 0
    0020  LOADK     R3 = K8 0
    0021  CALL      R0 = call(R0, 0 args, 3 rets)
    0022  GETTABUP  R0 = _ENV[K10('DOTween')]
    0023  GETTABLE  R0 = R0[K11('Sequence')]
    0024  CALL      R0 = call(R0, 1 args, 0 rets)
    0025  SELF      R1 = R0[K12('Append')] (self)
    0026  GETTABUP  R2 = self[K4('m_checkGo')]
    0027  GETTABLE  R2 = R2[K7('transform')]
    0028  SELF      R3 = R2[K13('DOScale')] (self)
    0029  GETTABUP  R4 = _ENV[K14('Vector3')]
    0030  LOADK     R5 = K15 1.1
    0031  LOADK     R6 = K15 1.1
    0032  LOADK     R7 = K16 1
    0033  CALL      R4 = call(R4, 1 args, 3 rets)
    0034  LOADK     R5 = K17 0.3
    0035  CALL      R2 = call(R2, 1 args, 3 rets)
    0036  SELF      R3 = R2[K18('SetEase')] (self)
    0037  GETTABUP  R4 = _ENV[K19('Ease')]
    0038  GETTABLE  R4 = R4[K20('InSine')]
    0039  CALL      R2 = call(R2, -1 args, 2 rets)
    0040  CALL      R0 = call(R0, 1 args, -1 rets)
    0041  SELF      R1 = R0[K12('Append')] (self)
    0042  GETTABUP  R2 = self[K4('m_checkGo')]
    0043  GETTABLE  R2 = R2[K7('transform')]
    0044  SELF      R3 = R2[K13('DOScale')] (self)
    0045  GETTABUP  R4 = _ENV[K21('V3One')]
    0046  LOADK     R5 = K22 0.1
    0047  CALL      R2 = call(R2, 1 args, 3 rets)
    0048  SELF      R3 = R2[K18('SetEase')] (self)
    0049  GETTABUP  R4 = _ENV[K19('Ease')]
    0050  GETTABLE  R4 = R4[K23('OutSine')]
    0051  CALL      R2 = call(R2, -1 args, 2 rets)
    0052  CALL      R0 = call(R0, 1 args, -1 rets)
    0053  SELF      R1 = R0[K24('AppendCallback')] (self)
    0054  CLOSURE   R2 = closure proto0
    0055  CALL      R0 = call(R0, 1 args, 2 rets)
    0056  SETTABUP  self[K9('m_completeTween')] = R0
    0057  RETURN    return R0..R-1
    ; ---------- proto0 [] ----------
      ; fn ?  line 109-113 np=0 va=0 ms=2 code=6 consts=6 upvals=1 protos=0
      ;   K[0]='m_boomEffect'
      ;   K[1]='Play'
      ;   K[2]='m_completeTween'
      ;   K[3]=nil
      ;   K[4]='m_bPlayAnim'
      ;   K[5]=false
      ;   upvals: self
      0000  GETTABUP  R0 = self[K0('m_boomEffect')]
      0001  SELF      R1 = R0[K1('Play')] (self)
      0002  CALL      R0 = call(R0, 0 args, 1 rets)
      0003  SETTABUP  self[K2('m_completeTween')] = K3(nil)
      0004  SETTABUP  self[K4('m_bPlayAnim')] = K5(false)
      0005  RETURN    return R0..R-1
; ---------- proto8 [PlayHitAnim] ----------
  ; fn ?  line 122-124 np=1 va=0 ms=4 code=5 consts=3 upvals=0 protos=0
  ;   K[0]='m_animator'
  ;   K[1]='SetTrigger'
  ;   K[2]='hit'
  ;   locals: self(0-5)
  0000  GETTABLE  R1 = R0[K0('m_animator')]
  0001  SELF      R2 = R1[K1('SetTrigger')] (self)
  0002  LOADK     R3 = K2 'hit'
  0003  CALL      R1 = call(R1, 0 args, 2 rets)
  0004  RETURN    return R0..R-1
; ---------- proto9 [IsPlayProgressAnim] ----------
  ; fn ?  line 126-128 np=1 va=0 ms=2 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='m_bPlayAnim'
  ;   locals: self(0-3)
  0000  GETTABLE  R1 = R0[K0('m_bPlayAnim')]
  0001  RETURN    return R1..R0
  0002  RETURN    return R0..R-1
; ---------- proto10 [Init] ----------
  ; fn ?  line 134-187 np=4 va=0 ms=12 code=124 consts=48 upvals=1 protos=0
  ;   K[0]='AlbumActivityBaseWindow'
  ;   K[1]='Init'
  ;   K[2]='m_hasJustStartedLimitAlbum'
  ;   K[3]=false
  ;   K[4]='pairs'
  ;   K[5]='LimitAlbumDefinition'
  ;   K[6]='GM'
  ;   K[7]='UIManager'
  ;   K[8]='IsViewExisting'
  ;   K[9]='StartWindowPrefabName'
  ;   K[10]=true
  ;   K[11]='UpdateSetLayoutPadding'
  ;   K[12]='InitPack'
  ;   K[13]='InitRewards'
  ;   K[14]='_UpdateContent'
  ;   K[15]='UpdateCycleRefresh'
  ;   K[16]='UpdateJokerContent'
  ;   K[17]='PlayIconShowAct'
  ;   K[18]='AddHandlerAndRecordMap'
  ;   K[19]='m_model'
  ;   K[20]='GetEvent'
  ;   K[21]='AlbumActivityModel'
  ;   K[22]='EventKey'
  ;   K[23]='CycleRefresh'
  ;   K[24]='obj'
  ;   K[25]='method'
  ;   K[26]='AlbumBaseModel'
  ;   K[27]='GetNewCard'
  ;   K[28]='RedRefresh'
  ;   K[29]='OnRedPointRefresh'
  ;   K[30]='JokerCountRefresh'
  ;   K[31]='EventDispatcher'
  ;   K[32]='AddListener'
  ;   K[33]='EEventType'
  ;   K[34]='CommonLimitAlbumStateChanged'
  ;   K[35]='_OnLimitAlbumStateChange'
  ;   K[36]=nil
  ;   K[37]='UpdatePerSecond'
  ;   K[38]='GetState'
  ;   K[39]='ActivityState'
  ;   K[40]='Started'
  ;   K[41]='SetWindowOpened'
  ;   K[42]='TutorialModel'
  ;   K[43]='IsTutorialFinished'
  ;   K[44]='ETutorialId'
  ;   K[45]='LimitAlbumStart'
  ;   K[46]='CloseView'
  ;   K[47]='_OnCloseView'
  ;   upvals: _ENV
  ;   locals: self(0-124), activityType(0-124), bUserClick(0-124), initCallback(0-124), (for generator)(10-22), (for state)(10-22), (for control)(10-22), _(11-20), defintion(11-20)
  0000  GETTABUP  R4 = _ENV[K0('AlbumActivityBaseWindow')]
  0001  GETTABLE  R4 = R4[K1('Init')]
  0002  MOVE      R5 = R0
  0003  MOVE      R6 = R0
  0004  MOVE      R7 = R0
  0005  CALL      R4 = call(R4, 0 args, 3 rets)
  0006  SETTABLE  R0[K2('m_hasJustStartedLimitAlbum')] = K3(false)
  0007  GETTABUP  R4 = _ENV[K4('pairs')]
  0008  GETTABUP  R5 = _ENV[K5('LimitAlbumDefinition')]
  0009  CALL      R4 = call(R4, 3 args, 1 rets)
  0010  JMP       (jump)   -> 20
  0011  GETTABUP  R9 = _ENV[K6('GM')]
  0012  GETTABLE  R9 = R9[K7('UIManager')]
  0013  SELF      R10 = R9[K8('IsViewExisting')] (self)
  0014  GETTABLE  R11 = R8[K9('StartWindowPrefabName')]
  0015  CALL      R9 = call(R9, 1 args, 2 rets)
  0016  TEST      if not R9 then   -> -131054
  0017  JMP       (jump)   -> 20
  0018  SETTABLE  R0[K2('m_hasJustStartedLimitAlbum')] = K10(true)
  0019  JMP       (jump)   -> 22
  0020  TFORCALL  tforcall R4
  0021  TFORLOOP  tforloop R6(sBx=-11)   -> 11
  0022  SELF      R5 = R0[K11('UpdateSetLayoutPadding')] (self)
  0023  CALL      R4 = call(R4, 0 args, 1 rets)
  0024  SELF      R5 = R0[K12('InitPack')] (self)
  0025  CALL      R4 = call(R4, 0 args, 1 rets)
  0026  SELF      R5 = R0[K13('InitRewards')] (self)
  0027  CALL      R4 = call(R4, 0 args, 1 rets)
  0028  SELF      R5 = R0[K14('_UpdateContent')] (self)
  0029  CALL      R4 = call(R4, 0 args, 1 rets)
  0030  SELF      R5 = R0[K15('UpdateCycleRefresh')] (self)
  0031  CALL      R4 = call(R4, 0 args, 1 rets)
  0032  SELF      R5 = R0[K16('UpdateJokerContent')] (self)
  0033  CALL      R4 = call(R4, 0 args, 1 rets)
  0034  SELF      R5 = R0[K17('PlayIconShowAct')] (self)
  0035  CALL      R4 = call(R4, 0 args, 1 rets)
  0036  GETTABUP  R4 = _ENV[K18('AddHandlerAndRecordMap')]
  0037  GETTABLE  R5 = R0[K19('m_model')]
  0038  SELF      R6 = R5[K20('GetEvent')] (self)
  0039  CALL      R5 = call(R5, 1 args, 1 rets)
  0040  GETTABUP  R6 = _ENV[K21('AlbumActivityModel')]
  0041  GETTABLE  R6 = R6[K22('EventKey')]
  0042  GETTABLE  R6 = R6[K23('CycleRefresh')]
  0043  NEWTABLE  R7 = {} (0 items)
  0044  SETTABLE  R7[K24('obj')] = R0
  0045  GETTABLE  R8 = R0[K15('UpdateCycleRefresh')]
  0046  SETTABLE  R7[K25('method')] = R8
  0047  CALL      R4 = call(R4, 0 args, 3 rets)
  0048  GETTABUP  R4 = _ENV[K18('AddHandlerAndRecordMap')]
  0049  GETTABLE  R5 = R0[K19('m_model')]
  0050  SELF      R6 = R5[K20('GetEvent')] (self)
  0051  CALL      R5 = call(R5, 1 args, 1 rets)
  0052  GETTABUP  R6 = _ENV[K26('AlbumBaseModel')]
  0053  GETTABLE  R6 = R6[K22('EventKey')]
  0054  GETTABLE  R6 = R6[K27('GetNewCard')]
  0055  NEWTABLE  R7 = {} (0 items)
  0056  SETTABLE  R7[K24('obj')] = R0
  0057  GETTABLE  R8 = R0[K14('_UpdateContent')]
  0058  SETTABLE  R7[K25('method')] = R8
  0059  CALL      R4 = call(R4, 0 args, 3 rets)
  0060  GETTABUP  R4 = _ENV[K18('AddHandlerAndRecordMap')]
  0061  GETTABLE  R5 = R0[K19('m_model')]
  0062  SELF      R6 = R5[K20('GetEvent')] (self)
  0063  CALL      R5 = call(R5, 1 args, 1 rets)
  0064  GETTABUP  R6 = _ENV[K26('AlbumBaseModel')]
  0065  GETTABLE  R6 = R6[K22('EventKey')]
  0066  GETTABLE  R6 = R6[K28('RedRefresh')]
  0067  NEWTABLE  R7 = {} (0 items)
  0068  SETTABLE  R7[K24('obj')] = R0
  0069  GETTABLE  R8 = R0[K29('OnRedPointRefresh')]
  0070  SETTABLE  R7[K25('method')] = R8
  0071  CALL      R4 = call(R4, 0 args, 3 rets)
  0072  GETTABUP  R4 = _ENV[K18('AddHandlerAndRecordMap')]
  0073  GETTABLE  R5 = R0[K19('m_model')]
  0074  SELF      R6 = R5[K20('GetEvent')] (self)
  0075  CALL      R5 = call(R5, 1 args, 1 rets)
  0076  GETTABUP  R6 = _ENV[K21('AlbumActivityModel')]
  0077  GETTABLE  R6 = R6[K22('EventKey')]
  0078  GETTABLE  R6 = R6[K30('JokerCountRefresh')]
  0079  NEWTABLE  R7 = {} (0 items)
  0080  SETTABLE  R7[K24('obj')] = R0
  0081  GETTABLE  R8 = R0[K16('UpdateJokerContent')]
  0082  SETTABLE  R7[K25('method')] = R8
  0083  CALL      R4 = call(R4, 0 args, 3 rets)
  0084  GETTABUP  R4 = _ENV[K31('EventDispatcher')]
  0085  GETTABLE  R4 = R4[K32('AddListener')]
  0086  GETTABUP  R5 = _ENV[K33('EEventType')]
  0087  GETTABLE  R5 = R5[K34('CommonLimitAlbumStateChanged')]
  0088  MOVE      R6 = R0
  0089  GETTABLE  R7 = R0[K35('_OnLimitAlbumStateChange')]
  0090  CALL      R4 = call(R4, 0 args, 3 rets)
  0091  EQ        if R1 eq K36(nil)   -> -129151
  0092  JMP       (jump)   -> 96
  0093  MOVE      R4 = R0
  0094  MOVE      R5 = R0
  0095  CALL      R4 = call(R4, 0 args, 1 rets)
  0096  SELF      R5 = R0[K37('UpdatePerSecond')] (self)
  0097  CALL      R4 = call(R4, 0 args, 1 rets)
  0098  GETTABLE  R4 = R0[K19('m_model')]
  0099  SELF      R5 = R4[K38('GetState')] (self)
  0100  CALL      R4 = call(R4, 1 args, 1 rets)
  0101  GETTABUP  R5 = _ENV[K39('ActivityState')]
  0102  GETTABLE  R5 = R5[K40('Started')]
  0103  EQ        if R0 eq R5   -> -128914
  0104  JMP       (jump)   -> 108
  0105  GETTABLE  R4 = R0[K19('m_model')]
  0106  SELF      R5 = R4[K41('SetWindowOpened')] (self)
  0107  CALL      R4 = call(R4, 0 args, 1 rets)
  0108  GETTABUP  R4 = _ENV[K6('GM')]
  0109  GETTABLE  R4 = R4[K42('TutorialModel')]
  0110  SELF      R5 = R4[K43('IsTutorialFinished')] (self)
  0111  GETTABUP  R6 = _ENV[K44('ETutorialId')]
  0112  GETTABLE  R6 = R6[K45('LimitAlbumStart')]
  0113  CALL      R4 = call(R4, 1 args, 2 rets)
  0114  TEST      if not R4 then   -> -130955
  0115  JMP       (jump)   -> 123
  0116  GETTABUP  R4 = _ENV[K31('EventDispatcher')]
  0117  GETTABLE  R4 = R4[K32('AddListener')]
  0118  GETTABUP  R5 = _ENV[K33('EEventType')]
  0119  GETTABLE  R5 = R5[K46('CloseView')]
  0120  MOVE      R6 = R0
  0121  GETTABLE  R7 = R0[K47('_OnCloseView')]
  0122  CALL      R4 = call(R4, 0 args, 3 rets)
  0123  RETURN    return R0..R-1
; ---------- proto11 [OnDestroy] ----------
  ; fn ?  line 189-214 np=1 va=0 ms=4 code=47 consts=16 upvals=1 protos=0
  ;   K[0]='AlbumActivityBaseWindow'
  ;   K[1]='OnDestroy'
  ;   K[2]='GM'
  ;   K[3]='UIManager'
  ;   K[4]='RemoveAllEventLocks'
  ;   K[5]='m_limitAlbumContent'
  ;   K[6]=nil
  ;   K[7]='Scheduler'
  ;   K[8]='UnscheduleTarget'
  ;   K[9]='m_flySeq'
  ;   K[10]='Kill'
  ;   K[11]='m_enterSeq'
  ;   K[12]='m_progressSeq'
  ;   K[13]='m_model'
  ;   K[14]='RemoveAllHandlers'
  ;   K[15]='GetEvent'
  ;   upvals: _ENV
  ;   locals: self(0-47)
  0000  GETTABUP  R1 = _ENV[K0('AlbumActivityBaseWindow')]
  0001  GETTABLE  R1 = R1[K1('OnDestroy')]
  0002  MOVE      R2 = R0
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  GETTABUP  R1 = _ENV[K2('GM')]
  0005  GETTABLE  R1 = R1[K3('UIManager')]
  0006  SELF      R2 = R1[K4('RemoveAllEventLocks')] (self)
  0007  MOVE      R3 = R0
  0008  CALL      R1 = call(R1, 0 args, 2 rets)
  0009  GETTABLE  R1 = R0[K5('m_limitAlbumContent')]
  0010  EQ        if R1 eq K6(nil)   -> -130286
  0011  JMP       (jump)   -> 16
  0012  GETTABUP  R1 = _ENV[K7('Scheduler')]
  0013  GETTABLE  R1 = R1[K8('UnscheduleTarget')]
  0014  GETTABLE  R2 = R0[K5('m_limitAlbumContent')]
  0015  CALL      R1 = call(R1, 0 args, 1 rets)
  0016  GETTABLE  R1 = R0[K9('m_flySeq')]
  0017  EQ        if R1 eq K6(nil)   -> -130279
  0018  JMP       (jump)   -> 23
  0019  GETTABLE  R1 = R0[K9('m_flySeq')]
  0020  SELF      R2 = R1[K10('Kill')] (self)
  0021  CALL      R1 = call(R1, 0 args, 1 rets)
  0022  SETTABLE  R0[K9('m_flySeq')] = K6(nil)
  0023  GETTABLE  R1 = R0[K11('m_enterSeq')]
  0024  EQ        if R1 eq K6(nil)   -> -130272
  0025  JMP       (jump)   -> 30
  0026  GETTABLE  R1 = R0[K11('m_enterSeq')]
  0027  SELF      R2 = R1[K10('Kill')] (self)
  0028  CALL      R1 = call(R1, 0 args, 1 rets)
  0029  SETTABLE  R0[K11('m_enterSeq')] = K6(nil)
  0030  GETTABLE  R1 = R0[K12('m_progressSeq')]
  0031  EQ        if R1 eq K6(nil)   -> -130265
  0032  JMP       (jump)   -> 37
  0033  GETTABLE  R1 = R0[K12('m_progressSeq')]
  0034  SELF      R2 = R1[K10('Kill')] (self)
  0035  CALL      R1 = call(R1, 0 args, 1 rets)
  0036  SETTABLE  R0[K12('m_progressSeq')] = K6(nil)
  0037  GETTABLE  R1 = R0[K13('m_model')]
  0038  EQ        if R1 eq K6(nil)   -> -130258
  0039  JMP       (jump)   -> 46
  0040  GETTABUP  R1 = _ENV[K14('RemoveAllHandlers')]
  0041  GETTABLE  R2 = R0[K13('m_model')]
  0042  SELF      R3 = R2[K15('GetEvent')] (self)
  0043  CALL      R2 = call(R2, 1 args, 1 rets)
  0044  MOVE      R3 = R0
  0045  CALL      R1 = call(R1, 0 args, 2 rets)
  0046  RETURN    return R0..R-1
; ---------- proto12 [UpdateSetLayoutPadding] ----------
  ; fn ?  line 216-230 np=1 va=0 ms=7 code=27 consts=16 upvals=1 protos=0
  ;   K[0]='GM'
  ;   K[1]='UIManager'
  ;   K[2]='GetCanvasSize'
  ;   K[3]='m_packsRect'
  ;   K[4]='y'
  ;   K[5]=2
  ;   K[6]='anchoredPosition'
  ;   K[7]='sizeDelta'
  ;   K[8]=280
  ;   K[9]='math'
  ;   K[10]='floor'
  ;   K[11]='m_setLayout'
  ;   K[12]='padding'
  ;   K[13]='bottom'
  ;   K[14]='m_setLayoutTop'
  ;   K[15]='top'
  ;   upvals: _ENV
  ;   locals: self(0-27), canvasSize(4-27), viewportRect(5-27), viewportBottomY(14-27), starShopBottomY(15-27), paddingBottom(19-27)
  0000  GETTABUP  R1 = _ENV[K0('GM')]
  0001  GETTABLE  R1 = R1[K1('UIManager')]
  0002  SELF      R2 = R1[K2('GetCanvasSize')] (self)
  0003  CALL      R1 = call(R1, 1 args, 1 rets)
  0004  GETTABLE  R2 = R0[K3('m_packsRect')]
  0005  GETTABLE  R3 = R1[K4('y')]
  0006  DIV       R3 = K5(2) div R3
  0007  GETTABLE  R4 = R2[K6('anchoredPosition')]
  0008  GETTABLE  R4 = R4[K4('y')]
  0009  UNM       R4 = unm R0
  0010  GETTABLE  R5 = R2[K7('sizeDelta')]
  0011  GETTABLE  R5 = R5[K4('y')]
  0012  ADD       R4 = R5 add R4
  0013  SUB       R3 = R4 sub R3
  0014  LOADK     R4 = K8 280
  0015  GETTABUP  R5 = _ENV[K9('math')]
  0016  GETTABLE  R5 = R5[K10('floor')]
  0017  SUB       R6 = R3 sub R4
  0018  CALL      R5 = call(R5, 1 args, 1 rets)
  0019  GETTABLE  R6 = R0[K11('m_setLayout')]
  0020  GETTABLE  R6 = R6[K12('padding')]
  0021  SETTABLE  R6[K13('bottom')] = R5
  0022  GETTABLE  R6 = R0[K11('m_setLayout')]
  0023  GETTABLE  R6 = R6[K12('padding')]
  0024  GETTABLE  R6 = R6[K15('top')]
  0025  SETTABLE  R0[K14('m_setLayoutTop')] = R6
  0026  RETURN    return R0..R-1
; ---------- proto13 [_OnCloseView] ----------
  ; fn ?  line 232-234 np=2 va=0 ms=4 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='TryStartLimitAlbumStartTutorial'
  ;   locals: self(0-3), msg(0-3)
  0000  SELF      R3 = R0[K0('TryStartLimitAlbumStartTutorial')] (self)
  0001  CALL      R2 = call(R2, 0 args, 1 rets)
  0002  RETURN    return R0..R-1
; ---------- proto14 [TryStartLimitAlbumStartTutorial] ----------
  ; fn ?  line 236-244 np=1 va=0 ms=4 code=27 consts=13 upvals=1 protos=0
  ;   K[0]='GM'
  ;   K[1]='UIManager'
  ;   K[2]='GetOpenedTopView'
  ;   K[3]='UIUtil'
  ;   K[4]='IsEmptyComponent'
  ;   K[5]='m_limitAlbumContent'
  ;   K[6]='HasPlayedEndAnimation'
  ;   K[7]='m_flySeq'
  ;   K[8]=nil
  ;   K[9]='EventDispatcher'
  ;   K[10]='DispatchEvent'
  ;   K[11]='EEventType'
  ;   K[12]='TryStartLimitAlbumTutorial'
  ;   upvals: _ENV
  ;   locals: self(0-27)
  0000  GETTABUP  R1 = _ENV[K0('GM')]
  0001  GETTABLE  R1 = R1[K1('UIManager')]
  0002  SELF      R2 = R1[K2('GetOpenedTopView')] (self)
  0003  CALL      R1 = call(R1, 1 args, 1 rets)
  0004  EQ        if R0 eq R0   -> -130554
  0005  JMP       (jump)   -> 26
  0006  GETTABUP  R1 = _ENV[K3('UIUtil')]
  0007  GETTABLE  R1 = R1[K4('IsEmptyComponent')]
  0008  GETTABLE  R2 = R0[K5('m_limitAlbumContent')]
  0009  CALL      R1 = call(R1, 1 args, 1 rets)
  0010  TEST      if not R1 then   -> -131059
  0011  JMP       (jump)   -> 26
  0012  GETTABLE  R1 = R0[K5('m_limitAlbumContent')]
  0013  SELF      R2 = R1[K6('HasPlayedEndAnimation')] (self)
  0014  CALL      R1 = call(R1, 1 args, 1 rets)
  0015  TEST      if not R1 then   -> -131054
  0016  JMP       (jump)   -> 26
  0017  GETTABLE  R1 = R0[K7('m_flySeq')]
  0018  EQ        if R0 eq K8(nil)   -> -130276
  0019  JMP       (jump)   -> 26
  0020  GETTABUP  R1 = _ENV[K9('EventDispatcher')]
  0021  GETTABLE  R1 = R1[K10('DispatchEvent')]
  0022  GETTABUP  R2 = _ENV[K11('EEventType')]
  0023  GETTABLE  R2 = R2[K12('TryStartLimitAlbumTutorial')]
  0024  GETTABLE  R3 = R0[K5('m_limitAlbumContent')]
  0025  CALL      R1 = call(R1, 0 args, 2 rets)
  0026  RETURN    return R0..R-1
; ---------- proto15 [OnHelpBtnClick] ----------
  ; fn ?  line 246-252 np=1 va=0 ms=6 code=29 consts=10 upvals=1 protos=0
  ;   K[0]='m_model'
  ;   K[1]='IsRMServerOpen'
  ;   K[2]='m_activityDefinition'
  ;   K[3]='RMHelpWindowPrefabName'
  ;   K[4]=nil
  ;   K[5]='GM'
  ;   K[6]='UIManager'
  ;   K[7]='OpenView'
  ;   K[8]='GetType'
  ;   K[9]='HelpWindowPrefabName'
  ;   upvals: _ENV
  ;   locals: self(0-29)
  0000  GETTABLE  R1 = R0[K0('m_model')]
  0001  SELF      R2 = R1[K1('IsRMServerOpen')] (self)
  0002  CALL      R1 = call(R1, 1 args, 1 rets)
  0003  TEST      if not R1 then   -> -131067
  0004  JMP       (jump)   -> 19
  0005  GETTABLE  R1 = R0[K2('m_activityDefinition')]
  0006  GETTABLE  R1 = R1[K3('RMHelpWindowPrefabName')]
  0007  EQ        if R1 eq K4(nil)   -> -130291
  0008  JMP       (jump)   -> 19
  0009  GETTABUP  R1 = _ENV[K5('GM')]
  0010  GETTABLE  R1 = R1[K6('UIManager')]
  0011  SELF      R2 = R1[K7('OpenView')] (self)
  0012  GETTABLE  R3 = R0[K2('m_activityDefinition')]
  0013  GETTABLE  R3 = R3[K3('RMHelpWindowPrefabName')]
  0014  GETTABLE  R4 = R0[K0('m_model')]
  0015  SELF      R5 = R4[K8('GetType')] (self)
  0016  CALL      R4 = call(R4, -1 args, 1 rets)
  0017  CALL      R1 = call(R1, 0 args, -1 rets)
  0018  JMP       (jump)   -> 28
  0019  GETTABUP  R1 = _ENV[K5('GM')]
  0020  GETTABLE  R1 = R1[K6('UIManager')]
  0021  SELF      R2 = R1[K7('OpenView')] (self)
  0022  GETTABLE  R3 = R0[K2('m_activityDefinition')]
  0023  GETTABLE  R3 = R3[K9('HelpWindowPrefabName')]
  0024  GETTABLE  R4 = R0[K0('m_model')]
  0025  SELF      R5 = R4[K8('GetType')] (self)
  0026  CALL      R4 = call(R4, -1 args, 1 rets)
  0027  CALL      R1 = call(R1, 0 args, -1 rets)
  0028  RETURN    return R0..R-1
; ---------- proto16 [OnGroupIconClicked] ----------
  ; fn ?  line 254-257 np=2 va=0 ms=10 code=16 consts=10 upvals=1 protos=0
  ;   K[0]='GetPackIndexBySetId'
  ;   K[1]='GM'
  ;   K[2]='UIManager'
  ;   K[3]='OpenView'
  ;   K[4]='m_activityDefinition'
  ;   K[5]='PackWindowPrefabName'
  ;   K[6]='m_arrAllCardSets'
  ;   K[7]='m_model'
  ;   K[8]='GetType'
  ;   K[9]='m_limitAlbumSetNum'
  ;   upvals: _ENV
  ;   locals: self(0-16), setId(0-16), index(3-16)
  0000  SELF      R3 = R0[K0('GetPackIndexBySetId')] (self)
  0001  MOVE      R4 = R0
  0002  CALL      R2 = call(R2, 1 args, 2 rets)
  0003  GETTABUP  R3 = _ENV[K1('GM')]
  0004  GETTABLE  R3 = R3[K2('UIManager')]
  0005  SELF      R4 = R3[K3('OpenView')] (self)
  0006  GETTABLE  R5 = R0[K4('m_activityDefinition')]
  0007  GETTABLE  R5 = R5[K5('PackWindowPrefabName')]
  0008  MOVE      R6 = R0
  0009  GETTABLE  R7 = R0[K6('m_arrAllCardSets')]
  0010  GETTABLE  R8 = R0[K7('m_model')]
  0011  SELF      R9 = R8[K8('GetType')] (self)
  0012  CALL      R8 = call(R8, 1 args, 1 rets)
  0013  GETTABLE  R9 = R0[K9('m_limitAlbumSetNum')]
  0014  CALL      R3 = call(R3, 0 args, 6 rets)
  0015  RETURN    return R0..R-1
; ---------- proto17 [GetPackIndexBySetId] ----------
  ; fn ?  line 259-264 np=2 va=0 ms=5 code=7 consts=3 upvals=1 protos=1
  ;   K[0]='Table'
  ;   K[1]='GetIndexWithFilter'
  ;   K[2]='m_arrAllCardSets'
  ;   upvals: _ENV
  ;   locals: self(0-7), setId(0-7), index(5-7)
  0000  GETTABUP  R2 = _ENV[K0('Table')]
  0001  GETTABLE  R2 = R2[K1('GetIndexWithFilter')]
  0002  GETTABLE  R3 = R0[K2('m_arrAllCardSets')]
  0003  CLOSURE   R4 = closure proto0
  0004  CALL      R2 = call(R2, 1 args, 2 rets)
  0005  RETURN    return R2..R1
  0006  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 260-262 np=1 va=0 ms=3 code=8 consts=1 upvals=1 protos=0
    ;   K[0]='setId'
    ;   upvals: setId
    ;   locals: value(0-8)
    0000  GETTABLE  R1 = R0[K0('setId')]
    0001  GETUPVAL  R2 = setId
    0002  EQ        if R1 eq R2   -> -130554
    0003  JMP       (jump)   -> 5
    0004  LOADBOOL  R1 = false
    0005  LOADBOOL  R1 = true
    0006  RETURN    return R1..R0
    0007  RETURN    return R0..R-1
; ---------- proto18 [OnCloseBtnClick] ----------
  ; fn ?  line 266-268 np=1 va=0 ms=3 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='Close'
  ;   locals: self(0-3)
  0000  SELF      R2 = R0[K0('Close')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  RETURN    return R0..R-1
; ---------- proto19 [InitPack] ----------
  ; fn ?  line 270-282 np=1 va=0 ms=12 code=41 consts=16 upvals=1 protos=0
  ;   K[0]='UpdateCardSets'
  ;   K[1]='m_cells'
  ;   K[2]=1
  ;   K[3]='m_cardIconLuaTable'
  ;   K[4]='ipairs'
  ;   K[5]='m_cardSets'
  ;   K[6]=nil
  ;   K[7]='Object'
  ;   K[8]='Instantiate'
  ;   K[9]='gameObject'
  ;   K[10]='transform'
  ;   K[11]='parent'
  ;   K[12]='GetLuaTable'
  ;   K[13]='Init'
  ;   K[14]='m_model'
  ;   K[15]='UpdateLimitAlbumContent'
  ;   upvals: _ENV
  ;   locals: self(0-41), (for generator)(10-37), (for state)(10-37), (for control)(10-37), index(11-35), eleInfo(11-35)
  0000  SELF      R2 = R0[K0('UpdateCardSets')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  NEWTABLE  R1 = {} (0 items)
  0003  SETTABLE  R0[K1('m_cells')] = R1
  0004  GETTABLE  R1 = R0[K1('m_cells')]
  0005  GETTABLE  R2 = R0[K3('m_cardIconLuaTable')]
  0006  SETTABLE  R1[K2(1)] = R2
  0007  GETTABUP  R1 = _ENV[K4('ipairs')]
  0008  GETTABLE  R2 = R0[K5('m_cardSets')]
  0009  CALL      R1 = call(R1, 3 args, 1 rets)
  0010  JMP       (jump)   -> 35
  0011  GETTABLE  R6 = R0[K1('m_cells')]
  0012  GETTABLE  R6 = R6[R4]
  0013  EQ        if R0 eq K6(nil)   -> -127723
  0014  JMP       (jump)   -> 27
  0015  GETTABLE  R6 = R0[K1('m_cells')]
  0016  GETTABUP  R7 = _ENV[K7('Object')]
  0017  GETTABLE  R7 = R7[K8('Instantiate')]
  0018  GETTABLE  R8 = R0[K3('m_cardIconLuaTable')]
  0019  GETTABLE  R8 = R8[K9('gameObject')]
  0020  GETTABLE  R9 = R0[K3('m_cardIconLuaTable')]
  0021  GETTABLE  R9 = R9[K10('transform')]
  0022  GETTABLE  R9 = R9[K11('parent')]
  0023  CALL      R7 = call(R7, 1 args, 2 rets)
  0024  SELF      R8 = R7[K12('GetLuaTable')] (self)
  0025  CALL      R7 = call(R7, 1 args, 1 rets)
  0026  SETTABLE  R6[R4] = R7
  0027  GETTABLE  R6 = R0[K1('m_cells')]
  0028  GETTABLE  R6 = R6[R4]
  0029  SELF      R7 = R6[K13('Init')] (self)
  0030  MOVE      R8 = R0
  0031  GETTABLE  R9 = R0[K5('m_cardSets')]
  0032  GETTABLE  R10 = R0[K14('m_model')]
  0033  MOVE      R11 = R0
  0034  CALL      R6 = call(R6, 0 args, 5 rets)
  0035  TFORCALL  tforcall R1
  0036  TFORLOOP  tforloop R3(sBx=-26)   -> 11
  0037  SELF      R2 = R0[K15('UpdateLimitAlbumContent')] (self)
  0038  LOADBOOL  R3 = true
  0039  CALL      R1 = call(R1, 0 args, 2 rets)
  0040  RETURN    return R0..R-1
; ---------- proto20 [LocateFirstPlayAnimationPosition] ----------
  ; fn ?  line 285-320 np=1 va=0 ms=12 code=66 consts=18 upvals=1 protos=0
  ;   K[0]='LayoutRebuilder'
  ;   K[1]='ForceRebuildLayoutImmediate'
  ;   K[2]='m_setContentRect'
  ;   K[3]='m_limitAlbumModel'
  ;   K[4]=nil
  ;   K[5]='ipairs'
  ;   K[6]='GetCardSets'
  ;   K[7]='GetSetCell'
  ;   K[8]='setId'
  ;   K[9]='IsPlayProgressAnim'
  ;   K[10]='m_hasJustStartedLimitAlbum'
  ;   K[11]='CanShowEnding'
  ;   K[12]='TryResetScrollToTop'
  ;   K[13]='m_cardSets'
  ;   K[14]='m_cells'
  ;   K[15]='m_setScrollRect'
  ;   K[16]='verticalNormalizedPosition'
  ;   K[17]='_GetProgressMiddleVerticalNormalizedPosition'
  ;   upvals: _ENV
  ;   locals: self(0-66), animLimitAlbumSetIndex(5-66), limitAlbumModel(6-66), limitAlbumCell(7-66), (for generator)(13-28), (for state)(13-28), (for control)(13-28), index(14-26), cardSet(14-26), animIndex(43-66), (for generator)(46-58), (for state)(46-58), (for control)(46-58), index(47-56), _(47-56)
  0000  GETTABUP  R1 = _ENV[K0('LayoutRebuilder')]
  0001  GETTABLE  R1 = R1[K1('ForceRebuildLayoutImmediate')]
  0002  GETTABLE  R2 = R0[K2('m_setContentRect')]
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  LOADNIL   R1..R1 = nil
  0005  GETTABLE  R2 = R0[K3('m_limitAlbumModel')]
  0006  LOADNIL   R3..R3 = nil
  0007  EQ        if R1 eq K4(nil)   -> -129779
  0008  JMP       (jump)   -> 28
  0009  GETTABUP  R4 = _ENV[K5('ipairs')]
  0010  SELF      R6 = R2[K6('GetCardSets')] (self)
  0011  CALL      R5 = call(R5, -1 args, 1 rets)
  0012  CALL      R4 = call(R4, 3 args, -1 rets)
  0013  JMP       (jump)   -> 26
  0014  SELF      R10 = R0[K7('GetSetCell')] (self)
  0015  GETTABLE  R11 = R8[K8('setId')]
  0016  CALL      R9 = call(R9, 1 args, 2 rets)
  0017  MOVE      R3 = R0
  0018  TEST      if not R3 then   -> -131052
  0019  JMP       (jump)   -> 26
  0020  SELF      R10 = R3[K9('IsPlayProgressAnim')] (self)
  0021  CALL      R9 = call(R9, 1 args, 1 rets)
  0022  TEST      if not R9 then   -> -131048
  0023  JMP       (jump)   -> 26
  0024  MOVE      R1 = R0
  0025  JMP       (jump)   -> 28
  0026  TFORCALL  tforcall R4
  0027  TFORLOOP  tforloop R6(sBx=-14)   -> 14
  0028  EQ        if R0 eq K4(nil)   -> -130270
  0029  JMP       (jump)   -> 39
  0030  GETTABLE  R4 = R0[K10('m_hasJustStartedLimitAlbum')]
  0031  TEST      if not R4 then   -> -131038
  0032  JMP       (jump)   -> 39
  0033  TEST      if not R2 then   -> -131037
  0034  JMP       (jump)   -> 42
  0035  SELF      R5 = R2[K11('CanShowEnding')] (self)
  0036  CALL      R4 = call(R4, 1 args, 1 rets)
  0037  TEST      if not R4 then   -> -131033
  0038  JMP       (jump)   -> 42
  0039  SELF      R5 = R0[K12('TryResetScrollToTop')] (self)
  0040  CALL      R4 = call(R4, 0 args, 1 rets)
  0041  RETURN    return R0..R-1
  0042  LOADNIL   R4..R4 = nil
  0043  GETTABUP  R5 = _ENV[K5('ipairs')]
  0044  GETTABLE  R6 = R0[K13('m_cardSets')]
  0045  CALL      R5 = call(R5, 3 args, 1 rets)
  0046  JMP       (jump)   -> 56
  0047  EQ        if R0 eq K4(nil)   -> -128715
  0048  JMP       (jump)   -> 56
  0049  GETTABLE  R10 = R0[K14('m_cells')]
  0050  GETTABLE  R10 = R10[R8]
  0051  SELF      R11 = R10[K9('IsPlayProgressAnim')] (self)
  0052  CALL      R10 = call(R10, 1 args, 1 rets)
  0053  TEST      if not R10 then   -> -131017
  0054  JMP       (jump)   -> 56
  0055  MOVE      R4 = R0
  0056  TFORCALL  tforcall R5
  0057  TFORLOOP  tforloop R7(sBx=-11)   -> 47
  0058  EQ        if R1 eq K4(nil)   -> -128704
  0059  JMP       (jump)   -> 65
  0060  GETTABLE  R5 = R0[K15('m_setScrollRect')]
  0061  SELF      R7 = R0[K17('_GetProgressMiddleVerticalNormalizedPosition')] (self)
  0062  MOVE      R8 = R0
  0063  CALL      R6 = call(R6, 1 args, 2 rets)
  0064  SETTABLE  R5[K16('verticalNormalizedPosition')] = R6
  0065  RETURN    return R0..R-1
; ---------- proto21 [UpdateLimitAlbumContent] ----------
  ; fn ?  line 322-383 np=2 va=0 ms=16 code=59 consts=29 upvals=1 protos=1
  ;   K[0]='m_limitAlbumContent'
  ;   K[1]='Scheduler'
  ;   K[2]='UnscheduleTarget'
  ;   K[3]='TryRemoveLimitAlbumContent'
  ;   K[4]='m_limitAlbumModel'
  ;   K[5]=nil
  ;   K[6]='GetId'
  ;   K[7]='GetPacksNum'
  ;   K[8]='GetActivityDefinition'
  ;   K[9]=3
  ;   K[10]='SmallMainPrefabName'
  ;   K[11]='m_setLayoutTop'
  ;   K[12]=733
  ;   K[13]=6
  ;   K[14]='MidMainPrefabName'
  ;   K[15]=1073
  ;   K[16]='LargeMainPrefabName'
  ;   K[17]='m_setContentRect'
  ;   K[18]='GM'
  ;   K[19]='ResourceLoader'
  ;   K[20]='LoadPrefab'
  ;   K[21]='DataResource'
  ;   K[22]='UIPrefabConfig'
  ;   K[23]='GetConfig'
  ;   K[24]='V3Zero'
  ;   K[25]='m_setLayout'
  ;   K[26]='padding'
  ;   K[27]='top'
  ;   K[28]='LocateFirstPlayAnimationPosition'
  ;   upvals: _ENV
  ;   locals: self(0-59), bInit(0-59), limitAlbumModel(10-59), activityId(14-49), packsNum(16-49), limitAlbumDefinition(18-49), prefabName(19-49), paddingTop(19-49), paddingBottom(19-49), parentRect(35-49)
  0000  GETTABLE  R2 = R0[K0('m_limitAlbumContent')]
  0001  TEST      if not R2 then   -> -131069
  0002  JMP       (jump)   -> 7
  0003  GETTABUP  R2 = _ENV[K1('Scheduler')]
  0004  GETTABLE  R2 = R2[K2('UnscheduleTarget')]
  0005  GETTABLE  R3 = R0[K0('m_limitAlbumContent')]
  0006  CALL      R2 = call(R2, 0 args, 1 rets)
  0007  SELF      R3 = R0[K3('TryRemoveLimitAlbumContent')] (self)
  0008  CALL      R2 = call(R2, 0 args, 1 rets)
  0009  GETTABLE  R2 = R0[K4('m_limitAlbumModel')]
  0010  EQ        if R1 eq K5(nil)   -> -129775
  0011  JMP       (jump)   -> 50
  0012  SELF      R4 = R2[K6('GetId')] (self)
  0013  CALL      R3 = call(R3, 1 args, 1 rets)
  0014  SELF      R5 = R2[K7('GetPacksNum')] (self)
  0015  CALL      R4 = call(R4, 1 args, 1 rets)
  0016  SELF      R6 = R2[K8('GetActivityDefinition')] (self)
  0017  CALL      R5 = call(R5, 1 args, 1 rets)
  0018  LOADNIL   R6..R6 = nil
  0019  LE        if R0 le K9(3)   -> -128738
  0020  JMP       (jump)   -> 25
  0021  GETTABLE  R6 = R5[K10('SmallMainPrefabName')]
  0022  GETTABLE  R9 = R0[K11('m_setLayoutTop')]
  0023  ADD       R7 = K12(733) add R9
  0024  JMP       (jump)   -> 34
  0025  LE        if R0 le K13(6)   -> -128728
  0026  JMP       (jump)   -> 31
  0027  GETTABLE  R6 = R5[K14('MidMainPrefabName')]
  0028  GETTABLE  R9 = R0[K11('m_setLayoutTop')]
  0029  ADD       R7 = K15(1073) add R9
  0030  JMP       (jump)   -> 34
  0031  GETTABLE  R6 = R5[K16('LargeMainPrefabName')]
  0032  GETTABLE  R9 = R0[K11('m_setLayoutTop')]
  0033  ADD       R7 = K15(1073) add R9
  0034  GETTABLE  R9 = R0[K17('m_setContentRect')]
  0035  GETTABUP  R10 = _ENV[K18('GM')]
  0036  GETTABLE  R10 = R10[K19('ResourceLoader')]
  0037  SELF      R11 = R10[K20('LoadPrefab')] (self)
  0038  GETTABUP  R12 = _ENV[K18('GM')]
  0039  GETTABLE  R12 = R12[K21('DataResource')]
  0040  GETTABLE  R12 = R12[K22('UIPrefabConfig')]
  0041  SELF      R13 = R12[K23('GetConfig')] (self)
  0042  MOVE      R14 = R0
  0043  CALL      R12 = call(R12, 1 args, 2 rets)
  0044  MOVE      R13 = R0
  0045  GETTABUP  R14 = _ENV[K24('V3Zero')]
  0046  CLOSURE   R15 = closure proto0
  0047  CALL      R10 = call(R10, 0 args, 5 rets)
  0048  JMP       (jump)   -> 58
  0049  JMP       (jump)   -> 58
  0050  GETTABLE  R3 = R0[K25('m_setLayout')]
  0051  GETTABLE  R3 = R3[K26('padding')]
  0052  GETTABLE  R4 = R0[K11('m_setLayoutTop')]
  0053  SETTABLE  R3[K27('top')] = R4
  0054  TEST      if not R1 then   -> -131016
  0055  JMP       (jump)   -> 58
  0056  SELF      R4 = R0[K28('LocateFirstPlayAnimationPosition')] (self)
  0057  CALL      R3 = call(R3, 0 args, 1 rets)
  0058  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 345-376 np=1 va=0 ms=7 code=67 consts=25 upvals=6 protos=0
    ;   K[0]=nil
    ;   K[1]='IsNull'
    ;   K[2]='GetState'
    ;   K[3]='ActivityState'
    ;   K[4]='Started'
    ;   K[5]='CanShowEnding'
    ;   K[6]='GetId'
    ;   K[7]='RemoveSelf'
    ;   K[8]='TryRemoveLimitAlbumContent'
    ;   K[9]='UIUtil'
    ;   K[10]='SetAnchoredPosition'
    ;   K[11]='transform'
    ;   K[12]=0
    ;   K[13]=-46
    ;   K[14]='GetLuaTable'
    ;   K[15]='m_setLayout'
    ;   K[16]='padding'
    ;   K[17]='top'
    ;   K[18]='Init'
    ;   K[19]='m_limitAlbumContent'
    ;   K[20]='m_hasJustStartedLimitAlbum'
    ;   K[21]=true
    ;   K[22]='LocateFirstPlayAnimationPosition'
    ;   K[23]='TryStartLimitAlbumStartTutorial'
    ;   K[24]='_OnLimitAlbumEnded'
    ;   upvals: limitAlbumModel, _ENV, activityId, self, paddingTop, bInit
    ;   locals: go(0-67), state(10-67), limitAlbumContent(39-67)
    0000  EQ        if R1 eq K0(nil)   -> -130814
    0001  JMP       (jump)   -> 6
    0002  SELF      R2 = R0[K1('IsNull')] (self)
    0003  CALL      R1 = call(R1, 1 args, 1 rets)
    0004  TEST      if not R1 then   -> -131066
    0005  JMP       (jump)   -> 7
    0006  RETURN    return R0..R-1
    0007  GETUPVAL  R1 = limitAlbumModel
    0008  SELF      R2 = R1[K2('GetState')] (self)
    0009  CALL      R1 = call(R1, 1 args, 1 rets)
    0010  GETTABUP  R2 = _ENV[K3('ActivityState')]
    0011  GETTABLE  R2 = R2[K4('Started')]
    0012  EQ        if R1 eq R2   -> -130544
    0013  JMP       (jump)   -> 19
    0014  GETUPVAL  R2 = limitAlbumModel
    0015  SELF      R3 = R2[K5('CanShowEnding')] (self)
    0016  CALL      R2 = call(R2, 1 args, 1 rets)
    0017  TEST      if not R2 then   -> -131053
    0018  JMP       (jump)   -> 25
    0019  GETUPVAL  R2 = limitAlbumModel
    0020  GETUPVAL  R3 = limitAlbumModel
    0021  SELF      R4 = R3[K6('GetId')] (self)
    0022  CALL      R3 = call(R3, 1 args, 1 rets)
    0023  EQ        if R1 eq R3   -> -130020
    0024  JMP       (jump)   -> 28
    0025  SELF      R3 = R0[K7('RemoveSelf')] (self)
    0026  CALL      R2 = call(R2, 0 args, 1 rets)
    0027  RETURN    return R0..R-1
    0028  GETUPVAL  R2 = limitAlbumModel
    0029  SELF      R3 = R2[K8('TryRemoveLimitAlbumContent')] (self)
    0030  CALL      R2 = call(R2, 0 args, 1 rets)
    0031  GETTABUP  R2 = _ENV[K9('UIUtil')]
    0032  GETTABLE  R2 = R2[K10('SetAnchoredPosition')]
    0033  GETTABLE  R3 = R0[K11('transform')]
    0034  LOADK     R4 = K12 0
    0035  LOADK     R5 = K13 -46
    0036  CALL      R2 = call(R2, 0 args, 3 rets)
    0037  SELF      R3 = R0[K14('GetLuaTable')] (self)
    0038  CALL      R2 = call(R2, 1 args, 1 rets)
    0039  GETTABUP  R3 = self[K15('m_setLayout')]
    0040  GETTABLE  R3 = R3[K16('padding')]
    0041  GETUPVAL  R4 = limitAlbumModel
    0042  SETTABLE  R3[K17('top')] = R4
    0043  SELF      R4 = R2[K18('Init')] (self)
    0044  GETUPVAL  R5 = limitAlbumModel
    0045  GETUPVAL  R6 = limitAlbumModel
    0046  CALL      R3 = call(R3, 0 args, 3 rets)
    0047  SETTABUP  self[K19('m_limitAlbumContent')] = R2
    0048  GETUPVAL  R3 = limitAlbumModel
    0049  TEST      if not R3 then   -> -131020
    0050  JMP       (jump)   -> 52
    0051  SETTABUP  self[K20('m_hasJustStartedLimitAlbum')] = K21(true)
    0052  GETUPVAL  R3 = limitAlbumModel
    0053  SELF      R4 = R3[K22('LocateFirstPlayAnimationPosition')] (self)
    0054  CALL      R3 = call(R3, 0 args, 1 rets)
    0055  GETUPVAL  R3 = limitAlbumModel
    0056  SELF      R4 = R3[K23('TryStartLimitAlbumStartTutorial')] (self)
    0057  CALL      R3 = call(R3, 0 args, 1 rets)
    0058  GETUPVAL  R3 = limitAlbumModel
    0059  SELF      R4 = R3[K5('CanShowEnding')] (self)
    0060  CALL      R3 = call(R3, 1 args, 1 rets)
    0061  TEST      if not R3 then   -> -131009
    0062  JMP       (jump)   -> 66
    0063  GETUPVAL  R3 = limitAlbumModel
    0064  SELF      R4 = R3[K24('_OnLimitAlbumEnded')] (self)
    0065  CALL      R3 = call(R3, 0 args, 1 rets)
    0066  RETURN    return R0..R-1
; ---------- proto22 [_OnLimitAlbumEnded] ----------
  ; fn ?  line 385-395 np=1 va=0 ms=7 code=17 consts=5 upvals=1 protos=1
  ;   K[0]='UIUtil'
  ;   K[1]='IsEmptyComponent'
  ;   K[2]='m_limitAlbumContent'
  ;   K[3]='PlayEndAnimation'
  ;   K[4]='DelayExecuteFuncInView'
  ;   upvals: _ENV
  ;   locals: self(0-17), delay(10-17)
  0000  GETTABUP  R1 = _ENV[K0('UIUtil')]
  0001  GETTABLE  R1 = R1[K1('IsEmptyComponent')]
  0002  GETTABLE  R2 = R0[K2('m_limitAlbumContent')]
  0003  CALL      R1 = call(R1, 1 args, 1 rets)
  0004  TEST      if not R1 then   -> -131066
  0005  JMP       (jump)   -> 7
  0006  RETURN    return R0..R-1
  0007  GETTABLE  R1 = R0[K2('m_limitAlbumContent')]
  0008  SELF      R2 = R1[K3('PlayEndAnimation')] (self)
  0009  CALL      R1 = call(R1, 1 args, 1 rets)
  0010  GETTABUP  R2 = _ENV[K4('DelayExecuteFuncInView')]
  0011  CLOSURE   R3 = closure proto0
  0012  MOVE      R4 = R0
  0013  MOVE      R5 = R0
  0014  LOADBOOL  R6 = true
  0015  CALL      R2 = call(R2, 0 args, 4 rets)
  0016  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 391-394 np=0 va=0 ms=3 code=8 consts=2 upvals=1 protos=0
    ;   K[0]='UpdateCardSets'
    ;   K[1]='UpdateLimitAlbumContent'
    ;   upvals: self
    0000  GETUPVAL  R0 = self
    0001  SELF      R1 = R0[K0('UpdateCardSets')] (self)
    0002  CALL      R0 = call(R0, 0 args, 1 rets)
    0003  GETUPVAL  R0 = self
    0004  SELF      R1 = R0[K1('UpdateLimitAlbumContent')] (self)
    0005  LOADBOOL  R2 = false
    0006  CALL      R0 = call(R0, 0 args, 2 rets)
    0007  RETURN    return R0..R-1
; ---------- proto23 [TryRemoveLimitAlbumContent] ----------
  ; fn ?  line 397-402 np=1 va=0 ms=3 code=12 consts=6 upvals=1 protos=0
  ;   K[0]='UIUtil'
  ;   K[1]='IsEmptyComponent'
  ;   K[2]='m_limitAlbumContent'
  ;   K[3]='gameObject'
  ;   K[4]='RemoveSelf'
  ;   K[5]=nil
  ;   upvals: _ENV
  ;   locals: self(0-12)
  0000  GETTABUP  R1 = _ENV[K0('UIUtil')]
  0001  GETTABLE  R1 = R1[K1('IsEmptyComponent')]
  0002  GETTABLE  R2 = R0[K2('m_limitAlbumContent')]
  0003  CALL      R1 = call(R1, 1 args, 1 rets)
  0004  TEST      if not R1 then   -> -131065
  0005  JMP       (jump)   -> 11
  0006  GETTABLE  R1 = R0[K2('m_limitAlbumContent')]
  0007  GETTABLE  R1 = R1[K3('gameObject')]
  0008  SELF      R2 = R1[K4('RemoveSelf')] (self)
  0009  CALL      R1 = call(R1, 0 args, 1 rets)
  0010  SETTABLE  R0[K2('m_limitAlbumContent')] = K5(nil)
  0011  RETURN    return R0..R-1
; ---------- proto24 [TryResetScrollToTop] ----------
  ; fn ?  line 404-409 np=1 va=0 ms=6 code=9 consts=6 upvals=1 protos=0
  ;   K[0]='m_setScrollRect'
  ;   K[1]='content'
  ;   K[2]='anchoredPosition'
  ;   K[3]='Vector2'
  ;   K[4]='x'
  ;   K[5]=0
  ;   upvals: _ENV
  ;   locals: self(0-9), scrollRect(1-9), content(2-9)
  0000  GETTABLE  R1 = R0[K0('m_setScrollRect')]
  0001  GETTABLE  R2 = R1[K1('content')]
  0002  GETTABUP  R3 = _ENV[K3('Vector2')]
  0003  GETTABLE  R4 = R2[K2('anchoredPosition')]
  0004  GETTABLE  R4 = R4[K4('x')]
  0005  LOADK     R5 = K5 0
  0006  CALL      R3 = call(R3, 1 args, 2 rets)
  0007  SETTABLE  R2[K2('anchoredPosition')] = R3
  0008  RETURN    return R0..R-1
; ---------- proto25 [GetSetCell] ----------
  ; fn ?  line 411-429 np=2 va=0 ms=9 code=46 consts=9 upvals=1 protos=1
  ;   K[0]='_GetModelBySetId'
  ;   K[1]=nil
  ;   K[2]='IsExistCardSet'
  ;   K[3]='GetCardSets'
  ;   K[4]='Table'
  ;   K[5]='GetIndexWithFilter'
  ;   K[6]='m_limitAlbumContent'
  ;   K[7]='GetSetCell'
  ;   K[8]='m_cells'
  ;   upvals: _ENV
  ;   locals: self(0-46), setId(0-46), model(3-46), bLimit(3-46), arrCardSets(16-46), index(21-46)
  0000  SELF      R3 = R0[K0('_GetModelBySetId')] (self)
  0001  MOVE      R4 = R0
  0002  CALL      R2 = call(R2, 2 args, 2 rets)
  0003  EQ        if R1 eq K1(nil)   -> -129786
  0004  JMP       (jump)   -> 10
  0005  SELF      R5 = R2[K2('IsExistCardSet')] (self)
  0006  MOVE      R6 = R0
  0007  CALL      R4 = call(R4, 1 args, 2 rets)
  0008  TEST      if not R4 then   -> -131061
  0009  JMP       (jump)   -> 11
  0010  RETURN    return R0..R-1
  0011  SELF      R5 = R2[K3('GetCardSets')] (self)
  0012  CALL      R4 = call(R4, 1 args, 1 rets)
  0013  TEST      if not R4 then   -> -131056
  0014  JMP       (jump)   -> 16
  0015  NEWTABLE  R4 = {} (0 items)
  0016  GETTABUP  R5 = _ENV[K4('Table')]
  0017  GETTABLE  R5 = R5[K5('GetIndexWithFilter')]
  0018  MOVE      R6 = R0
  0019  CLOSURE   R7 = closure proto0
  0020  CALL      R5 = call(R5, 1 args, 2 rets)
  0021  TEST      if not R3 then   -> -131049
  0022  JMP       (jump)   -> 37
  0023  GETTABLE  R6 = R0[K6('m_limitAlbumContent')]
  0024  TEST      if not R6 then   -> -131046
  0025  JMP       (jump)   -> 32
  0026  GETTABLE  R6 = R0[K6('m_limitAlbumContent')]
  0027  SELF      R7 = R6[K7('GetSetCell')] (self)
  0028  MOVE      R8 = R0
  0029  CALL      R6 = call(R6, 1 args, 2 rets)
  0030  TEST      if not R6 then   -> -131039
  0031  JMP       (jump)   -> 33
  0032  LOADNIL   R6..R6 = nil
  0033  MOVE      R7 = R0
  0034  MOVE      R8 = R0
  0035  RETURN    return R6..R5
  0036  JMP       (jump)   -> 45
  0037  GETTABLE  R6 = R0[K8('m_cells')]
  0038  TEST      if not R6 then   -> -131032
  0039  JMP       (jump)   -> 42
  0040  GETTABLE  R6 = R0[K8('m_cells')]
  0041  GETTABLE  R6 = R6[R5]
  0042  MOVE      R7 = R0
  0043  MOVE      R8 = R0
  0044  RETURN    return R6..R5
  0045  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 420-422 np=1 va=0 ms=3 code=8 consts=1 upvals=1 protos=0
    ;   K[0]='setId'
    ;   upvals: setId
    ;   locals: value(0-8)
    0000  GETTABLE  R1 = R0[K0('setId')]
    0001  GETUPVAL  R2 = setId
    0002  EQ        if R1 eq R2   -> -130554
    0003  JMP       (jump)   -> 5
    0004  LOADBOOL  R1 = false
    0005  LOADBOOL  R1 = true
    0006  RETURN    return R1..R0
    0007  RETURN    return R0..R-1
; ---------- proto26 [InitRewards] ----------
  ; fn ?  line 431-434 np=1 va=0 ms=6 code=11 consts=7 upvals=1 protos=0
  ;   K[0]='m_model'
  ;   K[1]='GetAlbumConfig'
  ;   K[2]='reward'
  ;   K[3]='m_rewardContent'
  ;   K[4]='Init'
  ;   K[5]='ERewardScene'
  ;   K[6]='Other'
  ;   upvals: _ENV
  ;   locals: self(0-11), rewards(4-11)
  0000  GETTABLE  R1 = R0[K0('m_model')]
  0001  SELF      R2 = R1[K1('GetAlbumConfig')] (self)
  0002  CALL      R1 = call(R1, 1 args, 1 rets)
  0003  GETTABLE  R1 = R1[K2('reward')]
  0004  GETTABLE  R2 = R0[K3('m_rewardContent')]
  0005  SELF      R3 = R2[K4('Init')] (self)
  0006  MOVE      R4 = R0
  0007  GETTABUP  R5 = _ENV[K5('ERewardScene')]
  0008  GETTABLE  R5 = R5[K6('Other')]
  0009  CALL      R2 = call(R2, 0 args, 3 rets)
  0010  RETURN    return R0..R-1
; ---------- proto27 [_UpdateContent] ----------
  ; fn ?  line 436-438 np=1 va=0 ms=3 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='UpdateProgress'
  ;   locals: self(0-3)
  0000  SELF      R2 = R0[K0('UpdateProgress')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  RETURN    return R0..R-1
; ---------- proto28 [UpdateProgress] ----------
  ; fn ?  line 440-472 np=1 va=0 ms=13 code=57 consts=23 upvals=1 protos=3
  ;   K[0]='m_model'
  ;   K[1]='GetWindowCardTotalProgress'
  ;   K[2]='GetAlbumCollectProgress'
  ;   K[3]='m_progressSlider'
  ;   K[4]='value'
  ;   K[5]='m_progressSliderText'
  ;   K[6]='text'
  ;   K[7]='/'
  ;   K[8]='DOTween'
  ;   K[9]='Sequence'
  ;   K[10]=0.6
  ;   K[11]='AppendInterval'
  ;   K[12]=1
  ;   K[13]='Append'
  ;   K[14]='DOValue'
  ;   K[15]='SetEase'
  ;   K[16]='Ease'
  ;   K[17]='InOutSine'
  ;   K[18]='Join'
  ;   K[19]='To'
  ;   K[20]='AppendCallback'
  ;   K[21]='m_progressSeq'
  ;   K[22]='SetWindowCardTotalProgress'
  ;   upvals: _ENV
  ;   locals: self(0-57), lastCard(3-57), curCard(6-57), maxCard(6-57), seq(20-52), duration(21-52)
  0000  GETTABLE  R1 = R0[K0('m_model')]
  0001  SELF      R2 = R1[K1('GetWindowCardTotalProgress')] (self)
  0002  CALL      R1 = call(R1, 1 args, 1 rets)
  0003  GETTABLE  R2 = R0[K0('m_model')]
  0004  SELF      R3 = R2[K2('GetAlbumCollectProgress')] (self)
  0005  CALL      R2 = call(R2, 2 args, 1 rets)
  0006  GETTABLE  R4 = R0[K3('m_progressSlider')]
  0007  DIV       R5 = R3 div R1
  0008  SETTABLE  R4[K4('value')] = R5
  0009  GETTABLE  R4 = R0[K5('m_progressSliderText')]
  0010  MOVE      R5 = R0
  0011  LOADK     R6 = K7 '/'
  0012  MOVE      R7 = R0
  0013  CONCAT    R5 = concat(R5..R5)
  0014  SETTABLE  R4[K6('text')] = R5
  0015  LT        if R0 lt R2   -> -130541
  0016  JMP       (jump)   -> 52
  0017  GETTABUP  R4 = _ENV[K8('DOTween')]
  0018  GETTABLE  R4 = R4[K9('Sequence')]
  0019  CALL      R4 = call(R4, 1 args, 0 rets)
  0020  LOADK     R5 = K10 0.6
  0021  SELF      R7 = R4[K11('AppendInterval')] (self)
  0022  LOADK     R8 = K12 1
  0023  CALL      R6 = call(R6, 0 args, 2 rets)
  0024  SELF      R7 = R4[K13('Append')] (self)
  0025  GETTABLE  R8 = R0[K3('m_progressSlider')]
  0026  SELF      R9 = R8[K14('DOValue')] (self)
  0027  DIV       R10 = R3 div R2
  0028  MOVE      R11 = R0
  0029  CALL      R8 = call(R8, 1 args, 3 rets)
  0030  SELF      R9 = R8[K15('SetEase')] (self)
  0031  GETTABUP  R10 = _ENV[K16('Ease')]
  0032  GETTABLE  R10 = R10[K17('InOutSine')]
  0033  CALL      R8 = call(R8, -1 args, 2 rets)
  0034  CALL      R6 = call(R6, 0 args, -1 rets)
  0035  SELF      R7 = R4[K18('Join')] (self)
  0036  GETTABUP  R8 = _ENV[K8('DOTween')]
  0037  GETTABLE  R8 = R8[K19('To')]
  0038  CLOSURE   R9 = closure proto0
  0039  CLOSURE   R10 = closure proto1
  0040  MOVE      R11 = R0
  0041  MOVE      R12 = R0
  0042  CALL      R8 = call(R8, 1 args, 4 rets)
  0043  SELF      R9 = R8[K15('SetEase')] (self)
  0044  GETTABUP  R10 = _ENV[K16('Ease')]
  0045  GETTABLE  R10 = R10[K17('InOutSine')]
  0046  CALL      R8 = call(R8, -1 args, 2 rets)
  0047  CALL      R6 = call(R6, 0 args, -1 rets)
  0048  SELF      R7 = R4[K20('AppendCallback')] (self)
  0049  CLOSURE   R8 = closure proto2
  0050  CALL      R6 = call(R6, 0 args, 2 rets)
  0051  SETTABLE  R0[K21('m_progressSeq')] = R4
  0052  GETTABLE  R4 = R0[K0('m_model')]
  0053  SELF      R5 = R4[K22('SetWindowCardTotalProgress')] (self)
  0054  MOVE      R6 = R0
  0055  CALL      R4 = call(R4, 0 args, 2 rets)
  0056  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 456-458 np=0 va=0 ms=2 code=3 consts=0 upvals=1 protos=0
    ;   upvals: lastCard
    0000  GETUPVAL  R0 = lastCard
    0001  RETURN    return R0..R-1
    0002  RETURN    return R0..R-1
  ; ---------- proto1 [] ----------
    ; fn ?  line 459-462 np=1 va=0 ms=6 code=11 consts=5 upvals=3 protos=0
    ;   K[0]='math'
    ;   K[1]='ceil'
    ;   K[2]='m_progressSliderText'
    ;   K[3]='text'
    ;   K[4]='/'
    ;   upvals: _ENV, self, maxCard
    ;   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  GETTABUP  R2 = self[K2('m_progressSliderText')]
    0005  MOVE      R3 = R0
    0006  LOADK     R4 = K4 '/'
    0007  GETUPVAL  R5 = _ENV
    0008  CONCAT    R3 = concat(R3..R3)
    0009  SETTABLE  R2[K3('text')] = R3
    0010  RETURN    return R0..R-1
  ; ---------- proto2 [m_progressSeq] ----------
    ; fn ?  line 465-467 np=0 va=0 ms=2 code=2 consts=2 upvals=1 protos=0
    ;   K[0]='m_progressSeq'
    ;   K[1]=nil
    ;   upvals: self
    0000  SETTABUP  self[K0('m_progressSeq')] = K1(nil)
    0001  RETURN    return R0..R-1
; ---------- proto29 [_OnLimitAlbumStateChange] ----------
  ; fn ?  line 474-477 np=1 va=0 ms=4 code=6 consts=2 upvals=0 protos=0
  ;   K[0]='UpdateCardSets'
  ;   K[1]='UpdateLimitAlbumContent'
  ;   locals: self(0-6)
  0000  SELF      R2 = R0[K0('UpdateCardSets')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  SELF      R2 = R0[K1('UpdateLimitAlbumContent')] (self)
  0003  LOADBOOL  R3 = false
  0004  CALL      R1 = call(R1, 0 args, 2 rets)
  0005  RETURN    return R0..R-1
; ---------- proto30 [UpdateCardSets] ----------
  ; fn ?  line 479-495 np=1 va=0 ms=6 code=43 consts=13 upvals=1 protos=0
  ;   K[0]='m_arrAllCardSets'
  ;   K[1]='LimitAlbumModel'
  ;   K[2]='GetActiveModel'
  ;   K[3]='CanShowEnding'
  ;   K[4]='m_limitAlbumModel'
  ;   K[5]='m_limitAlbumSetNum'
  ;   K[6]=0
  ;   K[7]=nil
  ;   K[8]='Table'
  ;   K[9]='ListAppend'
  ;   K[10]='GetCardSets'
  ;   K[11]='m_cardSets'
  ;   K[12]='m_model'
  ;   upvals: _ENV
  ;   locals: self(0-43), limitAlbumModel(7-43)
  0000  NEWTABLE  R1 = {} (0 items)
  0001  SETTABLE  R0[K0('m_arrAllCardSets')] = R1
  0002  GETTABUP  R1 = _ENV[K1('LimitAlbumModel')]
  0003  GETTABLE  R1 = R1[K2('GetActiveModel')]
  0004  LOADBOOL  R2 = true
  0005  LOADBOOL  R3 = true
  0006  CALL      R1 = call(R1, 1 args, 2 rets)
  0007  TEST      if not R1 then   -> -131063
  0008  JMP       (jump)   -> 19
  0009  SELF      R3 = R1[K3('CanShowEnding')] (self)
  0010  CALL      R2 = call(R2, 1 args, 1 rets)
  0011  TEST      if not R2 then   -> -131058
  0012  JMP       (jump)   -> 19
  0013  GETTABUP  R2 = _ENV[K1('LimitAlbumModel')]
  0014  GETTABLE  R2 = R2[K2('GetActiveModel')]
  0015  LOADBOOL  R3 = true
  0016  LOADBOOL  R4 = false
  0017  CALL      R2 = call(R2, 1 args, 2 rets)
  0018  MOVE      R1 = R0
  0019  SETTABLE  R0[K4('m_limitAlbumModel')] = R1
  0020  SETTABLE  R0[K5('m_limitAlbumSetNum')] = K6(0)
  0021  EQ        if R1 eq K7(nil)   -> -130274
  0022  JMP       (jump)   -> 33
  0023  GETTABUP  R2 = _ENV[K8('Table')]
  0024  GETTABLE  R2 = R2[K9('ListAppend')]
  0025  GETTABLE  R3 = R0[K0('m_arrAllCardSets')]
  0026  SELF      R5 = R1[K10('GetCardSets')] (self)
  0027  CALL      R4 = call(R4, -1 args, 1 rets)
  0028  CALL      R2 = call(R2, 0 args, -1 rets)
  0029  SELF      R3 = R1[K10('GetCardSets')] (self)
  0030  CALL      R2 = call(R2, 1 args, 1 rets)
  0031  LEN       R2 = len R0
  0032  SETTABLE  R0[K5('m_limitAlbumSetNum')] = R2
  0033  GETTABLE  R2 = R0[K12('m_model')]
  0034  SELF      R3 = R2[K10('GetCardSets')] (self)
  0035  CALL      R2 = call(R2, 1 args, 1 rets)
  0036  SETTABLE  R0[K11('m_cardSets')] = R2
  0037  GETTABUP  R2 = _ENV[K8('Table')]
  0038  GETTABLE  R2 = R2[K9('ListAppend')]
  0039  GETTABLE  R3 = R0[K0('m_arrAllCardSets')]
  0040  GETTABLE  R4 = R0[K11('m_cardSets')]
  0041  CALL      R2 = call(R2, 0 args, 2 rets)
  0042  RETURN    return R0..R-1
; ---------- proto31 [OnRedPointRefresh] ----------
  ; fn ?  line 497-501 np=1 va=0 ms=8 code=9 consts=3 upvals=1 protos=0
  ;   K[0]='pairs'
  ;   K[1]='m_cells'
  ;   K[2]='UpdateRedPoint'
  ;   upvals: _ENV
  ;   locals: self(0-9), (for generator)(3-8), (for state)(3-8), (for control)(3-8), _(4-6), cell(4-6)
  0000  GETTABUP  R1 = _ENV[K0('pairs')]
  0001  GETTABLE  R2 = R0[K1('m_cells')]
  0002  CALL      R1 = call(R1, 3 args, 1 rets)
  0003  JMP       (jump)   -> 6
  0004  SELF      R7 = R5[K2('UpdateRedPoint')] (self)
  0005  CALL      R6 = call(R6, 0 args, 1 rets)
  0006  TFORCALL  tforcall R1
  0007  TFORLOOP  tforloop R3(sBx=-4)   -> 4
  0008  RETURN    return R0..R-1
; ---------- proto32 [UpdatePerSecond] ----------
  ; fn ?  line 503-518 np=1 va=0 ms=7 code=58 consts=23 upvals=1 protos=0
  ;   K[0]='m_model'
  ;   K[1]=nil
  ;   K[2]='GetState'
  ;   K[3]='ActivityState'
  ;   K[4]='Started'
  ;   K[5]='m_countdownText'
  ;   K[6]='text'
  ;   K[7]='TimeUtil'
  ;   K[8]='ParseTimeDescription'
  ;   K[9]='GetNextStateTime'
  ;   K[10]='GM'
  ;   K[11]='GameModel'
  ;   K[12]='GetServerTime'
  ;   K[13]='m_jokerEndTime'
  ;   K[14]='math'
  ;   K[15]='max'
  ;   K[16]=0
  ;   K[17]='m_jokerCountdownText'
  ;   K[18]='GameTextModel'
  ;   K[19]='GetText'
  ;   K[20]='joker_card_time_expired'
  ;   K[21]='TryPopRemindJokerWindow'
  ;   K[22]=2
  ;   upvals: _ENV
  ;   locals: self(0-58), delta(36-57), str(55-57)
  0000  GETTABLE  R1 = R0[K0('m_model')]
  0001  EQ        if R1 eq K1(nil)   -> -130300
  0002  JMP       (jump)   -> 57
  0003  GETTABLE  R1 = R0[K0('m_model')]
  0004  SELF      R2 = R1[K2('GetState')] (self)
  0005  CALL      R1 = call(R1, 1 args, 1 rets)
  0006  GETTABUP  R2 = _ENV[K3('ActivityState')]
  0007  GETTABLE  R2 = R2[K4('Started')]
  0008  EQ        if R0 eq R2   -> -130548
  0009  JMP       (jump)   -> 57
  0010  GETTABLE  R1 = R0[K5('m_countdownText')]
  0011  GETTABUP  R2 = _ENV[K7('TimeUtil')]
  0012  GETTABLE  R2 = R2[K8('ParseTimeDescription')]
  0013  GETTABLE  R3 = R0[K0('m_model')]
  0014  SELF      R4 = R3[K9('GetNextStateTime')] (self)
  0015  CALL      R3 = call(R3, 1 args, 1 rets)
  0016  GETTABUP  R4 = _ENV[K10('GM')]
  0017  GETTABLE  R4 = R4[K11('GameModel')]
  0018  SELF      R5 = R4[K12('GetServerTime')] (self)
  0019  CALL      R4 = call(R4, 1 args, 1 rets)
  0020  SUB       R3 = R4 sub R3
  0021  CALL      R2 = call(R2, 1 args, 1 rets)
  0022  SETTABLE  R1[K6('text')] = R2
  0023  GETTABLE  R1 = R0[K13('m_jokerEndTime')]
  0024  EQ        if R1 eq K1(nil)   -> -130277
  0025  JMP       (jump)   -> 57
  0026  GETTABUP  R1 = _ENV[K14('math')]
  0027  GETTABLE  R1 = R1[K15('max')]
  0028  LOADK     R2 = K16 0
  0029  GETTABLE  R3 = R0[K13('m_jokerEndTime')]
  0030  GETTABUP  R4 = _ENV[K10('GM')]
  0031  GETTABLE  R4 = R4[K11('GameModel')]
  0032  SELF      R5 = R4[K12('GetServerTime')] (self)
  0033  CALL      R4 = call(R4, 1 args, 1 rets)
  0034  SUB       R3 = R4 sub R3
  0035  CALL      R1 = call(R1, 1 args, 2 rets)
  0036  EQ        if R0 eq K16(0)   -> -130250
  0037  JMP       (jump)   -> 48
  0038  GETTABLE  R2 = R0[K17('m_jokerCountdownText')]
  0039  GETTABUP  R3 = _ENV[K10('GM')]
  0040  GETTABLE  R3 = R3[K18('GameTextModel')]
  0041  SELF      R4 = R3[K19('GetText')] (self)
  0042  LOADK     R5 = K20 'joker_card_time_expired'
  0043  CALL      R3 = call(R3, 1 args, 2 rets)
  0044  SETTABLE  R2[K6('text')] = R3
  0045  SELF      R3 = R0[K21('TryPopRemindJokerWindow')] (self)
  0046  CALL      R2 = call(R2, 0 args, 1 rets)
  0047  JMP       (jump)   -> 57
  0048  GETTABUP  R2 = _ENV[K7('TimeUtil')]
  0049  GETTABLE  R2 = R2[K8('ParseTimeDescription')]
  0050  MOVE      R3 = R0
  0051  LOADK     R4 = K22 2
  0052  LOADBOOL  R5 = false
  0053  LOADBOOL  R6 = false
  0054  CALL      R2 = call(R2, 1 args, 4 rets)
  0055  GETTABLE  R3 = R0[K17('m_jokerCountdownText')]
  0056  SETTABLE  R3[K6('text')] = R2
  0057  RETURN    return R0..R-1
; ---------- proto33 [TryPopRemindJokerWindow] ----------
  ; fn ?  line 520-536 np=1 va=0 ms=5 code=52 consts=16 upvals=1 protos=0
  ;   K[0]='m_bExpired'
  ;   K[1]='GM'
  ;   K[2]='UIManager'
  ;   K[3]='GetOpenedTopView'
  ;   K[4]='TutorialModel'
  ;   K[5]='HasAnyStrongTutorialOngoing'
  ;   K[6]='IsEventLock'
  ;   K[7]='IsViewExisting'
  ;   K[8]='UIPrefabConfigName'
  ;   K[9]='AlbumJokerExchangeWindow'
  ;   K[10]='AlbumRemindUseJokerWindow'
  ;   K[11]='m_model'
  ;   K[12]='HasExpiredJokerCard'
  ;   K[13]='OpenView'
  ;   K[14]='m_activityType'
  ;   K[15]=true
  ;   upvals: _ENV
  ;   locals: self(0-52)
  0000  GETTABLE  R1 = R0[K0('m_bExpired')]
  0001  TEST      if not R1 then   -> -131069
  0002  JMP       (jump)   -> 4
  0003  RETURN    return R0..R-1
  0004  GETTABUP  R1 = _ENV[K1('GM')]
  0005  GETTABLE  R1 = R1[K2('UIManager')]
  0006  SELF      R2 = R1[K3('GetOpenedTopView')] (self)
  0007  CALL      R1 = call(R1, 1 args, 1 rets)
  0008  EQ        if R0 eq R0   -> -130550
  0009  JMP       (jump)   -> 51
  0010  GETTABUP  R1 = _ENV[K1('GM')]
  0011  GETTABLE  R1 = R1[K4('TutorialModel')]
  0012  SELF      R2 = R1[K5('HasAnyStrongTutorialOngoing')] (self)
  0013  CALL      R1 = call(R1, 1 args, 1 rets)
  0014  TEST      if not R1 then   -> -131055
  0015  JMP       (jump)   -> 51
  0016  GETTABUP  R1 = _ENV[K1('GM')]
  0017  GETTABLE  R1 = R1[K2('UIManager')]
  0018  SELF      R2 = R1[K6('IsEventLock')] (self)
  0019  CALL      R1 = call(R1, 1 args, 1 rets)
  0020  TEST      if not R1 then   -> -131049
  0021  JMP       (jump)   -> 51
  0022  GETTABUP  R1 = _ENV[K1('GM')]
  0023  GETTABLE  R1 = R1[K2('UIManager')]
  0024  SELF      R2 = R1[K7('IsViewExisting')] (self)
  0025  GETTABUP  R3 = _ENV[K8('UIPrefabConfigName')]
  0026  GETTABLE  R3 = R3[K9('AlbumJokerExchangeWindow')]
  0027  CALL      R1 = call(R1, 1 args, 2 rets)
  0028  TEST      if not R1 then   -> -131041
  0029  JMP       (jump)   -> 51
  0030  GETTABUP  R1 = _ENV[K1('GM')]
  0031  GETTABLE  R1 = R1[K2('UIManager')]
  0032  SELF      R2 = R1[K7('IsViewExisting')] (self)
  0033  GETTABUP  R3 = _ENV[K8('UIPrefabConfigName')]
  0034  GETTABLE  R3 = R3[K10('AlbumRemindUseJokerWindow')]
  0035  CALL      R1 = call(R1, 1 args, 2 rets)
  0036  TEST      if not R1 then   -> -131033
  0037  JMP       (jump)   -> 51
  0038  GETTABLE  R1 = R0[K11('m_model')]
  0039  SELF      R2 = R1[K12('HasExpiredJokerCard')] (self)
  0040  CALL      R1 = call(R1, 1 args, 1 rets)
  0041  TEST      if not R1 then   -> -131029
  0042  JMP       (jump)   -> 51
  0043  GETTABUP  R1 = _ENV[K1('GM')]
  0044  GETTABLE  R1 = R1[K2('UIManager')]
  0045  SELF      R2 = R1[K13('OpenView')] (self)
  0046  GETTABUP  R3 = _ENV[K8('UIPrefabConfigName')]
  0047  GETTABLE  R3 = R3[K10('AlbumRemindUseJokerWindow')]
  0048  GETTABLE  R4 = R0[K14('m_activityType')]
  0049  CALL      R1 = call(R1, 0 args, 3 rets)
  0050  SETTABLE  R0[K0('m_bExpired')] = K15(true)
  0051  RETURN    return R0..R-1
; ---------- proto34 [PlayIconShowAct] ----------
  ; fn ?  line 539-570 np=1 va=0 ms=10 code=41 consts=18 upvals=1 protos=2
  ;   K[0]='pairs'
  ;   K[1]='m_cells'
  ;   K[2]='GetCanvAlpha'
  ;   K[3]='alpha'
  ;   K[4]=0
  ;   K[5]='GetMiddleRect'
  ;   K[6]='anchoredPosition'
  ;   K[7]='Vector2'
  ;   K[8]=-25
  ;   K[9]='DOTween'
  ;   K[10]='Sequence'
  ;   K[11]='AppendInterval'
  ;   K[12]=0.5
  ;   K[13]=1
  ;   K[14]=3
  ;   K[15]='AppendCallback'
  ;   K[16]=0.1
  ;   K[17]='m_enterSeq'
  ;   upvals: _ENV
  ;   locals: self(0-41), (for generator)(3-16), (for state)(3-16), (for control)(3-16), _(4-14), cell(4-14), seq(19-41), (for index)(26-36), (for limit)(26-36), (for step)(26-36), index(27-35), curInedex(28-35)
  0000  GETTABUP  R1 = _ENV[K0('pairs')]
  0001  GETTABLE  R2 = R0[K1('m_cells')]
  0002  CALL      R1 = call(R1, 3 args, 1 rets)
  0003  JMP       (jump)   -> 14
  0004  SELF      R7 = R5[K2('GetCanvAlpha')] (self)
  0005  CALL      R6 = call(R6, 1 args, 1 rets)
  0006  SETTABLE  R6[K3('alpha')] = K4(0)
  0007  SELF      R7 = R5[K5('GetMiddleRect')] (self)
  0008  CALL      R6 = call(R6, 1 args, 1 rets)
  0009  GETTABUP  R7 = _ENV[K7('Vector2')]
  0010  LOADK     R8 = K4 0
  0011  LOADK     R9 = K8 -25
  0012  CALL      R7 = call(R7, 1 args, 2 rets)
  0013  SETTABLE  R6[K6('anchoredPosition')] = R7
  0014  TFORCALL  tforcall R1
  0015  TFORLOOP  tforloop R3(sBx=-12)   -> 4
  0016  GETTABUP  R1 = _ENV[K9('DOTween')]
  0017  GETTABLE  R1 = R1[K10('Sequence')]
  0018  CALL      R1 = call(R1, 1 args, 0 rets)
  0019  SELF      R3 = R1[K11('AppendInterval')] (self)
  0020  LOADK     R4 = K12 0.5
  0021  CALL      R2 = call(R2, 0 args, 2 rets)
  0022  LOADK     R2 = K13 1
  0023  GETTABLE  R3 = R0[K1('m_cells')]
  0024  LEN       R3 = len R0
  0025  LOADK     R4 = K14 3
  0026  FORPREP   forprep R2(sBx=8)   -> 35
  0027  MOVE      R6 = R0
  0028  SELF      R8 = R1[K15('AppendCallback')] (self)
  0029  CLOSURE   R9 = closure proto0
  0030  CALL      R7 = call(R7, 0 args, 2 rets)
  0031  SELF      R8 = R1[K11('AppendInterval')] (self)
  0032  LOADK     R9 = K16 0.1
  0033  CALL      R7 = call(R7, 0 args, 2 rets)
  0034  JMP       (jump)   -> 35
  0035  FORLOOP   forloop R2(sBx=-9)   -> 27
  0036  SELF      R3 = R1[K15('AppendCallback')] (self)
  0037  CLOSURE   R4 = closure proto1
  0038  CALL      R2 = call(R2, 0 args, 2 rets)
  0039  SETTABLE  R0[K17('m_enterSeq')] = R1
  0040  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 551-560 np=0 va=0 ms=11 code=36 consts=13 upvals=3 protos=0
    ;   K[0]=1
    ;   K[1]=3
    ;   K[2]='m_cells'
    ;   K[3]='GetCanvAlpha'
    ;   K[4]='DOFade'
    ;   K[5]=0.2
    ;   K[6]='GetMiddleRect'
    ;   K[7]='DOAnchorPos'
    ;   K[8]='Vector2'
    ;   K[9]=0
    ;   K[10]='SetEase'
    ;   K[11]='Ease'
    ;   K[12]='OutQuad'
    ;   upvals: curInedex, self, _ENV
    ;   locals: (for index)(3-35), (for limit)(3-35), (for step)(3-35), numindex(4-34), cell(12-34), act(18-34)
    0000  LOADK     R0 = K0 1
    0001  LOADK     R1 = K1 3
    0002  LOADK     R2 = K0 1
    0003  FORPREP   forprep R0(sBx=30)   -> 34
    0004  GETUPVAL  R4 = curInedex
    0005  GETTABUP  R5 = self[K2('m_cells')]
    0006  LEN       R5 = len R0
    0007  LE        if R0 le R5   -> -129010
    0008  JMP       (jump)   -> 34
    0009  GETTABUP  R4 = self[K2('m_cells')]
    0010  GETUPVAL  R5 = curInedex
    0011  GETTABLE  R4 = R4[R5]
    0012  SELF      R6 = R4[K3('GetCanvAlpha')] (self)
    0013  CALL      R5 = call(R5, 1 args, 1 rets)
    0014  SELF      R6 = R5[K4('DOFade')] (self)
    0015  LOADK     R7 = K0 1
    0016  LOADK     R8 = K5 0.2
    0017  CALL      R5 = call(R5, 1 args, 3 rets)
    0018  SELF      R7 = R4[K6('GetMiddleRect')] (self)
    0019  CALL      R6 = call(R6, 1 args, 1 rets)
    0020  SELF      R7 = R6[K7('DOAnchorPos')] (self)
    0021  GETTABUP  R8 = _ENV[K8('Vector2')]
    0022  LOADK     R9 = K9 0
    0023  LOADK     R10 = K9 0
    0024  CALL      R8 = call(R8, 1 args, 2 rets)
    0025  LOADK     R9 = K5 0.2
    0026  CALL      R6 = call(R6, 1 args, 3 rets)
    0027  SELF      R7 = R6[K10('SetEase')] (self)
    0028  GETTABUP  R8 = _ENV[K11('Ease')]
    0029  GETTABLE  R8 = R8[K12('OutQuad')]
    0030  CALL      R6 = call(R6, 0 args, 2 rets)
    0031  GETUPVAL  R6 = curInedex
    0032  ADD       R6 = K0(1) add R6
    0033  SETUPVAL  UP6 = R0
    0034  FORLOOP   forloop R0(sBx=-31)   -> 4
    0035  RETURN    return R0..R-1
  ; ---------- proto1 [m_enterSeq] ----------
    ; fn ?  line 565-567 np=0 va=0 ms=2 code=2 consts=2 upvals=1 protos=0
    ;   K[0]='m_enterSeq'
    ;   K[1]=nil
    ;   upvals: self
    0000  SETTABUP  self[K0('m_enterSeq')] = K1(nil)
    0001  RETURN    return R0..R-1
; ---------- proto35 [GetHelpBtnTransf] ----------
  ; fn ?  line 572-574 np=1 va=0 ms=2 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='m_helpBtnRect'
  ;   locals: self(0-3)
  0000  GETTABLE  R1 = R0[K0('m_helpBtnRect')]
  0001  RETURN    return R1..R0
  0002  RETURN    return R0..R-1
; ---------- proto36 [GetBadgeRewardTrans] ----------
  ; fn ?  line 576-585 np=1 va=0 ms=11 code=32 consts=12 upvals=1 protos=0
  ;   K[0]=1
  ;   K[1]='m_rewardContent'
  ;   K[2]='GetRewardCount'
  ;   K[3]='GetRewardItem'
  ;   K[4]='GM'
  ;   K[5]='UserProfileModel'
  ;   K[6]='IsValidRewardType'
  ;   K[7]='EProfilePropertyType'
  ;   K[8]='Badge'
  ;   K[9]='GetReward'
  ;   K[10]='PROPERTY_TYPE'
  ;   K[11]='transform'
  ;   upvals: _ENV
  ;   locals: self(0-32), rewardItem(1-32), (for index)(6-29), (for limit)(6-29), (for step)(6-29), i(7-28)
  0000  LOADNIL   R1..R1 = nil
  0001  LOADK     R2 = K0 1
  0002  GETTABLE  R3 = R0[K1('m_rewardContent')]
  0003  SELF      R4 = R3[K2('GetRewardCount')] (self)
  0004  CALL      R3 = call(R3, 1 args, 1 rets)
  0005  LOADK     R4 = K0 1
  0006  FORPREP   forprep R2(sBx=21)   -> 28
  0007  GETTABLE  R6 = R0[K1('m_rewardContent')]
  0008  SELF      R7 = R6[K3('GetRewardItem')] (self)
  0009  MOVE      R8 = R0
  0010  CALL      R6 = call(R6, 1 args, 2 rets)
  0011  MOVE      R1 = R0
  0012  TEST      if not R1 then   -> -131058
  0013  JMP       (jump)   -> 28
  0014  GETTABUP  R6 = _ENV[K4('GM')]
  0015  GETTABLE  R6 = R6[K5('UserProfileModel')]
  0016  SELF      R7 = R6[K6('IsValidRewardType')] (self)
  0017  GETTABUP  R8 = _ENV[K7('EProfilePropertyType')]
  0018  GETTABLE  R8 = R8[K8('Badge')]
  0019  SELF      R10 = R1[K9('GetReward')] (self)
  0020  CALL      R9 = call(R9, 1 args, 1 rets)
  0021  GETTABUP  R10 = _ENV[K10('PROPERTY_TYPE')]
  0022  GETTABLE  R9 = R9[R10]
  0023  CALL      R6 = call(R6, 1 args, 3 rets)
  0024  TEST      if not R6 then   -> -131046
  0025  JMP       (jump)   -> 28
  0026  GETTABLE  R6 = R1[K11('transform')]
  0027  RETURN    return R6..R5
  0028  FORLOOP   forloop R2(sBx=-22)   -> 7
  0029  LOADNIL   R2..R2 = nil
  0030  RETURN    return R2..R1
  0031  RETURN    return R0..R-1
; ---------- proto37 [OnBtnRecycleClicked] ----------
  ; fn ?  line 588-591 np=1 va=0 ms=6 code=17 consts=11 upvals=1 protos=0
  ;   K[0]='GM'
  ;   K[1]='AudioModel'
  ;   K[2]='PlayEffect'
  ;   K[3]='AudioFileConfigName'
  ;   K[4]='SfxButtonClick'
  ;   K[5]='UIManager'
  ;   K[6]='OpenView'
  ;   K[7]='UIPrefabConfigName'
  ;   K[8]='AlbumRecyleWindow'
  ;   K[9]='m_model'
  ;   K[10]='GetType'
  ;   upvals: _ENV
  ;   locals: self(0-17)
  0000  GETTABUP  R1 = _ENV[K0('GM')]
  0001  GETTABLE  R1 = R1[K1('AudioModel')]
  0002  SELF      R2 = R1[K2('PlayEffect')] (self)
  0003  GETTABUP  R3 = _ENV[K3('AudioFileConfigName')]
  0004  GETTABLE  R3 = R3[K4('SfxButtonClick')]
  0005  CALL      R1 = call(R1, 0 args, 2 rets)
  0006  GETTABUP  R1 = _ENV[K0('GM')]
  0007  GETTABLE  R1 = R1[K5('UIManager')]
  0008  SELF      R2 = R1[K6('OpenView')] (self)
  0009  GETTABUP  R3 = _ENV[K7('UIPrefabConfigName')]
  0010  GETTABLE  R3 = R3[K8('AlbumRecyleWindow')]
  0011  GETTABLE  R4 = R0[K9('m_model')]
  0012  SELF      R5 = R4[K10('GetType')] (self)
  0013  CALL      R4 = call(R4, 1 args, 1 rets)
  0014  LOADBOOL  R5 = true
  0015  CALL      R1 = call(R1, 0 args, 4 rets)
  0016  RETURN    return R0..R-1
; ---------- proto38 [UpdateCycleRefresh] ----------
  ; fn ?  line 593-610 np=1 va=0 ms=9 code=46 consts=19 upvals=1 protos=0
  ;   K[0]='m_recycleBtnGo'
  ;   K[1]=nil
  ;   K[2]='m_model'
  ;   K[3]='GetCycleCardConfig'
  ;   K[4]='UIUtil'
  ;   K[5]='SetActive'
  ;   K[6]='m_recycleTipGo'
  ;   K[7]='CanShowRecyleRedPoint'
  ;   K[8]='SpriteUtil'
  ;   K[9]='SetImage'
  ;   K[10]='m_starShopImg'
  ;   K[11]='AlbumArrStarBoxSpriteName'
  ;   K[12]='star'
  ;   K[13]='GetSurplusCardStarIncludeLimit'
  ;   K[14]='m_starShopSlider'
  ;   K[15]='value'
  ;   K[16]='math'
  ;   K[17]='min'
  ;   K[18]=1
  ;   upvals: _ENV
  ;   locals: self(0-46), cycleConfigs(7-46), maxConfig(26-45), total(35-45), cur(38-45)
  0000  GETTABLE  R1 = R0[K0('m_recycleBtnGo')]
  0001  EQ        if R0 eq K1(nil)   -> -130300
  0002  JMP       (jump)   -> 4
  0003  RETURN    return R0..R-1
  0004  GETTABLE  R1 = R0[K2('m_model')]
  0005  SELF      R2 = R1[K3('GetCycleCardConfig')] (self)
  0006  CALL      R1 = call(R1, 1 args, 1 rets)
  0007  GETTABUP  R2 = _ENV[K4('UIUtil')]
  0008  GETTABLE  R2 = R2[K5('SetActive')]
  0009  GETTABLE  R3 = R0[K0('m_recycleBtnGo')]
  0010  EQ        if R0 eq K1(nil)   -> -130291
  0011  JMP       (jump)   -> 13
  0012  LOADBOOL  R4 = false
  0013  LOADBOOL  R4 = true
  0014  CALL      R2 = call(R2, 0 args, 2 rets)
  0015  GETTABUP  R2 = _ENV[K4('UIUtil')]
  0016  GETTABLE  R2 = R2[K5('SetActive')]
  0017  GETTABLE  R3 = R0[K6('m_recycleTipGo')]
  0018  GETTABLE  R4 = R0[K2('m_model')]
  0019  SELF      R5 = R4[K7('CanShowRecyleRedPoint')] (self)
  0020  CALL      R4 = call(R4, -1 args, 1 rets)
  0021  CALL      R2 = call(R2, 0 args, -1 rets)
  0022  EQ        if R1 eq K1(nil)   -> -130279
  0023  JMP       (jump)   -> 45
  0024  LEN       R2 = len R0
  0025  GETTABLE  R2 = R1[R2]
  0026  GETTABUP  R3 = _ENV[K8('SpriteUtil')]
  0027  GETTABLE  R3 = R3[K9('SetImage')]
  0028  GETTABLE  R4 = R0[K10('m_starShopImg')]
  0029  GETTABUP  R5 = _ENV[K11('AlbumArrStarBoxSpriteName')]
  0030  LEN       R6 = len R0
  0031  GETTABLE  R5 = R5[R6]
  0032  LOADBOOL  R6 = true
  0033  CALL      R3 = call(R3, 0 args, 3 rets)
  0034  GETTABLE  R3 = R2[K12('star')]
  0035  GETTABLE  R4 = R0[K2('m_model')]
  0036  SELF      R5 = R4[K13('GetSurplusCardStarIncludeLimit')] (self)
  0037  CALL      R4 = call(R4, 1 args, 1 rets)
  0038  GETTABLE  R5 = R0[K14('m_starShopSlider')]
  0039  GETTABUP  R6 = _ENV[K16('math')]
  0040  GETTABLE  R6 = R6[K17('min')]
  0041  LOADK     R7 = K18 1
  0042  DIV       R8 = R3 div R4
  0043  CALL      R6 = call(R6, 1 args, 2 rets)
  0044  SETTABLE  R5[K15('value')] = R6
  0045  RETURN    return R0..R-1
; ---------- proto39 [OnJokerBtnClicked] ----------
  ; fn ?  line 613-616 np=1 va=0 ms=6 code=17 consts=11 upvals=1 protos=0
  ;   K[0]='GM'
  ;   K[1]='AudioModel'
  ;   K[2]='PlayEffect'
  ;   K[3]='AudioFileConfigName'
  ;   K[4]='SfxButtonClick'
  ;   K[5]='UIManager'
  ;   K[6]='OpenView'
  ;   K[7]='UIPrefabConfigName'
  ;   K[8]='AlbumJokerExchangeWindow'
  ;   K[9]='m_model'
  ;   K[10]='GetType'
  ;   upvals: _ENV
  ;   locals: self(0-17)
  0000  GETTABUP  R1 = _ENV[K0('GM')]
  0001  GETTABLE  R1 = R1[K1('AudioModel')]
  0002  SELF      R2 = R1[K2('PlayEffect')] (self)
  0003  GETTABUP  R3 = _ENV[K3('AudioFileConfigName')]
  0004  GETTABLE  R3 = R3[K4('SfxButtonClick')]
  0005  CALL      R1 = call(R1, 0 args, 2 rets)
  0006  GETTABUP  R1 = _ENV[K0('GM')]
  0007  GETTABLE  R1 = R1[K5('UIManager')]
  0008  SELF      R2 = R1[K6('OpenView')] (self)
  0009  GETTABUP  R3 = _ENV[K7('UIPrefabConfigName')]
  0010  GETTABLE  R3 = R3[K8('AlbumJokerExchangeWindow')]
  0011  GETTABLE  R4 = R0[K9('m_model')]
  0012  SELF      R5 = R4[K10('GetType')] (self)
  0013  CALL      R4 = call(R4, 1 args, 1 rets)
  0014  LOADBOOL  R5 = true
  0015  CALL      R1 = call(R1, 0 args, 4 rets)
  0016  RETURN    return R0..R-1
; ---------- proto40 [GetRewardAreaRect] ----------
  ; fn ?  line 618-620 np=1 va=0 ms=2 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='m_rewardAreaRect'
  ;   locals: self(0-3)
  0000  GETTABLE  R1 = R0[K0('m_rewardAreaRect')]
  0001  RETURN    return R1..R0
  0002  RETURN    return R0..R-1
; ---------- proto41 [UpdateJokerContent] ----------
  ; fn ?  line 622-636 np=1 va=0 ms=7 code=32 consts=15 upvals=1 protos=0
  ;   K[0]='m_model'
  ;   K[1]='GetJokerCount'
  ;   K[2]='UIUtil'
  ;   K[3]='SetActive'
  ;   K[4]='m_jokerBtnGo'
  ;   K[5]=1
  ;   K[6]=0
  ;   K[7]='m_jokerNumText'
  ;   K[8]='text'
  ;   K[9]='GetMinJokerCardTime'
  ;   K[10]='GetNextStateTime'
  ;   K[11]='m_jokerEndTime'
  ;   K[12]='Sec2Day'
  ;   K[13]='math'
  ;   K[14]='min'
  ;   upvals: _ENV
  ;   locals: self(0-32), jokerCount(3-32), jokerGetTime(19-32), nextStateTime(22-32)
  0000  GETTABLE  R1 = R0[K0('m_model')]
  0001  SELF      R2 = R1[K1('GetJokerCount')] (self)
  0002  CALL      R1 = call(R1, 1 args, 1 rets)
  0003  GETTABUP  R2 = _ENV[K2('UIUtil')]
  0004  GETTABLE  R2 = R2[K3('SetActive')]
  0005  GETTABLE  R3 = R0[K4('m_jokerBtnGo')]
  0006  LE        if R1 le R1   -> 2569
  0007  JMP       (jump)   -> 9
  0008  LOADBOOL  R4 = false
  0009  LOADBOOL  R4 = true
  0010  CALL      R2 = call(R2, 0 args, 2 rets)
  0011  LE        if R0 le K6(0)   -> -130285
  0012  JMP       (jump)   -> 14
  0013  RETURN    return R0..R-1
  0014  GETTABLE  R2 = R0[K7('m_jokerNumText')]
  0015  SETTABLE  R2[K8('text')] = R1
  0016  GETTABLE  R2 = R0[K0('m_model')]
  0017  SELF      R3 = R2[K9('GetMinJokerCardTime')] (self)
  0018  CALL      R2 = call(R2, 1 args, 1 rets)
  0019  GETTABLE  R3 = R0[K0('m_model')]
  0020  SELF      R4 = R3[K10('GetNextStateTime')] (self)
  0021  CALL      R3 = call(R3, 1 args, 1 rets)
  0022  GETTABUP  R4 = _ENV[K12('Sec2Day')]
  0023  ADD       R4 = R4 add R2
  0024  SETTABLE  R0[K11('m_jokerEndTime')] = R4
  0025  GETTABUP  R4 = _ENV[K13('math')]
  0026  GETTABLE  R4 = R4[K14('min')]
  0027  GETTABLE  R5 = R0[K11('m_jokerEndTime')]
  0028  MOVE      R6 = R0
  0029  CALL      R4 = call(R4, 1 args, 2 rets)
  0030  SETTABLE  R0[K11('m_jokerEndTime')] = R4
  0031  RETURN    return R0..R-1
; ---------- proto42 [FlyCard2SetCell] ----------
  ; fn ?  line 638-670 np=4 va=0 ms=18 code=73 consts=32 upvals=1 protos=2
  ;   K[0]='GetSetCell'
  ;   K[1]=nil
  ;   K[2]='m_limitAlbumContent'
  ;   K[3]='TryScroll2ShowSetCell'
  ;   K[4]='m_setScrollRect'
  ;   K[5]='verticalNormalizedPosition'
  ;   K[6]='_GetProgressMiddleVerticalNormalizedPosition'
  ;   K[7]='GameObject'
  ;   K[8]='Instantiate'
  ;   K[9]='transform'
  ;   K[10]='DOTween'
  ;   K[11]='Sequence'
  ;   K[12]='GM'
  ;   K[13]='UIManager'
  ;   K[14]='SetEventLock'
  ;   K[15]='AppendInterval'
  ;   K[16]=0.2
  ;   K[17]='Append'
  ;   K[18]='DOMove'
  ;   K[19]='position'
  ;   K[20]=0.5
  ;   K[21]='SetEase'
  ;   K[22]='Ease'
  ;   K[23]='InOutSine'
  ;   K[24]='Join'
  ;   K[25]='DOScale'
  ;   K[26]='Vector3'
  ;   K[27]=0
  ;   K[28]=1
  ;   K[29]='AppendCallback'
  ;   K[30]=0.4
  ;   K[31]='m_flySeq'
  ;   upvals: _ENV
  ;   locals: self(0-73), cardGo(0-73), cardId(0-73), setId(0-73), cell(3-73), index(3-73), bLimit(3-73), go(28-73), seq(31-73), rect(32-73)
  0000  SELF      R5 = R0[K0('GetSetCell')] (self)
  0001  MOVE      R6 = R0
  0002  CALL      R4 = call(R4, 3 args, 2 rets)
  0003  EQ        if R1 eq K1(nil)   -> -128762
  0004  JMP       (jump)   -> 10
  0005  TEST      if not R6 then   -> -131065
  0006  JMP       (jump)   -> 11
  0007  GETTABLE  R7 = R0[K2('m_limitAlbumContent')]
  0008  EQ        if R0 eq K1(nil)   -> -127221
  0009  JMP       (jump)   -> 11
  0010  RETURN    return R0..R-1
  0011  TEST      if not R6 then   -> -131059
  0012  JMP       (jump)   -> 18
  0013  GETTABLE  R7 = R0[K2('m_limitAlbumContent')]
  0014  SELF      R8 = R7[K3('TryScroll2ShowSetCell')] (self)
  0015  MOVE      R9 = R0
  0016  CALL      R7 = call(R7, 0 args, 2 rets)
  0017  JMP       (jump)   -> 23
  0018  GETTABLE  R7 = R0[K4('m_setScrollRect')]
  0019  SELF      R9 = R0[K6('_GetProgressMiddleVerticalNormalizedPosition')] (self)
  0020  MOVE      R10 = R0
  0021  CALL      R8 = call(R8, 1 args, 2 rets)
  0022  SETTABLE  R7[K5('verticalNormalizedPosition')] = R8
  0023  GETTABUP  R7 = _ENV[K7('GameObject')]
  0024  GETTABLE  R7 = R7[K8('Instantiate')]
  0025  MOVE      R8 = R0
  0026  GETTABLE  R9 = R0[K9('transform')]
  0027  CALL      R7 = call(R7, 1 args, 2 rets)
  0028  GETTABUP  R8 = _ENV[K10('DOTween')]
  0029  GETTABLE  R8 = R8[K11('Sequence')]
  0030  CALL      R8 = call(R8, 1 args, 0 rets)
  0031  GETTABLE  R9 = R7[K9('transform')]
  0032  GETTABUP  R10 = _ENV[K12('GM')]
  0033  GETTABLE  R10 = R10[K13('UIManager')]
  0034  SELF      R11 = R10[K14('SetEventLock')] (self)
  0035  LOADBOOL  R12 = true
  0036  MOVE      R13 = R0
  0037  CALL      R10 = call(R10, 0 args, 3 rets)
  0038  SELF      R11 = R8[K15('AppendInterval')] (self)
  0039  LOADK     R12 = K16 0.2
  0040  CALL      R10 = call(R10, 0 args, 2 rets)
  0041  SELF      R11 = R8[K17('Append')] (self)
  0042  SELF      R13 = R9[K18('DOMove')] (self)
  0043  GETTABLE  R14 = R4[K9('transform')]
  0044  GETTABLE  R14 = R14[K19('position')]
  0045  LOADK     R15 = K20 0.5
  0046  CALL      R12 = call(R12, 1 args, 3 rets)
  0047  SELF      R13 = R12[K21('SetEase')] (self)
  0048  GETTABUP  R14 = _ENV[K22('Ease')]
  0049  GETTABLE  R14 = R14[K23('InOutSine')]
  0050  CALL      R12 = call(R12, -1 args, 2 rets)
  0051  CALL      R10 = call(R10, 0 args, -1 rets)
  0052  SELF      R11 = R8[K24('Join')] (self)
  0053  SELF      R13 = R9[K25('DOScale')] (self)
  0054  GETTABUP  R14 = _ENV[K26('Vector3')]
  0055  LOADK     R15 = K27 0
  0056  LOADK     R16 = K27 0
  0057  LOADK     R17 = K28 1
  0058  CALL      R14 = call(R14, 1 args, 3 rets)
  0059  LOADK     R15 = K20 0.5
  0060  CALL      R12 = call(R12, -1 args, 3 rets)
  0061  CALL      R10 = call(R10, 0 args, -1 rets)
  0062  SELF      R11 = R8[K29('AppendCallback')] (self)
  0063  CLOSURE   R12 = closure proto0
  0064  CALL      R10 = call(R10, 0 args, 2 rets)
  0065  SELF      R11 = R8[K15('AppendInterval')] (self)
  0066  LOADK     R12 = K30 0.4
  0067  CALL      R10 = call(R10, 0 args, 2 rets)
  0068  SELF      R11 = R8[K29('AppendCallback')] (self)
  0069  CLOSURE   R12 = closure proto1
  0070  CALL      R10 = call(R10, 0 args, 2 rets)
  0071  SETTABLE  R0[K31('m_flySeq')] = R8
  0072  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 658-660 np=0 va=0 ms=2 code=4 consts=1 upvals=1 protos=0
    ;   K[0]='PlayHitAnim'
    ;   upvals: cell
    0000  GETUPVAL  R0 = cell
    0001  SELF      R1 = R0[K0('PlayHitAnim')] (self)
    0002  CALL      R0 = call(R0, 0 args, 1 rets)
    0003  RETURN    return R0..R-1
  ; ---------- proto1 [m_flySeq] ----------
    ; fn ?  line 662-668 np=0 va=0 ms=9 code=27 consts=14 upvals=5 protos=0
    ;   K[0]='m_flySeq'
    ;   K[1]=nil
    ;   K[2]='GM'
    ;   K[3]='UIManager'
    ;   K[4]='SetEventLock'
    ;   K[5]='GameObject'
    ;   K[6]='Destroy'
    ;   K[7]='GetPackIndexBySetId'
    ;   K[8]='OpenView'
    ;   K[9]='m_activityDefinition'
    ;   K[10]='PackWindowPrefabName'
    ;   K[11]='m_arrAllCardSets'
    ;   K[12]='m_activityType'
    ;   K[13]='m_limitAlbumSetNum'
    ;   upvals: self, _ENV, go, setId, cardId
    ;   locals: realIndex(15-27)
    0000  SETTABUP  self[K0('m_flySeq')] = K1(nil)
    0001  GETTABUP  R0 = _ENV[K2('GM')]
    0002  GETTABLE  R0 = R0[K3('UIManager')]
    0003  SELF      R1 = R0[K4('SetEventLock')] (self)
    0004  LOADBOOL  R2 = false
    0005  GETUPVAL  R3 = self
    0006  CALL      R0 = call(R0, 0 args, 3 rets)
    0007  GETTABUP  R0 = _ENV[K5('GameObject')]
    0008  GETTABLE  R0 = R0[K6('Destroy')]
    0009  GETUPVAL  R1 = self
    0010  CALL      R0 = call(R0, 0 args, 1 rets)
    0011  GETUPVAL  R0 = self
    0012  SELF      R1 = R0[K7('GetPackIndexBySetId')] (self)
    0013  GETUPVAL  R2 = self
    0014  CALL      R0 = call(R0, 1 args, 2 rets)
    0015  GETTABUP  R1 = _ENV[K2('GM')]
    0016  GETTABLE  R1 = R1[K3('UIManager')]
    0017  SELF      R2 = R1[K8('OpenView')] (self)
    0018  GETTABUP  R3 = self[K9('m_activityDefinition')]
    0019  GETTABLE  R3 = R3[K10('PackWindowPrefabName')]
    0020  MOVE      R4 = R0
    0021  GETTABUP  R5 = self[K11('m_arrAllCardSets')]
    0022  GETTABUP  R6 = self[K12('m_activityType')]
    0023  GETTABUP  R7 = self[K13('m_limitAlbumSetNum')]
    0024  GETUPVAL  R8 = self
    0025  CALL      R1 = call(R1, 0 args, 7 rets)
    0026  RETURN    return R0..R-1
; ---------- proto43 [_GetProgressMiddleVerticalNormalizedPosition] ----------
  ; fn ?  line 672-685 np=2 va=0 ms=11 code=39 consts=16 upvals=1 protos=0
  ;   K[0]=1
  ;   K[1]=3
  ;   K[2]='m_setLayout'
  ;   K[3]='cellSize'
  ;   K[4]='y'
  ;   K[5]='spacing'
  ;   K[6]='padding'
  ;   K[7]='top'
  ;   K[8]='m_packsRect'
  ;   K[9]='rect'
  ;   K[10]='height'
  ;   K[11]=2
  ;   K[12]='m_setContentRect'
  ;   K[13]='math'
  ;   K[14]='max'
  ;   K[15]=0
  ;   upvals: _ENV
  ;   locals: self(0-39), index(0-39), row(3-39), cellHeight(10-39), targetSliderHeight(15-39), progressNodeHeight(18-39), progressContentHeight(24-35), normalized(29-35)
  0000  SUB       R2 = K0(1) sub R1
  0001  IDIV      R2 = K1(3) idiv R2
  0002  ADD       R2 = K0(1) add R2
  0003  GETTABLE  R3 = R0[K2('m_setLayout')]
  0004  GETTABLE  R3 = R3[K3('cellSize')]
  0005  GETTABLE  R3 = R3[K4('y')]
  0006  GETTABLE  R4 = R0[K2('m_setLayout')]
  0007  GETTABLE  R4 = R4[K5('spacing')]
  0008  GETTABLE  R4 = R4[K4('y')]
  0009  ADD       R3 = R4 add R3
  0010  MUL       R4 = R3 mul R2
  0011  GETTABLE  R5 = R0[K2('m_setLayout')]
  0012  GETTABLE  R5 = R5[K6('padding')]
  0013  GETTABLE  R5 = R5[K7('top')]
  0014  ADD       R4 = R5 add R4
  0015  GETTABLE  R5 = R0[K8('m_packsRect')]
  0016  GETTABLE  R5 = R5[K9('rect')]
  0017  GETTABLE  R5 = R5[K10('height')]
  0018  DIV       R6 = K11(2) div R5
  0019  LT        if R0 lt R4   -> -127975
  0020  JMP       (jump)   -> 36
  0021  GETTABLE  R6 = R0[K12('m_setContentRect')]
  0022  GETTABLE  R6 = R6[K9('rect')]
  0023  GETTABLE  R6 = R6[K10('height')]
  0024  SUB       R7 = R4 sub R6
  0025  DIV       R8 = K11(2) div R5
  0026  SUB       R7 = R8 sub R7
  0027  SUB       R8 = R5 sub R6
  0028  DIV       R7 = R8 div R7
  0029  GETTABUP  R8 = _ENV[K13('math')]
  0030  GETTABLE  R8 = R8[K14('max')]
  0031  MOVE      R9 = R0
  0032  LOADK     R10 = K15 0
  0033  TAILCALL  tailcall(R8, 0)
  0034  RETURN    return R8..R7
  0035  JMP       (jump)   -> 38
  0036  LOADK     R6 = K0 1
  0037  RETURN    return R6..R5
  0038  RETURN    return R0..R-1
