# UI_Window_Rate_RateWindow_637.luac
; fn @RateWindow.lua  line 0-0 np=0 va=1 ms=4 code=41 consts=16 upvals=1 protos=8
;   K[0]='RateWindow'
;   K[1]='setmetatable'
;   K[2]='disableEffectWhenCloseView'
;   K[3]=true
;   K[4]='BaseWindow'
;   K[5]='__index'
;   K[6]=5
;   K[7]='Init'
;   K[8]='OnDestroy'
;   K[9]='OnConfirmBtnClicked'
;   K[10]='OnStarClicked'
;   K[11]='OnCloseView'
;   K[12]='RateStarCell'
;   K[13]='Init'
;   K[14]='UpdateContent'
;   K[15]='OnClicked'
;   upvals: _ENV
;   locals: RATE_STAR_COUNT(10-41), HAPPY_STAR_COUNT(11-41)
0000  GETTABUP  R0 = _ENV[K1('setmetatable')]
0001  NEWTABLE  R1 = {} (0 items)
0002  SETTABLE  R1[K2('disableEffectWhenCloseView')] = K3(true)
0003  GETTABUP  R2 = _ENV[K4('BaseWindow')]
0004  CALL      R0 = call(R0, 1 args, 2 rets)
0005  SETTABUP  _ENV[K0('RateWindow')] = R0
0006  GETTABUP  R0 = _ENV[K0('RateWindow')]
0007  GETTABUP  R1 = _ENV[K0('RateWindow')]
0008  SETTABLE  R0[K5('__index')] = R1
0009  LOADK     R0 = K6 5
0010  LOADK     R1 = K6 5
0011  GETTABUP  R2 = _ENV[K0('RateWindow')]
0012  CLOSURE   R3 = closure proto0
0013  SETTABLE  R2[K7('Init')] = R3
0014  GETTABUP  R2 = _ENV[K0('RateWindow')]
0015  CLOSURE   R3 = closure proto1
0016  SETTABLE  R2[K8('OnDestroy')] = R3
0017  GETTABUP  R2 = _ENV[K0('RateWindow')]
0018  CLOSURE   R3 = closure proto2
0019  SETTABLE  R2[K9('OnConfirmBtnClicked')] = R3
0020  GETTABUP  R2 = _ENV[K0('RateWindow')]
0021  CLOSURE   R3 = closure proto3
0022  SETTABLE  R2[K10('OnStarClicked')] = R3
0023  GETTABUP  R2 = _ENV[K0('RateWindow')]
0024  CLOSURE   R3 = closure proto4
0025  SETTABLE  R2[K11('OnCloseView')] = R3
0026  NEWTABLE  R2 = {} (0 items)
0027  SETTABUP  _ENV[K12('RateStarCell')] = R2
0028  GETTABUP  R2 = _ENV[K12('RateStarCell')]
0029  GETTABUP  R3 = _ENV[K12('RateStarCell')]
0030  SETTABLE  R2[K5('__index')] = R3
0031  GETTABUP  R2 = _ENV[K12('RateStarCell')]
0032  CLOSURE   R3 = closure proto5
0033  SETTABLE  R2[K13('Init')] = R3
0034  GETTABUP  R2 = _ENV[K12('RateStarCell')]
0035  CLOSURE   R3 = closure proto6
0036  SETTABLE  R2[K14('UpdateContent')] = R3
0037  GETTABUP  R2 = _ENV[K12('RateStarCell')]
0038  CLOSURE   R3 = closure proto7
0039  SETTABLE  R2[K15('OnClicked')] = R3
0040  RETURN    return R0..R-1
; ---------- proto0 [Init] ----------
  ; fn ?  line 9-25 np=1 va=0 ms=9 code=47 consts=18 upvals=2 protos=0
  ;   K[0]='GM'
  ;   K[1]='RateModel'
  ;   K[2]='OnWindowPopup'
  ;   K[3]='m_spine'
  ;   K[4]='Init'
  ;   K[5]='m_lightSpine'
  ;   K[6]='m_lightEffectGo'
  ;   K[7]='SetActive'
  ;   K[8]='m_star'
  ;   K[9]=1
  ;   K[10]='m_confirmButton'
  ;   K[11]='SetUIEnabled'
  ;   K[12]='LogWindowAction'
  ;   K[13]='EBIType'
  ;   K[14]='UIActionType'
  ;   K[15]='Open'
  ;   K[16]='EBIReferType'
  ;   K[17]='AutoPopup'
  ;   upvals: _ENV, RATE_STAR_COUNT
  ;   locals: self(0-47), (for index)(19-33), (for limit)(19-33), (for step)(19-33), i(20-32)
  0000  GETTABUP  R1 = _ENV[K0('GM')]
  0001  GETTABLE  R1 = R1[K1('RateModel')]
  0002  SELF      R2 = R1[K2('OnWindowPopup')] (self)
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  GETTABLE  R1 = R0[K3('m_spine')]
  0005  SELF      R2 = R1[K4('Init')] (self)
  0006  CALL      R1 = call(R1, 0 args, 1 rets)
  0007  GETTABLE  R1 = R0[K5('m_lightSpine')]
  0008  SELF      R2 = R1[K4('Init')] (self)
  0009  CALL      R1 = call(R1, 0 args, 1 rets)
  0010  GETTABLE  R1 = R0[K6('m_lightEffectGo')]
  0011  SELF      R2 = R1[K7('SetActive')] (self)
  0012  LOADBOOL  R3 = false
  0013  CALL      R1 = call(R1, 0 args, 2 rets)
  0014  NEWTABLE  R1 = {} (0 items)
  0015  SETTABLE  R0[K8('m_star')] = R1
  0016  LOADK     R1 = K9 1
  0017  GETUPVAL  R2 = _ENV
  0018  LOADK     R3 = K9 1
  0019  FORPREP   forprep R1(sBx=12)   -> 32
  0020  GETTABLE  R5 = R0[K8('m_star')]
  0021  LOADK     R6 = K8 'm_star'
  0022  MOVE      R7 = R0
  0023  CONCAT    R6 = concat(R6..R6)
  0024  GETTABLE  R6 = R0[R6]
  0025  SETTABLE  R5[R4] = R6
  0026  GETTABLE  R5 = R0[K8('m_star')]
  0027  GETTABLE  R5 = R5[R4]
  0028  SELF      R6 = R5[K4('Init')] (self)
  0029  MOVE      R7 = R0
  0030  MOVE      R8 = R0
  0031  CALL      R5 = call(R5, 0 args, 3 rets)
  0032  FORLOOP   forloop R1(sBx=-13)   -> 20
  0033  GETTABLE  R1 = R0[K10('m_confirmButton')]
  0034  SELF      R2 = R1[K11('SetUIEnabled')] (self)
  0035  LOADBOOL  R3 = false
  0036  CALL      R1 = call(R1, 0 args, 2 rets)
  0037  SELF      R2 = R0[K12('LogWindowAction')] (self)
  0038  GETTABUP  R3 = _ENV[K13('EBIType')]
  0039  GETTABLE  R3 = R3[K14('UIActionType')]
  0040  GETTABLE  R3 = R3[K15('Open')]
  0041  NEWTABLE  R4 = {} (1 items)
  0042  GETTABUP  R5 = _ENV[K16('EBIReferType')]
  0043  GETTABLE  R5 = R5[K17('AutoPopup')]
  0044  SETLIST   setlist R4[B=1,C=1]
  0045  CALL      R1 = call(R1, 0 args, 3 rets)
  0046  RETURN    return R0..R-1
; ---------- proto1 [OnDestroy] ----------
  ; fn ?  line 27-29 np=1 va=0 ms=3 code=5 consts=2 upvals=1 protos=0
  ;   K[0]='Scheduler'
  ;   K[1]='UnscheduleTarget'
  ;   upvals: _ENV
  ;   locals: self(0-5)
  0000  GETTABUP  R1 = _ENV[K0('Scheduler')]
  0001  GETTABLE  R1 = R1[K1('UnscheduleTarget')]
  0002  MOVE      R2 = R0
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  RETURN    return R0..R-1
; ---------- proto2 [OnConfirmBtnClicked] ----------
  ; fn ?  line 31-47 np=1 va=0 ms=6 code=51 consts=20 upvals=2 protos=0
  ;   K[0]='m_curStarCount'
  ;   K[1]='GM'
  ;   K[2]='UIManager'
  ;   K[3]='ShowPromptWithKey'
  ;   K[4]='rate_us_tips'
  ;   K[5]='BIManager'
  ;   K[6]='LogAction'
  ;   K[7]='EBIType'
  ;   K[8]='RateConfirm'
  ;   K[9]='tostring'
  ;   K[10]='RateModel'
  ;   K[11]='FinishRate'
  ;   K[12]='CSPlatform'
  ;   K[13]='OpenURL'
  ;   K[14]='GetRateLink'
  ;   K[15]='WhetherJumpToCustomerCenterWhenGiveBadReview'
  ;   K[16]='SDKHelper'
  ;   K[17]='OpenCustomerCenter'
  ;   K[18]='SetConfigTriggered'
  ;   K[19]='Close'
  ;   upvals: _ENV, HAPPY_STAR_COUNT
  ;   locals: self(0-51)
  0000  GETTABLE  R1 = R0[K0('m_curStarCount')]
  0001  TEST      if not R1 then   -> -131068
  0002  JMP       (jump)   -> 9
  0003  GETTABUP  R1 = _ENV[K1('GM')]
  0004  GETTABLE  R1 = R1[K2('UIManager')]
  0005  SELF      R2 = R1[K3('ShowPromptWithKey')] (self)
  0006  LOADK     R3 = K4 'rate_us_tips'
  0007  CALL      R1 = call(R1, 0 args, 2 rets)
  0008  RETURN    return R0..R-1
  0009  GETTABUP  R1 = _ENV[K1('GM')]
  0010  GETTABLE  R1 = R1[K5('BIManager')]
  0011  SELF      R2 = R1[K6('LogAction')] (self)
  0012  GETTABUP  R3 = _ENV[K7('EBIType')]
  0013  GETTABLE  R3 = R3[K8('RateConfirm')]
  0014  GETTABUP  R4 = _ENV[K9('tostring')]
  0015  GETTABLE  R5 = R0[K0('m_curStarCount')]
  0016  CALL      R4 = call(R4, -1 args, 1 rets)
  0017  CALL      R1 = call(R1, 0 args, -1 rets)
  0018  GETTABLE  R1 = R0[K0('m_curStarCount')]
  0019  GETUPVAL  R2 = _ENV
  0020  LE        if R0 le R1   -> -130025
  0021  JMP       (jump)   -> 34
  0022  GETTABUP  R1 = _ENV[K1('GM')]
  0023  GETTABLE  R1 = R1[K10('RateModel')]
  0024  SELF      R2 = R1[K11('FinishRate')] (self)
  0025  CALL      R1 = call(R1, 0 args, 1 rets)
  0026  GETTABUP  R1 = _ENV[K12('CSPlatform')]
  0027  SELF      R2 = R1[K13('OpenURL')] (self)
  0028  GETTABUP  R3 = _ENV[K1('GM')]
  0029  GETTABLE  R3 = R3[K10('RateModel')]
  0030  SELF      R4 = R3[K14('GetRateLink')] (self)
  0031  CALL      R3 = call(R3, -1 args, 1 rets)
  0032  CALL      R1 = call(R1, 0 args, -1 rets)
  0033  JMP       (jump)   -> 44
  0034  GETTABUP  R1 = _ENV[K1('GM')]
  0035  GETTABLE  R1 = R1[K10('RateModel')]
  0036  SELF      R2 = R1[K15('WhetherJumpToCustomerCenterWhenGiveBadReview')] (self)
  0037  CALL      R1 = call(R1, 1 args, 1 rets)
  0038  TEST      if not R1 then   -> -131032
  0039  JMP       (jump)   -> 44
  0040  GETTABUP  R1 = _ENV[K1('GM')]
  0041  GETTABLE  R1 = R1[K16('SDKHelper')]
  0042  SELF      R2 = R1[K17('OpenCustomerCenter')] (self)
  0043  CALL      R1 = call(R1, 0 args, 1 rets)
  0044  GETTABUP  R1 = _ENV[K1('GM')]
  0045  GETTABLE  R1 = R1[K10('RateModel')]
  0046  SELF      R2 = R1[K18('SetConfigTriggered')] (self)
  0047  CALL      R1 = call(R1, 0 args, 1 rets)
  0048  SELF      R2 = R0[K19('Close')] (self)
  0049  CALL      R1 = call(R1, 0 args, 1 rets)
  0050  RETURN    return R0..R-1
; ---------- proto3 [OnStarClicked] ----------
  ; fn ?  line 49-70 np=2 va=0 ms=9 code=59 consts=16 upvals=3 protos=2
  ;   K[0]=1
  ;   K[1]='m_star'
  ;   K[2]='UpdateContent'
  ;   K[3]='m_curStarCount'
  ;   K[4]='m_confirmButton'
  ;   K[5]='SetUIEnabled'
  ;   K[6]=nil
  ;   K[7]='m_bHappy'
  ;   K[8]=true
  ;   K[9]='m_spine'
  ;   K[10]='SetAnimation'
  ;   K[11]='over_anim'
  ;   K[12]='AddAnimation'
  ;   K[13]='expression2_loop'
  ;   K[14]='DelayExecuteFuncInView'
  ;   K[15]=2.2
  ;   upvals: RATE_STAR_COUNT, HAPPY_STAR_COUNT, _ENV
  ;   locals: self(0-59), index(0-59), (for index)(3-10), (for limit)(3-10), (for step)(3-10), i(4-9), (for index)(13-20), (for limit)(13-20), (for step)(13-20), i(14-19)
  0000  LOADK     R2 = K0 1
  0001  MOVE      R3 = R0
  0002  LOADK     R4 = K0 1
  0003  FORPREP   forprep R2(sBx=5)   -> 9
  0004  GETTABLE  R6 = R0[K1('m_star')]
  0005  GETTABLE  R6 = R6[R5]
  0006  SELF      R7 = R6[K2('UpdateContent')] (self)
  0007  LOADBOOL  R8 = true
  0008  CALL      R6 = call(R6, 0 args, 2 rets)
  0009  FORLOOP   forloop R2(sBx=-6)   -> 4
  0010  ADD       R2 = K0(1) add R1
  0011  GETUPVAL  R3 = RATE_STAR_COUNT
  0012  LOADK     R4 = K0 1
  0013  FORPREP   forprep R2(sBx=5)   -> 19
  0014  GETTABLE  R6 = R0[K1('m_star')]
  0015  GETTABLE  R6 = R6[R5]
  0016  SELF      R7 = R6[K2('UpdateContent')] (self)
  0017  LOADBOOL  R8 = false
  0018  CALL      R6 = call(R6, 0 args, 2 rets)
  0019  FORLOOP   forloop R2(sBx=-6)   -> 14
  0020  SETTABLE  R0[K3('m_curStarCount')] = R1
  0021  GETTABLE  R2 = R0[K4('m_confirmButton')]
  0022  SELF      R3 = R2[K5('SetUIEnabled')] (self)
  0023  GETTABLE  R4 = R0[K3('m_curStarCount')]
  0024  EQ        if R0 eq K6(nil)   -> -128736
  0025  JMP       (jump)   -> 27
  0026  LOADBOOL  R4 = false
  0027  LOADBOOL  R4 = true
  0028  CALL      R2 = call(R2, 0 args, 2 rets)
  0029  GETUPVAL  R2 = RATE_STAR_COUNT
  0030  LE        if R0 le R1   -> -130015
  0031  JMP       (jump)   -> 58
  0032  GETTABLE  R2 = R0[K7('m_bHappy')]
  0033  TEST      if not R2 then   -> -131036
  0034  JMP       (jump)   -> 58
  0035  SETTABLE  R0[K7('m_bHappy')] = K8(true)
  0036  GETTABLE  R2 = R0[K9('m_spine')]
  0037  SELF      R3 = R2[K10('SetAnimation')] (self)
  0038  LOADK     R4 = K11 'over_anim'
  0039  LOADBOOL  R5 = false
  0040  CALL      R2 = call(R2, 0 args, 3 rets)
  0041  GETTABLE  R2 = R0[K9('m_spine')]
  0042  SELF      R3 = R2[K12('AddAnimation')] (self)
  0043  LOADK     R4 = K13 'expression2_loop'
  0044  LOADBOOL  R5 = true
  0045  CALL      R2 = call(R2, 0 args, 3 rets)
  0046  GETTABUP  R2 = _ENV[K14('DelayExecuteFuncInView')]
  0047  CLOSURE   R3 = closure proto0
  0048  LOADK     R4 = K0 1
  0049  MOVE      R5 = R0
  0050  LOADBOOL  R6 = false
  0051  CALL      R2 = call(R2, 0 args, 4 rets)
  0052  GETTABUP  R2 = _ENV[K14('DelayExecuteFuncInView')]
  0053  CLOSURE   R3 = closure proto1
  0054  LOADK     R4 = K15 2.2
  0055  MOVE      R5 = R0
  0056  LOADBOOL  R6 = false
  0057  CALL      R2 = call(R2, 0 args, 4 rets)
  0058  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 63-65 np=0 va=0 ms=3 code=6 consts=3 upvals=1 protos=0
    ;   K[0]='m_lightSpine'
    ;   K[1]='gameObject'
    ;   K[2]='SetActive'
    ;   upvals: self
    0000  GETTABUP  R0 = self[K0('m_lightSpine')]
    0001  GETTABLE  R0 = R0[K1('gameObject')]
    0002  SELF      R1 = R0[K2('SetActive')] (self)
    0003  LOADBOOL  R2 = true
    0004  CALL      R0 = call(R0, 0 args, 2 rets)
    0005  RETURN    return R0..R-1
  ; ---------- proto1 [] ----------
    ; fn ?  line 66-68 np=0 va=0 ms=3 code=5 consts=2 upvals=1 protos=0
    ;   K[0]='m_lightEffectGo'
    ;   K[1]='SetActive'
    ;   upvals: self
    0000  GETTABUP  R0 = self[K0('m_lightEffectGo')]
    0001  SELF      R1 = R0[K1('SetActive')] (self)
    0002  LOADBOOL  R2 = true
    0003  CALL      R0 = call(R0, 0 args, 2 rets)
    0004  RETURN    return R0..R-1
; ---------- proto4 [OnCloseView] ----------
  ; fn ?  line 72-75 np=1 va=0 ms=6 code=14 consts=8 upvals=1 protos=0
  ;   K[0]='BaseWindow'
  ;   K[1]='OnCloseView'
  ;   K[2]='LogWindowAction'
  ;   K[3]='EBIType'
  ;   K[4]='UIActionType'
  ;   K[5]='Close'
  ;   K[6]='EBIReferType'
  ;   K[7]='AutoPopup'
  ;   upvals: _ENV
  ;   locals: self(0-14)
  0000  GETTABUP  R1 = _ENV[K0('BaseWindow')]
  0001  GETTABLE  R1 = R1[K1('OnCloseView')]
  0002  MOVE      R2 = R0
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  SELF      R2 = R0[K2('LogWindowAction')] (self)
  0005  GETTABUP  R3 = _ENV[K3('EBIType')]
  0006  GETTABLE  R3 = R3[K4('UIActionType')]
  0007  GETTABLE  R3 = R3[K5('Close')]
  0008  NEWTABLE  R4 = {} (1 items)
  0009  GETTABUP  R5 = _ENV[K6('EBIReferType')]
  0010  GETTABLE  R5 = R5[K7('AutoPopup')]
  0011  SETLIST   setlist R4[B=1,C=1]
  0012  CALL      R1 = call(R1, 0 args, 3 rets)
  0013  RETURN    return R0..R-1
; ---------- proto5 [Init] ----------
  ; fn ?  line 80-86 np=3 va=0 ms=7 code=13 consts=8 upvals=1 protos=0
  ;   K[0]='m_index'
  ;   K[1]='m_window'
  ;   K[2]='UpdateContent'
  ;   K[3]='UIUtil'
  ;   K[4]='UpdateSortingOrder'
  ;   K[5]='m_effectGo'
  ;   K[6]='GetSortingOrder'
  ;   K[7]=1
  ;   upvals: _ENV
  ;   locals: self(0-13), index(0-13), window(0-13)
  0000  SETTABLE  R0[K0('m_index')] = R1
  0001  SETTABLE  R0[K1('m_window')] = R2
  0002  SELF      R4 = R0[K2('UpdateContent')] (self)
  0003  LOADBOOL  R5 = false
  0004  CALL      R3 = call(R3, 0 args, 2 rets)
  0005  GETTABUP  R3 = _ENV[K3('UIUtil')]
  0006  GETTABLE  R3 = R3[K4('UpdateSortingOrder')]
  0007  GETTABLE  R4 = R0[K5('m_effectGo')]
  0008  SELF      R6 = R2[K6('GetSortingOrder')] (self)
  0009  CALL      R5 = call(R5, 1 args, 1 rets)
  0010  ADD       R5 = K7(1) add R5
  0011  CALL      R3 = call(R3, 0 args, 2 rets)
  0012  RETURN    return R0..R-1
; ---------- proto6 [UpdateContent] ----------
  ; fn ?  line 88-98 np=2 va=0 ms=6 code=22 consts=6 upvals=0 protos=0
  ;   K[0]='m_bOn'
  ;   K[1]='m_enableImg'
  ;   K[2]='enabled'
  ;   K[3]='m_disableImg'
  ;   K[4]='m_effectGo'
  ;   K[5]='SetActive'
  ;   locals: self(0-22), isOn(0-22), changed(5-22)
  0000  GETTABLE  R2 = R0[K0('m_bOn')]
  0001  EQ        if R0 eq R1   -> -130044
  0002  JMP       (jump)   -> 4
  0003  LOADBOOL  R2 = false
  0004  LOADBOOL  R2 = true
  0005  SETTABLE  R0[K0('m_bOn')] = R1
  0006  GETTABLE  R3 = R0[K1('m_enableImg')]
  0007  GETTABLE  R4 = R0[K0('m_bOn')]
  0008  SETTABLE  R3[K2('enabled')] = R4
  0009  GETTABLE  R3 = R0[K3('m_disableImg')]
  0010  GETTABLE  R4 = R0[K0('m_bOn')]
  0011  NOT       R4 = not R0
  0012  SETTABLE  R3[K2('enabled')] = R4
  0013  TEST      if not R1 then   -> -131057
  0014  JMP       (jump)   -> 21
  0015  TEST      if not R2 then   -> -131055
  0016  JMP       (jump)   -> 21
  0017  GETTABLE  R3 = R0[K4('m_effectGo')]
  0018  SELF      R4 = R3[K5('SetActive')] (self)
  0019  MOVE      R5 = R0
  0020  CALL      R3 = call(R3, 0 args, 2 rets)
  0021  RETURN    return R0..R-1
; ---------- proto7 [OnClicked] ----------
  ; fn ?  line 100-102 np=1 va=0 ms=4 code=5 consts=3 upvals=0 protos=0
  ;   K[0]='m_window'
  ;   K[1]='OnStarClicked'
  ;   K[2]='m_index'
  ;   locals: self(0-5)
  0000  GETTABLE  R1 = R0[K0('m_window')]
  0001  SELF      R2 = R1[K1('OnStarClicked')] (self)
  0002  GETTABLE  R3 = R0[K2('m_index')]
  0003  CALL      R1 = call(R1, 0 args, 2 rets)
  0004  RETURN    return R0..R-1
