# UI_Window_Survey_SurveyFillBlankQuestion_690.luac
; fn @SurveyFillBlankQuestion.lua  line 0-0 np=0 va=1 ms=3 code=18 consts=7 upvals=1 protos=3
;   K[0]='SurveyFillBlankQuestion'
;   K[1]='setmetatable'
;   K[2]='BaseSurveyQuestion'
;   K[3]='__index'
;   K[4]='Init'
;   K[5]='CanNextStep'
;   K[6]='GetUserAnswer'
;   upvals: _ENV
0000  GETTABUP  R0 = _ENV[K1('setmetatable')]
0001  NEWTABLE  R1 = {} (0 items)
0002  GETTABUP  R2 = _ENV[K2('BaseSurveyQuestion')]
0003  CALL      R0 = call(R0, 1 args, 2 rets)
0004  SETTABUP  _ENV[K0('SurveyFillBlankQuestion')] = R0
0005  GETTABUP  R0 = _ENV[K0('SurveyFillBlankQuestion')]
0006  GETTABUP  R1 = _ENV[K0('SurveyFillBlankQuestion')]
0007  SETTABLE  R0[K3('__index')] = R1
0008  GETTABUP  R0 = _ENV[K0('SurveyFillBlankQuestion')]
0009  CLOSURE   R1 = closure proto0
0010  SETTABLE  R0[K4('Init')] = R1
0011  GETTABUP  R0 = _ENV[K0('SurveyFillBlankQuestion')]
0012  CLOSURE   R1 = closure proto1
0013  SETTABLE  R0[K5('CanNextStep')] = R1
0014  GETTABUP  R0 = _ENV[K0('SurveyFillBlankQuestion')]
0015  CLOSURE   R1 = closure proto2
0016  SETTABLE  R0[K6('GetUserAnswer')] = R1
0017  RETURN    return R0..R-1
; ---------- proto0 [Init] ----------
  ; fn ?  line 4-13 np=2 va=0 ms=4 code=15 consts=8 upvals=1 protos=0
  ;   K[0]='m_questionData'
  ;   K[1]='m_title'
  ;   K[2]='text'
  ;   K[3]='title'
  ;   K[4]='_InitPicture'
  ;   K[5]='m_contentRectTrans'
  ;   K[6]='LayoutRebuilder'
  ;   K[7]='ForceRebuildLayoutImmediate'
  ;   upvals: _ENV
  ;   locals: self(0-15), questionData(0-15)
  0000  SETTABLE  R0[K0('m_questionData')] = R1
  0001  GETTABLE  R2 = R0[K1('m_title')]
  0002  GETTABLE  R3 = R0[K0('m_questionData')]
  0003  GETTABLE  R3 = R3[K3('title')]
  0004  SETTABLE  R2[K2('text')] = R3
  0005  SELF      R3 = R0[K4('_InitPicture')] (self)
  0006  CALL      R2 = call(R2, 0 args, 1 rets)
  0007  GETTABLE  R2 = R0[K5('m_contentRectTrans')]
  0008  TEST      if not R2 then   -> -131062
  0009  JMP       (jump)   -> 14
  0010  GETTABUP  R2 = _ENV[K6('LayoutRebuilder')]
  0011  GETTABLE  R2 = R2[K7('ForceRebuildLayoutImmediate')]
  0012  GETTABLE  R3 = R0[K5('m_contentRectTrans')]
  0013  CALL      R2 = call(R2, 0 args, 1 rets)
  0014  RETURN    return R0..R-1
; ---------- proto1 [CanNextStep] ----------
  ; fn ?  line 15-27 np=1 va=0 ms=4 code=29 consts=12 upvals=1 protos=0
  ;   K[0]='m_questionData'
  ;   K[1]='rule'
  ;   K[2]='free'
  ;   K[3]='isSkip'
  ;   K[4]='StringUtil'
  ;   K[5]='IsNilOrEmpty'
  ;   K[6]='m_inputField'
  ;   K[7]='text'
  ;   K[8]='GM'
  ;   K[9]='UIManager'
  ;   K[10]='ShowPromptWithKey'
  ;   K[11]='question_error_tips'
  ;   upvals: _ENV
  ;   locals: self(0-29)
  0000  GETTABLE  R1 = R0[K0('m_questionData')]
  0001  GETTABLE  R1 = R1[K1('rule')]
  0002  EQ        if R0 eq K2('free')   -> -130298
  0003  JMP       (jump)   -> 6
  0004  LOADBOOL  R1 = true
  0005  RETURN    return R1..R0
  0006  GETTABLE  R1 = R0[K0('m_questionData')]
  0007  GETTABLE  R1 = R1[K3('isSkip')]
  0008  TEST      if not R1 then   -> -131062
  0009  JMP       (jump)   -> 12
  0010  LOADBOOL  R1 = true
  0011  RETURN    return R1..R0
  0012  GETTABUP  R1 = _ENV[K4('StringUtil')]
  0013  GETTABLE  R1 = R1[K5('IsNilOrEmpty')]
  0014  GETTABLE  R2 = R0[K6('m_inputField')]
  0015  GETTABLE  R2 = R2[K7('text')]
  0016  CALL      R1 = call(R1, 1 args, 1 rets)
  0017  TEST      if not R1 then   -> -131053
  0018  JMP       (jump)   -> 26
  0019  GETTABUP  R1 = _ENV[K8('GM')]
  0020  GETTABLE  R1 = R1[K9('UIManager')]
  0021  SELF      R2 = R1[K10('ShowPromptWithKey')] (self)
  0022  LOADK     R3 = K11 'question_error_tips'
  0023  CALL      R1 = call(R1, 0 args, 2 rets)
  0024  LOADBOOL  R1 = false
  0025  RETURN    return R1..R0
  0026  LOADBOOL  R1 = true
  0027  RETURN    return R1..R0
  0028  RETURN    return R0..R-1
; ---------- proto2 [GetUserAnswer] ----------
  ; fn ?  line 29-40 np=1 va=0 ms=6 code=32 consts=13 upvals=1 protos=0
  ;   K[0]='m_questionData'
  ;   K[1]='options'
  ;   K[2]='Table'
  ;   K[3]='IsEmpty'
  ;   K[4]=1
  ;   K[5]='visible_ids'
  ;   K[6]=nil
  ;   K[7]='StringUtil'
  ;   K[8]='IsNilOrEmpty'
  ;   K[9]='m_inputField'
  ;   K[10]='text'
  ;   K[11]='EAnswerKey'
  ;   K[12]='Vmemo'
  ;   upvals: _ENV
  ;   locals: self(0-32), answers(1-32), nextQIds(2-32), options(4-32)
  0000  NEWTABLE  R1 = {} (0 items)
  0001  NEWTABLE  R2 = {} (0 items)
  0002  GETTABLE  R3 = R0[K0('m_questionData')]
  0003  GETTABLE  R3 = R3[K1('options')]
  0004  GETTABUP  R4 = _ENV[K2('Table')]
  0005  GETTABLE  R4 = R4[K3('IsEmpty')]
  0006  MOVE      R5 = R0
  0007  CALL      R4 = call(R4, 1 args, 1 rets)
  0008  TEST      if not R4 then   -> -131061
  0009  JMP       (jump)   -> 16
  0010  GETTABLE  R4 = R3[K4(1)]
  0011  GETTABLE  R4 = R4[K5('visible_ids')]
  0012  EQ        if R1 eq K6(nil)   -> -128748
  0013  JMP       (jump)   -> 16
  0014  GETTABLE  R4 = R3[K4(1)]
  0015  GETTABLE  R2 = R4[K5('visible_ids')]
  0016  GETTABUP  R4 = _ENV[K7('StringUtil')]
  0017  GETTABLE  R4 = R4[K8('IsNilOrEmpty')]
  0018  GETTABLE  R5 = R0[K9('m_inputField')]
  0019  GETTABLE  R5 = R5[K10('text')]
  0020  CALL      R4 = call(R4, 1 args, 1 rets)
  0021  TEST      if not R4 then   -> -131048
  0022  JMP       (jump)   -> 28
  0023  GETTABUP  R4 = _ENV[K11('EAnswerKey')]
  0024  GETTABLE  R4 = R4[K12('Vmemo')]
  0025  GETTABLE  R5 = R0[K9('m_inputField')]
  0026  GETTABLE  R5 = R5[K10('text')]
  0027  SETTABLE  R1[R4] = R5
  0028  MOVE      R4 = R0
  0029  MOVE      R5 = R0
  0030  RETURN    return R4..R3
  0031  RETURN    return R0..R-1
