# UI_Window_Notice_NoticeWindow_681.luac
; fn @NoticeWindow.lua  line 0-0 np=0 va=1 ms=3 code=22 consts=11 upvals=1 protos=4
;   K[0]='NoticeWindow'
;   K[1]='setmetatable'
;   K[2]='canClickWindowMask'
;   K[3]=true
;   K[4]='BaseWindow'
;   K[5]='__index'
;   K[6]='Init'
;   K[7]='NoticeWindow'
;   K[8]='OnDestroy'
;   K[9]='_OnContentWindowClose'
;   K[10]='_NoticeComparer'
;   upvals: _ENV
0000  GETTABUP  R0 = _ENV[K1('setmetatable')]
0001  NEWTABLE  R1 = {} (0 items)
0002  SETTABLE  R1[K2('canClickWindowMask')] = K3(true)
0003  GETTABUP  R2 = _ENV[K4('BaseWindow')]
0004  CALL      R0 = call(R0, 1 args, 2 rets)
0005  SETTABUP  _ENV[K0('NoticeWindow')] = R0
0006  GETTABUP  R0 = _ENV[K0('NoticeWindow')]
0007  GETTABUP  R1 = _ENV[K0('NoticeWindow')]
0008  SETTABLE  R0[K5('__index')] = R1
0009  GETTABUP  R0 = _ENV[K0('NoticeWindow')]
0010  CLOSURE   R1 = closure proto0
0011  SETTABLE  R0[K6('Init')] = R1
0012  GETTABUP  R0 = _ENV[K7('NoticeWindow')]
0013  CLOSURE   R1 = closure proto1
0014  SETTABLE  R0[K8('OnDestroy')] = R1
0015  GETTABUP  R0 = _ENV[K7('NoticeWindow')]
0016  CLOSURE   R1 = closure proto2
0017  SETTABLE  R0[K9('_OnContentWindowClose')] = R1
0018  GETTABUP  R0 = _ENV[K7('NoticeWindow')]
0019  CLOSURE   R1 = closure proto3
0020  SETTABLE  R0[K10('_NoticeComparer')] = R1
0021  RETURN    return R0..R-1
; ---------- proto0 [Init] ----------
  ; fn ?  line 8-44 np=1 va=0 ms=13 code=88 consts=33 upvals=1 protos=0
  ;   K[0]='m_cells'
  ;   K[1]='GM'
  ;   K[2]='NoticeModel'
  ;   K[3]='ResetHasNewNotice'
  ;   K[4]='Table'
  ;   K[5]='ShallowCopy'
  ;   K[6]='GetNotices'
  ;   K[7]=1
  ;   K[8]='GameModel'
  ;   K[9]='GetServerTime'
  ;   K[10]='DisappearTime'
  ;   K[11]='table'
  ;   K[12]='remove'
  ;   K[13]=0
  ;   K[14]='m_emptyGo'
  ;   K[15]='SetActive'
  ;   K[16]='m_mailListGo'
  ;   K[17]='sort'
  ;   K[18]='NoticeWindow'
  ;   K[19]='_NoticeComparer'
  ;   K[20]='ipairs'
  ;   K[21]='Object'
  ;   K[22]='Instantiate'
  ;   K[23]='m_noticeCellPrefab'
  ;   K[24]='m_noticeContent'
  ;   K[25]='GetLuaTable'
  ;   K[26]='Init'
  ;   K[27]='insert'
  ;   K[28]='EventDispatcher'
  ;   K[29]='AddListener'
  ;   K[30]='EEventType'
  ;   K[31]='CloseView'
  ;   K[32]='_OnContentWindowClose'
  ;   upvals: _ENV
  ;   locals: self(0-88), notices(13-88), i(14-88), serverTime(18-88), notice(22-32), (for generator)(62-80), (for state)(62-80), (for control)(62-80), _(63-78), notice(63-78), cell(70-78)
  0000  NEWTABLE  R1 = {} (0 items)
  0001  SETTABLE  R0[K0('m_cells')] = R1
  0002  GETTABUP  R1 = _ENV[K1('GM')]
  0003  GETTABLE  R1 = R1[K2('NoticeModel')]
  0004  SELF      R2 = R1[K3('ResetHasNewNotice')] (self)
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  GETTABUP  R1 = _ENV[K4('Table')]
  0007  GETTABLE  R1 = R1[K5('ShallowCopy')]
  0008  GETTABUP  R2 = _ENV[K1('GM')]
  0009  GETTABLE  R2 = R2[K2('NoticeModel')]
  0010  SELF      R3 = R2[K6('GetNotices')] (self)
  0011  CALL      R2 = call(R2, -1 args, 1 rets)
  0012  CALL      R1 = call(R1, 1 args, -1 rets)
  0013  LOADK     R2 = K7 1
  0014  GETTABUP  R3 = _ENV[K1('GM')]
  0015  GETTABLE  R3 = R3[K8('GameModel')]
  0016  SELF      R4 = R3[K9('GetServerTime')] (self)
  0017  CALL      R3 = call(R3, 1 args, 1 rets)
  0018  LEN       R4 = len R0
  0019  LE        if R0 le R4   -> -130023
  0020  JMP       (jump)   -> 33
  0021  GETTABLE  R4 = R1[R2]
  0022  GETTABLE  R5 = R4[K10('DisappearTime')]
  0023  LT        if R0 lt R3   -> -128484
  0024  JMP       (jump)   -> 31
  0025  GETTABUP  R5 = _ENV[K11('table')]
  0026  GETTABLE  R5 = R5[K12('remove')]
  0027  MOVE      R6 = R0
  0028  MOVE      R7 = R0
  0029  CALL      R5 = call(R5, 0 args, 2 rets)
  0030  JMP       (jump)   -> 18
  0031  ADD       R2 = K7(1) add R2
  0032  JMP       (jump)   -> 18
  0033  LEN       R4 = len R0
  0034  EQ        if R0 eq K13(0)   -> -128719
  0035  JMP       (jump)   -> 45
  0036  GETTABLE  R4 = R0[K14('m_emptyGo')]
  0037  SELF      R5 = R4[K15('SetActive')] (self)
  0038  LOADBOOL  R6 = true
  0039  CALL      R4 = call(R4, 0 args, 2 rets)
  0040  GETTABLE  R4 = R0[K16('m_mailListGo')]
  0041  SELF      R5 = R4[K15('SetActive')] (self)
  0042  LOADBOOL  R6 = false
  0043  CALL      R4 = call(R4, 0 args, 2 rets)
  0044  RETURN    return R0..R-1
  0045  GETTABLE  R4 = R0[K14('m_emptyGo')]
  0046  SELF      R5 = R4[K15('SetActive')] (self)
  0047  LOADBOOL  R6 = false
  0048  CALL      R4 = call(R4, 0 args, 2 rets)
  0049  GETTABLE  R4 = R0[K16('m_mailListGo')]
  0050  SELF      R5 = R4[K15('SetActive')] (self)
  0051  LOADBOOL  R6 = true
  0052  CALL      R4 = call(R4, 0 args, 2 rets)
  0053  GETTABUP  R4 = _ENV[K11('table')]
  0054  GETTABLE  R4 = R4[K17('sort')]
  0055  MOVE      R5 = R0
  0056  GETTABUP  R6 = _ENV[K18('NoticeWindow')]
  0057  GETTABLE  R6 = R6[K19('_NoticeComparer')]
  0058  CALL      R4 = call(R4, 0 args, 2 rets)
  0059  GETTABUP  R4 = _ENV[K20('ipairs')]
  0060  MOVE      R5 = R0
  0061  CALL      R4 = call(R4, 3 args, 1 rets)
  0062  JMP       (jump)   -> 78
  0063  GETTABUP  R9 = _ENV[K21('Object')]
  0064  GETTABLE  R9 = R9[K22('Instantiate')]
  0065  GETTABLE  R10 = R0[K23('m_noticeCellPrefab')]
  0066  GETTABLE  R11 = R0[K24('m_noticeContent')]
  0067  CALL      R9 = call(R9, 1 args, 2 rets)
  0068  SELF      R10 = R9[K25('GetLuaTable')] (self)
  0069  CALL      R9 = call(R9, 1 args, 1 rets)
  0070  SELF      R11 = R9[K26('Init')] (self)
  0071  MOVE      R12 = R0
  0072  CALL      R10 = call(R10, 0 args, 2 rets)
  0073  GETTABUP  R10 = _ENV[K11('table')]
  0074  GETTABLE  R10 = R10[K27('insert')]
  0075  GETTABLE  R11 = R0[K0('m_cells')]
  0076  MOVE      R12 = R0
  0077  CALL      R10 = call(R10, 0 args, 2 rets)
  0078  TFORCALL  tforcall R4
  0079  TFORLOOP  tforloop R6(sBx=-17)   -> 63
  0080  GETTABUP  R4 = _ENV[K28('EventDispatcher')]
  0081  GETTABLE  R4 = R4[K29('AddListener')]
  0082  GETTABUP  R5 = _ENV[K30('EEventType')]
  0083  GETTABLE  R5 = R5[K31('CloseView')]
  0084  MOVE      R6 = R0
  0085  GETTABLE  R7 = R0[K32('_OnContentWindowClose')]
  0086  CALL      R4 = call(R4, 0 args, 3 rets)
  0087  RETURN    return R0..R-1
; ---------- proto1 [OnDestroy] ----------
  ; fn ?  line 46-48 np=1 va=0 ms=3 code=5 consts=2 upvals=1 protos=0
  ;   K[0]='EventDispatcher'
  ;   K[1]='RemoveTarget'
  ;   upvals: _ENV
  ;   locals: self(0-5)
  0000  GETTABUP  R1 = _ENV[K0('EventDispatcher')]
  0001  GETTABLE  R1 = R1[K1('RemoveTarget')]
  0002  MOVE      R2 = R0
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  RETURN    return R0..R-1
; ---------- proto2 [_OnContentWindowClose] ----------
  ; fn ?  line 50-64 np=2 va=0 ms=9 code=26 consts=10 upvals=1 protos=0
  ;   K[0]='m_cells'
  ;   K[1]='name'
  ;   K[2]='UIPrefabConfigName'
  ;   K[3]='NoticeContentWindow'
  ;   K[4]='ipairs'
  ;   K[5]='UpdateState'
  ;   K[6]='GM'
  ;   K[7]='NoticeModel'
  ;   K[8]='HasUnreadSystemNotice'
  ;   K[9]='Close'
  ;   upvals: _ENV
  ;   locals: self(0-26), msg(0-26), (for generator)(12-17), (for state)(12-17), (for control)(12-17), _(13-15), cell(13-15)
  0000  GETTABLE  R2 = R0[K0('m_cells')]
  0001  TEST      if not R2 then   -> -131069
  0002  JMP       (jump)   -> 8
  0003  GETTABLE  R2 = R1[K1('name')]
  0004  GETTABUP  R3 = _ENV[K2('UIPrefabConfigName')]
  0005  GETTABLE  R3 = R3[K3('NoticeContentWindow')]
  0006  EQ        if R1 eq R3   -> -130037
  0007  JMP       (jump)   -> 9
  0008  RETURN    return R0..R-1
  0009  GETTABUP  R2 = _ENV[K4('ipairs')]
  0010  GETTABLE  R3 = R0[K0('m_cells')]
  0011  CALL      R2 = call(R2, 3 args, 1 rets)
  0012  JMP       (jump)   -> 15
  0013  SELF      R8 = R6[K5('UpdateState')] (self)
  0014  CALL      R7 = call(R7, 0 args, 1 rets)
  0015  TFORCALL  tforcall R2
  0016  TFORLOOP  tforloop R4(sBx=-4)   -> 13
  0017  GETTABUP  R2 = _ENV[K6('GM')]
  0018  GETTABLE  R2 = R2[K7('NoticeModel')]
  0019  SELF      R3 = R2[K8('HasUnreadSystemNotice')] (self)
  0020  CALL      R2 = call(R2, 1 args, 1 rets)
  0021  TEST      if not R2 then   -> -131048
  0022  JMP       (jump)   -> 25
  0023  SELF      R3 = R0[K9('Close')] (self)
  0024  CALL      R2 = call(R2, 0 args, 1 rets)
  0025  RETURN    return R0..R-1
; ---------- proto3 [_NoticeComparer] ----------
  ; fn ?  line 66-82 np=2 va=0 ms=6 code=45 consts=7 upvals=1 protos=0
  ;   K[0]='GM'
  ;   K[1]='NoticeModel'
  ;   K[2]='GetNoticeState'
  ;   K[3]='NoticeState'
  ;   K[4]='Read'
  ;   K[5]='OrderNumber'
  ;   K[6]='ReleaseTime'
  ;   upvals: _ENV
  ;   locals: a(0-45), b(0-45), isARead(11-45), isBRead(22-45)
  0000  GETTABUP  R2 = _ENV[K0('GM')]
  0001  GETTABLE  R2 = R2[K1('NoticeModel')]
  0002  SELF      R3 = R2[K2('GetNoticeState')] (self)
  0003  MOVE      R4 = R0
  0004  CALL      R2 = call(R2, 1 args, 2 rets)
  0005  GETTABUP  R3 = _ENV[K3('NoticeState')]
  0006  GETTABLE  R3 = R3[K4('Read')]
  0007  EQ        if R1 eq R3   -> -130036
  0008  JMP       (jump)   -> 10
  0009  LOADBOOL  R2 = false
  0010  LOADBOOL  R2 = true
  0011  GETTABUP  R3 = _ENV[K0('GM')]
  0012  GETTABLE  R3 = R3[K1('NoticeModel')]
  0013  SELF      R4 = R3[K2('GetNoticeState')] (self)
  0014  MOVE      R5 = R0
  0015  CALL      R3 = call(R3, 1 args, 2 rets)
  0016  GETTABUP  R4 = _ENV[K3('NoticeState')]
  0017  GETTABLE  R4 = R4[K4('Read')]
  0018  EQ        if R1 eq R4   -> -129512
  0019  JMP       (jump)   -> 21
  0020  LOADBOOL  R3 = false
  0021  LOADBOOL  R3 = true
  0022  EQ        if R1 eq R3   -> -130021
  0023  JMP       (jump)   -> 26
  0024  NOT       R4 = not R0
  0025  RETURN    return R4..R3
  0026  GETTABLE  R4 = R0[K5('OrderNumber')]
  0027  GETTABLE  R5 = R1[K5('OrderNumber')]
  0028  EQ        if R1 eq R5   -> -128989
  0029  JMP       (jump)   -> 37
  0030  GETTABLE  R4 = R0[K5('OrderNumber')]
  0031  GETTABLE  R5 = R1[K5('OrderNumber')]
  0032  LT        if R1 lt R4   -> -128474
  0033  JMP       (jump)   -> 35
  0034  LOADBOOL  R4 = false
  0035  LOADBOOL  R4 = true
  0036  RETURN    return R4..R3
  0037  GETTABLE  R4 = R0[K6('ReleaseTime')]
  0038  GETTABLE  R5 = R1[K6('ReleaseTime')]
  0039  LT        if R1 lt R5   -> -128978
  0040  JMP       (jump)   -> 42
  0041  LOADBOOL  R4 = false
  0042  LOADBOOL  R4 = true
  0043  RETURN    return R4..R3
  0044  RETURN    return R0..R-1
