# Model_NoticeModel_193.luac
; fn @NoticeModel.lua  line 0-0 np=0 va=1 ms=2 code=77 consts=36 upvals=1 protos=21
;   K[0]='NoticeState'
;   K[1]='Unread'
;   K[2]=1
;   K[3]='FollowLink'
;   K[4]=2
;   K[5]='GetRewards'
;   K[6]=3
;   K[7]='Read'
;   K[8]=4
;   K[9]='NoticeModel'
;   K[10]='__index'
;   K[11]='CustomerServiceRewardPrefix'
;   K[12]='cs_'
;   K[13]='Init'
;   K[14]='GetData'
;   K[15]='FromSyncData'
;   K[16]='HasUnreadSystemNotice'
;   K[17]='CheckNewNotice'
;   K[18]='OnSceneViewLoaded'
;   K[19]='UpdateAfterLoginFinished'
;   K[20]='UpdateData'
;   K[21]='_LoadServerConfig'
;   K[22]='_UpdateCustomerServiceRewards'
;   K[23]='NoticeModel'
;   K[24]='HasNewNotice'
;   K[25]='ResetHasNewNotice'
;   K[26]='GetNotices'
;   K[27]='_CreateNotice'
;   K[28]='GetNoticeState'
;   K[29]='_TrySetNoticeState'
;   K[30]='OnNoticeOpen'
;   K[31]='OnNoticeFollowLink'
;   K[32]='_OnNoticeGetRewards'
;   K[33]='AcquireRewards'
;   K[34]='NoticeModel'
;   K[35]='_GetGameModeByEventId'
;   upvals: _ENV
0000  NEWTABLE  R0 = {} (0 items)
0001  SETTABLE  R0[K1('Unread')] = K2(1)
0002  SETTABLE  R0[K3('FollowLink')] = K4(2)
0003  SETTABLE  R0[K5('GetRewards')] = K6(3)
0004  SETTABLE  R0[K7('Read')] = K8(4)
0005  SETTABUP  _ENV[K0('NoticeState')] = R0
0006  NEWTABLE  R0 = {} (0 items)
0007  SETTABUP  _ENV[K9('NoticeModel')] = R0
0008  GETTABUP  R0 = _ENV[K9('NoticeModel')]
0009  GETTABUP  R1 = _ENV[K9('NoticeModel')]
0010  SETTABLE  R0[K10('__index')] = R1
0011  GETTABUP  R0 = _ENV[K9('NoticeModel')]
0012  SETTABLE  R0[K11('CustomerServiceRewardPrefix')] = K12('cs_')
0013  GETTABUP  R0 = _ENV[K9('NoticeModel')]
0014  CLOSURE   R1 = closure proto0
0015  SETTABLE  R0[K13('Init')] = R1
0016  GETTABUP  R0 = _ENV[K9('NoticeModel')]
0017  CLOSURE   R1 = closure proto1
0018  SETTABLE  R0[K14('GetData')] = R1
0019  GETTABUP  R0 = _ENV[K9('NoticeModel')]
0020  CLOSURE   R1 = closure proto2
0021  SETTABLE  R0[K15('FromSyncData')] = R1
0022  GETTABUP  R0 = _ENV[K9('NoticeModel')]
0023  CLOSURE   R1 = closure proto3
0024  SETTABLE  R0[K16('HasUnreadSystemNotice')] = R1
0025  GETTABUP  R0 = _ENV[K9('NoticeModel')]
0026  CLOSURE   R1 = closure proto4
0027  SETTABLE  R0[K17('CheckNewNotice')] = R1
0028  GETTABUP  R0 = _ENV[K9('NoticeModel')]
0029  CLOSURE   R1 = closure proto5
0030  SETTABLE  R0[K18('OnSceneViewLoaded')] = R1
0031  GETTABUP  R0 = _ENV[K9('NoticeModel')]
0032  CLOSURE   R1 = closure proto6
0033  SETTABLE  R0[K19('UpdateAfterLoginFinished')] = R1
0034  GETTABUP  R0 = _ENV[K9('NoticeModel')]
0035  CLOSURE   R1 = closure proto7
0036  SETTABLE  R0[K20('UpdateData')] = R1
0037  GETTABUP  R0 = _ENV[K9('NoticeModel')]
0038  CLOSURE   R1 = closure proto8
0039  SETTABLE  R0[K21('_LoadServerConfig')] = R1
0040  GETTABUP  R0 = _ENV[K9('NoticeModel')]
0041  CLOSURE   R1 = closure proto9
0042  SETTABLE  R0[K22('_UpdateCustomerServiceRewards')] = R1
0043  GETTABUP  R0 = _ENV[K23('NoticeModel')]
0044  CLOSURE   R1 = closure proto10
0045  SETTABLE  R0[K24('HasNewNotice')] = R1
0046  GETTABUP  R0 = _ENV[K23('NoticeModel')]
0047  CLOSURE   R1 = closure proto11
0048  SETTABLE  R0[K25('ResetHasNewNotice')] = R1
0049  GETTABUP  R0 = _ENV[K23('NoticeModel')]
0050  CLOSURE   R1 = closure proto12
0051  SETTABLE  R0[K26('GetNotices')] = R1
0052  GETTABUP  R0 = _ENV[K23('NoticeModel')]
0053  CLOSURE   R1 = closure proto13
0054  SETTABLE  R0[K27('_CreateNotice')] = R1
0055  GETTABUP  R0 = _ENV[K23('NoticeModel')]
0056  CLOSURE   R1 = closure proto14
0057  SETTABLE  R0[K28('GetNoticeState')] = R1
0058  GETTABUP  R0 = _ENV[K23('NoticeModel')]
0059  CLOSURE   R1 = closure proto15
0060  SETTABLE  R0[K29('_TrySetNoticeState')] = R1
0061  GETTABUP  R0 = _ENV[K23('NoticeModel')]
0062  CLOSURE   R1 = closure proto16
0063  SETTABLE  R0[K30('OnNoticeOpen')] = R1
0064  GETTABUP  R0 = _ENV[K23('NoticeModel')]
0065  CLOSURE   R1 = closure proto17
0066  SETTABLE  R0[K31('OnNoticeFollowLink')] = R1
0067  GETTABUP  R0 = _ENV[K23('NoticeModel')]
0068  CLOSURE   R1 = closure proto18
0069  SETTABLE  R0[K32('_OnNoticeGetRewards')] = R1
0070  GETTABUP  R0 = _ENV[K23('NoticeModel')]
0071  CLOSURE   R1 = closure proto19
0072  SETTABLE  R0[K33('AcquireRewards')] = R1
0073  GETTABUP  R0 = _ENV[K34('NoticeModel')]
0074  CLOSURE   R1 = closure proto20
0075  SETTABLE  R0[K35('_GetGameModeByEventId')] = R1
0076  RETURN    return R0..R-1
; ---------- proto0 [Init] ----------
  ; fn ?  line 16-21 np=1 va=0 ms=4 code=13 consts=10 upvals=1 protos=0
  ;   K[0]='m_dbTable'
  ;   K[1]='GM'
  ;   K[2]='DBTableManager'
  ;   K[3]='GetTable'
  ;   K[4]='EDBTableConfigs'
  ;   K[5]='NoticeState'
  ;   K[6]='m_hasNewNotice'
  ;   K[7]=false
  ;   K[8]='m_textMap'
  ;   K[9]='m_notices'
  ;   upvals: _ENV
  ;   locals: self(0-13)
  0000  GETTABUP  R1 = _ENV[K1('GM')]
  0001  GETTABLE  R1 = R1[K2('DBTableManager')]
  0002  SELF      R2 = R1[K3('GetTable')] (self)
  0003  GETTABUP  R3 = _ENV[K4('EDBTableConfigs')]
  0004  GETTABLE  R3 = R3[K5('NoticeState')]
  0005  CALL      R1 = call(R1, 1 args, 2 rets)
  0006  SETTABLE  R0[K0('m_dbTable')] = R1
  0007  SETTABLE  R0[K6('m_hasNewNotice')] = K7(false)
  0008  NEWTABLE  R1 = {} (0 items)
  0009  SETTABLE  R0[K8('m_textMap')] = R1
  0010  NEWTABLE  R1 = {} (0 items)
  0011  SETTABLE  R0[K9('m_notices')] = R1
  0012  RETURN    return R0..R-1
; ---------- proto1 [GetData] ----------
  ; fn ?  line 23-25 np=1 va=0 ms=2 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='m_dbTable'
  ;   locals: self(0-3)
  0000  GETTABLE  R1 = R0[K0('m_dbTable')]
  0001  RETURN    return R1..R0
  0002  RETURN    return R0..R-1
; ---------- proto2 [FromSyncData] ----------
  ; fn ?  line 27-29 np=2 va=0 ms=5 code=5 consts=2 upvals=0 protos=0
  ;   K[0]='m_dbTable'
  ;   K[1]='FromArr'
  ;   locals: self(0-5), dataArr(0-5)
  0000  GETTABLE  R2 = R0[K0('m_dbTable')]
  0001  SELF      R3 = R2[K1('FromArr')] (self)
  0002  MOVE      R4 = R0
  0003  CALL      R2 = call(R2, 0 args, 2 rets)
  0004  RETURN    return R0..R-1
; ---------- proto3 [HasUnreadSystemNotice] ----------
  ; fn ?  line 31-42 np=1 va=0 ms=10 code=25 consts=9 upvals=1 protos=0
  ;   K[0]='GM'
  ;   K[1]='GameModel'
  ;   K[2]='GetServerTime'
  ;   K[3]='ipairs'
  ;   K[4]='m_notices'
  ;   K[5]='DisappearTime'
  ;   K[6]='GetNoticeState'
  ;   K[7]='NoticeState'
  ;   K[8]='Read'
  ;   upvals: _ENV
  ;   locals: self(0-25), serverTime(4-25), (for generator)(7-22), (for state)(7-22), (for control)(7-22), _(8-20), notice(8-20)
  0000  GETTABUP  R1 = _ENV[K0('GM')]
  0001  GETTABLE  R1 = R1[K1('GameModel')]
  0002  SELF      R2 = R1[K2('GetServerTime')] (self)
  0003  CALL      R1 = call(R1, 1 args, 1 rets)
  0004  GETTABUP  R2 = _ENV[K3('ipairs')]
  0005  GETTABLE  R3 = R0[K4('m_notices')]
  0006  CALL      R2 = call(R2, 3 args, 1 rets)
  0007  JMP       (jump)   -> 20
  0008  GETTABLE  R7 = R6[K5('DisappearTime')]
  0009  LE        if R0 le R7   -> -130542
  0010  JMP       (jump)   -> 20
  0011  SELF      R8 = R0[K6('GetNoticeState')] (self)
  0012  MOVE      R9 = R0
  0013  CALL      R7 = call(R7, 1 args, 2 rets)
  0014  GETTABUP  R8 = _ENV[K7('NoticeState')]
  0015  GETTABLE  R8 = R8[K8('Read')]
  0016  EQ        if R1 eq R8   -> -127462
  0017  JMP       (jump)   -> 20
  0018  LOADBOOL  R7 = true
  0019  RETURN    return R7..R6
  0020  TFORCALL  tforcall R2
  0021  TFORLOOP  tforloop R4(sBx=-14)   -> 8
  0022  LOADBOOL  R2 = false
  0023  RETURN    return R2..R1
  0024  RETURN    return R0..R-1
; ---------- proto4 [CheckNewNotice] ----------
  ; fn ?  line 44-56 np=2 va=0 ms=7 code=12 consts=6 upvals=1 protos=1
  ;   K[0]='GM'
  ;   K[1]='UIManager'
  ;   K[2]='ShowMask'
  ;   K[3]='GameModel'
  ;   K[4]='Login'
  ;   K[5]=1
  ;   upvals: _ENV
  ;   locals: self(0-12), callback(0-12), funcCallback(1-12)
  0000  CLOSURE   R2 = closure proto0
  0001  GETTABUP  R3 = _ENV[K0('GM')]
  0002  GETTABLE  R3 = R3[K1('UIManager')]
  0003  SELF      R4 = R3[K2('ShowMask')] (self)
  0004  CALL      R3 = call(R3, 0 args, 1 rets)
  0005  GETTABUP  R3 = _ENV[K0('GM')]
  0006  GETTABLE  R3 = R3[K3('GameModel')]
  0007  SELF      R4 = R3[K4('Login')] (self)
  0008  MOVE      R5 = R0
  0009  LOADK     R6 = K5 1
  0010  CALL      R3 = call(R3, 0 args, 3 rets)
  0011  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 46-51 np=2 va=0 ms=4 code=11 consts=3 upvals=2 protos=0
    ;   K[0]='GM'
    ;   K[1]='UIManager'
    ;   K[2]='HideMask'
    ;   upvals: _ENV, callback
    ;   locals: result(0-11), response(0-11)
    0000  GETTABUP  R2 = _ENV[K0('GM')]
    0001  GETTABLE  R2 = R2[K1('UIManager')]
    0002  SELF      R3 = R2[K2('HideMask')] (self)
    0003  CALL      R2 = call(R2, 0 args, 1 rets)
    0004  GETUPVAL  R2 = _ENV
    0005  TEST      if not R2 then   -> -131065
    0006  JMP       (jump)   -> 10
    0007  GETUPVAL  R2 = _ENV
    0008  MOVE      R3 = R0
    0009  CALL      R2 = call(R2, 0 args, 1 rets)
    0010  RETURN    return R0..R-1
; ---------- proto5 [OnSceneViewLoaded] ----------
  ; fn ?  line 58-61 np=1 va=0 ms=3 code=4 consts=3 upvals=0 protos=0
  ;   K[0]='m_inited'
  ;   K[1]=true
  ;   K[2]='UpdateData'
  ;   locals: self(0-4)
  0000  SETTABLE  R0[K0('m_inited')] = K1(true)
  0001  SELF      R2 = R0[K2('UpdateData')] (self)
  0002  CALL      R1 = call(R1, 0 args, 1 rets)
  0003  RETURN    return R0..R-1
; ---------- proto6 [UpdateAfterLoginFinished] ----------
  ; fn ?  line 63-71 np=2 va=0 ms=12 code=18 consts=9 upvals=1 protos=0
  ;   K[0]=nil
  ;   K[1]='ipairs'
  ;   K[2]='received_bulletin_ids'
  ;   K[3]='m_dbTable'
  ;   K[4]='Set'
  ;   K[5]='tostring'
  ;   K[6]='state'
  ;   K[7]='NoticeState'
  ;   K[8]='Read'
  ;   upvals: _ENV
  ;   locals: self(0-18), loginResponse(0-18), (for generator)(5-17), (for state)(5-17), (for control)(5-17), _(6-15), id(6-15)
  0000  EQ        if R1 eq K0(nil)   -> -130302
  0001  JMP       (jump)   -> 17
  0002  GETTABUP  R2 = _ENV[K1('ipairs')]
  0003  GETTABLE  R3 = R1[K2('received_bulletin_ids')]
  0004  CALL      R2 = call(R2, 3 args, 1 rets)
  0005  JMP       (jump)   -> 15
  0006  GETTABLE  R7 = R0[K3('m_dbTable')]
  0007  SELF      R8 = R7[K4('Set')] (self)
  0008  GETTABUP  R9 = _ENV[K5('tostring')]
  0009  MOVE      R10 = R0
  0010  CALL      R9 = call(R9, 1 args, 1 rets)
  0011  LOADK     R10 = K6 'state'
  0012  GETTABUP  R11 = _ENV[K7('NoticeState')]
  0013  GETTABLE  R11 = R11[K8('Read')]
  0014  CALL      R7 = call(R7, 0 args, 4 rets)
  0015  TFORCALL  tforcall R2
  0016  TFORLOOP  tforloop R4(sBx=-11)   -> 6
  0017  RETURN    return R0..R-1
; ---------- proto7 [UpdateData] ----------
  ; fn ?  line 74-85 np=1 va=0 ms=3 code=16 consts=8 upvals=1 protos=0
  ;   K[0]='m_notices'
  ;   K[1]='m_inited'
  ;   K[2]='_LoadServerConfig'
  ;   K[3]='_UpdateCustomerServiceRewards'
  ;   K[4]='EventDispatcher'
  ;   K[5]='DispatchEvent'
  ;   K[6]='EEventType'
  ;   K[7]='UpdateNotice'
  ;   upvals: _ENV
  ;   locals: self(0-16)
  0000  NEWTABLE  R1 = {} (0 items)
  0001  SETTABLE  R0[K0('m_notices')] = R1
  0002  GETTABLE  R1 = R0[K1('m_inited')]
  0003  TEST      if not R1 then   -> -131066
  0004  JMP       (jump)   -> 6
  0005  RETURN    return R0..R-1
  0006  SELF      R2 = R0[K2('_LoadServerConfig')] (self)
  0007  CALL      R1 = call(R1, 0 args, 1 rets)
  0008  SELF      R2 = R0[K3('_UpdateCustomerServiceRewards')] (self)
  0009  CALL      R1 = call(R1, 0 args, 1 rets)
  0010  GETTABUP  R1 = _ENV[K4('EventDispatcher')]
  0011  GETTABLE  R1 = R1[K5('DispatchEvent')]
  0012  GETTABUP  R2 = _ENV[K6('EEventType')]
  0013  GETTABLE  R2 = R2[K7('UpdateNotice')]
  0014  CALL      R1 = call(R1, 0 args, 1 rets)
  0015  RETURN    return R0..R-1
; ---------- proto8 [_LoadServerConfig] ----------
  ; fn ?  line 87-108 np=1 va=0 ms=21 code=59 consts=25 upvals=1 protos=0
  ;   K[0]='GM'
  ;   K[1]='ConfigModel'
  ;   K[2]='GetServerConfig'
  ;   K[3]='ServerConfigKey'
  ;   K[4]='BulletinLanguage'
  ;   K[5]=nil
  ;   K[6]='ipairs'
  ;   K[7]='m_textMap'
  ;   K[8]='key'
  ;   K[9]='value'
  ;   K[10]='Bulletin'
  ;   K[11]='titleRes'
  ;   K[12]='contentRes'
  ;   K[13]='_CreateNotice'
  ;   K[14]='tostring'
  ;   K[15]='id'
  ;   K[16]='link'
  ;   K[17]='rewards'
  ;   K[18]='sTime'
  ;   K[19]='eTime'
  ;   K[20]='eventId'
  ;   K[21]='orderNumber'
  ;   K[22]='table'
  ;   K[23]='insert'
  ;   K[24]='m_notices'
  ;   upvals: _ENV
  ;   locals: self(0-59), texts(6-59), (for generator)(12-19), (for state)(12-19), (for control)(12-19), _(13-17), text(13-17), bulletinConfigs(25-59), (for generator)(31-58), (for state)(31-58), (for control)(31-58), _(32-56), config(32-56), title(35-56), content(38-56), notice(51-56)
  0000  GETTABUP  R1 = _ENV[K0('GM')]
  0001  GETTABLE  R1 = R1[K1('ConfigModel')]
  0002  SELF      R2 = R1[K2('GetServerConfig')] (self)
  0003  GETTABUP  R3 = _ENV[K3('ServerConfigKey')]
  0004  GETTABLE  R3 = R3[K4('BulletinLanguage')]
  0005  CALL      R1 = call(R1, 1 args, 2 rets)
  0006  EQ        if R0 eq K5(nil)   -> -130291
  0007  JMP       (jump)   -> 9
  0008  RETURN    return R0..R-1
  0009  GETTABUP  R2 = _ENV[K6('ipairs')]
  0010  MOVE      R3 = R0
  0011  CALL      R2 = call(R2, 3 args, 1 rets)
  0012  JMP       (jump)   -> 17
  0013  GETTABLE  R7 = R0[K7('m_textMap')]
  0014  GETTABLE  R8 = R6[K8('key')]
  0015  GETTABLE  R9 = R6[K9('value')]
  0016  SETTABLE  R7[R8] = R9
  0017  TFORCALL  tforcall R2
  0018  TFORLOOP  tforloop R4(sBx=-6)   -> 13
  0019  GETTABUP  R2 = _ENV[K0('GM')]
  0020  GETTABLE  R2 = R2[K1('ConfigModel')]
  0021  SELF      R3 = R2[K2('GetServerConfig')] (self)
  0022  GETTABUP  R4 = _ENV[K3('ServerConfigKey')]
  0023  GETTABLE  R4 = R4[K10('Bulletin')]
  0024  CALL      R2 = call(R2, 1 args, 2 rets)
  0025  EQ        if R0 eq K5(nil)   -> -129760
  0026  JMP       (jump)   -> 28
  0027  RETURN    return R0..R-1
  0028  GETTABUP  R3 = _ENV[K6('ipairs')]
  0029  MOVE      R4 = R0
  0030  CALL      R3 = call(R3, 3 args, 1 rets)
  0031  JMP       (jump)   -> 56
  0032  GETTABLE  R8 = R0[K7('m_textMap')]
  0033  GETTABLE  R9 = R7[K11('titleRes')]
  0034  GETTABLE  R8 = R8[R9]
  0035  GETTABLE  R9 = R0[K7('m_textMap')]
  0036  GETTABLE  R10 = R7[K12('contentRes')]
  0037  GETTABLE  R9 = R9[R10]
  0038  SELF      R11 = R0[K13('_CreateNotice')] (self)
  0039  GETTABUP  R12 = _ENV[K14('tostring')]
  0040  GETTABLE  R13 = R7[K15('id')]
  0041  CALL      R12 = call(R12, 1 args, 1 rets)
  0042  MOVE      R13 = R0
  0043  MOVE      R14 = R0
  0044  GETTABLE  R15 = R7[K16('link')]
  0045  GETTABLE  R16 = R7[K17('rewards')]
  0046  GETTABLE  R17 = R7[K18('sTime')]
  0047  GETTABLE  R18 = R7[K19('eTime')]
  0048  GETTABLE  R19 = R7[K20('eventId')]
  0049  GETTABLE  R20 = R7[K21('orderNumber')]
  0050  CALL      R10 = call(R10, 1 args, 10 rets)
  0051  GETTABUP  R11 = _ENV[K22('table')]
  0052  GETTABLE  R11 = R11[K23('insert')]
  0053  GETTABLE  R12 = R0[K24('m_notices')]
  0054  MOVE      R13 = R0
  0055  CALL      R11 = call(R11, 0 args, 2 rets)
  0056  TFORCALL  tforcall R3
  0057  TFORLOOP  tforloop R5(sBx=-26)   -> 32
  0058  RETURN    return R0..R-1
; ---------- proto9 [_UpdateCustomerServiceRewards] ----------
  ; fn ?  line 110-129 np=1 va=0 ms=19 code=69 consts=31 upvals=1 protos=0
  ;   K[0]='pairs'
  ;   K[1]='GM'
  ;   K[2]='RewardModel'
  ;   K[3]='GetServerRewardInfoMap'
  ;   K[4]='StringUtil'
  ;   K[5]='StartWith'
  ;   K[6]='NoticeModel'
  ;   K[7]='CustomerServiceRewardPrefix'
  ;   K[8]='HasReceivedServerReward'
  ;   K[9]='string'
  ;   K[10]='sub'
  ;   K[11]='len'
  ;   K[12]=1
  ;   K[13]='tonumber'
  ;   K[14]='_CreateNotice'
  ;   K[15]='content'
  ;   K[16]='title'
  ;   K[17]='desc'
  ;   K[18]='rewards'
  ;   K[19]='expire_time'
  ;   K[20]='eventId'
  ;   K[21]=10000
  ;   K[22]='table'
  ;   K[23]='insert'
  ;   K[24]='m_notices'
  ;   K[25]='status'
  ;   K[26]='m_dbTable'
  ;   K[27]='Set'
  ;   K[28]='state'
  ;   K[29]='NoticeState'
  ;   K[30]='Read'
  ;   upvals: _ENV
  ;   locals: self(0-69), (for generator)(6-68), (for state)(6-68), (for control)(6-68), key(7-66), rewardInfo(7-66), releaseTimeString(32-66), releaseTime(35-66), notice(51-66)
  0000  GETTABUP  R1 = _ENV[K0('pairs')]
  0001  GETTABUP  R2 = _ENV[K1('GM')]
  0002  GETTABLE  R2 = R2[K2('RewardModel')]
  0003  SELF      R3 = R2[K3('GetServerRewardInfoMap')] (self)
  0004  CALL      R2 = call(R2, -1 args, 1 rets)
  0005  CALL      R1 = call(R1, 3 args, -1 rets)
  0006  JMP       (jump)   -> 66
  0007  GETTABUP  R6 = _ENV[K4('StringUtil')]
  0008  GETTABLE  R6 = R6[K5('StartWith')]
  0009  MOVE      R7 = R0
  0010  GETTABUP  R8 = _ENV[K6('NoticeModel')]
  0011  GETTABLE  R8 = R8[K7('CustomerServiceRewardPrefix')]
  0012  CALL      R6 = call(R6, 1 args, 2 rets)
  0013  TEST      if not R6 then   -> -131057
  0014  JMP       (jump)   -> 66
  0015  GETTABUP  R6 = _ENV[K1('GM')]
  0016  GETTABLE  R6 = R6[K2('RewardModel')]
  0017  SELF      R7 = R6[K8('HasReceivedServerReward')] (self)
  0018  MOVE      R8 = R0
  0019  CALL      R6 = call(R6, 1 args, 2 rets)
  0020  TEST      if not R6 then   -> -131049
  0021  JMP       (jump)   -> 66
  0022  GETTABUP  R6 = _ENV[K9('string')]
  0023  GETTABLE  R6 = R6[K10('sub')]
  0024  MOVE      R7 = R0
  0025  GETTABUP  R8 = _ENV[K9('string')]
  0026  GETTABLE  R8 = R8[K11('len')]
  0027  GETTABUP  R9 = _ENV[K6('NoticeModel')]
  0028  GETTABLE  R9 = R9[K7('CustomerServiceRewardPrefix')]
  0029  CALL      R8 = call(R8, 1 args, 1 rets)
  0030  ADD       R8 = K12(1) add R8
  0031  CALL      R6 = call(R6, 1 args, 2 rets)
  0032  GETTABUP  R7 = _ENV[K13('tonumber')]
  0033  MOVE      R8 = R0
  0034  CALL      R7 = call(R7, 1 args, 1 rets)
  0035  SELF      R9 = R0[K14('_CreateNotice')] (self)
  0036  MOVE      R10 = R0
  0037  GETTABLE  R11 = R5[K15('content')]
  0038  GETTABLE  R11 = R11[K16('title')]
  0039  GETTABLE  R12 = R5[K15('content')]
  0040  GETTABLE  R12 = R12[K17('desc')]
  0041  LOADNIL   R13..R13 = nil
  0042  GETTABLE  R14 = R5[K15('content')]
  0043  GETTABLE  R14 = R14[K18('rewards')]
  0044  MOVE      R15 = R0
  0045  GETTABLE  R16 = R5[K15('content')]
  0046  GETTABLE  R16 = R16[K19('expire_time')]
  0047  GETTABLE  R17 = R5[K15('content')]
  0048  GETTABLE  R17 = R17[K20('eventId')]
  0049  LOADK     R18 = K21 10000
  0050  CALL      R8 = call(R8, 1 args, 10 rets)
  0051  GETTABUP  R9 = _ENV[K22('table')]
  0052  GETTABLE  R9 = R9[K23('insert')]
  0053  GETTABLE  R10 = R0[K24('m_notices')]
  0054  MOVE      R11 = R0
  0055  CALL      R9 = call(R9, 0 args, 2 rets)
  0056  GETTABLE  R9 = R5[K25('status')]
  0057  EQ        if R0 eq K12(1)   -> -126137
  0058  JMP       (jump)   -> 66
  0059  GETTABLE  R9 = R0[K26('m_dbTable')]
  0060  SELF      R10 = R9[K27('Set')] (self)
  0061  MOVE      R11 = R0
  0062  LOADK     R12 = K28 'state'
  0063  GETTABUP  R13 = _ENV[K29('NoticeState')]
  0064  GETTABLE  R13 = R13[K30('Read')]
  0065  CALL      R9 = call(R9, 0 args, 4 rets)
  0066  TFORCALL  tforcall R1
  0067  TFORLOOP  tforloop R3(sBx=-61)   -> 7
  0068  RETURN    return R0..R-1
; ---------- proto10 [HasNewNotice] ----------
  ; fn ?  line 131-133 np=1 va=0 ms=2 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='m_hasNewNotice'
  ;   locals: self(0-3)
  0000  GETTABLE  R1 = R0[K0('m_hasNewNotice')]
  0001  RETURN    return R1..R0
  0002  RETURN    return R0..R-1
; ---------- proto11 [ResetHasNewNotice] ----------
  ; fn ?  line 135-137 np=1 va=0 ms=2 code=2 consts=2 upvals=0 protos=0
  ;   K[0]='m_hasNewNotice'
  ;   K[1]=false
  ;   locals: self(0-2)
  0000  SETTABLE  R0[K0('m_hasNewNotice')] = K1(false)
  0001  RETURN    return R0..R-1
; ---------- proto12 [GetNotices] ----------
  ; fn ?  line 139-141 np=1 va=0 ms=2 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='m_notices'
  ;   locals: self(0-3)
  0000  GETTABLE  R1 = R0[K0('m_notices')]
  0001  RETURN    return R1..R0
  0002  RETURN    return R0..R-1
; ---------- proto13 [_CreateNotice] ----------
  ; fn ?  line 143-177 np=10 va=0 ms=15 code=71 consts=34 upvals=1 protos=0
  ;   K[0]=nil
  ;   K[1]='GM'
  ;   K[2]='ActivityManager'
  ;   K[3]='GetModel'
  ;   K[4]='GetState'
  ;   K[5]='ActivityState'
  ;   K[6]='Started'
  ;   K[7]='math'
  ;   K[8]='min'
  ;   K[9]=0
  ;   K[10]='GetNextStateTime'
  ;   K[11]='m_dbTable'
  ;   K[12]='GetValue'
  ;   K[13]='state'
  ;   K[14]='m_hasNewNotice'
  ;   K[15]=true
  ;   K[16]='Set'
  ;   K[17]='NoticeState'
  ;   K[18]='Unread'
  ;   K[19]='IsString'
  ;   K[20]=1
  ;   K[21]='ConfigUtil'
  ;   K[22]='GetCurrencyFromArrStr'
  ;   K[23]='RewardApi'
  ;   K[24]='CryptRewards'
  ;   K[25]='Id'
  ;   K[26]='Title'
  ;   K[27]='Content'
  ;   K[28]='Link'
  ;   K[29]='Rewards'
  ;   K[30]='ReleaseTime'
  ;   K[31]='DisappearTime'
  ;   K[32]='EventId'
  ;   K[33]='OrderNumber'
  ;   upvals: _ENV
  ;   locals: self(0-71), id(0-71), title(0-71), content(0-71), link(0-71), rewards(0-71), releaseTime(0-71), disappearTime(0-71), eventId(0-71), orderNumber(0-71), activityModel(7-26)
  0000  EQ        if R1 eq K0(nil)   -> -126718
  0001  JMP       (jump)   -> 26
  0002  GETTABUP  R10 = _ENV[K1('GM')]
  0003  GETTABLE  R10 = R10[K2('ActivityManager')]
  0004  SELF      R11 = R10[K3('GetModel')] (self)
  0005  MOVE      R12 = R0
  0006  CALL      R10 = call(R10, 1 args, 2 rets)
  0007  EQ        if R1 eq K0(nil)   -> -125687
  0008  JMP       (jump)   -> 15
  0009  SELF      R12 = R10[K4('GetState')] (self)
  0010  CALL      R11 = call(R11, 1 args, 1 rets)
  0011  GETTABUP  R12 = _ENV[K5('ActivityState')]
  0012  GETTABLE  R12 = R12[K6('Started')]
  0013  EQ        if R1 eq R12   -> -125413
  0014  JMP       (jump)   -> 17
  0015  LOADNIL   R11..R11 = nil
  0016  RETURN    return R11..R10
  0017  GETTABUP  R11 = _ENV[K7('math')]
  0018  GETTABLE  R11 = R11[K8('min')]
  0019  TESTSET   if R1 then R12   -> -127466
  0020  JMP       (jump)   -> 22
  0021  LOADK     R12 = K9 0
  0022  SELF      R14 = R10[K10('GetNextStateTime')] (self)
  0023  CALL      R13 = call(R13, -1 args, 1 rets)
  0024  CALL      R11 = call(R11, 1 args, -1 rets)
  0025  MOVE      R7 = R0
  0026  GETTABLE  R10 = R0[K11('m_dbTable')]
  0027  SELF      R11 = R10[K12('GetValue')] (self)
  0028  MOVE      R12 = R0
  0029  LOADK     R13 = K13 'state'
  0030  CALL      R10 = call(R10, 1 args, 3 rets)
  0031  EQ        if R0 eq K0(nil)   -> -125663
  0032  JMP       (jump)   -> 41
  0033  SETTABLE  R0[K14('m_hasNewNotice')] = K15(true)
  0034  GETTABLE  R10 = R0[K11('m_dbTable')]
  0035  SELF      R11 = R10[K16('Set')] (self)
  0036  MOVE      R12 = R0
  0037  LOADK     R13 = K13 'state'
  0038  GETTABUP  R14 = _ENV[K17('NoticeState')]
  0039  GETTABLE  R14 = R14[K18('Unread')]
  0040  CALL      R10 = call(R10, 0 args, 4 rets)
  0041  TEST      if not R5 then   -> -131029
  0042  JMP       (jump)   -> 54
  0043  GETTABUP  R10 = _ENV[K19('IsString')]
  0044  GETTABLE  R11 = R5[K20(1)]
  0045  CALL      R10 = call(R10, 1 args, 1 rets)
  0046  TEST      if not R10 then   -> -131024
  0047  JMP       (jump)   -> 54
  0048  GETTABUP  R10 = _ENV[K21('ConfigUtil')]
  0049  GETTABLE  R10 = R10[K22('GetCurrencyFromArrStr')]
  0050  MOVE      R11 = R0
  0051  CALL      R10 = call(R10, 1 args, 1 rets)
  0052  MOVE      R5 = R0
  0053  JMP       (jump)   -> 59
  0054  GETTABUP  R10 = _ENV[K23('RewardApi')]
  0055  GETTABLE  R10 = R10[K24('CryptRewards')]
  0056  MOVE      R11 = R0
  0057  LOADBOOL  R12 = true
  0058  CALL      R10 = call(R10, 0 args, 2 rets)
  0059  NEWTABLE  R10 = {} (0 items)
  0060  SETTABLE  R10[K25('Id')] = R1
  0061  SETTABLE  R10[K26('Title')] = R2
  0062  SETTABLE  R10[K27('Content')] = R3
  0063  SETTABLE  R10[K28('Link')] = R4
  0064  SETTABLE  R10[K29('Rewards')] = R5
  0065  SETTABLE  R10[K30('ReleaseTime')] = R6
  0066  SETTABLE  R10[K31('DisappearTime')] = R7
  0067  SETTABLE  R10[K32('EventId')] = R8
  0068  SETTABLE  R10[K33('OrderNumber')] = R9
  0069  RETURN    return R10..R9
  0070  RETURN    return R0..R-1
; ---------- proto14 [GetNoticeState] ----------
  ; fn ?  line 179-183 np=2 va=0 ms=6 code=15 consts=8 upvals=1 protos=0
  ;   K[0]='m_dbTable'
  ;   K[1]='GetValue'
  ;   K[2]='Id'
  ;   K[3]='state'
  ;   K[4]='Log'
  ;   K[5]='Assert'
  ;   K[6]=nil
  ;   K[7]='公告模型实现错误'
  ;   upvals: _ENV
  ;   locals: self(0-15), notice(0-15), state(5-15)
  0000  GETTABLE  R2 = R0[K0('m_dbTable')]
  0001  SELF      R3 = R2[K1('GetValue')] (self)
  0002  GETTABLE  R4 = R1[K2('Id')]
  0003  LOADK     R5 = K3 'state'
  0004  CALL      R2 = call(R2, 1 args, 3 rets)
  0005  GETTABUP  R3 = _ENV[K4('Log')]
  0006  GETTABLE  R3 = R3[K5('Assert')]
  0007  EQ        if R0 eq K6(nil)   -> -129777
  0008  JMP       (jump)   -> 10
  0009  LOADBOOL  R4 = false
  0010  LOADBOOL  R4 = true
  0011  LOADK     R5 = K7 '公告模型实现错误'
  0012  CALL      R3 = call(R3, 0 args, 2 rets)
  0013  RETURN    return R2..R1
  0014  RETURN    return R0..R-1
; ---------- proto15 [_TrySetNoticeState] ----------
  ; fn ?  line 185-192 np=3 va=0 ms=9 code=13 consts=5 upvals=0 protos=0
  ;   K[0]='GetNoticeState'
  ;   K[1]='m_dbTable'
  ;   K[2]='Set'
  ;   K[3]='Id'
  ;   K[4]='state'
  ;   locals: self(0-13), notice(0-13), state(0-13), currentState(3-13)
  0000  SELF      R4 = R0[K0('GetNoticeState')] (self)
  0001  MOVE      R5 = R0
  0002  CALL      R3 = call(R3, 1 args, 2 rets)
  0003  LE        if R0 le R3   -> -130040
  0004  JMP       (jump)   -> 6
  0005  RETURN    return R0..R-1
  0006  GETTABLE  R4 = R0[K1('m_dbTable')]
  0007  SELF      R5 = R4[K2('Set')] (self)
  0008  GETTABLE  R6 = R1[K3('Id')]
  0009  LOADK     R7 = K4 'state'
  0010  MOVE      R8 = R0
  0011  CALL      R4 = call(R4, 0 args, 4 rets)
  0012  RETURN    return R0..R-1
; ---------- proto16 [OnNoticeOpen] ----------
  ; fn ?  line 194-204 np=2 va=0 ms=6 code=24 consts=8 upvals=1 protos=0
  ;   K[0]='Rewards'
  ;   K[1]=nil
  ;   K[2]='Link'
  ;   K[3]='_TrySetNoticeState'
  ;   K[4]='NoticeState'
  ;   K[5]='FollowLink'
  ;   K[6]='GetRewards'
  ;   K[7]='Read'
  ;   upvals: _ENV
  ;   locals: self(0-24), notice(0-24)
  0000  GETTABLE  R2 = R1[K0('Rewards')]
  0001  EQ        if R1 eq K1(nil)   -> -129788
  0002  JMP       (jump)   -> 18
  0003  GETTABLE  R2 = R1[K2('Link')]
  0004  EQ        if R1 eq K1(nil)   -> -129785
  0005  JMP       (jump)   -> 12
  0006  SELF      R3 = R0[K3('_TrySetNoticeState')] (self)
  0007  MOVE      R4 = R0
  0008  GETTABUP  R5 = _ENV[K4('NoticeState')]
  0009  GETTABLE  R5 = R5[K5('FollowLink')]
  0010  CALL      R2 = call(R2, 0 args, 3 rets)
  0011  JMP       (jump)   -> 23
  0012  SELF      R3 = R0[K3('_TrySetNoticeState')] (self)
  0013  MOVE      R4 = R0
  0014  GETTABUP  R5 = _ENV[K4('NoticeState')]
  0015  GETTABLE  R5 = R5[K6('GetRewards')]
  0016  CALL      R2 = call(R2, 0 args, 3 rets)
  0017  JMP       (jump)   -> 23
  0018  SELF      R3 = R0[K3('_TrySetNoticeState')] (self)
  0019  MOVE      R4 = R0
  0020  GETTABUP  R5 = _ENV[K4('NoticeState')]
  0021  GETTABLE  R5 = R5[K7('Read')]
  0022  CALL      R2 = call(R2, 0 args, 3 rets)
  0023  RETURN    return R0..R-1
; ---------- proto17 [OnNoticeFollowLink] ----------
  ; fn ?  line 206-213 np=2 va=0 ms=6 code=15 consts=6 upvals=1 protos=0
  ;   K[0]='Rewards'
  ;   K[1]=nil
  ;   K[2]='_TrySetNoticeState'
  ;   K[3]='NoticeState'
  ;   K[4]='GetRewards'
  ;   K[5]='Read'
  ;   upvals: _ENV
  ;   locals: self(0-15), notice(0-15)
  0000  GETTABLE  R2 = R1[K0('Rewards')]
  0001  EQ        if R1 eq K1(nil)   -> -129788
  0002  JMP       (jump)   -> 9
  0003  SELF      R3 = R0[K2('_TrySetNoticeState')] (self)
  0004  MOVE      R4 = R0
  0005  GETTABUP  R5 = _ENV[K3('NoticeState')]
  0006  GETTABLE  R5 = R5[K4('GetRewards')]
  0007  CALL      R2 = call(R2, 0 args, 3 rets)
  0008  RETURN    return R0..R-1
  0009  SELF      R3 = R0[K2('_TrySetNoticeState')] (self)
  0010  MOVE      R4 = R0
  0011  GETTABUP  R5 = _ENV[K3('NoticeState')]
  0012  GETTABLE  R5 = R5[K5('Read')]
  0013  CALL      R2 = call(R2, 0 args, 3 rets)
  0014  RETURN    return R0..R-1
; ---------- proto18 [_OnNoticeGetRewards] ----------
  ; fn ?  line 215-217 np=2 va=0 ms=6 code=6 consts=3 upvals=1 protos=0
  ;   K[0]='_TrySetNoticeState'
  ;   K[1]='NoticeState'
  ;   K[2]='Read'
  ;   upvals: _ENV
  ;   locals: self(0-6), notice(0-6)
  0000  SELF      R3 = R0[K0('_TrySetNoticeState')] (self)
  0001  MOVE      R4 = R0
  0002  GETTABUP  R5 = _ENV[K1('NoticeState')]
  0003  GETTABLE  R5 = R5[K2('Read')]
  0004  CALL      R2 = call(R2, 0 args, 3 rets)
  0005  RETURN    return R0..R-1
; ---------- proto19 [AcquireRewards] ----------
  ; fn ?  line 219-242 np=3 va=0 ms=11 code=23 consts=9 upvals=1 protos=1
  ;   K[0]='StringUtil'
  ;   K[1]='StartWith'
  ;   K[2]='Id'
  ;   K[3]='NoticeModel'
  ;   K[4]='CustomerServiceRewardPrefix'
  ;   K[5]='mail_'
  ;   K[6]='GM'
  ;   K[7]='RewardModel'
  ;   K[8]='ReceiveServerReward'
  ;   upvals: _ENV
  ;   locals: self(0-23), notice(0-23), callback(0-23), isCustomerServiceNotice(6-23), callbackWrapper(7-23), rewardId(15-23)
  0000  GETTABUP  R3 = _ENV[K0('StringUtil')]
  0001  GETTABLE  R3 = R3[K1('StartWith')]
  0002  GETTABLE  R4 = R1[K2('Id')]
  0003  GETTABUP  R5 = _ENV[K3('NoticeModel')]
  0004  GETTABLE  R5 = R5[K4('CustomerServiceRewardPrefix')]
  0005  CALL      R3 = call(R3, 1 args, 2 rets)
  0006  CLOSURE   R4 = closure proto0
  0007  TEST      if not R3 then   -> -131063
  0008  JMP       (jump)   -> 12
  0009  GETTABLE  R5 = R1[K2('Id')]
  0010  TEST      if not R5 then   -> -131059
  0011  JMP       (jump)   -> 15
  0012  LOADK     R5 = K5 'mail_'
  0013  GETTABLE  R6 = R1[K2('Id')]
  0014  CONCAT    R5 = concat(R5..R5)
  0015  GETTABUP  R6 = _ENV[K6('GM')]
  0016  GETTABLE  R6 = R6[K7('RewardModel')]
  0017  SELF      R7 = R6[K8('ReceiveServerReward')] (self)
  0018  MOVE      R8 = R0
  0019  MOVE      R9 = R0
  0020  MOVE      R10 = R0
  0021  CALL      R6 = call(R6, 0 args, 4 rets)
  0022  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 221-238 np=1 va=0 ms=10 code=52 consts=23 upvals=5 protos=0
    ;   K[0]='ERewardRespStatus'
    ;   K[1]='RespFail'
    ;   K[2]='_OnNoticeGetRewards'
    ;   K[3]='Success'
    ;   K[4]='GM'
    ;   K[5]='GameModel'
    ;   K[6]='GetServerTime'
    ;   K[7]='DisappearTime'
    ;   K[8]='Expired'
    ;   K[9]='EBIType'
    ;   K[10]='CustomerServiceReward'
    ;   K[11]='NoticeReward'
    ;   K[12]='_GetGameModeByEventId'
    ;   K[13]='EventId'
    ;   K[14]='RewardApi'
    ;   K[15]='AcquireRewardsLogic'
    ;   K[16]='Rewards'
    ;   K[17]='EPropertySource'
    ;   K[18]='Give'
    ;   K[19]='ERewardScene'
    ;   K[20]='Other'
    ;   K[21]='CacheItemType'
    ;   K[22]='Stack'
    ;   upvals: _ENV, self, notice, isCustomerServiceNotice, callback
    ;   locals: result(0-52), scene(31-48), targetMode(35-48)
    0000  GETTABUP  R1 = _ENV[K0('ERewardRespStatus')]
    0001  GETTABLE  R1 = R1[K1('RespFail')]
    0002  EQ        if R1 eq R1   -> -131067
    0003  JMP       (jump)   -> 8
    0004  GETUPVAL  R1 = _ENV
    0005  SELF      R2 = R1[K2('_OnNoticeGetRewards')] (self)
    0006  GETUPVAL  R3 = _ENV
    0007  CALL      R1 = call(R1, 0 args, 2 rets)
    0008  GETTABUP  R1 = _ENV[K0('ERewardRespStatus')]
    0009  GETTABLE  R1 = R1[K3('Success')]
    0010  EQ        if R0 eq R1   -> -131059
    0011  JMP       (jump)   -> 48
    0012  GETTABUP  R1 = _ENV[K4('GM')]
    0013  GETTABLE  R1 = R1[K5('GameModel')]
    0014  SELF      R2 = R1[K6('GetServerTime')] (self)
    0015  CALL      R1 = call(R1, 1 args, 1 rets)
    0016  GETTABUP  R2 = notice[K7('DisappearTime')]
    0017  LT        if R0 lt R1   -> -130028
    0018  JMP       (jump)   -> 22
    0019  GETTABUP  R1 = _ENV[K0('ERewardRespStatus')]
    0020  GETTABLE  R0 = R1[K8('Expired')]
    0021  JMP       (jump)   -> 48
    0022  GETUPVAL  R1 = _ENV
    0023  TEST      if not R1 then   -> -131047
    0024  JMP       (jump)   -> 29
    0025  GETTABUP  R1 = _ENV[K9('EBIType')]
    0026  GETTABLE  R1 = R1[K10('CustomerServiceReward')]
    0027  TEST      if not R1 then   -> -131042
    0028  JMP       (jump)   -> 31
    0029  GETTABUP  R1 = _ENV[K9('EBIType')]
    0030  GETTABLE  R1 = R1[K11('NoticeReward')]
    0031  GETUPVAL  R2 = _ENV
    0032  SELF      R3 = R2[K12('_GetGameModeByEventId')] (self)
    0033  GETTABUP  R4 = notice[K13('EventId')]
    0034  CALL      R2 = call(R2, 1 args, 2 rets)
    0035  GETTABUP  R3 = _ENV[K14('RewardApi')]
    0036  GETTABLE  R3 = R3[K15('AcquireRewardsLogic')]
    0037  GETTABUP  R4 = notice[K16('Rewards')]
    0038  GETTABUP  R5 = _ENV[K17('EPropertySource')]
    0039  GETTABLE  R5 = R5[K18('Give')]
    0040  GETTABUP  R6 = _ENV[K9('EBIType')]
    0041  GETTABLE  R6 = R6[K11('NoticeReward')]
    0042  GETTABUP  R7 = _ENV[K19('ERewardScene')]
    0043  GETTABLE  R7 = R7[K20('Other')]
    0044  MOVE      R8 = R0
    0045  GETTABUP  R9 = _ENV[K21('CacheItemType')]
    0046  GETTABLE  R9 = R9[K22('Stack')]
    0047  CALL      R3 = call(R3, 0 args, 6 rets)
    0048  GETUPVAL  R1 = _ENV
    0049  MOVE      R2 = R0
    0050  CALL      R1 = call(R1, 0 args, 1 rets)
    0051  RETURN    return R0..R-1
; ---------- proto20 [_GetGameModeByEventId] ----------
  ; fn ?  line 244-246 np=2 va=0 ms=3 code=4 consts=2 upvals=1 protos=0
  ;   K[0]='EGameMode'
  ;   K[1]='Board'
  ;   upvals: _ENV
  ;   locals: self(0-4), activityType(0-4)
  0000  GETTABUP  R2 = _ENV[K0('EGameMode')]
  0001  GETTABLE  R2 = R2[K1('Board')]
  0002  RETURN    return R2..R1
  0003  RETURN    return R0..R-1
