# UI_Window_Shop_ShopWindow_512.luac
; fn @ShopWindow.lua  line 0-0 np=0 va=1 ms=4 code=60 consts=26 upvals=1 protos=14
;   K[0]='ShopWindow'
;   K[1]='setmetatable'
;   K[2]='windowMaskAlpha'
;   K[3]='EWindowMaskAlpha'
;   K[4]='Dark'
;   K[5]='hideHudAnchorType'
;   K[6]='EHudAnchorType'
;   K[7]='All'
;   K[8]='disableEffectWhenCloseView'
;   K[9]=true
;   K[10]='BaseWindow'
;   K[11]='__index'
;   K[12]='Init'
;   K[13]='OnCloseView'
;   K[14]='OnCloseFinish'
;   K[15]='_ToggleHudHighlight'
;   K[16]='_OnOpenView'
;   K[17]='_OnViewWillClose'
;   K[18]='LocatePosition'
;   K[19]='LocateShopType'
;   K[20]='SetScrollEnabled'
;   K[21]='RefreshScrollMask'
;   K[22]='OnShopRefreshed'
;   K[23]='GetDailyFreeGiftCell'
;   K[24]='OnRestorePurchase'
;   K[25]='OnGemLawBtnClick'
;   upvals: _ENV
0000  GETTABUP  R0 = _ENV[K1('setmetatable')]
0001  NEWTABLE  R1 = {} (0 items)
0002  GETTABUP  R2 = _ENV[K3('EWindowMaskAlpha')]
0003  GETTABLE  R2 = R2[K4('Dark')]
0004  SETTABLE  R1[K2('windowMaskAlpha')] = R2
0005  NEWTABLE  R2 = {} (1 items)
0006  GETTABUP  R3 = _ENV[K6('EHudAnchorType')]
0007  GETTABLE  R3 = R3[K7('All')]
0008  SETLIST   setlist R2[B=1,C=1]
0009  SETTABLE  R1[K5('hideHudAnchorType')] = R2
0010  SETTABLE  R1[K8('disableEffectWhenCloseView')] = K9(true)
0011  GETTABUP  R2 = _ENV[K10('BaseWindow')]
0012  CALL      R0 = call(R0, 1 args, 2 rets)
0013  SETTABUP  _ENV[K0('ShopWindow')] = R0
0014  GETTABUP  R0 = _ENV[K0('ShopWindow')]
0015  GETTABUP  R1 = _ENV[K0('ShopWindow')]
0016  SETTABLE  R0[K11('__index')] = R1
0017  GETTABUP  R0 = _ENV[K0('ShopWindow')]
0018  CLOSURE   R1 = closure proto0
0019  SETTABLE  R0[K12('Init')] = R1
0020  GETTABUP  R0 = _ENV[K0('ShopWindow')]
0021  CLOSURE   R1 = closure proto1
0022  SETTABLE  R0[K13('OnCloseView')] = R1
0023  GETTABUP  R0 = _ENV[K0('ShopWindow')]
0024  CLOSURE   R1 = closure proto2
0025  SETTABLE  R0[K14('OnCloseFinish')] = R1
0026  GETTABUP  R0 = _ENV[K0('ShopWindow')]
0027  CLOSURE   R1 = closure proto3
0028  SETTABLE  R0[K15('_ToggleHudHighlight')] = R1
0029  GETTABUP  R0 = _ENV[K0('ShopWindow')]
0030  CLOSURE   R1 = closure proto4
0031  SETTABLE  R0[K16('_OnOpenView')] = R1
0032  GETTABUP  R0 = _ENV[K0('ShopWindow')]
0033  CLOSURE   R1 = closure proto5
0034  SETTABLE  R0[K17('_OnViewWillClose')] = R1
0035  GETTABUP  R0 = _ENV[K0('ShopWindow')]
0036  CLOSURE   R1 = closure proto6
0037  SETTABLE  R0[K18('LocatePosition')] = R1
0038  GETTABUP  R0 = _ENV[K0('ShopWindow')]
0039  CLOSURE   R1 = closure proto7
0040  SETTABLE  R0[K19('LocateShopType')] = R1
0041  GETTABUP  R0 = _ENV[K0('ShopWindow')]
0042  CLOSURE   R1 = closure proto8
0043  SETTABLE  R0[K20('SetScrollEnabled')] = R1
0044  GETTABUP  R0 = _ENV[K0('ShopWindow')]
0045  CLOSURE   R1 = closure proto9
0046  SETTABLE  R0[K21('RefreshScrollMask')] = R1
0047  GETTABUP  R0 = _ENV[K0('ShopWindow')]
0048  CLOSURE   R1 = closure proto10
0049  SETTABLE  R0[K22('OnShopRefreshed')] = R1
0050  GETTABUP  R0 = _ENV[K0('ShopWindow')]
0051  CLOSURE   R1 = closure proto11
0052  SETTABLE  R0[K23('GetDailyFreeGiftCell')] = R1
0053  GETTABUP  R0 = _ENV[K0('ShopWindow')]
0054  CLOSURE   R1 = closure proto12
0055  SETTABLE  R0[K24('OnRestorePurchase')] = R1
0056  GETTABUP  R0 = _ENV[K0('ShopWindow')]
0057  CLOSURE   R1 = closure proto13
0058  SETTABLE  R0[K25('OnGemLawBtnClick')] = R1
0059  RETURN    return R0..R-1
; ---------- proto0 [Init] ----------
  ; fn ?  line 14-100 np=3 va=0 ms=29 code=231 consts=78 upvals=1 protos=2
  ;   K[0]='m_model'
  ;   K[1]='GM'
  ;   K[2]='ShopModel'
  ;   K[3]='m_contentLayoutGroup'
  ;   K[4]='transform'
  ;   K[5]='m_spacingHeight'
  ;   K[6]='spacing'
  ;   K[7]='GetSortingOrder'
  ;   K[8]='m_arrContainer'
  ;   K[9]='GetUnlockedOrderConfigs'
  ;   K[10]='Table'
  ;   K[11]='GetKeys'
  ;   K[12]='table'
  ;   K[13]='sort'
  ;   K[14]='ipairs'
  ;   K[15]='EShopType'
  ;   K[16]='Bundles'
  ;   K[17]='BundleTypeOrderList'
  ;   K[18]='BundleManager'
  ;   K[19]='GetModel'
  ;   K[20]=nil
  ;   K[21]='GetShopContainerConfig'
  ;   K[22]='GetAllGroupDatas'
  ;   K[23]='checkFun'
  ;   K[24]='m_containerMap'
  ;   K[25]='CreateContainer'
  ;   K[26]='shopType'
  ;   K[27]='Init'
  ;   K[28]='UpdateSortingOrder'
  ;   K[29]=1
  ;   K[30]='OnShopRefreshed'
  ;   K[31]='ScreenFitter'
  ;   K[32]='GetSceneViewSizeOffset'
  ;   K[33]='m_closeBtnGo'
  ;   K[34]='SetLocalPosY'
  ;   K[35]='localPosition'
  ;   K[36]='y'
  ;   K[37]='x'
  ;   K[38]='m_scrollView'
  ;   K[39]='offsetMax'
  ;   K[40]='_ToggleHudHighlight'
  ;   K[41]='EventDispatcher'
  ;   K[42]='DispatchEvent'
  ;   K[43]='EEventType'
  ;   K[44]='UpdateSceneViewHud'
  ;   K[45]='Show'
  ;   K[46]=true
  ;   K[47]='AnchorTypes'
  ;   K[48]='EHudAnchorType'
  ;   K[49]='TopLeft'
  ;   K[50]='AddListener'
  ;   K[51]='ShopRefreshed'
  ;   K[52]='OpenView'
  ;   K[53]='_OnOpenView'
  ;   K[54]='OnViewWillClose'
  ;   K[55]='_OnViewWillClose'
  ;   K[56]='LocateShopType'
  ;   K[57]='SetScrollEnabled'
  ;   K[58]='HasFreeDailyDeals'
  ;   K[59]='ShopButton'
  ;   K[60]='ShopWindowOpened'
  ;   K[61]='LocatePosition'
  ;   K[62]='DailyDeals'
  ;   K[63]=0.5
  ;   K[64]='DelayExecuteFuncInView'
  ;   K[65]=0.5
  ;   K[66]='UIUtil'
  ;   K[67]='SetActive'
  ;   K[68]='m_relatedLawsGo'
  ;   K[69]='ConfigModel'
  ;   K[70]='IsGemLawShow'
  ;   K[71]='LogWindowAction'
  ;   K[72]='EBIType'
  ;   K[73]='UIActionType'
  ;   K[74]='Open'
  ;   K[75]='EBIReferType'
  ;   K[76]='AutoPopup'
  ;   K[77]='UserClick'
  ;   upvals: _ENV
  ;   locals: self(0-231), focusShopType(0-231), bAuto(0-231), contentTransform(5-231), sortingOrder(10-231), container(11-231), mapShopOrderConfig(17-231), seq(21-231), (for generator)(29-115), (for state)(29-115), (for control)(29-115), _(30-113), shopType(30-113), model(35-93), config(35-93), (for generator)(38-93), (for state)(38-93), (for control)(38-93), _(39-91), bundleType(39-91), (for generator)(60-91), (for state)(60-91), (for control)(60-91), _(61-89), dataGroup(61-89), adjustSizeOffset(120-231), offsetMax(133-231), targetHeight(201-209), focusContainer(201-209)
  0000  GETTABUP  R3 = _ENV[K1('GM')]
  0001  GETTABLE  R3 = R3[K2('ShopModel')]
  0002  SETTABLE  R0[K0('m_model')] = R3
  0003  GETTABLE  R3 = R0[K3('m_contentLayoutGroup')]
  0004  GETTABLE  R3 = R3[K4('transform')]
  0005  GETTABLE  R4 = R0[K3('m_contentLayoutGroup')]
  0006  GETTABLE  R4 = R4[K6('spacing')]
  0007  SETTABLE  R0[K5('m_spacingHeight')] = R4
  0008  SELF      R5 = R0[K7('GetSortingOrder')] (self)
  0009  CALL      R4 = call(R4, 1 args, 1 rets)
  0010  LOADNIL   R5..R5 = nil
  0011  NEWTABLE  R6 = {} (0 items)
  0012  SETTABLE  R0[K8('m_arrContainer')] = R6
  0013  GETTABUP  R6 = _ENV[K1('GM')]
  0014  GETTABLE  R6 = R6[K2('ShopModel')]
  0015  SELF      R7 = R6[K9('GetUnlockedOrderConfigs')] (self)
  0016  CALL      R6 = call(R6, 1 args, 1 rets)
  0017  GETTABUP  R7 = _ENV[K10('Table')]
  0018  GETTABLE  R7 = R7[K11('GetKeys')]
  0019  MOVE      R8 = R0
  0020  CALL      R7 = call(R7, 1 args, 1 rets)
  0021  GETTABUP  R8 = _ENV[K12('table')]
  0022  GETTABLE  R8 = R8[K13('sort')]
  0023  MOVE      R9 = R0
  0024  CLOSURE   R10 = closure proto0
  0025  CALL      R8 = call(R8, 0 args, 2 rets)
  0026  GETTABUP  R8 = _ENV[K14('ipairs')]
  0027  MOVE      R9 = R0
  0028  CALL      R8 = call(R8, 3 args, 1 rets)
  0029  JMP       (jump)   -> 113
  0030  GETTABUP  R13 = _ENV[K15('EShopType')]
  0031  GETTABLE  R13 = R13[K16('Bundles')]
  0032  EQ        if R0 eq R13   -> -124881
  0033  JMP       (jump)   -> 94
  0034  LOADNIL   R13..R13 = nil
  0035  GETTABUP  R15 = _ENV[K14('ipairs')]
  0036  GETTABUP  R16 = _ENV[K17('BundleTypeOrderList')]
  0037  CALL      R15 = call(R15, 3 args, 1 rets)
  0038  JMP       (jump)   -> 91
  0039  GETTABUP  R20 = _ENV[K1('GM')]
  0040  GETTABLE  R20 = R20[K18('BundleManager')]
  0041  SELF      R21 = R20[K19('GetModel')] (self)
  0042  MOVE      R22 = R0
  0043  CALL      R20 = call(R20, 1 args, 2 rets)
  0044  MOVE      R13 = R0
  0045  EQ        if R1 eq K20(nil)   -> -124093
  0046  JMP       (jump)   -> 91
  0047  GETTABLE  R20 = R13[K21('GetShopContainerConfig')]
  0048  EQ        if R1 eq K20(nil)   -> -120506
  0049  JMP       (jump)   -> 91
  0050  SELF      R21 = R13[K21('GetShopContainerConfig')] (self)
  0051  CALL      R20 = call(R20, 1 args, 1 rets)
  0052  MOVE      R14 = R0
  0053  GETTABUP  R20 = _ENV[K14('ipairs')]
  0054  SELF      R22 = R13[K22('GetAllGroupDatas')] (self)
  0055  CALL      R21 = call(R21, 1 args, 1 rets)
  0056  TEST      if not R21 then   -> -131013
  0057  JMP       (jump)   -> 59
  0058  NEWTABLE  R21 = {} (0 items)
  0059  CALL      R20 = call(R20, 3 args, 1 rets)
  0060  JMP       (jump)   -> 89
  0061  GETTABLE  R25 = R14[K23('checkFun')]
  0062  MOVE      R26 = R0
  0063  CALL      R25 = call(R25, 1 args, 1 rets)
  0064  TEST      if not R25 then   -> -131006
  0065  JMP       (jump)   -> 89
  0066  GETTABLE  R25 = R0[K24('m_containerMap')]
  0067  SELF      R26 = R25[K25('CreateContainer')] (self)
  0068  GETTABLE  R27 = R14[K26('shopType')]
  0069  CALL      R25 = call(R25, 1 args, 2 rets)
  0070  MOVE      R5 = R0
  0071  EQ        if R1 eq K20(nil)   -> -128163
  0072  JMP       (jump)   -> 89
  0073  SELF      R26 = R5[K27('Init')] (self)
  0074  MOVE      R27 = R0
  0075  MOVE      R28 = R0
  0076  CALL      R25 = call(R25, 0 args, 3 rets)
  0077  GETTABLE  R25 = R5[K28('UpdateSortingOrder')]
  0078  TEST      if not R25 then   -> -130992
  0079  JMP       (jump)   -> 83
  0080  SELF      R26 = R5[K28('UpdateSortingOrder')] (self)
  0081  MOVE      R27 = R0
  0082  CALL      R25 = call(R25, 0 args, 2 rets)
  0083  GETTABLE  R25 = R0[K8('m_arrContainer')]
  0084  GETTABLE  R26 = R0[K8('m_arrContainer')]
  0085  LEN       R26 = len R0
  0086  ADD       R26 = K29(1) add R26
  0087  SETTABLE  R25[R26] = R5
  0088  LOADNIL   R5..R5 = nil
  0089  TFORCALL  tforcall R20
  0090  TFORLOOP  tforloop R22(sBx=-30)   -> 61
  0091  TFORCALL  tforcall R15
  0092  TFORLOOP  tforloop R17(sBx=-54)   -> 39
  0093  JMP       (jump)   -> 113
  0094  GETTABLE  R13 = R0[K24('m_containerMap')]
  0095  SELF      R14 = R13[K25('CreateContainer')] (self)
  0096  MOVE      R15 = R0
  0097  CALL      R13 = call(R13, 1 args, 2 rets)
  0098  MOVE      R5 = R0
  0099  EQ        if R1 eq K20(nil)   -> -128135
  0100  JMP       (jump)   -> 113
  0101  GETTABLE  R13 = R5[K28('UpdateSortingOrder')]
  0102  TEST      if not R13 then   -> -130968
  0103  JMP       (jump)   -> 107
  0104  SELF      R14 = R5[K28('UpdateSortingOrder')] (self)
  0105  MOVE      R15 = R0
  0106  CALL      R13 = call(R13, 0 args, 2 rets)
  0107  GETTABLE  R13 = R0[K8('m_arrContainer')]
  0108  GETTABLE  R14 = R0[K8('m_arrContainer')]
  0109  LEN       R14 = len R0
  0110  ADD       R14 = K29(1) add R14
  0111  SETTABLE  R13[R14] = R5
  0112  LOADNIL   R5..R5 = nil
  0113  TFORCALL  tforcall R8
  0114  TFORLOOP  tforloop R10(sBx=-85)   -> 30
  0115  SELF      R9 = R0[K30('OnShopRefreshed')] (self)
  0116  CALL      R8 = call(R8, 0 args, 1 rets)
  0117  GETTABUP  R8 = _ENV[K31('ScreenFitter')]
  0118  GETTABLE  R8 = R8[K32('GetSceneViewSizeOffset')]
  0119  CALL      R8 = call(R8, 1 args, 0 rets)
  0120  GETTABLE  R9 = R0[K33('m_closeBtnGo')]
  0121  GETTABLE  R9 = R9[K4('transform')]
  0122  SELF      R10 = R9[K34('SetLocalPosY')] (self)
  0123  GETTABLE  R11 = R0[K33('m_closeBtnGo')]
  0124  GETTABLE  R11 = R11[K4('transform')]
  0125  GETTABLE  R11 = R11[K35('localPosition')]
  0126  GETTABLE  R11 = R11[K36('y')]
  0127  GETTABLE  R12 = R8[K37('x')]
  0128  SUB       R11 = R12 sub R11
  0129  CALL      R9 = call(R9, 0 args, 2 rets)
  0130  GETTABLE  R9 = R0[K38('m_scrollView')]
  0131  GETTABLE  R9 = R9[K4('transform')]
  0132  GETTABLE  R9 = R9[K39('offsetMax')]
  0133  GETTABLE  R10 = R9[K36('y')]
  0134  GETTABLE  R11 = R8[K37('x')]
  0135  SUB       R10 = R11 sub R10
  0136  GETTABLE  R11 = R8[K36('y')]
  0137  SUB       R10 = R11 sub R10
  0138  SETTABLE  R9[K36('y')] = R10
  0139  GETTABLE  R10 = R0[K38('m_scrollView')]
  0140  GETTABLE  R10 = R10[K4('transform')]
  0141  SETTABLE  R10[K39('offsetMax')] = R9
  0142  SELF      R11 = R0[K40('_ToggleHudHighlight')] (self)
  0143  LOADBOOL  R12 = true
  0144  CALL      R10 = call(R10, 0 args, 2 rets)
  0145  GETTABUP  R10 = _ENV[K41('EventDispatcher')]
  0146  GETTABLE  R10 = R10[K42('DispatchEvent')]
  0147  GETTABUP  R11 = _ENV[K43('EEventType')]
  0148  GETTABLE  R11 = R11[K44('UpdateSceneViewHud')]
  0149  NEWTABLE  R12 = {} (0 items)
  0150  SETTABLE  R12[K45('Show')] = K46(true)
  0151  NEWTABLE  R13 = {} (1 items)
  0152  GETTABUP  R14 = _ENV[K48('EHudAnchorType')]
  0153  GETTABLE  R14 = R14[K49('TopLeft')]
  0154  SETLIST   setlist R13[B=1,C=1]
  0155  SETTABLE  R12[K47('AnchorTypes')] = R13
  0156  CALL      R10 = call(R10, 0 args, 2 rets)
  0157  GETTABUP  R10 = _ENV[K41('EventDispatcher')]
  0158  GETTABLE  R10 = R10[K50('AddListener')]
  0159  GETTABUP  R11 = _ENV[K43('EEventType')]
  0160  GETTABLE  R11 = R11[K51('ShopRefreshed')]
  0161  MOVE      R12 = R0
  0162  GETTABLE  R13 = R0[K30('OnShopRefreshed')]
  0163  CALL      R10 = call(R10, 0 args, 3 rets)
  0164  GETTABUP  R10 = _ENV[K41('EventDispatcher')]
  0165  GETTABLE  R10 = R10[K50('AddListener')]
  0166  GETTABUP  R11 = _ENV[K43('EEventType')]
  0167  GETTABLE  R11 = R11[K52('OpenView')]
  0168  MOVE      R12 = R0
  0169  GETTABLE  R13 = R0[K53('_OnOpenView')]
  0170  CALL      R10 = call(R10, 0 args, 3 rets)
  0171  GETTABUP  R10 = _ENV[K41('EventDispatcher')]
  0172  GETTABLE  R10 = R10[K50('AddListener')]
  0173  GETTABUP  R11 = _ENV[K43('EEventType')]
  0174  GETTABLE  R11 = R11[K54('OnViewWillClose')]
  0175  MOVE      R12 = R0
  0176  GETTABLE  R13 = R0[K55('_OnViewWillClose')]
  0177  CALL      R10 = call(R10, 0 args, 3 rets)
  0178  TEST      if not R1 then   -> -130892
  0179  JMP       (jump)   -> 184
  0180  SELF      R11 = R0[K56('LocateShopType')] (self)
  0181  MOVE      R12 = R0
  0182  CALL      R10 = call(R10, 0 args, 2 rets)
  0183  JMP       (jump)   -> 209
  0184  SELF      R11 = R0[K57('SetScrollEnabled')] (self)
  0185  LOADBOOL  R12 = true
  0186  CALL      R10 = call(R10, 0 args, 2 rets)
  0187  GETTABUP  R10 = _ENV[K1('GM')]
  0188  GETTABLE  R10 = R10[K2('ShopModel')]
  0189  SELF      R11 = R10[K58('HasFreeDailyDeals')] (self)
  0190  CALL      R10 = call(R10, 1 args, 1 rets)
  0191  TEST      if not R10 then   -> -130879
  0192  JMP       (jump)   -> 209
  0193  GETTABUP  R10 = _ENV[K59('ShopButton')]
  0194  GETTABLE  R10 = R10[K60('ShopWindowOpened')]
  0195  TEST      if not R10 then   -> -130874
  0196  JMP       (jump)   -> 209
  0197  SELF      R11 = R0[K61('LocatePosition')] (self)
  0198  GETTABUP  R12 = _ENV[K15('EShopType')]
  0199  GETTABLE  R12 = R12[K62('DailyDeals')]
  0200  CALL      R10 = call(R10, 2 args, 2 rets)
  0201  LT        if R0 lt R10   -> 32469
  0202  JMP       (jump)   -> 209
  0203  GETTABUP  R12 = _ENV[K64('DelayExecuteFuncInView')]
  0204  CLOSURE   R13 = closure proto1
  0205  LOADK     R14 = K65 0.5
  0206  MOVE      R15 = R0
  0207  LOADBOOL  R16 = true
  0208  CALL      R12 = call(R12, 0 args, 4 rets)
  0209  GETTABUP  R10 = _ENV[K66('UIUtil')]
  0210  GETTABLE  R10 = R10[K67('SetActive')]
  0211  GETTABLE  R11 = R0[K68('m_relatedLawsGo')]
  0212  GETTABUP  R12 = _ENV[K1('GM')]
  0213  GETTABLE  R12 = R12[K69('ConfigModel')]
  0214  SELF      R13 = R12[K70('IsGemLawShow')] (self)
  0215  CALL      R12 = call(R12, -1 args, 1 rets)
  0216  CALL      R10 = call(R10, 0 args, -1 rets)
  0217  SELF      R11 = R0[K71('LogWindowAction')] (self)
  0218  GETTABUP  R12 = _ENV[K72('EBIType')]
  0219  GETTABLE  R12 = R12[K73('UIActionType')]
  0220  GETTABLE  R12 = R12[K74('Open')]
  0221  TEST      if not R2 then   -> -130849
  0222  JMP       (jump)   -> 227
  0223  GETTABUP  R13 = _ENV[K75('EBIReferType')]
  0224  GETTABLE  R13 = R13[K76('AutoPopup')]
  0225  TEST      if not R13 then   -> -130844
  0226  JMP       (jump)   -> 229
  0227  GETTABUP  R13 = _ENV[K75('EBIReferType')]
  0228  GETTABLE  R13 = R13[K77('UserClick')]
  0229  CALL      R10 = call(R10, 0 args, 3 rets)
  0230  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 26-28 np=2 va=0 ms=4 code=10 consts=1 upvals=1 protos=0
    ;   K[0]='Order'
    ;   upvals: mapShopOrderConfig
    ;   locals: eShopType1(0-10), eShopType2(0-10)
    0000  GETTABUP  R2 = mapShopOrderConfig[R0]
    0001  GETTABLE  R2 = R2[K0('Order')]
    0002  GETTABUP  R3 = mapShopOrderConfig[R1]
    0003  GETTABLE  R3 = R3[K0('Order')]
    0004  LT        if R1 lt R3   -> -130039
    0005  JMP       (jump)   -> 7
    0006  LOADBOOL  R2 = false
    0007  LOADBOOL  R2 = true
    0008  RETURN    return R2..R1
    0009  RETURN    return R0..R-1
  ; ---------- proto1 [] ----------
    ; fn ?  line 90-92 np=0 va=0 ms=4 code=7 consts=4 upvals=2 protos=0
    ;   K[0]='LocateShopType'
    ;   K[1]='EShopType'
    ;   K[2]='DailyDeals'
    ;   K[3]=0.5
    ;   upvals: self, _ENV
    0000  GETUPVAL  R0 = self
    0001  SELF      R1 = R0[K0('LocateShopType')] (self)
    0002  GETTABUP  R2 = _ENV[K1('EShopType')]
    0003  GETTABLE  R2 = R2[K2('DailyDeals')]
    0004  LOADK     R3 = K3 0.5
    0005  CALL      R0 = call(R0, 0 args, 3 rets)
    0006  RETURN    return R0..R-1
; ---------- proto1 [OnCloseView] ----------
  ; fn ?  line 102-111 np=1 va=0 ms=8 code=28 consts=14 upvals=1 protos=0
  ;   K[0]='BaseWindow'
  ;   K[1]='OnCloseView'
  ;   K[2]='ipairs'
  ;   K[3]='m_arrContainer'
  ;   K[4]='OnClose'
  ;   K[5]='EventDispatcher'
  ;   K[6]='DispatchEvent'
  ;   K[7]='EEventType'
  ;   K[8]='UpdateSceneViewHud'
  ;   K[9]='Show'
  ;   K[10]=false
  ;   K[11]='AnchorTypes'
  ;   K[12]='EHudAnchorType'
  ;   K[13]='TopLeft'
  ;   upvals: _ENV
  ;   locals: self(0-28), (for generator)(7-15), (for state)(7-15), (for control)(7-15), _(8-13), container(8-13)
  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  GETTABUP  R1 = _ENV[K2('ipairs')]
  0005  GETTABLE  R2 = R0[K3('m_arrContainer')]
  0006  CALL      R1 = call(R1, 3 args, 1 rets)
  0007  JMP       (jump)   -> 13
  0008  GETTABLE  R6 = R5[K4('OnClose')]
  0009  TEST      if not R6 then   -> -131061
  0010  JMP       (jump)   -> 13
  0011  SELF      R7 = R5[K4('OnClose')] (self)
  0012  CALL      R6 = call(R6, 0 args, 1 rets)
  0013  TFORCALL  tforcall R1
  0014  TFORLOOP  tforloop R3(sBx=-7)   -> 8
  0015  GETTABUP  R1 = _ENV[K5('EventDispatcher')]
  0016  GETTABLE  R1 = R1[K6('DispatchEvent')]
  0017  GETTABUP  R2 = _ENV[K7('EEventType')]
  0018  GETTABLE  R2 = R2[K8('UpdateSceneViewHud')]
  0019  NEWTABLE  R3 = {} (0 items)
  0020  SETTABLE  R3[K9('Show')] = K10(false)
  0021  NEWTABLE  R4 = {} (1 items)
  0022  GETTABUP  R5 = _ENV[K12('EHudAnchorType')]
  0023  GETTABLE  R5 = R5[K13('TopLeft')]
  0024  SETLIST   setlist R4[B=1,C=1]
  0025  SETTABLE  R3[K11('AnchorTypes')] = R4
  0026  CALL      R1 = call(R1, 0 args, 2 rets)
  0027  RETURN    return R0..R-1
; ---------- proto2 [OnCloseFinish] ----------
  ; fn ?  line 113-116 np=1 va=0 ms=4 code=8 consts=3 upvals=1 protos=0
  ;   K[0]='BaseWindow'
  ;   K[1]='OnCloseFinish'
  ;   K[2]='_ToggleHudHighlight'
  ;   upvals: _ENV
  ;   locals: self(0-8)
  0000  GETTABUP  R1 = _ENV[K0('BaseWindow')]
  0001  GETTABLE  R1 = R1[K1('OnCloseFinish')]
  0002  MOVE      R2 = R0
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  SELF      R2 = R0[K2('_ToggleHudHighlight')] (self)
  0005  LOADBOOL  R3 = false
  0006  CALL      R1 = call(R1, 0 args, 2 rets)
  0007  RETURN    return R0..R-1
; ---------- proto3 [_ToggleHudHighlight] ----------
  ; fn ?  line 118-123 np=2 va=0 ms=6 code=44 consts=13 upvals=1 protos=0
  ;   K[0]='EventDispatcher'
  ;   K[1]='DispatchEvent'
  ;   K[2]='EEventType'
  ;   K[3]='HighlightHud'
  ;   K[4]='highlight'
  ;   K[5]='hudKey'
  ;   K[6]='ESceneViewHudButtonKey'
  ;   K[7]='Coin'
  ;   K[8]='Gem'
  ;   K[9]='enableBtn'
  ;   K[10]=true
  ;   K[11]='Energy'
  ;   K[12]='SkipProp'
  ;   upvals: _ENV
  ;   locals: self(0-44), on(0-44)
  0000  GETTABUP  R2 = _ENV[K0('EventDispatcher')]
  0001  GETTABLE  R2 = R2[K1('DispatchEvent')]
  0002  GETTABUP  R3 = _ENV[K2('EEventType')]
  0003  GETTABLE  R3 = R3[K3('HighlightHud')]
  0004  NEWTABLE  R4 = {} (0 items)
  0005  SETTABLE  R4[K4('highlight')] = R1
  0006  GETTABUP  R5 = _ENV[K6('ESceneViewHudButtonKey')]
  0007  GETTABLE  R5 = R5[K7('Coin')]
  0008  SETTABLE  R4[K5('hudKey')] = R5
  0009  CALL      R2 = call(R2, 0 args, 2 rets)
  0010  GETTABUP  R2 = _ENV[K0('EventDispatcher')]
  0011  GETTABLE  R2 = R2[K1('DispatchEvent')]
  0012  GETTABUP  R3 = _ENV[K2('EEventType')]
  0013  GETTABLE  R3 = R3[K3('HighlightHud')]
  0014  NEWTABLE  R4 = {} (0 items)
  0015  SETTABLE  R4[K4('highlight')] = R1
  0016  GETTABUP  R5 = _ENV[K6('ESceneViewHudButtonKey')]
  0017  GETTABLE  R5 = R5[K8('Gem')]
  0018  SETTABLE  R4[K5('hudKey')] = R5
  0019  SETTABLE  R4[K9('enableBtn')] = K10(true)
  0020  CALL      R2 = call(R2, 0 args, 2 rets)
  0021  GETTABUP  R2 = _ENV[K0('EventDispatcher')]
  0022  GETTABLE  R2 = R2[K1('DispatchEvent')]
  0023  GETTABUP  R3 = _ENV[K2('EEventType')]
  0024  GETTABLE  R3 = R3[K3('HighlightHud')]
  0025  NEWTABLE  R4 = {} (0 items)
  0026  SETTABLE  R4[K4('highlight')] = R1
  0027  GETTABUP  R5 = _ENV[K6('ESceneViewHudButtonKey')]
  0028  GETTABLE  R5 = R5[K11('Energy')]
  0029  SETTABLE  R4[K5('hudKey')] = R5
  0030  SETTABLE  R4[K9('enableBtn')] = K10(true)
  0031  CALL      R2 = call(R2, 0 args, 2 rets)
  0032  GETTABUP  R2 = _ENV[K0('EventDispatcher')]
  0033  GETTABLE  R2 = R2[K1('DispatchEvent')]
  0034  GETTABUP  R3 = _ENV[K2('EEventType')]
  0035  GETTABLE  R3 = R3[K3('HighlightHud')]
  0036  NEWTABLE  R4 = {} (0 items)
  0037  SETTABLE  R4[K4('highlight')] = R1
  0038  GETTABUP  R5 = _ENV[K6('ESceneViewHudButtonKey')]
  0039  GETTABLE  R5 = R5[K12('SkipProp')]
  0040  SETTABLE  R4[K5('hudKey')] = R5
  0041  SETTABLE  R4[K9('enableBtn')] = K10(true)
  0042  CALL      R2 = call(R2, 0 args, 2 rets)
  0043  RETURN    return R0..R-1
; ---------- proto4 [_OnOpenView] ----------
  ; fn ?  line 125-130 np=2 va=0 ms=6 code=16 consts=8 upvals=1 protos=0
  ;   K[0]='name'
  ;   K[1]='UIPrefabConfigName'
  ;   K[2]='AnimatedRewardWindow'
  ;   K[3]='m_canvasGroup'
  ;   K[4]='DOFade'
  ;   K[5]=0
  ;   K[6]=0.3
  ;   K[7]='_ToggleHudHighlight'
  ;   upvals: _ENV
  ;   locals: self(0-16), msg(0-16)
  0000  TEST      if not R1 then   -> -131070
  0001  JMP       (jump)   -> 15
  0002  GETTABLE  R2 = R1[K0('name')]
  0003  GETTABUP  R3 = _ENV[K1('UIPrefabConfigName')]
  0004  GETTABLE  R3 = R3[K2('AnimatedRewardWindow')]
  0005  EQ        if R0 eq R3   -> -130038
  0006  JMP       (jump)   -> 15
  0007  GETTABLE  R2 = R0[K3('m_canvasGroup')]
  0008  SELF      R3 = R2[K4('DOFade')] (self)
  0009  LOADK     R4 = K5 0
  0010  LOADK     R5 = K6 0.3
  0011  CALL      R2 = call(R2, 0 args, 3 rets)
  0012  SELF      R3 = R0[K7('_ToggleHudHighlight')] (self)
  0013  LOADBOOL  R4 = false
  0014  CALL      R2 = call(R2, 0 args, 2 rets)
  0015  RETURN    return R0..R-1
; ---------- proto5 [_OnViewWillClose] ----------
  ; fn ?  line 132-137 np=2 va=0 ms=6 code=16 consts=8 upvals=1 protos=0
  ;   K[0]='name'
  ;   K[1]='UIPrefabConfigName'
  ;   K[2]='AnimatedRewardWindow'
  ;   K[3]='m_canvasGroup'
  ;   K[4]='DOFade'
  ;   K[5]=1
  ;   K[6]=0.3
  ;   K[7]='_ToggleHudHighlight'
  ;   upvals: _ENV
  ;   locals: self(0-16), msg(0-16)
  0000  TEST      if not R1 then   -> -131070
  0001  JMP       (jump)   -> 15
  0002  GETTABLE  R2 = R1[K0('name')]
  0003  GETTABUP  R3 = _ENV[K1('UIPrefabConfigName')]
  0004  GETTABLE  R3 = R3[K2('AnimatedRewardWindow')]
  0005  EQ        if R0 eq R3   -> -130038
  0006  JMP       (jump)   -> 15
  0007  GETTABLE  R2 = R0[K3('m_canvasGroup')]
  0008  SELF      R3 = R2[K4('DOFade')] (self)
  0009  LOADK     R4 = K5 1
  0010  LOADK     R5 = K6 0.3
  0011  CALL      R2 = call(R2, 0 args, 3 rets)
  0012  SELF      R3 = R0[K7('_ToggleHudHighlight')] (self)
  0013  LOADBOOL  R4 = true
  0014  CALL      R2 = call(R2, 0 args, 2 rets)
  0015  RETURN    return R0..R-1
; ---------- proto6 [LocatePosition] ----------
  ; fn ?  line 139-168 np=2 va=0 ms=13 code=72 consts=22 upvals=1 protos=0
  ;   K[0]='LayoutRebuilder'
  ;   K[1]='ForceRebuildLayoutImmediate'
  ;   K[2]='m_contentLayoutGroup'
  ;   K[3]='transform'
  ;   K[4]='EShopType'
  ;   K[5]='Diamonds'
  ;   K[6]=0
  ;   K[7]='ipairs'
  ;   K[8]='m_arrContainer'
  ;   K[9]='GetShopType'
  ;   K[10]=nil
  ;   K[11]='GetContentHeight'
  ;   K[12]='m_spacingHeight'
  ;   K[13]='m_scrollMask'
  ;   K[14]='rect'
  ;   K[15]='size'
  ;   K[16]='y'
  ;   K[17]=2
  ;   K[18]=300
  ;   K[19]='math'
  ;   K[20]='max'
  ;   K[21]='min'
  ;   upvals: _ENV
  ;   locals: self(0-72), shopType(0-72), focusContainer(10-72), height(11-72), targetHeight(12-72), contentHeight(13-72), (for generator)(16-35), (for state)(16-35), (for control)(16-35), _(17-33), container(17-33), viewHeight(40-72), maxHeight(62-72)
  0000  GETTABUP  R2 = _ENV[K0('LayoutRebuilder')]
  0001  GETTABLE  R2 = R2[K1('ForceRebuildLayoutImmediate')]
  0002  GETTABLE  R3 = R0[K2('m_contentLayoutGroup')]
  0003  GETTABLE  R3 = R3[K3('transform')]
  0004  CALL      R2 = call(R2, 0 args, 1 rets)
  0005  TEST      if not R1 then   -> -131064
  0006  JMP       (jump)   -> 9
  0007  GETTABUP  R2 = _ENV[K4('EShopType')]
  0008  GETTABLE  R1 = R2[K5('Diamonds')]
  0009  LOADNIL   R2..R2 = nil
  0010  LOADK     R3 = K6 0
  0011  LOADNIL   R4..R4 = nil
  0012  LOADK     R5 = K6 0
  0013  GETTABUP  R6 = _ENV[K7('ipairs')]
  0014  GETTABLE  R7 = R0[K8('m_arrContainer')]
  0015  CALL      R6 = call(R6, 3 args, 1 rets)
  0016  JMP       (jump)   -> 33
  0017  SELF      R12 = R10[K9('GetShopType')] (self)
  0018  CALL      R11 = call(R11, 1 args, 1 rets)
  0019  EQ        if R0 eq R1   -> -125418
  0020  JMP       (jump)   -> 25
  0021  EQ        if R0 eq K10(nil)   -> -128735
  0022  JMP       (jump)   -> 25
  0023  MOVE      R4 = R0
  0024  MOVE      R2 = R0
  0025  SELF      R12 = R10[K11('GetContentHeight')] (self)
  0026  CALL      R11 = call(R11, 1 args, 1 rets)
  0027  MOVE      R5 = R0
  0028  LT        if R0 lt R5   -> 3107
  0029  JMP       (jump)   -> 33
  0030  ADD       R11 = R5 add R3
  0031  GETTABLE  R12 = R0[K12('m_spacingHeight')]
  0032  ADD       R3 = R12 add R11
  0033  TFORCALL  tforcall R6
  0034  TFORLOOP  tforloop R8(sBx=-18)   -> 17
  0035  GETTABLE  R6 = R0[K13('m_scrollMask')]
  0036  GETTABLE  R6 = R6[K3('transform')]
  0037  GETTABLE  R6 = R6[K14('rect')]
  0038  GETTABLE  R6 = R6[K15('size')]
  0039  GETTABLE  R6 = R6[K16('y')]
  0040  TEST      if not R4 then   -> -131029
  0041  JMP       (jump)   -> 43
  0042  LOADK     R4 = K6 0
  0043  DIV       R7 = K17(2) div R6
  0044  SUB       R7 = R7 sub R4
  0045  ADD       R4 = K18(300) add R7
  0046  GETTABUP  R7 = _ENV[K19('math')]
  0047  GETTABLE  R7 = R7[K20('max')]
  0048  LOADK     R8 = K6 0
  0049  MOVE      R9 = R0
  0050  CALL      R7 = call(R7, 1 args, 2 rets)
  0051  MOVE      R4 = R0
  0052  GETTABUP  R7 = _ENV[K19('math')]
  0053  GETTABLE  R7 = R7[K20('max')]
  0054  LOADK     R8 = K6 0
  0055  GETTABLE  R9 = R0[K2('m_contentLayoutGroup')]
  0056  GETTABLE  R9 = R9[K3('transform')]
  0057  GETTABLE  R9 = R9[K14('rect')]
  0058  GETTABLE  R9 = R9[K15('size')]
  0059  GETTABLE  R9 = R9[K16('y')]
  0060  SUB       R9 = R6 sub R9
  0061  CALL      R7 = call(R7, 1 args, 2 rets)
  0062  GETTABUP  R8 = _ENV[K19('math')]
  0063  GETTABLE  R8 = R8[K21('min')]
  0064  MOVE      R9 = R0
  0065  MOVE      R10 = R0
  0066  CALL      R8 = call(R8, 1 args, 2 rets)
  0067  MOVE      R4 = R0
  0068  MOVE      R8 = R0
  0069  MOVE      R9 = R0
  0070  RETURN    return R8..R7
  0071  RETURN    return R0..R-1
; ---------- proto7 [LocateShopType] ----------
  ; fn ?  line 170-185 np=3 va=0 ms=9 code=39 consts=17 upvals=1 protos=1
  ;   K[0]='LocatePosition'
  ;   K[1]='math'
  ;   K[2]='abs'
  ;   K[3]='m_contentLayoutGroup'
  ;   K[4]='transform'
  ;   K[5]='anchoredPosition'
  ;   K[6]='y'
  ;   K[7]=0.5
  ;   K[8]='m_scrollView'
  ;   K[9]='StopMovement'
  ;   K[10]='DOKill'
  ;   K[11]='DOAnchorPosY'
  ;   K[12]=0.2
  ;   K[13]='SetEase'
  ;   K[14]='Ease'
  ;   K[15]='OutQuart'
  ;   K[16]='OnComplete'
  ;   upvals: _ENV
  ;   locals: self(0-39), shopType(0-39), time(0-39), targetHeight(3-39), focusContainer(3-39)
  0000  SELF      R4 = R0[K0('LocatePosition')] (self)
  0001  MOVE      R5 = R0
  0002  CALL      R3 = call(R3, 2 args, 2 rets)
  0003  GETTABUP  R5 = _ENV[K1('math')]
  0004  GETTABLE  R5 = R5[K2('abs')]
  0005  GETTABLE  R6 = R0[K3('m_contentLayoutGroup')]
  0006  GETTABLE  R6 = R6[K4('transform')]
  0007  GETTABLE  R6 = R6[K5('anchoredPosition')]
  0008  GETTABLE  R6 = R6[K6('y')]
  0009  SUB       R6 = R6 sub R3
  0010  CALL      R5 = call(R5, 1 args, 1 rets)
  0011  LT        if R1 lt K7(0.5)   -> -128236
  0012  JMP       (jump)   -> 15
  0013  TEST      if not R4 then   -> -131056
  0014  JMP       (jump)   -> 16
  0015  RETURN    return R0..R-1
  0016  GETTABLE  R5 = R0[K8('m_scrollView')]
  0017  SELF      R6 = R5[K9('StopMovement')] (self)
  0018  CALL      R5 = call(R5, 0 args, 1 rets)
  0019  GETTABLE  R5 = R0[K3('m_contentLayoutGroup')]
  0020  GETTABLE  R5 = R5[K4('transform')]
  0021  SELF      R6 = R5[K10('DOKill')] (self)
  0022  CALL      R5 = call(R5, 0 args, 1 rets)
  0023  GETTABLE  R5 = R0[K3('m_contentLayoutGroup')]
  0024  GETTABLE  R5 = R5[K4('transform')]
  0025  SELF      R6 = R5[K11('DOAnchorPosY')] (self)
  0026  MOVE      R7 = R0
  0027  TESTSET   if R1 then R8   -> -130018
  0028  JMP       (jump)   -> 30
  0029  LOADK     R8 = K12 0.2
  0030  CALL      R5 = call(R5, 1 args, 3 rets)
  0031  SELF      R6 = R5[K13('SetEase')] (self)
  0032  GETTABUP  R7 = _ENV[K14('Ease')]
  0033  GETTABLE  R7 = R7[K15('OutQuart')]
  0034  CALL      R5 = call(R5, 1 args, 2 rets)
  0035  SELF      R6 = R5[K16('OnComplete')] (self)
  0036  CLOSURE   R7 = closure proto0
  0037  CALL      R5 = call(R5, 0 args, 2 rets)
  0038  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 179-184 np=0 va=0 ms=3 code=13 consts=4 upvals=2 protos=0
    ;   K[0]='m_scrollView'
    ;   K[1]='IsNull'
    ;   K[2]='SetScrollEnabled'
    ;   K[3]='ShowFocusEffect'
    ;   upvals: self, focusContainer
    0000  GETTABUP  R0 = self[K0('m_scrollView')]
    0001  SELF      R1 = R0[K1('IsNull')] (self)
    0002  CALL      R0 = call(R0, 1 args, 1 rets)
    0003  TEST      if not R0 then   -> -131066
    0004  JMP       (jump)   -> 9
    0005  GETUPVAL  R0 = self
    0006  SELF      R1 = R0[K2('SetScrollEnabled')] (self)
    0007  LOADBOOL  R2 = true
    0008  CALL      R0 = call(R0, 0 args, 2 rets)
    0009  GETUPVAL  R0 = self
    0010  SELF      R1 = R0[K3('ShowFocusEffect')] (self)
    0011  CALL      R0 = call(R0, 0 args, 1 rets)
    0012  RETURN    return R0..R-1
; ---------- proto8 [SetScrollEnabled] ----------
  ; fn ?  line 187-189 np=2 va=0 ms=3 code=3 consts=2 upvals=0 protos=0
  ;   K[0]='m_scrollView'
  ;   K[1]='enabled'
  ;   locals: self(0-3), enable(0-3)
  0000  GETTABLE  R2 = R0[K0('m_scrollView')]
  0001  SETTABLE  R2[K1('enabled')] = R1
  0002  RETURN    return R0..R-1
; ---------- proto9 [RefreshScrollMask] ----------
  ; fn ?  line 191-194 np=1 va=0 ms=2 code=5 consts=4 upvals=0 protos=0
  ;   K[0]='m_scrollMask'
  ;   K[1]='enabled'
  ;   K[2]=false
  ;   K[3]=true
  ;   locals: self(0-5)
  0000  GETTABLE  R1 = R0[K0('m_scrollMask')]
  0001  SETTABLE  R1[K1('enabled')] = K2(false)
  0002  GETTABLE  R1 = R0[K0('m_scrollMask')]
  0003  SETTABLE  R1[K1('enabled')] = K3(true)
  0004  RETURN    return R0..R-1
; ---------- proto10 [OnShopRefreshed] ----------
  ; fn ?  line 196-198 np=1 va=0 ms=2 code=1 consts=0 upvals=0 protos=0
  ;   locals: self(0-1)
  0000  RETURN    return R0..R-1
; ---------- proto11 [GetDailyFreeGiftCell] ----------
  ; fn ?  line 200-212 np=1 va=0 ms=14 code=30 consts=11 upvals=1 protos=0
  ;   K[0]='ipairs'
  ;   K[1]='m_arrContainer'
  ;   K[2]='GetShopType'
  ;   K[3]='EShopType'
  ;   K[4]='DailyDeals'
  ;   K[5]=1
  ;   K[6]='GetCellCount'
  ;   K[7]='GetCell'
  ;   K[8]='GetData'
  ;   K[9]='Price'
  ;   K[10]=0
  ;   upvals: _ENV
  ;   locals: self(0-30), (for generator)(3-29), (for state)(3-29), (for control)(3-29), _(4-27), container(4-27), cell(11-27), (for index)(15-27), (for limit)(15-27), (for step)(15-27), index(16-26)
  0000  GETTABUP  R1 = _ENV[K0('ipairs')]
  0001  GETTABLE  R2 = R0[K1('m_arrContainer')]
  0002  CALL      R1 = call(R1, 3 args, 1 rets)
  0003  JMP       (jump)   -> 27
  0004  SELF      R7 = R5[K2('GetShopType')] (self)
  0005  CALL      R6 = call(R6, 1 args, 1 rets)
  0006  GETTABUP  R7 = _ENV[K3('EShopType')]
  0007  GETTABLE  R7 = R7[K4('DailyDeals')]
  0008  EQ        if R0 eq R7   -> -127983
  0009  JMP       (jump)   -> 27
  0010  LOADNIL   R6..R6 = nil
  0011  LOADK     R7 = K5 1
  0012  SELF      R9 = R5[K6('GetCellCount')] (self)
  0013  CALL      R8 = call(R8, 1 args, 1 rets)
  0014  LOADK     R9 = K5 1
  0015  FORPREP   forprep R7(sBx=10)   -> 26
  0016  SELF      R12 = R5[K7('GetCell')] (self)
  0017  MOVE      R13 = R0
  0018  CALL      R11 = call(R11, 1 args, 2 rets)
  0019  MOVE      R6 = R0
  0020  SELF      R12 = R6[K8('GetData')] (self)
  0021  CALL      R11 = call(R11, 1 args, 1 rets)
  0022  GETTABLE  R11 = R11[K9('Price')]
  0023  EQ        if R0 eq K10(0)   -> -125149
  0024  JMP       (jump)   -> 26
  0025  RETURN    return R6..R5
  0026  FORLOOP   forloop R7(sBx=-11)   -> 16
  0027  TFORCALL  tforcall R1
  0028  TFORLOOP  tforloop R3(sBx=-25)   -> 4
  0029  RETURN    return R0..R-1
; ---------- proto12 [OnRestorePurchase] ----------
  ; fn ?  line 214-216 np=1 va=0 ms=4 code=6 consts=3 upvals=1 protos=0
  ;   K[0]='GM'
  ;   K[1]='InAppPurchaseModel'
  ;   K[2]='RestorePurchase'
  ;   upvals: _ENV
  ;   locals: self(0-6)
  0000  GETTABUP  R1 = _ENV[K0('GM')]
  0001  GETTABLE  R1 = R1[K1('InAppPurchaseModel')]
  0002  SELF      R2 = R1[K2('RestorePurchase')] (self)
  0003  LOADBOOL  R3 = true
  0004  CALL      R1 = call(R1, 0 args, 2 rets)
  0005  RETURN    return R0..R-1
; ---------- proto13 [OnGemLawBtnClick] ----------
  ; fn ?  line 219-221 np=1 va=0 ms=5 code=8 consts=5 upvals=1 protos=0
  ;   K[0]='CSPlatform'
  ;   K[1]='OpenURL'
  ;   K[2]='GM'
  ;   K[3]='ConfigModel'
  ;   K[4]='GetGemLawURL'
  ;   upvals: _ENV
  ;   locals: self(0-8)
  0000  GETTABUP  R1 = _ENV[K0('CSPlatform')]
  0001  SELF      R2 = R1[K1('OpenURL')] (self)
  0002  GETTABUP  R3 = _ENV[K2('GM')]
  0003  GETTABLE  R3 = R3[K3('ConfigModel')]
  0004  SELF      R4 = R3[K4('GetGemLawURL')] (self)
  0005  CALL      R3 = call(R3, -1 args, 1 rets)
  0006  CALL      R1 = call(R1, 0 args, -1 rets)
  0007  RETURN    return R0..R-1
