# ExtraBoardBp_View_ExtraBoardBpActivityMainWindow_1601.luac
; fn @ExtraBoardBpActivityMainWindow.lua  line 0-0 np=0 va=1 ms=3 code=96 consts=40 upvals=1 protos=27
;   K[0]='ExtraBoardBpActivityMainWindow'
;   K[1]='setmetatable'
;   K[2]='ExtraBoardBpActivityBaseWindow'
;   K[3]='__index'
;   K[4]='Init'
;   K[5]='init'
;   K[6]='Appear'
;   K[7]='appear'
;   K[8]='Idle'
;   K[9]='idle'
;   K[10]='Progress'
;   K[11]='progress'
;   K[12]='Reward'
;   K[13]='reward'
;   K[14]='OnDestroy'
;   K[15]='_KillTween'
;   K[16]='_AddEventListener'
;   K[17]='_InitModelData'
;   K[18]='_OnStateChanged'
;   K[19]='_InitView'
;   K[20]='GetAnimationTime'
;   K[21]='_InitSpine'
;   K[22]='_InitCells'
;   K[23]='_UpdateTicket'
;   K[24]='GetViewport'
;   K[25]='GetFrontRoot'
;   K[26]='GetLastScore'
;   K[27]='GetCurrentScore'
;   K[28]='OnPurchaseBtnClick'
;   K[29]='_ShowTip'
;   K[30]='PlayRewardAnimation'
;   K[31]='TryLockEventWhenEnd'
;   K[32]='PlayUnlockAnimation'
;   K[33]='GetOpenInterval'
;   K[34]='IsScrollAnimationPlaying'
;   K[35]='_PlayScrollAnimation'
;   K[36]='_PlayProgressAnimation'
;   K[37]='_GetVerticalNormalizedPositionByProgress'
;   K[38]='_OnClickFinishAllTasks'
;   K[39]='_OnClickClaimAllRewards'
;   upvals: _ENV
;   locals: EAnimationKey(14-96)
0000  GETTABUP  R0 = _ENV[K1('setmetatable')]
0001  NEWTABLE  R1 = {} (0 items)
0002  GETTABUP  R2 = _ENV[K2('ExtraBoardBpActivityBaseWindow')]
0003  CALL      R0 = call(R0, 1 args, 2 rets)
0004  SETTABUP  _ENV[K0('ExtraBoardBpActivityMainWindow')] = R0
0005  GETTABUP  R0 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0006  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0007  SETTABLE  R0[K3('__index')] = R1
0008  NEWTABLE  R0 = {} (0 items)
0009  SETTABLE  R0[K4('Init')] = K5('init')
0010  SETTABLE  R0[K6('Appear')] = K7('appear')
0011  SETTABLE  R0[K8('Idle')] = K9('idle')
0012  SETTABLE  R0[K10('Progress')] = K11('progress')
0013  SETTABLE  R0[K12('Reward')] = K13('reward')
0014  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0015  CLOSURE   R2 = closure proto0
0016  SETTABLE  R1[K4('Init')] = R2
0017  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0018  CLOSURE   R2 = closure proto1
0019  SETTABLE  R1[K14('OnDestroy')] = R2
0020  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0021  CLOSURE   R2 = closure proto2
0022  SETTABLE  R1[K15('_KillTween')] = R2
0023  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0024  CLOSURE   R2 = closure proto3
0025  SETTABLE  R1[K16('_AddEventListener')] = R2
0026  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0027  CLOSURE   R2 = closure proto4
0028  SETTABLE  R1[K17('_InitModelData')] = R2
0029  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0030  CLOSURE   R2 = closure proto5
0031  SETTABLE  R1[K18('_OnStateChanged')] = R2
0032  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0033  CLOSURE   R2 = closure proto6
0034  SETTABLE  R1[K19('_InitView')] = R2
0035  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0036  CLOSURE   R2 = closure proto7
0037  SETTABLE  R1[K20('GetAnimationTime')] = R2
0038  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0039  CLOSURE   R2 = closure proto8
0040  SETTABLE  R1[K21('_InitSpine')] = R2
0041  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0042  CLOSURE   R2 = closure proto9
0043  SETTABLE  R1[K22('_InitCells')] = R2
0044  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0045  CLOSURE   R2 = closure proto10
0046  SETTABLE  R1[K23('_UpdateTicket')] = R2
0047  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0048  CLOSURE   R2 = closure proto11
0049  SETTABLE  R1[K24('GetViewport')] = R2
0050  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0051  CLOSURE   R2 = closure proto12
0052  SETTABLE  R1[K25('GetFrontRoot')] = R2
0053  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0054  CLOSURE   R2 = closure proto13
0055  SETTABLE  R1[K26('GetLastScore')] = R2
0056  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0057  CLOSURE   R2 = closure proto14
0058  SETTABLE  R1[K27('GetCurrentScore')] = R2
0059  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0060  CLOSURE   R2 = closure proto15
0061  SETTABLE  R1[K28('OnPurchaseBtnClick')] = R2
0062  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0063  CLOSURE   R2 = closure proto16
0064  SETTABLE  R1[K29('_ShowTip')] = R2
0065  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0066  CLOSURE   R2 = closure proto17
0067  SETTABLE  R1[K30('PlayRewardAnimation')] = R2
0068  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0069  CLOSURE   R2 = closure proto18
0070  SETTABLE  R1[K31('TryLockEventWhenEnd')] = R2
0071  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0072  CLOSURE   R2 = closure proto19
0073  SETTABLE  R1[K32('PlayUnlockAnimation')] = R2
0074  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0075  CLOSURE   R2 = closure proto20
0076  SETTABLE  R1[K33('GetOpenInterval')] = R2
0077  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0078  CLOSURE   R2 = closure proto21
0079  SETTABLE  R1[K34('IsScrollAnimationPlaying')] = R2
0080  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0081  CLOSURE   R2 = closure proto22
0082  SETTABLE  R1[K35('_PlayScrollAnimation')] = R2
0083  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0084  CLOSURE   R2 = closure proto23
0085  SETTABLE  R1[K36('_PlayProgressAnimation')] = R2
0086  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0087  CLOSURE   R2 = closure proto24
0088  SETTABLE  R1[K37('_GetVerticalNormalizedPositionByProgress')] = R2
0089  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0090  CLOSURE   R2 = closure proto25
0091  SETTABLE  R1[K38('_OnClickFinishAllTasks')] = R2
0092  GETTABUP  R1 = _ENV[K0('ExtraBoardBpActivityMainWindow')]
0093  CLOSURE   R2 = closure proto26
0094  SETTABLE  R1[K39('_OnClickClaimAllRewards')] = R2
0095  RETURN    return R0..R-1
; ---------- proto0 [Init] ----------
  ; fn ?  line 41-51 np=4 va=0 ms=9 code=18 consts=7 upvals=1 protos=0
  ;   K[0]='ExtraBoardBpActivityBaseWindow'
  ;   K[1]='Init'
  ;   K[2]='_AddEventListener'
  ;   K[3]='_InitModelData'
  ;   K[4]='_InitView'
  ;   K[5]='GetModel'
  ;   K[6]='OnMainWindowPoped'
  ;   upvals: _ENV
  ;   locals: self(0-18), activityType(0-18), id(0-18), bAutoPop(0-18)
  0000  GETTABUP  R4 = _ENV[K0('ExtraBoardBpActivityBaseWindow')]
  0001  GETTABLE  R4 = R4[K1('Init')]
  0002  MOVE      R5 = R0
  0003  MOVE      R6 = R0
  0004  MOVE      R7 = R0
  0005  MOVE      R8 = R0
  0006  CALL      R4 = call(R4, 0 args, 4 rets)
  0007  SELF      R5 = R0[K2('_AddEventListener')] (self)
  0008  CALL      R4 = call(R4, 0 args, 1 rets)
  0009  SELF      R5 = R0[K3('_InitModelData')] (self)
  0010  CALL      R4 = call(R4, 0 args, 1 rets)
  0011  SELF      R5 = R0[K4('_InitView')] (self)
  0012  CALL      R4 = call(R4, 0 args, 1 rets)
  0013  SELF      R5 = R0[K5('GetModel')] (self)
  0014  CALL      R4 = call(R4, 1 args, 1 rets)
  0015  SELF      R5 = R4[K6('OnMainWindowPoped')] (self)
  0016  CALL      R4 = call(R4, 0 args, 1 rets)
  0017  RETURN    return R0..R-1
; ---------- proto1 [OnDestroy] ----------
  ; fn ?  line 53-56 np=1 va=0 ms=3 code=7 consts=3 upvals=1 protos=0
  ;   K[0]='ExtraBoardActivityBaseWindow'
  ;   K[1]='OnDestroy'
  ;   K[2]='_KillTween'
  ;   upvals: _ENV
  ;   locals: self(0-7)
  0000  GETTABUP  R1 = _ENV[K0('ExtraBoardActivityBaseWindow')]
  0001  GETTABLE  R1 = R1[K1('OnDestroy')]
  0002  MOVE      R2 = R0
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  SELF      R2 = R0[K2('_KillTween')] (self)
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto2 [_KillTween] ----------
  ; fn ?  line 58-79 np=1 va=0 ms=3 code=36 consts=7 upvals=0 protos=0
  ;   K[0]='m_scrollSequence'
  ;   K[1]=nil
  ;   K[2]='Kill'
  ;   K[3]='m_progressSequence'
  ;   K[4]='m_unlockSequence'
  ;   K[5]='m_tipSequence'
  ;   K[6]='m_progressTipSequence'
  ;   locals: self(0-36)
  0000  GETTABLE  R1 = R0[K0('m_scrollSequence')]
  0001  EQ        if R1 eq K1(nil)   -> -130300
  0002  JMP       (jump)   -> 7
  0003  GETTABLE  R1 = R0[K0('m_scrollSequence')]
  0004  SELF      R2 = R1[K2('Kill')] (self)
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  SETTABLE  R0[K0('m_scrollSequence')] = K1(nil)
  0007  GETTABLE  R1 = R0[K3('m_progressSequence')]
  0008  EQ        if R1 eq K1(nil)   -> -130293
  0009  JMP       (jump)   -> 14
  0010  GETTABLE  R1 = R0[K3('m_progressSequence')]
  0011  SELF      R2 = R1[K2('Kill')] (self)
  0012  CALL      R1 = call(R1, 0 args, 1 rets)
  0013  SETTABLE  R0[K3('m_progressSequence')] = K1(nil)
  0014  GETTABLE  R1 = R0[K4('m_unlockSequence')]
  0015  EQ        if R1 eq K1(nil)   -> -130286
  0016  JMP       (jump)   -> 21
  0017  GETTABLE  R1 = R0[K4('m_unlockSequence')]
  0018  SELF      R2 = R1[K2('Kill')] (self)
  0019  CALL      R1 = call(R1, 0 args, 1 rets)
  0020  SETTABLE  R0[K4('m_unlockSequence')] = K1(nil)
  0021  GETTABLE  R1 = R0[K5('m_tipSequence')]
  0022  EQ        if R1 eq K1(nil)   -> -130279
  0023  JMP       (jump)   -> 28
  0024  GETTABLE  R1 = R0[K5('m_tipSequence')]
  0025  SELF      R2 = R1[K2('Kill')] (self)
  0026  CALL      R1 = call(R1, 0 args, 1 rets)
  0027  SETTABLE  R0[K5('m_tipSequence')] = K1(nil)
  0028  GETTABLE  R1 = R0[K6('m_progressTipSequence')]
  0029  EQ        if R1 eq K1(nil)   -> -130272
  0030  JMP       (jump)   -> 35
  0031  GETTABLE  R1 = R0[K6('m_progressTipSequence')]
  0032  SELF      R2 = R1[K2('Kill')] (self)
  0033  CALL      R1 = call(R1, 0 args, 1 rets)
  0034  SETTABLE  R0[K6('m_progressTipSequence')] = K1(nil)
  0035  RETURN    return R0..R-1
; ---------- proto3 [_AddEventListener] ----------
  ; fn ?  line 81-83 np=1 va=0 ms=5 code=9 consts=5 upvals=1 protos=0
  ;   K[0]='EventDispatcher'
  ;   K[1]='AddListener'
  ;   K[2]='GetActivityDefinition'
  ;   K[3]='BuyTicketSuccessEvent'
  ;   K[4]='PlayUnlockAnimation'
  ;   upvals: _ENV
  ;   locals: self(0-9)
  0000  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0001  GETTABLE  R1 = R1[K1('AddListener')]
  0002  SELF      R3 = R0[K2('GetActivityDefinition')] (self)
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  GETTABLE  R2 = R2[K3('BuyTicketSuccessEvent')]
  0005  MOVE      R3 = R0
  0006  GETTABLE  R4 = R0[K4('PlayUnlockAnimation')]
  0007  CALL      R1 = call(R1, 0 args, 3 rets)
  0008  RETURN    return R0..R-1
; ---------- proto4 [_InitModelData] ----------
  ; fn ?  line 85-98 np=1 va=0 ms=9 code=30 consts=13 upvals=1 protos=0
  ;   K[0]='GetModel'
  ;   K[1]='GetQuestHelper'
  ;   K[2]='m_arrQuestEntity'
  ;   K[3]='GetAllValidOrCanAcquireQuests'
  ;   K[4]='m_lastProgress'
  ;   K[5]='GetLastProgress'
  ;   K[6]='m_currentProgress'
  ;   K[7]='GetAllTypeCurrentScore'
  ;   K[8]='m_bProgressChanged'
  ;   K[9]=false
  ;   K[10]='pairs'
  ;   K[11]=0
  ;   K[12]=true
  ;   upvals: _ENV
  ;   locals: self(0-30), model(2-30), questHelper(4-30), (for generator)(17-29), (for state)(17-29), (for control)(17-29), questType(18-27), currentScore(18-27)
  0000  SELF      R2 = R0[K0('GetModel')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  SELF      R3 = R0[K1('GetQuestHelper')] (self)
  0003  CALL      R2 = call(R2, 1 args, 1 rets)
  0004  SELF      R4 = R2[K3('GetAllValidOrCanAcquireQuests')] (self)
  0005  CALL      R3 = call(R3, 1 args, 1 rets)
  0006  SETTABLE  R0[K2('m_arrQuestEntity')] = R3
  0007  SELF      R4 = R1[K5('GetLastProgress')] (self)
  0008  CALL      R3 = call(R3, 1 args, 1 rets)
  0009  SETTABLE  R0[K4('m_lastProgress')] = R3
  0010  SELF      R4 = R2[K7('GetAllTypeCurrentScore')] (self)
  0011  CALL      R3 = call(R3, 1 args, 1 rets)
  0012  SETTABLE  R0[K6('m_currentProgress')] = R3
  0013  SETTABLE  R0[K8('m_bProgressChanged')] = K9(false)
  0014  GETTABUP  R3 = _ENV[K10('pairs')]
  0015  GETTABLE  R4 = R0[K6('m_currentProgress')]
  0016  CALL      R3 = call(R3, 3 args, 1 rets)
  0017  JMP       (jump)   -> 27
  0018  GETTABLE  R8 = R0[K4('m_lastProgress')]
  0019  GETTABLE  R8 = R8[R6]
  0020  TEST      if not R8 then   -> -131049
  0021  JMP       (jump)   -> 23
  0022  LOADK     R8 = K11 0
  0023  LT        if R0 lt R7   -> -126944
  0024  JMP       (jump)   -> 27
  0025  SETTABLE  R0[K8('m_bProgressChanged')] = K12(true)
  0026  JMP       (jump)   -> 29
  0027  TFORCALL  tforcall R3
  0028  TFORLOOP  tforloop R5(sBx=-11)   -> 18
  0029  RETURN    return R0..R-1
; ---------- proto5 [_OnStateChanged] ----------
  ; fn ?  line 101-106 np=1 va=0 ms=3 code=9 consts=3 upvals=1 protos=0
  ;   K[0]='m_bLockEventWhenEnd'
  ;   K[1]='ExtraBoardBpActivityBaseWindow'
  ;   K[2]='_OnStateChanged'
  ;   upvals: _ENV
  ;   locals: self(0-9)
  0000  GETTABLE  R1 = R0[K0('m_bLockEventWhenEnd')]
  0001  TEST      if not R1 then   -> -131069
  0002  JMP       (jump)   -> 4
  0003  RETURN    return R0..R-1
  0004  GETTABUP  R1 = _ENV[K1('ExtraBoardBpActivityBaseWindow')]
  0005  GETTABLE  R1 = R1[K2('_OnStateChanged')]
  0006  MOVE      R2 = R0
  0007  CALL      R1 = call(R1, 0 args, 1 rets)
  0008  RETURN    return R0..R-1
; ---------- proto6 [_InitView] ----------
  ; fn ?  line 108-114 np=1 va=0 ms=4 code=13 consts=7 upvals=0 protos=0
  ;   K[0]='_InitSpine'
  ;   K[1]='_InitCells'
  ;   K[2]='m_IAPButtonText'
  ;   K[3]='text'
  ;   K[4]='GetModel'
  ;   K[5]='GetLocalizedPrice'
  ;   K[6]='_UpdateTicket'
  ;   locals: self(0-13)
  0000  SELF      R2 = R0[K0('_InitSpine')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  SELF      R2 = R0[K1('_InitCells')] (self)
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  GETTABLE  R1 = R0[K2('m_IAPButtonText')]
  0005  SELF      R3 = R0[K4('GetModel')] (self)
  0006  CALL      R2 = call(R2, 1 args, 1 rets)
  0007  SELF      R3 = R2[K5('GetLocalizedPrice')] (self)
  0008  CALL      R2 = call(R2, 1 args, 1 rets)
  0009  SETTABLE  R1[K3('text')] = R2
  0010  SELF      R2 = R0[K6('_UpdateTicket')] (self)
  0011  CALL      R1 = call(R1, 0 args, 1 rets)
  0012  RETURN    return R0..R-1
; ---------- proto7 [GetAnimationTime] ----------
  ; fn ?  line 118-125 np=3 va=0 ms=7 code=11 consts=5 upvals=0 protos=0
  ;   K[0]='SkeletonData'
  ;   K[1]='FindAnimation'
  ;   K[2]=nil
  ;   K[3]=0
  ;   K[4]='Duration'
  ;   locals: self(0-11), skeletonGraphic(0-11), animationName(0-11), skeletonData(1-11), animation(4-11)
  0000  GETTABLE  R3 = R1[K0('SkeletonData')]
  0001  SELF      R5 = R3[K1('FindAnimation')] (self)
  0002  MOVE      R6 = R0
  0003  CALL      R4 = call(R4, 1 args, 2 rets)
  0004  EQ        if R0 eq K2(nil)   -> -128760
  0005  JMP       (jump)   -> 8
  0006  LOADK     R5 = K3 0
  0007  RETURN    return R5..R4
  0008  GETTABLE  R5 = R4[K4('Duration')]
  0009  RETURN    return R5..R4
  0010  RETURN    return R0..R-1
; ---------- proto8 [_InitSpine] ----------
  ; fn ?  line 127-152 np=1 va=0 ms=8 code=80 consts=22 upvals=2 protos=2
  ;   K[0]='m_bgTopSpine'
  ;   K[1]='AnimationState'
  ;   K[2]='SetAnimation'
  ;   K[3]=0
  ;   K[4]='Init'
  ;   K[5]='AddAnimation'
  ;   K[6]='Appear'
  ;   K[7]=0.2
  ;   K[8]='m_bProgressChanged'
  ;   K[9]='Progress'
  ;   K[10]='DOTween'
  ;   K[11]='Sequence'
  ;   K[12]='AppendInterval'
  ;   K[13]='GetAnimationTime'
  ;   K[14]='InsertCallback'
  ;   K[15]='Duration'
  ;   K[16]=0.5
  ;   K[17]='OnKill'
  ;   K[18]='m_progressTipSequence'
  ;   K[19]='m_bgTopSpine'
  ;   K[20]='Idle'
  ;   K[21]='m_frameSpine'
  ;   upvals: EAnimationKey, _ENV
  ;   locals: self(0-80), sequence(29-48)
  0000  GETTABLE  R1 = R0[K0('m_bgTopSpine')]
  0001  GETTABLE  R1 = R1[K1('AnimationState')]
  0002  SELF      R2 = R1[K2('SetAnimation')] (self)
  0003  LOADK     R3 = K3 0
  0004  GETTABUP  R4 = EAnimationKey[K4('Init')]
  0005  LOADBOOL  R5 = false
  0006  CALL      R1 = call(R1, 0 args, 4 rets)
  0007  GETTABLE  R1 = R0[K0('m_bgTopSpine')]
  0008  GETTABLE  R1 = R1[K1('AnimationState')]
  0009  SELF      R2 = R1[K5('AddAnimation')] (self)
  0010  LOADK     R3 = K3 0
  0011  GETTABUP  R4 = EAnimationKey[K6('Appear')]
  0012  LOADBOOL  R5 = false
  0013  LOADK     R6 = K7 0.2
  0014  CALL      R1 = call(R1, 0 args, 5 rets)
  0015  GETTABLE  R1 = R0[K8('m_bProgressChanged')]
  0016  TEST      if not R1 then   -> -131054
  0017  JMP       (jump)   -> 48
  0018  GETTABLE  R1 = R0[K0('m_bgTopSpine')]
  0019  GETTABLE  R1 = R1[K1('AnimationState')]
  0020  SELF      R2 = R1[K5('AddAnimation')] (self)
  0021  LOADK     R3 = K3 0
  0022  GETTABUP  R4 = EAnimationKey[K9('Progress')]
  0023  LOADBOOL  R5 = false
  0024  LOADK     R6 = K3 0
  0025  CALL      R1 = call(R1, 0 args, 5 rets)
  0026  GETTABUP  R1 = _ENV[K10('DOTween')]
  0027  GETTABLE  R1 = R1[K11('Sequence')]
  0028  CALL      R1 = call(R1, 1 args, 0 rets)
  0029  SELF      R3 = R1[K12('AppendInterval')] (self)
  0030  LOADK     R4 = K7 0.2
  0031  CALL      R2 = call(R2, 0 args, 2 rets)
  0032  SELF      R3 = R1[K12('AppendInterval')] (self)
  0033  SELF      R5 = R0[K13('GetAnimationTime')] (self)
  0034  GETTABLE  R6 = R0[K0('m_bgTopSpine')]
  0035  GETTABUP  R7 = EAnimationKey[K6('Appear')]
  0036  CALL      R4 = call(R4, -1 args, 3 rets)
  0037  CALL      R2 = call(R2, 0 args, -1 rets)
  0038  SELF      R3 = R1[K14('InsertCallback')] (self)
  0039  SELF      R5 = R1[K15('Duration')] (self)
  0040  CALL      R4 = call(R4, 1 args, 1 rets)
  0041  SUB       R4 = K16(0.5) sub R4
  0042  CLOSURE   R5 = closure proto0
  0043  CALL      R2 = call(R2, 0 args, 3 rets)
  0044  SELF      R3 = R1[K17('OnKill')] (self)
  0045  CLOSURE   R4 = closure proto1
  0046  CALL      R2 = call(R2, 0 args, 2 rets)
  0047  SETTABLE  R0[K18('m_progressTipSequence')] = R1
  0048  GETTABLE  R1 = R0[K19('m_bgTopSpine')]
  0049  GETTABLE  R1 = R1[K1('AnimationState')]
  0050  SELF      R2 = R1[K5('AddAnimation')] (self)
  0051  LOADK     R3 = K3 0
  0052  GETTABUP  R4 = EAnimationKey[K20('Idle')]
  0053  LOADBOOL  R5 = true
  0054  LOADK     R6 = K3 0
  0055  CALL      R1 = call(R1, 0 args, 5 rets)
  0056  GETTABLE  R1 = R0[K21('m_frameSpine')]
  0057  GETTABLE  R1 = R1[K1('AnimationState')]
  0058  SELF      R2 = R1[K2('SetAnimation')] (self)
  0059  LOADK     R3 = K3 0
  0060  GETTABUP  R4 = EAnimationKey[K4('Init')]
  0061  LOADBOOL  R5 = false
  0062  CALL      R1 = call(R1, 0 args, 4 rets)
  0063  GETTABLE  R1 = R0[K21('m_frameSpine')]
  0064  GETTABLE  R1 = R1[K1('AnimationState')]
  0065  SELF      R2 = R1[K5('AddAnimation')] (self)
  0066  LOADK     R3 = K3 0
  0067  GETTABUP  R4 = EAnimationKey[K6('Appear')]
  0068  LOADBOOL  R5 = false
  0069  LOADK     R6 = K7 0.2
  0070  CALL      R1 = call(R1, 0 args, 5 rets)
  0071  GETTABLE  R1 = R0[K21('m_frameSpine')]
  0072  GETTABLE  R1 = R1[K1('AnimationState')]
  0073  SELF      R2 = R1[K5('AddAnimation')] (self)
  0074  LOADK     R3 = K3 0
  0075  GETTABUP  R4 = EAnimationKey[K20('Idle')]
  0076  LOADBOOL  R5 = true
  0077  LOADK     R6 = K3 0
  0078  CALL      R1 = call(R1, 0 args, 5 rets)
  0079  RETURN    return R0..R-1
  ; ---------- proto0 [m_progressTipSequence] ----------
    ; fn ?  line 138-140 np=0 va=0 ms=7 code=10 consts=5 upvals=2 protos=0
    ;   K[0]='_ShowTip'
    ;   K[1]='extraBoardbp_talk_1'
    ;   K[2]='GetAnimationTime'
    ;   K[3]='m_bgTopSpine'
    ;   K[4]='Progress'
    ;   upvals: self, EAnimationKey
    0000  GETUPVAL  R0 = self
    0001  SELF      R1 = R0[K0('_ShowTip')] (self)
    0002  LOADK     R2 = K1 'extraBoardbp_talk_1'
    0003  GETUPVAL  R3 = self
    0004  SELF      R4 = R3[K2('GetAnimationTime')] (self)
    0005  GETTABUP  R5 = self[K3('m_bgTopSpine')]
    0006  GETTABUP  R6 = EAnimationKey[K4('Progress')]
    0007  CALL      R3 = call(R3, -1 args, 3 rets)
    0008  CALL      R0 = call(R0, 0 args, -1 rets)
    0009  RETURN    return R0..R-1
  ; ---------- proto1 [m_progressTipSequence] ----------
    ; fn ?  line 141-143 np=0 va=0 ms=2 code=2 consts=2 upvals=1 protos=0
    ;   K[0]='m_progressTipSequence'
    ;   K[1]=nil
    ;   upvals: self
    0000  SETTABUP  self[K0('m_progressTipSequence')] = K1(nil)
    0001  RETURN    return R0..R-1
; ---------- proto9 [_InitCells] ----------
  ; fn ?  line 154-177 np=1 va=0 ms=11 code=55 consts=20 upvals=1 protos=0
  ;   K[0]='Table'
  ;   K[1]='IsEmpty'
  ;   K[2]='m_arrQuestCell'
  ;   K[3]='ipairs'
  ;   K[4]='Object'
  ;   K[5]='Destroy'
  ;   K[6]='gameObject'
  ;   K[7]='m_mapQuestCell'
  ;   K[8]='m_arrQuestEntity'
  ;   K[9]='Instantiate'
  ;   K[10]='m_questCellPrefab'
  ;   K[11]='m_contentRoot'
  ;   K[12]='GetLuaTable'
  ;   K[13]='Init'
  ;   K[14]='table'
  ;   K[15]='insert'
  ;   K[16]='LayoutRebuilder'
  ;   K[17]='ForceRebuildLayoutImmediate'
  ;   K[18]='_PlayScrollAnimation'
  ;   K[19]='_PlayProgressAnimation'
  ;   upvals: _ENV
  ;   locals: self(0-55), (for generator)(9-16), (for state)(9-16), (for control)(9-16), _(10-14), taskCell(10-14), questCell(21-55), (for generator)(24-46), (for state)(24-46), (for control)(24-46), _(25-44), questEntity(25-44)
  0000  GETTABUP  R1 = _ENV[K0('Table')]
  0001  GETTABLE  R1 = R1[K1('IsEmpty')]
  0002  GETTABLE  R2 = R0[K2('m_arrQuestCell')]
  0003  CALL      R1 = call(R1, 1 args, 1 rets)
  0004  TEST      if not R1 then   -> -131065
  0005  JMP       (jump)   -> 16
  0006  GETTABUP  R1 = _ENV[K3('ipairs')]
  0007  GETTABLE  R2 = R0[K2('m_arrQuestCell')]
  0008  CALL      R1 = call(R1, 3 args, 1 rets)
  0009  JMP       (jump)   -> 14
  0010  GETTABUP  R6 = _ENV[K4('Object')]
  0011  GETTABLE  R6 = R6[K5('Destroy')]
  0012  GETTABLE  R7 = R5[K6('gameObject')]
  0013  CALL      R6 = call(R6, 0 args, 1 rets)
  0014  TFORCALL  tforcall R1
  0015  TFORLOOP  tforloop R3(sBx=-6)   -> 10
  0016  NEWTABLE  R1 = {} (0 items)
  0017  SETTABLE  R0[K7('m_mapQuestCell')] = R1
  0018  NEWTABLE  R1 = {} (0 items)
  0019  SETTABLE  R0[K2('m_arrQuestCell')] = R1
  0020  LOADNIL   R1..R1 = nil
  0021  GETTABUP  R2 = _ENV[K3('ipairs')]
  0022  GETTABLE  R3 = R0[K8('m_arrQuestEntity')]
  0023  CALL      R2 = call(R2, 3 args, 1 rets)
  0024  JMP       (jump)   -> 44
  0025  GETTABUP  R7 = _ENV[K4('Object')]
  0026  GETTABLE  R7 = R7[K9('Instantiate')]
  0027  GETTABLE  R8 = R0[K10('m_questCellPrefab')]
  0028  GETTABLE  R9 = R0[K11('m_contentRoot')]
  0029  CALL      R7 = call(R7, 1 args, 2 rets)
  0030  SELF      R8 = R7[K12('GetLuaTable')] (self)
  0031  CALL      R7 = call(R7, 1 args, 1 rets)
  0032  MOVE      R1 = R0
  0033  SELF      R8 = R1[K13('Init')] (self)
  0034  MOVE      R9 = R0
  0035  MOVE      R10 = R0
  0036  CALL      R7 = call(R7, 0 args, 3 rets)
  0037  GETTABLE  R7 = R0[K7('m_mapQuestCell')]
  0038  SETTABLE  R7[R6] = R1
  0039  GETTABUP  R7 = _ENV[K14('table')]
  0040  GETTABLE  R7 = R7[K15('insert')]
  0041  GETTABLE  R8 = R0[K2('m_arrQuestCell')]
  0042  MOVE      R9 = R0
  0043  CALL      R7 = call(R7, 0 args, 2 rets)
  0044  TFORCALL  tforcall R2
  0045  TFORLOOP  tforloop R4(sBx=-21)   -> 25
  0046  GETTABUP  R2 = _ENV[K16('LayoutRebuilder')]
  0047  GETTABLE  R2 = R2[K17('ForceRebuildLayoutImmediate')]
  0048  GETTABLE  R3 = R0[K11('m_contentRoot')]
  0049  CALL      R2 = call(R2, 0 args, 1 rets)
  0050  SELF      R3 = R0[K18('_PlayScrollAnimation')] (self)
  0051  CALL      R2 = call(R2, 0 args, 1 rets)
  0052  SELF      R3 = R0[K19('_PlayProgressAnimation')] (self)
  0053  CALL      R2 = call(R2, 0 args, 1 rets)
  0054  RETURN    return R0..R-1
; ---------- proto10 [_UpdateTicket] ----------
  ; fn ?  line 179-191 np=1 va=0 ms=7 code=28 consts=13 upvals=1 protos=0
  ;   K[0]='GetModel'
  ;   K[1]='HasTicket'
  ;   K[2]='UIUtil'
  ;   K[3]='SetActive'
  ;   K[4]='m_vipButtonGo'
  ;   K[5]='m_vipPaidGo'
  ;   K[6]='extraBoardbp_bought_desc'
  ;   K[7]='extraBoardbp_htp'
  ;   K[8]='m_vipDescText'
  ;   K[9]='text'
  ;   K[10]='GM'
  ;   K[11]='GameTextModel'
  ;   K[12]='GetText'
  ;   upvals: _ENV
  ;   locals: self(0-28), bHasTicket(4-28), vipDescTextKey(15-28)
  0000  SELF      R2 = R0[K0('GetModel')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  SELF      R2 = R1[K1('HasTicket')] (self)
  0003  CALL      R1 = call(R1, 1 args, 1 rets)
  0004  GETTABUP  R2 = _ENV[K2('UIUtil')]
  0005  GETTABLE  R2 = R2[K3('SetActive')]
  0006  GETTABLE  R3 = R0[K4('m_vipButtonGo')]
  0007  NOT       R4 = not R0
  0008  CALL      R2 = call(R2, 0 args, 2 rets)
  0009  GETTABUP  R2 = _ENV[K2('UIUtil')]
  0010  GETTABLE  R2 = R2[K3('SetActive')]
  0011  GETTABLE  R3 = R0[K5('m_vipPaidGo')]
  0012  MOVE      R4 = R0
  0013  CALL      R2 = call(R2, 0 args, 2 rets)
  0014  LOADNIL   R2..R2 = nil
  0015  TEST      if not R1 then   -> -131055
  0016  JMP       (jump)   -> 19
  0017  LOADK     R2 = K6 'extraBoardbp_bought_desc'
  0018  JMP       (jump)   -> 20
  0019  LOADK     R2 = K7 'extraBoardbp_htp'
  0020  GETTABLE  R3 = R0[K8('m_vipDescText')]
  0021  GETTABUP  R4 = _ENV[K10('GM')]
  0022  GETTABLE  R4 = R4[K11('GameTextModel')]
  0023  SELF      R5 = R4[K12('GetText')] (self)
  0024  MOVE      R6 = R0
  0025  CALL      R4 = call(R4, 1 args, 2 rets)
  0026  SETTABLE  R3[K9('text')] = R4
  0027  RETURN    return R0..R-1
; ---------- proto11 [GetViewport] ----------
  ; fn ?  line 193-195 np=1 va=0 ms=2 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='m_viewport'
  ;   locals: self(0-3)
  0000  GETTABLE  R1 = R0[K0('m_viewport')]
  0001  RETURN    return R1..R0
  0002  RETURN    return R0..R-1
; ---------- proto12 [GetFrontRoot] ----------
  ; fn ?  line 197-199 np=1 va=0 ms=2 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='m_frontRoot'
  ;   locals: self(0-3)
  0000  GETTABLE  R1 = R0[K0('m_frontRoot')]
  0001  RETURN    return R1..R0
  0002  RETURN    return R0..R-1
; ---------- proto13 [GetLastScore] ----------
  ; fn ?  line 202-204 np=2 va=0 ms=5 code=9 consts=3 upvals=0 protos=0
  ;   K[0]='m_lastProgress'
  ;   K[1]='GetQuestType'
  ;   K[2]=0
  ;   locals: self(0-9), questEntity(0-9)
  0000  GETTABLE  R2 = R0[K0('m_lastProgress')]
  0001  SELF      R4 = R1[K1('GetQuestType')] (self)
  0002  CALL      R3 = call(R3, 1 args, 1 rets)
  0003  GETTABLE  R2 = R2[R3]
  0004  TEST      if not R2 then   -> -131065
  0005  JMP       (jump)   -> 7
  0006  LOADK     R2 = K2 0
  0007  RETURN    return R2..R1
  0008  RETURN    return R0..R-1
; ---------- proto14 [GetCurrentScore] ----------
  ; fn ?  line 207-209 np=2 va=0 ms=5 code=9 consts=3 upvals=0 protos=0
  ;   K[0]='m_currentProgress'
  ;   K[1]='GetQuestType'
  ;   K[2]=0
  ;   locals: self(0-9), questEntity(0-9)
  0000  GETTABLE  R2 = R0[K0('m_currentProgress')]
  0001  SELF      R4 = R1[K1('GetQuestType')] (self)
  0002  CALL      R3 = call(R3, 1 args, 1 rets)
  0003  GETTABLE  R2 = R2[R3]
  0004  TEST      if not R2 then   -> -131065
  0005  JMP       (jump)   -> 7
  0006  LOADK     R2 = K2 0
  0007  RETURN    return R2..R1
  0008  RETURN    return R0..R-1
; ---------- proto15 [OnPurchaseBtnClick] ----------
  ; fn ?  line 211-213 np=1 va=0 ms=3 code=5 consts=2 upvals=0 protos=0
  ;   K[0]='GetModel'
  ;   K[1]='StartPurchase'
  ;   locals: self(0-5)
  0000  SELF      R2 = R0[K0('GetModel')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  SELF      R2 = R1[K1('StartPurchase')] (self)
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  RETURN    return R0..R-1
; ---------- proto16 [_ShowTip] ----------
  ; fn ?  line 217-230 np=3 va=0 ms=7 code=24 consts=10 upvals=1 protos=1
  ;   K[0]='ExtraBoardBpActivityBaseWindow'
  ;   K[1]='_ShowTip'
  ;   K[2]='m_tipSequence'
  ;   K[3]=nil
  ;   K[4]='Kill'
  ;   K[5]='DOTween'
  ;   K[6]='Sequence'
  ;   K[7]='AppendInterval'
  ;   K[8]=3
  ;   K[9]='AppendCallback'
  ;   upvals: _ENV
  ;   locals: self(0-24), textKey(0-24), time(0-24), sequence(14-24)
  0000  GETTABUP  R3 = _ENV[K0('ExtraBoardBpActivityBaseWindow')]
  0001  GETTABLE  R3 = R3[K1('_ShowTip')]
  0002  MOVE      R4 = R0
  0003  MOVE      R5 = R0
  0004  CALL      R3 = call(R3, 0 args, 2 rets)
  0005  GETTABLE  R3 = R0[K2('m_tipSequence')]
  0006  EQ        if R1 eq K3(nil)   -> -129269
  0007  JMP       (jump)   -> 11
  0008  GETTABLE  R3 = R0[K2('m_tipSequence')]
  0009  SELF      R4 = R3[K4('Kill')] (self)
  0010  CALL      R3 = call(R3, 0 args, 1 rets)
  0011  GETTABUP  R3 = _ENV[K5('DOTween')]
  0012  GETTABLE  R3 = R3[K6('Sequence')]
  0013  CALL      R3 = call(R3, 1 args, 0 rets)
  0014  SELF      R5 = R3[K7('AppendInterval')] (self)
  0015  TESTSET   if R1 then R6   -> -130030
  0016  JMP       (jump)   -> 18
  0017  LOADK     R6 = K8 3
  0018  CALL      R4 = call(R4, 0 args, 2 rets)
  0019  SELF      R5 = R3[K9('AppendCallback')] (self)
  0020  CLOSURE   R6 = closure proto0
  0021  CALL      R4 = call(R4, 0 args, 2 rets)
  0022  SETTABLE  R0[K2('m_tipSequence')] = R3
  0023  RETURN    return R0..R-1
  ; ---------- proto0 [m_tipSequence] ----------
    ; fn ?  line 225-228 np=0 va=0 ms=2 code=5 consts=4 upvals=1 protos=0
    ;   K[0]='m_tip'
    ;   K[1]='Hide'
    ;   K[2]='m_tipSequence'
    ;   K[3]=nil
    ;   upvals: self
    0000  GETTABUP  R0 = self[K0('m_tip')]
    0001  SELF      R1 = R0[K1('Hide')] (self)
    0002  CALL      R0 = call(R0, 0 args, 1 rets)
    0003  SETTABUP  self[K2('m_tipSequence')] = K3(nil)
    0004  RETURN    return R0..R-1
; ---------- proto17 [PlayRewardAnimation] ----------
  ; fn ?  line 232-241 np=1 va=0 ms=8 code=39 consts=12 upvals=1 protos=0
  ;   K[0]='m_bgTopSpine'
  ;   K[1]='AnimationState'
  ;   K[2]='SetAnimation'
  ;   K[3]=0
  ;   K[4]='Reward'
  ;   K[5]='AddAnimation'
  ;   K[6]='Idle'
  ;   K[7]='_ShowTip'
  ;   K[8]='extraBoardbp_talk_2'
  ;   K[9]='GetAnimationTime'
  ;   K[10]=1
  ;   K[11]='m_frameSpine'
  ;   upvals: EAnimationKey
  ;   locals: self(0-39)
  0000  GETTABLE  R1 = R0[K0('m_bgTopSpine')]
  0001  GETTABLE  R1 = R1[K1('AnimationState')]
  0002  SELF      R2 = R1[K2('SetAnimation')] (self)
  0003  LOADK     R3 = K3 0
  0004  GETTABUP  R4 = EAnimationKey[K4('Reward')]
  0005  LOADBOOL  R5 = false
  0006  CALL      R1 = call(R1, 0 args, 4 rets)
  0007  GETTABLE  R1 = R0[K0('m_bgTopSpine')]
  0008  GETTABLE  R1 = R1[K1('AnimationState')]
  0009  SELF      R2 = R1[K5('AddAnimation')] (self)
  0010  LOADK     R3 = K3 0
  0011  GETTABUP  R4 = EAnimationKey[K6('Idle')]
  0012  LOADBOOL  R5 = true
  0013  LOADK     R6 = K3 0
  0014  CALL      R1 = call(R1, 0 args, 5 rets)
  0015  SELF      R2 = R0[K7('_ShowTip')] (self)
  0016  LOADK     R3 = K8 'extraBoardbp_talk_2'
  0017  SELF      R5 = R0[K9('GetAnimationTime')] (self)
  0018  GETTABLE  R6 = R0[K0('m_bgTopSpine')]
  0019  GETTABUP  R7 = EAnimationKey[K6('Idle')]
  0020  CALL      R4 = call(R4, 1 args, 3 rets)
  0021  SUB       R4 = K10(1) sub R4
  0022  CALL      R1 = call(R1, 0 args, 3 rets)
  0023  GETTABLE  R1 = R0[K11('m_frameSpine')]
  0024  GETTABLE  R1 = R1[K1('AnimationState')]
  0025  SELF      R2 = R1[K2('SetAnimation')] (self)
  0026  LOADK     R3 = K3 0
  0027  GETTABUP  R4 = EAnimationKey[K4('Reward')]
  0028  LOADBOOL  R5 = false
  0029  CALL      R1 = call(R1, 0 args, 4 rets)
  0030  GETTABLE  R1 = R0[K11('m_frameSpine')]
  0031  GETTABLE  R1 = R1[K1('AnimationState')]
  0032  SELF      R2 = R1[K5('AddAnimation')] (self)
  0033  LOADK     R3 = K3 0
  0034  GETTABUP  R4 = EAnimationKey[K6('Idle')]
  0035  LOADBOOL  R5 = true
  0036  LOADK     R6 = K3 0
  0037  CALL      R1 = call(R1, 0 args, 5 rets)
  0038  RETURN    return R0..R-1
; ---------- proto18 [TryLockEventWhenEnd] ----------
  ; fn ?  line 243-258 np=1 va=0 ms=5 code=26 consts=13 upvals=1 protos=2
  ;   K[0]='GetQuestHelper'
  ;   K[1]='IsAllQuestAcquired'
  ;   K[2]='GM'
  ;   K[3]='UIManager'
  ;   K[4]='SetEventLock'
  ;   K[5]='m_bLockEventWhenEnd'
  ;   K[6]=true
  ;   K[7]='DOTween'
  ;   K[8]='Sequence'
  ;   K[9]='AppendInterval'
  ;   K[10]=1.5
  ;   K[11]='AppendCallback'
  ;   K[12]='OnKill'
  ;   upvals: _ENV
  ;   locals: self(0-26), sequence(16-25)
  0000  SELF      R2 = R0[K0('GetQuestHelper')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  SELF      R2 = R1[K1('IsAllQuestAcquired')] (self)
  0003  CALL      R1 = call(R1, 1 args, 1 rets)
  0004  TEST      if not R1 then   -> -131066
  0005  JMP       (jump)   -> 25
  0006  GETTABUP  R1 = _ENV[K2('GM')]
  0007  GETTABLE  R1 = R1[K3('UIManager')]
  0008  SELF      R2 = R1[K4('SetEventLock')] (self)
  0009  LOADBOOL  R3 = true
  0010  MOVE      R4 = R0
  0011  CALL      R1 = call(R1, 0 args, 3 rets)
  0012  SETTABLE  R0[K5('m_bLockEventWhenEnd')] = K6(true)
  0013  GETTABUP  R1 = _ENV[K7('DOTween')]
  0014  GETTABLE  R1 = R1[K8('Sequence')]
  0015  CALL      R1 = call(R1, 1 args, 0 rets)
  0016  SELF      R3 = R1[K9('AppendInterval')] (self)
  0017  LOADK     R4 = K10 1.5
  0018  CALL      R2 = call(R2, 0 args, 2 rets)
  0019  SELF      R3 = R1[K11('AppendCallback')] (self)
  0020  CLOSURE   R4 = closure proto0
  0021  CALL      R2 = call(R2, 0 args, 2 rets)
  0022  SELF      R3 = R1[K12('OnKill')] (self)
  0023  CLOSURE   R4 = closure proto1
  0024  CALL      R2 = call(R2, 0 args, 2 rets)
  0025  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 250-253 np=0 va=0 ms=2 code=5 consts=3 upvals=1 protos=0
    ;   K[0]='m_bLockEventWhenEnd'
    ;   K[1]=nil
    ;   K[2]='CloseWhenNotValid'
    ;   upvals: self
    0000  SETTABUP  self[K0('m_bLockEventWhenEnd')] = K1(nil)
    0001  GETUPVAL  R0 = self
    0002  SELF      R1 = R0[K2('CloseWhenNotValid')] (self)
    0003  CALL      R0 = call(R0, 0 args, 1 rets)
    0004  RETURN    return R0..R-1
  ; ---------- proto1 [] ----------
    ; fn ?  line 254-256 np=0 va=0 ms=4 code=7 consts=3 upvals=2 protos=0
    ;   K[0]='GM'
    ;   K[1]='UIManager'
    ;   K[2]='SetEventLock'
    ;   upvals: _ENV, self
    0000  GETTABUP  R0 = _ENV[K0('GM')]
    0001  GETTABLE  R0 = R0[K1('UIManager')]
    0002  SELF      R1 = R0[K2('SetEventLock')] (self)
    0003  LOADBOOL  R2 = false
    0004  GETUPVAL  R3 = _ENV
    0005  CALL      R0 = call(R0, 0 args, 3 rets)
    0006  RETURN    return R0..R-1
; ---------- proto19 [PlayUnlockAnimation] ----------
  ; fn ?  line 262-294 np=1 va=0 ms=12 code=38 consts=17 upvals=1 protos=2
  ;   K[0]='m_contentScrollRect'
  ;   K[1]='StopMovement'
  ;   K[2]='GM'
  ;   K[3]='UIManager'
  ;   K[4]='SetEventLock'
  ;   K[5]='DOTween'
  ;   K[6]='Sequence'
  ;   K[7]='ipairs'
  ;   K[8]='m_arrQuestCell'
  ;   K[9]='PlayUnlockAnimation'
  ;   K[10]=nil
  ;   K[11]='Insert'
  ;   K[12]=0
  ;   K[13]='AppendCallback'
  ;   K[14]='OnKill'
  ;   K[15]='m_unlockSequence'
  ;   K[16]='_UpdateTicket'
  ;   upvals: _ENV
  ;   locals: self(0-38), sequence(12-38), sequenceUnlock(13-38), (for generator)(16-28), (for state)(16-28), (for control)(16-28), _(17-26), cell(17-26)
  0000  GETTABLE  R1 = R0[K0('m_contentScrollRect')]
  0001  SELF      R2 = R1[K1('StopMovement')] (self)
  0002  CALL      R1 = call(R1, 0 args, 1 rets)
  0003  GETTABUP  R1 = _ENV[K2('GM')]
  0004  GETTABLE  R1 = R1[K3('UIManager')]
  0005  SELF      R2 = R1[K4('SetEventLock')] (self)
  0006  LOADBOOL  R3 = true
  0007  MOVE      R4 = R0
  0008  CALL      R1 = call(R1, 0 args, 3 rets)
  0009  GETTABUP  R1 = _ENV[K5('DOTween')]
  0010  GETTABLE  R1 = R1[K6('Sequence')]
  0011  CALL      R1 = call(R1, 1 args, 0 rets)
  0012  LOADNIL   R2..R2 = nil
  0013  GETTABUP  R3 = _ENV[K7('ipairs')]
  0014  GETTABLE  R4 = R0[K8('m_arrQuestCell')]
  0015  CALL      R3 = call(R3, 3 args, 1 rets)
  0016  JMP       (jump)   -> 26
  0017  SELF      R9 = R7[K9('PlayUnlockAnimation')] (self)
  0018  CALL      R8 = call(R8, 1 args, 1 rets)
  0019  MOVE      R2 = R0
  0020  EQ        if R1 eq K10(nil)   -> -129760
  0021  JMP       (jump)   -> 26
  0022  SELF      R9 = R1[K11('Insert')] (self)
  0023  LOADK     R10 = K12 0
  0024  MOVE      R11 = R0
  0025  CALL      R8 = call(R8, 0 args, 3 rets)
  0026  TFORCALL  tforcall R3
  0027  TFORLOOP  tforloop R5(sBx=-11)   -> 17
  0028  SELF      R4 = R1[K13('AppendCallback')] (self)
  0029  CLOSURE   R5 = closure proto0
  0030  CALL      R3 = call(R3, 0 args, 2 rets)
  0031  SELF      R4 = R1[K14('OnKill')] (self)
  0032  CLOSURE   R5 = closure proto1
  0033  CALL      R3 = call(R3, 0 args, 2 rets)
  0034  SETTABLE  R0[K15('m_unlockSequence')] = R1
  0035  SELF      R4 = R0[K16('_UpdateTicket')] (self)
  0036  CALL      R3 = call(R3, 0 args, 1 rets)
  0037  RETURN    return R0..R-1
  ; ---------- proto0 [m_unlockSequence] ----------
    ; fn ?  line 273-287 np=0 va=0 ms=10 code=31 consts=7 upvals=2 protos=0
    ;   K[0]=0
    ;   K[1]='ipairs'
    ;   K[2]='m_arrQuestCell'
    ;   K[3]='GetClaimAnimationLoopTime'
    ;   K[4]='GetClaimLoopLightEffectTime'
    ;   K[5]='TryPlayClaimAnimationLoop'
    ;   K[6]='TryPlayClaimLoopLightEffect'
    ;   upvals: _ENV, self
    ;   locals: animationTime(1-31), effectTime(2-31), (for generator)(5-18), (for state)(5-18), (for control)(5-18), _(6-16), questCell(6-16), (for generator)(21-30), (for state)(21-30), (for control)(21-30), _(22-28), questCell(22-28)
    0000  LOADK     R0 = K0 0
    0001  LOADK     R1 = K0 0
    0002  GETTABUP  R2 = _ENV[K1('ipairs')]
    0003  GETTABUP  R3 = self[K2('m_arrQuestCell')]
    0004  CALL      R2 = call(R2, 3 args, 1 rets)
    0005  JMP       (jump)   -> 16
    0006  SELF      R8 = R6[K3('GetClaimAnimationLoopTime')] (self)
    0007  CALL      R7 = call(R7, 1 args, 1 rets)
    0008  MOVE      R0 = R0
    0009  SELF      R8 = R6[K4('GetClaimLoopLightEffectTime')] (self)
    0010  CALL      R7 = call(R7, 1 args, 1 rets)
    0011  MOVE      R1 = R0
    0012  LT        if R0 lt R0   -> 14
    0013  JMP       (jump)   -> 16
    0014  LT        if R1 lt R1   -> 17
    0015  JMP       (jump)   -> 18
    0016  TFORCALL  tforcall R2
    0017  TFORLOOP  tforloop R4(sBx=-12)   -> 6
    0018  GETTABUP  R2 = _ENV[K1('ipairs')]
    0019  GETTABUP  R3 = self[K2('m_arrQuestCell')]
    0020  CALL      R2 = call(R2, 3 args, 1 rets)
    0021  JMP       (jump)   -> 28
    0022  SELF      R8 = R6[K5('TryPlayClaimAnimationLoop')] (self)
    0023  MOVE      R9 = R0
    0024  CALL      R7 = call(R7, 0 args, 2 rets)
    0025  SELF      R8 = R6[K6('TryPlayClaimLoopLightEffect')] (self)
    0026  MOVE      R9 = R0
    0027  CALL      R7 = call(R7, 0 args, 2 rets)
    0028  TFORCALL  tforcall R2
    0029  TFORLOOP  tforloop R4(sBx=-8)   -> 22
    0030  RETURN    return R0..R-1
  ; ---------- proto1 [m_unlockSequence] ----------
    ; fn ?  line 288-291 np=0 va=0 ms=4 code=8 consts=5 upvals=2 protos=0
    ;   K[0]='GM'
    ;   K[1]='UIManager'
    ;   K[2]='SetEventLock'
    ;   K[3]='m_unlockSequence'
    ;   K[4]=nil
    ;   upvals: _ENV, self
    0000  GETTABUP  R0 = _ENV[K0('GM')]
    0001  GETTABLE  R0 = R0[K1('UIManager')]
    0002  SELF      R1 = R0[K2('SetEventLock')] (self)
    0003  LOADBOOL  R2 = false
    0004  GETUPVAL  R3 = _ENV
    0005  CALL      R0 = call(R0, 0 args, 3 rets)
    0006  SETTABUP  self[K3('m_unlockSequence')] = K4(nil)
    0007  RETURN    return R0..R-1
; ---------- proto20 [GetOpenInterval] ----------
  ; fn ?  line 300-302 np=1 va=0 ms=2 code=3 consts=1 upvals=0 protos=0
  ;   K[0]=0.5
  ;   locals: self(0-3)
  0000  LOADK     R1 = K0 0.5
  0001  RETURN    return R1..R0
  0002  RETURN    return R0..R-1
; ---------- proto21 [IsScrollAnimationPlaying] ----------
  ; fn ?  line 304-306 np=1 va=0 ms=2 code=7 consts=2 upvals=0 protos=0
  ;   K[0]='m_scrollSequence'
  ;   K[1]=nil
  ;   locals: self(0-7)
  0000  GETTABLE  R1 = R0[K0('m_scrollSequence')]
  0001  EQ        if R0 eq K1(nil)   -> -130300
  0002  JMP       (jump)   -> 4
  0003  LOADBOOL  R1 = false
  0004  LOADBOOL  R1 = true
  0005  RETURN    return R1..R0
  0006  RETURN    return R0..R-1
; ---------- proto22 [_PlayScrollAnimation] ----------
  ; fn ?  line 308-335 np=1 va=0 ms=11 code=47 consts=22 upvals=1 protos=1
  ;   K[0]='LayoutRebuilder'
  ;   K[1]='ForceRebuildLayoutImmediate'
  ;   K[2]='m_contentRoot'
  ;   K[3]='_GetVerticalNormalizedPositionByProgress'
  ;   K[4]='m_lastProgress'
  ;   K[5]='m_currentProgress'
  ;   K[6]='m_contentScrollRect'
  ;   K[7]='verticalNormalizedPosition'
  ;   K[8]='GM'
  ;   K[9]='UIManager'
  ;   K[10]='SetEventLock'
  ;   K[11]='DOTween'
  ;   K[12]='Sequence'
  ;   K[13]='AppendInterval'
  ;   K[14]='GetOpenInterval'
  ;   K[15]='math'
  ;   K[16]='abs'
  ;   K[17]=5
  ;   K[18]='Append'
  ;   K[19]='DOVerticalNormalizedPos'
  ;   K[20]='OnKill'
  ;   K[21]='m_scrollSequence'
  ;   upvals: _ENV
  ;   locals: self(0-47), lastVerticalNormalizedPosition(7-47), currentVerticalNormalizedPosition(10-47), sequence(23-43), duration(32-43)
  0000  GETTABUP  R1 = _ENV[K0('LayoutRebuilder')]
  0001  GETTABLE  R1 = R1[K1('ForceRebuildLayoutImmediate')]
  0002  GETTABLE  R2 = R0[K2('m_contentRoot')]
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  SELF      R2 = R0[K3('_GetVerticalNormalizedPositionByProgress')] (self)
  0005  GETTABLE  R3 = R0[K4('m_lastProgress')]
  0006  CALL      R1 = call(R1, 1 args, 2 rets)
  0007  SELF      R3 = R0[K3('_GetVerticalNormalizedPositionByProgress')] (self)
  0008  GETTABLE  R4 = R0[K5('m_currentProgress')]
  0009  CALL      R2 = call(R2, 1 args, 2 rets)
  0010  LT        if R0 lt R1   -> -130035
  0011  JMP       (jump)   -> 44
  0012  GETTABLE  R3 = R0[K6('m_contentScrollRect')]
  0013  SETTABLE  R3[K7('verticalNormalizedPosition')] = R1
  0014  GETTABUP  R3 = _ENV[K8('GM')]
  0015  GETTABLE  R3 = R3[K9('UIManager')]
  0016  SELF      R4 = R3[K10('SetEventLock')] (self)
  0017  LOADBOOL  R5 = true
  0018  MOVE      R6 = R0
  0019  CALL      R3 = call(R3, 0 args, 3 rets)
  0020  GETTABUP  R3 = _ENV[K11('DOTween')]
  0021  GETTABLE  R3 = R3[K12('Sequence')]
  0022  CALL      R3 = call(R3, 1 args, 0 rets)
  0023  SELF      R5 = R3[K13('AppendInterval')] (self)
  0024  SELF      R7 = R0[K14('GetOpenInterval')] (self)
  0025  CALL      R6 = call(R6, -1 args, 1 rets)
  0026  CALL      R4 = call(R4, 0 args, -1 rets)
  0027  GETTABUP  R4 = _ENV[K15('math')]
  0028  GETTABLE  R4 = R4[K16('abs')]
  0029  SUB       R5 = R1 sub R2
  0030  CALL      R4 = call(R4, 1 args, 1 rets)
  0031  MUL       R4 = K17(5) mul R4
  0032  SELF      R6 = R3[K18('Append')] (self)
  0033  GETTABLE  R7 = R0[K6('m_contentScrollRect')]
  0034  SELF      R8 = R7[K19('DOVerticalNormalizedPos')] (self)
  0035  MOVE      R9 = R0
  0036  MOVE      R10 = R0
  0037  CALL      R7 = call(R7, -1 args, 3 rets)
  0038  CALL      R5 = call(R5, 0 args, -1 rets)
  0039  SELF      R6 = R3[K20('OnKill')] (self)
  0040  CLOSURE   R7 = closure proto0
  0041  CALL      R5 = call(R5, 0 args, 2 rets)
  0042  SETTABLE  R0[K21('m_scrollSequence')] = R3
  0043  JMP       (jump)   -> 46
  0044  GETTABLE  R3 = R0[K6('m_contentScrollRect')]
  0045  SETTABLE  R3[K7('verticalNormalizedPosition')] = R2
  0046  RETURN    return R0..R-1
  ; ---------- proto0 [m_scrollSequence] ----------
    ; fn ?  line 325-328 np=0 va=0 ms=4 code=8 consts=5 upvals=2 protos=0
    ;   K[0]='GM'
    ;   K[1]='UIManager'
    ;   K[2]='SetEventLock'
    ;   K[3]='m_scrollSequence'
    ;   K[4]=nil
    ;   upvals: _ENV, self
    0000  GETTABUP  R0 = _ENV[K0('GM')]
    0001  GETTABLE  R0 = R0[K1('UIManager')]
    0002  SELF      R1 = R0[K2('SetEventLock')] (self)
    0003  LOADBOOL  R2 = false
    0004  GETUPVAL  R3 = _ENV
    0005  CALL      R0 = call(R0, 0 args, 3 rets)
    0006  SETTABUP  self[K3('m_scrollSequence')] = K4(nil)
    0007  RETURN    return R0..R-1
; ---------- proto23 [_PlayProgressAnimation] ----------
  ; fn ?  line 337-365 np=1 va=0 ms=13 code=39 consts=16 upvals=1 protos=2
  ;   K[0]='DOTween'
  ;   K[1]='Sequence'
  ;   K[2]='Duration'
  ;   K[3]='ipairs'
  ;   K[4]='m_arrQuestCell'
  ;   K[5]='PlaySliderAnimation'
  ;   K[6]=nil
  ;   K[7]='Insert'
  ;   K[8]=0
  ;   K[9]='AppendCallback'
  ;   K[10]='m_bProgressChanged'
  ;   K[11]='GM'
  ;   K[12]='UIManager'
  ;   K[13]='SetEventLock'
  ;   K[14]='OnKill'
  ;   K[15]='m_progressSequence'
  ;   upvals: _ENV
  ;   locals: self(0-39), sequence(3-39), sequenceSlider(4-39), time(6-39), (for generator)(9-21), (for state)(9-21), (for control)(9-21), _(10-19), questCell(10-19)
  0000  GETTABUP  R1 = _ENV[K0('DOTween')]
  0001  GETTABLE  R1 = R1[K1('Sequence')]
  0002  CALL      R1 = call(R1, 1 args, 0 rets)
  0003  LOADNIL   R2..R2 = nil
  0004  SELF      R4 = R1[K2('Duration')] (self)
  0005  CALL      R3 = call(R3, 1 args, 1 rets)
  0006  GETTABUP  R4 = _ENV[K3('ipairs')]
  0007  GETTABLE  R5 = R0[K4('m_arrQuestCell')]
  0008  CALL      R4 = call(R4, 3 args, 1 rets)
  0009  JMP       (jump)   -> 19
  0010  SELF      R10 = R8[K5('PlaySliderAnimation')] (self)
  0011  CALL      R9 = call(R9, 1 args, 1 rets)
  0012  MOVE      R2 = R0
  0013  EQ        if R1 eq K6(nil)   -> -129771
  0014  JMP       (jump)   -> 19
  0015  SELF      R10 = R1[K7('Insert')] (self)
  0016  LOADK     R11 = K8 0
  0017  MOVE      R12 = R0
  0018  CALL      R9 = call(R9, 0 args, 3 rets)
  0019  TFORCALL  tforcall R4
  0020  TFORLOOP  tforloop R6(sBx=-11)   -> 10
  0021  SELF      R5 = R1[K9('AppendCallback')] (self)
  0022  CLOSURE   R6 = closure proto0
  0023  CALL      R4 = call(R4, 0 args, 2 rets)
  0024  GETTABLE  R4 = R0[K10('m_bProgressChanged')]
  0025  TEST      if not R4 then   -> -131044
  0026  JMP       (jump)   -> 28
  0027  RETURN    return R0..R-1
  0028  GETTABUP  R4 = _ENV[K11('GM')]
  0029  GETTABLE  R4 = R4[K12('UIManager')]
  0030  SELF      R5 = R4[K13('SetEventLock')] (self)
  0031  LOADBOOL  R6 = true
  0032  MOVE      R7 = R0
  0033  CALL      R4 = call(R4, 0 args, 3 rets)
  0034  SELF      R5 = R1[K14('OnKill')] (self)
  0035  CLOSURE   R6 = closure proto1
  0036  CALL      R4 = call(R4, 0 args, 2 rets)
  0037  SETTABLE  R0[K15('m_progressSequence')] = R1
  0038  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 348-353 np=0 va=0 ms=7 code=11 consts=4 upvals=2 protos=0
    ;   K[0]='ipairs'
    ;   K[1]='m_arrQuestCell'
    ;   K[2]='TryPlayClaimAnimationLoop'
    ;   K[3]='TryPlayClaimLoopLightEffect'
    ;   upvals: _ENV, self
    ;   locals: (for generator)(3-10), (for state)(3-10), (for control)(3-10), _(4-8), questCell(4-8)
    0000  GETTABUP  R0 = _ENV[K0('ipairs')]
    0001  GETTABUP  R1 = self[K1('m_arrQuestCell')]
    0002  CALL      R0 = call(R0, 3 args, 1 rets)
    0003  JMP       (jump)   -> 8
    0004  SELF      R6 = R4[K2('TryPlayClaimAnimationLoop')] (self)
    0005  CALL      R5 = call(R5, 0 args, 1 rets)
    0006  SELF      R6 = R4[K3('TryPlayClaimLoopLightEffect')] (self)
    0007  CALL      R5 = call(R5, 0 args, 1 rets)
    0008  TFORCALL  tforcall R0
    0009  TFORLOOP  tforloop R2(sBx=-6)   -> 4
    0010  RETURN    return R0..R-1
  ; ---------- proto1 [m_progressSequence] ----------
    ; fn ?  line 359-362 np=0 va=0 ms=4 code=8 consts=5 upvals=2 protos=0
    ;   K[0]='GM'
    ;   K[1]='UIManager'
    ;   K[2]='SetEventLock'
    ;   K[3]='m_progressSequence'
    ;   K[4]=nil
    ;   upvals: _ENV, self
    0000  GETTABUP  R0 = _ENV[K0('GM')]
    0001  GETTABLE  R0 = R0[K1('UIManager')]
    0002  SELF      R1 = R0[K2('SetEventLock')] (self)
    0003  LOADBOOL  R2 = false
    0004  GETUPVAL  R3 = _ENV
    0005  CALL      R0 = call(R0, 0 args, 3 rets)
    0006  SETTABUP  self[K3('m_progressSequence')] = K4(nil)
    0007  RETURN    return R0..R-1
; ---------- proto24 [_GetVerticalNormalizedPositionByProgress] ----------
  ; fn ?  line 368-403 np=2 va=0 ms=16 code=109 consts=27 upvals=1 protos=0
  ;   K[0]='GetModel'
  ;   K[1]='ipairs'
  ;   K[2]='m_arrQuestCell'
  ;   K[3]='GetQuestEntity'
  ;   K[4]='GetQuestType'
  ;   K[5]=0
  ;   K[6]='IsCompletedByScore'
  ;   K[7]='CanAcquireReward'
  ;   K[8]='HasTicket'
  ;   K[9]='HasPaidRewards'
  ;   K[10]='CanAcquirePaidReward'
  ;   K[11]=nil
  ;   K[12]='m_contentScrollRect'
  ;   K[13]='content'
  ;   K[14]='rect'
  ;   K[15]='height'
  ;   K[16]='viewport'
  ;   K[17]='m_contentVerticalLayoutGroup'
  ;   K[18]='padding'
  ;   K[19]='top'
  ;   K[20]='bottom'
  ;   K[21]=1
  ;   K[22]='transform'
  ;   K[23]=2
  ;   K[24]='math'
  ;   K[25]='max'
  ;   K[26]='min'
  ;   upvals: _ENV
  ;   locals: self(0-109), mapCurrentScore(0-109), model(2-109), targetIndex(3-109), targetCell(3-109), questEntity(3-109), score(3-109), (for generator)(6-46), (for state)(6-46), (for control)(6-46), index(7-44), questCell(7-44), totalHeight(59-109), viewportHeightWithoutPadding(71-109), height(72-109), cellHeight(73-109), (for index)(76-84), (for limit)(76-84), (for step)(76-84), index(77-83)
  0000  SELF      R3 = R0[K0('GetModel')] (self)
  0001  CALL      R2 = call(R2, 1 args, 1 rets)
  0002  LOADNIL   R3..R3 = nil
  0003  GETTABUP  R7 = _ENV[K1('ipairs')]
  0004  GETTABLE  R8 = R0[K2('m_arrQuestCell')]
  0005  CALL      R7 = call(R7, 3 args, 1 rets)
  0006  JMP       (jump)   -> 44
  0007  SELF      R13 = R11[K3('GetQuestEntity')] (self)
  0008  CALL      R12 = call(R12, 1 args, 1 rets)
  0009  MOVE      R5 = R0
  0010  SELF      R13 = R5[K4('GetQuestType')] (self)
  0011  CALL      R12 = call(R12, 1 args, 1 rets)
  0012  GETTABLE  R12 = R1[R12]
  0013  TESTSET   if R1 then R6   -> -124912
  0014  JMP       (jump)   -> 16
  0015  LOADK     R6 = K5 0
  0016  SELF      R13 = R5[K6('IsCompletedByScore')] (self)
  0017  MOVE      R14 = R0
  0018  CALL      R12 = call(R12, 1 args, 2 rets)
  0019  TEST      if not R12 then   -> -131050
  0020  JMP       (jump)   -> 25
  0021  MOVE      R12 = R0
  0022  MOVE      R4 = R0
  0023  MOVE      R3 = R0
  0024  JMP       (jump)   -> 46
  0025  SELF      R13 = R5[K7('CanAcquireReward')] (self)
  0026  CALL      R12 = call(R12, 1 args, 1 rets)
  0027  TEST      if not R12 then   -> -131042
  0028  JMP       (jump)   -> 41
  0029  SELF      R13 = R2[K8('HasTicket')] (self)
  0030  CALL      R12 = call(R12, 1 args, 1 rets)
  0031  TEST      if not R12 then   -> -131039
  0032  JMP       (jump)   -> 44
  0033  SELF      R13 = R5[K9('HasPaidRewards')] (self)
  0034  CALL      R12 = call(R12, 1 args, 1 rets)
  0035  TEST      if not R12 then   -> -131035
  0036  JMP       (jump)   -> 44
  0037  SELF      R13 = R5[K10('CanAcquirePaidReward')] (self)
  0038  CALL      R12 = call(R12, 1 args, 1 rets)
  0039  TEST      if not R12 then   -> -131031
  0040  JMP       (jump)   -> 44
  0041  MOVE      R12 = R0
  0042  MOVE      R4 = R0
  0043  MOVE      R3 = R0
  0044  TFORCALL  tforcall R7
  0045  TFORLOOP  tforloop R9(sBx=-39)   -> 7
  0046  EQ        if R0 eq K11(nil)   -> -128709
  0047  JMP       (jump)   -> 50
  0048  LOADK     R7 = K5 0
  0049  RETURN    return R7..R6
  0050  GETTABLE  R7 = R0[K12('m_contentScrollRect')]
  0051  GETTABLE  R7 = R7[K13('content')]
  0052  GETTABLE  R7 = R7[K14('rect')]
  0053  GETTABLE  R7 = R7[K15('height')]
  0054  GETTABLE  R8 = R0[K12('m_contentScrollRect')]
  0055  GETTABLE  R8 = R8[K16('viewport')]
  0056  GETTABLE  R8 = R8[K14('rect')]
  0057  GETTABLE  R8 = R8[K15('height')]
  0058  SUB       R7 = R8 sub R7
  0059  GETTABLE  R8 = R0[K12('m_contentScrollRect')]
  0060  GETTABLE  R8 = R8[K16('viewport')]
  0061  GETTABLE  R8 = R8[K14('rect')]
  0062  GETTABLE  R8 = R8[K15('height')]
  0063  GETTABLE  R9 = R0[K17('m_contentVerticalLayoutGroup')]
  0064  GETTABLE  R9 = R9[K18('padding')]
  0065  GETTABLE  R9 = R9[K19('top')]
  0066  SUB       R8 = R9 sub R8
  0067  GETTABLE  R9 = R0[K17('m_contentVerticalLayoutGroup')]
  0068  GETTABLE  R9 = R9[K18('padding')]
  0069  GETTABLE  R9 = R9[K20('bottom')]
  0070  SUB       R8 = R9 sub R8
  0071  LOADK     R9 = K5 0
  0072  LOADNIL   R10..R10 = nil
  0073  LOADK     R11 = K21 1
  0074  SUB       R12 = K21(1) sub R3
  0075  LOADK     R13 = K21 1
  0076  FORPREP   forprep R11(sBx=6)   -> 83
  0077  GETTABLE  R15 = R0[K2('m_arrQuestCell')]
  0078  GETTABLE  R15 = R15[R14]
  0079  GETTABLE  R15 = R15[K22('transform')]
  0080  GETTABLE  R15 = R15[K14('rect')]
  0081  GETTABLE  R15 = R15[K15('height')]
  0082  ADD       R9 = R15 add R9
  0083  FORLOOP   forloop R11(sBx=-7)   -> 77
  0084  GETTABLE  R11 = R0[K17('m_contentVerticalLayoutGroup')]
  0085  GETTABLE  R11 = R11[K18('padding')]
  0086  GETTABLE  R11 = R11[K19('top')]
  0087  SUB       R11 = R11 sub R9
  0088  DIV       R12 = K23(2) div R8
  0089  SUB       R11 = R12 sub R11
  0090  GETTABLE  R12 = R0[K2('m_arrQuestCell')]
  0091  GETTABLE  R12 = R12[R3]
  0092  GETTABLE  R12 = R12[K22('transform')]
  0093  GETTABLE  R12 = R12[K14('rect')]
  0094  GETTABLE  R12 = R12[K15('height')]
  0095  DIV       R12 = K23(2) div R12
  0096  ADD       R9 = R12 add R11
  0097  GETTABUP  R11 = _ENV[K24('math')]
  0098  GETTABLE  R11 = R11[K25('max')]
  0099  LOADK     R12 = K5 0
  0100  GETTABUP  R13 = _ENV[K24('math')]
  0101  GETTABLE  R13 = R13[K26('min')]
  0102  LOADK     R14 = K21 1
  0103  DIV       R15 = R7 div R9
  0104  SUB       R15 = R15 sub K21(1)
  0105  CALL      R13 = call(R13, -1 args, 2 rets)
  0106  TAILCALL  tailcall(R11, 0)
  0107  RETURN    return R11..R10
  0108  RETURN    return R0..R-1
; ---------- proto25 [_OnClickFinishAllTasks] ----------
  ; fn ?  line 409-420 np=1 va=0 ms=8 code=20 consts=8 upvals=1 protos=0
  ;   K[0]='GameConfig'
  ;   K[1]='IsTestMode'
  ;   K[2]='ipairs'
  ;   K[3]='m_arrQuestEntity'
  ;   K[4]='TestFinishQuest'
  ;   K[5]='Close'
  ;   K[6]='m_model'
  ;   K[7]='OpenMainWindow'
  ;   upvals: _ENV
  ;   locals: self(0-20), (for generator)(9-14), (for state)(9-14), (for control)(9-14), _(10-12), entity(10-12)
  0000  GETTABUP  R1 = _ENV[K0('GameConfig')]
  0001  GETTABLE  R1 = R1[K1('IsTestMode')]
  0002  CALL      R1 = call(R1, 1 args, 0 rets)
  0003  TEST      if not R1 then   -> -131066
  0004  JMP       (jump)   -> 6
  0005  RETURN    return R0..R-1
  0006  GETTABUP  R1 = _ENV[K2('ipairs')]
  0007  GETTABLE  R2 = R0[K3('m_arrQuestEntity')]
  0008  CALL      R1 = call(R1, 3 args, 1 rets)
  0009  JMP       (jump)   -> 12
  0010  SELF      R7 = R5[K4('TestFinishQuest')] (self)
  0011  CALL      R6 = call(R6, 0 args, 1 rets)
  0012  TFORCALL  tforcall R1
  0013  TFORLOOP  tforloop R3(sBx=-4)   -> 10
  0014  SELF      R2 = R0[K5('Close')] (self)
  0015  CALL      R1 = call(R1, 0 args, 1 rets)
  0016  GETTABLE  R1 = R0[K6('m_model')]
  0017  SELF      R2 = R1[K7('OpenMainWindow')] (self)
  0018  CALL      R1 = call(R1, 0 args, 1 rets)
  0019  RETURN    return R0..R-1
; ---------- proto26 [_OnClickClaimAllRewards] ----------
  ; fn ?  line 422-434 np=1 va=0 ms=9 code=30 consts=10 upvals=1 protos=0
  ;   K[0]='GameConfig'
  ;   K[1]='IsTestMode'
  ;   K[2]='ipairs'
  ;   K[3]='m_arrQuestEntity'
  ;   K[4]='m_model'
  ;   K[5]='GetQuestHelper'
  ;   K[6]='TryAcquireReward'
  ;   K[7]='TryAcquirePaidReward'
  ;   K[8]='Close'
  ;   K[9]='OpenMainWindow'
  ;   upvals: _ENV
  ;   locals: self(0-30), (for generator)(9-24), (for state)(9-24), (for control)(9-24), _(10-22), entity(10-22)
  0000  GETTABUP  R1 = _ENV[K0('GameConfig')]
  0001  GETTABLE  R1 = R1[K1('IsTestMode')]
  0002  CALL      R1 = call(R1, 1 args, 0 rets)
  0003  TEST      if not R1 then   -> -131066
  0004  JMP       (jump)   -> 6
  0005  RETURN    return R0..R-1
  0006  GETTABUP  R1 = _ENV[K2('ipairs')]
  0007  GETTABLE  R2 = R0[K3('m_arrQuestEntity')]
  0008  CALL      R1 = call(R1, 3 args, 1 rets)
  0009  JMP       (jump)   -> 22
  0010  GETTABLE  R6 = R0[K4('m_model')]
  0011  SELF      R7 = R6[K5('GetQuestHelper')] (self)
  0012  CALL      R6 = call(R6, 1 args, 1 rets)
  0013  SELF      R7 = R6[K6('TryAcquireReward')] (self)
  0014  MOVE      R8 = R0
  0015  CALL      R6 = call(R6, 0 args, 2 rets)
  0016  GETTABLE  R6 = R0[K4('m_model')]
  0017  SELF      R7 = R6[K5('GetQuestHelper')] (self)
  0018  CALL      R6 = call(R6, 1 args, 1 rets)
  0019  SELF      R7 = R6[K7('TryAcquirePaidReward')] (self)
  0020  MOVE      R8 = R0
  0021  CALL      R6 = call(R6, 0 args, 2 rets)
  0022  TFORCALL  tforcall R1
  0023  TFORLOOP  tforloop R3(sBx=-14)   -> 10
  0024  SELF      R2 = R0[K8('Close')] (self)
  0025  CALL      R1 = call(R1, 0 args, 1 rets)
  0026  GETTABLE  R1 = R0[K4('m_model')]
  0027  SELF      R2 = R1[K9('OpenMainWindow')] (self)
  0028  CALL      R1 = call(R1, 0 args, 1 rets)
  0029  RETURN    return R0..R-1
