# UI_Window_Setting_Badge3DView_567.luac
; fn @Badge3DView.lua  line 0-0 np=0 va=1 ms=9 code=52 consts=22 upvals=1 protos=13
;   K[0]='Badge3DView'
;   K[1]='__index'
;   K[2]='Init'
;   K[3]='OnDestroy'
;   K[4]='GetRawImage'
;   K[5]='SetSortingOrder'
;   K[6]=0.3
;   K[7]=0.99
;   K[8]=40.0
;   K[9]=500
;   K[10]=3
;   K[11]='_OnDrag'
;   K[12]='_OnPointerDown'
;   K[13]='Update'
;   K[14]='_KillVerticleAnimation'
;   K[15]=2
;   K[16]='_StartVerticleAnimation'
;   K[17]='_KillSetupAnimation'
;   K[18]='ToSetupPos'
;   K[19]='_KillIdleAnimation'
;   K[20]=15
;   K[21]='_StartIdleAnimation'
;   upvals: _ENV
;   locals: SENSITIVITY(18-52), INERTIA_DECELERATION_RATE(19-52), TOUCH_MOVE_SPEED_FACTOR(20-52), MAX_INERTIA_SPEED(21-52), MIN_INERTIA_SPEED(22-52), IDLE_ANIMATION_DT(35-52), IDLE_ROTATION(48-52)
0000  NEWTABLE  R0 = {} (0 items)
0001  SETTABUP  _ENV[K0('Badge3DView')] = R0
0002  GETTABUP  R0 = _ENV[K0('Badge3DView')]
0003  GETTABUP  R1 = _ENV[K0('Badge3DView')]
0004  SETTABLE  R0[K1('__index')] = R1
0005  GETTABUP  R0 = _ENV[K0('Badge3DView')]
0006  CLOSURE   R1 = closure proto0
0007  SETTABLE  R0[K2('Init')] = R1
0008  GETTABUP  R0 = _ENV[K0('Badge3DView')]
0009  CLOSURE   R1 = closure proto1
0010  SETTABLE  R0[K3('OnDestroy')] = R1
0011  GETTABUP  R0 = _ENV[K0('Badge3DView')]
0012  CLOSURE   R1 = closure proto2
0013  SETTABLE  R0[K4('GetRawImage')] = R1
0014  GETTABUP  R0 = _ENV[K0('Badge3DView')]
0015  CLOSURE   R1 = closure proto3
0016  SETTABLE  R0[K5('SetSortingOrder')] = R1
0017  LOADK     R0 = K6 0.3
0018  LOADK     R1 = K7 0.99
0019  LOADK     R2 = K8 40.0
0020  LOADK     R3 = K9 500
0021  LOADK     R4 = K10 3
0022  GETTABUP  R5 = _ENV[K0('Badge3DView')]
0023  CLOSURE   R6 = closure proto4
0024  SETTABLE  R5[K11('_OnDrag')] = R6
0025  GETTABUP  R5 = _ENV[K0('Badge3DView')]
0026  CLOSURE   R6 = closure proto5
0027  SETTABLE  R5[K12('_OnPointerDown')] = R6
0028  GETTABUP  R5 = _ENV[K0('Badge3DView')]
0029  CLOSURE   R6 = closure proto6
0030  SETTABLE  R5[K13('Update')] = R6
0031  GETTABUP  R5 = _ENV[K0('Badge3DView')]
0032  CLOSURE   R6 = closure proto7
0033  SETTABLE  R5[K14('_KillVerticleAnimation')] = R6
0034  LOADK     R5 = K15 2
0035  GETTABUP  R6 = _ENV[K0('Badge3DView')]
0036  CLOSURE   R7 = closure proto8
0037  SETTABLE  R6[K16('_StartVerticleAnimation')] = R7
0038  GETTABUP  R6 = _ENV[K0('Badge3DView')]
0039  CLOSURE   R7 = closure proto9
0040  SETTABLE  R6[K17('_KillSetupAnimation')] = R7
0041  GETTABUP  R6 = _ENV[K0('Badge3DView')]
0042  CLOSURE   R7 = closure proto10
0043  SETTABLE  R6[K18('ToSetupPos')] = R7
0044  GETTABUP  R6 = _ENV[K0('Badge3DView')]
0045  CLOSURE   R7 = closure proto11
0046  SETTABLE  R6[K19('_KillIdleAnimation')] = R7
0047  LOADK     R6 = K20 15
0048  GETTABUP  R7 = _ENV[K0('Badge3DView')]
0049  CLOSURE   R8 = closure proto12
0050  SETTABLE  R7[K21('_StartIdleAnimation')] = R8
0051  RETURN    return R0..R-1
; ---------- proto0 [Init] ----------
  ; fn ?  line 4-16 np=2 va=0 ms=7 code=15 consts=8 upvals=1 protos=3
  ;   K[0]='GM'
  ;   K[1]='ModeViewController'
  ;   K[2]='LoadBadgeView'
  ;   K[3]='ScenePrefabConfigName'
  ;   K[4]='m_rawImg'
  ;   K[5]='m_eventTrigger'
  ;   K[6]='OnLuaDrag'
  ;   K[7]='OnLuaPointerDown'
  ;   upvals: _ENV
  ;   locals: self(0-15), badgeId(0-15)
  0000  GETTABUP  R2 = _ENV[K0('GM')]
  0001  GETTABLE  R2 = R2[K1('ModeViewController')]
  0002  SELF      R3 = R2[K2('LoadBadgeView')] (self)
  0003  GETTABUP  R4 = _ENV[K3('ScenePrefabConfigName')]
  0004  GETTABLE  R4 = R4[R1]
  0005  GETTABLE  R5 = R0[K4('m_rawImg')]
  0006  CLOSURE   R6 = closure proto0
  0007  CALL      R2 = call(R2, 0 args, 4 rets)
  0008  GETTABLE  R2 = R0[K5('m_eventTrigger')]
  0009  CLOSURE   R3 = closure proto1
  0010  SETTABLE  R2[K6('OnLuaDrag')] = R3
  0011  GETTABLE  R2 = R0[K5('m_eventTrigger')]
  0012  CLOSURE   R3 = closure proto2
  0013  SETTABLE  R2[K7('OnLuaPointerDown')] = R3
  0014  RETURN    return R0..R-1
  ; ---------- proto0 [OnLuaDrag] ----------
    ; fn ?  line 5-12 np=1 va=0 ms=4 code=22 consts=8 upvals=1 protos=0
    ;   K[0]='IsNull'
    ;   K[1]='m_badgeTrans'
    ;   K[2]='transform'
    ;   K[3]='GetChild'
    ;   K[4]=0
    ;   K[5]='ToSetupPos'
    ;   K[6]='_StartVerticleAnimation'
    ;   K[7]='_StartIdleAnimation'
    ;   upvals: self
    ;   locals: badgeGo(0-22)
    0000  TEST      if not R0 then   -> -131070
    0001  JMP       (jump)   -> 21
    0002  SELF      R2 = R0[K0('IsNull')] (self)
    0003  CALL      R1 = call(R1, 1 args, 1 rets)
    0004  TEST      if not R1 then   -> -131065
    0005  JMP       (jump)   -> 21
    0006  GETTABLE  R1 = R0[K2('transform')]
    0007  SELF      R2 = R1[K3('GetChild')] (self)
    0008  LOADK     R3 = K4 0
    0009  CALL      R1 = call(R1, 1 args, 2 rets)
    0010  SETTABUP  self[K1('m_badgeTrans')] = R1
    0011  GETUPVAL  R1 = self
    0012  SELF      R2 = R1[K5('ToSetupPos')] (self)
    0013  LOADBOOL  R3 = false
    0014  CALL      R1 = call(R1, 0 args, 2 rets)
    0015  GETUPVAL  R1 = self
    0016  SELF      R2 = R1[K6('_StartVerticleAnimation')] (self)
    0017  CALL      R1 = call(R1, 0 args, 1 rets)
    0018  GETUPVAL  R1 = self
    0019  SELF      R2 = R1[K7('_StartIdleAnimation')] (self)
    0020  CALL      R1 = call(R1, 0 args, 1 rets)
    0021  RETURN    return R0..R-1
  ; ---------- proto1 [OnLuaDrag] ----------
    ; fn ?  line 14-14 np=1 va=0 ms=4 code=5 consts=1 upvals=1 protos=0
    ;   K[0]='_OnDrag'
    ;   upvals: self
    ;   locals: eventData(0-5)
    0000  GETUPVAL  R1 = self
    0001  SELF      R2 = R1[K0('_OnDrag')] (self)
    0002  MOVE      R3 = R0
    0003  CALL      R1 = call(R1, 0 args, 2 rets)
    0004  RETURN    return R0..R-1
  ; ---------- proto2 [OnLuaPointerDown] ----------
    ; fn ?  line 15-15 np=1 va=0 ms=4 code=5 consts=1 upvals=1 protos=0
    ;   K[0]='_OnPointerDown'
    ;   upvals: self
    ;   locals: eventData(0-5)
    0000  GETUPVAL  R1 = self
    0001  SELF      R2 = R1[K0('_OnPointerDown')] (self)
    0002  MOVE      R3 = R0
    0003  CALL      R1 = call(R1, 0 args, 2 rets)
    0004  RETURN    return R0..R-1
; ---------- proto1 [OnDestroy] ----------
  ; fn ?  line 18-26 np=1 va=0 ms=3 code=11 consts=6 upvals=1 protos=0
  ;   K[0]='GM'
  ;   K[1]='ModeViewController'
  ;   K[2]='ReleaseBadgeView'
  ;   K[3]='_KillSetupAnimation'
  ;   K[4]='_KillVerticleAnimation'
  ;   K[5]='_KillIdleAnimation'
  ;   upvals: _ENV
  ;   locals: self(0-11)
  0000  GETTABUP  R1 = _ENV[K0('GM')]
  0001  GETTABLE  R1 = R1[K1('ModeViewController')]
  0002  SELF      R2 = R1[K2('ReleaseBadgeView')] (self)
  0003  CALL      R1 = call(R1, 0 args, 1 rets)
  0004  SELF      R2 = R0[K3('_KillSetupAnimation')] (self)
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  SELF      R2 = R0[K4('_KillVerticleAnimation')] (self)
  0007  CALL      R1 = call(R1, 0 args, 1 rets)
  0008  SELF      R2 = R0[K5('_KillIdleAnimation')] (self)
  0009  CALL      R1 = call(R1, 0 args, 1 rets)
  0010  RETURN    return R0..R-1
; ---------- proto2 [GetRawImage] ----------
  ; fn ?  line 28-30 np=1 va=0 ms=2 code=3 consts=1 upvals=0 protos=0
  ;   K[0]='m_rawImg'
  ;   locals: self(0-3)
  0000  GETTABLE  R1 = R0[K0('m_rawImg')]
  0001  RETURN    return R1..R0
  0002  RETURN    return R0..R-1
; ---------- proto3 [SetSortingOrder] ----------
  ; fn ?  line 32-35 np=2 va=0 ms=3 code=5 consts=4 upvals=0 protos=0
  ;   K[0]='m_canvas'
  ;   K[1]='overrideSorting'
  ;   K[2]=true
  ;   K[3]='sortingOrder'
  ;   locals: self(0-5), sortingOrder(0-5)
  0000  GETTABLE  R2 = R0[K0('m_canvas')]
  0001  SETTABLE  R2[K1('overrideSorting')] = K2(true)
  0002  GETTABLE  R2 = R0[K0('m_canvas')]
  0003  SETTABLE  R2[K3('sortingOrder')] = R1
  0004  RETURN    return R0..R-1
; ---------- proto4 [_OnDrag] ----------
  ; fn ?  line 43-60 np=2 va=0 ms=9 code=34 consts=7 upvals=3 protos=0
  ;   K[0]='m_badgeTrans'
  ;   K[1]=nil
  ;   K[2]='delta'
  ;   K[3]='x'
  ;   K[4]='m_inertiaSpeed'
  ;   K[5]='Rotate'
  ;   K[6]=0
  ;   upvals: TOUCH_MOVE_SPEED_FACTOR, MAX_INERTIA_SPEED, SENSITIVITY
  ;   locals: self(0-34), eventData(0-34), offsetX(7-34), angle(27-34)
  0000  GETTABLE  R2 = R0[K0('m_badgeTrans')]
  0001  EQ        if R0 eq K1(nil)   -> -129788
  0002  JMP       (jump)   -> 4
  0003  RETURN    return R0..R-1
  0004  GETTABLE  R2 = R1[K2('delta')]
  0005  GETTABLE  R2 = R2[K3('x')]
  0006  UNM       R2 = unm R0
  0007  GETUPVAL  R3 = TOUCH_MOVE_SPEED_FACTOR
  0008  MUL       R3 = R3 mul R2
  0009  SETTABLE  R0[K4('m_inertiaSpeed')] = R3
  0010  GETTABLE  R3 = R0[K4('m_inertiaSpeed')]
  0011  GETUPVAL  R4 = TOUCH_MOVE_SPEED_FACTOR
  0012  LT        if R0 lt R3   -> -129007
  0013  JMP       (jump)   -> 17
  0014  GETUPVAL  R3 = TOUCH_MOVE_SPEED_FACTOR
  0015  SETTABLE  R0[K4('m_inertiaSpeed')] = R3
  0016  JMP       (jump)   -> 25
  0017  GETTABLE  R3 = R0[K4('m_inertiaSpeed')]
  0018  GETUPVAL  R4 = TOUCH_MOVE_SPEED_FACTOR
  0019  UNM       R4 = unm R0
  0020  LT        if R0 lt R4   -> -129510
  0021  JMP       (jump)   -> 25
  0022  GETUPVAL  R3 = TOUCH_MOVE_SPEED_FACTOR
  0023  UNM       R3 = unm R0
  0024  SETTABLE  R0[K4('m_inertiaSpeed')] = R3
  0025  GETUPVAL  R3 = TOUCH_MOVE_SPEED_FACTOR
  0026  MUL       R3 = R3 mul R2
  0027  GETTABLE  R4 = R0[K0('m_badgeTrans')]
  0028  SELF      R5 = R4[K5('Rotate')] (self)
  0029  LOADK     R6 = K6 0
  0030  MOVE      R7 = R0
  0031  LOADK     R8 = K6 0
  0032  CALL      R4 = call(R4, 0 args, 4 rets)
  0033  RETURN    return R0..R-1
; ---------- proto5 [_OnPointerDown] ----------
  ; fn ?  line 62-71 np=2 va=0 ms=4 code=11 consts=5 upvals=0 protos=0
  ;   K[0]='_KillIdleAnimation'
  ;   K[1]='_KillSetupAnimation'
  ;   K[2]='_StartVerticleAnimation'
  ;   K[3]='m_onTouchDt'
  ;   K[4]=0
  ;   locals: self(0-11), eventData(0-11)
  0000  SELF      R3 = R0[K0('_KillIdleAnimation')] (self)
  0001  CALL      R2 = call(R2, 0 args, 1 rets)
  0002  SELF      R3 = R0[K1('_KillSetupAnimation')] (self)
  0003  CALL      R2 = call(R2, 0 args, 1 rets)
  0004  SELF      R3 = R0[K2('_StartVerticleAnimation')] (self)
  0005  CALL      R2 = call(R2, 0 args, 1 rets)
  0006  GETTABLE  R2 = R0[K3('m_onTouchDt')]
  0007  TEST      if not R2 then   -> -131062
  0008  JMP       (jump)   -> 10
  0009  SETTABLE  R0[K3('m_onTouchDt')] = K4(0)
  0010  RETURN    return R0..R-1
; ---------- proto6 [Update] ----------
  ; fn ?  line 73-97 np=2 va=0 ms=7 code=58 consts=11 upvals=3 protos=0
  ;   K[0]='Input'
  ;   K[1]='touchCount'
  ;   K[2]=0
  ;   K[3]='GetMouseButtonDown'
  ;   K[4]='m_onTouchDt'
  ;   K[5]='m_inertiaSpeed'
  ;   K[6]=nil
  ;   K[7]='m_badgeTrans'
  ;   K[8]='Rotate'
  ;   K[9]=3
  ;   K[10]='ToSetupPos'
  ;   upvals: _ENV, INERTIA_DECELERATION_RATE, MIN_INERTIA_SPEED
  ;   locals: self(0-58), dt(0-58)
  0000  GETTABUP  R2 = _ENV[K0('Input')]
  0001  GETTABLE  R2 = R2[K1('touchCount')]
  0002  LT        if R1 lt R2   -> 1030
  0003  JMP       (jump)   -> 10
  0004  GETTABUP  R2 = _ENV[K0('Input')]
  0005  GETTABLE  R2 = R2[K3('GetMouseButtonDown')]
  0006  LOADK     R3 = K2 0
  0007  CALL      R2 = call(R2, 1 args, 1 rets)
  0008  TEST      if not R2 then   -> -131062
  0009  JMP       (jump)   -> 11
  0010  RETURN    return R0..R-1
  0011  GETTABLE  R2 = R0[K4('m_onTouchDt')]
  0012  TEST      if not R2 then   -> -131058
  0013  JMP       (jump)   -> 17
  0014  GETTABLE  R2 = R0[K4('m_onTouchDt')]
  0015  ADD       R2 = R1 add R2
  0016  SETTABLE  R0[K4('m_onTouchDt')] = R2
  0017  GETTABLE  R2 = R0[K5('m_inertiaSpeed')]
  0018  TEST      if not R2 then   -> -131052
  0019  JMP       (jump)   -> 47
  0020  GETTABLE  R2 = R0[K5('m_inertiaSpeed')]
  0021  GETUPVAL  R3 = _ENV
  0022  MUL       R2 = R3 mul R2
  0023  SETTABLE  R0[K5('m_inertiaSpeed')] = R2
  0024  GETTABLE  R2 = R0[K5('m_inertiaSpeed')]
  0025  GETUPVAL  R3 = _ENV
  0026  LT        if R0 lt R3   -> -130017
  0027  JMP       (jump)   -> 36
  0028  GETTABLE  R2 = R0[K5('m_inertiaSpeed')]
  0029  GETUPVAL  R3 = _ENV
  0030  UNM       R3 = unm R0
  0031  LT        if R0 lt R2   -> -129501
  0032  JMP       (jump)   -> 36
  0033  SETTABLE  R0[K5('m_inertiaSpeed')] = K6(nil)
  0034  RETURN    return R0..R-1
  0035  JMP       (jump)   -> 57
  0036  GETTABLE  R2 = R0[K7('m_badgeTrans')]
  0037  TEST      if not R2 then   -> -131033
  0038  JMP       (jump)   -> 57
  0039  GETTABLE  R2 = R0[K7('m_badgeTrans')]
  0040  SELF      R3 = R2[K8('Rotate')] (self)
  0041  LOADK     R4 = K2 0
  0042  GETTABLE  R5 = R0[K5('m_inertiaSpeed')]
  0043  MUL       R5 = R1 mul R5
  0044  LOADK     R6 = K2 0
  0045  CALL      R2 = call(R2, 0 args, 4 rets)
  0046  JMP       (jump)   -> 57
  0047  GETTABLE  R2 = R0[K4('m_onTouchDt')]
  0048  TEST      if not R2 then   -> -131022
  0049  JMP       (jump)   -> 57
  0050  GETTABLE  R2 = R0[K4('m_onTouchDt')]
  0051  LT        if R0 lt R2   -> 4663
  0052  JMP       (jump)   -> 57
  0053  SELF      R3 = R0[K10('ToSetupPos')] (self)
  0054  LOADBOOL  R4 = true
  0055  CALL      R2 = call(R2, 0 args, 2 rets)
  0056  SETTABLE  R0[K4('m_onTouchDt')] = K6(nil)
  0057  RETURN    return R0..R-1
; ---------- proto7 [_KillVerticleAnimation] ----------
  ; fn ?  line 99-104 np=1 va=0 ms=3 code=8 consts=3 upvals=0 protos=0
  ;   K[0]='m_verticalTween'
  ;   K[1]='Kill'
  ;   K[2]=nil
  ;   locals: self(0-8)
  0000  GETTABLE  R1 = R0[K0('m_verticalTween')]
  0001  TEST      if not R1 then   -> -131069
  0002  JMP       (jump)   -> 7
  0003  GETTABLE  R1 = R0[K0('m_verticalTween')]
  0004  SELF      R2 = R1[K1('Kill')] (self)
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  SETTABLE  R0[K0('m_verticalTween')] = K2(nil)
  0007  RETURN    return R0..R-1
; ---------- proto8 [_StartVerticleAnimation] ----------
  ; fn ?  line 107-115 np=1 va=0 ms=5 code=22 consts=12 upvals=2 protos=0
  ;   K[0]='_KillVerticleAnimation'
  ;   K[1]='m_badgeTrans'
  ;   K[2]='m_verticalTween'
  ;   K[3]='DOLocalMoveY'
  ;   K[4]=0.1
  ;   K[5]='SetEase'
  ;   K[6]='Ease'
  ;   K[7]='InOutSine'
  ;   K[8]='SetLoops'
  ;   K[9]=-1
  ;   K[10]='LoopType'
  ;   K[11]='Yoyo'
  ;   upvals: IDLE_ANIMATION_DT, _ENV
  ;   locals: self(0-22)
  0000  SELF      R2 = R0[K0('_KillVerticleAnimation')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  GETTABLE  R1 = R0[K1('m_badgeTrans')]
  0003  TEST      if not R1 then   -> -131066
  0004  JMP       (jump)   -> 6
  0005  RETURN    return R0..R-1
  0006  GETTABLE  R1 = R0[K1('m_badgeTrans')]
  0007  SELF      R2 = R1[K3('DOLocalMoveY')] (self)
  0008  LOADK     R3 = K4 0.1
  0009  GETUPVAL  R4 = IDLE_ANIMATION_DT
  0010  CALL      R1 = call(R1, 1 args, 3 rets)
  0011  SELF      R2 = R1[K5('SetEase')] (self)
  0012  GETTABUP  R3 = _ENV[K6('Ease')]
  0013  GETTABLE  R3 = R3[K7('InOutSine')]
  0014  CALL      R1 = call(R1, 1 args, 2 rets)
  0015  SELF      R2 = R1[K8('SetLoops')] (self)
  0016  LOADK     R3 = K9 -1
  0017  GETTABUP  R4 = _ENV[K10('LoopType')]
  0018  GETTABLE  R4 = R4[K11('Yoyo')]
  0019  CALL      R1 = call(R1, 1 args, 3 rets)
  0020  SETTABLE  R0[K2('m_verticalTween')] = R1
  0021  RETURN    return R0..R-1
; ---------- proto9 [_KillSetupAnimation] ----------
  ; fn ?  line 117-122 np=1 va=0 ms=3 code=8 consts=3 upvals=0 protos=0
  ;   K[0]='m_setupTween'
  ;   K[1]='Kill'
  ;   K[2]=nil
  ;   locals: self(0-8)
  0000  GETTABLE  R1 = R0[K0('m_setupTween')]
  0001  TEST      if not R1 then   -> -131069
  0002  JMP       (jump)   -> 7
  0003  GETTABLE  R1 = R0[K0('m_setupTween')]
  0004  SELF      R2 = R1[K1('Kill')] (self)
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  SETTABLE  R0[K0('m_setupTween')] = K2(nil)
  0007  RETURN    return R0..R-1
; ---------- proto10 [ToSetupPos] ----------
  ; fn ?  line 124-153 np=5 va=0 ms=12 code=43 consts=18 upvals=1 protos=1
  ;   K[0]='_KillVerticleAnimation'
  ;   K[1]='_KillSetupAnimation'
  ;   K[2]='m_badgeTrans'
  ;   K[3]='localPosition'
  ;   K[4]='V3Zero'
  ;   K[5]='rotation'
  ;   K[6]='Quaternion'
  ;   K[7]='identity'
  ;   K[8]='DOTween'
  ;   K[9]='Sequence'
  ;   K[10]=3
  ;   K[11]='Append'
  ;   K[12]='DOLocalRotate'
  ;   K[13]='Join'
  ;   K[14]='DOLocalMoveY'
  ;   K[15]=0
  ;   K[16]='AppendCallback'
  ;   K[17]='m_setupTween'
  ;   upvals: _ENV
  ;   locals: self(0-43), animated(0-43), withIdle(0-43), dt(0-43), spinAround(0-43), s(21-43)
  0000  SELF      R6 = R0[K0('_KillVerticleAnimation')] (self)
  0001  CALL      R5 = call(R5, 0 args, 1 rets)
  0002  SELF      R6 = R0[K1('_KillSetupAnimation')] (self)
  0003  CALL      R5 = call(R5, 0 args, 1 rets)
  0004  GETTABLE  R5 = R0[K2('m_badgeTrans')]
  0005  TEST      if not R5 then   -> -131064
  0006  JMP       (jump)   -> 8
  0007  RETURN    return R0..R-1
  0008  TEST      if not R1 then   -> -131061
  0009  JMP       (jump)   -> 18
  0010  GETTABLE  R5 = R0[K2('m_badgeTrans')]
  0011  GETTABUP  R6 = _ENV[K4('V3Zero')]
  0012  SETTABLE  R5[K3('localPosition')] = R6
  0013  GETTABLE  R5 = R0[K2('m_badgeTrans')]
  0014  GETTABUP  R6 = _ENV[K6('Quaternion')]
  0015  GETTABLE  R6 = R6[K7('identity')]
  0016  SETTABLE  R5[K5('rotation')] = R6
  0017  RETURN    return R0..R-1
  0018  GETTABUP  R5 = _ENV[K8('DOTween')]
  0019  GETTABLE  R5 = R5[K9('Sequence')]
  0020  CALL      R5 = call(R5, 1 args, 0 rets)
  0021  TEST      if not R3 then   -> -131048
  0022  JMP       (jump)   -> 24
  0023  LOADK     R3 = K10 3
  0024  SELF      R7 = R5[K11('Append')] (self)
  0025  GETTABLE  R8 = R0[K2('m_badgeTrans')]
  0026  SELF      R9 = R8[K12('DOLocalRotate')] (self)
  0027  GETTABUP  R10 = _ENV[K4('V3Zero')]
  0028  MOVE      R11 = R0
  0029  CALL      R8 = call(R8, -1 args, 3 rets)
  0030  CALL      R6 = call(R6, 0 args, -1 rets)
  0031  SELF      R7 = R5[K13('Join')] (self)
  0032  GETTABLE  R8 = R0[K2('m_badgeTrans')]
  0033  SELF      R9 = R8[K14('DOLocalMoveY')] (self)
  0034  LOADK     R10 = K15 0
  0035  MOVE      R11 = R0
  0036  CALL      R8 = call(R8, -1 args, 3 rets)
  0037  CALL      R6 = call(R6, 0 args, -1 rets)
  0038  SELF      R7 = R5[K16('AppendCallback')] (self)
  0039  CLOSURE   R8 = closure proto0
  0040  CALL      R6 = call(R6, 0 args, 2 rets)
  0041  SETTABLE  R0[K17('m_setupTween')] = R5
  0042  RETURN    return R0..R-1
  ; ---------- proto0 [m_setupTween] ----------
    ; fn ?  line 142-151 np=0 va=0 ms=6 code=28 consts=14 upvals=4 protos=0
    ;   K[0]=false
    ;   K[1]='_StartVerticleAnimation'
    ;   K[2]='_StartIdleAnimation'
    ;   K[3]='m_badgeTrans'
    ;   K[4]='DOLocalRotate'
    ;   K[5]='Vector3'
    ;   K[6]=0
    ;   K[7]=180
    ;   K[8]=0.8
    ;   K[9]='SetEase'
    ;   K[10]='Ease'
    ;   K[11]='OutExpo'
    ;   K[12]='m_setupTween'
    ;   K[13]=nil
    ;   upvals: withIdle, self, spinAround, _ENV
    0000  GETUPVAL  R0 = withIdle
    0001  EQ        if R1 eq K0(false)   -> -130813
    0002  JMP       (jump)   -> 10
    0003  GETUPVAL  R0 = withIdle
    0004  SELF      R1 = R0[K1('_StartVerticleAnimation')] (self)
    0005  CALL      R0 = call(R0, 0 args, 1 rets)
    0006  GETUPVAL  R0 = withIdle
    0007  SELF      R1 = R0[K2('_StartIdleAnimation')] (self)
    0008  CALL      R0 = call(R0, 0 args, 1 rets)
    0009  JMP       (jump)   -> 26
    0010  GETUPVAL  R0 = withIdle
    0011  TEST      if not R0 then   -> -131059
    0012  JMP       (jump)   -> 26
    0013  GETTABUP  R0 = self[K3('m_badgeTrans')]
    0014  SELF      R1 = R0[K4('DOLocalRotate')] (self)
    0015  GETTABUP  R2 = _ENV[K5('Vector3')]
    0016  LOADK     R3 = K6 0
    0017  LOADK     R4 = K7 180
    0018  LOADK     R5 = K6 0
    0019  CALL      R2 = call(R2, 1 args, 3 rets)
    0020  LOADK     R3 = K8 0.8
    0021  CALL      R0 = call(R0, 1 args, 3 rets)
    0022  SELF      R1 = R0[K9('SetEase')] (self)
    0023  GETTABUP  R2 = _ENV[K10('Ease')]
    0024  GETTABLE  R2 = R2[K11('OutExpo')]
    0025  CALL      R0 = call(R0, 0 args, 2 rets)
    0026  SETTABUP  self[K12('m_setupTween')] = K13(nil)
    0027  RETURN    return R0..R-1
; ---------- proto11 [_KillIdleAnimation] ----------
  ; fn ?  line 155-160 np=1 va=0 ms=3 code=8 consts=3 upvals=0 protos=0
  ;   K[0]='m_horizontalTween'
  ;   K[1]='Kill'
  ;   K[2]=nil
  ;   locals: self(0-8)
  0000  GETTABLE  R1 = R0[K0('m_horizontalTween')]
  0001  TEST      if not R1 then   -> -131069
  0002  JMP       (jump)   -> 7
  0003  GETTABLE  R1 = R0[K0('m_horizontalTween')]
  0004  SELF      R2 = R1[K1('Kill')] (self)
  0005  CALL      R1 = call(R1, 0 args, 1 rets)
  0006  SETTABLE  R0[K0('m_horizontalTween')] = K2(nil)
  0007  RETURN    return R0..R-1
; ---------- proto12 [_StartIdleAnimation] ----------
  ; fn ?  line 163-176 np=1 va=0 ms=10 code=63 consts=18 upvals=3 protos=0
  ;   K[0]='_KillIdleAnimation'
  ;   K[1]='m_badgeTrans'
  ;   K[2]='DOTween'
  ;   K[3]='Sequence'
  ;   K[4]='SetLoops'
  ;   K[5]=-1
  ;   K[6]='Append'
  ;   K[7]='DOLocalRotate'
  ;   K[8]='Vector3'
  ;   K[9]=0
  ;   K[10]=1
  ;   K[11]='SetEase'
  ;   K[12]='Ease'
  ;   K[13]='OutSine'
  ;   K[14]=2
  ;   K[15]='InOutSine'
  ;   K[16]='InSine'
  ;   K[17]='m_horizontalTween'
  ;   upvals: _ENV, IDLE_ROTATION, IDLE_ANIMATION_DT
  ;   locals: self(0-63), s(12-63)
  0000  SELF      R2 = R0[K0('_KillIdleAnimation')] (self)
  0001  CALL      R1 = call(R1, 0 args, 1 rets)
  0002  GETTABLE  R1 = R0[K1('m_badgeTrans')]
  0003  TEST      if not R1 then   -> -131066
  0004  JMP       (jump)   -> 6
  0005  RETURN    return R0..R-1
  0006  GETTABUP  R1 = _ENV[K2('DOTween')]
  0007  GETTABLE  R1 = R1[K3('Sequence')]
  0008  CALL      R1 = call(R1, 1 args, 0 rets)
  0009  SELF      R2 = R1[K4('SetLoops')] (self)
  0010  LOADK     R3 = K5 -1
  0011  CALL      R1 = call(R1, 1 args, 2 rets)
  0012  SELF      R3 = R1[K6('Append')] (self)
  0013  GETTABLE  R4 = R0[K1('m_badgeTrans')]
  0014  SELF      R5 = R4[K7('DOLocalRotate')] (self)
  0015  GETTABUP  R6 = _ENV[K8('Vector3')]
  0016  LOADK     R7 = K9 0
  0017  GETUPVAL  R8 = _ENV
  0018  LOADK     R9 = K9 0
  0019  CALL      R6 = call(R6, 1 args, 3 rets)
  0020  GETUPVAL  R7 = _ENV
  0021  MUL       R7 = K10(1) mul R7
  0022  CALL      R4 = call(R4, 1 args, 3 rets)
  0023  SELF      R5 = R4[K11('SetEase')] (self)
  0024  GETTABUP  R6 = _ENV[K12('Ease')]
  0025  GETTABLE  R6 = R6[K13('OutSine')]
  0026  CALL      R4 = call(R4, -1 args, 2 rets)
  0027  CALL      R2 = call(R2, 0 args, -1 rets)
  0028  SELF      R3 = R1[K6('Append')] (self)
  0029  GETTABLE  R4 = R0[K1('m_badgeTrans')]
  0030  SELF      R5 = R4[K7('DOLocalRotate')] (self)
  0031  GETTABUP  R6 = _ENV[K8('Vector3')]
  0032  LOADK     R7 = K9 0
  0033  GETUPVAL  R8 = _ENV
  0034  UNM       R8 = unm R0
  0035  LOADK     R9 = K9 0
  0036  CALL      R6 = call(R6, 1 args, 3 rets)
  0037  GETUPVAL  R7 = _ENV
  0038  MUL       R7 = K14(2) mul R7
  0039  CALL      R4 = call(R4, 1 args, 3 rets)
  0040  SELF      R5 = R4[K11('SetEase')] (self)
  0041  GETTABUP  R6 = _ENV[K12('Ease')]
  0042  GETTABLE  R6 = R6[K15('InOutSine')]
  0043  CALL      R4 = call(R4, -1 args, 2 rets)
  0044  CALL      R2 = call(R2, 0 args, -1 rets)
  0045  SELF      R3 = R1[K6('Append')] (self)
  0046  GETTABLE  R4 = R0[K1('m_badgeTrans')]
  0047  SELF      R5 = R4[K7('DOLocalRotate')] (self)
  0048  GETTABUP  R6 = _ENV[K8('Vector3')]
  0049  LOADK     R7 = K9 0
  0050  LOADK     R8 = K9 0
  0051  LOADK     R9 = K9 0
  0052  CALL      R6 = call(R6, 1 args, 3 rets)
  0053  GETUPVAL  R7 = _ENV
  0054  MUL       R7 = K10(1) mul R7
  0055  CALL      R4 = call(R4, 1 args, 3 rets)
  0056  SELF      R5 = R4[K11('SetEase')] (self)
  0057  GETTABUP  R6 = _ENV[K12('Ease')]
  0058  GETTABLE  R6 = R6[K16('InSine')]
  0059  CALL      R4 = call(R4, -1 args, 2 rets)
  0060  CALL      R2 = call(R2, 0 args, -1 rets)
  0061  SETTABLE  R0[K17('m_horizontalTween')] = R1
  0062  RETURN    return R0..R-1
