# UI_Window_Board_ItemRecycleAnimationWindow_626.luac
; fn @ItemRecycleAnimationWindow.lua  line 0-0 np=0 va=1 ms=3 code=25 consts=10 upvals=1 protos=5
;   K[0]='ItemRecycleAnimationWindow'
;   K[1]='setmetatable'
;   K[2]='TransparentBaseWindow'
;   K[3]='__index'
;   K[4]=0.6
;   K[5]='Init'
;   K[6]='StartAnimation'
;   K[7]='GetUIPosition'
;   K[8]='PlayBoardAnimation'
;   K[9]='PlayNonBoardAnimation'
;   upvals: _ENV
;   locals: FLY_ANIMATION(9-25)
0000  GETTABUP  R0 = _ENV[K1('setmetatable')]
0001  NEWTABLE  R1 = {} (0 items)
0002  GETTABUP  R2 = _ENV[K2('TransparentBaseWindow')]
0003  CALL      R0 = call(R0, 1 args, 2 rets)
0004  SETTABUP  _ENV[K0('ItemRecycleAnimationWindow')] = R0
0005  GETTABUP  R0 = _ENV[K0('ItemRecycleAnimationWindow')]
0006  GETTABUP  R1 = _ENV[K0('ItemRecycleAnimationWindow')]
0007  SETTABLE  R0[K3('__index')] = R1
0008  LOADK     R0 = K4 0.6
0009  GETTABUP  R1 = _ENV[K0('ItemRecycleAnimationWindow')]
0010  CLOSURE   R2 = closure proto0
0011  SETTABLE  R1[K5('Init')] = R2
0012  GETTABUP  R1 = _ENV[K0('ItemRecycleAnimationWindow')]
0013  CLOSURE   R2 = closure proto1
0014  SETTABLE  R1[K6('StartAnimation')] = R2
0015  GETTABUP  R1 = _ENV[K0('ItemRecycleAnimationWindow')]
0016  CLOSURE   R2 = closure proto2
0017  SETTABLE  R1[K7('GetUIPosition')] = R2
0018  GETTABUP  R1 = _ENV[K0('ItemRecycleAnimationWindow')]
0019  CLOSURE   R2 = closure proto3
0020  SETTABLE  R1[K8('PlayBoardAnimation')] = R2
0021  GETTABUP  R1 = _ENV[K0('ItemRecycleAnimationWindow')]
0022  CLOSURE   R2 = closure proto4
0023  SETTABLE  R1[K9('PlayNonBoardAnimation')] = R2
0024  RETURN    return R0..R-1
; ---------- proto0 [Init] ----------
  ; fn ?  line 6-36 np=6 va=0 ms=13 code=63 consts=25 upvals=2 protos=4
  ;   K[0]='m_energyText'
  ;   K[1]='text'
  ;   K[2]='+'
  ;   K[3]='m_energyCanvasGroup'
  ;   K[4]='alpha'
  ;   K[5]=1
  ;   K[6]='transform'
  ;   K[7]='localScale'
  ;   K[8]='V3Zero'
  ;   K[9]='m_effectGo'
  ;   K[10]='SetActive'
  ;   K[11]='DOTween'
  ;   K[12]='Sequence'
  ;   K[13]='AppendInterval'
  ;   K[14]=0.3
  ;   K[15]='AppendCallback'
  ;   K[16]='Append'
  ;   K[17]='DOScale'
  ;   K[18]='SetEase'
  ;   K[19]='Ease'
  ;   K[20]='OutBack'
  ;   K[21]=0.2
  ;   K[22]='DOFade'
  ;   K[23]=0
  ;   K[24]='InSine'
  ;   upvals: _ENV, FLY_ANIMATION
  ;   locals: self(0-63), arrDishes(0-63), arrInstrus(0-63), arrOthers(0-63), mapInInstrumentItems(0-63), energyCount(0-63), s(18-63)
  0000  GETTABLE  R6 = R0[K0('m_energyText')]
  0001  LOADK     R7 = K2 '+'
  0002  MOVE      R8 = R0
  0003  CONCAT    R7 = concat(R7..R7)
  0004  SETTABLE  R6[K1('text')] = R7
  0005  GETTABLE  R6 = R0[K3('m_energyCanvasGroup')]
  0006  SETTABLE  R6[K4('alpha')] = K5(1)
  0007  GETTABLE  R6 = R0[K3('m_energyCanvasGroup')]
  0008  GETTABLE  R6 = R6[K6('transform')]
  0009  GETTABUP  R7 = _ENV[K8('V3Zero')]
  0010  SETTABLE  R6[K7('localScale')] = R7
  0011  GETTABLE  R6 = R0[K9('m_effectGo')]
  0012  SELF      R7 = R6[K10('SetActive')] (self)
  0013  LOADBOOL  R8 = false
  0014  CALL      R6 = call(R6, 0 args, 2 rets)
  0015  GETTABUP  R6 = _ENV[K11('DOTween')]
  0016  GETTABLE  R6 = R6[K12('Sequence')]
  0017  CALL      R6 = call(R6, 1 args, 0 rets)
  0018  SELF      R8 = R6[K13('AppendInterval')] (self)
  0019  LOADK     R9 = K14 0.3
  0020  CALL      R7 = call(R7, 0 args, 2 rets)
  0021  SELF      R8 = R6[K15('AppendCallback')] (self)
  0022  CLOSURE   R9 = closure proto0
  0023  CALL      R7 = call(R7, 0 args, 2 rets)
  0024  SELF      R8 = R6[K13('AppendInterval')] (self)
  0025  GETUPVAL  R9 = _ENV
  0026  CALL      R7 = call(R7, 0 args, 2 rets)
  0027  SELF      R8 = R6[K15('AppendCallback')] (self)
  0028  CLOSURE   R9 = closure proto1
  0029  CALL      R7 = call(R7, 0 args, 2 rets)
  0030  SELF      R8 = R6[K16('Append')] (self)
  0031  GETTABLE  R9 = R0[K3('m_energyCanvasGroup')]
  0032  GETTABLE  R9 = R9[K6('transform')]
  0033  SELF      R10 = R9[K17('DOScale')] (self)
  0034  LOADK     R11 = K5 1
  0035  LOADK     R12 = K14 0.3
  0036  CALL      R9 = call(R9, 1 args, 3 rets)
  0037  SELF      R10 = R9[K18('SetEase')] (self)
  0038  GETTABUP  R11 = _ENV[K19('Ease')]
  0039  GETTABLE  R11 = R11[K20('OutBack')]
  0040  CALL      R9 = call(R9, -1 args, 2 rets)
  0041  CALL      R7 = call(R7, 0 args, -1 rets)
  0042  SELF      R8 = R6[K13('AppendInterval')] (self)
  0043  LOADK     R9 = K21 0.2
  0044  CALL      R7 = call(R7, 0 args, 2 rets)
  0045  SELF      R8 = R6[K15('AppendCallback')] (self)
  0046  CLOSURE   R9 = closure proto2
  0047  CALL      R7 = call(R7, 0 args, 2 rets)
  0048  SELF      R8 = R6[K16('Append')] (self)
  0049  GETTABLE  R9 = R0[K3('m_energyCanvasGroup')]
  0050  SELF      R10 = R9[K22('DOFade')] (self)
  0051  LOADK     R11 = K23 0
  0052  LOADK     R12 = K14 0.3
  0053  CALL      R9 = call(R9, 1 args, 3 rets)
  0054  SELF      R10 = R9[K18('SetEase')] (self)
  0055  GETTABUP  R11 = _ENV[K19('Ease')]
  0056  GETTABLE  R11 = R11[K24('InSine')]
  0057  CALL      R9 = call(R9, -1 args, 2 rets)
  0058  CALL      R7 = call(R7, 0 args, -1 rets)
  0059  SELF      R8 = R6[K15('AppendCallback')] (self)
  0060  CLOSURE   R9 = closure proto3
  0061  CALL      R7 = call(R7, 0 args, 2 rets)
  0062  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 15-17 np=0 va=0 ms=6 code=8 consts=1 upvals=5 protos=0
    ;   K[0]='StartAnimation'
    ;   upvals: self, arrDishes, arrInstrus, arrOthers, mapInInstrumentItems
    0000  GETUPVAL  R0 = self
    0001  SELF      R1 = R0[K0('StartAnimation')] (self)
    0002  GETUPVAL  R2 = self
    0003  GETUPVAL  R3 = self
    0004  GETUPVAL  R4 = self
    0005  GETUPVAL  R5 = self
    0006  CALL      R0 = call(R0, 0 args, 5 rets)
    0007  RETURN    return R0..R-1
  ; ---------- proto1 [] ----------
    ; fn ?  line 19-21 np=0 va=0 ms=3 code=5 consts=2 upvals=1 protos=0
    ;   K[0]='m_effectGo'
    ;   K[1]='SetActive'
    ;   upvals: self
    0000  GETTABUP  R0 = self[K0('m_effectGo')]
    0001  SELF      R1 = R0[K1('SetActive')] (self)
    0002  LOADBOOL  R2 = true
    0003  CALL      R0 = call(R0, 0 args, 2 rets)
    0004  RETURN    return R0..R-1
  ; ---------- proto2 [] ----------
    ; fn ?  line 24-31 np=0 va=0 ms=5 code=17 consts=8 upvals=2 protos=0
    ;   K[0]='RewardApi'
    ;   K[1]='AcquireRewardsInView'
    ;   K[2]='PROPERTY_TYPE'
    ;   K[3]='EPropertyType'
    ;   K[4]='Energy'
    ;   K[5]='PROPERTY_COUNT'
    ;   K[6]='ERewardScene'
    ;   K[7]='Other'
    ;   upvals: _ENV, energyCount
    0000  GETTABUP  R0 = _ENV[K0('RewardApi')]
    0001  GETTABLE  R0 = R0[K1('AcquireRewardsInView')]
    0002  NEWTABLE  R1 = {} (1 items)
    0003  NEWTABLE  R2 = {} (0 items)
    0004  GETTABUP  R3 = _ENV[K2('PROPERTY_TYPE')]
    0005  GETTABUP  R4 = _ENV[K3('EPropertyType')]
    0006  GETTABLE  R4 = R4[K4('Energy')]
    0007  SETTABLE  R2[R3] = R4
    0008  GETTABUP  R3 = _ENV[K5('PROPERTY_COUNT')]
    0009  GETUPVAL  R4 = _ENV
    0010  SETTABLE  R2[R3] = R4
    0011  SETLIST   setlist R1[B=1,C=1]
    0012  LOADNIL   R2..R2 = nil
    0013  GETTABUP  R3 = _ENV[K6('ERewardScene')]
    0014  GETTABLE  R3 = R3[K7('Other')]
    0015  CALL      R0 = call(R0, 0 args, 3 rets)
    0016  RETURN    return R0..R-1
  ; ---------- proto3 [] ----------
    ; fn ?  line 33-35 np=0 va=0 ms=2 code=4 consts=1 upvals=1 protos=0
    ;   K[0]='Close'
    ;   upvals: self
    0000  GETUPVAL  R0 = self
    0001  SELF      R1 = R0[K0('Close')] (self)
    0002  CALL      R0 = call(R0, 0 args, 1 rets)
    0003  RETURN    return R0..R-1
; ---------- proto1 [StartAnimation] ----------
  ; fn ?  line 38-82 np=5 va=0 ms=24 code=115 consts=31 upvals=1 protos=0
  ;   K[0]='MainBoardView'
  ;   K[1]='GetInstance'
  ;   K[2]='GM'
  ;   K[3]='MainBoardModel'
  ;   K[4]='ipairs'
  ;   K[5]='eRecycleTag'
  ;   K[6]='EItemRecycleTag'
  ;   K[7]='InBoard'
  ;   K[8]=1
  ;   K[9]='GetItemView'
  ;   K[10]='InInventory'
  ;   K[11]='InCache'
  ;   K[12]='pairs'
  ;   K[13]='GetItemModel'
  ;   K[14]='HasBoardItem'
  ;   K[15]='PlayBoardAnimation'
  ;   K[16]='TutorialHelper'
  ;   K[17]='GetHudButton'
  ;   K[18]='ESceneViewHudButtonKey'
  ;   K[19]='Inventory'
  ;   K[20]='transform'
  ;   K[21]='position'
  ;   K[22]='PlayNonBoardAnimation'
  ;   K[23]='GetUIPosition'
  ;   K[24]='GetOrderArea'
  ;   K[25]='GetBoardCacheRoot'
  ;   K[26]='EventDispatcher'
  ;   K[27]='DispatchEvent'
  ;   K[28]='EEventType'
  ;   K[29]='ItemRetrieved'
  ;   K[30]='ChangeCachedItems'
  ;   upvals: _ENV
  ;   locals: self(0-115), arrDishes(0-115), arrInstrus(0-115), arrOthers(0-115), mapInInstrumentItems(0-115), boardView(3-115), boardModel(5-115), arrBoardItemViews(6-115), arrInventoryItems(7-115), arrCacheItems(8-115), (for generator)(15-53), (for state)(15-53), (for control)(15-53), _(16-51), arr(16-51), (for generator)(19-51), (for state)(19-51), (for control)(19-51), _(20-49), itemModel(20-49), cookItem(54-115), mapBoardInCookItems(55-115), (for generator)(58-77), (for state)(58-77), (for control)(58-77), itemModel(59-75), cookCmp(59-75), inventoryPosition(88-115), cachePosition(100-115)
  0000  GETTABUP  R5 = _ENV[K0('MainBoardView')]
  0001  GETTABLE  R5 = R5[K1('GetInstance')]
  0002  CALL      R5 = call(R5, 1 args, 0 rets)
  0003  GETTABUP  R6 = _ENV[K2('GM')]
  0004  GETTABLE  R6 = R6[K3('MainBoardModel')]
  0005  NEWTABLE  R7 = {} (0 items)
  0006  NEWTABLE  R8 = {} (0 items)
  0007  NEWTABLE  R9 = {} (0 items)
  0008  GETTABUP  R10 = _ENV[K4('ipairs')]
  0009  NEWTABLE  R11 = {} (3 items)
  0010  MOVE      R12 = R0
  0011  MOVE      R13 = R0
  0012  MOVE      R14 = R0
  0013  SETLIST   setlist R11[B=1,C=3]
  0014  CALL      R10 = call(R10, 3 args, 1 rets)
  0015  JMP       (jump)   -> 51
  0016  GETTABUP  R15 = _ENV[K4('ipairs')]
  0017  MOVE      R16 = R0
  0018  CALL      R15 = call(R15, 3 args, 1 rets)
  0019  JMP       (jump)   -> 49
  0020  GETTABLE  R20 = R19[K5('eRecycleTag')]
  0021  GETTABUP  R21 = _ENV[K6('EItemRecycleTag')]
  0022  GETTABLE  R21 = R21[K7('InBoard')]
  0023  EQ        if R0 eq R21   -> -120786
  0024  JMP       (jump)   -> 32
  0025  LEN       R20 = len R0
  0026  ADD       R20 = K8(1) add R20
  0027  SELF      R22 = R5[K9('GetItemView')] (self)
  0028  MOVE      R23 = R0
  0029  CALL      R21 = call(R21, 1 args, 2 rets)
  0030  SETTABLE  R7[R20] = R21
  0031  JMP       (jump)   -> 49
  0032  GETTABLE  R20 = R19[K5('eRecycleTag')]
  0033  GETTABUP  R21 = _ENV[K6('EItemRecycleTag')]
  0034  GETTABLE  R21 = R21[K10('InInventory')]
  0035  EQ        if R0 eq R21   -> -120774
  0036  JMP       (jump)   -> 41
  0037  LEN       R20 = len R0
  0038  ADD       R20 = K8(1) add R20
  0039  SETTABLE  R8[R20] = R19
  0040  JMP       (jump)   -> 49
  0041  GETTABLE  R20 = R19[K5('eRecycleTag')]
  0042  GETTABUP  R21 = _ENV[K6('EItemRecycleTag')]
  0043  GETTABLE  R21 = R21[K11('InCache')]
  0044  EQ        if R0 eq R21   -> -120765
  0045  JMP       (jump)   -> 49
  0046  LEN       R20 = len R0
  0047  ADD       R20 = K8(1) add R20
  0048  SETTABLE  R9[R20] = R19
  0049  TFORCALL  tforcall R15
  0050  TFORLOOP  tforloop R17(sBx=-31)   -> 20
  0051  TFORCALL  tforcall R10
  0052  TFORLOOP  tforloop R12(sBx=-37)   -> 16
  0053  LOADNIL   R10..R10 = nil
  0054  NEWTABLE  R11 = {} (0 items)
  0055  GETTABUP  R12 = _ENV[K12('pairs')]
  0056  MOVE      R13 = R0
  0057  CALL      R12 = call(R12, 3 args, 1 rets)
  0058  JMP       (jump)   -> 75
  0059  SELF      R18 = R16[K13('GetItemModel')] (self)
  0060  CALL      R17 = call(R17, 1 args, 1 rets)
  0061  MOVE      R10 = R0
  0062  SELF      R18 = R6[K14('HasBoardItem')] (self)
  0063  MOVE      R19 = R0
  0064  CALL      R17 = call(R17, 1 args, 2 rets)
  0065  TEST      if not R17 then   -> -131005
  0066  JMP       (jump)   -> 72
  0067  SELF      R18 = R5[K9('GetItemView')] (self)
  0068  MOVE      R19 = R0
  0069  CALL      R17 = call(R17, 1 args, 2 rets)
  0070  SETTABLE  R11[R15] = R17
  0071  JMP       (jump)   -> 75
  0072  LEN       R17 = len R0
  0073  ADD       R17 = K8(1) add R17
  0074  SETTABLE  R8[R17] = R15
  0075  TFORCALL  tforcall R12
  0076  TFORLOOP  tforloop R14(sBx=-18)   -> 59
  0077  SELF      R13 = R0[K15('PlayBoardAnimation')] (self)
  0078  MOVE      R14 = R0
  0079  MOVE      R15 = R0
  0080  CALL      R12 = call(R12, 0 args, 3 rets)
  0081  GETTABUP  R12 = _ENV[K16('TutorialHelper')]
  0082  GETTABLE  R12 = R12[K17('GetHudButton')]
  0083  GETTABUP  R13 = _ENV[K18('ESceneViewHudButtonKey')]
  0084  GETTABLE  R13 = R13[K19('Inventory')]
  0085  CALL      R12 = call(R12, 1 args, 1 rets)
  0086  GETTABLE  R12 = R12[K20('transform')]
  0087  GETTABLE  R12 = R12[K21('position')]
  0088  SELF      R14 = R0[K22('PlayNonBoardAnimation')] (self)
  0089  MOVE      R15 = R0
  0090  MOVE      R16 = R0
  0091  CALL      R13 = call(R13, 0 args, 3 rets)
  0092  SELF      R14 = R0[K23('GetUIPosition')] (self)
  0093  SELF      R16 = R5[K24('GetOrderArea')] (self)
  0094  CALL      R15 = call(R15, 1 args, 1 rets)
  0095  SELF      R16 = R15[K25('GetBoardCacheRoot')] (self)
  0096  CALL      R15 = call(R15, 1 args, 1 rets)
  0097  GETTABLE  R15 = R15[K20('transform')]
  0098  GETTABLE  R15 = R15[K21('position')]
  0099  CALL      R13 = call(R13, 1 args, 2 rets)
  0100  SELF      R15 = R0[K22('PlayNonBoardAnimation')] (self)
  0101  MOVE      R16 = R0
  0102  MOVE      R17 = R0
  0103  CALL      R14 = call(R14, 0 args, 3 rets)
  0104  GETTABUP  R14 = _ENV[K26('EventDispatcher')]
  0105  GETTABLE  R14 = R14[K27('DispatchEvent')]
  0106  GETTABUP  R15 = _ENV[K28('EEventType')]
  0107  GETTABLE  R15 = R15[K29('ItemRetrieved')]
  0108  CALL      R14 = call(R14, 0 args, 1 rets)
  0109  GETTABUP  R14 = _ENV[K26('EventDispatcher')]
  0110  GETTABLE  R14 = R14[K27('DispatchEvent')]
  0111  GETTABUP  R15 = _ENV[K28('EEventType')]
  0112  GETTABLE  R15 = R15[K30('ChangeCachedItems')]
  0113  CALL      R14 = call(R14, 0 args, 1 rets)
  0114  RETURN    return R0..R-1
; ---------- proto2 [GetUIPosition] ----------
  ; fn ?  line 84-89 np=2 va=0 ms=5 code=13 consts=7 upvals=1 protos=0
  ;   K[0]='MainBoardView'
  ;   K[1]='GetInstance'
  ;   K[2]='ConvertWorldPositionToScreenPosition'
  ;   K[3]='PositionUtil'
  ;   K[4]='UICameraScreen2World'
  ;   K[5]='z'
  ;   K[6]=0
  ;   upvals: _ENV
  ;   locals: self(0-13), boardWorldPosition(0-13), screenPosition(6-13), uiWorldPosition(10-13)
  0000  GETTABUP  R2 = _ENV[K0('MainBoardView')]
  0001  SELF      R3 = R2[K1('GetInstance')] (self)
  0002  CALL      R2 = call(R2, 1 args, 1 rets)
  0003  SELF      R3 = R2[K2('ConvertWorldPositionToScreenPosition')] (self)
  0004  MOVE      R4 = R0
  0005  CALL      R2 = call(R2, 1 args, 2 rets)
  0006  GETTABUP  R3 = _ENV[K3('PositionUtil')]
  0007  GETTABLE  R3 = R3[K4('UICameraScreen2World')]
  0008  MOVE      R4 = R0
  0009  CALL      R3 = call(R3, 1 args, 1 rets)
  0010  SETTABLE  R3[K5('z')] = K6(0)
  0011  RETURN    return R3..R2
  0012  RETURN    return R0..R-1
; ---------- proto3 [PlayBoardAnimation] ----------
  ; fn ?  line 91-119 np=3 va=0 ms=26 code=73 consts=23 upvals=2 protos=1
  ;   K[0]='V3Zero'
  ;   K[1]=2
  ;   K[2]='pairs'
  ;   K[3]='GetUIPosition'
  ;   K[4]='transform'
  ;   K[5]='position'
  ;   K[6]='GetType'
  ;   K[7]='GM'
  ;   K[8]='ItemDataModel'
  ;   K[9]='GetSpriteName'
  ;   K[10]='PropertyAnimationManager'
  ;   K[11]='PlayFlyElementAnimation'
  ;   K[12]=0
  ;   K[13]='ipairs'
  ;   K[14]='MainBoardView'
  ;   K[15]='GetInstance'
  ;   K[16]='ConvertWorldPositionToScreenPosition'
  ;   K[17]='PositionUtil'
  ;   K[18]='UICameraScreen2World'
  ;   K[19]='z'
  ;   K[20]='GetModel'
  ;   K[21]='GM'
  ;   K[22]=1
  ;   upvals: _ENV, FLY_ANIMATION
  ;   locals: self(0-73), arrBoardItemViews(0-73), mapBoardInCookItems(0-73), targetPosition(1-73), targetScale(2-73), (for generator)(5-30), (for state)(5-30), (for control)(5-30), itemModel(6-28), cookItemView(6-28), uiWorldPosition(10-28), itemType(12-28), spriteName(17-28), (for generator)(33-72), (for state)(33-72), (for control)(33-72), _(34-70), itemView(34-70), screenPosition(41-69), uiWorldPosition(45-69), itemType(50-69), onStart(51-69), spriteName(56-69)
  0000  GETTABUP  R3 = _ENV[K0('V3Zero')]
  0001  LOADK     R4 = K1 2
  0002  GETTABUP  R5 = _ENV[K2('pairs')]
  0003  MOVE      R6 = R0
  0004  CALL      R5 = call(R5, 3 args, 1 rets)
  0005  JMP       (jump)   -> 28
  0006  SELF      R11 = R0[K3('GetUIPosition')] (self)
  0007  GETTABLE  R12 = R9[K4('transform')]
  0008  GETTABLE  R12 = R12[K5('position')]
  0009  CALL      R10 = call(R10, 1 args, 2 rets)
  0010  SELF      R12 = R8[K6('GetType')] (self)
  0011  CALL      R11 = call(R11, 1 args, 1 rets)
  0012  GETTABUP  R12 = _ENV[K7('GM')]
  0013  GETTABLE  R12 = R12[K8('ItemDataModel')]
  0014  SELF      R13 = R12[K9('GetSpriteName')] (self)
  0015  MOVE      R14 = R0
  0016  CALL      R12 = call(R12, 1 args, 2 rets)
  0017  GETTABUP  R13 = _ENV[K10('PropertyAnimationManager')]
  0018  GETTABLE  R13 = R13[K11('PlayFlyElementAnimation')]
  0019  MOVE      R14 = R0
  0020  GETUPVAL  R15 = _ENV
  0021  MOVE      R16 = R0
  0022  MOVE      R17 = R0
  0023  LOADK     R18 = K12 0
  0024  MOVE      R19 = R0
  0025  LOADBOOL  R20 = false
  0026  LOADBOOL  R21 = true
  0027  CALL      R13 = call(R13, 0 args, 8 rets)
  0028  TFORCALL  tforcall R5
  0029  TFORLOOP  tforloop R7(sBx=-24)   -> 6
  0030  GETTABUP  R5 = _ENV[K13('ipairs')]
  0031  MOVE      R6 = R0
  0032  CALL      R5 = call(R5, 3 args, 1 rets)
  0033  JMP       (jump)   -> 70
  0034  GETTABUP  R10 = _ENV[K14('MainBoardView')]
  0035  SELF      R11 = R10[K15('GetInstance')] (self)
  0036  CALL      R10 = call(R10, 1 args, 1 rets)
  0037  SELF      R11 = R10[K16('ConvertWorldPositionToScreenPosition')] (self)
  0038  GETTABLE  R12 = R9[K4('transform')]
  0039  GETTABLE  R12 = R12[K5('position')]
  0040  CALL      R10 = call(R10, 1 args, 2 rets)
  0041  GETTABUP  R11 = _ENV[K17('PositionUtil')]
  0042  GETTABLE  R11 = R11[K18('UICameraScreen2World')]
  0043  MOVE      R12 = R0
  0044  CALL      R11 = call(R11, 1 args, 1 rets)
  0045  SETTABLE  R11[K19('z')] = K12(0)
  0046  SELF      R13 = R9[K20('GetModel')] (self)
  0047  CALL      R12 = call(R12, 1 args, 1 rets)
  0048  SELF      R13 = R12[K6('GetType')] (self)
  0049  CALL      R12 = call(R12, 1 args, 1 rets)
  0050  CLOSURE   R13 = closure proto0
  0051  GETTABUP  R14 = _ENV[K21('GM')]
  0052  GETTABLE  R14 = R14[K8('ItemDataModel')]
  0053  SELF      R15 = R14[K9('GetSpriteName')] (self)
  0054  MOVE      R16 = R0
  0055  CALL      R14 = call(R14, 1 args, 2 rets)
  0056  GETTABUP  R15 = _ENV[K10('PropertyAnimationManager')]
  0057  GETTABLE  R15 = R15[K11('PlayFlyElementAnimation')]
  0058  MOVE      R16 = R0
  0059  GETUPVAL  R17 = _ENV
  0060  MOVE      R18 = R0
  0061  MOVE      R19 = R0
  0062  LOADK     R20 = K22 1
  0063  MOVE      R21 = R0
  0064  LOADBOOL  R22 = false
  0065  LOADBOOL  R23 = true
  0066  LOADNIL   R24..R24 = nil
  0067  MOVE      R25 = R0
  0068  CALL      R15 = call(R15, 0 args, 10 rets)
  0069  JMP       (jump)   -> 70
  0070  TFORCALL  tforcall R5
  0071  TFORLOOP  tforloop R7(sBx=-38)   -> 34
  0072  RETURN    return R0..R-1
  ; ---------- proto0 [] ----------
    ; fn ?  line 110-115 np=0 va=0 ms=7 code=16 consts=10 upvals=2 protos=0
    ;   K[0]='GM'
    ;   K[1]='MainBoardModel'
    ;   K[2]='event'
    ;   K[3]='Call'
    ;   K[4]='BoardEventType'
    ;   K[5]='BatchRemoveItems'
    ;   K[6]='Removed'
    ;   K[7]='GetModel'
    ;   K[8]='Dur'
    ;   K[9]=0
    ;   upvals: _ENV, itemView
    0000  GETTABUP  R0 = _ENV[K0('GM')]
    0001  GETTABLE  R0 = R0[K1('MainBoardModel')]
    0002  GETTABLE  R0 = R0[K2('event')]
    0003  SELF      R1 = R0[K3('Call')] (self)
    0004  GETTABUP  R2 = _ENV[K4('BoardEventType')]
    0005  GETTABLE  R2 = R2[K5('BatchRemoveItems')]
    0006  NEWTABLE  R3 = {} (0 items)
    0007  NEWTABLE  R4 = {} (0 items)
    0008  GETUPVAL  R5 = _ENV
    0009  SELF      R6 = R5[K7('GetModel')] (self)
    0010  CALL      R5 = call(R5, -1 args, 1 rets)
    0011  SETLIST   setlist R4[B=1,C=0]
    0012  SETTABLE  R3[K6('Removed')] = R4
    0013  SETTABLE  R3[K8('Dur')] = K9(0)
    0014  CALL      R0 = call(R0, 0 args, 3 rets)
    0015  RETURN    return R0..R-1
; ---------- proto4 [PlayNonBoardAnimation] ----------
  ; fn ?  line 121-130 np=3 va=0 ms=20 code=31 consts=13 upvals=2 protos=0
  ;   K[0]='math'
  ;   K[1]='min'
  ;   K[2]=5
  ;   K[3]='V3Zero'
  ;   K[4]=2
  ;   K[5]=1
  ;   K[6]='GM'
  ;   K[7]='ItemDataModel'
  ;   K[8]='GetSpriteName'
  ;   K[9]='GetType'
  ;   K[10]='PropertyAnimationManager'
  ;   K[11]='PlayFlyElementAnimation'
  ;   K[12]=0
  ;   upvals: _ENV, FLY_ANIMATION
  ;   locals: self(0-31), arrItems(0-31), fromPosition(0-31), flyCount(5-31), targetPosition(6-31), targetScale(7-31), (for index)(10-30), (for limit)(10-30), (for step)(10-30), i(11-29), spriteName(18-29)
  0000  GETTABUP  R3 = _ENV[K0('math')]
  0001  GETTABLE  R3 = R3[K1('min')]
  0002  LOADK     R4 = K2 5
  0003  LEN       R5 = len R0
  0004  CALL      R3 = call(R3, 1 args, 2 rets)
  0005  GETTABUP  R4 = _ENV[K3('V3Zero')]
  0006  LOADK     R5 = K4 2
  0007  LOADK     R6 = K5 1
  0008  MOVE      R7 = R0
  0009  LOADK     R8 = K5 1
  0010  FORPREP   forprep R6(sBx=18)   -> 29
  0011  GETTABUP  R10 = _ENV[K6('GM')]
  0012  GETTABLE  R10 = R10[K7('ItemDataModel')]
  0013  SELF      R11 = R10[K8('GetSpriteName')] (self)
  0014  GETTABLE  R12 = R1[R9]
  0015  SELF      R13 = R12[K9('GetType')] (self)
  0016  CALL      R12 = call(R12, -1 args, 1 rets)
  0017  CALL      R10 = call(R10, 1 args, -1 rets)
  0018  GETTABUP  R11 = _ENV[K10('PropertyAnimationManager')]
  0019  GETTABLE  R11 = R11[K11('PlayFlyElementAnimation')]
  0020  MOVE      R12 = R0
  0021  GETUPVAL  R13 = _ENV
  0022  MOVE      R14 = R0
  0023  MOVE      R15 = R0
  0024  LOADK     R16 = K12 0
  0025  MOVE      R17 = R0
  0026  LOADBOOL  R18 = false
  0027  LOADBOOL  R19 = true
  0028  CALL      R11 = call(R11, 0 args, 8 rets)
  0029  FORLOOP   forloop R6(sBx=-19)   -> 11
  0030  RETURN    return R0..R-1
