# Model_DB_DBIdGenerator_70.luac
; fn @DBIdGenerator.lua  line 0-0 np=0 va=1 ms=2 code=15 consts=6 upvals=1 protos=3
;   K[0]='DBIdGenerator'
;   K[1]='__index'
;   K[2]='Create'
;   K[3]='DBIdGenerator'
;   K[4]='Init'
;   K[5]='Generate'
;   upvals: _ENV
0000  NEWTABLE  R0 = {} (0 items)
0001  SETTABUP  _ENV[K0('DBIdGenerator')] = R0
0002  GETTABUP  R0 = _ENV[K0('DBIdGenerator')]
0003  GETTABUP  R1 = _ENV[K0('DBIdGenerator')]
0004  SETTABLE  R0[K1('__index')] = R1
0005  GETTABUP  R0 = _ENV[K0('DBIdGenerator')]
0006  CLOSURE   R1 = closure proto0
0007  SETTABLE  R0[K2('Create')] = R1
0008  GETTABUP  R0 = _ENV[K3('DBIdGenerator')]
0009  CLOSURE   R1 = closure proto1
0010  SETTABLE  R0[K4('Init')] = R1
0011  GETTABUP  R0 = _ENV[K3('DBIdGenerator')]
0012  CLOSURE   R1 = closure proto2
0013  SETTABLE  R0[K5('Generate')] = R1
0014  RETURN    return R0..R-1
; ---------- proto0 [Create] ----------
  ; fn ?  line 5-9 np=0 va=0 ms=3 code=8 consts=3 upvals=1 protos=0
  ;   K[0]='setmetatable'
  ;   K[1]='DBIdGenerator'
  ;   K[2]='Init'
  ;   upvals: _ENV
  ;   locals: generator(4-8)
  0000  GETTABUP  R0 = _ENV[K0('setmetatable')]
  0001  NEWTABLE  R1 = {} (0 items)
  0002  GETTABUP  R2 = _ENV[K1('DBIdGenerator')]
  0003  CALL      R0 = call(R0, 1 args, 2 rets)
  0004  SELF      R2 = R0[K2('Init')] (self)
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  RETURN    return R0..R-1
  0007  RETURN    return R0..R-1
; ---------- proto1 [Init] ----------
  ; fn ?  line 11-14 np=1 va=0 ms=2 code=3 consts=3 upvals=0 protos=0
  ;   K[0]='m_instanceCount'
  ;   K[1]=0
  ;   K[2]='m_lastTimeStamp'
  ;   locals: self(0-3)
  0000  SETTABLE  R0[K0('m_instanceCount')] = K1(0)
  0001  SETTABLE  R0[K2('m_lastTimeStamp')] = K1(0)
  0002  RETURN    return R0..R-1
; ---------- proto2 [Generate] ----------
  ; fn ?  line 16-30 np=1 va=0 ms=6 code=31 consts=10 upvals=1 protos=0
  ;   K[0]='GM'
  ;   K[1]='GameModel'
  ;   K[2]='GetServerTime'
  ;   K[3]='m_lastTimeStamp'
  ;   K[4]='m_instanceCount'
  ;   K[5]=1
  ;   K[6]=999
  ;   K[7]='string'
  ;   K[8]='format'
  ;   K[9]='%d%03d'
  ;   upvals: _ENV
  ;   locals: self(0-31), timeStamp(4-31)
  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  GETTABLE  R2 = R0[K3('m_lastTimeStamp')]
  0005  EQ        if R1 eq R2   -> -130551
  0006  JMP       (jump)   -> 13
  0007  GETTABLE  R2 = R0[K3('m_lastTimeStamp')]
  0008  LT        if R0 lt R1   -> -130037
  0009  JMP       (jump)   -> 13
  0010  SETTABLE  R0[K4('m_instanceCount')] = K5(1)
  0011  SETTABLE  R0[K3('m_lastTimeStamp')] = R1
  0012  JMP       (jump)   -> 23
  0013  GETTABLE  R2 = R0[K4('m_instanceCount')]
  0014  ADD       R2 = K5(1) add R2
  0015  SETTABLE  R0[K4('m_instanceCount')] = R2
  0016  GETTABLE  R2 = R0[K4('m_instanceCount')]
  0017  LT        if R0 lt R2   -> 3093
  0018  JMP       (jump)   -> 23
  0019  SETTABLE  R0[K4('m_instanceCount')] = K5(1)
  0020  GETTABLE  R2 = R0[K3('m_lastTimeStamp')]
  0021  ADD       R2 = K5(1) add R2
  0022  SETTABLE  R0[K3('m_lastTimeStamp')] = R2
  0023  GETTABUP  R2 = _ENV[K7('string')]
  0024  GETTABLE  R2 = R2[K8('format')]
  0025  LOADK     R3 = K9 '%d%03d'
  0026  GETTABLE  R4 = R0[K3('m_lastTimeStamp')]
  0027  GETTABLE  R5 = R0[K4('m_instanceCount')]
  0028  TAILCALL  tailcall(R2, 0)
  0029  RETURN    return R2..R1
  0030  RETURN    return R0..R-1
