0:
  goto 79 if EntityDespawn[0] else 1
1:
  10000[20] <- EngineRom[(3.0 + EntityInfo[1])]
  10000[39] <- Remap(EntityData[12] - (6.0 / LevelOption[1]), EntityData[12], LevelData[14], 0, RuntimeUpdate[2])
  goto when 10000[20]
    6.0 -> 79
    default -> 2
2:
  10000[40] <- 0
  goto when 10000[20]
    1.0 -> 10
    2.0 -> 9
    3.0 -> 6
    4.0 -> 5
    5.0 -> 4
    7.0 -> 3
    default -> 11
3:
  10000[40] <- 15.0
  goto 11
4:
  10000[40] <- 16.0
  goto 11
5:
  10000[40] <- 14.0
  goto 11
6:
  goto 7 if (EntityData[2] > 0) else 8
7:
  10000[40] <- 10.0
  goto 11
8:
  10000[40] <- 12.0
  goto 11
9:
  10000[40] <- 8.0
  goto 11
10:
  10000[40] <- 7.0
  goto 11
11:
  10000[18] <- 0
  goto when (10000[20] - 2.0)
    0.0 -> 15
    1.0 -> 12
    default -> 16
12:
  goto 13 if (EntityData[2] > 0) else 14
13:
  10000[18] <- 11.0
  goto 16
14:
  10000[18] <- 13.0
  goto 16
15:
  10000[18] <- 9.0
  goto 16
16:
  10000[8] <- 10000[39] <= LevelData[15]
  goto 17 if 10000[8] else 18
17:
  10000[19] <- 0
  goto 25
18:
  goto 19 if (10000[39] <= (LevelData[15] + 0.5)) else 20
19:
  10000[19] <- Remap(LevelData[15], LevelData[15] + 0.5, 0, 1.0, 10000[39])
  goto 25
20:
  goto 21 if (10000[39] <= (LevelData[14] - 0.5)) else 22
21:
  10000[19] <- Remap(LevelData[15] + 0.5, LevelData[14] - 0.5, 1.0, 1.0, 10000[39])
  goto 25
22:
  goto 23 if (10000[39] <= LevelData[14]) else 24
23:
  10000[19] <- Remap(LevelData[14] - 0.5, LevelData[14], 1.0, 0, 10000[39])
  goto 25
24:
  10000[19] <- 0
  goto 25
25:
  10000[21] <- EaseOutQuad(10000[19])
  goto 26 if (10000[21] <= 0) else 27
26:
  goto when 10000[20]
    2.0 -> 59
    default -> 28
27:
  10000[22] <- EntityData[0] * LevelData[12]
  10000[23] <- 10000[39] + (LevelData[11] / 2.0)
  10000[24] <- 10000[22] + (LevelData[11] / 2.0)
  10000[25] <- 10000[39] - (LevelData[11] / 2.0)
  10000[26] <- 10000[22] - (LevelData[11] / 2.0)
  10000[0] <- LevelData[8] * 10000[26]
  10000[1] <- LevelData[9] * 10000[25]
  10000[41] <- 10000[0] + 10000[1] + LevelData[10]
  10000[2] <- LevelData[8] * 10000[24]
  10000[9] <- 10000[2] + 10000[1] + LevelData[10]
  10000[3] <- LevelData[9] * 10000[23]
  10000[10] <- 10000[0] + 10000[3] + LevelData[10]
  10000[11] <- 10000[2] + 10000[3] + LevelData[10]
  10000[0] <- LevelData[2] * 10000[26]
  10000[1] <- LevelData[3] * 10000[25]
  10000[2] <- LevelData[5] * 10000[26]
  10000[3] <- LevelData[6] * 10000[25]
  10000[4] <- LevelData[3] * 10000[23]
  10000[5] <- LevelData[6] * 10000[23]
  10000[6] <- LevelData[2] * 10000[24]
  10000[7] <- LevelData[5] * 10000[24]
  Draw(10000[40], (10000[0] + 10000[1] + LevelData[4]) / 10000[41], (10000[2] + 10000[3] + LevelData[7]) / 10000[41], (10000[0] + 10000[4] + LevelData[4]) / 10000[10], (10000[2] + 10000[5] + LevelData[7]) / 10000[10], (10000[6] + 10000[4] + LevelData[4]) / 10000[11], (10000[7] + 10000[5] + LevelData[7]) / 10000[11], (10000[6] + 10000[1] + LevelData[4]) / 10000[9], (10000[7] + 10000[3] + LevelData[7]) / 10000[9], 310000.0 + (EntityData[0] * 100.0) + 10000[39], 10000[21])
  goto when 10000[20]
    2.0 -> 59
    default -> 28
28:
  goto when 10000[20]
    3.0 -> 29
    default -> 79
29:
  10000[25] <- RuntimeUpdate[0] % 0.3
  10000[27] <- 10000[25] / 0.3
  goto 30 if 10000[8] else 31
30:
  10000[28] <- 0
  goto 38
31:
  goto 32 if (10000[39] <= (LevelData[15] + 0.5)) else 33
32:
  10000[28] <- Remap(LevelData[15], LevelData[15] + 0.5, 0, 1.0, 10000[39])
  goto 38
33:
  goto 34 if (10000[39] <= (LevelData[14] - 0.5)) else 35
34:
  10000[28] <- Remap(LevelData[15] + 0.5, LevelData[14] - 0.5, 1.0, 1.0, 10000[39])
  goto 38
35:
  goto 36 if (10000[39] <= LevelData[14]) else 37
36:
  10000[28] <- Remap(LevelData[14] - 0.5, LevelData[14], 1.0, 0, 10000[39])
  goto 38
37:
  10000[28] <- 0
  goto 38
38:
  10000[33] <- EaseOutQuad(10000[28])
  10000[34] <- Abs(EntityData[2])
  10000[35] <- 0
  10000[10] <- 10000[34] - 1.0
  goto 39
39:
  goto 40 if (10000[35] < 10000[34]) else 79
40:
  10000[36] <- 10000[35] + 1.0
  goto 41 if 10000[35] else 42
41:
  10000[37] <- 1.0
  goto 43
42:
  10000[37] <- 0
  goto 43
43:
  goto 44 if (10000[35] == 10000[10]) else 45
44:
  10000[38] <- 0
  goto 46 if (10000[25] <= 0) else 47
45:
  10000[38] <- 1.0
  goto 46 if (10000[25] <= 0) else 47
46:
  10000[38] <- 10000[37]
  goto 53
47:
  goto 48 if (10000[25] <= 0.1) else 49
48:
  10000[38] <- Remap(0, 0.1, 10000[37], 1.0, 10000[25])
  goto 53
49:
  goto 50 if (10000[25] <= 0.19999999999999998) else 51
50:
  10000[38] <- Remap(0.1, 0.19999999999999998, 1.0, 1.0, 10000[25])
  goto 53
51:
  goto 52 if (10000[25] <= 0.3) else 53
52:
  10000[38] <- Remap(0.19999999999999998, 0.3, 1.0, 10000[38], 10000[25])
  goto 53
53:
  10000[40] <- 10000[33] * EaseOutQuad(10000[38])
  goto 54 if (10000[40] <= 0) else 55
54:
  10000[35] <- 10000[36]
  goto 39
55:
  goto 56 if (EntityData[2] > 0) else 57
56:
  10000[41] <- 1.0
  goto 58
57:
  10000[41] <- -1.0
  goto 58
58:
  10000[42] <- (EntityData[0] + (10000[41] * (0.4 + 10000[35] + 10000[27]))) * LevelData[12]
  10000[43] <- 10000[39] + ((LevelData[11] * 1.5) / 2.0)
  10000[44] <- 10000[42] + ((LevelData[11] * 1.5) / 2.0)
  10000[45] <- 10000[39] - ((LevelData[11] * 1.5) / 2.0)
  10000[46] <- 10000[42] - ((LevelData[11] * 1.5) / 2.0)
  10000[11] <- (10000[41] * -3.141592653589793) / 2.0
  10000[12] <- (10000[46] + 10000[44] + 10000[46] + 10000[44]) / 4.0
  10000[13] <- (10000[45] + 10000[43] + 10000[43] + 10000[45]) / 4.0
  10000[14] <- 10000[46] - 10000[12]
  10000[15] <- 10000[45] - 10000[13]
  10000[0] <- Cos(10000[11])
  10000[1] <- 10000[14] * 10000[0]
  10000[2] <- Sin(10000[11])
  10000[3] <- 10000[15] * 10000[2]
  10000[16] <- (10000[1] - 10000[3]) + 10000[12]
  10000[4] <- 10000[14] * 10000[2]
  10000[5] <- 10000[15] * 10000[0]
  10000[17] <- 10000[4] + 10000[5] + 10000[13]
  10000[19] <- 10000[43] - 10000[13]
  10000[6] <- 10000[19] * 10000[2]
  10000[20] <- (10000[1] - 10000[6]) + 10000[12]
  10000[7] <- 10000[19] * 10000[0]
  10000[21] <- 10000[4] + 10000[7] + 10000[13]
  10000[22] <- 10000[44] - 10000[12]
  10000[8] <- 10000[22] * 10000[0]
  10000[23] <- (10000[8] - 10000[6]) + 10000[12]
  10000[9] <- 10000[22] * 10000[2]
  10000[24] <- 10000[9] + 10000[7] + 10000[13]
  10000[26] <- (10000[8] - 10000[3]) + 10000[12]
  10000[28] <- 10000[9] + 10000[5] + 10000[13]
  10000[29] <- (LevelData[8] * 10000[16]) + (LevelData[9] * 10000[17]) + LevelData[10]
  10000[30] <- (LevelData[8] * 10000[26]) + (LevelData[9] * 10000[28]) + LevelData[10]
  10000[31] <- (LevelData[8] * 10000[20]) + (LevelData[9] * 10000[21]) + LevelData[10]
  10000[32] <- (LevelData[8] * 10000[23]) + (LevelData[9] * 10000[24]) + LevelData[10]
  Draw(10000[18], ((LevelData[2] * 10000[16]) + (LevelData[3] * 10000[17]) + LevelData[4]) / 10000[29], ((LevelData[5] * 10000[16]) + (LevelData[6] * 10000[17]) + LevelData[7]) / 10000[29], ((LevelData[2] * 10000[20]) + (LevelData[3] * 10000[21]) + LevelData[4]) / 10000[31], ((LevelData[5] * 10000[20]) + (LevelData[6] * 10000[21]) + LevelData[7]) / 10000[31], ((LevelData[2] * 10000[23]) + (LevelData[3] * 10000[24]) + LevelData[4]) / 10000[32], ((LevelData[5] * 10000[23]) + (LevelData[6] * 10000[24]) + LevelData[7]) / 10000[32], ((LevelData[2] * 10000[26]) + (LevelData[3] * 10000[28]) + LevelData[4]) / 10000[30], ((LevelData[5] * 10000[26]) + (LevelData[6] * 10000[28]) + LevelData[7]) / 10000[30], 320000.0 + (EntityData[0] * 100.0) + 10000[39], 10000[40])
  10000[35] <- 10000[36]
  goto 39
59:
  10000[19] <- RuntimeUpdate[0] % 0.3
  goto 60 if 10000[8] else 61
60:
  10000[20] <- 0
  goto 68
61:
  goto 62 if (10000[39] <= (LevelData[15] + 0.5)) else 63
62:
  10000[20] <- Remap(LevelData[15], LevelData[15] + 0.5, 0, 1.0, 10000[39])
  goto 68
63:
  goto 64 if (10000[39] <= (LevelData[14] - 0.5)) else 65
64:
  10000[20] <- Remap(LevelData[15] + 0.5, LevelData[14] - 0.5, 1.0, 1.0, 10000[39])
  goto 68
65:
  goto 66 if (10000[39] <= LevelData[14]) else 67
66:
  10000[20] <- Remap(LevelData[14] - 0.5, LevelData[14], 1.0, 0, 10000[39])
  goto 68
67:
  10000[20] <- 0
  goto 68
68:
  goto 69 if (10000[19] <= 0) else 70
69:
  10000[21] <- 0
  goto 77
70:
  goto 71 if (10000[19] <= 0.1) else 72
71:
  10000[21] <- Remap(0, 0.1, 0, 1.0, 10000[19])
  goto 77
72:
  goto 73 if (10000[19] <= 0.19999999999999998) else 74
73:
  10000[21] <- Remap(0.1, 0.19999999999999998, 1.0, 1.0, 10000[19])
  goto 77
74:
  goto 75 if (10000[19] <= 0.3) else 76
75:
  10000[21] <- Remap(0.19999999999999998, 0.3, 1.0, 0, 10000[19])
  goto 77
76:
  10000[21] <- 0
  goto 77
77:
  10000[20] <- EaseOutQuad(10000[20]) * EaseOutQuad(10000[21])
  goto 79 if (10000[20] <= 0) else 78
78:
  10000[0] <- EntityData[0] * LevelData[12]
  10000[21] <- 10000[0] - (LevelData[11] / 2.0)
  10000[1] <- LevelData[9] * 10000[39]
  10000[40] <- (LevelData[8] * 10000[21]) + 10000[1] + LevelData[10]
  10000[2] <- LevelData[3] * 10000[39]
  10000[41] <- ((LevelData[2] * 10000[21]) + 10000[2] + LevelData[4]) / 10000[40]
  10000[3] <- LevelData[6] * 10000[39]
  10000[42] <- ((LevelData[5] * 10000[21]) + 10000[3] + LevelData[7]) / 10000[40]
  10000[43] <- 10000[0] + (LevelData[11] / 2.0)
  10000[44] <- (LevelData[8] * 10000[43]) + 10000[1] + LevelData[10]
  10000[45] <- ((LevelData[2] * 10000[43]) + 10000[2] + LevelData[4]) / 10000[44]
  10000[0] <- ((LevelData[5] * 10000[43]) + 10000[3] + LevelData[7]) / 10000[44]
  10000[1] <- 10000[45] - 10000[41]
  10000[2] <- 10000[0] - 10000[42]
  10000[3] <- (10000[1] * 6.123233995736766e-17) - 10000[2]
  10000[4] <- 10000[1] + (10000[2] * 6.123233995736766e-17)
  10000[5] <- Lerp(-0.1, 0.4, 10000[19] / 0.3)
  10000[6] <- 10000[3] * 10000[5]
  10000[7] <- 10000[4] * 10000[5]
  Draw(10000[18], 10000[41] + 10000[6], 10000[42] + 10000[7], 10000[41] + 10000[6] + 10000[3], 10000[42] + 10000[7] + 10000[4], 10000[45] + 10000[6] + 10000[3], 10000[0] + 10000[7] + 10000[4], 10000[45] + 10000[6], 10000[0] + 10000[7], 320000.0 + (EntityData[0] * 100.0) + 10000[39], 10000[20])
  goto exit
79:
  goto exit
