# UI_Window_Survey_SurveyWindow_696.luac
; fn @SurveyWindow.lua  line 0-0 np=0 va=1 ms=3 code=23 consts=11 upvals=1 protos=4
;   K[0]='SurveyWindow'
;   K[1]='setmetatable'
;   K[2]='canCloseByAndroidBack'
;   K[3]=false
;   K[4]='canClickWindowMask'
;   K[5]='BaseWindow'
;   K[6]='__index'
;   K[7]='Init'
;   K[8]='_ShowNextQuestion'
;   K[9]='OnNextClicked'
;   K[10]='CanNextStep'
;   upvals: _ENV
0000  GETTABUP  R0 = _ENV[K1('setmetatable')]
0001  NEWTABLE  R1 = {} (0 items)
0002  SETTABLE  R1[K2('canCloseByAndroidBack')] = K3(false)
0003  SETTABLE  R1[K4('canClickWindowMask')] = K3(false)
0004  GETTABUP  R2 = _ENV[K5('BaseWindow')]
0005  CALL      R0 = call(R0, 1 args, 2 rets)
0006  SETTABUP  _ENV[K0('SurveyWindow')] = R0
0007  GETTABUP  R0 = _ENV[K0('SurveyWindow')]
0008  GETTABUP  R1 = _ENV[K0('SurveyWindow')]
0009  SETTABLE  R0[K6('__index')] = R1
0010  GETTABUP  R0 = _ENV[K0('SurveyWindow')]
0011  CLOSURE   R1 = closure proto0
0012  SETTABLE  R0[K7('Init')] = R1
0013  GETTABUP  R0 = _ENV[K0('SurveyWindow')]
0014  CLOSURE   R1 = closure proto1
0015  SETTABLE  R0[K8('_ShowNextQuestion')] = R1
0016  GETTABUP  R0 = _ENV[K0('SurveyWindow')]
0017  CLOSURE   R1 = closure proto2
0018  SETTABLE  R0[K9('OnNextClicked')] = R1
0019  GETTABUP  R0 = _ENV[K0('SurveyWindow')]
0020  CLOSURE   R1 = closure proto3
0021  SETTABLE  R0[K10('CanNextStep')] = R1
0022  RETURN    return R0..R-1
; ---------- proto0 [Init] ----------
  ; fn ?  line 7-10 np=1 va=0 ms=3 code=7 consts=4 upvals=1 protos=0
  ;   K[0]='m_startTime'
  ;   K[1]='TimeUtil'
  ;   K[2]='GetTimeInMS'
  ;   K[3]='_ShowNextQuestion'
  ;   upvals: _ENV
  ;   locals: self(0-7)
  0000  GETTABUP  R1 = _ENV[K1('TimeUtil')]
  0001  GETTABLE  R1 = R1[K2('GetTimeInMS')]
  0002  CALL      R1 = call(R1, 1 args, 0 rets)
  0003  SETTABLE  R0[K0('m_startTime')] = R1
  0004  SELF      R2 = R0[K3('_ShowNextQuestion')] (self)
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
; ---------- proto1 [_ShowNextQuestion] ----------
  ; fn ?  line 12-48 np=1 va=0 ms=11 code=94 consts=39 upvals=1 protos=1
  ;   K[0]='m_btnText'
  ;   K[1]='text'
  ;   K[2]='GM'
  ;   K[3]='GameTextModel'
  ;   K[4]='GetText'
  ;   K[5]='SurveyModel'
  ;   K[6]='isLastQuestion'
  ;   K[7]='question_end_button'
  ;   K[8]='question_next_button'
  ;   K[9]='UIPrefabConfigName'
  ;   K[10]='SurveySingleChoice'
  ;   K[11]='curQuestionData'
  ;   K[12]='type'
  ;   K[13]='EQuestionType'
  ;   K[14]='MultipleChoice'
  ;   K[15]='SurveyMultiChoice'
  ;   K[16]='MultipleChoiceFillBlank'
  ;   K[17]='SurveyMultiChoiceFillBlank'
  ;   K[18]='FillBlank'
  ;   K[19]='SurveyFillBlank'
  ;   K[20]='PictureFillBlank'
  ;   K[21]='SurveyFillBlankImg'
  ;   K[22]='PictureSingleChoice'
  ;   K[23]='SurveySingleChoiceImg'
  ;   K[24]='PictureMultipeChoice'
  ;   K[25]='SurveyMultiChoiceImg'
  ;   K[26]='PictureSingleChoiceFillBlank'
  ;   K[27]='SurveySingleChoiceFillBlankImg'
  ;   K[28]='PictureMultipChoiceFillBlank'
  ;   K[29]='SurveyMultiChoiceFillBlankImg'
  ;   K[30]='ResourceLoader'
  ;   K[31]='LoadPrefab'
  ;   K[32]='DataResource'
  ;   K[33]='UIPrefabConfig'
  ;   K[34]='GetConfig'
  ;   K[35]='m_containerTrans'
  ;   K[36]='Vector3'
  ;   K[37]=10000
  ;   K[38]=0
  ;   upvals: _ENV
  ;   locals: self(0-94), prefab(17-94), qType(21-94)
  0000  GETTABLE  R1 = R0[K0('m_btnText')]
  0001  GETTABUP  R2 = _ENV[K2('GM')]
  0002  GETTABLE  R2 = R2[K3('GameTextModel')]
  0003  SELF      R3 = R2[K4('GetText')] (self)
  0004  GETTABUP  R4 = _ENV[K2('GM')]
  0005  GETTABLE  R4 = R4[K5('SurveyModel')]
  0006  GETTABLE  R4 = R4[K6('isLastQuestion')]
  0007  TEST      if not R4 then   -> -131063
  0008  JMP       (jump)   -> 12
  0009  LOADK     R4 = K7 'question_end_button'
  0010  TEST      if not R4 then   -> -131059
  0011  JMP       (jump)   -> 13
  0012  LOADK     R4 = K8 'question_next_button'
  0013  CALL      R2 = call(R2, 1 args, 2 rets)
  0014  SETTABLE  R1[K1('text')] = R2
  0015  GETTABUP  R1 = _ENV[K9('UIPrefabConfigName')]
  0016  GETTABLE  R1 = R1[K10('SurveySingleChoice')]
  0017  GETTABUP  R2 = _ENV[K2('GM')]
  0018  GETTABLE  R2 = R2[K5('SurveyModel')]
  0019  GETTABLE  R2 = R2[K11('curQuestionData')]
  0020  GETTABLE  R2 = R2[K12('type')]
  0021  GETTABUP  R3 = _ENV[K13('EQuestionType')]
  0022  GETTABLE  R3 = R3[K14('MultipleChoice')]
  0023  EQ        if R0 eq R3   -> -130020
  0024  JMP       (jump)   -> 28
  0025  GETTABUP  R3 = _ENV[K9('UIPrefabConfigName')]
  0026  GETTABLE  R1 = R3[K15('SurveyMultiChoice')]
  0027  JMP       (jump)   -> 76
  0028  GETTABUP  R3 = _ENV[K13('EQuestionType')]
  0029  GETTABLE  R3 = R3[K16('MultipleChoiceFillBlank')]
  0030  EQ        if R0 eq R3   -> -130013
  0031  JMP       (jump)   -> 35
  0032  GETTABUP  R3 = _ENV[K9('UIPrefabConfigName')]
  0033  GETTABLE  R1 = R3[K17('SurveyMultiChoiceFillBlank')]
  0034  JMP       (jump)   -> 76
  0035  GETTABUP  R3 = _ENV[K13('EQuestionType')]
  0036  GETTABLE  R3 = R3[K18('FillBlank')]
  0037  EQ        if R0 eq R3   -> -130006
  0038  JMP       (jump)   -> 42
  0039  GETTABUP  R3 = _ENV[K9('UIPrefabConfigName')]
  0040  GETTABLE  R1 = R3[K19('SurveyFillBlank')]
  0041  JMP       (jump)   -> 76
  0042  GETTABUP  R3 = _ENV[K13('EQuestionType')]
  0043  GETTABLE  R3 = R3[K20('PictureFillBlank')]
  0044  EQ        if R0 eq R3   -> -129999
  0045  JMP       (jump)   -> 49
  0046  GETTABUP  R3 = _ENV[K9('UIPrefabConfigName')]
  0047  GETTABLE  R1 = R3[K21('SurveyFillBlankImg')]
  0048  JMP       (jump)   -> 76
  0049  GETTABUP  R3 = _ENV[K13('EQuestionType')]
  0050  GETTABLE  R3 = R3[K22('PictureSingleChoice')]
  0051  EQ        if R0 eq R3   -> -129992
  0052  JMP       (jump)   -> 56
  0053  GETTABUP  R3 = _ENV[K9('UIPrefabConfigName')]
  0054  GETTABLE  R1 = R3[K23('SurveySingleChoiceImg')]
  0055  JMP       (jump)   -> 76
  0056  GETTABUP  R3 = _ENV[K13('EQuestionType')]
  0057  GETTABLE  R3 = R3[K24('PictureMultipeChoice')]
  0058  EQ        if R0 eq R3   -> -129985
  0059  JMP       (jump)   -> 63
  0060  GETTABUP  R3 = _ENV[K9('UIPrefabConfigName')]
  0061  GETTABLE  R1 = R3[K25('SurveyMultiChoiceImg')]
  0062  JMP       (jump)   -> 76
  0063  GETTABUP  R3 = _ENV[K13('EQuestionType')]
  0064  GETTABLE  R3 = R3[K26('PictureSingleChoiceFillBlank')]
  0065  EQ        if R0 eq R3   -> -129978
  0066  JMP       (jump)   -> 70
  0067  GETTABUP  R3 = _ENV[K9('UIPrefabConfigName')]
  0068  GETTABLE  R1 = R3[K27('SurveySingleChoiceFillBlankImg')]
  0069  JMP       (jump)   -> 76
  0070  GETTABUP  R3 = _ENV[K13('EQuestionType')]
  0071  GETTABLE  R3 = R3[K28('PictureMultipChoiceFillBlank')]
  0072  EQ        if R0 eq R3   -> -129971
  0073  JMP       (jump)   -> 76
  0074  GETTABUP  R3 = _ENV[K9('UIPrefabConfigName')]
  0075  GETTABLE  R1 = R3[K29('SurveyMultiChoiceFillBlankImg')]
  0076  GETTABUP  R3 = _ENV[K2('GM')]
  0077  GETTABLE  R3 = R3[K30('ResourceLoader')]
  0078  SELF      R4 = R3[K31('LoadPrefab')] (self)
  0079  GETTABUP  R5 = _ENV[K2('GM')]
  0080  GETTABLE  R5 = R5[K32('DataResource')]
  0081  GETTABLE  R5 = R5[K33('UIPrefabConfig')]
  0082  SELF      R6 = R5[K34('GetConfig')] (self)
  0083  MOVE      R7 = R0
  0084  CALL      R5 = call(R5, 1 args, 2 rets)
  0085  GETTABLE  R6 = R0[K35('m_containerTrans')]
  0086  GETTABUP  R7 = _ENV[K36('Vector3')]
  0087  LOADK     R8 = K37 10000
  0088  LOADK     R9 = K38 0
  0089  LOADK     R10 = K38 0
  0090  CALL      R7 = call(R7, 1 args, 3 rets)
  0091  CLOSURE   R8 = closure proto0
  0092  CALL      R3 = call(R3, 0 args, 5 rets)
  0093  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 35-47 np=1 va=0 ms=4 code=25 consts=13 upvals=2 protos=0
    ;   K[0]='m_contentGo'
    ;   K[1]='RemoveSelf'
    ;   K[2]=nil
    ;   K[3]='m_contentCmp'
    ;   K[4]='transform'
    ;   K[5]='localPosition'
    ;   K[6]='Vector3'
    ;   K[7]='zero'
    ;   K[8]='GetLuaTable'
    ;   K[9]='Init'
    ;   K[10]='GM'
    ;   K[11]='SurveyModel'
    ;   K[12]='curQuestionData'
    ;   upvals: self, _ENV
    ;   locals: go(0-25)
    0000  GETTABUP  R1 = self[K0('m_contentGo')]
    0001  TEST      if not R1 then   -> -131069
    0002  JMP       (jump)   -> 8
    0003  GETTABUP  R1 = self[K0('m_contentGo')]
    0004  SELF      R2 = R1[K1('RemoveSelf')] (self)
    0005  CALL      R1 = call(R1, 0 args, 1 rets)
    0006  SETTABUP  self[K0('m_contentGo')] = K2(nil)
    0007  SETTABUP  self[K3('m_contentCmp')] = K2(nil)
    0008  SETTABUP  self[K0('m_contentGo')] = R0
    0009  GETTABUP  R1 = self[K0('m_contentGo')]
    0010  GETTABLE  R1 = R1[K4('transform')]
    0011  GETTABUP  R2 = _ENV[K6('Vector3')]
    0012  GETTABLE  R2 = R2[K7('zero')]
    0013  SETTABLE  R1[K5('localPosition')] = R2
    0014  GETTABUP  R1 = self[K0('m_contentGo')]
    0015  SELF      R2 = R1[K8('GetLuaTable')] (self)
    0016  CALL      R1 = call(R1, 1 args, 1 rets)
    0017  SETTABUP  self[K3('m_contentCmp')] = R1
    0018  GETTABUP  R1 = self[K3('m_contentCmp')]
    0019  SELF      R2 = R1[K9('Init')] (self)
    0020  GETTABUP  R3 = _ENV[K10('GM')]
    0021  GETTABLE  R3 = R3[K11('SurveyModel')]
    0022  GETTABLE  R3 = R3[K12('curQuestionData')]
    0023  CALL      R1 = call(R1, 0 args, 2 rets)
    0024  RETURN    return R0..R-1
; ---------- proto2 [OnNextClicked] ----------
  ; fn ?  line 50-73 np=1 va=0 ms=8 code=30 consts=10 upvals=1 protos=1
  ;   K[0]='CanNextStep'
  ;   K[1]='m_contentCmp'
  ;   K[2]='GetUserAnswer'
  ;   K[3]='GM'
  ;   K[4]='SurveyModel'
  ;   K[5]='isLastQuestion'
  ;   K[6]='StoreAnswerAndSubmit'
  ;   K[7]='SurveyModel'
  ;   K[8]='StoreAnswerAndStepForward'
  ;   K[9]='_ShowNextQuestion'
  ;   upvals: _ENV
  ;   locals: self(0-30), answers(8-30), nextQIds(8-30)
  0000  SELF      R2 = R0[K0('CanNextStep')] (self)
  0001  CALL      R1 = call(R1, 1 args, 1 rets)
  0002  TEST      if not R1 then   -> -131067
  0003  JMP       (jump)   -> 5
  0004  RETURN    return R0..R-1
  0005  GETTABLE  R1 = R0[K1('m_contentCmp')]
  0006  SELF      R2 = R1[K2('GetUserAnswer')] (self)
  0007  CALL      R1 = call(R1, 2 args, 1 rets)
  0008  GETTABUP  R3 = _ENV[K3('GM')]
  0009  GETTABLE  R3 = R3[K4('SurveyModel')]
  0010  GETTABLE  R3 = R3[K5('isLastQuestion')]
  0011  TEST      if not R3 then   -> -131059
  0012  JMP       (jump)   -> 21
  0013  GETTABUP  R3 = _ENV[K3('GM')]
  0014  GETTABLE  R3 = R3[K4('SurveyModel')]
  0015  SELF      R4 = R3[K6('StoreAnswerAndSubmit')] (self)
  0016  MOVE      R5 = R0
  0017  MOVE      R6 = R0
  0018  CLOSURE   R7 = closure proto0
  0019  CALL      R3 = call(R3, 0 args, 4 rets)
  0020  JMP       (jump)   -> 29
  0021  GETTABUP  R3 = _ENV[K3('GM')]
  0022  GETTABLE  R3 = R3[K7('SurveyModel')]
  0023  SELF      R4 = R3[K8('StoreAnswerAndStepForward')] (self)
  0024  MOVE      R5 = R0
  0025  MOVE      R6 = R0
  0026  CALL      R3 = call(R3, 0 args, 3 rets)
  0027  SELF      R4 = R0[K9('_ShowNextQuestion')] (self)
  0028  CALL      R3 = call(R3, 0 args, 1 rets)
  0029  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 57-68 np=1 va=0 ms=8 code=57 consts=17 upvals=2 protos=0
    ;   K[0]='ERewardRespStatus'
    ;   K[1]='Success'
    ;   K[2]='Close'
    ;   K[3]='GM'
    ;   K[4]='BIManager'
    ;   K[5]='LogSurvey'
    ;   K[6]=200
    ;   K[7]='TimeUtil'
    ;   K[8]='GetTimeInMS'
    ;   K[9]='m_startTime'
    ;   K[10]='SurveyModel'
    ;   K[11]='GetBIData'
    ;   K[12]='HasReceived'
    ;   K[13]='UIManager'
    ;   K[14]='ShowPromptWithKey'
    ;   K[15]='question_claim_tips'
    ;   K[16]='bad_network_window_desc'
    ;   upvals: _ENV, self
    ;   locals: eRewardRespStatus(0-57)
    0000  GETTABUP  R1 = _ENV[K0('ERewardRespStatus')]
    0001  GETTABLE  R1 = R1[K1('Success')]
    0002  EQ        if R0 eq R1   -> -131067
    0003  JMP       (jump)   -> 23
    0004  GETUPVAL  R1 = _ENV
    0005  SELF      R2 = R1[K2('Close')] (self)
    0006  CALL      R1 = call(R1, 0 args, 1 rets)
    0007  GETTABUP  R1 = _ENV[K3('GM')]
    0008  GETTABLE  R1 = R1[K4('BIManager')]
    0009  SELF      R2 = R1[K5('LogSurvey')] (self)
    0010  LOADK     R3 = K6 200
    0011  GETTABUP  R4 = _ENV[K7('TimeUtil')]
    0012  GETTABLE  R4 = R4[K8('GetTimeInMS')]
    0013  CALL      R4 = call(R4, 1 args, 0 rets)
    0014  GETTABUP  R5 = self[K9('m_startTime')]
    0015  SUB       R4 = R5 sub R4
    0016  GETTABUP  R5 = _ENV[K3('GM')]
    0017  GETTABLE  R5 = R5[K10('SurveyModel')]
    0018  SELF      R6 = R5[K11('GetBIData')] (self)
    0019  LOADBOOL  R7 = true
    0020  CALL      R5 = call(R5, -1 args, 2 rets)
    0021  CALL      R1 = call(R1, 0 args, -1 rets)
    0022  JMP       (jump)   -> 56
    0023  GETTABUP  R1 = _ENV[K0('ERewardRespStatus')]
    0024  GETTABLE  R1 = R1[K12('HasReceived')]
    0025  EQ        if R0 eq R1   -> -131044
    0026  JMP       (jump)   -> 51
    0027  GETUPVAL  R1 = _ENV
    0028  SELF      R2 = R1[K2('Close')] (self)
    0029  CALL      R1 = call(R1, 0 args, 1 rets)
    0030  GETTABUP  R1 = _ENV[K3('GM')]
    0031  GETTABLE  R1 = R1[K13('UIManager')]
    0032  SELF      R2 = R1[K14('ShowPromptWithKey')] (self)
    0033  LOADK     R3 = K15 'question_claim_tips'
    0034  CALL      R1 = call(R1, 0 args, 2 rets)
    0035  GETTABUP  R1 = _ENV[K3('GM')]
    0036  GETTABLE  R1 = R1[K4('BIManager')]
    0037  SELF      R2 = R1[K5('LogSurvey')] (self)
    0038  LOADK     R3 = K6 200
    0039  GETTABUP  R4 = _ENV[K7('TimeUtil')]
    0040  GETTABLE  R4 = R4[K8('GetTimeInMS')]
    0041  CALL      R4 = call(R4, 1 args, 0 rets)
    0042  GETTABUP  R5 = self[K9('m_startTime')]
    0043  SUB       R4 = R5 sub R4
    0044  GETTABUP  R5 = _ENV[K3('GM')]
    0045  GETTABLE  R5 = R5[K10('SurveyModel')]
    0046  SELF      R6 = R5[K11('GetBIData')] (self)
    0047  LOADBOOL  R7 = true
    0048  CALL      R5 = call(R5, -1 args, 2 rets)
    0049  CALL      R1 = call(R1, 0 args, -1 rets)
    0050  JMP       (jump)   -> 56
    0051  GETTABUP  R1 = _ENV[K3('GM')]
    0052  GETTABLE  R1 = R1[K13('UIManager')]
    0053  SELF      R2 = R1[K14('ShowPromptWithKey')] (self)
    0054  LOADK     R3 = K16 'bad_network_window_desc'
    0055  CALL      R1 = call(R1, 0 args, 2 rets)
    0056  RETURN    return R0..R-1
; ---------- proto3 [CanNextStep] ----------
  ; fn ?  line 75-80 np=1 va=0 ms=3 code=10 consts=2 upvals=0 protos=0
  ;   K[0]='m_contentCmp'
  ;   K[1]='CanNextStep'
  ;   locals: self(0-10)
  0000  GETTABLE  R1 = R0[K0('m_contentCmp')]
  0001  TEST      if not R1 then   -> -131068
  0002  JMP       (jump)   -> 5
  0003  LOADBOOL  R1 = false
  0004  RETURN    return R1..R0
  0005  GETTABLE  R1 = R0[K0('m_contentCmp')]
  0006  SELF      R2 = R1[K1('CanNextStep')] (self)
  0007  TAILCALL  tailcall(R1, 0)
  0008  RETURN    return R1..R0
  0009  RETURN    return R0..R-1
