@octoglyphs/claude-code 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3521) hide show
  1. package/.claude-plugin/plugin.json +19 -0
  2. package/README.md +97 -0
  3. package/bin/claude-octoglyphs.mjs +31 -0
  4. package/hooks/hooks.json +69 -0
  5. package/package.json +52 -0
  6. package/public/assets/fonts/PressStart2P-Regular.ttf +0 -0
  7. package/public/assets/generated/bodies/acid/frame_00.png +0 -0
  8. package/public/assets/generated/bodies/acid/frame_01.png +0 -0
  9. package/public/assets/generated/bodies/acid/frame_02.png +0 -0
  10. package/public/assets/generated/bodies/acid/frame_03.png +0 -0
  11. package/public/assets/generated/bodies/acid/frame_04.png +0 -0
  12. package/public/assets/generated/bodies/acid/frame_05.png +0 -0
  13. package/public/assets/generated/bodies/acid/frame_06.png +0 -0
  14. package/public/assets/generated/bodies/acid/frame_07.png +0 -0
  15. package/public/assets/generated/bodies/acid/frame_08.png +0 -0
  16. package/public/assets/generated/bodies/acid/frame_09.png +0 -0
  17. package/public/assets/generated/bodies/acid/frame_10.png +0 -0
  18. package/public/assets/generated/bodies/acid/frame_11.png +0 -0
  19. package/public/assets/generated/bodies/acid/frame_12.png +0 -0
  20. package/public/assets/generated/bodies/acid/frame_13.png +0 -0
  21. package/public/assets/generated/bodies/acid/frame_14.png +0 -0
  22. package/public/assets/generated/bodies/acid/frame_15.png +0 -0
  23. package/public/assets/generated/bodies/aqua/frame_00.png +0 -0
  24. package/public/assets/generated/bodies/aqua/frame_01.png +0 -0
  25. package/public/assets/generated/bodies/aqua/frame_02.png +0 -0
  26. package/public/assets/generated/bodies/aqua/frame_03.png +0 -0
  27. package/public/assets/generated/bodies/aqua/frame_04.png +0 -0
  28. package/public/assets/generated/bodies/aqua/frame_05.png +0 -0
  29. package/public/assets/generated/bodies/aqua/frame_06.png +0 -0
  30. package/public/assets/generated/bodies/aqua/frame_07.png +0 -0
  31. package/public/assets/generated/bodies/aqua/frame_08.png +0 -0
  32. package/public/assets/generated/bodies/aqua/frame_09.png +0 -0
  33. package/public/assets/generated/bodies/aqua/frame_10.png +0 -0
  34. package/public/assets/generated/bodies/aqua/frame_11.png +0 -0
  35. package/public/assets/generated/bodies/aqua/frame_12.png +0 -0
  36. package/public/assets/generated/bodies/aqua/frame_13.png +0 -0
  37. package/public/assets/generated/bodies/aqua/frame_14.png +0 -0
  38. package/public/assets/generated/bodies/aqua/frame_15.png +0 -0
  39. package/public/assets/generated/bodies/blue/frame_00.png +0 -0
  40. package/public/assets/generated/bodies/blue/frame_01.png +0 -0
  41. package/public/assets/generated/bodies/blue/frame_02.png +0 -0
  42. package/public/assets/generated/bodies/blue/frame_03.png +0 -0
  43. package/public/assets/generated/bodies/blue/frame_04.png +0 -0
  44. package/public/assets/generated/bodies/blue/frame_05.png +0 -0
  45. package/public/assets/generated/bodies/blue/frame_06.png +0 -0
  46. package/public/assets/generated/bodies/blue/frame_07.png +0 -0
  47. package/public/assets/generated/bodies/blue/frame_08.png +0 -0
  48. package/public/assets/generated/bodies/blue/frame_09.png +0 -0
  49. package/public/assets/generated/bodies/blue/frame_10.png +0 -0
  50. package/public/assets/generated/bodies/blue/frame_11.png +0 -0
  51. package/public/assets/generated/bodies/blue/frame_12.png +0 -0
  52. package/public/assets/generated/bodies/blue/frame_13.png +0 -0
  53. package/public/assets/generated/bodies/blue/frame_14.png +0 -0
  54. package/public/assets/generated/bodies/blue/frame_15.png +0 -0
  55. package/public/assets/generated/bodies/bubblegum/frame_00.png +0 -0
  56. package/public/assets/generated/bodies/bubblegum/frame_01.png +0 -0
  57. package/public/assets/generated/bodies/bubblegum/frame_02.png +0 -0
  58. package/public/assets/generated/bodies/bubblegum/frame_03.png +0 -0
  59. package/public/assets/generated/bodies/bubblegum/frame_04.png +0 -0
  60. package/public/assets/generated/bodies/bubblegum/frame_05.png +0 -0
  61. package/public/assets/generated/bodies/bubblegum/frame_06.png +0 -0
  62. package/public/assets/generated/bodies/bubblegum/frame_07.png +0 -0
  63. package/public/assets/generated/bodies/bubblegum/frame_08.png +0 -0
  64. package/public/assets/generated/bodies/bubblegum/frame_09.png +0 -0
  65. package/public/assets/generated/bodies/bubblegum/frame_10.png +0 -0
  66. package/public/assets/generated/bodies/bubblegum/frame_11.png +0 -0
  67. package/public/assets/generated/bodies/bubblegum/frame_12.png +0 -0
  68. package/public/assets/generated/bodies/bubblegum/frame_13.png +0 -0
  69. package/public/assets/generated/bodies/bubblegum/frame_14.png +0 -0
  70. package/public/assets/generated/bodies/bubblegum/frame_15.png +0 -0
  71. package/public/assets/generated/bodies/camo/frame_00.png +0 -0
  72. package/public/assets/generated/bodies/camo/frame_01.png +0 -0
  73. package/public/assets/generated/bodies/camo/frame_02.png +0 -0
  74. package/public/assets/generated/bodies/camo/frame_03.png +0 -0
  75. package/public/assets/generated/bodies/camo/frame_04.png +0 -0
  76. package/public/assets/generated/bodies/camo/frame_05.png +0 -0
  77. package/public/assets/generated/bodies/camo/frame_06.png +0 -0
  78. package/public/assets/generated/bodies/camo/frame_07.png +0 -0
  79. package/public/assets/generated/bodies/camo/frame_08.png +0 -0
  80. package/public/assets/generated/bodies/camo/frame_09.png +0 -0
  81. package/public/assets/generated/bodies/camo/frame_10.png +0 -0
  82. package/public/assets/generated/bodies/camo/frame_11.png +0 -0
  83. package/public/assets/generated/bodies/camo/frame_12.png +0 -0
  84. package/public/assets/generated/bodies/camo/frame_13.png +0 -0
  85. package/public/assets/generated/bodies/camo/frame_14.png +0 -0
  86. package/public/assets/generated/bodies/camo/frame_15.png +0 -0
  87. package/public/assets/generated/bodies/cardbon/frame_00.png +0 -0
  88. package/public/assets/generated/bodies/cardbon/frame_01.png +0 -0
  89. package/public/assets/generated/bodies/cardbon/frame_02.png +0 -0
  90. package/public/assets/generated/bodies/cardbon/frame_03.png +0 -0
  91. package/public/assets/generated/bodies/cardbon/frame_04.png +0 -0
  92. package/public/assets/generated/bodies/cardbon/frame_05.png +0 -0
  93. package/public/assets/generated/bodies/cardbon/frame_06.png +0 -0
  94. package/public/assets/generated/bodies/cardbon/frame_07.png +0 -0
  95. package/public/assets/generated/bodies/cardbon/frame_08.png +0 -0
  96. package/public/assets/generated/bodies/cardbon/frame_09.png +0 -0
  97. package/public/assets/generated/bodies/cardbon/frame_10.png +0 -0
  98. package/public/assets/generated/bodies/cardbon/frame_11.png +0 -0
  99. package/public/assets/generated/bodies/cardbon/frame_12.png +0 -0
  100. package/public/assets/generated/bodies/cardbon/frame_13.png +0 -0
  101. package/public/assets/generated/bodies/cardbon/frame_14.png +0 -0
  102. package/public/assets/generated/bodies/cardbon/frame_15.png +0 -0
  103. package/public/assets/generated/bodies/charcoal/frame_00.png +0 -0
  104. package/public/assets/generated/bodies/charcoal/frame_01.png +0 -0
  105. package/public/assets/generated/bodies/charcoal/frame_02.png +0 -0
  106. package/public/assets/generated/bodies/charcoal/frame_03.png +0 -0
  107. package/public/assets/generated/bodies/charcoal/frame_04.png +0 -0
  108. package/public/assets/generated/bodies/charcoal/frame_05.png +0 -0
  109. package/public/assets/generated/bodies/charcoal/frame_06.png +0 -0
  110. package/public/assets/generated/bodies/charcoal/frame_07.png +0 -0
  111. package/public/assets/generated/bodies/charcoal/frame_08.png +0 -0
  112. package/public/assets/generated/bodies/charcoal/frame_09.png +0 -0
  113. package/public/assets/generated/bodies/charcoal/frame_10.png +0 -0
  114. package/public/assets/generated/bodies/charcoal/frame_11.png +0 -0
  115. package/public/assets/generated/bodies/charcoal/frame_12.png +0 -0
  116. package/public/assets/generated/bodies/charcoal/frame_13.png +0 -0
  117. package/public/assets/generated/bodies/charcoal/frame_14.png +0 -0
  118. package/public/assets/generated/bodies/charcoal/frame_15.png +0 -0
  119. package/public/assets/generated/bodies/cottoncandy/frame_00.png +0 -0
  120. package/public/assets/generated/bodies/cottoncandy/frame_01.png +0 -0
  121. package/public/assets/generated/bodies/cottoncandy/frame_02.png +0 -0
  122. package/public/assets/generated/bodies/cottoncandy/frame_03.png +0 -0
  123. package/public/assets/generated/bodies/cottoncandy/frame_04.png +0 -0
  124. package/public/assets/generated/bodies/cottoncandy/frame_05.png +0 -0
  125. package/public/assets/generated/bodies/cottoncandy/frame_06.png +0 -0
  126. package/public/assets/generated/bodies/cottoncandy/frame_07.png +0 -0
  127. package/public/assets/generated/bodies/cottoncandy/frame_08.png +0 -0
  128. package/public/assets/generated/bodies/cottoncandy/frame_09.png +0 -0
  129. package/public/assets/generated/bodies/cottoncandy/frame_10.png +0 -0
  130. package/public/assets/generated/bodies/cottoncandy/frame_11.png +0 -0
  131. package/public/assets/generated/bodies/cottoncandy/frame_12.png +0 -0
  132. package/public/assets/generated/bodies/cottoncandy/frame_13.png +0 -0
  133. package/public/assets/generated/bodies/cottoncandy/frame_14.png +0 -0
  134. package/public/assets/generated/bodies/cottoncandy/frame_15.png +0 -0
  135. package/public/assets/generated/bodies/creamsicle/frame_00.png +0 -0
  136. package/public/assets/generated/bodies/creamsicle/frame_01.png +0 -0
  137. package/public/assets/generated/bodies/creamsicle/frame_02.png +0 -0
  138. package/public/assets/generated/bodies/creamsicle/frame_03.png +0 -0
  139. package/public/assets/generated/bodies/creamsicle/frame_04.png +0 -0
  140. package/public/assets/generated/bodies/creamsicle/frame_05.png +0 -0
  141. package/public/assets/generated/bodies/creamsicle/frame_06.png +0 -0
  142. package/public/assets/generated/bodies/creamsicle/frame_07.png +0 -0
  143. package/public/assets/generated/bodies/creamsicle/frame_08.png +0 -0
  144. package/public/assets/generated/bodies/creamsicle/frame_09.png +0 -0
  145. package/public/assets/generated/bodies/creamsicle/frame_10.png +0 -0
  146. package/public/assets/generated/bodies/creamsicle/frame_11.png +0 -0
  147. package/public/assets/generated/bodies/creamsicle/frame_12.png +0 -0
  148. package/public/assets/generated/bodies/creamsicle/frame_13.png +0 -0
  149. package/public/assets/generated/bodies/creamsicle/frame_14.png +0 -0
  150. package/public/assets/generated/bodies/creamsicle/frame_15.png +0 -0
  151. package/public/assets/generated/bodies/deathbot/frame_00.png +0 -0
  152. package/public/assets/generated/bodies/deathbot/frame_01.png +0 -0
  153. package/public/assets/generated/bodies/deathbot/frame_02.png +0 -0
  154. package/public/assets/generated/bodies/deathbot/frame_03.png +0 -0
  155. package/public/assets/generated/bodies/deathbot/frame_04.png +0 -0
  156. package/public/assets/generated/bodies/deathbot/frame_05.png +0 -0
  157. package/public/assets/generated/bodies/deathbot/frame_06.png +0 -0
  158. package/public/assets/generated/bodies/deathbot/frame_07.png +0 -0
  159. package/public/assets/generated/bodies/deathbot/frame_08.png +0 -0
  160. package/public/assets/generated/bodies/deathbot/frame_09.png +0 -0
  161. package/public/assets/generated/bodies/deathbot/frame_10.png +0 -0
  162. package/public/assets/generated/bodies/deathbot/frame_11.png +0 -0
  163. package/public/assets/generated/bodies/deathbot/frame_12.png +0 -0
  164. package/public/assets/generated/bodies/deathbot/frame_13.png +0 -0
  165. package/public/assets/generated/bodies/deathbot/frame_14.png +0 -0
  166. package/public/assets/generated/bodies/deathbot/frame_15.png +0 -0
  167. package/public/assets/generated/bodies/dirt/frame_00.png +0 -0
  168. package/public/assets/generated/bodies/dirt/frame_01.png +0 -0
  169. package/public/assets/generated/bodies/dirt/frame_02.png +0 -0
  170. package/public/assets/generated/bodies/dirt/frame_03.png +0 -0
  171. package/public/assets/generated/bodies/dirt/frame_04.png +0 -0
  172. package/public/assets/generated/bodies/dirt/frame_05.png +0 -0
  173. package/public/assets/generated/bodies/dirt/frame_06.png +0 -0
  174. package/public/assets/generated/bodies/dirt/frame_07.png +0 -0
  175. package/public/assets/generated/bodies/dirt/frame_08.png +0 -0
  176. package/public/assets/generated/bodies/dirt/frame_09.png +0 -0
  177. package/public/assets/generated/bodies/dirt/frame_10.png +0 -0
  178. package/public/assets/generated/bodies/dirt/frame_11.png +0 -0
  179. package/public/assets/generated/bodies/dirt/frame_12.png +0 -0
  180. package/public/assets/generated/bodies/dirt/frame_13.png +0 -0
  181. package/public/assets/generated/bodies/dirt/frame_14.png +0 -0
  182. package/public/assets/generated/bodies/dirt/frame_15.png +0 -0
  183. package/public/assets/generated/bodies/fuchsia/frame_00.png +0 -0
  184. package/public/assets/generated/bodies/fuchsia/frame_01.png +0 -0
  185. package/public/assets/generated/bodies/fuchsia/frame_02.png +0 -0
  186. package/public/assets/generated/bodies/fuchsia/frame_03.png +0 -0
  187. package/public/assets/generated/bodies/fuchsia/frame_04.png +0 -0
  188. package/public/assets/generated/bodies/fuchsia/frame_05.png +0 -0
  189. package/public/assets/generated/bodies/fuchsia/frame_06.png +0 -0
  190. package/public/assets/generated/bodies/fuchsia/frame_07.png +0 -0
  191. package/public/assets/generated/bodies/fuchsia/frame_08.png +0 -0
  192. package/public/assets/generated/bodies/fuchsia/frame_09.png +0 -0
  193. package/public/assets/generated/bodies/fuchsia/frame_10.png +0 -0
  194. package/public/assets/generated/bodies/fuchsia/frame_11.png +0 -0
  195. package/public/assets/generated/bodies/fuchsia/frame_12.png +0 -0
  196. package/public/assets/generated/bodies/fuchsia/frame_13.png +0 -0
  197. package/public/assets/generated/bodies/fuchsia/frame_14.png +0 -0
  198. package/public/assets/generated/bodies/fuchsia/frame_15.png +0 -0
  199. package/public/assets/generated/bodies/gold/frame_00.png +0 -0
  200. package/public/assets/generated/bodies/gold/frame_01.png +0 -0
  201. package/public/assets/generated/bodies/gold/frame_02.png +0 -0
  202. package/public/assets/generated/bodies/gold/frame_03.png +0 -0
  203. package/public/assets/generated/bodies/gold/frame_04.png +0 -0
  204. package/public/assets/generated/bodies/gold/frame_05.png +0 -0
  205. package/public/assets/generated/bodies/gold/frame_06.png +0 -0
  206. package/public/assets/generated/bodies/gold/frame_07.png +0 -0
  207. package/public/assets/generated/bodies/gold/frame_08.png +0 -0
  208. package/public/assets/generated/bodies/gold/frame_09.png +0 -0
  209. package/public/assets/generated/bodies/gold/frame_10.png +0 -0
  210. package/public/assets/generated/bodies/gold/frame_11.png +0 -0
  211. package/public/assets/generated/bodies/gold/frame_12.png +0 -0
  212. package/public/assets/generated/bodies/gold/frame_13.png +0 -0
  213. package/public/assets/generated/bodies/gold/frame_14.png +0 -0
  214. package/public/assets/generated/bodies/gold/frame_15.png +0 -0
  215. package/public/assets/generated/bodies/grape/frame_00.png +0 -0
  216. package/public/assets/generated/bodies/grape/frame_01.png +0 -0
  217. package/public/assets/generated/bodies/grape/frame_02.png +0 -0
  218. package/public/assets/generated/bodies/grape/frame_03.png +0 -0
  219. package/public/assets/generated/bodies/grape/frame_04.png +0 -0
  220. package/public/assets/generated/bodies/grape/frame_05.png +0 -0
  221. package/public/assets/generated/bodies/grape/frame_06.png +0 -0
  222. package/public/assets/generated/bodies/grape/frame_07.png +0 -0
  223. package/public/assets/generated/bodies/grape/frame_08.png +0 -0
  224. package/public/assets/generated/bodies/grape/frame_09.png +0 -0
  225. package/public/assets/generated/bodies/grape/frame_10.png +0 -0
  226. package/public/assets/generated/bodies/grape/frame_11.png +0 -0
  227. package/public/assets/generated/bodies/grape/frame_12.png +0 -0
  228. package/public/assets/generated/bodies/grape/frame_13.png +0 -0
  229. package/public/assets/generated/bodies/grape/frame_14.png +0 -0
  230. package/public/assets/generated/bodies/grape/frame_15.png +0 -0
  231. package/public/assets/generated/bodies/gray/frame_00.png +0 -0
  232. package/public/assets/generated/bodies/gray/frame_01.png +0 -0
  233. package/public/assets/generated/bodies/gray/frame_02.png +0 -0
  234. package/public/assets/generated/bodies/gray/frame_03.png +0 -0
  235. package/public/assets/generated/bodies/gray/frame_04.png +0 -0
  236. package/public/assets/generated/bodies/gray/frame_05.png +0 -0
  237. package/public/assets/generated/bodies/gray/frame_06.png +0 -0
  238. package/public/assets/generated/bodies/gray/frame_07.png +0 -0
  239. package/public/assets/generated/bodies/gray/frame_08.png +0 -0
  240. package/public/assets/generated/bodies/gray/frame_09.png +0 -0
  241. package/public/assets/generated/bodies/gray/frame_10.png +0 -0
  242. package/public/assets/generated/bodies/gray/frame_11.png +0 -0
  243. package/public/assets/generated/bodies/gray/frame_12.png +0 -0
  244. package/public/assets/generated/bodies/gray/frame_13.png +0 -0
  245. package/public/assets/generated/bodies/gray/frame_14.png +0 -0
  246. package/public/assets/generated/bodies/gray/frame_15.png +0 -0
  247. package/public/assets/generated/bodies/lime/frame_00.png +0 -0
  248. package/public/assets/generated/bodies/lime/frame_01.png +0 -0
  249. package/public/assets/generated/bodies/lime/frame_02.png +0 -0
  250. package/public/assets/generated/bodies/lime/frame_03.png +0 -0
  251. package/public/assets/generated/bodies/lime/frame_04.png +0 -0
  252. package/public/assets/generated/bodies/lime/frame_05.png +0 -0
  253. package/public/assets/generated/bodies/lime/frame_06.png +0 -0
  254. package/public/assets/generated/bodies/lime/frame_07.png +0 -0
  255. package/public/assets/generated/bodies/lime/frame_08.png +0 -0
  256. package/public/assets/generated/bodies/lime/frame_09.png +0 -0
  257. package/public/assets/generated/bodies/lime/frame_10.png +0 -0
  258. package/public/assets/generated/bodies/lime/frame_11.png +0 -0
  259. package/public/assets/generated/bodies/lime/frame_12.png +0 -0
  260. package/public/assets/generated/bodies/lime/frame_13.png +0 -0
  261. package/public/assets/generated/bodies/lime/frame_14.png +0 -0
  262. package/public/assets/generated/bodies/lime/frame_15.png +0 -0
  263. package/public/assets/generated/bodies/magma/frame_00.png +0 -0
  264. package/public/assets/generated/bodies/magma/frame_01.png +0 -0
  265. package/public/assets/generated/bodies/magma/frame_02.png +0 -0
  266. package/public/assets/generated/bodies/magma/frame_03.png +0 -0
  267. package/public/assets/generated/bodies/magma/frame_04.png +0 -0
  268. package/public/assets/generated/bodies/magma/frame_05.png +0 -0
  269. package/public/assets/generated/bodies/magma/frame_06.png +0 -0
  270. package/public/assets/generated/bodies/magma/frame_07.png +0 -0
  271. package/public/assets/generated/bodies/magma/frame_08.png +0 -0
  272. package/public/assets/generated/bodies/magma/frame_09.png +0 -0
  273. package/public/assets/generated/bodies/magma/frame_10.png +0 -0
  274. package/public/assets/generated/bodies/magma/frame_11.png +0 -0
  275. package/public/assets/generated/bodies/magma/frame_12.png +0 -0
  276. package/public/assets/generated/bodies/magma/frame_13.png +0 -0
  277. package/public/assets/generated/bodies/magma/frame_14.png +0 -0
  278. package/public/assets/generated/bodies/magma/frame_15.png +0 -0
  279. package/public/assets/generated/bodies/metal/frame_00.png +0 -0
  280. package/public/assets/generated/bodies/metal/frame_01.png +0 -0
  281. package/public/assets/generated/bodies/metal/frame_02.png +0 -0
  282. package/public/assets/generated/bodies/metal/frame_03.png +0 -0
  283. package/public/assets/generated/bodies/metal/frame_04.png +0 -0
  284. package/public/assets/generated/bodies/metal/frame_05.png +0 -0
  285. package/public/assets/generated/bodies/metal/frame_06.png +0 -0
  286. package/public/assets/generated/bodies/metal/frame_07.png +0 -0
  287. package/public/assets/generated/bodies/metal/frame_08.png +0 -0
  288. package/public/assets/generated/bodies/metal/frame_09.png +0 -0
  289. package/public/assets/generated/bodies/metal/frame_10.png +0 -0
  290. package/public/assets/generated/bodies/metal/frame_11.png +0 -0
  291. package/public/assets/generated/bodies/metal/frame_12.png +0 -0
  292. package/public/assets/generated/bodies/metal/frame_13.png +0 -0
  293. package/public/assets/generated/bodies/metal/frame_14.png +0 -0
  294. package/public/assets/generated/bodies/metal/frame_15.png +0 -0
  295. package/public/assets/generated/bodies/midnight/frame_00.png +0 -0
  296. package/public/assets/generated/bodies/midnight/frame_01.png +0 -0
  297. package/public/assets/generated/bodies/midnight/frame_02.png +0 -0
  298. package/public/assets/generated/bodies/midnight/frame_03.png +0 -0
  299. package/public/assets/generated/bodies/midnight/frame_04.png +0 -0
  300. package/public/assets/generated/bodies/midnight/frame_05.png +0 -0
  301. package/public/assets/generated/bodies/midnight/frame_06.png +0 -0
  302. package/public/assets/generated/bodies/midnight/frame_07.png +0 -0
  303. package/public/assets/generated/bodies/midnight/frame_08.png +0 -0
  304. package/public/assets/generated/bodies/midnight/frame_09.png +0 -0
  305. package/public/assets/generated/bodies/midnight/frame_10.png +0 -0
  306. package/public/assets/generated/bodies/midnight/frame_11.png +0 -0
  307. package/public/assets/generated/bodies/midnight/frame_12.png +0 -0
  308. package/public/assets/generated/bodies/midnight/frame_13.png +0 -0
  309. package/public/assets/generated/bodies/midnight/frame_14.png +0 -0
  310. package/public/assets/generated/bodies/midnight/frame_15.png +0 -0
  311. package/public/assets/generated/bodies/octopi/frame_00.png +0 -0
  312. package/public/assets/generated/bodies/octopi/frame_01.png +0 -0
  313. package/public/assets/generated/bodies/octopi/frame_02.png +0 -0
  314. package/public/assets/generated/bodies/octopi/frame_03.png +0 -0
  315. package/public/assets/generated/bodies/octopi/frame_04.png +0 -0
  316. package/public/assets/generated/bodies/octopi/frame_05.png +0 -0
  317. package/public/assets/generated/bodies/octopi/frame_06.png +0 -0
  318. package/public/assets/generated/bodies/octopi/frame_07.png +0 -0
  319. package/public/assets/generated/bodies/octopi/frame_08.png +0 -0
  320. package/public/assets/generated/bodies/octopi/frame_09.png +0 -0
  321. package/public/assets/generated/bodies/octopi/frame_10.png +0 -0
  322. package/public/assets/generated/bodies/octopi/frame_11.png +0 -0
  323. package/public/assets/generated/bodies/octopi/frame_12.png +0 -0
  324. package/public/assets/generated/bodies/octopi/frame_13.png +0 -0
  325. package/public/assets/generated/bodies/octopi/frame_14.png +0 -0
  326. package/public/assets/generated/bodies/octopi/frame_15.png +0 -0
  327. package/public/assets/generated/bodies/orange/frame_00.png +0 -0
  328. package/public/assets/generated/bodies/orange/frame_01.png +0 -0
  329. package/public/assets/generated/bodies/orange/frame_02.png +0 -0
  330. package/public/assets/generated/bodies/orange/frame_03.png +0 -0
  331. package/public/assets/generated/bodies/orange/frame_04.png +0 -0
  332. package/public/assets/generated/bodies/orange/frame_05.png +0 -0
  333. package/public/assets/generated/bodies/orange/frame_06.png +0 -0
  334. package/public/assets/generated/bodies/orange/frame_07.png +0 -0
  335. package/public/assets/generated/bodies/orange/frame_08.png +0 -0
  336. package/public/assets/generated/bodies/orange/frame_09.png +0 -0
  337. package/public/assets/generated/bodies/orange/frame_10.png +0 -0
  338. package/public/assets/generated/bodies/orange/frame_11.png +0 -0
  339. package/public/assets/generated/bodies/orange/frame_12.png +0 -0
  340. package/public/assets/generated/bodies/orange/frame_13.png +0 -0
  341. package/public/assets/generated/bodies/orange/frame_14.png +0 -0
  342. package/public/assets/generated/bodies/orange/frame_15.png +0 -0
  343. package/public/assets/generated/bodies/pepe/frame_00.png +0 -0
  344. package/public/assets/generated/bodies/pepe/frame_01.png +0 -0
  345. package/public/assets/generated/bodies/pepe/frame_02.png +0 -0
  346. package/public/assets/generated/bodies/pepe/frame_03.png +0 -0
  347. package/public/assets/generated/bodies/pepe/frame_04.png +0 -0
  348. package/public/assets/generated/bodies/pepe/frame_05.png +0 -0
  349. package/public/assets/generated/bodies/pepe/frame_06.png +0 -0
  350. package/public/assets/generated/bodies/pepe/frame_07.png +0 -0
  351. package/public/assets/generated/bodies/pepe/frame_08.png +0 -0
  352. package/public/assets/generated/bodies/pepe/frame_09.png +0 -0
  353. package/public/assets/generated/bodies/pepe/frame_10.png +0 -0
  354. package/public/assets/generated/bodies/pepe/frame_11.png +0 -0
  355. package/public/assets/generated/bodies/pepe/frame_12.png +0 -0
  356. package/public/assets/generated/bodies/pepe/frame_13.png +0 -0
  357. package/public/assets/generated/bodies/pepe/frame_14.png +0 -0
  358. package/public/assets/generated/bodies/pepe/frame_15.png +0 -0
  359. package/public/assets/generated/bodies/rainbow/frame_00.png +0 -0
  360. package/public/assets/generated/bodies/rainbow/frame_01.png +0 -0
  361. package/public/assets/generated/bodies/rainbow/frame_02.png +0 -0
  362. package/public/assets/generated/bodies/rainbow/frame_03.png +0 -0
  363. package/public/assets/generated/bodies/rainbow/frame_04.png +0 -0
  364. package/public/assets/generated/bodies/rainbow/frame_05.png +0 -0
  365. package/public/assets/generated/bodies/rainbow/frame_06.png +0 -0
  366. package/public/assets/generated/bodies/rainbow/frame_07.png +0 -0
  367. package/public/assets/generated/bodies/rainbow/frame_08.png +0 -0
  368. package/public/assets/generated/bodies/rainbow/frame_09.png +0 -0
  369. package/public/assets/generated/bodies/rainbow/frame_10.png +0 -0
  370. package/public/assets/generated/bodies/rainbow/frame_11.png +0 -0
  371. package/public/assets/generated/bodies/rainbow/frame_12.png +0 -0
  372. package/public/assets/generated/bodies/rainbow/frame_13.png +0 -0
  373. package/public/assets/generated/bodies/rainbow/frame_14.png +0 -0
  374. package/public/assets/generated/bodies/rainbow/frame_15.png +0 -0
  375. package/public/assets/generated/bodies/red/frame_00.png +0 -0
  376. package/public/assets/generated/bodies/red/frame_01.png +0 -0
  377. package/public/assets/generated/bodies/red/frame_02.png +0 -0
  378. package/public/assets/generated/bodies/red/frame_03.png +0 -0
  379. package/public/assets/generated/bodies/red/frame_04.png +0 -0
  380. package/public/assets/generated/bodies/red/frame_05.png +0 -0
  381. package/public/assets/generated/bodies/red/frame_06.png +0 -0
  382. package/public/assets/generated/bodies/red/frame_07.png +0 -0
  383. package/public/assets/generated/bodies/red/frame_08.png +0 -0
  384. package/public/assets/generated/bodies/red/frame_09.png +0 -0
  385. package/public/assets/generated/bodies/red/frame_10.png +0 -0
  386. package/public/assets/generated/bodies/red/frame_11.png +0 -0
  387. package/public/assets/generated/bodies/red/frame_12.png +0 -0
  388. package/public/assets/generated/bodies/red/frame_13.png +0 -0
  389. package/public/assets/generated/bodies/red/frame_14.png +0 -0
  390. package/public/assets/generated/bodies/red/frame_15.png +0 -0
  391. package/public/assets/generated/bodies/sushi/frame_00.png +0 -0
  392. package/public/assets/generated/bodies/sushi/frame_01.png +0 -0
  393. package/public/assets/generated/bodies/sushi/frame_02.png +0 -0
  394. package/public/assets/generated/bodies/sushi/frame_03.png +0 -0
  395. package/public/assets/generated/bodies/sushi/frame_04.png +0 -0
  396. package/public/assets/generated/bodies/sushi/frame_05.png +0 -0
  397. package/public/assets/generated/bodies/sushi/frame_06.png +0 -0
  398. package/public/assets/generated/bodies/sushi/frame_07.png +0 -0
  399. package/public/assets/generated/bodies/sushi/frame_08.png +0 -0
  400. package/public/assets/generated/bodies/sushi/frame_09.png +0 -0
  401. package/public/assets/generated/bodies/sushi/frame_10.png +0 -0
  402. package/public/assets/generated/bodies/sushi/frame_11.png +0 -0
  403. package/public/assets/generated/bodies/sushi/frame_12.png +0 -0
  404. package/public/assets/generated/bodies/sushi/frame_13.png +0 -0
  405. package/public/assets/generated/bodies/sushi/frame_14.png +0 -0
  406. package/public/assets/generated/bodies/sushi/frame_15.png +0 -0
  407. package/public/assets/generated/bodies/tan/frame_00.png +0 -0
  408. package/public/assets/generated/bodies/tan/frame_01.png +0 -0
  409. package/public/assets/generated/bodies/tan/frame_02.png +0 -0
  410. package/public/assets/generated/bodies/tan/frame_03.png +0 -0
  411. package/public/assets/generated/bodies/tan/frame_04.png +0 -0
  412. package/public/assets/generated/bodies/tan/frame_05.png +0 -0
  413. package/public/assets/generated/bodies/tan/frame_06.png +0 -0
  414. package/public/assets/generated/bodies/tan/frame_07.png +0 -0
  415. package/public/assets/generated/bodies/tan/frame_08.png +0 -0
  416. package/public/assets/generated/bodies/tan/frame_09.png +0 -0
  417. package/public/assets/generated/bodies/tan/frame_10.png +0 -0
  418. package/public/assets/generated/bodies/tan/frame_11.png +0 -0
  419. package/public/assets/generated/bodies/tan/frame_12.png +0 -0
  420. package/public/assets/generated/bodies/tan/frame_13.png +0 -0
  421. package/public/assets/generated/bodies/tan/frame_14.png +0 -0
  422. package/public/assets/generated/bodies/tan/frame_15.png +0 -0
  423. package/public/assets/generated/bodies/teal/frame_00.png +0 -0
  424. package/public/assets/generated/bodies/teal/frame_01.png +0 -0
  425. package/public/assets/generated/bodies/teal/frame_02.png +0 -0
  426. package/public/assets/generated/bodies/teal/frame_03.png +0 -0
  427. package/public/assets/generated/bodies/teal/frame_04.png +0 -0
  428. package/public/assets/generated/bodies/teal/frame_05.png +0 -0
  429. package/public/assets/generated/bodies/teal/frame_06.png +0 -0
  430. package/public/assets/generated/bodies/teal/frame_07.png +0 -0
  431. package/public/assets/generated/bodies/teal/frame_08.png +0 -0
  432. package/public/assets/generated/bodies/teal/frame_09.png +0 -0
  433. package/public/assets/generated/bodies/teal/frame_10.png +0 -0
  434. package/public/assets/generated/bodies/teal/frame_11.png +0 -0
  435. package/public/assets/generated/bodies/teal/frame_12.png +0 -0
  436. package/public/assets/generated/bodies/teal/frame_13.png +0 -0
  437. package/public/assets/generated/bodies/teal/frame_14.png +0 -0
  438. package/public/assets/generated/bodies/teal/frame_15.png +0 -0
  439. package/public/assets/generated/bodies/white/frame_00.png +0 -0
  440. package/public/assets/generated/bodies/white/frame_01.png +0 -0
  441. package/public/assets/generated/bodies/white/frame_02.png +0 -0
  442. package/public/assets/generated/bodies/white/frame_03.png +0 -0
  443. package/public/assets/generated/bodies/white/frame_04.png +0 -0
  444. package/public/assets/generated/bodies/white/frame_05.png +0 -0
  445. package/public/assets/generated/bodies/white/frame_06.png +0 -0
  446. package/public/assets/generated/bodies/white/frame_07.png +0 -0
  447. package/public/assets/generated/bodies/white/frame_08.png +0 -0
  448. package/public/assets/generated/bodies/white/frame_09.png +0 -0
  449. package/public/assets/generated/bodies/white/frame_10.png +0 -0
  450. package/public/assets/generated/bodies/white/frame_11.png +0 -0
  451. package/public/assets/generated/bodies/white/frame_12.png +0 -0
  452. package/public/assets/generated/bodies/white/frame_13.png +0 -0
  453. package/public/assets/generated/bodies/white/frame_14.png +0 -0
  454. package/public/assets/generated/bodies/white/frame_15.png +0 -0
  455. package/public/assets/generated/bodies/yellow/frame_00.png +0 -0
  456. package/public/assets/generated/bodies/yellow/frame_01.png +0 -0
  457. package/public/assets/generated/bodies/yellow/frame_02.png +0 -0
  458. package/public/assets/generated/bodies/yellow/frame_03.png +0 -0
  459. package/public/assets/generated/bodies/yellow/frame_04.png +0 -0
  460. package/public/assets/generated/bodies/yellow/frame_05.png +0 -0
  461. package/public/assets/generated/bodies/yellow/frame_06.png +0 -0
  462. package/public/assets/generated/bodies/yellow/frame_07.png +0 -0
  463. package/public/assets/generated/bodies/yellow/frame_08.png +0 -0
  464. package/public/assets/generated/bodies/yellow/frame_09.png +0 -0
  465. package/public/assets/generated/bodies/yellow/frame_10.png +0 -0
  466. package/public/assets/generated/bodies/yellow/frame_11.png +0 -0
  467. package/public/assets/generated/bodies/yellow/frame_12.png +0 -0
  468. package/public/assets/generated/bodies/yellow/frame_13.png +0 -0
  469. package/public/assets/generated/bodies/yellow/frame_14.png +0 -0
  470. package/public/assets/generated/bodies/yellow/frame_15.png +0 -0
  471. package/public/assets/generated/bodies/zombie/frame_00.png +0 -0
  472. package/public/assets/generated/bodies/zombie/frame_01.png +0 -0
  473. package/public/assets/generated/bodies/zombie/frame_02.png +0 -0
  474. package/public/assets/generated/bodies/zombie/frame_03.png +0 -0
  475. package/public/assets/generated/bodies/zombie/frame_04.png +0 -0
  476. package/public/assets/generated/bodies/zombie/frame_05.png +0 -0
  477. package/public/assets/generated/bodies/zombie/frame_06.png +0 -0
  478. package/public/assets/generated/bodies/zombie/frame_07.png +0 -0
  479. package/public/assets/generated/bodies/zombie/frame_08.png +0 -0
  480. package/public/assets/generated/bodies/zombie/frame_09.png +0 -0
  481. package/public/assets/generated/bodies/zombie/frame_10.png +0 -0
  482. package/public/assets/generated/bodies/zombie/frame_11.png +0 -0
  483. package/public/assets/generated/bodies/zombie/frame_12.png +0 -0
  484. package/public/assets/generated/bodies/zombie/frame_13.png +0 -0
  485. package/public/assets/generated/bodies/zombie/frame_14.png +0 -0
  486. package/public/assets/generated/bodies/zombie/frame_15.png +0 -0
  487. package/public/assets/generated/body-spins/acid/frame_00.png +0 -0
  488. package/public/assets/generated/body-spins/acid/frame_01.png +0 -0
  489. package/public/assets/generated/body-spins/acid/frame_02.png +0 -0
  490. package/public/assets/generated/body-spins/aqua/frame_00.png +0 -0
  491. package/public/assets/generated/body-spins/aqua/frame_01.png +0 -0
  492. package/public/assets/generated/body-spins/aqua/frame_02.png +0 -0
  493. package/public/assets/generated/body-spins/blue/frame_00.png +0 -0
  494. package/public/assets/generated/body-spins/blue/frame_01.png +0 -0
  495. package/public/assets/generated/body-spins/blue/frame_02.png +0 -0
  496. package/public/assets/generated/body-spins/bubblegum/frame_00.png +0 -0
  497. package/public/assets/generated/body-spins/bubblegum/frame_01.png +0 -0
  498. package/public/assets/generated/body-spins/bubblegum/frame_02.png +0 -0
  499. package/public/assets/generated/body-spins/camo/frame_00.png +0 -0
  500. package/public/assets/generated/body-spins/camo/frame_01.png +0 -0
  501. package/public/assets/generated/body-spins/camo/frame_02.png +0 -0
  502. package/public/assets/generated/body-spins/cardbon/frame_00.png +0 -0
  503. package/public/assets/generated/body-spins/cardbon/frame_01.png +0 -0
  504. package/public/assets/generated/body-spins/cardbon/frame_02.png +0 -0
  505. package/public/assets/generated/body-spins/charcoal/frame_00.png +0 -0
  506. package/public/assets/generated/body-spins/charcoal/frame_01.png +0 -0
  507. package/public/assets/generated/body-spins/charcoal/frame_02.png +0 -0
  508. package/public/assets/generated/body-spins/cottoncandy/frame_00.png +0 -0
  509. package/public/assets/generated/body-spins/cottoncandy/frame_01.png +0 -0
  510. package/public/assets/generated/body-spins/cottoncandy/frame_02.png +0 -0
  511. package/public/assets/generated/body-spins/creamsicle/frame_00.png +0 -0
  512. package/public/assets/generated/body-spins/creamsicle/frame_01.png +0 -0
  513. package/public/assets/generated/body-spins/creamsicle/frame_02.png +0 -0
  514. package/public/assets/generated/body-spins/deathbot/frame_00.png +0 -0
  515. package/public/assets/generated/body-spins/deathbot/frame_01.png +0 -0
  516. package/public/assets/generated/body-spins/deathbot/frame_02.png +0 -0
  517. package/public/assets/generated/body-spins/dirt/frame_00.png +0 -0
  518. package/public/assets/generated/body-spins/dirt/frame_01.png +0 -0
  519. package/public/assets/generated/body-spins/dirt/frame_02.png +0 -0
  520. package/public/assets/generated/body-spins/fuchsia/frame_00.png +0 -0
  521. package/public/assets/generated/body-spins/fuchsia/frame_01.png +0 -0
  522. package/public/assets/generated/body-spins/fuchsia/frame_02.png +0 -0
  523. package/public/assets/generated/body-spins/generic/frame_00.png +0 -0
  524. package/public/assets/generated/body-spins/generic/frame_01.png +0 -0
  525. package/public/assets/generated/body-spins/generic/frame_02.png +0 -0
  526. package/public/assets/generated/body-spins/gold/frame_00.png +0 -0
  527. package/public/assets/generated/body-spins/gold/frame_01.png +0 -0
  528. package/public/assets/generated/body-spins/gold/frame_02.png +0 -0
  529. package/public/assets/generated/body-spins/grape/frame_00.png +0 -0
  530. package/public/assets/generated/body-spins/grape/frame_01.png +0 -0
  531. package/public/assets/generated/body-spins/grape/frame_02.png +0 -0
  532. package/public/assets/generated/body-spins/gray/frame_00.png +0 -0
  533. package/public/assets/generated/body-spins/gray/frame_01.png +0 -0
  534. package/public/assets/generated/body-spins/gray/frame_02.png +0 -0
  535. package/public/assets/generated/body-spins/lime/frame_00.png +0 -0
  536. package/public/assets/generated/body-spins/lime/frame_01.png +0 -0
  537. package/public/assets/generated/body-spins/lime/frame_02.png +0 -0
  538. package/public/assets/generated/body-spins/magma/frame_00.png +0 -0
  539. package/public/assets/generated/body-spins/magma/frame_01.png +0 -0
  540. package/public/assets/generated/body-spins/magma/frame_02.png +0 -0
  541. package/public/assets/generated/body-spins/metal/frame_00.png +0 -0
  542. package/public/assets/generated/body-spins/metal/frame_01.png +0 -0
  543. package/public/assets/generated/body-spins/metal/frame_02.png +0 -0
  544. package/public/assets/generated/body-spins/midnight/frame_00.png +0 -0
  545. package/public/assets/generated/body-spins/midnight/frame_01.png +0 -0
  546. package/public/assets/generated/body-spins/midnight/frame_02.png +0 -0
  547. package/public/assets/generated/body-spins/octopi/frame_00.png +0 -0
  548. package/public/assets/generated/body-spins/octopi/frame_01.png +0 -0
  549. package/public/assets/generated/body-spins/octopi/frame_02.png +0 -0
  550. package/public/assets/generated/body-spins/orange/frame_00.png +0 -0
  551. package/public/assets/generated/body-spins/orange/frame_01.png +0 -0
  552. package/public/assets/generated/body-spins/orange/frame_02.png +0 -0
  553. package/public/assets/generated/body-spins/pepe/frame_00.png +0 -0
  554. package/public/assets/generated/body-spins/pepe/frame_01.png +0 -0
  555. package/public/assets/generated/body-spins/pepe/frame_02.png +0 -0
  556. package/public/assets/generated/body-spins/rainbow/frame_00.png +0 -0
  557. package/public/assets/generated/body-spins/rainbow/frame_01.png +0 -0
  558. package/public/assets/generated/body-spins/rainbow/frame_02.png +0 -0
  559. package/public/assets/generated/body-spins/red/frame_00.png +0 -0
  560. package/public/assets/generated/body-spins/red/frame_01.png +0 -0
  561. package/public/assets/generated/body-spins/red/frame_02.png +0 -0
  562. package/public/assets/generated/body-spins/sushi/frame_00.png +0 -0
  563. package/public/assets/generated/body-spins/sushi/frame_01.png +0 -0
  564. package/public/assets/generated/body-spins/sushi/frame_02.png +0 -0
  565. package/public/assets/generated/body-spins/tan/frame_00.png +0 -0
  566. package/public/assets/generated/body-spins/tan/frame_01.png +0 -0
  567. package/public/assets/generated/body-spins/tan/frame_02.png +0 -0
  568. package/public/assets/generated/body-spins/teal/frame_00.png +0 -0
  569. package/public/assets/generated/body-spins/teal/frame_01.png +0 -0
  570. package/public/assets/generated/body-spins/teal/frame_02.png +0 -0
  571. package/public/assets/generated/body-spins/white/frame_00.png +0 -0
  572. package/public/assets/generated/body-spins/white/frame_01.png +0 -0
  573. package/public/assets/generated/body-spins/white/frame_02.png +0 -0
  574. package/public/assets/generated/body-spins/yellow/frame_00.png +0 -0
  575. package/public/assets/generated/body-spins/yellow/frame_01.png +0 -0
  576. package/public/assets/generated/body-spins/yellow/frame_02.png +0 -0
  577. package/public/assets/generated/body-spins/zombie/frame_00.png +0 -0
  578. package/public/assets/generated/body-spins/zombie/frame_01.png +0 -0
  579. package/public/assets/generated/body-spins/zombie/frame_02.png +0 -0
  580. package/public/assets/generated/clothes/astro/frame_00.png +0 -0
  581. package/public/assets/generated/clothes/astro/frame_01.png +0 -0
  582. package/public/assets/generated/clothes/astro/frame_02.png +0 -0
  583. package/public/assets/generated/clothes/astro/frame_03.png +0 -0
  584. package/public/assets/generated/clothes/astro/frame_04.png +0 -0
  585. package/public/assets/generated/clothes/astro/frame_05.png +0 -0
  586. package/public/assets/generated/clothes/astro/frame_06.png +0 -0
  587. package/public/assets/generated/clothes/astro/frame_07.png +0 -0
  588. package/public/assets/generated/clothes/astro/frame_08.png +0 -0
  589. package/public/assets/generated/clothes/astro/frame_09.png +0 -0
  590. package/public/assets/generated/clothes/astro/frame_10.png +0 -0
  591. package/public/assets/generated/clothes/astro/frame_11.png +0 -0
  592. package/public/assets/generated/clothes/astro/frame_12.png +0 -0
  593. package/public/assets/generated/clothes/astro/frame_13.png +0 -0
  594. package/public/assets/generated/clothes/astro/frame_14.png +0 -0
  595. package/public/assets/generated/clothes/astro/frame_15.png +0 -0
  596. package/public/assets/generated/clothes/astro-suit/frame_00.png +0 -0
  597. package/public/assets/generated/clothes/astro-suit/frame_01.png +0 -0
  598. package/public/assets/generated/clothes/astro-suit/frame_02.png +0 -0
  599. package/public/assets/generated/clothes/astro-suit/frame_03.png +0 -0
  600. package/public/assets/generated/clothes/astro-suit/frame_04.png +0 -0
  601. package/public/assets/generated/clothes/astro-suit/frame_05.png +0 -0
  602. package/public/assets/generated/clothes/astro-suit/frame_06.png +0 -0
  603. package/public/assets/generated/clothes/astro-suit/frame_07.png +0 -0
  604. package/public/assets/generated/clothes/astro-suit/frame_08.png +0 -0
  605. package/public/assets/generated/clothes/astro-suit/frame_09.png +0 -0
  606. package/public/assets/generated/clothes/astro-suit/frame_10.png +0 -0
  607. package/public/assets/generated/clothes/astro-suit/frame_11.png +0 -0
  608. package/public/assets/generated/clothes/astro-suit/frame_12.png +0 -0
  609. package/public/assets/generated/clothes/astro-suit/frame_13.png +0 -0
  610. package/public/assets/generated/clothes/astro-suit/frame_14.png +0 -0
  611. package/public/assets/generated/clothes/astro-suit/frame_15.png +0 -0
  612. package/public/assets/generated/clothes/black-kimono/frame_00.png +0 -0
  613. package/public/assets/generated/clothes/black-kimono/frame_01.png +0 -0
  614. package/public/assets/generated/clothes/black-kimono/frame_02.png +0 -0
  615. package/public/assets/generated/clothes/black-kimono/frame_03.png +0 -0
  616. package/public/assets/generated/clothes/black-kimono/frame_04.png +0 -0
  617. package/public/assets/generated/clothes/black-kimono/frame_05.png +0 -0
  618. package/public/assets/generated/clothes/black-kimono/frame_06.png +0 -0
  619. package/public/assets/generated/clothes/black-kimono/frame_07.png +0 -0
  620. package/public/assets/generated/clothes/black-kimono/frame_08.png +0 -0
  621. package/public/assets/generated/clothes/black-kimono/frame_09.png +0 -0
  622. package/public/assets/generated/clothes/black-kimono/frame_10.png +0 -0
  623. package/public/assets/generated/clothes/black-kimono/frame_11.png +0 -0
  624. package/public/assets/generated/clothes/black-kimono/frame_12.png +0 -0
  625. package/public/assets/generated/clothes/black-kimono/frame_13.png +0 -0
  626. package/public/assets/generated/clothes/black-kimono/frame_14.png +0 -0
  627. package/public/assets/generated/clothes/black-kimono/frame_15.png +0 -0
  628. package/public/assets/generated/clothes/chef-jacket/frame_00.png +0 -0
  629. package/public/assets/generated/clothes/chef-jacket/frame_01.png +0 -0
  630. package/public/assets/generated/clothes/chef-jacket/frame_02.png +0 -0
  631. package/public/assets/generated/clothes/chef-jacket/frame_03.png +0 -0
  632. package/public/assets/generated/clothes/chef-jacket/frame_04.png +0 -0
  633. package/public/assets/generated/clothes/chef-jacket/frame_05.png +0 -0
  634. package/public/assets/generated/clothes/chef-jacket/frame_06.png +0 -0
  635. package/public/assets/generated/clothes/chef-jacket/frame_07.png +0 -0
  636. package/public/assets/generated/clothes/chef-jacket/frame_08.png +0 -0
  637. package/public/assets/generated/clothes/chef-jacket/frame_09.png +0 -0
  638. package/public/assets/generated/clothes/chef-jacket/frame_10.png +0 -0
  639. package/public/assets/generated/clothes/chef-jacket/frame_11.png +0 -0
  640. package/public/assets/generated/clothes/chef-jacket/frame_12.png +0 -0
  641. package/public/assets/generated/clothes/chef-jacket/frame_13.png +0 -0
  642. package/public/assets/generated/clothes/chef-jacket/frame_14.png +0 -0
  643. package/public/assets/generated/clothes/chef-jacket/frame_15.png +0 -0
  644. package/public/assets/generated/clothes/dark-hoody/frame_00.png +0 -0
  645. package/public/assets/generated/clothes/dark-hoody/frame_01.png +0 -0
  646. package/public/assets/generated/clothes/dark-hoody/frame_02.png +0 -0
  647. package/public/assets/generated/clothes/dark-hoody/frame_03.png +0 -0
  648. package/public/assets/generated/clothes/dark-hoody/frame_04.png +0 -0
  649. package/public/assets/generated/clothes/dark-hoody/frame_05.png +0 -0
  650. package/public/assets/generated/clothes/dark-hoody/frame_06.png +0 -0
  651. package/public/assets/generated/clothes/dark-hoody/frame_07.png +0 -0
  652. package/public/assets/generated/clothes/dark-hoody/frame_08.png +0 -0
  653. package/public/assets/generated/clothes/dark-hoody/frame_09.png +0 -0
  654. package/public/assets/generated/clothes/dark-hoody/frame_10.png +0 -0
  655. package/public/assets/generated/clothes/dark-hoody/frame_11.png +0 -0
  656. package/public/assets/generated/clothes/dark-hoody/frame_12.png +0 -0
  657. package/public/assets/generated/clothes/dark-hoody/frame_13.png +0 -0
  658. package/public/assets/generated/clothes/dark-hoody/frame_14.png +0 -0
  659. package/public/assets/generated/clothes/dark-hoody/frame_15.png +0 -0
  660. package/public/assets/generated/clothes/green-hoody/frame_00.png +0 -0
  661. package/public/assets/generated/clothes/green-hoody/frame_01.png +0 -0
  662. package/public/assets/generated/clothes/green-hoody/frame_02.png +0 -0
  663. package/public/assets/generated/clothes/green-hoody/frame_03.png +0 -0
  664. package/public/assets/generated/clothes/green-hoody/frame_04.png +0 -0
  665. package/public/assets/generated/clothes/green-hoody/frame_05.png +0 -0
  666. package/public/assets/generated/clothes/green-hoody/frame_06.png +0 -0
  667. package/public/assets/generated/clothes/green-hoody/frame_07.png +0 -0
  668. package/public/assets/generated/clothes/green-hoody/frame_08.png +0 -0
  669. package/public/assets/generated/clothes/green-hoody/frame_09.png +0 -0
  670. package/public/assets/generated/clothes/green-hoody/frame_10.png +0 -0
  671. package/public/assets/generated/clothes/green-hoody/frame_11.png +0 -0
  672. package/public/assets/generated/clothes/green-hoody/frame_12.png +0 -0
  673. package/public/assets/generated/clothes/green-hoody/frame_13.png +0 -0
  674. package/public/assets/generated/clothes/green-hoody/frame_14.png +0 -0
  675. package/public/assets/generated/clothes/green-hoody/frame_15.png +0 -0
  676. package/public/assets/generated/clothes/hazmat/frame_00.png +0 -0
  677. package/public/assets/generated/clothes/hazmat/frame_01.png +0 -0
  678. package/public/assets/generated/clothes/hazmat/frame_02.png +0 -0
  679. package/public/assets/generated/clothes/hazmat/frame_03.png +0 -0
  680. package/public/assets/generated/clothes/hazmat/frame_04.png +0 -0
  681. package/public/assets/generated/clothes/hazmat/frame_05.png +0 -0
  682. package/public/assets/generated/clothes/hazmat/frame_06.png +0 -0
  683. package/public/assets/generated/clothes/hazmat/frame_07.png +0 -0
  684. package/public/assets/generated/clothes/hazmat/frame_08.png +0 -0
  685. package/public/assets/generated/clothes/hazmat/frame_09.png +0 -0
  686. package/public/assets/generated/clothes/hazmat/frame_10.png +0 -0
  687. package/public/assets/generated/clothes/hazmat/frame_11.png +0 -0
  688. package/public/assets/generated/clothes/hazmat/frame_12.png +0 -0
  689. package/public/assets/generated/clothes/hazmat/frame_13.png +0 -0
  690. package/public/assets/generated/clothes/hazmat/frame_14.png +0 -0
  691. package/public/assets/generated/clothes/hazmat/frame_15.png +0 -0
  692. package/public/assets/generated/clothes/hazmat-outfit/frame_00.png +0 -0
  693. package/public/assets/generated/clothes/hazmat-outfit/frame_01.png +0 -0
  694. package/public/assets/generated/clothes/hazmat-outfit/frame_02.png +0 -0
  695. package/public/assets/generated/clothes/hazmat-outfit/frame_03.png +0 -0
  696. package/public/assets/generated/clothes/hazmat-outfit/frame_04.png +0 -0
  697. package/public/assets/generated/clothes/hazmat-outfit/frame_05.png +0 -0
  698. package/public/assets/generated/clothes/hazmat-outfit/frame_06.png +0 -0
  699. package/public/assets/generated/clothes/hazmat-outfit/frame_07.png +0 -0
  700. package/public/assets/generated/clothes/hazmat-outfit/frame_08.png +0 -0
  701. package/public/assets/generated/clothes/hazmat-outfit/frame_09.png +0 -0
  702. package/public/assets/generated/clothes/hazmat-outfit/frame_10.png +0 -0
  703. package/public/assets/generated/clothes/hazmat-outfit/frame_11.png +0 -0
  704. package/public/assets/generated/clothes/hazmat-outfit/frame_12.png +0 -0
  705. package/public/assets/generated/clothes/hazmat-outfit/frame_13.png +0 -0
  706. package/public/assets/generated/clothes/hazmat-outfit/frame_14.png +0 -0
  707. package/public/assets/generated/clothes/hazmat-outfit/frame_15.png +0 -0
  708. package/public/assets/generated/clothes/jail-outfit/frame_00.png +0 -0
  709. package/public/assets/generated/clothes/jail-outfit/frame_01.png +0 -0
  710. package/public/assets/generated/clothes/jail-outfit/frame_02.png +0 -0
  711. package/public/assets/generated/clothes/jail-outfit/frame_03.png +0 -0
  712. package/public/assets/generated/clothes/jail-outfit/frame_04.png +0 -0
  713. package/public/assets/generated/clothes/jail-outfit/frame_05.png +0 -0
  714. package/public/assets/generated/clothes/jail-outfit/frame_06.png +0 -0
  715. package/public/assets/generated/clothes/jail-outfit/frame_07.png +0 -0
  716. package/public/assets/generated/clothes/jail-outfit/frame_08.png +0 -0
  717. package/public/assets/generated/clothes/jail-outfit/frame_09.png +0 -0
  718. package/public/assets/generated/clothes/jail-outfit/frame_10.png +0 -0
  719. package/public/assets/generated/clothes/jail-outfit/frame_11.png +0 -0
  720. package/public/assets/generated/clothes/jail-outfit/frame_12.png +0 -0
  721. package/public/assets/generated/clothes/jail-outfit/frame_13.png +0 -0
  722. package/public/assets/generated/clothes/jail-outfit/frame_14.png +0 -0
  723. package/public/assets/generated/clothes/jail-outfit/frame_15.png +0 -0
  724. package/public/assets/generated/clothes/kimono/frame_00.png +0 -0
  725. package/public/assets/generated/clothes/kimono/frame_01.png +0 -0
  726. package/public/assets/generated/clothes/kimono/frame_02.png +0 -0
  727. package/public/assets/generated/clothes/kimono/frame_03.png +0 -0
  728. package/public/assets/generated/clothes/kimono/frame_04.png +0 -0
  729. package/public/assets/generated/clothes/kimono/frame_05.png +0 -0
  730. package/public/assets/generated/clothes/kimono/frame_06.png +0 -0
  731. package/public/assets/generated/clothes/kimono/frame_07.png +0 -0
  732. package/public/assets/generated/clothes/kimono/frame_08.png +0 -0
  733. package/public/assets/generated/clothes/kimono/frame_09.png +0 -0
  734. package/public/assets/generated/clothes/kimono/frame_10.png +0 -0
  735. package/public/assets/generated/clothes/kimono/frame_11.png +0 -0
  736. package/public/assets/generated/clothes/kimono/frame_12.png +0 -0
  737. package/public/assets/generated/clothes/kimono/frame_13.png +0 -0
  738. package/public/assets/generated/clothes/kimono/frame_14.png +0 -0
  739. package/public/assets/generated/clothes/kimono/frame_15.png +0 -0
  740. package/public/assets/generated/clothes/mad-scientist/frame_00.png +0 -0
  741. package/public/assets/generated/clothes/mad-scientist/frame_01.png +0 -0
  742. package/public/assets/generated/clothes/mad-scientist/frame_02.png +0 -0
  743. package/public/assets/generated/clothes/mad-scientist/frame_03.png +0 -0
  744. package/public/assets/generated/clothes/mad-scientist/frame_04.png +0 -0
  745. package/public/assets/generated/clothes/mad-scientist/frame_05.png +0 -0
  746. package/public/assets/generated/clothes/mad-scientist/frame_06.png +0 -0
  747. package/public/assets/generated/clothes/mad-scientist/frame_07.png +0 -0
  748. package/public/assets/generated/clothes/mad-scientist/frame_08.png +0 -0
  749. package/public/assets/generated/clothes/mad-scientist/frame_09.png +0 -0
  750. package/public/assets/generated/clothes/mad-scientist/frame_10.png +0 -0
  751. package/public/assets/generated/clothes/mad-scientist/frame_11.png +0 -0
  752. package/public/assets/generated/clothes/mad-scientist/frame_12.png +0 -0
  753. package/public/assets/generated/clothes/mad-scientist/frame_13.png +0 -0
  754. package/public/assets/generated/clothes/mad-scientist/frame_14.png +0 -0
  755. package/public/assets/generated/clothes/mad-scientist/frame_15.png +0 -0
  756. package/public/assets/generated/clothes/mage-robe/frame_00.png +0 -0
  757. package/public/assets/generated/clothes/mage-robe/frame_01.png +0 -0
  758. package/public/assets/generated/clothes/mage-robe/frame_02.png +0 -0
  759. package/public/assets/generated/clothes/mage-robe/frame_03.png +0 -0
  760. package/public/assets/generated/clothes/mage-robe/frame_04.png +0 -0
  761. package/public/assets/generated/clothes/mage-robe/frame_05.png +0 -0
  762. package/public/assets/generated/clothes/mage-robe/frame_06.png +0 -0
  763. package/public/assets/generated/clothes/mage-robe/frame_07.png +0 -0
  764. package/public/assets/generated/clothes/mage-robe/frame_08.png +0 -0
  765. package/public/assets/generated/clothes/mage-robe/frame_09.png +0 -0
  766. package/public/assets/generated/clothes/mage-robe/frame_10.png +0 -0
  767. package/public/assets/generated/clothes/mage-robe/frame_11.png +0 -0
  768. package/public/assets/generated/clothes/mage-robe/frame_12.png +0 -0
  769. package/public/assets/generated/clothes/mage-robe/frame_13.png +0 -0
  770. package/public/assets/generated/clothes/mage-robe/frame_14.png +0 -0
  771. package/public/assets/generated/clothes/mage-robe/frame_15.png +0 -0
  772. package/public/assets/generated/clothes/pirate/frame_00.png +0 -0
  773. package/public/assets/generated/clothes/pirate/frame_01.png +0 -0
  774. package/public/assets/generated/clothes/pirate/frame_02.png +0 -0
  775. package/public/assets/generated/clothes/pirate/frame_03.png +0 -0
  776. package/public/assets/generated/clothes/pirate/frame_04.png +0 -0
  777. package/public/assets/generated/clothes/pirate/frame_05.png +0 -0
  778. package/public/assets/generated/clothes/pirate/frame_06.png +0 -0
  779. package/public/assets/generated/clothes/pirate/frame_07.png +0 -0
  780. package/public/assets/generated/clothes/pirate/frame_08.png +0 -0
  781. package/public/assets/generated/clothes/pirate/frame_09.png +0 -0
  782. package/public/assets/generated/clothes/pirate/frame_10.png +0 -0
  783. package/public/assets/generated/clothes/pirate/frame_11.png +0 -0
  784. package/public/assets/generated/clothes/pirate/frame_12.png +0 -0
  785. package/public/assets/generated/clothes/pirate/frame_13.png +0 -0
  786. package/public/assets/generated/clothes/pirate/frame_14.png +0 -0
  787. package/public/assets/generated/clothes/pirate/frame_15.png +0 -0
  788. package/public/assets/generated/clothes/pirate-outfit/frame_00.png +0 -0
  789. package/public/assets/generated/clothes/pirate-outfit/frame_01.png +0 -0
  790. package/public/assets/generated/clothes/pirate-outfit/frame_02.png +0 -0
  791. package/public/assets/generated/clothes/pirate-outfit/frame_03.png +0 -0
  792. package/public/assets/generated/clothes/pirate-outfit/frame_04.png +0 -0
  793. package/public/assets/generated/clothes/pirate-outfit/frame_05.png +0 -0
  794. package/public/assets/generated/clothes/pirate-outfit/frame_06.png +0 -0
  795. package/public/assets/generated/clothes/pirate-outfit/frame_07.png +0 -0
  796. package/public/assets/generated/clothes/pirate-outfit/frame_08.png +0 -0
  797. package/public/assets/generated/clothes/pirate-outfit/frame_09.png +0 -0
  798. package/public/assets/generated/clothes/pirate-outfit/frame_10.png +0 -0
  799. package/public/assets/generated/clothes/pirate-outfit/frame_11.png +0 -0
  800. package/public/assets/generated/clothes/pirate-outfit/frame_12.png +0 -0
  801. package/public/assets/generated/clothes/pirate-outfit/frame_13.png +0 -0
  802. package/public/assets/generated/clothes/pirate-outfit/frame_14.png +0 -0
  803. package/public/assets/generated/clothes/pirate-outfit/frame_15.png +0 -0
  804. package/public/assets/generated/clothes/poncho/frame_00.png +0 -0
  805. package/public/assets/generated/clothes/poncho/frame_01.png +0 -0
  806. package/public/assets/generated/clothes/poncho/frame_02.png +0 -0
  807. package/public/assets/generated/clothes/poncho/frame_03.png +0 -0
  808. package/public/assets/generated/clothes/poncho/frame_04.png +0 -0
  809. package/public/assets/generated/clothes/poncho/frame_05.png +0 -0
  810. package/public/assets/generated/clothes/poncho/frame_06.png +0 -0
  811. package/public/assets/generated/clothes/poncho/frame_07.png +0 -0
  812. package/public/assets/generated/clothes/poncho/frame_08.png +0 -0
  813. package/public/assets/generated/clothes/poncho/frame_09.png +0 -0
  814. package/public/assets/generated/clothes/poncho/frame_10.png +0 -0
  815. package/public/assets/generated/clothes/poncho/frame_11.png +0 -0
  816. package/public/assets/generated/clothes/poncho/frame_12.png +0 -0
  817. package/public/assets/generated/clothes/poncho/frame_13.png +0 -0
  818. package/public/assets/generated/clothes/poncho/frame_14.png +0 -0
  819. package/public/assets/generated/clothes/poncho/frame_15.png +0 -0
  820. package/public/assets/generated/clothes/rain-coat/frame_00.png +0 -0
  821. package/public/assets/generated/clothes/rain-coat/frame_01.png +0 -0
  822. package/public/assets/generated/clothes/rain-coat/frame_02.png +0 -0
  823. package/public/assets/generated/clothes/rain-coat/frame_03.png +0 -0
  824. package/public/assets/generated/clothes/rain-coat/frame_04.png +0 -0
  825. package/public/assets/generated/clothes/rain-coat/frame_05.png +0 -0
  826. package/public/assets/generated/clothes/rain-coat/frame_06.png +0 -0
  827. package/public/assets/generated/clothes/rain-coat/frame_07.png +0 -0
  828. package/public/assets/generated/clothes/rain-coat/frame_08.png +0 -0
  829. package/public/assets/generated/clothes/rain-coat/frame_09.png +0 -0
  830. package/public/assets/generated/clothes/rain-coat/frame_10.png +0 -0
  831. package/public/assets/generated/clothes/rain-coat/frame_11.png +0 -0
  832. package/public/assets/generated/clothes/rain-coat/frame_12.png +0 -0
  833. package/public/assets/generated/clothes/rain-coat/frame_13.png +0 -0
  834. package/public/assets/generated/clothes/rain-coat/frame_14.png +0 -0
  835. package/public/assets/generated/clothes/rain-coat/frame_15.png +0 -0
  836. package/public/assets/generated/clothes/trench-coat/frame_00.png +0 -0
  837. package/public/assets/generated/clothes/trench-coat/frame_01.png +0 -0
  838. package/public/assets/generated/clothes/trench-coat/frame_02.png +0 -0
  839. package/public/assets/generated/clothes/trench-coat/frame_03.png +0 -0
  840. package/public/assets/generated/clothes/trench-coat/frame_04.png +0 -0
  841. package/public/assets/generated/clothes/trench-coat/frame_05.png +0 -0
  842. package/public/assets/generated/clothes/trench-coat/frame_06.png +0 -0
  843. package/public/assets/generated/clothes/trench-coat/frame_07.png +0 -0
  844. package/public/assets/generated/clothes/trench-coat/frame_08.png +0 -0
  845. package/public/assets/generated/clothes/trench-coat/frame_09.png +0 -0
  846. package/public/assets/generated/clothes/trench-coat/frame_10.png +0 -0
  847. package/public/assets/generated/clothes/trench-coat/frame_11.png +0 -0
  848. package/public/assets/generated/clothes/trench-coat/frame_12.png +0 -0
  849. package/public/assets/generated/clothes/trench-coat/frame_13.png +0 -0
  850. package/public/assets/generated/clothes/trench-coat/frame_14.png +0 -0
  851. package/public/assets/generated/clothes/trench-coat/frame_15.png +0 -0
  852. package/public/assets/generated/clothes/white-kimono/frame_00.png +0 -0
  853. package/public/assets/generated/clothes/white-kimono/frame_01.png +0 -0
  854. package/public/assets/generated/clothes/white-kimono/frame_02.png +0 -0
  855. package/public/assets/generated/clothes/white-kimono/frame_03.png +0 -0
  856. package/public/assets/generated/clothes/white-kimono/frame_04.png +0 -0
  857. package/public/assets/generated/clothes/white-kimono/frame_05.png +0 -0
  858. package/public/assets/generated/clothes/white-kimono/frame_06.png +0 -0
  859. package/public/assets/generated/clothes/white-kimono/frame_07.png +0 -0
  860. package/public/assets/generated/clothes/white-kimono/frame_08.png +0 -0
  861. package/public/assets/generated/clothes/white-kimono/frame_09.png +0 -0
  862. package/public/assets/generated/clothes/white-kimono/frame_10.png +0 -0
  863. package/public/assets/generated/clothes/white-kimono/frame_11.png +0 -0
  864. package/public/assets/generated/clothes/white-kimono/frame_12.png +0 -0
  865. package/public/assets/generated/clothes/white-kimono/frame_13.png +0 -0
  866. package/public/assets/generated/clothes/white-kimono/frame_14.png +0 -0
  867. package/public/assets/generated/clothes/white-kimono/frame_15.png +0 -0
  868. package/public/assets/generated/enemy-death/halloween/frame_00.png +0 -0
  869. package/public/assets/generated/enemy-death/halloween/frame_01.png +0 -0
  870. package/public/assets/generated/enemy-death/halloween/frame_02.png +0 -0
  871. package/public/assets/generated/enemy-death/halloween/frame_03.png +0 -0
  872. package/public/assets/generated/enemy-death/halloween/frame_04.png +0 -0
  873. package/public/assets/generated/enemy-death/halloween/frame_05.png +0 -0
  874. package/public/assets/generated/enemy-death/halloween/frame_06.png +0 -0
  875. package/public/assets/generated/enemy-death/halloween/frame_07.png +0 -0
  876. package/public/assets/generated/enemy-death/halloween/frame_08.png +0 -0
  877. package/public/assets/generated/eyes/3d-glasses/frame_00.png +0 -0
  878. package/public/assets/generated/eyes/3d-glasses/frame_01.png +0 -0
  879. package/public/assets/generated/eyes/3d-glasses/frame_02.png +0 -0
  880. package/public/assets/generated/eyes/3d-glasses/frame_03.png +0 -0
  881. package/public/assets/generated/eyes/3d-glasses/frame_04.png +0 -0
  882. package/public/assets/generated/eyes/3d-glasses/frame_05.png +0 -0
  883. package/public/assets/generated/eyes/3d-glasses/frame_06.png +0 -0
  884. package/public/assets/generated/eyes/3d-glasses/frame_07.png +0 -0
  885. package/public/assets/generated/eyes/3d-glasses/frame_08.png +0 -0
  886. package/public/assets/generated/eyes/3d-glasses/frame_09.png +0 -0
  887. package/public/assets/generated/eyes/3d-glasses/frame_10.png +0 -0
  888. package/public/assets/generated/eyes/3d-glasses/frame_11.png +0 -0
  889. package/public/assets/generated/eyes/3d-glasses/frame_12.png +0 -0
  890. package/public/assets/generated/eyes/3d-glasses/frame_13.png +0 -0
  891. package/public/assets/generated/eyes/3d-glasses/frame_14.png +0 -0
  892. package/public/assets/generated/eyes/3d-glasses/frame_15.png +0 -0
  893. package/public/assets/generated/eyes/4-eyes/frame_00.png +0 -0
  894. package/public/assets/generated/eyes/4-eyes/frame_01.png +0 -0
  895. package/public/assets/generated/eyes/4-eyes/frame_02.png +0 -0
  896. package/public/assets/generated/eyes/4-eyes/frame_03.png +0 -0
  897. package/public/assets/generated/eyes/4-eyes/frame_04.png +0 -0
  898. package/public/assets/generated/eyes/4-eyes/frame_05.png +0 -0
  899. package/public/assets/generated/eyes/4-eyes/frame_06.png +0 -0
  900. package/public/assets/generated/eyes/4-eyes/frame_07.png +0 -0
  901. package/public/assets/generated/eyes/4-eyes/frame_08.png +0 -0
  902. package/public/assets/generated/eyes/4-eyes/frame_09.png +0 -0
  903. package/public/assets/generated/eyes/4-eyes/frame_10.png +0 -0
  904. package/public/assets/generated/eyes/4-eyes/frame_11.png +0 -0
  905. package/public/assets/generated/eyes/4-eyes/frame_12.png +0 -0
  906. package/public/assets/generated/eyes/4-eyes/frame_13.png +0 -0
  907. package/public/assets/generated/eyes/4-eyes/frame_14.png +0 -0
  908. package/public/assets/generated/eyes/4-eyes/frame_15.png +0 -0
  909. package/public/assets/generated/eyes/all-seeing/frame_00.png +0 -0
  910. package/public/assets/generated/eyes/all-seeing/frame_01.png +0 -0
  911. package/public/assets/generated/eyes/all-seeing/frame_02.png +0 -0
  912. package/public/assets/generated/eyes/all-seeing/frame_03.png +0 -0
  913. package/public/assets/generated/eyes/all-seeing/frame_04.png +0 -0
  914. package/public/assets/generated/eyes/all-seeing/frame_05.png +0 -0
  915. package/public/assets/generated/eyes/all-seeing/frame_06.png +0 -0
  916. package/public/assets/generated/eyes/all-seeing/frame_07.png +0 -0
  917. package/public/assets/generated/eyes/all-seeing/frame_08.png +0 -0
  918. package/public/assets/generated/eyes/all-seeing/frame_09.png +0 -0
  919. package/public/assets/generated/eyes/all-seeing/frame_10.png +0 -0
  920. package/public/assets/generated/eyes/all-seeing/frame_11.png +0 -0
  921. package/public/assets/generated/eyes/all-seeing/frame_12.png +0 -0
  922. package/public/assets/generated/eyes/all-seeing/frame_13.png +0 -0
  923. package/public/assets/generated/eyes/all-seeing/frame_14.png +0 -0
  924. package/public/assets/generated/eyes/all-seeing/frame_15.png +0 -0
  925. package/public/assets/generated/eyes/angry/frame_00.png +0 -0
  926. package/public/assets/generated/eyes/angry/frame_01.png +0 -0
  927. package/public/assets/generated/eyes/angry/frame_02.png +0 -0
  928. package/public/assets/generated/eyes/angry/frame_03.png +0 -0
  929. package/public/assets/generated/eyes/angry/frame_04.png +0 -0
  930. package/public/assets/generated/eyes/angry/frame_05.png +0 -0
  931. package/public/assets/generated/eyes/angry/frame_06.png +0 -0
  932. package/public/assets/generated/eyes/angry/frame_07.png +0 -0
  933. package/public/assets/generated/eyes/angry/frame_08.png +0 -0
  934. package/public/assets/generated/eyes/angry/frame_09.png +0 -0
  935. package/public/assets/generated/eyes/angry/frame_10.png +0 -0
  936. package/public/assets/generated/eyes/angry/frame_11.png +0 -0
  937. package/public/assets/generated/eyes/angry/frame_12.png +0 -0
  938. package/public/assets/generated/eyes/angry/frame_13.png +0 -0
  939. package/public/assets/generated/eyes/angry/frame_14.png +0 -0
  940. package/public/assets/generated/eyes/angry/frame_15.png +0 -0
  941. package/public/assets/generated/eyes/boingg/frame_00.png +0 -0
  942. package/public/assets/generated/eyes/boingg/frame_01.png +0 -0
  943. package/public/assets/generated/eyes/boingg/frame_02.png +0 -0
  944. package/public/assets/generated/eyes/boingg/frame_03.png +0 -0
  945. package/public/assets/generated/eyes/boingg/frame_04.png +0 -0
  946. package/public/assets/generated/eyes/boingg/frame_05.png +0 -0
  947. package/public/assets/generated/eyes/boingg/frame_06.png +0 -0
  948. package/public/assets/generated/eyes/boingg/frame_07.png +0 -0
  949. package/public/assets/generated/eyes/boingg/frame_08.png +0 -0
  950. package/public/assets/generated/eyes/boingg/frame_09.png +0 -0
  951. package/public/assets/generated/eyes/boingg/frame_10.png +0 -0
  952. package/public/assets/generated/eyes/boingg/frame_11.png +0 -0
  953. package/public/assets/generated/eyes/boingg/frame_12.png +0 -0
  954. package/public/assets/generated/eyes/boingg/frame_13.png +0 -0
  955. package/public/assets/generated/eyes/boingg/frame_14.png +0 -0
  956. package/public/assets/generated/eyes/boingg/frame_15.png +0 -0
  957. package/public/assets/generated/eyes/cool-shades/frame_00.png +0 -0
  958. package/public/assets/generated/eyes/cool-shades/frame_01.png +0 -0
  959. package/public/assets/generated/eyes/cool-shades/frame_02.png +0 -0
  960. package/public/assets/generated/eyes/cool-shades/frame_03.png +0 -0
  961. package/public/assets/generated/eyes/cool-shades/frame_04.png +0 -0
  962. package/public/assets/generated/eyes/cool-shades/frame_05.png +0 -0
  963. package/public/assets/generated/eyes/cool-shades/frame_06.png +0 -0
  964. package/public/assets/generated/eyes/cool-shades/frame_07.png +0 -0
  965. package/public/assets/generated/eyes/cool-shades/frame_08.png +0 -0
  966. package/public/assets/generated/eyes/cool-shades/frame_09.png +0 -0
  967. package/public/assets/generated/eyes/cool-shades/frame_10.png +0 -0
  968. package/public/assets/generated/eyes/cool-shades/frame_11.png +0 -0
  969. package/public/assets/generated/eyes/cool-shades/frame_12.png +0 -0
  970. package/public/assets/generated/eyes/cool-shades/frame_13.png +0 -0
  971. package/public/assets/generated/eyes/cool-shades/frame_14.png +0 -0
  972. package/public/assets/generated/eyes/cool-shades/frame_15.png +0 -0
  973. package/public/assets/generated/eyes/crazy-eyes/frame_00.png +0 -0
  974. package/public/assets/generated/eyes/crazy-eyes/frame_01.png +0 -0
  975. package/public/assets/generated/eyes/crazy-eyes/frame_02.png +0 -0
  976. package/public/assets/generated/eyes/crazy-eyes/frame_03.png +0 -0
  977. package/public/assets/generated/eyes/crazy-eyes/frame_04.png +0 -0
  978. package/public/assets/generated/eyes/crazy-eyes/frame_05.png +0 -0
  979. package/public/assets/generated/eyes/crazy-eyes/frame_06.png +0 -0
  980. package/public/assets/generated/eyes/crazy-eyes/frame_07.png +0 -0
  981. package/public/assets/generated/eyes/crazy-eyes/frame_08.png +0 -0
  982. package/public/assets/generated/eyes/crazy-eyes/frame_09.png +0 -0
  983. package/public/assets/generated/eyes/crazy-eyes/frame_10.png +0 -0
  984. package/public/assets/generated/eyes/crazy-eyes/frame_11.png +0 -0
  985. package/public/assets/generated/eyes/crazy-eyes/frame_12.png +0 -0
  986. package/public/assets/generated/eyes/crazy-eyes/frame_13.png +0 -0
  987. package/public/assets/generated/eyes/crazy-eyes/frame_14.png +0 -0
  988. package/public/assets/generated/eyes/crazy-eyes/frame_15.png +0 -0
  989. package/public/assets/generated/eyes/cute/frame_00.png +0 -0
  990. package/public/assets/generated/eyes/cute/frame_01.png +0 -0
  991. package/public/assets/generated/eyes/cute/frame_02.png +0 -0
  992. package/public/assets/generated/eyes/cute/frame_03.png +0 -0
  993. package/public/assets/generated/eyes/cute/frame_04.png +0 -0
  994. package/public/assets/generated/eyes/cute/frame_05.png +0 -0
  995. package/public/assets/generated/eyes/cute/frame_06.png +0 -0
  996. package/public/assets/generated/eyes/cute/frame_07.png +0 -0
  997. package/public/assets/generated/eyes/cute/frame_08.png +0 -0
  998. package/public/assets/generated/eyes/cute/frame_09.png +0 -0
  999. package/public/assets/generated/eyes/cute/frame_10.png +0 -0
  1000. package/public/assets/generated/eyes/cute/frame_11.png +0 -0
  1001. package/public/assets/generated/eyes/cute/frame_12.png +0 -0
  1002. package/public/assets/generated/eyes/cute/frame_13.png +0 -0
  1003. package/public/assets/generated/eyes/cute/frame_14.png +0 -0
  1004. package/public/assets/generated/eyes/cute/frame_15.png +0 -0
  1005. package/public/assets/generated/eyes/cyclops/frame_00.png +0 -0
  1006. package/public/assets/generated/eyes/cyclops/frame_01.png +0 -0
  1007. package/public/assets/generated/eyes/cyclops/frame_02.png +0 -0
  1008. package/public/assets/generated/eyes/cyclops/frame_03.png +0 -0
  1009. package/public/assets/generated/eyes/cyclops/frame_04.png +0 -0
  1010. package/public/assets/generated/eyes/cyclops/frame_05.png +0 -0
  1011. package/public/assets/generated/eyes/cyclops/frame_06.png +0 -0
  1012. package/public/assets/generated/eyes/cyclops/frame_07.png +0 -0
  1013. package/public/assets/generated/eyes/cyclops/frame_08.png +0 -0
  1014. package/public/assets/generated/eyes/cyclops/frame_09.png +0 -0
  1015. package/public/assets/generated/eyes/cyclops/frame_10.png +0 -0
  1016. package/public/assets/generated/eyes/cyclops/frame_11.png +0 -0
  1017. package/public/assets/generated/eyes/cyclops/frame_12.png +0 -0
  1018. package/public/assets/generated/eyes/cyclops/frame_13.png +0 -0
  1019. package/public/assets/generated/eyes/cyclops/frame_14.png +0 -0
  1020. package/public/assets/generated/eyes/cyclops/frame_15.png +0 -0
  1021. package/public/assets/generated/eyes/durr-eyes/frame_00.png +0 -0
  1022. package/public/assets/generated/eyes/durr-eyes/frame_01.png +0 -0
  1023. package/public/assets/generated/eyes/durr-eyes/frame_02.png +0 -0
  1024. package/public/assets/generated/eyes/durr-eyes/frame_03.png +0 -0
  1025. package/public/assets/generated/eyes/durr-eyes/frame_04.png +0 -0
  1026. package/public/assets/generated/eyes/durr-eyes/frame_05.png +0 -0
  1027. package/public/assets/generated/eyes/durr-eyes/frame_06.png +0 -0
  1028. package/public/assets/generated/eyes/durr-eyes/frame_07.png +0 -0
  1029. package/public/assets/generated/eyes/durr-eyes/frame_08.png +0 -0
  1030. package/public/assets/generated/eyes/durr-eyes/frame_09.png +0 -0
  1031. package/public/assets/generated/eyes/durr-eyes/frame_10.png +0 -0
  1032. package/public/assets/generated/eyes/durr-eyes/frame_11.png +0 -0
  1033. package/public/assets/generated/eyes/durr-eyes/frame_12.png +0 -0
  1034. package/public/assets/generated/eyes/durr-eyes/frame_13.png +0 -0
  1035. package/public/assets/generated/eyes/durr-eyes/frame_14.png +0 -0
  1036. package/public/assets/generated/eyes/durr-eyes/frame_15.png +0 -0
  1037. package/public/assets/generated/eyes/evil/frame_00.png +0 -0
  1038. package/public/assets/generated/eyes/evil/frame_01.png +0 -0
  1039. package/public/assets/generated/eyes/evil/frame_02.png +0 -0
  1040. package/public/assets/generated/eyes/evil/frame_03.png +0 -0
  1041. package/public/assets/generated/eyes/evil/frame_04.png +0 -0
  1042. package/public/assets/generated/eyes/evil/frame_05.png +0 -0
  1043. package/public/assets/generated/eyes/evil/frame_06.png +0 -0
  1044. package/public/assets/generated/eyes/evil/frame_07.png +0 -0
  1045. package/public/assets/generated/eyes/evil/frame_08.png +0 -0
  1046. package/public/assets/generated/eyes/evil/frame_09.png +0 -0
  1047. package/public/assets/generated/eyes/evil/frame_10.png +0 -0
  1048. package/public/assets/generated/eyes/evil/frame_11.png +0 -0
  1049. package/public/assets/generated/eyes/evil/frame_12.png +0 -0
  1050. package/public/assets/generated/eyes/evil/frame_13.png +0 -0
  1051. package/public/assets/generated/eyes/evil/frame_14.png +0 -0
  1052. package/public/assets/generated/eyes/evil/frame_15.png +0 -0
  1053. package/public/assets/generated/eyes/eye-patch/frame_00.png +0 -0
  1054. package/public/assets/generated/eyes/eye-patch/frame_01.png +0 -0
  1055. package/public/assets/generated/eyes/eye-patch/frame_02.png +0 -0
  1056. package/public/assets/generated/eyes/eye-patch/frame_03.png +0 -0
  1057. package/public/assets/generated/eyes/eye-patch/frame_04.png +0 -0
  1058. package/public/assets/generated/eyes/eye-patch/frame_05.png +0 -0
  1059. package/public/assets/generated/eyes/eye-patch/frame_06.png +0 -0
  1060. package/public/assets/generated/eyes/eye-patch/frame_07.png +0 -0
  1061. package/public/assets/generated/eyes/eye-patch/frame_08.png +0 -0
  1062. package/public/assets/generated/eyes/eye-patch/frame_09.png +0 -0
  1063. package/public/assets/generated/eyes/eye-patch/frame_10.png +0 -0
  1064. package/public/assets/generated/eyes/eye-patch/frame_11.png +0 -0
  1065. package/public/assets/generated/eyes/eye-patch/frame_12.png +0 -0
  1066. package/public/assets/generated/eyes/eye-patch/frame_13.png +0 -0
  1067. package/public/assets/generated/eyes/eye-patch/frame_14.png +0 -0
  1068. package/public/assets/generated/eyes/eye-patch/frame_15.png +0 -0
  1069. package/public/assets/generated/eyes/hmm/frame_00.png +0 -0
  1070. package/public/assets/generated/eyes/hmm/frame_01.png +0 -0
  1071. package/public/assets/generated/eyes/hmm/frame_02.png +0 -0
  1072. package/public/assets/generated/eyes/hmm/frame_03.png +0 -0
  1073. package/public/assets/generated/eyes/hmm/frame_04.png +0 -0
  1074. package/public/assets/generated/eyes/hmm/frame_05.png +0 -0
  1075. package/public/assets/generated/eyes/hmm/frame_06.png +0 -0
  1076. package/public/assets/generated/eyes/hmm/frame_07.png +0 -0
  1077. package/public/assets/generated/eyes/hmm/frame_08.png +0 -0
  1078. package/public/assets/generated/eyes/hmm/frame_09.png +0 -0
  1079. package/public/assets/generated/eyes/hmm/frame_10.png +0 -0
  1080. package/public/assets/generated/eyes/hmm/frame_11.png +0 -0
  1081. package/public/assets/generated/eyes/hmm/frame_12.png +0 -0
  1082. package/public/assets/generated/eyes/hmm/frame_13.png +0 -0
  1083. package/public/assets/generated/eyes/hmm/frame_14.png +0 -0
  1084. package/public/assets/generated/eyes/hmm/frame_15.png +0 -0
  1085. package/public/assets/generated/eyes/monocle/frame_00.png +0 -0
  1086. package/public/assets/generated/eyes/monocle/frame_01.png +0 -0
  1087. package/public/assets/generated/eyes/monocle/frame_02.png +0 -0
  1088. package/public/assets/generated/eyes/monocle/frame_03.png +0 -0
  1089. package/public/assets/generated/eyes/monocle/frame_04.png +0 -0
  1090. package/public/assets/generated/eyes/monocle/frame_05.png +0 -0
  1091. package/public/assets/generated/eyes/monocle/frame_06.png +0 -0
  1092. package/public/assets/generated/eyes/monocle/frame_07.png +0 -0
  1093. package/public/assets/generated/eyes/monocle/frame_08.png +0 -0
  1094. package/public/assets/generated/eyes/monocle/frame_09.png +0 -0
  1095. package/public/assets/generated/eyes/monocle/frame_10.png +0 -0
  1096. package/public/assets/generated/eyes/monocle/frame_11.png +0 -0
  1097. package/public/assets/generated/eyes/monocle/frame_12.png +0 -0
  1098. package/public/assets/generated/eyes/monocle/frame_13.png +0 -0
  1099. package/public/assets/generated/eyes/monocle/frame_14.png +0 -0
  1100. package/public/assets/generated/eyes/monocle/frame_15.png +0 -0
  1101. package/public/assets/generated/eyes/nouns-glasses/frame_00.png +0 -0
  1102. package/public/assets/generated/eyes/nouns-glasses/frame_01.png +0 -0
  1103. package/public/assets/generated/eyes/nouns-glasses/frame_02.png +0 -0
  1104. package/public/assets/generated/eyes/nouns-glasses/frame_03.png +0 -0
  1105. package/public/assets/generated/eyes/nouns-glasses/frame_04.png +0 -0
  1106. package/public/assets/generated/eyes/nouns-glasses/frame_05.png +0 -0
  1107. package/public/assets/generated/eyes/nouns-glasses/frame_06.png +0 -0
  1108. package/public/assets/generated/eyes/nouns-glasses/frame_07.png +0 -0
  1109. package/public/assets/generated/eyes/nouns-glasses/frame_08.png +0 -0
  1110. package/public/assets/generated/eyes/nouns-glasses/frame_09.png +0 -0
  1111. package/public/assets/generated/eyes/nouns-glasses/frame_10.png +0 -0
  1112. package/public/assets/generated/eyes/nouns-glasses/frame_11.png +0 -0
  1113. package/public/assets/generated/eyes/nouns-glasses/frame_12.png +0 -0
  1114. package/public/assets/generated/eyes/nouns-glasses/frame_13.png +0 -0
  1115. package/public/assets/generated/eyes/nouns-glasses/frame_14.png +0 -0
  1116. package/public/assets/generated/eyes/nouns-glasses/frame_15.png +0 -0
  1117. package/public/assets/generated/eyes/regular/frame_00.png +0 -0
  1118. package/public/assets/generated/eyes/regular/frame_01.png +0 -0
  1119. package/public/assets/generated/eyes/regular/frame_02.png +0 -0
  1120. package/public/assets/generated/eyes/regular/frame_03.png +0 -0
  1121. package/public/assets/generated/eyes/regular/frame_04.png +0 -0
  1122. package/public/assets/generated/eyes/regular/frame_05.png +0 -0
  1123. package/public/assets/generated/eyes/regular/frame_06.png +0 -0
  1124. package/public/assets/generated/eyes/regular/frame_07.png +0 -0
  1125. package/public/assets/generated/eyes/regular/frame_08.png +0 -0
  1126. package/public/assets/generated/eyes/regular/frame_09.png +0 -0
  1127. package/public/assets/generated/eyes/regular/frame_10.png +0 -0
  1128. package/public/assets/generated/eyes/regular/frame_11.png +0 -0
  1129. package/public/assets/generated/eyes/regular/frame_12.png +0 -0
  1130. package/public/assets/generated/eyes/regular/frame_13.png +0 -0
  1131. package/public/assets/generated/eyes/regular/frame_14.png +0 -0
  1132. package/public/assets/generated/eyes/regular/frame_15.png +0 -0
  1133. package/public/assets/generated/eyes/sad/frame_00.png +0 -0
  1134. package/public/assets/generated/eyes/sad/frame_01.png +0 -0
  1135. package/public/assets/generated/eyes/sad/frame_02.png +0 -0
  1136. package/public/assets/generated/eyes/sad/frame_03.png +0 -0
  1137. package/public/assets/generated/eyes/sad/frame_04.png +0 -0
  1138. package/public/assets/generated/eyes/sad/frame_05.png +0 -0
  1139. package/public/assets/generated/eyes/sad/frame_06.png +0 -0
  1140. package/public/assets/generated/eyes/sad/frame_07.png +0 -0
  1141. package/public/assets/generated/eyes/sad/frame_08.png +0 -0
  1142. package/public/assets/generated/eyes/sad/frame_09.png +0 -0
  1143. package/public/assets/generated/eyes/sad/frame_10.png +0 -0
  1144. package/public/assets/generated/eyes/sad/frame_11.png +0 -0
  1145. package/public/assets/generated/eyes/sad/frame_12.png +0 -0
  1146. package/public/assets/generated/eyes/sad/frame_13.png +0 -0
  1147. package/public/assets/generated/eyes/sad/frame_14.png +0 -0
  1148. package/public/assets/generated/eyes/sad/frame_15.png +0 -0
  1149. package/public/assets/generated/eyes/scar/frame_00.png +0 -0
  1150. package/public/assets/generated/eyes/scar/frame_01.png +0 -0
  1151. package/public/assets/generated/eyes/scar/frame_02.png +0 -0
  1152. package/public/assets/generated/eyes/scar/frame_03.png +0 -0
  1153. package/public/assets/generated/eyes/scar/frame_04.png +0 -0
  1154. package/public/assets/generated/eyes/scar/frame_05.png +0 -0
  1155. package/public/assets/generated/eyes/scar/frame_06.png +0 -0
  1156. package/public/assets/generated/eyes/scar/frame_07.png +0 -0
  1157. package/public/assets/generated/eyes/scar/frame_08.png +0 -0
  1158. package/public/assets/generated/eyes/scar/frame_09.png +0 -0
  1159. package/public/assets/generated/eyes/scar/frame_10.png +0 -0
  1160. package/public/assets/generated/eyes/scar/frame_11.png +0 -0
  1161. package/public/assets/generated/eyes/scar/frame_12.png +0 -0
  1162. package/public/assets/generated/eyes/scar/frame_13.png +0 -0
  1163. package/public/assets/generated/eyes/scar/frame_14.png +0 -0
  1164. package/public/assets/generated/eyes/scar/frame_15.png +0 -0
  1165. package/public/assets/generated/eyes/shy/frame_00.png +0 -0
  1166. package/public/assets/generated/eyes/shy/frame_01.png +0 -0
  1167. package/public/assets/generated/eyes/shy/frame_02.png +0 -0
  1168. package/public/assets/generated/eyes/shy/frame_03.png +0 -0
  1169. package/public/assets/generated/eyes/shy/frame_04.png +0 -0
  1170. package/public/assets/generated/eyes/shy/frame_05.png +0 -0
  1171. package/public/assets/generated/eyes/shy/frame_06.png +0 -0
  1172. package/public/assets/generated/eyes/shy/frame_07.png +0 -0
  1173. package/public/assets/generated/eyes/shy/frame_08.png +0 -0
  1174. package/public/assets/generated/eyes/shy/frame_09.png +0 -0
  1175. package/public/assets/generated/eyes/shy/frame_10.png +0 -0
  1176. package/public/assets/generated/eyes/shy/frame_11.png +0 -0
  1177. package/public/assets/generated/eyes/shy/frame_12.png +0 -0
  1178. package/public/assets/generated/eyes/shy/frame_13.png +0 -0
  1179. package/public/assets/generated/eyes/shy/frame_14.png +0 -0
  1180. package/public/assets/generated/eyes/shy/frame_15.png +0 -0
  1181. package/public/assets/generated/eyes/sleeping/frame_00.png +0 -0
  1182. package/public/assets/generated/eyes/sleeping/frame_01.png +0 -0
  1183. package/public/assets/generated/eyes/sleeping/frame_02.png +0 -0
  1184. package/public/assets/generated/eyes/sleeping/frame_03.png +0 -0
  1185. package/public/assets/generated/eyes/sleeping/frame_04.png +0 -0
  1186. package/public/assets/generated/eyes/sleeping/frame_05.png +0 -0
  1187. package/public/assets/generated/eyes/sleeping/frame_06.png +0 -0
  1188. package/public/assets/generated/eyes/sleeping/frame_07.png +0 -0
  1189. package/public/assets/generated/eyes/sleeping/frame_08.png +0 -0
  1190. package/public/assets/generated/eyes/sleeping/frame_09.png +0 -0
  1191. package/public/assets/generated/eyes/sleeping/frame_10.png +0 -0
  1192. package/public/assets/generated/eyes/sleeping/frame_11.png +0 -0
  1193. package/public/assets/generated/eyes/sleeping/frame_12.png +0 -0
  1194. package/public/assets/generated/eyes/sleeping/frame_13.png +0 -0
  1195. package/public/assets/generated/eyes/sleeping/frame_14.png +0 -0
  1196. package/public/assets/generated/eyes/sleeping/frame_15.png +0 -0
  1197. package/public/assets/generated/eyes/smart/frame_00.png +0 -0
  1198. package/public/assets/generated/eyes/smart/frame_01.png +0 -0
  1199. package/public/assets/generated/eyes/smart/frame_02.png +0 -0
  1200. package/public/assets/generated/eyes/smart/frame_03.png +0 -0
  1201. package/public/assets/generated/eyes/smart/frame_04.png +0 -0
  1202. package/public/assets/generated/eyes/smart/frame_05.png +0 -0
  1203. package/public/assets/generated/eyes/smart/frame_06.png +0 -0
  1204. package/public/assets/generated/eyes/smart/frame_07.png +0 -0
  1205. package/public/assets/generated/eyes/smart/frame_08.png +0 -0
  1206. package/public/assets/generated/eyes/smart/frame_09.png +0 -0
  1207. package/public/assets/generated/eyes/smart/frame_10.png +0 -0
  1208. package/public/assets/generated/eyes/smart/frame_11.png +0 -0
  1209. package/public/assets/generated/eyes/smart/frame_12.png +0 -0
  1210. package/public/assets/generated/eyes/smart/frame_13.png +0 -0
  1211. package/public/assets/generated/eyes/smart/frame_14.png +0 -0
  1212. package/public/assets/generated/eyes/smart/frame_15.png +0 -0
  1213. package/public/assets/generated/eyes/spy-glass/frame_00.png +0 -0
  1214. package/public/assets/generated/eyes/spy-glass/frame_01.png +0 -0
  1215. package/public/assets/generated/eyes/spy-glass/frame_02.png +0 -0
  1216. package/public/assets/generated/eyes/spy-glass/frame_03.png +0 -0
  1217. package/public/assets/generated/eyes/spy-glass/frame_04.png +0 -0
  1218. package/public/assets/generated/eyes/spy-glass/frame_05.png +0 -0
  1219. package/public/assets/generated/eyes/spy-glass/frame_06.png +0 -0
  1220. package/public/assets/generated/eyes/spy-glass/frame_07.png +0 -0
  1221. package/public/assets/generated/eyes/spy-glass/frame_08.png +0 -0
  1222. package/public/assets/generated/eyes/spy-glass/frame_09.png +0 -0
  1223. package/public/assets/generated/eyes/spy-glass/frame_10.png +0 -0
  1224. package/public/assets/generated/eyes/spy-glass/frame_11.png +0 -0
  1225. package/public/assets/generated/eyes/spy-glass/frame_12.png +0 -0
  1226. package/public/assets/generated/eyes/spy-glass/frame_13.png +0 -0
  1227. package/public/assets/generated/eyes/spy-glass/frame_14.png +0 -0
  1228. package/public/assets/generated/eyes/spy-glass/frame_15.png +0 -0
  1229. package/public/assets/generated/eyes/squint/frame_00.png +0 -0
  1230. package/public/assets/generated/eyes/squint/frame_01.png +0 -0
  1231. package/public/assets/generated/eyes/squint/frame_02.png +0 -0
  1232. package/public/assets/generated/eyes/squint/frame_03.png +0 -0
  1233. package/public/assets/generated/eyes/squint/frame_04.png +0 -0
  1234. package/public/assets/generated/eyes/squint/frame_05.png +0 -0
  1235. package/public/assets/generated/eyes/squint/frame_06.png +0 -0
  1236. package/public/assets/generated/eyes/squint/frame_07.png +0 -0
  1237. package/public/assets/generated/eyes/squint/frame_08.png +0 -0
  1238. package/public/assets/generated/eyes/squint/frame_09.png +0 -0
  1239. package/public/assets/generated/eyes/squint/frame_10.png +0 -0
  1240. package/public/assets/generated/eyes/squint/frame_11.png +0 -0
  1241. package/public/assets/generated/eyes/squint/frame_12.png +0 -0
  1242. package/public/assets/generated/eyes/squint/frame_13.png +0 -0
  1243. package/public/assets/generated/eyes/squint/frame_14.png +0 -0
  1244. package/public/assets/generated/eyes/squint/frame_15.png +0 -0
  1245. package/public/assets/generated/eyes/tri-eyes/frame_00.png +0 -0
  1246. package/public/assets/generated/eyes/tri-eyes/frame_01.png +0 -0
  1247. package/public/assets/generated/eyes/tri-eyes/frame_02.png +0 -0
  1248. package/public/assets/generated/eyes/tri-eyes/frame_03.png +0 -0
  1249. package/public/assets/generated/eyes/tri-eyes/frame_04.png +0 -0
  1250. package/public/assets/generated/eyes/tri-eyes/frame_05.png +0 -0
  1251. package/public/assets/generated/eyes/tri-eyes/frame_06.png +0 -0
  1252. package/public/assets/generated/eyes/tri-eyes/frame_07.png +0 -0
  1253. package/public/assets/generated/eyes/tri-eyes/frame_08.png +0 -0
  1254. package/public/assets/generated/eyes/tri-eyes/frame_09.png +0 -0
  1255. package/public/assets/generated/eyes/tri-eyes/frame_10.png +0 -0
  1256. package/public/assets/generated/eyes/tri-eyes/frame_11.png +0 -0
  1257. package/public/assets/generated/eyes/tri-eyes/frame_12.png +0 -0
  1258. package/public/assets/generated/eyes/tri-eyes/frame_13.png +0 -0
  1259. package/public/assets/generated/eyes/tri-eyes/frame_14.png +0 -0
  1260. package/public/assets/generated/eyes/tri-eyes/frame_15.png +0 -0
  1261. package/public/assets/generated/eyes/vr-goggles/frame_00.png +0 -0
  1262. package/public/assets/generated/eyes/vr-goggles/frame_01.png +0 -0
  1263. package/public/assets/generated/eyes/vr-goggles/frame_02.png +0 -0
  1264. package/public/assets/generated/eyes/vr-goggles/frame_03.png +0 -0
  1265. package/public/assets/generated/eyes/vr-goggles/frame_04.png +0 -0
  1266. package/public/assets/generated/eyes/vr-goggles/frame_05.png +0 -0
  1267. package/public/assets/generated/eyes/vr-goggles/frame_06.png +0 -0
  1268. package/public/assets/generated/eyes/vr-goggles/frame_07.png +0 -0
  1269. package/public/assets/generated/eyes/vr-goggles/frame_08.png +0 -0
  1270. package/public/assets/generated/eyes/vr-goggles/frame_09.png +0 -0
  1271. package/public/assets/generated/eyes/vr-goggles/frame_10.png +0 -0
  1272. package/public/assets/generated/eyes/vr-goggles/frame_11.png +0 -0
  1273. package/public/assets/generated/eyes/vr-goggles/frame_12.png +0 -0
  1274. package/public/assets/generated/eyes/vr-goggles/frame_13.png +0 -0
  1275. package/public/assets/generated/eyes/vr-goggles/frame_14.png +0 -0
  1276. package/public/assets/generated/eyes/vr-goggles/frame_15.png +0 -0
  1277. package/public/assets/generated/eyes/white-shades/frame_00.png +0 -0
  1278. package/public/assets/generated/eyes/white-shades/frame_01.png +0 -0
  1279. package/public/assets/generated/eyes/white-shades/frame_02.png +0 -0
  1280. package/public/assets/generated/eyes/white-shades/frame_03.png +0 -0
  1281. package/public/assets/generated/eyes/white-shades/frame_04.png +0 -0
  1282. package/public/assets/generated/eyes/white-shades/frame_05.png +0 -0
  1283. package/public/assets/generated/eyes/white-shades/frame_06.png +0 -0
  1284. package/public/assets/generated/eyes/white-shades/frame_07.png +0 -0
  1285. package/public/assets/generated/eyes/white-shades/frame_08.png +0 -0
  1286. package/public/assets/generated/eyes/white-shades/frame_09.png +0 -0
  1287. package/public/assets/generated/eyes/white-shades/frame_10.png +0 -0
  1288. package/public/assets/generated/eyes/white-shades/frame_11.png +0 -0
  1289. package/public/assets/generated/eyes/white-shades/frame_12.png +0 -0
  1290. package/public/assets/generated/eyes/white-shades/frame_13.png +0 -0
  1291. package/public/assets/generated/eyes/white-shades/frame_14.png +0 -0
  1292. package/public/assets/generated/eyes/white-shades/frame_15.png +0 -0
  1293. package/public/assets/generated/eyes/wide-eyes/frame_00.png +0 -0
  1294. package/public/assets/generated/eyes/wide-eyes/frame_01.png +0 -0
  1295. package/public/assets/generated/eyes/wide-eyes/frame_02.png +0 -0
  1296. package/public/assets/generated/eyes/wide-eyes/frame_03.png +0 -0
  1297. package/public/assets/generated/eyes/wide-eyes/frame_04.png +0 -0
  1298. package/public/assets/generated/eyes/wide-eyes/frame_05.png +0 -0
  1299. package/public/assets/generated/eyes/wide-eyes/frame_06.png +0 -0
  1300. package/public/assets/generated/eyes/wide-eyes/frame_07.png +0 -0
  1301. package/public/assets/generated/eyes/wide-eyes/frame_08.png +0 -0
  1302. package/public/assets/generated/eyes/wide-eyes/frame_09.png +0 -0
  1303. package/public/assets/generated/eyes/wide-eyes/frame_10.png +0 -0
  1304. package/public/assets/generated/eyes/wide-eyes/frame_11.png +0 -0
  1305. package/public/assets/generated/eyes/wide-eyes/frame_12.png +0 -0
  1306. package/public/assets/generated/eyes/wide-eyes/frame_13.png +0 -0
  1307. package/public/assets/generated/eyes/wide-eyes/frame_14.png +0 -0
  1308. package/public/assets/generated/eyes/wide-eyes/frame_15.png +0 -0
  1309. package/public/assets/generated/eyes/worried/frame_00.png +0 -0
  1310. package/public/assets/generated/eyes/worried/frame_01.png +0 -0
  1311. package/public/assets/generated/eyes/worried/frame_02.png +0 -0
  1312. package/public/assets/generated/eyes/worried/frame_03.png +0 -0
  1313. package/public/assets/generated/eyes/worried/frame_04.png +0 -0
  1314. package/public/assets/generated/eyes/worried/frame_05.png +0 -0
  1315. package/public/assets/generated/eyes/worried/frame_06.png +0 -0
  1316. package/public/assets/generated/eyes/worried/frame_07.png +0 -0
  1317. package/public/assets/generated/eyes/worried/frame_08.png +0 -0
  1318. package/public/assets/generated/eyes/worried/frame_09.png +0 -0
  1319. package/public/assets/generated/eyes/worried/frame_10.png +0 -0
  1320. package/public/assets/generated/eyes/worried/frame_11.png +0 -0
  1321. package/public/assets/generated/eyes/worried/frame_12.png +0 -0
  1322. package/public/assets/generated/eyes/worried/frame_13.png +0 -0
  1323. package/public/assets/generated/eyes/worried/frame_14.png +0 -0
  1324. package/public/assets/generated/eyes/worried/frame_15.png +0 -0
  1325. package/public/assets/generated/eyes/x/frame_00.png +0 -0
  1326. package/public/assets/generated/eyes/x/frame_01.png +0 -0
  1327. package/public/assets/generated/eyes/x/frame_02.png +0 -0
  1328. package/public/assets/generated/eyes/x/frame_03.png +0 -0
  1329. package/public/assets/generated/eyes/x/frame_04.png +0 -0
  1330. package/public/assets/generated/eyes/x/frame_05.png +0 -0
  1331. package/public/assets/generated/eyes/x/frame_06.png +0 -0
  1332. package/public/assets/generated/eyes/x/frame_07.png +0 -0
  1333. package/public/assets/generated/eyes/x/frame_08.png +0 -0
  1334. package/public/assets/generated/eyes/x/frame_09.png +0 -0
  1335. package/public/assets/generated/eyes/x/frame_10.png +0 -0
  1336. package/public/assets/generated/eyes/x/frame_11.png +0 -0
  1337. package/public/assets/generated/eyes/x/frame_12.png +0 -0
  1338. package/public/assets/generated/eyes/x/frame_13.png +0 -0
  1339. package/public/assets/generated/eyes/x/frame_14.png +0 -0
  1340. package/public/assets/generated/eyes/x/frame_15.png +0 -0
  1341. package/public/assets/generated/gems/blue/frame_00.png +0 -0
  1342. package/public/assets/generated/gems/blue/frame_01.png +0 -0
  1343. package/public/assets/generated/gems/blue/frame_02.png +0 -0
  1344. package/public/assets/generated/gems/blue/frame_03.png +0 -0
  1345. package/public/assets/generated/gems/blue/frame_04.png +0 -0
  1346. package/public/assets/generated/gems/blue/frame_05.png +0 -0
  1347. package/public/assets/generated/gems/blue/frame_06.png +0 -0
  1348. package/public/assets/generated/gems/blue/frame_07.png +0 -0
  1349. package/public/assets/generated/gems/blue/frame_08.png +0 -0
  1350. package/public/assets/generated/gems/green/frame_00.png +0 -0
  1351. package/public/assets/generated/gems/green/frame_01.png +0 -0
  1352. package/public/assets/generated/gems/green/frame_02.png +0 -0
  1353. package/public/assets/generated/gems/green/frame_03.png +0 -0
  1354. package/public/assets/generated/gems/green/frame_04.png +0 -0
  1355. package/public/assets/generated/gems/green/frame_05.png +0 -0
  1356. package/public/assets/generated/gems/green/frame_06.png +0 -0
  1357. package/public/assets/generated/gems/green/frame_07.png +0 -0
  1358. package/public/assets/generated/gems/green/frame_08.png +0 -0
  1359. package/public/assets/generated/gems/pink/frame_00.png +0 -0
  1360. package/public/assets/generated/gems/pink/frame_01.png +0 -0
  1361. package/public/assets/generated/gems/pink/frame_02.png +0 -0
  1362. package/public/assets/generated/gems/pink/frame_03.png +0 -0
  1363. package/public/assets/generated/gems/pink/frame_04.png +0 -0
  1364. package/public/assets/generated/gems/pink/frame_05.png +0 -0
  1365. package/public/assets/generated/gems/pink/frame_06.png +0 -0
  1366. package/public/assets/generated/gems/pink/frame_07.png +0 -0
  1367. package/public/assets/generated/gems/pink/frame_08.png +0 -0
  1368. package/public/assets/generated/gems/silver/frame_00.png +0 -0
  1369. package/public/assets/generated/gems/silver/frame_01.png +0 -0
  1370. package/public/assets/generated/gems/silver/frame_02.png +0 -0
  1371. package/public/assets/generated/gems/silver/frame_03.png +0 -0
  1372. package/public/assets/generated/gems/silver/frame_04.png +0 -0
  1373. package/public/assets/generated/gems/silver/frame_05.png +0 -0
  1374. package/public/assets/generated/gems/silver/frame_06.png +0 -0
  1375. package/public/assets/generated/gems/silver/frame_07.png +0 -0
  1376. package/public/assets/generated/gems/silver/frame_08.png +0 -0
  1377. package/public/assets/generated/gems/yellow/frame_00.png +0 -0
  1378. package/public/assets/generated/gems/yellow/frame_01.png +0 -0
  1379. package/public/assets/generated/gems/yellow/frame_02.png +0 -0
  1380. package/public/assets/generated/gems/yellow/frame_03.png +0 -0
  1381. package/public/assets/generated/gems/yellow/frame_04.png +0 -0
  1382. package/public/assets/generated/gems/yellow/frame_05.png +0 -0
  1383. package/public/assets/generated/gems/yellow/frame_06.png +0 -0
  1384. package/public/assets/generated/gems/yellow/frame_07.png +0 -0
  1385. package/public/assets/generated/gems/yellow/frame_08.png +0 -0
  1386. package/public/assets/generated/halloween-bodies/holloween1/frame_00.png +0 -0
  1387. package/public/assets/generated/halloween-bodies/holloween1/frame_01.png +0 -0
  1388. package/public/assets/generated/halloween-bodies/holloween1/frame_02.png +0 -0
  1389. package/public/assets/generated/halloween-bodies/holloween1/frame_03.png +0 -0
  1390. package/public/assets/generated/halloween-bodies/holloween1/frame_04.png +0 -0
  1391. package/public/assets/generated/halloween-bodies/holloween1/frame_05.png +0 -0
  1392. package/public/assets/generated/halloween-bodies/holloween1/frame_06.png +0 -0
  1393. package/public/assets/generated/halloween-bodies/holloween1/frame_07.png +0 -0
  1394. package/public/assets/generated/halloween-bodies/holloween2/frame_00.png +0 -0
  1395. package/public/assets/generated/halloween-bodies/holloween2/frame_01.png +0 -0
  1396. package/public/assets/generated/halloween-bodies/holloween2/frame_02.png +0 -0
  1397. package/public/assets/generated/halloween-bodies/holloween2/frame_03.png +0 -0
  1398. package/public/assets/generated/halloween-bodies/holloween2/frame_04.png +0 -0
  1399. package/public/assets/generated/halloween-bodies/holloween2/frame_05.png +0 -0
  1400. package/public/assets/generated/halloween-bodies/holloween2/frame_06.png +0 -0
  1401. package/public/assets/generated/halloween-bodies/holloween2/frame_07.png +0 -0
  1402. package/public/assets/generated/halloween-bodies/holloween3/frame_00.png +0 -0
  1403. package/public/assets/generated/halloween-bodies/holloween3/frame_01.png +0 -0
  1404. package/public/assets/generated/halloween-bodies/holloween3/frame_02.png +0 -0
  1405. package/public/assets/generated/halloween-bodies/holloween3/frame_03.png +0 -0
  1406. package/public/assets/generated/halloween-bodies/holloween3/frame_04.png +0 -0
  1407. package/public/assets/generated/halloween-bodies/holloween3/frame_05.png +0 -0
  1408. package/public/assets/generated/halloween-bodies/holloween3/frame_06.png +0 -0
  1409. package/public/assets/generated/halloween-bodies/holloween3/frame_07.png +0 -0
  1410. package/public/assets/generated/halloween-bodies/holloween4/frame_00.png +0 -0
  1411. package/public/assets/generated/halloween-bodies/holloween4/frame_01.png +0 -0
  1412. package/public/assets/generated/halloween-bodies/holloween4/frame_02.png +0 -0
  1413. package/public/assets/generated/halloween-bodies/holloween4/frame_03.png +0 -0
  1414. package/public/assets/generated/halloween-bodies/holloween4/frame_04.png +0 -0
  1415. package/public/assets/generated/halloween-bodies/holloween4/frame_05.png +0 -0
  1416. package/public/assets/generated/halloween-bodies/holloween4/frame_06.png +0 -0
  1417. package/public/assets/generated/halloween-bodies/holloween4/frame_07.png +0 -0
  1418. package/public/assets/generated/halloween-body-spins/halloween-holloween1/frame_00.png +0 -0
  1419. package/public/assets/generated/halloween-body-spins/halloween-holloween2/frame_00.png +0 -0
  1420. package/public/assets/generated/halloween-body-spins/halloween-holloween3/frame_00.png +0 -0
  1421. package/public/assets/generated/halloween-body-spins/halloween-holloween4/frame_00.png +0 -0
  1422. package/public/assets/generated/hats/admral-hat/frame_00.png +0 -0
  1423. package/public/assets/generated/hats/admral-hat/frame_01.png +0 -0
  1424. package/public/assets/generated/hats/admral-hat/frame_02.png +0 -0
  1425. package/public/assets/generated/hats/admral-hat/frame_03.png +0 -0
  1426. package/public/assets/generated/hats/admral-hat/frame_04.png +0 -0
  1427. package/public/assets/generated/hats/admral-hat/frame_05.png +0 -0
  1428. package/public/assets/generated/hats/admral-hat/frame_06.png +0 -0
  1429. package/public/assets/generated/hats/admral-hat/frame_07.png +0 -0
  1430. package/public/assets/generated/hats/admral-hat/frame_08.png +0 -0
  1431. package/public/assets/generated/hats/admral-hat/frame_09.png +0 -0
  1432. package/public/assets/generated/hats/admral-hat/frame_10.png +0 -0
  1433. package/public/assets/generated/hats/admral-hat/frame_11.png +0 -0
  1434. package/public/assets/generated/hats/admral-hat/frame_12.png +0 -0
  1435. package/public/assets/generated/hats/admral-hat/frame_13.png +0 -0
  1436. package/public/assets/generated/hats/admral-hat/frame_14.png +0 -0
  1437. package/public/assets/generated/hats/admral-hat/frame_15.png +0 -0
  1438. package/public/assets/generated/hats/alien-antenna/frame_00.png +0 -0
  1439. package/public/assets/generated/hats/alien-antenna/frame_01.png +0 -0
  1440. package/public/assets/generated/hats/alien-antenna/frame_02.png +0 -0
  1441. package/public/assets/generated/hats/alien-antenna/frame_03.png +0 -0
  1442. package/public/assets/generated/hats/alien-antenna/frame_04.png +0 -0
  1443. package/public/assets/generated/hats/alien-antenna/frame_05.png +0 -0
  1444. package/public/assets/generated/hats/alien-antenna/frame_06.png +0 -0
  1445. package/public/assets/generated/hats/alien-antenna/frame_07.png +0 -0
  1446. package/public/assets/generated/hats/alien-antenna/frame_08.png +0 -0
  1447. package/public/assets/generated/hats/alien-antenna/frame_09.png +0 -0
  1448. package/public/assets/generated/hats/alien-antenna/frame_10.png +0 -0
  1449. package/public/assets/generated/hats/alien-antenna/frame_11.png +0 -0
  1450. package/public/assets/generated/hats/alien-antenna/frame_12.png +0 -0
  1451. package/public/assets/generated/hats/alien-antenna/frame_13.png +0 -0
  1452. package/public/assets/generated/hats/alien-antenna/frame_14.png +0 -0
  1453. package/public/assets/generated/hats/alien-antenna/frame_15.png +0 -0
  1454. package/public/assets/generated/hats/arrow-hat/frame_00.png +0 -0
  1455. package/public/assets/generated/hats/arrow-hat/frame_01.png +0 -0
  1456. package/public/assets/generated/hats/arrow-hat/frame_02.png +0 -0
  1457. package/public/assets/generated/hats/arrow-hat/frame_03.png +0 -0
  1458. package/public/assets/generated/hats/arrow-hat/frame_04.png +0 -0
  1459. package/public/assets/generated/hats/arrow-hat/frame_05.png +0 -0
  1460. package/public/assets/generated/hats/arrow-hat/frame_06.png +0 -0
  1461. package/public/assets/generated/hats/arrow-hat/frame_07.png +0 -0
  1462. package/public/assets/generated/hats/arrow-hat/frame_08.png +0 -0
  1463. package/public/assets/generated/hats/arrow-hat/frame_09.png +0 -0
  1464. package/public/assets/generated/hats/arrow-hat/frame_10.png +0 -0
  1465. package/public/assets/generated/hats/arrow-hat/frame_11.png +0 -0
  1466. package/public/assets/generated/hats/arrow-hat/frame_12.png +0 -0
  1467. package/public/assets/generated/hats/arrow-hat/frame_13.png +0 -0
  1468. package/public/assets/generated/hats/arrow-hat/frame_14.png +0 -0
  1469. package/public/assets/generated/hats/arrow-hat/frame_15.png +0 -0
  1470. package/public/assets/generated/hats/backwards-hat/frame_00.png +0 -0
  1471. package/public/assets/generated/hats/backwards-hat/frame_01.png +0 -0
  1472. package/public/assets/generated/hats/backwards-hat/frame_02.png +0 -0
  1473. package/public/assets/generated/hats/backwards-hat/frame_03.png +0 -0
  1474. package/public/assets/generated/hats/backwards-hat/frame_04.png +0 -0
  1475. package/public/assets/generated/hats/backwards-hat/frame_05.png +0 -0
  1476. package/public/assets/generated/hats/backwards-hat/frame_06.png +0 -0
  1477. package/public/assets/generated/hats/backwards-hat/frame_07.png +0 -0
  1478. package/public/assets/generated/hats/backwards-hat/frame_08.png +0 -0
  1479. package/public/assets/generated/hats/backwards-hat/frame_09.png +0 -0
  1480. package/public/assets/generated/hats/backwards-hat/frame_10.png +0 -0
  1481. package/public/assets/generated/hats/backwards-hat/frame_11.png +0 -0
  1482. package/public/assets/generated/hats/backwards-hat/frame_12.png +0 -0
  1483. package/public/assets/generated/hats/backwards-hat/frame_13.png +0 -0
  1484. package/public/assets/generated/hats/backwards-hat/frame_14.png +0 -0
  1485. package/public/assets/generated/hats/backwards-hat/frame_15.png +0 -0
  1486. package/public/assets/generated/hats/banana/frame_00.png +0 -0
  1487. package/public/assets/generated/hats/banana/frame_01.png +0 -0
  1488. package/public/assets/generated/hats/banana/frame_02.png +0 -0
  1489. package/public/assets/generated/hats/banana/frame_03.png +0 -0
  1490. package/public/assets/generated/hats/banana/frame_04.png +0 -0
  1491. package/public/assets/generated/hats/banana/frame_05.png +0 -0
  1492. package/public/assets/generated/hats/banana/frame_06.png +0 -0
  1493. package/public/assets/generated/hats/banana/frame_07.png +0 -0
  1494. package/public/assets/generated/hats/banana/frame_08.png +0 -0
  1495. package/public/assets/generated/hats/banana/frame_09.png +0 -0
  1496. package/public/assets/generated/hats/banana/frame_10.png +0 -0
  1497. package/public/assets/generated/hats/banana/frame_11.png +0 -0
  1498. package/public/assets/generated/hats/banana/frame_12.png +0 -0
  1499. package/public/assets/generated/hats/banana/frame_13.png +0 -0
  1500. package/public/assets/generated/hats/banana/frame_14.png +0 -0
  1501. package/public/assets/generated/hats/banana/frame_15.png +0 -0
  1502. package/public/assets/generated/hats/bandit-mask/frame_00.png +0 -0
  1503. package/public/assets/generated/hats/bandit-mask/frame_01.png +0 -0
  1504. package/public/assets/generated/hats/bandit-mask/frame_02.png +0 -0
  1505. package/public/assets/generated/hats/bandit-mask/frame_03.png +0 -0
  1506. package/public/assets/generated/hats/bandit-mask/frame_04.png +0 -0
  1507. package/public/assets/generated/hats/bandit-mask/frame_05.png +0 -0
  1508. package/public/assets/generated/hats/bandit-mask/frame_06.png +0 -0
  1509. package/public/assets/generated/hats/bandit-mask/frame_07.png +0 -0
  1510. package/public/assets/generated/hats/bandit-mask/frame_08.png +0 -0
  1511. package/public/assets/generated/hats/bandit-mask/frame_09.png +0 -0
  1512. package/public/assets/generated/hats/bandit-mask/frame_10.png +0 -0
  1513. package/public/assets/generated/hats/bandit-mask/frame_11.png +0 -0
  1514. package/public/assets/generated/hats/bandit-mask/frame_12.png +0 -0
  1515. package/public/assets/generated/hats/bandit-mask/frame_13.png +0 -0
  1516. package/public/assets/generated/hats/bandit-mask/frame_14.png +0 -0
  1517. package/public/assets/generated/hats/bandit-mask/frame_15.png +0 -0
  1518. package/public/assets/generated/hats/beer-cap/frame_00.png +0 -0
  1519. package/public/assets/generated/hats/beer-cap/frame_01.png +0 -0
  1520. package/public/assets/generated/hats/beer-cap/frame_02.png +0 -0
  1521. package/public/assets/generated/hats/beer-cap/frame_03.png +0 -0
  1522. package/public/assets/generated/hats/beer-cap/frame_04.png +0 -0
  1523. package/public/assets/generated/hats/beer-cap/frame_05.png +0 -0
  1524. package/public/assets/generated/hats/beer-cap/frame_06.png +0 -0
  1525. package/public/assets/generated/hats/beer-cap/frame_07.png +0 -0
  1526. package/public/assets/generated/hats/beer-cap/frame_08.png +0 -0
  1527. package/public/assets/generated/hats/beer-cap/frame_09.png +0 -0
  1528. package/public/assets/generated/hats/beer-cap/frame_10.png +0 -0
  1529. package/public/assets/generated/hats/beer-cap/frame_11.png +0 -0
  1530. package/public/assets/generated/hats/beer-cap/frame_12.png +0 -0
  1531. package/public/assets/generated/hats/beer-cap/frame_13.png +0 -0
  1532. package/public/assets/generated/hats/beer-cap/frame_14.png +0 -0
  1533. package/public/assets/generated/hats/beer-cap/frame_15.png +0 -0
  1534. package/public/assets/generated/hats/binary-tiara/frame_00.png +0 -0
  1535. package/public/assets/generated/hats/binary-tiara/frame_01.png +0 -0
  1536. package/public/assets/generated/hats/binary-tiara/frame_02.png +0 -0
  1537. package/public/assets/generated/hats/binary-tiara/frame_03.png +0 -0
  1538. package/public/assets/generated/hats/binary-tiara/frame_04.png +0 -0
  1539. package/public/assets/generated/hats/binary-tiara/frame_05.png +0 -0
  1540. package/public/assets/generated/hats/binary-tiara/frame_06.png +0 -0
  1541. package/public/assets/generated/hats/binary-tiara/frame_07.png +0 -0
  1542. package/public/assets/generated/hats/binary-tiara/frame_08.png +0 -0
  1543. package/public/assets/generated/hats/binary-tiara/frame_09.png +0 -0
  1544. package/public/assets/generated/hats/binary-tiara/frame_10.png +0 -0
  1545. package/public/assets/generated/hats/binary-tiara/frame_11.png +0 -0
  1546. package/public/assets/generated/hats/binary-tiara/frame_12.png +0 -0
  1547. package/public/assets/generated/hats/binary-tiara/frame_13.png +0 -0
  1548. package/public/assets/generated/hats/binary-tiara/frame_14.png +0 -0
  1549. package/public/assets/generated/hats/binary-tiara/frame_15.png +0 -0
  1550. package/public/assets/generated/hats/black-bandana/frame_00.png +0 -0
  1551. package/public/assets/generated/hats/black-bandana/frame_01.png +0 -0
  1552. package/public/assets/generated/hats/black-bandana/frame_02.png +0 -0
  1553. package/public/assets/generated/hats/black-bandana/frame_03.png +0 -0
  1554. package/public/assets/generated/hats/black-bandana/frame_04.png +0 -0
  1555. package/public/assets/generated/hats/black-bandana/frame_05.png +0 -0
  1556. package/public/assets/generated/hats/black-bandana/frame_06.png +0 -0
  1557. package/public/assets/generated/hats/black-bandana/frame_07.png +0 -0
  1558. package/public/assets/generated/hats/black-bandana/frame_08.png +0 -0
  1559. package/public/assets/generated/hats/black-bandana/frame_09.png +0 -0
  1560. package/public/assets/generated/hats/black-bandana/frame_10.png +0 -0
  1561. package/public/assets/generated/hats/black-bandana/frame_11.png +0 -0
  1562. package/public/assets/generated/hats/black-bandana/frame_12.png +0 -0
  1563. package/public/assets/generated/hats/black-bandana/frame_13.png +0 -0
  1564. package/public/assets/generated/hats/black-bandana/frame_14.png +0 -0
  1565. package/public/assets/generated/hats/black-bandana/frame_15.png +0 -0
  1566. package/public/assets/generated/hats/black-bucket-hat/frame_00.png +0 -0
  1567. package/public/assets/generated/hats/black-bucket-hat/frame_01.png +0 -0
  1568. package/public/assets/generated/hats/black-bucket-hat/frame_02.png +0 -0
  1569. package/public/assets/generated/hats/black-bucket-hat/frame_03.png +0 -0
  1570. package/public/assets/generated/hats/black-bucket-hat/frame_04.png +0 -0
  1571. package/public/assets/generated/hats/black-bucket-hat/frame_05.png +0 -0
  1572. package/public/assets/generated/hats/black-bucket-hat/frame_06.png +0 -0
  1573. package/public/assets/generated/hats/black-bucket-hat/frame_07.png +0 -0
  1574. package/public/assets/generated/hats/black-bucket-hat/frame_08.png +0 -0
  1575. package/public/assets/generated/hats/black-bucket-hat/frame_09.png +0 -0
  1576. package/public/assets/generated/hats/black-bucket-hat/frame_10.png +0 -0
  1577. package/public/assets/generated/hats/black-bucket-hat/frame_11.png +0 -0
  1578. package/public/assets/generated/hats/black-bucket-hat/frame_12.png +0 -0
  1579. package/public/assets/generated/hats/black-bucket-hat/frame_13.png +0 -0
  1580. package/public/assets/generated/hats/black-bucket-hat/frame_14.png +0 -0
  1581. package/public/assets/generated/hats/black-bucket-hat/frame_15.png +0 -0
  1582. package/public/assets/generated/hats/black-miner-hard-hat/frame_00.png +0 -0
  1583. package/public/assets/generated/hats/black-miner-hard-hat/frame_01.png +0 -0
  1584. package/public/assets/generated/hats/black-miner-hard-hat/frame_02.png +0 -0
  1585. package/public/assets/generated/hats/black-miner-hard-hat/frame_03.png +0 -0
  1586. package/public/assets/generated/hats/black-miner-hard-hat/frame_04.png +0 -0
  1587. package/public/assets/generated/hats/black-miner-hard-hat/frame_05.png +0 -0
  1588. package/public/assets/generated/hats/black-miner-hard-hat/frame_06.png +0 -0
  1589. package/public/assets/generated/hats/black-miner-hard-hat/frame_07.png +0 -0
  1590. package/public/assets/generated/hats/black-miner-hard-hat/frame_08.png +0 -0
  1591. package/public/assets/generated/hats/black-miner-hard-hat/frame_09.png +0 -0
  1592. package/public/assets/generated/hats/black-miner-hard-hat/frame_10.png +0 -0
  1593. package/public/assets/generated/hats/black-miner-hard-hat/frame_11.png +0 -0
  1594. package/public/assets/generated/hats/black-miner-hard-hat/frame_12.png +0 -0
  1595. package/public/assets/generated/hats/black-miner-hard-hat/frame_13.png +0 -0
  1596. package/public/assets/generated/hats/black-miner-hard-hat/frame_14.png +0 -0
  1597. package/public/assets/generated/hats/black-miner-hard-hat/frame_15.png +0 -0
  1598. package/public/assets/generated/hats/blond-anime-hair/frame_00.png +0 -0
  1599. package/public/assets/generated/hats/blond-anime-hair/frame_01.png +0 -0
  1600. package/public/assets/generated/hats/blond-anime-hair/frame_02.png +0 -0
  1601. package/public/assets/generated/hats/blond-anime-hair/frame_03.png +0 -0
  1602. package/public/assets/generated/hats/blond-anime-hair/frame_04.png +0 -0
  1603. package/public/assets/generated/hats/blond-anime-hair/frame_05.png +0 -0
  1604. package/public/assets/generated/hats/blond-anime-hair/frame_06.png +0 -0
  1605. package/public/assets/generated/hats/blond-anime-hair/frame_07.png +0 -0
  1606. package/public/assets/generated/hats/blond-anime-hair/frame_08.png +0 -0
  1607. package/public/assets/generated/hats/blond-anime-hair/frame_09.png +0 -0
  1608. package/public/assets/generated/hats/blond-anime-hair/frame_10.png +0 -0
  1609. package/public/assets/generated/hats/blond-anime-hair/frame_11.png +0 -0
  1610. package/public/assets/generated/hats/blond-anime-hair/frame_12.png +0 -0
  1611. package/public/assets/generated/hats/blond-anime-hair/frame_13.png +0 -0
  1612. package/public/assets/generated/hats/blond-anime-hair/frame_14.png +0 -0
  1613. package/public/assets/generated/hats/blond-anime-hair/frame_15.png +0 -0
  1614. package/public/assets/generated/hats/blue-bandana/frame_00.png +0 -0
  1615. package/public/assets/generated/hats/blue-bandana/frame_01.png +0 -0
  1616. package/public/assets/generated/hats/blue-bandana/frame_02.png +0 -0
  1617. package/public/assets/generated/hats/blue-bandana/frame_03.png +0 -0
  1618. package/public/assets/generated/hats/blue-bandana/frame_04.png +0 -0
  1619. package/public/assets/generated/hats/blue-bandana/frame_05.png +0 -0
  1620. package/public/assets/generated/hats/blue-bandana/frame_06.png +0 -0
  1621. package/public/assets/generated/hats/blue-bandana/frame_07.png +0 -0
  1622. package/public/assets/generated/hats/blue-bandana/frame_08.png +0 -0
  1623. package/public/assets/generated/hats/blue-bandana/frame_09.png +0 -0
  1624. package/public/assets/generated/hats/blue-bandana/frame_10.png +0 -0
  1625. package/public/assets/generated/hats/blue-bandana/frame_11.png +0 -0
  1626. package/public/assets/generated/hats/blue-bandana/frame_12.png +0 -0
  1627. package/public/assets/generated/hats/blue-bandana/frame_13.png +0 -0
  1628. package/public/assets/generated/hats/blue-bandana/frame_14.png +0 -0
  1629. package/public/assets/generated/hats/blue-bandana/frame_15.png +0 -0
  1630. package/public/assets/generated/hats/blue-lazer-eyes/frame_00.png +0 -0
  1631. package/public/assets/generated/hats/blue-lazer-eyes/frame_01.png +0 -0
  1632. package/public/assets/generated/hats/blue-lazer-eyes/frame_02.png +0 -0
  1633. package/public/assets/generated/hats/blue-lazer-eyes/frame_03.png +0 -0
  1634. package/public/assets/generated/hats/blue-lazer-eyes/frame_04.png +0 -0
  1635. package/public/assets/generated/hats/blue-lazer-eyes/frame_05.png +0 -0
  1636. package/public/assets/generated/hats/blue-lazer-eyes/frame_06.png +0 -0
  1637. package/public/assets/generated/hats/blue-lazer-eyes/frame_07.png +0 -0
  1638. package/public/assets/generated/hats/blue-lazer-eyes/frame_08.png +0 -0
  1639. package/public/assets/generated/hats/blue-lazer-eyes/frame_09.png +0 -0
  1640. package/public/assets/generated/hats/blue-lazer-eyes/frame_10.png +0 -0
  1641. package/public/assets/generated/hats/blue-lazer-eyes/frame_11.png +0 -0
  1642. package/public/assets/generated/hats/blue-lazer-eyes/frame_12.png +0 -0
  1643. package/public/assets/generated/hats/blue-lazer-eyes/frame_13.png +0 -0
  1644. package/public/assets/generated/hats/blue-lazer-eyes/frame_14.png +0 -0
  1645. package/public/assets/generated/hats/blue-lazer-eyes/frame_15.png +0 -0
  1646. package/public/assets/generated/hats/bonk/frame_00.png +0 -0
  1647. package/public/assets/generated/hats/bonk/frame_01.png +0 -0
  1648. package/public/assets/generated/hats/bonk/frame_02.png +0 -0
  1649. package/public/assets/generated/hats/bonk/frame_03.png +0 -0
  1650. package/public/assets/generated/hats/bonk/frame_04.png +0 -0
  1651. package/public/assets/generated/hats/bonk/frame_05.png +0 -0
  1652. package/public/assets/generated/hats/bonk/frame_06.png +0 -0
  1653. package/public/assets/generated/hats/bonk/frame_07.png +0 -0
  1654. package/public/assets/generated/hats/bonk/frame_08.png +0 -0
  1655. package/public/assets/generated/hats/bonk/frame_09.png +0 -0
  1656. package/public/assets/generated/hats/bonk/frame_10.png +0 -0
  1657. package/public/assets/generated/hats/bonk/frame_11.png +0 -0
  1658. package/public/assets/generated/hats/bonk/frame_12.png +0 -0
  1659. package/public/assets/generated/hats/bonk/frame_13.png +0 -0
  1660. package/public/assets/generated/hats/bonk/frame_14.png +0 -0
  1661. package/public/assets/generated/hats/bonk/frame_15.png +0 -0
  1662. package/public/assets/generated/hats/box-head/frame_00.png +0 -0
  1663. package/public/assets/generated/hats/box-head/frame_01.png +0 -0
  1664. package/public/assets/generated/hats/box-head/frame_02.png +0 -0
  1665. package/public/assets/generated/hats/box-head/frame_03.png +0 -0
  1666. package/public/assets/generated/hats/box-head/frame_04.png +0 -0
  1667. package/public/assets/generated/hats/box-head/frame_05.png +0 -0
  1668. package/public/assets/generated/hats/box-head/frame_06.png +0 -0
  1669. package/public/assets/generated/hats/box-head/frame_07.png +0 -0
  1670. package/public/assets/generated/hats/box-head/frame_08.png +0 -0
  1671. package/public/assets/generated/hats/box-head/frame_09.png +0 -0
  1672. package/public/assets/generated/hats/box-head/frame_10.png +0 -0
  1673. package/public/assets/generated/hats/box-head/frame_11.png +0 -0
  1674. package/public/assets/generated/hats/box-head/frame_12.png +0 -0
  1675. package/public/assets/generated/hats/box-head/frame_13.png +0 -0
  1676. package/public/assets/generated/hats/box-head/frame_14.png +0 -0
  1677. package/public/assets/generated/hats/box-head/frame_15.png +0 -0
  1678. package/public/assets/generated/hats/brown-bucket-hat/frame_00.png +0 -0
  1679. package/public/assets/generated/hats/brown-bucket-hat/frame_01.png +0 -0
  1680. package/public/assets/generated/hats/brown-bucket-hat/frame_02.png +0 -0
  1681. package/public/assets/generated/hats/brown-bucket-hat/frame_03.png +0 -0
  1682. package/public/assets/generated/hats/brown-bucket-hat/frame_04.png +0 -0
  1683. package/public/assets/generated/hats/brown-bucket-hat/frame_05.png +0 -0
  1684. package/public/assets/generated/hats/brown-bucket-hat/frame_06.png +0 -0
  1685. package/public/assets/generated/hats/brown-bucket-hat/frame_07.png +0 -0
  1686. package/public/assets/generated/hats/brown-bucket-hat/frame_08.png +0 -0
  1687. package/public/assets/generated/hats/brown-bucket-hat/frame_09.png +0 -0
  1688. package/public/assets/generated/hats/brown-bucket-hat/frame_10.png +0 -0
  1689. package/public/assets/generated/hats/brown-bucket-hat/frame_11.png +0 -0
  1690. package/public/assets/generated/hats/brown-bucket-hat/frame_12.png +0 -0
  1691. package/public/assets/generated/hats/brown-bucket-hat/frame_13.png +0 -0
  1692. package/public/assets/generated/hats/brown-bucket-hat/frame_14.png +0 -0
  1693. package/public/assets/generated/hats/brown-bucket-hat/frame_15.png +0 -0
  1694. package/public/assets/generated/hats/bunny-ears/frame_00.png +0 -0
  1695. package/public/assets/generated/hats/bunny-ears/frame_01.png +0 -0
  1696. package/public/assets/generated/hats/bunny-ears/frame_02.png +0 -0
  1697. package/public/assets/generated/hats/bunny-ears/frame_03.png +0 -0
  1698. package/public/assets/generated/hats/bunny-ears/frame_04.png +0 -0
  1699. package/public/assets/generated/hats/bunny-ears/frame_05.png +0 -0
  1700. package/public/assets/generated/hats/bunny-ears/frame_06.png +0 -0
  1701. package/public/assets/generated/hats/bunny-ears/frame_07.png +0 -0
  1702. package/public/assets/generated/hats/bunny-ears/frame_08.png +0 -0
  1703. package/public/assets/generated/hats/bunny-ears/frame_09.png +0 -0
  1704. package/public/assets/generated/hats/bunny-ears/frame_10.png +0 -0
  1705. package/public/assets/generated/hats/bunny-ears/frame_11.png +0 -0
  1706. package/public/assets/generated/hats/bunny-ears/frame_12.png +0 -0
  1707. package/public/assets/generated/hats/bunny-ears/frame_13.png +0 -0
  1708. package/public/assets/generated/hats/bunny-ears/frame_14.png +0 -0
  1709. package/public/assets/generated/hats/bunny-ears/frame_15.png +0 -0
  1710. package/public/assets/generated/hats/cat-ears/frame_00.png +0 -0
  1711. package/public/assets/generated/hats/cat-ears/frame_01.png +0 -0
  1712. package/public/assets/generated/hats/cat-ears/frame_02.png +0 -0
  1713. package/public/assets/generated/hats/cat-ears/frame_03.png +0 -0
  1714. package/public/assets/generated/hats/cat-ears/frame_04.png +0 -0
  1715. package/public/assets/generated/hats/cat-ears/frame_05.png +0 -0
  1716. package/public/assets/generated/hats/cat-ears/frame_06.png +0 -0
  1717. package/public/assets/generated/hats/cat-ears/frame_07.png +0 -0
  1718. package/public/assets/generated/hats/cat-ears/frame_08.png +0 -0
  1719. package/public/assets/generated/hats/cat-ears/frame_09.png +0 -0
  1720. package/public/assets/generated/hats/cat-ears/frame_10.png +0 -0
  1721. package/public/assets/generated/hats/cat-ears/frame_11.png +0 -0
  1722. package/public/assets/generated/hats/cat-ears/frame_12.png +0 -0
  1723. package/public/assets/generated/hats/cat-ears/frame_13.png +0 -0
  1724. package/public/assets/generated/hats/cat-ears/frame_14.png +0 -0
  1725. package/public/assets/generated/hats/cat-ears/frame_15.png +0 -0
  1726. package/public/assets/generated/hats/chef-hat/frame_00.png +0 -0
  1727. package/public/assets/generated/hats/chef-hat/frame_01.png +0 -0
  1728. package/public/assets/generated/hats/chef-hat/frame_02.png +0 -0
  1729. package/public/assets/generated/hats/chef-hat/frame_03.png +0 -0
  1730. package/public/assets/generated/hats/chef-hat/frame_04.png +0 -0
  1731. package/public/assets/generated/hats/chef-hat/frame_05.png +0 -0
  1732. package/public/assets/generated/hats/chef-hat/frame_06.png +0 -0
  1733. package/public/assets/generated/hats/chef-hat/frame_07.png +0 -0
  1734. package/public/assets/generated/hats/chef-hat/frame_08.png +0 -0
  1735. package/public/assets/generated/hats/chef-hat/frame_09.png +0 -0
  1736. package/public/assets/generated/hats/chef-hat/frame_10.png +0 -0
  1737. package/public/assets/generated/hats/chef-hat/frame_11.png +0 -0
  1738. package/public/assets/generated/hats/chef-hat/frame_12.png +0 -0
  1739. package/public/assets/generated/hats/chef-hat/frame_13.png +0 -0
  1740. package/public/assets/generated/hats/chef-hat/frame_14.png +0 -0
  1741. package/public/assets/generated/hats/chef-hat/frame_15.png +0 -0
  1742. package/public/assets/generated/hats/circuit-board-crown/frame_00.png +0 -0
  1743. package/public/assets/generated/hats/circuit-board-crown/frame_01.png +0 -0
  1744. package/public/assets/generated/hats/circuit-board-crown/frame_02.png +0 -0
  1745. package/public/assets/generated/hats/circuit-board-crown/frame_03.png +0 -0
  1746. package/public/assets/generated/hats/circuit-board-crown/frame_04.png +0 -0
  1747. package/public/assets/generated/hats/circuit-board-crown/frame_05.png +0 -0
  1748. package/public/assets/generated/hats/circuit-board-crown/frame_06.png +0 -0
  1749. package/public/assets/generated/hats/circuit-board-crown/frame_07.png +0 -0
  1750. package/public/assets/generated/hats/circuit-board-crown/frame_08.png +0 -0
  1751. package/public/assets/generated/hats/circuit-board-crown/frame_09.png +0 -0
  1752. package/public/assets/generated/hats/circuit-board-crown/frame_10.png +0 -0
  1753. package/public/assets/generated/hats/circuit-board-crown/frame_11.png +0 -0
  1754. package/public/assets/generated/hats/circuit-board-crown/frame_12.png +0 -0
  1755. package/public/assets/generated/hats/circuit-board-crown/frame_13.png +0 -0
  1756. package/public/assets/generated/hats/circuit-board-crown/frame_14.png +0 -0
  1757. package/public/assets/generated/hats/circuit-board-crown/frame_15.png +0 -0
  1758. package/public/assets/generated/hats/circuit-crown/frame_00.png +0 -0
  1759. package/public/assets/generated/hats/circuit-crown/frame_01.png +0 -0
  1760. package/public/assets/generated/hats/circuit-crown/frame_02.png +0 -0
  1761. package/public/assets/generated/hats/circuit-crown/frame_03.png +0 -0
  1762. package/public/assets/generated/hats/circuit-crown/frame_04.png +0 -0
  1763. package/public/assets/generated/hats/circuit-crown/frame_05.png +0 -0
  1764. package/public/assets/generated/hats/circuit-crown/frame_06.png +0 -0
  1765. package/public/assets/generated/hats/circuit-crown/frame_07.png +0 -0
  1766. package/public/assets/generated/hats/circuit-crown/frame_08.png +0 -0
  1767. package/public/assets/generated/hats/circuit-crown/frame_09.png +0 -0
  1768. package/public/assets/generated/hats/circuit-crown/frame_10.png +0 -0
  1769. package/public/assets/generated/hats/circuit-crown/frame_11.png +0 -0
  1770. package/public/assets/generated/hats/circuit-crown/frame_12.png +0 -0
  1771. package/public/assets/generated/hats/circuit-crown/frame_13.png +0 -0
  1772. package/public/assets/generated/hats/circuit-crown/frame_14.png +0 -0
  1773. package/public/assets/generated/hats/circuit-crown/frame_15.png +0 -0
  1774. package/public/assets/generated/hats/clown-hair/frame_00.png +0 -0
  1775. package/public/assets/generated/hats/clown-hair/frame_01.png +0 -0
  1776. package/public/assets/generated/hats/clown-hair/frame_02.png +0 -0
  1777. package/public/assets/generated/hats/clown-hair/frame_03.png +0 -0
  1778. package/public/assets/generated/hats/clown-hair/frame_04.png +0 -0
  1779. package/public/assets/generated/hats/clown-hair/frame_05.png +0 -0
  1780. package/public/assets/generated/hats/clown-hair/frame_06.png +0 -0
  1781. package/public/assets/generated/hats/clown-hair/frame_07.png +0 -0
  1782. package/public/assets/generated/hats/clown-hair/frame_08.png +0 -0
  1783. package/public/assets/generated/hats/clown-hair/frame_09.png +0 -0
  1784. package/public/assets/generated/hats/clown-hair/frame_10.png +0 -0
  1785. package/public/assets/generated/hats/clown-hair/frame_11.png +0 -0
  1786. package/public/assets/generated/hats/clown-hair/frame_12.png +0 -0
  1787. package/public/assets/generated/hats/clown-hair/frame_13.png +0 -0
  1788. package/public/assets/generated/hats/clown-hair/frame_14.png +0 -0
  1789. package/public/assets/generated/hats/clown-hair/frame_15.png +0 -0
  1790. package/public/assets/generated/hats/cowboy-hat/frame_00.png +0 -0
  1791. package/public/assets/generated/hats/cowboy-hat/frame_01.png +0 -0
  1792. package/public/assets/generated/hats/cowboy-hat/frame_02.png +0 -0
  1793. package/public/assets/generated/hats/cowboy-hat/frame_03.png +0 -0
  1794. package/public/assets/generated/hats/cowboy-hat/frame_04.png +0 -0
  1795. package/public/assets/generated/hats/cowboy-hat/frame_05.png +0 -0
  1796. package/public/assets/generated/hats/cowboy-hat/frame_06.png +0 -0
  1797. package/public/assets/generated/hats/cowboy-hat/frame_07.png +0 -0
  1798. package/public/assets/generated/hats/cowboy-hat/frame_08.png +0 -0
  1799. package/public/assets/generated/hats/cowboy-hat/frame_09.png +0 -0
  1800. package/public/assets/generated/hats/cowboy-hat/frame_10.png +0 -0
  1801. package/public/assets/generated/hats/cowboy-hat/frame_11.png +0 -0
  1802. package/public/assets/generated/hats/cowboy-hat/frame_12.png +0 -0
  1803. package/public/assets/generated/hats/cowboy-hat/frame_13.png +0 -0
  1804. package/public/assets/generated/hats/cowboy-hat/frame_14.png +0 -0
  1805. package/public/assets/generated/hats/cowboy-hat/frame_15.png +0 -0
  1806. package/public/assets/generated/hats/crown/frame_00.png +0 -0
  1807. package/public/assets/generated/hats/crown/frame_01.png +0 -0
  1808. package/public/assets/generated/hats/crown/frame_02.png +0 -0
  1809. package/public/assets/generated/hats/crown/frame_03.png +0 -0
  1810. package/public/assets/generated/hats/crown/frame_04.png +0 -0
  1811. package/public/assets/generated/hats/crown/frame_05.png +0 -0
  1812. package/public/assets/generated/hats/crown/frame_06.png +0 -0
  1813. package/public/assets/generated/hats/crown/frame_07.png +0 -0
  1814. package/public/assets/generated/hats/crown/frame_08.png +0 -0
  1815. package/public/assets/generated/hats/crown/frame_09.png +0 -0
  1816. package/public/assets/generated/hats/crown/frame_10.png +0 -0
  1817. package/public/assets/generated/hats/crown/frame_11.png +0 -0
  1818. package/public/assets/generated/hats/crown/frame_12.png +0 -0
  1819. package/public/assets/generated/hats/crown/frame_13.png +0 -0
  1820. package/public/assets/generated/hats/crown/frame_14.png +0 -0
  1821. package/public/assets/generated/hats/crown/frame_15.png +0 -0
  1822. package/public/assets/generated/hats/crypto-crown/frame_00.png +0 -0
  1823. package/public/assets/generated/hats/crypto-crown/frame_01.png +0 -0
  1824. package/public/assets/generated/hats/crypto-crown/frame_02.png +0 -0
  1825. package/public/assets/generated/hats/crypto-crown/frame_03.png +0 -0
  1826. package/public/assets/generated/hats/crypto-crown/frame_04.png +0 -0
  1827. package/public/assets/generated/hats/crypto-crown/frame_05.png +0 -0
  1828. package/public/assets/generated/hats/crypto-crown/frame_06.png +0 -0
  1829. package/public/assets/generated/hats/crypto-crown/frame_07.png +0 -0
  1830. package/public/assets/generated/hats/crypto-crown/frame_08.png +0 -0
  1831. package/public/assets/generated/hats/crypto-crown/frame_09.png +0 -0
  1832. package/public/assets/generated/hats/crypto-crown/frame_10.png +0 -0
  1833. package/public/assets/generated/hats/crypto-crown/frame_11.png +0 -0
  1834. package/public/assets/generated/hats/crypto-crown/frame_12.png +0 -0
  1835. package/public/assets/generated/hats/crypto-crown/frame_13.png +0 -0
  1836. package/public/assets/generated/hats/crypto-crown/frame_14.png +0 -0
  1837. package/public/assets/generated/hats/crypto-crown/frame_15.png +0 -0
  1838. package/public/assets/generated/hats/crypto-helmet/frame_00.png +0 -0
  1839. package/public/assets/generated/hats/crypto-helmet/frame_01.png +0 -0
  1840. package/public/assets/generated/hats/crypto-helmet/frame_02.png +0 -0
  1841. package/public/assets/generated/hats/crypto-helmet/frame_03.png +0 -0
  1842. package/public/assets/generated/hats/crypto-helmet/frame_04.png +0 -0
  1843. package/public/assets/generated/hats/crypto-helmet/frame_05.png +0 -0
  1844. package/public/assets/generated/hats/crypto-helmet/frame_06.png +0 -0
  1845. package/public/assets/generated/hats/crypto-helmet/frame_07.png +0 -0
  1846. package/public/assets/generated/hats/crypto-helmet/frame_08.png +0 -0
  1847. package/public/assets/generated/hats/crypto-helmet/frame_09.png +0 -0
  1848. package/public/assets/generated/hats/crypto-helmet/frame_10.png +0 -0
  1849. package/public/assets/generated/hats/crypto-helmet/frame_11.png +0 -0
  1850. package/public/assets/generated/hats/crypto-helmet/frame_12.png +0 -0
  1851. package/public/assets/generated/hats/crypto-helmet/frame_13.png +0 -0
  1852. package/public/assets/generated/hats/crypto-helmet/frame_14.png +0 -0
  1853. package/public/assets/generated/hats/crypto-helmet/frame_15.png +0 -0
  1854. package/public/assets/generated/hats/cup-head/frame_00.png +0 -0
  1855. package/public/assets/generated/hats/cup-head/frame_01.png +0 -0
  1856. package/public/assets/generated/hats/cup-head/frame_02.png +0 -0
  1857. package/public/assets/generated/hats/cup-head/frame_03.png +0 -0
  1858. package/public/assets/generated/hats/cup-head/frame_04.png +0 -0
  1859. package/public/assets/generated/hats/cup-head/frame_05.png +0 -0
  1860. package/public/assets/generated/hats/cup-head/frame_06.png +0 -0
  1861. package/public/assets/generated/hats/cup-head/frame_07.png +0 -0
  1862. package/public/assets/generated/hats/cup-head/frame_08.png +0 -0
  1863. package/public/assets/generated/hats/cup-head/frame_09.png +0 -0
  1864. package/public/assets/generated/hats/cup-head/frame_10.png +0 -0
  1865. package/public/assets/generated/hats/cup-head/frame_11.png +0 -0
  1866. package/public/assets/generated/hats/cup-head/frame_12.png +0 -0
  1867. package/public/assets/generated/hats/cup-head/frame_13.png +0 -0
  1868. package/public/assets/generated/hats/cup-head/frame_14.png +0 -0
  1869. package/public/assets/generated/hats/cup-head/frame_15.png +0 -0
  1870. package/public/assets/generated/hats/devil-horns/frame_00.png +0 -0
  1871. package/public/assets/generated/hats/devil-horns/frame_01.png +0 -0
  1872. package/public/assets/generated/hats/devil-horns/frame_02.png +0 -0
  1873. package/public/assets/generated/hats/devil-horns/frame_03.png +0 -0
  1874. package/public/assets/generated/hats/devil-horns/frame_04.png +0 -0
  1875. package/public/assets/generated/hats/devil-horns/frame_05.png +0 -0
  1876. package/public/assets/generated/hats/devil-horns/frame_06.png +0 -0
  1877. package/public/assets/generated/hats/devil-horns/frame_07.png +0 -0
  1878. package/public/assets/generated/hats/devil-horns/frame_08.png +0 -0
  1879. package/public/assets/generated/hats/devil-horns/frame_09.png +0 -0
  1880. package/public/assets/generated/hats/devil-horns/frame_10.png +0 -0
  1881. package/public/assets/generated/hats/devil-horns/frame_11.png +0 -0
  1882. package/public/assets/generated/hats/devil-horns/frame_12.png +0 -0
  1883. package/public/assets/generated/hats/devil-horns/frame_13.png +0 -0
  1884. package/public/assets/generated/hats/devil-horns/frame_14.png +0 -0
  1885. package/public/assets/generated/hats/devil-horns/frame_15.png +0 -0
  1886. package/public/assets/generated/hats/digital-keys/frame_00.png +0 -0
  1887. package/public/assets/generated/hats/digital-keys/frame_01.png +0 -0
  1888. package/public/assets/generated/hats/digital-keys/frame_02.png +0 -0
  1889. package/public/assets/generated/hats/digital-keys/frame_03.png +0 -0
  1890. package/public/assets/generated/hats/digital-keys/frame_04.png +0 -0
  1891. package/public/assets/generated/hats/digital-keys/frame_05.png +0 -0
  1892. package/public/assets/generated/hats/digital-keys/frame_06.png +0 -0
  1893. package/public/assets/generated/hats/digital-keys/frame_07.png +0 -0
  1894. package/public/assets/generated/hats/digital-keys/frame_08.png +0 -0
  1895. package/public/assets/generated/hats/digital-keys/frame_09.png +0 -0
  1896. package/public/assets/generated/hats/digital-keys/frame_10.png +0 -0
  1897. package/public/assets/generated/hats/digital-keys/frame_11.png +0 -0
  1898. package/public/assets/generated/hats/digital-keys/frame_12.png +0 -0
  1899. package/public/assets/generated/hats/digital-keys/frame_13.png +0 -0
  1900. package/public/assets/generated/hats/digital-keys/frame_14.png +0 -0
  1901. package/public/assets/generated/hats/digital-keys/frame_15.png +0 -0
  1902. package/public/assets/generated/hats/digital-top-hat/frame_00.png +0 -0
  1903. package/public/assets/generated/hats/digital-top-hat/frame_01.png +0 -0
  1904. package/public/assets/generated/hats/digital-top-hat/frame_02.png +0 -0
  1905. package/public/assets/generated/hats/digital-top-hat/frame_03.png +0 -0
  1906. package/public/assets/generated/hats/digital-top-hat/frame_04.png +0 -0
  1907. package/public/assets/generated/hats/digital-top-hat/frame_05.png +0 -0
  1908. package/public/assets/generated/hats/digital-top-hat/frame_06.png +0 -0
  1909. package/public/assets/generated/hats/digital-top-hat/frame_07.png +0 -0
  1910. package/public/assets/generated/hats/digital-top-hat/frame_08.png +0 -0
  1911. package/public/assets/generated/hats/digital-top-hat/frame_09.png +0 -0
  1912. package/public/assets/generated/hats/digital-top-hat/frame_10.png +0 -0
  1913. package/public/assets/generated/hats/digital-top-hat/frame_11.png +0 -0
  1914. package/public/assets/generated/hats/digital-top-hat/frame_12.png +0 -0
  1915. package/public/assets/generated/hats/digital-top-hat/frame_13.png +0 -0
  1916. package/public/assets/generated/hats/digital-top-hat/frame_14.png +0 -0
  1917. package/public/assets/generated/hats/digital-top-hat/frame_15.png +0 -0
  1918. package/public/assets/generated/hats/encryption-hair/frame_00.png +0 -0
  1919. package/public/assets/generated/hats/encryption-hair/frame_01.png +0 -0
  1920. package/public/assets/generated/hats/encryption-hair/frame_02.png +0 -0
  1921. package/public/assets/generated/hats/encryption-hair/frame_03.png +0 -0
  1922. package/public/assets/generated/hats/encryption-hair/frame_04.png +0 -0
  1923. package/public/assets/generated/hats/encryption-hair/frame_05.png +0 -0
  1924. package/public/assets/generated/hats/encryption-hair/frame_06.png +0 -0
  1925. package/public/assets/generated/hats/encryption-hair/frame_07.png +0 -0
  1926. package/public/assets/generated/hats/encryption-hair/frame_08.png +0 -0
  1927. package/public/assets/generated/hats/encryption-hair/frame_09.png +0 -0
  1928. package/public/assets/generated/hats/encryption-hair/frame_10.png +0 -0
  1929. package/public/assets/generated/hats/encryption-hair/frame_11.png +0 -0
  1930. package/public/assets/generated/hats/encryption-hair/frame_12.png +0 -0
  1931. package/public/assets/generated/hats/encryption-hair/frame_13.png +0 -0
  1932. package/public/assets/generated/hats/encryption-hair/frame_14.png +0 -0
  1933. package/public/assets/generated/hats/encryption-hair/frame_15.png +0 -0
  1934. package/public/assets/generated/hats/fedora/frame_00.png +0 -0
  1935. package/public/assets/generated/hats/fedora/frame_01.png +0 -0
  1936. package/public/assets/generated/hats/fedora/frame_02.png +0 -0
  1937. package/public/assets/generated/hats/fedora/frame_03.png +0 -0
  1938. package/public/assets/generated/hats/fedora/frame_04.png +0 -0
  1939. package/public/assets/generated/hats/fedora/frame_05.png +0 -0
  1940. package/public/assets/generated/hats/fedora/frame_06.png +0 -0
  1941. package/public/assets/generated/hats/fedora/frame_07.png +0 -0
  1942. package/public/assets/generated/hats/fedora/frame_08.png +0 -0
  1943. package/public/assets/generated/hats/fedora/frame_09.png +0 -0
  1944. package/public/assets/generated/hats/fedora/frame_10.png +0 -0
  1945. package/public/assets/generated/hats/fedora/frame_11.png +0 -0
  1946. package/public/assets/generated/hats/fedora/frame_12.png +0 -0
  1947. package/public/assets/generated/hats/fedora/frame_13.png +0 -0
  1948. package/public/assets/generated/hats/fedora/frame_14.png +0 -0
  1949. package/public/assets/generated/hats/fedora/frame_15.png +0 -0
  1950. package/public/assets/generated/hats/fez/frame_00.png +0 -0
  1951. package/public/assets/generated/hats/fez/frame_01.png +0 -0
  1952. package/public/assets/generated/hats/fez/frame_02.png +0 -0
  1953. package/public/assets/generated/hats/fez/frame_03.png +0 -0
  1954. package/public/assets/generated/hats/fez/frame_04.png +0 -0
  1955. package/public/assets/generated/hats/fez/frame_05.png +0 -0
  1956. package/public/assets/generated/hats/fez/frame_06.png +0 -0
  1957. package/public/assets/generated/hats/fez/frame_07.png +0 -0
  1958. package/public/assets/generated/hats/fez/frame_08.png +0 -0
  1959. package/public/assets/generated/hats/fez/frame_09.png +0 -0
  1960. package/public/assets/generated/hats/fez/frame_10.png +0 -0
  1961. package/public/assets/generated/hats/fez/frame_11.png +0 -0
  1962. package/public/assets/generated/hats/fez/frame_12.png +0 -0
  1963. package/public/assets/generated/hats/fez/frame_13.png +0 -0
  1964. package/public/assets/generated/hats/fez/frame_14.png +0 -0
  1965. package/public/assets/generated/hats/fez/frame_15.png +0 -0
  1966. package/public/assets/generated/hats/fish-bowl/frame_00.png +0 -0
  1967. package/public/assets/generated/hats/fish-bowl/frame_01.png +0 -0
  1968. package/public/assets/generated/hats/fish-bowl/frame_02.png +0 -0
  1969. package/public/assets/generated/hats/fish-bowl/frame_03.png +0 -0
  1970. package/public/assets/generated/hats/fish-bowl/frame_04.png +0 -0
  1971. package/public/assets/generated/hats/fish-bowl/frame_05.png +0 -0
  1972. package/public/assets/generated/hats/fish-bowl/frame_06.png +0 -0
  1973. package/public/assets/generated/hats/fish-bowl/frame_07.png +0 -0
  1974. package/public/assets/generated/hats/fish-bowl/frame_08.png +0 -0
  1975. package/public/assets/generated/hats/fish-bowl/frame_09.png +0 -0
  1976. package/public/assets/generated/hats/fish-bowl/frame_10.png +0 -0
  1977. package/public/assets/generated/hats/fish-bowl/frame_11.png +0 -0
  1978. package/public/assets/generated/hats/fish-bowl/frame_12.png +0 -0
  1979. package/public/assets/generated/hats/fish-bowl/frame_13.png +0 -0
  1980. package/public/assets/generated/hats/fish-bowl/frame_14.png +0 -0
  1981. package/public/assets/generated/hats/fish-bowl/frame_15.png +0 -0
  1982. package/public/assets/generated/hats/frog-hat/frame_00.png +0 -0
  1983. package/public/assets/generated/hats/frog-hat/frame_01.png +0 -0
  1984. package/public/assets/generated/hats/frog-hat/frame_02.png +0 -0
  1985. package/public/assets/generated/hats/frog-hat/frame_03.png +0 -0
  1986. package/public/assets/generated/hats/frog-hat/frame_04.png +0 -0
  1987. package/public/assets/generated/hats/frog-hat/frame_05.png +0 -0
  1988. package/public/assets/generated/hats/frog-hat/frame_06.png +0 -0
  1989. package/public/assets/generated/hats/frog-hat/frame_07.png +0 -0
  1990. package/public/assets/generated/hats/frog-hat/frame_08.png +0 -0
  1991. package/public/assets/generated/hats/frog-hat/frame_09.png +0 -0
  1992. package/public/assets/generated/hats/frog-hat/frame_10.png +0 -0
  1993. package/public/assets/generated/hats/frog-hat/frame_11.png +0 -0
  1994. package/public/assets/generated/hats/frog-hat/frame_12.png +0 -0
  1995. package/public/assets/generated/hats/frog-hat/frame_13.png +0 -0
  1996. package/public/assets/generated/hats/frog-hat/frame_14.png +0 -0
  1997. package/public/assets/generated/hats/frog-hat/frame_15.png +0 -0
  1998. package/public/assets/generated/hats/frumpy-hair/frame_00.png +0 -0
  1999. package/public/assets/generated/hats/frumpy-hair/frame_01.png +0 -0
  2000. package/public/assets/generated/hats/frumpy-hair/frame_02.png +0 -0
  2001. package/public/assets/generated/hats/frumpy-hair/frame_03.png +0 -0
  2002. package/public/assets/generated/hats/frumpy-hair/frame_04.png +0 -0
  2003. package/public/assets/generated/hats/frumpy-hair/frame_05.png +0 -0
  2004. package/public/assets/generated/hats/frumpy-hair/frame_06.png +0 -0
  2005. package/public/assets/generated/hats/frumpy-hair/frame_07.png +0 -0
  2006. package/public/assets/generated/hats/frumpy-hair/frame_08.png +0 -0
  2007. package/public/assets/generated/hats/frumpy-hair/frame_09.png +0 -0
  2008. package/public/assets/generated/hats/frumpy-hair/frame_10.png +0 -0
  2009. package/public/assets/generated/hats/frumpy-hair/frame_11.png +0 -0
  2010. package/public/assets/generated/hats/frumpy-hair/frame_12.png +0 -0
  2011. package/public/assets/generated/hats/frumpy-hair/frame_13.png +0 -0
  2012. package/public/assets/generated/hats/frumpy-hair/frame_14.png +0 -0
  2013. package/public/assets/generated/hats/frumpy-hair/frame_15.png +0 -0
  2014. package/public/assets/generated/hats/halo/frame_00.png +0 -0
  2015. package/public/assets/generated/hats/halo/frame_01.png +0 -0
  2016. package/public/assets/generated/hats/halo/frame_02.png +0 -0
  2017. package/public/assets/generated/hats/halo/frame_03.png +0 -0
  2018. package/public/assets/generated/hats/halo/frame_04.png +0 -0
  2019. package/public/assets/generated/hats/halo/frame_05.png +0 -0
  2020. package/public/assets/generated/hats/halo/frame_06.png +0 -0
  2021. package/public/assets/generated/hats/halo/frame_07.png +0 -0
  2022. package/public/assets/generated/hats/halo/frame_08.png +0 -0
  2023. package/public/assets/generated/hats/halo/frame_09.png +0 -0
  2024. package/public/assets/generated/hats/halo/frame_10.png +0 -0
  2025. package/public/assets/generated/hats/halo/frame_11.png +0 -0
  2026. package/public/assets/generated/hats/halo/frame_12.png +0 -0
  2027. package/public/assets/generated/hats/halo/frame_13.png +0 -0
  2028. package/public/assets/generated/hats/halo/frame_14.png +0 -0
  2029. package/public/assets/generated/hats/halo/frame_15.png +0 -0
  2030. package/public/assets/generated/hats/headphones/frame_00.png +0 -0
  2031. package/public/assets/generated/hats/headphones/frame_01.png +0 -0
  2032. package/public/assets/generated/hats/headphones/frame_02.png +0 -0
  2033. package/public/assets/generated/hats/headphones/frame_03.png +0 -0
  2034. package/public/assets/generated/hats/headphones/frame_04.png +0 -0
  2035. package/public/assets/generated/hats/headphones/frame_05.png +0 -0
  2036. package/public/assets/generated/hats/headphones/frame_06.png +0 -0
  2037. package/public/assets/generated/hats/headphones/frame_07.png +0 -0
  2038. package/public/assets/generated/hats/headphones/frame_08.png +0 -0
  2039. package/public/assets/generated/hats/headphones/frame_09.png +0 -0
  2040. package/public/assets/generated/hats/headphones/frame_10.png +0 -0
  2041. package/public/assets/generated/hats/headphones/frame_11.png +0 -0
  2042. package/public/assets/generated/hats/headphones/frame_12.png +0 -0
  2043. package/public/assets/generated/hats/headphones/frame_13.png +0 -0
  2044. package/public/assets/generated/hats/headphones/frame_14.png +0 -0
  2045. package/public/assets/generated/hats/headphones/frame_15.png +0 -0
  2046. package/public/assets/generated/hats/memepool-top-hat/frame_00.png +0 -0
  2047. package/public/assets/generated/hats/memepool-top-hat/frame_01.png +0 -0
  2048. package/public/assets/generated/hats/memepool-top-hat/frame_02.png +0 -0
  2049. package/public/assets/generated/hats/memepool-top-hat/frame_03.png +0 -0
  2050. package/public/assets/generated/hats/memepool-top-hat/frame_04.png +0 -0
  2051. package/public/assets/generated/hats/memepool-top-hat/frame_05.png +0 -0
  2052. package/public/assets/generated/hats/memepool-top-hat/frame_06.png +0 -0
  2053. package/public/assets/generated/hats/memepool-top-hat/frame_07.png +0 -0
  2054. package/public/assets/generated/hats/memepool-top-hat/frame_08.png +0 -0
  2055. package/public/assets/generated/hats/memepool-top-hat/frame_09.png +0 -0
  2056. package/public/assets/generated/hats/memepool-top-hat/frame_10.png +0 -0
  2057. package/public/assets/generated/hats/memepool-top-hat/frame_11.png +0 -0
  2058. package/public/assets/generated/hats/memepool-top-hat/frame_12.png +0 -0
  2059. package/public/assets/generated/hats/memepool-top-hat/frame_13.png +0 -0
  2060. package/public/assets/generated/hats/memepool-top-hat/frame_14.png +0 -0
  2061. package/public/assets/generated/hats/memepool-top-hat/frame_15.png +0 -0
  2062. package/public/assets/generated/hats/messy-hair/frame_00.png +0 -0
  2063. package/public/assets/generated/hats/messy-hair/frame_01.png +0 -0
  2064. package/public/assets/generated/hats/messy-hair/frame_02.png +0 -0
  2065. package/public/assets/generated/hats/messy-hair/frame_03.png +0 -0
  2066. package/public/assets/generated/hats/messy-hair/frame_04.png +0 -0
  2067. package/public/assets/generated/hats/messy-hair/frame_05.png +0 -0
  2068. package/public/assets/generated/hats/messy-hair/frame_06.png +0 -0
  2069. package/public/assets/generated/hats/messy-hair/frame_07.png +0 -0
  2070. package/public/assets/generated/hats/messy-hair/frame_08.png +0 -0
  2071. package/public/assets/generated/hats/messy-hair/frame_09.png +0 -0
  2072. package/public/assets/generated/hats/messy-hair/frame_10.png +0 -0
  2073. package/public/assets/generated/hats/messy-hair/frame_11.png +0 -0
  2074. package/public/assets/generated/hats/messy-hair/frame_12.png +0 -0
  2075. package/public/assets/generated/hats/messy-hair/frame_13.png +0 -0
  2076. package/public/assets/generated/hats/messy-hair/frame_14.png +0 -0
  2077. package/public/assets/generated/hats/messy-hair/frame_15.png +0 -0
  2078. package/public/assets/generated/hats/military-helmet/frame_00.png +0 -0
  2079. package/public/assets/generated/hats/military-helmet/frame_01.png +0 -0
  2080. package/public/assets/generated/hats/military-helmet/frame_02.png +0 -0
  2081. package/public/assets/generated/hats/military-helmet/frame_03.png +0 -0
  2082. package/public/assets/generated/hats/military-helmet/frame_04.png +0 -0
  2083. package/public/assets/generated/hats/military-helmet/frame_05.png +0 -0
  2084. package/public/assets/generated/hats/military-helmet/frame_06.png +0 -0
  2085. package/public/assets/generated/hats/military-helmet/frame_07.png +0 -0
  2086. package/public/assets/generated/hats/military-helmet/frame_08.png +0 -0
  2087. package/public/assets/generated/hats/military-helmet/frame_09.png +0 -0
  2088. package/public/assets/generated/hats/military-helmet/frame_10.png +0 -0
  2089. package/public/assets/generated/hats/military-helmet/frame_11.png +0 -0
  2090. package/public/assets/generated/hats/military-helmet/frame_12.png +0 -0
  2091. package/public/assets/generated/hats/military-helmet/frame_13.png +0 -0
  2092. package/public/assets/generated/hats/military-helmet/frame_14.png +0 -0
  2093. package/public/assets/generated/hats/military-helmet/frame_15.png +0 -0
  2094. package/public/assets/generated/hats/mohawk/frame_00.png +0 -0
  2095. package/public/assets/generated/hats/mohawk/frame_01.png +0 -0
  2096. package/public/assets/generated/hats/mohawk/frame_02.png +0 -0
  2097. package/public/assets/generated/hats/mohawk/frame_03.png +0 -0
  2098. package/public/assets/generated/hats/mohawk/frame_04.png +0 -0
  2099. package/public/assets/generated/hats/mohawk/frame_05.png +0 -0
  2100. package/public/assets/generated/hats/mohawk/frame_06.png +0 -0
  2101. package/public/assets/generated/hats/mohawk/frame_07.png +0 -0
  2102. package/public/assets/generated/hats/mohawk/frame_08.png +0 -0
  2103. package/public/assets/generated/hats/mohawk/frame_09.png +0 -0
  2104. package/public/assets/generated/hats/mohawk/frame_10.png +0 -0
  2105. package/public/assets/generated/hats/mohawk/frame_11.png +0 -0
  2106. package/public/assets/generated/hats/mohawk/frame_12.png +0 -0
  2107. package/public/assets/generated/hats/mohawk/frame_13.png +0 -0
  2108. package/public/assets/generated/hats/mohawk/frame_14.png +0 -0
  2109. package/public/assets/generated/hats/mohawk/frame_15.png +0 -0
  2110. package/public/assets/generated/hats/mohawk-thin/frame_00.png +0 -0
  2111. package/public/assets/generated/hats/mohawk-thin/frame_01.png +0 -0
  2112. package/public/assets/generated/hats/mohawk-thin/frame_02.png +0 -0
  2113. package/public/assets/generated/hats/mohawk-thin/frame_03.png +0 -0
  2114. package/public/assets/generated/hats/mohawk-thin/frame_04.png +0 -0
  2115. package/public/assets/generated/hats/mohawk-thin/frame_05.png +0 -0
  2116. package/public/assets/generated/hats/mohawk-thin/frame_06.png +0 -0
  2117. package/public/assets/generated/hats/mohawk-thin/frame_07.png +0 -0
  2118. package/public/assets/generated/hats/mohawk-thin/frame_08.png +0 -0
  2119. package/public/assets/generated/hats/mohawk-thin/frame_09.png +0 -0
  2120. package/public/assets/generated/hats/mohawk-thin/frame_10.png +0 -0
  2121. package/public/assets/generated/hats/mohawk-thin/frame_11.png +0 -0
  2122. package/public/assets/generated/hats/mohawk-thin/frame_12.png +0 -0
  2123. package/public/assets/generated/hats/mohawk-thin/frame_13.png +0 -0
  2124. package/public/assets/generated/hats/mohawk-thin/frame_14.png +0 -0
  2125. package/public/assets/generated/hats/mohawk-thin/frame_15.png +0 -0
  2126. package/public/assets/generated/hats/nerd-glasses/frame_00.png +0 -0
  2127. package/public/assets/generated/hats/nerd-glasses/frame_01.png +0 -0
  2128. package/public/assets/generated/hats/nerd-glasses/frame_02.png +0 -0
  2129. package/public/assets/generated/hats/nerd-glasses/frame_03.png +0 -0
  2130. package/public/assets/generated/hats/nerd-glasses/frame_04.png +0 -0
  2131. package/public/assets/generated/hats/nerd-glasses/frame_05.png +0 -0
  2132. package/public/assets/generated/hats/nerd-glasses/frame_06.png +0 -0
  2133. package/public/assets/generated/hats/nerd-glasses/frame_07.png +0 -0
  2134. package/public/assets/generated/hats/nerd-glasses/frame_08.png +0 -0
  2135. package/public/assets/generated/hats/nerd-glasses/frame_09.png +0 -0
  2136. package/public/assets/generated/hats/nerd-glasses/frame_10.png +0 -0
  2137. package/public/assets/generated/hats/nerd-glasses/frame_11.png +0 -0
  2138. package/public/assets/generated/hats/nerd-glasses/frame_12.png +0 -0
  2139. package/public/assets/generated/hats/nerd-glasses/frame_13.png +0 -0
  2140. package/public/assets/generated/hats/nerd-glasses/frame_14.png +0 -0
  2141. package/public/assets/generated/hats/nerd-glasses/frame_15.png +0 -0
  2142. package/public/assets/generated/hats/night-vision-goggles/frame_00.png +0 -0
  2143. package/public/assets/generated/hats/night-vision-goggles/frame_01.png +0 -0
  2144. package/public/assets/generated/hats/night-vision-goggles/frame_02.png +0 -0
  2145. package/public/assets/generated/hats/night-vision-goggles/frame_03.png +0 -0
  2146. package/public/assets/generated/hats/night-vision-goggles/frame_04.png +0 -0
  2147. package/public/assets/generated/hats/night-vision-goggles/frame_05.png +0 -0
  2148. package/public/assets/generated/hats/night-vision-goggles/frame_06.png +0 -0
  2149. package/public/assets/generated/hats/night-vision-goggles/frame_07.png +0 -0
  2150. package/public/assets/generated/hats/night-vision-goggles/frame_08.png +0 -0
  2151. package/public/assets/generated/hats/night-vision-goggles/frame_09.png +0 -0
  2152. package/public/assets/generated/hats/night-vision-goggles/frame_10.png +0 -0
  2153. package/public/assets/generated/hats/night-vision-goggles/frame_11.png +0 -0
  2154. package/public/assets/generated/hats/night-vision-goggles/frame_12.png +0 -0
  2155. package/public/assets/generated/hats/night-vision-goggles/frame_13.png +0 -0
  2156. package/public/assets/generated/hats/night-vision-goggles/frame_14.png +0 -0
  2157. package/public/assets/generated/hats/night-vision-goggles/frame_15.png +0 -0
  2158. package/public/assets/generated/hats/node-crown/frame_00.png +0 -0
  2159. package/public/assets/generated/hats/node-crown/frame_01.png +0 -0
  2160. package/public/assets/generated/hats/node-crown/frame_02.png +0 -0
  2161. package/public/assets/generated/hats/node-crown/frame_03.png +0 -0
  2162. package/public/assets/generated/hats/node-crown/frame_04.png +0 -0
  2163. package/public/assets/generated/hats/node-crown/frame_05.png +0 -0
  2164. package/public/assets/generated/hats/node-crown/frame_06.png +0 -0
  2165. package/public/assets/generated/hats/node-crown/frame_07.png +0 -0
  2166. package/public/assets/generated/hats/node-crown/frame_08.png +0 -0
  2167. package/public/assets/generated/hats/node-crown/frame_09.png +0 -0
  2168. package/public/assets/generated/hats/node-crown/frame_10.png +0 -0
  2169. package/public/assets/generated/hats/node-crown/frame_11.png +0 -0
  2170. package/public/assets/generated/hats/node-crown/frame_12.png +0 -0
  2171. package/public/assets/generated/hats/node-crown/frame_13.png +0 -0
  2172. package/public/assets/generated/hats/node-crown/frame_14.png +0 -0
  2173. package/public/assets/generated/hats/node-crown/frame_15.png +0 -0
  2174. package/public/assets/generated/hats/orange-beanie/frame_00.png +0 -0
  2175. package/public/assets/generated/hats/orange-beanie/frame_01.png +0 -0
  2176. package/public/assets/generated/hats/orange-beanie/frame_02.png +0 -0
  2177. package/public/assets/generated/hats/orange-beanie/frame_03.png +0 -0
  2178. package/public/assets/generated/hats/orange-beanie/frame_04.png +0 -0
  2179. package/public/assets/generated/hats/orange-beanie/frame_05.png +0 -0
  2180. package/public/assets/generated/hats/orange-beanie/frame_06.png +0 -0
  2181. package/public/assets/generated/hats/orange-beanie/frame_07.png +0 -0
  2182. package/public/assets/generated/hats/orange-beanie/frame_08.png +0 -0
  2183. package/public/assets/generated/hats/orange-beanie/frame_09.png +0 -0
  2184. package/public/assets/generated/hats/orange-beanie/frame_10.png +0 -0
  2185. package/public/assets/generated/hats/orange-beanie/frame_11.png +0 -0
  2186. package/public/assets/generated/hats/orange-beanie/frame_12.png +0 -0
  2187. package/public/assets/generated/hats/orange-beanie/frame_13.png +0 -0
  2188. package/public/assets/generated/hats/orange-beanie/frame_14.png +0 -0
  2189. package/public/assets/generated/hats/orange-beanie/frame_15.png +0 -0
  2190. package/public/assets/generated/hats/orange-miner-hard-hat/frame_00.png +0 -0
  2191. package/public/assets/generated/hats/orange-miner-hard-hat/frame_01.png +0 -0
  2192. package/public/assets/generated/hats/orange-miner-hard-hat/frame_02.png +0 -0
  2193. package/public/assets/generated/hats/orange-miner-hard-hat/frame_03.png +0 -0
  2194. package/public/assets/generated/hats/orange-miner-hard-hat/frame_04.png +0 -0
  2195. package/public/assets/generated/hats/orange-miner-hard-hat/frame_05.png +0 -0
  2196. package/public/assets/generated/hats/orange-miner-hard-hat/frame_06.png +0 -0
  2197. package/public/assets/generated/hats/orange-miner-hard-hat/frame_07.png +0 -0
  2198. package/public/assets/generated/hats/orange-miner-hard-hat/frame_08.png +0 -0
  2199. package/public/assets/generated/hats/orange-miner-hard-hat/frame_09.png +0 -0
  2200. package/public/assets/generated/hats/orange-miner-hard-hat/frame_10.png +0 -0
  2201. package/public/assets/generated/hats/orange-miner-hard-hat/frame_11.png +0 -0
  2202. package/public/assets/generated/hats/orange-miner-hard-hat/frame_12.png +0 -0
  2203. package/public/assets/generated/hats/orange-miner-hard-hat/frame_13.png +0 -0
  2204. package/public/assets/generated/hats/orange-miner-hard-hat/frame_14.png +0 -0
  2205. package/public/assets/generated/hats/orange-miner-hard-hat/frame_15.png +0 -0
  2206. package/public/assets/generated/hats/party-hat/frame_00.png +0 -0
  2207. package/public/assets/generated/hats/party-hat/frame_01.png +0 -0
  2208. package/public/assets/generated/hats/party-hat/frame_02.png +0 -0
  2209. package/public/assets/generated/hats/party-hat/frame_03.png +0 -0
  2210. package/public/assets/generated/hats/party-hat/frame_04.png +0 -0
  2211. package/public/assets/generated/hats/party-hat/frame_05.png +0 -0
  2212. package/public/assets/generated/hats/party-hat/frame_06.png +0 -0
  2213. package/public/assets/generated/hats/party-hat/frame_07.png +0 -0
  2214. package/public/assets/generated/hats/party-hat/frame_08.png +0 -0
  2215. package/public/assets/generated/hats/party-hat/frame_09.png +0 -0
  2216. package/public/assets/generated/hats/party-hat/frame_10.png +0 -0
  2217. package/public/assets/generated/hats/party-hat/frame_11.png +0 -0
  2218. package/public/assets/generated/hats/party-hat/frame_12.png +0 -0
  2219. package/public/assets/generated/hats/party-hat/frame_13.png +0 -0
  2220. package/public/assets/generated/hats/party-hat/frame_14.png +0 -0
  2221. package/public/assets/generated/hats/party-hat/frame_15.png +0 -0
  2222. package/public/assets/generated/hats/pigtails/frame_00.png +0 -0
  2223. package/public/assets/generated/hats/pigtails/frame_01.png +0 -0
  2224. package/public/assets/generated/hats/pigtails/frame_02.png +0 -0
  2225. package/public/assets/generated/hats/pigtails/frame_03.png +0 -0
  2226. package/public/assets/generated/hats/pigtails/frame_04.png +0 -0
  2227. package/public/assets/generated/hats/pigtails/frame_05.png +0 -0
  2228. package/public/assets/generated/hats/pigtails/frame_06.png +0 -0
  2229. package/public/assets/generated/hats/pigtails/frame_07.png +0 -0
  2230. package/public/assets/generated/hats/pigtails/frame_08.png +0 -0
  2231. package/public/assets/generated/hats/pigtails/frame_09.png +0 -0
  2232. package/public/assets/generated/hats/pigtails/frame_10.png +0 -0
  2233. package/public/assets/generated/hats/pigtails/frame_11.png +0 -0
  2234. package/public/assets/generated/hats/pigtails/frame_12.png +0 -0
  2235. package/public/assets/generated/hats/pigtails/frame_13.png +0 -0
  2236. package/public/assets/generated/hats/pigtails/frame_14.png +0 -0
  2237. package/public/assets/generated/hats/pigtails/frame_15.png +0 -0
  2238. package/public/assets/generated/hats/pink-hair/frame_00.png +0 -0
  2239. package/public/assets/generated/hats/pink-hair/frame_01.png +0 -0
  2240. package/public/assets/generated/hats/pink-hair/frame_02.png +0 -0
  2241. package/public/assets/generated/hats/pink-hair/frame_03.png +0 -0
  2242. package/public/assets/generated/hats/pink-hair/frame_04.png +0 -0
  2243. package/public/assets/generated/hats/pink-hair/frame_05.png +0 -0
  2244. package/public/assets/generated/hats/pink-hair/frame_06.png +0 -0
  2245. package/public/assets/generated/hats/pink-hair/frame_07.png +0 -0
  2246. package/public/assets/generated/hats/pink-hair/frame_08.png +0 -0
  2247. package/public/assets/generated/hats/pink-hair/frame_09.png +0 -0
  2248. package/public/assets/generated/hats/pink-hair/frame_10.png +0 -0
  2249. package/public/assets/generated/hats/pink-hair/frame_11.png +0 -0
  2250. package/public/assets/generated/hats/pink-hair/frame_12.png +0 -0
  2251. package/public/assets/generated/hats/pink-hair/frame_13.png +0 -0
  2252. package/public/assets/generated/hats/pink-hair/frame_14.png +0 -0
  2253. package/public/assets/generated/hats/pink-hair/frame_15.png +0 -0
  2254. package/public/assets/generated/hats/pirate/frame_00.png +0 -0
  2255. package/public/assets/generated/hats/pirate/frame_01.png +0 -0
  2256. package/public/assets/generated/hats/pirate/frame_02.png +0 -0
  2257. package/public/assets/generated/hats/pirate/frame_03.png +0 -0
  2258. package/public/assets/generated/hats/pirate/frame_04.png +0 -0
  2259. package/public/assets/generated/hats/pirate/frame_05.png +0 -0
  2260. package/public/assets/generated/hats/pirate/frame_06.png +0 -0
  2261. package/public/assets/generated/hats/pirate/frame_07.png +0 -0
  2262. package/public/assets/generated/hats/pirate/frame_08.png +0 -0
  2263. package/public/assets/generated/hats/pirate/frame_09.png +0 -0
  2264. package/public/assets/generated/hats/pirate/frame_10.png +0 -0
  2265. package/public/assets/generated/hats/pirate/frame_11.png +0 -0
  2266. package/public/assets/generated/hats/pirate/frame_12.png +0 -0
  2267. package/public/assets/generated/hats/pirate/frame_13.png +0 -0
  2268. package/public/assets/generated/hats/pirate/frame_14.png +0 -0
  2269. package/public/assets/generated/hats/pirate/frame_15.png +0 -0
  2270. package/public/assets/generated/hats/pirate-hat/frame_00.png +0 -0
  2271. package/public/assets/generated/hats/pirate-hat/frame_01.png +0 -0
  2272. package/public/assets/generated/hats/pirate-hat/frame_02.png +0 -0
  2273. package/public/assets/generated/hats/pirate-hat/frame_03.png +0 -0
  2274. package/public/assets/generated/hats/pirate-hat/frame_04.png +0 -0
  2275. package/public/assets/generated/hats/pirate-hat/frame_05.png +0 -0
  2276. package/public/assets/generated/hats/pirate-hat/frame_06.png +0 -0
  2277. package/public/assets/generated/hats/pirate-hat/frame_07.png +0 -0
  2278. package/public/assets/generated/hats/pirate-hat/frame_08.png +0 -0
  2279. package/public/assets/generated/hats/pirate-hat/frame_09.png +0 -0
  2280. package/public/assets/generated/hats/pirate-hat/frame_10.png +0 -0
  2281. package/public/assets/generated/hats/pirate-hat/frame_11.png +0 -0
  2282. package/public/assets/generated/hats/pirate-hat/frame_12.png +0 -0
  2283. package/public/assets/generated/hats/pirate-hat/frame_13.png +0 -0
  2284. package/public/assets/generated/hats/pirate-hat/frame_14.png +0 -0
  2285. package/public/assets/generated/hats/pirate-hat/frame_15.png +0 -0
  2286. package/public/assets/generated/hats/pizza-hat/frame_00.png +0 -0
  2287. package/public/assets/generated/hats/pizza-hat/frame_01.png +0 -0
  2288. package/public/assets/generated/hats/pizza-hat/frame_02.png +0 -0
  2289. package/public/assets/generated/hats/pizza-hat/frame_03.png +0 -0
  2290. package/public/assets/generated/hats/pizza-hat/frame_04.png +0 -0
  2291. package/public/assets/generated/hats/pizza-hat/frame_05.png +0 -0
  2292. package/public/assets/generated/hats/pizza-hat/frame_06.png +0 -0
  2293. package/public/assets/generated/hats/pizza-hat/frame_07.png +0 -0
  2294. package/public/assets/generated/hats/pizza-hat/frame_08.png +0 -0
  2295. package/public/assets/generated/hats/pizza-hat/frame_09.png +0 -0
  2296. package/public/assets/generated/hats/pizza-hat/frame_10.png +0 -0
  2297. package/public/assets/generated/hats/pizza-hat/frame_11.png +0 -0
  2298. package/public/assets/generated/hats/pizza-hat/frame_12.png +0 -0
  2299. package/public/assets/generated/hats/pizza-hat/frame_13.png +0 -0
  2300. package/public/assets/generated/hats/pizza-hat/frame_14.png +0 -0
  2301. package/public/assets/generated/hats/pizza-hat/frame_15.png +0 -0
  2302. package/public/assets/generated/hats/plunger-head/frame_00.png +0 -0
  2303. package/public/assets/generated/hats/plunger-head/frame_01.png +0 -0
  2304. package/public/assets/generated/hats/plunger-head/frame_02.png +0 -0
  2305. package/public/assets/generated/hats/plunger-head/frame_03.png +0 -0
  2306. package/public/assets/generated/hats/plunger-head/frame_04.png +0 -0
  2307. package/public/assets/generated/hats/plunger-head/frame_05.png +0 -0
  2308. package/public/assets/generated/hats/plunger-head/frame_06.png +0 -0
  2309. package/public/assets/generated/hats/plunger-head/frame_07.png +0 -0
  2310. package/public/assets/generated/hats/plunger-head/frame_08.png +0 -0
  2311. package/public/assets/generated/hats/plunger-head/frame_09.png +0 -0
  2312. package/public/assets/generated/hats/plunger-head/frame_10.png +0 -0
  2313. package/public/assets/generated/hats/plunger-head/frame_11.png +0 -0
  2314. package/public/assets/generated/hats/plunger-head/frame_12.png +0 -0
  2315. package/public/assets/generated/hats/plunger-head/frame_13.png +0 -0
  2316. package/public/assets/generated/hats/plunger-head/frame_14.png +0 -0
  2317. package/public/assets/generated/hats/plunger-head/frame_15.png +0 -0
  2318. package/public/assets/generated/hats/police-hat/frame_00.png +0 -0
  2319. package/public/assets/generated/hats/police-hat/frame_01.png +0 -0
  2320. package/public/assets/generated/hats/police-hat/frame_02.png +0 -0
  2321. package/public/assets/generated/hats/police-hat/frame_03.png +0 -0
  2322. package/public/assets/generated/hats/police-hat/frame_04.png +0 -0
  2323. package/public/assets/generated/hats/police-hat/frame_05.png +0 -0
  2324. package/public/assets/generated/hats/police-hat/frame_06.png +0 -0
  2325. package/public/assets/generated/hats/police-hat/frame_07.png +0 -0
  2326. package/public/assets/generated/hats/police-hat/frame_08.png +0 -0
  2327. package/public/assets/generated/hats/police-hat/frame_09.png +0 -0
  2328. package/public/assets/generated/hats/police-hat/frame_10.png +0 -0
  2329. package/public/assets/generated/hats/police-hat/frame_11.png +0 -0
  2330. package/public/assets/generated/hats/police-hat/frame_12.png +0 -0
  2331. package/public/assets/generated/hats/police-hat/frame_13.png +0 -0
  2332. package/public/assets/generated/hats/police-hat/frame_14.png +0 -0
  2333. package/public/assets/generated/hats/police-hat/frame_15.png +0 -0
  2334. package/public/assets/generated/hats/powder-wig/frame_00.png +0 -0
  2335. package/public/assets/generated/hats/powder-wig/frame_01.png +0 -0
  2336. package/public/assets/generated/hats/powder-wig/frame_02.png +0 -0
  2337. package/public/assets/generated/hats/powder-wig/frame_03.png +0 -0
  2338. package/public/assets/generated/hats/powder-wig/frame_04.png +0 -0
  2339. package/public/assets/generated/hats/powder-wig/frame_05.png +0 -0
  2340. package/public/assets/generated/hats/powder-wig/frame_06.png +0 -0
  2341. package/public/assets/generated/hats/powder-wig/frame_07.png +0 -0
  2342. package/public/assets/generated/hats/powder-wig/frame_08.png +0 -0
  2343. package/public/assets/generated/hats/powder-wig/frame_09.png +0 -0
  2344. package/public/assets/generated/hats/powder-wig/frame_10.png +0 -0
  2345. package/public/assets/generated/hats/powder-wig/frame_11.png +0 -0
  2346. package/public/assets/generated/hats/powder-wig/frame_12.png +0 -0
  2347. package/public/assets/generated/hats/powder-wig/frame_13.png +0 -0
  2348. package/public/assets/generated/hats/powder-wig/frame_14.png +0 -0
  2349. package/public/assets/generated/hats/powder-wig/frame_15.png +0 -0
  2350. package/public/assets/generated/hats/press-hat/frame_00.png +0 -0
  2351. package/public/assets/generated/hats/press-hat/frame_01.png +0 -0
  2352. package/public/assets/generated/hats/press-hat/frame_02.png +0 -0
  2353. package/public/assets/generated/hats/press-hat/frame_03.png +0 -0
  2354. package/public/assets/generated/hats/press-hat/frame_04.png +0 -0
  2355. package/public/assets/generated/hats/press-hat/frame_05.png +0 -0
  2356. package/public/assets/generated/hats/press-hat/frame_06.png +0 -0
  2357. package/public/assets/generated/hats/press-hat/frame_07.png +0 -0
  2358. package/public/assets/generated/hats/press-hat/frame_08.png +0 -0
  2359. package/public/assets/generated/hats/press-hat/frame_09.png +0 -0
  2360. package/public/assets/generated/hats/press-hat/frame_10.png +0 -0
  2361. package/public/assets/generated/hats/press-hat/frame_11.png +0 -0
  2362. package/public/assets/generated/hats/press-hat/frame_12.png +0 -0
  2363. package/public/assets/generated/hats/press-hat/frame_13.png +0 -0
  2364. package/public/assets/generated/hats/press-hat/frame_14.png +0 -0
  2365. package/public/assets/generated/hats/press-hat/frame_15.png +0 -0
  2366. package/public/assets/generated/hats/propeller-hat/frame_00.png +0 -0
  2367. package/public/assets/generated/hats/propeller-hat/frame_01.png +0 -0
  2368. package/public/assets/generated/hats/propeller-hat/frame_02.png +0 -0
  2369. package/public/assets/generated/hats/propeller-hat/frame_03.png +0 -0
  2370. package/public/assets/generated/hats/propeller-hat/frame_04.png +0 -0
  2371. package/public/assets/generated/hats/propeller-hat/frame_05.png +0 -0
  2372. package/public/assets/generated/hats/propeller-hat/frame_06.png +0 -0
  2373. package/public/assets/generated/hats/propeller-hat/frame_07.png +0 -0
  2374. package/public/assets/generated/hats/propeller-hat/frame_08.png +0 -0
  2375. package/public/assets/generated/hats/propeller-hat/frame_09.png +0 -0
  2376. package/public/assets/generated/hats/propeller-hat/frame_10.png +0 -0
  2377. package/public/assets/generated/hats/propeller-hat/frame_11.png +0 -0
  2378. package/public/assets/generated/hats/propeller-hat/frame_12.png +0 -0
  2379. package/public/assets/generated/hats/propeller-hat/frame_13.png +0 -0
  2380. package/public/assets/generated/hats/propeller-hat/frame_14.png +0 -0
  2381. package/public/assets/generated/hats/propeller-hat/frame_15.png +0 -0
  2382. package/public/assets/generated/hats/puffy-hair/frame_00.png +0 -0
  2383. package/public/assets/generated/hats/puffy-hair/frame_01.png +0 -0
  2384. package/public/assets/generated/hats/puffy-hair/frame_02.png +0 -0
  2385. package/public/assets/generated/hats/puffy-hair/frame_03.png +0 -0
  2386. package/public/assets/generated/hats/puffy-hair/frame_04.png +0 -0
  2387. package/public/assets/generated/hats/puffy-hair/frame_05.png +0 -0
  2388. package/public/assets/generated/hats/puffy-hair/frame_06.png +0 -0
  2389. package/public/assets/generated/hats/puffy-hair/frame_07.png +0 -0
  2390. package/public/assets/generated/hats/puffy-hair/frame_08.png +0 -0
  2391. package/public/assets/generated/hats/puffy-hair/frame_09.png +0 -0
  2392. package/public/assets/generated/hats/puffy-hair/frame_10.png +0 -0
  2393. package/public/assets/generated/hats/puffy-hair/frame_11.png +0 -0
  2394. package/public/assets/generated/hats/puffy-hair/frame_12.png +0 -0
  2395. package/public/assets/generated/hats/puffy-hair/frame_13.png +0 -0
  2396. package/public/assets/generated/hats/puffy-hair/frame_14.png +0 -0
  2397. package/public/assets/generated/hats/puffy-hair/frame_15.png +0 -0
  2398. package/public/assets/generated/hats/purple-bandana/frame_00.png +0 -0
  2399. package/public/assets/generated/hats/purple-bandana/frame_01.png +0 -0
  2400. package/public/assets/generated/hats/purple-bandana/frame_02.png +0 -0
  2401. package/public/assets/generated/hats/purple-bandana/frame_03.png +0 -0
  2402. package/public/assets/generated/hats/purple-bandana/frame_04.png +0 -0
  2403. package/public/assets/generated/hats/purple-bandana/frame_05.png +0 -0
  2404. package/public/assets/generated/hats/purple-bandana/frame_06.png +0 -0
  2405. package/public/assets/generated/hats/purple-bandana/frame_07.png +0 -0
  2406. package/public/assets/generated/hats/purple-bandana/frame_08.png +0 -0
  2407. package/public/assets/generated/hats/purple-bandana/frame_09.png +0 -0
  2408. package/public/assets/generated/hats/purple-bandana/frame_10.png +0 -0
  2409. package/public/assets/generated/hats/purple-bandana/frame_11.png +0 -0
  2410. package/public/assets/generated/hats/purple-bandana/frame_12.png +0 -0
  2411. package/public/assets/generated/hats/purple-bandana/frame_13.png +0 -0
  2412. package/public/assets/generated/hats/purple-bandana/frame_14.png +0 -0
  2413. package/public/assets/generated/hats/purple-bandana/frame_15.png +0 -0
  2414. package/public/assets/generated/hats/purple-beanie/frame_00.png +0 -0
  2415. package/public/assets/generated/hats/purple-beanie/frame_01.png +0 -0
  2416. package/public/assets/generated/hats/purple-beanie/frame_02.png +0 -0
  2417. package/public/assets/generated/hats/purple-beanie/frame_03.png +0 -0
  2418. package/public/assets/generated/hats/purple-beanie/frame_04.png +0 -0
  2419. package/public/assets/generated/hats/purple-beanie/frame_05.png +0 -0
  2420. package/public/assets/generated/hats/purple-beanie/frame_06.png +0 -0
  2421. package/public/assets/generated/hats/purple-beanie/frame_07.png +0 -0
  2422. package/public/assets/generated/hats/purple-beanie/frame_08.png +0 -0
  2423. package/public/assets/generated/hats/purple-beanie/frame_09.png +0 -0
  2424. package/public/assets/generated/hats/purple-beanie/frame_10.png +0 -0
  2425. package/public/assets/generated/hats/purple-beanie/frame_11.png +0 -0
  2426. package/public/assets/generated/hats/purple-beanie/frame_12.png +0 -0
  2427. package/public/assets/generated/hats/purple-beanie/frame_13.png +0 -0
  2428. package/public/assets/generated/hats/purple-beanie/frame_14.png +0 -0
  2429. package/public/assets/generated/hats/purple-beanie/frame_15.png +0 -0
  2430. package/public/assets/generated/hats/red-bandana/frame_00.png +0 -0
  2431. package/public/assets/generated/hats/red-bandana/frame_01.png +0 -0
  2432. package/public/assets/generated/hats/red-bandana/frame_02.png +0 -0
  2433. package/public/assets/generated/hats/red-bandana/frame_03.png +0 -0
  2434. package/public/assets/generated/hats/red-bandana/frame_04.png +0 -0
  2435. package/public/assets/generated/hats/red-bandana/frame_05.png +0 -0
  2436. package/public/assets/generated/hats/red-bandana/frame_06.png +0 -0
  2437. package/public/assets/generated/hats/red-bandana/frame_07.png +0 -0
  2438. package/public/assets/generated/hats/red-bandana/frame_08.png +0 -0
  2439. package/public/assets/generated/hats/red-bandana/frame_09.png +0 -0
  2440. package/public/assets/generated/hats/red-bandana/frame_10.png +0 -0
  2441. package/public/assets/generated/hats/red-bandana/frame_11.png +0 -0
  2442. package/public/assets/generated/hats/red-bandana/frame_12.png +0 -0
  2443. package/public/assets/generated/hats/red-bandana/frame_13.png +0 -0
  2444. package/public/assets/generated/hats/red-bandana/frame_14.png +0 -0
  2445. package/public/assets/generated/hats/red-bandana/frame_15.png +0 -0
  2446. package/public/assets/generated/hats/red-cap/frame_00.png +0 -0
  2447. package/public/assets/generated/hats/red-cap/frame_01.png +0 -0
  2448. package/public/assets/generated/hats/red-cap/frame_02.png +0 -0
  2449. package/public/assets/generated/hats/red-cap/frame_03.png +0 -0
  2450. package/public/assets/generated/hats/red-cap/frame_04.png +0 -0
  2451. package/public/assets/generated/hats/red-cap/frame_05.png +0 -0
  2452. package/public/assets/generated/hats/red-cap/frame_06.png +0 -0
  2453. package/public/assets/generated/hats/red-cap/frame_07.png +0 -0
  2454. package/public/assets/generated/hats/red-cap/frame_08.png +0 -0
  2455. package/public/assets/generated/hats/red-cap/frame_09.png +0 -0
  2456. package/public/assets/generated/hats/red-cap/frame_10.png +0 -0
  2457. package/public/assets/generated/hats/red-cap/frame_11.png +0 -0
  2458. package/public/assets/generated/hats/red-cap/frame_12.png +0 -0
  2459. package/public/assets/generated/hats/red-cap/frame_13.png +0 -0
  2460. package/public/assets/generated/hats/red-cap/frame_14.png +0 -0
  2461. package/public/assets/generated/hats/red-cap/frame_15.png +0 -0
  2462. package/public/assets/generated/hats/red-crazy-hair/frame_00.png +0 -0
  2463. package/public/assets/generated/hats/red-crazy-hair/frame_01.png +0 -0
  2464. package/public/assets/generated/hats/red-crazy-hair/frame_02.png +0 -0
  2465. package/public/assets/generated/hats/red-crazy-hair/frame_03.png +0 -0
  2466. package/public/assets/generated/hats/red-crazy-hair/frame_04.png +0 -0
  2467. package/public/assets/generated/hats/red-crazy-hair/frame_05.png +0 -0
  2468. package/public/assets/generated/hats/red-crazy-hair/frame_06.png +0 -0
  2469. package/public/assets/generated/hats/red-crazy-hair/frame_07.png +0 -0
  2470. package/public/assets/generated/hats/red-crazy-hair/frame_08.png +0 -0
  2471. package/public/assets/generated/hats/red-crazy-hair/frame_09.png +0 -0
  2472. package/public/assets/generated/hats/red-crazy-hair/frame_10.png +0 -0
  2473. package/public/assets/generated/hats/red-crazy-hair/frame_11.png +0 -0
  2474. package/public/assets/generated/hats/red-crazy-hair/frame_12.png +0 -0
  2475. package/public/assets/generated/hats/red-crazy-hair/frame_13.png +0 -0
  2476. package/public/assets/generated/hats/red-crazy-hair/frame_14.png +0 -0
  2477. package/public/assets/generated/hats/red-crazy-hair/frame_15.png +0 -0
  2478. package/public/assets/generated/hats/red-d-mushroom/frame_00.png +0 -0
  2479. package/public/assets/generated/hats/red-d-mushroom/frame_01.png +0 -0
  2480. package/public/assets/generated/hats/red-d-mushroom/frame_02.png +0 -0
  2481. package/public/assets/generated/hats/red-d-mushroom/frame_03.png +0 -0
  2482. package/public/assets/generated/hats/red-d-mushroom/frame_04.png +0 -0
  2483. package/public/assets/generated/hats/red-d-mushroom/frame_05.png +0 -0
  2484. package/public/assets/generated/hats/red-d-mushroom/frame_06.png +0 -0
  2485. package/public/assets/generated/hats/red-d-mushroom/frame_07.png +0 -0
  2486. package/public/assets/generated/hats/red-d-mushroom/frame_08.png +0 -0
  2487. package/public/assets/generated/hats/red-d-mushroom/frame_09.png +0 -0
  2488. package/public/assets/generated/hats/red-d-mushroom/frame_10.png +0 -0
  2489. package/public/assets/generated/hats/red-d-mushroom/frame_11.png +0 -0
  2490. package/public/assets/generated/hats/red-d-mushroom/frame_12.png +0 -0
  2491. package/public/assets/generated/hats/red-d-mushroom/frame_13.png +0 -0
  2492. package/public/assets/generated/hats/red-d-mushroom/frame_14.png +0 -0
  2493. package/public/assets/generated/hats/red-d-mushroom/frame_15.png +0 -0
  2494. package/public/assets/generated/hats/red-lazer-eyes/frame_00.png +0 -0
  2495. package/public/assets/generated/hats/red-lazer-eyes/frame_01.png +0 -0
  2496. package/public/assets/generated/hats/red-lazer-eyes/frame_02.png +0 -0
  2497. package/public/assets/generated/hats/red-lazer-eyes/frame_03.png +0 -0
  2498. package/public/assets/generated/hats/red-lazer-eyes/frame_04.png +0 -0
  2499. package/public/assets/generated/hats/red-lazer-eyes/frame_05.png +0 -0
  2500. package/public/assets/generated/hats/red-lazer-eyes/frame_06.png +0 -0
  2501. package/public/assets/generated/hats/red-lazer-eyes/frame_07.png +0 -0
  2502. package/public/assets/generated/hats/red-lazer-eyes/frame_08.png +0 -0
  2503. package/public/assets/generated/hats/red-lazer-eyes/frame_09.png +0 -0
  2504. package/public/assets/generated/hats/red-lazer-eyes/frame_10.png +0 -0
  2505. package/public/assets/generated/hats/red-lazer-eyes/frame_11.png +0 -0
  2506. package/public/assets/generated/hats/red-lazer-eyes/frame_12.png +0 -0
  2507. package/public/assets/generated/hats/red-lazer-eyes/frame_13.png +0 -0
  2508. package/public/assets/generated/hats/red-lazer-eyes/frame_14.png +0 -0
  2509. package/public/assets/generated/hats/red-lazer-eyes/frame_15.png +0 -0
  2510. package/public/assets/generated/hats/red-miner-hard-hat/frame_00.png +0 -0
  2511. package/public/assets/generated/hats/red-miner-hard-hat/frame_01.png +0 -0
  2512. package/public/assets/generated/hats/red-miner-hard-hat/frame_02.png +0 -0
  2513. package/public/assets/generated/hats/red-miner-hard-hat/frame_03.png +0 -0
  2514. package/public/assets/generated/hats/red-miner-hard-hat/frame_04.png +0 -0
  2515. package/public/assets/generated/hats/red-miner-hard-hat/frame_05.png +0 -0
  2516. package/public/assets/generated/hats/red-miner-hard-hat/frame_06.png +0 -0
  2517. package/public/assets/generated/hats/red-miner-hard-hat/frame_07.png +0 -0
  2518. package/public/assets/generated/hats/red-miner-hard-hat/frame_08.png +0 -0
  2519. package/public/assets/generated/hats/red-miner-hard-hat/frame_09.png +0 -0
  2520. package/public/assets/generated/hats/red-miner-hard-hat/frame_10.png +0 -0
  2521. package/public/assets/generated/hats/red-miner-hard-hat/frame_11.png +0 -0
  2522. package/public/assets/generated/hats/red-miner-hard-hat/frame_12.png +0 -0
  2523. package/public/assets/generated/hats/red-miner-hard-hat/frame_13.png +0 -0
  2524. package/public/assets/generated/hats/red-miner-hard-hat/frame_14.png +0 -0
  2525. package/public/assets/generated/hats/red-miner-hard-hat/frame_15.png +0 -0
  2526. package/public/assets/generated/hats/ribbon/frame_00.png +0 -0
  2527. package/public/assets/generated/hats/ribbon/frame_01.png +0 -0
  2528. package/public/assets/generated/hats/ribbon/frame_02.png +0 -0
  2529. package/public/assets/generated/hats/ribbon/frame_03.png +0 -0
  2530. package/public/assets/generated/hats/ribbon/frame_04.png +0 -0
  2531. package/public/assets/generated/hats/ribbon/frame_05.png +0 -0
  2532. package/public/assets/generated/hats/ribbon/frame_06.png +0 -0
  2533. package/public/assets/generated/hats/ribbon/frame_07.png +0 -0
  2534. package/public/assets/generated/hats/ribbon/frame_08.png +0 -0
  2535. package/public/assets/generated/hats/ribbon/frame_09.png +0 -0
  2536. package/public/assets/generated/hats/ribbon/frame_10.png +0 -0
  2537. package/public/assets/generated/hats/ribbon/frame_11.png +0 -0
  2538. package/public/assets/generated/hats/ribbon/frame_12.png +0 -0
  2539. package/public/assets/generated/hats/ribbon/frame_13.png +0 -0
  2540. package/public/assets/generated/hats/ribbon/frame_14.png +0 -0
  2541. package/public/assets/generated/hats/ribbon/frame_15.png +0 -0
  2542. package/public/assets/generated/hats/robin-hood/frame_00.png +0 -0
  2543. package/public/assets/generated/hats/robin-hood/frame_01.png +0 -0
  2544. package/public/assets/generated/hats/robin-hood/frame_02.png +0 -0
  2545. package/public/assets/generated/hats/robin-hood/frame_03.png +0 -0
  2546. package/public/assets/generated/hats/robin-hood/frame_04.png +0 -0
  2547. package/public/assets/generated/hats/robin-hood/frame_05.png +0 -0
  2548. package/public/assets/generated/hats/robin-hood/frame_06.png +0 -0
  2549. package/public/assets/generated/hats/robin-hood/frame_07.png +0 -0
  2550. package/public/assets/generated/hats/robin-hood/frame_08.png +0 -0
  2551. package/public/assets/generated/hats/robin-hood/frame_09.png +0 -0
  2552. package/public/assets/generated/hats/robin-hood/frame_10.png +0 -0
  2553. package/public/assets/generated/hats/robin-hood/frame_11.png +0 -0
  2554. package/public/assets/generated/hats/robin-hood/frame_12.png +0 -0
  2555. package/public/assets/generated/hats/robin-hood/frame_13.png +0 -0
  2556. package/public/assets/generated/hats/robin-hood/frame_14.png +0 -0
  2557. package/public/assets/generated/hats/robin-hood/frame_15.png +0 -0
  2558. package/public/assets/generated/hats/sailor-cap/frame_00.png +0 -0
  2559. package/public/assets/generated/hats/sailor-cap/frame_01.png +0 -0
  2560. package/public/assets/generated/hats/sailor-cap/frame_02.png +0 -0
  2561. package/public/assets/generated/hats/sailor-cap/frame_03.png +0 -0
  2562. package/public/assets/generated/hats/sailor-cap/frame_04.png +0 -0
  2563. package/public/assets/generated/hats/sailor-cap/frame_05.png +0 -0
  2564. package/public/assets/generated/hats/sailor-cap/frame_06.png +0 -0
  2565. package/public/assets/generated/hats/sailor-cap/frame_07.png +0 -0
  2566. package/public/assets/generated/hats/sailor-cap/frame_08.png +0 -0
  2567. package/public/assets/generated/hats/sailor-cap/frame_09.png +0 -0
  2568. package/public/assets/generated/hats/sailor-cap/frame_10.png +0 -0
  2569. package/public/assets/generated/hats/sailor-cap/frame_11.png +0 -0
  2570. package/public/assets/generated/hats/sailor-cap/frame_12.png +0 -0
  2571. package/public/assets/generated/hats/sailor-cap/frame_13.png +0 -0
  2572. package/public/assets/generated/hats/sailor-cap/frame_14.png +0 -0
  2573. package/public/assets/generated/hats/sailor-cap/frame_15.png +0 -0
  2574. package/public/assets/generated/hats/sashimi-hat/frame_00.png +0 -0
  2575. package/public/assets/generated/hats/sashimi-hat/frame_01.png +0 -0
  2576. package/public/assets/generated/hats/sashimi-hat/frame_02.png +0 -0
  2577. package/public/assets/generated/hats/sashimi-hat/frame_03.png +0 -0
  2578. package/public/assets/generated/hats/sashimi-hat/frame_04.png +0 -0
  2579. package/public/assets/generated/hats/sashimi-hat/frame_05.png +0 -0
  2580. package/public/assets/generated/hats/sashimi-hat/frame_06.png +0 -0
  2581. package/public/assets/generated/hats/sashimi-hat/frame_07.png +0 -0
  2582. package/public/assets/generated/hats/sashimi-hat/frame_08.png +0 -0
  2583. package/public/assets/generated/hats/sashimi-hat/frame_09.png +0 -0
  2584. package/public/assets/generated/hats/sashimi-hat/frame_10.png +0 -0
  2585. package/public/assets/generated/hats/sashimi-hat/frame_11.png +0 -0
  2586. package/public/assets/generated/hats/sashimi-hat/frame_12.png +0 -0
  2587. package/public/assets/generated/hats/sashimi-hat/frame_13.png +0 -0
  2588. package/public/assets/generated/hats/sashimi-hat/frame_14.png +0 -0
  2589. package/public/assets/generated/hats/sashimi-hat/frame_15.png +0 -0
  2590. package/public/assets/generated/hats/satellite-dish/frame_00.png +0 -0
  2591. package/public/assets/generated/hats/satellite-dish/frame_01.png +0 -0
  2592. package/public/assets/generated/hats/satellite-dish/frame_02.png +0 -0
  2593. package/public/assets/generated/hats/satellite-dish/frame_03.png +0 -0
  2594. package/public/assets/generated/hats/satellite-dish/frame_04.png +0 -0
  2595. package/public/assets/generated/hats/satellite-dish/frame_05.png +0 -0
  2596. package/public/assets/generated/hats/satellite-dish/frame_06.png +0 -0
  2597. package/public/assets/generated/hats/satellite-dish/frame_07.png +0 -0
  2598. package/public/assets/generated/hats/satellite-dish/frame_08.png +0 -0
  2599. package/public/assets/generated/hats/satellite-dish/frame_09.png +0 -0
  2600. package/public/assets/generated/hats/satellite-dish/frame_10.png +0 -0
  2601. package/public/assets/generated/hats/satellite-dish/frame_11.png +0 -0
  2602. package/public/assets/generated/hats/satellite-dish/frame_12.png +0 -0
  2603. package/public/assets/generated/hats/satellite-dish/frame_13.png +0 -0
  2604. package/public/assets/generated/hats/satellite-dish/frame_14.png +0 -0
  2605. package/public/assets/generated/hats/satellite-dish/frame_15.png +0 -0
  2606. package/public/assets/generated/hats/scuba-helmet/frame_00.png +0 -0
  2607. package/public/assets/generated/hats/scuba-helmet/frame_01.png +0 -0
  2608. package/public/assets/generated/hats/scuba-helmet/frame_02.png +0 -0
  2609. package/public/assets/generated/hats/scuba-helmet/frame_03.png +0 -0
  2610. package/public/assets/generated/hats/scuba-helmet/frame_04.png +0 -0
  2611. package/public/assets/generated/hats/scuba-helmet/frame_05.png +0 -0
  2612. package/public/assets/generated/hats/scuba-helmet/frame_06.png +0 -0
  2613. package/public/assets/generated/hats/scuba-helmet/frame_07.png +0 -0
  2614. package/public/assets/generated/hats/scuba-helmet/frame_08.png +0 -0
  2615. package/public/assets/generated/hats/scuba-helmet/frame_09.png +0 -0
  2616. package/public/assets/generated/hats/scuba-helmet/frame_10.png +0 -0
  2617. package/public/assets/generated/hats/scuba-helmet/frame_11.png +0 -0
  2618. package/public/assets/generated/hats/scuba-helmet/frame_12.png +0 -0
  2619. package/public/assets/generated/hats/scuba-helmet/frame_13.png +0 -0
  2620. package/public/assets/generated/hats/scuba-helmet/frame_14.png +0 -0
  2621. package/public/assets/generated/hats/scuba-helmet/frame_15.png +0 -0
  2622. package/public/assets/generated/hats/snorkle-goggles/frame_00.png +0 -0
  2623. package/public/assets/generated/hats/snorkle-goggles/frame_01.png +0 -0
  2624. package/public/assets/generated/hats/snorkle-goggles/frame_02.png +0 -0
  2625. package/public/assets/generated/hats/snorkle-goggles/frame_03.png +0 -0
  2626. package/public/assets/generated/hats/snorkle-goggles/frame_04.png +0 -0
  2627. package/public/assets/generated/hats/snorkle-goggles/frame_05.png +0 -0
  2628. package/public/assets/generated/hats/snorkle-goggles/frame_06.png +0 -0
  2629. package/public/assets/generated/hats/snorkle-goggles/frame_07.png +0 -0
  2630. package/public/assets/generated/hats/snorkle-goggles/frame_08.png +0 -0
  2631. package/public/assets/generated/hats/snorkle-goggles/frame_09.png +0 -0
  2632. package/public/assets/generated/hats/snorkle-goggles/frame_10.png +0 -0
  2633. package/public/assets/generated/hats/snorkle-goggles/frame_11.png +0 -0
  2634. package/public/assets/generated/hats/snorkle-goggles/frame_12.png +0 -0
  2635. package/public/assets/generated/hats/snorkle-goggles/frame_13.png +0 -0
  2636. package/public/assets/generated/hats/snorkle-goggles/frame_14.png +0 -0
  2637. package/public/assets/generated/hats/snorkle-goggles/frame_15.png +0 -0
  2638. package/public/assets/generated/hats/space/frame_00.png +0 -0
  2639. package/public/assets/generated/hats/space/frame_01.png +0 -0
  2640. package/public/assets/generated/hats/space/frame_02.png +0 -0
  2641. package/public/assets/generated/hats/space/frame_03.png +0 -0
  2642. package/public/assets/generated/hats/space/frame_04.png +0 -0
  2643. package/public/assets/generated/hats/space/frame_05.png +0 -0
  2644. package/public/assets/generated/hats/space/frame_06.png +0 -0
  2645. package/public/assets/generated/hats/space/frame_07.png +0 -0
  2646. package/public/assets/generated/hats/space/frame_08.png +0 -0
  2647. package/public/assets/generated/hats/space/frame_09.png +0 -0
  2648. package/public/assets/generated/hats/space/frame_10.png +0 -0
  2649. package/public/assets/generated/hats/space/frame_11.png +0 -0
  2650. package/public/assets/generated/hats/space/frame_12.png +0 -0
  2651. package/public/assets/generated/hats/space/frame_13.png +0 -0
  2652. package/public/assets/generated/hats/space/frame_14.png +0 -0
  2653. package/public/assets/generated/hats/space/frame_15.png +0 -0
  2654. package/public/assets/generated/hats/space-helmet/frame_00.png +0 -0
  2655. package/public/assets/generated/hats/space-helmet/frame_01.png +0 -0
  2656. package/public/assets/generated/hats/space-helmet/frame_02.png +0 -0
  2657. package/public/assets/generated/hats/space-helmet/frame_03.png +0 -0
  2658. package/public/assets/generated/hats/space-helmet/frame_04.png +0 -0
  2659. package/public/assets/generated/hats/space-helmet/frame_05.png +0 -0
  2660. package/public/assets/generated/hats/space-helmet/frame_06.png +0 -0
  2661. package/public/assets/generated/hats/space-helmet/frame_07.png +0 -0
  2662. package/public/assets/generated/hats/space-helmet/frame_08.png +0 -0
  2663. package/public/assets/generated/hats/space-helmet/frame_09.png +0 -0
  2664. package/public/assets/generated/hats/space-helmet/frame_10.png +0 -0
  2665. package/public/assets/generated/hats/space-helmet/frame_11.png +0 -0
  2666. package/public/assets/generated/hats/space-helmet/frame_12.png +0 -0
  2667. package/public/assets/generated/hats/space-helmet/frame_13.png +0 -0
  2668. package/public/assets/generated/hats/space-helmet/frame_14.png +0 -0
  2669. package/public/assets/generated/hats/space-helmet/frame_15.png +0 -0
  2670. package/public/assets/generated/hats/spike-hair/frame_00.png +0 -0
  2671. package/public/assets/generated/hats/spike-hair/frame_01.png +0 -0
  2672. package/public/assets/generated/hats/spike-hair/frame_02.png +0 -0
  2673. package/public/assets/generated/hats/spike-hair/frame_03.png +0 -0
  2674. package/public/assets/generated/hats/spike-hair/frame_04.png +0 -0
  2675. package/public/assets/generated/hats/spike-hair/frame_05.png +0 -0
  2676. package/public/assets/generated/hats/spike-hair/frame_06.png +0 -0
  2677. package/public/assets/generated/hats/spike-hair/frame_07.png +0 -0
  2678. package/public/assets/generated/hats/spike-hair/frame_08.png +0 -0
  2679. package/public/assets/generated/hats/spike-hair/frame_09.png +0 -0
  2680. package/public/assets/generated/hats/spike-hair/frame_10.png +0 -0
  2681. package/public/assets/generated/hats/spike-hair/frame_11.png +0 -0
  2682. package/public/assets/generated/hats/spike-hair/frame_12.png +0 -0
  2683. package/public/assets/generated/hats/spike-hair/frame_13.png +0 -0
  2684. package/public/assets/generated/hats/spike-hair/frame_14.png +0 -0
  2685. package/public/assets/generated/hats/spike-hair/frame_15.png +0 -0
  2686. package/public/assets/generated/hats/star-wizard-hat/frame_00.png +0 -0
  2687. package/public/assets/generated/hats/star-wizard-hat/frame_01.png +0 -0
  2688. package/public/assets/generated/hats/star-wizard-hat/frame_02.png +0 -0
  2689. package/public/assets/generated/hats/star-wizard-hat/frame_03.png +0 -0
  2690. package/public/assets/generated/hats/star-wizard-hat/frame_04.png +0 -0
  2691. package/public/assets/generated/hats/star-wizard-hat/frame_05.png +0 -0
  2692. package/public/assets/generated/hats/star-wizard-hat/frame_06.png +0 -0
  2693. package/public/assets/generated/hats/star-wizard-hat/frame_07.png +0 -0
  2694. package/public/assets/generated/hats/star-wizard-hat/frame_08.png +0 -0
  2695. package/public/assets/generated/hats/star-wizard-hat/frame_09.png +0 -0
  2696. package/public/assets/generated/hats/star-wizard-hat/frame_10.png +0 -0
  2697. package/public/assets/generated/hats/star-wizard-hat/frame_11.png +0 -0
  2698. package/public/assets/generated/hats/star-wizard-hat/frame_12.png +0 -0
  2699. package/public/assets/generated/hats/star-wizard-hat/frame_13.png +0 -0
  2700. package/public/assets/generated/hats/star-wizard-hat/frame_14.png +0 -0
  2701. package/public/assets/generated/hats/star-wizard-hat/frame_15.png +0 -0
  2702. package/public/assets/generated/hats/straight-hair/frame_00.png +0 -0
  2703. package/public/assets/generated/hats/straight-hair/frame_01.png +0 -0
  2704. package/public/assets/generated/hats/straight-hair/frame_02.png +0 -0
  2705. package/public/assets/generated/hats/straight-hair/frame_03.png +0 -0
  2706. package/public/assets/generated/hats/straight-hair/frame_04.png +0 -0
  2707. package/public/assets/generated/hats/straight-hair/frame_05.png +0 -0
  2708. package/public/assets/generated/hats/straight-hair/frame_06.png +0 -0
  2709. package/public/assets/generated/hats/straight-hair/frame_07.png +0 -0
  2710. package/public/assets/generated/hats/straight-hair/frame_08.png +0 -0
  2711. package/public/assets/generated/hats/straight-hair/frame_09.png +0 -0
  2712. package/public/assets/generated/hats/straight-hair/frame_10.png +0 -0
  2713. package/public/assets/generated/hats/straight-hair/frame_11.png +0 -0
  2714. package/public/assets/generated/hats/straight-hair/frame_12.png +0 -0
  2715. package/public/assets/generated/hats/straight-hair/frame_13.png +0 -0
  2716. package/public/assets/generated/hats/straight-hair/frame_14.png +0 -0
  2717. package/public/assets/generated/hats/straight-hair/frame_15.png +0 -0
  2718. package/public/assets/generated/hats/straw-hat/frame_00.png +0 -0
  2719. package/public/assets/generated/hats/straw-hat/frame_01.png +0 -0
  2720. package/public/assets/generated/hats/straw-hat/frame_02.png +0 -0
  2721. package/public/assets/generated/hats/straw-hat/frame_03.png +0 -0
  2722. package/public/assets/generated/hats/straw-hat/frame_04.png +0 -0
  2723. package/public/assets/generated/hats/straw-hat/frame_05.png +0 -0
  2724. package/public/assets/generated/hats/straw-hat/frame_06.png +0 -0
  2725. package/public/assets/generated/hats/straw-hat/frame_07.png +0 -0
  2726. package/public/assets/generated/hats/straw-hat/frame_08.png +0 -0
  2727. package/public/assets/generated/hats/straw-hat/frame_09.png +0 -0
  2728. package/public/assets/generated/hats/straw-hat/frame_10.png +0 -0
  2729. package/public/assets/generated/hats/straw-hat/frame_11.png +0 -0
  2730. package/public/assets/generated/hats/straw-hat/frame_12.png +0 -0
  2731. package/public/assets/generated/hats/straw-hat/frame_13.png +0 -0
  2732. package/public/assets/generated/hats/straw-hat/frame_14.png +0 -0
  2733. package/public/assets/generated/hats/straw-hat/frame_15.png +0 -0
  2734. package/public/assets/generated/hats/stringy-hair/frame_00.png +0 -0
  2735. package/public/assets/generated/hats/stringy-hair/frame_01.png +0 -0
  2736. package/public/assets/generated/hats/stringy-hair/frame_02.png +0 -0
  2737. package/public/assets/generated/hats/stringy-hair/frame_03.png +0 -0
  2738. package/public/assets/generated/hats/stringy-hair/frame_04.png +0 -0
  2739. package/public/assets/generated/hats/stringy-hair/frame_05.png +0 -0
  2740. package/public/assets/generated/hats/stringy-hair/frame_06.png +0 -0
  2741. package/public/assets/generated/hats/stringy-hair/frame_07.png +0 -0
  2742. package/public/assets/generated/hats/stringy-hair/frame_08.png +0 -0
  2743. package/public/assets/generated/hats/stringy-hair/frame_09.png +0 -0
  2744. package/public/assets/generated/hats/stringy-hair/frame_10.png +0 -0
  2745. package/public/assets/generated/hats/stringy-hair/frame_11.png +0 -0
  2746. package/public/assets/generated/hats/stringy-hair/frame_12.png +0 -0
  2747. package/public/assets/generated/hats/stringy-hair/frame_13.png +0 -0
  2748. package/public/assets/generated/hats/stringy-hair/frame_14.png +0 -0
  2749. package/public/assets/generated/hats/stringy-hair/frame_15.png +0 -0
  2750. package/public/assets/generated/hats/top-hat/frame_00.png +0 -0
  2751. package/public/assets/generated/hats/top-hat/frame_01.png +0 -0
  2752. package/public/assets/generated/hats/top-hat/frame_02.png +0 -0
  2753. package/public/assets/generated/hats/top-hat/frame_03.png +0 -0
  2754. package/public/assets/generated/hats/top-hat/frame_04.png +0 -0
  2755. package/public/assets/generated/hats/top-hat/frame_05.png +0 -0
  2756. package/public/assets/generated/hats/top-hat/frame_06.png +0 -0
  2757. package/public/assets/generated/hats/top-hat/frame_07.png +0 -0
  2758. package/public/assets/generated/hats/top-hat/frame_08.png +0 -0
  2759. package/public/assets/generated/hats/top-hat/frame_09.png +0 -0
  2760. package/public/assets/generated/hats/top-hat/frame_10.png +0 -0
  2761. package/public/assets/generated/hats/top-hat/frame_11.png +0 -0
  2762. package/public/assets/generated/hats/top-hat/frame_12.png +0 -0
  2763. package/public/assets/generated/hats/top-hat/frame_13.png +0 -0
  2764. package/public/assets/generated/hats/top-hat/frame_14.png +0 -0
  2765. package/public/assets/generated/hats/top-hat/frame_15.png +0 -0
  2766. package/public/assets/generated/hats/trucker-cap/frame_00.png +0 -0
  2767. package/public/assets/generated/hats/trucker-cap/frame_01.png +0 -0
  2768. package/public/assets/generated/hats/trucker-cap/frame_02.png +0 -0
  2769. package/public/assets/generated/hats/trucker-cap/frame_03.png +0 -0
  2770. package/public/assets/generated/hats/trucker-cap/frame_04.png +0 -0
  2771. package/public/assets/generated/hats/trucker-cap/frame_05.png +0 -0
  2772. package/public/assets/generated/hats/trucker-cap/frame_06.png +0 -0
  2773. package/public/assets/generated/hats/trucker-cap/frame_07.png +0 -0
  2774. package/public/assets/generated/hats/trucker-cap/frame_08.png +0 -0
  2775. package/public/assets/generated/hats/trucker-cap/frame_09.png +0 -0
  2776. package/public/assets/generated/hats/trucker-cap/frame_10.png +0 -0
  2777. package/public/assets/generated/hats/trucker-cap/frame_11.png +0 -0
  2778. package/public/assets/generated/hats/trucker-cap/frame_12.png +0 -0
  2779. package/public/assets/generated/hats/trucker-cap/frame_13.png +0 -0
  2780. package/public/assets/generated/hats/trucker-cap/frame_14.png +0 -0
  2781. package/public/assets/generated/hats/trucker-cap/frame_15.png +0 -0
  2782. package/public/assets/generated/hats/visor/frame_00.png +0 -0
  2783. package/public/assets/generated/hats/visor/frame_01.png +0 -0
  2784. package/public/assets/generated/hats/visor/frame_02.png +0 -0
  2785. package/public/assets/generated/hats/visor/frame_03.png +0 -0
  2786. package/public/assets/generated/hats/visor/frame_04.png +0 -0
  2787. package/public/assets/generated/hats/visor/frame_05.png +0 -0
  2788. package/public/assets/generated/hats/visor/frame_06.png +0 -0
  2789. package/public/assets/generated/hats/visor/frame_07.png +0 -0
  2790. package/public/assets/generated/hats/visor/frame_08.png +0 -0
  2791. package/public/assets/generated/hats/visor/frame_09.png +0 -0
  2792. package/public/assets/generated/hats/visor/frame_10.png +0 -0
  2793. package/public/assets/generated/hats/visor/frame_11.png +0 -0
  2794. package/public/assets/generated/hats/visor/frame_12.png +0 -0
  2795. package/public/assets/generated/hats/visor/frame_13.png +0 -0
  2796. package/public/assets/generated/hats/visor/frame_14.png +0 -0
  2797. package/public/assets/generated/hats/visor/frame_15.png +0 -0
  2798. package/public/assets/generated/hats/white-anime-hair/frame_00.png +0 -0
  2799. package/public/assets/generated/hats/white-anime-hair/frame_01.png +0 -0
  2800. package/public/assets/generated/hats/white-anime-hair/frame_02.png +0 -0
  2801. package/public/assets/generated/hats/white-anime-hair/frame_03.png +0 -0
  2802. package/public/assets/generated/hats/white-anime-hair/frame_04.png +0 -0
  2803. package/public/assets/generated/hats/white-anime-hair/frame_05.png +0 -0
  2804. package/public/assets/generated/hats/white-anime-hair/frame_06.png +0 -0
  2805. package/public/assets/generated/hats/white-anime-hair/frame_07.png +0 -0
  2806. package/public/assets/generated/hats/white-anime-hair/frame_08.png +0 -0
  2807. package/public/assets/generated/hats/white-anime-hair/frame_09.png +0 -0
  2808. package/public/assets/generated/hats/white-anime-hair/frame_10.png +0 -0
  2809. package/public/assets/generated/hats/white-anime-hair/frame_11.png +0 -0
  2810. package/public/assets/generated/hats/white-anime-hair/frame_12.png +0 -0
  2811. package/public/assets/generated/hats/white-anime-hair/frame_13.png +0 -0
  2812. package/public/assets/generated/hats/white-anime-hair/frame_14.png +0 -0
  2813. package/public/assets/generated/hats/white-anime-hair/frame_15.png +0 -0
  2814. package/public/assets/generated/hats/white-bucket-hat/frame_00.png +0 -0
  2815. package/public/assets/generated/hats/white-bucket-hat/frame_01.png +0 -0
  2816. package/public/assets/generated/hats/white-bucket-hat/frame_02.png +0 -0
  2817. package/public/assets/generated/hats/white-bucket-hat/frame_03.png +0 -0
  2818. package/public/assets/generated/hats/white-bucket-hat/frame_04.png +0 -0
  2819. package/public/assets/generated/hats/white-bucket-hat/frame_05.png +0 -0
  2820. package/public/assets/generated/hats/white-bucket-hat/frame_06.png +0 -0
  2821. package/public/assets/generated/hats/white-bucket-hat/frame_07.png +0 -0
  2822. package/public/assets/generated/hats/white-bucket-hat/frame_08.png +0 -0
  2823. package/public/assets/generated/hats/white-bucket-hat/frame_09.png +0 -0
  2824. package/public/assets/generated/hats/white-bucket-hat/frame_10.png +0 -0
  2825. package/public/assets/generated/hats/white-bucket-hat/frame_11.png +0 -0
  2826. package/public/assets/generated/hats/white-bucket-hat/frame_12.png +0 -0
  2827. package/public/assets/generated/hats/white-bucket-hat/frame_13.png +0 -0
  2828. package/public/assets/generated/hats/white-bucket-hat/frame_14.png +0 -0
  2829. package/public/assets/generated/hats/white-bucket-hat/frame_15.png +0 -0
  2830. package/public/assets/generated/hats/white-v-mushroom/frame_00.png +0 -0
  2831. package/public/assets/generated/hats/white-v-mushroom/frame_01.png +0 -0
  2832. package/public/assets/generated/hats/white-v-mushroom/frame_02.png +0 -0
  2833. package/public/assets/generated/hats/white-v-mushroom/frame_03.png +0 -0
  2834. package/public/assets/generated/hats/white-v-mushroom/frame_04.png +0 -0
  2835. package/public/assets/generated/hats/white-v-mushroom/frame_05.png +0 -0
  2836. package/public/assets/generated/hats/white-v-mushroom/frame_06.png +0 -0
  2837. package/public/assets/generated/hats/white-v-mushroom/frame_07.png +0 -0
  2838. package/public/assets/generated/hats/white-v-mushroom/frame_08.png +0 -0
  2839. package/public/assets/generated/hats/white-v-mushroom/frame_09.png +0 -0
  2840. package/public/assets/generated/hats/white-v-mushroom/frame_10.png +0 -0
  2841. package/public/assets/generated/hats/white-v-mushroom/frame_11.png +0 -0
  2842. package/public/assets/generated/hats/white-v-mushroom/frame_12.png +0 -0
  2843. package/public/assets/generated/hats/white-v-mushroom/frame_13.png +0 -0
  2844. package/public/assets/generated/hats/white-v-mushroom/frame_14.png +0 -0
  2845. package/public/assets/generated/hats/white-v-mushroom/frame_15.png +0 -0
  2846. package/public/assets/generated/hats/wild-hair/frame_00.png +0 -0
  2847. package/public/assets/generated/hats/wild-hair/frame_01.png +0 -0
  2848. package/public/assets/generated/hats/wild-hair/frame_02.png +0 -0
  2849. package/public/assets/generated/hats/wild-hair/frame_03.png +0 -0
  2850. package/public/assets/generated/hats/wild-hair/frame_04.png +0 -0
  2851. package/public/assets/generated/hats/wild-hair/frame_05.png +0 -0
  2852. package/public/assets/generated/hats/wild-hair/frame_06.png +0 -0
  2853. package/public/assets/generated/hats/wild-hair/frame_07.png +0 -0
  2854. package/public/assets/generated/hats/wild-hair/frame_08.png +0 -0
  2855. package/public/assets/generated/hats/wild-hair/frame_09.png +0 -0
  2856. package/public/assets/generated/hats/wild-hair/frame_10.png +0 -0
  2857. package/public/assets/generated/hats/wild-hair/frame_11.png +0 -0
  2858. package/public/assets/generated/hats/wild-hair/frame_12.png +0 -0
  2859. package/public/assets/generated/hats/wild-hair/frame_13.png +0 -0
  2860. package/public/assets/generated/hats/wild-hair/frame_14.png +0 -0
  2861. package/public/assets/generated/hats/wild-hair/frame_15.png +0 -0
  2862. package/public/assets/generated/hats/wizard-hat/frame_00.png +0 -0
  2863. package/public/assets/generated/hats/wizard-hat/frame_01.png +0 -0
  2864. package/public/assets/generated/hats/wizard-hat/frame_02.png +0 -0
  2865. package/public/assets/generated/hats/wizard-hat/frame_03.png +0 -0
  2866. package/public/assets/generated/hats/wizard-hat/frame_04.png +0 -0
  2867. package/public/assets/generated/hats/wizard-hat/frame_05.png +0 -0
  2868. package/public/assets/generated/hats/wizard-hat/frame_06.png +0 -0
  2869. package/public/assets/generated/hats/wizard-hat/frame_07.png +0 -0
  2870. package/public/assets/generated/hats/wizard-hat/frame_08.png +0 -0
  2871. package/public/assets/generated/hats/wizard-hat/frame_09.png +0 -0
  2872. package/public/assets/generated/hats/wizard-hat/frame_10.png +0 -0
  2873. package/public/assets/generated/hats/wizard-hat/frame_11.png +0 -0
  2874. package/public/assets/generated/hats/wizard-hat/frame_12.png +0 -0
  2875. package/public/assets/generated/hats/wizard-hat/frame_13.png +0 -0
  2876. package/public/assets/generated/hats/wizard-hat/frame_14.png +0 -0
  2877. package/public/assets/generated/hats/wizard-hat/frame_15.png +0 -0
  2878. package/public/assets/generated/hats/yellow-beanie/frame_00.png +0 -0
  2879. package/public/assets/generated/hats/yellow-beanie/frame_01.png +0 -0
  2880. package/public/assets/generated/hats/yellow-beanie/frame_02.png +0 -0
  2881. package/public/assets/generated/hats/yellow-beanie/frame_03.png +0 -0
  2882. package/public/assets/generated/hats/yellow-beanie/frame_04.png +0 -0
  2883. package/public/assets/generated/hats/yellow-beanie/frame_05.png +0 -0
  2884. package/public/assets/generated/hats/yellow-beanie/frame_06.png +0 -0
  2885. package/public/assets/generated/hats/yellow-beanie/frame_07.png +0 -0
  2886. package/public/assets/generated/hats/yellow-beanie/frame_08.png +0 -0
  2887. package/public/assets/generated/hats/yellow-beanie/frame_09.png +0 -0
  2888. package/public/assets/generated/hats/yellow-beanie/frame_10.png +0 -0
  2889. package/public/assets/generated/hats/yellow-beanie/frame_11.png +0 -0
  2890. package/public/assets/generated/hats/yellow-beanie/frame_12.png +0 -0
  2891. package/public/assets/generated/hats/yellow-beanie/frame_13.png +0 -0
  2892. package/public/assets/generated/hats/yellow-beanie/frame_14.png +0 -0
  2893. package/public/assets/generated/hats/yellow-beanie/frame_15.png +0 -0
  2894. package/public/assets/generated/hats/yellow-e-mushroom/frame_00.png +0 -0
  2895. package/public/assets/generated/hats/yellow-e-mushroom/frame_01.png +0 -0
  2896. package/public/assets/generated/hats/yellow-e-mushroom/frame_02.png +0 -0
  2897. package/public/assets/generated/hats/yellow-e-mushroom/frame_03.png +0 -0
  2898. package/public/assets/generated/hats/yellow-e-mushroom/frame_04.png +0 -0
  2899. package/public/assets/generated/hats/yellow-e-mushroom/frame_05.png +0 -0
  2900. package/public/assets/generated/hats/yellow-e-mushroom/frame_06.png +0 -0
  2901. package/public/assets/generated/hats/yellow-e-mushroom/frame_07.png +0 -0
  2902. package/public/assets/generated/hats/yellow-e-mushroom/frame_08.png +0 -0
  2903. package/public/assets/generated/hats/yellow-e-mushroom/frame_09.png +0 -0
  2904. package/public/assets/generated/hats/yellow-e-mushroom/frame_10.png +0 -0
  2905. package/public/assets/generated/hats/yellow-e-mushroom/frame_11.png +0 -0
  2906. package/public/assets/generated/hats/yellow-e-mushroom/frame_12.png +0 -0
  2907. package/public/assets/generated/hats/yellow-e-mushroom/frame_13.png +0 -0
  2908. package/public/assets/generated/hats/yellow-e-mushroom/frame_14.png +0 -0
  2909. package/public/assets/generated/hats/yellow-e-mushroom/frame_15.png +0 -0
  2910. package/public/assets/generated/legendaries/1/frame_00.png +0 -0
  2911. package/public/assets/generated/legendaries/1/frame_01.png +0 -0
  2912. package/public/assets/generated/legendaries/1/frame_02.png +0 -0
  2913. package/public/assets/generated/legendaries/1/frame_03.png +0 -0
  2914. package/public/assets/generated/legendaries/1/frame_04.png +0 -0
  2915. package/public/assets/generated/legendaries/1/frame_05.png +0 -0
  2916. package/public/assets/generated/legendaries/1/frame_06.png +0 -0
  2917. package/public/assets/generated/legendaries/1/frame_07.png +0 -0
  2918. package/public/assets/generated/legendaries/1/frame_08.png +0 -0
  2919. package/public/assets/generated/legendaries/1/frame_09.png +0 -0
  2920. package/public/assets/generated/legendaries/1/frame_10.png +0 -0
  2921. package/public/assets/generated/legendaries/1/frame_11.png +0 -0
  2922. package/public/assets/generated/legendaries/1/frame_12.png +0 -0
  2923. package/public/assets/generated/legendaries/1/frame_13.png +0 -0
  2924. package/public/assets/generated/legendaries/1/frame_14.png +0 -0
  2925. package/public/assets/generated/legendaries/10/frame_00.png +0 -0
  2926. package/public/assets/generated/legendaries/10/frame_01.png +0 -0
  2927. package/public/assets/generated/legendaries/10/frame_02.png +0 -0
  2928. package/public/assets/generated/legendaries/10/frame_03.png +0 -0
  2929. package/public/assets/generated/legendaries/10/frame_04.png +0 -0
  2930. package/public/assets/generated/legendaries/10/frame_05.png +0 -0
  2931. package/public/assets/generated/legendaries/10/frame_06.png +0 -0
  2932. package/public/assets/generated/legendaries/10/frame_07.png +0 -0
  2933. package/public/assets/generated/legendaries/10/frame_08.png +0 -0
  2934. package/public/assets/generated/legendaries/10/frame_09.png +0 -0
  2935. package/public/assets/generated/legendaries/10/frame_10.png +0 -0
  2936. package/public/assets/generated/legendaries/10/frame_11.png +0 -0
  2937. package/public/assets/generated/legendaries/10/frame_12.png +0 -0
  2938. package/public/assets/generated/legendaries/10/frame_13.png +0 -0
  2939. package/public/assets/generated/legendaries/10/frame_14.png +0 -0
  2940. package/public/assets/generated/legendaries/2/frame_00.png +0 -0
  2941. package/public/assets/generated/legendaries/2/frame_01.png +0 -0
  2942. package/public/assets/generated/legendaries/2/frame_02.png +0 -0
  2943. package/public/assets/generated/legendaries/2/frame_03.png +0 -0
  2944. package/public/assets/generated/legendaries/2/frame_04.png +0 -0
  2945. package/public/assets/generated/legendaries/2/frame_05.png +0 -0
  2946. package/public/assets/generated/legendaries/2/frame_06.png +0 -0
  2947. package/public/assets/generated/legendaries/2/frame_07.png +0 -0
  2948. package/public/assets/generated/legendaries/2/frame_08.png +0 -0
  2949. package/public/assets/generated/legendaries/2/frame_09.png +0 -0
  2950. package/public/assets/generated/legendaries/2/frame_10.png +0 -0
  2951. package/public/assets/generated/legendaries/2/frame_11.png +0 -0
  2952. package/public/assets/generated/legendaries/2/frame_12.png +0 -0
  2953. package/public/assets/generated/legendaries/2/frame_13.png +0 -0
  2954. package/public/assets/generated/legendaries/2/frame_14.png +0 -0
  2955. package/public/assets/generated/legendaries/3/frame_00.png +0 -0
  2956. package/public/assets/generated/legendaries/3/frame_01.png +0 -0
  2957. package/public/assets/generated/legendaries/3/frame_02.png +0 -0
  2958. package/public/assets/generated/legendaries/3/frame_03.png +0 -0
  2959. package/public/assets/generated/legendaries/3/frame_04.png +0 -0
  2960. package/public/assets/generated/legendaries/3/frame_05.png +0 -0
  2961. package/public/assets/generated/legendaries/3/frame_06.png +0 -0
  2962. package/public/assets/generated/legendaries/3/frame_07.png +0 -0
  2963. package/public/assets/generated/legendaries/3/frame_08.png +0 -0
  2964. package/public/assets/generated/legendaries/3/frame_09.png +0 -0
  2965. package/public/assets/generated/legendaries/3/frame_10.png +0 -0
  2966. package/public/assets/generated/legendaries/3/frame_11.png +0 -0
  2967. package/public/assets/generated/legendaries/3/frame_12.png +0 -0
  2968. package/public/assets/generated/legendaries/3/frame_13.png +0 -0
  2969. package/public/assets/generated/legendaries/3/frame_14.png +0 -0
  2970. package/public/assets/generated/legendaries/4/frame_00.png +0 -0
  2971. package/public/assets/generated/legendaries/4/frame_01.png +0 -0
  2972. package/public/assets/generated/legendaries/4/frame_02.png +0 -0
  2973. package/public/assets/generated/legendaries/4/frame_03.png +0 -0
  2974. package/public/assets/generated/legendaries/4/frame_04.png +0 -0
  2975. package/public/assets/generated/legendaries/4/frame_05.png +0 -0
  2976. package/public/assets/generated/legendaries/4/frame_06.png +0 -0
  2977. package/public/assets/generated/legendaries/4/frame_07.png +0 -0
  2978. package/public/assets/generated/legendaries/4/frame_08.png +0 -0
  2979. package/public/assets/generated/legendaries/4/frame_09.png +0 -0
  2980. package/public/assets/generated/legendaries/4/frame_10.png +0 -0
  2981. package/public/assets/generated/legendaries/4/frame_11.png +0 -0
  2982. package/public/assets/generated/legendaries/4/frame_12.png +0 -0
  2983. package/public/assets/generated/legendaries/4/frame_13.png +0 -0
  2984. package/public/assets/generated/legendaries/4/frame_14.png +0 -0
  2985. package/public/assets/generated/legendaries/5/frame_00.png +0 -0
  2986. package/public/assets/generated/legendaries/5/frame_01.png +0 -0
  2987. package/public/assets/generated/legendaries/5/frame_02.png +0 -0
  2988. package/public/assets/generated/legendaries/5/frame_03.png +0 -0
  2989. package/public/assets/generated/legendaries/5/frame_04.png +0 -0
  2990. package/public/assets/generated/legendaries/5/frame_05.png +0 -0
  2991. package/public/assets/generated/legendaries/5/frame_06.png +0 -0
  2992. package/public/assets/generated/legendaries/5/frame_07.png +0 -0
  2993. package/public/assets/generated/legendaries/5/frame_08.png +0 -0
  2994. package/public/assets/generated/legendaries/5/frame_09.png +0 -0
  2995. package/public/assets/generated/legendaries/5/frame_10.png +0 -0
  2996. package/public/assets/generated/legendaries/5/frame_11.png +0 -0
  2997. package/public/assets/generated/legendaries/5/frame_12.png +0 -0
  2998. package/public/assets/generated/legendaries/5/frame_13.png +0 -0
  2999. package/public/assets/generated/legendaries/5/frame_14.png +0 -0
  3000. package/public/assets/generated/legendaries/6/frame_00.png +0 -0
  3001. package/public/assets/generated/legendaries/6/frame_01.png +0 -0
  3002. package/public/assets/generated/legendaries/6/frame_02.png +0 -0
  3003. package/public/assets/generated/legendaries/6/frame_03.png +0 -0
  3004. package/public/assets/generated/legendaries/6/frame_04.png +0 -0
  3005. package/public/assets/generated/legendaries/6/frame_05.png +0 -0
  3006. package/public/assets/generated/legendaries/6/frame_06.png +0 -0
  3007. package/public/assets/generated/legendaries/6/frame_07.png +0 -0
  3008. package/public/assets/generated/legendaries/6/frame_08.png +0 -0
  3009. package/public/assets/generated/legendaries/6/frame_09.png +0 -0
  3010. package/public/assets/generated/legendaries/6/frame_10.png +0 -0
  3011. package/public/assets/generated/legendaries/6/frame_11.png +0 -0
  3012. package/public/assets/generated/legendaries/6/frame_12.png +0 -0
  3013. package/public/assets/generated/legendaries/6/frame_13.png +0 -0
  3014. package/public/assets/generated/legendaries/6/frame_14.png +0 -0
  3015. package/public/assets/generated/legendaries/7/frame_00.png +0 -0
  3016. package/public/assets/generated/legendaries/7/frame_01.png +0 -0
  3017. package/public/assets/generated/legendaries/7/frame_02.png +0 -0
  3018. package/public/assets/generated/legendaries/7/frame_03.png +0 -0
  3019. package/public/assets/generated/legendaries/7/frame_04.png +0 -0
  3020. package/public/assets/generated/legendaries/7/frame_05.png +0 -0
  3021. package/public/assets/generated/legendaries/7/frame_06.png +0 -0
  3022. package/public/assets/generated/legendaries/7/frame_07.png +0 -0
  3023. package/public/assets/generated/legendaries/7/frame_08.png +0 -0
  3024. package/public/assets/generated/legendaries/7/frame_09.png +0 -0
  3025. package/public/assets/generated/legendaries/7/frame_10.png +0 -0
  3026. package/public/assets/generated/legendaries/7/frame_11.png +0 -0
  3027. package/public/assets/generated/legendaries/7/frame_12.png +0 -0
  3028. package/public/assets/generated/legendaries/7/frame_13.png +0 -0
  3029. package/public/assets/generated/legendaries/7/frame_14.png +0 -0
  3030. package/public/assets/generated/legendaries/8/frame_00.png +0 -0
  3031. package/public/assets/generated/legendaries/8/frame_01.png +0 -0
  3032. package/public/assets/generated/legendaries/8/frame_02.png +0 -0
  3033. package/public/assets/generated/legendaries/8/frame_03.png +0 -0
  3034. package/public/assets/generated/legendaries/8/frame_04.png +0 -0
  3035. package/public/assets/generated/legendaries/8/frame_05.png +0 -0
  3036. package/public/assets/generated/legendaries/8/frame_06.png +0 -0
  3037. package/public/assets/generated/legendaries/8/frame_07.png +0 -0
  3038. package/public/assets/generated/legendaries/8/frame_08.png +0 -0
  3039. package/public/assets/generated/legendaries/8/frame_09.png +0 -0
  3040. package/public/assets/generated/legendaries/8/frame_10.png +0 -0
  3041. package/public/assets/generated/legendaries/8/frame_11.png +0 -0
  3042. package/public/assets/generated/legendaries/8/frame_12.png +0 -0
  3043. package/public/assets/generated/legendaries/8/frame_13.png +0 -0
  3044. package/public/assets/generated/legendaries/8/frame_14.png +0 -0
  3045. package/public/assets/generated/legendaries/9/frame_00.png +0 -0
  3046. package/public/assets/generated/legendaries/9/frame_01.png +0 -0
  3047. package/public/assets/generated/legendaries/9/frame_02.png +0 -0
  3048. package/public/assets/generated/legendaries/9/frame_03.png +0 -0
  3049. package/public/assets/generated/legendaries/9/frame_04.png +0 -0
  3050. package/public/assets/generated/legendaries/9/frame_05.png +0 -0
  3051. package/public/assets/generated/legendaries/9/frame_06.png +0 -0
  3052. package/public/assets/generated/legendaries/9/frame_07.png +0 -0
  3053. package/public/assets/generated/legendaries/9/frame_08.png +0 -0
  3054. package/public/assets/generated/legendaries/9/frame_09.png +0 -0
  3055. package/public/assets/generated/legendaries/9/frame_10.png +0 -0
  3056. package/public/assets/generated/legendaries/9/frame_11.png +0 -0
  3057. package/public/assets/generated/legendaries/9/frame_12.png +0 -0
  3058. package/public/assets/generated/legendaries/9/frame_13.png +0 -0
  3059. package/public/assets/generated/legendaries/9/frame_14.png +0 -0
  3060. package/public/assets/generated/player-swim/frame_00.png +0 -0
  3061. package/public/assets/generated/player-swim/frame_01.png +0 -0
  3062. package/public/assets/generated/player-swim/frame_02.png +0 -0
  3063. package/public/assets/generated/player-swim/frame_03.png +0 -0
  3064. package/public/assets/generated/player-swim/frame_04.png +0 -0
  3065. package/public/assets/generated/player-swim/frame_05.png +0 -0
  3066. package/public/assets/generated/player-swim/frame_06.png +0 -0
  3067. package/public/assets/generated/player-swim/frame_07.png +0 -0
  3068. package/public/assets/generated/tank-enemies/tank-boss-blue-shark/frame_00.png +0 -0
  3069. package/public/assets/generated/tank-enemies/tank-boss-blue-shark/frame_01.png +0 -0
  3070. package/public/assets/generated/tank-enemies/tank-boss-blue-shark/frame_02.png +0 -0
  3071. package/public/assets/generated/tank-enemies/tank-boss-blue-shark/frame_03.png +0 -0
  3072. package/public/assets/generated/tank-enemies/tank-boss-enemynarval/frame_00.png +0 -0
  3073. package/public/assets/generated/tank-enemies/tank-boss-enemynarval/frame_01.png +0 -0
  3074. package/public/assets/generated/tank-enemies/tank-boss-enemynarval/frame_02.png +0 -0
  3075. package/public/assets/generated/tank-enemies/tank-boss-enemynarval/frame_03.png +0 -0
  3076. package/public/assets/generated/tank-enemies/tank-boss-enemynarval/frame_04.png +0 -0
  3077. package/public/assets/generated/tank-enemies/tank-boss-enemyshark/frame_00.png +0 -0
  3078. package/public/assets/generated/tank-enemies/tank-boss-enemyshark/frame_01.png +0 -0
  3079. package/public/assets/generated/tank-enemies/tank-boss-enemyshark/frame_02.png +0 -0
  3080. package/public/assets/generated/tank-enemies/tank-boss-enemyshark/frame_03.png +0 -0
  3081. package/public/assets/generated/tank-enemies/tank-boss-enemywhale/frame_00.png +0 -0
  3082. package/public/assets/generated/tank-enemies/tank-boss-enemywhale/frame_01.png +0 -0
  3083. package/public/assets/generated/tank-enemies/tank-boss-enemywhale/frame_02.png +0 -0
  3084. package/public/assets/generated/tank-enemies/tank-boss-enemywhale/frame_03.png +0 -0
  3085. package/public/assets/generated/tank-enemies/tank-boss-enemywhale/frame_04.png +0 -0
  3086. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_00.png +0 -0
  3087. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_01.png +0 -0
  3088. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_02.png +0 -0
  3089. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_03.png +0 -0
  3090. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_04.png +0 -0
  3091. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_05.png +0 -0
  3092. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_06.png +0 -0
  3093. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_07.png +0 -0
  3094. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_08.png +0 -0
  3095. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_09.png +0 -0
  3096. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_10.png +0 -0
  3097. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_11.png +0 -0
  3098. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_12.png +0 -0
  3099. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_13.png +0 -0
  3100. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_14.png +0 -0
  3101. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_15.png +0 -0
  3102. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_16.png +0 -0
  3103. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_17.png +0 -0
  3104. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_18.png +0 -0
  3105. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_19.png +0 -0
  3106. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-2/frame_00.png +0 -0
  3107. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-2/frame_01.png +0 -0
  3108. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-2/frame_02.png +0 -0
  3109. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-2/frame_03.png +0 -0
  3110. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-2/frame_04.png +0 -0
  3111. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-2/frame_05.png +0 -0
  3112. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-2/frame_06.png +0 -0
  3113. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-2/frame_07.png +0 -0
  3114. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-2/frame_08.png +0 -0
  3115. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-2/frame_09.png +0 -0
  3116. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-2/frame_10.png +0 -0
  3117. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-2/frame_11.png +0 -0
  3118. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-2/frame_12.png +0 -0
  3119. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-2/frame_13.png +0 -0
  3120. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-2/frame_14.png +0 -0
  3121. package/public/assets/generated/tank-enemies/tank-boss-halloween-small-2/frame_15.png +0 -0
  3122. package/public/assets/generated/tank-enemies/tank-boss-mummy-shark/frame_00.png +0 -0
  3123. package/public/assets/generated/tank-enemies/tank-boss-mummy-shark/frame_01.png +0 -0
  3124. package/public/assets/generated/tank-enemies/tank-boss-mummy-shark/frame_02.png +0 -0
  3125. package/public/assets/generated/tank-enemies/tank-boss-mummy-shark/frame_03.png +0 -0
  3126. package/public/assets/generated/tank-enemies/tank-boss-mummy-shark/frame_04.png +0 -0
  3127. package/public/assets/generated/tank-enemies/tank-boss-mummy-shark/frame_05.png +0 -0
  3128. package/public/assets/generated/tank-enemies/tank-boss-mummy-shark/frame_06.png +0 -0
  3129. package/public/assets/generated/tank-enemies/tank-boss-mummy-shark/frame_07.png +0 -0
  3130. package/public/assets/generated/tank-enemies/tank-boss-mummy-shark/frame_08.png +0 -0
  3131. package/public/assets/generated/tank-enemies/tank-boss-mummy-shark/frame_09.png +0 -0
  3132. package/public/assets/generated/tank-enemies/tank-boss-mummy-shark/frame_10.png +0 -0
  3133. package/public/assets/generated/tank-enemies/tank-boss-mummy-shark/frame_11.png +0 -0
  3134. package/public/assets/generated/tank-enemies/tank-boss-mummy-shark/frame_12.png +0 -0
  3135. package/public/assets/generated/tank-enemies/tank-boss-red-shark/frame_00.png +0 -0
  3136. package/public/assets/generated/tank-enemies/tank-boss-red-shark/frame_01.png +0 -0
  3137. package/public/assets/generated/tank-enemies/tank-boss-red-shark/frame_02.png +0 -0
  3138. package/public/assets/generated/tank-enemies/tank-boss-red-shark/frame_03.png +0 -0
  3139. package/public/assets/generated/tank-enemies/tank-boss-red-shark/frame_04.png +0 -0
  3140. package/public/assets/generated/tank-enemies/tank-boss-red-shark/frame_05.png +0 -0
  3141. package/public/assets/generated/tank-enemies/tank-boss-red-shark/frame_06.png +0 -0
  3142. package/public/assets/generated/tank-enemies/tank-boss-red-shark/frame_07.png +0 -0
  3143. package/public/assets/generated/tank-enemies/tank-boss-red-shark/frame_08.png +0 -0
  3144. package/public/assets/generated/tank-enemies/tank-boss-red-shark/frame_09.png +0 -0
  3145. package/public/assets/generated/tank-enemies/tank-boss-red-shark/frame_10.png +0 -0
  3146. package/public/assets/generated/tank-enemies/tank-boss-red-shark/frame_11.png +0 -0
  3147. package/public/assets/generated/tank-enemies/tank-enemy-eel/frame_00.png +0 -0
  3148. package/public/assets/generated/tank-enemies/tank-enemy-eel/frame_01.png +0 -0
  3149. package/public/assets/generated/tank-enemies/tank-enemy-eel/frame_02.png +0 -0
  3150. package/public/assets/generated/tank-enemies/tank-enemy-eel/frame_03.png +0 -0
  3151. package/public/assets/generated/tank-enemies/tank-enemy-eel/frame_04.png +0 -0
  3152. package/public/assets/generated/tank-enemies/tank-enemy-eel/frame_05.png +0 -0
  3153. package/public/assets/generated/tank-enemies/tank-enemy-eel/frame_06.png +0 -0
  3154. package/public/assets/generated/tank-enemies/tank-enemy-eel/frame_07.png +0 -0
  3155. package/public/assets/generated/tank-enemies/tank-enemy-eel/frame_08.png +0 -0
  3156. package/public/assets/generated/tank-enemies/tank-enemy-eel/frame_09.png +0 -0
  3157. package/public/assets/generated/tank-enemies/tank-enemy-eel/frame_10.png +0 -0
  3158. package/public/assets/generated/tank-enemies/tank-enemy-eel/frame_11.png +0 -0
  3159. package/public/assets/generated/tank-enemies/tank-enemy-enemi1/frame_00.png +0 -0
  3160. package/public/assets/generated/tank-enemies/tank-enemy-enemi1/frame_01.png +0 -0
  3161. package/public/assets/generated/tank-enemies/tank-enemy-enemi1/frame_02.png +0 -0
  3162. package/public/assets/generated/tank-enemies/tank-enemy-enemi1/frame_03.png +0 -0
  3163. package/public/assets/generated/tank-enemies/tank-enemy-enemi1/frame_04.png +0 -0
  3164. package/public/assets/generated/tank-enemies/tank-enemy-enemi1/frame_05.png +0 -0
  3165. package/public/assets/generated/tank-enemies/tank-enemy-enemi1/frame_06.png +0 -0
  3166. package/public/assets/generated/tank-enemies/tank-enemy-enemi1/frame_07.png +0 -0
  3167. package/public/assets/generated/tank-enemies/tank-enemy-enemi1112/frame_00.png +0 -0
  3168. package/public/assets/generated/tank-enemies/tank-enemy-enemi1112/frame_01.png +0 -0
  3169. package/public/assets/generated/tank-enemies/tank-enemy-enemi1112/frame_02.png +0 -0
  3170. package/public/assets/generated/tank-enemies/tank-enemy-enemi112/frame_00.png +0 -0
  3171. package/public/assets/generated/tank-enemies/tank-enemy-enemi112/frame_01.png +0 -0
  3172. package/public/assets/generated/tank-enemies/tank-enemy-enemi112/frame_02.png +0 -0
  3173. package/public/assets/generated/tank-enemies/tank-enemy-enemi112/frame_03.png +0 -0
  3174. package/public/assets/generated/tank-enemies/tank-enemy-enemi112/frame_04.png +0 -0
  3175. package/public/assets/generated/tank-enemies/tank-enemy-enemi112/frame_05.png +0 -0
  3176. package/public/assets/generated/tank-enemies/tank-enemy-enemi112/frame_06.png +0 -0
  3177. package/public/assets/generated/tank-enemies/tank-enemy-enemi112/frame_07.png +0 -0
  3178. package/public/assets/generated/tank-enemies/tank-enemy-enemi11242/frame_00.png +0 -0
  3179. package/public/assets/generated/tank-enemies/tank-enemy-enemi11242/frame_01.png +0 -0
  3180. package/public/assets/generated/tank-enemies/tank-enemy-enemi11242/frame_02.png +0 -0
  3181. package/public/assets/generated/tank-enemies/tank-enemy-enemi1132/frame_00.png +0 -0
  3182. package/public/assets/generated/tank-enemies/tank-enemy-enemi1132/frame_01.png +0 -0
  3183. package/public/assets/generated/tank-enemies/tank-enemy-enemi1132/frame_02.png +0 -0
  3184. package/public/assets/generated/tank-enemies/tank-enemy-enemi1132/frame_03.png +0 -0
  3185. package/public/assets/generated/tank-enemies/tank-enemy-enemi1132/frame_04.png +0 -0
  3186. package/public/assets/generated/tank-enemies/tank-enemy-enemi1132/frame_05.png +0 -0
  3187. package/public/assets/generated/tank-enemies/tank-enemy-enemi1132/frame_06.png +0 -0
  3188. package/public/assets/generated/tank-enemies/tank-enemy-enemi1132/frame_07.png +0 -0
  3189. package/public/assets/generated/tank-enemies/tank-enemy-enemi1142/frame_00.png +0 -0
  3190. package/public/assets/generated/tank-enemies/tank-enemy-enemi1142/frame_01.png +0 -0
  3191. package/public/assets/generated/tank-enemies/tank-enemy-enemi1142/frame_02.png +0 -0
  3192. package/public/assets/generated/tank-enemies/tank-enemy-enemi1142/frame_03.png +0 -0
  3193. package/public/assets/generated/tank-enemies/tank-enemy-enemi1142/frame_04.png +0 -0
  3194. package/public/assets/generated/tank-enemies/tank-enemy-enemi1142/frame_05.png +0 -0
  3195. package/public/assets/generated/tank-enemies/tank-enemy-enemi1142/frame_06.png +0 -0
  3196. package/public/assets/generated/tank-enemies/tank-enemy-enemi1142/frame_07.png +0 -0
  3197. package/public/assets/generated/tank-enemies/tank-enemy-enemi142/frame_00.png +0 -0
  3198. package/public/assets/generated/tank-enemies/tank-enemy-enemi142/frame_01.png +0 -0
  3199. package/public/assets/generated/tank-enemies/tank-enemy-enemi142/frame_02.png +0 -0
  3200. package/public/assets/generated/tank-enemies/tank-enemy-enemi2/frame_00.png +0 -0
  3201. package/public/assets/generated/tank-enemies/tank-enemy-enemi2/frame_01.png +0 -0
  3202. package/public/assets/generated/tank-enemies/tank-enemy-enemi2/frame_02.png +0 -0
  3203. package/public/assets/generated/tank-enemies/tank-enemy-enemi2/frame_03.png +0 -0
  3204. package/public/assets/generated/tank-enemies/tank-enemy-enemi2/frame_04.png +0 -0
  3205. package/public/assets/generated/tank-enemies/tank-enemy-enemi2/frame_05.png +0 -0
  3206. package/public/assets/generated/tank-enemies/tank-enemy-enemi2/frame_06.png +0 -0
  3207. package/public/assets/generated/tank-enemies/tank-enemy-enemi2/frame_07.png +0 -0
  3208. package/public/assets/generated/tank-enemies/tank-enemy-enemi3/frame_00.png +0 -0
  3209. package/public/assets/generated/tank-enemies/tank-enemy-enemi3/frame_01.png +0 -0
  3210. package/public/assets/generated/tank-enemies/tank-enemy-enemi3/frame_02.png +0 -0
  3211. package/public/assets/generated/tank-enemies/tank-enemy-enemi3/frame_03.png +0 -0
  3212. package/public/assets/generated/tank-enemies/tank-enemy-enemi3/frame_04.png +0 -0
  3213. package/public/assets/generated/tank-enemies/tank-enemy-enemi3/frame_05.png +0 -0
  3214. package/public/assets/generated/tank-enemies/tank-enemy-enemi3/frame_06.png +0 -0
  3215. package/public/assets/generated/tank-enemies/tank-enemy-enemi3/frame_07.png +0 -0
  3216. package/public/assets/generated/tank-enemies/tank-enemy-enemi4/frame_00.png +0 -0
  3217. package/public/assets/generated/tank-enemies/tank-enemy-enemi4/frame_01.png +0 -0
  3218. package/public/assets/generated/tank-enemies/tank-enemy-enemi4/frame_02.png +0 -0
  3219. package/public/assets/generated/tank-enemies/tank-enemy-enemi4/frame_03.png +0 -0
  3220. package/public/assets/generated/tank-enemies/tank-enemy-enemi4/frame_04.png +0 -0
  3221. package/public/assets/generated/tank-enemies/tank-enemy-enemi4/frame_05.png +0 -0
  3222. package/public/assets/generated/tank-enemies/tank-enemy-enemi4/frame_06.png +0 -0
  3223. package/public/assets/generated/tank-enemies/tank-enemy-enemi4/frame_07.png +0 -0
  3224. package/public/assets/generated/tank-enemies/tank-enemy-enemi5/frame_00.png +0 -0
  3225. package/public/assets/generated/tank-enemies/tank-enemy-enemi5/frame_01.png +0 -0
  3226. package/public/assets/generated/tank-enemies/tank-enemy-enemi5/frame_02.png +0 -0
  3227. package/public/assets/generated/tank-enemies/tank-enemy-enemi5/frame_03.png +0 -0
  3228. package/public/assets/generated/tank-enemies/tank-enemy-enemi5/frame_04.png +0 -0
  3229. package/public/assets/generated/tank-enemies/tank-enemy-enemi5/frame_05.png +0 -0
  3230. package/public/assets/generated/tank-enemies/tank-enemy-enemi5/frame_06.png +0 -0
  3231. package/public/assets/generated/tank-enemies/tank-enemy-enemi5/frame_07.png +0 -0
  3232. package/public/assets/generated/tank-enemies/tank-enemy-fish/frame_00.png +0 -0
  3233. package/public/assets/generated/tank-enemies/tank-enemy-fish/frame_01.png +0 -0
  3234. package/public/assets/generated/tank-enemies/tank-enemy-fish/frame_02.png +0 -0
  3235. package/public/assets/generated/tank-enemies/tank-enemy-fish/frame_03.png +0 -0
  3236. package/public/assets/generated/tank-enemies/tank-enemy-fish/frame_04.png +0 -0
  3237. package/public/assets/generated/tank-enemies/tank-enemy-fish/frame_05.png +0 -0
  3238. package/public/assets/generated/tank-enemies/tank-enemy-fish/frame_06.png +0 -0
  3239. package/public/assets/generated/tank-enemies/tank-enemy-fish/frame_07.png +0 -0
  3240. package/public/assets/generated/tank-enemies/tank-enemy-jelly/frame_00.png +0 -0
  3241. package/public/assets/generated/tank-enemies/tank-enemy-jelly/frame_01.png +0 -0
  3242. package/public/assets/generated/tank-enemies/tank-enemy-jelly/frame_02.png +0 -0
  3243. package/public/assets/generated/tank-enemies/tank-enemy-jelly/frame_03.png +0 -0
  3244. package/public/assets/generated/tank-mines/tank-mine-blue/frame_00.png +0 -0
  3245. package/public/assets/generated/tank-mines/tank-mine-blue/frame_01.png +0 -0
  3246. package/public/assets/generated/tank-mines/tank-mine-blue/frame_02.png +0 -0
  3247. package/public/assets/generated/tank-mines/tank-mine-blue/frame_03.png +0 -0
  3248. package/public/assets/generated/tank-mines/tank-mine-blue/frame_04.png +0 -0
  3249. package/public/assets/generated/tank-mines/tank-mine-blue/frame_05.png +0 -0
  3250. package/public/assets/generated/tank-mines/tank-mine-blue/frame_06.png +0 -0
  3251. package/public/assets/generated/tank-mines/tank-mine-blue/frame_07.png +0 -0
  3252. package/public/assets/generated/tank-mines/tank-mine-blue/frame_08.png +0 -0
  3253. package/public/assets/generated/tank-mines/tank-mine-blue/frame_09.png +0 -0
  3254. package/public/assets/generated/tank-mines/tank-mine-blue/frame_10.png +0 -0
  3255. package/public/assets/generated/tank-mines/tank-mine-blue/frame_11.png +0 -0
  3256. package/public/assets/generated/tank-mines/tank-mine-blue/frame_12.png +0 -0
  3257. package/public/assets/generated/tank-mines/tank-mine-blue/frame_13.png +0 -0
  3258. package/public/assets/generated/tank-mines/tank-mine-blue/frame_14.png +0 -0
  3259. package/public/assets/generated/tank-mines/tank-mine-green/frame_00.png +0 -0
  3260. package/public/assets/generated/tank-mines/tank-mine-green/frame_01.png +0 -0
  3261. package/public/assets/generated/tank-mines/tank-mine-green/frame_02.png +0 -0
  3262. package/public/assets/generated/tank-mines/tank-mine-green/frame_03.png +0 -0
  3263. package/public/assets/generated/tank-mines/tank-mine-green/frame_04.png +0 -0
  3264. package/public/assets/index-BD-mu48P.css +1 -0
  3265. package/public/assets/index-BKpZ2AUE.js +227 -0
  3266. package/public/assets/raw/Backgrounds/deep1.webp +0 -0
  3267. package/public/assets/raw/Backgrounds/shallow1.webp +0 -0
  3268. package/public/assets/raw/Bullets/electric.gif +0 -0
  3269. package/public/assets/raw/Bullets/fire.gif +0 -0
  3270. package/public/assets/raw/Bullets/iceink.gif +0 -0
  3271. package/public/assets/raw/Bullets/inkbullet (1).gif +0 -0
  3272. package/public/assets/raw/Bullets/normal.gif +0 -0
  3273. package/public/assets/raw/Bullets/toxic.gif +0 -0
  3274. package/public/assets/raw/UI/HighScore.png +0 -0
  3275. package/public/assets/raw/UI/Logo.png +0 -0
  3276. package/public/assets/raw/music/mute.png +0 -0
  3277. package/public/assets/raw/music/octosong1.ogg +0 -0
  3278. package/public/assets/raw/music/octosong5.ogg +0 -0
  3279. package/public/assets/raw/music/unmute.png +0 -0
  3280. package/public/assets/raw/octos player assets/Bodies/Acid.gif +0 -0
  3281. package/public/assets/raw/octos player assets/Bodies/Aqua.gif +0 -0
  3282. package/public/assets/raw/octos player assets/Bodies/Blue.gif +0 -0
  3283. package/public/assets/raw/octos player assets/Bodies/Bubblegum.gif +0 -0
  3284. package/public/assets/raw/octos player assets/Bodies/Camo.gif +0 -0
  3285. package/public/assets/raw/octos player assets/Bodies/Cardbon.gif +0 -0
  3286. package/public/assets/raw/octos player assets/Bodies/Charcoal.gif +0 -0
  3287. package/public/assets/raw/octos player assets/Bodies/Cottoncandy.gif +0 -0
  3288. package/public/assets/raw/octos player assets/Bodies/Creamsicle.gif +0 -0
  3289. package/public/assets/raw/octos player assets/Bodies/Deathbot.gif +0 -0
  3290. package/public/assets/raw/octos player assets/Bodies/Dirt.gif +0 -0
  3291. package/public/assets/raw/octos player assets/Bodies/Fuchsia.gif +0 -0
  3292. package/public/assets/raw/octos player assets/Bodies/Gold.gif +0 -0
  3293. package/public/assets/raw/octos player assets/Bodies/Grape.gif +0 -0
  3294. package/public/assets/raw/octos player assets/Bodies/Gray.gif +0 -0
  3295. package/public/assets/raw/octos player assets/Bodies/Lime.gif +0 -0
  3296. package/public/assets/raw/octos player assets/Bodies/Magma.gif +0 -0
  3297. package/public/assets/raw/octos player assets/Bodies/Metal.gif +0 -0
  3298. package/public/assets/raw/octos player assets/Bodies/Midnight.gif +0 -0
  3299. package/public/assets/raw/octos player assets/Bodies/Octopi.gif +0 -0
  3300. package/public/assets/raw/octos player assets/Bodies/Orange.gif +0 -0
  3301. package/public/assets/raw/octos player assets/Bodies/Pepe.gif +0 -0
  3302. package/public/assets/raw/octos player assets/Bodies/Rainbow.gif +0 -0
  3303. package/public/assets/raw/octos player assets/Bodies/Red.gif +0 -0
  3304. package/public/assets/raw/octos player assets/Bodies/Sushi.gif +0 -0
  3305. package/public/assets/raw/octos player assets/Bodies/Tan.gif +0 -0
  3306. package/public/assets/raw/octos player assets/Bodies/Teal.gif +0 -0
  3307. package/public/assets/raw/octos player assets/Bodies/White.gif +0 -0
  3308. package/public/assets/raw/octos player assets/Bodies/Yellow.gif +0 -0
  3309. package/public/assets/raw/octos player assets/Bodies/zombie.gif +0 -0
  3310. package/public/assets/raw/octos player assets/Eyes/3d glasses.gif +0 -0
  3311. package/public/assets/raw/octos player assets/Eyes/4 eyes.gif +0 -0
  3312. package/public/assets/raw/octos player assets/Eyes/All seeing.gif +0 -0
  3313. package/public/assets/raw/octos player assets/Eyes/Angry.gif +0 -0
  3314. package/public/assets/raw/octos player assets/Eyes/Boingg.gif +0 -0
  3315. package/public/assets/raw/octos player assets/Eyes/Cool shades.gif +0 -0
  3316. package/public/assets/raw/octos player assets/Eyes/Crazy eyes.gif +0 -0
  3317. package/public/assets/raw/octos player assets/Eyes/Cute.gif +0 -0
  3318. package/public/assets/raw/octos player assets/Eyes/Cyclops.gif +0 -0
  3319. package/public/assets/raw/octos player assets/Eyes/Durr eyes.gif +0 -0
  3320. package/public/assets/raw/octos player assets/Eyes/Evil.gif +0 -0
  3321. package/public/assets/raw/octos player assets/Eyes/Eye patch.gif +0 -0
  3322. package/public/assets/raw/octos player assets/Eyes/Hmm.gif +0 -0
  3323. package/public/assets/raw/octos player assets/Eyes/Monocle.gif +0 -0
  3324. package/public/assets/raw/octos player assets/Eyes/Nouns glasses.gif +0 -0
  3325. package/public/assets/raw/octos player assets/Eyes/Regular.gif +0 -0
  3326. package/public/assets/raw/octos player assets/Eyes/Sad.gif +0 -0
  3327. package/public/assets/raw/octos player assets/Eyes/Scar.gif +0 -0
  3328. package/public/assets/raw/octos player assets/Eyes/Shy.gif +0 -0
  3329. package/public/assets/raw/octos player assets/Eyes/Sleeping.gif +0 -0
  3330. package/public/assets/raw/octos player assets/Eyes/Smart.gif +0 -0
  3331. package/public/assets/raw/octos player assets/Eyes/Spy glass.gif +0 -0
  3332. package/public/assets/raw/octos player assets/Eyes/Squint.gif +0 -0
  3333. package/public/assets/raw/octos player assets/Eyes/Tri eyes.gif +0 -0
  3334. package/public/assets/raw/octos player assets/Eyes/Vr goggles.gif +0 -0
  3335. package/public/assets/raw/octos player assets/Eyes/White shades.gif +0 -0
  3336. package/public/assets/raw/octos player assets/Eyes/Wide eyes.gif +0 -0
  3337. package/public/assets/raw/octos player assets/Eyes/Worried.gif +0 -0
  3338. package/public/assets/raw/octos player assets/Eyes/X.gif +0 -0
  3339. package/public/assets/raw/octos player assets/Hats/Admral hat.gif +0 -0
  3340. package/public/assets/raw/octos player assets/Hats/Alien antenna.gif +0 -0
  3341. package/public/assets/raw/octos player assets/Hats/Arrow hat.gif +0 -0
  3342. package/public/assets/raw/octos player assets/Hats/Backwards hat.gif +0 -0
  3343. package/public/assets/raw/octos player assets/Hats/Banana.gif +0 -0
  3344. package/public/assets/raw/octos player assets/Hats/Bandit mask.gif +0 -0
  3345. package/public/assets/raw/octos player assets/Hats/Beer cap.gif +0 -0
  3346. package/public/assets/raw/octos player assets/Hats/Binary tiara.gif +0 -0
  3347. package/public/assets/raw/octos player assets/Hats/Black Miner hard hat.gif +0 -0
  3348. package/public/assets/raw/octos player assets/Hats/Black bandana.gif +0 -0
  3349. package/public/assets/raw/octos player assets/Hats/Black bucket hat.gif +0 -0
  3350. package/public/assets/raw/octos player assets/Hats/Blond anime hair.gif +0 -0
  3351. package/public/assets/raw/octos player assets/Hats/Blue Bandana.gif +0 -0
  3352. package/public/assets/raw/octos player assets/Hats/Blue lazer eyes.gif +0 -0
  3353. package/public/assets/raw/octos player assets/Hats/Bonk.gif +0 -0
  3354. package/public/assets/raw/octos player assets/Hats/Box head.gif +0 -0
  3355. package/public/assets/raw/octos player assets/Hats/Brown bucket hat.gif +0 -0
  3356. package/public/assets/raw/octos player assets/Hats/Bunny ears.gif +0 -0
  3357. package/public/assets/raw/octos player assets/Hats/Cat ears.gif +0 -0
  3358. package/public/assets/raw/octos player assets/Hats/Chef hat.gif +0 -0
  3359. package/public/assets/raw/octos player assets/Hats/Circuit board crown.gif +0 -0
  3360. package/public/assets/raw/octos player assets/Hats/Clown hair.gif +0 -0
  3361. package/public/assets/raw/octos player assets/Hats/Cowboy hat.gif +0 -0
  3362. package/public/assets/raw/octos player assets/Hats/Crown.gif +0 -0
  3363. package/public/assets/raw/octos player assets/Hats/Crypto crown.gif +0 -0
  3364. package/public/assets/raw/octos player assets/Hats/Crypto helmet.gif +0 -0
  3365. package/public/assets/raw/octos player assets/Hats/Cup head.gif +0 -0
  3366. package/public/assets/raw/octos player assets/Hats/Devil horns.gif +0 -0
  3367. package/public/assets/raw/octos player assets/Hats/Digital keys.gif +0 -0
  3368. package/public/assets/raw/octos player assets/Hats/Digital top hat.gif +0 -0
  3369. package/public/assets/raw/octos player assets/Hats/Encryption hair.gif +0 -0
  3370. package/public/assets/raw/octos player assets/Hats/Fedora.gif +0 -0
  3371. package/public/assets/raw/octos player assets/Hats/Fez.gif +0 -0
  3372. package/public/assets/raw/octos player assets/Hats/Fish bowl.gif +0 -0
  3373. package/public/assets/raw/octos player assets/Hats/Frog hat.gif +0 -0
  3374. package/public/assets/raw/octos player assets/Hats/Frumpy hair.gif +0 -0
  3375. package/public/assets/raw/octos player assets/Hats/Halo.gif +0 -0
  3376. package/public/assets/raw/octos player assets/Hats/Headphones.gif +0 -0
  3377. package/public/assets/raw/octos player assets/Hats/Memepool top hat.gif +0 -0
  3378. package/public/assets/raw/octos player assets/Hats/Messy hair.gif +0 -0
  3379. package/public/assets/raw/octos player assets/Hats/Military helmet.gif +0 -0
  3380. package/public/assets/raw/octos player assets/Hats/Mohawk thin.gif +0 -0
  3381. package/public/assets/raw/octos player assets/Hats/Mohawk.gif +0 -0
  3382. package/public/assets/raw/octos player assets/Hats/Nerd glasses.gif +0 -0
  3383. package/public/assets/raw/octos player assets/Hats/Night vision goggles.gif +0 -0
  3384. package/public/assets/raw/octos player assets/Hats/Node crown.gif +0 -0
  3385. package/public/assets/raw/octos player assets/Hats/Orange Miner hard hat.gif +0 -0
  3386. package/public/assets/raw/octos player assets/Hats/Orange beanie.gif +0 -0
  3387. package/public/assets/raw/octos player assets/Hats/Party hat.gif +0 -0
  3388. package/public/assets/raw/octos player assets/Hats/Pigtails.gif +0 -0
  3389. package/public/assets/raw/octos player assets/Hats/Pink hair.gif +0 -0
  3390. package/public/assets/raw/octos player assets/Hats/Pirate hat.gif +0 -0
  3391. package/public/assets/raw/octos player assets/Hats/Pizza hat.gif +0 -0
  3392. package/public/assets/raw/octos player assets/Hats/Plunger head.gif +0 -0
  3393. package/public/assets/raw/octos player assets/Hats/Police hat.gif +0 -0
  3394. package/public/assets/raw/octos player assets/Hats/Powder wig.gif +0 -0
  3395. package/public/assets/raw/octos player assets/Hats/Press hat.gif +0 -0
  3396. package/public/assets/raw/octos player assets/Hats/Propeller hat.gif +0 -0
  3397. package/public/assets/raw/octos player assets/Hats/Puffy hair.gif +0 -0
  3398. package/public/assets/raw/octos player assets/Hats/Purple Bandana.gif +0 -0
  3399. package/public/assets/raw/octos player assets/Hats/Red Bandana.gif +0 -0
  3400. package/public/assets/raw/octos player assets/Hats/Red D mushroom.gif +0 -0
  3401. package/public/assets/raw/octos player assets/Hats/Red Miner hard hat.gif +0 -0
  3402. package/public/assets/raw/octos player assets/Hats/Red cap.gif +0 -0
  3403. package/public/assets/raw/octos player assets/Hats/Red crazy hair.gif +0 -0
  3404. package/public/assets/raw/octos player assets/Hats/Red lazer eyes.gif +0 -0
  3405. package/public/assets/raw/octos player assets/Hats/Ribbon.gif +0 -0
  3406. package/public/assets/raw/octos player assets/Hats/Robin hood.gif +0 -0
  3407. package/public/assets/raw/octos player assets/Hats/Sailor cap.gif +0 -0
  3408. package/public/assets/raw/octos player assets/Hats/Sashimi hat.gif +0 -0
  3409. package/public/assets/raw/octos player assets/Hats/Satellite dish.gif +0 -0
  3410. package/public/assets/raw/octos player assets/Hats/Scuba helmet.gif +0 -0
  3411. package/public/assets/raw/octos player assets/Hats/Snorkle Goggles.gif +0 -0
  3412. package/public/assets/raw/octos player assets/Hats/Space helmet.gif +0 -0
  3413. package/public/assets/raw/octos player assets/Hats/Spike hair.gif +0 -0
  3414. package/public/assets/raw/octos player assets/Hats/Star wizard hat.gif +0 -0
  3415. package/public/assets/raw/octos player assets/Hats/Straight hair.gif +0 -0
  3416. package/public/assets/raw/octos player assets/Hats/Straw hat.gif +0 -0
  3417. package/public/assets/raw/octos player assets/Hats/Stringy hair.gif +0 -0
  3418. package/public/assets/raw/octos player assets/Hats/Top hat.gif +0 -0
  3419. package/public/assets/raw/octos player assets/Hats/Trucker cap.gif +0 -0
  3420. package/public/assets/raw/octos player assets/Hats/Visor.gif +0 -0
  3421. package/public/assets/raw/octos player assets/Hats/White V mushroom.gif +0 -0
  3422. package/public/assets/raw/octos player assets/Hats/White anime hair.gif +0 -0
  3423. package/public/assets/raw/octos player assets/Hats/White bucket hat.gif +0 -0
  3424. package/public/assets/raw/octos player assets/Hats/Wild hair.gif +0 -0
  3425. package/public/assets/raw/octos player assets/Hats/Wizard hat.gif +0 -0
  3426. package/public/assets/raw/octos player assets/Hats/Yellow E mushroom.gif +0 -0
  3427. package/public/assets/raw/octos player assets/Hats/Yellow beanie.gif +0 -0
  3428. package/public/assets/raw/octos player assets/Hats/purple beanie.gif +0 -0
  3429. package/public/assets/raw/octos player assets/Spin attack /Acid.gif +0 -0
  3430. package/public/assets/raw/octos player assets/Spin attack /Aqua.gif +0 -0
  3431. package/public/assets/raw/octos player assets/Spin attack /Blue.gif +0 -0
  3432. package/public/assets/raw/octos player assets/Spin attack /Bubblegum.gif +0 -0
  3433. package/public/assets/raw/octos player assets/Spin attack /Camo.gif +0 -0
  3434. package/public/assets/raw/octos player assets/Spin attack /Cardbon.gif +0 -0
  3435. package/public/assets/raw/octos player assets/Spin attack /Charcoal.gif +0 -0
  3436. package/public/assets/raw/octos player assets/Spin attack /Cottoncandy.gif +0 -0
  3437. package/public/assets/raw/octos player assets/Spin attack /Creamside.gif +0 -0
  3438. package/public/assets/raw/octos player assets/Spin attack /Deathbot.gif +0 -0
  3439. package/public/assets/raw/octos player assets/Spin attack /Dirt.gif +0 -0
  3440. package/public/assets/raw/octos player assets/Spin attack /Fuchsia.gif +0 -0
  3441. package/public/assets/raw/octos player assets/Spin attack /Gold.gif +0 -0
  3442. package/public/assets/raw/octos player assets/Spin attack /Grape.gif +0 -0
  3443. package/public/assets/raw/octos player assets/Spin attack /Gray.gif +0 -0
  3444. package/public/assets/raw/octos player assets/Spin attack /Lime.gif +0 -0
  3445. package/public/assets/raw/octos player assets/Spin attack /Magma.gif +0 -0
  3446. package/public/assets/raw/octos player assets/Spin attack /Metal.gif +0 -0
  3447. package/public/assets/raw/octos player assets/Spin attack /Midnight.gif +0 -0
  3448. package/public/assets/raw/octos player assets/Spin attack /Octopi.gif +0 -0
  3449. package/public/assets/raw/octos player assets/Spin attack /Orange.gif +0 -0
  3450. package/public/assets/raw/octos player assets/Spin attack /Pepe.gif +0 -0
  3451. package/public/assets/raw/octos player assets/Spin attack /Rainbow.gif +0 -0
  3452. package/public/assets/raw/octos player assets/Spin attack /Red.gif +0 -0
  3453. package/public/assets/raw/octos player assets/Spin attack /Sushi.gif +0 -0
  3454. package/public/assets/raw/octos player assets/Spin attack /Tan.gif +0 -0
  3455. package/public/assets/raw/octos player assets/Spin attack /Teal.gif +0 -0
  3456. package/public/assets/raw/octos player assets/Spin attack /White.gif +0 -0
  3457. package/public/assets/raw/octos player assets/Spin attack /Yellow.gif +0 -0
  3458. package/public/assets/raw/octos player assets/Spin attack /Zombie.gif +0 -0
  3459. package/public/assets/raw/octos player assets/Throwables/BTC bag.png +0 -0
  3460. package/public/assets/raw/octos player assets/Throwables/BTC earring.png +0 -0
  3461. package/public/assets/raw/octos player assets/Throwables/Bottle.png +0 -0
  3462. package/public/assets/raw/octos player assets/Throwables/Bubble gum.png +0 -0
  3463. package/public/assets/raw/octos player assets/Throwables/Burger.png +0 -0
  3464. package/public/assets/raw/octos player assets/Throwables/Cigar.png +0 -0
  3465. package/public/assets/raw/octos player assets/Throwables/Cigarette.png +0 -0
  3466. package/public/assets/raw/octos player assets/Throwables/Coffee.png +0 -0
  3467. package/public/assets/raw/octos player assets/Throwables/Dimond earring.png +0 -0
  3468. package/public/assets/raw/octos player assets/Throwables/Gold earring.png +0 -0
  3469. package/public/assets/raw/octos player assets/Throwables/Hook.png +0 -0
  3470. package/public/assets/raw/octos player assets/Throwables/Ink drink.png +0 -0
  3471. package/public/assets/raw/octos player assets/Throwables/Juice box.png +0 -0
  3472. package/public/assets/raw/octos player assets/Throwables/Katana.png +0 -0
  3473. package/public/assets/raw/octos player assets/Throwables/Lipstick.png +0 -0
  3474. package/public/assets/raw/octos player assets/Throwables/Martini.png +0 -0
  3475. package/public/assets/raw/octos player assets/Throwables/Mustache.png +0 -0
  3476. package/public/assets/raw/octos player assets/Throwables/Nunchucks.png +0 -0
  3477. package/public/assets/raw/octos player assets/Throwables/Old watch.png +0 -0
  3478. package/public/assets/raw/octos player assets/Throwables/Pipe.png +0 -0
  3479. package/public/assets/raw/octos player assets/Throwables/Pizza earring.png +0 -0
  3480. package/public/assets/raw/octos player assets/Throwables/Shell earring.png +0 -0
  3481. package/public/assets/raw/octos player assets/Throwables/Sword.png +0 -0
  3482. package/public/assets/raw/octos player assets/Throwables/Trident.png +0 -0
  3483. package/public/assets/raw/octos player assets/clothes/Astro Suit.gif +0 -0
  3484. package/public/assets/raw/octos player assets/clothes/Black kimono.gif +0 -0
  3485. package/public/assets/raw/octos player assets/clothes/Chef jacket.gif +0 -0
  3486. package/public/assets/raw/octos player assets/clothes/Dark hoody.gif +0 -0
  3487. package/public/assets/raw/octos player assets/clothes/Green hoody.gif +0 -0
  3488. package/public/assets/raw/octos player assets/clothes/Hazmat outfit.gif +0 -0
  3489. package/public/assets/raw/octos player assets/clothes/Jail outfit.gif +0 -0
  3490. package/public/assets/raw/octos player assets/clothes/Mad scientist.gif +0 -0
  3491. package/public/assets/raw/octos player assets/clothes/Mage robe.gif +0 -0
  3492. package/public/assets/raw/octos player assets/clothes/Pirate outfit.gif +0 -0
  3493. package/public/assets/raw/octos player assets/clothes/Poncho.gif +0 -0
  3494. package/public/assets/raw/octos player assets/clothes/Rain coat.gif +0 -0
  3495. package/public/assets/raw/octos player assets/clothes/Trench coat.gif +0 -0
  3496. package/public/assets/raw/octos player assets/clothes/White kimono.gif +0 -0
  3497. package/public/assets/raw/octos player assets/legendaries /1.gif +0 -0
  3498. package/public/assets/raw/octos player assets/legendaries /10.gif +0 -0
  3499. package/public/assets/raw/octos player assets/legendaries /10t.png +0 -0
  3500. package/public/assets/raw/octos player assets/legendaries /1t.png +0 -0
  3501. package/public/assets/raw/octos player assets/legendaries /2.gif +0 -0
  3502. package/public/assets/raw/octos player assets/legendaries /2t.png +0 -0
  3503. package/public/assets/raw/octos player assets/legendaries /3.gif +0 -0
  3504. package/public/assets/raw/octos player assets/legendaries /3t.png +0 -0
  3505. package/public/assets/raw/octos player assets/legendaries /4.gif +0 -0
  3506. package/public/assets/raw/octos player assets/legendaries /4t.png +0 -0
  3507. package/public/assets/raw/octos player assets/legendaries /5.gif +0 -0
  3508. package/public/assets/raw/octos player assets/legendaries /5t.png +0 -0
  3509. package/public/assets/raw/octos player assets/legendaries /6.gif +0 -0
  3510. package/public/assets/raw/octos player assets/legendaries /6t.png +0 -0
  3511. package/public/assets/raw/octos player assets/legendaries /7.gif +0 -0
  3512. package/public/assets/raw/octos player assets/legendaries /7t.png +0 -0
  3513. package/public/assets/raw/octos player assets/legendaries /8.gif +0 -0
  3514. package/public/assets/raw/octos player assets/legendaries /8t.png +0 -0
  3515. package/public/assets/raw/octos player assets/legendaries /9.gif +0 -0
  3516. package/public/assets/raw/octos player assets/legendaries /9t.png +0 -0
  3517. package/public/index.html +110 -0
  3518. package/public/octo-logo.jpg +0 -0
  3519. package/scripts/install-launcher.mjs +37 -0
  3520. package/scripts/octoglyphs-hook.mjs +310 -0
  3521. package/scripts/octoglyphs-sidecar.mjs +225 -0
@@ -0,0 +1,227 @@
1
+ (function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var e={50792(e){var t=Object.prototype.hasOwnProperty,n=`~`;function r(){}Object.create&&(r.prototype=Object.create(null),new r().__proto__||(n=!1));function i(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function a(e,t,r,a,o){if(typeof r!=`function`)throw TypeError(`The listener must be a function`);var s=new i(r,a||e,o),c=n?n+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function o(e,t){--e._eventsCount===0?e._events=new r:delete e._events[t]}function s(){this._events=new r,this._eventsCount=0}s.prototype.eventNames=function(){var e=[],r,i;if(this._eventsCount===0)return e;for(i in r=this._events)t.call(r,i)&&e.push(n?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(r)):e},s.prototype.listeners=function(e){var t=n?n+e:e,r=this._events[t];if(!r)return[];if(r.fn)return[r.fn];for(var i=0,a=r.length,o=Array(a);i<a;i++)o[i]=r[i].fn;return o},s.prototype.listenerCount=function(e){var t=n?n+e:e,r=this._events[t];return r?r.fn?1:r.length:0},s.prototype.emit=function(e,t,r,i,a,o){var s=n?n+e:e;if(!this._events[s])return!1;var c=this._events[s],l=arguments.length,u,d;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,r),!0;case 4:return c.fn.call(c.context,t,r,i),!0;case 5:return c.fn.call(c.context,t,r,i,a),!0;case 6:return c.fn.call(c.context,t,r,i,a,o),!0}for(d=1,u=Array(l-1);d<l;d++)u[d-1]=arguments[d];c.fn.apply(c.context,u)}else{var f=c.length,p;for(d=0;d<f;d++)switch(c[d].once&&this.removeListener(e,c[d].fn,void 0,!0),l){case 1:c[d].fn.call(c[d].context);break;case 2:c[d].fn.call(c[d].context,t);break;case 3:c[d].fn.call(c[d].context,t,r);break;case 4:c[d].fn.call(c[d].context,t,r,i);break;default:if(!u)for(p=1,u=Array(l-1);p<l;p++)u[p-1]=arguments[p];c[d].fn.apply(c[d].context,u)}}return!0},s.prototype.on=function(e,t,n){return a(this,e,t,n,!1)},s.prototype.once=function(e,t,n){return a(this,e,t,n,!0)},s.prototype.removeListener=function(e,t,r,i){var a=n?n+e:e;if(!this._events[a])return this;if(!t)return o(this,a),this;var s=this._events[a];if(s.fn)s.fn===t&&(!i||s.once)&&(!r||s.context===r)&&o(this,a);else{for(var c=0,l=[],u=s.length;c<u;c++)(s[c].fn!==t||i&&!s[c].once||r&&s[c].context!==r)&&l.push(s[c]);l.length?this._events[a]=l.length===1?l[0]:l:o(this,a)}return this},s.prototype.removeAllListeners=function(e){var t;return e?(t=n?n+e:e,this._events[t]&&o(this,t)):(this._events=new r,this._eventsCount=0),this},s.prototype.off=s.prototype.removeListener,s.prototype.addListener=s.prototype.on,s.prefixed=n,s.EventEmitter=s,e.exports=s},93300(e,t,n){var r=n(10312);e.exports=function(e,t){Array.isArray(e)||(e=[e]),t||={};for(var n=t.threshold===void 0?.5:t.threshold,i=t.blurRadius===void 0?2:t.blurRadius,a=t.blurSteps===void 0?4:t.blurSteps,o=t.blurQuality===void 0?0:t.blurQuality,s=t.blendAmount===void 0?1:t.blendAmount,c=t.blendMode===void 0?r.ADD:t.blendMode,l=[],u=0;u<e.length;u++){var d=e[u];d.enableFilters&&d.enableFilters();var f=(t.useInternal?d.filters.internal:d.filters.external).addParallelFilters(),p=f.top.addThreshold(n,1),m=f.top.addBlur(o,i,i,1,16777215,a);f.blend.blendMode=c,f.blend.amount=s,l.push({item:d,parallelFilters:f,threshold:p,blur:m})}return l}},56704(e,t,n){var r=n(16438),i=n(10312),a=n(41337),o=n(95643),s=n(45650);e.exports=function(e,t){t||={},Array.isArray(e)||(e=[e]);var n=e[0],c=n.scene,l=t.direction===void 0?.5:t.direction%(Math.PI*2),u=t.scale===void 0?2:t.scale,d=(t.radius||.5)/u,f=t.width||n.width||128,p=t.height||n.height||128,m={x:0,y:0};l<0&&(l+=Math.PI*2),l>Math.PI*3/2?m.y=1:l>Math.PI?(m.x=1,m.y=1):l>Math.PI/2&&(m.x=1);for(var h=[],g=0;g<e.length;g++){var _=e[g],v={origin:0,width:f,height:p,config:{offset:-d,repeatMode:3,shapeMode:0,direction:l,length:u,start:m,bands:t.bands||[{interpolation:2,colorStart:16777215,colorEnd:[1,1,1,0],size:d},{colorStart:[1,1,1,0],size:1-d}]}},y=c.make.gradient(v,!1);if(t.displacementMap){var b=t.displacement||.1;y.enableFilters().filters.internal.addDisplacement(t.displacementMap,b,b)}for(var x=s(),S=c.textures;S.exists(x);)x=s();var C=S.addDynamicTexture(x,y.width,y.height),w=c.tweens.add({targets:y,offset:1+d,repeat:-1,yoyo:!!t.yoyo,ease:t.ease,duration:t.duration||2e3,repeatDelay:t.repeatDelay||0,onUpdate:function(){C.clear().draw(y).render()}});_ instanceof o&&_.enableFilters();var T=t.useExternal?_.filters.external:_.filters.internal,E,D,O=t.colorFactor||[1.15,.85,.85,1];t.reveal?E=T.addBlend(x,i.MULTIPLY,1,O):(D=T.addParallelFilters(),E=D.top.addBlend(x,i.MULTIPLY,1,O),D.blend.blendMode=i.ADD);var k=function(){w.destroy(),C.destroy()};_ instanceof o?_.on(a,k):_.on(r,k),h.push({item:_,dynamicTexture:C,gradient:y,tween:w,parallelFilters:D,blendFilter:E})}return h}},245(e,t,n){var r=n(95643),i=n(93232),a=n(94591);e.exports=function(e,t){Array.isArray(e)||(e=[e]),t||={};for(var n=t.aspectRatio===void 0?1:t.aspectRatio,o=t.padding||0,s=e[0].scene,c=[],l=0;l<e.length;l++){var u=e[l],d=t.region;d||=t.useInternal&&u._sizeComponent?new i(0,0,u.width,u.height):new i(0,0,s.scale.width,s.scale.height);var f;switch(t.shape){case`ellipse`:f=s.add.ellipse(0,0,n,1,16777215);break;case`square`:f=s.add.rectangle(0,0,1,1,16777215);break;case`rectangle`:f=s.add.rectangle(0,0,n,1,16777215);break;default:f=s.add.circle(0,0,1,16777215);break}s.children.remove(f),o&&(d=new i(d.x+o,d.y+o,d.width-o*2,d.height-o*2)),a(f,t.scaleMode,d),t.blurRadius>0&&f.enableFilters().filters.external.addBlur(t.blurQuality,t.blurRadius,t.blurRadius,1,void 0,t.blurSteps),u instanceof r&&u.enableFilters();var p=(t.useInternal?u.filters.internal:u.filters.external).addMask(f,t.invert);c.push(p)}return c}},11517(e,t,n){var r=n(38829);e.exports=function(e,t,n,i){for(var a=e[0],o=1;o<e.length;o++){var s=e[o];r(s,a,t,n,i),a=s}return e}},80318(e,t,n){var r=n(66979);e.exports=function(e,t,n,i,a){return r(e,`angle`,t,n,i,a)}},60757(e){e.exports=function(e,t,n){for(var r=0;r<e.length;r++){var i=e[r];t.call(n,i)}return e}},94591(e,t,n){var r=n(87841),i=n(95540);e.exports=function(e,t,n,a){if(Array.isArray(e)||(e=[e]),t===void 0&&(t=0),!n){var o=e[0].scene;n=new r(0,0,o.scale.width,o.scale.height)}a||={};for(var s=0;s<e.length;s++){var c=e[s],l=i(a,`width`,i(c,`width`,1)),u=i(a,`height`,i(c,`height`,1)),d=i(a,`originX`,i(c,`originX`,.5)),f=i(a,`originY`,i(c,`originY`,.5));c.x=n.x+n.width*d,c.y=n.y+n.height*f;var p=n.width/l,m=n.height/u;switch(t){case-1:c.setScale(Math.min(p,m));break;case 0:c.setScale(p,m);break;case 1:c.setScale(Math.max(p,m));break}}return c}},69927(e){e.exports=function(e,t,n){n===void 0&&(n=0);for(var r=n;r<e.length;r++){var i=e[r],a=!0;for(var o in t)i[o]!==t[o]&&(a=!1);if(a)return i}return null}},32265(e){e.exports=function(e,t,n){n===void 0&&(n=0);for(var r=e.length-1;r>=n;r--){var i=e[r],a=!0;for(var o in t)i[o]!==t[o]&&(a=!1);if(a)return i}return null}},94420(e,t,n){var r=n(11879),i=n(60461),a=n(95540),o=n(29747),s=new(n(41481))({sys:{queueDepthSort:o,events:{once:o}}},0,0,1,1).setOrigin(0,0);e.exports=function(e,t){t===void 0&&(t={});var n=t.hasOwnProperty(`width`),o=t.hasOwnProperty(`height`),c=a(t,`width`,-1),l=a(t,`height`,-1),u=a(t,`cellWidth`,1),d=a(t,`cellHeight`,u),f=a(t,`position`,i.TOP_LEFT),p=a(t,`x`,0),m=a(t,`y`,0),h=0,g=0,_=c*u,v=l*d;s.setPosition(p,m),s.setSize(u,d);for(var y=0;y<e.length;y++)if(r(e[y],s,f),n&&c===-1)s.x+=u;else if(o&&l===-1)s.y+=d;else if(o&&!n){if(g+=d,s.y+=d,g===v&&(g=0,h+=u,s.y=m,s.x+=u,h===_))break}else if(h+=u,s.x+=u,h===_&&(h=0,g+=d,s.x=p,s.y+=d,g===v))break;return e}},41721(e,t,n){var r=n(66979);e.exports=function(e,t,n,i,a){return r(e,`alpha`,t,n,i,a)}},67285(e,t,n){var r=n(66979);e.exports=function(e,t,n,i,a){return r(e,`x`,t,n,i,a)}},9074(e,t,n){var r=n(66979);e.exports=function(e,t,n,i,a,o,s){return n??=t,r(e,`x`,t,i,o,s),r(e,`y`,n,a,o,s)}},75222(e,t,n){var r=n(66979);e.exports=function(e,t,n,i,a){return r(e,`y`,t,n,i,a)}},22983(e){e.exports=function(e,t,n,r){n===void 0&&(n=0),r===void 0&&(r=6.28);for(var i=n,a=(r-n)/e.length,o=t.x,s=t.y,c=t.radius,l=0;l<e.length;l++)e[l].x=o+c*Math.cos(i),e[l].y=s+c*Math.sin(i),i+=a;return e}},95253(e){e.exports=function(e,t,n,r){n===void 0&&(n=0),r===void 0&&(r=6.28);for(var i=n,a=(r-n)/e.length,o=t.width/2,s=t.height/2,c=0;c<e.length;c++)e[c].x=t.x+o*Math.cos(i),e[c].y=t.y+s*Math.sin(i),i+=a;return e}},88505(e,t,n){var r=n(15258),i=n(26708);e.exports=function(e,t,n){for(var a=n?i(t,n,e.length):r(t,e.length),o=0;o<e.length;o++){var s=e[o],c=a[o];s.x=c.x,s.y=c.y}return e}},41346(e,t,n){var r=n(14649),i=n(86003),a=n(49498);e.exports=function(e,t,n){n===void 0&&(n=0);var o=r(t,!1,e.length);n>0?i(o,n):n<0&&a(o,Math.abs(n));for(var s=0;s<e.length;s++)e[s].x=o[s].x,e[s].y=o[s].y;return e}},11575(e,t,n){var r=n(84993);e.exports=function(e,t,n){var i=r({x1:t.x1,y1:t.y1,x2:t.x2,y2:t.y2},n),a=r({x1:t.x2,y1:t.y2,x2:t.x3,y2:t.y3},n),o=r({x1:t.x3,y1:t.y3,x2:t.x1,y2:t.y1},n);i.pop(),a.pop(),o.pop(),i=i.concat(a,o);for(var s=i.length/e.length,c=0,l=0;l<e.length;l++){var u=e[l],d=i[Math.floor(c)];u.x=d.x,u.y=d.y,c+=s}return e}},29953(e){e.exports=function(e,t,n){for(var r=0;r<e.length;r++){var i=e[r];i.anims&&i.anims.play(t,n)}return e}},66979(e){e.exports=function(e,t,n,r,i,a){r===void 0&&(r=0),i===void 0&&(i=0),a===void 0&&(a=1);var o,s=0,c=e.length;if(a===1)for(o=i;o<c;o++)e[o][t]+=n+s*r,s++;else for(o=i;o>=0;o--)e[o][t]+=n+s*r,s++;return e}},43967(e){e.exports=function(e,t,n,r,i,a){r===void 0&&(r=0),i===void 0&&(i=0),a===void 0&&(a=1);var o,s=0,c=e.length;if(a===1)for(o=i;o<c;o++)e[o][t]=n+s*r,s++;else for(o=i;o>=0;o--)e[o][t]=n+s*r,s++;return e}},88926(e,t,n){var r=n(28176);e.exports=function(e,t){for(var n=0;n<e.length;n++)r(t,e[n]);return e}},33286(e,t,n){var r=n(24820);e.exports=function(e,t){for(var n=0;n<e.length;n++)r(t,e[n]);return e}},96e3(e,t,n){var r=n(65822);e.exports=function(e,t){for(var n=0;n<e.length;n++)r(t,e[n]);return e}},28789(e,t,n){var r=n(26597);e.exports=function(e,t){for(var n=0;n<e.length;n++)r(t,e[n]);return e}},97154(e,t,n){var r=n(90260);e.exports=function(e,t){for(var n=0;n<e.length;n++)r(t,e[n]);return e}},20510(e,t,n){var r=n(66979);e.exports=function(e,t,n,i,a){return r(e,`rotation`,t,n,i,a)}},91051(e,t,n){var r=n(1163),i=n(20339);e.exports=function(e,t,n){for(var a=t.x,o=t.y,s=0;s<e.length;s++){var c=e[s];r(c,a,o,n,Math.max(1,i(c.x,c.y,a,o)))}return e}},76332(e,t,n){var r=n(1163);e.exports=function(e,t,n,i){var a=t.x,o=t.y;if(i===0)return e;for(var s=0;s<e.length;s++)r(e[s],a,o,n,i);return e}},61619(e,t,n){var r=n(66979);e.exports=function(e,t,n,i,a){return r(e,`scaleX`,t,n,i,a)}},94868(e,t,n){var r=n(66979);e.exports=function(e,t,n,i,a,o,s){return n??=t,r(e,`scaleX`,t,i,o,s),r(e,`scaleY`,n,a,o,s)}},95532(e,t,n){var r=n(66979);e.exports=function(e,t,n,i,a){return r(e,`scaleY`,t,n,i,a)}},8689(e,t,n){var r=n(43967);e.exports=function(e,t,n,i,a){return r(e,`alpha`,t,n,i,a)}},2645(e,t,n){var r=n(43967);e.exports=function(e,t,n,i){return r(e,`blendMode`,t,0,n,i)}},32372(e,t,n){var r=n(43967);e.exports=function(e,t,n,i,a){return r(e,`depth`,t,n,i,a)}},85373(e){e.exports=function(e,t,n){for(var r=0;r<e.length;r++)e[r].setInteractive(t,n);return e}},81583(e,t,n){var r=n(43967);e.exports=function(e,t,n,i,a,o,s){return n??=t,r(e,`originX`,t,i,o,s),r(e,`originY`,n,a,o,s),e.forEach(function(e){e.updateDisplayOrigin()}),e}},79939(e,t,n){var r=n(43967);e.exports=function(e,t,n,i,a){return r(e,`rotation`,t,n,i,a)}},2699(e,t,n){var r=n(43967);e.exports=function(e,t,n,i,a,o,s){return n??=t,r(e,`scaleX`,t,i,o,s),r(e,`scaleY`,n,a,o,s)}},98739(e,t,n){var r=n(43967);e.exports=function(e,t,n,i,a){return r(e,`scaleX`,t,n,i,a)}},98476(e,t,n){var r=n(43967);e.exports=function(e,t,n,i,a){return r(e,`scaleY`,t,n,i,a)}},6207(e,t,n){var r=n(43967);e.exports=function(e,t,n,i,a,o,s){return n??=t,r(e,`scrollFactorX`,t,i,o,s),r(e,`scrollFactorY`,n,a,o,s)}},6607(e,t,n){var r=n(43967);e.exports=function(e,t,n,i,a){return r(e,`scrollFactorX`,t,n,i,a)}},72248(e,t,n){var r=n(43967);e.exports=function(e,t,n,i,a){return r(e,`scrollFactorY`,t,n,i,a)}},14036(e){e.exports=function(e,t,n,r,i){for(var a=0;a<e.length;a++)e[a].setTint(t,n,r,i);return e}},50159(e,t,n){var r=n(43967);e.exports=function(e,t,n,i){return r(e,`visible`,t,0,n,i)}},77597(e,t,n){var r=n(43967);e.exports=function(e,t,n,i,a){return r(e,`x`,t,n,i,a)}},83194(e,t,n){var r=n(43967);e.exports=function(e,t,n,i,a,o,s){return n??=t,r(e,`x`,t,i,o,s),r(e,`y`,n,a,o,s)}},67678(e,t,n){var r=n(43967);e.exports=function(e,t,n,i,a){return r(e,`y`,t,n,i,a)}},35850(e,t,n){var r=n(26099);e.exports=function(e,t,n,i,a){i===void 0&&(i=0),a===void 0&&(a=new r);var o,s,c=e.length;if(c===1)o=e[0].x,s=e[0].y,e[0].x=t,e[0].y=n;else{var l=1,u=0;i===0&&(u=c-1,l=c-2),o=e[u].x,s=e[u].y,e[u].x=t,e[u].y=n;for(var d=0;d<c;d++)if(!(l>=c||l===-1)){var f=e[l],p=f.x,m=f.y;f.x=o,f.y=s,o=p,s=m,i===0?l--:l++}}return a.x=o,a.y=s,a}},8628(e,t,n){var r=n(33680);e.exports=function(e){return r(e)}},21837(e,t,n){var r=n(7602);e.exports=function(e,t,n,i,a){a===void 0&&(a=!1);var o=Math.abs(i-n)/e.length,s;if(a)for(s=0;s<e.length;s++)e[s][t]+=r(s*o,n,i);else for(s=0;s<e.length;s++)e[s][t]=r(s*o,n,i);return e}},21910(e,t,n){var r=n(54261);e.exports=function(e,t,n,i,a){a===void 0&&(a=!1);var o=Math.abs(i-n)/e.length,s;if(a)for(s=0;s<e.length;s++)e[s][t]+=r(s*o,n,i);else for(s=0;s<e.length;s++)e[s][t]=r(s*o,n,i);return e}},62054(e){e.exports=function(e,t,n,r,i){if(i===void 0&&(i=!1),e.length===0)return e;if(e.length===1)return i?e[0][t]+=(r+n)/2:e[0][t]=(r+n)/2,e;var a=Math.abs(r-n)/(e.length-1),o;if(i)for(o=0;o<e.length;o++)e[o][t]+=o*a+n;else for(o=0;o<e.length;o++)e[o][t]=o*a+n;return e}},79815(e){e.exports=function(e){for(var t=0;t<e.length;t++)e[t].visible=!e[t].visible;return e}},39665(e,t,n){var r=n(15994);e.exports=function(e,t,n){n===void 0&&(n=0);for(var i=0;i<e.length;i++){var a=e[i];a.x=r(a.x,t.left-n,t.right+n),a.y=r(a.y,t.top-n,t.bottom+n)}return e}},61061(e,t,n){e.exports={AddEffectBloom:n(93300),AddEffectShine:n(56704),AddMaskShape:n(245),AlignTo:n(11517),Angle:n(80318),Call:n(60757),FitToRegion:n(94591),GetFirst:n(69927),GetLast:n(32265),GridAlign:n(94420),IncAlpha:n(41721),IncX:n(67285),IncXY:n(9074),IncY:n(75222),PlaceOnCircle:n(22983),PlaceOnEllipse:n(95253),PlaceOnLine:n(88505),PlaceOnRectangle:n(41346),PlaceOnTriangle:n(11575),PlayAnimation:n(29953),PropertyValueInc:n(66979),PropertyValueSet:n(43967),RandomCircle:n(88926),RandomEllipse:n(33286),RandomLine:n(96e3),RandomRectangle:n(28789),RandomTriangle:n(97154),Rotate:n(20510),RotateAround:n(91051),RotateAroundDistance:n(76332),ScaleX:n(61619),ScaleXY:n(94868),ScaleY:n(95532),SetAlpha:n(8689),SetBlendMode:n(2645),SetDepth:n(32372),SetHitArea:n(85373),SetOrigin:n(81583),SetRotation:n(79939),SetScale:n(2699),SetScaleX:n(98739),SetScaleY:n(98476),SetScrollFactor:n(6207),SetScrollFactorX:n(6607),SetScrollFactorY:n(72248),SetTint:n(14036),SetVisible:n(50159),SetX:n(77597),SetXY:n(83194),SetY:n(67678),ShiftPosition:n(35850),Shuffle:n(8628),SmootherStep:n(21910),SmoothStep:n(21837),Spread:n(62054),ToggleVisible:n(79815),WrapInRectangle:n(39665)}},42099(e,t,n){var r=n(45319),i=n(83419),a=n(74943),o=n(81957),s=n(41138),c=n(35154),l=n(90126);e.exports=new i({initialize:function(e,t,n){this.manager=e,this.key=t,this.type=`frame`,this.frames=this.getFrames(e.textureManager,c(n,`frames`,[]),c(n,`defaultTextureKey`,null),c(n,`sortFrames`,!0)),this.frameRate=c(n,`frameRate`,null),this.duration=c(n,`duration`,null),this.msPerFrame,this.skipMissedFrames=c(n,`skipMissedFrames`,!0),this.delay=c(n,`delay`,0),this.repeat=c(n,`repeat`,0),this.repeatDelay=c(n,`repeatDelay`,0),this.yoyo=c(n,`yoyo`,!1),this.showBeforeDelay=c(n,`showBeforeDelay`,!1),this.showOnStart=c(n,`showOnStart`,!1),this.hideOnComplete=c(n,`hideOnComplete`,!1),this.randomFrame=c(n,`randomFrame`,!1),this.paused=!1,this.calculateDuration(this,this.getTotalFrames(),this.duration,this.frameRate),this.manager.on&&(this.manager.on(a.PAUSE_ALL,this.pause,this),this.manager.on(a.RESUME_ALL,this.resume,this))},getTotalFrames:function(){return this.frames.length},calculateDuration:function(e,t,n,r){n===null&&r===null?(e.frameRate=24,e.duration=24/t*1e3):n&&r===null?(e.duration=n,e.frameRate=t/(n/1e3)):(e.frameRate=r,e.duration=t/r*1e3),e.msPerFrame=1e3/e.frameRate},addFrame:function(e){return this.addFrameAt(this.frames.length,e)},addFrameAt:function(e,t){var n=this.getFrames(this.manager.textureManager,t);if(n.length>0){if(e===0)this.frames=n.concat(this.frames);else if(e===this.frames.length)this.frames=this.frames.concat(n);else{var r=this.frames.slice(0,e),i=this.frames.slice(e);this.frames=r.concat(n,i)}this.updateFrameSequence()}return this},checkFrame:function(e){return e>=0&&e<this.frames.length},getFirstTick:function(e){e.accumulator=0,e.nextTick=e.frameRate===e.currentAnim.frameRate&&e.currentFrame.duration||e.msPerFrame},getFrameAt:function(e){return this.frames[e]},getFrames:function(e,t,n,r){r===void 0&&(r=!0);var i=[],a,o,u=1,d,f;if(typeof t==`string`){if(f=t,!e.exists(f))return console.warn(`Texture "%s" not found`,f),i;var p=e.get(f).getFrameNames();r&&l(p),t=[],p.forEach(function(e){t.push({key:f,frame:e})})}if(!Array.isArray(t)||t.length===0)return i;for(d=0;d<t.length;d++){var m=t[d],h=c(m,`key`,n);if(h){var g=c(m,`frame`,0),_=e.getFrame(h,g);if(!_){console.warn(`Texture "%s" not found`,h);continue}o=new s(h,g,u,_),o.duration=c(m,`duration`,0),o.isFirst=!a,a&&(a.nextFrame=o,o.prevFrame=a),i.push(o),a=o,u++}}if(i.length>0){o.isLast=!0,o.nextFrame=i[0],i[0].prevFrame=o;var v=1/(i.length-1);for(d=0;d<i.length;d++)i[d].progress=d*v}return i},getNextTick:function(e){e.accumulator-=e.nextTick,e.nextTick=e.frameRate===e.currentAnim.frameRate&&e.currentFrame.duration||e.msPerFrame},getFrameByProgress:function(e){return e=r(e,0,1),o(e,this.frames,`progress`)},nextFrame:function(e){var t=e.currentFrame;t.isLast?e.yoyo?this.handleYoyoFrame(e,!1):e.repeatCounter>0?e.inReverse&&e.forward?e.forward=!1:this.repeatAnimation(e):e.complete():this.updateAndGetNextTick(e,t.nextFrame)},handleYoyoFrame:function(e,t){if(t||=!1,e.inReverse===!t&&e.repeatCounter>0){(e.repeatDelay===0||e.pendingRepeat)&&(e.forward=t),this.repeatAnimation(e);return}if(e.inReverse!==t&&e.repeatCounter===0){e.complete();return}e.forward=t;var n=t?e.currentFrame.nextFrame:e.currentFrame.prevFrame;this.updateAndGetNextTick(e,n)},getLastFrame:function(){return this.frames[this.frames.length-1]},previousFrame:function(e){var t=e.currentFrame;t.isFirst?e.yoyo?this.handleYoyoFrame(e,!0):e.repeatCounter>0?(e.inReverse&&!e.forward||(e.forward=!0),this.repeatAnimation(e)):e.complete():this.updateAndGetNextTick(e,t.prevFrame)},updateAndGetNextTick:function(e,t){e.setCurrentFrame(t),this.getNextTick(e)},removeFrame:function(e){var t=this.frames.indexOf(e);return t!==-1&&this.removeFrameAt(t),this},removeFrameAt:function(e){return this.frames.splice(e,1),this.updateFrameSequence(),this},repeatAnimation:function(e){if(e._pendingStop===2){if(e._pendingStopValue===0)return e.stop();e._pendingStopValue--}e.repeatDelay>0&&!e.pendingRepeat?(e.pendingRepeat=!0,e.accumulator-=e.nextTick,e.nextTick+=e.repeatDelay):(e.repeatCounter--,e.forward?e.setCurrentFrame(e.currentFrame.nextFrame):e.setCurrentFrame(e.currentFrame.prevFrame),e.isPlaying&&(this.getNextTick(e),e.handleRepeat()))},toJSON:function(){var e={key:this.key,type:this.type,frames:[],frameRate:this.frameRate,duration:this.duration,skipMissedFrames:this.skipMissedFrames,delay:this.delay,repeat:this.repeat,repeatDelay:this.repeatDelay,yoyo:this.yoyo,showBeforeDelay:this.showBeforeDelay,showOnStart:this.showOnStart,randomFrame:this.randomFrame,hideOnComplete:this.hideOnComplete};return this.frames.forEach(function(t){e.frames.push(t.toJSON())}),e},updateFrameSequence:function(){for(var e=this.frames.length,t=1/(e-1),n,r=0;r<e;r++)n=this.frames[r],n.index=r+1,n.isFirst=!1,n.isLast=!1,n.progress=r*t,r===0?(n.isFirst=!0,e===1?(n.isLast=!0,n.nextFrame=n,n.prevFrame=n):(n.isLast=!1,n.prevFrame=this.frames[e-1],n.nextFrame=this.frames[r+1])):r===e-1&&e>1?(n.isLast=!0,n.prevFrame=this.frames[e-2],n.nextFrame=this.frames[0]):e>1&&(n.prevFrame=this.frames[r-1],n.nextFrame=this.frames[r+1]);return this},pause:function(){return this.paused=!0,this},resume:function(){return this.paused=!1,this},destroy:function(){this.manager.off&&(this.manager.off(a.PAUSE_ALL,this.pause,this),this.manager.off(a.RESUME_ALL,this.resume,this)),this.manager.remove(this.key);for(var e=0;e<this.frames.length;e++)this.frames[e].destroy();this.frames=[],this.manager=null}})},41138(e,t,n){e.exports=new(n(83419))({initialize:function(e,t,n,r,i){i===void 0&&(i=!1),this.textureKey=e,this.textureFrame=t,this.index=n,this.frame=r,this.isFirst=!1,this.isLast=!1,this.prevFrame=null,this.nextFrame=null,this.duration=0,this.progress=0,this.isKeyFrame=i},toJSON:function(){return{key:this.textureKey,frame:this.textureFrame,duration:this.duration,keyframe:this.isKeyFrame}},destroy:function(){this.frame=void 0}})},60848(e,t,n){var r=n(42099),i=n(83419),a=n(90330),o=n(50792),s=n(74943),c=n(8443),l=n(95540),u=n(35154),d=n(36383),f=n(20283),p=n(41836);e.exports=new i({Extends:o,initialize:function(e){o.call(this),this.game=e,this.textureManager=null,this.globalTimeScale=1,this.anims=new a,this.mixes=new a,this.paused=!1,this.name=`AnimationManager`,e.events.once(c.BOOT,this.boot,this)},boot:function(){this.textureManager=this.game.textures,this.game.events.once(c.DESTROY,this.destroy,this)},addMix:function(e,t,n){var r=this.anims,i=this.mixes,a=typeof e==`string`?e:e.key,o=typeof t==`string`?t:t.key;if(r.has(a)&&r.has(o)){var s=i.get(a);s||={},s[o]=n,i.set(a,s)}return this},removeMix:function(e,t){var n=this.mixes,r=typeof e==`string`?e:e.key,i=n.get(r);if(i)if(t){var a=typeof t==`string`?t:t.key;i.hasOwnProperty(a)&&delete i[a]}else t||n.delete(r);return this},getMix:function(e,t){var n=this.mixes,r=typeof e==`string`?e:e.key,i=typeof t==`string`?t:t.key,a=n.get(r);return a&&a.hasOwnProperty(i)?a[i]:0},add:function(e,t){return this.anims.has(e)?(console.warn(`Animation key exists: `+e),this):(t.key=e,this.anims.set(e,t),this.emit(s.ADD_ANIMATION,e,t),this)},exists:function(e){return this.anims.has(e)},createFromAseprite:function(e,t,n){var r=[],i=this.game.cache.json.get(e);if(!i)return console.warn(`No Aseprite data found for: `+e),r;var a=this,o=u(i,`meta`,null),s=u(i,`frames`,null);return o&&s&&u(o,`frameTags`,[]).forEach(function(i){var o=[],c=l(i,`name`,null),u=l(i,`from`,0),f=l(i,`to`,0),p=l(i,`direction`,`forward`);if(c&&(!t||t&&t.indexOf(c)>-1)){for(var m=0,h=u;h<=f;h++){var g=h.toString(),_=s[g];if(_){var v=l(_,`duration`,d.MAX_SAFE_INTEGER);o.push({key:e,frame:g,duration:v}),m+=v}}p===`reverse`&&(o=o.reverse());var y={key:c,frames:o,duration:m,yoyo:p===`pingpong`},b;n?n.anims&&(b=n.anims.create(y)):b=a.create(y),b&&r.push(b)}}),r},create:function(e){var t=e.key,n=!1;return t&&(n=this.get(t),n?console.warn(`AnimationManager key already exists: `+t):(n=new r(this,t,e),this.anims.set(t,n),this.emit(s.ADD_ANIMATION,t,n))),n},fromJSON:function(e,t){t===void 0&&(t=!1),t&&this.anims.clear(),typeof e==`string`&&(e=JSON.parse(e));var n=[];if(e.hasOwnProperty(`anims`)&&Array.isArray(e.anims)){for(var r=0;r<e.anims.length;r++)n.push(this.create(e.anims[r]));e.hasOwnProperty(`globalTimeScale`)&&(this.globalTimeScale=e.globalTimeScale)}else e.hasOwnProperty(`key`)&&e.type===`frame`&&n.push(this.create(e));return n},generateFrameNames:function(e,t){var n=u(t,`prefix`,``),r=u(t,`start`,0),i=u(t,`end`,0),a=u(t,`suffix`,``),o=u(t,`zeroPad`,0),s=u(t,`outputArray`,[]),c=u(t,`frames`,!1);if(!this.textureManager.exists(e))return console.warn(`Texture "%s" not found`,e),s;var l=this.textureManager.get(e);if(!l)return s;var d;if(t)for(c||=f(r,i),d=0;d<c.length;d++){var m=n+p(c[d],o,`0`,1)+a;l.has(m)?s.push({key:e,frame:m}):console.warn(`Frame "%s" not found in texture "%s"`,m,e)}else for(c=l.getFrameNames(),d=0;d<c.length;d++)s.push({key:e,frame:c[d]});return s},generateFrameNumbers:function(e,t){var n=u(t,`start`,0),r=u(t,`end`,-1),i=u(t,`first`,!1),a=u(t,`outputArray`,[]),o=u(t,`frames`,!1);if(!this.textureManager.exists(e))return console.warn(`Texture "%s" not found`,e),a;var s=this.textureManager.get(e);if(!s)return a;i&&s.has(i)&&a.push({key:e,frame:i}),o||=(r===-1&&(r=s.frameTotal-2),f(n,r));for(var c=0;c<o.length;c++){var l=o[c];s.has(l)?a.push({key:e,frame:l}):console.warn(`Frame "%s" not found in texture "%s"`,l,e)}return a},get:function(e){return this.anims.get(e)},getAnimsFromTexture:function(e){for(var t=this.textureManager.get(e).key,n=this.anims.getArray(),r=[],i=0;i<n.length;i++)for(var a=n[i],o=a.frames,s=0;s<o.length;s++)if(o[s].textureKey===t){r.push(a.key);break}return r},pauseAll:function(){return this.paused||(this.paused=!0,this.emit(s.PAUSE_ALL)),this},play:function(e,t){Array.isArray(t)||(t=[t]);for(var n=0;n<t.length;n++)t[n].anims.play(e);return this},staggerPlay:function(e,t,n,r){n===void 0&&(n=0),r===void 0&&(r=!0),Array.isArray(t)||(t=[t]);var i=t.length;r||i--;for(var a=0;a<t.length;a++){var o=n<0?Math.abs(n)*(i-a):n*a;t[a].anims.playAfterDelay(e,o)}return this},remove:function(e){var t=this.get(e);return t&&(this.emit(s.REMOVE_ANIMATION,e,t),this.anims.delete(e),this.removeMix(e)),t},resumeAll:function(){return this.paused&&(this.paused=!1,this.emit(s.RESUME_ALL)),this},toJSON:function(e){var t={anims:[],globalTimeScale:this.globalTimeScale};return e!==void 0&&e!==``?t.anims.push(this.anims.get(e).toJSON()):this.anims.each(function(e,n){t.anims.push(n.toJSON())}),t},destroy:function(){this.anims.clear(),this.mixes.clear(),this.textureManager=null,this.game=null}})},9674(e,t,n){var r=n(42099),i=n(30976),a=n(83419),o=n(90330),s=n(74943),c=n(95540);e.exports=new a({initialize:function(e){this.parent=e,this.animationManager=e.scene.sys.anims,this.animationManager.on(s.REMOVE_ANIMATION,this.globalRemove,this),this.textureManager=this.animationManager.textureManager,this.anims=null,this.isPlaying=!1,this.hasStarted=!1,this.currentAnim=null,this.currentFrame=null,this.nextAnim=null,this.nextAnimsQueue=[],this.timeScale=1,this.frameRate=0,this.duration=0,this.msPerFrame=0,this.skipMissedFrames=!0,this.randomFrame=!1,this.delay=0,this.repeat=0,this.repeatDelay=0,this.yoyo=!1,this.showBeforeDelay=!1,this.showOnStart=!1,this.hideOnComplete=!1,this.forward=!0,this.inReverse=!1,this.accumulator=0,this.nextTick=0,this.delayCounter=0,this.repeatCounter=0,this.pendingRepeat=!1,this._paused=!1,this._wasPlaying=!1,this._pendingStop=0,this._pendingStopValue},chain:function(e){var t=this.parent;if(e===void 0)return this.nextAnimsQueue.length=0,this.nextAnim=null,t;Array.isArray(e)||(e=[e]);for(var n=0;n<e.length;n++){var r=e[n];this.nextAnim?this.nextAnimsQueue.push(r):this.nextAnim=r}return this.parent},getName:function(){return this.currentAnim?this.currentAnim.key:``},getFrameName:function(){return this.currentFrame?this.currentFrame.textureFrame:``},load:function(e){this.isPlaying&&this.stop();var t=this.animationManager,n=typeof e==`string`?e:c(e,`key`,null),r=this.exists(n)?this.get(n):t.get(n);if(!r)console.warn(`Missing animation: `+n);else{this.currentAnim=r;var a=r.getTotalFrames(),o=c(e,`frameRate`,r.frameRate),s=c(e,`duration`,r.duration);r.calculateDuration(this,a,s,o),this.delay=c(e,`delay`,r.delay),this.repeat=c(e,`repeat`,r.repeat),this.repeatDelay=c(e,`repeatDelay`,r.repeatDelay),this.yoyo=c(e,`yoyo`,r.yoyo),this.showBeforeDelay=c(e,`showBeforeDelay`,r.showBeforeDelay),this.showOnStart=c(e,`showOnStart`,r.showOnStart),this.hideOnComplete=c(e,`hideOnComplete`,r.hideOnComplete),this.skipMissedFrames=c(e,`skipMissedFrames`,r.skipMissedFrames),this.randomFrame=c(e,`randomFrame`,r.randomFrame),this.timeScale=c(e,`timeScale`,this.timeScale);var l=c(e,`startFrame`,0);l>a&&(l=0),this.randomFrame&&(l=i(0,a-1));var u=r.frames[l];l===0&&!this.forward&&(u=r.getLastFrame()),this.currentFrame=u}return this.parent},pause:function(e){return this._paused||(this._paused=!0,this._wasPlaying=this.isPlaying,this.isPlaying=!1),e!==void 0&&this.setCurrentFrame(e),this.parent},resume:function(e){return this._paused&&(this._paused=!1,this.isPlaying=this._wasPlaying),e!==void 0&&this.setCurrentFrame(e),this.parent},playAfterDelay:function(e,t){if(!this.isPlaying)this.delayCounter=t,this.play(e,!0);else{var n=this.nextAnim,r=this.nextAnimsQueue;n&&r.unshift(n),this.nextAnim=e,this._pendingStop=1,this._pendingStopValue=t}return this.parent},playAfterRepeat:function(e,t){if(t===void 0&&(t=1),!this.isPlaying)this.play(e);else{var n=this.nextAnim,r=this.nextAnimsQueue;n&&r.unshift(n),this.repeatCounter!==-1&&t>this.repeatCounter&&(t=this.repeatCounter),this.nextAnim=e,this._pendingStop=2,this._pendingStopValue=t}return this.parent},play:function(e,t){t===void 0&&(t=!1);var n=this.currentAnim,r=this.parent,i=typeof e==`string`?e:e.key;if(t&&this.isPlaying&&n.key===i)return r;if(n&&this.isPlaying){var a=this.animationManager.getMix(n.key,e);if(a>0)return this.playAfterDelay(e,a)}return this.forward=!0,this.inReverse=!1,this._paused=!1,this._wasPlaying=!0,this.startAnimation(e)},playReverse:function(e,t){t===void 0&&(t=!1);var n=typeof e==`string`?e:e.key;return t&&this.isPlaying&&this.currentAnim.key===n?this.parent:(this.forward=!1,this.inReverse=!0,this._paused=!1,this._wasPlaying=!0,this.startAnimation(e))},startAnimation:function(e){this.load(e);var t=this.currentAnim,n=this.parent;return t?(this.repeatCounter=this.repeat===-1?Number.MAX_VALUE:this.repeat,t.getFirstTick(this),this.isPlaying=!0,this.pendingRepeat=!1,this.hasStarted=!1,this._pendingStop=0,this._pendingStopValue=0,this._paused=!1,this.delayCounter+=this.delay,this.delayCounter===0?this.handleStart():this.showBeforeDelay&&this.setCurrentFrame(this.currentFrame),n):n},handleStart:function(){this.showOnStart&&this.parent.setVisible(!0),this.setCurrentFrame(this.currentFrame),this.hasStarted=!0,this.emitEvents(s.ANIMATION_START)},handleRepeat:function(){this.pendingRepeat=!1,this.emitEvents(s.ANIMATION_REPEAT)},handleStop:function(){this._pendingStop=0,this.isPlaying=!1,this.emitEvents(s.ANIMATION_STOP)},handleComplete:function(){this._pendingStop=0,this.isPlaying=!1,this.hideOnComplete&&this.parent.setVisible(!1),this.emitEvents(s.ANIMATION_COMPLETE,s.ANIMATION_COMPLETE_KEY)},emitEvents:function(e,t){var n=this.currentAnim;if(n){var r=this.currentFrame,i=this.parent,a=r.textureFrame;i.emit(e,n,r,i,a),t&&i.emit(t+n.key,n,r,i,a)}},reverse:function(){return this.isPlaying&&(this.inReverse=!this.inReverse,this.forward=!this.forward),this.parent},getProgress:function(){var e=this.currentFrame;if(!e)return 0;var t=e.progress;return this.inReverse&&(t*=-1),t},setProgress:function(e){return this.forward||(e=1-e),this.setCurrentFrame(this.currentAnim.getFrameByProgress(e)),this.parent},setRepeat:function(e){return this.repeatCounter=e===-1?Number.MAX_VALUE:e,this.parent},globalRemove:function(e,t){t===void 0&&(t=this.currentAnim),this.isPlaying&&t.key===this.currentAnim.key&&(this.stop(),this.setCurrentFrame(this.currentAnim.frames[0]))},restart:function(e,t){e===void 0&&(e=!1),t===void 0&&(t=!1);var n=this.currentAnim,r=this.parent;return n?(t&&(this.repeatCounter=this.repeat===-1?Number.MAX_VALUE:this.repeat),n.getFirstTick(this),this.emitEvents(s.ANIMATION_RESTART),this.isPlaying=!0,this.pendingRepeat=!1,this.hasStarted=!e,this._pendingStop=0,this._pendingStopValue=0,this._paused=!1,this.setCurrentFrame(n.frames[0]),this.parent):r},complete:function(){if(this._pendingStop=0,this.isPlaying=!1,this.currentAnim&&this.handleComplete(),this.nextAnim){var e=this.nextAnim;this.nextAnim=this.nextAnimsQueue.length>0?this.nextAnimsQueue.shift():null,this.play(e)}return this.parent},stop:function(){if(this._pendingStop=0,this.isPlaying=!1,this.delayCounter=0,this.currentAnim&&this.handleStop(),this.nextAnim){var e=this.nextAnim;this.nextAnim=this.nextAnimsQueue.shift(),this.play(e)}return this.parent},stopAfterDelay:function(e){return this._pendingStop=1,this._pendingStopValue=e,this.parent},stopAfterRepeat:function(e){return e===void 0&&(e=1),this.repeatCounter!==-1&&e>this.repeatCounter&&(e=this.repeatCounter),this._pendingStop=2,this._pendingStopValue=e,this.parent},stopOnFrame:function(e){return this._pendingStop=3,this._pendingStopValue=e,this.parent},getTotalFrames:function(){return this.currentAnim?this.currentAnim.getTotalFrames():0},update:function(e,t){var n=this.currentAnim;if(!(!this.isPlaying||!n||n.paused)){if(this.accumulator+=t*this.timeScale*this.animationManager.globalTimeScale,this._pendingStop===1&&(this._pendingStopValue-=t,this._pendingStopValue<=0))return this.stop();if(!this.hasStarted)this.accumulator>=this.delayCounter&&(this.accumulator-=this.delayCounter,this.handleStart());else if(this.accumulator>=this.nextTick&&(this.forward?n.nextFrame(this):n.previousFrame(this),this.isPlaying&&this._pendingStop===0&&this.skipMissedFrames&&this.accumulator>this.nextTick)){var r=0;do this.forward?n.nextFrame(this):n.previousFrame(this),r++;while(this.isPlaying&&this.accumulator>this.nextTick&&r<60)}}},setCurrentFrame:function(e){var t=this.parent;return this.currentFrame=e,t.texture=e.frame.texture,t.frame=e.frame,t.isCropped&&t.frame.updateCropUVs(t._crop,t.flipX,t.flipY),e.setAlpha&&(t.alpha=e.alpha),t.setSizeToFrame(),t._originComponent&&(e.frame.customPivot?t.setOrigin(e.frame.pivotX,e.frame.pivotY):t.updateDisplayOrigin()),this.isPlaying&&this.hasStarted&&(this.emitEvents(s.ANIMATION_UPDATE),this._pendingStop===3&&this._pendingStopValue===e&&this.stop()),t},nextFrame:function(){return this.currentAnim&&this.currentAnim.nextFrame(this),this.parent},previousFrame:function(){return this.currentAnim&&this.currentAnim.previousFrame(this),this.parent},get:function(e){return this.anims?this.anims.get(e):null},exists:function(e){return this.anims?this.anims.has(e):!1},create:function(e){var t=e.key,n=!1;return t&&(n=this.get(t),n?console.warn(`Animation key already exists: `+t):(n=new r(this,t,e),this.anims||=new o,this.anims.set(t,n))),n},createFromAseprite:function(e,t){return this.animationManager.createFromAseprite(e,t,this.parent)},generateFrameNames:function(e,t){return this.animationManager.generateFrameNames(e,t)},generateFrameNumbers:function(e,t){return this.animationManager.generateFrameNumbers(e,t)},remove:function(e){var t=this.get(e);return t&&(this.currentAnim===t&&this.stop(),this.anims.delete(e)),t},destroy:function(){this.animationManager.off(s.REMOVE_ANIMATION,this.globalRemove,this),this.anims&&this.anims.clear(),this.animationManager=null,this.parent=null,this.nextAnim=null,this.nextAnimsQueue.length=0,this.currentAnim=null,this.currentFrame=null},isPaused:{get:function(){return this._paused}}})},57090(e){e.exports=`add`},25312(e){e.exports=`animationcomplete`},89580(e){e.exports=`animationcomplete-`},52860(e){e.exports=`animationrepeat`},63850(e){e.exports=`animationrestart`},99085(e){e.exports=`animationstart`},28087(e){e.exports=`animationstop`},1794(e){e.exports=`animationupdate`},52562(e){e.exports=`pauseall`},57953(e){e.exports=`remove`},68339(e){e.exports=`resumeall`},74943(e,t,n){e.exports={ADD_ANIMATION:n(57090),ANIMATION_COMPLETE:n(25312),ANIMATION_COMPLETE_KEY:n(89580),ANIMATION_REPEAT:n(52860),ANIMATION_RESTART:n(63850),ANIMATION_START:n(99085),ANIMATION_STOP:n(28087),ANIMATION_UPDATE:n(1794),PAUSE_ALL:n(52562),REMOVE_ANIMATION:n(57953),RESUME_ALL:n(68339)}},60421(e,t,n){e.exports={Animation:n(42099),AnimationFrame:n(41138),AnimationManager:n(60848),AnimationState:n(9674),Events:n(74943)}},2161(e,t,n){var r=n(83419),i=n(90330),a=n(50792),o=n(24736);e.exports=new r({initialize:function(){this.entries=new i,this.events=new a},add:function(e,t){return this.entries.set(e,t),this.events.emit(o.ADD,this,e,t),this},has:function(e){return this.entries.has(e)},exists:function(e){return this.entries.has(e)},get:function(e){return this.entries.get(e)},remove:function(e){var t=this.get(e);return t&&(this.entries.delete(e),this.events.emit(o.REMOVE,this,e,t.data)),this},getKeys:function(){return this.entries.keys()},destroy:function(){this.entries.clear(),this.events.removeAllListeners(),this.entries=null,this.events=null}})},24047(e,t,n){var r=n(2161),i=n(83419),a=n(8443);e.exports=new i({initialize:function(e){this.game=e,this.binary=new r,this.bitmapFont=new r,this.json=new r,this.physics=new r,this.shader=new r,this.audio=new r,this.video=new r,this.text=new r,this.html=new r,this.tilemap=new r,this.xml=new r,this.atlas=new r,this.custom={},this.game.events.once(a.DESTROY,this.destroy,this)},addCustom:function(e){return this.custom.hasOwnProperty(e)||(this.custom[e]=new r),this.custom[e]},destroy:function(){for(var e=[`binary`,`bitmapFont`,`json`,`physics`,`shader`,`audio`,`video`,`text`,`html`,`tilemap`,`xml`,`atlas`],t=0;t<e.length;t++)this[e[t]].destroy(),this[e[t]]=null;for(var n in this.custom)this.custom[n].destroy();this.custom=null,this.game=null}})},51464(e){e.exports=`add`},59261(e){e.exports=`remove`},24736(e,t,n){e.exports={ADD:n(51464),REMOVE:n(59261)}},83388(e,t,n){e.exports={BaseCache:n(2161),CacheManager:n(24047),Events:n(24736)}},71911(e,t,n){var r=n(83419),i=n(39506),a=n(50792),o=n(19715),s=n(87841),c=n(88509),l=n(61340),u=n(59715),d=n(80333),f=n(26099);e.exports=new r({Extends:a,Mixins:[c,u],initialize:function(e,t,n,r){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=0),a.call(this),this.scene,this.sceneManager,this.scaleManager,this.cameraManager,this.id=0,this.name=``,this.roundPixels=!1,this.useBounds=!1,this.worldView=new s,this.dirty=!0,this._x=e,this._y=t,this._width=n,this._height=r,this._bounds=new s,this._scrollX=0,this._scrollY=0,this._zoomX=1,this._zoomY=1,this._rotation=0,this.matrix=new l,this.matrixCombined=new l,this.matrixExternal=new l,this.transparent=!0,this.backgroundColor=d(`rgba(0,0,0,0)`),this.disableCull=!1,this.culledObjects=[],this.midPoint=new f(n/2,r/2),this.originX=.5,this.originY=.5,this._customViewport=!1,this.mask=null,this._maskCamera=null,this.renderList=[],this.isSceneCamera=!0,this.forceComposite=!1,this.renderRoundPixels=!0},addToRenderList:function(e){this.renderList.push(e)},setOrigin:function(e,t){return e===void 0&&(e=.5),t===void 0&&(t=e),this.originX=e,this.originY=t,this},getScroll:function(e,t,n){n===void 0&&(n=new f);var r=this.width*.5,i=this.height*.5;return n.x=e-r,n.y=t-i,this.useBounds&&(n.x=this.clampX(n.x),n.y=this.clampY(n.y)),n},centerOnX:function(e){var t=this.width*.5;return this.midPoint.x=e,this.scrollX=e-t,this.useBounds&&(this.scrollX=this.clampX(this.scrollX)),this},centerOnY:function(e){var t=this.height*.5;return this.midPoint.y=e,this.scrollY=e-t,this.useBounds&&(this.scrollY=this.clampY(this.scrollY)),this},centerOn:function(e,t){return this.centerOnX(e),this.centerOnY(t),this},centerToBounds:function(){if(this.useBounds){var e=this._bounds,t=this.width*.5,n=this.height*.5;this.midPoint.set(e.centerX,e.centerY),this.scrollX=e.centerX-t,this.scrollY=e.centerY-n}return this},centerToSize:function(){return this.scrollX=this.width*.5,this.scrollY=this.height*.5,this},cull:function(e){if(this.disableCull)return e;var t=this.matrix.matrix,n=t[0],r=t[1],i=t[2],a=t[3],o=n*a-r*i;if(!o)return e;var s=this.scrollX,c=this.scrollY,l=this.width,u=this.height,d=this.y,f=d+u,p=this.x,m=p+l,h=this.culledObjects,g=e.length;o=1/o,h.length=0;for(var _=0;_<g;++_){var v=e[_];if(!v.hasOwnProperty(`width`)||v.parentContainer){h.push(v);continue}var y=v.width,b=v.height,x=v.x-s*v.scrollFactorX-y*v.originX,S=v.y-c*v.scrollFactorY-b*v.originY,C=x*n+S*i,w=x*r+S*a,T=(x+y)*n+(S+b)*i,E=(x+y)*r+(S+b)*a;T>p&&C<m&&E>d&&w<f&&h.push(v)}return h},getWorldPoint:function(e,t,n){n===void 0&&(n=new f);var r=this.matrixCombined.matrix,i=r[0],a=r[1],o=r[2],s=r[3],c=r[4],l=r[5],u=i*s-a*o;if(!u)return n.x=e,n.y=t,n;u=1/u;var d=s*u,p=-a*u,m=-o*u,h=i*u,g=(o*l-s*c)*u,_=(a*c-i*l)*u;return n.x=e*d+t*m+g,n.y=e*p+t*h+_,n},ignore:function(e){var t=this.id;Array.isArray(e)||(e=[e]);for(var n=0;n<e.length;n++){var r=e[n];Array.isArray(r)?this.ignore(r):r.isParent?this.ignore(r.getChildren()):r.cameraFilter|=t}return this},clampX:function(e){var t=this._bounds,n=this.displayWidth,r=t.x+(n-this.width)/2,i=Math.max(r,r+t.width-n);return e<r?e=r:e>i&&(e=i),e},clampY:function(e){var t=this._bounds,n=this.displayHeight,r=t.y+(n-this.height)/2,i=Math.max(r,r+t.height-n);return e<r?e=r:e>i&&(e=i),e},removeBounds:function(){return this.useBounds=!1,this.dirty=!0,this._bounds.setEmpty(),this},setAngle:function(e){return e===void 0&&(e=0),this.rotation=i(e),this},setBackgroundColor:function(e){return e===void 0&&(e=`rgba(0,0,0,0)`),this.backgroundColor=d(e),this.transparent=this.backgroundColor.alpha===0,this},setBounds:function(e,t,n,r,i){return i===void 0&&(i=!1),this._bounds.setTo(e,t,n,r),this.dirty=!0,this.useBounds=!0,i?this.centerToBounds():(this.scrollX=this.clampX(this.scrollX),this.scrollY=this.clampY(this.scrollY)),this},setForceComposite:function(e){return this.forceComposite=e,this},getBounds:function(e){e===void 0&&(e=new s);var t=this._bounds;return e.setTo(t.x,t.y,t.width,t.height),e},setName:function(e){return e===void 0&&(e=``),this.name=e,this},setPosition:function(e,t){return t===void 0&&(t=e),this.x=e,this.y=t,this},setRotation:function(e){return e===void 0&&(e=0),this.rotation=e,this},setRoundPixels:function(e){return this.roundPixels=e,this},setScene:function(e,t){t===void 0&&(t=!0),this.scene&&this._customViewport&&this.sceneManager.customViewports--,this.scene=e,this.isSceneCamera=t;var n=e.sys;return this.sceneManager=n.game.scene,this.scaleManager=n.scale,this.cameraManager=n.cameras,this.updateSystem(),this},setScroll:function(e,t){return t===void 0&&(t=e),this.scrollX=e,this.scrollY=t,this},setSize:function(e,t){return t===void 0&&(t=e),this.width=e,this.height=t,this},setViewport:function(e,t,n,r){return this.x=e,this.y=t,this.width=n,this.height=r,this},setZoom:function(e,t){return e===void 0&&(e=1),t===void 0&&(t=e),e===0&&(e=.001),t===0&&(t=.001),this.zoomX=e,this.zoomY=t,this},setMask:function(e,t){return t===void 0&&(t=!0),this.mask=e,this._maskCamera=t?this.cameraManager.default:this,this},clearMask:function(e){return e===void 0&&(e=!1),e&&this.mask&&this.mask.destroy(),this.mask=null,this},toJSON:function(){var e={name:this.name,x:this.x,y:this.y,width:this.width,height:this.height,zoom:this.zoom,rotation:this.rotation,roundPixels:this.roundPixels,scrollX:this.scrollX,scrollY:this.scrollY,backgroundColor:this.backgroundColor.rgba};return this.useBounds&&(e.bounds={x:this._bounds.x,y:this._bounds.y,width:this._bounds.width,height:this._bounds.height}),e},update:function(){},setIsSceneCamera:function(e){return this.isSceneCamera=e,this},updateSystem:function(){if(!(!this.scaleManager||!this.isSceneCamera)){var e=this._x!==0||this._y!==0||this.scaleManager.width!==this._width||this.scaleManager.height!==this._height,t=this.sceneManager;e&&!this._customViewport?t.customViewports++:!e&&this._customViewport&&t.customViewports--,this.dirty=!0,this._customViewport=e}},destroy:function(){this.emit(o.DESTROY,this),this.removeAllListeners(),this.matrix.destroy(),this.matrixCombined.destroy(),this.matrixExternal.destroy(),this.culledObjects=[],this._customViewport&&this.sceneManager.customViewports--,this.renderList=[],this._bounds=null,this.scene=null,this.scaleManager=null,this.sceneManager=null,this.cameraManager=null},x:{get:function(){return this._x},set:function(e){this._x=e,this.updateSystem()}},y:{get:function(){return this._y},set:function(e){this._y=e,this.updateSystem()}},width:{get:function(){return this._width},set:function(e){this._width=e,this.updateSystem()}},height:{get:function(){return this._height},set:function(e){this._height=e,this.updateSystem()}},scrollX:{get:function(){return this._scrollX},set:function(e){e!==this._scrollX&&(this._scrollX=e,this.dirty=!0)}},scrollY:{get:function(){return this._scrollY},set:function(e){e!==this._scrollY&&(this._scrollY=e,this.dirty=!0)}},zoom:{get:function(){return(this._zoomX+this._zoomY)/2},set:function(e){this._zoomX=e,this._zoomY=e,this.dirty=!0}},zoomX:{get:function(){return this._zoomX},set:function(e){this._zoomX=e,this.dirty=!0}},zoomY:{get:function(){return this._zoomY},set:function(e){this._zoomY=e,this.dirty=!0}},rotation:{get:function(){return this._rotation},set:function(e){this._rotation=e,this.dirty=!0}},centerX:{get:function(){return this.x+.5*this.width}},centerY:{get:function(){return this.y+.5*this.height}},displayWidth:{get:function(){return this.width/this.zoomX}},displayHeight:{get:function(){return this.height/this.zoomY}}})},38058(e,t,n){var r=n(71911),i=n(67502),a=n(45319),o=n(83419),s=n(31401),c=n(20052),l=n(19715),u=n(28915),d=n(87841),f=n(26099);e.exports=new o({Extends:r,initialize:function(e,t,n,i){r.call(this,e,t,n,i),this.filters={internal:new s.FilterList(this),external:new s.FilterList(this)},this.isObjectInversion=!1,this.inputEnabled=!0,this.fadeEffect=new c.Fade(this),this.flashEffect=new c.Flash(this),this.shakeEffect=new c.Shake(this),this.panEffect=new c.Pan(this),this.rotateToEffect=new c.RotateTo(this),this.zoomEffect=new c.Zoom(this),this.lerp=new f(1,1),this.followOffset=new f,this.deadzone=null,this._follow=null},setDeadzone:function(e,t){if(e===void 0)this.deadzone=null;else{if(this.deadzone?(this.deadzone.width=e,this.deadzone.height=t):this.deadzone=new d(0,0,e,t),this._follow){var n=this.width/2,r=this.height/2,a=this._follow.x-this.followOffset.x,o=this._follow.y-this.followOffset.y;this.midPoint.set(a,o),this.scrollX=a-n,this.scrollY=o-r}i(this.deadzone,this.midPoint.x,this.midPoint.y)}return this},fadeIn:function(e,t,n,r,i,a){return this.fadeEffect.start(!1,e,t,n,r,!0,i,a)},fadeOut:function(e,t,n,r,i,a){return this.fadeEffect.start(!0,e,t,n,r,!0,i,a)},fadeFrom:function(e,t,n,r,i,a,o){return this.fadeEffect.start(!1,e,t,n,r,i,a,o)},fade:function(e,t,n,r,i,a,o){return this.fadeEffect.start(!0,e,t,n,r,i,a,o)},flash:function(e,t,n,r,i,a,o){return this.flashEffect.start(e,t,n,r,i,a,o)},shake:function(e,t,n,r,i){return this.shakeEffect.start(e,t,n,r,i)},pan:function(e,t,n,r,i,a,o){return this.panEffect.start(e,t,n,r,i,a,o)},rotateTo:function(e,t,n,r,i,a,o){return this.rotateToEffect.start(e,t,n,r,i,a,o)},zoomTo:function(e,t,n,r,i,a){return this.zoomEffect.start(e,t,n,r,i,a)},preRender:function(){this.renderList.length=0;var e=this.width,t=this.height,n=e*.5,r=t*.5,a=this.zoomX,o=this.zoomY;this.renderRoundPixels=this.roundPixels&&Number.isInteger(a)&&Number.isInteger(o);var s=e*this.originX,c=t*this.originY,d=this._follow,f=this.deadzone,p=this.scrollX,m=this.scrollY;f&&i(f,this.midPoint.x,this.midPoint.y);var h=!1;if(d&&!this.panEffect.isRunning){var g=this.lerp,_=d.x-this.followOffset.x,v=d.y-this.followOffset.y;f?(_<f.x?p=u(p,p-(f.x-_),g.x):_>f.right&&(p=u(p,p+(_-f.right),g.x)),v<f.y?m=u(m,m-(f.y-v),g.y):v>f.bottom&&(m=u(m,m+(v-f.bottom),g.y))):(p=u(p,_-s,g.x),m=u(m,v-c,g.y)),h=!0}this.useBounds&&(p=this.clampX(p),m=this.clampY(m)),this.scrollX=p,this.scrollY=m;var y=p+n,b=m+r;this.midPoint.set(y,b);var x=e/a,S=t/o,C=y-x/2,w=b-S/2;this.worldView.setTo(C,w,x,S);var T=this.matrix,E=this.matrixExternal;this.isObjectInversion?(T.loadIdentity(),T.translate(s,c),T.scale(a,o),T.rotate(this.rotation),T.translate(-p-s,-m-c)):(T.applyITRS(s,c,this.rotation,a,o),T.translate(-p-s,-m-c)),E.applyITRS(this.x,this.y,0,1,1),this.shakeEffect.preRender(),E.multiply(T,this.matrixCombined),h&&this.emit(l.FOLLOW_UPDATE,this,d)},getViewMatrix:function(e){return e||this.forceComposite||this.filters.external.length>0||this.filters.internal.length>0?this.matrix:this.matrixCombined},getPaddingWrapper:function(e){var t={padding:0},n=new Proxy(this,{get:function(e,n){switch(n){case`padding`:return t.padding;case`x`:case`y`:case`scrollX`:case`scrollY`:return e[n]+t.padding;case`width`:case`height`:return e[n]-t.padding*2;default:return e[n]}},set:function(n,r,i){switch(r){case`padding`:var a=t.padding;t.padding=i;var o=t.padding-a;return n.x-=o,n.y-=o,n.width+=o*2,n.height+=o*2,n.scrollX-=o,n.scrollY-=o,e;case`x`:case`y`:case`scrollX`:case`scrollY`:return n[r]=i-t.padding;case`width`:case`height`:return n[r]=i+t.padding*2;default:return n[r]=i}}});return n.padding=e||0,n},setLerp:function(e,t){return e===void 0&&(e=1),t===void 0&&(t=e),this.lerp.set(e,t),this},setFollowOffset:function(e,t){return e===void 0&&(e=0),t===void 0&&(t=0),this.followOffset.set(e,t),this},startFollow:function(e,t,n,r,i,o){t===void 0&&(t=!1),n===void 0&&(n=1),r===void 0&&(r=n),i===void 0&&(i=0),o===void 0&&(o=i),this._follow=e,this.roundPixels=t,n=a(n,0,1),r=a(r,0,1),this.lerp.set(n,r),this.followOffset.set(i,o);var s=this.width/2,c=this.height/2,l=e.x-i,u=e.y-o;return this.midPoint.set(l,u),this.scrollX=l-s,this.scrollY=u-c,this.useBounds&&(this.scrollX=this.clampX(this.scrollX),this.scrollY=this.clampY(this.scrollY)),this},stopFollow:function(){return this._follow=null,this},resetFX:function(){return this.rotateToEffect.reset(),this.panEffect.reset(),this.shakeEffect.reset(),this.flashEffect.reset(),this.fadeEffect.reset(),this},update:function(e,t){this.visible&&(this.rotateToEffect.update(e,t),this.panEffect.update(e,t),this.zoomEffect.update(e,t),this.shakeEffect.update(e,t),this.flashEffect.update(e,t),this.fadeEffect.update(e,t))},destroy:function(){this.resetFX(),this.filters.internal.destroy(),this.filters.external.destroy(),r.prototype.destroy.call(this),this._follow=null,this.deadzone=null}})},32743(e,t,n){var r=n(38058),i=n(83419),a=n(95540),o=n(37277),s=n(37303),c=n(97480),l=n(44594),u=new i({initialize:function(e){this.scene=e,this.systems=e.sys,this.roundPixels=e.sys.game.config.roundPixels,this.cameras=[],this.main,this.default,e.sys.events.once(l.BOOT,this.boot,this),e.sys.events.on(l.START,this.start,this)},boot:function(){var e=this.systems;e.settings.cameras?this.fromJSON(e.settings.cameras):this.add(),this.main=this.cameras[0],this.default=new r(0,0,e.scale.width,e.scale.height).setScene(this.scene),e.game.scale.on(c.RESIZE,this.onResize,this),this.systems.events.once(l.DESTROY,this.destroy,this)},start:function(){if(!this.main){var e=this.systems;e.settings.cameras?this.fromJSON(e.settings.cameras):this.add(),this.main=this.cameras[0]}var t=this.systems.events;t.on(l.UPDATE,this.update,this),t.once(l.SHUTDOWN,this.shutdown,this)},add:function(e,t,n,i,a,o){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=this.scene.sys.scale.width),i===void 0&&(i=this.scene.sys.scale.height),a===void 0&&(a=!1),o===void 0&&(o=``);var s=new r(e,t,n,i);return s.setName(o),s.setScene(this.scene),s.setRoundPixels(this.roundPixels),s.id=this.getNextID(),this.cameras.push(s),a&&(this.main=s),s},addExisting:function(e,t){return t===void 0&&(t=!1),this.cameras.indexOf(e)===-1?(e.id=this.getNextID(),e.setRoundPixels(this.roundPixels),this.cameras.push(e),t&&(this.main=e),e):null},getNextID:function(){for(var e=this.cameras,t=1,n=0;n<32;n++){for(var r=!1,i=0;i<e.length;i++){var a=e[i];if(a&&a.id===t){r=!0;continue}}if(r)t<<=1;else return t}return 0},getTotal:function(e){e===void 0&&(e=!1);for(var t=0,n=this.cameras,r=0;r<n.length;r++){var i=n[r];(!e||e&&i.visible)&&t++}return t},fromJSON:function(e){Array.isArray(e)||(e=[e]);for(var t=this.scene.sys.scale.width,n=this.scene.sys.scale.height,r=0;r<e.length;r++){var i=e[r],o=a(i,`x`,0),s=a(i,`y`,0),c=a(i,`width`,t),l=a(i,`height`,n),u=this.add(o,s,c,l);u.name=a(i,`name`,``),u.zoom=a(i,`zoom`,1),u.rotation=a(i,`rotation`,0),u.scrollX=a(i,`scrollX`,0),u.scrollY=a(i,`scrollY`,0),u.roundPixels=a(i,`roundPixels`,!1),u.visible=a(i,`visible`,!0);var d=a(i,`backgroundColor`,!1);d&&u.setBackgroundColor(d);var f=a(i,`bounds`,null);if(f){var p=a(f,`x`,0),m=a(f,`y`,0),h=a(f,`width`,t),g=a(f,`height`,n);u.setBounds(p,m,h,g)}}return this},getCamera:function(e){for(var t=this.cameras,n=0;n<t.length;n++)if(t[n].name===e)return t[n];return null},getCamerasBelowPointer:function(e){for(var t=this.cameras,n=e.x,r=e.y,i=[],a=0;a<t.length;a++){var o=t[a];o.visible&&o.inputEnabled&&s(o,n,r)&&i.unshift(o)}return i},remove:function(e,t){t===void 0&&(t=!0),Array.isArray(e)||(e=[e]);for(var n=0,r=this.cameras,i=0;i<e.length;i++){var a=r.indexOf(e[i]);a!==-1&&(t?r[a].destroy():r[a].renderList=[],r.splice(a,1),n++)}return!this.main&&r[0]&&(this.main=r[0]),n},render:function(e,t){for(var n=this.scene,r=this.cameras,i=0;i<r.length;i++){var a=r[i];if(a.visible&&a.alpha>0){a.preRender();var o=this.getVisibleChildren(t.getChildren(),a);e.render(n,o,a)}}},getVisibleChildren:function(e,t){return e.filter(function(e){return e.willRender(t)})},resetAll:function(){for(var e=0;e<this.cameras.length;e++)this.cameras[e].destroy();return this.cameras=[],this.main=this.add(),this.main},update:function(e,t){for(var n=0;n<this.cameras.length;n++)this.cameras[n].update(e,t)},onResize:function(e,t,n,r,i){for(var a=0;a<this.cameras.length;a++){var o=this.cameras[a];o._x===0&&o._y===0&&o._width===r&&o._height===i&&o.setSize(t.width,t.height)}},resize:function(e,t){for(var n=0;n<this.cameras.length;n++)this.cameras[n].setSize(e,t)},shutdown:function(){this.main=void 0;for(var e=0;e<this.cameras.length;e++)this.cameras[e].destroy();this.cameras=[];var t=this.systems.events;t.off(l.UPDATE,this.update,this),t.off(l.SHUTDOWN,this.shutdown,this)},destroy:function(){this.shutdown(),this.default.destroy(),this.systems.events.off(l.START,this.start,this),this.systems.events.off(l.DESTROY,this.destroy,this),this.systems.game.scale.off(c.RESIZE,this.onResize,this),this.scene=null,this.systems=null}});o.register(`CameraManager`,u,`cameras`),e.exports=u},5020(e,t,n){var r=n(45319),i=n(83419),a=n(19715);e.exports=new i({initialize:function(e){this.camera=e,this.isRunning=!1,this.isComplete=!1,this.direction=!0,this.duration=0,this.red=0,this.green=0,this.blue=0,this.alpha=0,this.progress=0,this._elapsed=0,this._onUpdate,this._onUpdateScope},start:function(e,t,n,r,i,o,s,c){if(e===void 0&&(e=!0),t===void 0&&(t=1e3),n===void 0&&(n=0),r===void 0&&(r=0),i===void 0&&(i=0),o===void 0&&(o=!1),s===void 0&&(s=null),c===void 0&&(c=this.camera.scene),!o&&this.isRunning)return this.camera;this.isRunning=!0,this.isComplete=!1,this.duration=t,this.direction=e,this.progress=0,this.red=n,this.green=r,this.blue=i,this.alpha=e?Number.MIN_VALUE:1,this._elapsed=0,this._onUpdate=s,this._onUpdateScope=c;var l=e?a.FADE_OUT_START:a.FADE_IN_START;return this.camera.emit(l,this.camera,this,t,n,r,i),this.camera},update:function(e,t){this.isRunning&&(this._elapsed+=t,this.progress=r(this._elapsed/this.duration,0,1),this._onUpdate&&this._onUpdate.call(this._onUpdateScope,this.camera,this.progress),this._elapsed<this.duration?this.alpha=this.direction?this.progress:1-this.progress:(this.alpha=+!!this.direction,this.effectComplete()))},postRenderCanvas:function(e){if(!this.isRunning&&!this.isComplete)return!1;var t=this.camera;return e.fillStyle=`rgba(`+this.red+`,`+this.green+`,`+this.blue+`,`+this.alpha+`)`,e.fillRect(t.x,t.y,t.width,t.height),!0},postRenderWebGL:function(){return this.isRunning||this.isComplete},effectComplete:function(){this._onUpdate=null,this._onUpdateScope=null,this.isRunning=!1,this.isComplete=!0;var e=this.direction?a.FADE_OUT_COMPLETE:a.FADE_IN_COMPLETE;this.camera.emit(e,this.camera,this)},reset:function(){this.isRunning=!1,this.isComplete=!1,this._onUpdate=null,this._onUpdateScope=null},destroy:function(){this.reset(),this.camera=null}})},10662(e,t,n){var r=n(45319),i=n(83419),a=n(19715);e.exports=new i({initialize:function(e){this.camera=e,this.isRunning=!1,this.duration=0,this.red=0,this.green=0,this.blue=0,this.alpha=1,this.progress=0,this._elapsed=0,this._alpha,this._onUpdate,this._onUpdateScope},start:function(e,t,n,r,i,o,s){return e===void 0&&(e=250),t===void 0&&(t=255),n===void 0&&(n=255),r===void 0&&(r=255),i===void 0&&(i=!1),o===void 0&&(o=null),s===void 0&&(s=this.camera.scene),!i&&this.isRunning?this.camera:(this.isRunning=!0,this.duration=e,this.progress=0,this.red=t,this.green=n,this.blue=r,this._alpha=this.alpha,this._elapsed=0,this._onUpdate=o,this._onUpdateScope=s,this.camera.emit(a.FLASH_START,this.camera,this,e,t,n,r),this.camera)},update:function(e,t){this.isRunning&&(this._elapsed+=t,this.progress=r(this._elapsed/this.duration,0,1),this._onUpdate&&this._onUpdate.call(this._onUpdateScope,this.camera,this.progress),this._elapsed<this.duration?this.alpha=this._alpha*(1-this.progress):this.effectComplete())},postRenderCanvas:function(e){if(!this.isRunning)return!1;var t=this.camera;return e.fillStyle=`rgba(`+this.red+`,`+this.green+`,`+this.blue+`,`+this.alpha+`)`,e.fillRect(t.x,t.y,t.width,t.height),!0},postRenderWebGL:function(){return this.isRunning},effectComplete:function(){this.alpha=this._alpha,this._onUpdate=null,this._onUpdateScope=null,this.isRunning=!1,this.camera.emit(a.FLASH_COMPLETE,this.camera,this)},reset:function(){this.isRunning=!1,this._onUpdate=null,this._onUpdateScope=null},destroy:function(){this.reset(),this.camera=null}})},20359(e,t,n){var r=n(45319),i=n(83419),a=n(62640),o=n(19715),s=n(26099);e.exports=new i({initialize:function(e){this.camera=e,this.isRunning=!1,this.duration=0,this.source=new s,this.current=new s,this.destination=new s,this.ease,this.progress=0,this._elapsed=0,this._onUpdate,this._onUpdateScope},start:function(e,t,n,r,i,s,c){n===void 0&&(n=1e3),r===void 0&&(r=a.Linear),i===void 0&&(i=!1),s===void 0&&(s=null),c===void 0&&(c=this.camera.scene);var l=this.camera;return!i&&this.isRunning?l:(this.isRunning=!0,this.duration=n,this.progress=0,this.source.set(l.scrollX,l.scrollY),this.destination.set(e,t),l.getScroll(e,t,this.current),typeof r==`string`&&a.hasOwnProperty(r)?this.ease=a[r]:typeof r==`function`&&(this.ease=r),this._elapsed=0,this._onUpdate=s,this._onUpdateScope=c,this.camera.emit(o.PAN_START,this.camera,this,n,e,t),l)},update:function(e,t){if(this.isRunning){this._elapsed+=t;var n=r(this._elapsed/this.duration,0,1);this.progress=n;var i=this.camera;if(this._elapsed<this.duration){var a=this.ease(n);i.getScroll(this.destination.x,this.destination.y,this.current);var o=this.source.x+(this.current.x-this.source.x)*a,s=this.source.y+(this.current.y-this.source.y)*a;i.setScroll(o,s),this._onUpdate&&this._onUpdate.call(this._onUpdateScope,i,n,o,s)}else i.centerOn(this.destination.x,this.destination.y),this._onUpdate&&this._onUpdate.call(this._onUpdateScope,i,n,i.scrollX,i.scrollY),this.effectComplete()}},effectComplete:function(){this._onUpdate=null,this._onUpdateScope=null,this.isRunning=!1,this.camera.emit(o.PAN_COMPLETE,this.camera,this)},reset:function(){this.isRunning=!1,this._onUpdate=null,this._onUpdateScope=null},destroy:function(){this.reset(),this.camera=null,this.source=null,this.destination=null}})},34208(e,t,n){var r=n(45319),i=n(83419),a=n(19715),o=n(62640),s=n(86554);e.exports=new i({initialize:function(e){this.camera=e,this.isRunning=!1,this.duration=0,this.source=0,this.current=0,this.destination=0,this.ease,this.progress=0,this._elapsed=0,this._onUpdate,this._onUpdateScope,this.clockwise=!0,this.shortestPath=!1},start:function(e,t,n,r,i,c,l){n===void 0&&(n=1e3),r===void 0&&(r=o.Linear),i===void 0&&(i=!1),c===void 0&&(c=null),l===void 0&&(l=this.camera.scene),t===void 0&&(t=!1);var u=this.camera;if(!i&&this.isRunning)return u;if(this.shortestPath=t,this.isRunning=!0,this.duration=n,this.progress=0,this.source=u.rotation,this.destination=e,typeof r==`string`&&o.hasOwnProperty(r)?this.ease=o[r]:typeof r==`function`&&(this.ease=r),this._elapsed=0,this._onUpdate=c,this._onUpdateScope=l,this.shortestPath){var d=s(this.destination-this.source);this.destination=this.source+d,this.clockwise=d>=0}else this.clockwise=this.destination>=this.source;return this.camera.emit(a.ROTATE_START,this.camera,this,n,this.destination),u},update:function(e,t){if(this.isRunning){this._elapsed+=t;var n=r(this._elapsed/this.duration,0,1);this.progress=n;var i=this.camera;if(this._elapsed<this.duration){var a=this.ease(n),o=this.source+a*(this.destination-this.source);i.rotation=o,this.current=o,this._onUpdate&&this._onUpdate.call(this._onUpdateScope,i,n,o)}else i.rotation=this.destination,this.current=this.destination,this._onUpdate&&this._onUpdate.call(this._onUpdateScope,i,n,this.destination),this.effectComplete()}},effectComplete:function(){this._onUpdate=null,this._onUpdateScope=null,this.isRunning=!1,this.camera.emit(a.ROTATE_COMPLETE,this.camera,this)},reset:function(){this.isRunning=!1,this._onUpdate=null,this._onUpdateScope=null},destroy:function(){this.reset(),this.camera=null,this.source=null,this.destination=null}})},30330(e,t,n){var r=n(45319),i=n(83419),a=n(19715),o=n(26099);e.exports=new i({initialize:function(e){this.camera=e,this.isRunning=!1,this.duration=0,this.intensity=new o,this.progress=0,this._elapsed=0,this._offsetX=0,this._offsetY=0,this._onUpdate,this._onUpdateScope},start:function(e,t,n,r,i){return e===void 0&&(e=100),t===void 0&&(t=.05),n===void 0&&(n=!1),r===void 0&&(r=null),i===void 0&&(i=this.camera.scene),!n&&this.isRunning?this.camera:(this.isRunning=!0,this.duration=e,this.progress=0,typeof t==`number`?this.intensity.set(t):this.intensity.set(t.x,t.y),this._elapsed=0,this._offsetX=0,this._offsetY=0,this._onUpdate=r,this._onUpdateScope=i,this.camera.emit(a.SHAKE_START,this.camera,this,e,t),this.camera)},preRender:function(){this.isRunning&&this.camera.matrix.translate(this._offsetX,this._offsetY)},update:function(e,t){if(this.isRunning)if(this._elapsed+=t,this.progress=r(this._elapsed/this.duration,0,1),this._onUpdate&&this._onUpdate.call(this._onUpdateScope,this.camera,this.progress),this._elapsed<this.duration){var n=this.intensity,i=this.camera.width,a=this.camera.height,o=this.camera.zoom;this._offsetX=(Math.random()*n.x*i*2-n.x*i)*o,this._offsetY=(Math.random()*n.y*a*2-n.y*a)*o,this.camera.roundPixels&&(this._offsetX=Math.round(this._offsetX),this._offsetY=Math.round(this._offsetY))}else this.effectComplete()},effectComplete:function(){this._offsetX=0,this._offsetY=0,this._onUpdate=null,this._onUpdateScope=null,this.isRunning=!1,this.camera.emit(a.SHAKE_COMPLETE,this.camera,this)},reset:function(){this.isRunning=!1,this._offsetX=0,this._offsetY=0,this._onUpdate=null,this._onUpdateScope=null},destroy:function(){this.reset(),this.camera=null,this.intensity=null}})},45641(e,t,n){var r=n(45319),i=n(83419),a=n(62640),o=n(19715);e.exports=new i({initialize:function(e){this.camera=e,this.isRunning=!1,this.duration=0,this.source=1,this.destination=1,this.ease,this.progress=0,this._elapsed=0,this._onUpdate,this._onUpdateScope},start:function(e,t,n,r,i,s){t===void 0&&(t=1e3),n===void 0&&(n=a.Linear),r===void 0&&(r=!1),i===void 0&&(i=null),s===void 0&&(s=this.camera.scene);var c=this.camera;return!r&&this.isRunning?c:(this.isRunning=!0,this.duration=t,this.progress=0,this.source=c.zoom,this.destination=e,typeof n==`string`&&a.hasOwnProperty(n)?this.ease=a[n]:typeof n==`function`&&(this.ease=n),this._elapsed=0,this._onUpdate=i,this._onUpdateScope=s,this.camera.emit(o.ZOOM_START,this.camera,this,t,e),c)},update:function(e,t){this.isRunning&&(this._elapsed+=t,this.progress=r(this._elapsed/this.duration,0,1),this._elapsed<this.duration?(this.camera.zoom=this.source+(this.destination-this.source)*this.ease(this.progress),this._onUpdate&&this._onUpdate.call(this._onUpdateScope,this.camera,this.progress,this.camera.zoom)):(this.camera.zoom=this.destination,this._onUpdate&&this._onUpdate.call(this._onUpdateScope,this.camera,this.progress,this.destination),this.effectComplete()))},effectComplete:function(){this._onUpdate=null,this._onUpdateScope=null,this.isRunning=!1,this.camera.emit(o.ZOOM_COMPLETE,this.camera,this)},reset:function(){this.isRunning=!1,this._onUpdate=null,this._onUpdateScope=null},destroy:function(){this.reset(),this.camera=null}})},20052(e,t,n){e.exports={Fade:n(5020),Flash:n(10662),Pan:n(20359),Shake:n(30330),RotateTo:n(34208),Zoom:n(45641)}},16438(e){e.exports=`cameradestroy`},32726(e){e.exports=`camerafadeincomplete`},87807(e){e.exports=`camerafadeinstart`},45917(e){e.exports=`camerafadeoutcomplete`},95666(e){e.exports=`camerafadeoutstart`},47056(e){e.exports=`cameraflashcomplete`},91261(e){e.exports=`cameraflashstart`},45047(e){e.exports=`followupdate`},81927(e){e.exports=`camerapancomplete`},74264(e){e.exports=`camerapanstart`},54419(e){e.exports=`postrender`},79330(e){e.exports=`prerender`},93183(e){e.exports=`camerarotatecomplete`},80112(e){e.exports=`camerarotatestart`},62252(e){e.exports=`camerashakecomplete`},86017(e){e.exports=`camerashakestart`},539(e){e.exports=`camerazoomcomplete`},51892(e){e.exports=`camerazoomstart`},19715(e,t,n){e.exports={DESTROY:n(16438),FADE_IN_COMPLETE:n(32726),FADE_IN_START:n(87807),FADE_OUT_COMPLETE:n(45917),FADE_OUT_START:n(95666),FLASH_COMPLETE:n(47056),FLASH_START:n(91261),FOLLOW_UPDATE:n(45047),PAN_COMPLETE:n(81927),PAN_START:n(74264),POST_RENDER:n(54419),PRE_RENDER:n(79330),ROTATE_COMPLETE:n(93183),ROTATE_START:n(80112),SHAKE_COMPLETE:n(62252),SHAKE_START:n(86017),ZOOM_COMPLETE:n(539),ZOOM_START:n(51892)}},87969(e,t,n){e.exports={Camera:n(38058),BaseCamera:n(71911),CameraManager:n(32743),Effects:n(20052),Events:n(19715)}},63091(e,t,n){var r=n(83419),i=n(35154);e.exports=new r({initialize:function(e){this.camera=i(e,`camera`,null),this.left=i(e,`left`,null),this.right=i(e,`right`,null),this.up=i(e,`up`,null),this.down=i(e,`down`,null),this.zoomIn=i(e,`zoomIn`,null),this.zoomOut=i(e,`zoomOut`,null),this.zoomSpeed=i(e,`zoomSpeed`,.01),this.minZoom=i(e,`minZoom`,.001),this.maxZoom=i(e,`maxZoom`,1e3),this.speedX=0,this.speedY=0;var t=i(e,`speed`,null);typeof t==`number`?(this.speedX=t,this.speedY=t):(this.speedX=i(e,`speed.x`,0),this.speedY=i(e,`speed.y`,0)),this._zoom=0,this.active=this.camera!==null},start:function(){return this.active=this.camera!==null,this},stop:function(){return this.active=!1,this},setCamera:function(e){return this.camera=e,this},update:function(e){if(this.active){e===void 0&&(e=1);var t=this.camera;this.up&&this.up.isDown?t.scrollY-=this.speedY*e|0:this.down&&this.down.isDown&&(t.scrollY+=this.speedY*e|0),this.left&&this.left.isDown?t.scrollX-=this.speedX*e|0:this.right&&this.right.isDown&&(t.scrollX+=this.speedX*e|0),this.zoomIn&&this.zoomIn.isDown?(t.zoom-=this.zoomSpeed,t.zoom<this.minZoom&&(t.zoom=this.minZoom)):this.zoomOut&&this.zoomOut.isDown&&(t.zoom+=this.zoomSpeed,t.zoom>this.maxZoom&&(t.zoom=this.maxZoom))}},destroy:function(){this.camera=null,this.left=null,this.right=null,this.up=null,this.down=null,this.zoomIn=null,this.zoomOut=null}})},58818(e,t,n){var r=n(83419),i=n(35154);e.exports=new r({initialize:function(e){this.camera=i(e,`camera`,null),this.left=i(e,`left`,null),this.right=i(e,`right`,null),this.up=i(e,`up`,null),this.down=i(e,`down`,null),this.zoomIn=i(e,`zoomIn`,null),this.zoomOut=i(e,`zoomOut`,null),this.zoomSpeed=i(e,`zoomSpeed`,.01),this.minZoom=i(e,`minZoom`,.001),this.maxZoom=i(e,`maxZoom`,1e3),this.accelX=0,this.accelY=0;var t=i(e,`acceleration`,null);typeof t==`number`?(this.accelX=t,this.accelY=t):(this.accelX=i(e,`acceleration.x`,0),this.accelY=i(e,`acceleration.y`,0)),this.dragX=0,this.dragY=0;var n=i(e,`drag`,null);typeof n==`number`?(this.dragX=n,this.dragY=n):(this.dragX=i(e,`drag.x`,0),this.dragY=i(e,`drag.y`,0)),this.maxSpeedX=0,this.maxSpeedY=0;var r=i(e,`maxSpeed`,null);typeof r==`number`?(this.maxSpeedX=r,this.maxSpeedY=r):(this.maxSpeedX=i(e,`maxSpeed.x`,0),this.maxSpeedY=i(e,`maxSpeed.y`,0)),this._speedX=0,this._speedY=0,this._zoom=0,this.active=this.camera!==null},start:function(){return this.active=this.camera!==null,this},stop:function(){return this.active=!1,this},setCamera:function(e){return this.camera=e,this},update:function(e){if(this.active){e===void 0&&(e=1);var t=this.camera;this._speedX>0?(this._speedX-=this.dragX*e,this._speedX<0&&(this._speedX=0)):this._speedX<0&&(this._speedX+=this.dragX*e,this._speedX>0&&(this._speedX=0)),this._speedY>0?(this._speedY-=this.dragY*e,this._speedY<0&&(this._speedY=0)):this._speedY<0&&(this._speedY+=this.dragY*e,this._speedY>0&&(this._speedY=0)),this.up&&this.up.isDown?(this._speedY+=this.accelY,this._speedY>this.maxSpeedY&&(this._speedY=this.maxSpeedY)):this.down&&this.down.isDown&&(this._speedY-=this.accelY,this._speedY<-this.maxSpeedY&&(this._speedY=-this.maxSpeedY)),this.left&&this.left.isDown?(this._speedX+=this.accelX,this._speedX>this.maxSpeedX&&(this._speedX=this.maxSpeedX)):this.right&&this.right.isDown&&(this._speedX-=this.accelX,this._speedX<-this.maxSpeedX&&(this._speedX=-this.maxSpeedX)),this.zoomIn&&this.zoomIn.isDown?this._zoom=-this.zoomSpeed:this.zoomOut&&this.zoomOut.isDown?this._zoom=this.zoomSpeed:this._zoom=0,this._speedX!==0&&(t.scrollX-=this._speedX*e|0),this._speedY!==0&&(t.scrollY-=this._speedY*e|0),this._zoom!==0&&(t.zoom+=this._zoom,t.zoom<this.minZoom?t.zoom=this.minZoom:t.zoom>this.maxZoom&&(t.zoom=this.maxZoom))}},destroy:function(){this.camera=null,this.left=null,this.right=null,this.up=null,this.down=null,this.zoomIn=null,this.zoomOut=null}})},38865(e,t,n){e.exports={FixedKeyControl:n(63091),SmoothedKeyControl:n(58818)}},26638(e,t,n){e.exports={Controls:n(38865),Scene2D:n(87969)}},8054(e,t,n){e.exports={VERSION:`4.0.0`,LOG_VERSION:`v400`,BlendModes:n(10312),ScaleModes:n(29795),AUTO:0,CANVAS:1,WEBGL:2,HEADLESS:3,FOREVER:-1,NONE:4,UP:5,DOWN:6,LEFT:7,RIGHT:8}},69547(e,t,n){var r=n(83419),i=n(8054),a=n(42363),o=n(82264),s=n(95540),c=n(35154),l=n(41212),u=n(29747),d=n(75508),f=n(80333);e.exports=new r({initialize:function(e){e===void 0&&(e={});var t=[`#000814`,`#001d3d`,`#003566`],n=`#ffffff`,r=c(e,`scale`,null);this.width=c(r,`width`,1024,e),this.height=c(r,`height`,768,e),this.zoom=c(r,`zoom`,1,e),this.parent=c(r,`parent`,void 0,e),this.scaleMode=c(r,r?`mode`:`scaleMode`,0,e),this.expandParent=c(r,`expandParent`,!0,e),this.autoRound=c(r,`autoRound`,!1,e),this.autoCenter=c(r,`autoCenter`,0,e),this.resizeInterval=c(r,`resizeInterval`,500,e),this.fullscreenTarget=c(r,`fullscreenTarget`,null,e),this.minWidth=c(r,`min.width`,0,e),this.maxWidth=c(r,`max.width`,0,e),this.minHeight=c(r,`min.height`,0,e),this.maxHeight=c(r,`max.height`,0,e),this.snapWidth=c(r,`snap.width`,0,e),this.snapHeight=c(r,`snap.height`,0,e),this.renderType=c(e,`type`,i.AUTO),this.canvas=c(e,`canvas`,null),this.context=c(e,`context`,null),this.canvasStyle=c(e,`canvasStyle`,null),this.customEnvironment=c(e,`customEnvironment`,!1),this.sceneConfig=c(e,`scene`,null),this.seed=c(e,`seed`,[(Date.now()*Math.random()).toString()]),d.RND=new d.RandomDataGenerator(this.seed),this.gameTitle=c(e,`title`,``),this.gameURL=c(e,`url`,`https://phaser.io/`+i.LOG_VERSION),this.gameVersion=c(e,`version`,``),this.autoFocus=c(e,`autoFocus`,!0),this.stableSort=c(e,`stableSort`,-1),this.stableSort===-1&&(this.stableSort=+!!o.browser.es2019),o.features.stableSort=this.stableSort,this.domCreateContainer=c(e,`dom.createContainer`,!1),this.domPointerEvents=c(e,`dom.pointerEvents`,`none`),this.inputKeyboard=c(e,`input.keyboard`,!0),this.inputKeyboardEventTarget=c(e,`input.keyboard.target`,window),this.inputKeyboardCapture=c(e,`input.keyboard.capture`,[]),this.inputMouse=c(e,`input.mouse`,!0),this.inputMouseEventTarget=c(e,`input.mouse.target`,null),this.inputMousePreventDefaultDown=c(e,`input.mouse.preventDefaultDown`,!0),this.inputMousePreventDefaultUp=c(e,`input.mouse.preventDefaultUp`,!0),this.inputMousePreventDefaultMove=c(e,`input.mouse.preventDefaultMove`,!0),this.inputMousePreventDefaultWheel=c(e,`input.mouse.preventDefaultWheel`,!0),this.inputTouch=c(e,`input.touch`,o.input.touch),this.inputTouchEventTarget=c(e,`input.touch.target`,null),this.inputTouchCapture=c(e,`input.touch.capture`,!0),this.inputActivePointers=c(e,`input.activePointers`,1),this.inputSmoothFactor=c(e,`input.smoothFactor`,0),this.inputWindowEvents=c(e,`input.windowEvents`,!0),this.inputGamepad=c(e,`input.gamepad`,!1),this.inputGamepadEventTarget=c(e,`input.gamepad.target`,window),this.disableContextMenu=c(e,`disableContextMenu`,!1),this.audio=c(e,`audio`,{}),this.hideBanner=c(e,`banner`,null)===!1,this.hidePhaser=c(e,`banner.hidePhaser`,!1),this.bannerTextColor=c(e,`banner.text`,n),this.bannerBackgroundColor=c(e,`banner.background`,t),this.gameTitle===``&&this.hidePhaser&&(this.hideBanner=!0),this.fps=c(e,`fps`,null);var p=c(e,`render`,null);this.autoMobileTextures=c(p,`autoMobileTextures`,!0,e),this.antialias=c(p,`antialias`,!0,e),this.antialiasGL=c(p,`antialiasGL`,!0,e),this.mipmapFilter=c(p,`mipmapFilter`,``,e),this.desynchronized=c(p,`desynchronized`,!1,e),this.roundPixels=c(p,`roundPixels`,!1,e),this.selfShadow=c(p,`selfShadow`,!1,e),this.pathDetailThreshold=c(p,`pathDetailThreshold`,1,e),this.pixelArt=c(p,`pixelArt`,!1,e),this.pixelArt&&(this.antialias=!1,this.antialiasGL=!1,this.roundPixels=!0),this.smoothPixelArt=c(p,`smoothPixelArt`,!1,e),this.smoothPixelArt&&(this.antialias=!0,this.antialiasGL=!0,this.pixelArt=!1),this.transparent=c(p,`transparent`,!1,e),this.clearBeforeRender=c(p,`clearBeforeRender`,!0,e),this.preserveDrawingBuffer=c(p,`preserveDrawingBuffer`,!1,e),this.premultipliedAlpha=c(p,`premultipliedAlpha`,!0,e),this.skipUnreadyShaders=c(p,`skipUnreadyShaders`,!1,e),this.failIfMajorPerformanceCaveat=c(p,`failIfMajorPerformanceCaveat`,!1,e),this.powerPreference=c(p,`powerPreference`,`default`,e),this.batchSize=c(p,`batchSize`,16384,e),this.maxTextures=c(p,`maxTextures`,-1,e),this.maxLights=c(p,`maxLights`,10,e),this.renderNodes=c(p,`renderNodes`,{},e);var m=c(e,`backgroundColor`,0);this.backgroundColor=f(m),this.transparent&&(this.backgroundColor=f(0),this.backgroundColor.alpha=0),this.preBoot=c(e,`callbacks.preBoot`,u),this.postBoot=c(e,`callbacks.postBoot`,u),this.physics=c(e,`physics`,{}),this.defaultPhysicsSystem=c(this.physics,`default`,!1),this.loaderBaseURL=c(e,`loader.baseURL`,``),this.loaderPath=c(e,`loader.path`,``),this.loaderMaxParallelDownloads=c(e,`loader.maxParallelDownloads`,o.os.android?6:32),this.loaderCrossOrigin=c(e,`loader.crossOrigin`,void 0),this.loaderResponseType=c(e,`loader.responseType`,``),this.loaderAsync=c(e,`loader.async`,!0),this.loaderUser=c(e,`loader.user`,``),this.loaderPassword=c(e,`loader.password`,``),this.loaderTimeout=c(e,`loader.timeout`,0),this.loaderMaxRetries=c(e,`loader.maxRetries`,2),this.loaderWithCredentials=c(e,`loader.withCredentials`,!1),this.loaderImageLoadType=c(e,`loader.imageLoadType`,`XHR`),this.loaderLocalScheme=c(e,`loader.localScheme`,[`file://`,`capacitor://`]),this.glowQuality=c(e,`filters.glow.quality`,10),this.glowDistance=c(e,`filters.glow.distance`,10),this.installGlobalPlugins=[],this.installScenePlugins=[];var h=c(e,`plugins`,null),g=a.DefaultScene;h&&(Array.isArray(h)?this.defaultPlugins=h:l(h)&&(this.installGlobalPlugins=s(h,`global`,[]),this.installScenePlugins=s(h,`scene`,[]),Array.isArray(h.default)?g=h.default:Array.isArray(h.defaultMerge)&&(g=g.concat(h.defaultMerge)))),this.defaultPlugins=g;var _=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAg`;this.defaultImage=c(e,`images.default`,_+`AQMAAABJtOi3AAAAA1BMVEX///+nxBvIAAAAAXRSTlMAQObYZgAAABVJREFUeF7NwIEAAAAAgKD9qdeocAMAoAABm3DkcAAAAABJRU5ErkJggg==`),this.missingImage=c(e,`images.missing`,_+`CAIAAAD8GO2jAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJ9JREFUeNq01ssOwyAMRFG46v//Mt1ESmgh+DFmE2GPOBARKb2NVjo+17PXLD8a1+pl5+A+wSgFygymWYHBb0FtsKhJDdZlncG2IzJ4ayoMDv20wTmSMzClEgbWYNTAkQ0Z+OJ+A/eWnAaR9+oxCF4Os0H8htsMUp+pwcgBBiMNnAwF8GqIgL2hAzaGFFgZauDPKABmowZ4GL369/0rwACp2yA/ttmvsQAAAABJRU5ErkJggg==`),this.whiteImage=c(e,`images.white`,`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAIAAAAmkwkpAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAABdJREFUeNpi/P//PwMMMDEgAdwcgAADAJZuAwXJYZOzAAAAAElFTkSuQmCC`),window&&(window.FORCE_WEBGL?this.renderType=i.WEBGL:window.FORCE_CANVAS&&(this.renderType=i.CANVAS))}})},86054(e,t,n){var r=n(20623),i=n(27919),a=n(8054),o=n(89357);e.exports=function(e){var t=e.config;if((t.customEnvironment||t.canvas)&&t.renderType===a.AUTO)throw Error(`Must set explicit renderType in custom environment`);if(!t.customEnvironment&&!t.canvas&&t.renderType!==a.HEADLESS)if(t.renderType===a.AUTO&&(t.renderType=o.webGL?a.WEBGL:a.CANVAS),t.renderType===a.WEBGL){if(!o.webGL)throw Error(`Cannot create WebGL context, aborting.`)}else if(t.renderType===a.CANVAS){if(!o.canvas)throw Error(`Cannot create Canvas context, aborting.`)}else throw Error(`Unknown value for renderer type: `+t.renderType);t.antialias||i.disableSmoothing();var s=e.scale.baseSize,c=s.width,l=s.height;if(t.canvas?(e.canvas=t.canvas,e.canvas.width=c,e.canvas.height=l):e.canvas=i.create(e,c,l,t.renderType),t.canvasStyle&&(e.canvas.style=t.canvasStyle),t.antialias||r.setCrisp(e.canvas),t.renderType!==a.HEADLESS){var u=n(68627),d=n(74797);t.renderType===a.WEBGL?e.renderer=new d(e):(e.renderer=new u(e),e.context=e.renderer.gameContext)}}},96391(e,t,n){var r=n(8054);e.exports=function(e){var t=e.config;if(!t.hideBanner){var n=`WebGL`;t.renderType===r.CANVAS?n=`Canvas`:t.renderType===r.HEADLESS&&(n=`Headless`);var i=t.audio,a=e.device.audio,o=a.webAudio&&!i.disableWebAudio?`Web Audio`:i.noAudio||!a.webAudio&&!a.audioData?`No Audio`:`HTML5 Audio`;if(e.device.browser.ie)window.console&&console.log(`Phaser v`+r.VERSION+` / https://phaser.io`);else{var s=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAOCAYAAAAmL5yKAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAARBJREFUeNpi/P//P0OHsPB/BiCoePuWkYFEwALSXJElzMBgLwE2CNkQxgWr/yMr/p8QimlBu5DQ//+8vBBco/ofzAe6imH+qv/53/6jYJAYSA4ZoxoANYTPKhiuCQZwGcJU+e4dqpMmvsDq14krV2MPAxDha2CMKvoXoiE/PBQUDgQD8j82UFae9B9bOIC8B9UD9gIjjIMN7Ns6lWHn4XMoYu62RgxO3tkMjIyMII2MYAOAtmFVhA+ADHf2ycGMRhANjUq8YO+WKWCvgAORIV8CkpDCrzIwsLIymC1qAtuAD4Bsh3sBmqAY3qcGwL2AC4DCpKtzHlgzOLWihwEuzTCN0GhDJHeYC4gByBphACDAAH2dDIxdjr+VAAAAAElFTkSuQmCC`,c=`color: `+t.bannerTextColor+`;`,l=Array.isArray(t.bannerBackgroundColor)?t.bannerBackgroundColor:[t.bannerBackgroundColor];l.length===1&&(l=[l[0],l[0]]);var u=`linear-gradient(to bottom, `+l.join(`, `)+`)`;c+=` background-image: url("`+s+`"), `+u+`;`,c+=` background-repeat: no-repeat;`,c+=` background-position: 4px center, 0 0;`,c+=` padding: 2px 6px 2px 24px;`;var d=`%c`,f=[null,c];f.push(`background: transparent`),t.gameTitle&&(d=d.concat(t.gameTitle),t.gameVersion&&(d=d.concat(` v`+t.gameVersion)),t.hidePhaser||(d=d.concat(` / `))),t.hidePhaser||(d=d.concat(`Phaser v`+r.VERSION+` (`+n+` | `+o+`)`)),d=d.concat(`%c `+t.gameURL),f[0]=d,console.log.apply(console,f)}}}},50127(e,t,n){var r=n(40366),i=n(60848),a=n(24047),o=n(27919),s=n(83419),c=n(69547),l=n(83719),u=n(86054),d=n(45893),f=n(96391),p=n(82264),m=n(57264),h=n(50792),g=n(8443),_=n(7003),v=n(37277),y=n(77332),b=n(76531),x=n(60903),S=n(69442),C=n(17130),w=n(65898),T=n(51085),E=n(14747);e.exports=new s({initialize:function(e){this.config=new c(e),this.renderer=null,this.domContainer=null,this.canvas=null,this.context=null,this.isBooted=!1,this.isRunning=!1,this.events=new h,this.anims=new i(this),this.textures=new C(this),this.cache=new a(this),this.registry=new d(this,new h),this.input=new _(this,this.config),this.scene=new x(this,this.config.sceneConfig),this.device=p,this.scale=new b(this,this.config),this.sound=null,this.sound=E.create(this),this.loop=new w(this,this.config.fps),this.plugins=new y(this,this.config),this.pendingDestroy=!1,this.removeCanvas=!1,this.noReturn=!1,this.hasFocus=!1,this.isPaused=!1,m(this.boot.bind(this))},boot:function(){if(!v.hasCore(`EventEmitter`)){console.warn(`Aborting. Core Plugins missing.`);return}this.isBooted=!0,this.config.preBoot(this),this.scale.preBoot(),u(this),l(this),f(this),r(this.canvas,this.config.parent),this.textures.once(S.READY,this.texturesReady,this),this.events.emit(g.BOOT)},texturesReady:function(){this.events.emit(g.READY),this.start()},start:function(){this.isRunning=!0,this.config.postBoot(this),this.renderer?this.loop.start(this.step.bind(this)):this.loop.start(this.headlessStep.bind(this)),T(this);var e=this.events;e.on(g.HIDDEN,this.onHidden,this),e.on(g.VISIBLE,this.onVisible,this),e.on(g.BLUR,this.onBlur,this),e.on(g.FOCUS,this.onFocus,this)},step:function(e,t){if(this.pendingDestroy)return this.runDestroy();if(!this.isPaused){var n=this.events;n.emit(g.PRE_STEP,e,t),n.emit(g.STEP,e,t),this.scene.update(e,t),n.emit(g.POST_STEP,e,t);var r=this.renderer;r.preRender(),n.emit(g.PRE_RENDER,r,e,t),this.scene.render(r),r.postRender(),n.emit(g.POST_RENDER,r,e,t)}},headlessStep:function(e,t){if(this.pendingDestroy)return this.runDestroy();if(!this.isPaused){var n=this.events;n.emit(g.PRE_STEP,e,t),n.emit(g.STEP,e,t),this.scene.update(e,t),n.emit(g.POST_STEP,e,t),this.scene.isProcessing=!1,n.emit(g.PRE_RENDER,null,e,t),n.emit(g.POST_RENDER,null,e,t)}},onHidden:function(){this.loop.pause(),this.events.emit(g.PAUSE)},pause:function(){var e=this.isPaused;this.isPaused=!0,e||this.events.emit(g.PAUSE)},onVisible:function(){this.loop.resume(),this.events.emit(g.RESUME,this.loop.pauseDuration)},resume:function(){var e=this.isPaused;this.isPaused=!1,e&&this.events.emit(g.RESUME,0)},onBlur:function(){this.hasFocus=!1,this.loop.blur()},onFocus:function(){this.hasFocus=!0,this.loop.focus()},getFrame:function(){return this.loop.frame},getTime:function(){return this.loop.now},destroy:function(e,t){t===void 0&&(t=!1),this.pendingDestroy=!0,this.removeCanvas=e,this.noReturn=t},runDestroy:function(){this.scene.destroy(),this.events.emit(g.DESTROY),this.events.removeAllListeners(),this.renderer&&this.renderer.destroy(),this.removeCanvas&&this.canvas&&(o.remove(this.canvas),this.canvas.parentNode&&this.canvas.parentNode.removeChild(this.canvas)),this.domContainer&&this.domContainer.parentNode&&this.domContainer.parentNode.removeChild(this.domContainer),this.loop.destroy(),this.pendingDestroy=!1}})},65898(e,t,n){var r=n(83419),i=n(35154),a=n(29747),o=n(43092);e.exports=new r({initialize:function(e,t){this.game=e,this.raf=new o,this.started=!1,this.running=!1,this.minFps=i(t,`min`,5),this.targetFps=i(t,`target`,60),this.fpsLimit=i(t,`limit`,0),this.hasFpsLimit=this.fpsLimit>0,this._limitRate=this.hasFpsLimit?1e3/this.fpsLimit:0,this._min=1e3/this.minFps,this._target=1e3/this.targetFps,this.actualFps=this.targetFps,this.nextFpsUpdate=0,this.framesThisSecond=0,this.callback=a,this.forceSetTimeOut=i(t,`forceSetTimeOut`,!1),this.time=0,this.startTime=0,this.lastTime=0,this.frame=0,this.inFocus=!0,this.pauseDuration=0,this._pauseTime=0,this._coolDown=0,this.delta=0,this.deltaIndex=0,this.deltaHistory=[],this.deltaSmoothingMax=i(t,`deltaHistory`,10),this.panicMax=i(t,`panicMax`,120),this.rawDelta=0,this.now=0,this.smoothStep=i(t,`smoothStep`,!0)},blur:function(){this.inFocus=!1},focus:function(){this.inFocus=!0,this.resetDelta()},pause:function(){this._pauseTime=window.performance.now()},resume:function(){this.resetDelta(),this.pauseDuration=this.time-this._pauseTime,this.startTime+=this.pauseDuration},resetDelta:function(){var e=window.performance.now();this.time=e,this.lastTime=e,this.nextFpsUpdate=e+1e3,this.framesThisSecond=0;for(var t=0;t<this.deltaSmoothingMax;t++)this.deltaHistory[t]=Math.min(this._target,this.deltaHistory[t]);this.delta=0,this.deltaIndex=0,this._coolDown=this.panicMax},start:function(e){if(this.started)return this;this.started=!0,this.running=!0;for(var t=0;t<this.deltaSmoothingMax;t++)this.deltaHistory[t]=this._target;this.resetDelta(),this.startTime=window.performance.now(),this.callback=e;var n=this.hasFpsLimit?this.stepLimitFPS.bind(this):this.step.bind(this);this.raf.start(n,this.forceSetTimeOut,this._target)},smoothDelta:function(e){var t=this.deltaIndex,n=this.deltaHistory,r=this.deltaSmoothingMax;(this._coolDown>0||!this.inFocus)&&(this._coolDown--,e=Math.min(e,this._target)),e>this._min&&(e=n[t],e=Math.min(e,this._min)),n[t]=e,this.deltaIndex++,this.deltaIndex>=r&&(this.deltaIndex=0);for(var i=0,a=0;a<r;a++)i+=n[a];return i/=r,i},updateFPS:function(e){this.actualFps=.25*this.framesThisSecond+.75*this.actualFps,this.nextFpsUpdate=e+1e3,this.framesThisSecond=0},stepLimitFPS:function(e){this.now=e;var t=Math.max(0,e-this.lastTime);this.rawDelta=t,this.time+=this.rawDelta,this.smoothStep&&(t=this.smoothDelta(t)),this.delta+=t,e>=this.nextFpsUpdate&&this.updateFPS(e),this.framesThisSecond++,this.delta>=this._limitRate&&(this.callback(e,this.delta),this.delta%=this._limitRate),this.lastTime=e,this.frame++},step:function(e){this.now=e;var t=Math.max(0,e-this.lastTime);this.rawDelta=t,this.time+=this.rawDelta,this.smoothStep&&(t=this.smoothDelta(t)),this.delta=t,e>=this.nextFpsUpdate&&this.updateFPS(e),this.framesThisSecond++,this.callback(e,t),this.lastTime=e,this.frame++},tick:function(){var e=window.performance.now();this.hasFpsLimit?this.stepLimitFPS(e):this.step(e)},sleep:function(){this.running&&=(this.raf.stop(),!1)},wake:function(e){e===void 0&&(e=!1);var t=window.performance.now();if(!this.running){e&&(this.startTime+=-this.lastTime+(this.lastTime+t));var n=this.hasFpsLimit?this.stepLimitFPS.bind(this):this.step.bind(this);this.raf.start(n,this.forceSetTimeOut,this._target),this.running=!0,this.nextFpsUpdate=t+1e3,this.framesThisSecond=0,this.fpsLimitTriggered=!1,this.tick()}},getDuration:function(){return Math.round(this.lastTime-this.startTime)/1e3},getDurationMS:function(){return Math.round(this.lastTime-this.startTime)},stop:function(){return this.running=!1,this.started=!1,this.raf.stop(),this},destroy:function(){this.stop(),this.raf.destroy(),this.raf=null,this.game=null,this.callback=null}})},51085(e,t,n){var r=n(8443);e.exports=function(e){var t,n=e.events;document.hidden===void 0?[`webkit`,`moz`,`ms`].forEach(function(e){document[e+`Hidden`]!==void 0&&(document.hidden=function(){return document[e+`Hidden`]},t=e+`visibilitychange`)}):t=`visibilitychange`,t&&document.addEventListener(t,function(e){document.hidden||e.type===`pause`?n.emit(r.HIDDEN):n.emit(r.VISIBLE)},!1),window.onblur=function(){n.emit(r.BLUR)},window.onfocus=function(){n.emit(r.FOCUS)},window.focus&&e.config.autoFocus&&window.focus()}},97217(e){e.exports=`blur`},47548(e){e.exports=`boot`},19814(e){e.exports=`contextlost`},68446(e){e.exports=`destroy`},41700(e){e.exports=`focus`},25432(e){e.exports=`hidden`},65942(e){e.exports=`pause`},59211(e){e.exports=`postrender`},47789(e){e.exports=`poststep`},39066(e){e.exports=`prerender`},460(e){e.exports=`prestep`},16175(e){e.exports=`ready`},42331(e){e.exports=`resume`},11966(e){e.exports=`step`},32969(e){e.exports=`systemready`},94830(e){e.exports=`visible`},8443(e,t,n){e.exports={BLUR:n(97217),BOOT:n(47548),CONTEXT_LOST:n(19814),DESTROY:n(68446),FOCUS:n(41700),HIDDEN:n(25432),PAUSE:n(65942),POST_RENDER:n(59211),POST_STEP:n(47789),PRE_RENDER:n(39066),PRE_STEP:n(460),READY:n(16175),RESUME:n(42331),STEP:n(11966),SYSTEM_READY:n(32969),VISIBLE:n(94830)}},42857(e,t,n){e.exports={Config:n(69547),CreateRenderer:n(86054),DebugHeader:n(96391),Events:n(8443),TimeStep:n(65898),VisibilityHandler:n(51085)}},46728(e,t,n){var r=n(83419),i=n(36316),a=n(80021),o=n(26099),s=new r({Extends:a,initialize:function(e,t,n,r){a.call(this,`CubicBezierCurve`),Array.isArray(e)&&(r=new o(e[6],e[7]),n=new o(e[4],e[5]),t=new o(e[2],e[3]),e=new o(e[0],e[1])),this.p0=e,this.p1=t,this.p2=n,this.p3=r},getStartPoint:function(e){return e===void 0&&(e=new o),e.copy(this.p0)},getResolution:function(e){return e},getPoint:function(e,t){t===void 0&&(t=new o);var n=this.p0,r=this.p1,a=this.p2,s=this.p3;return t.set(i(e,n.x,r.x,a.x,s.x),i(e,n.y,r.y,a.y,s.y))},draw:function(e,t){t===void 0&&(t=32);var n=this.getPoints(t);e.beginPath(),e.moveTo(this.p0.x,this.p0.y);for(var r=1;r<n.length;r++)e.lineTo(n[r].x,n[r].y);return e.strokePath(),e},toJSON:function(){return{type:this.type,points:[this.p0.x,this.p0.y,this.p1.x,this.p1.y,this.p2.x,this.p2.y,this.p3.x,this.p3.y]}}});s.fromJSON=function(e){var t=e.points;return new s(new o(t[0],t[1]),new o(t[2],t[3]),new o(t[4],t[5]),new o(t[6],t[7]))},e.exports=s},80021(e,t,n){var r=n(83419),i=n(19217),a=n(87841),o=n(26099);e.exports=new r({initialize:function(e){this.type=e,this.defaultDivisions=5,this.arcLengthDivisions=100,this.cacheArcLengths=[],this.needsUpdate=!0,this.active=!0,this._tmpVec2A=new o,this._tmpVec2B=new o},draw:function(e,t){return t===void 0&&(t=32),e.strokePoints(this.getPoints(t))},getBounds:function(e,t){e||=new a,t===void 0&&(t=16);var n=this.getLength();t>n&&(t=n/2);var r=Math.max(1,Math.round(n/t));return i(this.getSpacedPoints(r),e)},getDistancePoints:function(e){var t=this.getLength(),n=Math.max(1,t/e);return this.getSpacedPoints(n)},getEndPoint:function(e){return e===void 0&&(e=new o),this.getPointAt(1,e)},getLength:function(){var e=this.getLengths();return e[e.length-1]},getLengths:function(e){if(e===void 0&&(e=this.arcLengthDivisions),this.cacheArcLengths.length===e+1&&!this.needsUpdate)return this.cacheArcLengths;this.needsUpdate=!1;var t=[],n,r=this.getPoint(0,this._tmpVec2A),i=0;t.push(0);for(var a=1;a<=e;a++)n=this.getPoint(a/e,this._tmpVec2B),i+=n.distance(r),t.push(i),r.copy(n);return this.cacheArcLengths=t,t},getPointAt:function(e,t){var n=this.getUtoTmapping(e);return this.getPoint(n,t)},getPoints:function(e,t,n){n===void 0&&(n=[]),e||=t?this.getLength()/t:this.defaultDivisions;for(var r=0;r<=e;r++)n.push(this.getPoint(r/e));return n},getRandomPoint:function(e){return e===void 0&&(e=new o),this.getPoint(Math.random(),e)},getSpacedPoints:function(e,t,n){n===void 0&&(n=[]),e||=t?this.getLength()/t:this.defaultDivisions;for(var r=0;r<=e;r++){var i=this.getUtoTmapping(r/e,null,e);n.push(this.getPoint(i))}return n},getStartPoint:function(e){return e===void 0&&(e=new o),this.getPointAt(0,e)},getTangent:function(e,t){t===void 0&&(t=new o);var n=1e-4,r=e-n,i=e+n;return r<0&&(r=0),i>1&&(i=1),this.getPoint(r,this._tmpVec2A),this.getPoint(i,t),t.subtract(this._tmpVec2A).normalize()},getTangentAt:function(e,t){var n=this.getUtoTmapping(e);return this.getTangent(n,t)},getTFromDistance:function(e,t){return e<=0?0:this.getUtoTmapping(0,e,t)},getUtoTmapping:function(e,t,n){for(var r=this.getLengths(n),i=0,a=r.length,o=t?Math.min(t,r[a-1]):e*r[a-1],s=0,c=a-1,l;s<=c;)if(i=Math.floor(s+(c-s)/2),l=r[i]-o,l<0)s=i+1;else if(l>0)c=i-1;else{c=i;break}if(i=c,r[i]===o)return i/(a-1);var u=r[i],d=r[i+1]-u,f=(o-u)/d;return(i+f)/(a-1)},updateArcLengths:function(){this.needsUpdate=!0,this.getLengths()}})},73825(e,t,n){var r=n(83419),i=n(80021),a=n(39506),o=n(35154),s=n(43396),c=n(26099),l=new r({Extends:i,initialize:function(e,t,n,r,s,l,u,d){if(typeof e==`object`){var f=e;e=o(f,`x`,0),t=o(f,`y`,0),n=o(f,`xRadius`,0),r=o(f,`yRadius`,n),s=o(f,`startAngle`,0),l=o(f,`endAngle`,360),u=o(f,`clockwise`,!1),d=o(f,`rotation`,0)}else r===void 0&&(r=n),s===void 0&&(s=0),l===void 0&&(l=360),u===void 0&&(u=!1),d===void 0&&(d=0);i.call(this,`EllipseCurve`),this.p0=new c(e,t),this._xRadius=n,this._yRadius=r,this._startAngle=a(s),this._endAngle=a(l),this._clockwise=u,this._rotation=a(d)},getStartPoint:function(e){return e===void 0&&(e=new c),this.getPoint(0,e)},getResolution:function(e){return e*2},getPoint:function(e,t){t===void 0&&(t=new c);for(var n=Math.PI*2,r=this._endAngle-this._startAngle,i=Math.abs(r)<2**-52;r<0;)r+=n;for(;r>n;)r-=n;r<2**-52&&(r=i?0:n),this._clockwise&&!i&&(r===n?r=-n:r-=n);var a=this._startAngle+e*r,o=this.p0.x+this._xRadius*Math.cos(a),s=this.p0.y+this._yRadius*Math.sin(a);if(this._rotation!==0){var l=Math.cos(this._rotation),u=Math.sin(this._rotation),d=o-this.p0.x,f=s-this.p0.y;o=d*l-f*u+this.p0.x,s=d*u+f*l+this.p0.y}return t.set(o,s)},setXRadius:function(e){return this.xRadius=e,this},setYRadius:function(e){return this.yRadius=e,this},setWidth:function(e){return this.xRadius=e/2,this},setHeight:function(e){return this.yRadius=e/2,this},setStartAngle:function(e){return this.startAngle=e,this},setEndAngle:function(e){return this.endAngle=e,this},setClockwise:function(e){return this.clockwise=e,this},setRotation:function(e){return this.rotation=e,this},x:{get:function(){return this.p0.x},set:function(e){this.p0.x=e}},y:{get:function(){return this.p0.y},set:function(e){this.p0.y=e}},xRadius:{get:function(){return this._xRadius},set:function(e){this._xRadius=e}},yRadius:{get:function(){return this._yRadius},set:function(e){this._yRadius=e}},startAngle:{get:function(){return s(this._startAngle)},set:function(e){this._startAngle=a(e)}},endAngle:{get:function(){return s(this._endAngle)},set:function(e){this._endAngle=a(e)}},clockwise:{get:function(){return this._clockwise},set:function(e){this._clockwise=e}},angle:{get:function(){return s(this._rotation)},set:function(e){this._rotation=a(e)}},rotation:{get:function(){return this._rotation},set:function(e){this._rotation=e}},toJSON:function(){return{type:this.type,x:this.p0.x,y:this.p0.y,xRadius:this._xRadius,yRadius:this._yRadius,startAngle:s(this._startAngle),endAngle:s(this._endAngle),clockwise:this._clockwise,rotation:s(this._rotation)}}});l.fromJSON=function(e){return new l(e)},e.exports=l},33951(e,t,n){var r=n(83419),i=n(80021),a=n(19217),o=n(87841),s=n(26099),c=new r({Extends:i,initialize:function(e,t){i.call(this,`LineCurve`),Array.isArray(e)&&(t=new s(e[2],e[3]),e=new s(e[0],e[1])),this.p0=e,this.p1=t,this.arcLengthDivisions=1},getBounds:function(e){return e===void 0&&(e=new o),a([this.p0,this.p1],e)},getStartPoint:function(e){return e===void 0&&(e=new s),e.copy(this.p0)},getResolution:function(e){return e===void 0&&(e=1),e},getPoint:function(e,t){return t===void 0&&(t=new s),e===1?t.copy(this.p1):(t.copy(this.p1).subtract(this.p0).scale(e).add(this.p0),t)},getPointAt:function(e,t){return this.getPoint(e,t)},getTangent:function(e,t){return t===void 0&&(t=new s),t.copy(this.p1).subtract(this.p0).normalize(),t},getUtoTmapping:function(e,t,n){var r;if(t){var i=this.getLengths(n),a=i[i.length-1];r=Math.min(t,a)/a}else r=e;return r},draw:function(e){return e.lineBetween(this.p0.x,this.p0.y,this.p1.x,this.p1.y),e},toJSON:function(){return{type:this.type,points:[this.p0.x,this.p0.y,this.p1.x,this.p1.y]}}});c.fromJSON=function(e){var t=e.points;return new c(new s(t[0],t[1]),new s(t[2],t[3]))},e.exports=c},14744(e,t,n){var r=n(83419),i=n(80021),a=n(32112),o=n(26099),s=new r({Extends:i,initialize:function(e,t,n){i.call(this,`QuadraticBezierCurve`),Array.isArray(e)&&(n=new o(e[4],e[5]),t=new o(e[2],e[3]),e=new o(e[0],e[1])),this.p0=e,this.p1=t,this.p2=n},getStartPoint:function(e){return e===void 0&&(e=new o),e.copy(this.p0)},getResolution:function(e){return e},getPoint:function(e,t){t===void 0&&(t=new o);var n=this.p0,r=this.p1,i=this.p2;return t.set(a(e,n.x,r.x,i.x),a(e,n.y,r.y,i.y))},draw:function(e,t){t===void 0&&(t=32);var n=this.getPoints(t);e.beginPath(),e.moveTo(this.p0.x,this.p0.y);for(var r=1;r<n.length;r++)e.lineTo(n[r].x,n[r].y);return e.strokePath(),e},toJSON:function(){return{type:this.type,points:[this.p0.x,this.p0.y,this.p1.x,this.p1.y,this.p2.x,this.p2.y]}}});s.fromJSON=function(e){var t=e.points;return new s(new o(t[0],t[1]),new o(t[2],t[3]),new o(t[4],t[5]))},e.exports=s},42534(e,t,n){var r=n(87842),i=n(83419),a=n(80021),o=n(26099),s=new i({Extends:a,initialize:function(e){e===void 0&&(e=[]),a.call(this,`SplineCurve`),this.points=[],this.addPoints(e)},addPoints:function(e){for(var t=0;t<e.length;t++){var n=new o;typeof e[t]==`number`?(n.x=e[t],n.y=e[t+1],t++):Array.isArray(e[t])?(n.x=e[t][0],n.y=e[t][1]):(n.x=e[t].x,n.y=e[t].y),this.points.push(n)}return this},addPoint:function(e,t){var n=new o(e,t);return this.points.push(n),n},getStartPoint:function(e){return e===void 0&&(e=new o),e.copy(this.points[0])},getResolution:function(e){return e*this.points.length},getPoint:function(e,t){t===void 0&&(t=new o);var n=this.points,i=(n.length-1)*e,a=Math.floor(i),s=i-a,c=n[a===0?a:a-1],l=n[a],u=n[a>n.length-2?n.length-1:a+1],d=n[a>n.length-3?n.length-1:a+2];return t.set(r(s,c.x,l.x,u.x,d.x),r(s,c.y,l.y,u.y,d.y))},toJSON:function(){for(var e=[],t=0;t<this.points.length;t++)e.push(this.points[t].x),e.push(this.points[t].y);return{type:this.type,points:e}}});s.fromJSON=function(e){return new s(e.points)},e.exports=s},25410(e,t,n){e.exports={Path:n(46669),MoveTo:n(68618),CubicBezier:n(46728),Curve:n(80021),Ellipse:n(73825),Line:n(33951),QuadraticBezier:n(14744),Spline:n(42534)}},68618(e,t,n){var r=n(83419),i=n(26099);e.exports=new r({initialize:function(e,t){this.active=!1,this.p0=new i(e,t)},getPoint:function(e,t){return t===void 0&&(t=new i),t.copy(this.p0)},getPointAt:function(e,t){return this.getPoint(e,t)},getResolution:function(){return 1},getLength:function(){return 0},toJSON:function(){return{type:`MoveTo`,points:[this.p0.x,this.p0.y]}}})},46669(e,t,n){var r=n(83419),i=n(46728),a=n(73825),o=n(39429),s=n(33951),c=n(68618),l=n(14744),u=n(87841),d=n(42534),f=n(26099),p=n(36383),m=new r({initialize:function(e,t){e===void 0&&(e=0),t===void 0&&(t=0),this.name=``,this.defaultDivisions=12,this.curves=[],this.cacheLengths=[],this.autoClose=!1,this.startPoint=new f,this._tmpVec2A=new f,this._tmpVec2B=new f,typeof e==`object`?this.fromJSON(e):this.startPoint.set(e,t)},add:function(e){return this.curves.push(e),this},circleTo:function(e,t,n){return t===void 0&&(t=!1),this.ellipseTo(e,e,0,360,t,n)},closePath:function(){var e=this.curves[0].getPoint(0),t=this.curves[this.curves.length-1].getPoint(1);return e.equals(t)||this.curves.push(new s(t,e)),this},cubicBezierTo:function(e,t,n,r,a,o){var s=this.getEndPoint(),c,l,u;return e instanceof f?(c=e,l=t,u=n):(c=new f(n,r),l=new f(a,o),u=new f(e,t)),this.add(new i(s,c,l,u))},quadraticBezierTo:function(e,t,n,r){var i=this.getEndPoint(),a,o;return e instanceof f?(a=e,o=t):(a=new f(n,r),o=new f(e,t)),this.add(new l(i,a,o))},draw:function(e,t){for(var n=0;n<this.curves.length;n++){var r=this.curves[n];r.active&&r.draw(e,t)}return e},ellipseTo:function(e,t,n,r,i,o){var s=new a(0,0,e,t,n,r,i,o),c=this.getEndPoint(this._tmpVec2A),l=s.getStartPoint(this._tmpVec2B);return c.subtract(l),s.x=c.x,s.y=c.y,this.add(s)},fromJSON:function(e){this.curves=[],this.cacheLengths=[],this.startPoint.set(e.x,e.y),this.autoClose=e.autoClose;for(var t=0;t<e.curves.length;t++){var n=e.curves[t];switch(n.type){case`LineCurve`:this.add(s.fromJSON(n));break;case`EllipseCurve`:this.add(a.fromJSON(n));break;case`SplineCurve`:this.add(d.fromJSON(n));break;case`CubicBezierCurve`:this.add(i.fromJSON(n));break;case`QuadraticBezierCurve`:this.add(l.fromJSON(n));break}}return this},getBounds:function(e,t){e===void 0&&(e=new u),t===void 0&&(t=16),e.x=Number.MAX_VALUE,e.y=Number.MAX_VALUE;for(var n=new u,r=p.MIN_SAFE_INTEGER,i=p.MIN_SAFE_INTEGER,a=0;a<this.curves.length;a++){var o=this.curves[a];o.active&&(o.getBounds(n,t),e.x=Math.min(e.x,n.x),e.y=Math.min(e.y,n.y),r=Math.max(r,n.right),i=Math.max(i,n.bottom))}return e.right=r,e.bottom=i,e},getCurveLengths:function(){if(this.cacheLengths.length===this.curves.length)return this.cacheLengths;for(var e=[],t=0,n=0;n<this.curves.length;n++)t+=this.curves[n].getLength(),e.push(t);return this.cacheLengths=e,e},getCurveAt:function(e){for(var t=e*this.getLength(),n=this.getCurveLengths(),r=0;r<n.length;){if(n[r]>=t)return this.curves[r];r++}return null},getEndPoint:function(e){return e===void 0&&(e=new f),this.curves.length>0?this.curves[this.curves.length-1].getPoint(1,e):e.copy(this.startPoint),e},getLength:function(){var e=this.getCurveLengths();return e[e.length-1]},getPoint:function(e,t){t===void 0&&(t=new f);for(var n=e*this.getLength(),r=this.getCurveLengths(),i=0;i<r.length;){if(r[i]>=n){var a=r[i]-n,o=this.curves[i],s=o.getLength(),c=s===0?0:1-a/s;return o.getPointAt(c,t)}i++}return null},getPoints:function(e,t){!e&&!t&&(e=this.defaultDivisions);for(var n=[],r,i=0;i<this.curves.length;i++){var a=this.curves[i];if(a.active)for(var o=a.getResolution(e),s=a.getPoints(o,t),c=0;c<s.length;c++){var l=s[c];r&&r.equals(l)||(n.push(l),r=l)}}return this.autoClose&&n.length>1&&!n[n.length-1].equals(n[0])&&n.push(n[0]),n},getRandomPoint:function(e){return e===void 0&&(e=new f),this.getPoint(Math.random(),e)},getSpacedPoints:function(e){e===void 0&&(e=40);for(var t=[],n=0;n<=e;n++)t.push(this.getPoint(n/e));return this.autoClose&&t.push(t[0]),t},getStartPoint:function(e){return e===void 0&&(e=new f),e.copy(this.startPoint)},getTangent:function(e,t){t===void 0&&(t=new f);for(var n=e*this.getLength(),r=this.getCurveLengths(),i=0;i<r.length;){if(r[i]>=n){var a=r[i]-n,o=this.curves[i],s=o.getLength(),c=s===0?0:1-a/s;return o.getTangentAt(c,t)}i++}return null},lineTo:function(e,t){e instanceof f?this._tmpVec2B.copy(e):typeof e==`object`?this._tmpVec2B.setFromObject(e):this._tmpVec2B.set(e,t);var n=this.getEndPoint(this._tmpVec2A);return this.add(new s([n.x,n.y,this._tmpVec2B.x,this._tmpVec2B.y]))},splineTo:function(e){return e.unshift(this.getEndPoint()),this.add(new d(e))},moveTo:function(e,t){return e instanceof f?this.add(new c(e.x,e.y)):this.add(new c(e,t))},toJSON:function(){for(var e=[],t=0;t<this.curves.length;t++)e.push(this.curves[t].toJSON());return{type:`Path`,x:this.startPoint.x,y:this.startPoint.y,autoClose:this.autoClose,curves:e}},updateArcLengths:function(){this.cacheLengths=[],this.getCurveLengths()},destroy:function(){this.curves.length=0,this.cacheLengths.length=0,this.startPoint=void 0}});o.register(`path`,function(e,t){return new m(e,t)}),e.exports=m},45893(e,t,n){var r=n(83419),i=n(24882);e.exports=new r({initialize:function(e,t){this.parent=e,this.events=t,t||(this.events=e.events?e.events:e),this.list={},this.values={},this._frozen=!1,!e.hasOwnProperty(`sys`)&&this.events&&this.events.once(i.DESTROY,this.destroy,this)},get:function(e){var t=this.list;if(Array.isArray(e)){for(var n=[],r=0;r<e.length;r++)n.push(t[e[r]]);return n}else return t[e]},getAll:function(){var e={};for(var t in this.list)this.list.hasOwnProperty(t)&&(e[t]=this.list[t]);return e},query:function(e){var t={};for(var n in this.list)this.list.hasOwnProperty(n)&&n.match(e)&&(t[n]=this.list[n]);return t},set:function(e,t){if(this._frozen)return this;if(typeof e==`string`)return this.setValue(e,t);for(var n in e)this.setValue(n,e[n]);return this},inc:function(e,t){if(this._frozen)return this;t===void 0&&(t=1);var n=this.get(e);return n===void 0&&(n=0),this.set(e,n+t),this},toggle:function(e){return this._frozen||this.set(e,!this.get(e)),this},setValue:function(e,t){if(this._frozen)return this;if(this.has(e))this.values[e]=t;else{var n=this,r=this.list,a=this.events,o=this.parent;Object.defineProperty(this.values,e,{enumerable:!0,configurable:!0,get:function(){return r[e]},set:function(t){if(!n._frozen){var s=r[e];r[e]=t,a.emit(i.CHANGE_DATA,o,e,t,s),a.emit(i.CHANGE_DATA_KEY+e,o,t,s)}}}),r[e]=t,a.emit(i.SET_DATA,o,e,t)}return this},each:function(e,t){for(var n=[this.parent,null,void 0],r=1;r<arguments.length;r++)n.push(arguments[r]);for(var i in this.list)n[1]=i,n[2]=this.list[i],e.apply(t,n);return this},merge:function(e,t){for(var n in t===void 0&&(t=!0),e)e.hasOwnProperty(n)&&(t||!t&&!this.has(n))&&this.setValue(n,e[n]);return this},remove:function(e){if(this._frozen)return this;if(Array.isArray(e))for(var t=0;t<e.length;t++)this.removeValue(e[t]);else return this.removeValue(e);return this},removeValue:function(e){if(this.has(e)){var t=this.list[e];delete this.list[e],delete this.values[e],this.events.emit(i.REMOVE_DATA,this.parent,e,t)}return this},pop:function(e){var t=void 0;return!this._frozen&&this.has(e)&&(t=this.list[e],delete this.list[e],delete this.values[e],this.events.emit(i.REMOVE_DATA,this.parent,e,t)),t},has:function(e){return this.list.hasOwnProperty(e)},setFreeze:function(e){return this._frozen=e,this},reset:function(){for(var e in this.list)delete this.list[e],delete this.values[e];return this._frozen=!1,this},destroy:function(){this.reset(),this.events.off(i.CHANGE_DATA),this.events.off(i.SET_DATA),this.events.off(i.REMOVE_DATA),this.parent=null},freeze:{get:function(){return this._frozen},set:function(e){this._frozen=!!e}},count:{get:function(){var e=0;for(var t in this.list)this.list[t]!==void 0&&e++;return e}}})},63646(e,t,n){var r=n(83419),i=n(45893),a=n(37277),o=n(44594),s=new r({Extends:i,initialize:function(e){i.call(this,e,e.sys.events),this.scene=e,this.systems=e.sys,e.sys.events.once(o.BOOT,this.boot,this),e.sys.events.on(o.START,this.start,this)},boot:function(){this.events=this.systems.events,this.events.once(o.DESTROY,this.destroy,this)},start:function(){this.events.once(o.SHUTDOWN,this.shutdown,this)},shutdown:function(){this.systems.events.off(o.SHUTDOWN,this.shutdown,this)},destroy:function(){i.prototype.destroy.call(this),this.events.off(o.START,this.start,this),this.scene=null,this.systems=null}});a.register(`DataManagerPlugin`,s,`data`),e.exports=s},10700(e){e.exports=`changedata`},93608(e){e.exports=`changedata-`},60883(e){e.exports=`destroy`},69780(e){e.exports=`removedata`},22166(e){e.exports=`setdata`},24882(e,t,n){e.exports={CHANGE_DATA:n(10700),CHANGE_DATA_KEY:n(93608),DESTROY:n(60883),REMOVE_DATA:n(69780),SET_DATA:n(22166)}},44965(e,t,n){e.exports={DataManager:n(45893),DataManagerPlugin:n(63646),Events:n(24882)}},7098(e,t,n){var r=n(84148),i={flac:!1,aac:!1,audioData:!1,dolby:!1,m4a:!1,mp3:!1,ogg:!1,opus:!1,wav:!1,webAudio:!1,webm:!1};function a(){if(typeof importScripts==`function`)return i;i.audioData=!!window.Audio,i.webAudio=!!(window.AudioContext||window.webkitAudioContext);var e=document.createElement(`audio`),t=!!e.canPlayType;try{if(t){var n=function(t,n){var r=e.canPlayType(`audio/`+t).replace(/^no$/,``);return n?!!(r||e.canPlayType(`audio/`+n).replace(/^no$/,``)):!!r};if(i.ogg=n(`ogg; codecs="vorbis"`),i.opus=n(`ogg; codecs="opus"`,`opus`),i.mp3=n(`mpeg`),i.wav=n(`wav`),i.m4a=n(`x-m4a`),i.aac=n(`aac`),i.flac=n(`flac`,`x-flac`),i.webm=n(`webm; codecs="vorbis"`),e.canPlayType(`audio/mp4; codecs="ec-3"`)!==``){if(r.edge)i.dolby=!0;else if(r.safari&&r.safariVersion>=9&&/Mac OS X (\d+)_(\d+)/.test(navigator.userAgent)){var a=parseInt(RegExp.$1,10),o=parseInt(RegExp.$2,10);(a===10&&o>=11||a>10)&&(i.dolby=!0)}}}}catch{}return i}e.exports=a()},84148(e,t,n){var r=n(25892),i={chrome:!1,chromeVersion:0,edge:!1,firefox:!1,firefoxVersion:0,ie:!1,ieVersion:0,mobileSafari:!1,opera:!1,safari:!1,safariVersion:0,silk:!1,trident:!1,tridentVersion:0,es2019:!1};function a(){var e=navigator.userAgent;return/Edg\/\d+/.test(e)?(i.edge=!0,i.es2019=!0):/OPR/.test(e)?(i.opera=!0,i.es2019=!0):/Chrome\/(\d+)/.test(e)&&!r.windowsPhone?(i.chrome=!0,i.chromeVersion=parseInt(RegExp.$1,10),i.es2019=i.chromeVersion>69):/Firefox\D+(\d+)/.test(e)?(i.firefox=!0,i.firefoxVersion=parseInt(RegExp.$1,10),i.es2019=i.firefoxVersion>10):/AppleWebKit\/(?!.*CriOS)/.test(e)&&r.iOS?(i.mobileSafari=!0,i.es2019=!0):/MSIE (\d+\.\d+);/.test(e)?(i.ie=!0,i.ieVersion=parseInt(RegExp.$1,10)):/Version\/(\d+\.\d+(\.\d+)?) Safari/.test(e)&&!r.windowsPhone?(i.safari=!0,i.safariVersion=parseInt(RegExp.$1,10),i.es2019=i.safariVersion>10):/Trident\/(\d+\.\d+)(.*)rv:(\d+\.\d+)/.test(e)&&(i.ie=!0,i.trident=!0,i.tridentVersion=parseInt(RegExp.$1,10),i.ieVersion=parseInt(RegExp.$3,10)),/Silk/.test(e)&&(i.silk=!0),i}e.exports=a()},89289(e,t,n){var r=n(27919),i={supportInverseAlpha:!1,supportNewBlendModes:!1};function a(){var e=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAABAQMAAADD8p2OAAAAA1BMVEX/`,t=`AAAACklEQVQI12NgAAAAAgAB4iG8MwAAAABJRU5ErkJggg==`,n=new Image;return n.onload=function(){var a=new Image;a.onload=function(){var e=r.create2D(a,6).getContext(`2d`,{willReadFrequently:!0});if(e.globalCompositeOperation=`multiply`,e.drawImage(n,0,0),e.drawImage(a,2,0),!e.getImageData(2,0,1,1))return!1;var t=e.getImageData(2,0,1,1).data;r.remove(a),i.supportNewBlendModes=t[0]===255&&t[1]===0&&t[2]===0},a.src=e+`/wCKxvRF`+t},n.src=e+`AP804Oa6`+t,!1}function o(){var e=r.create2D(this,2).getContext(`2d`,{willReadFrequently:!0});e.fillStyle=`rgba(10, 20, 30, 0.5)`,e.fillRect(0,0,1,1);var t=e.getImageData(0,0,1,1);if(t===null)return!1;e.putImageData(t,1,0);var n=e.getImageData(1,0,1,1),i=n.data[0]===t.data[0]&&n.data[1]===t.data[1]&&n.data[2]===t.data[2]&&n.data[3]===t.data[3];return r.remove(this),i}function s(){return typeof importScripts!=`function`&&document!==void 0&&(i.supportNewBlendModes=a(),i.supportInverseAlpha=o()),i}e.exports=s()},89357(e,t,n){var r=n(25892),i=n(84148),a=n(27919),o={canvas:!1,canvasBitBltShift:null,file:!1,fileSystem:!1,getUserMedia:!0,littleEndian:!1,localStorage:!1,pointerLock:!1,stableSort:!1,support32bit:!1,vibration:!1,webGL:!1,worker:!1};function s(){var e=new ArrayBuffer(4),t=new Uint8Array(e),n=new Uint32Array(e);return t[0]=161,t[1]=178,t[2]=195,t[3]=212,n[0]===3569595041?!0:n[0]===2712847316?!1:null}function c(){if(typeof importScripts==`function`)return o;o.canvas=!!window.CanvasRenderingContext2D;try{o.localStorage=!!localStorage.getItem}catch{o.localStorage=!1}o.file=!!window.File&&!!window.FileReader&&!!window.FileList&&!!window.Blob,o.fileSystem=!!window.requestFileSystem;var e=!1;return o.webGL=function(){if(window.WebGLRenderingContext)try{var t=a.createWebGL(this),n=t.getContext(`webgl`)||t.getContext(`experimental-webgl`),r=a.create2D(this);return e=r.getContext(`2d`,{willReadFrequently:!0}).createImageData(1,1).data instanceof Uint8ClampedArray,a.remove(t),a.remove(r),!!n}catch{return!1}return!1}(),o.worker=!!window.Worker,o.pointerLock=`pointerLockElement`in document||`mozPointerLockElement`in document||`webkitPointerLockElement`in document,navigator.getUserMedia=navigator.getUserMedia||navigator.webkitGetUserMedia||navigator.mozGetUserMedia||navigator.msGetUserMedia||navigator.oGetUserMedia,window.URL=window.URL||window.webkitURL||window.mozURL||window.msURL,o.getUserMedia=o.getUserMedia&&!!navigator.getUserMedia&&!!window.URL,i.firefox&&i.firefoxVersion<21&&(o.getUserMedia=!1),!r.iOS&&(i.ie||i.firefox||i.chrome)&&(o.canvasBitBltShift=!0),(i.safari||i.mobileSafari)&&(o.canvasBitBltShift=!1),navigator.vibrate=navigator.vibrate||navigator.webkitVibrate||navigator.mozVibrate||navigator.msVibrate,navigator.vibrate&&(o.vibration=!0),typeof ArrayBuffer<`u`&&typeof Uint8Array<`u`&&typeof Uint32Array<`u`&&(o.littleEndian=s()),o.support32bit=typeof ArrayBuffer<`u`&&typeof Uint8ClampedArray<`u`&&typeof Int32Array<`u`&&o.littleEndian!==null&&e,o}e.exports=c()},91639(e){var t={available:!1,cancel:``,keyboard:!1,request:``};function n(){if(typeof importScripts==`function`)return t;var e,n=`Fullscreen`,r=`FullScreen`,i=[`request`+n,`request`+r,`webkitRequest`+n,`webkitRequest`+r,`msRequest`+n,`msRequest`+r,`mozRequest`+r,`mozRequest`+n];for(e=0;e<i.length;e++)if(document.documentElement[i[e]]){t.available=!0,t.request=i[e];break}var a=[`cancel`+r,`exit`+n,`webkitCancel`+r,`webkitExit`+n,`msCancel`+r,`msExit`+n,`mozCancel`+r,`mozExit`+n];if(t.available){for(e=0;e<a.length;e++)if(document[a[e]]){t.cancel=a[e];break}}return window.Element&&Element.ALLOW_KEYBOARD_INPUT&&!/ Version\/5\.1(?:\.\d+)? Safari\//.test(navigator.userAgent)&&(t.keyboard=!0),Object.defineProperty(t,`active`,{get:function(){return!!(document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.msFullscreenElement)}}),t}e.exports=n()},31784(e,t,n){var r=n(84148),i={gamepads:!1,mspointer:!1,touch:!1,wheelEvent:null};function a(){return typeof importScripts==`function`?i:((`ontouchstart`in document.documentElement||navigator.maxTouchPoints&&navigator.maxTouchPoints>=1)&&(i.touch=!0),(navigator.msPointerEnabled||navigator.pointerEnabled)&&(i.mspointer=!0),navigator.getGamepads&&(i.gamepads=!0),`onwheel`in window||r.ie&&`WheelEvent`in window?i.wheelEvent=`wheel`:`onmousewheel`in window?i.wheelEvent=`mousewheel`:r.firefox&&`MouseScrollEvent`in window&&(i.wheelEvent=`DOMMouseScroll`),i)}e.exports=a()},25892(e){var t={android:!1,chromeOS:!1,cordova:!1,crosswalk:!1,desktop:!1,ejecta:!1,electron:!1,iOS:!1,iOSVersion:0,iPad:!1,iPhone:!1,kindle:!1,linux:!1,macOS:!1,node:!1,nodeWebkit:!1,pixelRatio:1,webApp:!1,windows:!1,windowsPhone:!1};function n(){if(typeof importScripts==`function`)return t;var e=navigator.userAgent;/Windows/.test(e)?t.windows=!0:/Mac OS/.test(e)&&!/like Mac OS/.test(e)?navigator.maxTouchPoints&&navigator.maxTouchPoints>2?(t.iOS=!0,t.iPad=!0,navigator.appVersion.match(/Version\/(\d+)/),t.iOSVersion=parseInt(RegExp.$1,10)):t.macOS=!0:/Android/.test(e)?t.android=!0:/Linux/.test(e)?t.linux=!0:/iP[ao]d|iPhone/i.test(e)?(t.iOS=!0,navigator.appVersion.match(/OS (\d+)/),t.iOSVersion=parseInt(RegExp.$1,10),t.iPhone=e.toLowerCase().indexOf(`iphone`)!==-1,t.iPad=e.toLowerCase().indexOf(`ipad`)!==-1):/Kindle/.test(e)||/\bKF[A-Z][A-Z]+/.test(e)||/Silk.*Mobile Safari/.test(e)?t.kindle=!0:/CrOS/.test(e)&&(t.chromeOS=!0),(/Windows Phone/i.test(e)||/IEMobile/i.test(e))&&(t.android=!1,t.iOS=!1,t.macOS=!1,t.windows=!0,t.windowsPhone=!0);var n=/Silk/.test(e);return(t.windows||t.macOS||t.linux&&!n||t.chromeOS)&&(t.desktop=!0),(t.windowsPhone||/Windows NT/i.test(e)&&/Touch/i.test(e))&&(t.desktop=!1),navigator.standalone&&(t.webApp=!0),typeof importScripts!=`function`&&(window.cordova!==void 0&&(t.cordova=!0),window.ejecta!==void 0&&(t.ejecta=!0)),typeof process<`u`&&process.versions&&process.versions.node&&(t.node=!0),t.node&&typeof process.versions==`object`&&(t.nodeWebkit=!!process.versions[`node-webkit`],t.electron=!!process.versions.electron),/Crosswalk/.test(e)&&(t.crosswalk=!0),t.pixelRatio=window.devicePixelRatio||1,t}e.exports=n()},43267(e,t,n){var r=n(95540),i={h264:!1,hls:!1,mov:!1,mp4:!1,m4v:!1,ogg:!1,vp9:!1,webm:!1,hasRequestVideoFrame:!1};function a(){if(typeof importScripts==`function`)return i;var e=document.createElement(`video`),t=!!e.canPlayType,n=/^no$/;try{t&&(e.canPlayType(`video/ogg; codecs="theora"`).replace(n,``)&&(i.ogg=!0),e.canPlayType(`video/mp4; codecs="avc1.42E01E"`).replace(n,``)&&(i.h264=!0,i.mp4=!0),e.canPlayType(`video/quicktime4; codecs="avc1.42E01E"`).replace(n,``)&&(i.mov=!0),e.canPlayType(`video/x-m4v`).replace(n,``)&&(i.m4v=!0),e.canPlayType(`video/webm; codecs="vp8, vorbis"`).replace(n,``)&&(i.webm=!0),e.canPlayType(`video/webm; codecs="vp9"`).replace(n,``)&&(i.vp9=!0),e.canPlayType(`application/x-mpegURL; codecs="avc1.42E01E"`).replace(n,``)&&(i.hls=!0))}catch{}return e.parentNode&&e.parentNode.removeChild(e),i.getVideoURL=function(e){Array.isArray(e)||(e=[e]);for(var t=0;t<e.length;t++){var n=r(e[t],`url`,e[t]);if(n.indexOf(`blob:`)===0)return{url:n,type:``};var a=n.indexOf(`data:`)===0?n.split(`,`)[0].match(/\/(.*?);/):n.match(/\.([a-zA-Z0-9]+)($|\?)/);if(a=r(e[t],`type`,a?a[1]:``).toLowerCase(),i[a])return{url:n,type:a}}return null},i}e.exports=a()},82264(e,t,n){e.exports={os:n(25892),browser:n(84148),features:n(89357),input:n(31784),audio:n(7098),video:n(43267),fullscreen:n(91639),canvasFeatures:n(89289)}},34664(e,t,n){var r=n(79980),i=n(28915),a=n(83419),o=n(40987),s=n(13699);e.exports=new a({initialize:function(e){e||={},this.isColorBand=!0,this.colorStart=new o,this.colorEnd=new o,this.start=e.start||0,this.middle=e.middle===void 0?.5:e.middle,this.end=1,e.end===void 0?e.size!==void 0&&(this.end=this.start+e.size):this.end=e.end,this.interpolation=e.interpolation||0,this.colorSpace=e.colorSpace||0,this.setColors(e.colorStart,e.colorEnd)},setColors:function(e,t){var n;return e===void 0&&(e=0),t===void 0&&(t=e),typeof e==`number`?o.IntegerToColor(e,this.colorStart):typeof e==`string`?o.HexStringToColor(e,this.colorStart):Array.isArray(e)?(n=e[3]===void 0?1:e[3],this.colorStart.setGLTo(e[0],e[1],e[2],n)):e instanceof o&&this.colorStart.setTo(e.red,e.green,e.blue,e.alpha),typeof t==`number`?o.IntegerToColor(t,this.colorEnd):typeof t==`string`?o.HexStringToColor(t,this.colorEnd):Array.isArray(t)?(n=t[3]===void 0?1:t[3],this.colorEnd.setGLTo(t[0],t[1],t[2],n)):t instanceof o&&this.colorEnd.setTo(t.red,t.green,t.blue,t.alpha),this},getColor:function(e){var t=Math.log(.5)/Math.log(this.middle);switch(e**=+t,e=Math.min(Math.max(0,e),1),this.interpolation){case 1:(e*=2)<1?e=.5*Math.sqrt(1- --e*e):(e=1-e,e=1-.5*Math.sqrt(1-e*e));break;case 2:e=r.InOut(e);break;case 3:e=r.Out(e);break;case 4:e=r.In(e);break}var n=0;this.colorSpace===2?n=1:this.colorSpace===3&&(n=-1);var a=s.ColorWithColor(this.colorStart,this.colorEnd,1,e,this.colorSpace!==0,n);return a.a=i(this.colorStart.alpha,this.colorEnd.alpha,e),a}})},89422(e,t,n){var r=n(83419),i=new Float32Array(20),a=new r({initialize:function(){this._matrix=new Float32Array(20),this.alpha=1,this._dirty=!0,this._data=new Float32Array(20),this.reset()},set:function(e){return this._matrix.set(e),this._dirty=!0,this},reset:function(){var e=this._matrix;return e.fill(0),e[0]=1,e[6]=1,e[12]=1,e[18]=1,this.alpha=1,this._dirty=!0,this},getData:function(){var e=this._data;return this._dirty&&=(e.set(this._matrix),e[4]/=255,e[9]/=255,e[14]/=255,e[19]/=255,!1),e},brightness:function(e,t){e===void 0&&(e=0),t===void 0&&(t=!1);var n=e;return this.multiply([n,0,0,0,0,0,n,0,0,0,0,0,n,0,0,0,0,0,1,0],t)},saturate:function(e,t){e===void 0&&(e=0),t===void 0&&(t=!1);var n=e*2/3+1,r=(n-1)*-.5;return this.multiply([n,r,r,0,0,r,n,r,0,0,r,r,n,0,0,0,0,0,1,0],t)},desaturate:function(e){return e===void 0&&(e=!1),this.saturate(-1,e)},hue:function(e,t){e===void 0&&(e=0),t===void 0&&(t=!1),e=e/180*Math.PI;var n=Math.cos(e),r=Math.sin(e),i=.213,a=.715,o=.072;return this.multiply([i+n*(1-i)+r*-i,a+n*-a+r*-a,o+n*-o+r*(1-o),0,0,i+n*-i+r*.143,a+n*(1-a)+r*.14,o+n*-o+r*-.283,0,0,i+n*-i+r*-(1-i),a+n*-a+r*a,o+n*(1-o)+r*o,0,0,0,0,0,1,0],t)},grayscale:function(e,t){return e===void 0&&(e=1),t===void 0&&(t=!1),this.saturate(-e,t)},blackWhite:function(e){return e===void 0&&(e=!1),this.multiply(a.BLACK_WHITE,e)},black:function(e){return this.multiply(a.BLACK,e)},contrast:function(e,t){e===void 0&&(e=0),t===void 0&&(t=!1);var n=e+1,r=-.5*(n-1);return this.multiply([n,0,0,0,r,0,n,0,0,r,0,0,n,0,r,0,0,0,1,0],t)},negative:function(e){return e===void 0&&(e=!1),this.multiply(a.NEGATIVE,e)},desaturateLuminance:function(e){return e===void 0&&(e=!1),this.multiply(a.DESATURATE_LUMINANCE,e)},sepia:function(e){return e===void 0&&(e=!1),this.multiply(a.SEPIA,e)},night:function(e,t){return e===void 0&&(e=.1),t===void 0&&(t=!1),this.multiply([e*-2,-e,0,0,0,-e,0,e,0,0,0,e,e*2,0,0,0,0,0,1,0],t)},lsd:function(e){return e===void 0&&(e=!1),this.multiply(a.LSD,e)},brown:function(e){return e===void 0&&(e=!1),this.multiply(a.BROWN,e)},vintagePinhole:function(e){return e===void 0&&(e=!1),this.multiply(a.VINTAGE,e)},kodachrome:function(e){return e===void 0&&(e=!1),this.multiply(a.KODACHROME,e)},technicolor:function(e){return e===void 0&&(e=!1),this.multiply(a.TECHNICOLOR,e)},polaroid:function(e){return e===void 0&&(e=!1),this.multiply(a.POLAROID,e)},alphaToBrightness:function(e){return e===void 0&&(e=!1),this.multiply(a.ALPHA_TO_BRIGHTNESS,e)},alphaToBrightnessInverse:function(e){return e===void 0&&(e=!1),this.multiply(a.ALPHA_TO_BRIGHTNESS_INVERSE,e)},brightnessToAlpha:function(e){return e===void 0&&(e=!1),this.multiply(a.BRIGHTNESS_TO_ALPHA,e)},brightnessToAlphaInverse:function(e){return e===void 0&&(e=!1),this.multiply(a.BRIGHTNESS_TO_ALPHA_INVERSE,e)},shiftToBGR:function(e){return e===void 0&&(e=!1),this.multiply(a.SHIFT_BGR,e)},multiply:function(e,t){t===void 0&&(t=!1),t||this.reset();var n=this._matrix,r=i;return r.set(n),n.set([r[0]*e[0]+r[1]*e[5]+r[2]*e[10]+r[3]*e[15],r[0]*e[1]+r[1]*e[6]+r[2]*e[11]+r[3]*e[16],r[0]*e[2]+r[1]*e[7]+r[2]*e[12]+r[3]*e[17],r[0]*e[3]+r[1]*e[8]+r[2]*e[13]+r[3]*e[18],r[0]*e[4]+r[1]*e[9]+r[2]*e[14]+r[3]*e[19]+r[4],r[5]*e[0]+r[6]*e[5]+r[7]*e[10]+r[8]*e[15],r[5]*e[1]+r[6]*e[6]+r[7]*e[11]+r[8]*e[16],r[5]*e[2]+r[6]*e[7]+r[7]*e[12]+r[8]*e[17],r[5]*e[3]+r[6]*e[8]+r[7]*e[13]+r[8]*e[18],r[5]*e[4]+r[6]*e[9]+r[7]*e[14]+r[8]*e[19]+r[9],r[10]*e[0]+r[11]*e[5]+r[12]*e[10]+r[13]*e[15],r[10]*e[1]+r[11]*e[6]+r[12]*e[11]+r[13]*e[16],r[10]*e[2]+r[11]*e[7]+r[12]*e[12]+r[13]*e[17],r[10]*e[3]+r[11]*e[8]+r[12]*e[13]+r[13]*e[18],r[10]*e[4]+r[11]*e[9]+r[12]*e[14]+r[13]*e[19]+r[14],r[15]*e[0]+r[16]*e[5]+r[17]*e[10]+r[18]*e[15],r[15]*e[1]+r[16]*e[6]+r[17]*e[11]+r[18]*e[16],r[15]*e[2]+r[16]*e[7]+r[17]*e[12]+r[18]*e[17],r[15]*e[3]+r[16]*e[8]+r[17]*e[13]+r[18]*e[18],r[15]*e[4]+r[16]*e[9]+r[17]*e[14]+r[18]*e[19]+r[19]]),this._dirty=!0,this}});a.BLACK=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0],a.BLACK_WHITE=[.3,.6,.1,0,0,.3,.6,.1,0,0,.3,.6,.1,0,0,0,0,0,1,0],a.NEGATIVE=[-1,0,0,1,0,0,-1,0,1,0,0,0,-1,1,0,0,0,0,1,0],a.DESATURATE_LUMINANCE=[.2764723,.929708,.0938197,0,-37.1,.2764723,.929708,.0938197,0,-37.1,.2764723,.929708,.0938197,0,-37.1,0,0,0,1,0],a.SEPIA=[.393,.7689999,.18899999,0,0,.349,.6859999,.16799999,0,0,.272,.5339999,.13099999,0,0,0,0,0,1,0],a.LSD=[2,-.4,.5,0,0,-.5,2,-.4,0,0,-.4,-.5,3,0,0,0,0,0,1,0],a.BROWN=[.5997023498159715,.34553243048391263,-.2708298674538042,0,47.43192855600873,-.037703249837783157,.8609577587992641,.15059552388459913,0,-36.96841498319127,.24113635128153335,-.07441037908422492,.44972182064877153,0,-7.562075277591283,0,0,0,1,0],a.VINTAGE=[.6279345635605994,.3202183420819367,-.03965408211312453,0,9.651285835294123,.02578397704808868,.6441188644374771,.03259127616149294,0,7.462829176470591,.0466055556782719,-.0851232987247891,.5241648018700465,0,5.159190588235296,0,0,0,1,0],a.KODACHROME=[1.1285582396593525,-.3967382283601348,-.03992559172921793,0,63.72958762196502,-.16404339962244616,1.0835251566291304,-.05498805115633132,0,24.732407896706203,-.16786010706155763,-.5603416277695248,1.6014850761964943,0,35.62982807460946,0,0,0,1,0],a.TECHNICOLOR=[1.9125277891456083,-.8545344976951645,-.09155508482755585,0,11.793603434377337,-.3087833385928097,1.7658908555458428,-.10601743074722245,0,-70.35205161461398,-.231103377548616,-.7501899197440212,1.847597816108189,0,30.950940869491138,0,0,0,1,0],a.POLAROID=[1.438,-.062,-.062,0,0,-.122,1.378,-.122,0,0,-.016,-.016,1.483,0,0,0,0,0,1,0],a.ALPHA_TO_BRIGHTNESS=[0,0,0,1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0,255],a.ALPHA_TO_BRIGHTNESS_INVERSE=[0,0,0,-1,255,0,0,0,-1,255,0,0,0,-1,255,0,0,0,0,255],a.BRIGHTNESS_TO_ALPHA=[1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,.3,.6,.1,0,0],a.BRIGHTNESS_TO_ALPHA_INVERSE=[1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,-.3,-.6,-.1,0,255],a.SHIFT_BGR=[0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,1,0],e.exports=a},73043(e,t,n){var r=n(28915),i=n(70554),a=n(83419),o=n(45650),s=n(34664),c=i.getTintFromFloats;e.exports=new a({initialize:function(e,t,n){n===void 0&&(n=!0),this.scene=e,this.bands=[],this.gpuEncode=n,this.dataTexture=null,this.glTexture=null,this.dataTextureFirstBand=0,this.bandTreeDepth=0,this.dataTextureResolution=[0,0],this.setBands(t)},setBands:function(e,t){this.bands.length=0,Array.isArray(e)||(e=[e]);for(var n=0,r=0;r<e.length;r++){var i=e[r];if(i.isColorBand){this.bands.push(i),n=i.end;continue}i.start===void 0&&(i=Object.assign({start:n},i));var a=new s(i);this.bands.push(a),n=a.end}return t!==!1&&this.gpuEncode&&this.encode(),this},encode:function(){var e=this.bands.length,t=Math.ceil(Math.log2(e));this.bandTreeDepth=t;var n=2**t-1,r=(8+4*n+12*e)/4,i=1;r>4096&&(i=Math.ceil(r/4096),r=4096),this.dataTextureResolution[0]=r,this.dataTextureResolution[1]=i;var a=new ArrayBuffer(r*i*4),s=new Uint32Array(a),l=new Uint8Array(a),u=0,d=256*256;s[u++]=Math.round(this.bands[0].start*d),s[u++]=Math.round(this.bands[this.bands.length-1].end*d);for(var f=0;f<=t;f++)for(var p=2**f,m=1;m<p;m+=2){var h=Math.floor(n*m/p),g=this.bands[Math.min(h,e-1)];s[u++]=Math.round(g.end*d)}this.dataTextureFirstBand=u;for(var _=0;_<e;_++){g=this.bands[_];var v=g.colorStart,y=g.colorEnd;s[u++]=c(v.blueGL,v.greenGL,v.redGL,v.alphaGL),s[u++]=c(y.blueGL,y.greenGL,y.redGL,y.alphaGL);var b=g.colorSpace*255,x=g.interpolation,S=g.middle/2;s[u++]=d*(b+x+S)}if(this.glTexture){var C=this.glTexture;C.update(l,r,i,C.flipY,C.wrapS,C.wrapT,C.minFilter,C.magFilter,C.format)}else{var w=this.scene.renderer.createUint8ArrayTexture(l,r,i,!1,!1);this.glTexture=w;for(var T=o();this.scene.textures.exists(T);)T=o();this.dataTexture=this.scene.textures.addGLTexture(T,w)}},fixFit:function(e,t,n,r){var i=this.bands;if(i.length===0)return this;n===void 0&&(n=!0),r===void 0&&(r=!0),e!==void 0&&(i[0].start=e),t!==void 0&&(i[i.length-1].end=t);for(var a=0;a<i.length-1;a++){var o=i[a],s=i[a+1];s.start=o.end,s.start>s.end&&(s.end=s.start)}return n&&(this.bands=i.filter(function(e){return e.start<e.end})),r&&this.encode(),this},splitBand:function(e,t,n,i){if(t===0)return this;t===void 0&&(t=2),i===void 0&&(i=!0);var a=0;if(typeof e==`number`)a=e,e=this.bands[e];else if(a=this.bands.indexOf(e),a===-1)return this;if(!e)return this;this.bands.splice(a,1);for(var o=0;o<t;o++){var c=o/t,l=(o+1)/t;n&&(c=o/(t-1),l=(o+1)/(t-1));var u=e.getColor(c),d=e.getColor(l);n&&(d=u);var f=new s({colorStart:[u.r/255,u.g/255,u.b/255,u.a/255],colorEnd:[d.r/255,d.g/255,d.b/255,d.a/255],start:r(e.start,e.end,c),end:r(e.start,e.end,l),middle:e.middle,interpolation:e.interpolation,colorSpace:e.colorSpace});this.bands.splice(a++,0,f)}return i&&this.encode(),this},getColor:function(e){for(var t,n=0;n<this.bands.length;n++){var r=this.bands[n];if(r.start<=e&&r.end>=e){t=r;break}}return t?(e=(e-t.start)/(t.end-t.start),t.getColor(e)):{r:0,g:0,b:0,a:0,color:0}},destroy:function(){this.scene=null,this.dataTexture&&this.dataTexture.destroy()}})},51767(e,t,n){var r=n(83419),i=n(29747);e.exports=new r({initialize:function(e,t,n){this._rgb=[0,0,0],this.onChangeCallback=i,this.dirty=!1,this.set(e,t,n)},set:function(e,t,n){return e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),this._rgb=[e,t,n],this.onChange(),this},equals:function(e,t,n){var r=this._rgb;return r[0]===e&&r[1]===t&&r[2]===n},onChange:function(){this.dirty=!0;var e=this._rgb;this.onChangeCallback.call(this,e[0],e[1],e[2])},r:{get:function(){return this._rgb[0]},set:function(e){this._rgb[0]=e,this.onChange()}},g:{get:function(){return this._rgb[1]},set:function(e){this._rgb[1]=e,this.onChange()}},b:{get:function(){return this._rgb[2]},set:function(e){this._rgb[2]=e,this.onChange()}},destroy:function(){this.onChangeCallback=null}})},60461(e){e.exports={TOP_LEFT:0,TOP_CENTER:1,TOP_RIGHT:2,LEFT_TOP:3,LEFT_CENTER:4,LEFT_BOTTOM:5,CENTER:6,RIGHT_TOP:7,RIGHT_CENTER:8,RIGHT_BOTTOM:9,BOTTOM_LEFT:10,BOTTOM_CENTER:11,BOTTOM_RIGHT:12}},54312(e,t,n){var r=n(62235),i=n(35893),a=n(86327),o=n(88417);e.exports=function(e,t,n,s){return n===void 0&&(n=0),s===void 0&&(s=0),o(e,i(t)+n),a(e,r(t)+s),e}},46768(e,t,n){var r=n(62235),i=n(26541),a=n(86327),o=n(385);e.exports=function(e,t,n,s){return n===void 0&&(n=0),s===void 0&&(s=0),o(e,i(t)-n),a(e,r(t)+s),e}},35827(e,t,n){var r=n(62235),i=n(54380),a=n(86327),o=n(40136);e.exports=function(e,t,n,s){return n===void 0&&(n=0),s===void 0&&(s=0),o(e,i(t)+n),a(e,r(t)+s),e}},46871(e,t,n){var r=n(66786),i=n(35893),a=n(7702);e.exports=function(e,t,n,o){return n===void 0&&(n=0),o===void 0&&(o=0),r(e,i(t)+n,a(t)+o),e}},5198(e,t,n){var r=n(7702),i=n(26541),a=n(20786),o=n(385);e.exports=function(e,t,n,s){return n===void 0&&(n=0),s===void 0&&(s=0),o(e,i(t)-n),a(e,r(t)+s),e}},11879(e,t,n){var r=n(60461),i=[];i[r.BOTTOM_CENTER]=n(54312),i[r.BOTTOM_LEFT]=n(46768),i[r.BOTTOM_RIGHT]=n(35827),i[r.CENTER]=n(46871),i[r.LEFT_CENTER]=n(5198),i[r.RIGHT_CENTER]=n(80503),i[r.TOP_CENTER]=n(89698),i[r.TOP_LEFT]=n(922),i[r.TOP_RIGHT]=n(21373),i[r.LEFT_BOTTOM]=i[r.BOTTOM_LEFT],i[r.LEFT_TOP]=i[r.TOP_LEFT],i[r.RIGHT_BOTTOM]=i[r.BOTTOM_RIGHT],i[r.RIGHT_TOP]=i[r.TOP_RIGHT],e.exports=function(e,t,n,r,a){return i[n](e,t,r,a)}},80503(e,t,n){var r=n(7702),i=n(54380),a=n(20786),o=n(40136);e.exports=function(e,t,n,s){return n===void 0&&(n=0),s===void 0&&(s=0),o(e,i(t)+n),a(e,r(t)+s),e}},89698(e,t,n){var r=n(35893),i=n(17717),a=n(88417),o=n(66737);e.exports=function(e,t,n,s){return n===void 0&&(n=0),s===void 0&&(s=0),a(e,r(t)+n),o(e,i(t)-s),e}},922(e,t,n){var r=n(26541),i=n(17717),a=n(385),o=n(66737);e.exports=function(e,t,n,s){return n===void 0&&(n=0),s===void 0&&(s=0),a(e,r(t)-n),o(e,i(t)-s),e}},21373(e,t,n){var r=n(54380),i=n(17717),a=n(40136),o=n(66737);e.exports=function(e,t,n,s){return n===void 0&&(n=0),s===void 0&&(s=0),a(e,r(t)+n),o(e,i(t)-s),e}},91660(e,t,n){e.exports={BottomCenter:n(54312),BottomLeft:n(46768),BottomRight:n(35827),Center:n(46871),LeftCenter:n(5198),QuickSet:n(11879),RightCenter:n(80503),TopCenter:n(89698),TopLeft:n(922),TopRight:n(21373)}},71926(e,t,n){var r=n(60461),i=n(79291),a={In:n(91660),To:n(16694)};a=i(!1,a,r),e.exports=a},21578(e,t,n){var r=n(62235),i=n(35893),a=n(88417),o=n(66737);e.exports=function(e,t,n,s){return n===void 0&&(n=0),s===void 0&&(s=0),a(e,i(t)+n),o(e,r(t)+s),e}},10210(e,t,n){var r=n(62235),i=n(26541),a=n(385),o=n(66737);e.exports=function(e,t,n,s){return n===void 0&&(n=0),s===void 0&&(s=0),a(e,i(t)-n),o(e,r(t)+s),e}},82341(e,t,n){var r=n(62235),i=n(54380),a=n(40136),o=n(66737);e.exports=function(e,t,n,s){return n===void 0&&(n=0),s===void 0&&(s=0),a(e,i(t)+n),o(e,r(t)+s),e}},87958(e,t,n){var r=n(62235),i=n(26541),a=n(86327),o=n(40136);e.exports=function(e,t,n,s){return n===void 0&&(n=0),s===void 0&&(s=0),o(e,i(t)-n),a(e,r(t)+s),e}},40080(e,t,n){var r=n(7702),i=n(26541),a=n(20786),o=n(40136);e.exports=function(e,t,n,s){return n===void 0&&(n=0),s===void 0&&(s=0),o(e,i(t)-n),a(e,r(t)+s),e}},88466(e,t,n){var r=n(26541),i=n(17717),a=n(40136),o=n(66737);e.exports=function(e,t,n,s){return n===void 0&&(n=0),s===void 0&&(s=0),a(e,r(t)-n),o(e,i(t)-s),e}},38829(e,t,n){var r=n(60461),i=[];i[r.BOTTOM_CENTER]=n(21578),i[r.BOTTOM_LEFT]=n(10210),i[r.BOTTOM_RIGHT]=n(82341),i[r.LEFT_BOTTOM]=n(87958),i[r.LEFT_CENTER]=n(40080),i[r.LEFT_TOP]=n(88466),i[r.RIGHT_BOTTOM]=n(19211),i[r.RIGHT_CENTER]=n(34609),i[r.RIGHT_TOP]=n(48741),i[r.TOP_CENTER]=n(49440),i[r.TOP_LEFT]=n(81288),i[r.TOP_RIGHT]=n(61323),e.exports=function(e,t,n,r,a){return i[n](e,t,r,a)}},19211(e,t,n){var r=n(62235),i=n(54380),a=n(86327),o=n(385);e.exports=function(e,t,n,s){return n===void 0&&(n=0),s===void 0&&(s=0),o(e,i(t)+n),a(e,r(t)+s),e}},34609(e,t,n){var r=n(7702),i=n(54380),a=n(20786),o=n(385);e.exports=function(e,t,n,s){return n===void 0&&(n=0),s===void 0&&(s=0),o(e,i(t)+n),a(e,r(t)+s),e}},48741(e,t,n){var r=n(54380),i=n(17717),a=n(385),o=n(66737);e.exports=function(e,t,n,s){return n===void 0&&(n=0),s===void 0&&(s=0),a(e,r(t)+n),o(e,i(t)-s),e}},49440(e,t,n){var r=n(35893),i=n(17717),a=n(86327),o=n(88417);e.exports=function(e,t,n,s){return n===void 0&&(n=0),s===void 0&&(s=0),o(e,r(t)+n),a(e,i(t)-s),e}},81288(e,t,n){var r=n(26541),i=n(17717),a=n(86327),o=n(385);e.exports=function(e,t,n,s){return n===void 0&&(n=0),s===void 0&&(s=0),o(e,r(t)-n),a(e,i(t)-s),e}},61323(e,t,n){var r=n(54380),i=n(17717),a=n(86327),o=n(40136);e.exports=function(e,t,n,s){return n===void 0&&(n=0),s===void 0&&(s=0),o(e,r(t)+n),a(e,i(t)-s),e}},16694(e,t,n){e.exports={BottomCenter:n(21578),BottomLeft:n(10210),BottomRight:n(82341),LeftBottom:n(87958),LeftCenter:n(40080),LeftTop:n(88466),QuickSet:n(38829),RightBottom:n(19211),RightCenter:n(34609),RightTop:n(48741),TopCenter:n(49440),TopLeft:n(81288),TopRight:n(61323)}},66786(e,t,n){var r=n(88417),i=n(20786);e.exports=function(e,t,n){return r(e,t),i(e,n)}},62235(e){e.exports=function(e){return e.y+e.height-e.height*e.originY}},72873(e,t,n){var r=n(62235),i=n(26541),a=n(54380),o=n(17717),s=n(87841);e.exports=function(e,t){t===void 0&&(t=new s);var n=i(e),c=o(e);return t.x=n,t.y=c,t.width=a(e)-n,t.height=r(e)-c,t}},35893(e){e.exports=function(e){return e.x-e.width*e.originX+e.width*.5}},7702(e){e.exports=function(e){return e.y-e.height*e.originY+e.height*.5}},26541(e){e.exports=function(e){return e.x-e.width*e.originX}},87431(e){e.exports=function(e){return e.width*e.originX}},46928(e){e.exports=function(e){return e.height*e.originY}},54380(e){e.exports=function(e){return e.x+e.width-e.width*e.originX}},17717(e){e.exports=function(e){return e.y-e.height*e.originY}},86327(e){e.exports=function(e,t){return e.y=t-e.height+e.height*e.originY,e}},88417(e){e.exports=function(e,t){return e.x=t+e.width*e.originX-e.width*.5,e}},20786(e){e.exports=function(e,t){return e.y=t+e.height*e.originY-e.height*.5,e}},385(e){e.exports=function(e,t){return e.x=t+e.width*e.originX,e}},40136(e){e.exports=function(e,t){return e.x=t-e.width+e.width*e.originX,e}},66737(e){e.exports=function(e,t){return e.y=t+e.height*e.originY,e}},58724(e,t,n){e.exports={CenterOn:n(66786),GetBottom:n(62235),GetBounds:n(72873),GetCenterX:n(35893),GetCenterY:n(7702),GetLeft:n(26541),GetOffsetX:n(87431),GetOffsetY:n(46928),GetRight:n(54380),GetTop:n(17717),SetBottom:n(86327),SetCenterX:n(88417),SetCenterY:n(20786),SetLeft:n(385),SetRight:n(40136),SetTop:n(66737)}},20623(e){e.exports={setCrisp:function(e){return[`optimizeSpeed`,`-moz-crisp-edges`,`-o-crisp-edges`,`-webkit-optimize-contrast`,`optimize-contrast`,`crisp-edges`,`pixelated`].forEach(function(t){e.style[`image-rendering`]=t}),e.style.msInterpolationMode=`nearest-neighbor`,e},setBicubic:function(e){return e.style[`image-rendering`]=`auto`,e.style.msInterpolationMode=`bicubic`,e}}},27919(e,t,n){var r=n(8054),i=n(68703),a=[],o=!1;e.exports=function(){var e=function(e,t,n,c,l){t===void 0&&(t=1),n===void 0&&(n=1),c===void 0&&(c=r.CANVAS),l===void 0&&(l=!1);var u,d=s(c);return d===null?(d={parent:e,canvas:document.createElement(`canvas`),type:c},c===r.CANVAS&&a.push(d),u=d.canvas):(d.parent=e,u=d.canvas),l&&(d.parent=u),u.width=t,u.height=n,o&&c===r.CANVAS&&i.disable(u.getContext(`2d`,{willReadFrequently:!1})),u},t=function(t,n,i){return e(t,n,i,r.CANVAS)},n=function(t,n,i){return e(t,n,i,r.WEBGL)},s=function(e){if(e===void 0&&(e=r.CANVAS),e===r.WEBGL)return null;for(var t=0;t<a.length;t++){var n=a[t];if(!n.parent&&n.type===e)return n}return null},c=function(e){var t=e instanceof HTMLCanvasElement;a.forEach(function(n){(t&&n.canvas===e||!t&&n.parent===e)&&(n.parent=null,n.canvas.width=1,n.canvas.height=1)})},l=function(){var e=0;return a.forEach(function(t){t.parent&&e++}),e};return{create2D:t,create:e,createWebGL:n,disableSmoothing:function(){o=!0},enableSmoothing:function(){o=!1},first:s,free:function(){return a.length-l()},pool:a,remove:c,total:l}}()},68703(e){var t=``;e.exports=function(){var e=function(e){for(var t=[`i`,`webkitI`,`msI`,`mozI`,`oI`],n=0;n<t.length;n++){var r=t[n]+`mageSmoothingEnabled`;if(r in e)return r}return null};return{disable:function(n){return t===``&&(t=e(n)),t&&(n[t]=!1),n},enable:function(n){return t===``&&(t=e(n)),t&&(n[t]=!0),n},getPrefix:e,isEnabled:function(e){return t===null?null:e[t]}}}()},65208(e){e.exports=function(e,t){return t===void 0&&(t=`none`),e.style.msTouchAction=t,e.style[`ms-touch-action`]=t,e.style[`touch-action`]=t,e}},91610(e){e.exports=function(e,t){return t===void 0&&(t=`none`),[`-webkit-`,`-khtml-`,`-moz-`,`-ms-`,``].forEach(function(n){e.style[n+`user-select`]=t}),e.style[`-webkit-touch-callout`]=t,e.style[`-webkit-tap-highlight-color`]=`rgba(0, 0, 0, 0)`,e}},26253(e,t,n){e.exports={CanvasInterpolation:n(20623),CanvasPool:n(27919),Smoothing:n(68703),TouchAction:n(65208),UserSelect:n(91610)}},40987(e,t,n){var r=n(83419),i=n(37589),a=n(1e3),o=n(7537),s=n(87837),c=new r({initialize:function(e,t,n,r){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=255),this.r=0,this.g=0,this.b=0,this.a=255,this._h=0,this._s=0,this._v=0,this._locked=!1,this.gl=[0,0,0,1],this._color=0,this._color32=0,this._rgba=``,this.setTo(e,t,n,r)},transparent:function(){return this._locked=!0,this.red=0,this.green=0,this.blue=0,this.alpha=0,this._locked=!1,this.update(!0)},setTo:function(e,t,n,r,i){return r===void 0&&(r=255),i===void 0&&(i=!0),this._locked=!0,this.red=e,this.green=t,this.blue=n,this.alpha=r,this._locked=!1,this.update(i)},setGLTo:function(e,t,n,r){return r===void 0&&(r=1),this._locked=!0,this.redGL=e,this.greenGL=t,this.blueGL=n,this.alphaGL=r,this._locked=!1,this.update(!0)},setFromRGB:function(e){return this._locked=!0,this.red=e.r,this.green=e.g,this.blue=e.b,e.hasOwnProperty(`a`)&&(this.alpha=e.a),this._locked=!1,this.update(!0)},setFromHSV:function(e,t,n){return o(e,t,n,this)},update:function(e){if(e===void 0&&(e=!1),this._locked)return this;var t=this.r,n=this.g,r=this.b,o=this.a;return this._color=i(t,n,r),this._color32=a(t,n,r,o),this._rgba=`rgba(`+t+`,`+n+`,`+r+`,`+o/255+`)`,e&&s(t,n,r,this),this},updateHSV:function(){var e=this.r,t=this.g,n=this.b;return s(e,t,n,this),this},clone:function(){return new c(this.r,this.g,this.b,this.a)},gray:function(e){return this.setTo(e,e,e)},random:function(e,t){e===void 0&&(e=0),t===void 0&&(t=255);var n=Math.floor(e+Math.random()*(t-e)),r=Math.floor(e+Math.random()*(t-e)),i=Math.floor(e+Math.random()*(t-e));return this.setTo(n,r,i)},randomGray:function(e,t){e===void 0&&(e=0),t===void 0&&(t=255);var n=Math.floor(e+Math.random()*(t-e));return this.setTo(n,n,n)},saturate:function(e){return this.s+=e/100,this},desaturate:function(e){return this.s-=e/100,this},lighten:function(e){return this.v+=e/100,this},darken:function(e){return this.v-=e/100,this},brighten:function(e){var t=this.r,n=this.g,r=this.b;return t=Math.max(0,Math.min(255,t-Math.round(255*-(e/100)))),n=Math.max(0,Math.min(255,n-Math.round(255*-(e/100)))),r=Math.max(0,Math.min(255,r-Math.round(255*-(e/100)))),this.setTo(t,n,r)},color:{get:function(){return this._color}},color32:{get:function(){return this._color32}},rgba:{get:function(){return this._rgba}},redGL:{get:function(){return this.gl[0]},set:function(e){this.gl[0]=Math.min(Math.abs(e),1),this.r=Math.floor(this.gl[0]*255),this.update(!0)}},greenGL:{get:function(){return this.gl[1]},set:function(e){this.gl[1]=Math.min(Math.abs(e),1),this.g=Math.floor(this.gl[1]*255),this.update(!0)}},blueGL:{get:function(){return this.gl[2]},set:function(e){this.gl[2]=Math.min(Math.abs(e),1),this.b=Math.floor(this.gl[2]*255),this.update(!0)}},alphaGL:{get:function(){return this.gl[3]},set:function(e){this.gl[3]=Math.min(Math.abs(e),1),this.a=Math.floor(this.gl[3]*255),this.update()}},red:{get:function(){return this.r},set:function(e){e=Math.floor(Math.abs(e)),this.r=Math.min(e,255),this.gl[0]=e/255,this.update(!0)}},green:{get:function(){return this.g},set:function(e){e=Math.floor(Math.abs(e)),this.g=Math.min(e,255),this.gl[1]=e/255,this.update(!0)}},blue:{get:function(){return this.b},set:function(e){e=Math.floor(Math.abs(e)),this.b=Math.min(e,255),this.gl[2]=e/255,this.update(!0)}},alpha:{get:function(){return this.a},set:function(e){e=Math.floor(Math.abs(e)),this.a=Math.min(e,255),this.gl[3]=e/255,this.update()}},h:{get:function(){return this._h},set:function(e){this._h=e,o(e,this._s,this._v,this)}},s:{get:function(){return this._s},set:function(e){this._s=e,o(this._h,e,this._v,this)}},v:{get:function(){return this._v},set:function(e){this._v=e,o(this._h,this._s,e,this)}}});e.exports=c},92728(e,t,n){var r=n(37589);e.exports=function(e){e===void 0&&(e=1024);var t=[],n=255,i,a=255,o=0,s=0;for(i=0;i<=n;i++)t.push({r:a,g:i,b:s,color:r(a,i,s)});for(o=255,i=n;i>=0;i--)t.push({r:i,g:o,b:s,color:r(i,o,s)});for(a=0,i=0;i<=n;i++,o--)t.push({r:a,g:o,b:i,color:r(a,o,i)});for(o=0,s=255,i=0;i<=n;i++,s--,a++)t.push({r:a,g:o,b:s,color:r(a,o,s)});if(e===1024)return t;var c=[],l=0,u=1024/e;for(i=0;i<e;i++)c.push(t[Math.floor(l)]),l+=u;return c}},91588(e){e.exports=function(e){var t={r:e>>16&255,g:e>>8&255,b:e&255,a:255};return e>16777215&&(t.a=e>>>24),t}},62957(e){e.exports=function(e){var t=e.toString(16);return t.length===1?`0`+t:t}},37589(e){e.exports=function(e,t,n){return e<<16|t<<8|n}},1e3(e){e.exports=function(e,t,n,r){return r<<24|e<<16|t<<8|n}},62183(e,t,n){var r=n(40987),i=n(89528);e.exports=function(e,t,n,a){a||=new r;var o=n,s=n,c=n;if(t!==0){var l=n<.5?n*(1+t):n+t-n*t,u=2*n-l;o=i(u,l,e+1/3),s=i(u,l,e),c=i(u,l,e-1/3)}return a.setGLTo(o,s,c,1)}},27939(e,t,n){var r=n(7537);e.exports=function(e,t){e===void 0&&(e=1),t===void 0&&(t=1);for(var n=[],i=0;i<=359;i++)n.push(r(i/359,e,t));return n}},7537(e,t,n){var r=n(37589);function i(e,t,n,r){var i=(e+t*6)%6,a=Math.min(i,4-i,1);return Math.round(255*(r-r*n*Math.max(0,a)))}e.exports=function(e,t,n,a){t===void 0&&(t=1),n===void 0&&(n=1);var o=i(5,e,t,n),s=i(3,e,t,n),c=i(1,e,t,n);return a?a.setTo?a.setTo(o,s,c,a.alpha,!0):(a.r=o,a.g=s,a.b=c,a.color=r(o,s,c),a):{r:o,g:s,b:c,color:r(o,s,c)}}},70238(e,t,n){var r=n(40987);e.exports=function(e,t){t||=new r,e=e.replace(/^(?:#|0x)?([a-f\d])([a-f\d])([a-f\d])$/i,function(e,t,n,r){return t+t+n+n+r+r});var n=/^(?:#|0x)?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);if(n){var i=parseInt(n[1],16),a=parseInt(n[2],16),o=parseInt(n[3],16);t.setTo(i,a,o)}return t}},89528(e){e.exports=function(e,t,n){return n<0&&(n+=1),n>1&&--n,n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}},30100(e,t,n){var r=n(40987),i=n(90664);e.exports=function(e,t){var n=i(e);return t?t.setTo(n.r,n.g,n.b,n.a):new r(n.r,n.g,n.b,n.a)}},90664(e){e.exports=function(e){return e>16777215?{a:e>>>24,r:e>>16&255,g:e>>8&255,b:e&255}:{a:255,r:e>>16&255,g:e>>8&255,b:e&255}}},13699(e,t,n){var r=n(28915),i=n(37589),a=n(7537),o=function(e,t,n,a,o,s,c,l){c===void 0&&(c=100),l===void 0&&(l=0);var u=l/c,d=r(e,a,u),f=r(t,o,u),p=r(n,s,u);return{r:d,g:f,b:p,a:255,color:i(d,f,p)}},s=function(e,t,n,i,o,s,c,l,u){if(u===void 0&&(u=0),u===0){var d=e-i;d>.5?--e:d<-.5&&(e+=1)}else u>0?e>i&&--e:e<i&&(e+=1);var f=l/c;return a(r(e,i,f),r(t,o,f),r(n,s,f))};e.exports={RGBWithRGB:o,HSVWithHSV:s,ColorWithRGB:function(e,t,n,r,i,a){return i===void 0&&(i=100),a===void 0&&(a=0),o(e.r,e.g,e.b,t,n,r,i,a)},ColorWithColor:function(e,t,n,r,i,a){return n===void 0&&(n=100),r===void 0&&(r=0),i?s(e.h,e.s,e.v,t.h,t.s,t.v,n,r,a):o(e.r,e.g,e.b,t.r,t.g,t.b,n,r)}}},68957(e,t,n){var r=n(40987);e.exports=function(e,t){return t?t.setTo(e.r,e.g,e.b,e.a):new r(e.r,e.g,e.b,e.a)}},87388(e,t,n){var r=n(40987);e.exports=function(e,t){t||=new r;var n=/^rgba?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d+(?:\.\d+)?))?\s*\)$/.exec(e.toLowerCase());if(n){var i=parseInt(n[1],10),a=parseInt(n[2],10),o=parseInt(n[3],10),s=n[4]===void 0?1:parseFloat(n[4]);t.setTo(i,a,o,s*255)}return t}},87837(e){e.exports=function(e,t,n,r){r===void 0&&(r={h:0,s:0,v:0}),e/=255,t/=255,n/=255;var i=Math.min(e,t,n),a=Math.max(e,t,n),o=a-i,s=0,c=a===0?0:o/a,l=a;return a!==i&&(a===e?s=(t-n)/o+(t<n?6:0):a===t?s=(n-e)/o+2:a===n&&(s=(e-t)/o+4),s/=6),r.hasOwnProperty(`_h`)?(r._h=s,r._s=c,r._v=l):(r.h=s,r.s=c,r.v=l),r}},75723(e,t,n){var r=n(62957);e.exports=function(e,t,n,i,a){return i===void 0&&(i=255),a===void 0&&(a=`#`),a===`#`?`#`+((1<<24)+(e<<16)+(t<<8)+n).toString(16).slice(1,7):`0x`+r(i)+r(e)+r(t)+r(n)}},85386(e,t,n){var r=n(30976),i=n(40987);e.exports=function(e,t){return e===void 0&&(e=0),t===void 0&&(t=255),new i(r(e,t),r(e,t),r(e,t))}},80333(e,t,n){var r=n(70238),i=n(30100),a=n(68957),o=n(87388);e.exports=function(e,t){switch(typeof e){case`string`:return e.substr(0,3).toLowerCase()===`rgb`?o(e,t):r(e,t);case`number`:return i(e,t);case`object`:return a(e,t)}}},3956(e,t,n){var r=n(40987);r.ColorSpectrum=n(92728),r.ColorToRGBA=n(91588),r.ComponentToHex=n(62957),r.GetColor=n(37589),r.GetColor32=n(1e3),r.HexStringToColor=n(70238),r.HSLToColor=n(62183),r.HSVColorWheel=n(27939),r.HSVToRGB=n(7537),r.HueToComponent=n(89528),r.IntegerToColor=n(30100),r.IntegerToRGB=n(90664),r.Interpolate=n(13699),r.ObjectToColor=n(68957),r.RandomRGB=n(85386),r.RGBStringToColor=n(87388),r.RGBToHSV=n(87837),r.RGBToString=n(75723),r.ValueToColor=n(80333),e.exports=r},27460(e,t,n){e.exports={Align:n(71926),BaseShader:n(73894),Bounds:n(58724),Canvas:n(26253),Color:n(3956),ColorBand:n(34664),ColorMatrix:n(89422),ColorRamp:n(73043),Masks:n(69781),RGB:n(51767)}},80661(e,t,n){e.exports=new(n(83419))({initialize:function(e,t){this.geometryMask=t},setShape:function(e){return this.geometryMask=e,this},preRenderCanvas:function(e,t,n){var r=this.geometryMask;e.currentContext.save(),r.renderCanvas(e,r,n,null,null,!0),e.currentContext.clip()},postRenderCanvas:function(e){e.currentContext.restore()},destroy:function(){this.geometryMask=null}})},69781(e,t,n){e.exports={GeometryMask:n(80661)}},73894(e,t,n){e.exports=new(n(83419))({initialize:function(e,t,n){n===void 0&&(n={}),this.key=e,this.glsl=t,this.metadata=n}})},40366(e){e.exports=function(e,t){var n;if(t)typeof t==`string`?n=document.getElementById(t):typeof t==`object`&&t.nodeType===1&&(n=t);else if(e.parentElement||t===null)return e;return n||=document.body,n.appendChild(e),e}},83719(e,t,n){var r=n(40366);e.exports=function(e){var t=e.config;if(!(!t.parent||!t.domCreateContainer)){var n=document.createElement(`div`);n.style.cssText=[`display: block;`,`width: `+e.scale.width+`px;`,`height: `+e.scale.height+`px;`,`padding: 0; margin: 0;`,`position: absolute;`,`overflow: hidden;`,`pointer-events: `+t.domPointerEvents+`;`,`transform: scale(1);`,`transform-origin: left top;`].join(` `),e.domContainer=n,r(n,t.parent)}}},57264(e,t,n){var r=n(25892);e.exports=function(e){if(document.readyState===`complete`||document.readyState===`interactive`){e();return}var t=function(){document.removeEventListener(`deviceready`,t,!0),document.removeEventListener(`DOMContentLoaded`,t,!0),window.removeEventListener(`load`,t,!0),e()};document.body?r.cordova?document.addEventListener(`deviceready`,t,!1):(document.addEventListener(`DOMContentLoaded`,t,!0),window.addEventListener(`load`,t,!0)):window.setTimeout(t,20)}},57811(e){e.exports=function(e){if(!e)return window.innerHeight;var t=Math.abs(window.orientation),n={w:0,h:0},r=document.createElement(`div`);return r.setAttribute(`style`,`position: fixed; height: 100vh; width: 0; top: 0`),document.documentElement.appendChild(r),n.w=t===90?r.offsetHeight:window.innerWidth,n.h=t===90?window.innerWidth:r.offsetHeight,document.documentElement.removeChild(r),r=null,Math.abs(window.orientation)===90?n.w:n.h}},45818(e,t,n){var r=n(13560);e.exports=function(e,t){var n=window.screen,i=n?n.orientation||n.mozOrientation||n.msOrientation:!1;if(i&&typeof i.type==`string`)return i.type;if(typeof i==`string`)return i;if(typeof window.orientation==`number`)return window.orientation===0||window.orientation===180?r.ORIENTATION.PORTRAIT:r.ORIENTATION.LANDSCAPE;if(window.matchMedia){if(window.matchMedia(`(orientation: portrait)`).matches)return r.ORIENTATION.PORTRAIT;if(window.matchMedia(`(orientation: landscape)`).matches)return r.ORIENTATION.LANDSCAPE}else return t>e?r.ORIENTATION.PORTRAIT:r.ORIENTATION.LANDSCAPE}},74403(e){e.exports=function(e){var t;return e!==``&&(typeof e==`string`?t=document.getElementById(e):e&&e.nodeType===1&&(t=e)),t||=document.body,t}},56836(e){e.exports=function(e){var t=``;try{window.DOMParser?t=new DOMParser().parseFromString(e,`text/xml`):(t=new ActiveXObject(`Microsoft.XMLDOM`),t.loadXML(e))}catch{t=null}return!t||!t.documentElement||t.getElementsByTagName(`parsererror`).length?null:t}},35846(e){e.exports=function(e){e.parentNode&&e.parentNode.removeChild(e)}},43092(e,t,n){var r=n(83419),i=n(29747);e.exports=new r({initialize:function(){this.isRunning=!1,this.callback=i,this.isSetTimeOut=!1,this.timeOutID=null,this.delay=0;var e=this;this.step=function t(n){e.callback(n),e.isRunning&&(e.timeOutID=window.requestAnimationFrame(t))},this.stepTimeout=function t(){e.isRunning&&(e.timeOutID=window.setTimeout(t,e.delay)),e.callback(window.performance.now())}},start:function(e,t,n){this.isRunning||(this.callback=e,this.isSetTimeOut=t,this.delay=n,this.isRunning=!0,this.timeOutID=t?window.setTimeout(this.stepTimeout,0):window.requestAnimationFrame(this.step))},stop:function(){this.isRunning=!1,this.isSetTimeOut?clearTimeout(this.timeOutID):window.cancelAnimationFrame(this.timeOutID)},destroy:function(){this.stop(),this.callback=i}})},84902(e,t,n){e.exports={AddToDOM:n(40366),DOMContentLoaded:n(57264),GetInnerHeight:n(57811),GetScreenOrientation:n(45818),GetTarget:n(74403),ParseXML:n(56836),RemoveFromDOM:n(35846),RequestAnimationFrame:n(43092)}},47565(e,t,n){var r=n(83419),i=n(50792),a=n(37277),o=new r({Extends:i,initialize:function(){i.call(this)},shutdown:function(){this.removeAllListeners()},destroy:function(){this.removeAllListeners()}});a.register(`EventEmitter`,o,`events`),e.exports=o},93055(e,t,n){e.exports={EventEmitter:n(47565)}},10189(e,t,n){var r=n(83419),i=n(13045);e.exports=new r({Extends:i,initialize:function(e,t){t===void 0&&(t=1),i.call(this,e,`FilterBarrel`),this.amount=t}})},16762(e,t,n){var r=n(83419),i=n(13045);e.exports=new r({Extends:i,initialize:function(e,t,n,r,a){t===void 0&&(t=`__WHITE`),n===void 0&&(n=0),r===void 0&&(r=1),a===void 0&&(a=[1,1,1,1]),i.call(this,e,`FilterBlend`),this.glTexture,this.blendMode=n,this.amount=r,this.color=a,this.setTexture(t)},setTexture:function(e){var t=this.camera.scene.sys.textures.getFrame(e);return t&&(this.glTexture=t.glTexture),this}})},37597(e,t,n){var r=n(83419),i=n(13045);e.exports=new r({Extends:i,initialize:function(e,t){i.call(this,e,`FilterBlocky`),this.size={x:4,y:4},this.offset={x:0,y:0},t&&(t.size!==void 0&&(typeof t.size==`number`?(this.size.x=t.size,this.size.y=t.size):(this.size.x=t.size.x,this.size.y=t.size.y)),t.offset!==void 0&&(typeof t.offset==`number`?(this.offset.x=t.offset,this.offset.y=t.offset):(this.offset.x=t.offset.x,this.offset.y=t.offset.y)))}})},88344(e,t,n){var r=n(83419),i=n(13045);e.exports=new r({Extends:i,initialize:function(e,t,n,r,a,o,s){t===void 0&&(t=0),n===void 0&&(n=2),r===void 0&&(r=2),a===void 0&&(a=1),s===void 0&&(s=4),i.call(this,e,`FilterBlur`),this.quality=t,this.x=n,this.y=r,this.strength=a,this.glcolor=[1,1,1],o!=null&&(this.color=o),this.steps=s},color:{get:function(){var e=this.glcolor;return(e[0]*255<<16)+(e[1]*255<<8)+(e[2]*255|0)},set:function(e){var t=this.glcolor;t[0]=(e>>16&255)/255,t[1]=(e>>8&255)/255,t[2]=(e&255)/255}},getPadding:function(){var e=this.paddingOverride;if(e)return this.currentPadding.setTo(e.x,e.y,e.width,e.height),e;var t=this.quality,n=t===0?1.333:t===1?3.2307692308:5.176470588235294,r=this.steps*this.strength*n,i=Math.ceil(this.x*r),a=Math.ceil(this.y*r);return this.currentPadding.setTo(-i,-a,i*2,a*2),this.currentPadding}})},47564(e,t,n){var r=n(83419),i=n(13045);e.exports=new r({Extends:i,initialize:function(e,t,n,r,a,o,s,c){t===void 0&&(t=.5),n===void 0&&(n=1),r===void 0&&(r=.2),a===void 0&&(a=!1),o===void 0&&(o=1),s===void 0&&(s=1),c===void 0&&(c=1),i.call(this,e,`FilterBokeh`),this.radius=t,this.amount=n,this.contrast=r,this.isTiltShift=a,this.blurX=o,this.blurY=s,this.strength=c},getPadding:function(){var e=this.paddingOverride;if(e)return this.currentPadding.setTo(e.x,e.y,e.width,e.height),e;var t=Math.ceil(this.camera.height*this.radius*.021426096060426905);return this.currentPadding.setTo(-t,-t,t*2,t*2),this.currentPadding}})},77011(e,t,n){var r=n(83419),i=n(13045),a=n(89422);e.exports=new r({Extends:i,initialize:function(e){i.call(this,e,`FilterColorMatrix`),this.colorMatrix=new a},destroy:function(){this.colorMatrix=null,i.prototype.destroy.call(this)}})},95200(e,t,n){var r=n(83419),i=n(13045),a=n(89422);e.exports=new r({Extends:i,initialize:function(e,t){i.call(this,e,`FilterCombineColorMatrix`),this.glTexture,this.colorMatrixSelf=new a,this.colorMatrixTransfer=new a,this.additions=[1,1,1,0],this.multiplications=[0,0,0,1],this.setTexture(t||`__WHITE`)},setTexture:function(e){var t=e instanceof Phaser.Textures.Texture?e:this.camera.scene.sys.textures.getFrame(e);return t&&(this.glTexture=t.glTexture),this},setupAlphaTransfer:function(e,t,n,r,i,a){var o=this.colorMatrixSelf,s=this.colorMatrixTransfer;o.reset(),s.reset(),this.additions=[1,1,1,0],this.multiplications=[0,0,0,1],e||o.black(),t||s.black(),i?o.brightnessToAlphaInverse(!0):n&&o.brightnessToAlpha(!0),a?s.brightnessToAlphaInverse(!0):r&&s.brightnessToAlpha(!0)},destroy:function(){this.colorMatrixSelf=null,this.colorMatrixTransfer=null,i.prototype.destroy.call(this)}})},13045(e,t,n){var r=n(83419),i=n(87841);e.exports=new r({initialize:function(e,t){this.active=!0,this.camera=e,this.renderNode=t,this.paddingOverride=new i,this.currentPadding=new i,this.allowBaseDraw=!0,this.ignoreDestroy=!1},getPadding:function(){return this.paddingOverride||this.currentPadding},setPaddingOverride:function(e,t,n,r){return e===null?(this.paddingOverride=null,this):(e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=0),this.paddingOverride=new i(e,t,n-e,r-t),this)},setActive:function(e){return this.active=e,this},destroy:function(){this.active=!1,this.renderNode=null,this.camera=null}})},16898(e,t,n){var r=n(83419),i=n(13045);e.exports=new r({Extends:i,initialize:function(e,t,n,r){t===void 0&&(t=`__WHITE`),n===void 0&&(n=.005),r===void 0&&(r=.005),i.call(this,e,`FilterDisplacement`),this.x=n,this.y=r,this.glTexture,this.setTexture(t)},setTexture:function(e){var t=this.camera.scene.sys.textures.getFrame(e);return t&&(this.glTexture=t.glTexture),this},getPadding:function(){var e=this.paddingOverride;if(e)return this.currentPadding.setTo(e.x,e.y,e.width,e.height),e;var t=this.camera,n=Math.ceil(t.width*this.x*.5),r=Math.ceil(t.height*this.y*.5);return this.currentPadding.setTo(-n,-r,n*2,r*2),this.currentPadding}})},42652(e,t,n){var r=n(83419),i=n(13045);e.exports=new r({Extends:i,initialize:function(e,t,n,r,a,o,s,c){n===void 0&&(n=4),r===void 0&&(r=0),a===void 0&&(a=1),o===void 0&&(o=!1),s===void 0&&(s=e.scene.sys.game.config.glowQuality),c===void 0&&(c=e.scene.sys.game.config.glowDistance),i.call(this,e,`FilterGlow`),this.outerStrength=n,this.innerStrength=r,this.scale=a,this.knockout=o,this._quality=Math.max(Math.round(s),1),this._distance=Math.max(Math.round(c),1),this.glcolor=[1,1,1,1],t!==void 0&&(this.color=t)},color:{get:function(){var e=this.glcolor;return(e[0]*255<<16)+(e[1]*255<<8)+(e[2]*255|0)},set:function(e){var t=this.glcolor;t[0]=(e>>16&255)/255,t[1]=(e>>8&255)/255,t[2]=(e&255)/255}},distance:{get:function(){return this._distance}},quality:{get:function(){return this._quality}},getPadding:function(){var e=this.paddingOverride;if(e)return this.currentPadding.setTo(e.x,e.y,e.width,e.height),e;var t=this.currentPadding,n=Math.ceil(this.distance*this.scale);return t.left=-n,t.top=-n,t.right=n,t.bottom=n,t}})},43927(e,t,n){var r=n(83419),i=n(13045),a=n(73043);e.exports=new r({Extends:i,initialize:function(e,t){t||={};var n=e.scene;i.call(this,e,`FilterGradientMap`);var r=t.ramp;r||={colorStart:0,colorEnd:16777215},r instanceof a||(r=new a(n,r,!0)),this.ramp=r,this.dither=!!t.dither,this.color=[0,0,0,0],t.color&&(this.color[0]=t.color[0]||0,this.color[1]=t.color[1]||0,this.color[2]=t.color[2]||0,this.color[3]=t.color[3]||0),this.colorFactor=[.3,.6,.1,0],t.colorFactor&&(this.colorFactor[0]=t.colorFactor[0]||0,this.colorFactor[1]=t.colorFactor[1]||0,this.colorFactor[2]=t.colorFactor[2]||0,this.colorFactor[3]=t.colorFactor[3]||0),this.unpremultiply=t.unpremultiply===void 0?!0:t.unpremultiply,this.alpha=t.alpha===void 0?1:t.alpha}})},84714(e,t,n){var r=n(83419),i=n(13045),a=n(37867),o=n(61340);e.exports=new r({Extends:i,initialize:function(e,t){i.call(this,e,`FilterImageLight`),this.normalGlTexture,this.environmentGlTexture,this.viewMatrix=new a,this.modelRotation=t.modelRotation||0,this.modelRotationSource=t.modelRotationSource||null,this.bulge=t.bulge||0,this.colorFactor=t.colorFactor||[1,1,1],this._tempMatrix=new o,this._tempParentMatrix=new o,this.setEnvironmentMap(t.environmentMap||`__WHITE`),this.setNormalMap(t.normalMap||`__NORMAL`),t.viewMatrix&&this.viewMatrix.set(t.viewMatrix)},setEnvironmentMap:function(e){var t=e instanceof Phaser.Textures.Texture?e:this.camera.scene.sys.textures.getFrame(e);return t&&(this.environmentGlTexture=t.glTexture),this},setNormalMap:function(e){var t=e instanceof Phaser.Textures.Texture?e:this.camera.scene.sys.textures.getFrame(e);return t&&(this.normalGlTexture=t.glTexture),this},setNormalMapFromGameObject:function(e){var t=e.texture.dataSource[0];return t&&(this.normalGlTexture=t.glTexture),this},getModelRotation:function(){return this.modelRotationSource?typeof this.modelRotationSource==`function`?this.modelRotationSource():this.modelRotationSource.hasTransformComponent?this.modelRotationSource.getWorldTransformMatrix(this._tempMatrix,this._tempParentMatrix).rotationNormalized:this.modelRotation:this.modelRotation}})},51890(e,t,n){var r=n(83419),i=n(13045),a=n(40987);e.exports=new r({Extends:i,initialize:function(e,t){t===void 0&&(t={}),i.call(this,e,`FilterKey`),this.color=[1,1,1,1],t.color!==void 0&&this.setColor(t.color),t.alpha!==void 0&&this.setAlpha(t.alpha),this.isolate=!1,t.isolate!==void 0&&(this.isolate=t.isolate),this.threshold=.0625,t.threshold!==void 0&&(this.threshold=t.threshold),this.feather=0,t.feather!==void 0&&(this.feather=t.feather)},setAlpha:function(e){return this.color[3]=e,this},setColor:function(e){var t=this.color[3];if(typeof e==`number`){var n=a.IntegerToRGB(e);this.color=[n.r/255,n.g/255,n.b/255,t]}else if(typeof e==`string`){var r=a.HexStringToColor(e);this.color=[r.redGL,r.greenGL,r.blueGL,t]}else Array.isArray(e)?this.color=[e[0],e[1],e[2],t]:e instanceof a&&(this.color=[e.redGL,e.greenGL,e.blueGL,t]);return this}})},97797(e,t,n){var r=n(83419),i=n(45650),a=n(13045);e.exports=new r({Extends:a,initialize:function(e,t,n,r,i,o){t===void 0&&(t=`__WHITE`),n===void 0&&(n=!1),o===void 0&&(o=1),a.call(this,e,`FilterMask`),this.glTexture,this._dynamicTexture=null,this.maskGameObject=null,this.invert=n,this.autoUpdate=!0,this.needsUpdate=!1,this.viewTransform=i||`world`,this.viewCamera=r,this.scaleFactor=o,typeof t==`string`?this.setTexture(t):this.setGameObject(t)},updateDynamicTexture:function(e,t){var n=this.scaleFactor,r=e*n,a=t*n,o=this.maskGameObject;if(o){if(this._dynamicTexture)this._dynamicTexture.width!==r||this._dynamicTexture.height!==a?this._dynamicTexture.setSize(r,a,!1):this._dynamicTexture.clear();else{var s=this.camera.scene.sys.textures;this._dynamicTexture=s.addDynamicTexture(i(),r,a,!1)}this.glTexture=this._dynamicTexture.get().glTexture;var c=this.viewCamera||o.scene.renderer.currentViewCamera;this._dynamicTexture.capture(o,{transform:this.viewTransform,camera:c}),this._dynamicTexture.render(),this.needsUpdate=!1}},setGameObject:function(e){return this.maskGameObject=e,this.needsUpdate=!0,this},setTexture:function(e){var t=this.camera.scene.sys.textures.getFrame(e);return t&&(this.maskGameObject=null,this.glTexture=t.glTexture),this},destroy:function(){this._dynamicTexture&&this._dynamicTexture.destroy(),this.maskGameObject=null,this._dynamicTexture=null,a.prototype.destroy.call(this)}})},37911(e,t,n){var r=n(83419),i=n(13045),a=n(37867),o=n(25836);e.exports=new r({Extends:i,initialize:function(e,t){t||={},i.call(this,e,`FilterNormalTools`),this._rotation=0,this.viewMatrix=new a,this.setRotation(t.rotation||0),this.rotationSource=t.rotationSource||null,this.facingPower=t.facingPower||1,this.outputRatio=t.outputRatio||!1,this.ratioVector=new o(0,0,1),t.ratioVector&&this.ratioVector.set(t.ratioVector[0],t.ratioVector[1],t.ratioVector[2]),this.ratioRadius=t.ratioRadius||1},getRotation:function(){if(this.rotationSource){if(typeof this.rotationSource==`function`)return this.rotationSource();if(this.rotationSource.hasTransformComponent)return this.rotationSource.getWorldTransformMatrix().rotationNormalized}return this._rotation},setRotation:function(e){return this.viewMatrix.identity().rotateZ(e),this._rotation=e,this},updateRotation:function(){if(this.rotationSource){var e=this.getRotation();this.viewMatrix.identity().rotateZ(e),this._rotation=e}return this}})},6379(e,t,n){var r=n(83419),i=n(13045);e.exports=new r({Extends:i,initialize:function(e,t){t===void 0&&(t={}),i.call(this,e,`FilterPanoramaBlur`),this.radius=t.radius||1,this.samplesX=t.samplesX||32,this.samplesY=t.samplesY||16,this.power=t.power||1}})},2195(e,t,n){var r=n(83419),i=n(53427),a=n(13045),o=n(16762),s=new r({Extends:a,initialize:function(e){a.call(this,e,`FilterParallelFilters`),this.top=new i(e),this.bottom=new i(e),this.blend=new o(e)}});i.prototype.addParallelFilters=function(){return this.add(new s(this.camera))},e.exports=s},29861(e,t,n){var r=n(83419),i=n(13045);e.exports=new r({Extends:i,initialize:function(e,t){t===void 0&&(t=1),i.call(this,e,`FilterPixelate`),this.amount=t}})},14366(e,t,n){var r=n(83419),i=n(13045);e.exports=new r({Extends:i,initialize:function(e,t){t||={},i.call(this,e,`FilterQuantize`),this.steps=[8,8,8,8],t.steps&&(this.steps[0]=t.steps[0],this.steps[1]=t.steps[1],this.steps[2]=t.steps[2],this.steps[3]=t.steps[3]),this.gamma=[1,1,1,1],t.gamma&&(this.gamma[0]=t.gamma[0],this.gamma[1]=t.gamma[1],this.gamma[2]=t.gamma[2],this.gamma[3]=t.gamma[3]),this.offset=[0,0,0,0],t.offset&&(this.offset[0]=t.offset[0],this.offset[1]=t.offset[1],this.offset[2]=t.offset[2],this.offset[3]=t.offset[3]),this.mode=t.mode||0,this.dither=!!t.dither}})},63785(e,t,n){var r=n(83419),i=n(13045);e.exports=new r({Extends:i,initialize:function(e,t,n){n===void 0&&(n=null),i.call(this,e,`FilterSampler`),this.allowBaseDraw=!1,this.callback=t,this.region=n}})},62229(e,t,n){var r=n(83419),i=n(13045);e.exports=new r({Extends:i,initialize:function(e,t,n,r,a,o,s,c){t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=.1),a===void 0&&(a=1),s===void 0&&(s=6),c===void 0&&(c=1),i.call(this,e,`FilterShadow`),this.x=t,this.y=n,this.decay=r,this.power=a,this.glcolor=[0,0,0,1],this.samples=s,this.intensity=c,o!==void 0&&(this.color=o)},color:{get:function(){var e=this.glcolor;return(e[0]*255<<16)+(e[1]*255<<8)+(e[2]*255|0)},set:function(e){var t=this.glcolor;t[0]=(e>>16&255)/255,t[1]=(e>>8&255)/255,t[2]=(e&255)/255}},getPadding:function(){var e=this.paddingOverride;if(e)return this.currentPadding.setTo(e.x,e.y,e.width,e.height),e;var t=this.camera,n=this.decay*this.intensity,r=Math.ceil(Math.abs(this.x)*t.width*n),i=Math.ceil(Math.abs(this.y)*t.height*n);return this.currentPadding.setTo(-r,-i,r*2,i*2),this.currentPadding}})},99534(e,t,n){var r=n(83419),i=n(13045);e.exports=new r({Extends:i,initialize:function(e,t,n,r){i.call(this,e,`FilterThreshold`),this.edge1=[.5,.5,.5,.5],this.edge2=[.5,.5,.5,.5],this.invert=[!1,!1,!1,!1],this.setEdge(t,n),this.setInvert(r)},setEdge:function(e,t){e===void 0&&(e=.5),typeof e==`number`&&(e=[e,e,e,e]),this.edge1[0]=e[0],this.edge1[1]=e[1],this.edge1[2]=e[2],this.edge1[3]=e[3],t===void 0&&(t=e),typeof t==`number`&&(t=[t,t,t,t]),this.edge2[0]=t[0],this.edge2[1]=t[1],this.edge2[2]=t[2],this.edge2[3]=t[3];for(var n=0;n<4;n++)if(this.edge1[n]>this.edge2[n]){var r=this.edge1[n];this.edge1[n]=this.edge2[n],this.edge2[n]=r}return this},setInvert:function(e){return e===void 0&&(e=!1),typeof e==`boolean`&&(e=[e,e,e,e]),this.invert[0]=e[0],this.invert[1]=e[1],this.invert[2]=e[2],this.invert[3]=e[3],this}})},20263(e,t,n){var r=n(83419),i=n(13045),a=n(40987);e.exports=new r({Extends:i,initialize:function(e,t,n,r,o,s,c){t===void 0&&(t=.5),n===void 0&&(n=.5),r===void 0&&(r=.5),o===void 0&&(o=.5),s===void 0&&(s=0),c===void 0&&(c=0),i.call(this,e,`FilterVignette`),this.x=t,this.y=n,this.radius=r,this.strength=o,this.color=new a,this.blendMode=c,this.setColor(s)},setColor:function(e){return typeof e==`number`?a.IntegerToColor(e,this.color):typeof e==`string`?a.HexStringToColor(e,this.color):e.setTo?this.color.setTo(e.red,e.green,e.blue,e.alpha):e?this.color.setTo(e.r||0,e.g||0,e.b||0,e.a||255):this.color.setTo(0,0,0,255),this}})},90002(e,t,n){var r=n(83419),i=n(13045),a=n(79237);e.exports=new r({Extends:i,initialize:function(e,t,n,r,a,o){t===void 0&&(t=.1),i.call(this,e,`FilterWipe`),this.progress=0,this.wipeWidth=t,this.direction=n||0,this.axis=r||0,this.reveal=a||0,this.wipeTexture=null,this.setTexture(o)},setWipeWidth:function(e){return e===void 0&&(e=.1),this.wipeWidth=e,this},setLeftToRight:function(){return this.direction=0,this.axis=0,this},setRightToLeft:function(){return this.direction=1,this.axis=0,this},setTopToBottom:function(){return this.direction=1,this.axis=1,this},setBottomToTop:function(){return this.direction=0,this.axis=1,this},setWipeEffect:function(){return this.reveal=0,this.progress=0,this},setRevealEffect:function(){return this.setTexture(),this.reveal=1,this.progress=0,this},setTexture:function(e){return e===void 0&&(e=`__DEFAULT`),e instanceof a?this.wipeTexture=e:this.wipeTexture=this.camera.scene.sys.textures.get(e)||this.camera.scene.sys.textures.get(`__DEFAULT`),this},setProgress:function(e){return this.progress=e,this}})},11889(e,t,n){e.exports={Controller:n(13045),Barrel:n(10189),Blend:n(16762),Blocky:n(37597),Blur:n(88344),Bokeh:n(47564),ColorMatrix:n(77011),CombineColorMatrix:n(95200),Displacement:n(16898),Glow:n(42652),GradientMap:n(43927),ImageLight:n(84714),Key:n(51890),Mask:n(97797),NormalTools:n(37911),PanoramaBlur:n(6379),ParallelFilters:n(2195),Pixelate:n(29861),Quantize:n(14366),Sampler:n(63785),Shadow:n(62229),Threshold:n(99534),Vignette:n(20263),Wipe:n(90002)}},25305(e,t,n){var r=n(10312),i=n(23568);e.exports=function(e,t,n){t.x=i(n,`x`,0),t.y=i(n,`y`,0),t.depth=i(n,`depth`,0),t.flipX=i(n,`flipX`,!1),t.flipY=i(n,`flipY`,!1);var a=i(n,`scale`,null);typeof a==`number`?t.setScale(a):a!==null&&(t.scaleX=i(a,`x`,1),t.scaleY=i(a,`y`,1));var o=i(n,`scrollFactor`,null);typeof o==`number`?t.setScrollFactor(o):o!==null&&(t.scrollFactorX=i(o,`x`,1),t.scrollFactorY=i(o,`y`,1)),t.rotation=i(n,`rotation`,0);var s=i(n,`angle`,null);s!==null&&(t.angle=s),t.alpha=i(n,`alpha`,1);var c=i(n,`origin`,null);if(typeof c==`number`)t.setOrigin(c);else if(c!==null){var l=i(c,`x`,.5),u=i(c,`y`,.5);t.setOrigin(l,u)}return t.blendMode=i(n,`blendMode`,r.NORMAL),t.visible=i(n,`visible`,!0),i(n,`add`,!0)&&e.sys.displayList.add(t),t.preUpdate&&e.sys.updateList.add(t),t}},13059(e,t,n){var r=n(23568);e.exports=function(e,t){var n=r(t,`anims`,null);if(n===null)return e;if(typeof n==`string`)e.anims.play(n);else if(typeof n==`object`){var i=e.anims,a=r(n,`key`,void 0);if(a){var o=r(n,`startFrame`,void 0),s=r(n,`delay`,0),c=r(n,`repeat`,0),l=r(n,`repeatDelay`,0),u=r(n,`yoyo`,!1),d=r(n,`play`,!1),f=r(n,`delayedPlay`,0),p={key:a,delay:s,repeat:c,repeatDelay:l,yoyo:u,startFrame:o};d?i.play(p):f>0?i.playAfterDelay(p,f):i.load(p)}}return e}},8050(e,t,n){var r=n(83419),i=n(73162),a=n(37277),o=n(51708),s=n(44594),c=n(19186),l=new r({Extends:i,initialize:function(e){i.call(this,e),this.sortChildrenFlag=!1,this.scene=e,this.systems=e.sys,this.events=e.sys.events,this.addCallback=this.addChildCallback,this.removeCallback=this.removeChildCallback,this.events.once(s.BOOT,this.boot,this),this.events.on(s.START,this.start,this)},boot:function(){this.events.once(s.DESTROY,this.destroy,this)},addChildCallback:function(e){e.displayList&&e.displayList!==this&&e.removeFromDisplayList(),e.parentContainer&&e.parentContainer.remove(e),e.displayList||(this.queueDepthSort(),e.displayList=this,e.emit(o.ADDED_TO_SCENE,e,this.scene),this.events.emit(s.ADDED_TO_SCENE,e,this.scene))},removeChildCallback:function(e){this.queueDepthSort(),e.displayList=null,e.emit(o.REMOVED_FROM_SCENE,e,this.scene),this.events.emit(s.REMOVED_FROM_SCENE,e,this.scene)},start:function(){this.events.once(s.SHUTDOWN,this.shutdown,this)},queueDepthSort:function(){this.sortChildrenFlag=!0},depthSort:function(){this.sortChildrenFlag&&=(c(this.list,this.sortByDepth),!1)},sortByDepth:function(e,t){return e._depth-t._depth},getChildren:function(){return this.list},shutdown:function(){for(var e=this.list,t=e.length;t--;)e[t]&&e[t].destroy(!0);e.length=0,this.events.off(s.SHUTDOWN,this.shutdown,this)},destroy:function(){this.shutdown(),this.events.off(s.START,this.start,this),this.scene=null,this.systems=null,this.events=null}});a.register(`DisplayList`,l,`displayList`),e.exports=l},95643(e,t,n){var r=n(83419),i=n(31401),a=n(53774),o=n(45893),s=n(50792),c=n(51708),l=n(44594),u=new r({Extends:s,Mixins:[i.Filters,i.RenderSteps],initialize:function(e,t){s.call(this),this.scene=e,this.displayList=null,this.type=t,this.state=0,this.parentContainer=null,this.name=``,this.active=!0,this.tabIndex=-1,this.data=null,this.renderFlags=15,this.cameraFilter=0,this.vertexRoundMode=`safeAuto`,this.input=null,this.body=null,this.ignoreDestroy=!1,this.isDestroyed=!1,this.addRenderStep&&this.addRenderStep(this.renderWebGL),this.on(c.ADDED_TO_SCENE,this.addedToScene,this),this.on(c.REMOVED_FROM_SCENE,this.removedFromScene,this),e.sys.queueDepthSort()},setActive:function(e){return this.active=e,this},setName:function(e){return this.name=e,this},setState:function(e){return this.state=e,this},setDataEnabled:function(){return this.data||=new o(this),this},setData:function(e,t){return this.data||=new o(this),this.data.set(e,t),this},incData:function(e,t){return this.data||=new o(this),this.data.inc(e,t),this},toggleData:function(e){return this.data||=new o(this),this.data.toggle(e),this},getData:function(e){return this.data||=new o(this),this.data.get(e)},setInteractive:function(e,t,n){return this.scene.sys.input.enable(this,e,t,n),this},disableInteractive:function(e){return e===void 0&&(e=!1),this.scene.sys.input.disable(this,e),this},removeInteractive:function(e){return e===void 0&&(e=!1),this.scene.sys.input.clear(this),e&&this.scene.sys.input.resetCursor(),this.input=void 0,this},addedToScene:function(){},removedFromScene:function(){},update:function(){},toJSON:function(){return a(this)},willRender:function(e){return!(!(!(this.displayList&&this.displayList.active)||this.displayList.willRender(e))||u.RENDER_MASK!==this.renderFlags||this.cameraFilter!==0&&this.cameraFilter&e.id)},willRoundVertices:function(e,t){switch(this.vertexRoundMode){case`safe`:return t;case`safeAuto`:return t&&e.roundPixels;case`full`:return!0;case`fullAuto`:return e.roundPixels;default:return!1}},setVertexRoundMode:function(e){return this.vertexRoundMode=e,this},getIndexList:function(){for(var e=this,t=this.parentContainer,n=[];t&&(n.unshift(t.getIndex(e)),e=t,t.parentContainer);)t=t.parentContainer;return this.displayList?n.unshift(this.displayList.getIndex(e)):n.unshift(this.scene.sys.displayList.getIndex(e)),n},addToDisplayList:function(e){return e===void 0&&(e=this.scene.sys.displayList),this.displayList&&this.displayList!==e&&this.removeFromDisplayList(),e.exists(this)||(this.displayList=e,e.add(this,!0),e.queueDepthSort(),this.emit(c.ADDED_TO_SCENE,this,this.scene),e.events.emit(l.ADDED_TO_SCENE,this,this.scene)),this},addToUpdateList:function(){return this.scene&&this.preUpdate&&this.scene.sys.updateList.add(this),this},removeFromDisplayList:function(){var e=this.displayList||this.scene.sys.displayList;return e&&e.exists(this)&&(e.remove(this,!0),e.queueDepthSort(),this.displayList=null,this.emit(c.REMOVED_FROM_SCENE,this,this.scene),e.events.emit(l.REMOVED_FROM_SCENE,this,this.scene)),this},removeFromUpdateList:function(){return this.scene&&this.preUpdate&&this.scene.sys.updateList.remove(this),this},getDisplayList:function(){var e=null;return this.parentContainer?e=this.parentContainer.list:this.displayList&&(e=this.displayList.list),e},destroy:function(e){!this.scene||this.ignoreDestroy||(e===void 0&&(e=!1),this.isDestroyed=!0,this.preDestroy&&this.preDestroy.call(this),this.emit(c.DESTROY,this,e),this.removeAllListeners(),this.removeFromDisplayList(),this.removeFromUpdateList(),this.input&&=(this.scene.sys.input.clear(this),void 0),this.data&&=(this.data.destroy(),void 0),this.body&&=(this.body.destroy(),void 0),this.filterCamera&&=(this.filterCamera.destroy(),void 0),this.active=!1,this.visible=!1,this.scene=void 0,this.parentContainer=void 0)}});u.RENDER_MASK=15,e.exports=u},44603(e,t,n){var r=n(83419),i=n(37277),a=n(44594),o=new r({initialize:function(e){this.scene=e,this.systems=e.sys,this.events=e.sys.events,this.displayList,this.updateList,this.events.once(a.BOOT,this.boot,this),this.events.on(a.START,this.start,this)},boot:function(){this.displayList=this.systems.displayList,this.updateList=this.systems.updateList,this.events.once(a.DESTROY,this.destroy,this)},start:function(){this.events.once(a.SHUTDOWN,this.shutdown,this)},shutdown:function(){this.events.off(a.SHUTDOWN,this.shutdown,this)},destroy:function(){this.shutdown(),this.events.off(a.START,this.start,this),this.scene=null,this.systems=null,this.events=null,this.displayList=null,this.updateList=null}});o.register=function(e,t){o.prototype.hasOwnProperty(e)||(o.prototype[e]=t)},o.remove=function(e){o.prototype.hasOwnProperty(e)&&delete o.prototype[e]},i.register(`GameObjectCreator`,o,`make`),e.exports=o},39429(e,t,n){var r=n(83419),i=n(37277),a=n(44594),o=new r({initialize:function(e){this.scene=e,this.systems=e.sys,this.events=e.sys.events,this.displayList,this.updateList,this.events.once(a.BOOT,this.boot,this),this.events.on(a.START,this.start,this)},boot:function(){this.displayList=this.systems.displayList,this.updateList=this.systems.updateList,this.events.once(a.DESTROY,this.destroy,this)},start:function(){this.events.once(a.SHUTDOWN,this.shutdown,this)},existing:function(e){return(e.renderCanvas||e.renderWebGL)&&this.displayList.add(e),e.preUpdate&&this.updateList.add(e),e},shutdown:function(){this.events.off(a.SHUTDOWN,this.shutdown,this)},destroy:function(){this.shutdown(),this.events.off(a.START,this.start,this),this.scene=null,this.systems=null,this.events=null,this.displayList=null,this.updateList=null}});o.register=function(e,t){o.prototype.hasOwnProperty(e)||(o.prototype[e]=t)},o.remove=function(e){o.prototype.hasOwnProperty(e)&&delete o.prototype[e]},i.register(`GameObjectFactory`,o,`add`),e.exports=o},91296(e,t,n){var r=n(61340),i=new r,a=new r,o=new r,s=new r,c={camera:i,sprite:a,calc:o,cameraExternal:s};e.exports=function(e,t,n,r){return r?s.loadIdentity():s.copyFrom(t.matrixExternal),i.copyWithScrollFactorFrom(r?t.matrix:t.matrixCombined,t.scrollX,t.scrollY,e.scrollFactorX,e.scrollFactorY),o.copyFrom(i),n&&o.multiply(n),a.applyITRS(e.x,e.y,e.rotation,e.scaleX,e.scaleY),o.multiply(a),c}},45027(e,t,n){var r=n(83419),i=n(25774),a=n(37277),o=n(44594),s=new r({Extends:i,initialize:function(e){i.call(this),this.checkQueue=!0,this.scene=e,this.systems=e.sys,e.sys.events.once(o.BOOT,this.boot,this),e.sys.events.on(o.START,this.start,this)},boot:function(){this.systems.events.once(o.DESTROY,this.destroy,this)},start:function(){var e=this.systems.events;e.on(o.PRE_UPDATE,this.update,this),e.on(o.UPDATE,this.sceneUpdate,this),e.once(o.SHUTDOWN,this.shutdown,this)},sceneUpdate:function(e,t){for(var n=this._active,r=n.length,i=0;i<r;i++){var a=n[i];a.active&&a.preUpdate.call(a,e,t)}},shutdown:function(){for(var e=this._active.length;e--;)this._active[e].destroy(!0);for(e=this._pending.length;e--;)this._pending[e].destroy(!0);for(e=this._destroy.length;e--;)this._destroy[e].destroy(!0);this._toProcess=0,this._pending=[],this._active=[],this._destroy=[],this.removeAllListeners();var t=this.systems.events;t.off(o.PRE_UPDATE,this.update,this),t.off(o.UPDATE,this.sceneUpdate,this),t.off(o.SHUTDOWN,this.shutdown,this)},destroy:function(){this.shutdown(),this.systems.events.off(o.START,this.start,this),this.scene=null,this.systems=null}});a.register(`UpdateList`,s,`updateList`),e.exports=s},3217(e){var t={frame:null,uvSource:null},n={quad:new Float32Array(8)};e.exports=function(e,r,i,a,o,s,c,l,u){t.frame=i.frame,t.uvSource=o;var d=a.x-i.displayOriginX+s,f=a.y-i.displayOriginY+c,p=d+a.w,m=f+a.h,h=l.a,g=l.b,_=l.c,v=l.d,y=l.e,b=l.f,x=d*h+f*_+y,S=d*g+f*v+b,C=d*h+m*_+y,w=d*g+m*v+b,T=p*h+m*_+y,E=p*g+m*v+b,D=p*h+f*_+y,O=p*g+f*v+b;n.quad[0]=x,n.quad[1]=S,n.quad[2]=C,n.quad[3]=w,n.quad[4]=T,n.quad[5]=E,n.quad[6]=D,n.quad[7]=O,r.run(e,i,void 0,0,t,n,u)}},53048(e){e.exports=function(e,t,n,r){if(n===void 0&&(n=!1),r===void 0)return r={local:{x:0,y:0,width:0,height:0},global:{x:0,y:0,width:0,height:0},lines:{shortest:0,longest:0,lengths:null,height:0},wrappedText:``,words:[],characters:[],scaleX:0,scaleY:0},r;var i=e.text,a=i.length,o=e.maxWidth,s=e.wordWrapCharCode,c=Number.MAX_VALUE,l=Number.MAX_VALUE,u=0,d=0,f=e.fontData.chars,p=e.fontData.lineHeight,m=e.letterSpacing,h=e.lineSpacing,g=0,_=0,v=0,y=null,b=e._align,x=0,S=0,C=e.fontSize/e.fontData.size,w=C*e.scaleX,T=C*e.scaleY,E=null,D=0,O=[],k=Number.MAX_VALUE,A=0,j=0,M=0,N,P,F,I=[],L=[],R=null,z=function(e,t){for(var n=0,r=0;r<e.length;r++){var i=e.charCodeAt(r),a=t.chars[i];a&&(n+=a.xAdvance)}return n*w};if(o>0){F=i.split(`
2
+ `);var B=[];for(N=0;N<F.length;N++){var V=F[N],H=``,U=``,W=``,G=``;for(P=0;P<V.length;P++)v=V.charCodeAt(P),H+=V[P],(v===s||P===V.length-1)&&(G=W+H,z(G,e.fontData)<=o?W=G:(U=U.slice(0,-1),U+=(U?`
3
+ `:``)+W,W=H),H=``);U=U.slice(0,-1),U+=(U?`
4
+ `:``)+W,B.push(U)}i=B.join(`
5
+ `),r.wrappedText=i,a=i.length}var ee=0;for(N=0;N<a;N++){if(v=i.charCodeAt(N),v===10){R!==null&&(I.push({word:R.word,i:R.i,x:R.x*w,y:R.y*T,w:R.w*w,h:R.h*T}),R=null),E=null,O[j]=M,M>A&&(A=M),M<k&&(k=M),j++,M=0,g=0,_=(p+h)*j;continue}if(y=f[v],y){if(x=g,S=_,E!==null){var K=y.kerning[D];x+=K===void 0?0:K}c>x&&(c=x),l>S&&(l=S);var q=x+y.xAdvance,J=S+p;u<q&&(u=q),d<J&&(d=J);var Y=y.xOffset+y.xAdvance+(K===void 0?0:K);v===s?R!==null&&(I.push({word:R.word,i:R.i,x:R.x*w,y:R.y*T,w:R.w*w,h:R.h*T}),R=null):(R===null&&(R={word:``,i:ee,x:g,y:_,w:0,h:p}),R.word=R.word.concat(i[N]),R.w+=Y),L.push({i:ee,idx:N,char:i[N],code:v,x:(y.xOffset+x)*C,y:(y.yOffset+_)*C,w:y.width*C,h:y.height*C,t:_*C,r:q*C,b:p*C,line:j,glyph:y}),g+=y.xAdvance+m+(K===void 0?0:K),E=y,D=v,M=q*C,ee++}}if(R!==null&&I.push({word:R.word,i:R.i,x:R.x*w,y:R.y*T,w:R.w*w,h:R.h*T}),O[j]=M,M>A&&(A=M),M<k&&(k=M),b>0)for(var te=0;te<L.length;te++){var X=L[te];if(b===1){var Z=(A-O[X.line])/2;X.x+=Z,X.r+=Z}else if(b===2){var Q=A-O[X.line];X.x+=Q,X.r+=Q}}var ne=r.local,$=r.global;return F=r.lines,ne.x=c*C,ne.y=l*C,ne.width=u*C,ne.height=d*C,$.x=e.x-e._displayOriginX+c*w,$.y=e.y-e._displayOriginY+l*T,$.width=u*w,$.height=d*T,F.shortest=k,F.longest=A,F.lengths=O,t&&(ne.x=Math.ceil(ne.x),ne.y=Math.ceil(ne.y),ne.width=Math.ceil(ne.width),ne.height=Math.ceil(ne.height),$.x=Math.ceil($.x),$.y=Math.ceil($.y),$.width=Math.ceil($.width),$.height=Math.ceil($.height),F.shortest=Math.ceil(k),F.longest=Math.ceil(A)),n&&(e._displayOriginX=e.originX*ne.width,e._displayOriginY=e.originY*ne.height,$.x=e.x-e._displayOriginX*e.scaleX,$.y=e.y-e._displayOriginY*e.scaleY,t&&($.x=Math.ceil($.x),$.y=Math.ceil($.y))),r.words=I,r.characters=L,r.lines.height=p,r.scale=C,r.scaleX=e.scaleX,r.scaleY=e.scaleY,r}},61327(e,t,n){var r=n(21859);e.exports=function(e,t,n,i,a,o,s){var c=e.sys.textures.get(n),l=c.get(i),u=e.sys.cache.xml.get(a);if(l&&u){var d=r(u,l,o,s,c);return e.sys.cache.bitmapFont.add(t,{data:d,texture:n,frame:i,fromAtlas:!0}),!0}else return!1}},6925(e,t,n){var r=n(35154);e.exports=function(e,t){var n=t.width,i=t.height,a=Math.floor(n/2),o=Math.floor(i/2),s=r(t,`chars`,``);if(s!==``){var c=r(t,`image`,``),l=e.sys.textures.getFrame(c),u=l.cutX,d=l.cutY,f=l.source.width,p=l.source.height,m=r(t,`offset.x`,0),h=r(t,`offset.y`,0),g=r(t,`spacing.x`,0),_=r(t,`spacing.y`,0),v=r(t,`lineSpacing`,0),y=r(t,`charsPerRow`,null);y===null&&(y=f/n,y>s.length&&(y=s.length));for(var b=m,x=h,S={retroFont:!0,font:c,size:n,lineHeight:i+v,chars:{}},C=0,w=0;w<s.length;w++){var T=s.charCodeAt(w),E=(u+b)/f,D=1-(d+x)/p,O=(u+b+n)/f,k=1-(d+x+i)/p;S.chars[T]={x:b,y:x,width:n,height:i,centerX:a,centerY:o,xOffset:0,yOffset:0,xAdvance:n,data:{},kerning:{},u0:E,v0:D,u1:O,v1:k},C++,C===y?(C=0,b=m,x+=i+_):b+=n+g}return{data:S,frame:null,texture:c}}}},21859(e){function t(e,t){return parseInt(e.getAttribute(t),10)}e.exports=function(e,n,r,i,a){r===void 0&&(r=0),i===void 0&&(i=0);var o=n.cutX,s=n.cutY,c=n.source.width,l=n.source.height,u=n.sourceIndex,d={},f=e.getElementsByTagName(`info`)[0],p=e.getElementsByTagName(`common`)[0];d.font=f.getAttribute(`face`),d.size=t(f,`size`),d.lineHeight=t(p,`lineHeight`)+i,d.chars={};var m=e.getElementsByTagName(`char`),h=n!==void 0&&n.trimmed;if(h)var g=n.data.spriteSourceSize.x,_=n.data.spriteSourceSize.y;for(var v=0;v<m.length;v++){var y=m[v],b=t(y,`id`),x=String.fromCharCode(b),S=t(y,`x`),C=t(y,`y`),w=t(y,`width`),T=t(y,`height`);h&&(S-=g,C-=_);var E=(o+S)/c,D=1-(s+C)/l,O=(o+S+w)/c,k=1-(s+C+T)/l;d.chars[b]={x:S,y:C,width:w,height:T,centerX:Math.floor(w/2),centerY:Math.floor(T/2),xOffset:t(y,`xoffset`),yOffset:t(y,`yoffset`),xAdvance:t(y,`xadvance`)+r,data:{},kerning:{},u0:E,v0:D,u1:O,v1:k},a&&w!==0&&T!==0&&a.add(x,u,S+n.data.cut.x,C+n.data.cut.y,w,T)}var A=e.getElementsByTagName(`kerning`);for(v=0;v<A.length;v++){var j=A[v],M=t(j,`first`),N=t(j,`second`),P=t(j,`amount`);d.chars[N].kerning[M]=P}return d}},196(e,t,n){var r=n(87662),i=n(79291),a={Parse:n(6925)};a=i(!1,a,r),e.exports=a},87662(e){e.exports={TEXT_SET1:` !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~`,TEXT_SET2:` !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ`,TEXT_SET3:`ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 `,TEXT_SET4:`ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789`,TEXT_SET5:`ABCDEFGHIJKLMNOPQRSTUVWXYZ.,/() '!?-*:0123456789`,TEXT_SET6:`ABCDEFGHIJKLMNOPQRSTUVWXYZ!?:;0123456789"(),-.' `,TEXT_SET7:`AGMSY+:4BHNTZ!;5CIOU.?06DJPV,(17EKQW")28FLRX-'39`,TEXT_SET8:`0123456789 .ABCDEFGHIJKLMNOPQRSTUVWXYZ`,TEXT_SET9:`ABCDEFGHIJKLMNOPQRSTUVWXYZ()-0123456789.:,'"?!`,TEXT_SET10:`ABCDEFGHIJKLMNOPQRSTUVWXYZ`,TEXT_SET11:`ABCDEFGHIJKLMNOPQRSTUVWXYZ.,"-+!?()':;0123456789`}},2638(e,t,n){var r=n(22186);e.exports=new(n(83419))({Extends:r,Mixins:[n(12310)],initialize:function(e,t,n,i,a,o,s){r.call(this,e,t,n,i,a,o,s),this.type=`DynamicBitmapText`,this.scrollX=0,this.scrollY=0,this.cropWidth=0,this.cropHeight=0,this.displayCallback,this.callbackData={parent:this,color:0,tint:{topLeft:0,topRight:0,bottomLeft:0,bottomRight:0},index:0,charCode:0,x:0,y:0,scale:0,rotation:0,data:0}},setSize:function(e,t){return this.cropWidth=e,this.cropHeight=t,this},setDisplayCallback:function(e){return this.displayCallback=e,this},setScrollX:function(e){return this.scrollX=e,this},setScrollY:function(e){return this.scrollY=e,this}})},86741(e,t,n){var r=n(20926);e.exports=function(e,t,n,i){var a=t._text,o=a.length,s=e.currentContext;if(!(o===0||!r(e,s,t,n,i))){n.addToRenderList(t);var c=t.fromAtlas?t.frame:t.texture.frames.__BASE,l=t.displayCallback,u=t.callbackData,d=t.fontData.chars,f=t.fontData.lineHeight,p=t._letterSpacing,m=0,h=0,g=0,_=null,v=0,y=0,b=0,x=0,S=0,C=0,w=null,T=0,E=t.frame.source.image,D=c.cutX,O=c.cutY,k=0,A=0,j=t._fontSize/t.fontData.size,M=t._align,N=0,P=0;t.getTextBounds(!1);var F=t._bounds.lines;M===1?P=(F.longest-F.lengths[0])/2:M===2&&(P=F.longest-F.lengths[0]),s.translate(-t.displayOriginX,-t.displayOriginY);var I=n.roundPixels;t.cropWidth>0&&t.cropHeight>0&&(s.beginPath(),s.rect(0,0,t.cropWidth,t.cropHeight),s.clip());for(var L=0;L<o;L++){if(A=j,k=0,g=a.charCodeAt(L),g===10){N++,M===1?P=(F.longest-F.lengths[N])/2:M===2&&(P=F.longest-F.lengths[N]),m=0,h+=f,w=null;continue}if(_=d[g],_){if(v=D+_.x,y=O+_.y,b=_.width,x=_.height,S=_.xOffset+m-t.scrollX,C=_.yOffset+h-t.scrollY,w!==null){var R=_.kerning[T];S+=R===void 0?0:R}if(l){u.index=L,u.charCode=g,u.x=S,u.y=C,u.scale=A,u.rotation=k,u.data=_.data;var z=l(u);S=z.x,C=z.y,A=z.scale,k=z.rotation}S*=A,C*=A,S+=P,m+=_.xAdvance+p+(R===void 0?0:R),w=_,T=g,!(b===0||x===0||g===32)&&(I&&(S=Math.round(S),C=Math.round(C)),s.save(),s.translate(S,C),s.rotate(k),s.scale(A,A),s.drawImage(E,v,y,b,x,0,0,b,x),s.restore())}}s.restore()}}},11164(e,t,n){var r=n(2638),i=n(25305),a=n(44603),o=n(23568);a.register(`dynamicBitmapText`,function(e,t){e===void 0&&(e={});var n=o(e,`font`,``),a=o(e,`text`,``),s=o(e,`size`,!1),c=new r(this.scene,0,0,n,a,s);return t!==void 0&&(e.add=t),i(this.scene,c,e),c})},72566(e,t,n){var r=n(2638);n(39429).register(`dynamicBitmapText`,function(e,t,n,i,a){return this.displayList.add(new r(this.scene,e,t,n,i,a))})},12310(e,t,n){var r=n(29747),i=r,a=r;i=n(73482),a=n(86741),e.exports={renderWebGL:i,renderCanvas:a}},73482(e,t,n){var r=n(91296),i=n(84322),a=n(61340),o=n(70554),s=new a,c={frame:null,uvSource:null},l={tintEffect:i.MULTIPLY,tintTopLeft:0,tintTopRight:0,tintBottomLeft:0,tintBottomRight:0};e.exports=function(e,t,n,a){var u=t.text,d=u.length;if(d!==0){var f=n.camera;f.addToRenderList(t);var p=n,m=t.customRenderNodes.Submitter||t.defaultRenderNodes.Submitter,h=r(t,f,a,!n.useCanvas),g=h.sprite,_=h.calc,v=s,y=t.cropWidth>0||t.cropHeight>0;y&&(p=n.getClone(),p.setScissorEnable(!0),p.setScissorBox(_.tx,_.ty,t.cropWidth*_.scaleX,t.cropHeight*_.scaleY),p.use()),c.frame=t.frame;var b=i.MULTIPLY,x=o.getTintAppendFloatAlpha(t.tintTopLeft,t._alphaTL),S=o.getTintAppendFloatAlpha(t.tintTopRight,t._alphaTR),C=o.getTintAppendFloatAlpha(t.tintBottomLeft,t._alphaBL),w=o.getTintAppendFloatAlpha(t.tintBottomRight,t._alphaBR),T=0,E=0,D=0,O=0,k=t.letterSpacing,A,j=0,M=0,N,P=t.scrollX,F=t.scrollY,I=t.fontData,L=I.chars,R=I.lineHeight,z=t.fontSize/I.size,B=0,V=t._align,H=0,U=0,W=t.getTextBounds(!1);t.maxWidth>0&&(u=W.wrappedText,d=u.length);var G=t._bounds.lines;V===1?U=(G.longest-G.lengths[0])/2:V===2&&(U=G.longest-G.lengths[0]);for(var ee=t.displayCallback,K=t.callbackData,q=0;q<d;q++){if(D=u.charCodeAt(q),D===10){H++,V===1?U=(G.longest-G.lengths[H])/2:V===2&&(U=G.longest-G.lengths[H]),T=0,E+=R,N=null;continue}if(A=L[D],A){c.uvSource=A,j=A.width,M=A.height;var J=A.xOffset+T-P,Y=A.yOffset+E-F;if(N!==null){var te=A.kerning[O]||0;J+=te,T+=te}if(T+=A.xAdvance+k,N=A,O=D,!(j===0||M===0||D===32)){if(z=t.fontSize/t.fontData.size,B=0,ee){K.color=0,K.tintMode=b,K.tint.topLeft=x,K.tint.topRight=S,K.tint.bottomLeft=C,K.tint.bottomRight=w,K.index=q,K.charCode=D,K.x=J,K.y=Y,K.scale=z,K.rotation=B,K.data=A.data;var X=ee(K);J=X.x,Y=X.y,z=X.scale,B=X.rotation,X.color?(x=X.color,S=X.color,C=X.color,w=X.color):(x=X.tint.topLeft,S=X.tint.topRight,C=X.tint.bottomLeft,w=X.tint.bottomRight),b=X.tintMode,x=o.getTintAppendFloatAlpha(x,t._alphaTL),S=o.getTintAppendFloatAlpha(S,t._alphaTR),C=o.getTintAppendFloatAlpha(C,t._alphaBL),w=o.getTintAppendFloatAlpha(w,t._alphaBR)}l.tintEffect=b,l.tintTopLeft=x,l.tintTopRight=S,l.tintBottomLeft=C,l.tintBottomRight=w,J*=z,Y*=z,J-=t.displayOriginX,Y-=t.displayOriginY,J+=U,v.applyITRS(J,Y,B,z,z),_.multiply(v,g);var Z=j,Q=M,ne=g.e,$=g.f,re=Q*g.c+g.e,ie=Q*g.d+g.f,ae=Z*g.a+Q*g.c+g.e,oe=Z*g.b+Q*g.d+g.f,se=Z*g.a+g.e,ce=Z*g.b+g.f;m.run(p,t,void 0,0,c,{quad:[ne,$,re,ie,ae,oe,se,ce]},l)}}}y&&n.use()}}},22186(e,t,n){var r=n(70972),i=n(83419),a=n(45319),o=n(31401),s=n(95643),c=n(53048),l=n(61327),u=n(21859),d=n(87841),f=n(18658),p=n(84322),m=new i({Extends:s,Mixins:[o.Alpha,o.BlendMode,o.Depth,o.GetBounds,o.Lighting,o.Mask,o.Origin,o.RenderNodes,o.ScrollFactor,o.Texture,o.Tint,o.Transform,o.Visible,f],initialize:function(e,t,n,r,i,a,o){i===void 0&&(i=``),o===void 0&&(o=0),s.call(this,e,`BitmapText`),this.font=r;var l=this.scene.sys.cache.bitmapFont.get(r);l||console.warn(`Invalid BitmapText key: `+r),this.fontData=l.data,this._text=``,this._fontSize=a||this.fontData.size,this._letterSpacing=0,this._lineSpacing=0,this._align=o,this._bounds=c(),this._dirty=!0,this._maxWidth=0,this.wordWrapCharCode=32,this.charColors=[],this.dropShadowX=0,this.dropShadowY=0,this.dropShadowColor=0,this.dropShadowAlpha=.5,this.fromAtlas=l.fromAtlas,this.setTexture(l.texture,l.frame),this.setPosition(t,n),this.setOrigin(0,0),this.initRenderNodes(this._defaultRenderNodesMap),this.setText(i)},_defaultRenderNodesMap:{get:function(){return r}},setLeftAlign:function(){return this._align=m.ALIGN_LEFT,this._dirty=!0,this},setCenterAlign:function(){return this._align=m.ALIGN_CENTER,this._dirty=!0,this},setRightAlign:function(){return this._align=m.ALIGN_RIGHT,this._dirty=!0,this},setFontSize:function(e){return this._fontSize=e,this._dirty=!0,this},setLetterSpacing:function(e){return e===void 0&&(e=0),this._letterSpacing=e,this._dirty=!0,this},setLineSpacing:function(e){return e===void 0&&(e=0),this.lineSpacing=e,this},setText:function(e){return!e&&e!==0&&(e=``),Array.isArray(e)&&(e=e.join(`
6
+ `)),e!==this.text&&(this._text=e.toString(),this._dirty=!0,this.updateDisplayOrigin()),this},setDropShadow:function(e,t,n,r){return e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=.5),this.dropShadowX=e,this.dropShadowY=t,this.dropShadowColor=n,this.dropShadowAlpha=r,this},setCharacterTint:function(e,t,n,r,i,o,s){e===void 0&&(e=0),t===void 0&&(t=1),n===void 0&&(n=p.MULTIPLY),r===void 0&&(r=-1),i===void 0&&(i=r,o=r,s=r);var c=this.text.length;t===-1&&(t=c),e<0&&(e=c+e),e=a(e,0,c-1);for(var l=a(e+t,e,c),u=this.charColors,d=e;d<l;d++){var f=u[d];if(r===-1)u[d]=null;else{var m=n;f?(f.tintEffect=m,f.tintTL=r,f.tintTR=i,f.tintBL=o,f.tintBR=s):u[d]={tintEffect:m,tintTL:r,tintTR:i,tintBL:o,tintBR:s}}}return this},setWordTint:function(e,t,n,r,i,a,o){t===void 0&&(t=1);for(var s=this.getTextBounds().words,c=typeof e==`number`,l=0,u=0;u<s.length;u++){var d=s[u];if((c&&u===e||!c&&d.word===e)&&(this.setCharacterTint(d.i,d.word.length,n,r,i,a,o),l++,l===t))return this}return this},getTextBounds:function(e){var t=this._bounds;return(this._dirty||e||this.scaleX!==t.scaleX||this.scaleY!==t.scaleY)&&(c(this,e,!0,t),this._dirty=!1),t},getCharacterAt:function(e,t,n){for(var r=this.getLocalPoint(e,t,null,n),i=this.getTextBounds().characters,a=new d,o=0;o<i.length;o++){var s=i[o];if(a.setTo(s.x,s.t,s.r-s.x,s.b),a.contains(r.x,r.y))return s}return null},updateDisplayOrigin:function(){return this._dirty=!0,this.getTextBounds(!1),this},setFont:function(e,t,n){t===void 0&&(t=this._fontSize),n===void 0&&(n=this._align);var r=this.scene.sys.cache.bitmapFont.get(e);return r&&(this.font=e,this.fontData=r.data,this._fontSize=t,this._align=n,this.fromAtlas=r.fromAtlas===!0,this.setTexture(r.texture,r.frame),c(this,!1,!0,this._bounds)),this},setMaxWidth:function(e,t){return this._maxWidth=e,this._dirty=!0,t!==void 0&&(this.wordWrapCharCode=t),this},setDisplaySize:function(e,t){this.setScale(1,1),this.getTextBounds(!1);var n=e/this.width,r=t/this.height;return this.setScale(n,r),this},align:{set:function(e){this._align=e,this._dirty=!0},get:function(){return this._align}},text:{set:function(e){this.setText(e)},get:function(){return this._text}},fontSize:{set:function(e){this._fontSize=e,this._dirty=!0},get:function(){return this._fontSize}},letterSpacing:{set:function(e){this._letterSpacing=e,this._dirty=!0},get:function(){return this._letterSpacing}},lineSpacing:{set:function(e){this._lineSpacing=e,this._dirty=!0},get:function(){return this._lineSpacing}},maxWidth:{set:function(e){this._maxWidth=e,this._dirty=!0},get:function(){return this._maxWidth}},width:{get:function(){return this.getTextBounds(!1),this._bounds.global.width}},height:{get:function(){return this.getTextBounds(!1),this._bounds.global.height}},displayWidth:{set:function(e){this.setScaleX(1),this.getTextBounds(!1);var t=e/this.width;this.setScaleX(t)},get:function(){return this.width}},displayHeight:{set:function(e){this.setScaleY(1),this.getTextBounds(!1);var t=e/this.height;this.setScaleY(t)},get:function(){return this.height}},toJSON:function(){var e=o.ToJSON(this);return e.data={font:this.font,text:this.text,fontSize:this.fontSize,letterSpacing:this.letterSpacing,lineSpacing:this.lineSpacing,align:this.align},e},preDestroy:function(){this.charColors.length=0,this._bounds=null,this.fontData=null}});m.ALIGN_LEFT=0,m.ALIGN_CENTER=1,m.ALIGN_RIGHT=2,m.ParseFromAtlas=l,m.ParseXMLBitmapFont=u,e.exports=m},37289(e,t,n){var r=n(20926);e.exports=function(e,t,n,i){var a=t._text,o=a.length,s=e.currentContext;if(!(o===0||!r(e,s,t,n,i))){n.addToRenderList(t);var c=t.fromAtlas?t.frame:t.texture.frames.__BASE,l=t.fontData.chars,u=t.fontData.lineHeight,d=t._letterSpacing,f=t._lineSpacing,p=0,m=0,h=0,g=null,_=0,v=0,y=0,b=0,x=0,S=0,C=null,w=0,T=c.source.image,E=c.cutX,D=c.cutY,O=t._fontSize/t.fontData.size,k=t._align,A=0,j=0,M=t.getTextBounds(!1);t.maxWidth>0&&(a=M.wrappedText,o=a.length);var N=t._bounds.lines;k===1?j=(N.longest-N.lengths[0])/2:k===2&&(j=N.longest-N.lengths[0]),s.translate(-t.displayOriginX,-t.displayOriginY);for(var P=n.roundPixels,F=0;F<o;F++){if(h=a.charCodeAt(F),h===10){A++,k===1?j=(N.longest-N.lengths[A])/2:k===2&&(j=N.longest-N.lengths[A]),p=0,m+=u+f,C=null;continue}if(g=l[h],g){if(_=E+g.x,v=D+g.y,y=g.width,b=g.height,x=g.xOffset+p,S=g.yOffset+m,C!==null){var I=g.kerning[w];x+=I===void 0?0:I}x*=O,S*=O,x+=j,p+=g.xAdvance+d+(I===void 0?0:I),C=g,w=h,!(y===0||b===0||h===32)&&(P&&(x=Math.round(x),S=Math.round(S)),s.save(),s.translate(x,S),s.scale(O,O),s.drawImage(T,_,v,y,b,0,0,y,b),s.restore())}}s.restore()}}},57336(e,t,n){var r=n(22186),i=n(25305),a=n(44603),o=n(23568),s=n(35154);a.register(`bitmapText`,function(e,t){e===void 0&&(e={});var n=s(e,`font`,``),a=o(e,`text`,``),c=o(e,`size`,!1),l=s(e,`align`,0),u=new r(this.scene,0,0,n,a,c,l);return t!==void 0&&(e.add=t),i(this.scene,u,e),u})},34914(e,t,n){var r=n(22186);n(39429).register(`bitmapText`,function(e,t,n,i,a,o){return this.displayList.add(new r(this.scene,e,t,n,i,a,o))})},18658(e,t,n){var r=n(29747),i=r,a=r;i=n(33590),a=n(37289),e.exports={renderWebGL:i,renderCanvas:a}},33590(e,t,n){var r=n(3217),i=n(91296),a=n(70554),o={tintEffect:0,tintTopLeft:0,tintTopRight:0,tintBottomLeft:0,tintBottomRight:0},s={tintEffect:0,tintTopLeft:0,tintTopRight:0,tintBottomLeft:0,tintBottomRight:0};e.exports=function(e,t,n,c){if(t._text.length!==0){var l=n.camera;l.addToRenderList(t);var u=t.customRenderNodes.Submitter||t.defaultRenderNodes.Submitter,d=i(t,l,c,!n.useCanvas).calc,f=t.charColors,p=a.getTintAppendFloatAlpha;o.tintEffect=t.tintMode,o.tintTopLeft=p(t.tintTopLeft,t._alphaTL),o.tintTopRight=p(t.tintTopRight,t._alphaTR),o.tintBottomLeft=p(t.tintBottomLeft,t._alphaBL),o.tintBottomRight=p(t.tintBottomRight,t._alphaBR);var m=t.getTextBounds(!1),h,g,_,v=m.characters,y=t.dropShadowX,b=t.dropShadowY;if(y!==0||b!==0){var x=t.dropShadowColor,S=t.dropShadowAlpha;for(s.tintEffect=1,s.tintTopLeft=p(x,S*t._alphaTL),s.tintTopRight=p(x,S*t._alphaTR),s.tintBottomLeft=p(x,S*t._alphaBL),s.tintBottomRight=p(x,S*t._alphaBR),h=0;h<v.length;h++)g=v[h],_=g.glyph,!(g.code===32||_.width===0||_.height===0)&&r(n,u,t,g,_,y,b,d,s)}for(h=0;h<v.length;h++)if(g=v[h],_=g.glyph,!(g.code===32||_.width===0||_.height===0))if(f[g.i]){var C=f[g.i];s.tintEffect=C.tintEffect,s.tintTopLeft=p(C.tintTL,t._alphaTL),s.tintTopRight=p(C.tintTR,t._alphaTR),s.tintBottomLeft=p(C.tintBL,t._alphaBL),s.tintBottomRight=p(C.tintBR,t._alphaBR),r(n,u,t,g,_,0,0,d,s)}else r(n,u,t,g,_,0,0,d,o)}}},6107(e,t,n){var r=n(48011),i=n(46590),a=n(98682),o=n(83419),s=n(31401),c=n(4327),l=n(95643),u=n(73162);e.exports=new o({Extends:l,Mixins:[s.Alpha,s.BlendMode,s.Depth,s.Lighting,s.Mask,s.RenderNodes,s.ScrollFactor,s.Size,s.Texture,s.Transform,s.Visible,r],initialize:function(e,t,n,r,i){l.call(this,e,`Blitter`),this.setTexture(r,i),this.setPosition(t,n),this.initRenderNodes(this._defaultRenderNodesMap),this.children=new u,this.renderList=[],this.dirty=!1},_defaultRenderNodesMap:{get:function(){return a}},create:function(e,t,n,r,a){r===void 0&&(r=!0),a===void 0&&(a=this.children.length),n===void 0?n=this.frame:n instanceof c||(n=this.texture.get(n));var o=new i(this,e,t,n,r);return this.children.addAt(o,a,!1),this.dirty=!0,o},createFromCallback:function(e,t,n,r){for(var i=this.createMultiple(t,n,r),a=0;a<i.length;a++){var o=i[a];e.call(this,o,a)}return i},createMultiple:function(e,t,n){t===void 0&&(t=this.frame.name),n===void 0&&(n=!0),Array.isArray(t)||(t=[t]);var r=[],i=this;return t.forEach(function(t){for(var a=0;a<e;a++)r.push(i.create(0,0,t,n))}),r},childCanRender:function(e){return e.visible&&e.alpha>0},getRenderList:function(){return this.dirty&&=(this.renderList=this.children.list.filter(this.childCanRender,this),!1),this.renderList},clear:function(){this.children.removeAll(),this.dirty=!0},preDestroy:function(){this.children.destroy(),this.renderList=[]}})},72396(e){e.exports=function(e,t,n,r){var i=t.getRenderList();if(i.length!==0){var a=e.currentContext,o=n.alpha*t.alpha;if(o!==0){n.addToRenderList(t),a.globalCompositeOperation=e.blendModes[t.blendMode],a.imageSmoothingEnabled=!t.frame.source.scaleMode;var s=t.x-n.scrollX*t.scrollFactorX,c=t.y-n.scrollY*t.scrollFactorY;a.save(),r&&r.copyToContext(a);for(var l=n.roundPixels,u=0;u<i.length;u++){var d=i[u],f=d.flipX||d.flipY,p=d.frame,m=p.canvasData,h=p.x,g=p.y,_=1,v=1,y=d.alpha*o;y!==0&&(a.globalAlpha=y,f?(d.flipX&&(_=-1,h-=m.width),d.flipY&&(v=-1,g-=m.height),m.width>0&&m.height>0&&(a.save(),a.translate(d.x+s,d.y+c),a.scale(_,v),a.drawImage(p.source.image,m.x,m.y,m.width,m.height,h,g,m.width,m.height),a.restore())):(l&&(h=Math.round(h),g=Math.round(g)),m.width>0&&m.height>0&&a.drawImage(p.source.image,m.x,m.y,m.width,m.height,h+d.x+s,g+d.y+c,m.width,m.height)))}a.restore()}}}},9403(e,t,n){var r=n(6107),i=n(25305),a=n(44603),o=n(23568);a.register(`blitter`,function(e,t){e===void 0&&(e={});var n=o(e,`key`,null),a=o(e,`frame`,null),s=new r(this.scene,0,0,n,a);return t!==void 0&&(e.add=t),i(this.scene,s,e),s})},12709(e,t,n){var r=n(6107);n(39429).register(`blitter`,function(e,t,n,i){return this.displayList.add(new r(this.scene,e,t,n,i))})},48011(e,t,n){var r=n(29747),i=r,a=r;i=n(99485),a=n(72396),e.exports={renderWebGL:i,renderCanvas:a}},99485(e,t,n){var r=n(61340),i=n(70554),a=new r,o={quad:new Float32Array(8)},s={},c={};e.exports=function(e,t,n,r){var l=t.getRenderList(),u=n.camera,d=t.alpha;if(!(l.length===0||d===0)){u.addToRenderList(t);var f=a.copyWithScrollFactorFrom(u.getViewMatrix(!n.useCanvas),u.scrollX,u.scrollY,t.scrollFactorX,t.scrollFactorY);r&&f.multiply(r);for(var p=t.x,m=t.y,h=t.customRenderNodes,g=t.defaultRenderNodes,_=0;_<l.length;_++){var v=l[_],y=v.frame,b=v.alpha*d;if(b!==0){var x=y.width,S=y.height,C=p+v.x+y.x,w=m+v.y+y.y;v.flipX&&(x*=-1,C+=y.width),v.flipY&&(S*=-1,w+=y.height),f.setQuad(C,w,C+x,w+S,o.quad),s.frame=y,s.uvSource=y;var T=i.getTintAppendFloatAlpha(v.tint,b);c.tintTopLeft=T,c.tintBottomLeft=T,c.tintTopRight=T,c.tintBottomRight=T,(h.Submitter||g.Submitter).run(n,t,r,0,s,o,c,void 0,0)}}}}},46590(e,t,n){var r=n(83419),i=n(4327);e.exports=new r({initialize:function(e,t,n,r,i){this.parent=e,this.x=t,this.y=n,this.frame=r,this.data={},this.tint=16777215,this._visible=i,this._alpha=1,this.flipX=!1,this.flipY=!1,this.hasTransformComponent=!0},setFrame:function(e){return e===void 0?this.frame=this.parent.frame:e instanceof i&&e.texture===this.parent.texture?this.frame=e:this.frame=this.parent.texture.get(e),this},resetFlip:function(){return this.flipX=!1,this.flipY=!1,this},reset:function(e,t,n){return this.x=e,this.y=t,this.flipX=!1,this.flipY=!1,this._alpha=1,this._visible=!0,this.parent.dirty=!0,n&&this.setFrame(n),this},setPosition:function(e,t){return this.x=e,this.y=t,this},setFlipX:function(e){return this.flipX=e,this},setFlipY:function(e){return this.flipY=e,this},setFlip:function(e,t){return this.flipX=e,this.flipY=t,this},setVisible:function(e){return this.visible=e,this},setAlpha:function(e){return this.alpha=e,this},setTint:function(e){return this.tint=e,this},destroy:function(){this.parent.dirty=!0,this.parent.children.remove(this),this.parent=void 0,this.frame=void 0,this.data=void 0},visible:{get:function(){return this._visible},set:function(e){this.parent.dirty|=this._visible!==e,this._visible=e}},alpha:{get:function(){return this._alpha},set:function(e){this.parent.dirty|=this._alpha>0!=e>0,this._alpha=e}}})},43451(e,t,n){var r=n(87774),i=n(30529),a=n(83419),o=n(31401),s=n(95643),c=n(36683);e.exports=new a({Extends:s,Mixins:[o.BlendMode,o.Depth,o.RenderNodes,o.Visible,c],initialize:function(e,t){s.call(this,e,`CaptureFrame`);var n=e.renderer;this.drawingContext=new r(n,{width:n.width,height:n.height}),this.captureTexture=e.sys.textures.addGLTexture(t,this.drawingContext.texture),this.initRenderNodes(this._defaultRenderNodesMap)},_defaultRenderNodesMap:{get:function(){return i}},setAlpha:function(e){return this},setScrollFactor:function(e,t){return this}})},23675(e,t,n){var r=n(44603),i=n(23568),a=n(43451);r.register(`captureFrame`,function(e,t){e===void 0&&(e={});var n=i(e,`depth`,0),r=i(e,`key`,null),o=i(e,`visible`,!0),s=new a(this.scene,r);return t!==void 0&&(e.add=t),s.setDepth(n).setVisible(o),e.add&&this.scene.sys.displayList.add(s),s})},20421(e,t,n){var r=n(43451);n(39429).register(`captureFrame`,function(e){return this.displayList.add(new r(this.scene,e))})},36683(e,t,n){var r=n(29747),i=r,a=r;i=n(82237),e.exports={renderWebGL:i,renderCanvas:a}},82237(e){var t=!1;e.exports=function(e,n,r){if(r.useCanvas){t||(t=!0,console.warn("CaptureFrame: Cannot capture from main canvas. Activate `forceComposite` on the camera to use this feature. This warning will now mute."));return}r.camera.addToRenderList(n);var i=r.width,a=r.height,o=n.customRenderNodes,s=n.defaultRenderNodes;n.drawingContext.resize(i,a),n.drawingContext.use(),(o.BatchHandler||s.BatchHandler).batch(n.drawingContext,r.texture,0,a,0,0,i,a,i,0,0,0,1,1,!1,4294967295,4294967295,4294967295,4294967295,{}),n.drawingContext.release()}},16005(e,t,n){var r=n(45319),i=2;e.exports={_alpha:1,_alphaTL:1,_alphaTR:1,_alphaBL:1,_alphaBR:1,clearAlpha:function(){return this.setAlpha(1)},setAlpha:function(e,t,n,i){return e===void 0&&(e=1),t===void 0?this.alpha=e:(this._alphaTL=r(e,0,1),this._alphaTR=r(t,0,1),this._alphaBL=r(n,0,1),this._alphaBR=r(i,0,1)),this},alpha:{get:function(){return this._alpha},set:function(e){var t=r(e,0,1);this._alpha=t,this._alphaTL=t,this._alphaTR=t,this._alphaBL=t,this._alphaBR=t,t===0?this.renderFlags&=~i:this.renderFlags|=i}},alphaTopLeft:{get:function(){return this._alphaTL},set:function(e){var t=r(e,0,1);this._alphaTL=t,t!==0&&(this.renderFlags|=i)}},alphaTopRight:{get:function(){return this._alphaTR},set:function(e){var t=r(e,0,1);this._alphaTR=t,t!==0&&(this.renderFlags|=i)}},alphaBottomLeft:{get:function(){return this._alphaBL},set:function(e){var t=r(e,0,1);this._alphaBL=t,t!==0&&(this.renderFlags|=i)}},alphaBottomRight:{get:function(){return this._alphaBR},set:function(e){var t=r(e,0,1);this._alphaBR=t,t!==0&&(this.renderFlags|=i)}}}},88509(e,t,n){var r=n(45319),i=2;e.exports={_alpha:1,clearAlpha:function(){return this.setAlpha(1)},setAlpha:function(e){return e===void 0&&(e=1),this.alpha=e,this},alpha:{get:function(){return this._alpha},set:function(e){var t=r(e,0,1);this._alpha=t,t===0?this.renderFlags&=~i:this.renderFlags|=i}}}},90065(e,t,n){var r=n(10312);e.exports={_blendMode:r.NORMAL,blendMode:{get:function(){return this._blendMode},set:function(e){typeof e==`string`&&(e=r[e]),e|=0,e>=-1&&(this._blendMode=e)}},setBlendMode:function(e){return this.blendMode=e,this}}},94215(e){e.exports={width:0,height:0,displayWidth:{get:function(){return this.scaleX*this.width},set:function(e){this.scaleX=e/this.width}},displayHeight:{get:function(){return this.scaleY*this.height},set:function(e){this.scaleY=e/this.height}},setSize:function(e,t){return this.width=e,this.height=t,this},setDisplaySize:function(e,t){return this.displayWidth=e,this.displayHeight=t,this}}},61683(e){e.exports={texture:null,frame:null,isCropped:!1,setCrop:function(e,t,n,r){if(e===void 0)this.isCropped=!1;else if(this.frame){if(typeof e==`number`)this.frame.setCropUVs(this._crop,e,t,n,r,this.flipX,this.flipY);else{var i=e;this.frame.setCropUVs(this._crop,i.x,i.y,i.width,i.height,this.flipX,this.flipY)}this.isCropped=!0}return this},resetCropObject:function(){return{u0:0,v0:0,u1:0,v1:0,width:0,height:0,x:0,y:0,flipX:!1,flipY:!1,cx:0,cy:0,cw:0,ch:0}}}},89272(e,t,n){var r=n(37105);e.exports={_depth:0,depth:{get:function(){return this._depth},set:function(e){this.displayList&&this.displayList.queueDepthSort(),this._depth=e}},setDepth:function(e){return e===void 0&&(e=0),this.depth=e,this},setToTop:function(){var e=this.getDisplayList();return e&&r.BringToTop(e,this),this},setToBack:function(){var e=this.getDisplayList();return e&&r.SendToBack(e,this),this},setAbove:function(e){var t=this.getDisplayList();return t&&e&&r.MoveAbove(t,this,e),this},setBelow:function(e){var t=this.getDisplayList();return t&&e&&r.MoveBelow(t,this,e),this}}},3248(e){e.exports={timeElapsed:0,timeElapsedResetPeriod:3600*1e3,timePaused:!1,setTimerResetPeriod:function(e){return this.timeElapsedResetPeriod=e,this},setTimerPaused:function(e){return this.timePaused=!!e,this},resetTimer:function(e){return e===void 0&&(e=0),this.timeElapsed=e,this},updateTimer:function(e,t){return this.timePaused||(this.timeElapsed+=t,this.timeElapsed>=this.timeElapsedResetPeriod&&(this.timeElapsed-=this.timeElapsedResetPeriod)),this}}},53427(e,t,n){var r=n(83419),i=n(10189),a=n(16762),o=n(37597),s=n(88344),c=n(47564),l=n(77011),u=n(95200),d=n(16898),f=n(42652),p=n(43927),m=n(84714),h=n(51890),g=n(97797),_=n(37911),v=n(6379),y=n(29861),b=n(14366),x=n(63785),S=n(62229),C=n(99534),w=n(20263),T=n(90002),E=new r({initialize:function(e){this.camera=e,this.list=[]},clear:function(){for(var e=0;e<this.list.length;e++){var t=this.list[e];t.ignoreDestroy||t.destroy()}return this.list.length=0,this},add:function(e,t){return t===void 0?this.list.push(e):this.list.splice(t,0,e),e},remove:function(e,t){var n=this.list.indexOf(e);return n!==-1&&(this.list.splice(n,1),(!e.ignoreDestroy||t)&&e.destroy()),this},getActive:function(){return this.list.filter(D)},addBarrel:function(e){return this.add(new i(this.camera,e))},addBlend:function(e,t,n,r){return this.add(new a(this.camera,e,t,n,r))},addBlocky:function(e){return this.add(new o(this.camera,e))},addBlur:function(e,t,n,r,i,a){return this.add(new s(this.camera,e,t,n,r,i,a))},addBokeh:function(e,t,n){return this.add(new c(this.camera,e,t,n))},addColorMatrix:function(){return this.add(new l(this.camera))},addCombineColorMatrix:function(e){return this.add(new u(this.camera,e))},addDisplacement:function(e,t,n){return this.add(new d(this.camera,e,t,n))},addGlow:function(e,t,n,r,i,a,o){return this.add(new f(this.camera,e,t,n,r,i,a,o))},addGradientMap:function(e){return this.add(new p(this.camera,e))},addImageLight:function(e){return this.add(new m(this.camera,e))},addKey:function(e){return this.add(new h(this.camera,e))},addMask:function(e,t,n,r,i){return this.add(new g(this.camera,e,t,n,r,i))},addNormalTools:function(e){return this.add(new _(this.camera,e))},addPanoramaBlur:function(e){return this.add(new v(this.camera,e))},addPixelate:function(e){return this.add(new y(this.camera,e))},addQuantize:function(e){return this.add(new b(this.camera,e))},addSampler:function(e,t){return this.add(new x(this.camera,e,t))},addShadow:function(e,t,n,r,i,a,o){return this.add(new S(this.camera,e,t,n,r,i,a,o))},addThreshold:function(e,t,n){return this.add(new C(this.camera,e,t,n))},addTiltShift:function(e,t,n,r,i,a){return this.add(new c(this.camera,e,t,n,!0,r,i,a))},addVignette:function(e,t,n,r,i,a){return this.add(new w(this.camera,e,t,n,r,i,a))},addWipe:function(e,t,n,r,i){return this.add(new T(this.camera,e,t,n,r,i))},destroy:function(){this.clear(),this.camera=null}});function D(e){return e.active}e.exports=E},43102(e,t,n){var r=null,i=n(26099),a=n(61340),o={};o={filterCamera:null,filters:{get:function(){return this.filterCamera?this.filterCamera.filters:null}},renderFilters:!0,maxFilterSize:null,filtersAutoFocus:!0,filtersFocusContext:!1,filtersForceComposite:!1,_filtersMatrix:null,_filtersViewMatrix:null,willRenderFilters:function(){return this.renderFilters&&this.filters&&(this.filters.internal.getActive().length>0||this.filters.external.getActive().length>0||this.filtersForceComposite)},enableFilters:function(){if(this.filterCamera||!this.scene.renderer.gl)return this;var e=this.scene;if(r||=n(38058),this.filterCamera=new r(0,0,1,1).setScene(e,!1),this.filterCamera.isObjectInversion=!0,e.game.config.roundPixels&&(this.filterCamera.roundPixels=!0),!this.maxFilterSize){var t=e.renderer.getMaxTextureSize();this.maxFilterSize=new i(t,t)}return this._filtersMatrix=new a,this._filtersViewMatrix=new a,(!this.getBounds||this.width===void 0||this.height===void 0||this.width===0||this.height===0)&&(this.filtersFocusContext=!0),this.addRenderStep(this.renderWebGLFilters,0),this},renderWebGLFilters:function(e,t,n,r,i){if(!t.willRenderFilters()){t.renderWebGLStep(e,t,n,r,i+1);return}var a=n.camera,o=t.filtersAutoFocus,s=t.filtersFocusContext;o&&(s?t.focusFiltersOnCamera(a):t.focusFilters());var c=t.filterCamera;c.preRender();var l=c.roundPixels;if(c.roundPixels=t.willRoundVertices(c,t.rotation%(Math.PI*2)==0&&(t.scaleX,t.scaleY===1)),o&&s){var u=t.parentContainer;if(u){var d=u.getWorldTransformMatrix();c.matrix.multiply(d)}}var f=t._filtersMatrix,p=t._filtersViewMatrix.copyWithScrollFactorFrom(a.getViewMatrix(!n.useCanvas),a.scrollX,a.scrollY,t.scrollFactorX,t.scrollFactorY);if(r&&p.multiply(r),s)f.loadIdentity();else{if(t.type===`Layer`)f.loadIdentity();else{var m=t.flipX?-1:1,h=t.flipY?-1:1;f.applyITRS(t.x,t.y,t.rotation,t.scaleX*m,t.scaleY*h)}var g=c.width,_=c.height;f.translate(-g*c.originX,-_*c.originY),p.multiply(f,f)}var v=t.scrollFactorX,y=t.scrollFactorY;t.scrollFactorX=1,t.scrollFactorY=1,e.cameraRenderNode.run(n,[t],c,f,!0,i+1),t.scrollFactorX=v,t.scrollFactorY=y,c.roundPixels=l;for(var b=c.renderList.length,x=0;x<b;x++)a.addToRenderList(c.renderList[x])},focusFilters:function(){var e=this.x,t=this.y,n=this.originX,r=this.originY,i=this.width,a=this.height;if(this.type===`Layer`||isNaN(e)||isNaN(t)||isNaN(i)||isNaN(a)||isNaN(n)||isNaN(r)||i===0||a===0)return this.filtersFocusContext=!0,this;var o=this.rotation,s=this.scaleX,c=this.scaleY;this.flipX&&(s*=-1,n=1-n),this.flipY&&(c*=-1,r=1-r);var l=e+i*(.5-n),u=t+a*(.5-r);return this.setFilterSize(i,a),this.filterCamera.centerOn(l,u).setRotation(-o).setOrigin(n,r).setZoom(1/s,1/c),this},focusFiltersOnCamera:function(e){var t=e.width,n=e.height,r=e.scrollX,i=e.scrollY,a=e.rotation,o=e.zoomX,s=e.zoomY;return this.setFilterSize(t,n),this.filterCamera.setScroll(r,i),this.filterCamera.setRotation(a),this.filterCamera.setZoom(o,s),this},focusFiltersOverride:function(e,t,n,r){var i=this.filterCamera;n===void 0&&(n=i.width),r===void 0&&(r=i.height),e===void 0&&(e=n/2),t===void 0&&(t=r/2);var a=this.x,o=this.y;this.setFilterSize(n,r),i.setScroll(a-e,o-t);var s=e/n,c=t/r;return i.setOrigin(s,c),this.filtersAutoFocus=!1,this},setFilterSize:function(e,t){e=Math.max(1,Math.min(Math.ceil(e),this.maxFilterSize.x)),t=Math.max(1,Math.min(Math.ceil(t),this.maxFilterSize.y));var n=this.filterCamera;return n&&n.setSize(e,t),this},setFiltersAutoFocus:function(e){return this.filtersAutoFocus=e,this},setFiltersFocusContext:function(e){return this.filtersFocusContext=e,this},setFiltersForceComposite:function(e){return this.filtersForceComposite=e,this},setRenderFilters:function(e){return this.renderFilters=e,this}},e.exports=o},54434(e){e.exports={flipX:!1,flipY:!1,toggleFlipX:function(){return this.flipX=!this.flipX,this},toggleFlipY:function(){return this.flipY=!this.flipY,this},setFlipX:function(e){return this.flipX=e,this},setFlipY:function(e){return this.flipY=e,this},setFlip:function(e,t){return this.flipX=e,this.flipY=t,this},resetFlip:function(){return this.flipX=!1,this.flipY=!1,this}}},8004(e,t,n){var r=n(87841),i=n(11520),a=n(26099);e.exports={prepareBoundsOutput:function(e,t){return t===void 0&&(t=!1),this.rotation!==0&&i(e,this.x,this.y,this.rotation),t&&this.parentContainer&&this.parentContainer.getBoundsTransformMatrix().transformPoint(e.x,e.y,e),e},getCenter:function(e,t){return e===void 0&&(e=new a),e.x=this.x-this.displayWidth*this.originX+this.displayWidth/2,e.y=this.y-this.displayHeight*this.originY+this.displayHeight/2,this.prepareBoundsOutput(e,t)},getTopLeft:function(e,t){return e||=new a,e.x=this.x-this.displayWidth*this.originX,e.y=this.y-this.displayHeight*this.originY,this.prepareBoundsOutput(e,t)},getTopCenter:function(e,t){return e||=new a,e.x=this.x-this.displayWidth*this.originX+this.displayWidth/2,e.y=this.y-this.displayHeight*this.originY,this.prepareBoundsOutput(e,t)},getTopRight:function(e,t){return e||=new a,e.x=this.x-this.displayWidth*this.originX+this.displayWidth,e.y=this.y-this.displayHeight*this.originY,this.prepareBoundsOutput(e,t)},getLeftCenter:function(e,t){return e||=new a,e.x=this.x-this.displayWidth*this.originX,e.y=this.y-this.displayHeight*this.originY+this.displayHeight/2,this.prepareBoundsOutput(e,t)},getRightCenter:function(e,t){return e||=new a,e.x=this.x-this.displayWidth*this.originX+this.displayWidth,e.y=this.y-this.displayHeight*this.originY+this.displayHeight/2,this.prepareBoundsOutput(e,t)},getBottomLeft:function(e,t){return e||=new a,e.x=this.x-this.displayWidth*this.originX,e.y=this.y-this.displayHeight*this.originY+this.displayHeight,this.prepareBoundsOutput(e,t)},getBottomCenter:function(e,t){return e||=new a,e.x=this.x-this.displayWidth*this.originX+this.displayWidth/2,e.y=this.y-this.displayHeight*this.originY+this.displayHeight,this.prepareBoundsOutput(e,t)},getBottomRight:function(e,t){return e||=new a,e.x=this.x-this.displayWidth*this.originX+this.displayWidth,e.y=this.y-this.displayHeight*this.originY+this.displayHeight,this.prepareBoundsOutput(e,t)},getBounds:function(e){e===void 0&&(e=new r);var t,n,i,a,o,s,c,l;if(this.parentContainer){var u=this.parentContainer.getBoundsTransformMatrix();this.getTopLeft(e),u.transformPoint(e.x,e.y,e),t=e.x,n=e.y,this.getTopRight(e),u.transformPoint(e.x,e.y,e),i=e.x,a=e.y,this.getBottomLeft(e),u.transformPoint(e.x,e.y,e),o=e.x,s=e.y,this.getBottomRight(e),u.transformPoint(e.x,e.y,e),c=e.x,l=e.y}else this.getTopLeft(e),t=e.x,n=e.y,this.getTopRight(e),i=e.x,a=e.y,this.getBottomLeft(e),o=e.x,s=e.y,this.getBottomRight(e),c=e.x,l=e.y;return e.x=Math.min(t,i,o,c),e.y=Math.min(n,a,s,l),e.width=Math.max(t,i,o,c)-e.x,e.height=Math.max(n,a,s,l)-e.y,e}}},73629(e){e.exports={lighting:!1,selfShadow:{enabled:null,penumbra:.5,diffuseFlatThreshold:1/3},setLighting:function(e){return this.lighting=e,this},setSelfShadow:function(e,t,n){return e!==void 0&&(e===null?this.selfShadow.enabled=this.scene.sys.game.config.selfShadow:this.selfShadow.enabled=e),t!==void 0&&(this.selfShadow.penumbra=t),n!==void 0&&(this.selfShadow.diffuseFlatThreshold=n),this}}},8573(e,t,n){var r=n(8054),i=n(80661);e.exports={mask:null,setMask:function(e){return this.scene.renderer.type===r.WEBGL?(console.warn(`Phaser.GameObjects.Components.Mask.setMask: This method is not supported in WebGL. Create a Mask filter instead.`),this):(this.mask=e,this)},clearMask:function(e){return e===void 0&&(e=!1),e&&this.mask&&this.mask.destroy(),this.mask=null,this},createGeometryMask:function(e){return e===void 0&&(this.type===`Graphics`||this.geom)&&(e=this),new i(this.scene,e)}}},27387(e){e.exports={_originComponent:!0,originX:.5,originY:.5,_displayOriginX:0,_displayOriginY:0,displayOriginX:{get:function(){return this._displayOriginX},set:function(e){this._displayOriginX=e,this.originX=e/this.width}},displayOriginY:{get:function(){return this._displayOriginY},set:function(e){this._displayOriginY=e,this.originY=e/this.height}},setOrigin:function(e,t){return e===void 0&&(e=.5),t===void 0&&(t=e),this.originX=e,this.originY=t,this.updateDisplayOrigin()},setOriginFromFrame:function(){return!this.frame||!this.frame.customPivot?this.setOrigin():(this.originX=this.frame.pivotX,this.originY=this.frame.pivotY,this.updateDisplayOrigin())},setDisplayOrigin:function(e,t){return e===void 0&&(e=0),t===void 0&&(t=e),this.displayOriginX=e,this.displayOriginY=t,this},updateDisplayOrigin:function(){return this._displayOriginX=this.originX*this.width,this._displayOriginY=this.originY*this.height,this}}},37640(e,t,n){var r=n(39506),i=n(57355),a=n(35154),o=n(86353),s=n(26099);e.exports={path:null,rotateToPath:!1,pathRotationOffset:0,pathOffset:null,pathVector:null,pathDelta:null,pathTween:null,pathConfig:null,_prevDirection:o.PLAYING_FORWARD,setPath:function(e,t){t===void 0&&(t=this.pathConfig);var n=this.pathTween;return n&&n.isPlaying()&&n.stop(),this.path=e,t&&this.startFollow(t),this},setRotateToPath:function(e,t){return t===void 0&&(t=0),this.rotateToPath=e,this.pathRotationOffset=t,this},isFollowing:function(){var e=this.pathTween;return e&&e.isPlaying()},startFollow:function(e,t){e===void 0&&(e={}),t===void 0&&(t=0);var n=this.pathTween;n&&n.isPlaying()&&n.stop(),typeof e==`number`&&(e={duration:e}),e.from=a(e,`from`,0),e.to=a(e,`to`,1);var c=i(e,`positionOnPath`,!1);this.rotateToPath=i(e,`rotateToPath`,!1),this.pathRotationOffset=a(e,`rotationOffset`,0);var l=a(e,`startAt`,t);if(l&&(e.onStart=function(e){var t=e.data[0];t.progress=l,t.elapsed=t.duration*l;var n=t.ease(t.progress);t.current=t.start+(t.end-t.start)*n,t.setTargetValue()}),this.pathOffset||=new s(this.x,this.y),this.pathVector||=new s,this.pathDelta||=new s,this.pathDelta.reset(),e.persist=!0,this.pathTween=this.scene.sys.tweens.addCounter(e),this.path.getStartPoint(this.pathOffset),c&&(this.x=this.pathOffset.x,this.y=this.pathOffset.y),this.pathOffset.x=this.x-this.pathOffset.x,this.pathOffset.y=this.y-this.pathOffset.y,this._prevDirection=o.PLAYING_FORWARD,this.rotateToPath){var u=this.path.getPoint(.1);this.rotation=Math.atan2(u.y-this.y,u.x-this.x)+r(this.pathRotationOffset)}return this.pathConfig=e,this},pauseFollow:function(){var e=this.pathTween;return e&&e.isPlaying()&&e.pause(),this},resumeFollow:function(){var e=this.pathTween;return e&&e.isPaused()&&e.resume(),this},stopFollow:function(){var e=this.pathTween;return e&&e.isPlaying()&&e.stop(),this},pathUpdate:function(){var e=this.pathTween;if(e&&e.data){var t=e.data[0],n=this.pathDelta,i=this.pathVector;if(n.copy(i).negate(),t.state===o.COMPLETE){this.path.getPoint(t.end,i),n.add(i),i.add(this.pathOffset),this.setPosition(i.x,i.y);return}else if(t.state!==o.PLAYING_FORWARD&&t.state!==o.PLAYING_BACKWARD)return;this.path.getPoint(e.getValue(),i),n.add(i),i.add(this.pathOffset);var a=this.x,s=this.y;this.setPosition(i.x,i.y);var c=this.x-a,l=this.y-s;if(c===0&&l===0)return;if(t.state!==this._prevDirection){this._prevDirection=t.state;return}this.rotateToPath&&(this.rotation=Math.atan2(l,c)+r(this.pathRotationOffset))}}}},68680(e,t,n){var r=n(62644);e.exports={customRenderNodes:null,defaultRenderNodes:null,renderNodeData:null,initRenderNodes:function(e){this.customRenderNodes={},this.defaultRenderNodes={},this.renderNodeData={};var t=this.scene.sys.renderer;if(t){var n=t.renderNodes;if(n&&e){var r=this.defaultRenderNodes;e.each(function(e,t){r[e]=n.getNode(t)})}}},setRenderNodeRole:function(e,t,n,i){var a=this.scene.sys.renderer;if(!a)return this;var o=a.renderNodes;if(!o)return this;if(t!==null){if(typeof t==`string`&&(t=o.getNode(t)),!t)return this;this.customRenderNodes[e]=t,n?this.renderNodeData[t.name]=i?r(n):n:this.renderNodeData[t.name]={}}else{var s=this.customRenderNodes[e];s&&(delete this.renderNodeData[s.name],delete this.customRenderNodes[e])}return this},setRenderNodeData:function(e,t,n){var r=e;typeof e!=`string`&&(r=e.name);var i=this.renderNodeData[r];return n===void 0?delete i[t]:i[t]=n,this}}},86038(e){var t={};t={_renderSteps:null,renderWebGLStep:function(e,t,n,r,i,a,o){i===void 0&&(i=0);var s=t._renderSteps[i];s&&(a?o===void 0&&(o=0):(a=[t],o=0),s(e,t,n,r,i,a,o))},addRenderStep:function(e,t){return this._renderSteps||=[],t===void 0?(this._renderSteps.push(e),this):(this._renderSteps.splice(t,0,e),this)}},e.exports=t},80227(e){e.exports={scrollFactorX:1,scrollFactorY:1,setScrollFactor:function(e,t){return t===void 0&&(t=e),this.scrollFactorX=e,this.scrollFactorY=t,this}}},16736(e){e.exports={_sizeComponent:!0,width:0,height:0,displayWidth:{get:function(){return Math.abs(this.scaleX*this.frame.realWidth)},set:function(e){this.scaleX=e/this.frame.realWidth}},displayHeight:{get:function(){return Math.abs(this.scaleY*this.frame.realHeight)},set:function(e){this.scaleY=e/this.frame.realHeight}},setSizeToFrame:function(e){e||=this.frame,this.width=e.realWidth,this.height=e.realHeight;var t=this.input;return t&&!t.customHitArea&&(t.hitArea.width=this.width,t.hitArea.height=this.height),this},setSize:function(e,t){return this.width=e,this.height=t,this},setDisplaySize:function(e,t){return this.displayWidth=e,this.displayHeight=t,this}}},37726(e,t,n){var r=n(4327),i=8;e.exports={texture:null,frame:null,isCropped:!1,setTexture:function(e,t,n,r){return this.texture=this.scene.sys.textures.get(e),this.setFrame(t,n,r)},setFrame:function(e,t,n){return t===void 0&&(t=!0),n===void 0&&(n=!0),e instanceof r?(this.texture=this.scene.sys.textures.get(e.texture.key),this.frame=e):this.frame=this.texture.get(e),!this.frame.cutWidth||!this.frame.cutHeight?this.renderFlags&=~i:this.renderFlags|=i,this._sizeComponent&&t&&this.setSizeToFrame(),this._originComponent&&n&&(this.frame.customPivot?this.setOrigin(this.frame.pivotX,this.frame.pivotY):this.updateDisplayOrigin()),this}}},79812(e,t,n){var r=n(4327),i=8;e.exports={texture:null,frame:null,isCropped:!1,setCrop:function(e,t,n,r){if(e===void 0)this.isCropped=!1;else if(this.frame){if(typeof e==`number`)this.frame.setCropUVs(this._crop,e,t,n,r,this.flipX,this.flipY);else{var i=e;this.frame.setCropUVs(this._crop,i.x,i.y,i.width,i.height,this.flipX,this.flipY)}this.isCropped=!0}return this},setTexture:function(e,t){return this.texture=this.scene.sys.textures.get(e),this.setFrame(t)},setFrame:function(e,t,n){return t===void 0&&(t=!0),n===void 0&&(n=!0),e instanceof r?(this.texture=this.scene.sys.textures.get(e.texture.key),this.frame=e):this.frame=this.texture.get(e),!this.frame.cutWidth||!this.frame.cutHeight?this.renderFlags&=~i:this.renderFlags|=i,this._sizeComponent&&t&&this.setSizeToFrame(),this._originComponent&&n&&(this.frame.customPivot?this.setOrigin(this.frame.pivotX,this.frame.pivotY):this.updateDisplayOrigin()),this.isCropped&&this.frame.updateCropUVs(this._crop,this.flipX,this.flipY),this},resetCropObject:function(){return{u0:0,v0:0,u1:0,v1:0,width:0,height:0,x:0,y:0,flipX:!1,flipY:!1,cx:0,cy:0,cw:0,ch:0}}}},27472(e,t,n){var r=n(84322);e.exports={tintTopLeft:16777215,tintTopRight:16777215,tintBottomLeft:16777215,tintBottomRight:16777215,tintMode:r.MULTIPLY,clearTint:function(){return this.setTint(16777215),this.setTintMode(r.MULTIPLY),this},setTint:function(e,t,n,r){return e===void 0&&(e=16777215),t===void 0&&(t=e,n=e,r=e),this.tintTopLeft=e,this.tintTopRight=t,this.tintBottomLeft=n,this.tintBottomRight=r,this},setTintMode:function(e){return this.tintMode=e,this},setTintFill:function(){console.error("`setTintFill(color)` is removed as of Phaser 4. Use setTint(color).setTintMode(Phaser.TintModes.FILL)` instead.")},tint:{get:function(){return this.tintTopLeft},set:function(e){this.setTint(e,e,e,e)}},isTinted:{get:function(){var e=16777215;return this.tintMode!==r.MULTIPLY||this.tintTopLeft!==e||this.tintTopRight!==e||this.tintBottomLeft!==e||this.tintBottomRight!==e}}}},53774(e){e.exports=function(e){var t={name:e.name,type:e.type,x:e.x,y:e.y,depth:e.depth,scale:{x:e.scaleX,y:e.scaleY},origin:{x:e.originX,y:e.originY},flipX:e.flipX,flipY:e.flipY,rotation:e.rotation,alpha:e.alpha,visible:e.visible,blendMode:e.blendMode,textureKey:``,frameKey:``,data:{}};return e.texture&&(t.textureKey=e.texture.key,t.frameKey=e.frame.name),t}},16901(e,t,n){var r=n(36383),i=n(61340),a=n(85955),o=n(86554),s=n(30954),c=n(26099),l=4;e.exports={hasTransformComponent:!0,_scaleX:1,_scaleY:1,_rotation:0,x:0,y:0,z:0,w:0,scale:{get:function(){return(this._scaleX+this._scaleY)/2},set:function(e){this._scaleX=e,this._scaleY=e,e===0?this.renderFlags&=~l:this.renderFlags|=l}},scaleX:{get:function(){return this._scaleX},set:function(e){this._scaleX=e,e===0?this.renderFlags&=~l:this._scaleY!==0&&(this.renderFlags|=l)}},scaleY:{get:function(){return this._scaleY},set:function(e){this._scaleY=e,e===0?this.renderFlags&=~l:this._scaleX!==0&&(this.renderFlags|=l)}},angle:{get:function(){return s(this._rotation*r.RAD_TO_DEG)},set:function(e){this.rotation=s(e)*r.DEG_TO_RAD}},rotation:{get:function(){return this._rotation},set:function(e){this._rotation=o(e)}},setPosition:function(e,t,n,r){return e===void 0&&(e=0),t===void 0&&(t=e),n===void 0&&(n=0),r===void 0&&(r=0),this.x=e,this.y=t,this.z=n,this.w=r,this},copyPosition:function(e){return e.x!==void 0&&(this.x=e.x),e.y!==void 0&&(this.y=e.y),e.z!==void 0&&(this.z=e.z),e.w!==void 0&&(this.w=e.w),this},setRandomPosition:function(e,t,n,r){return e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=this.scene.sys.scale.width),r===void 0&&(r=this.scene.sys.scale.height),this.x=e+Math.random()*n,this.y=t+Math.random()*r,this},setRotation:function(e){return e===void 0&&(e=0),this.rotation=e,this},setAngle:function(e){return e===void 0&&(e=0),this.angle=e,this},setScale:function(e,t){return e===void 0&&(e=1),t===void 0&&(t=e),this.scaleX=e,this.scaleY=t,this},setX:function(e){return e===void 0&&(e=0),this.x=e,this},setY:function(e){return e===void 0&&(e=0),this.y=e,this},setZ:function(e){return e===void 0&&(e=0),this.z=e,this},setW:function(e){return e===void 0&&(e=0),this.w=e,this},getLocalTransformMatrix:function(e){return e===void 0&&(e=new i),e.applyITRS(this.x,this.y,this._rotation,this._scaleX,this._scaleY)},getWorldTransformMatrix:function(e,t){e===void 0&&(e=new i);var n=this.parentContainer;if(!n)return this.getLocalTransformMatrix(e);var r=!1;for(t||(t=new i,r=!0),e.applyITRS(this.x,this.y,this._rotation,this._scaleX,this._scaleY);n;)t.applyITRS(n.x,n.y,n._rotation,n._scaleX,n._scaleY),t.multiply(e,e),n=n.parentContainer;return r&&t.destroy(),e},getLocalPoint:function(e,t,n,r){n||=new c,r||=this.scene.sys.cameras.main;var i=r.scrollX,o=r.scrollY,s=e+i*this.scrollFactorX-i,l=t+o*this.scrollFactorY-o;return this.parentContainer?this.getWorldTransformMatrix().applyInverse(s,l,n):a(s,l,this.x,this.y,this.rotation,this.scaleX,this.scaleY,n),this._originComponent&&(n.x+=this._displayOriginX,n.y+=this._displayOriginY),n},getWorldPoint:function(e,t,n){if(e===void 0&&(e=new c),!this.parentContainer)return e.x=this.x,e.y=this.y,e;var r=this.getWorldTransformMatrix(t,n);return e.x=r.tx,e.y=r.ty,e},getParentRotation:function(){for(var e=0,t=this.parentContainer;t;)e+=t.rotation,t=t.parentContainer;return e}}},61340(e,t,n){var r=n(83419),i=n(36383),a=n(26099);e.exports=new r({initialize:function(e,t,n,r,i,a){e===void 0&&(e=1),t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=1),i===void 0&&(i=0),a===void 0&&(a=0),this.matrix=new Float32Array([e,t,n,r,i,a,0,0,1]),this.decomposedMatrix={translateX:0,translateY:0,scaleX:1,scaleY:1,rotation:0},this.quad=new Float32Array(8)},a:{get:function(){return this.matrix[0]},set:function(e){this.matrix[0]=e}},b:{get:function(){return this.matrix[1]},set:function(e){this.matrix[1]=e}},c:{get:function(){return this.matrix[2]},set:function(e){this.matrix[2]=e}},d:{get:function(){return this.matrix[3]},set:function(e){this.matrix[3]=e}},e:{get:function(){return this.matrix[4]},set:function(e){this.matrix[4]=e}},f:{get:function(){return this.matrix[5]},set:function(e){this.matrix[5]=e}},tx:{get:function(){return this.matrix[4]},set:function(e){this.matrix[4]=e}},ty:{get:function(){return this.matrix[5]},set:function(e){this.matrix[5]=e}},rotation:{get:function(){return Math.acos(this.a/this.scaleX)*(Math.atan(-this.c/this.a)<0?-1:1)}},rotationNormalized:{get:function(){var e=this.matrix,t=e[0],n=e[1],r=e[2],a=e[3];return t||n?n>0?Math.acos(t/this.scaleX):-Math.acos(t/this.scaleX):r||a?i.PI_OVER_2-(a>0?Math.acos(-r/this.scaleY):-Math.acos(r/this.scaleY)):0}},scaleX:{get:function(){return Math.sqrt(this.a*this.a+this.b*this.b)}},scaleY:{get:function(){return Math.sqrt(this.c*this.c+this.d*this.d)}},loadIdentity:function(){var e=this.matrix;return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e[4]=0,e[5]=0,this},translate:function(e,t){var n=this.matrix;return n[4]=n[0]*e+n[2]*t+n[4],n[5]=n[1]*e+n[3]*t+n[5],this},scale:function(e,t){var n=this.matrix;return n[0]*=e,n[1]*=e,n[2]*=t,n[3]*=t,this},rotate:function(e){var t=Math.sin(e),n=Math.cos(e),r=this.matrix,i=r[0],a=r[1],o=r[2],s=r[3];return r[0]=i*n+o*t,r[1]=a*n+s*t,r[2]=i*-t+o*n,r[3]=a*-t+s*n,this},multiply:function(e,t){var n=this.matrix,r=e.matrix,i=n[0],a=n[1],o=n[2],s=n[3],c=n[4],l=n[5],u=r[0],d=r[1],f=r[2],p=r[3],m=r[4],h=r[5],g=t===void 0?n:t.matrix;return g[0]=u*i+d*o,g[1]=u*a+d*s,g[2]=f*i+p*o,g[3]=f*a+p*s,g[4]=m*i+h*o+c,g[5]=m*a+h*s+l,g},multiplyWithOffset:function(e,t,n){var r=this.matrix,i=e.matrix,a=r[0],o=r[1],s=r[2],c=r[3],l=r[4],u=r[5],d=t*a+n*s+l,f=t*o+n*c+u,p=i[0],m=i[1],h=i[2],g=i[3],_=i[4],v=i[5];return r[0]=p*a+m*s,r[1]=p*o+m*c,r[2]=h*a+g*s,r[3]=h*o+g*c,r[4]=_*a+v*s+d,r[5]=_*o+v*c+f,this},transform:function(e,t,n,r,i,a){var o=this.matrix,s=o[0],c=o[1],l=o[2],u=o[3],d=o[4],f=o[5];return o[0]=e*s+t*l,o[1]=e*c+t*u,o[2]=n*s+r*l,o[3]=n*c+r*u,o[4]=i*s+a*l+d,o[5]=i*c+a*u+f,this},transformPoint:function(e,t,n){n===void 0&&(n={x:0,y:0});var r=this.matrix,i=r[0],a=r[1],o=r[2],s=r[3],c=r[4],l=r[5];return n.x=e*i+t*o+c,n.y=e*a+t*s+l,n},invert:function(){var e=this.matrix,t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=t*i-n*r;return e[0]=i/s,e[1]=-n/s,e[2]=-r/s,e[3]=t/s,e[4]=(r*o-i*a)/s,e[5]=-(t*o-n*a)/s,this},copyFrom:function(e){var t=this.matrix;return t[0]=e.a,t[1]=e.b,t[2]=e.c,t[3]=e.d,t[4]=e.e,t[5]=e.f,this},copyFromArray:function(e){var t=this.matrix;return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],this},copyWithScrollFactorFrom:function(e,t,n,r,i){var a=this.matrix;a[0]=e.a,a[1]=e.b,a[2]=e.c,a[3]=e.d;var o=t*(1-r),s=n*(1-i);return a[4]=e.a*o+e.c*s+e.e,a[5]=e.b*o+e.d*s+e.f,this},copyToContext:function(e){var t=this.matrix;return e.transform(t[0],t[1],t[2],t[3],t[4],t[5]),e},setToContext:function(e){return e.setTransform(this.a,this.b,this.c,this.d,this.e,this.f),e},copyToArray:function(e){var t=this.matrix;return e===void 0?e=[t[0],t[1],t[2],t[3],t[4],t[5]]:(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5]),e},setTransform:function(e,t,n,r,i,a){var o=this.matrix;return o[0]=e,o[1]=t,o[2]=n,o[3]=r,o[4]=i,o[5]=a,this},decomposeMatrix:function(){var e=this.decomposedMatrix,t=this.matrix,n=t[0],r=t[1],i=t[2],a=t[3],o=n*a-r*i;if(e.translateX=t[4],e.translateY=t[5],n||r){var s=Math.sqrt(n*n+r*r);e.rotation=r>0?Math.acos(n/s):-Math.acos(n/s),e.scaleX=s,e.scaleY=o/s}else if(i||a){var c=Math.sqrt(i*i+a*a);e.rotation=Math.PI*.5-(a>0?Math.acos(-i/c):-Math.acos(i/c)),e.scaleX=o/c,e.scaleY=c}else e.rotation=0,e.scaleX=0,e.scaleY=0;return e},applyITRS:function(e,t,n,r,i){var a=this.matrix,o=Math.sin(n),s=Math.cos(n);return a[4]=e,a[5]=t,a[0]=s*r,a[1]=o*r,a[2]=-o*i,a[3]=s*i,this},applyInverse:function(e,t,n){n===void 0&&(n=new a);var r=this.matrix,i=r[0],o=r[1],s=r[2],c=r[3],l=r[4],u=r[5],d=1/(i*c+s*-o);return n.x=c*d*e+-s*d*t+(u*s-l*c)*d,n.y=i*d*t+-o*d*e+(-u*i+l*o)*d,n},setQuad:function(e,t,n,r,i){i===void 0&&(i=this.quad);var a=this.matrix,o=a[0],s=a[1],c=a[2],l=a[3],u=a[4],d=a[5];return i[0]=e*o+t*c+u,i[1]=e*s+t*l+d,i[2]=e*o+r*c+u,i[3]=e*s+r*l+d,i[4]=n*o+r*c+u,i[5]=n*s+r*l+d,i[6]=n*o+t*c+u,i[7]=n*s+t*l+d,i},getX:function(e,t){return e*this.a+t*this.c+this.e},getY:function(e,t){return e*this.b+t*this.d+this.f},getXRound:function(e,t,n){var r=this.getX(e,t);return n&&(r=Math.floor(r+.5)),r},getYRound:function(e,t,n){var r=this.getY(e,t);return n&&(r=Math.floor(r+.5)),r},getCSSMatrix:function(){var e=this.matrix;return`matrix(`+e[0]+`,`+e[1]+`,`+e[2]+`,`+e[3]+`,`+e[4]+`,`+e[5]+`)`},destroy:function(){this.matrix=null,this.quad=null,this.decomposedMatrix=null}})},59715(e){var t=1;e.exports={_visible:!0,visible:{get:function(){return this._visible},set:function(e){e?(this._visible=!0,this.renderFlags|=t):(this._visible=!1,this.renderFlags&=~t)}},setVisible:function(e){return this.visible=e,this}}},31401(e,t,n){e.exports={Alpha:n(16005),AlphaSingle:n(88509),BlendMode:n(90065),ComputedSize:n(94215),Crop:n(61683),Depth:n(89272),ElapseTimer:n(3248),FilterList:n(53427),Filters:n(43102),Flip:n(54434),GetBounds:n(8004),Lighting:n(73629),Mask:n(8573),Origin:n(27387),PathFollower:n(37640),RenderNodes:n(68680),RenderSteps:n(86038),ScrollFactor:n(80227),Size:n(16736),Texture:n(37726),TextureCrop:n(79812),Tint:n(27472),ToJSON:n(53774),Transform:n(16901),TransformMatrix:n(61340),Visible:n(59715)}},31559(e,t,n){var r=n(37105),i=n(10312),a=n(83419),o=n(31401),s=n(51708),c=n(95643),l=n(87841),u=n(29959),d=n(36899),f=n(26099),p=new o.TransformMatrix;e.exports=new a({Extends:c,Mixins:[o.AlphaSingle,o.BlendMode,o.ComputedSize,o.Depth,o.Mask,o.Transform,o.Visible,u],initialize:function(e,t,n,r){c.call(this,e,`Container`),this.list=[],this.exclusive=!0,this.maxSize=-1,this.position=0,this.localTransform=new o.TransformMatrix,this._sortKey=``,this._sysEvents=e.sys.events,this.scrollFactorX=1,this.scrollFactorY=1,this.setPosition(t,n),this.setBlendMode(i.SKIP_CHECK),r&&this.add(r)},originX:{get:function(){return .5}},originY:{get:function(){return .5}},displayOriginX:{get:function(){return this.width*.5}},displayOriginY:{get:function(){return this.height*.5}},setExclusive:function(e){return e===void 0&&(e=!0),this.exclusive=e,this},getBounds:function(e){if(e===void 0&&(e=new l),e.setTo(this.x,this.y,0,0),this.parentContainer){var t=this.parentContainer.getBoundsTransformMatrix().transformPoint(this.x,this.y);e.setTo(t.x,t.y,0,0)}if(this.list.length>0){var n=this.list,r=new l,i=!1;e.setEmpty();for(var a=0;a<n.length;a++){var o=n[a];o.getBounds&&(o.getBounds(r),i?d(r,e,e):(e.setTo(r.x,r.y,r.width,r.height),i=!0))}}return e},addHandler:function(e){e.once(s.DESTROY,this.onChildDestroyed,this),this.exclusive&&(e.parentContainer&&e.parentContainer.remove(e),e.parentContainer=this,e.removeFromDisplayList(),e.addedToScene())},removeHandler:function(e){e.off(s.DESTROY,this.remove,this),this.exclusive&&(e.parentContainer=null,e.removedFromScene(),e.addToDisplayList())},pointToContainer:function(e,t){t===void 0&&(t=new f),this.parentContainer?this.parentContainer.pointToContainer(e,t):(t.x=e.x,t.y=e.y);var n=p;return n.applyITRS(this.x,this.y,this.rotation,this.scaleX,this.scaleY),n.invert(),n.transformPoint(e.x,e.y,t),t},getBoundsTransformMatrix:function(){return this.getWorldTransformMatrix(p,this.localTransform)},add:function(e){return r.Add(this.list,e,this.maxSize,this.addHandler,this),this},addAt:function(e,t){return r.AddAt(this.list,e,t,this.maxSize,this.addHandler,this),this},getAt:function(e){return this.list[e]},getIndex:function(e){return this.list.indexOf(e)},sort:function(e,t){return e?(t===void 0&&(t=function(t,n){return t[e]-n[e]}),r.StableSort(this.list,t),this):this},getByName:function(e){return r.GetFirst(this.list,`name`,e)},getRandom:function(e,t){return r.GetRandom(this.list,e,t)},getFirst:function(e,t,n,i){return r.GetFirst(this.list,e,t,n,i)},getAll:function(e,t,n,i){return r.GetAll(this.list,e,t,n,i)},count:function(e,t,n,i){return r.CountAllMatching(this.list,e,t,n,i)},swap:function(e,t){return r.Swap(this.list,e,t),this},moveTo:function(e,t){return r.MoveTo(this.list,e,t),this},moveAbove:function(e,t){return r.MoveAbove(this.list,e,t),this},moveBelow:function(e,t){return r.MoveBelow(this.list,e,t),this},remove:function(e,t){var n=r.Remove(this.list,e,this.removeHandler,this);if(t&&n){Array.isArray(n)||(n=[n]);for(var i=0;i<n.length;i++)n[i].destroy()}return this},removeAt:function(e,t){var n=r.RemoveAt(this.list,e,this.removeHandler,this);return t&&n&&n.destroy(),this},removeBetween:function(e,t,n){var i=r.RemoveBetween(this.list,e,t,this.removeHandler,this);if(n)for(var a=0;a<i.length;a++)i[a].destroy();return this},removeAll:function(e){var t=this.list;if(e){for(var n=0;n<t.length;n++)t[n]&&t[n].scene&&(t[n].off(s.DESTROY,this.onChildDestroyed,this),t[n].destroy());this.list=[]}else r.RemoveBetween(t,0,t.length,this.removeHandler,this);return this},bringToTop:function(e){return r.BringToTop(this.list,e),this},sendToBack:function(e){return r.SendToBack(this.list,e),this},moveUp:function(e){return r.MoveUp(this.list,e),this},moveDown:function(e){return r.MoveDown(this.list,e),this},reverse:function(){return this.list.reverse(),this},shuffle:function(){return r.Shuffle(this.list),this},replace:function(e,t,n){return r.Replace(this.list,e,t)&&(this.addHandler(t),this.removeHandler(e),n&&e.destroy()),this},exists:function(e){return this.list.indexOf(e)>-1},setAll:function(e,t,n,i){return r.SetAll(this.list,e,t,n,i),this},each:function(e,t){var n=[null],r,i=this.list.slice(),a=i.length;for(r=2;r<arguments.length;r++)n.push(arguments[r]);for(r=0;r<a;r++)n[0]=i[r],e.apply(t,n);return this},iterate:function(e,t){var n=[null],r;for(r=2;r<arguments.length;r++)n.push(arguments[r]);for(r=0;r<this.list.length;r++)n[0]=this.list[r],e.apply(t,n);return this},setScrollFactor:function(e,t,n){return t===void 0&&(t=e),n===void 0&&(n=!1),this.scrollFactorX=e,this.scrollFactorY=t,n&&(r.SetAll(this.list,`scrollFactorX`,e),r.SetAll(this.list,`scrollFactorY`,t)),this},length:{get:function(){return this.list.length}},first:{get:function(){return this.position=0,this.list.length>0?this.list[0]:null}},last:{get:function(){return this.list.length>0?(this.position=this.list.length-1,this.list[this.position]):null}},next:{get:function(){return this.position<this.list.length?(this.position++,this.list[this.position]):null}},previous:{get:function(){return this.position>0?(this.position--,this.list[this.position]):null}},preDestroy:function(){this.removeAll(!!this.exclusive),this.localTransform.destroy(),this.list=[]},onChildDestroyed:function(e){r.Remove(this.list,e),this.exclusive&&(e.parentContainer=null,e.removedFromScene())}})},53584(e){e.exports=function(e,t,n,r){n.addToRenderList(t);var i=t.list;if(i.length!==0){var a=t.localTransform;r?(a.loadIdentity(),a.multiply(r),a.translate(t.x,t.y),a.rotate(t.rotation),a.scale(t.scaleX,t.scaleY)):a.applyITRS(t.x,t.y,t.rotation,t.scaleX,t.scaleY);var o=t.blendMode!==-1;o||e.setBlendMode(0);var s=t._alpha,c=t.scrollFactorX,l=t.scrollFactorY;t.mask&&t.mask.preRenderCanvas(e,null,n);for(var u=0;u<i.length;u++){var d=i[u];if(d.willRender(n)){var f=d.alpha,p=d.scrollFactorX,m=d.scrollFactorY;!o&&d.blendMode!==e.currentBlendMode&&e.setBlendMode(d.blendMode),d.setScrollFactor(p*c,m*l),d.setAlpha(f*s),d.renderCanvas(e,d,n,a),d.setAlpha(f),d.setScrollFactor(p,m)}}t.mask&&t.mask.postRenderCanvas(e)}}},77143(e,t,n){var r=n(25305),i=n(31559),a=n(44603),o=n(23568),s=n(95540);a.register(`container`,function(e,t){e===void 0&&(e={});var n=o(e,`x`,0),a=o(e,`y`,0),c=s(e,`children`,null),l=new i(this.scene,n,a,c);return t!==void 0&&(e.add=t),r(this.scene,l,e),l})},24961(e,t,n){var r=n(31559);n(39429).register(`container`,function(e,t,n){return this.displayList.add(new r(this.scene,e,t,n))})},29959(e,t,n){var r=n(29747),i=r,a=r;i=n(72249),a=n(53584),e.exports={renderWebGL:i,renderCanvas:a}},72249(e,t,n){var r=n(8054);e.exports=function(e,t,n,i,a,o,s){var c=n.camera;c.addToRenderList(t);var l=t.list,u=l.length;if(u!==0){var d=n,f=t.localTransform;i?(f.loadIdentity(),f.multiply(i),f.translate(t.x,t.y),f.rotate(t.rotation),f.scale(t.scaleX,t.scaleY)):f.applyITRS(t.x,t.y,t.rotation,t.scaleX,t.scaleY);var p=t.blendMode!==-1;!p&&d.blendMode!==0&&(d=d.getClone(),d.setBlendMode(0),d.use());for(var m=d,h=t.alpha,g=t.scrollFactorX,_=t.scrollFactorY,v=0;v<u;v++){var y=l[v];if(y.willRender(c)){var b,x,S,C;if(y.alphaTopLeft!==void 0)b=y.alphaTopLeft,x=y.alphaTopRight,S=y.alphaBottomLeft,C=y.alphaBottomRight;else{var w=y.alpha;b=w,x=w,S=w,C=w}var T=y.scrollFactorX,E=y.scrollFactorY;!p&&y.blendMode!==m.blendMode&&y.blendMode!==r.BlendModes.SKIP_CHECK&&(m=d.getClone(),m.setBlendMode(y.blendMode),m.use()),y.setScrollFactor(T*g,E*_),y.setAlpha(b*h,x*h,S*h,C*h),y.renderWebGLStep(e,y,m,f,void 0,l,v),y.setAlpha(b,x,S,C),y.setScrollFactor(T,E)}}m!==n&&m.release()}}},47407(e){e.exports=[`normal`,`multiply`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`]},3069(e,t,n){var r=n(83419),i=n(31401),a=n(441),o=n(95643),s=n(41212),c=n(35846),l=n(44594),u=n(61369);e.exports=new r({Extends:o,Mixins:[i.AlphaSingle,i.BlendMode,i.Depth,i.Origin,i.ScrollFactor,i.Transform,i.Visible,a],initialize:function(e,t,n,r,i,a){if(o.call(this,e,`DOMElement`),this.parent=e.sys.game.domContainer,!this.parent)throw Error(`No DOM Container set in game config`);this.cache=e.sys.cache.html,this.node,this.transformOnly=!1,this.skewX=0,this.skewY=0,this.rotate3d=new u,this.rotate3dAngle=`deg`,this.pointerEvents=`auto`,this.width=0,this.height=0,this.displayWidth=0,this.displayHeight=0,this.handler=this.dispatchNativeEvent.bind(this),this.setPosition(t,n),typeof r==`string`?r[0]===`#`?this.setElement(r.substr(1),i,a):this.createElement(r,i,a):r&&this.setElement(r,i,a),e.sys.events.on(l.SLEEP,this.handleSceneEvent,this),e.sys.events.on(l.WAKE,this.handleSceneEvent,this),e.sys.events.on(l.PRE_RENDER,this.preRender,this)},handleSceneEvent:function(e){var t=this.node,n=t.style;t&&(n.display=e.settings.visible?`block`:`none`)},setSkew:function(e,t){return e===void 0&&(e=0),t===void 0&&(t=e),this.skewX=e,this.skewY=t,this},setPerspective:function(e){return this.parent.style.perspective=e+`px`,this},perspective:{get:function(){return parseFloat(this.parent.style.perspective)},set:function(e){this.parent.style.perspective=e+`px`}},addListener:function(e){if(this.node){e=e.split(` `);for(var t=0;t<e.length;t++)this.node.addEventListener(e[t],this.handler,!1)}return this},removeListener:function(e){if(this.node){e=e.split(` `);for(var t=0;t<e.length;t++)this.node.removeEventListener(e[t],this.handler)}return this},dispatchNativeEvent:function(e){this.emit(e.type,e)},createElement:function(e,t,n){return this.setElement(document.createElement(e),t,n)},setElement:function(e,t,n){this.removeElement();var r;if(typeof e==`string`?(e[0]===`#`&&(e=e.substr(1)),r=document.getElementById(e)):typeof e==`object`&&e.nodeType===1&&(r=e),!r)return this;if(this.node=r,t&&s(t))for(var i in t)r.style[i]=t[i];else typeof t==`string`&&(r.style=t);return r.style.zIndex=`0`,r.style.display=`inline`,r.style.position=`absolute`,r.phaser=this,this.parent.appendChild(r),n&&(r.innerText=n),this.updateSize()},createFromCache:function(e,t){var n=this.cache.get(e);return n&&this.createFromHTML(n,t),this},createFromHTML:function(e,t){t===void 0&&(t=`div`),this.removeElement();var n=document.createElement(t);return this.node=n,n.style.zIndex=`0`,n.style.display=`inline`,n.style.position=`absolute`,n.phaser=this,this.parent.appendChild(n),n.innerHTML=e,this.updateSize()},removeElement:function(){return this.node&&=(c(this.node),null),this},updateSize:function(){var e=this.node;return this.width=e.clientWidth,this.height=e.clientHeight,this.displayWidth=this.width*this.scaleX,this.displayHeight=this.height*this.scaleY,this},getChildByProperty:function(e,t){if(this.node){for(var n=this.node.querySelectorAll(`*`),r=0;r<n.length;r++)if(n[r][e]===t)return n[r]}return null},getChildByID:function(e){return this.getChildByProperty(`id`,e)},getChildByName:function(e){return this.getChildByProperty(`name`,e)},setClassName:function(e){return this.node&&(this.node.className=e,this.updateSize()),this},setText:function(e){return this.node&&(this.node.innerText=e,this.updateSize()),this},setHTML:function(e){return this.node&&(this.node.innerHTML=e,this.updateSize()),this},preRender:function(){var e=this.parentContainer,t=this.node;t&&e&&!e.willRender()&&(t.style.display=`none`)},willRender:function(){return!0},preDestroy:function(){this.removeElement(),this.scene.sys.events.off(l.SLEEP,this.handleSceneEvent,this),this.scene.sys.events.off(l.WAKE,this.handleSceneEvent,this),this.scene.sys.events.off(l.PRE_RENDER,this.preRender,this)}})},49381(e,t,n){var r=n(47407),i=n(95643),a=n(61340),o=new a,s=new a,c=new a;e.exports=function(e,t,n,a){if(t.node){n.camera&&(n=n.camera);var l=t.node.style,u=t.scene.sys.settings;if(!l||!u.visible||i.RENDER_MASK!==t.renderFlags||t.cameraFilter!==0&&t.cameraFilter&n.id||t.parentContainer&&!t.parentContainer.willRender()){l.display=`none`;return}var d=t.parentContainer,f=n.alpha*t.alpha;d&&(f*=d.alpha);var p=o,m=s,h=c,g=t.width*t.originX,_=t.height*t.originY,v=`0%`,y=`0%`;p.copyWithScrollFactorFrom(n.matrix,n.scrollX,n.scrollY,t.scrollFactorX,t.scrollFactorY),a?(p.multiply(a),g*=t.scaleX,_*=t.scaleY):(v=100*t.originX+`%`,y=100*t.originY+`%`),p.translate(-g,-_),m.applyITRS(t.x,t.y,t.rotation,t.scaleX,t.scaleY),p.multiply(m,h),t.transformOnly||(l.display=`block`,l.opacity=f,l.zIndex=t._depth,l.pointerEvents=t.pointerEvents,l.mixBlendMode=r[t._blendMode]),l.transform=h.getCSSMatrix()+` skew(`+t.skewX+`rad, `+t.skewY+`rad) rotate3d(`+t.rotate3d.x+`,`+t.rotate3d.y+`,`+t.rotate3d.z+`,`+t.rotate3d.w+t.rotate3dAngle+`)`,l.transformOrigin=v+` `+y}}},2611(e,t,n){var r=n(3069);n(39429).register(`dom`,function(e,t,n,i,a){var o=new r(this.scene,e,t,n,i,a);return this.displayList.add(o),o})},441(e,t,n){var r=n(29747),i=r,a=r;i=n(49381),a=n(49381),e.exports={renderWebGL:i,renderCanvas:a}},62980(e){e.exports=`addedtoscene`},41337(e){e.exports=`destroy`},44947(e){e.exports=`removedfromscene`},49358(e){e.exports=`complete`},35163(e){e.exports=`created`},97249(e){e.exports=`error`},19483(e){e.exports=`locked`},56059(e){e.exports=`loop`},26772(e){e.exports=`metadata`},64437(e){e.exports=`playing`},83411(e){e.exports=`play`},75780(e){e.exports=`seeked`},67799(e){e.exports=`seeking`},63500(e){e.exports=`stalled`},55541(e){e.exports=`stop`},53208(e){e.exports=`textureready`},4992(e){e.exports=`unlocked`},12(e){e.exports=`unsupported`},51708(e,t,n){e.exports={ADDED_TO_SCENE:n(62980),DESTROY:n(41337),REMOVED_FROM_SCENE:n(44947),VIDEO_COMPLETE:n(49358),VIDEO_CREATED:n(35163),VIDEO_ERROR:n(97249),VIDEO_LOCKED:n(19483),VIDEO_LOOP:n(56059),VIDEO_METADATA:n(26772),VIDEO_PLAY:n(83411),VIDEO_PLAYING:n(64437),VIDEO_SEEKED:n(75780),VIDEO_SEEKING:n(67799),VIDEO_STALLED:n(63500),VIDEO_STOP:n(55541),VIDEO_TEXTURE:n(53208),VIDEO_UNLOCKED:n(4992),VIDEO_UNSUPPORTED:n(12)}},42421(e,t,n){var r=n(83419),i=n(31401),a=n(95643),o=n(64993);e.exports=new r({Extends:a,Mixins:[i.Alpha,i.BlendMode,i.Depth,i.Flip,i.Origin,i.ScrollFactor,i.Size,i.Texture,i.Tint,i.Transform,i.Visible,o],initialize:function(e){a.call(this,e,`Extern`)},addedToScene:function(){this.scene.sys.updateList.add(this)},removedFromScene:function(){this.scene.sys.updateList.remove(this)},preUpdate:function(){},render:function(){}})},70217(){},56315(e,t,n){var r=n(42421);n(39429).register(`extern`,function(){var e=new r(this.scene);return this.displayList.add(e),e})},64993(e,t,n){var r=n(29747),i=r,a=r;i=n(80287),a=n(70217),e.exports={renderWebGL:i,renderCanvas:a}},80287(e,t,n){var r=n(91296);e.exports=function(e,t,n,i,a,o,s){e.renderNodes.getNode(`YieldContext`).run(n);var c=r(t,n.camera,i,!n.useCanvas).calc;t.render.call(t,e,n,c,o,s),e.renderNodes.getNode(`RebindContext`).run(n)}},34637(e,t,n){var r=n(73043),i=n(26099),a=n(41509),o=n(68589),s=n(83419),c=n(20071);e.exports=new s({Extends:c,initialize:function(e,t,n,s,l,u){t||={};var d={name:`gradient`,fragmentSource:a,shaderAdditions:[{name:`RAMP_0`,tags:`RAMP`,additions:{fragmentHeader:o}}],initialUniforms:{uRampTexture:0},setupUniforms:this._setupUniforms,updateShaderConfig:this._updateShaderConfig};if(c.call(this,e,d,n,s,l,u),this.type=`Gradient`,this.ramp=new r(this.scene,t.bands||{colorStart:0,colorEnd:16777215}),this.offset=t.offset||0,this.repeatMode=t.repeatMode||0,this.shapeMode=t.shapeMode||0,this.start=new i(0,0),t.start&&this.start.copy(t.start),this.shape=new i(1,0),t.shape)this.shape.copy(t.shape);else{var f=t.length===void 0?1:t.length,p=t.direction||0;this.shape.setTo(f*Math.cos(p),f*Math.sin(p))}this.dither=!!t.dither,this.setTextures([this.ramp.dataTexture])},_setupUniforms:function(e,t){e(`uRampResolution`,this.ramp.dataTextureResolution),e(`uRampBandStart`,this.ramp.dataTextureFirstBand),e(`uOffset`,this.offset),e(`uRepeatMode`,this.repeatMode),e(`uShapeMode`,this.shapeMode),e(`uStart`,[this.start.x,1-this.start.y]),e(`uShape`,[this.shape.x,-this.shape.y]),e(`uDither`,this.dither)},_updateShaderConfig:function(e,t,n){var r=t.ramp.bandTreeDepth,i=n.programManager.getAdditionsByTag(`RAMP`)[0];i.name=`RAMP_`+r,i.additions.fragmentHeader=o.replace(`#define BAND_TREE_DEPTH 0.0`,`#define BAND_TREE_DEPTH `+r+`.0`)},preDestroy:function(){this.ramp.destroy(),c.prototype.preDestroy.call(this)}})},26353(e,t,n){var r=n(25305),i=n(44603),a=n(23568),o=n(34637);i.register(`gradient`,function(e,t){e===void 0&&(e={});var n=a(e,`config`,null),i=a(e,`x`,0),s=a(e,`y`,0),c=a(e,`width`,128),l=a(e,`height`,128),u=new o(this.scene,n,i,s,c,l);return t!==void 0&&(e.add=t),r(this.scene,u,e),u})},69315(e,t,n){var r=n(34637);n(39429).register(`gradient`,function(e,t,n,i,a){return this.displayList.add(new r(this.scene,e,t,n,i,a))})},85592(e){e.exports={ARC:0,BEGIN_PATH:1,CLOSE_PATH:2,FILL_RECT:3,LINE_TO:4,MOVE_TO:5,LINE_STYLE:6,FILL_STYLE:7,FILL_PATH:8,STROKE_PATH:9,FILL_TRIANGLE:10,STROKE_TRIANGLE:11,SAVE:14,RESTORE:15,TRANSLATE:16,SCALE:17,ROTATE:18,GRADIENT_FILL_STYLE:21,GRADIENT_LINE_STYLE:22}},43831(e,t,n){var r=n(71911),i=n(83419),a=n(85592),o=n(31401),s=n(8497),c=n(95643),l=n(87891),u=n(95540),d=n(35154),f=n(36383),p=n(84503),m=new i({Extends:c,Mixins:[o.AlphaSingle,o.BlendMode,o.Depth,o.Lighting,o.Mask,o.RenderNodes,o.Transform,o.Visible,o.ScrollFactor,p],initialize:function(e,t){var n=d(t,`x`,0),r=d(t,`y`,0);c.call(this,e,`Graphics`),this.setPosition(n,r),this.initRenderNodes(this._defaultRenderNodesMap),this.displayOriginX=0,this.displayOriginY=0,this.commandBuffer=[],this.defaultFillColor=-1,this.defaultFillAlpha=1,this.defaultStrokeWidth=1,this.defaultStrokeColor=-1,this.defaultStrokeAlpha=1,this._lineWidth=1,this.pathDetailThreshold=-1,this.lineStyle(1,0,0),this.fillStyle(0,0),this.setDefaultStyles(t)},_defaultRenderNodesMap:{get:function(){return l}},setDefaultStyles:function(e){return d(e,`lineStyle`,null)&&(this.defaultStrokeWidth=d(e,`lineStyle.width`,1),this.defaultStrokeColor=d(e,`lineStyle.color`,16777215),this.defaultStrokeAlpha=d(e,`lineStyle.alpha`,1),this.lineStyle(this.defaultStrokeWidth,this.defaultStrokeColor,this.defaultStrokeAlpha)),d(e,`fillStyle`,null)&&(this.defaultFillColor=d(e,`fillStyle.color`,16777215),this.defaultFillAlpha=d(e,`fillStyle.alpha`,1),this.fillStyle(this.defaultFillColor,this.defaultFillAlpha)),this},lineStyle:function(e,t,n){return n===void 0&&(n=1),this.commandBuffer.push(a.LINE_STYLE,e,t,n),this._lineWidth=e,this},fillStyle:function(e,t){return t===void 0&&(t=1),this.commandBuffer.push(a.FILL_STYLE,e,t),this},fillGradientStyle:function(e,t,n,r,i,o,s,c){return i===void 0&&(i=1),o===void 0&&(o=i),s===void 0&&(s=i),c===void 0&&(c=i),this.commandBuffer.push(a.GRADIENT_FILL_STYLE,i,o,s,c,e,t,n,r),this},lineGradientStyle:function(e,t,n,r,i,o){return o===void 0&&(o=1),this.commandBuffer.push(a.GRADIENT_LINE_STYLE,e,o,t,n,r,i),this},beginPath:function(){return this.commandBuffer.push(a.BEGIN_PATH),this},closePath:function(){return this.commandBuffer.push(a.CLOSE_PATH),this},fillPath:function(){return this.commandBuffer.push(a.FILL_PATH),this},fill:function(){return this.commandBuffer.push(a.FILL_PATH),this},strokePath:function(){return this.commandBuffer.push(a.STROKE_PATH),this},stroke:function(){return this.commandBuffer.push(a.STROKE_PATH),this},fillCircleShape:function(e){return this.fillCircle(e.x,e.y,e.radius)},strokeCircleShape:function(e){return this.strokeCircle(e.x,e.y,e.radius)},fillCircle:function(e,t,n){return this.beginPath(),this.arc(e,t,n,0,f.TAU),this.fillPath(),this},strokeCircle:function(e,t,n){return this.beginPath(),this.arc(e,t,n,0,f.TAU),this.strokePath(),this},fillRectShape:function(e){return this.fillRect(e.x,e.y,e.width,e.height)},strokeRectShape:function(e){return this.strokeRect(e.x,e.y,e.width,e.height)},fillRect:function(e,t,n,r){return this.commandBuffer.push(a.FILL_RECT,e,t,n,r),this},strokeRect:function(e,t,n,r){var i=this._lineWidth/2,a=e-i,o=e+i;return this.beginPath(),this.moveTo(e,t),this.lineTo(e,t+r),this.strokePath(),this.beginPath(),this.moveTo(e+n,t),this.lineTo(e+n,t+r),this.strokePath(),this.beginPath(),this.moveTo(a,t),this.lineTo(o+n,t),this.strokePath(),this.beginPath(),this.moveTo(a,t+r),this.lineTo(o+n,t+r),this.strokePath(),this},fillRoundedRect:function(e,t,n,r,i){i===void 0&&(i=20);var a=i,o=i,s=i,c=i;typeof i!=`number`&&(a=u(i,`tl`,20),o=u(i,`tr`,20),s=u(i,`bl`,20),c=u(i,`br`,20));var l=a>=0,d=o>=0,p=s>=0,m=c>=0;return a=Math.abs(a),o=Math.abs(o),s=Math.abs(s),c=Math.abs(c),this.beginPath(),this.moveTo(e+a,t),this.lineTo(e+n-o,t),d?this.arc(e+n-o,t+o,o,-f.PI_OVER_2,0):this.arc(e+n,t,o,Math.PI,f.PI_OVER_2,!0),this.lineTo(e+n,t+r-c),m?this.arc(e+n-c,t+r-c,c,0,f.PI_OVER_2):this.arc(e+n,t+r,c,-f.PI_OVER_2,Math.PI,!0),this.lineTo(e+s,t+r),p?this.arc(e+s,t+r-s,s,f.PI_OVER_2,Math.PI):this.arc(e,t+r,s,0,-f.PI_OVER_2,!0),this.lineTo(e,t+a),l?this.arc(e+a,t+a,a,-Math.PI,-f.PI_OVER_2):this.arc(e,t,a,f.PI_OVER_2,0,!0),this.fillPath(),this},strokeRoundedRect:function(e,t,n,r,i){i===void 0&&(i=20);var a=i,o=i,s=i,c=i,l=Math.min(n,r)/2;typeof i!=`number`&&(a=u(i,`tl`,20),o=u(i,`tr`,20),s=u(i,`bl`,20),c=u(i,`br`,20));var d=a>=0,p=o>=0,m=s>=0,h=c>=0;return a=Math.min(Math.abs(a),l),o=Math.min(Math.abs(o),l),s=Math.min(Math.abs(s),l),c=Math.min(Math.abs(c),l),this.beginPath(),this.moveTo(e+a,t),this.lineTo(e+n-o,t),this.moveTo(e+n-o,t),p?this.arc(e+n-o,t+o,o,-f.PI_OVER_2,0):this.arc(e+n,t,o,Math.PI,f.PI_OVER_2,!0),this.lineTo(e+n,t+r-c),this.moveTo(e+n,t+r-c),h?this.arc(e+n-c,t+r-c,c,0,f.PI_OVER_2):this.arc(e+n,t+r,c,-f.PI_OVER_2,Math.PI,!0),this.lineTo(e+s,t+r),this.moveTo(e+s,t+r),m?this.arc(e+s,t+r-s,s,f.PI_OVER_2,Math.PI):this.arc(e,t+r,s,0,-f.PI_OVER_2,!0),this.lineTo(e,t+a),this.moveTo(e,t+a),d?this.arc(e+a,t+a,a,-Math.PI,-f.PI_OVER_2):this.arc(e,t,a,f.PI_OVER_2,0,!0),this.strokePath(),this},fillPointShape:function(e,t){return this.fillPoint(e.x,e.y,t)},fillPoint:function(e,t,n){return!n||n<1?n=1:(e-=n/2,t-=n/2),this.commandBuffer.push(a.FILL_RECT,e,t,n,n),this},fillTriangleShape:function(e){return this.fillTriangle(e.x1,e.y1,e.x2,e.y2,e.x3,e.y3)},strokeTriangleShape:function(e){return this.strokeTriangle(e.x1,e.y1,e.x2,e.y2,e.x3,e.y3)},fillTriangle:function(e,t,n,r,i,o){return this.commandBuffer.push(a.FILL_TRIANGLE,e,t,n,r,i,o),this},strokeTriangle:function(e,t,n,r,i,o){return this.commandBuffer.push(a.STROKE_TRIANGLE,e,t,n,r,i,o),this},strokeLineShape:function(e){return this.lineBetween(e.x1,e.y1,e.x2,e.y2)},lineBetween:function(e,t,n,r){return this.beginPath(),this.moveTo(e,t),this.lineTo(n,r),this.strokePath(),this},lineTo:function(e,t){return this.commandBuffer.push(a.LINE_TO,e,t),this},moveTo:function(e,t){return this.commandBuffer.push(a.MOVE_TO,e,t),this},strokePoints:function(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1),r===void 0&&(r=e.length),this.beginPath(),this.moveTo(e[0].x,e[0].y);for(var i=1;i<r;i++)this.lineTo(e[i].x,e[i].y);return t&&this.lineTo(e[0].x,e[0].y),n&&this.closePath(),this.strokePath(),this},fillPoints:function(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1),r===void 0&&(r=e.length),this.beginPath(),this.moveTo(e[0].x,e[0].y);for(var i=1;i<r;i++)this.lineTo(e[i].x,e[i].y);return t&&this.lineTo(e[0].x,e[0].y),n&&this.closePath(),this.fillPath(),this},strokeEllipseShape:function(e,t){t===void 0&&(t=32);var n=e.getPoints(t);return this.strokePoints(n,!0)},strokeEllipse:function(e,t,n,r,i){i===void 0&&(i=32);var a=new s(e,t,n,r).getPoints(i);return this.strokePoints(a,!0)},fillEllipseShape:function(e,t){t===void 0&&(t=32);var n=e.getPoints(t);return this.fillPoints(n,!0)},fillEllipse:function(e,t,n,r,i){i===void 0&&(i=32);var a=new s(e,t,n,r).getPoints(i);return this.fillPoints(a,!0)},arc:function(e,t,n,r,i,o,s){return o===void 0&&(o=!1),s===void 0&&(s=0),this.commandBuffer.push(a.ARC,e,t,n,r,i,o,s),this},slice:function(e,t,n,r,i,o,s){return o===void 0&&(o=!1),s===void 0&&(s=0),this.commandBuffer.push(a.BEGIN_PATH),this.commandBuffer.push(a.MOVE_TO,e,t),this.commandBuffer.push(a.ARC,e,t,n,r,i,o,s),this.commandBuffer.push(a.CLOSE_PATH),this},save:function(){return this.commandBuffer.push(a.SAVE),this},restore:function(){return this.commandBuffer.push(a.RESTORE),this},translateCanvas:function(e,t){return this.commandBuffer.push(a.TRANSLATE,e,t),this},scaleCanvas:function(e,t){return this.commandBuffer.push(a.SCALE,e,t),this},rotateCanvas:function(e){return this.commandBuffer.push(a.ROTATE,e),this},clear:function(){return this.commandBuffer.length=0,this.defaultFillColor>-1&&this.fillStyle(this.defaultFillColor,this.defaultFillAlpha),this.defaultStrokeColor>-1&&this.lineStyle(this.defaultStrokeWidth,this.defaultStrokeColor,this.defaultStrokeAlpha),this},generateTexture:function(e,t,n){var r=this.scene.sys,i=r.game.renderer;t===void 0&&(t=r.scale.width),n===void 0&&(n=r.scale.height),m.TargetCamera.setScene(this.scene),m.TargetCamera.setViewport(0,0,t,n),m.TargetCamera.scrollX=this.x,m.TargetCamera.scrollY=this.y;var a,o,s={willReadFrequently:!0};if(typeof e==`string`)if(r.textures.exists(e)){a=r.textures.get(e);var c=a.getSourceImage();c instanceof HTMLCanvasElement&&(o=c.getContext(`2d`,s))}else a=r.textures.createCanvas(e,t,n),o=a.getSourceImage().getContext(`2d`,s);else e instanceof HTMLCanvasElement&&(o=e.getContext(`2d`,s));return o&&(this.renderCanvas(i,this,m.TargetCamera,null,o,!1),a&&a.refresh()),this},preDestroy:function(){this.commandBuffer=[]}});m.TargetCamera=new r,e.exports=m},32768(e,t,n){var r=n(85592),i=n(20926);e.exports=function(e,t,n,a,o,s){var c=t.commandBuffer,l=c.length,u=o||e.currentContext;if(!(l===0||!i(e,u,t,n,a))){n.addToRenderList(t);var d=1,f=1,p=0,m=0,h=1,g=0,_=0,v=0;u.beginPath();for(var y=0;y<l;++y)switch(c[y]){case r.ARC:u.arc(c[y+1],c[y+2],c[y+3],c[y+4],c[y+5],c[y+6]),y+=7;break;case r.LINE_STYLE:h=c[y+1],p=c[y+2],d=c[y+3],g=(p&16711680)>>>16,_=(p&65280)>>>8,v=p&255,u.strokeStyle=`rgba(`+g+`,`+_+`,`+v+`,`+d+`)`,u.lineWidth=h,y+=3;break;case r.FILL_STYLE:m=c[y+1],f=c[y+2],g=(m&16711680)>>>16,_=(m&65280)>>>8,v=m&255,u.fillStyle=`rgba(`+g+`,`+_+`,`+v+`,`+f+`)`,y+=2;break;case r.BEGIN_PATH:u.beginPath();break;case r.CLOSE_PATH:u.closePath();break;case r.FILL_PATH:s||u.fill();break;case r.STROKE_PATH:s||u.stroke();break;case r.FILL_RECT:s?u.rect(c[y+1],c[y+2],c[y+3],c[y+4]):u.fillRect(c[y+1],c[y+2],c[y+3],c[y+4]),y+=4;break;case r.FILL_TRIANGLE:u.beginPath(),u.moveTo(c[y+1],c[y+2]),u.lineTo(c[y+3],c[y+4]),u.lineTo(c[y+5],c[y+6]),u.closePath(),s||u.fill(),y+=6;break;case r.STROKE_TRIANGLE:u.beginPath(),u.moveTo(c[y+1],c[y+2]),u.lineTo(c[y+3],c[y+4]),u.lineTo(c[y+5],c[y+6]),u.closePath(),s||u.stroke(),y+=6;break;case r.LINE_TO:u.lineTo(c[y+1],c[y+2]),y+=2;break;case r.MOVE_TO:u.moveTo(c[y+1],c[y+2]),y+=2;break;case r.LINE_FX_TO:u.lineTo(c[y+1],c[y+2]),y+=5;break;case r.MOVE_FX_TO:u.moveTo(c[y+1],c[y+2]),y+=5;break;case r.SAVE:u.save();break;case r.RESTORE:u.restore();break;case r.TRANSLATE:u.translate(c[y+1],c[y+2]),y+=2;break;case r.SCALE:u.scale(c[y+1],c[y+2]),y+=2;break;case r.ROTATE:u.rotate(c[y+1]),y+=1;break;case r.GRADIENT_FILL_STYLE:y+=5;break;case r.GRADIENT_LINE_STYLE:y+=6;break}u.restore()}}},87079(e,t,n){var r=n(44603),i=n(43831);r.register(`graphics`,function(e,t){e===void 0&&(e={}),t!==void 0&&(e.add=t);var n=new i(this.scene,e);return e.add&&this.scene.sys.displayList.add(n),n})},1201(e,t,n){var r=n(43831);n(39429).register(`graphics`,function(e){return this.displayList.add(new r(this.scene,e))})},84503(e,t,n){var r=n(29747),i=r,a=r;i=n(77545),a=n(32768),a=n(32768),e.exports={renderWebGL:i,renderCanvas:a}},77545(e,t,n){var r=n(85592),i=n(91296),a=n(70554),o=n(61340),s=function(e,t,n){this.x=e,this.y=t,this.width=n},c=function(e,t,n){this.points=[],this.points[0]=new s(e,t,n),this.addPoint=function(e,t,n){var r=this.points[this.points.length-1];r.x===e&&r.y===t||this.points.push(new s(e,t,n))}},l=[],u=new o,d=new o,f={TL:0,TR:0,BL:0,BR:0},p={TL:0,TR:0,BL:0,BR:0},m=[{x:0,y:0,width:0},{x:0,y:0,width:0},{x:0,y:0,width:0},{x:0,y:0,width:0}];e.exports=function(e,t,n,o){if(t.commandBuffer.length!==0){var s=t.customRenderNodes,h=t.defaultRenderNodes,g=s.Submitter||h.Submitter,_=t.lighting,v=n,y=v.camera;y.addToRenderList(t);for(var b=i(t,y,o,!n.useCanvas).calc,x=u.loadIdentity(),S=t.commandBuffer,C=t.alpha,w=Math.max(t.pathDetailThreshold,e.config.pathDetailThreshold,0),T=1,E=0,D=0,O=0,k=.01,A=Math.PI*2,j,M=[],N=0,P=!0,F=null,I=a.getTintAppendFloatAlpha,L=0;L<S.length;L++)switch(j=S[L],j){case r.BEGIN_PATH:M.length=0,F=null,P=!0;break;case r.CLOSE_PATH:P=!1,F&&F.points.length&&F.points.push(F.points[0]);break;case r.FILL_PATH:for(b.multiply(x,d),N=0;N<M.length;N++)(s.FillPath||h.FillPath).run(v,d,g,M[N].points,f.TL,f.TR,f.BL,w,_);break;case r.STROKE_PATH:for(b.multiply(x,d),N=0;N<M.length;N++)(s.StrokePath||h.StrokePath).run(v,g,M[N].points,T,P,d,p.TL,p.TR,p.BL,p.BR,w,_);break;case r.LINE_STYLE:T=S[++L];var R=S[++L],z=I(R,S[++L]*C);p.TL=z,p.TR=z,p.BL=z,p.BR=z;break;case r.FILL_STYLE:var B=S[++L],V=I(B,S[++L]*C);f.TL=V,f.TR=V,f.BL=V,f.BR=V;break;case r.GRADIENT_FILL_STYLE:var H=S[++L]*C,U=S[++L]*C,W=S[++L]*C,G=S[++L]*C;f.TL=I(S[++L],H),f.TR=I(S[++L],U),f.BL=I(S[++L],W),f.BR=I(S[++L],G);break;case r.GRADIENT_LINE_STYLE:T=S[++L];var ee=S[++L]*C;p.TL=I(S[++L],ee),p.TR=I(S[++L],ee),p.BL=I(S[++L],ee),p.BR=I(S[++L],ee);break;case r.ARC:var K=0,q=S[++L],J=S[++L],Y=S[++L],te=S[++L],X=S[++L],Z=S[++L],Q=S[++L];for(X-=te,Z?X<-A?X=-A:X>0&&(X=-A+X%A):X>A?X=A:X<0&&(X=A+X%A),F===null&&(F=new c(q+Math.cos(te)*Y,J+Math.sin(te)*Y,T),M.push(F),K+=k);K<1+Q;)O=X*K+te,E=q+Math.cos(O)*Y,D=J+Math.sin(O)*Y,F.addPoint(E,D,T),K+=k;O=X+te,E=q+Math.cos(O)*Y,D=J+Math.sin(O)*Y,F.addPoint(E,D,T);break;case r.FILL_RECT:b.multiply(x,d),(s.FillRect||h.FillRect).run(v,d,g,S[++L],S[++L],S[++L],S[++L],f.TL,f.TR,f.BL,f.BR,_);break;case r.FILL_TRIANGLE:b.multiply(x,d),(s.FillTri||h.FillTri).run(v,d,g,S[++L],S[++L],S[++L],S[++L],S[++L],S[++L],f.TL,f.TR,f.BL,_);break;case r.STROKE_TRIANGLE:b.multiply(x,d),m[0].x=S[++L],m[0].y=S[++L],m[0].width=T,m[1].x=S[++L],m[1].y=S[++L],m[1].width=T,m[2].x=S[++L],m[2].y=S[++L],m[2].width=T,m[3].x=m[0].x,m[3].y=m[0].y,m[3].width=T,(s.StrokePath||h.StrokePath).run(v,g,m,T,!1,d,p.TL,p.TR,p.BL,p.BR,_);break;case r.LINE_TO:q=S[++L],J=S[++L],F===null?(F=new c(q,J,T),M.push(F)):F.addPoint(q,J,T);break;case r.MOVE_TO:F=new c(S[++L],S[++L],T),M.push(F);break;case r.SAVE:l.push(x.copyToArray());break;case r.RESTORE:x.copyFromArray(l.pop());break;case r.TRANSLATE:q=S[++L],J=S[++L],x.translate(q,J);break;case r.SCALE:q=S[++L],J=S[++L],x.scale(q,J);break;case r.ROTATE:x.rotate(S[++L]);break}}}},26479(e,t,n){var r=n(61061),i=n(83419),a=n(51708),o=n(50792),s=n(46710),c=n(95540),l=n(35154),u=n(97022),d=n(41212),f=n(88492),p=n(68287);e.exports=new i({Extends:o,initialize:function(e,t,n){o.call(this),n?t&&!Array.isArray(t)&&(t=[t]):Array.isArray(t)?d(t[0])&&(n=t,t=null):d(t)&&(n=t,t=null),this.scene=e,this.children=new Set,this.isParent=!0,this.type=`Group`,this.classType=c(n,`classType`,p),this.name=c(n,`name`,``),this.active=c(n,`active`,!0),this.maxSize=c(n,`maxSize`,-1),this.defaultKey=c(n,`defaultKey`,null),this.defaultFrame=c(n,`defaultFrame`,null),this.runChildUpdate=c(n,`runChildUpdate`,!1),this.createCallback=c(n,`createCallback`,null),this.removeCallback=c(n,`removeCallback`,null),this.createMultipleCallback=c(n,`createMultipleCallback`,null),this.internalCreateCallback=c(n,`internalCreateCallback`,null),this.internalRemoveCallback=c(n,`internalRemoveCallback`,null),t&&this.addMultiple(t),n&&this.createMultiple(n),this.on(a.ADDED_TO_SCENE,this.addedToScene,this),this.on(a.REMOVED_FROM_SCENE,this.removedFromScene,this)},addedToScene:function(){this.scene.sys.updateList.add(this)},removedFromScene:function(){this.scene.sys.updateList.remove(this)},create:function(e,t,n,r,i,a){if(e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=this.defaultKey),r===void 0&&(r=this.defaultFrame),i===void 0&&(i=!0),a===void 0&&(a=!0),this.isFull())return null;var o=new this.classType(this.scene,e,t,n,r);return o.addToDisplayList(this.scene.sys.displayList),o.addToUpdateList(),o.visible=i,o.setActive(a),this.add(o),o},createMultiple:function(e){if(this.isFull())return[];Array.isArray(e)||(e=[e]);var t=[];if(e[0].key)for(var n=0;n<e.length;n++){var r=this.createFromConfig(e[n]);t=t.concat(r)}return t},createFromConfig:function(e){if(this.isFull())return[];this.classType=c(e,`classType`,this.classType);var t=c(e,`key`,void 0),n=c(e,`frame`,null),i=c(e,`visible`,!0),a=c(e,`active`,!0),o=[];if(t===void 0)return o;Array.isArray(t)||(t=[t]),Array.isArray(n)||(n=[n]);var s=c(e,`repeat`,0),d=c(e,`randomKey`,!1),p=c(e,`randomFrame`,!1),m=c(e,`yoyo`,!1),h=c(e,`quantity`,!1),g=c(e,`frameQuantity`,1),_=c(e,`max`,0),v=f(t,n,{max:_,qty:h||g,random:d,randomB:p,repeat:s,yoyo:m});e.createCallback&&(this.createCallback=e.createCallback),e.removeCallback&&(this.removeCallback=e.removeCallback),e.internalCreateCallback&&(this.internalCreateCallback=e.internalCreateCallback),e.internalRemoveCallback&&(this.internalRemoveCallback=e.internalRemoveCallback);for(var y=0;y<v.length;y++){var b=this.create(0,0,v[y].a,v[y].b,i,a);if(!b)break;o.push(b)}if(u(e,`setXY`)){var x=l(e,`setXY.x`,0),S=l(e,`setXY.y`,0),C=l(e,`setXY.stepX`,0),w=l(e,`setXY.stepY`,0);r.SetXY(o,x,S,C,w)}if(u(e,`setRotation`)){var T=l(e,`setRotation.value`,0),E=l(e,`setRotation.step`,0);r.SetRotation(o,T,E)}if(u(e,`setScale`)){var D=l(e,`setScale.x`,1),O=l(e,`setScale.y`,D),k=l(e,`setScale.stepX`,0),A=l(e,`setScale.stepY`,0);r.SetScale(o,D,O,k,A)}if(u(e,`setOrigin`)){var j=l(e,`setOrigin.x`,.5),M=l(e,`setOrigin.y`,j),N=l(e,`setOrigin.stepX`,0),P=l(e,`setOrigin.stepY`,0);r.SetOrigin(o,j,M,N,P)}if(u(e,`setAlpha`)){var F=l(e,`setAlpha.value`,1),I=l(e,`setAlpha.step`,0);r.SetAlpha(o,F,I)}if(u(e,`setDepth`)){var L=l(e,`setDepth.value`,0),R=l(e,`setDepth.step`,0);r.SetDepth(o,L,R)}if(u(e,`setScrollFactor`)){var z=l(e,`setScrollFactor.x`,1),B=l(e,`setScrollFactor.y`,z),V=l(e,`setScrollFactor.stepX`,0),H=l(e,`setScrollFactor.stepY`,0);r.SetScrollFactor(o,z,B,V,H)}var U=c(e,`hitArea`,null),W=c(e,`hitAreaCallback`,null);U&&r.SetHitArea(o,U,W);var G=c(e,`gridAlign`,!1);return G&&r.GridAlign(o,G),this.createMultipleCallback&&this.createMultipleCallback.call(this,o),o},preUpdate:function(e,t){!this.runChildUpdate||this.children.size===0||this.children.forEach(function(n){n.active&&n.update(e,t)})},add:function(e,t){return t===void 0&&(t=!1),this.isFull()?this:(this.children.add(e),this.internalCreateCallback&&this.internalCreateCallback.call(this,e),this.createCallback&&this.createCallback.call(this,e),t&&(e.addToDisplayList(this.scene.sys.displayList),e.addToUpdateList()),e.on(a.DESTROY,this.remove,this),this)},addMultiple:function(e,t){if(t===void 0&&(t=!1),Array.isArray(e))for(var n=0;n<e.length;n++)this.add(e[n],t);return this},remove:function(e,t,n){return t===void 0&&(t=!1),n===void 0&&(n=!1),this.children.has(e)?(this.children.delete(e),this.internalRemoveCallback&&this.internalRemoveCallback.call(this,e),this.removeCallback&&this.removeCallback.call(this,e),e.off(a.DESTROY,this.remove,this),n?e.destroy():t&&(e.removeFromDisplayList(),e.removeFromUpdateList()),this):this},clear:function(e,t){e===void 0&&(e=!1),t===void 0&&(t=!1);var n=this.children;return n.forEach(function(n){n.off(a.DESTROY,this.remove,this),t?n.destroy():e&&(n.removeFromDisplayList(),n.removeFromUpdateList())},this),n.clear(),this},contains:function(e){return this.children.has(e)},getChildren:function(){return Array.from(this.children)},getLength:function(){return this.children.size},getMatching:function(e,t,n,r){return s(Array.from(this.children),e,t,n,r)},getFirst:function(e,t,n,r,i,a,o){return this.getHandler(!0,1,e,t,n,r,i,a,o)},getFirstNth:function(e,t,n,r,i,a,o,s){return this.getHandler(!0,e,t,n,r,i,a,o,s)},getLast:function(e,t,n,r,i,a,o){return this.getHandler(!1,1,e,t,n,r,i,a,o)},getLastNth:function(e,t,n,r,i,a,o,s){return this.getHandler(!1,e,t,n,r,i,a,o,s)},getHandler:function(e,t,n,r,i,a,o,s,c){n===void 0&&(n=!1),r===void 0&&(r=!1);var l,u,d=0,f=Array.from(this.children);if(e)for(u=0;u<f.length;u++)if(l=f[u],l.active===n){if(d++,d===t)break}else l=null;else for(u=f.length-1;u>=0;u--)if(l=f[u],l.active===n){if(d++,d===t)break}else l=null;return l?(typeof i==`number`&&(l.x=i),typeof a==`number`&&(l.y=a),l):r?this.create(i,a,o,s,c):null},get:function(e,t,n,r,i){return this.getFirst(!1,!0,e,t,n,r,i)},getFirstAlive:function(e,t,n,r,i,a){return this.getFirst(!0,e,t,n,r,i,a)},getFirstDead:function(e,t,n,r,i,a){return this.getFirst(!1,e,t,n,r,i,a)},playAnimation:function(e,t){return r.PlayAnimation(Array.from(this.children),e,t),this},isFull:function(){return this.maxSize===-1?!1:this.children.size>=this.maxSize},countActive:function(e){e===void 0&&(e=!0);var t=0;return this.children.forEach(function(n){n.active===e&&t++}),t},getTotalUsed:function(){return this.countActive()},getTotalFree:function(){var e=this.getTotalUsed();return(this.maxSize===-1?999999999999:this.maxSize)-e},setActive:function(e){return this.active=e,this},setName:function(e){return this.name=e,this},propertyValueSet:function(e,t,n,i,a){return r.PropertyValueSet(Array.from(this.children),e,t,n,i,a),this},propertyValueInc:function(e,t,n,i,a){return r.PropertyValueInc(Array.from(this.children),e,t,n,i,a),this},setX:function(e,t){return r.SetX(Array.from(this.children),e,t),this},setY:function(e,t){return r.SetY(Array.from(this.children),e,t),this},setXY:function(e,t,n,i){return r.SetXY(Array.from(this.children),e,t,n,i),this},incX:function(e,t){return r.IncX(Array.from(this.children),e,t),this},incY:function(e,t){return r.IncY(Array.from(this.children),e,t),this},incXY:function(e,t,n,i){return r.IncXY(Array.from(this.children),e,t,n,i),this},shiftPosition:function(e,t,n){return r.ShiftPosition(Array.from(this.children),e,t,n),this},angle:function(e,t){return r.Angle(Array.from(this.children),e,t),this},rotate:function(e,t){return r.Rotate(Array.from(this.children),e,t),this},rotateAround:function(e,t){return r.RotateAround(Array.from(this.children),e,t),this},rotateAroundDistance:function(e,t,n){return r.RotateAroundDistance(Array.from(this.children),e,t,n),this},setAlpha:function(e,t){return r.SetAlpha(Array.from(this.children),e,t),this},setTint:function(e,t,n,i){return r.SetTint(Array.from(this.children),e,t,n,i),this},setOrigin:function(e,t,n,i){return r.SetOrigin(Array.from(this.children),e,t,n,i),this},scaleX:function(e,t){return r.ScaleX(Array.from(this.children),e,t),this},scaleY:function(e,t){return r.ScaleY(Array.from(this.children),e,t),this},scaleXY:function(e,t,n,i){return r.ScaleXY(Array.from(this.children),e,t,n,i),this},setDepth:function(e,t){return r.SetDepth(Array.from(this.children),e,t),this},setBlendMode:function(e){return r.SetBlendMode(Array.from(this.children),e),this},setHitArea:function(e,t){return r.SetHitArea(Array.from(this.children),e,t),this},shuffle:function(){return r.Shuffle(Array.from(this.children)),this},kill:function(e){this.children.has(e)&&e.setActive(!1)},killAndHide:function(e){this.children.has(e)&&(e.setActive(!1),e.setVisible(!1))},setVisible:function(e,t,n){return r.SetVisible(Array.from(this.children),e,t,n),this},toggleVisible:function(){return r.ToggleVisible(Array.from(this.children)),this},destroy:function(e,t){e===void 0&&(e=!1),t===void 0&&(t=!1),!(!this.scene||this.ignoreDestroy)&&(this.emit(a.DESTROY,this),this.removeAllListeners(),this.scene.sys.updateList.remove(this),this.clear(t,e),this.scene=void 0,this.children=void 0)}})},94975(e,t,n){var r=n(44603),i=n(26479);r.register(`group`,function(e){return new i(this.scene,null,e)})},3385(e,t,n){var r=n(26479);n(39429).register(`group`,function(e,t){return this.updateList.add(new r(this.scene,e,t))})},88571(e,t,n){var r=n(40939),i=n(83419),a=n(31401),o=n(95643),s=n(59819);e.exports=new i({Extends:o,Mixins:[a.Alpha,a.BlendMode,a.Depth,a.Flip,a.GetBounds,a.Lighting,a.Mask,a.Origin,a.RenderNodes,a.ScrollFactor,a.Size,a.TextureCrop,a.Tint,a.Transform,a.Visible,s],initialize:function(e,t,n,r,i){o.call(this,e,`Image`),this._crop=this.resetCropObject(),this.setTexture(r,i),this.setPosition(t,n),this.setSizeToFrame(),this.setOriginFromFrame(),this.initRenderNodes(this._defaultRenderNodesMap)},_defaultRenderNodesMap:{get:function(){return r}}})},40652(e){e.exports=function(e,t,n,r){n.addToRenderList(t),e.batchSprite(t,t.frame,n,r)}},82459(e,t,n){var r=n(25305),i=n(44603),a=n(23568),o=n(88571);i.register(`image`,function(e,t){e===void 0&&(e={});var n=a(e,`key`,null),i=a(e,`frame`,null),s=new o(this.scene,0,0,n,i);return t!==void 0&&(e.add=t),r(this.scene,s,e),s})},2117(e,t,n){var r=n(88571);n(39429).register(`image`,function(e,t,n,i){return this.displayList.add(new r(this.scene,e,t,n,i))})},59819(e,t,n){var r=n(29747),i=r,a=r;i=n(99517),a=n(40652),e.exports={renderWebGL:i,renderCanvas:a}},99517(e){e.exports=function(e,t,n,r){n.camera.addToRenderList(t);var i=t.customRenderNodes,a=t.defaultRenderNodes;(i.Submitter||a.Submitter).run(n,t,r,0,i.Texturer||a.Texturer,i.Transformer||a.Transformer)}},77856(e,t,n){var r={Events:n(51708),DisplayList:n(8050),GameObjectCreator:n(44603),GameObjectFactory:n(39429),UpdateList:n(45027),Components:n(31401),GetCalcMatrix:n(91296),BuildGameObject:n(25305),BuildGameObjectAnimation:n(13059),GameObject:n(95643),BitmapText:n(22186),Blitter:n(6107),Bob:n(46590),Container:n(31559),DOMElement:n(3069),DynamicBitmapText:n(2638),Extern:n(42421),Graphics:n(43831),Group:n(26479),Image:n(88571),Layer:n(93595),Particles:n(18404),PathFollower:n(1159),RenderTexture:n(591),RetroFont:n(196),Rope:n(77757),Sprite:n(68287),Stamp:n(14727),Text:n(50171),GetTextSize:n(14220),MeasureText:n(79557),TextStyle:n(35762),TileSprite:n(20839),Zone:n(41481),Video:n(18471),Shape:n(17803),Arc:n(23629),Curve:n(89),Ellipse:n(19921),Grid:n(30479),IsoBox:n(61475),IsoTriangle:n(16933),Line:n(57847),Polygon:n(24949),Rectangle:n(74561),Star:n(55911),Triangle:n(36931),Factories:{Blitter:n(12709),Container:n(24961),DOMElement:n(2611),DynamicBitmapText:n(72566),Extern:n(56315),Graphics:n(1201),Group:n(3385),Image:n(2117),Layer:n(20005),Particles:n(676),PathFollower:n(90145),RenderTexture:n(60505),Rope:n(96819),Sprite:n(46409),Stamp:n(85326),StaticBitmapText:n(34914),Text:n(68005),TileSprite:n(91681),Zone:n(84175),Video:n(89025),Arc:n(42563),Curve:n(40511),Ellipse:n(1543),Grid:n(34137),IsoBox:n(3933),IsoTriangle:n(49803),Line:n(2481),Polygon:n(64827),Rectangle:n(87959),Star:n(93697),Triangle:n(45245)},Creators:{Blitter:n(9403),Container:n(77143),DynamicBitmapText:n(11164),Graphics:n(87079),Group:n(94975),Image:n(82459),Layer:n(25179),Particles:n(92730),RenderTexture:n(34495),Rope:n(26209),Sprite:n(15567),Stamp:n(31479),StaticBitmapText:n(57336),Text:n(71259),TileSprite:n(14167),Zone:n(95261),Video:n(11511)}};r.CaptureFrame=n(43451),r.Gradient=n(34637),r.Noise=n(35387),r.NoiseCell2D=n(51513),r.NoiseCell3D=n(15686),r.NoiseCell4D=n(41946),r.NoiseSimplex2D=n(1792),r.NoiseSimplex3D=n(51098),r.Shader=n(20071),r.NineSlice=n(28103),r.PointLight=n(80321),r.SpriteGPULayer=n(76573),r.Factories.CaptureFrame=n(20421),r.Factories.Gradient=n(69315),r.Factories.Noise=n(34757),r.Factories.NoiseCell2D=n(26590),r.Factories.NoiseCell3D=n(89918),r.Factories.NoiseCell4D=n(65874),r.Factories.NoiseSimplex2D=n(80308),r.Factories.NoiseSimplex3D=n(73810),r.Factories.Shader=n(74177),r.Factories.NineSlice=n(47521),r.Factories.PointLight=n(71255),r.Factories.SpriteGPULayer=n(96019),r.Creators.CaptureFrame=n(23675),r.Creators.Gradient=n(26353),r.Creators.Noise=n(39931),r.Creators.NoiseCell2D=n(98292),r.Creators.NoiseCell3D=n(97044),r.Creators.NoiseCell4D=n(20136),r.Creators.NoiseSimplex2D=n(51754),r.Creators.NoiseSimplex3D=n(71112),r.Creators.Shader=n(54935),r.Creators.NineSlice=n(28279),r.Creators.PointLight=n(39829),r.Creators.SpriteGPULayer=n(16193),r.Light=n(41432),r.LightsManager=n(61356),r.LightsPlugin=n(88992),e.exports=r},93595(e,t,n){var r=n(10312),i=n(83419),a=n(31401),o=n(53774),s=n(45893),c=n(50792),l=n(51708),u=n(73162),d=n(33963),f=n(44594),p=n(19186);e.exports=new i({Extends:u,Mixins:[a.AlphaSingle,a.BlendMode,a.Depth,a.Filters,a.Mask,a.RenderSteps,a.Visible,c,d],initialize:function(e,t){u.call(this,e),c.call(this),this.scene=e,this.displayList=null,this.type=`Layer`,this.state=0,this.parentContainer=null,this.name=``,this.active=!0,this.tabIndex=-1,this.data=null,this.renderFlags=15,this.cameraFilter=0,this.input=null,this.body=null,this.ignoreDestroy=!1,this.systems=e.sys,this.events=e.sys.events,this.sortChildrenFlag=!1,this.addCallback=this.addChildCallback,this.removeCallback=this.removeChildCallback,this.clearAlpha(),this.setBlendMode(r.SKIP_CHECK),t&&this.add(t),this.addRenderStep&&this.addRenderStep(this.renderWebGL),e.sys.queueDepthSort()},setActive:function(e){return this.active=e,this},setName:function(e){return this.name=e,this},setState:function(e){return this.state=e,this},setDataEnabled:function(){return this.data||=new s(this),this},setData:function(e,t){return this.data||=new s(this),this.data.set(e,t),this},incData:function(e,t){return this.data||=new s(this),this.data.inc(e,t),this},toggleData:function(e){return this.data||=new s(this),this.data.toggle(e),this},getData:function(e){return this.data||=new s(this),this.data.get(e)},setInteractive:function(){return this},disableInteractive:function(){return this},removeInteractive:function(){return this},addedToScene:function(){},removedFromScene:function(){},update:function(){},toJSON:function(){return o(this)},willRender:function(e){return!(this.renderFlags!==15||this.list.length===0||this.cameraFilter!==0&&this.cameraFilter&e.id)},getIndexList:function(){for(var e=this,t=this.parentContainer,n=[];t&&(n.unshift(t.getIndex(e)),e=t,t.parentContainer);)t=t.parentContainer;return n.unshift(this.displayList.getIndex(e)),n},addChildCallback:function(e){var t=e.displayList;t&&t!==this&&e.removeFromDisplayList(),e.displayList||(this.queueDepthSort(),e.displayList=this,e.emit(l.ADDED_TO_SCENE,e,this.scene),this.events.emit(f.ADDED_TO_SCENE,e,this.scene))},removeChildCallback:function(e){this.queueDepthSort(),e.displayList=null,e.emit(l.REMOVED_FROM_SCENE,e,this.scene),this.events.emit(f.REMOVED_FROM_SCENE,e,this.scene)},queueDepthSort:function(){this.sortChildrenFlag=!0},depthSort:function(){this.sortChildrenFlag&&=(p(this.list,this.sortByDepth),!1)},sortByDepth:function(e,t){return e._depth-t._depth},getChildren:function(){return this.list},addToDisplayList:function(e){return e===void 0&&(e=this.scene.sys.displayList),this.displayList&&this.displayList!==e&&this.removeFromDisplayList(),e.exists(this)||(this.displayList=e,e.add(this,!0),e.queueDepthSort(),this.emit(l.ADDED_TO_SCENE,this,this.scene),e.events.emit(f.ADDED_TO_SCENE,this,this.scene)),this},removeFromDisplayList:function(){var e=this.displayList||this.scene.sys.displayList;return e.exists(this)&&(e.remove(this,!0),e.queueDepthSort(),this.displayList=null,this.emit(l.REMOVED_FROM_SCENE,this,this.scene),e.events.emit(f.REMOVED_FROM_SCENE,this,this.scene)),this},getDisplayList:function(){var e=null;return this.parentContainer?e=this.parentContainer.list:this.displayList&&(e=this.displayList.list),e},destroy:function(e){if(!(!this.scene||this.ignoreDestroy)){this.emit(l.DESTROY,this);for(var t=this.list;t.length;)t[0].destroy(e);this.removeAllListeners(),this.displayList&&(this.displayList.remove(this,!0,!1),this.displayList.queueDepthSort()),this.data&&=(this.data.destroy(),void 0),this.filterCamera&&=(this.filterCamera.destroy(),void 0),this.active=!1,this.visible=!1,this.list=void 0,this.scene=void 0,this.displayList=void 0,this.systems=void 0,this.events=void 0}}})},2956(e){e.exports=function(e,t,n){var r=t.list;if(r.length!==0){t.depthSort();var i=t.blendMode!==-1;i||e.setBlendMode(0);var a=t._alpha;t.mask&&t.mask.preRenderCanvas(e,null,n);for(var o=0;o<r.length;o++){var s=r[o];if(s.willRender(n)){var c=s.alpha;!i&&s.blendMode!==e.currentBlendMode&&e.setBlendMode(s.blendMode),s.setAlpha(c*a),s.renderCanvas(e,s,n),s.setAlpha(c)}}t.mask&&t.mask.postRenderCanvas(e)}}},25179(e,t,n){var r=n(25305),i=n(93595),a=n(44603),o=n(23568);a.register(`layer`,function(e,t){e===void 0&&(e={});var n=o(e,`children`,null),a=new i(this.scene,n);return t!==void 0&&(e.add=t),r(this.scene,a,e),a})},20005(e,t,n){var r=n(93595);n(39429).register(`layer`,function(e){return this.displayList.add(new r(this.scene,e))})},33963(e,t,n){var r=n(29747),i=r,a=r;i=n(15869),a=n(2956),e.exports={renderWebGL:i,renderCanvas:a}},15869(e,t,n){var r=n(8054);e.exports=function(e,t,n,i,a,o,s){var c=t.list,l=c.length;if(l!==0){var u=n,d=u.camera;t.depthSort();var f=t.blendMode!==r.BlendModes.SKIP_CHECK;!f&&u.blendMode!==0&&(u=u.getClone(),u.setBlendMode(0),u.use());for(var p=t.alpha,m=0;m<l;m++){var h=c[m];if(h.willRender(d)){var g,_,v,y;if(h.alphaTopLeft!==void 0)g=h.alphaTopLeft,_=h.alphaTopRight,v=h.alphaBottomLeft,y=h.alphaBottomRight;else{var b=h.alpha;g=b,_=b,v=b,y=b}!f&&h.blendMode!==u.blendMode&&h.blendMode!==r.BlendModes.SKIP_CHECK&&(u=u.getClone(),u.setBlendMode(h.blendMode),u.use()),h.setAlpha(g*p,_*p,v*p,y*p),h.renderWebGLStep(e,h,u,void 0,void 0,c,m),h.setAlpha(g,_,v,y)}}u!==n&&u.release()}}},41432(e,t,n){var r=n(96503),i=n(83419),a=n(31401),o=n(51767),s=n(70554),c=new i({Extends:r,Mixins:[a.Origin,a.ScrollFactor,a.Visible],initialize:function(e,t,n,i,a,s,c,l){r.call(this,e,t,n),this.color=new o(i,a,s),this.intensity=c,this.z=l===void 0?n*.1:l,this.renderFlags=15,this.cameraFilter=0,this.setScrollFactor(1,1),this.setOrigin(),this.setDisplayOrigin(n)},displayWidth:{get:function(){return this.diameter},set:function(e){this.diameter=e}},displayHeight:{get:function(){return this.diameter},set:function(e){this.diameter=e}},width:{get:function(){return this.diameter},set:function(e){this.diameter=e}},height:{get:function(){return this.diameter},set:function(e){this.diameter=e}},zNormal:{get:function(){return this.z/this.radius},set:function(e){this.z=e*this.radius}},willRender:function(e){return!(c.RENDER_MASK!==this.renderFlags||this.cameraFilter!==0&&this.cameraFilter&e.id)},setColor:function(e){var t=s.getFloatsFromUintRGB(e);return this.color.set(t[0],t[1],t[2]),this},setIntensity:function(e){return this.intensity=e,this},setRadius:function(e){return this.radius=e,this},setZ:function(e){return this.z=e,this},setZNormal:function(e){return this.z=e*this.radius,this}});c.RENDER_MASK=15,e.exports=c},61356(e,t,n){var r=n(81491),i=n(83419),a=n(20339),o=n(41432),s=n(80321),c=n(51767),l=n(19133),u=n(19186),d=n(70554);e.exports=new i({initialize:function(){this.lights=[],this.ambientColor=new c(.1,.1,.1),this.active=!1,this.maxLights=-1,this.visibleLights=0},addPointLight:function(e,t,n,r,i,a){return this.systems.displayList.add(new s(this.scene,e,t,n,r,i,a))},enable:function(){return this.maxLights===-1&&(this.maxLights=this.systems.renderer.config.maxLights),this.active=!0,this},disable:function(){return this.active=!1,this},getLights:function(e){for(var t=this.lights,n=e.worldView,i=[],o=0;o<t.length;o++){var s=t[o];s.willRender(e)&&r(s,n)&&i.push({light:s,distance:a(s.x,s.y,n.centerX,n.centerY)})}return i.length>this.maxLights&&(u(i,this.sortByDistance),i=i.slice(0,this.maxLights)),this.visibleLights=i.length,i},sortByDistance:function(e,t){return e.distance>=t.distance},setAmbientColor:function(e){var t=d.getFloatsFromUintRGB(e);return this.ambientColor.set(t[0],t[1],t[2]),this},getMaxVisibleLights:function(){return this.maxLights},getLightCount:function(){return this.lights.length},addLight:function(e,t,n,r,i,a){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=128),r===void 0&&(r=16777215),i===void 0&&(i=1),a===void 0&&(a=n*.1);var s=d.getFloatsFromUintRGB(r),c=new o(e,t,n,s[0],s[1],s[2],i,a);return this.lights.push(c),c},removeLight:function(e){var t=this.lights.indexOf(e);return t>=0&&l(this.lights,t),this},shutdown:function(){this.lights.length=0},destroy:function(){this.shutdown()}})},88992(e,t,n){var r=n(83419),i=n(61356),a=n(37277),o=n(44594),s=new r({Extends:i,initialize:function(e){this.scene=e,this.systems=e.sys,e.sys.settings.isBooted||e.sys.events.once(o.BOOT,this.boot,this),i.call(this)},boot:function(){var e=this.systems.events;e.on(o.SHUTDOWN,this.shutdown,this),e.on(o.DESTROY,this.destroy,this)},destroy:function(){this.shutdown(),this.scene=void 0,this.systems=void 0}});a.register(`LightsPlugin`,s,`lights`),e.exports=s},28103(e,t,n){var r=n(30529),i=n(83419),a=n(31401),o=n(95643),s=n(78023),c=n(84322),l=n(82513);e.exports=new i({Extends:o,Mixins:[a.AlphaSingle,a.BlendMode,a.Depth,a.GetBounds,a.Mask,a.Origin,a.RenderNodes,a.ScrollFactor,a.Texture,a.Transform,a.Visible,s],initialize:function(e,t,n,r,i,a,s,u,d,f,p,m,h){o.call(this,e,`NineSlice`),this._width,this._height,this._originX=.5,this._originY=.5,this._sizeComponent=!0,this.vertices=[],this.leftWidth,this.rightWidth,this.topHeight,this.bottomHeight,this.tileX=m||!1,this.tileY=h||!1,this._repeatCountX=1,this._repeatCountY=1,this.tint=16777215,this.tintMode=c.MULTIPLY;var g=e.textures.getFrame(r,i);this.is3Slice=!f&&!p,g&&g.scale9&&(this.is3Slice=g.is3Slice);for(var _=this.is3Slice?18:54,v=0;v<_;v++)this.vertices.push(new l);this.setPosition(t,n),this.setTexture(r,i),this.setSlices(a,s,u,d,f,p,!1),this.updateDisplayOrigin(),this.initRenderNodes(this._defaultRenderNodesMap)},_defaultRenderNodesMap:{get:function(){return r}},setSlices:function(e,t,n,r,i,a,o){n===void 0&&(n=10),r===void 0&&(r=10),i===void 0&&(i=0),a===void 0&&(a=0),o===void 0&&(o=!1);var s=this.frame,c=!1;if(this.is3Slice&&o&&i!==0&&a!==0&&(c=!0),c)console.warn(`Cannot change 9 slice to 3 slice`);else{if(s&&s.scale9&&!o){var l=s.data.scale9Borders,u=l.x,d=l.y;n=u,r=s.width-l.w-u,i=d,a=s.height-l.h-d,e===void 0&&(e=s.width),t===void 0&&(t=s.height)}else e===void 0&&(e=256),t===void 0&&(t=256);this._width=e,this._height=t,this.leftWidth=n,this.rightWidth=r,this.topHeight=i,this.bottomHeight=a,this.is3Slice&&(t=s.height,this._height=t,this.topHeight=t,this.bottomHeight=0),this.updateVertices(),this.updateUVs()}return this},updateUVs:function(){var e=this.leftWidth,t=this.rightWidth,n=this.topHeight,r=this.bottomHeight,i=this.frame.width,a=this.frame.height,o=e/i,s=1-t/i,c=n/a,l=1-r/a,u=0;if(this.is3Slice)this._updateUVRow(u,o,s,0,c);else{u=this._updateUVRow(u,o,s,0,c);for(var d=0;d<this._repeatCountY;d++)u=this._updateUVRow(u,o,s,c,l);this._updateUVRow(u,o,s,l,1)}},_updateUVRow:function(e,t,n,r,i){this.updateQuadUVs(e,0,r,t,i),e+=6;for(var a=0;a<this._repeatCountX;a++)this.updateQuadUVs(e,t,r,n,i),e+=6;return this.updateQuadUVs(e,n,r,1,i),e+=6,e},updateVertices:function(){var e=this.leftWidth,t=this.rightWidth,n=this.topHeight,r=this.bottomHeight,i=this.width,a=this.height,o=this.frame,s=this.tileX?this._calcRepeatCount(i-e-t,o.width-e-t):1,c=this.tileY&&!this.is3Slice?this._calcRepeatCount(a-n-r,o.height-n-r):1,l=this._rebuildVertexArray(s,c),u=-.5,d=-.5+e/i,f=.5-t/i,p=.5,m=.5,h=.5-n/a,g=(f-d)/s,_=0;if(this.is3Slice)this._updateVertexRow(_,u,d,f,p,m,h,g);else{var v=-.5+r/a,y=-.5,b=(h-v)/c;_=this._updateVertexRow(_,u,d,f,p,m,h,g);for(var x=0;x<c;x++){var S=h-x*b,C=h-(x+1)*b;_=this._updateVertexRow(_,u,d,f,p,S,C,g)}this._updateVertexRow(_,u,d,f,p,v,y,g)}l&&this.updateUVs()},_calcRepeatCount:function(e,t){return t>0?Math.max(1,Math.floor(e/t)):1},_rebuildVertexArray:function(e,t){if(e===this._repeatCountX&&t===this._repeatCountY)return!1;this._repeatCountX=e,this._repeatCountY=t;var n=this.is3Slice?1:t+2,r=(e+2)*n*6,i=this.vertices;if(i.length!==r){i.length=0;for(var a=0;a<r;a++)i.push(new l)}return!0},_updateVertexRow:function(e,t,n,r,i,a,o,s){this.updateQuad(e,t,a,n,o),e+=6;for(var c=0;c<this._repeatCountX;c++)this.updateQuad(e,n+c*s,a,n+(c+1)*s,o),e+=6;return this.updateQuad(e,r,a,i,o),e+=6,e},updateQuad:function(e,t,n,r,i){var a=this.width,o=this.height,s=this.originX,c=this.originY,l=this.vertices;l[e+0].resize(t,n,a,o,s,c),l[e+1].resize(t,i,a,o,s,c),l[e+2].resize(r,n,a,o,s,c),l[e+3].resize(t,i,a,o,s,c),l[e+4].resize(r,i,a,o,s,c),l[e+5].resize(r,n,a,o,s,c)},updateQuadUVs:function(e,t,n,r,i){var a=this.vertices,o=this.frame,s=o.u0,c=o.v0,l=o.u1,u=o.v1;if(s!==0||l!==1){var d=l-s;t=s+t*d,r=s+r*d}if(c!==0||u!==1){var f=u-c;n=c+n*f,i=c+i*f}a[e+0].setUVs(t,n),a[e+1].setUVs(t,i),a[e+2].setUVs(r,n),a[e+3].setUVs(t,i),a[e+4].setUVs(r,i),a[e+5].setUVs(r,n)},clearTint:function(){return this.setTint(16777215),this.setTintMode(),this},setTint:function(e){return e===void 0&&(e=16777215),this.tint=e,this},setTintMode:function(e){return e===void 0&&(e=c.MULTIPLY),this.tintMode=e,this},isTinted:{get:function(){return this.tint!==16777215||this.tintMode!==c.MULTIPLY}},width:{get:function(){return this._width},set:function(e){this._width=Math.max(e,this.leftWidth+this.rightWidth),this.updateVertices()}},height:{get:function(){return this._height},set:function(e){this.is3Slice||(this._height=Math.max(e,this.topHeight+this.bottomHeight),this.updateVertices())}},displayWidth:{get:function(){return this.scaleX*this.width},set:function(e){this.scaleX=e/this.width}},displayHeight:{get:function(){return this.scaleY*this.height},set:function(e){this.scaleY=e/this.height}},setSize:function(e,t){this.width=e,this.height=t,this.updateDisplayOrigin();var n=this.input;return n&&!n.customHitArea&&(n.hitArea.width=this.width,n.hitArea.height=this.height),this},setDisplaySize:function(e,t){return this.displayWidth=e,this.displayHeight=t,this},originX:{get:function(){return this._originX},set:function(e){this._originX=e,this.updateVertices()}},originY:{get:function(){return this._originY},set:function(e){this._originY=e,this.updateVertices()}},setOrigin:function(e,t){return e===void 0&&(e=.5),t===void 0&&(t=e),this._originX=e,this._originY=t,this.updateVertices(),this.updateDisplayOrigin()},setSizeToFrame:function(){if(this.is3Slice){var e=this.frame.height;this._height=e,this.topHeight=e,this.bottomHeight=0}return this.updateUVs(),this},preDestroy:function(){this.vertices=[]}})},28279(e,t,n){var r=n(25305),i=n(44603),a=n(23568),o=n(35154),s=n(28103);i.register(`nineslice`,function(e,t){e===void 0&&(e={});var n=a(e,`key`,null),i=a(e,`frame`,null),c=o(e,`width`,256),l=o(e,`height`,256),u=o(e,`leftWidth`,10),d=o(e,`rightWidth`,10),f=o(e,`topHeight`,0),p=o(e,`bottomHeight`,0),m=o(e,`tileX`,!1),h=o(e,`tileY`,!1),g=new s(this.scene,0,0,n,i,c,l,u,d,f,p,m,h);return t!==void 0&&(e.add=t),r(this.scene,g,e),g})},47521(e,t,n){var r=n(28103);n(39429).register(`nineslice`,function(e,t,n,i,a,o,s,c,l,u,d,f){return this.displayList.add(new r(this.scene,e,t,n,i,a,o,s,c,l,u,d,f))})},78023(e,t,n){var r=n(29747),i=r,a=r;i=n(52230),e.exports={renderWebGL:i,renderCanvas:a}},82513(e,t,n){var r=n(83419),i=n(26099);e.exports=new r({Extends:i,initialize:function(e,t,n,r){i.call(this,e,t),this.vx=0,this.vy=0,this.u=n,this.v=r},setUVs:function(e,t){return this.u=e,this.v=t,this},resize:function(e,t,n,r,i,a){return this.x=e,this.y=t,this.vx=this.x*n,this.vy=-this.y*r,i<.5?this.vx+=n*(.5-i):i>.5&&(this.vx-=n*(i-.5)),a<.5?this.vy+=r*(.5-a):a>.5&&(this.vy-=r*(a-.5)),this}})},52230(e,t,n){var r=n(91296),i=n(70554),a={multiTexturing:!0};e.exports=function(e,t,n,o){var s=t.vertices,c=s.length;if(c!==0){var l=n.camera;l.addToRenderList(t);for(var u=t.alpha,d=t.customRenderNodes.BatchHandler||t.defaultRenderNodes.BatchHandler,f=r(t,l,o,!n.useCanvas).calc,p=i.getTintAppendFloatAlpha(t.tint,u),m=t.frame.source.glTexture,h=t.tintMode,g,_,v,y=0;y<c;y+=6)_=s[y+1],v=s[y+2],g=f.setQuad(_.vx,_.vy,v.vx,v.vy),d.batch(n,m,g[0],g[1],g[2],g[3],g[6],g[7],g[4],g[5],_.u,_.v,v.u-_.u,v.v-_.v,h,p,p,p,p,a)}}},35387(e,t,n){var r=n(83419),i=n(20071),a=n(40987),o=n(16421);e.exports=new r({Extends:i,initialize:function(e,t,n,r,s,c){t||={};var l={name:`noise`,fragmentSource:o,setupUniforms:this._setupUniforms};i.call(this,e,l,n,r,s,c),this.type=`Noise`,this.noiseOffset=[0,0],t.noiseOffset&&(this.noiseOffset=t.noiseOffset),this.noisePower=t.noisePower===void 0?1:t.noisePower,this.noiseColorStart=new a(0,0,0),this.noiseColorEnd=new a(255,255,255),(t.noiseColorStart!==void 0||t.noiseColorEnd!==void 0)&&this.setNoiseColor(t.noiseColorStart,t.noiseColorEnd),this.noiseRandomChannels=!!t.noiseRandomChannels,this.noiseRandomNormal=!!t.noiseRandomNormal},setNoiseColor:function(e,t){var n;return e===void 0&&(e=0),t===void 0&&(t=16777215),typeof e==`number`?a.IntegerToColor(e,this.noiseColorStart):typeof e==`string`?a.HexStringToColor(e,this.noiseColorStart):Array.isArray(e)?(n=e[3]===void 0?1:e[3],this.noiseColorStart.setGLTo(e[0],e[1],e[2],n)):e instanceof a&&this.noiseColorStart.setTo(e.red,e.green,e.blue,e.alpha),typeof t==`number`?a.IntegerToColor(t,this.noiseColorEnd):typeof t==`string`?a.HexStringToColor(t,this.noiseColorEnd):Array.isArray(t)?(n=t[3]===void 0?1:t[3],this.noiseColorEnd.setGLTo(t[0],t[1],t[2],n)):t instanceof a&&this.noiseColorEnd.setTo(t.red,t.green,t.blue,t.alpha),this},_setupUniforms:function(e){e(`uOffset`,this.noiseOffset),e(`uColorStart`,this.noiseColorStart.gl),e(`uColorEnd`,this.noiseColorEnd.gl),e(`uPower`,this.noisePower);var t=0;this.noiseRandomChannels&&(t=1),this.noiseRandomNormal&&(t=2),e(`uMode`,t)}})},39931(e,t,n){var r=n(25305),i=n(44603),a=n(23568),o=n(35387);i.register(`noise`,function(e,t){e===void 0&&(e={});var n=a(e,`config`,null),i=a(e,`x`,0),s=a(e,`y`,0),c=a(e,`width`,128),l=a(e,`height`,128),u=new o(this.scene,n,i,s,c,l);return t!==void 0&&(e.add=t),r(this.scene,u,e),u})},34757(e,t,n){var r=n(35387);n(39429).register(`noise`,function(e,t,n,i,a){return this.displayList.add(new r(this.scene,e,t,n,i,a))})},51513(e,t,n){var r=n(83419),i=n(20071),a=n(40987),o=n(17205);e.exports=new r({Extends:i,initialize:function(e,t,n,r,s,c){t||={};var l={name:`noiseCell2D`,fragmentSource:o,shaderAdditions:[{name:`MODE_DISTANCE`,tags:[`MODE`],additions:{fragmentMode:`#define MODE_DISTANCE`}},{name:`ITERATION_COUNT_1`,tags:[`ITERATION_COUNT`],additions:{fragmentIterations:`#define ITERATION_COUNT 1.0`}},{name:`NORMALMAP`,tags:[`NORMALMAP`],additions:{fragmentNormalMap:`#define NORMAL_MAP
7
+ #extension GL_OES_standard_derivatives : enable`},disable:!t.noiseNormalMap}],setupUniforms:this._setupUniforms,updateShaderConfig:this._updateShaderConfig};i.call(this,e,l,n,r,s,c),this.type=`NoiseCell2D`,this.noiseCells=[32,32],t.noiseCells&&(this.noiseCells=t.noiseCells),this.noiseWrap=[this.noiseCells[0],this.noiseCells[1]],t.noiseWrap&&(this.noiseWrap=t.noiseWrap),this.noiseOffset=[0,0],t.noiseOffset&&(this.noiseOffset=t.noiseOffset),this.noiseVariation=[1,1],t.noiseVariation&&(this.noiseVariation=t.noiseVariation),this.noiseIterations=1,t.noiseIterations&&(this.noiseIterations=t.noiseIterations),this.noiseMode=0,t.noiseMode&&(this.noiseMode=t.noiseMode),this.noiseSmoothing=1,t.noiseSmoothing&&(this.noiseSmoothing=t.noiseSmoothing),this.noiseNormalMap=!!t.noiseNormalMap,this.noiseNormalScale=1,t.noiseNormalScale!==void 0&&(this.noiseNormalScale=t.noiseNormalScale),this.noiseColorStart=new a(0,0,0),this.noiseColorEnd=new a(255,255,255),(t.noiseColorStart!==void 0||t.noiseColorEnd!==void 0)&&this.setNoiseColor(t.noiseColorStart,t.noiseColorEnd),this.noiseSeed=[1,2,3,4,5,6,7,8],t.noiseSeed&&(this.noiseSeed=t.noiseSeed),t.randomizeNoiseSeed&&this.randomizeNoiseSeed(),this.keepAwake=!0},setNoiseColor:function(e,t){var n;return e===void 0&&(e=0),t===void 0&&(t=16777215),typeof e==`number`?a.IntegerToColor(e,this.noiseColorStart):typeof e==`string`?a.HexStringToColor(e,this.noiseColorStart):Array.isArray(e)?(n=e[3]===void 0?1:e[3],this.noiseColorStart.setGLTo(e[0],e[1],e[2],n)):e instanceof a&&this.noiseColorStart.setTo(e.red,e.green,e.blue,e.alpha),typeof t==`number`?a.IntegerToColor(t,this.noiseColorEnd):typeof t==`string`?a.HexStringToColor(t,this.noiseColorEnd):Array.isArray(t)?(n=t[3]===void 0?1:t[3],this.noiseColorEnd.setGLTo(t[0],t[1],t[2],n)):t instanceof a&&this.noiseColorEnd.setTo(t.red,t.green,t.blue,t.alpha),this},randomizeNoiseSeed:function(){for(var e=this.noiseSeed.length,t=0;t<e;t++)this.noiseSeed[t]=Math.random();return this},wrapNoise:function(){for(var e=this.noiseWrap.length,t=0;t<e;t++)this.noiseWrap[t]=this.noiseCells[t];return this},_setupUniforms:function(e){if(this.keepAwake){var t=Math.sin(this.scene.time.now)/4096/256;e(`uCellOffset`,[this.noiseOffset[0]+t,this.noiseOffset[1]+t])}else e(`uCellOffset`,this.noiseOffset);e(`uSeedX`,this.noiseSeed.slice(0,2)),e(`uSeedY`,this.noiseSeed.slice(2,4)),e(`uCells`,this.noiseCells),e(`uVariation`,this.noiseVariation),e(`uWrap`,this.noiseWrap),e(`uSmoothing`,this.noiseSmoothing),e(`uNormalScale`,this.noiseNormalScale),e(`uColorStart`,this.noiseColorStart.gl),e(`uColorEnd`,this.noiseColorEnd.gl)},_updateShaderConfig:function(e,t,n){var r=Math.max(1,Math.floor(t.noiseIterations)),i=n.programManager.getAdditionsByTag(`ITERATION_COUNT`)[0];i.name=`ITERATION_COUNT_`+r,i.additions.fragmentIterations=`#define ITERATION_COUNT `+r+`.0`;var a=`MODE_DISTANCE`;switch(t.noiseMode){case 1:a=`MODE_INDEX`;break;case 2:a=`MODE_DISTANCE_SMOOTH`;break}var o=n.programManager.getAdditionsByTag(`MODE`)[0];o.name=a,o.additions.fragmentMode=`#define `+a;var s=n.programManager.getAdditionsByTag(`NORMALMAP`)[0];s.disable=!t.noiseNormalMap}})},98292(e,t,n){var r=n(25305),i=n(44603),a=n(23568),o=n(51513);i.register(`noisecell2d`,function(e,t){e===void 0&&(e={});var n=a(e,`config`,null),i=a(e,`x`,0),s=a(e,`y`,0),c=a(e,`width`,128),l=a(e,`height`,128),u=new o(this.scene,n,i,s,c,l);return t!==void 0&&(e.add=t),r(this.scene,u,e),u})},26590(e,t,n){var r=n(51513);n(39429).register(`noisecell2d`,function(e,t,n,i,a){return this.displayList.add(new r(this.scene,e,t,n,i,a))})},15686(e,t,n){var r=n(83419),i=n(20071),a=n(40987),o=n(79814);e.exports=new r({Extends:i,initialize:function(e,t,n,r,s,c){t||={};var l={name:`noiseCell3D`,fragmentSource:o,shaderAdditions:[{name:`MODE_DISTANCE`,tags:[`MODE`],additions:{fragmentMode:`#define MODE_DISTANCE`}},{name:`ITERATION_COUNT_1`,tags:[`ITERATION_COUNT`],additions:{fragmentIterations:`#define ITERATION_COUNT 1.0`}},{name:`NORMALMAP`,tags:[`NORMALMAP`],additions:{fragmentNormalMap:`#define NORMAL_MAP
8
+ #extension GL_OES_standard_derivatives : enable`},disable:!t.noiseNormalMap}],setupUniforms:this._setupUniforms,updateShaderConfig:this._updateShaderConfig};i.call(this,e,l,n,r,s,c),this.type=`NoiseCell3D`,this.noiseCells=[32,32,32],t.noiseCells&&(this.noiseCells=t.noiseCells),this.noiseWrap=[this.noiseCells[0],this.noiseCells[1],this.noiseCells[2]],t.noiseWrap&&(this.noiseWrap=t.noiseWrap),this.noiseOffset=[0,0,0],t.noiseOffset&&(this.noiseOffset=t.noiseOffset),this.noiseVariation=[1,1,1],t.noiseVariation&&(this.noiseVariation=t.noiseVariation),this.noiseIterations=1,t.noiseIterations&&(this.noiseIterations=t.noiseIterations),this.noiseMode=0,t.noiseMode&&(this.noiseMode=t.noiseMode),this.noiseSmoothing=1,t.noiseSmoothing&&(this.noiseSmoothing=t.noiseSmoothing),this.noiseNormalMap=!!t.noiseNormalMap,this.noiseNormalScale=1,t.noiseNormalScale!==void 0&&(this.noiseNormalScale=t.noiseNormalScale),this.noiseColorStart=new a(0,0,0),this.noiseColorEnd=new a(255,255,255),(t.noiseColorStart!==void 0||t.noiseColorEnd!==void 0)&&this.setNoiseColor(t.noiseColorStart,t.noiseColorEnd),this.noiseSeed=[1,2,3,4,5,6,7,8,9,10,11,12],t.noiseSeed&&(this.noiseSeed=t.noiseSeed),t.randomizeNoiseSeed&&this.randomizeNoiseSeed(),this.keepAwake=!0},setNoiseColor:function(e,t){var n;return e===void 0&&(e=0),t===void 0&&(t=16777215),typeof e==`number`?a.IntegerToColor(e,this.noiseColorStart):typeof e==`string`?a.HexStringToColor(e,this.noiseColorStart):Array.isArray(e)?(n=e[3]===void 0?1:e[3],this.noiseColorStart.setGLTo(e[0],e[1],e[2],n)):e instanceof a&&this.noiseColorStart.setTo(e.red,e.green,e.blue,e.alpha),typeof t==`number`?a.IntegerToColor(t,this.noiseColorEnd):typeof t==`string`?a.HexStringToColor(t,this.noiseColorEnd):Array.isArray(t)?(n=t[3]===void 0?1:t[3],this.noiseColorEnd.setGLTo(t[0],t[1],t[2],n)):t instanceof a&&this.noiseColorEnd.setTo(t.red,t.green,t.blue,t.alpha),this},randomizeNoiseSeed:function(){for(var e=this.noiseSeed.length,t=0;t<e;t++)this.noiseSeed[t]=Math.random();return this},wrapNoise:function(){for(var e=this.noiseWrap.length,t=0;t<e;t++)this.noiseWrap[t]=this.noiseCells[t];return this},_setupUniforms:function(e){if(this.keepAwake){var t=Math.sin(this.scene.time.now)/4096/256;e(`uCellOffset`,[this.noiseOffset[0]+t,this.noiseOffset[1]+t,this.noiseOffset[2]+t])}else e(`uCellOffset`,this.noiseOffset);e(`uSeedX`,this.noiseSeed.slice(0,3)),e(`uSeedY`,this.noiseSeed.slice(3,6)),e(`uSeedZ`,this.noiseSeed.slice(6,9)),e(`uCells`,this.noiseCells),e(`uVariation`,this.noiseVariation),e(`uWrap`,this.noiseWrap),e(`uSmoothing`,this.noiseSmoothing),e(`uNormalScale`,this.noiseNormalScale),e(`uColorStart`,this.noiseColorStart.gl),e(`uColorEnd`,this.noiseColorEnd.gl)},_updateShaderConfig:function(e,t,n){var r=Math.max(1,Math.floor(t.noiseIterations)),i=n.programManager.getAdditionsByTag(`ITERATION_COUNT`)[0];i.name=`ITERATION_COUNT_`+r,i.additions.fragmentIterations=`#define ITERATION_COUNT `+r+`.0`;var a=`MODE_DISTANCE`;switch(t.noiseMode){case 1:a=`MODE_INDEX`;break;case 2:a=`MODE_DISTANCE_SMOOTH`;break}var o=n.programManager.getAdditionsByTag(`MODE`)[0];o.name=a,o.additions.fragmentMode=`#define `+a;var s=n.programManager.getAdditionsByTag(`NORMALMAP`)[0];s.disable=!t.noiseNormalMap}})},97044(e,t,n){var r=n(25305),i=n(44603),a=n(23568),o=n(15686);i.register(`noisecell3d`,function(e,t){e===void 0&&(e={});var n=a(e,`config`,null),i=a(e,`x`,0),s=a(e,`y`,0),c=a(e,`width`,128),l=a(e,`height`,128),u=new o(this.scene,n,i,s,c,l);return t!==void 0&&(e.add=t),r(this.scene,u,e),u})},89918(e,t,n){var r=n(15686);n(39429).register(`noisecell3d`,function(e,t,n,i,a){return this.displayList.add(new r(this.scene,e,t,n,i,a))})},41946(e,t,n){var r=n(83419),i=n(20071),a=n(40987),o=n(99595);e.exports=new r({Extends:i,initialize:function(e,t,n,r,s,c){t||={};var l={name:`noiseCell4D`,fragmentSource:o,shaderAdditions:[{name:`MODE_DISTANCE`,tags:[`MODE`],additions:{fragmentMode:`#define MODE_DISTANCE`}},{name:`ITERATION_COUNT_1`,tags:[`ITERATION_COUNT`],additions:{fragmentIterations:`#define ITERATION_COUNT 1.0`}},{name:`NORMALMAP`,tags:[`NORMALMAP`],additions:{fragmentNormalMap:`#define NORMAL_MAP
9
+ #extension GL_OES_standard_derivatives : enable`},disable:!t.noiseNormalMap}],setupUniforms:this._setupUniforms,updateShaderConfig:this._updateShaderConfig};i.call(this,e,l,n,r,s,c),this.type=`NoiseCell4D`,this.noiseCells=[32,32,32,32],t.noiseCells&&(this.noiseCells=t.noiseCells),this.noiseWrap=[this.noiseCells[0],this.noiseCells[1],this.noiseCells[2],this.noiseCells[3]],t.noiseWrap&&(this.noiseWrap=t.noiseWrap),this.noiseOffset=[0,0,0,0],t.noiseOffset&&(this.noiseOffset=t.noiseOffset),this.noiseVariation=[1,1,1,1],t.noiseVariation&&(this.noiseVariation=t.noiseVariation),this.noiseIterations=1,t.noiseIterations&&(this.noiseIterations=t.noiseIterations),this.noiseMode=0,t.noiseMode&&(this.noiseMode=t.noiseMode),this.noiseSmoothing=1,t.noiseSmoothing&&(this.noiseSmoothing=t.noiseSmoothing),this.noiseNormalMap=!!t.noiseNormalMap,this.noiseNormalScale=1,t.noiseNormalScale!==void 0&&(this.noiseNormalScale=t.noiseNormalScale),this.noiseColorStart=new a(0,0,0),this.noiseColorEnd=new a(255,255,255),(t.noiseColorStart!==void 0||t.noiseColorEnd!==void 0)&&this.setNoiseColor(t.noiseColorStart,t.noiseColorEnd),this.noiseSeed=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16],t.noiseSeed&&(this.noiseSeed=t.noiseSeed),t.randomizeNoiseSeed&&this.randomizeNoiseSeed(),this.keepAwake=!0},setNoiseColor:function(e,t){var n;return e===void 0&&(e=0),t===void 0&&(t=16777215),typeof e==`number`?a.IntegerToColor(e,this.noiseColorStart):typeof e==`string`?a.HexStringToColor(e,this.noiseColorStart):Array.isArray(e)?(n=e[3]===void 0?1:e[3],this.noiseColorStart.setGLTo(e[0],e[1],e[2],n)):e instanceof a&&this.noiseColorStart.setTo(e.red,e.green,e.blue,e.alpha),typeof t==`number`?a.IntegerToColor(t,this.noiseColorEnd):typeof t==`string`?a.HexStringToColor(t,this.noiseColorEnd):Array.isArray(t)?(n=t[3]===void 0?1:t[3],this.noiseColorEnd.setGLTo(t[0],t[1],t[2],n)):t instanceof a&&this.noiseColorEnd.setTo(t.red,t.green,t.blue,t.alpha),this},randomizeNoiseSeed:function(){for(var e=this.noiseSeed.length,t=0;t<e;t++)this.noiseSeed[t]=Math.random();return this},wrapNoise:function(){for(var e=this.noiseWrap.length,t=0;t<e;t++)this.noiseWrap[t]=this.noiseCells[t];return this},_setupUniforms:function(e){if(this.keepAwake){var t=Math.sin(this.scene.time.now)/4096/256;e(`uCellOffset`,[this.noiseOffset[0]+t,this.noiseOffset[1]+t,this.noiseOffset[2]+t,this.noiseOffset[3]+t])}else e(`uCellOffset`,this.noiseOffset);e(`uSeedX`,this.noiseSeed.slice(0,4)),e(`uSeedY`,this.noiseSeed.slice(4,8)),e(`uSeedZ`,this.noiseSeed.slice(8,12)),e(`uSeedW`,this.noiseSeed.slice(12,16)),e(`uCells`,this.noiseCells),e(`uVariation`,this.noiseVariation),e(`uWrap`,this.noiseWrap),e(`uSmoothing`,this.noiseSmoothing),e(`uNormalScale`,this.noiseNormalScale),e(`uColorStart`,this.noiseColorStart.gl),e(`uColorEnd`,this.noiseColorEnd.gl)},_updateShaderConfig:function(e,t,n){var r=Math.max(1,Math.floor(t.noiseIterations)),i=n.programManager.getAdditionsByTag(`ITERATION_COUNT`)[0];i.name=`ITERATION_COUNT_`+r,i.additions.fragmentIterations=`#define ITERATION_COUNT `+r+`.0`;var a=`MODE_DISTANCE`;switch(t.noiseMode){case 1:a=`MODE_INDEX`;break;case 2:a=`MODE_DISTANCE_SMOOTH`;break}var o=n.programManager.getAdditionsByTag(`MODE`)[0];o.name=a,o.additions.fragmentMode=`#define `+a;var s=n.programManager.getAdditionsByTag(`NORMALMAP`)[0];s.disable=!t.noiseNormalMap}})},20136(e,t,n){var r=n(25305),i=n(44603),a=n(23568),o=n(41946);i.register(`noisecell4d`,function(e,t){e===void 0&&(e={});var n=a(e,`config`,null),i=a(e,`x`,0),s=a(e,`y`,0),c=a(e,`width`,128),l=a(e,`height`,128),u=new o(this.scene,n,i,s,c,l);return t!==void 0&&(e.add=t),r(this.scene,u,e),u})},65874(e,t,n){var r=n(41946);n(39429).register(`noisecell4d`,function(e,t,n,i,a){return this.displayList.add(new r(this.scene,e,t,n,i,a))})},1792(e,t,n){var r=n(83419),i=n(20071),a=n(40987),o=n(83587);e.exports=new r({Extends:i,initialize:function(e,t,n,r,s,c){t||={};var l={name:`noiseSimplex2D`,fragmentSource:o,shaderAdditions:[{name:`ITERATION_COUNT_1_WARP_ITERATION_COUNT_1`,tags:[`ITERATION_COUNT`],additions:{fragmentIterations:`#define ITERATION_COUNT 1.0
10
+ #define WARP_ITERATION_COUNT 1.0`}},{name:`NORMALMAP`,tags:[`NORMALMAP`],additions:{fragmentNormalMap:`#define NORMAL_MAP
11
+ #extension GL_OES_standard_derivatives : enable`},disable:!t.noiseNormalMap}],setupUniforms:this._setupUniforms,updateShaderConfig:this._updateShaderConfig};i.call(this,e,l,n,r,s,c),this.type=`NoiseSimplex2D`,this.noiseCells=t.noiseCells||[32,32],this.noisePeriod=[this.noiseCells[0],this.noiseCells[1]],t.noisePeriod&&(this.noisePeriod=t.noisePeriod),this.noiseOffset=[0,0],t.noiseOffset&&(this.noiseOffset=t.noiseOffset),this.noiseFlow=t.noiseFlow||0,this.noiseWarpAmount=t.noiseWarpAmount||0,this.noiseIterations=t.noiseIterations||1,this.noiseWarpIterations=t.noiseWarpIterations||1,this.noiseDetailPower=t.noiseDetailPower||2,this.noiseFlowPower=t.noiseFlowPower||2,this.noiseContributionPower=t.noiseContributionPower||2,this.noiseWarpDetailPower=t.noiseWarpDetailPower||2,this.noiseWarpFlowPower=t.noiseWarpFlowPower||2,this.noiseWarpContributionPower=t.noiseWarpContributionPower||2,this.noiseNormalMap=!!t.noiseNormalMap,this.noiseNormalScale=1,t.noiseNormalScale!==void 0&&(this.noiseNormalScale=t.noiseNormalScale),this.noiseValueFactor=t.noiseValueFactor===void 0?.5:t.noiseValueFactor,this.noiseValueAdd=t.noiseValueAdd===void 0?.5:t.noiseValueAdd,this.noiseValuePower=t.noiseValuePower===void 0?1:t.noiseValuePower,this.noiseColorStart=new a(0,0,0),this.noiseColorEnd=new a(255,255,255),(t.noiseColorStart!==void 0||t.noiseColorEnd!==void 0)&&this.setNoiseColor(t.noiseColorStart,t.noiseColorEnd),this.noiseSeed=t.noiseSeed||[1,2]},setNoiseColor:function(e,t){var n;return e===void 0&&(e=0),t===void 0&&(t=16777215),typeof e==`number`?a.IntegerToColor(e,this.noiseColorStart):typeof e==`string`?a.HexStringToColor(e,this.noiseColorStart):Array.isArray(e)?(n=e[3]===void 0?1:e[3],this.noiseColorStart.setGLTo(e[0],e[1],e[2],n)):e instanceof a&&this.noiseColorStart.setTo(e.red,e.green,e.blue,e.alpha),typeof t==`number`?a.IntegerToColor(t,this.noiseColorEnd):typeof t==`string`?a.HexStringToColor(t,this.noiseColorEnd):Array.isArray(t)?(n=t[3]===void 0?1:t[3],this.noiseColorEnd.setGLTo(t[0],t[1],t[2],n)):t instanceof a&&this.noiseColorEnd.setTo(t.red,t.green,t.blue,t.alpha),this},randomizeNoiseSeed:function(){for(var e=this.noiseSeed.length,t=0;t<e;t++)this.noiseSeed[t]=Math.random();return this},wrapNoise:function(){for(var e=this.noisePeriod.length,t=0;t<e;t++)this.noisePeriod[t]=this.noiseCells[t];return this},_setupUniforms:function(e){e(`uCells`,this.noiseCells),e(`uPeriod`,this.noisePeriod),e(`uOffset`,this.noiseOffset),e(`uFlow`,this.noiseFlow),e(`uDetailPower`,this.noiseDetailPower),e(`uFlowPower`,this.noiseFlowPower),e(`uContributionPower`,this.noiseContributionPower),e(`uWarpDetailPower`,this.noiseWarpDetailPower),e(`uWarpFlowPower`,this.noiseWarpFlowPower),e(`uWarpContributionPower`,this.noiseWarpContributionPower),e(`uWarpAmount`,this.noiseWarpAmount),e(`uNormalScale`,this.noiseNormalScale),e(`uValueFactor`,this.noiseValueFactor),e(`uValueAdd`,this.noiseValueAdd),e(`uValuePower`,this.noiseValuePower),e(`uColorStart`,this.noiseColorStart.gl),e(`uColorEnd`,this.noiseColorEnd.gl),e(`uSeed`,this.noiseSeed)},_updateShaderConfig:function(e,t,n){var r=Math.max(1,Math.floor(t.noiseIterations)),i=Math.max(1,Math.floor(t.noiseWarpIterations)),a=n.programManager.getAdditionsByTag(`ITERATION_COUNT`)[0];a.name=`ITERATION_COUNT_`+r+`_WARP_ITERATION_COUNT_`+i,a.additions.fragmentIterations=`#define ITERATION_COUNT `+r+`.0
12
+ #define WARP_ITERATION_COUNT `+i+`.0`;var o=n.programManager.getAdditionsByTag(`NORMALMAP`)[0];o.disable=!t.noiseNormalMap}})},51754(e,t,n){var r=n(25305),i=n(44603),a=n(23568),o=n(1792);i.register(`noisesimplex2d`,function(e,t){e===void 0&&(e={});var n=a(e,`config`,null),i=a(e,`x`,0),s=a(e,`y`,0),c=a(e,`width`,128),l=a(e,`height`,128),u=new o(this.scene,n,i,s,c,l);return t!==void 0&&(e.add=t),r(this.scene,u,e),u})},80308(e,t,n){var r=n(1792);n(39429).register(`noisesimplex2d`,function(e,t,n,i,a){return this.displayList.add(new r(this.scene,e,t,n,i,a))})},51098(e,t,n){var r=n(83419),i=n(20071),a=n(40987),o=n(13460);e.exports=new r({Extends:i,initialize:function(e,t,n,r,s,c){t||={};var l={name:`noiseSimplex3D`,fragmentSource:o,shaderAdditions:[{name:`ITERATION_COUNT_1_WARP_ITERATION_COUNT_1`,tags:[`ITERATION_COUNT`],additions:{fragmentIterations:`#define ITERATION_COUNT 1.0
13
+ #define WARP_ITERATION_COUNT 1.0`}},{name:`NORMALMAP`,tags:[`NORMALMAP`],additions:{fragmentNormalMap:`#define NORMAL_MAP
14
+ #extension GL_OES_standard_derivatives : enable`},disable:!t.noiseNormalMap}],setupUniforms:this._setupUniforms,updateShaderConfig:this._updateShaderConfig};i.call(this,e,l,n,r,s,c),this.type=`NoiseSimplex3D`,this.noiseCells=t.noiseCells||[32,32,32],this.noisePeriod=[this.noiseCells[0],this.noiseCells[1],this.noiseCells[2]],t.noisePeriod&&(this.noisePeriod=t.noisePeriod),this.noiseOffset=[0,0,0],t.noiseOffset&&(this.noiseOffset=t.noiseOffset),this.noiseFlow=t.noiseFlow||0,this.noiseWarpAmount=t.noiseWarpAmount||0,this.noiseIterations=t.noiseIterations||1,this.noiseWarpIterations=t.noiseWarpIterations||1,this.noiseDetailPower=t.noiseDetailPower||2,this.noiseFlowPower=t.noiseFlowPower||2,this.noiseContributionPower=t.noiseContributionPower||2,this.noiseWarpDetailPower=t.noiseWarpDetailPower||2,this.noiseWarpFlowPower=t.noiseWarpFlowPower||2,this.noiseWarpContributionPower=t.noiseWarpContributionPower||2,this.noiseNormalMap=!!t.noiseNormalMap,this.noiseNormalScale=1,t.noiseNormalScale!==void 0&&(this.noiseNormalScale=t.noiseNormalScale),this.noiseValueFactor=t.noiseValueFactor===void 0?.5:t.noiseValueFactor,this.noiseValueAdd=t.noiseValueAdd===void 0?.5:t.noiseValueAdd,this.noiseValuePower=t.noiseValuePower===void 0?1:t.noiseValuePower,this.noiseColorStart=new a(0,0,0),this.noiseColorEnd=new a(255,255,255),(t.noiseColorStart!==void 0||t.noiseColorEnd!==void 0)&&this.setNoiseColor(t.noiseColorStart,t.noiseColorEnd),this.noiseSeed=t.noiseSeed||[1,2,3]},setNoiseColor:function(e,t){var n;return e===void 0&&(e=0),t===void 0&&(t=16777215),typeof e==`number`?a.IntegerToColor(e,this.noiseColorStart):typeof e==`string`?a.HexStringToColor(e,this.noiseColorStart):Array.isArray(e)?(n=e[3]===void 0?1:e[3],this.noiseColorStart.setGLTo(e[0],e[1],e[2],n)):e instanceof a&&this.noiseColorStart.setTo(e.red,e.green,e.blue,e.alpha),typeof t==`number`?a.IntegerToColor(t,this.noiseColorEnd):typeof t==`string`?a.HexStringToColor(t,this.noiseColorEnd):Array.isArray(t)?(n=t[3]===void 0?1:t[3],this.noiseColorEnd.setGLTo(t[0],t[1],t[2],n)):t instanceof a&&this.noiseColorEnd.setTo(t.red,t.green,t.blue,t.alpha),this},randomizeNoiseSeed:function(){for(var e=this.noiseSeed.length,t=0;t<e;t++)this.noiseSeed[t]=Math.random();return this},wrapNoise:function(){for(var e=this.noisePeriod.length,t=0;t<e;t++)this.noisePeriod[t]=this.noiseCells[t];return this},_setupUniforms:function(e){e(`uCells`,this.noiseCells),e(`uPeriod`,this.noisePeriod),e(`uOffset`,this.noiseOffset),e(`uFlow`,this.noiseFlow),e(`uDetailPower`,this.noiseDetailPower),e(`uFlowPower`,this.noiseFlowPower),e(`uContributionPower`,this.noiseContributionPower),e(`uWarpDetailPower`,this.noiseWarpDetailPower),e(`uWarpFlowPower`,this.noiseWarpFlowPower),e(`uWarpContributionPower`,this.noiseWarpContributionPower),e(`uWarpAmount`,this.noiseWarpAmount),e(`uNormalScale`,this.noiseNormalScale),e(`uValueFactor`,this.noiseValueFactor),e(`uValueAdd`,this.noiseValueAdd),e(`uValuePower`,this.noiseValuePower),e(`uColorStart`,this.noiseColorStart.gl),e(`uColorEnd`,this.noiseColorEnd.gl),e(`uSeed`,this.noiseSeed)},_updateShaderConfig:function(e,t,n){var r=Math.max(1,Math.floor(t.noiseIterations)),i=Math.max(1,Math.floor(t.noiseWarpIterations)),a=n.programManager.getAdditionsByTag(`ITERATION_COUNT`)[0];a.name=`ITERATION_COUNT_`+r+`_WARP_ITERATION_COUNT_`+i,a.additions.fragmentIterations=`#define ITERATION_COUNT `+r+`.0
15
+ #define WARP_ITERATION_COUNT `+i+`.0`;var o=n.programManager.getAdditionsByTag(`NORMALMAP`)[0];o.disable=!t.noiseNormalMap}})},71112(e,t,n){var r=n(25305),i=n(44603),a=n(23568),o=n(51098);i.register(`noisesimplex3d`,function(e,t){e===void 0&&(e={});var n=a(e,`config`,null),i=a(e,`x`,0),s=a(e,`y`,0),c=a(e,`width`,128),l=a(e,`height`,128),u=new o(this.scene,n,i,s,c,l);return t!==void 0&&(e.add=t),r(this.scene,u,e),u})},73810(e,t,n){var r=n(51098);n(39429).register(`noisesimplex3d`,function(e,t,n,i,a){return this.displayList.add(new r(this.scene,e,t,n,i,a))})},76472(e,t,n){var r=n(83419),i=n(44777),a=n(37589),o=n(6113),s=n(91389),c=n(90664);e.exports=new r({Extends:i,initialize:function(e){i.call(this,e,null,!1),this.active=!1,this.easeName=`Linear`,this.r=[],this.g=[],this.b=[]},getMethod:function(){return this.propertyValue===null?0:9},setMethods:function(){var e=this.propertyValue,t=e,n=this.defaultEmit,r=this.defaultUpdate;if(this.method===9){this.start=e[0],this.ease=o(`Linear`),this.interpolation=s(`linear`),n=this.easedValueEmit,r=this.easeValueUpdate,t=e[0],this.active=!0,this.r.length=0,this.g.length=0,this.b.length=0;for(var i=0;i<e.length;i++){var a=c(e[i]);this.r.push(a.r),this.g.push(a.g),this.b.push(a.b)}}return this.onEmit=n,this.onUpdate=r,this.current=t,this},setEase:function(e){this.easeName=e,this.ease=o(e)},easedValueEmit:function(){return this.current=this.start,this.start},easeValueUpdate:function(e,t,n){var r=this.ease(n),i=a(this.interpolation(this.r,r),this.interpolation(this.g,r),this.interpolation(this.b,r));return this.current=i,i}})},44777(e,t,n){var r=n(30976),i=n(45319),a=n(83419),o=n(99472),s=n(6113),c=n(95540),l=n(91389),u=n(77720),d=n(15994);e.exports=new a({initialize:function(e,t,n){n===void 0&&(n=!1),this.propertyKey=e,this.propertyValue=t,this.defaultValue=t,this.steps=0,this.counter=0,this.yoyo=!1,this.direction=0,this.start=0,this.current=0,this.end=0,this.ease=null,this.interpolation=null,this.emitOnly=n,this.onEmit=this.defaultEmit,this.onUpdate=this.defaultUpdate,this.active=!0,this.method=0,this._onEmit,this._onUpdate},loadConfig:function(e,t){e===void 0&&(e={}),t&&(this.propertyKey=t),this.propertyValue=c(e,this.propertyKey,this.defaultValue),this.method=this.getMethod(),this.setMethods(),this.emitOnly&&(this.onUpdate=this.defaultUpdate)},toJSON:function(){return JSON.stringify(this.propertyValue)},onChange:function(e){var t;switch(this.method){case 1:case 3:case 8:t=e;break;case 2:this.propertyValue.indexOf(e)>=0&&(t=e);break;case 4:t=u(e,(this.end-this.start)/this.steps),this.counter=t;break;case 5:case 6:case 7:t=i(e,this.start,this.end);break;case 9:t=this.start[0];break}return this.current=t,this},getMethod:function(){var e=this.propertyValue;if(e===null)return 0;var t=typeof e;if(t===`number`)return 1;if(Array.isArray(e))return 2;if(t===`function`)return 3;if(t===`object`){if(this.hasBoth(e,`start`,`end`))return this.has(e,`steps`)?4:5;if(this.hasBoth(e,`min`,`max`))return 6;if(this.has(e,`random`))return 7;if(this.hasEither(e,`onEmit`,`onUpdate`))return 8;if(this.hasEither(e,`values`,`interpolation`))return 9}return 0},setMethods:function(){var e=this.propertyValue,t=e,n=this.defaultEmit,r=this.defaultUpdate;switch(this.method){case 1:n=this.staticValueEmit;break;case 2:n=this.randomStaticValueEmit,t=e[0];break;case 3:this._onEmit=e,n=this.proxyEmit,t=this.defaultValue;break;case 4:this.start=e.start,this.end=e.end,this.steps=e.steps,this.counter=this.start,this.yoyo=this.has(e,`yoyo`)?e.yoyo:!1,this.direction=0,n=this.steppedEmit,t=this.start;break;case 5:this.start=e.start,this.end=e.end;var i=this.has(e,`ease`)?e.ease:`Linear`;this.ease=s(i,e.easeParams),n=this.has(e,`random`)&&e.random?this.randomRangedValueEmit:this.easedValueEmit,r=this.easeValueUpdate,t=this.start;break;case 6:this.start=e.min,this.end=e.max,n=this.has(e,`int`)&&e.int?this.randomRangedIntEmit:this.randomRangedValueEmit,t=this.start;break;case 7:var a=e.random;Array.isArray(a)&&(this.start=a[0],this.end=a[1]),n=this.randomRangedIntEmit,t=this.start;break;case 8:this._onEmit=this.has(e,`onEmit`)?e.onEmit:this.defaultEmit,this._onUpdate=this.has(e,`onUpdate`)?e.onUpdate:this.defaultUpdate,n=this.proxyEmit,r=this.proxyUpdate,t=this.defaultValue;break;case 9:this.start=e.values;var o=this.has(e,`ease`)?e.ease:`Linear`;this.ease=s(o,e.easeParams),this.interpolation=l(e.interpolation),n=this.easedValueEmit,r=this.easeValueUpdate,t=this.start[0];break}return this.onEmit=n,this.onUpdate=r,this.current=t,this},has:function(e,t){return e.hasOwnProperty(t)},hasBoth:function(e,t,n){return e.hasOwnProperty(t)&&e.hasOwnProperty(n)},hasEither:function(e,t,n){return e.hasOwnProperty(t)||e.hasOwnProperty(n)},defaultEmit:function(){return this.defaultValue},defaultUpdate:function(e,t,n,r){return r},proxyEmit:function(e,t,n){var r=this._onEmit(e,t,n);return this.current=r,r},proxyUpdate:function(e,t,n,r){var i=this._onUpdate(e,t,n,r);return this.current=i,i},staticValueEmit:function(){return this.current},staticValueUpdate:function(){return this.current},randomStaticValueEmit:function(){var e=Math.floor(Math.random()*this.propertyValue.length);return this.current=this.propertyValue[e],this.current},randomRangedValueEmit:function(e,t){var n=o(this.start,this.end);return e&&e.data[t]&&(e.data[t].min=n,e.data[t].max=this.end),this.current=n,n},randomRangedIntEmit:function(e,t){var n=r(this.start,this.end);return e&&e.data[t]&&(e.data[t].min=n,e.data[t].max=this.end),this.current=n,n},steppedEmit:function(){var e=this.counter,t=e,n=(this.end-this.start)/this.steps;if(this.yoyo){var r;this.direction===0?(t+=n,t>=this.end&&(r=t-this.end,t=this.end-r,this.direction=1)):(t-=n,t<=this.start&&(r=this.start-t,t=this.start+r,this.direction=0)),this.counter=t}else this.counter=d(t+n,this.start,this.end);return this.current=e,e},easedValueEmit:function(e,t){if(e&&e.data[t]){var n=e.data[t];n.min=this.start,n.max=this.end}return this.current=this.start,this.start},easeValueUpdate:function(e,t,n){var r=e.data[t],i,a=this.ease(n);return i=this.interpolation?this.interpolation(this.start,a):(r.max-r.min)*a+r.min,this.current=i,i},destroy:function(){this.propertyValue=null,this.defaultValue=null,this.ease=null,this.interpolation=null,this._onEmit=null,this._onUpdate=null}})},24502(e,t,n){var r=n(83419),i=n(95540),a=n(20286);e.exports=new r({Extends:a,initialize:function(e,t,n,r,o){if(typeof e==`object`){var s=e;e=i(s,`x`,0),t=i(s,`y`,0),n=i(s,`power`,0),r=i(s,`epsilon`,100),o=i(s,`gravity`,50)}else e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=100),o===void 0&&(o=50);a.call(this,e,t,!0),this._gravity=o,this._power=n*o,this._epsilon=r*r},update:function(e,t){var n=this.x-e.x,r=this.y-e.y,i=n*n+r*r;if(i!==0){var a=Math.sqrt(i);i<this._epsilon&&(i=this._epsilon);var o=this._power*t/(i*a)*100;e.velocityX+=n*o,e.velocityY+=r*o}},epsilon:{get:function(){return Math.sqrt(this._epsilon)},set:function(e){this._epsilon=e*e}},power:{get:function(){return this._power/this._gravity},set:function(e){this._power=e*this._gravity}},gravity:{get:function(){return this._gravity},set:function(e){var t=this.power;this._gravity=e,this.power=t}}})},56480(e,t,n){var r=n(9674),i=n(45319),a=n(83419),o=n(39506),s=n(87841),c=n(11520),l=n(26099);e.exports=new a({initialize:function(e){this.emitter=e,this.texture=null,this.frame=null,this.x=0,this.y=0,this.worldPosition=new l,this.velocityX=0,this.velocityY=0,this.accelerationX=0,this.accelerationY=0,this.maxVelocityX=1e4,this.maxVelocityY=1e4,this.bounce=0,this.scaleX=1,this.scaleY=1,this.alpha=1,this.angle=0,this.rotation=0,this.tint=16777215,this.life=1e3,this.lifeCurrent=1e3,this.delayCurrent=0,this.holdCurrent=0,this.lifeT=0,this.data={tint:{min:16777215,max:16777215},alpha:{min:1,max:1},rotate:{min:0,max:0},scaleX:{min:1,max:1},scaleY:{min:1,max:1},x:{min:0,max:0},y:{min:0,max:0},accelerationX:{min:0,max:0},accelerationY:{min:0,max:0},maxVelocityX:{min:0,max:0},maxVelocityY:{min:0,max:0},moveToX:{min:0,max:0},moveToY:{min:0,max:0},bounce:{min:0,max:0}},this.isCropped=!1,this.scene=e.scene,this.anims=null,this.emitter.anims.length>0&&(this.anims=new r(this)),this.bounds=new s},emit:function(e,t,n,r,i,a){return this.emitter.emit(e,t,n,r,i,a)},isAlive:function(){return this.lifeCurrent>0},kill:function(){this.lifeCurrent=0},setPosition:function(e,t){e===void 0&&(e=0),t===void 0&&(t=0),this.x=e,this.y=t},fire:function(e,t){var n=this.emitter,r=n.ops,i=n.getAnim();if(i?this.anims.play(i):(this.frame=n.getFrame(),this.texture=this.frame.texture),!this.frame)throw Error(`Particle has no texture frame`);if(n.getEmitZone(this),e===void 0?this.x+=r.x.onEmit(this,`x`):r.x.steps>0?this.x+=e+r.x.onEmit(this,`x`):this.x+=e,t===void 0?this.y+=r.y.onEmit(this,`y`):r.y.steps>0?this.y+=t+r.y.onEmit(this,`y`):this.y+=t,this.life=r.lifespan.onEmit(this,`lifespan`),this.lifeCurrent=this.life,this.lifeT=0,this.delayCurrent=r.delay.onEmit(this,`delay`),this.holdCurrent=r.hold.onEmit(this,`hold`),this.scaleX=r.scaleX.onEmit(this,`scaleX`),this.scaleY=r.scaleY.active?r.scaleY.onEmit(this,`scaleY`):this.scaleX,this.angle=r.rotate.onEmit(this,`rotate`),this.rotation=o(this.angle),n.worldMatrix.transformPoint(this.x,this.y,this.worldPosition),this.delayCurrent===0&&n.getDeathZone(this))return this.lifeCurrent=0,!1;var a=r.speedX.onEmit(this,`speedX`),s=r.speedY.active?r.speedY.onEmit(this,`speedY`):a;if(n.radial){var c=o(r.angle.onEmit(this,`angle`));this.velocityX=Math.cos(c)*Math.abs(a),this.velocityY=Math.sin(c)*Math.abs(s)}else if(n.moveTo){var l=r.moveToX.onEmit(this,`moveToX`),u=r.moveToY.onEmit(this,`moveToY`),d=this.life/1e3;this.velocityX=(l-this.x)/d,this.velocityY=(u-this.y)/d}else this.velocityX=a,this.velocityY=s;return n.acceleration&&(this.accelerationX=r.accelerationX.onEmit(this,`accelerationX`),this.accelerationY=r.accelerationY.onEmit(this,`accelerationY`)),this.maxVelocityX=r.maxVelocityX.onEmit(this,`maxVelocityX`),this.maxVelocityY=r.maxVelocityY.onEmit(this,`maxVelocityY`),this.bounce=r.bounce.onEmit(this,`bounce`),this.alpha=r.alpha.onEmit(this,`alpha`),r.color.active?this.tint=r.color.onEmit(this,`tint`):this.tint=r.tint.onEmit(this,`tint`),!0},update:function(e,t,n){if(this.lifeCurrent<=0)return this.holdCurrent>0?(this.holdCurrent-=e,this.holdCurrent<=0):!0;if(this.delayCurrent>0)return this.delayCurrent-=e,!1;this.anims&&this.anims.update(0,e);var r=this.emitter,a=r.ops,s=1-this.lifeCurrent/this.life;if(this.lifeT=s,this.x=a.x.onUpdate(this,`x`,s,this.x),this.y=a.y.onUpdate(this,`y`,s,this.y),r.moveTo){var c=a.moveToX.onUpdate(this,`moveToX`,s,r.moveToX),l=a.moveToY.onUpdate(this,`moveToY`,s,r.moveToY),u=this.lifeCurrent/1e3;this.velocityX=(c-this.x)/u,this.velocityY=(l-this.y)/u}return this.computeVelocity(r,e,t,n,s),this.scaleX=a.scaleX.onUpdate(this,`scaleX`,s,this.scaleX),a.scaleY.active?this.scaleY=a.scaleY.onUpdate(this,`scaleY`,s,this.scaleY):this.scaleY=this.scaleX,this.angle=a.rotate.onUpdate(this,`rotate`,s,this.angle),this.rotation=o(this.angle),r.getDeathZone(this)?(this.lifeCurrent=0,!0):(this.alpha=i(a.alpha.onUpdate(this,`alpha`,s,this.alpha),0,1),a.color.active?this.tint=a.color.onUpdate(this,`color`,s,this.tint):this.tint=a.tint.onUpdate(this,`tint`,s,this.tint),this.lifeCurrent-=e,this.lifeCurrent<=0&&this.holdCurrent<=0)},computeVelocity:function(e,t,n,r,a){var o=e.ops,s=this.velocityX,c=this.velocityY,l=o.accelerationX.onUpdate(this,`accelerationX`,a,this.accelerationX),u=o.accelerationY.onUpdate(this,`accelerationY`,a,this.accelerationY),d=o.maxVelocityX.onUpdate(this,`maxVelocityX`,a,this.maxVelocityX),f=o.maxVelocityY.onUpdate(this,`maxVelocityY`,a,this.maxVelocityY);this.bounce=o.bounce.onUpdate(this,`bounce`,a,this.bounce),s+=e.gravityX*n+l*n,c+=e.gravityY*n+u*n,s=i(s,-d,d),c=i(c,-f,f),this.velocityX=s,this.velocityY=c,this.x+=s*n,this.y+=c*n,e.worldMatrix.transformPoint(this.x,this.y,this.worldPosition);for(var p=0;p<r.length;p++){var m=r[p];m.active&&m.update(this,t,n,a)}},setSizeToFrame:function(){},getBounds:function(e){e===void 0&&(e=this.emitter.getWorldTransformMatrix());var t=Math.abs(e.scaleX)*this.scaleX,n=Math.abs(e.scaleY)*this.scaleY,r=this.x,i=this.y,a=this.rotation,o=this.frame.width*t/2,s=this.frame.height*n/2,u=this.bounds,d=new l(r-o,i-s),f=new l(r+o,i-s),p=new l(r-o,i+s),m=new l(r+o,i+s);return a!==0&&(c(d,r,i,a),c(f,r,i,a),c(p,r,i,a),c(m,r,i,a)),e.transformPoint(d.x,d.y,d),e.transformPoint(f.x,f.y,f),e.transformPoint(p.x,p.y,p),e.transformPoint(m.x,m.y,m),u.x=Math.min(d.x,f.x,p.x,m.x),u.y=Math.min(d.y,f.y,p.y,m.y),u.width=Math.max(d.x,f.x,p.x,m.x)-u.x,u.height=Math.max(d.y,f.y,p.y,m.y)-u.y,u},destroy:function(){this.anims&&this.anims.destroy(),this.anims=null,this.emitter=null,this.texture=null,this.frame=null,this.scene=null}})},69601(e,t,n){var r=n(83419),i=n(20286),a=n(87841);e.exports=new r({Extends:i,initialize:function(e,t,n,r,o,s,c,l){o===void 0&&(o=!0),s===void 0&&(s=!0),c===void 0&&(c=!0),l===void 0&&(l=!0),i.call(this,e,t,!0),this.bounds=new a(e,t,n,r),this.collideLeft=o,this.collideRight=s,this.collideTop=c,this.collideBottom=l},update:function(e){var t=this.bounds,n=-e.bounce,r=e.worldPosition;r.x<t.x&&this.collideLeft?(e.x+=t.x-r.x,e.velocityX*=n):r.x>t.right&&this.collideRight&&(e.x-=r.x-t.right,e.velocityX*=n),r.y<t.y&&this.collideTop?(e.y+=t.y-r.y,e.velocityY*=n):r.y>t.bottom&&this.collideBottom&&(e.y-=r.y-t.bottom,e.velocityY*=n)}})},31600(e,t,n){var r=n(68668),i=n(83419),a=n(31401),o=n(53774),s=n(43459),c=n(26388),l=n(19909),u=n(76472),d=n(44777),f=n(20696),p=n(95643),m=n(95540),h=n(26546),g=n(24502),_=n(69036),v=n(1985),y=n(97022),b=n(86091),x=n(73162),S=n(20074),C=n(269),w=n(56480),T=n(69601),E=n(68875),D=n(87841),O=n(59996),k=n(72905),A=n(90668),j=n(19186),M=n(84322),N=n(61340),P=n(26099),F=n(15994),I=`active.advance.blendMode.colorEase.deathCallback.deathCallbackScope.duration.emitCallback.emitCallbackScope.follow.frequency.gravityX.gravityY.maxAliveParticles.maxParticles.name.emitting.particleBringToTop.particleClass.radial.sortCallback.sortOrderAsc.sortProperty.stopAfter.tintMode.timeScale.trackVisible.visible`.split(`.`),L=[`accelerationX`,`accelerationY`,`alpha`,`angle`,`bounce`,`color`,`delay`,`hold`,`lifespan`,`maxVelocityX`,`maxVelocityY`,`moveToX`,`moveToY`,`quantity`,`rotate`,`scaleX`,`scaleY`,`speedX`,`speedY`,`tint`,`x`,`y`];e.exports=new i({Extends:p,Mixins:[a.AlphaSingle,a.BlendMode,a.Depth,a.Lighting,a.Mask,a.RenderNodes,a.ScrollFactor,a.Texture,a.Transform,a.Visible,A],initialize:function(e,t,n,r,i){p.call(this,e,`ParticleEmitter`),this.particleClass=w,this.config=null,this.ops={accelerationX:new d(`accelerationX`,0),accelerationY:new d(`accelerationY`,0),alpha:new d(`alpha`,1),angle:new d(`angle`,{min:0,max:360},!0),bounce:new d(`bounce`,0),color:new u(`color`),delay:new d(`delay`,0,!0),hold:new d(`hold`,0,!0),lifespan:new d(`lifespan`,1e3,!0),maxVelocityX:new d(`maxVelocityX`,1e4),maxVelocityY:new d(`maxVelocityY`,1e4),moveToX:new d(`moveToX`,0),moveToY:new d(`moveToY`,0),quantity:new d(`quantity`,1,!0),rotate:new d(`rotate`,0),scaleX:new d(`scaleX`,1),scaleY:new d(`scaleY`,1),speedX:new d(`speedX`,0,!0),speedY:new d(`speedY`,0,!0),tint:new d(`tint`,16777215),x:new d(`x`,0),y:new d(`y`,0)},this.radial=!0,this.gravityX=0,this.gravityY=0,this.acceleration=!1,this.moveTo=!1,this.emitCallback=null,this.emitCallbackScope=null,this.deathCallback=null,this.deathCallbackScope=null,this.maxParticles=0,this.maxAliveParticles=0,this.stopAfter=0,this.duration=0,this.frequency=0,this.emitting=!0,this.particleBringToTop=!0,this.timeScale=1,this.emitZones=[],this.deathZones=[],this.viewBounds=null,this.follow=null,this.followOffset=new P,this.trackVisible=!1,this.frames=[],this.randomFrame=!0,this.frameQuantity=1,this.anims=[],this.randomAnim=!0,this.animQuantity=1,this.dead=[],this.alive=[],this.counters=new Float32Array(10),this.skipping=!1,this.worldMatrix=new N,this.sortProperty=``,this.sortOrderAsc=!0,this.sortCallback=this.depthSortCallback,this.processors=new x(this),this.tintMode=M.MULTIPLY,this.initRenderNodes(this._defaultRenderNodesMap),this.setPosition(t,n),this.setTexture(r),i&&this.setConfig(i)},_defaultRenderNodesMap:{get:function(){return r}},addedToScene:function(){this.scene.sys.updateList.add(this)},removedFromScene:function(){this.scene.sys.updateList.remove(this)},setConfig:function(e){if(!e)return this;this.config=e;var t=0,n=``,r=this.ops;for(t=0;t<L.length;t++)n=L[t],r[n].loadConfig(e);for(t=0;t<I.length;t++)n=I[t],y(e,n)&&(this[n]=m(e,n));if(this.acceleration=this.accelerationX!==0||this.accelerationY!==0,this.moveTo=_(e,[`moveToX`,`moveToY`]),y(e,`speed`)&&(r.speedX.loadConfig(e,`speed`),r.speedY.active=!1),(v(e,[`speedX`,`speedY`])||this.moveTo)&&(this.radial=!1),y(e,`scale`)&&(r.scaleX.loadConfig(e,`scale`),r.scaleY.active=!1),y(e,`callbackScope`)){var i=m(e,`callbackScope`,null);this.emitCallbackScope=i,this.deathCallbackScope=i}if(y(e,`emitZone`)&&this.addEmitZone(e.emitZone),y(e,`deathZone`)&&this.addDeathZone(e.deathZone),y(e,`bounds`)){var a=this.addParticleBounds(e.bounds);a.collideLeft=m(e,`collideLeft`,!0),a.collideRight=m(e,`collideRight`,!0),a.collideTop=m(e,`collideTop`,!0),a.collideBottom=m(e,`collideBottom`,!0)}return y(e,`followOffset`)&&this.followOffset.setFromObject(m(e,`followOffset`,0)),y(e,`texture`)&&this.setTexture(e.texture),y(e,`frame`)?this.setEmitterFrame(e.frame):y(e,`anim`)&&this.setAnim(e.anim),y(e,`reserve`)&&this.reserve(e.reserve),y(e,`advance`)&&this.fastForward(e.advance),this.resetCounters(this.frequency,this.emitting),this.emitting&&this.emit(f.START,this),this},updateConfig:function(e){return e&&(this.config?this.setConfig(C(this.config,e)):this.setConfig(e)),this},toJSON:function(){var e=o(this),t=0,n=``;for(t=0;t<I.length;t++)n=I[t],e[n]=this[n];var r=this.ops;for(t=0;t<L.length;t++)n=L[t],r[n]&&(e[n]=r[n].toJSON());return r.speedY.active||(delete e.speedX,e.speed=r.speedX.toJSON()),this.scaleX===this.scaleY&&(delete e.scaleX,delete e.scaleY,e.scale=r.scaleX.toJSON()),e},resetCounters:function(e,t){var n=this.counters;n.fill(0),n[0]=e,t&&(n[5]=1)},startFollow:function(e,t,n,r){return t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=!1),this.follow=e,this.followOffset.set(t,n),this.trackVisible=r,this},stopFollow:function(){return this.follow=null,this.followOffset.set(0,0),this.trackVisible=!1,this},getFrame:function(){var e=this.frames,t=e.length,n;return t===1?n=e[0]:this.randomFrame?n=h(e):(n=e[this.currentFrame],this.frameCounter++,this.frameCounter===this.frameQuantity&&(this.frameCounter=0,this.currentFrame++,this.currentFrame===t&&(this.currentFrame=0))),this.texture.get(n)},setEmitterFrame:function(e,t,n){t===void 0&&(t=!0),n===void 0&&(n=1),this.randomFrame=t,this.frameQuantity=n,this.currentFrame=0;var r=typeof e;if(this.frames.length=0,Array.isArray(e))this.frames=this.frames.concat(e);else if(r===`string`||r===`number`)this.frames.push(e);else if(r===`object`){var i=e;e=m(i,`frames`,null),e&&(this.frames=this.frames.concat(e));var a=m(i,`cycle`,!1);this.randomFrame=!a,this.frameQuantity=m(i,`quantity`,n)}return this.frames.length===1&&(this.frameQuantity=1,this.randomFrame=!1),this},getAnim:function(){var e=this.anims,t=e.length;if(t===0)return null;if(t===1)return e[0];if(this.randomAnim)return h(e);var n=e[this.currentAnim];return this.animCounter++,this.animCounter>=this.animQuantity&&(this.animCounter=0,this.currentAnim=F(this.currentAnim+1,0,t)),n},setAnim:function(e,t,n){t===void 0&&(t=!0),n===void 0&&(n=1),this.randomAnim=t,this.animQuantity=n,this.currentAnim=0;var r=typeof e;if(this.anims.length=0,Array.isArray(e))this.anims=this.anims.concat(e);else if(r===`string`)this.anims.push(e);else if(r===`object`){var i=e;e=m(i,`anims`,null),e&&(this.anims=this.anims.concat(e));var a=m(i,`cycle`,!1);this.randomAnim=!a,this.animQuantity=m(i,`quantity`,n)}return this.anims.length===1&&(this.animQuantity=1,this.randomAnim=!1),this},setRadial:function(e){return e===void 0&&(e=!0),this.radial=e,this},addParticleBounds:function(e,t,n,r,i,a,o,s){if(typeof e==`object`){var c=e;e=c.x,t=c.y,n=y(c,`w`)?c.w:c.width,r=y(c,`h`)?c.h:c.height}return this.addParticleProcessor(new T(e,t,n,r,i,a,o,s))},setParticleSpeed:function(e,t){return t===void 0&&(t=e),this.ops.speedX.onChange(e),e===t?this.ops.speedY.active=!1:this.ops.speedY.onChange(t),this.radial=!0,this},setParticleScale:function(e,t){return e===void 0&&(e=1),t===void 0&&(t=e),this.ops.scaleX.onChange(e),this.ops.scaleY.onChange(t),this},setParticleGravity:function(e,t){return this.gravityX=e,this.gravityY=t,this},setParticleAlpha:function(e){return this.ops.alpha.onChange(e),this},setParticleTint:function(e){return this.ops.tint.onChange(e),this},setEmitterAngle:function(e){return this.ops.angle.onChange(e),this},setParticleLifespan:function(e){return this.ops.lifespan.onChange(e),this},setQuantity:function(e){return this.quantity=e,this},setFrequency:function(e,t){return this.frequency=e,this.flowCounter=e>0?e:0,t&&(this.quantity=t),this},addDeathZone:function(e){Array.isArray(e)||(e=[e]);for(var t,n=[],r=0;r<e.length;r++)if(t=e[r],t instanceof c)n.push(t);else if(typeof t.contains==`function`)t=new c(t,!0),n.push(t);else{var i=m(t,`type`,`onEnter`),a=m(t,`source`,null);a&&typeof a.contains==`function`&&(t=new c(a,i===`onEnter`),n.push(t))}return this.deathZones=this.deathZones.concat(n),n},removeDeathZone:function(e){return k(this.deathZones,e),this},clearDeathZones:function(){return this.deathZones.length=0,this},addEmitZone:function(e){Array.isArray(e)||(e=[e]);for(var t,n=[],r=0;r<e.length;r++)if(t=e[r],t instanceof E||t instanceof l)n.push(t);else{var i=m(t,`source`,null);if(i){var a=m(t,`type`,`random`);a===`random`&&typeof i.getRandomPoint==`function`?(t=new E(i),n.push(t)):a===`edge`&&typeof i.getPoints==`function`&&(t=new l(i,m(t,`quantity`,1),m(t,`stepRate`,0),m(t,`yoyo`,!1),m(t,`seamless`,!0),m(t,`total`,-1)),n.push(t))}}return this.emitZones=this.emitZones.concat(n),n},removeEmitZone:function(e){return k(this.emitZones,e),this.zoneIndex=0,this},clearEmitZones:function(){return this.emitZones.length=0,this.zoneIndex=0,this},getEmitZone:function(e){var t=this.emitZones,n=t.length;if(n!==0){var r=t[this.zoneIndex];r.getPoint(e),r.total>-1&&(this.zoneTotal++,this.zoneTotal===r.total&&(this.zoneTotal=0,this.zoneIndex++,this.zoneIndex===n&&(this.zoneIndex=0)))}},getDeathZone:function(e){for(var t=this.deathZones,n=0;n<t.length;n++){var r=t[n];if(r.willKill(e))return this.emit(f.DEATH_ZONE,this,e,r),!0}return!1},setEmitZone:function(e){var t=isFinite(e)?e:this.emitZones.indexOf(e);return t>=0&&(this.zoneIndex=t),this},addParticleProcessor:function(e){return this.processors.exists(e)||(e.emitter&&e.emitter.removeParticleProcessor(e),this.processors.add(e),e.emitter=this),e},removeParticleProcessor:function(e){return this.processors.exists(e)&&(this.processors.remove(e,!0),e.emitter=null),e},getProcessors:function(){return this.processors.getAll(`active`,!0)},createGravityWell:function(e){return this.addParticleProcessor(new g(e))},reserve:function(e){var t=this.dead;if(this.maxParticles>0){var n=this.getParticleCount();n+e>this.maxParticles&&(e=this.maxParticles-(n+e))}for(var r=0;r<e;r++)t.push(new this.particleClass(this));return this},getAliveParticleCount:function(){return this.alive.length},getDeadParticleCount:function(){return this.dead.length},getParticleCount:function(){return this.getAliveParticleCount()+this.getDeadParticleCount()},atLimit:function(){return this.maxParticles>0&&this.getParticleCount()>=this.maxParticles?!0:this.maxAliveParticles>0&&this.getAliveParticleCount()>=this.maxAliveParticles},onParticleEmit:function(e,t){return e===void 0?(this.emitCallback=null,this.emitCallbackScope=null):typeof e==`function`&&(this.emitCallback=e,t&&(this.emitCallbackScope=t)),this},onParticleDeath:function(e,t){return e===void 0?(this.deathCallback=null,this.deathCallbackScope=null):typeof e==`function`&&(this.deathCallback=e,t&&(this.deathCallbackScope=t)),this},killAll:function(){for(var e=this.dead,t=this.alive;t.length>0;)e.push(t.pop());return this},forEachAlive:function(e,t){for(var n=this.alive,r=n.length,i=0;i<r;i++)e.call(t,n[i],this);return this},forEachDead:function(e,t){for(var n=this.dead,r=n.length,i=0;i<r;i++)e.call(t,n[i],this);return this},start:function(e,t){return e===void 0&&(e=0),this.emitting||(e>0&&this.fastForward(e),this.emitting=!0,this.resetCounters(this.frequency,!0),t!==void 0&&(this.duration=Math.abs(t)),this.emit(f.START,this)),this},stop:function(e){return e===void 0&&(e=!1),this.emitting&&(this.emitting=!1,e&&this.killAll(),this.emit(f.STOP,this)),this},pause:function(){return this.active=!1,this},resume:function(){return this.active=!0,this},setSortProperty:function(e,t){return e===void 0&&(e=``),t===void 0&&(t=this.true),this.sortProperty=e,this.sortOrderAsc=t,this.sortCallback=this.depthSortCallback,this},setSortCallback:function(e){return e=this.sortProperty===``?null:this.depthSortCallback,this.sortCallback=e,this},depthSort:function(){return j(this.alive,this.sortCallback.bind(this)),this},depthSortCallback:function(e,t){var n=this.sortProperty;return this.sortOrderAsc?e[n]-t[n]:t[n]-e[n]},flow:function(e,t,n){return t===void 0&&(t=1),this.emitting=!1,this.frequency=e,this.quantity=t,n!==void 0&&(this.stopAfter=n),this.start()},explode:function(e,t,n){this.frequency=-1,this.resetCounters(-1,!0);var r=this.emitParticle(e,t,n);return this.emit(f.EXPLODE,this,r),r},emitParticleAt:function(e,t,n){return this.emitParticle(n,e,t)},emitParticle:function(e,t,n){if(!this.atLimit()){e===void 0&&(e=this.ops.quantity.onEmit());for(var r=this.dead,i=this.stopAfter,a=this.follow?this.follow.x+this.followOffset.x:t,o=this.follow?this.follow.y+this.followOffset.y:n,s=0;s<e;s++){var c=r.pop();if(c||=new this.particleClass(this),c.fire(a,o)?(this.particleBringToTop?this.alive.push(c):this.alive.unshift(c),this.emitCallback&&this.emitCallback.call(this.emitCallbackScope,c,this)):this.dead.push(c),i>0&&(this.stopCounter++,this.stopCounter>=i)||this.atLimit())break}return c}},fastForward:function(e,t){t===void 0&&(t=1e3/60);var n=0;for(this.skipping=!0;n<Math.abs(e);)this.preUpdate(0,t),n+=t;return this.skipping=!1,this},preUpdate:function(e,t){t*=this.timeScale;var n=t/1e3;this.trackVisible&&(this.visible=this.follow.visible),this.getWorldTransformMatrix(this.worldMatrix);var r=this.getProcessors(),i=this.alive,a=this.dead,o=0,s=[],c=i.length;for(o=0;o<c;o++){var l=i[o];l.update(t,n,r)&&s.push({index:o,particle:l})}if(c=s.length,c>0){var u=this.deathCallback,d=this.deathCallbackScope;for(o=c-1;o>=0;o--){var p=s[o];i.splice(p.index,1),a.push(p.particle),u&&u.call(d,p.particle),p.particle.setPosition()}}if(!this.emitting&&!this.skipping){this.completeFlag===1&&i.length===0&&(this.completeFlag=0,this.emit(f.COMPLETE,this));return}if(this.frequency===0)this.emitParticle();else if(this.frequency>0)for(this.flowCounter-=t;this.flowCounter<=0;)this.emitParticle(),this.flowCounter+=this.frequency;this.skipping||(this.duration>0&&(this.elapsed+=t,this.elapsed>=this.duration&&this.stop()),this.stopAfter>0&&this.stopCounter>=this.stopAfter&&this.stop())},overlap:function(e){for(var t=this.getWorldTransformMatrix(),n=this.alive,r=n.length,i=[],a=0;a<r;a++){var o=n[a];O(e,o.getBounds(t))&&i.push(o)}return i},getBounds:function(e,t,n,r){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=1e3/60),r===void 0&&(r=new D);var i=this.getWorldTransformMatrix(),a,o,c=this.alive,l=!1;if(r.setTo(0,0,0,0),t>0){var u=0;for(this.skipping=!0;u<Math.abs(t);){for(this.preUpdate(0,n),a=0;a<c.length;a++)o=c[a].getBounds(i),l?S(r,o):(l=!0,s(o,r));u+=n}this.skipping=!1}else for(a=0;a<c.length;a++)o=c[a].getBounds(i),l?S(r,o):(l=!0,s(o,r));return e>0&&b(r,e,e),r},createEmitter:function(){throw Error(`createEmitter removed. See ParticleEmitter docs for info`)},particleX:{get:function(){return this.ops.x.current},set:function(e){this.ops.x.onChange(e)}},particleY:{get:function(){return this.ops.y.current},set:function(e){this.ops.y.onChange(e)}},accelerationX:{get:function(){return this.ops.accelerationX.current},set:function(e){this.ops.accelerationX.onChange(e)}},accelerationY:{get:function(){return this.ops.accelerationY.current},set:function(e){this.ops.accelerationY.onChange(e)}},maxVelocityX:{get:function(){return this.ops.maxVelocityX.current},set:function(e){this.ops.maxVelocityX.onChange(e)}},maxVelocityY:{get:function(){return this.ops.maxVelocityY.current},set:function(e){this.ops.maxVelocityY.onChange(e)}},speed:{get:function(){return this.ops.speedX.current},set:function(e){this.ops.speedX.onChange(e),this.ops.speedY.onChange(e)}},speedX:{get:function(){return this.ops.speedX.current},set:function(e){this.ops.speedX.onChange(e)}},speedY:{get:function(){return this.ops.speedY.current},set:function(e){this.ops.speedY.onChange(e)}},moveToX:{get:function(){return this.ops.moveToX.current},set:function(e){this.ops.moveToX.onChange(e)}},moveToY:{get:function(){return this.ops.moveToY.current},set:function(e){this.ops.moveToY.onChange(e)}},bounce:{get:function(){return this.ops.bounce.current},set:function(e){this.ops.bounce.onChange(e)}},particleScaleX:{get:function(){return this.ops.scaleX.current},set:function(e){this.ops.scaleX.onChange(e)}},particleScaleY:{get:function(){return this.ops.scaleY.current},set:function(e){this.ops.scaleY.onChange(e)}},particleColor:{get:function(){return this.ops.color.current},set:function(e){this.ops.color.onChange(e)}},colorEase:{get:function(){return this.ops.color.easeName},set:function(e){this.ops.color.setEase(e)}},particleTint:{get:function(){return this.ops.tint.current},set:function(e){this.ops.tint.onChange(e)}},particleAlpha:{get:function(){return this.ops.alpha.current},set:function(e){this.ops.alpha.onChange(e)}},lifespan:{get:function(){return this.ops.lifespan.current},set:function(e){this.ops.lifespan.onChange(e)}},particleAngle:{get:function(){return this.ops.angle.current},set:function(e){this.ops.angle.onChange(e)}},particleRotate:{get:function(){return this.ops.rotate.current},set:function(e){this.ops.rotate.onChange(e)}},quantity:{get:function(){return this.ops.quantity.current},set:function(e){this.ops.quantity.onChange(e)}},delay:{get:function(){return this.ops.delay.current},set:function(e){this.ops.delay.onChange(e)}},hold:{get:function(){return this.ops.hold.current},set:function(e){this.ops.hold.onChange(e)}},flowCounter:{get:function(){return this.counters[0]},set:function(e){this.counters[0]=e}},frameCounter:{get:function(){return this.counters[1]},set:function(e){this.counters[1]=e}},animCounter:{get:function(){return this.counters[2]},set:function(e){this.counters[2]=e}},elapsed:{get:function(){return this.counters[3]},set:function(e){this.counters[3]=e}},stopCounter:{get:function(){return this.counters[4]},set:function(e){this.counters[4]=e}},completeFlag:{get:function(){return this.counters[5]},set:function(e){this.counters[5]=e}},zoneIndex:{get:function(){return this.counters[6]},set:function(e){this.counters[6]=e}},zoneTotal:{get:function(){return this.counters[7]},set:function(e){this.counters[7]=e}},currentFrame:{get:function(){return this.counters[8]},set:function(e){this.counters[8]=e}},currentAnim:{get:function(){return this.counters[9]},set:function(e){this.counters[9]=e}},preDestroy:function(){this.texture=null,this.frames=null,this.anims=null,this.emitCallback=null,this.emitCallbackScope=null,this.deathCallback=null,this.deathCallbackScope=null,this.emitZones=null,this.deathZones=null,this.bounds=null,this.follow=null,this.counters=null;var e,t=this.ops;for(e=0;e<L.length;e++)t[L[e]].destroy();for(e=0;e<this.alive.length;e++)this.alive[e].destroy();for(e=0;e<this.dead.length;e++)this.dead[e].destroy();this.ops=null,this.alive=[],this.dead=[],this.worldMatrix.destroy()}})},9871(e,t,n){var r=n(59996),i=n(61340),a=new i,o=new i,s=new i,c=new i;e.exports=function(e,t,n,i){n.addToRenderList(t),a.copyWithScrollFactorFrom(n.matrix,n.scrollX,n.scrollY,t.scrollFactorX,t.scrollFactorY),i&&a.multiply(i),c.applyITRS(t.x,t.y,t.rotation,t.scaleX,t.scaleY),a.multiply(c);var l=e.currentContext,u=n.roundPixels,d=n.alpha,f=t.alpha,p=t.alive,m=p.length,h=t.viewBounds;if(!(!t.visible||m===0||h&&!r(h,n.worldView))){t.sortCallback&&t.depthSort(),l.save(),l.globalCompositeOperation=e.blendModes[t.blendMode];for(var g=0;g<m;g++){var _=p[g],v=_.alpha*f*d;if(!(v<=0||_.scaleX===0||_.scaleY===0)){s.applyITRS(_.x,_.y,_.rotation,_.scaleX,_.scaleY),a.multiply(s,o);var y=_.frame,b=y.canvasData;if(b.width>0&&b.height>0){var x=-y.halfWidth,S=-y.halfHeight;l.globalAlpha=v,l.save(),o.setToContext(l),u&&(x=Math.round(x),S=Math.round(S)),l.imageSmoothingEnabled=!y.source.scaleMode,l.drawImage(y.source.image,b.x,b.y,b.width,b.height,x,S,b.width,b.height),l.restore()}}}l.restore()}}},92730(e,t,n){var r=n(25305),i=n(44603),a=n(23568),o=n(95540),s=n(31600);i.register(`particles`,function(e,t){e===void 0&&(e={});var n=a(e,`key`,null),i=o(e,`config`,null),c=new s(this.scene,0,0,n);return t!==void 0&&(e.add=t),r(this.scene,c,e),i&&c.setConfig(i),c})},676(e,t,n){var r=n(39429),i=n(31600);r.register(`particles`,function(e,t,n,r){return e!==void 0&&typeof e==`string`&&console.warn(`ParticleEmitterManager was removed in Phaser 3.60. See documentation for details`),this.displayList.add(new i(this.scene,e,t,n,r))})},90668(e,t,n){var r=n(29747),i=r,a=r;i=n(21188),a=n(9871),e.exports={renderWebGL:i,renderCanvas:a}},21188(e,t,n){var r=n(59996),i=n(61340),a=n(70554),o=new i,s=new i,c=new i,l=new i,u={},d={},f={quad:new Float32Array(8)};e.exports=function(e,t,n,i){var p=n.camera;p.addToRenderList(t),o.copyWithScrollFactorFrom(p.getViewMatrix(!n.useCanvas),p.scrollX,p.scrollY,t.scrollFactorX,t.scrollFactorY),i&&o.multiply(i),l.applyITRS(t.x,t.y,t.rotation,t.scaleX,t.scaleY),o.multiply(l);var m=a.getTintAppendFloatAlpha,h=t.alpha,g=t.alive,_=g.length,v=t.viewBounds;if(!(_===0||v&&!r(v,p.worldView))){t.sortCallback&&t.depthSort();for(var y=t.tintMode,b=0;b<_;b++){var x=g[b],S=x.alpha*h;if(!(S<=0||x.scaleX===0||x.scaleY===0)){c.applyITRS(x.x,x.y,x.rotation,x.scaleX,x.scaleY),o.multiply(c,s);var C=x.frame,w=-C.halfWidth,T=-C.halfHeight;s.setQuad(w,T,w+C.width,T+C.height,f.quad),u.frame!==C&&(u.frame=C,u.uvSource=C);var E=m(x.tint,S);d.tintTopLeft=E,d.tintBottomLeft=E,d.tintTopRight=E,d.tintBottomRight=E,d.tintEffect=y;var D,O;t.lighting&&(x.texture&&(D=C.texture.dataSource[C.sourceIndex]),O=x.rotation,t.parentContainer&&(O=t.getWorldTransformMatrix(o,s).rotate(x.rotation).rotationNormalized));var k=t.customRenderNodes,A=t.defaultRenderNodes;(k.Submitter||A.Submitter).run(n,t,i,0,u,f,d,D,O)}}}}},20286(e,t,n){e.exports=new(n(83419))({initialize:function(e,t,n){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=!0),this.emitter,this.x=e,this.y=t,this.active=n},update:function(){},destroy:function(){this.emitter=null}})},9774(e){e.exports=`complete`},812(e){e.exports=`deathzone`},30522(e){e.exports=`explode`},96695(e){e.exports=`start`},18677(e){e.exports=`stop`},20696(e,t,n){e.exports={COMPLETE:n(9774),DEATH_ZONE:n(812),EXPLODE:n(30522),START:n(96695),STOP:n(18677)}},18404(e,t,n){e.exports={EmitterColorOp:n(76472),EmitterOp:n(44777),Events:n(20696),GravityWell:n(24502),Particle:n(56480),ParticleBounds:n(69601),ParticleEmitter:n(31600),ParticleProcessor:n(20286),Zones:n(21024)}},26388(e,t,n){e.exports=new(n(83419))({initialize:function(e,t){this.source=e,this.killOnEnter=t},willKill:function(e){var t=e.worldPosition,n=this.source.contains(t.x,t.y);return n&&this.killOnEnter||!n&&!this.killOnEnter}})},19909(e,t,n){e.exports=new(n(83419))({initialize:function(e,t,n,r,i,a){r===void 0&&(r=!1),i===void 0&&(i=!0),a===void 0&&(a=-1),this.source=e,this.points=[],this.quantity=t,this.stepRate=n,this.yoyo=r,this.counter=-1,this.seamless=i,this._length=0,this._direction=0,this.total=a,this.updateSource()},updateSource:function(){if(this.points=this.source.getPoints(this.quantity,this.stepRate),this.seamless){var e=this.points[0],t=this.points[this.points.length-1];e.x===t.x&&e.y===t.y&&this.points.pop()}var n=this._length;return this._length=this.points.length,this._length<n&&this.counter>this._length&&(this.counter=this._length-1),this},changeSource:function(e){return this.source=e,this.updateSource()},getPoint:function(e){this._direction===0?(this.counter++,this.counter>=this._length&&(this.yoyo?(this._direction=1,this.counter=this._length-1):this.counter=0)):(this.counter--,this.counter===-1&&(this.yoyo?(this._direction=0,this.counter=0):this.counter=this._length-1));var t=this.points[this.counter];t&&(e.x=t.x,e.y=t.y)}})},68875(e,t,n){var r=n(83419),i=n(26099);e.exports=new r({initialize:function(e){this.source=e,this._tempVec=new i,this.total=-1},getPoint:function(e){var t=this._tempVec;this.source.getRandomPoint(t),e.x=t.x,e.y=t.y}})},21024(e,t,n){e.exports={DeathZone:n(26388),EdgeZone:n(19909),RandomZone:n(68875)}},1159(e,t,n){var r=n(83419),i=n(31401),a=n(68287);e.exports=new r({Extends:a,Mixins:[i.PathFollower],initialize:function(e,t,n,r,i,o){a.call(this,e,n,r,i,o),this.path=t},preUpdate:function(e,t){this.anims.update(e,t),this.pathUpdate(e)}})},90145(e,t,n){var r=n(39429),i=n(1159);r.register(`follower`,function(e,t,n,r,a){var o=new i(this.scene,e,t,n,r,a);return this.displayList.add(o),this.updateList.add(o),o})},80321(e,t,n){var r=n(43246),i=n(83419),a=n(31401),o=n(95643),s=n(30100),c=n(67277);e.exports=new i({Extends:o,Mixins:[a.AlphaSingle,a.BlendMode,a.Depth,a.Mask,a.RenderNodes,a.ScrollFactor,a.Transform,a.Visible,c],initialize:function(e,t,n,r,i,a,c){r===void 0&&(r=16777215),i===void 0&&(i=128),a===void 0&&(a=1),c===void 0&&(c=.1),o.call(this,e,`PointLight`),this.initRenderNodes(this._defaultRenderNodesMap),this.setPosition(t,n),this.color=s(r),this.intensity=a,this.attenuation=c,this.width=i*2,this.height=i*2,this._radius=i},_defaultRenderNodesMap:{get:function(){return r}},radius:{get:function(){return this._radius},set:function(e){this._radius=e,this.width=e*2,this.height=e*2}},originX:{get:function(){return .5}},originY:{get:function(){return .5}},displayOriginX:{get:function(){return this._radius}},displayOriginY:{get:function(){return this._radius}}})},39829(e,t,n){var r=n(25305),i=n(44603),a=n(23568),o=n(80321);i.register(`pointlight`,function(e,t){e===void 0&&(e={});var n=a(e,`color`,16777215),i=a(e,`radius`,128),s=a(e,`intensity`,1),c=a(e,`attenuation`,.1),l=new o(this.scene,0,0,n,i,s,c);return t!==void 0&&(e.add=t),r(this.scene,l,e),l})},71255(e,t,n){var r=n(39429),i=n(80321);r.register(`pointlight`,function(e,t,n,r,a,o){return this.displayList.add(new i(this.scene,e,t,n,r,a,o))})},67277(e,t,n){var r=n(29747),i=r,a=r;i=n(57787),e.exports={renderWebGL:i,renderCanvas:a}},57787(e,t,n){var r=n(91296);e.exports=function(e,t,n,i){var a=n.camera;a.addToRenderList(t);var o=r(t,a,i,!n.useCanvas).calc,s=t.width,c=t.height,l=-t._radius,u=-t._radius,d=l+s,f=u+c,p=o.getX(0,0),m=o.getY(0,0),h=o.getX(l,u),g=o.getY(l,u),_=o.getX(l,f),v=o.getY(l,f),y=o.getX(d,f),b=o.getY(d,f),x=o.getX(d,u),S=o.getY(d,u);(t.customRenderNodes.BatchHandler||t.defaultRenderNodes.BatchHandler).batch(n,t,h,g,_,v,x,S,y,b,p,m)}},591(e,t,n){var r=n(83419),i=n(45650),a=n(88571),o=n(83999),s=n(58855);e.exports=new r({Extends:a,Mixins:[o],initialize:function(e,t,n,r,o,c){t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=32),o===void 0&&(o=32),c===void 0&&(c=!0);var l=e.sys.textures.addDynamicTexture(i(),r,o,c);a.call(this,e,t,n,l),this.type=`RenderTexture`,this.camera=this.texture.camera,this._saved=!1,this.renderMode=s.RENDER,this.isCurrentlyRendering=!1},setSize:function(e,t){this.width=e,this.height=t,this.updateDisplayOrigin();var n=this.input;return n&&!n.customHitArea&&(n.hitArea.width=e,n.hitArea.height=t),this},resize:function(e,t,n){return this.texture.setSize(e,t,n),this.setSize(this.texture.width,this.texture.height),this},saveTexture:function(e){var t=this.texture;return t.key=e,t.manager.addDynamicTexture(t)&&(this._saved=!0),t},setRenderMode:function(e,t){return this.renderMode=e,t&&this.texture.preserve(!0),this},render:function(){return this.texture.render(),this},fill:function(e,t,n,r,i,a){return this.texture.fill(e,t,n,r,i,a),this},clear:function(e,t,n,r){return this.texture.clear(e,t,n,r),this},stamp:function(e,t,n,r,i){return this.texture.stamp(e,t,n,r,i),this},erase:function(e,t,n){return this.texture.erase(e,t,n),this},draw:function(e,t,n,r,i){return this.texture.draw(e,t,n,r,i),this},capture:function(e,t){return this.texture.capture(e,t),this},repeat:function(e,t,n,r,i,a,o){return this.texture.repeat(e,t,n,r,i,a,o),this},preserve:function(e){return this.texture.preserve(e),this},callback:function(e){return this.texture.callback(e),this},snapshotArea:function(e,t,n,r,i,a,o){return this.texture.snapshotArea(e,t,n,r,i,a,o),this},snapshot:function(e,t,n){return this.texture.snapshot(e,t,n)},snapshotPixel:function(e,t,n){return this.texture.snapshotPixel(e,t,n)},preDestroy:function(){this.camera=null,this._saved||this.texture.destroy()}})},97272(e,t,n){var r=n(40652),i=n(58855);e.exports=function(e,t,n,a){var o=!0,s=!0;t.renderMode===i.REDRAW?s=!1:t.renderMode===i.RENDER&&(o=!1),o&&t.render(),s&&r(e,t,n,a)}},34495(e,t,n){var r=n(25305),i=n(44603),a=n(23568),o=n(591);i.register(`renderTexture`,function(e,t){e===void 0&&(e={});var n=a(e,`x`,0),i=a(e,`y`,0),s=a(e,`width`,32),c=a(e,`height`,32),l=new o(this.scene,n,i,s,c);return t!==void 0&&(e.add=t),r(this.scene,l,e),l})},60505(e,t,n){var r=n(39429),i=n(591);r.register(`renderTexture`,function(e,t,n,r){return this.displayList.add(new i(this.scene,e,t,n,r))})},83999(e,t,n){var r=n(29747),i=r,a=r;i=n(53937),a=n(97272),e.exports={renderWebGL:i,renderCanvas:a}},58855(e){e.exports={RENDER:`render`,REDRAW:`redraw`,ALL:`all`}},53937(e,t,n){var r=n(99517),i=n(58855);e.exports=function(e,t,n,a){if(!t.isCurrentlyRendering){t.isCurrentlyRendering=!0;var o=!0,s=!0;t.renderMode===i.REDRAW?s=!1:t.renderMode===i.RENDER&&(o=!1),o&&t.render(),s&&r(e,t,n,a),t.isCurrentlyRendering=!1}}},77757(e,t,n){var r=n(9674),i=n(85760),a=n(83419),o=n(31401),s=n(95643),c=n(38745),l=n(84322),u=n(26099);e.exports=new a({Extends:s,Mixins:[o.AlphaSingle,o.BlendMode,o.Depth,o.Flip,o.Mask,o.RenderNodes,o.Size,o.Texture,o.Transform,o.Visible,o.ScrollFactor,c],initialize:function(e,t,n,i,a,o,c,d,f){i===void 0&&(i=`__DEFAULT`),o===void 0&&(o=2),c===void 0&&(c=!0),s.call(this,e,`Rope`),this.anims=new r(this),this.points=o,this.vertices,this.uv,this.colors,this.alphas,this.tintMode=i===`__DEFAULT`?l.FILL:l.MULTIPLY,this.dirty=!1,this.horizontal=c,this._flipX=!1,this._flipY=!1,this._perp=new u,this.debugCallback=null,this.debugGraphic=null,this.setTexture(i,a),this.setPosition(t,n),this.setSizeToFrame(),this.initRenderNodes(this._defaultRenderNodesMap),Array.isArray(o)&&this.resizeArrays(o.length),this.setPoints(o,d,f),this.updateVertices()},_defaultRenderNodesMap:{get:function(){return i}},addedToScene:function(){this.scene.sys.updateList.add(this)},removedFromScene:function(){this.scene.sys.updateList.remove(this)},preUpdate:function(e,t){var n=this.anims.currentFrame;this.anims.update(e,t),this.anims.currentFrame!==n&&(this.updateUVs(),this.updateVertices())},play:function(e,t,n){return this.anims.play(e,t,n),this},setDirty:function(){return this.dirty=!0,this},setHorizontal:function(e,t,n){return e===void 0&&(e=this.points.length),this.horizontal?this:(this.horizontal=!0,this.setPoints(e,t,n))},setVertical:function(e,t,n){return e===void 0&&(e=this.points.length),this.horizontal?(this.horizontal=!1,this.setPoints(e,t,n)):this},setTintMode:function(e){return e===void 0&&(e=l.MULTIPLY),this.tintMode=e,this},setAlphas:function(e,t){var n=this.points.length;if(n<1)return this;var r=this.alphas;e===void 0?e=[1]:!Array.isArray(e)&&t===void 0&&(e=[e]);var i,a=0;if(t!==void 0)for(i=0;i<n;i++)a=i*2,r[a]=e,r[a+1]=t;else if(e.length===n)for(i=0;i<n;i++)a=i*2,r[a]=e[i],r[a+1]=e[i];else{var o=e[0];for(i=0;i<n;i++)a=i*2,e.length>a&&(o=e[a]),r[a]=o,e.length>a+1&&(o=e[a+1]),r[a+1]=o}return this},setColors:function(e){var t=this.points.length;if(t<1)return this;var n=this.colors;e===void 0?e=[16777215]:Array.isArray(e)||(e=[e]);var r,i=0;if(e.length===t)for(r=0;r<t;r++)i=r*2,n[i]=e[r],n[i+1]=e[r];else{var a=e[0];for(r=0;r<t;r++)i=r*2,e.length>i&&(a=e[i]),n[i]=a,e.length>i+1&&(a=e[i+1]),n[i+1]=a}return this},setPoints:function(e,t,n){if(e===void 0&&(e=2),typeof e==`number`){var r=e;r<2&&(r=2),e=[];var i,a,o;if(this.horizontal)for(o=-this.frame.halfWidth,a=this.frame.width/(r-1),i=0;i<r;i++)e.push({x:o+i*a,y:0});else for(o=-this.frame.halfHeight,a=this.frame.height/(r-1),i=0;i<r;i++)e.push({x:0,y:o+i*a})}var s=e.length,c=this.points.length;return s<1?(console.warn(`Rope: Not enough points given`),this):(s===1&&(e.unshift({x:0,y:0}),s++),c!==s&&this.resizeArrays(s),this.dirty=!0,this.points=e,this.updateUVs(),t!=null&&this.setColors(t),n!=null&&this.setAlphas(n),this)},updateUVs:function(){for(var e=this.uv,t=this.points.length,n=this.frame.u0,r=this.frame.v0,i=this.frame.u1,a=this.frame.v1,o=(i-n)/(t-1),s=(a-r)/(t-1),c=0;c<t;c++){var l=c*4,u,d,f,p;this.horizontal?(this._flipX?(u=i-c*o,f=i-c*o):(u=n+c*o,f=n+c*o),this._flipY?(d=a,p=r):(d=r,p=a)):(this._flipX?(u=n,f=i):(u=i,f=n),this._flipY?(d=a-c*s,p=a-c*s):(d=r+c*s,p=r+c*s)),e[l+0]=u,e[l+1]=d,e[l+2]=f,e[l+3]=p}return this},resizeArrays:function(e){var t=this.colors,n=this.alphas;this.vertices=new Float32Array(e*4),this.uv=new Float32Array(e*4),t=new Uint32Array(e*2),n=new Float32Array(e*2);for(var r=0;r<e*2;r++)t[r]=16777215,n[r]=1;return this.colors=t,this.alphas=n,this.dirty=!0,this},updateVertices:function(){var e=this._perp,t=this.points,n=this.vertices,r=t.length;if(this.dirty=!1,!(r<1)){for(var i,a=t[0],o=this.horizontal?this.frame.halfHeight:this.frame.halfWidth,s=0;s<r;s++){var c=t[s],l=s*4;i=s<r-1?t[s+1]:c,e.x=i.y-a.y,e.y=-(i.x-a.x);var u=e.length();e.x/=u,e.y/=u,e.x*=o,e.y*=o,n[l]=c.x+e.x,n[l+1]=c.y+e.y,n[l+2]=c.x-e.x,n[l+3]=c.y-e.y,a=c}return this}},setDebug:function(e,t){return this.debugGraphic=e,!e&&!t?this.debugCallback=null:t?this.debugCallback=t:this.debugCallback=this.renderDebugVerts,this},renderDebugVerts:function(e,t,n){var r=e.debugGraphic,i=n[0],a=n[1],o=n[2],s=n[3];r.lineBetween(i,a,o,s);for(var c=4;c<t;c+=4){var l=n[c+0],u=n[c+1],d=n[c+2],f=n[c+3];r.lineBetween(i,a,l,u),r.lineBetween(o,s,d,f),r.lineBetween(o,s,l,u),r.lineBetween(l,u,d,f),i=l,a=u,o=d,s=f}},preDestroy:function(){this.anims.destroy(),this.anims=void 0,this.points=null,this.vertices=null,this.uv=null,this.colors=null,this.alphas=null,this.debugCallback=null,this.debugGraphic=null},flipX:{get:function(){return this._flipX},set:function(e){return this._flipX=e,this.updateUVs()}},flipY:{get:function(){return this._flipY},set:function(e){return this._flipY=e,this.updateUVs()}}})},95262(e){e.exports=function(){}},26209(e,t,n){var r=n(25305),i=n(44603),a=n(23568),o=n(35154),s=n(77757);i.register(`rope`,function(e,t){e===void 0&&(e={});var n=a(e,`key`,null),i=a(e,`frame`,null),c=a(e,`horizontal`,!0),l=o(e,`points`,void 0),u=o(e,`colors`,void 0),d=o(e,`alphas`,void 0),f=new s(this.scene,0,0,n,i,l,c,u,d);return t!==void 0&&(e.add=t),r(this.scene,f,e),f})},96819(e,t,n){var r=n(77757);n(39429).register(`rope`,function(e,t,n,i,a,o,s,c){return this.displayList.add(new r(this.scene,e,t,n,i,a,o,s,c))})},38745(e,t,n){var r=n(29747),i=r,a=r;i=n(20439),a=n(95262),e.exports={renderWebGL:i,renderCanvas:a}},20439(e,t,n){var r=n(91296),i={multiTexturing:!1,smoothPixelArt:!1};e.exports=function(e,t,n,a){var o=n.camera;o.addToRenderList(t);var s=r(t,o,a,!n.useCanvas).calc;t.dirty&&t.updateVertices();var c,l=t.texture;c=l&&l.smoothPixelArt!==null?l.smoothPixelArt:t.scene.sys.game.config.smoothPixelArt,i.smoothPixelArt=c,(t.customRenderNodes.BatchHandler||t.defaultRenderNodes.BatchHandler).batchStrip(n,t,s,t.texture.source[0].glTexture,t.vertices,t.uv,t.colors,t.alphas,t.alpha,t.tintMode,i,t.debugCallback)}},20071(e,t,n){var r=n(71911),i=n(26099),a=n(55403),o=n(87774),s=n(83419),c=n(95540),l=n(31401),u=n(95643),d=n(25479);e.exports=new s({Extends:u,Mixins:[l.BlendMode,l.ComputedSize,l.Depth,l.GetBounds,l.Origin,l.ScrollFactor,l.Transform,l.Visible,d],initialize:function(e,t,n,r,o,s,l){t===void 0&&(t={}),typeof t==`string`&&(t={fragmentKey:t}),n===void 0&&(n=0),r===void 0&&(r=0),o===void 0&&(o=128),s===void 0&&(s=128),u.call(this,e,`Shader`);var d=e.sys.renderer;this.textures=[],this.renderNode=new a(d.renderNodes,t),this.setupUniforms=c(t,`setupUniforms`,function(){}),t.updateShaderConfig&&(this.renderNode.updateShaderConfig=t.updateShaderConfig);var f=c(t,`initialUniforms`,{});Object.entries(f).forEach(function(e){this.setUniform(e[0],e[1])},this),this.drawingContext=null,this.glTexture=null,this.renderToTexture=!1,this.texture=null,this.textureCoordinateTopLeft=new i(0,1),this.textureCoordinateTopRight=new i(1,1),this.textureCoordinateBottomLeft=new i(0,0),this.textureCoordinateBottomRight=new i(1,0),this.setTextures(l),this.setPosition(n,r),this.setSize(o,s),this.setOrigin(.5,.5)},getUniform:function(e){return this.renderNode.programManager.uniforms[e]},setUniform:function(e,t){return this.renderNode.programManager.setUniform(e,t),this},setTextures:function(e){e===void 0&&(e=[]),this.textures.length=0;for(var t=0;t<e.length;t++){var n=e[t];typeof n==`string`&&(n=this.scene.textures.get(n)),this.textures.push(n)}return this},setRenderToTexture:function(e){if(this.renderToTexture)return this;var t=this.width,n=this.height,i=this.scene.sys.renderer,a=this.scene,s=new r(0,0,t,n).setScene(a.game.scene.systemScene,!1);return this.drawingContext=new o(i,{width:t,height:n,camera:s}),this.glTexture=this.drawingContext.texture,e&&(this.texture=a.sys.textures.addGLTexture(e,this.glTexture)),this.renderToTexture=!0,this.renderWebGLStep(i,this,this.drawingContext),this},renderImmediate:function(){return this.renderWebGLStep(this.scene.renderer,this,this.drawingContext),this},setupUniforms:function(e,t){},setAlpha:function(){return this},setTextureCoordinates:function(e,t,n,r,i,a,o,s){return e===void 0&&(e=0),t===void 0&&(t=1),n===void 0&&(n=1),r===void 0&&(r=1),i===void 0&&(i=0),a===void 0&&(a=0),o===void 0&&(o=1),s===void 0&&(s=0),this.textureCoordinateTopLeft.set(e,t),this.textureCoordinateTopRight.set(n,r),this.textureCoordinateBottomLeft.set(i,a),this.textureCoordinateBottomRight.set(o,s),this},setTextureCoordinatesFromFrame:function(e,t){typeof e==`string`&&(t?typeof t==`string`&&(t=this.scene.textures.get(t)):t=this.textures[0],e=t.get(e));var n=e.u0,r=e.v0,i=e.u1,a=e.v1;this.setTextureCoordinates(n,r,i,r,n,a,i,a)},preDestroy:function(){this.renderNode=null,this.textures.length=0,this.drawingContext&&(this.drawingContext.destroy(),this.texture&&this.texture.destroy(),this.drawingContext=null,this.glTexture=null,this.texture=null)}})},80464(e){e.exports=function(){}},54935(e,t,n){var r=n(25305),i=n(44603),a=n(23568),o=n(20071);i.register(`shader`,function(e,t){e===void 0&&(e={});var n=a(e,`config`,null),i=a(e,`x`,0),s=a(e,`y`,0),c=a(e,`width`,128),l=a(e,`height`,128),u=new o(this.scene,n,i,s,c,l);return t!==void 0&&(e.add=t),r(this.scene,u,e),u})},74177(e,t,n){var r=n(20071);n(39429).register(`shader`,function(e,t,n,i,a,o){return this.displayList.add(new r(this.scene,e,t,n,i,a,o))})},25479(e,t,n){var r=n(29747),i=r,a=r;i=n(19257),a=n(80464),e.exports={renderWebGL:i,renderCanvas:a}},19257(e){e.exports=function(e,t,n,r){if(n.camera.addToRenderList(t),t.renderToTexture){if(n=t.drawingContext,n.width!==t.width||n.height!==t.height){var i=t.width,a=t.height;n.resize(i,a),n.camera.setSize(i,a)}n.use()}t.renderNode.run(n,t,r),t.renderToTexture&&n.release()}},10441(e,t,n){var r=n(70554);e.exports=function(e,t,n,i,a,o,s){var c=r.getTintAppendFloatAlpha(i.fillColor,i.fillAlpha*a),l=i.pathData,u=i.pathIndexes,d=l.length,f,p,m,h,g,_=Array(d*2),v=Array(d),y=0,b=0;for(f=0;f<d;f+=2)p=l[f]-o,m=l[f+1]-s,h=n.getX(p,m),g=n.getY(p,m),_[y++]=h,_[y++]=g,v[b++]=c;t.batch(e,u,_,v,i.lighting)}},65960(e){e.exports=function(e,t,n,r){var i=n||t.fillColor,a=r||t.fillAlpha,o=(i&16711680)>>>16,s=(i&65280)>>>8,c=i&255;e.fillStyle=`rgba(`+o+`,`+s+`,`+c+`,`+a+`)`}},75177(e){e.exports=function(e,t,n,r){var i=n||t.strokeColor,a=r||t.strokeAlpha,o=(i&16711680)>>>16,s=(i&65280)>>>8,c=i&255;e.strokeStyle=`rgba(`+o+`,`+s+`,`+c+`,`+a+`)`,e.lineWidth=t.lineWidth}},17803(e,t,n){var r=n(87891),i=n(83419),a=n(31401),o=n(95643),s=n(23031);e.exports=new i({Extends:o,Mixins:[a.AlphaSingle,a.BlendMode,a.Depth,a.GetBounds,a.Lighting,a.Mask,a.Origin,a.RenderNodes,a.ScrollFactor,a.Transform,a.Visible],initialize:function(e,t,n){t===void 0&&(t=`Shape`),o.call(this,e,t),this.geom=n,this.pathData=[],this.pathIndexes=[],this.fillColor=16777215,this.fillAlpha=1,this.strokeColor=16777215,this.strokeAlpha=1,this.lineWidth=1,this.isFilled=!1,this.isStroked=!1,this.closePath=!0,this._tempLine=new s,this.width=0,this.height=0,this.enableFilters&&(this.filtersFocusContext=!0),this.initRenderNodes(this._defaultRenderNodesMap)},_defaultRenderNodesMap:{get:function(){return r}},setFillStyle:function(e,t){return t===void 0&&(t=1),e===void 0?this.isFilled=!1:(this.fillColor=e,this.fillAlpha=t,this.isFilled=!0),this},setStrokeStyle:function(e,t,n){return n===void 0&&(n=1),e===void 0?this.isStroked=!1:(this.lineWidth=e,this.strokeColor=t,this.strokeAlpha=n,this.isStroked=!0),this},setClosePath:function(e){return this.closePath=e,this},setSize:function(e,t){return this.width=e,this.height=t,this},setDisplaySize:function(e,t){return this.displayWidth=e,this.displayHeight=t,this},preDestroy:function(){this.geom=null,this._tempLine=null,this.pathData=[],this.pathIndexes=[]},displayWidth:{get:function(){return this.scaleX*this.width},set:function(e){this.scaleX=e/this.width}},displayHeight:{get:function(){return this.scaleY*this.height},set:function(e){this.scaleY=e/this.height}}})},34682(e,t,n){var r=n(70554);e.exports=function(e,t,n,i,a,o,s){var c=r.getTintAppendFloatAlpha(i.strokeColor,i.strokeAlpha*a),l=i.pathData,u=l.length-1,d=i.lineWidth,f=!i.closePath,p=i.customRenderNodes.StrokePath||i.defaultRenderNodes.StrokePath,m=[];f&&(u-=2);for(var h=0;h<u;h+=2){var g=l[h]-o,_=l[h+1]-s;h>0&&g===l[h-2]&&_===l[h-1]||m.push({x:g,y:_,width:d})}p.run(e,t,m,d,f,n,c,c,c,c,void 0,i.lighting)}},23629(e,t,n){var r=n(13609),i=n(83419),a=n(39506),o=n(94811),s=n(96503),c=n(36383),l=n(17803);e.exports=new i({Extends:l,Mixins:[r],initialize:function(e,t,n,r,i,a,o,c,u){t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=128),i===void 0&&(i=0),a===void 0&&(a=360),o===void 0&&(o=!1),l.call(this,e,`Arc`,new s(0,0,r)),this._startAngle=i,this._endAngle=a,this._anticlockwise=o,this._iterations=.01,this.setPosition(t,n);var d=this.geom.radius*2;this.setSize(d,d),c!==void 0&&this.setFillStyle(c,u),this.updateDisplayOrigin(),this.updateData()},iterations:{get:function(){return this._iterations},set:function(e){this._iterations=e,this.updateData()}},radius:{get:function(){return this.geom.radius},set:function(e){this.geom.radius=e;var t=e*2;this.setSize(t,t),this.updateDisplayOrigin(),this.updateData()}},startAngle:{get:function(){return this._startAngle},set:function(e){this._startAngle=e,this.updateData()}},endAngle:{get:function(){return this._endAngle},set:function(e){this._endAngle=e,this.updateData()}},anticlockwise:{get:function(){return this._anticlockwise},set:function(e){this._anticlockwise=e,this.updateData()}},setRadius:function(e){return this.radius=e,this},setIterations:function(e){return e===void 0&&(e=.01),this.iterations=e,this},setStartAngle:function(e,t){return this._startAngle=e,t!==void 0&&(this._anticlockwise=t),this.updateData()},setEndAngle:function(e,t){return this._endAngle=e,t!==void 0&&(this._anticlockwise=t),this.updateData()},updateData:function(){var e=this._iterations,t=e,n=this.geom.radius,r=a(this._startAngle),i=a(this._endAngle),s=this._anticlockwise,l=n,u=n;i-=r,s?i<-c.TAU?i=-c.TAU:i>0&&(i=-c.TAU+i%c.TAU):i>c.TAU?i=c.TAU:i<0&&(i=c.TAU+i%c.TAU);for(var d=[l+Math.cos(r)*n,u+Math.sin(r)*n],f;t<1;)f=i*t+r,d.push(l+Math.cos(f)*n,u+Math.sin(f)*n),t+=e;return f=i+r,d.push(l+Math.cos(f)*n,u+Math.sin(f)*n),d.push(l+Math.cos(r)*n,u+Math.sin(r)*n),this.pathIndexes=o(d),this.pathData=d,this}})},42542(e,t,n){var r=n(39506),i=n(65960),a=n(75177),o=n(20926);e.exports=function(e,t,n,s){n.addToRenderList(t);var c=e.currentContext;if(o(e,c,t,n,s)){var l=t.radius;c.beginPath(),c.arc(l-t.originX*(l*2),l-t.originY*(l*2),l,r(t._startAngle),r(t._endAngle),t.anticlockwise),t.closePath&&c.closePath(),t.isFilled&&(i(c,t),c.fill()),t.isStroked&&(a(c,t),c.stroke()),c.restore()}}},42563(e,t,n){var r=n(23629),i=n(39429);i.register(`arc`,function(e,t,n,i,a,o,s,c){return this.displayList.add(new r(this.scene,e,t,n,i,a,o,s,c))}),i.register(`circle`,function(e,t,n,i,a){return this.displayList.add(new r(this.scene,e,t,n,0,360,!1,i,a))})},13609(e,t,n){var r=n(29747),i=r,a=r;i=n(41447),a=n(42542),e.exports={renderWebGL:i,renderCanvas:a}},41447(e,t,n){var r=n(91296),i=n(10441),a=n(34682);e.exports=function(e,t,n,o){var s=n.camera;s.addToRenderList(t);var c=r(t,s,o,!n.useCanvas).calc,l=t._displayOriginX,u=t._displayOriginY,d=t.alpha,f=t.customRenderNodes.Submitter||t.defaultRenderNodes.Submitter;t.isFilled&&i(n,f,c,t,d,l,u),t.isStroked&&a(n,f,c,t,d,l,u)}},89(e,t,n){var r=n(83419),i=n(33141),a=n(94811),o=n(87841),s=n(17803);e.exports=new r({Extends:s,Mixins:[i],initialize:function(e,t,n,r,i,a){t===void 0&&(t=0),n===void 0&&(n=0),s.call(this,e,`Curve`,r),this._smoothness=32,this._curveBounds=new o,this.closePath=!1,this.setPosition(t,n),i!==void 0&&this.setFillStyle(i,a),this.updateData()},smoothness:{get:function(){return this._smoothness},set:function(e){this._smoothness=e,this.updateData()}},setSmoothness:function(e){return this._smoothness=e,this.updateData()},updateData:function(){var e=this._curveBounds,t=this._smoothness;this.geom.getBounds(e,t),this.setSize(e.width,e.height),this.updateDisplayOrigin();for(var n=[],r=this.geom.getPoints(t),i=0;i<r.length;i++)n.push(r[i].x,r[i].y);return n.push(r[0].x,r[0].y),this.pathIndexes=a(n),this.pathData=n,this}})},3170(e,t,n){var r=n(65960),i=n(75177),a=n(20926);e.exports=function(e,t,n,o){n.addToRenderList(t);var s=e.currentContext;if(a(e,s,t,n,o)){var c=t._displayOriginX+t._curveBounds.x,l=t._displayOriginY+t._curveBounds.y,u=t.pathData,d=u.length-1,f=u[0]-c,p=u[1]-l;s.beginPath(),s.moveTo(f,p),t.closePath||(d-=2);for(var m=2;m<d;m+=2){var h=u[m]-c,g=u[m+1]-l;s.lineTo(h,g)}t.closePath&&s.closePath(),t.isFilled&&(r(s,t),s.fill()),t.isStroked&&(i(s,t),s.stroke()),s.restore()}}},40511(e,t,n){var r=n(39429),i=n(89);r.register(`curve`,function(e,t,n,r,a){return this.displayList.add(new i(this.scene,e,t,n,r,a))})},33141(e,t,n){var r=n(29747),i=r,a=r;i=n(53987),a=n(3170),e.exports={renderWebGL:i,renderCanvas:a}},53987(e,t,n){var r=n(10441),i=n(91296),a=n(34682);e.exports=function(e,t,n,o){var s=n.camera;s.addToRenderList(t);var c=i(t,s,o,!n.useCanvas).calc,l=t._displayOriginX+t._curveBounds.x,u=t._displayOriginY+t._curveBounds.y,d=t.alpha,f=t.customRenderNodes.Submitter||t.defaultRenderNodes.Submitter;t.isFilled&&r(n,f,c,t,d,l,u),t.isStroked&&a(n,f,c,t,d,l,u)}},19921(e,t,n){var r=n(83419),i=n(94811),a=n(54205),o=n(8497),s=n(17803);e.exports=new r({Extends:s,Mixins:[a],initialize:function(e,t,n,r,i,a,c){t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=128),i===void 0&&(i=128),s.call(this,e,`Ellipse`,new o(r/2,i/2,r,i)),this._smoothness=64,this.setPosition(t,n),this.width=r,this.height=i,a!==void 0&&this.setFillStyle(a,c),this.updateDisplayOrigin(),this.updateData()},smoothness:{get:function(){return this._smoothness},set:function(e){this._smoothness=e,this.updateData()}},setSize:function(e,t){return this.width=e,this.height=t,this.geom.setPosition(e/2,t/2),this.geom.setSize(e,t),this.updateDisplayOrigin(),this.updateData()},setSmoothness:function(e){return this._smoothness=e,this.updateData()},updateData:function(){for(var e=[],t=this.geom.getPoints(this._smoothness),n=0;n<t.length;n++)e.push(t[n].x,t[n].y);return e.push(t[0].x,t[0].y),this.pathIndexes=i(e),this.pathData=e,this}})},7930(e,t,n){var r=n(65960),i=n(75177),a=n(20926);e.exports=function(e,t,n,o){n.addToRenderList(t);var s=e.currentContext;if(a(e,s,t,n,o)){var c=t._displayOriginX,l=t._displayOriginY,u=t.pathData,d=u.length-1,f=u[0]-c,p=u[1]-l;s.beginPath(),s.moveTo(f,p),t.closePath||(d-=2);for(var m=2;m<d;m+=2){var h=u[m]-c,g=u[m+1]-l;s.lineTo(h,g)}s.closePath(),t.isFilled&&(r(s,t),s.fill()),t.isStroked&&(i(s,t),s.stroke()),s.restore()}}},1543(e,t,n){var r=n(19921);n(39429).register(`ellipse`,function(e,t,n,i,a,o){return this.displayList.add(new r(this.scene,e,t,n,i,a,o))})},54205(e,t,n){var r=n(29747),i=r,a=r;i=n(19467),a=n(7930),e.exports={renderWebGL:i,renderCanvas:a}},19467(e,t,n){var r=n(10441),i=n(91296),a=n(34682);e.exports=function(e,t,n,o){var s=n.camera;s.addToRenderList(t);var c=i(t,s,o,!n.useCanvas).calc,l=t._displayOriginX,u=t._displayOriginY,d=t.alpha,f=t.customRenderNodes.Submitter||t.defaultRenderNodes.Submitter;t.isFilled&&r(n,f,c,t,d,l,u),t.isStroked&&a(n,f,c,t,d,l,u)}},30479(e,t,n){var r=n(83419),i=n(17803);e.exports=new r({Extends:i,Mixins:[n(26015)],initialize:function(e,t,n,r,a,o,s,c,l,u,d){t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=128),a===void 0&&(a=128),o===void 0&&(o=32),s===void 0&&(s=32),i.call(this,e,`Grid`,null),this.cellWidth=o,this.cellHeight=s,this.showAltCells=!1,this.altFillColor,this.altFillAlpha,this.cellPadding=.5,this.strokeOutside=!1,this.strokeOutsideIncomplete=!0,this.setPosition(t,n),this.setSize(r,a),this.setFillStyle(c,l),u!==void 0&&this.setStrokeStyle(1,u,d),this.updateDisplayOrigin()},setAltFillStyle:function(e,t){return t===void 0&&(t=1),e===void 0?this.showAltCells=!1:(this.altFillColor=e,this.altFillAlpha=t,this.showAltCells=!0),this},setCellPadding:function(e){return this.cellPadding=e||0,this},setStrokeOutside:function(e,t){return this.strokeOutside=e,t!==void 0&&(this.strokeOutsideIncomplete=t),this}})},49912(e,t,n){var r=n(65960),i=n(75177),a=n(20926);e.exports=function(e,t,n,o){n.addToRenderList(t);var s=e.currentContext;if(a(e,s,t,n,o)){var c=-t._displayOriginX,l=-t._displayOriginY,u=n.alpha*t.alpha,d=t.width,f=t.height,p=t.cellWidth,m=t.cellHeight,h=Math.ceil(d/p),g=Math.ceil(f/m),_=p,v=m,y=p-(h*p-d),b=m-(g*m-f),x=t.isFilled,S=t.showAltCells,C=t.isStroked,w=t.cellPadding,T=t.lineWidth/2,E=0,D=0,O=0,k=0,A=0;if(w&&(_-=w*2,v-=w*2,y-=w*2,b-=w*2),x&&t.fillAlpha>0)for(r(s,t),D=0;D<g;D++)for(S&&(O=D%2),E=0;E<h;E++){if(S&&O){O=0;continue}O++,k=E<h-1?_:y,A=D<g-1?v:b,k>0&&A>0&&s.fillRect(c+E*p+w,l+D*m+w,k,A)}if(S&&t.altFillAlpha>0)for(r(s,t,t.altFillColor,t.altFillAlpha*u),D=0;D<g;D++)for(S&&(O=D%2),E=0;E<h;E++){if(S&&!O){O=1;continue}O=0,k=E<h-1?_:y,A=D<g-1?v:b,k>0&&A>0&&s.fillRect(c+E*p+w,l+D*m+w,k,A)}if(C&&t.strokeAlpha>0){i(s,t,t.strokeColor,t.strokeAlpha*u);var j=+!t.strokeOutside;for(E=j;E<h;E++){var M=E*p;s.beginPath(),s.moveTo(M+c,l),s.lineTo(M+c,f+l),s.stroke()}for(D=j;D<g;D++){var N=D*m;s.beginPath(),s.moveTo(c,N+l),s.lineTo(c+d,N+l),s.stroke()}t.strokeOutside&&(d>T&&(s.beginPath(),s.moveTo(d+c,l),s.lineTo(d+c,f+l),s.stroke()),f>T&&(s.beginPath(),s.moveTo(c,f+l),s.lineTo(d+c,f+l),s.stroke()))}s.restore()}}},34137(e,t,n){var r=n(39429),i=n(30479);r.register(`grid`,function(e,t,n,r,a,o,s,c,l,u){return this.displayList.add(new i(this.scene,e,t,n,r,a,o,s,c,l,u))})},26015(e,t,n){var r=n(29747),i=r,a=r;i=n(46161),a=n(49912),e.exports={renderWebGL:i,renderCanvas:a}},46161(e,t,n){var r=n(91296),i=n(70554);e.exports=function(e,t,n,a){var o=n.camera;o.addToRenderList(t);var s=t.customRenderNodes.FillRect||t.defaultRenderNodes.FillRect,c=t.customRenderNodes.Submitter||t.defaultRenderNodes.Submitter,l=r(t,o,a,!n.useCanvas).calc;l.translate(-t._displayOriginX,-t._displayOriginY);var u=t.alpha,d=t.width,f=t.height,p=t.cellWidth,m=t.cellHeight,h=Math.ceil(d/p),g=Math.ceil(f/m),_=p,v=m,y=p-(h*p-d),b=m-(g*m-f),x,S=t.isFilled,C=t.showAltCells,w=t.isStroked,T=t.cellPadding,E=t.lineWidth,D=E/2,O=0,k=0,A=0,j=0,M=0;if(T&&(_-=T*2,v-=T*2,y-=T*2,b-=T*2),S&&t.fillAlpha>0)for(x=i.getTintAppendFloatAlpha(t.fillColor,t.fillAlpha*u),k=0;k<g;k++)for(C&&(A=k%2),O=0;O<h;O++){if(C&&A){A=0;continue}A++,j=O<h-1?_:y,M=k<g-1?v:b,j>0&&M>0&&s.run(n,l,c,O*p+T,k*m+T,j,M,x,x,x,x,t.lighting)}if(C&&t.altFillAlpha>0)for(x=i.getTintAppendFloatAlpha(t.altFillColor,t.altFillAlpha*u),k=0;k<g;k++)for(C&&(A=k%2),O=0;O<h;O++){if(C&&!A){A=1;continue}A=0,j=O<h-1?_:y,M=k<g-1?v:b,j>0&&M>0&&s.run(n,l,c,O*p+T,k*m+T,j,M,x,x,x,x)}if(w&&t.strokeAlpha>0){var N=i.getTintAppendFloatAlpha(t.strokeColor,t.strokeAlpha*u),P=+!t.strokeOutside;for(O=P;O<h;O++){var F=O*p-D;s.run(n,l,c,F,0,E,f,N,N,N,N)}for(k=P;k<g;k++){var I=k*m-D;s.run(n,l,c,0,I,d,E,N,N,N,N)}t.strokeOutside&&t.strokeOutsideIncomplete&&(d>D&&s.run(n,l,c,d-D,0,E,f,N,N,N,N),f>D&&s.run(n,l,c,0,f-D,d,E,N,N,N,N))}}},61475(e,t,n){var r=n(99651),i=n(83419),a=n(17803);e.exports=new i({Extends:a,Mixins:[r],initialize:function(e,t,n,r,i,o,s,c){t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=48),i===void 0&&(i=32),o===void 0&&(o=15658734),s===void 0&&(s=10066329),c===void 0&&(c=13421772),a.call(this,e,`IsoBox`,null),this.projection=4,this.fillTop=o,this.fillLeft=s,this.fillRight=c,this.showTop=!0,this.showLeft=!0,this.showRight=!0,this.isFilled=!0,this.setPosition(t,n),this.setSize(r,i),this.updateDisplayOrigin()},setProjection:function(e){return this.projection=e,this},setFaces:function(e,t,n){return e===void 0&&(e=!0),t===void 0&&(t=!0),n===void 0&&(n=!0),this.showTop=e,this.showLeft=t,this.showRight=n,this},setFillStyle:function(e,t,n){return this.fillTop=e,this.fillLeft=t,this.fillRight=n,this.isFilled=!0,this}})},11508(e,t,n){var r=n(65960),i=n(20926);e.exports=function(e,t,n,a){n.addToRenderList(t);var o=e.currentContext;if(i(e,o,t,n,a)&&t.isFilled){var s=t.width,c=t.height,l=s/2,u=s/t.projection;t.showTop&&(r(o,t,t.fillTop),o.beginPath(),o.moveTo(-l,-c),o.lineTo(0,-u-c),o.lineTo(l,-c),o.lineTo(l,-1),o.lineTo(0,u-1),o.lineTo(-l,-1),o.lineTo(-l,-c),o.fill()),t.showLeft&&(r(o,t,t.fillLeft),o.beginPath(),o.moveTo(-l,0),o.lineTo(0,u),o.lineTo(0,u-c),o.lineTo(-l,-c),o.lineTo(-l,0),o.fill()),t.showRight&&(r(o,t,t.fillRight),o.beginPath(),o.moveTo(l,0),o.lineTo(0,u),o.lineTo(0,u-c),o.lineTo(l,-c),o.lineTo(l,0),o.fill()),o.restore()}}},3933(e,t,n){var r=n(39429),i=n(61475);r.register(`isobox`,function(e,t,n,r,a,o,s){return this.displayList.add(new i(this.scene,e,t,n,r,a,o,s))})},99651(e,t,n){var r=n(29747),i=r,a=r;i=n(68149),a=n(11508),e.exports={renderWebGL:i,renderCanvas:a}},68149(e,t,n){var r=n(91296),i=n(70554);e.exports=function(e,t,n,a){if(t.isFilled){var o=n.camera;o.addToRenderList(t);var s=t.customRenderNodes.FillTri||t.defaultRenderNodes.FillTri,c=t.customRenderNodes.Submitter||t.defaultRenderNodes.Submitter,l=r(t,o,a,!n.useCanvas).calc,u=t.width,d=t.height,f=u/2,p=u/t.projection,m=t.alpha,h,g=t.lighting,_,v,y,b,x,S,C,w;t.showTop&&(h=i.getTintAppendFloatAlpha(t.fillTop,m),_=-f,v=-d,y=0,b=-p-d,x=f,S=-d,C=0,w=p-d,s.run(n,l,c,_,v,y,b,x,S,h,h,h,g),s.run(n,l,c,x,S,C,w,_,v,h,h,h,g)),t.showLeft&&(h=i.getTintAppendFloatAlpha(t.fillLeft,m),_=-f,v=0,y=0,b=p,x=0,S=p-d,C=-f,w=-d,s.run(n,l,c,_,v,y,b,x,S,h,h,h,g),s.run(n,l,c,x,S,C,w,_,v,h,h,h,g)),t.showRight&&(h=i.getTintAppendFloatAlpha(t.fillRight,m),_=f,v=0,y=0,b=p,x=0,S=p-d,C=f,w=-d,s.run(n,l,c,_,v,y,b,x,S,h,h,h,g),s.run(n,l,c,x,S,C,w,_,v,h,h,h,g))}}},16933(e,t,n){var r=n(83419),i=n(60561),a=n(17803);e.exports=new r({Extends:a,Mixins:[i],initialize:function(e,t,n,r,i,o,s,c,l){t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=48),i===void 0&&(i=32),o===void 0&&(o=!1),s===void 0&&(s=15658734),c===void 0&&(c=10066329),l===void 0&&(l=13421772),a.call(this,e,`IsoTriangle`,null),this.projection=4,this.fillTop=s,this.fillLeft=c,this.fillRight=l,this.showTop=!0,this.showLeft=!0,this.showRight=!0,this.isReversed=o,this.isFilled=!0,this.setPosition(t,n),this.setSize(r,i),this.updateDisplayOrigin()},setProjection:function(e){return this.projection=e,this},setReversed:function(e){return this.isReversed=e,this},setFaces:function(e,t,n){return e===void 0&&(e=!0),t===void 0&&(t=!0),n===void 0&&(n=!0),this.showTop=e,this.showLeft=t,this.showRight=n,this},setFillStyle:function(e,t,n){return this.fillTop=e,this.fillLeft=t,this.fillRight=n,this.isFilled=!0,this}})},79590(e,t,n){var r=n(65960),i=n(20926);e.exports=function(e,t,n,a){n.addToRenderList(t);var o=e.currentContext;if(i(e,o,t,n,a)&&t.isFilled){var s=t.width,c=t.height,l=s/2,u=s/t.projection,d=t.isReversed;t.showTop&&d&&(r(o,t,t.fillTop),o.beginPath(),o.moveTo(-l,-c),o.lineTo(0,-u-c),o.lineTo(l,-c),o.lineTo(0,u-c),o.fill()),t.showLeft&&(r(o,t,t.fillLeft),o.beginPath(),d?(o.moveTo(-l,-c),o.lineTo(0,u),o.lineTo(0,u-c)):(o.moveTo(-l,0),o.lineTo(0,u),o.lineTo(0,u-c)),o.fill()),t.showRight&&(r(o,t,t.fillRight),o.beginPath(),d?(o.moveTo(l,-c),o.lineTo(0,u),o.lineTo(0,u-c)):(o.moveTo(l,0),o.lineTo(0,u),o.lineTo(0,u-c)),o.fill()),o.restore()}}},49803(e,t,n){var r=n(39429),i=n(16933);r.register(`isotriangle`,function(e,t,n,r,a,o,s,c){return this.displayList.add(new i(this.scene,e,t,n,r,a,o,s,c))})},60561(e,t,n){var r=n(29747),i=r,a=r;i=n(51503),a=n(79590),e.exports={renderWebGL:i,renderCanvas:a}},51503(e,t,n){var r=n(91296),i=n(70554);e.exports=function(e,t,n,a){if(t.isFilled){var o=n.camera;o.addToRenderList(t);var s=t.customRenderNodes.FillTri||t.defaultRenderNodes.FillTri,c=t.customRenderNodes.Submitter||t.defaultRenderNodes.Submitter,l=r(t,o,a,!n.useCanvas).calc,u=t.width,d=t.height,f=u/2,p=u/t.projection,m=t.isReversed,h=t.alpha,g=t.lighting,_,v,y,b,x,S,C;if(t.showTop&&m){_=i.getTintAppendFloatAlpha(t.fillTop,h),v=-f,y=-d,b=0,x=-p-d,S=f,C=-d;var w=0,T=p-d;s.run(n,l,c,v,y,b,x,S,C,_,_,_,g),s.run(n,l,c,S,C,w,T,v,y,_,_,_,g)}t.showLeft&&(_=i.getTintAppendFloatAlpha(t.fillLeft,h),m?(v=-f,y=-d,b=0,x=p,S=0,C=p-d):(v=-f,y=0,b=0,x=p,S=0,C=p-d),s.run(n,l,c,v,y,b,x,S,C,_,_,_,g)),t.showRight&&(_=i.getTintAppendFloatAlpha(t.fillRight,h),m?(v=f,y=-d,b=0,x=p,S=0,C=p-d):(v=f,y=0,b=0,x=p,S=0,C=p-d),s.run(n,l,c,v,y,b,x,S,C,_,_,_,g))}}},57847(e,t,n){var r=n(83419),i=n(17803),a=n(23031);e.exports=new r({Extends:i,Mixins:[n(36823)],initialize:function(e,t,n,r,o,s,c,l,u){t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=0),o===void 0&&(o=0),s===void 0&&(s=128),c===void 0&&(c=0),i.call(this,e,`Line`,new a(r,o,s,c));var d=Math.max(1,this.geom.right-this.geom.left),f=Math.max(1,this.geom.bottom-this.geom.top);this.lineWidth=1,this._startWidth=1,this._endWidth=1,this.setPosition(t,n),this.setSize(d,f),l!==void 0&&this.setStrokeStyle(1,l,u),this.updateDisplayOrigin()},setLineWidth:function(e,t){return t===void 0&&(t=e),this._startWidth=e,this._endWidth=t,this.lineWidth=e,this},setTo:function(e,t,n,r){return this.geom.setTo(e,t,n,r),this}})},17440(e,t,n){var r=n(75177),i=n(20926);e.exports=function(e,t,n,a){n.addToRenderList(t);var o=e.currentContext;if(i(e,o,t,n,a)){var s=t._displayOriginX,c=t._displayOriginY;t.isStroked&&(r(o,t),o.beginPath(),o.moveTo(t.geom.x1-s,t.geom.y1-c),o.lineTo(t.geom.x2-s,t.geom.y2-c),o.stroke()),o.restore()}}},2481(e,t,n){var r=n(39429),i=n(57847);r.register(`line`,function(e,t,n,r,a,o,s,c){return this.displayList.add(new i(this.scene,e,t,n,r,a,o,s,c))})},36823(e,t,n){var r=n(29747),i=r,a=r;i=n(77385),a=n(17440),e.exports={renderWebGL:i,renderCanvas:a}},77385(e,t,n){var r=n(91296),i=n(70554),a=[{x:0,y:0,width:0},{x:0,y:0,width:0}];e.exports=function(e,t,n,o){var s=n.camera;s.addToRenderList(t);var c=r(t,s,o,!n.useCanvas).calc,l=t._displayOriginX,u=t._displayOriginY,d=t.alpha;if(t.isStroked){var f=i.getTintAppendFloatAlpha(t.strokeColor,t.strokeAlpha*d);a[0].x=t.geom.x1-l,a[0].y=t.geom.y1-u,a[0].width=t._startWidth,a[1].x=t.geom.x2-l,a[1].y=t.geom.y2-u,a[1].width=t._endWidth,(t.customRenderNodes.StrokePath||t.defaultRenderNodes.StrokePath).run(n,t.customRenderNodes.Submitter||t.defaultRenderNodes.Submitter,a,1,!0,c,f,f,f,f,void 0,t.lighting)}}},24949(e,t,n){var r=n(90273),i=n(83419),a=n(94811),o=n(13829),s=n(25717),c=n(17803),l=n(5469);e.exports=new i({Extends:c,Mixins:[r],initialize:function(e,t,n,r,i,a){t===void 0&&(t=0),n===void 0&&(n=0),c.call(this,e,`Polygon`,new s(r));var l=o(this.geom);this.setPosition(t,n),this.setSize(l.width,l.height),i!==void 0&&this.setFillStyle(i,a),this.updateDisplayOrigin(),this.updateData()},smooth:function(e){e===void 0&&(e=1);for(var t=0;t<e;t++)l(this.geom);return this.updateData()},setTo:function(e){this.geom.setTo(e);var t=o(this.geom);return this.setSize(t.width,t.height),this.updateDisplayOrigin(),this.updateData()},updateData:function(){for(var e=[],t=this.geom.points,n=0;n<t.length;n++)e.push(t[n].x,t[n].y);return e.push(t[0].x,t[0].y),this.pathIndexes=a(e),this.pathData=e,this}})},38710(e,t,n){var r=n(65960),i=n(75177),a=n(20926);e.exports=function(e,t,n,o){n.addToRenderList(t);var s=e.currentContext;if(a(e,s,t,n,o)){var c=t._displayOriginX,l=t._displayOriginY,u=t.pathData,d=u.length-1,f=u[0]-c,p=u[1]-l;s.beginPath(),s.moveTo(f,p),t.closePath||(d-=2);for(var m=2;m<d;m+=2){var h=u[m]-c,g=u[m+1]-l;s.lineTo(h,g)}t.closePath&&s.closePath(),t.isFilled&&(r(s,t),s.fill()),t.isStroked&&(i(s,t),s.stroke()),s.restore()}}},64827(e,t,n){var r=n(39429),i=n(24949);r.register(`polygon`,function(e,t,n,r,a){return this.displayList.add(new i(this.scene,e,t,n,r,a))})},90273(e,t,n){var r=n(29747),i=r,a=r;i=n(73695),a=n(38710),e.exports={renderWebGL:i,renderCanvas:a}},73695(e,t,n){var r=n(10441),i=n(91296),a=n(34682);e.exports=function(e,t,n,o){var s=n.camera;s.addToRenderList(t);var c=i(t,s,o,!n.useCanvas).calc,l=t._displayOriginX,u=t._displayOriginY,d=t.alpha,f=t.customRenderNodes.Submitter||t.defaultRenderNodes.Submitter;t.isFilled&&r(n,f,c,t,d,l,u),t.isStroked&&a(n,f,c,t,d,l,u)}},74561(e,t,n){var r=n(83419),i=n(94811),a=n(87841),o=n(17803);e.exports=new r({Extends:o,Mixins:[n(95597)],initialize:function(e,t,n,r,i,s,c){t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=128),i===void 0&&(i=128),o.call(this,e,`Rectangle`,new a(0,0,r,i)),this.radius=20,this.isRounded=!1,this.setPosition(t,n),this.setSize(r,i),s!==void 0&&this.setFillStyle(s,c),this.updateDisplayOrigin(),this.updateData()},setRounded:function(e){return e===void 0&&(e=16),this.radius=e,this.isRounded=e>0,this.updateRoundedData()},setSize:function(e,t){this.width=e,this.height=t,this.geom.setSize(e,t),this.updateData(),this.updateDisplayOrigin();var n=this.input;return n&&!n.customHitArea&&(n.hitArea.width=e,n.hitArea.height=t),this},updateData:function(){if(this.isRounded)return this.updateRoundedData();var e=[],t=this.geom,n=this._tempLine;return t.getLineA(n),e.push(n.x1,n.y1,n.x2,n.y2),t.getLineB(n),e.push(n.x2,n.y2),t.getLineC(n),e.push(n.x2,n.y2),t.getLineD(n),e.push(n.x2,n.y2),this.pathData=e,this},updateRoundedData:function(){var e=[],t=this.width/2,n=this.height/2,r=Math.min(t,n),a=Math.min(this.radius,r),o=t,s=n,c=Math.max(4,Math.min(16,Math.ceil(a/2)));return this.arcTo(e,o-t+a,s-n+a,a,Math.PI,Math.PI*1.5,c),e.push(o+t-a,s-n),this.arcTo(e,o+t-a,s-n+a,a,Math.PI*1.5,Math.PI*2,c),e.push(o+t,s+n-a),this.arcTo(e,o+t-a,s+n-a,a,0,Math.PI*.5,c),e.push(o-t+a,s+n),this.arcTo(e,o-t+a,s+n-a,a,Math.PI*.5,Math.PI,c),e.push(o-t,s-n+a),this.pathIndexes=i(e),this.pathData=e,this},arcTo:function(e,t,n,r,i,a,o){for(var s=(a-i)/o,c=0;c<=o;c++){var l=i+s*c;e.push(t+Math.cos(l)*r,n+Math.sin(l)*r)}}})},48682(e,t,n){var r=n(65960),i=n(75177),a=n(20926),o=function(e,t,n,r,i,a){var o=Math.min(r/2,i/2),s=Math.min(a,o);if(s===0){e.rect(t,n,r,i);return}e.moveTo(t+s,n),e.lineTo(t+r-s,n),e.arcTo(t+r,n,t+r,n+s,s),e.lineTo(t+r,n+i-s),e.arcTo(t+r,n+i,t+r-s,n+i,s),e.lineTo(t+s,n+i),e.arcTo(t,n+i,t,n+i-s,s),e.lineTo(t,n+s),e.arcTo(t,n,t+s,n,s),e.closePath()},o=function(e,t,n,r,i,a){var o=Math.min(r/2,i/2),s=Math.min(a,o);if(s===0){e.rect(t,n,r,i);return}e.moveTo(t+s,n),e.lineTo(t+r-s,n),e.arcTo(t+r,n,t+r,n+s,s),e.lineTo(t+r,n+i-s),e.arcTo(t+r,n+i,t+r-s,n+i,s),e.lineTo(t+s,n+i),e.arcTo(t,n+i,t,n+i-s,s),e.lineTo(t,n+s),e.arcTo(t,n,t+s,n,s),e.closePath()};e.exports=function(e,t,n,s){n.addToRenderList(t);var c=e.currentContext;if(a(e,c,t,n,s)){var l=t._displayOriginX,u=t._displayOriginY;t.isFilled&&(r(c,t),t.isRounded?(c.beginPath(),o(c,-l,-u,t.width,t.height,t.radius),c.fill()):c.fillRect(-l,-u,t.width,t.height)),t.isStroked&&(i(c,t),c.beginPath(),t.isRounded?o(c,-l,-u,t.width,t.height,t.radius):c.rect(-l,-u,t.width,t.height),c.stroke()),c.restore()}}},87959(e,t,n){var r=n(39429),i=n(74561);r.register(`rectangle`,function(e,t,n,r,a,o){return this.displayList.add(new i(this.scene,e,t,n,r,a,o))})},95597(e,t,n){var r=n(29747),i=r,a=r;i=n(52059),a=n(48682),e.exports={renderWebGL:i,renderCanvas:a}},52059(e,t,n){var r=n(10441),i=n(91296),a=n(34682),o=n(70554);e.exports=function(e,t,n,s){var c=n.camera;c.addToRenderList(t);var l=i(t,c,s,!n.useCanvas).calc,u=t._displayOriginX,d=t._displayOriginY,f=t.alpha,p=t.customRenderNodes,m=t.defaultRenderNodes,h=p.Submitter||m.Submitter;if(t.isRounded&&t.isFilled)r(pipeline,result.calc,t,f,u,d);else if(t.isFilled)if(t.isRounded)r(n,h,l,t,f,u,d);else{var g=o.getTintAppendFloatAlpha(t.fillColor,t.fillAlpha*f);(p.FillRect||m.FillRect).run(n,l,h,-u,-d,t.width,t.height,g,g,g,g,t.lighting)}t.isStroked&&a(n,h,l,t,f,u,d)}},55911(e,t,n){var r=n(81991),i=n(83419),a=n(94811),o=n(17803);e.exports=new i({Extends:o,Mixins:[r],initialize:function(e,t,n,r,i,a,s,c){t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=5),i===void 0&&(i=32),a===void 0&&(a=64),o.call(this,e,`Star`,null),this._points=r,this._innerRadius=i,this._outerRadius=a,this.setPosition(t,n),this.setSize(a*2,a*2),s!==void 0&&this.setFillStyle(s,c),this.updateDisplayOrigin(),this.updateData()},setPoints:function(e){return this._points=e,this.updateData()},setInnerRadius:function(e){return this._innerRadius=e,this.updateData()},setOuterRadius:function(e){return this._outerRadius=e,this.updateData()},points:{get:function(){return this._points},set:function(e){this._points=e,this.updateData()}},innerRadius:{get:function(){return this._innerRadius},set:function(e){this._innerRadius=e,this.updateData()}},outerRadius:{get:function(){return this._outerRadius},set:function(e){this._outerRadius=e,this.updateData()}},updateData:function(){var e=[],t=this._points,n=this._innerRadius,r=this._outerRadius,i=Math.PI/2*3,o=Math.PI/t,s=r,c=r;e.push(s,c+-r);for(var l=0;l<t;l++)e.push(s+Math.cos(i)*r,c+Math.sin(i)*r),i+=o,e.push(s+Math.cos(i)*n,c+Math.sin(i)*n),i+=o;return e.push(s,c+-r),this.pathIndexes=a(e),this.pathData=e,this}})},64272(e,t,n){var r=n(65960),i=n(75177),a=n(20926);e.exports=function(e,t,n,o){n.addToRenderList(t);var s=e.currentContext;if(a(e,s,t,n,o)){var c=t._displayOriginX,l=t._displayOriginY,u=t.pathData,d=u.length-1,f=u[0]-c,p=u[1]-l;s.beginPath(),s.moveTo(f,p),t.closePath||(d-=2);for(var m=2;m<d;m+=2){var h=u[m]-c,g=u[m+1]-l;s.lineTo(h,g)}s.closePath(),t.isFilled&&(r(s,t),s.fill()),t.isStroked&&(i(s,t),s.stroke()),s.restore()}}},93697(e,t,n){var r=n(55911);n(39429).register(`star`,function(e,t,n,i,a,o,s){return this.displayList.add(new r(this.scene,e,t,n,i,a,o,s))})},81991(e,t,n){var r=n(29747),i=r,a=r;i=n(57017),a=n(64272),e.exports={renderWebGL:i,renderCanvas:a}},57017(e,t,n){var r=n(10441),i=n(91296),a=n(34682);e.exports=function(e,t,n,o){var s=n.camera;s.addToRenderList(t);var c=i(t,s,o,!n.useCanvas).calc,l=t._displayOriginX,u=t._displayOriginY,d=t.alpha,f=t.customRenderNodes.Submitter||t.defaultRenderNodes.Submitter;t.isFilled&&r(n,f,c,t,d,l,u),t.isStroked&&a(n,f,c,t,d,l,u)}},36931(e,t,n){var r=n(83419),i=n(17803),a=n(16483);e.exports=new r({Extends:i,Mixins:[n(96195)],initialize:function(e,t,n,r,o,s,c,l,u,d,f){t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=0),o===void 0&&(o=128),s===void 0&&(s=64),c===void 0&&(c=0),l===void 0&&(l=128),u===void 0&&(u=128),i.call(this,e,`Triangle`,new a(r,o,s,c,l,u));var p=this.geom.right-this.geom.left,m=this.geom.bottom-this.geom.top;this.setPosition(t,n),this.setSize(p,m),d!==void 0&&this.setFillStyle(d,f),this.updateDisplayOrigin(),this.updateData()},setTo:function(e,t,n,r,i,a){return this.geom.setTo(e,t,n,r,i,a),this.updateData()},updateData:function(){var e=[],t=this.geom,n=this._tempLine;return t.getLineA(n),e.push(n.x1,n.y1,n.x2,n.y2),t.getLineB(n),e.push(n.x2,n.y2),t.getLineC(n),e.push(n.x2,n.y2),this.pathData=e,this}})},85172(e,t,n){var r=n(65960),i=n(75177),a=n(20926);e.exports=function(e,t,n,o){n.addToRenderList(t);var s=e.currentContext;if(a(e,s,t,n,o)){var c=t._displayOriginX,l=t._displayOriginY,u=t.geom.x1-c,d=t.geom.y1-l,f=t.geom.x2-c,p=t.geom.y2-l,m=t.geom.x3-c,h=t.geom.y3-l;s.beginPath(),s.moveTo(u,d),s.lineTo(f,p),s.lineTo(m,h),s.closePath(),t.isFilled&&(r(s,t),s.fill()),t.isStroked&&(i(s,t),s.stroke()),s.restore()}}},45245(e,t,n){var r=n(39429),i=n(36931);r.register(`triangle`,function(e,t,n,r,a,o,s,c,l,u){return this.displayList.add(new i(this.scene,e,t,n,r,a,o,s,c,l,u))})},96195(e,t,n){var r=n(29747),i=r,a=r;i=n(83253),a=n(85172),e.exports={renderWebGL:i,renderCanvas:a}},83253(e,t,n){var r=n(91296),i=n(34682),a=n(70554);e.exports=function(e,t,n,o){var s=n.camera;s.addToRenderList(t);var c=r(t,s,o,!n.useCanvas).calc,l=t._displayOriginX,u=t._displayOriginY,d=t.alpha,f=t.customRenderNodes,p=t.defaultRenderNodes,m=f.Submitter||p.Submitter;if(t.isFilled){var h=a.getTintAppendFloatAlpha(t.fillColor,t.fillAlpha*d),g=t.geom.x1-l,_=t.geom.y1-u,v=t.geom.x2-l,y=t.geom.y2-u,b=t.geom.x3-l,x=t.geom.y3-u;(f.FillTri||p.FillTri).run(n,c,m,g,_,v,y,b,x,h,h,h,t.lighting)}t.isStroked&&i(n,m,c,t,d,l,u)}},68287(e,t,n){var r=n(9674),i=n(40939),a=n(83419),o=n(31401),s=n(95643),c=n(92751);e.exports=new a({Extends:s,Mixins:[o.Alpha,o.BlendMode,o.Depth,o.Flip,o.GetBounds,o.Lighting,o.Mask,o.Origin,o.RenderNodes,o.ScrollFactor,o.Size,o.TextureCrop,o.Tint,o.Transform,o.Visible,c],initialize:function(e,t,n,i,a){s.call(this,e,`Sprite`),this._crop=this.resetCropObject(),this.anims=new r(this),this.setTexture(i,a),this.setPosition(t,n),this.setSizeToFrame(),this.setOriginFromFrame(),this.initRenderNodes(this._defaultRenderNodesMap)},_defaultRenderNodesMap:{get:function(){return i}},addedToScene:function(){this.scene.sys.updateList.add(this)},removedFromScene:function(){this.scene.sys.updateList.remove(this)},preUpdate:function(e,t){this.anims.update(e,t)},play:function(e,t){return this.anims.play(e,t)},playReverse:function(e,t){return this.anims.playReverse(e,t)},playAfterDelay:function(e,t){return this.anims.playAfterDelay(e,t)},playAfterRepeat:function(e,t){return this.anims.playAfterRepeat(e,t)},chain:function(e){return this.anims.chain(e)},stop:function(){return this.anims.stop()},stopAfterDelay:function(e){return this.anims.stopAfterDelay(e)},stopAfterRepeat:function(e){return this.anims.stopAfterRepeat(e)},stopOnFrame:function(e){return this.anims.stopOnFrame(e)},toJSON:function(){return o.ToJSON(this)},preDestroy:function(){this.anims.destroy(),this.anims=void 0}})},76552(e){e.exports=function(e,t,n,r){n.addToRenderList(t),e.batchSprite(t,t.frame,n,r)}},15567(e,t,n){var r=n(25305),i=n(13059),a=n(44603),o=n(23568),s=n(68287);a.register(`sprite`,function(e,t){e===void 0&&(e={});var n=o(e,`key`,null),a=o(e,`frame`,null),c=new s(this.scene,0,0,n,a);return t!==void 0&&(e.add=t),r(this.scene,c,e),i(c,e),c})},46409(e,t,n){var r=n(39429),i=n(68287);r.register(`sprite`,function(e,t,n,r){return this.displayList.add(new i(this.scene,e,t,n,r))})},92751(e,t,n){var r=n(29747),i=r,a=r;i=n(9409),a=n(76552),e.exports={renderWebGL:i,renderCanvas:a}},9409(e){e.exports=function(e,t,n,r){n.camera.addToRenderList(t);var i=t.customRenderNodes,a=t.defaultRenderNodes;(i.Submitter||a.Submitter).run(n,t,r,0,i.Texturer||a.Texturer,i.Transformer||a.Transformer)}},18207(e){e.exports={None:0,Power0:1,Power1:10,Power2:20,Power3:30,Power4:40,Linear:1,Gravity:2,Quad:10,"Quad.easeOut":10,"Quad.easeIn":11,"Quad.easeInOut":12,Cubic:20,"Cubic.easeOut":20,"Cubic.easeIn":21,"Cubic.easeInOut":22,Quart:30,"Quart.easeOut":30,"Quart.easeIn":31,"Quart.easeInOut":32,Quint:40,"Quint.easeOut":40,"Quint.easeIn":41,"Quint.easeInOut":42,Sine:50,"Sine.easeOut":50,"Sine.easeIn":51,"Sine.easeInOut":52,Expo:60,"Expo.easeOut":60,"Expo.easeIn":61,"Expo.easeInOut":62,Circ:70,"Circ.easeOut":70,"Circ.easeIn":71,"Circ.easeInOut":72,Back:90,"Back.easeOut":90,"Back.easeIn":91,"Back.easeInOut":92,Bounce:100,"Bounce.easeOut":100,"Bounce.easeIn":101,"Bounce.easeInOut":102,Stepped:110,Smoothstep:120,"Smoothstep.easeOut":120,"Smoothstep.easeIn":121,"Smoothstep.easeInOut":122}},68218(e,t,n){for(var r=n(18207),i={},a=Object.keys(r),o=a.length,s=0;s<o;s++){var c=a[s],l=r[c];i[l]=c}e.exports=i},76573(e,t,n){var r=n(83419),i=n(31401),a=n(95643),o=n(53384),s=n(70554),c=n(18207),l=n(68218),u=n(71238),d=s.getTintAppendFloatAlpha;e.exports=new r({Extends:a,Mixins:[i.Alpha,i.BlendMode,i.Depth,i.ElapseTimer,i.Lighting,i.Mask,i.RenderNodes,i.TextureCrop,i.Visible,u],initialize:function(e,t,n){a.call(this,e,`SpriteGPULayer`),this.memberCount=0,this.size=Math.max(n,0),this._segments=24,this.MAX_BUFFER_UPDATE_SEGMENTS_FULL=16777215,this.bufferUpdateSegments=0,this.bufferUpdateSegmentSize=Math.ceil(this.size/this._segments),this.gravity=1024,this._animationsEnabled={};for(var r=Object.keys(c),i=r.length,s=0;s<i;s++)this._animationsEnabled[r[s]]=!1;this.EASE=c,this.EASE_CODES=l,this.setTexture(t),this.initRenderNodes(new Phaser.Structs.Map),this.frameDataTexture=null,this.frameDataIndices={},this.frameDataIndicesInv={},this.animationData=[],this.animationDataNames={},this.animationDataIndices={},this.generateFrameDataTexture(),this.submitterNode=new o(e.renderer.renderNodes,{},this),this.defaultRenderNodes.Submitter=this.submitterNode,this.renderNodeData[this.submitterNode.name]={},this.resize(this.size),this.nextMember=new ArrayBuffer(this.getDataByteSize()),this.nextMemberF32=new Float32Array(this.nextMember),this.nextMemberU32=new Uint32Array(this.nextMember)},addedToScene:function(){this.scene.sys.updateList.add(this)},removedFromScene:function(){this.scene.sys.updateList.remove(this)},preUpdate:function(e,t){this.updateTimer(e,t)},getDataByteSize:function(){return this.submitterNode.instanceBufferLayout.layout.stride},getShaderFeatures:function(){for(var e=[],t=Object.keys(this._animationsEnabled),n=t.length,r=0;r<n;r++)this._animationsEnabled[t[r]]&&e.push(t[r]);return e},setAnimations:function(e){for(var t=e.length,n=this.texture.getFrameNames(!0).length,r=0;r<t;r++){var i=e[r],a={};i.key?(a.name=i.key,a.duration=i.duration,a.frames=i.frames):(a.name=i.name,a.duration=i.duration,a.frames=i.frames.slice()),a.index=n,a.frameCount=a.frames.length,n+=a.frameCount,this.animationData.push(a),this.animationDataNames[a.name]=a,this.animationDataIndices[a.index]=a}return this.generateFrameDataTexture(),this},generateFrameDataTexture:function(){var e=this.texture,t=e.getFrameNames(!0),n=t.length;this.frameDataIndices={},this.frameDataIndicesInv={};for(var r=0;r<n;r++){var i=t[r],a=e.get(i);this.frameDataIndices[i]=r,this.frameDataIndicesInv[r]=i}var o=this.animationData.length;for(r=0;r<o;r++)for(var s=this.animationData[r],c=s.frameCount,l=0;l<c;l++)t.push(s.frames[l]);n=t.length;var u=3,d=n*u,f=Math.min(d,4096),p=Math.ceil(d/4096),m=f*p*4,h=e.manager,g=new ArrayBuffer(m),_=new Uint16Array(g),v=new Uint8Array(g);for(r=0;r<n;r++){var y=t[r];a=typeof y==`string`?e.get(t[r]):y&&y.key!==void 0?h.get(y.key).get(y.frame):y.frame;var b=r*u*_.BYTES_PER_ELEMENT;_[b]=a.cutX,_[b+1]=a.cutY,_[b+2]=a.cutWidth,_[b+3]=a.cutHeight;var x=.5,S=.5;a.customPivot&&(x=a.pivotX,S=a.pivotY),_[b+4]=Math.round((x-.5)*a.cutWidth)+32768,_[b+5]=Math.round((S-.5)*a.cutHeight)+32768}this.frameDataTexture&&this.frameDataTexture.destroy(),this.frameDataTexture=this.scene.renderer.createUint8ArrayTexture(v,f,p,!1,!1)},resize:function(e,t){var n=this.submitterNode.instanceBufferLayout,r=n.buffer,i=r.viewU8,a=e*n.layout.stride;if(this.size=e,r.resize(a),t)this.memberCount=0;else{var o=r.viewU8;o.set(i.subarray(0,Math.min(o.byteLength,a))),this.memberCount=Math.min(this.memberCount,e)}return this.bufferUpdateSegmentSize=Math.ceil(this.size/this._segments),this.setAllSegmentsNeedUpdate(),this},setSegmentNeedsUpdate:function(e){if(!(e<0||e>=this.size||this.bufferUpdateSegments===this.MAX_BUFFER_UPDATE_SEGMENTS_FULL)){var t=Math.floor(e/this.bufferUpdateSegmentSize);this.bufferUpdateSegments|=1<<t}},setAllSegmentsNeedUpdate:function(){this.bufferUpdateSegments=this.MAX_BUFFER_UPDATE_SEGMENTS_FULL},clearAllSegmentsNeedUpdate:function(){this.bufferUpdateSegments=0},addData:function(e){if(this.memberCount>=this.size)return this;var t=this.submitterNode.instanceBufferLayout,n=t.buffer.viewF32,r=this.memberCount*t.layout.stride;return n.set(e,r/n.BYTES_PER_ELEMENT),this.setSegmentNeedsUpdate(this.memberCount),this.memberCount++,this},addMember:function(e){if(this.memberCount>=this.size)return this;var t=this.nextMemberF32,n=this.nextMemberU32;e||={};var r=this.frame;if(e.frame!==void 0&&(r=e.frame.base?e.frame.base:e.frame),typeof r==`string`&&(r=this.texture.get(r),!r))return this;var i=0;this._setAnimatedValue(e.x,i),i+=4,this._setAnimatedValue(e.y,i),i+=4,this._setAnimatedValue(e.rotation,i),i+=4,this._setAnimatedValue(e.scaleX,i,1),i+=4,this._setAnimatedValue(e.scaleY,i,1),i+=4,this._setAnimatedValue(e.alpha,i,1),i+=4;var a=e.animation;if(a){var o;if(typeof a==`string`||typeof a==`number`)o=typeof a==`string`?this.animationDataNames[a]:this.animationDataIndices[a],this._setAnimatedValue({base:o.index,amplitude:o.frameCount,duration:o.duration,ease:c.Linear,yoyo:!1},i);else{var s=a.base;o=typeof s==`string`?this.animationDataNames[s]:typeof s==`number`?this.animationDataIndices[s]:this.animationData[0],this._setAnimatedValue({base:o.index,amplitude:typeof a.amplitude==`number`?a.amplitude:o.frameCount,duration:a.duration||o.duration,delay:a.delay||0,ease:a.ease||c.Linear,yoyo:!!a.yoyo},i)}}else{var l=this.frameDataIndices[r.name],u=e.frame;u&&u.base!==void 0?this._setAnimatedValue({base:l,amplitude:u.amplitude,duration:u.duration,delay:u.delay,ease:u.ease,yoyo:u.yoyo},i):this._setAnimatedValue(l,i)}i+=4,this._setAnimatedValue(e.tintBlend,i,1),i+=4;var f=e.tintBottomLeft===void 0?16777215:e.tintBottomLeft,p=e.tintTopLeft===void 0?16777215:e.tintTopLeft,m=e.tintBottomRight===void 0?16777215:e.tintBottomRight,h=e.tintTopRight===void 0?16777215:e.tintTopRight,g=e.alphaBottomLeft===void 0?1:e.alphaBottomLeft,_=e.alphaTopLeft===void 0?1:e.alphaTopLeft,v=e.alphaBottomRight===void 0?1:e.alphaBottomRight,y=e.alphaTopRight===void 0?1:e.alphaTopRight;return n[i++]=d(f,g),n[i++]=d(p,_),n[i++]=d(m,v),n[i++]=d(h,y),t[i++]=e.originX===void 0?.5:e.originX,t[i++]=e.originY===void 0?.5:e.originY,t[i++]=e.tintMode||0,t[i++]=e.creationTime===void 0?this.timeElapsed:e.creationTime,t[i++]=e.scrollFactorX===void 0?1:e.scrollFactorX,t[i++]=e.scrollFactorY===void 0?1:e.scrollFactorY,this.addData(this.nextMemberF32),this},editMember:function(e,t){if(e<0||e>=this.memberCount)return this;var n=this.memberCount;return this.memberCount=e,this.addMember(t),this.memberCount=n,this},patchMember:function(e,t,n){if(!(e<0||e>=this.memberCount)){var r=this.submitterNode.instanceBufferLayout,i=r.buffer,a=e*r.layout.stride,o=i.viewU32,s=a/4;if(n)for(var c=0;c<t.length;c++)n[c]&&(o[s+c]=t[c]);else o.set(t,s);this.setSegmentNeedsUpdate(e)}},getMember:function(e){if(e<0||e>=this.memberCount)return null;var t=this.submitterNode.instanceBufferLayout,n=t.buffer,r=e*t.layout.stride,i=n.viewF32,a=n.viewU32,o={},s=r/i.BYTES_PER_ELEMENT;o.x=this._getAnimatedValue(s),s+=4,o.y=this._getAnimatedValue(s),s+=4,o.rotation=this._getAnimatedValue(s),s+=4,o.scaleX=this._getAnimatedValue(s),s+=4,o.scaleY=this._getAnimatedValue(s),s+=4,o.alpha=this._getAnimatedValue(s),s+=4;var c=this._getAnimatedValue(s);s+=4,typeof c!=`number`&&(c=c.base);var l=this.frameDataIndicesInv[c];if(l===void 0){var u=this.animationDataIndices[c];u&&(o.animation=u.name)}else o.frame=l;return o.tintBlend=this._getAnimatedValue(s),s+=4,o.tintBottomLeft=a[s++],o.tintTopLeft=a[s++],o.tintBottomRight=a[s++],o.tintTopRight=a[s++],o.alphaBottomLeft=(o.tintBottomLeft>>>24)/255,o.alphaTopLeft=(o.tintTopLeft>>>24)/255,o.alphaBottomRight=(o.tintBottomRight>>>24)/255,o.alphaTopRight=(o.tintTopRight>>>24)/255,o.tintBottomLeft&=16777215,o.tintTopLeft&=16777215,o.tintBottomRight&=16777215,o.tintTopRight&=16777215,o.originX=i[s++],o.originY=i[s++],o.tintMode=i[s++],o.creationTime=i[s++],o.scrollFactorX=i[s++],o.scrollFactorY=i[s++],o},getMemberData:function(e,t){if(e<0||e>=this.memberCount)return null;var n=this.submitterNode.instanceBufferLayout,r=n.buffer,i=n.layout.stride,a=e*i;t||=this.nextMemberU32;var o=r.viewU32,s=o.BYTES_PER_ELEMENT;return t.set(o.subarray(a/s,a/s+i/s)),t},removeMembers:function(e,t){if(e<0||e>=this.memberCount)return this;t===void 0&&(t=1),t=Math.min(t,this.memberCount-e);var n=this.submitterNode.instanceBufferLayout,r=n.layout.stride,i=e*r,a=t*r,o=n.buffer.viewU8;o.set(o.subarray(i+a),i);for(var s=e;s<this.memberCount;s+=this.bufferUpdateSegmentSize)this.setSegmentNeedsUpdate(s);return this.memberCount-=t,this},insertMembers:function(e,t){if(e<0||e>this.memberCount)return this;Array.isArray(t)||(t=[t]);var n=this.memberCount,r=this.submitterNode.instanceBufferLayout,i=r.layout.stride,a=e*i,o=t.length*i;r.buffer.viewU8.copyWithin(a+o,a,n*i),this.memberCount=e;for(var s=0;s<t.length;s++)this.addMember(t[s]);for(this.memberCount=Math.min(this.size,n+t.length),s=e;s<this.memberCount;s+=this.bufferUpdateSegmentSize)this.setSegmentNeedsUpdate(s);return this},insertMembersData:function(e,t){if(e<0||e>this.memberCount)return this;var n=t.length*t.BYTES_PER_ELEMENT,r=this.submitterNode.instanceBufferLayout,i=r.layout.stride,a=e*i;r.buffer.viewU8.copyWithin(a+n,a,this.memberCount*i),r.buffer.viewU32.set(t,a/t.BYTES_PER_ELEMENT),this.memberCount=Math.min(this.size,this.memberCount+n/i);for(var o=e;o<this.memberCount;o+=this.bufferUpdateSegmentSize)this.setSegmentNeedsUpdate(o);return this},_setAnimatedValue:function(e,t,n){var r=this.nextMemberF32;if(n===void 0&&(n=0),typeof e==`number`)r[t++]=e,r[t++]=0,r[t++]=0,r[t]=0;else if(e===void 0)r[t++]=n,r[t++]=0,r[t++]=0,r[t]=0;else{var i=e.base||0,a=e.ease||0,o=e.amplitude||0,s=Math.abs(e.duration||0),l=e.delay||0,u=e.yoyo===void 0?!0:e.yoyo,d=e.loop===void 0?!0:e.loop;typeof a==`string`&&(a=this.EASE[a]||0);var f=this.EASE_CODES[a];if(this._animationsEnabled[f]||this.setAnimationEnabled(f,!0),a===c.Gravity){var p=e.velocity||0,m=e.gravityFactor||1;m>=1?m=0:m<-1&&(m=-.999),m=(m+1)/2,o=Math.floor(p)+m}l=s>0?l/s%2:0,l<0&&(l+=2),l/=2,l+=a,u&&(s=-s),d||(l=-l),r[t++]=i,r[t++]=o,r[t++]=s,r[t]=l}},_getAnimatedValue:function(e){var t=this.submitterNode.instanceBufferLayout.buffer.viewF32,n=t[e++],r=t[e++],i=t[e++],a=t[e];if(r===0||i===0||s===0)return n;a>0||(a=-a);var o=i<0;o&&(i=-i);var s=Math.floor(a);if(a-=s,a=a*i*2%i,s===c.Gravity){var l=Math.floor(r),u=(r-l)*2-1;return u===0&&(u=1),{base:n,ease:s,duration:i,delay:a,yoyo:o,velocity:l,gravityFactor:u}}return{base:n,ease:s,amplitude:r,duration:i,delay:a,yoyo:o}},setAnimationEnabled:function(e,t){return this._animationsEnabled[e]=!!t,this},preDestroy:function(){this.frameDataTexture.destroy()}})},16193(e,t,n){var r=n(10312),i=n(44603),a=n(23568),o=n(76573);i.register(`spriteGPULayer`,function(e,t){e===void 0&&(e={});var n=a(e,`key`,null),i=a(e,`size`,1),s=new o(this.scene,n,i);return t!==void 0&&(e.add=t),s.alpha=a(e,`alpha`,1),s.blendMode=a(e,`blendMode`,r.NORMAL),s.visible=a(e,`visible`,!0),t&&this.scene.sys.displayList.add(s),s})},96019(e,t,n){var r=n(76573);n(39429).register(`spriteGPULayer`,function(e,t){return this.displayList.add(new r(this.scene,e,t))})},71238(e,t,n){var r=n(29747);e.exports={renderWebGL:n(97591),renderCanvas:r}},97591(e){e.exports=function(e,t,n,r){n.camera.addToRenderList(t);var i=t.customRenderNodes,a=t.defaultRenderNodes;(i.Submitter||a.Submitter).run(n)}},14727(e,t,n){var r=n(78705),i=n(83419),a=n(88571);e.exports=new i({Extends:a,Mixins:[n(74759)],initialize:function(e,t,n,r,i){a.call(this,e,t,n,r,i),this.type=`Stamp`},_defaultRenderNodesMap:{get:function(){return r}}})},656(e,t,n){var r=new(n(61340));e.exports=function(e,t,n){n.addToRenderList(t),r.copyFrom(n.matrix),n.matrix.loadIdentity();var i=n.scrollX,a=n.scrollY;n.scrollX=0,n.scrollY=0,e.batchSprite(t,t.frame,n),n.scrollX=i,n.scrollY=a,n.matrix.copyFrom(r)}},31479(e,t,n){var r=n(25305),i=n(44603),a=n(23568),o=n(14727);i.register(`stamp`,function(e,t){e===void 0&&(e={});var n=a(e,`key`,null),i=a(e,`frame`,null),s=new o(this.scene,0,0,n,i);return t!==void 0&&(e.add=t),r(this.scene,s,e),s})},85326(e,t,n){var r=n(14727);n(39429).register(`stamp`,function(e,t,n,i){return this.displayList.add(new r(this.scene,e,t,n,i))})},74759(e,t,n){var r=n(29747);r=n(656),e.exports={renderCanvas:r}},14220(e){e.exports=function(e,t,n){var r=e.canvas,i=e.context,a=e.style,o=[],s=0,c=n.length;a.maxLines>0&&a.maxLines<n.length&&(c=a.maxLines),a.syncFont(r,i);for(var l=e.letterSpacing,u=0;u<c;u++){var d=a.strokeThickness;if(l===0)d+=i.measureText(n[u]).width;else{for(var f=n[u],p=0;p<f.length;p++)d+=i.measureText(f[p]).width;f.length>1&&(d+=l*(f.length-1))}a.wordWrap&&(d-=i.measureText(` `).width),o[u]=Math.ceil(d),s=Math.max(s,o[u])}var m=t.fontSize+a.strokeThickness,h=m*c,g=e.lineSpacing;return c>1&&(h+=g*(c-1)),{width:s,height:h,lines:c,lineWidths:o,lineSpacing:g,lineHeight:m}}},79557(e,t,n){var r=n(27919);e.exports=function(e){var t=r.create(this),n=t.getContext(`2d`,{willReadFrequently:!0});e.syncFont(t,n);var i=n.measureText(e.testString);if(`actualBoundingBoxAscent`in i){var a=i.actualBoundingBoxAscent,o=i.actualBoundingBoxDescent;return r.remove(t),{ascent:a,descent:o,fontSize:a+o}}var s=Math.ceil(i.width*e.baselineX),c=s,l=2*c;c=c*e.baselineY|0,t.width=s,t.height=l,n.fillStyle=`#f00`,n.fillRect(0,0,s,l),n.font=e._font,n.textBaseline=`alphabetic`,n.fillStyle=`#000`,n.fillText(e.testString,0,c);var u={ascent:0,descent:0,fontSize:0},d=n.getImageData(0,0,s,l);if(!d)return u.ascent=c,u.descent=c+6,u.fontSize=u.ascent+u.descent,r.remove(t),u;var f=d.data,p=f.length,m=s*4,h,g,_=0,v=!1;for(h=0;h<c;h++){for(g=0;g<m;g+=4)if(f[_+g]!==255){v=!0;break}if(!v)_+=m;else break}for(u.ascent=c-h,_=p-m,v=!1,h=l;h>c;h--){for(g=0;g<m;g+=4)if(f[_+g]!==255){v=!0;break}if(!v)_-=m;else break}return u.descent=h-c,u.fontSize=u.ascent+u.descent,r.remove(t),u}},50171(e,t,n){var r=n(40366),i=n(27919),a=n(40939),o=n(83419),s=n(31401),c=n(95643),l=n(14220),u=n(35154),d=n(35846),f=n(61771),p=n(35762),m=n(45650);e.exports=new o({Extends:c,Mixins:[s.Alpha,s.BlendMode,s.ComputedSize,s.Crop,s.Depth,s.Flip,s.GetBounds,s.Lighting,s.Mask,s.Origin,s.RenderNodes,s.ScrollFactor,s.Tint,s.Transform,s.Visible,f],initialize:function(e,t,n,r,a){t===void 0&&(t=0),n===void 0&&(n=0),c.call(this,e,`Text`),this.renderer=e.sys.renderer,this.setPosition(t,n),this.setOrigin(0,0),this.initRenderNodes(this._defaultRenderNodesMap),this.canvas=i.create(this),this.context,this.style=new p(this,a),this.autoRound=!0,this.splitRegExp=/(?:\r\n|\r|\n)/,this._text=void 0,this.padding={left:0,right:0,top:0,bottom:0},this.width=1,this.height=1,this.lineSpacing=0,this.letterSpacing=0,this.style.resolution===0&&(this.style.resolution=1),this._crop=this.resetCropObject(),this._textureKey=m(),this.texture=e.sys.textures.addCanvas(this._textureKey,this.canvas),this.context=this.texture.context,this.frame=this.texture.get(),this.frame.source.resolution=this.style.resolution,this.renderer&&this.renderer.gl&&(this.renderer.deleteTexture(this.frame.source.glTexture),this.frame.source.glTexture=null),this.initRTL(),this.setText(r),a&&a.padding&&this.setPadding(a.padding),a&&a.lineSpacing&&this.setLineSpacing(a.lineSpacing),a&&a.letterSpacing&&this.setLetterSpacing(a.letterSpacing)},_defaultRenderNodesMap:{get:function(){return a}},initRTL:function(){if(!this.style.rtl){this.canvas.dir=`ltr`,this.context.direction=`ltr`;return}this.canvas.dir=`rtl`,this.context.direction=`rtl`,this.canvas.style.display=`none`,r(this.canvas,this.scene.sys.canvas),this.originX=1},runWordWrap:function(e){var t=this.style;if(t.wordWrapCallback){var n=t.wordWrapCallback.call(t.wordWrapCallbackScope,e,this);return Array.isArray(n)&&(n=n.join(`
16
+ `)),n}else if(t.wordWrapWidth)return t.wordWrapUseAdvanced?this.advancedWordWrap(e,this.context,this.style.wordWrapWidth):this.basicWordWrap(e,this.context,this.style.wordWrapWidth);else return e},advancedWordWrap:function(e,t,n){for(var r=``,i=e.replace(/ +/gi,` `).split(this.splitRegExp),a=i.length,o=0;o<a;o++){var s=i[o],c=``;s=s.replace(/^ *|\s*$/gi,``);var l=s.length*this.letterSpacing;if(t.measureText(s).width+l<n){r+=s+`
17
+ `;continue}for(var u=n,d=s.split(` `),f=0;f<d.length;f++){var p=d[f],m=p+` `,h=m.length*this.letterSpacing,g=t.measureText(m).width+h;if(g>u){if(f===0){for(var _=m;_.length;){_=_.slice(0,-1);var v=_.length*this.letterSpacing;if(g=t.measureText(_).width+v,g<=u)break}if(!_.length)throw Error(`wordWrapWidth < a single character`);d[f]=p.substr(_.length),c+=_}var y=d[f].length?f:f+1,b=d.slice(y).join(` `).replace(/[ \n]*$/gi,``);i.splice(o+1,0,b),a=i.length;break}else c+=m,u-=g}r+=c.replace(/[ \n]*$/gi,``)+`
18
+ `}return r=r.replace(/[\s|\n]*$/gi,``),r},basicWordWrap:function(e,t,n){for(var r=``,i=e.split(this.splitRegExp),a=i.length-1,o=t.measureText(` `).width,s=0;s<=a;s++){for(var c=n,l=i[s].split(` `),u=l.length-1,d=0;d<=u;d++){var f=l[d],p=f.length*this.letterSpacing,m=t.measureText(f).width+p,h=m;d<u&&(h+=o),h>c&&d>0&&(r+=`
19
+ `,c=n),r+=f,d<u?(r+=` `,c-=h):c-=m}s<a&&(r+=`
20
+ `)}return r},getWrappedText:function(e){return e===void 0&&(e=this._text),this.style.syncFont(this.canvas,this.context),this.runWordWrap(e).split(this.splitRegExp)},setText:function(e){return!e&&e!==0&&(e=``),Array.isArray(e)&&(e=e.join(`
21
+ `)),e!==this._text&&(this._text=e.toString(),this.updateText()),this},appendText:function(e,t){t===void 0&&(t=!0),!e&&e!==0&&(e=``),Array.isArray(e)&&(e=e.join(`
22
+ `)),e=e.toString();var n=this._text.concat(t?`
23
+ `+e:e);return n!==this._text&&(this._text=n,this.updateText()),this},setStyle:function(e){return this.style.setStyle(e)},setFont:function(e){return this.style.setFont(e)},setFontFamily:function(e){return this.style.setFontFamily(e)},setFontSize:function(e){return this.style.setFontSize(e)},setFontStyle:function(e){return this.style.setFontStyle(e)},setFixedSize:function(e,t){return this.style.setFixedSize(e,t)},setBackgroundColor:function(e){return this.style.setBackgroundColor(e)},setFill:function(e){return this.style.setFill(e)},setColor:function(e){return this.style.setColor(e)},setStroke:function(e,t){return this.style.setStroke(e,t)},setShadow:function(e,t,n,r,i,a){return this.style.setShadow(e,t,n,r,i,a)},setShadowOffset:function(e,t){return this.style.setShadowOffset(e,t)},setShadowColor:function(e){return this.style.setShadowColor(e)},setShadowBlur:function(e){return this.style.setShadowBlur(e)},setShadowStroke:function(e){return this.style.setShadowStroke(e)},setShadowFill:function(e){return this.style.setShadowFill(e)},setWordWrapWidth:function(e,t){return this.style.setWordWrapWidth(e,t)},setWordWrapCallback:function(e,t){return this.style.setWordWrapCallback(e,t)},setAlign:function(e){return this.style.setAlign(e)},setResolution:function(e){return this.style.setResolution(e)},setLineSpacing:function(e){return this.lineSpacing=e,this.updateText()},setLetterSpacing:function(e){return this.letterSpacing=e,this.updateText()},setPadding:function(e,t,n,r){if(typeof e==`object`){var i=e,a=u(i,`x`,null);a===null?(e=u(i,`left`,0),n=u(i,`right`,e)):(e=a,n=a);var o=u(i,`y`,null);o===null?(t=u(i,`top`,0),r=u(i,`bottom`,t)):(t=o,r=o)}else e===void 0&&(e=0),t===void 0&&(t=e),n===void 0&&(n=e),r===void 0&&(r=t);return this.padding.left=e,this.padding.top=t,this.padding.right=n,this.padding.bottom=r,this.updateText()},setMaxLines:function(e){return this.style.setMaxLines(e)},setRTL:function(e){e===void 0&&(e=!0);var t=this.style;return t.rtl===e?this:(t.rtl=e,e?(this.canvas.dir=`rtl`,this.context.direction=`rtl`,this.canvas.style.display=`none`,r(this.canvas,this.scene.sys.canvas)):(this.canvas.dir=`ltr`,this.context.direction=`ltr`),t.align===`left`?t.align=`right`:t.align===`right`&&(t.align=`left`),this)},updateText:function(){var e=this.canvas,t=this.context,n=this.style,r=n.resolution,i=n.metrics;n.syncFont(e,t);var a=this._text;(n.wordWrapWidth||n.wordWrapCallback)&&(a=this.runWordWrap(this._text));var o=a.split(this.splitRegExp),s=l(this,i,o),c=this.padding,u;n.fixedWidth===0?(this.width=s.width+c.left+c.right,u=s.width):(this.width=n.fixedWidth,u=this.width-c.left-c.right,u<s.width&&(u=s.width)),n.fixedHeight===0?this.height=s.height+c.top+c.bottom:this.height=n.fixedHeight;var d=this.width,f=this.height;this.updateDisplayOrigin(),d*=r,f*=r,d=Math.max(d,1),f=Math.max(f,1),e.width!==d||e.height!==f?(e.width=d,e.height=f,this.frame.setSize(d,f),this.frame.source.updateSize(d,f),this.frame.source.resolution=r,this.frame.updateUVs(),n.syncFont(e,t),n.rtl&&(t.direction=`rtl`)):t.clearRect(0,0,d,f),t.save(),t.scale(r,r),n.backgroundColor&&(t.fillStyle=n.backgroundColor,t.fillRect(0,0,d,f)),n.syncStyle(e,t),t.translate(c.left,c.top);for(var p,m,h=0;h<s.lines;h++){if(p=n.strokeThickness/2,m=n.strokeThickness/2+h*s.lineHeight+i.ascent,h>0&&(m+=s.lineSpacing*h),n.rtl)p=d-p-c.left-c.right;else if(n.align===`right`)p+=u-s.lineWidths[h];else if(n.align===`center`)p+=(u-s.lineWidths[h])/2;else if(n.align===`justify`&&s.lineWidths[h]/s.width>=.85){var g=s.width-s.lineWidths[h],_=t.measureText(` `).width,v=o[h].trim(),y=v.split(` `);g+=(o[h].length-v.length)*_;for(var b=Math.floor(g/_),x=0;b>0;)y[x]+=` `,x=(x+1)%(y.length-1||1),--b;o[h]=y.join(` `)}this.autoRound&&(p=Math.round(p),m=Math.round(m));var S=this.letterSpacing;if(n.strokeThickness&&S===0&&(n.syncShadow(t,n.shadowStroke),t.strokeText(o[h],p,m)),n.color)if(n.syncShadow(t,n.shadowFill),S!==0)for(var C=0,w=o[h].split(``),T=0;T<w.length;T++)n.strokeThickness&&(n.syncShadow(t,n.shadowStroke),t.strokeText(w[T],p+C,m),n.syncShadow(t,n.shadowFill)),t.fillText(w[T],p+C,m),C+=t.measureText(w[T]).width+S;else t.fillText(o[h],p,m)}t.restore(),this.renderer&&this.renderer.gl&&(this.frame.source.glTexture=this.renderer.canvasToTexture(e,this.frame.source.glTexture,!0));var E=this.input;return E&&!E.customHitArea&&(E.hitArea.width=this.width,E.hitArea.height=this.height),this},getTextMetrics:function(){return this.style.getTextMetrics()},text:{get:function(){return this._text},set:function(e){this.setText(e)}},toJSON:function(){var e=s.ToJSON(this);return e.data={autoRound:this.autoRound,text:this._text,style:this.style.toJSON(),padding:{left:this.padding.left,right:this.padding.right,top:this.padding.top,bottom:this.padding.bottom}},e},preDestroy:function(){d(this.canvas),i.remove(this.canvas);var e=this.texture;e&&e.destroy()}})},79724(e){e.exports=function(e,t,n,r){t.width===0||t.height===0||(n.addToRenderList(t),e.batchSprite(t,t.frame,n,r))}},71259(e,t,n){var r=n(25305),i=n(44603),a=n(23568),o=n(50171);i.register(`text`,function(e,t){e===void 0&&(e={});var n=a(e,`text`,``),i=a(e,`style`,null),s=a(e,`padding`,null);s!==null&&(i.padding=s);var c=new o(this.scene,0,0,n,i);return t!==void 0&&(e.add=t),r(this.scene,c,e),c.autoRound=a(e,`autoRound`,!0),c.resolution=a(e,`resolution`,1),c})},68005(e,t,n){var r=n(50171);n(39429).register(`text`,function(e,t,n,i){return this.displayList.add(new r(this.scene,e,t,n,i))})},61771(e,t,n){var r=n(29747),i=r,a=r;i=n(34397),a=n(79724),e.exports={renderWebGL:i,renderCanvas:a}},35762(e,t,n){var r=n(83419),i=n(23568),a=n(35154),o=n(79557),s={fontFamily:[`fontFamily`,`Courier`],fontSize:[`fontSize`,`16px`],fontStyle:[`fontStyle`,``],backgroundColor:[`backgroundColor`,null],color:[`color`,`#fff`],stroke:[`stroke`,`#fff`],strokeThickness:[`strokeThickness`,0],shadowOffsetX:[`shadow.offsetX`,0],shadowOffsetY:[`shadow.offsetY`,0],shadowColor:[`shadow.color`,`#000`],shadowBlur:[`shadow.blur`,0],shadowStroke:[`shadow.stroke`,!1],shadowFill:[`shadow.fill`,!1],align:[`align`,`left`],maxLines:[`maxLines`,0],fixedWidth:[`fixedWidth`,0],fixedHeight:[`fixedHeight`,0],resolution:[`resolution`,0],rtl:[`rtl`,!1],testString:[`testString`,`|MÉqgy`],baselineX:[`baselineX`,1.2],baselineY:[`baselineY`,1.4],wordWrapWidth:[`wordWrap.width`,null],wordWrapCallback:[`wordWrap.callback`,null],wordWrapCallbackScope:[`wordWrap.callbackScope`,null],wordWrapUseAdvanced:[`wordWrap.useAdvancedWrap`,!1]};e.exports=new r({initialize:function(e,t){this.parent=e,this.fontFamily,this.fontSize,this.fontStyle,this.backgroundColor,this.color,this.stroke,this.strokeThickness,this.shadowOffsetX,this.shadowOffsetY,this.shadowColor,this.shadowBlur,this.shadowStroke,this.shadowFill,this.align,this.maxLines,this.fixedWidth,this.fixedHeight,this.resolution,this.rtl,this.testString,this.baselineX,this.baselineY,this.wordWrapWidth,this.wordWrapCallback,this.wordWrapCallbackScope,this.wordWrapUseAdvanced,this._font,this.setStyle(t,!1,!0)},setStyle:function(e,t,n){for(var r in t===void 0&&(t=!0),n===void 0&&(n=!1),s){var c=n?s[r][1]:this[r];r===`wordWrapCallback`||r===`wordWrapCallbackScope`?this[r]=a(e,s[r][0],c):e&&r===`fontSize`&&typeof e.fontSize==`number`?this[r]=e.fontSize.toString()+`px`:this[r]=i(e,s[r][0],c)}var l=a(e,`font`,null);l!==null&&this.setFont(l,!1),this._font=[this.fontStyle,this.fontSize,this.fontFamily].join(` `).trim();var u=a(e,`fill`,null);u!==null&&(this.color=u);var d=a(e,`metrics`,!1);return d?this.metrics={ascent:a(d,`ascent`,0),descent:a(d,`descent`,0),fontSize:a(d,`fontSize`,0)}:(t||!this.metrics)&&(this.metrics=o(this)),t?this.parent.updateText():this.parent},syncFont:function(e,t){t.font=this._font},syncStyle:function(e,t){t.textBaseline=`alphabetic`,t.fillStyle=this.color,t.strokeStyle=this.stroke,t.lineWidth=this.strokeThickness,t.lineCap=`round`,t.lineJoin=`round`},syncShadow:function(e,t){t?(e.shadowOffsetX=this.shadowOffsetX,e.shadowOffsetY=this.shadowOffsetY,e.shadowColor=this.shadowColor,e.shadowBlur=this.shadowBlur):(e.shadowOffsetX=0,e.shadowOffsetY=0,e.shadowColor=0,e.shadowBlur=0)},update:function(e){return e&&(this._font=[this.fontStyle,this.fontSize,this.fontFamily].join(` `).trim(),this.metrics=o(this)),this.parent.updateText()},setFont:function(e,t){t===void 0&&(t=!0);var n=e,r=``,i=``;if(typeof e!=`string`)n=a(e,`fontFamily`,`Courier`),r=a(e,`fontSize`,`16px`),i=a(e,`fontStyle`,``);else{var o=e.split(` `),s=0;i=o.length>2?o[s++]:``,r=o[s++]||`16px`,n=o[s++]||`Courier`}return(n!==this.fontFamily||r!==this.fontSize||i!==this.fontStyle)&&(this.fontFamily=n,this.fontSize=r,this.fontStyle=i,t&&this.update(!0)),this.parent},setFontFamily:function(e){return this.fontFamily!==e&&(this.fontFamily=e,this.update(!0)),this.parent},setFontStyle:function(e){return this.fontStyle!==e&&(this.fontStyle=e,this.update(!0)),this.parent},setFontSize:function(e){return typeof e==`number`&&(e=e.toString()+`px`),this.fontSize!==e&&(this.fontSize=e,this.update(!0)),this.parent},setTestString:function(e){return this.testString=e,this.update(!0)},setFixedSize:function(e,t){return this.fixedWidth=e,this.fixedHeight=t,e&&(this.parent.width=e),t&&(this.parent.height=t),this.update(!1)},setBackgroundColor:function(e){return this.backgroundColor=e,this.update(!1)},setFill:function(e){return this.color=e,this.update(!1)},setColor:function(e){return this.color=e,this.update(!1)},setResolution:function(e){return this.resolution=e,this.update(!1)},setStroke:function(e,t){return t===void 0&&(t=this.strokeThickness),e===void 0&&this.strokeThickness!==0?(this.strokeThickness=0,this.update(!0)):(this.stroke!==e||this.strokeThickness!==t)&&(this.stroke=e,this.strokeThickness=t,this.update(!0)),this.parent},setShadow:function(e,t,n,r,i,a){return e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=`#000`),r===void 0&&(r=0),i===void 0&&(i=!1),a===void 0&&(a=!0),this.shadowOffsetX=e,this.shadowOffsetY=t,this.shadowColor=n,this.shadowBlur=r,this.shadowStroke=i,this.shadowFill=a,this.update(!1)},setShadowOffset:function(e,t){return e===void 0&&(e=0),t===void 0&&(t=e),this.shadowOffsetX=e,this.shadowOffsetY=t,this.update(!1)},setShadowColor:function(e){return e===void 0&&(e=`#000`),this.shadowColor=e,this.update(!1)},setShadowBlur:function(e){return e===void 0&&(e=0),this.shadowBlur=e,this.update(!1)},setShadowStroke:function(e){return this.shadowStroke=e,this.update(!1)},setShadowFill:function(e){return this.shadowFill=e,this.update(!1)},setWordWrapWidth:function(e,t){return t===void 0&&(t=!1),this.wordWrapWidth=e,this.wordWrapUseAdvanced=t,this.update(!1)},setWordWrapCallback:function(e,t){return t===void 0&&(t=null),this.wordWrapCallback=e,this.wordWrapCallbackScope=t,this.update(!1)},setAlign:function(e){return e===void 0&&(e=`left`),this.align=e,this.update(!1)},setMaxLines:function(e){return e===void 0&&(e=0),this.maxLines=e,this.update(!1)},getTextMetrics:function(){var e=this.metrics;return{ascent:e.ascent,descent:e.descent,fontSize:e.fontSize}},toJSON:function(){var e={};for(var t in s)e[t]=this[t];return e.metrics=this.getTextMetrics(),e},destroy:function(){this.parent=void 0}})},34397(e){e.exports=function(e,t,n,r){if(!(t.width===0||t.height===0)){n.camera.addToRenderList(t);var i=t.customRenderNodes,a=t.defaultRenderNodes;(i.Submitter||a.Submitter).run(n,t,r,0,i.Texturer||a.Texturer,i.Transformer||a.Transformer)}}},20839(e,t,n){var r=n(9674),i=n(27919),a=n(41571),o=n(83419),s=n(31401),c=n(95643),l=n(68703),u=n(56295),d=n(45650),f=n(26099),p=8;e.exports=new o({Extends:c,Mixins:[s.Alpha,s.BlendMode,s.ComputedSize,s.Depth,s.Flip,s.GetBounds,s.Lighting,s.Mask,s.Origin,s.RenderNodes,s.ScrollFactor,s.Texture,s.Tint,s.Transform,s.Visible,u],initialize:function(e,t,n,a,o,s,l){var u=e.sys.renderer,p=u&&!u.gl;c.call(this,e,`TileSprite`);var m=e.sys.textures.get(s).get(l);a=a?Math.floor(a):m.width,o=o?Math.floor(o):m.height,this._tilePosition=new f,this._tileScale=new f(1,1),this._tileRotation=0,this.dirty=!1,this.renderer=u,this.canvas=p?i.create(this,a,o):null,this.context=p?this.canvas.getContext(`2d`,{willReadFrequently:!1}):null,this._displayTextureKey=d(),this.displayTexture=p?e.sys.textures.addCanvas(this._displayTextureKey,this.canvas):null,this.displayFrame=this.displayTexture?this.displayTexture.get():null,this.currentFrame=null,this.fillCanvas=p?i.create2D(this,m.width,this.displayFrame.height):null,this.fillContext=this.fillCanvas?this.fillCanvas.getContext(`2d`,{willReadFrequently:!1}):null,this.fillPattern=null,this.anims=new r(this),this.setTexture(s,l),this.setPosition(t,n),this.setSize(a,o),this.setOrigin(.5,.5),this.initRenderNodes(this._defaultRenderNodesMap)},_defaultRenderNodesMap:{get:function(){return a}},addedToScene:function(){this.scene.sys.updateList.add(this)},removedFromScene:function(){this.scene.sys.updateList.remove(this)},preUpdate:function(e,t){this.anims.update(e,t)},setFrame:function(e){var t=this.texture.get(e);return!t.cutWidth||!t.cutHeight?this.renderFlags&=~p:this.renderFlags|=p,this.frame=t,this.dirty=!0,this},setSizeToFrame:function(){return this},setTilePosition:function(e,t){return e!==void 0&&(this.tilePositionX=e),t!==void 0&&(this.tilePositionY=t),this},setTileRotation:function(e){return e===void 0&&(e=0),this.tileRotation=e,this},setTileScale:function(e,t){return e===void 0&&(e=this.tileScaleX),t===void 0&&(t=e),this.tileScaleX=e,this.tileScaleY=t,this},updateTileTexture:function(){if(!(!this.renderer||this.renderer.gl)){var e=this.frame,t=this.fillContext,n=this.fillCanvas,r=e.cutWidth,i=e.cutHeight;t.clearRect(0,0,r,i),n.width=r,n.height=i,t.drawImage(e.source.image,e.cutX,e.cutY,e.cutWidth,e.cutHeight,0,0,r,i),this.fillPattern=t.createPattern(n,`repeat`),this.currentFrame=e}},updateCanvas:function(){var e=this.canvas,t=this.width,n=this.height,r=this.currentFrame!==this.frame;if((e.width!==t||e.height!==n||r)&&(e.width=t,e.height=n,this.displayFrame.setSize(t,n),this.updateDisplayOrigin(),r&&this.updateTileTexture(),this.dirty=!0),!this.dirty||this.renderer&&this.renderer.gl){this.dirty=!1;return}var i=this.context;this.scene.sys.game.config.antialias||l.disable(i);var a=this._tileScale.x,o=this._tileScale.y,s=this._tilePosition.x,c=this._tilePosition.y;i.clearRect(0,0,t,n),i.save(),i.rotate(this._tileRotation),i.scale(a,o),i.translate(-s,-c),i.fillStyle=this.fillPattern;var u=Math.max(t,Math.abs(t/a)),d=Math.max(n,Math.abs(n/o)),f=Math.sqrt(u*u+d*d);i.fillRect(s-f,c-f,2*f,2*f),i.restore(),this.dirty=!1},setSize:function(e,t){this.width=e,this.height=t,this.updateDisplayOrigin();var n=this.input;return n&&!n.customHitArea&&(n.hitArea.width=e,n.hitArea.height=t),this},preDestroy:function(){this.canvas&&i.remove(this.canvas),this.fillCanvas&&i.remove(this.fillCanvas),this.fillPattern=null,this.fillContext=null,this.fillCanvas=null,this.displayTexture=null,this.displayFrame=null,this.renderer=null,this.anims.destroy(),this.anims=void 0},tilePositionX:{get:function(){return this._tilePosition.x},set:function(e){this._tilePosition.x=e,this.dirty=!0}},tilePositionY:{get:function(){return this._tilePosition.y},set:function(e){this._tilePosition.y=e,this.dirty=!0}},tileRotation:{get:function(){return this._tileRotation},set:function(e){this._tileRotation=e,this.dirty=!0}},tileScaleX:{get:function(){return this._tileScale.x},set:function(e){this._tileScale.x=e,this.dirty=!0}},tileScaleY:{get:function(){return this._tileScale.y},set:function(e){this._tileScale.y=e,this.dirty=!0}}})},46992(e){e.exports=function(e,t,n,r){t.updateCanvas(),n.addToRenderList(t),e.batchSprite(t,t.displayFrame,n,r)}},14167(e,t,n){var r=n(25305),i=n(44603),a=n(23568),o=n(20839);i.register(`tileSprite`,function(e,t){e===void 0&&(e={});var n=a(e,`x`,0),i=a(e,`y`,0),s=a(e,`width`,512),c=a(e,`height`,512),l=a(e,`key`,``),u=a(e,`frame`,``),d=new o(this.scene,n,i,s,c,l,u);return t!==void 0&&(e.add=t),r(this.scene,d,e),d})},91681(e,t,n){var r=n(20839);n(39429).register(`tileSprite`,function(e,t,n,i,a,o){return this.displayList.add(new r(this.scene,e,t,n,i,a,o))})},56295(e,t,n){var r=n(29747),i=r,a=r;i=n(18553),a=n(46992),e.exports={renderWebGL:i,renderCanvas:a}},18553(e){e.exports=function(e,t,n,r){var i=t.width,a=t.height;if(!(i===0||a===0)){n.camera.addToRenderList(t);var o=t.customRenderNodes,s=t.defaultRenderNodes;(o.Submitter||s.Submitter).run(n,t,r,0,o.Texturer||s.Texturer,o.Transformer||s.Transformer)}}},18471(e,t,n){var r=n(45319),i=n(40939),a=n(83419),o=n(31401),s=n(51708),c=n(8443),l=n(95643),u=n(36383),d=n(14463),f=n(45650),p=n(10247);e.exports=new a({Extends:l,Mixins:[o.Alpha,o.BlendMode,o.ComputedSize,o.Depth,o.Flip,o.GetBounds,o.Lighting,o.Mask,o.Origin,o.RenderNodes,o.ScrollFactor,o.TextureCrop,o.Tint,o.Transform,o.Visible,p],initialize:function(e,t,n,r){l.call(this,e,`Video`),this.video,this.videoTexture,this.videoTextureSource,this.snapshotTexture,this.glFlipY=!0,this._key=f(),this.touchLocked=!1,this.playWhenUnlocked=!1,this.frameReady=!1,this.isStalled=!1,this.failedPlayAttempts=0,this.metadata,this.retry=0,this.retryInterval=500,this._systemMuted=!1,this._codeMuted=!1,this._systemPaused=!1,this._codePaused=!1,this._callbacks={ended:this.completeHandler.bind(this),legacy:this.legacyPlayHandler.bind(this),playing:this.playingHandler.bind(this),seeked:this.seekedHandler.bind(this),seeking:this.seekingHandler.bind(this),stalled:this.stalledHandler.bind(this),suspend:this.stalledHandler.bind(this),waiting:this.stalledHandler.bind(this)},this._loadCallbackHandler=this.loadErrorHandler.bind(this),this._metadataCallbackHandler=this.metadataHandler.bind(this),this._crop=this.resetCropObject(),this.markers={},this._markerIn=0,this._markerOut=0,this._playingMarker=!1,this._lastUpdate=0,this.cacheKey=``,this.isSeeking=!1,this._playCalled=!1,this._getFrame=!1,this._rfvCallbackId=0;var i=e.sys.game;this._device=i.device.video,this.setPosition(t,n),this.setSize(256,256),this.initRenderNodes(this._defaultRenderNodesMap),i.events.on(c.PAUSE,this.globalPause,this),i.events.on(c.RESUME,this.globalResume,this);var a=e.sys.sound;a&&a.on(d.GLOBAL_MUTE,this.globalMute,this),r&&this.load(r)},_defaultRenderNodesMap:{get:function(){return i}},addedToScene:function(){this.scene.sys.updateList.add(this)},removedFromScene:function(){this.scene.sys.updateList.remove(this)},load:function(e){var t=this.scene.sys.cache.video.get(e);return t?(this.cacheKey=e,this.loadHandler(t.url,t.noAudio,t.crossOrigin)):console.warn(`No video in cache for key: `+e),this},changeSource:function(e,t,n,r,i){t===void 0&&(t=!0),n===void 0&&(n=!1),this.cacheKey!==e&&(this.load(e),t&&this.play(n,r,i))},getVideoKey:function(){return this.cacheKey},loadURL:function(e,t,n){t===void 0&&(t=!1);var r=this._device.getVideoURL(e);return r?(this.cacheKey=``,this.loadHandler(r.url,t,n)):console.warn(`No supported video format found for `+e),this},loadMediaStream:function(e,t,n){return this.loadHandler(null,t,n,e)},loadHandler:function(e,t,n,r){t||=!1;var i=this.video;if(i?(this.removeLoadEventHandlers(),this.stop()):(i=document.createElement(`video`),i.controls=!1,i.setAttribute(`playsinline`,`playsinline`),i.setAttribute(`preload`,`auto`),i.setAttribute(`disablePictureInPicture`,`true`)),t?(i.muted=!0,i.defaultMuted=!0,i.setAttribute(`autoplay`,`autoplay`)):(i.muted=!1,i.defaultMuted=!1,i.removeAttribute(`autoplay`)),n?i.setAttribute(`crossorigin`,n):i.removeAttribute(`crossorigin`),r)if(`srcObject`in i)try{i.srcObject=r}catch(e){if(e.name!==`TypeError`)throw e;i.src=URL.createObjectURL(r)}else i.src=URL.createObjectURL(r);else i.src=e;this.retry=0,this.video=i,this._playCalled=!1,i.load(),this.addLoadEventHandlers();var a=this.scene.sys.textures.get(this._key);return this.setTexture(a),this},requestVideoFrame:function(e,t){var n=this.video;if(n){var r=t.width,i=t.height,a=this.videoTexture,o=this.videoTextureSource,c=!a||o.source!==n;c?(this._codePaused=n.paused,this._codeMuted=n.muted,a?(o.source=n,o.width=r,o.height=i,a.get().setSize(r,i)):(a=this.scene.sys.textures.create(this._key,n,r,i),a.add(`__BASE`,0,0,0,r,i),this.setTexture(a),this.videoTexture=a,this.videoTextureSource=a.source[0],this.videoTextureSource.setFlipY(this.glFlipY),this.emit(s.VIDEO_TEXTURE,this,a)),this.setSizeToFrame(),this.updateDisplayOrigin()):o.update(),this.isStalled=!1,this.metadata=t;var l=t.mediaTime;c&&(this._lastUpdate=l,this.emit(s.VIDEO_CREATED,this,r,i),this.frameReady||(this.frameReady=!0,this.emit(s.VIDEO_PLAY,this))),this._playingMarker?l>=this._markerOut&&(n.loop?(n.currentTime=this._markerIn,this.emit(s.VIDEO_LOOP,this)):(this.stop(!1),this.emit(s.VIDEO_COMPLETE,this))):l<this._lastUpdate&&this.emit(s.VIDEO_LOOP,this),this._lastUpdate=l,this._getFrame?(this.removeEventHandlers(),n.pause(),this._getFrame=!1):this._rfvCallbackId=this.video.requestVideoFrameCallback(this.requestVideoFrame.bind(this))}},play:function(e,t,n){t===void 0&&(t=-1),n===void 0&&(n=u.MAX_SAFE_INTEGER);var r=this.video;return!r||this.isPlaying()?(r||console.warn(`Video not loaded`),this):(e===void 0&&(e=r.loop),r.loop=e,this._markerIn=t,this._markerOut=n,this._playingMarker=t>-1&&n>t&&n<u.MAX_SAFE_INTEGER,this._playCalled||(this._getFrame=!1,this._rfvCallbackId=r.requestVideoFrameCallback(this.requestVideoFrame.bind(this)),this._playCalled=!0,this.createPlayPromise()),this)},getFirstFrame:function(){var e=this.video;return!e||this.isPlaying()?(e||console.warn(`Video not loaded`),this):(this._playCalled||(this._getFrame=!0,this._rfvCallbackId=e.requestVideoFrameCallback(this.requestVideoFrame.bind(this)),this.createPlayPromise()),this)},addLoadEventHandlers:function(){var e=this.video;e&&(e.addEventListener(`error`,this._loadCallbackHandler),e.addEventListener(`abort`,this._loadCallbackHandler),e.addEventListener(`loadedmetadata`,this._metadataCallbackHandler))},removeLoadEventHandlers:function(){var e=this.video;e&&(e.removeEventListener(`error`,this._loadCallbackHandler),e.removeEventListener(`abort`,this._loadCallbackHandler))},addEventHandlers:function(){var e=this.video;if(e){var t=this._callbacks;for(var n in t)e.addEventListener(n,t[n])}},removeEventHandlers:function(){var e=this.video;if(e){var t=this._callbacks;for(var n in t)e.removeEventListener(n,t[n])}},createPlayPromise:function(e){e===void 0&&(e=!0);var t=this.video,n=t.play();if(n!==void 0){var r=this.playSuccess.bind(this),i=this.playError.bind(this);if(!e){var a=this;i=function(){a.failedPlayAttempts++}}n.then(r).catch(i)}else t.addEventListener(`playing`,this._callbacks.legacy),e||this.failedPlayAttempts++},addMarker:function(e,t,n){return!isNaN(t)&&t>=0&&!isNaN(n)&&n>t&&(this.markers[e]=[t,n]),this},playMarker:function(e,t){var n=this.markers[e];return n&&this.play(t,n[0],n[1]),this},removeMarker:function(e){return delete this.markers[e],this},snapshot:function(e,t){return e===void 0&&(e=this.width),t===void 0&&(t=this.height),this.snapshotArea(0,0,this.width,this.height,e,t)},snapshotArea:function(e,t,n,r,i,a){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=this.width),r===void 0&&(r=this.height),i===void 0&&(i=n),a===void 0&&(a=r);var o=this.video,s=this.snapshotTexture;return s?(s.setSize(i,a),o&&s.context.drawImage(o,e,t,n,r,0,0,i,a)):(s=this.scene.sys.textures.createCanvas(f(),i,a),this.snapshotTexture=s,o&&s.context.drawImage(o,e,t,n,r,0,0,i,a)),s.update()},saveSnapshotTexture:function(e){return this.snapshotTexture?this.scene.sys.textures.renameTexture(this.snapshotTexture.key,e):this.snapshotTexture=this.scene.sys.textures.createCanvas(e,this.width,this.height),this.snapshotTexture},playSuccess:function(){if(this._playCalled){this.addEventHandlers(),this._codePaused=!1,this.touchLocked&&(this.touchLocked=!1,this.emit(s.VIDEO_UNLOCKED,this));var e=this.scene.sys.sound;e&&e.mute&&this.setMute(!0),this._markerIn>-1&&(this.video.currentTime=this._markerIn)}},playError:function(e){var t=e.name;t===`NotAllowedError`?(this.touchLocked=!0,this.playWhenUnlocked=!0,this.failedPlayAttempts=1,this.emit(s.VIDEO_LOCKED,this)):t===`NotSupportedError`?(this.stop(!1),this.emit(s.VIDEO_UNSUPPORTED,this,e)):(this.stop(!1),this.emit(s.VIDEO_ERROR,this,e))},legacyPlayHandler:function(){var e=this.video;e&&(this.playSuccess(),e.removeEventListener(`playing`,this._callbacks.legacy))},playingHandler:function(){this.isStalled=!1,this.emit(s.VIDEO_PLAYING,this)},loadErrorHandler:function(e){this.stop(!1),this.emit(s.VIDEO_ERROR,this,e)},metadataHandler:function(e){this.emit(s.VIDEO_METADATA,this,e)},setSizeToFrame:function(e){e||=this.frame,this.width=e.realWidth,this.height=e.realHeight,this.scaleX!==1&&(this.scaleX=this.displayWidth/this.width),this.scaleY!==1&&(this.scaleY=this.displayHeight/this.height);var t=this.input;return t&&!t.customHitArea&&(t.hitArea.width=this.width,t.hitArea.height=this.height),this},stalledHandler:function(e){this.isStalled=!0,this.emit(s.VIDEO_STALLED,this,e)},completeHandler:function(){this._playCalled=!1,this.emit(s.VIDEO_COMPLETE,this)},preUpdate:function(e,t){!this.video||!this._playCalled||this.touchLocked&&this.playWhenUnlocked&&(this.retry+=t,this.retry>=this.retryInterval&&(this.createPlayPromise(!1),this.retry=0))},seekTo:function(e){var t=this.video;if(t){var n=t.duration;if(n!==1/0&&!isNaN(n)){var r=n*e;this.setCurrentTime(r)}}return this},getCurrentTime:function(){return this.video?this.video.currentTime:0},setCurrentTime:function(e){var t=this.video;if(t){if(typeof e==`string`){var n=e[0],r=parseFloat(e.substr(1));n===`+`?e=t.currentTime+r:n===`-`&&(e=t.currentTime-r)}t.currentTime=e}return this},seekingHandler:function(){this.isSeeking=!0,this.emit(s.VIDEO_SEEKING,this)},seekedHandler:function(){this.isSeeking=!1,this.emit(s.VIDEO_SEEKED,this)},getProgress:function(){var e=this.video;if(e){var t=e.duration;if(t!==1/0&&!isNaN(t))return e.currentTime/t}return-1},getDuration:function(){return this.video?this.video.duration:0},setMute:function(e){e===void 0&&(e=!0),this._codeMuted=e;var t=this.video;return t&&(t.muted=this._systemMuted?!0:e),this},isMuted:function(){return this._codeMuted},globalMute:function(e,t){this._systemMuted=t;var n=this.video;n&&(n.muted=this._codeMuted?!0:t)},globalPause:function(){this._systemPaused=!0,this.video&&!this.video.ended&&(this.removeEventHandlers(),this.video.pause())},globalResume:function(){this._systemPaused=!1,this.video&&!this._codePaused&&!this.video.ended&&this.createPlayPromise()},setPaused:function(e){e===void 0&&(e=!0);var t=this.video;return this._codePaused=e,t&&!t.ended&&(e?t.paused||(this.removeEventHandlers(),t.pause()):e||(this._playCalled?t.paused&&!this._systemPaused&&this.createPlayPromise():this.play())),this},pause:function(){return this.setPaused(!0)},resume:function(){return this.setPaused(!1)},getVolume:function(){return this.video?this.video.volume:1},setVolume:function(e){return e===void 0&&(e=1),this.video&&(this.video.volume=r(e,0,1)),this},getPlaybackRate:function(){return this.video?this.video.playbackRate:1},setPlaybackRate:function(e){return this.video&&(this.video.playbackRate=e),this},getLoop:function(){return this.video?this.video.loop:!1},setLoop:function(e){return e===void 0&&(e=!0),this.video&&(this.video.loop=e),this},isPlaying:function(){return this.video?!(this.video.paused||this.video.ended):!1},isPaused:function(){return this.video&&this._playCalled&&this.video.paused||this._codePaused||this._systemPaused},saveTexture:function(e,t){return t===void 0&&(t=!0),this.videoTexture&&(this.scene.sys.textures.renameTexture(this._key,e),this.videoTextureSource.setFlipY(t)),this._key=e,this.glFlipY=t,!!this.videoTexture},stop:function(e){e===void 0&&(e=!0);var t=this.video;return t&&(this.removeEventHandlers(),t.cancelVideoFrameCallback(this._rfvCallbackId),t.pause()),this.retry=0,this._playCalled=!1,e&&this.emit(s.VIDEO_STOP,this),this},removeVideoElement:function(){var e=this.video;if(e){for(e.parentNode&&e.parentNode.removeChild(e);e.hasChildNodes();)e.removeChild(e.firstChild);e.removeAttribute(`autoplay`),e.removeAttribute(`src`),this.video=null}},preDestroy:function(){this.stop(!1),this.removeLoadEventHandlers(),this.removeVideoElement();var e=this.scene.sys.game.events;e.off(c.PAUSE,this.globalPause,this),e.off(c.RESUME,this.globalResume,this);var t=this.scene.sys.sound;t&&t.off(d.GLOBAL_MUTE,this.globalMute,this)}})},58352(e){e.exports=function(e,t,n,r){t.videoTexture&&(n.addToRenderList(t),e.batchSprite(t,t.frame,n,r))}},11511(e,t,n){var r=n(25305),i=n(44603),a=n(23568),o=n(18471);i.register(`video`,function(e,t){e===void 0&&(e={});var n=a(e,`key`,null),i=new o(this.scene,0,0,n);return t!==void 0&&(e.add=t),r(this.scene,i,e),i})},89025(e,t,n){var r=n(18471);n(39429).register(`video`,function(e,t,n){return this.displayList.add(new r(this.scene,e,t,n))})},10247(e,t,n){var r=n(29747),i=r,a=r;i=n(29849),a=n(58352),e.exports={renderWebGL:i,renderCanvas:a}},29849(e){e.exports=function(e,t,n,r){if(t.videoTexture){n.camera.addToRenderList(t);var i=t.customRenderNodes,a=t.defaultRenderNodes;(i.Submitter||a.Submitter).run(n,t,r,0,i.Texturer||a.Texturer,i.Transformer||a.Transformer)}}},41481(e,t,n){var r=n(10312),i=n(96503),a=n(87902),o=n(83419),s=n(31401),c=n(95643),l=n(87841),u=n(37303);e.exports=new o({Extends:c,Mixins:[s.Depth,s.GetBounds,s.Origin,s.Transform,s.ScrollFactor,s.Visible],initialize:function(e,t,n,i,a){i===void 0&&(i=1),a===void 0&&(a=i),c.call(this,e,`Zone`),this.setPosition(t,n),this.width=i,this.height=a,this.blendMode=r.NORMAL,this.updateDisplayOrigin()},displayWidth:{get:function(){return this.scaleX*this.width},set:function(e){this.scaleX=e/this.width}},displayHeight:{get:function(){return this.scaleY*this.height},set:function(e){this.scaleY=e/this.height}},setSize:function(e,t,n){n===void 0&&(n=!0),this.width=e,this.height=t,this.updateDisplayOrigin();var r=this.input;return n&&r&&!r.customHitArea&&(r.hitArea.width=e,r.hitArea.height=t),this},setDisplaySize:function(e,t){return this.displayWidth=e,this.displayHeight=t,this},setCircleDropZone:function(e){return this.setDropZone(new i(0,0,e),a)},setRectangleDropZone:function(e,t){return this.setDropZone(new l(0,0,e,t),u)},setDropZone:function(e,t){return this.input||this.setInteractive(e,t,!0),this},setAlpha:function(){},setBlendMode:function(){},renderCanvas:function(e,t,n){n.addToRenderList(t)},renderWebGL:function(e,t,n){n.camera.addToRenderList(t)}})},95261(e,t,n){var r=n(44603),i=n(23568),a=n(41481);r.register(`zone`,function(e){var t=i(e,`x`,0),n=i(e,`y`,0),r=i(e,`width`,1),o=i(e,`height`,r);return new a(this.scene,t,n,r,o)})},84175(e,t,n){var r=n(41481);n(39429).register(`zone`,function(e,t,n,i){return this.displayList.add(new r(this.scene,e,t,n,i))})},95166(e){e.exports=function(e){return e.radius>0?Math.PI*e.radius*e.radius:0}},96503(e,t,n){var r=n(83419),i=n(87902),a=n(26241),o=n(79124),s=n(23777),c=n(28176);e.exports=new r({initialize:function(e,t,n){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),this.type=s.CIRCLE,this.x=e,this.y=t,this._radius=n,this._diameter=n*2},contains:function(e,t){return i(this,e,t)},getPoint:function(e,t){return a(this,e,t)},getPoints:function(e,t,n){return o(this,e,t,n)},getRandomPoint:function(e){return c(this,e)},setTo:function(e,t,n){return this.x=e,this.y=t,this._radius=n,this._diameter=n*2,this},setEmpty:function(){return this._radius=0,this._diameter=0,this},setPosition:function(e,t){return t===void 0&&(t=e),this.x=e,this.y=t,this},isEmpty:function(){return this._radius<=0},radius:{get:function(){return this._radius},set:function(e){this._radius=e,this._diameter=e*2}},diameter:{get:function(){return this._diameter},set:function(e){this._diameter=e,this._radius=e*.5}},left:{get:function(){return this.x-this._radius},set:function(e){this.x=e+this._radius}},right:{get:function(){return this.x+this._radius},set:function(e){this.x=e-this._radius}},top:{get:function(){return this.y-this._radius},set:function(e){this.y=e+this._radius}},bottom:{get:function(){return this.y+this._radius},set:function(e){this.y=e-this._radius}}})},71562(e){e.exports=function(e){return 2*(Math.PI*e.radius)}},92110(e,t,n){var r=n(26099);e.exports=function(e,t,n){return n===void 0&&(n=new r),n.x=e.x+e.radius*Math.cos(t),n.y=e.y+e.radius*Math.sin(t),n}},42250(e,t,n){var r=n(96503);e.exports=function(e){return new r(e.x,e.y,e.radius)}},87902(e){e.exports=function(e,t,n){return e.radius>0&&t>=e.left&&t<=e.right&&n>=e.top&&n<=e.bottom?(e.x-t)*(e.x-t)+(e.y-n)*(e.y-n)<=e.radius*e.radius:!1}},5698(e,t,n){var r=n(87902);e.exports=function(e,t){return r(e,t.x,t.y)}},70588(e,t,n){var r=n(87902);e.exports=function(e,t){return r(e,t.x,t.y)&&r(e,t.right,t.y)&&r(e,t.x,t.bottom)&&r(e,t.right,t.bottom)}},26394(e){e.exports=function(e,t){return t.setTo(e.x,e.y,e.radius)}},76278(e){e.exports=function(e,t){return e.x===t.x&&e.y===t.y&&e.radius===t.radius}},2074(e,t,n){var r=n(87841);e.exports=function(e,t){return t===void 0&&(t=new r),t.x=e.left,t.y=e.top,t.width=e.diameter,t.height=e.diameter,t}},26241(e,t,n){var r=n(92110),i=n(62945),a=n(36383),o=n(26099);e.exports=function(e,t,n){return n===void 0&&(n=new o),r(e,i(t,0,a.TAU),n)}},79124(e,t,n){var r=n(71562),i=n(92110),a=n(62945),o=n(36383);e.exports=function(e,t,n,s){s===void 0&&(s=[]),!t&&n>0&&(t=r(e)/n);for(var c=0;c<t;c++){var l=a(c/t,0,o.TAU);s.push(i(e,l))}return s}},50884(e){e.exports=function(e,t,n){return e.x+=t,e.y+=n,e}},39212(e){e.exports=function(e,t){return e.x+=t.x,e.y+=t.y,e}},28176(e,t,n){var r=n(26099);e.exports=function(e,t){t===void 0&&(t=new r);var n=2*Math.PI*Math.random(),i=Math.random()+Math.random(),a=i>1?2-i:i,o=a*Math.cos(n),s=a*Math.sin(n);return t.x=e.x+o*e.radius,t.y=e.y+s*e.radius,t}},88911(e,t,n){var r=n(96503);r.Area=n(95166),r.Circumference=n(71562),r.CircumferencePoint=n(92110),r.Clone=n(42250),r.Contains=n(87902),r.ContainsPoint=n(5698),r.ContainsRect=n(70588),r.CopyFrom=n(26394),r.Equals=n(76278),r.GetBounds=n(2074),r.GetPoint=n(26241),r.GetPoints=n(79124),r.Offset=n(50884),r.OffsetPoint=n(39212),r.Random=n(28176),e.exports=r},23777(e){e.exports={CIRCLE:0,ELLIPSE:1,LINE:2,POINT:3,POLYGON:4,RECTANGLE:5,TRIANGLE:6}},78874(e){e.exports=function(e){return e.isEmpty()?0:e.getMajorRadius()*e.getMinorRadius()*Math.PI}},92990(e){e.exports=function(e){var t=e.width/2,n=e.height/2,r=(t-n)**2/(t+n)**2;return Math.PI*(t+n)*(1+3*r/(10+Math.sqrt(4-3*r)))}},79522(e,t,n){var r=n(26099);e.exports=function(e,t,n){n===void 0&&(n=new r);var i=e.width/2,a=e.height/2;return n.x=e.x+i*Math.cos(t),n.y=e.y+a*Math.sin(t),n}},58102(e,t,n){var r=n(8497);e.exports=function(e){return new r(e.x,e.y,e.width,e.height)}},81154(e){e.exports=function(e,t,n){if(e.width<=0||e.height<=0)return!1;var r=(t-e.x)/e.width,i=(n-e.y)/e.height;return r*=r,i*=i,r+i<.25}},46662(e,t,n){var r=n(81154);e.exports=function(e,t){return r(e,t.x,t.y)}},1632(e,t,n){var r=n(81154);e.exports=function(e,t){return r(e,t.x,t.y)&&r(e,t.right,t.y)&&r(e,t.x,t.bottom)&&r(e,t.right,t.bottom)}},65534(e){e.exports=function(e,t){return t.setTo(e.x,e.y,e.width,e.height)}},8497(e,t,n){var r=n(83419),i=n(81154),a=n(90549),o=n(48320),s=n(23777),c=n(24820);e.exports=new r({initialize:function(e,t,n,r){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=0),this.type=s.ELLIPSE,this.x=e,this.y=t,this.width=n,this.height=r},contains:function(e,t){return i(this,e,t)},getPoint:function(e,t){return a(this,e,t)},getPoints:function(e,t,n){return o(this,e,t,n)},getRandomPoint:function(e){return c(this,e)},setTo:function(e,t,n,r){return this.x=e,this.y=t,this.width=n,this.height=r,this},setEmpty:function(){return this.width=0,this.height=0,this},setPosition:function(e,t){return t===void 0&&(t=e),this.x=e,this.y=t,this},setSize:function(e,t){return t===void 0&&(t=e),this.width=e,this.height=t,this},isEmpty:function(){return this.width<=0||this.height<=0},getMinorRadius:function(){return Math.min(this.width,this.height)/2},getMajorRadius:function(){return Math.max(this.width,this.height)/2},left:{get:function(){return this.x-this.width/2},set:function(e){this.x=e+this.width/2}},right:{get:function(){return this.x+this.width/2},set:function(e){this.x=e-this.width/2}},top:{get:function(){return this.y-this.height/2},set:function(e){this.y=e+this.height/2}},bottom:{get:function(){return this.y+this.height/2},set:function(e){this.y=e-this.height/2}}})},36146(e){e.exports=function(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}},23694(e,t,n){var r=n(87841);e.exports=function(e,t){return t===void 0&&(t=new r),t.x=e.left,t.y=e.top,t.width=e.width,t.height=e.height,t}},90549(e,t,n){var r=n(79522),i=n(62945),a=n(36383),o=n(26099);e.exports=function(e,t,n){return n===void 0&&(n=new o),r(e,i(t,0,a.TAU),n)}},48320(e,t,n){var r=n(92990),i=n(79522),a=n(62945),o=n(36383);e.exports=function(e,t,n,s){s===void 0&&(s=[]),!t&&n>0&&(t=r(e)/n);for(var c=0;c<t;c++){var l=a(c/t,0,o.TAU);s.push(i(e,l))}return s}},73424(e){e.exports=function(e,t,n){return e.x+=t,e.y+=n,e}},44808(e){e.exports=function(e,t){return e.x+=t.x,e.y+=t.y,e}},24820(e,t,n){var r=n(26099);e.exports=function(e,t){t===void 0&&(t=new r);var n=Math.random()*Math.PI*2,i=Math.sqrt(Math.random());return t.x=e.x+i*Math.cos(n)*e.width/2,t.y=e.y+i*Math.sin(n)*e.height/2,t}},49203(e,t,n){var r=n(8497);r.Area=n(78874),r.Circumference=n(92990),r.CircumferencePoint=n(79522),r.Clone=n(58102),r.Contains=n(81154),r.ContainsPoint=n(46662),r.ContainsRect=n(1632),r.CopyFrom=n(65534),r.Equals=n(36146),r.GetBounds=n(23694),r.GetPoint=n(90549),r.GetPoints=n(48320),r.Offset=n(73424),r.OffsetPoint=n(44808),r.Random=n(24820),e.exports=r},55738(e,t,n){var r=n(23777),i=n(79291),a={Circle:n(88911),Ellipse:n(49203),Intersects:n(91865),Line:n(2529),Polygon:n(58423),Rectangle:n(93232),Triangle:n(84435)};a=i(!1,a,r),e.exports=a},2044(e,t,n){var r=n(20339);e.exports=function(e,t){return r(e.x,e.y,t.x,t.y)<=e.radius+t.radius}},81491(e){e.exports=function(e,t){var n=t.width/2,r=t.height/2,i=Math.abs(e.x-t.x-n),a=Math.abs(e.y-t.y-r),o=n+e.radius,s=r+e.radius;if(i>o||a>s)return!1;if(i<=n||a<=r)return!0;var c=i-n,l=a-r,u=c*c,d=l*l,f=e.radius*e.radius;return u+d<=f}},63376(e,t,n){var r=n(26099),i=n(2044);e.exports=function(e,t,n){if(n===void 0&&(n=[]),i(e,t)){var a=e.x,o=e.y,s=e.radius,c=t.x,l=t.y,u=t.radius,d,f,p,m,h;if(o===l)h=(u*u-s*s-c*c+a*a)/(2*(a-c)),d=1,f=-2*l,p=c*c+h*h-2*c*h+l*l-u*u,m=f*f-4*d*p,m===0?n.push(new r(h,-f/(2*d))):m>0&&(n.push(new r(h,(-f+Math.sqrt(m))/(2*d))),n.push(new r(h,(-f-Math.sqrt(m))/(2*d))));else{var g=(a-c)/(o-l),_=(u*u-s*s-c*c+a*a-l*l+o*o)/(2*(o-l));d=g*g+1,f=2*o*g-2*_*g-2*a,p=a*a+o*o+_*_-s*s-2*o*_,m=f*f-4*d*p,m===0?(h=-f/(2*d),n.push(new r(h,_-h*g))):m>0&&(h=(-f+Math.sqrt(m))/(2*d),n.push(new r(h,_-h*g)),h=(-f-Math.sqrt(m))/(2*d),n.push(new r(h,_-h*g)))}}return n}},97439(e,t,n){var r=n(4042),i=n(81491);e.exports=function(e,t,n){if(n===void 0&&(n=[]),i(e,t)){var a=t.getLineA(),o=t.getLineB(),s=t.getLineC(),c=t.getLineD();r(a,e,n),r(o,e,n),r(s,e,n),r(c,e,n)}return n}},4042(e,t,n){var r=n(26099),i=n(80462);e.exports=function(e,t,n){if(n===void 0&&(n=[]),i(e,t)){var a=e.x1,o=e.y1,s=e.x2,c=e.y2,l=t.x,u=t.y,d=t.radius,f=s-a,p=c-o,m=a-l,h=o-u,g=f*f+p*p,_=2*(f*m+p*h),v=m*m+h*h-d*d,y=_*_-4*g*v,b,x;if(y===0){var S=-_/(2*g);b=a+S*f,x=o+S*p,S>=0&&S<=1&&n.push(new r(b,x))}else if(y>0){var C=(-_-Math.sqrt(y))/(2*g);b=a+C*f,x=o+C*p,C>=0&&C<=1&&n.push(new r(b,x));var w=(-_+Math.sqrt(y))/(2*g);b=a+w*f,x=o+w*p,w>=0&&w<=1&&n.push(new r(b,x))}}return n}},36100(e,t,n){var r=n(25836);e.exports=function(e,t,n,i){n===void 0&&(n=!1);var a=e.x1,o=e.y1,s=e.x2,c=e.y2,l=t.x1,u=t.y1,d=t.x2,f=t.y2,p=s-a,m=c-o,h=d-l,g=f-u,_=p*g-m*h;if(_===0)return null;var v,y,b;if(n){if(v=(p*(u-o)+m*(a-l))/(h*m-g*p),p!==0)y=(l+h*v-a)/p;else if(m!==0)y=(u+g*v-o)/m;else return null;if(y<0||v<0||v>1)return null;b=y}else{if(v=((l-a)*g-(u-o)*h)/_,y=((o-u)*p-(a-l)*m)/_,v<0||v>1||y<0||y>1)return null;b=v}return i===void 0&&(i=new r),i.set(a+p*b,o+m*b,b)}},3073(e,t,n){var r=n(36100),i=n(23031),a=n(25836),o=new i,s=new a;e.exports=function(e,t,n,i){n===void 0&&(n=!1),i===void 0&&(i=new a);var c=!1;i.set(),s.set();for(var l=t[t.length-1],u=0;u<t.length;u++){var d=t[u];o.setTo(l.x,l.y,d.x,d.y),l=d,r(e,o,n,s)&&(!c||s.z<i.z)&&(i.copy(s),c=!0)}return c?i:null}},56362(e,t,n){var r=n(25836),i=n(61369),a=n(3073),o=new r;e.exports=function(e,t,n,r){r===void 0&&(r=new i),Array.isArray(t)||(t=[t]);var s=!1;r.set(),o.set();for(var c=0;c<t.length;c++)a(e,t[c].points,n,o)&&(!s||o.z<r.z)&&(r.set(o.x,o.y,o.z,c),s=!0);return s?r:null}},60646(e,t,n){var r=n(26099),i=n(76112),a=n(92773);e.exports=function(e,t,n){if(n===void 0&&(n=[]),a(e,t))for(var o=t.getLineA(),s=t.getLineB(),c=t.getLineC(),l=t.getLineD(),u=[new r,new r,new r,new r],d=[i(o,e,u[0]),i(s,e,u[1]),i(c,e,u[2]),i(l,e,u[3])],f=0;f<4;f++)d[f]&&n.push(u[f]);return n}},71147(e,t,n){var r=n(61369),i=n(56362),a=new(n(23031));function o(e,t,n,o,s){var c=Math.cos(e),l=Math.sin(e);a.setTo(t,n,t+c,n+l);var u=i(a,o,!0);u&&s.push(new r(u.x,u.y,e,u.w))}function s(e,t){return e.z-t.z}e.exports=function(e,t,n){Array.isArray(n)||(n=[n]);for(var r=[],i=[],a=0;a<n.length;a++)for(var c=n[a].points,l=0;l<c.length;l++){var u=Math.atan2(c[l].y-t,c[l].x-e);i.indexOf(u)===-1&&(o(u,e,t,n,r),o(u-1e-5,e,t,n,r),o(u+1e-5,e,t,n,r),i.push(u))}return r.sort(s)}},68389(e,t,n){var r=n(87841),i=n(59996);e.exports=function(e,t,n){return n===void 0&&(n=new r),i(e,t)&&(n.x=Math.max(e.x,t.x),n.y=Math.max(e.y,t.y),n.width=Math.min(e.right,t.right)-n.x,n.height=Math.min(e.bottom,t.bottom)-n.y),n}},52784(e,t,n){var r=n(60646),i=n(59996);e.exports=function(e,t,n){if(n===void 0&&(n=[]),i(e,t)){var a=e.getLineA(),o=e.getLineB(),s=e.getLineC(),c=e.getLineD();r(a,t,n),r(o,t,n),r(s,t,n),r(c,t,n)}return n}},26341(e,t,n){var r=n(89265),i=n(60646);e.exports=function(e,t,n){if(n===void 0&&(n=[]),r(e,t)){var a=t.getLineA(),o=t.getLineB(),s=t.getLineC();i(a,e,n),i(o,e,n),i(s,e,n)}return n}},38720(e,t,n){var r=n(4042),i=n(67636);e.exports=function(e,t,n){if(n===void 0&&(n=[]),i(e,t)){var a=e.getLineA(),o=e.getLineB(),s=e.getLineC();r(a,t,n),r(o,t,n),r(s,t,n)}return n}},13882(e,t,n){var r=n(26099),i=n(2822),a=n(76112);e.exports=function(e,t,n){if(n===void 0&&(n=[]),i(e,t))for(var o=e.getLineA(),s=e.getLineB(),c=e.getLineC(),l=[new r,new r,new r],u=[a(o,t,l[0]),a(s,t,l[1]),a(c,t,l[2])],d=0;d<3;d++)u[d]&&n.push(l[d]);return n}},75636(e,t,n){var r=n(82944),i=n(13882);e.exports=function(e,t,n){if(n===void 0&&(n=[]),r(e,t)){var a=t.getLineA(),o=t.getLineB(),s=t.getLineC();i(e,a,n),i(e,o,n),i(e,s,n)}return n}},80462(e,t,n){var r=n(87902),i=new(n(26099));e.exports=function(e,t,n){if(n===void 0&&(n=i),r(t,e.x1,e.y1))return n.x=e.x1,n.y=e.y1,!0;if(r(t,e.x2,e.y2))return n.x=e.x2,n.y=e.y2,!0;var a=e.x2-e.x1,o=e.y2-e.y1,s=t.x-e.x1,c=t.y-e.y1,l=a*a+o*o,u=a,d=o;if(l>0){var f=(s*a+c*o)/l;u*=f,d*=f}return n.x=e.x1+u,n.y=e.y1+d,u*u+d*d<=l&&u*a+d*o>=0&&r(t,n.x,n.y)}},76112(e){e.exports=function(e,t,n){var r=e.x1,i=e.y1,a=e.x2,o=e.y2,s=t.x1,c=t.y1,l=t.x2,u=t.y2;if(r===a&&i===o||s===l&&c===u)return!1;var d=(u-c)*(a-r)-(l-s)*(o-i);if(d===0)return!1;var f=((l-s)*(i-c)-(u-c)*(r-s))/d,p=((a-r)*(i-c)-(o-i)*(r-s))/d;return f<0||f>1||p<0||p>1?!1:(n&&(n.x=r+f*(a-r),n.y=i+f*(o-i)),!0)}},92773(e){e.exports=function(e,t){var n=e.x1,r=e.y1,i=e.x2,a=e.y2,o=t.x,s=t.y,c=t.right,l=t.bottom,u=0;if(n>=o&&n<=c&&r>=s&&r<=l||i>=o&&i<=c&&a>=s&&a<=l)return!0;if(n<o&&i>=o){if(u=r+(a-r)*(o-n)/(i-n),u>s&&u<=l)return!0}else if(n>c&&i<=c&&(u=r+(a-r)*(c-n)/(i-n),u>=s&&u<=l))return!0;if(r<s&&a>=s){if(u=n+(i-n)*(s-r)/(a-r),u>=o&&u<=c)return!0}else if(r>l&&a<=l&&(u=n+(i-n)*(l-r)/(a-r),u>=o&&u<=c))return!0;return!1}},16204(e){e.exports=function(e,t,n){n===void 0&&(n=1);var r=t.x1,i=t.y1,a=t.x2,o=t.y2,s=e.x,c=e.y,l=(a-r)*(a-r)+(o-i)*(o-i);if(l===0)return!1;var u=((s-r)*(a-r)+(c-i)*(o-i))/l;if(u<0)return Math.sqrt((r-s)*(r-s)+(i-c)*(i-c))<=n;if(u>=0&&u<=1){var d=((i-c)*(a-r)-(r-s)*(o-i))/l;return Math.abs(d)*Math.sqrt(l)<=n}else return Math.sqrt((a-s)*(a-s)+(o-c)*(o-c))<=n}},14199(e,t,n){var r=n(16204);e.exports=function(e,t){if(!r(e,t))return!1;var n=Math.min(t.x1,t.x2),i=Math.max(t.x1,t.x2),a=Math.min(t.y1,t.y2),o=Math.max(t.y1,t.y2);return e.x>=n&&e.x<=i&&e.y>=a&&e.y<=o}},59996(e){e.exports=function(e,t){return e.width<=0||e.height<=0||t.width<=0||t.height<=0?!1:!(e.right<t.x||e.bottom<t.y||e.x>t.right||e.y>t.bottom)}},89265(e,t,n){var r=n(76112),i=n(37303),a=n(48653),o=n(77493);e.exports=function(e,t){if(t.left>e.right||t.right<e.left||t.top>e.bottom||t.bottom<e.top)return!1;var n=t.getLineA(),s=t.getLineB(),c=t.getLineC();if(i(e,n.x1,n.y1)||i(e,n.x2,n.y2)||i(e,s.x1,s.y1)||i(e,s.x2,s.y2)||i(e,c.x1,c.y1)||i(e,c.x2,c.y2))return!0;var l=e.getLineA(),u=e.getLineB(),d=e.getLineC(),f=e.getLineD();return r(n,l)||r(n,u)||r(n,d)||r(n,f)||r(s,l)||r(s,u)||r(s,d)||r(s,f)||r(c,l)||r(c,u)||r(c,d)||r(c,f)?!0:a(t,o(e),!0).length>0}},84411(e){e.exports=function(e,t,n,r,i,a){return a===void 0&&(a=0),!(t>e.right+a||n<e.left-a||r>e.bottom+a||i<e.top-a)}},67636(e,t,n){var r=n(80462),i=n(10690);e.exports=function(e,t){return e.left>t.right||e.right<t.left||e.top>t.bottom||e.bottom<t.top?!1:!!(i(e,t.x,t.y)||r(e.getLineA(),t)||r(e.getLineB(),t)||r(e.getLineC(),t))}},2822(e,t,n){var r=n(76112);e.exports=function(e,t){return!!(e.contains(t.x1,t.y1)||e.contains(t.x2,t.y2)||r(e.getLineA(),t)||r(e.getLineB(),t)||r(e.getLineC(),t))}},82944(e,t,n){var r=n(48653),i=n(71694),a=n(76112);e.exports=function(e,t){if(e.left>t.right||e.right<t.left||e.top>t.bottom||e.bottom<t.top)return!1;var n=e.getLineA(),o=e.getLineB(),s=e.getLineC(),c=t.getLineA(),l=t.getLineB(),u=t.getLineC();if(a(n,c)||a(n,l)||a(n,u)||a(o,c)||a(o,l)||a(o,u)||a(s,c)||a(s,l)||a(s,u))return!0;var d=i(e),f=r(t,d,!0);return f.length>0||(d=i(t),f=r(e,d,!0),f.length>0)}},91865(e,t,n){e.exports={CircleToCircle:n(2044),CircleToRectangle:n(81491),GetCircleToCircle:n(63376),GetCircleToRectangle:n(97439),GetLineToCircle:n(4042),GetLineToLine:n(36100),GetLineToPoints:n(3073),GetLineToPolygon:n(56362),GetLineToRectangle:n(60646),GetRaysFromPointToPolygon:n(71147),GetRectangleIntersection:n(68389),GetRectangleToRectangle:n(52784),GetRectangleToTriangle:n(26341),GetTriangleToCircle:n(38720),GetTriangleToLine:n(13882),GetTriangleToTriangle:n(75636),LineToCircle:n(80462),LineToLine:n(76112),LineToRectangle:n(92773),PointToLine:n(16204),PointToLineSegment:n(14199),RectangleToRectangle:n(59996),RectangleToTriangle:n(89265),RectangleToValues:n(84411),TriangleToCircle:n(67636),TriangleToLine:n(2822),TriangleToTriangle:n(82944)}},91938(e){e.exports=function(e){return Math.atan2(e.y2-e.y1,e.x2-e.x1)}},84993(e){e.exports=function(e,t,n){t===void 0&&(t=1),n===void 0&&(n=[]);var r=Math.round(e.x1),i=Math.round(e.y1),a=Math.round(e.x2),o=Math.round(e.y2),s=Math.abs(a-r),c=Math.abs(o-i),l=r<a?1:-1,u=i<o?1:-1,d=s-c;n.push({x:r,y:i});for(var f=1;!(r===a&&i===o);){var p=d<<1;p>-c&&(d-=c,r+=l),p<s&&(d+=s,i+=u),f%t===0&&n.push({x:r,y:i}),f++}return n}},36469(e){e.exports=function(e,t,n){var r=t-(e.x1+e.x2)/2,i=n-(e.y1+e.y2)/2;return e.x1+=r,e.y1+=i,e.x2+=r,e.y2+=i,e}},31116(e,t,n){var r=n(23031);e.exports=function(e){return new r(e.x1,e.y1,e.x2,e.y2)}},59944(e){e.exports=function(e,t){return t.setTo(e.x1,e.y1,e.x2,e.y2)}},59220(e){e.exports=function(e,t){return e.x1===t.x1&&e.y1===t.y1&&e.x2===t.x2&&e.y2===t.y2}},78177(e,t,n){var r=n(35001);e.exports=function(e,t,n){n===void 0&&(n=t);var i=r(e),a=e.x2-e.x1,o=e.y2-e.y1;return t&&(e.x1-=a/i*t,e.y1-=o/i*t),n&&(e.x2+=a/i*n,e.y2+=o/i*n),e}},26708(e,t,n){var r=n(52816),i=n(6113),a=n(26099);e.exports=function(e,t,n,o,s){o===void 0&&(o=0),s===void 0&&(s=[]);var c=[],l=e.x1,u=e.y1,d=e.x2-l,f=e.y2-u,p=i(t,s),m,h,g=n-1;for(m=0;m<g;m++)h=p(m/g),c.push(new a(l+d*h,u+f*h));if(h=p(1),c.push(new a(l+d*h,u+f*h)),o>0){var _=c[0],v=[_];for(m=1;m<c.length-1;m++){var y=c[m];r(_,y)>=o&&(v.push(y),_=y)}var b=c[c.length-1];return r(_,b)<o&&v.pop(),v.push(b),v}else return c}},32125(e,t,n){var r=n(26099);e.exports=function(e,t){return t===void 0&&(t=new r),t.x=(e.x1+e.x2)/2,t.y=(e.y1+e.y2)/2,t}},99569(e,t,n){var r=n(26099);e.exports=function(e,t,n){n===void 0&&(n=new r);var i=e.x1,a=e.y1,o=e.x2,s=e.y2,c=(o-i)*(o-i)+(s-a)*(s-a);if(c===0)return n;var l=((t.x-i)*(o-i)+(t.y-a)*(s-a))/c;return n.x=i+l*(o-i),n.y=a+l*(s-a),n}},34638(e,t,n){var r=n(36383),i=n(91938),a=n(26099);e.exports=function(e,t){t===void 0&&(t=new a);var n=i(e)-r.PI_OVER_2;return t.x=Math.cos(n),t.y=Math.sin(n),t}},13151(e,t,n){var r=n(26099);e.exports=function(e,t,n){return n===void 0&&(n=new r),n.x=e.x1+(e.x2-e.x1)*t,n.y=e.y1+(e.y2-e.y1)*t,n}},15258(e,t,n){var r=n(35001),i=n(26099);e.exports=function(e,t,n,a){a===void 0&&(a=[]),!t&&n>0&&(t=r(e)/n);for(var o=e.x1,s=e.y1,c=e.x2,l=e.y2,u=0;u<t;u++){var d=u/t,f=o+(c-o)*d,p=s+(l-s)*d;a.push(new i(f,p))}return a}},26408(e){e.exports=function(e,t){var n=e.x1,r=e.y1,i=e.x2,a=e.y2,o=(i-n)*(i-n)+(a-r)*(a-r);if(o===0)return!1;var s=((r-t.y)*(i-n)-(n-t.x)*(a-r))/o;return Math.abs(s)*Math.sqrt(o)}},98770(e){e.exports=function(e){return Math.abs(e.y1-e.y2)}},35001(e){e.exports=function(e){return Math.sqrt((e.x2-e.x1)*(e.x2-e.x1)+(e.y2-e.y1)*(e.y2-e.y1))}},23031(e,t,n){var r=n(83419),i=n(13151),a=n(15258),o=n(23777),s=n(65822),c=n(26099);e.exports=new r({initialize:function(e,t,n,r){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=0),this.type=o.LINE,this.x1=e,this.y1=t,this.x2=n,this.y2=r},getPoint:function(e,t){return i(this,e,t)},getPoints:function(e,t,n){return a(this,e,t,n)},getRandomPoint:function(e){return s(this,e)},setTo:function(e,t,n,r){return e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=0),this.x1=e,this.y1=t,this.x2=n,this.y2=r,this},setFromObjects:function(e,t){return this.x1=e.x,this.y1=e.y,this.x2=t.x,this.y2=t.y,this},getPointA:function(e){return e===void 0&&(e=new c),e.set(this.x1,this.y1),e},getPointB:function(e){return e===void 0&&(e=new c),e.set(this.x2,this.y2),e},left:{get:function(){return Math.min(this.x1,this.x2)},set:function(e){this.x1<=this.x2?this.x1=e:this.x2=e}},right:{get:function(){return Math.max(this.x1,this.x2)},set:function(e){this.x1>this.x2?this.x1=e:this.x2=e}},top:{get:function(){return Math.min(this.y1,this.y2)},set:function(e){this.y1<=this.y2?this.y1=e:this.y2=e}},bottom:{get:function(){return Math.max(this.y1,this.y2)},set:function(e){this.y1>this.y2?this.y1=e:this.y2=e}}})},64795(e,t,n){var r=n(36383),i=n(15994),a=n(91938);e.exports=function(e){return i(a(e)-r.PI_OVER_2,-Math.PI,Math.PI)}},52616(e,t,n){var r=n(36383),i=n(91938);e.exports=function(e){return Math.cos(i(e)-r.PI_OVER_2)}},87231(e,t,n){var r=n(36383),i=n(91938);e.exports=function(e){return Math.sin(i(e)-r.PI_OVER_2)}},89662(e){e.exports=function(e,t,n){return e.x1+=t,e.y1+=n,e.x2+=t,e.y2+=n,e}},71165(e){e.exports=function(e){return-((e.x2-e.x1)/(e.y2-e.y1))}},65822(e,t,n){var r=n(26099);e.exports=function(e,t){t===void 0&&(t=new r);var n=Math.random();return t.x=e.x1+n*(e.x2-e.x1),t.y=e.y1+n*(e.y2-e.y1),t}},69777(e,t,n){var r=n(91938),i=n(64795);e.exports=function(e,t){return 2*i(t)-Math.PI-r(e)}},39706(e,t,n){var r=n(64400);e.exports=function(e,t){return r(e,(e.x1+e.x2)/2,(e.y1+e.y2)/2,t)}},82585(e,t,n){var r=n(64400);e.exports=function(e,t,n){return r(e,t.x,t.y,n)}},64400(e){e.exports=function(e,t,n,r){var i=Math.cos(r),a=Math.sin(r),o=e.x1-t,s=e.y1-n;return e.x1=o*i-s*a+t,e.y1=o*a+s*i+n,o=e.x2-t,s=e.y2-n,e.x2=o*i-s*a+t,e.y2=o*a+s*i+n,e}},62377(e){e.exports=function(e,t,n,r,i){return e.x1=t,e.y1=n,e.x2=t+Math.cos(r)*i,e.y2=n+Math.sin(r)*i,e}},71366(e){e.exports=function(e){return(e.y2-e.y1)/(e.x2-e.x1)}},10809(e){e.exports=function(e){return Math.abs(e.x1-e.x2)}},2529(e,t,n){var r=n(23031);r.Angle=n(91938),r.BresenhamPoints=n(84993),r.CenterOn=n(36469),r.Clone=n(31116),r.CopyFrom=n(59944),r.Equals=n(59220),r.Extend=n(78177),r.GetEasedPoints=n(26708),r.GetMidPoint=n(32125),r.GetNearestPoint=n(99569),r.GetNormal=n(34638),r.GetPoint=n(13151),r.GetPoints=n(15258),r.GetShortestDistance=n(26408),r.Height=n(98770),r.Length=n(35001),r.NormalAngle=n(64795),r.NormalX=n(52616),r.NormalY=n(87231),r.Offset=n(89662),r.PerpSlope=n(71165),r.Random=n(65822),r.ReflectAngle=n(69777),r.Rotate=n(39706),r.RotateAroundPoint=n(82585),r.RotateAroundXY=n(64400),r.SetToAngle=n(62377),r.Slope=n(71366),r.Width=n(10809),e.exports=r},12306(e,t,n){var r=n(25717);e.exports=function(e){return new r(e.points)}},63814(e){e.exports=function(e,t,n){for(var r=!1,i=-1,a=e.points.length-1;++i<e.points.length;a=i){var o=e.points[i].x,s=e.points[i].y,c=e.points[a].x,l=e.points[a].y;(s<=n&&n<l||l<=n&&n<s)&&t<(c-o)*(n-s)/(l-s)+o&&(r=!r)}return r}},99338(e,t,n){var r=n(63814);e.exports=function(e,t){return r(e,t.x,t.y)}},94811(e){function t(e,t,r){r||=2;var a=t&&t.length,o=a?t[0]*r:e.length,s=n(e,0,o,r,!0),c=[];if(!s||s.next===s.prev)return c;var u,d,f,p,m,h,g;if(a&&(s=l(e,t,s,r)),e.length>80*r){u=f=e[0],d=p=e[1];for(var _=r;_<o;_+=r)m=e[_],h=e[_+1],m<u&&(u=m),h<d&&(d=h),m>f&&(f=m),h>p&&(p=h);g=Math.max(f-u,p-d),g=g===0?0:32767/g}return i(s,c,r,u,d,g,0),c}function n(e,t,n,r,i){var a,o;if(i===M(e,t,n,r)>0)for(a=t;a<n;a+=r)o=k(a,e[a],e[a+1],o);else for(a=n-r;a>=t;a-=r)o=k(a,e[a],e[a+1],o);return o&&x(o,o.next)&&(A(o),o=o.next),o}function r(e,t){if(!e)return e;t||=e;var n=e,r;do if(r=!1,!n.steiner&&(x(n,n.next)||b(n.prev,n,n.next)===0)){if(A(n),n=t=n.prev,n===n.next)break;r=!0}else n=n.next;while(r||n!==t);return t}function i(e,t,n,l,u,d,f){if(e){!f&&d&&m(e,l,u,d);for(var p=e,h,g;e.prev!==e.next;){if(h=e.prev,g=e.next,d?o(e,l,u,d):a(e)){t.push(h.i/n|0),t.push(e.i/n|0),t.push(g.i/n|0),A(e),e=g.next,p=g.next;continue}if(e=g,e===p){f?f===1?(e=s(r(e),t,n),i(e,t,n,l,u,d,2)):f===2&&c(e,t,n,l,u,d):i(r(e),t,n,l,u,d,1);break}}}}function a(e){var t=e.prev,n=e,r=e.next;if(b(t,n,r)>=0)return!1;for(var i=t.x,a=n.x,o=r.x,s=t.y,c=n.y,l=r.y,u=i<a?i<o?i:o:a<o?a:o,d=s<c?s<l?s:l:c<l?c:l,f=i>a?i>o?i:o:a>o?a:o,p=s>c?s>l?s:l:c>l?c:l,m=r.next;m!==t;){if(m.x>=u&&m.x<=f&&m.y>=d&&m.y<=p&&v(i,s,a,c,o,l,m.x,m.y)&&b(m.prev,m,m.next)>=0)return!1;m=m.next}return!0}function o(e,t,n,r){var i=e.prev,a=e,o=e.next;if(b(i,a,o)>=0)return!1;for(var s=i.x,c=a.x,l=o.x,u=i.y,d=a.y,f=o.y,p=s<c?s<l?s:l:c<l?c:l,m=u<d?u<f?u:f:d<f?d:f,h=s>c?s>l?s:l:c>l?c:l,_=u>d?u>f?u:f:d>f?d:f,y=g(p,m,t,n,r),x=g(h,_,t,n,r),S=e.prevZ,C=e.nextZ;S&&S.z>=y&&C&&C.z<=x;){if(S.x>=p&&S.x<=h&&S.y>=m&&S.y<=_&&S!==i&&S!==o&&v(s,u,c,d,l,f,S.x,S.y)&&b(S.prev,S,S.next)>=0||(S=S.prevZ,C.x>=p&&C.x<=h&&C.y>=m&&C.y<=_&&C!==i&&C!==o&&v(s,u,c,d,l,f,C.x,C.y)&&b(C.prev,C,C.next)>=0))return!1;C=C.nextZ}for(;S&&S.z>=y;){if(S.x>=p&&S.x<=h&&S.y>=m&&S.y<=_&&S!==i&&S!==o&&v(s,u,c,d,l,f,S.x,S.y)&&b(S.prev,S,S.next)>=0)return!1;S=S.prevZ}for(;C&&C.z<=x;){if(C.x>=p&&C.x<=h&&C.y>=m&&C.y<=_&&C!==i&&C!==o&&v(s,u,c,d,l,f,C.x,C.y)&&b(C.prev,C,C.next)>=0)return!1;C=C.nextZ}return!0}function s(e,t,n){var i=e;do{var a=i.prev,o=i.next.next;!x(a,o)&&S(a,i,i.next,o)&&E(a,o)&&E(o,a)&&(t.push(a.i/n|0),t.push(i.i/n|0),t.push(o.i/n|0),A(i),A(i.next),i=e=o),i=i.next}while(i!==e);return r(i)}function c(e,t,n,a,o,s){var c=e;do{for(var l=c.next.next;l!==c.prev;){if(c.i!==l.i&&y(c,l)){var u=O(c,l);c=r(c,c.next),u=r(u,u.next),i(c,t,n,a,o,s,0),i(u,t,n,a,o,s,0);return}l=l.next}c=c.next}while(c!==e)}function l(e,t,r,i){var a=[],o,s,c,l,f;for(o=0,s=t.length;o<s;o++)c=t[o]*i,l=o<s-1?t[o+1]*i:e.length,f=n(e,c,l,i,!1),f===f.next&&(f.steiner=!0),a.push(_(f));for(a.sort(u),o=0;o<a.length;o++)r=d(a[o],r);return r}function u(e,t){return e.x-t.x}function d(e,t){var n=f(e,t);if(!n)return t;var i=O(n,e);return r(i,i.next),r(n,n.next)}function f(e,t){var n=t,r=e.x,i=e.y,a=-1/0,o;do{if(i<=n.y&&i>=n.next.y&&n.next.y!==n.y){var s=n.x+(i-n.y)*(n.next.x-n.x)/(n.next.y-n.y);if(s<=r&&s>a&&(a=s,o=n.x<n.next.x?n:n.next,s===r))return o}n=n.next}while(n!==t);if(!o)return null;var c=o,l=o.x,u=o.y,d=1/0,f;n=o;do r>=n.x&&n.x>=l&&r!==n.x&&v(i<u?r:a,i,l,u,i<u?a:r,i,n.x,n.y)&&(f=Math.abs(i-n.y)/(r-n.x),E(n,e)&&(f<d||f===d&&(n.x>o.x||n.x===o.x&&p(o,n)))&&(o=n,d=f)),n=n.next;while(n!==c);return o}function p(e,t){return b(e.prev,e,t.prev)<0&&b(t.next,e,e.next)<0}function m(e,t,n,r){var i=e;do i.z===0&&(i.z=g(i.x,i.y,t,n,r)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next;while(i!==e);i.prevZ.nextZ=null,i.prevZ=null,h(i)}function h(e){var t,n,r,i,a,o,s,c,l=1;do{for(n=e,e=null,a=null,o=0;n;){for(o++,r=n,s=0,t=0;t<l&&(s++,r=r.nextZ,r);t++);for(c=l;s>0||c>0&&r;)s!==0&&(c===0||!r||n.z<=r.z)?(i=n,n=n.nextZ,s--):(i=r,r=r.nextZ,c--),a?a.nextZ=i:e=i,i.prevZ=a,a=i;n=r}a.nextZ=null,l*=2}while(o>1);return e}function g(e,t,n,r,i){return e=(e-n)*i|0,t=(t-r)*i|0,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,e|t<<1}function _(e){var t=e,n=e;do(t.x<n.x||t.x===n.x&&t.y<n.y)&&(n=t),t=t.next;while(t!==e);return n}function v(e,t,n,r,i,a,o,s){return(i-o)*(t-s)>=(e-o)*(a-s)&&(e-o)*(r-s)>=(n-o)*(t-s)&&(n-o)*(a-s)>=(i-o)*(r-s)}function y(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!T(e,t)&&(E(e,t)&&E(t,e)&&D(e,t)&&(b(e.prev,e,t.prev)||b(e,t.prev,t))||x(e,t)&&b(e.prev,e,e.next)>0&&b(t.prev,t,t.next)>0)}function b(e,t,n){return(t.y-e.y)*(n.x-t.x)-(t.x-e.x)*(n.y-t.y)}function x(e,t){return e.x===t.x&&e.y===t.y}function S(e,t,n,r){var i=w(b(e,t,n)),a=w(b(e,t,r)),o=w(b(n,r,e)),s=w(b(n,r,t));return!!(i!==a&&o!==s||i===0&&C(e,n,t)||a===0&&C(e,r,t)||o===0&&C(n,e,r)||s===0&&C(n,t,r))}function C(e,t,n){return t.x<=Math.max(e.x,n.x)&&t.x>=Math.min(e.x,n.x)&&t.y<=Math.max(e.y,n.y)&&t.y>=Math.min(e.y,n.y)}function w(e){return e>0?1:e<0?-1:0}function T(e,t){var n=e;do{if(n.i!==e.i&&n.next.i!==e.i&&n.i!==t.i&&n.next.i!==t.i&&S(n,n.next,e,t))return!0;n=n.next}while(n!==e);return!1}function E(e,t){return b(e.prev,e,e.next)<0?b(e,t,e.next)>=0&&b(e,e.prev,t)>=0:b(e,t,e.prev)<0||b(e,e.next,t)<0}function D(e,t){var n=e,r=!1,i=(e.x+t.x)/2,a=(e.y+t.y)/2;do n.y>a!=n.next.y>a&&n.next.y!==n.y&&i<(n.next.x-n.x)*(a-n.y)/(n.next.y-n.y)+n.x&&(r=!r),n=n.next;while(n!==e);return r}function O(e,t){var n=new j(e.i,e.x,e.y),r=new j(t.i,t.x,t.y),i=e.next,a=t.prev;return e.next=t,t.prev=e,n.next=i,i.prev=n,r.next=n,n.prev=r,a.next=r,r.prev=a,r}function k(e,t,n,r){var i=new j(e,t,n);return r?(i.next=r.next,i.prev=r,r.next.prev=i,r.next=i):(i.prev=i,i.next=i),i}function A(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function j(e,t,n){this.i=e,this.x=t,this.y=n,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}t.deviation=function(e,t,n,r){var i=t&&t.length,a=i?t[0]*n:e.length,o=Math.abs(M(e,0,a,n));if(i)for(var s=0,c=t.length;s<c;s++){var l=t[s]*n,u=s<c-1?t[s+1]*n:e.length;o-=Math.abs(M(e,l,u,n))}var d=0;for(s=0;s<r.length;s+=3){var f=r[s]*n,p=r[s+1]*n,m=r[s+2]*n;d+=Math.abs((e[f]-e[m])*(e[p+1]-e[f+1])-(e[f]-e[p])*(e[m+1]-e[f+1]))}return o===0&&d===0?0:Math.abs((d-o)/o)};function M(e,t,n,r){for(var i=0,a=t,o=n-r;a<n;a+=r)i+=(e[o]-e[a])*(e[a+1]+e[o+1]),o=a;return i}t.flatten=function(e){for(var t=e[0][0].length,n={vertices:[],holes:[],dimensions:t},r=0,i=0;i<e.length;i++){for(var a=0;a<e[i].length;a++)for(var o=0;o<t;o++)n.vertices.push(e[i][a][o]);i>0&&(r+=e[i-1].length,n.holes.push(r))}return n},e.exports=t},13829(e,t,n){var r=n(87841);e.exports=function(e,t){t===void 0&&(t=new r);for(var n=1/0,i=1/0,a=-n,o=-i,s,c=0;c<e.points.length;c++)s=e.points[c],n=Math.min(n,s.x),i=Math.min(i,s.y),a=Math.max(a,s.x),o=Math.max(o,s.y);return t.x=n,t.y=i,t.width=a-n,t.height=o-i,t}},26173(e){e.exports=function(e,t){t===void 0&&(t=[]);for(var n=0;n<e.points.length;n++)t.push(e.points[n].x),t.push(e.points[n].y);return t}},9564(e,t,n){var r=n(35001),i=n(23031),a=n(30052);e.exports=function(e,t,n,o){o===void 0&&(o=[]);var s=e.points,c=a(e);!t&&n>0&&(t=c/n);for(var l=0;l<t;l++)for(var u=l/t*c,d=0,f=0;f<s.length;f++){var p=s[f],m=s[(f+1)%s.length],h=new i(p.x,p.y,m.x,m.y),g=r(h);if(u<d||u>d+g){d+=g;continue}var _=h.getPoint((u-d)/g);o.push(_);break}return o}},30052(e,t,n){var r=n(35001),i=n(23031);e.exports=function(e){for(var t=e.points,n=0,a=0;a<t.length;a++){var o=t[a],s=t[(a+1)%t.length],c=new i(o.x,o.y,s.x,s.y);n+=r(c)}return n}},25717(e,t,n){var r=n(83419),i=n(63814),a=n(9564),o=n(23777);e.exports=new r({initialize:function(e){this.type=o.POLYGON,this.area=0,this.points=[],e&&this.setTo(e)},contains:function(e,t){return i(this,e,t)},setTo:function(e){if(this.area=0,this.points=[],typeof e==`string`&&(e=e.split(` `)),!Array.isArray(e))return this;for(var t,n=0;n<e.length;n++)t={x:0,y:0},typeof e[n]==`number`||typeof e[n]==`string`?(t.x=parseFloat(e[n]),t.y=parseFloat(e[n+1]),n++):Array.isArray(e[n])?(t.x=e[n][0],t.y=e[n][1]):(t.x=e[n].x,t.y=e[n].y),this.points.push(t);return this.calculateArea(),this},calculateArea:function(){if(this.points.length<3)return this.area=0,this.area;for(var e=0,t,n,r=0;r<this.points.length-1;r++)t=this.points[r],n=this.points[r+1],e+=(n.x-t.x)*(t.y+n.y);return t=this.points[0],n=this.points[this.points.length-1],e+=(t.x-n.x)*(n.y+t.y),this.area=-e*.5,this.area},getPoints:function(e,t,n){return a(this,e,t,n)}})},8133(e){e.exports=function(e){return e.points.reverse(),e}},29524(e){function t(e,t){var n=e.x-t.x,r=e.y-t.y;return n*n+r*r}function n(e,t,n){var r=t.x,i=t.y,a=n.x-r,o=n.y-i;if(a!==0||o!==0){var s=((e.x-r)*a+(e.y-i)*o)/(a*a+o*o);s>1?(r=n.x,i=n.y):s>0&&(r+=a*s,i+=o*s)}return a=e.x-r,o=e.y-i,a*a+o*o}function r(e,n){for(var r=e[0],i=[r],a,o=1,s=e.length;o<s;o++)a=e[o],t(a,r)>n&&(i.push(a),r=a);return r!==a&&i.push(a),i}function i(e,t,r,a,o){for(var s=a,c,l=t+1;l<r;l++){var u=n(e[l],e[t],e[r]);u>s&&(c=l,s=u)}s>a&&(c-t>1&&i(e,t,c,a,o),o.push(e[c]),r-c>1&&i(e,c,r,a,o))}function a(e,t){var n=e.length-1,r=[e[0]];return i(e,0,n,t,r),r.push(e[n]),r}e.exports=function(e,t,n){t===void 0&&(t=1),n===void 0&&(n=!1);var i=e.points;if(i.length>2){var o=t*t;n||(i=r(i,o)),e.setTo(a(i,o))}return e}},5469(e){var t=function(e,t){return e[0]=t[0],e[1]=t[1],e};e.exports=function(e){var n,r=[],i=e.points;for(n=0;n<i.length;n++)r.push([i[n].x,i[n].y]);var a=[];for(r.length>0&&a.push(t([0,0],r[0])),n=0;n<r.length-1;n++){var o=r[n],s=r[n+1],c=o[0],l=o[1],u=s[0],d=s[1];a.push([.85*c+.15*u,.85*l+.15*d]),a.push([.15*c+.85*u,.15*l+.85*d])}return r.length>1&&a.push(t([0,0],r[r.length-1])),e.setTo(a)}},24709(e){e.exports=function(e,t,n){for(var r=e.points,i=0;i<r.length;i++)r[i].x+=t,r[i].y+=n;return e}},58423(e,t,n){var r=n(25717);r.Clone=n(12306),r.Contains=n(63814),r.ContainsPoint=n(99338),r.Earcut=n(94811),r.GetAABB=n(13829),r.GetNumberArray=n(26173),r.GetPoints=n(9564),r.Perimeter=n(30052),r.Reverse=n(8133),r.Simplify=n(29524),r.Smooth=n(5469),r.Translate=n(24709),e.exports=r},39843(e){e.exports=function(e){return e.width*e.height}},98615(e){e.exports=function(e){return e.x=Math.ceil(e.x),e.y=Math.ceil(e.y),e}},31688(e){e.exports=function(e){return e.x=Math.ceil(e.x),e.y=Math.ceil(e.y),e.width=Math.ceil(e.width),e.height=Math.ceil(e.height),e}},67502(e){e.exports=function(e,t,n){return e.x=t-e.width/2,e.y=n-e.height/2,e}},65085(e,t,n){var r=n(87841);e.exports=function(e){return new r(e.x,e.y,e.width,e.height)}},37303(e){e.exports=function(e,t,n){return e.width<=0||e.height<=0?!1:e.x<=t&&e.x+e.width>=t&&e.y<=n&&e.y+e.height>=n}},96553(e,t,n){var r=n(37303);e.exports=function(e,t){return r(e,t.x,t.y)}},70273(e){e.exports=function(e,t){return t.width*t.height>e.width*e.height?!1:t.x>e.x&&t.x<e.right&&t.right>e.x&&t.right<e.right&&t.y>e.y&&t.y<e.bottom&&t.bottom>e.y&&t.bottom<e.bottom}},43459(e){e.exports=function(e,t){return t.setTo(e.x,e.y,e.width,e.height)}},77493(e){e.exports=function(e,t){return t===void 0&&(t=[]),t.push({x:e.x,y:e.y}),t.push({x:e.right,y:e.y}),t.push({x:e.right,y:e.bottom}),t.push({x:e.x,y:e.bottom}),t}},9219(e){e.exports=function(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}},53751(e,t,n){var r=n(8249);e.exports=function(e,t){var n=r(e);return n<r(t)?e.setSize(t.height*n,t.height):e.setSize(t.width,t.width/n),e.setPosition(t.centerX-e.width/2,t.centerY-e.height/2)}},16088(e,t,n){var r=n(8249);e.exports=function(e,t){var n=r(e);return n>r(t)?e.setSize(t.height*n,t.height):e.setSize(t.width,t.width/n),e.setPosition(t.centerX-e.width/2,t.centerY-e.height/2)}},80774(e){e.exports=function(e){return e.x=Math.floor(e.x),e.y=Math.floor(e.y),e}},83859(e){e.exports=function(e){return e.x=Math.floor(e.x),e.y=Math.floor(e.y),e.width=Math.floor(e.width),e.height=Math.floor(e.height),e}},19217(e,t,n){var r=n(87841),i=n(36383);e.exports=function(e,t){if(t===void 0&&(t=new r),e.length===0)return t;for(var n=Number.MAX_VALUE,a=Number.MAX_VALUE,o=i.MIN_SAFE_INTEGER,s=i.MIN_SAFE_INTEGER,c,l,u,d=0;d<e.length;d++)c=e[d],Array.isArray(c)?(l=c[0],u=c[1]):(l=c.x,u=c.y),n=Math.min(n,l),a=Math.min(a,u),o=Math.max(o,l),s=Math.max(s,u);return t.x=n,t.y=a,t.width=o-n,t.height=s-a,t}},9477(e,t,n){var r=n(87841);e.exports=function(e,t,n,i,a){return a===void 0&&(a=new r),a.setTo(Math.min(e,n),Math.min(t,i),Math.abs(e-n),Math.abs(t-i))}},8249(e){e.exports=function(e){return e.height===0?NaN:e.width/e.height}},27165(e,t,n){var r=n(26099);e.exports=function(e,t){return t===void 0&&(t=new r),t.x=e.centerX,t.y=e.centerY,t}},20812(e,t,n){var r=n(13019),i=n(26099);e.exports=function(e,t,n){if(n===void 0&&(n=new i),t<=0||t>=1)return n.x=e.x,n.y=e.y,n;var a=r(e)*t;return t>.5?(a-=e.width+e.height,a<=e.width?(n.x=e.right-a,n.y=e.bottom):(n.x=e.x,n.y=e.bottom-(a-e.width))):a<=e.width?(n.x=e.x+a,n.y=e.y):(n.x=e.right,n.y=e.y+(a-e.width)),n}},34819(e,t,n){var r=n(20812),i=n(13019);e.exports=function(e,t,n,a){a===void 0&&(a=[]),!t&&n>0&&(t=i(e)/n);for(var o=0;o<t;o++){var s=o/t;a.push(r(e,s))}return a}},51313(e,t,n){var r=n(26099);e.exports=function(e,t){return t===void 0&&(t=new r),t.x=e.width,t.y=e.height,t}},86091(e,t,n){var r=n(67502);e.exports=function(e,t,n){var i=e.centerX,a=e.centerY;return e.setSize(e.width+t*2,e.height+n*2),r(e,i,a)}},53951(e,t,n){var r=n(87841),i=n(59996);e.exports=function(e,t,n){return n===void 0&&(n=new r),i(e,t)?(n.x=Math.max(e.x,t.x),n.y=Math.max(e.y,t.y),n.width=Math.min(e.right,t.right)-n.x,n.height=Math.min(e.bottom,t.bottom)-n.y):n.setEmpty(),n}},14649(e,t,n){var r=n(13019),i=n(26099);e.exports=function(e,t,n,a){if(a===void 0&&(a=[]),!t&&!n)return a;t?n=Math.round(r(e)/t):t=r(e)/n;for(var o=e.x,s=e.y,c=0,l=0;l<n;l++)switch(a.push(new i(o,s)),c){case 0:o+=t,o>=e.right&&(c=1,s+=o-e.right,o=e.right);break;case 1:s+=t,s>=e.bottom&&(c=2,o-=s-e.bottom,s=e.bottom);break;case 2:o-=t,o<=e.left&&(c=3,s-=e.left-o,o=e.left);break;case 3:s-=t,s<=e.top&&(c=0,s=e.top);break}return a}},33595(e){e.exports=function(e,t){for(var n=e.x,r=e.right,i=e.y,a=e.bottom,o=0;o<t.length;o++)n=Math.min(n,t[o].x),r=Math.max(r,t[o].x),i=Math.min(i,t[o].y),a=Math.max(a,t[o].y);return e.x=n,e.y=i,e.width=r-n,e.height=a-i,e}},20074(e){e.exports=function(e,t){var n=Math.min(e.x,t.x),r=Math.max(e.right,t.right);e.x=n,e.width=r-n;var i=Math.min(e.y,t.y),a=Math.max(e.bottom,t.bottom);return e.y=i,e.height=a-i,e}},92171(e){e.exports=function(e,t,n){var r=Math.min(e.x,t),i=Math.max(e.right,t);e.x=r,e.width=i-r;var a=Math.min(e.y,n),o=Math.max(e.bottom,n);return e.y=a,e.height=o-a,e}},42981(e){e.exports=function(e,t,n){return e.x+=t,e.y+=n,e}},46907(e){e.exports=function(e,t){return e.x+=t.x,e.y+=t.y,e}},60170(e){e.exports=function(e,t){return e.x<t.right&&e.right>t.x&&e.y<t.bottom&&e.bottom>t.y}},13019(e){e.exports=function(e){return 2*(e.width+e.height)}},85133(e,t,n){var r=n(26099),i=n(39506);e.exports=function(e,t,n){n===void 0&&(n=new r),t=i(t);var a=Math.sin(t),o=Math.cos(t),s=o>0?e.width/2:e.width/-2,c=a>0?e.height/2:e.height/-2;return Math.abs(s*a)<Math.abs(c*o)?c=s*a/o:s=c*o/a,n.x=s+e.centerX,n.y=c+e.centerY,n}},26597(e,t,n){var r=n(26099);e.exports=function(e,t){return t===void 0&&(t=new r),t.x=e.x+Math.random()*e.width,t.y=e.y+Math.random()*e.height,t}},86470(e,t,n){var r=n(30976),i=n(70273),a=n(26099);e.exports=function(e,t,n){if(n===void 0&&(n=new a),i(e,t))switch(r(0,3)){case 0:n.x=e.x+Math.random()*(t.right-e.x),n.y=e.y+Math.random()*(t.top-e.y);break;case 1:n.x=t.x+Math.random()*(e.right-t.x),n.y=t.bottom+Math.random()*(e.bottom-t.bottom);break;case 2:n.x=e.x+Math.random()*(t.x-e.x),n.y=t.y+Math.random()*(e.bottom-t.y);break;case 3:n.x=t.right+Math.random()*(e.right-t.right),n.y=e.y+Math.random()*(t.bottom-e.y);break}return n}},87841(e,t,n){var r=n(83419),i=n(37303),a=n(20812),o=n(34819),s=n(23777),c=n(23031),l=n(26597);e.exports=new r({initialize:function(e,t,n,r){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=0),this.type=s.RECTANGLE,this.x=e,this.y=t,this.width=n,this.height=r},contains:function(e,t){return i(this,e,t)},getPoint:function(e,t){return a(this,e,t)},getPoints:function(e,t,n){return o(this,e,t,n)},getRandomPoint:function(e){return l(this,e)},setTo:function(e,t,n,r){return this.x=e,this.y=t,this.width=n,this.height=r,this},setEmpty:function(){return this.setTo(0,0,0,0)},setPosition:function(e,t){return t===void 0&&(t=e),this.x=e,this.y=t,this},setSize:function(e,t){return t===void 0&&(t=e),this.width=e,this.height=t,this},isEmpty:function(){return this.width<=0||this.height<=0},getLineA:function(e){return e===void 0&&(e=new c),e.setTo(this.x,this.y,this.right,this.y),e},getLineB:function(e){return e===void 0&&(e=new c),e.setTo(this.right,this.y,this.right,this.bottom),e},getLineC:function(e){return e===void 0&&(e=new c),e.setTo(this.right,this.bottom,this.x,this.bottom),e},getLineD:function(e){return e===void 0&&(e=new c),e.setTo(this.x,this.bottom,this.x,this.y),e},left:{get:function(){return this.x},set:function(e){e>=this.right?this.width=0:this.width=this.right-e,this.x=e}},right:{get:function(){return this.x+this.width},set:function(e){e<=this.x?this.width=0:this.width=e-this.x}},top:{get:function(){return this.y},set:function(e){e>=this.bottom?this.height=0:this.height=this.bottom-e,this.y=e}},bottom:{get:function(){return this.y+this.height},set:function(e){e<=this.y?this.height=0:this.height=e-this.y}},centerX:{get:function(){return this.x+this.width/2},set:function(e){this.x=e-this.width/2}},centerY:{get:function(){return this.y+this.height/2},set:function(e){this.y=e-this.height/2}}})},94845(e){e.exports=function(e,t){return e.width===t.width&&e.height===t.height}},31730(e){e.exports=function(e,t,n){return n===void 0&&(n=t),e.width*=t,e.height*=n,e}},36899(e,t,n){var r=n(87841);e.exports=function(e,t,n){n===void 0&&(n=new r);var i=Math.min(e.x,t.x),a=Math.min(e.y,t.y),o=Math.max(e.right,t.right)-i,s=Math.max(e.bottom,t.bottom)-a;return n.setTo(i,a,o,s)}},93232(e,t,n){var r=n(87841);r.Area=n(39843),r.Ceil=n(98615),r.CeilAll=n(31688),r.CenterOn=n(67502),r.Clone=n(65085),r.Contains=n(37303),r.ContainsPoint=n(96553),r.ContainsRect=n(70273),r.CopyFrom=n(43459),r.Decompose=n(77493),r.Equals=n(9219),r.FitInside=n(53751),r.FitOutside=n(16088),r.Floor=n(80774),r.FloorAll=n(83859),r.FromPoints=n(19217),r.FromXY=n(9477),r.GetAspectRatio=n(8249),r.GetCenter=n(27165),r.GetPoint=n(20812),r.GetPoints=n(34819),r.GetSize=n(51313),r.Inflate=n(86091),r.Intersection=n(53951),r.MarchingAnts=n(14649),r.MergePoints=n(33595),r.MergeRect=n(20074),r.MergeXY=n(92171),r.Offset=n(42981),r.OffsetPoint=n(46907),r.Overlaps=n(60170),r.Perimeter=n(13019),r.PerimeterPoint=n(85133),r.Random=n(26597),r.RandomOutside=n(86470),r.SameDimensions=n(94845),r.Scale=n(31730),r.Union=n(36899),e.exports=r},41658(e){e.exports=function(e){var t=e.x1,n=e.y1,r=e.x2,i=e.y2,a=e.x3,o=e.y3;return Math.abs(((a-t)*(i-n)-(r-t)*(o-n))/2)}},39208(e,t,n){var r=n(16483);e.exports=function(e,t,n){var i=Math.sqrt(3)/2*n;return new r(e,t,e+n/2,t+i,e-n/2,t+i)}},39545(e,t,n){var r=n(94811),i=n(16483);e.exports=function(e,t,n,a,o){t===void 0&&(t=null),n===void 0&&(n=1),a===void 0&&(a=1),o===void 0&&(o=[]);for(var s=r(e,t),c,l,u,d,f,p,m,h,g,_=0;_<s.length;_+=3)c=s[_],l=s[_+1],u=s[_+2],d=e[c*2]*n,f=e[c*2+1]*a,p=e[l*2]*n,m=e[l*2+1]*a,h=e[u*2]*n,g=e[u*2+1]*a,o.push(new i(d,f,p,m,h,g));return o}},90301(e,t,n){var r=n(16483);e.exports=function(e,t,n,i){return i===void 0&&(i=n),new r(e,t,e,t-i,e+n,t)}},23707(e,t,n){var r=n(97523),i=n(13584);e.exports=function(e,t,n,a){a===void 0&&(a=r);var o=a(e);return i(e,t-o.x,n-o.y)}},97523(e,t,n){var r=n(26099);e.exports=function(e,t){return t===void 0&&(t=new r),t.x=(e.x1+e.x2+e.x3)/3,t.y=(e.y1+e.y2+e.y3)/3,t}},24951(e,t,n){var r=n(26099);function i(e,t,n,r){return e*r-t*n}e.exports=function(e,t){t===void 0&&(t=new r);var n=e.x3,a=e.y3,o=e.x1-n,s=e.y1-a,c=e.x2-n,l=e.y2-a,u=2*i(o,s,c,l),d=i(s,o*o+s*s,l,c*c+l*l),f=i(o,o*o+s*s,c,c*c+l*l);return t.x=n-d/u,t.y=a+f/u,t}},85614(e,t,n){var r=n(96503);e.exports=function(e,t){t===void 0&&(t=new r);var n=e.x1,i=e.y1,a=e.x2,o=e.y2,s=e.x3,c=e.y3,l=a-n,u=o-i,d=s-n,f=c-i,p=l*(n+a)+u*(i+o),m=d*(n+s)+f*(i+c),h=2*(l*(c-o)-u*(s-a)),g,_;if(Math.abs(h)<1e-6){var v=Math.min(n,a,s),y=Math.min(i,o,c);g=(Math.max(n,a,s)-v)*.5,_=(Math.max(i,o,c)-y)*.5,t.x=v+g,t.y=y+_,t.radius=Math.sqrt(g*g+_*_)}else t.x=(f*p-u*m)/h,t.y=(l*m-d*p)/h,g=t.x-n,_=t.y-i,t.radius=Math.sqrt(g*g+_*_);return t}},74422(e,t,n){var r=n(16483);e.exports=function(e){return new r(e.x1,e.y1,e.x2,e.y2,e.x3,e.y3)}},10690(e){e.exports=function(e,t,n){var r=e.x3-e.x1,i=e.y3-e.y1,a=e.x2-e.x1,o=e.y2-e.y1,s=t-e.x1,c=n-e.y1,l=r*r+i*i,u=r*a+i*o,d=r*s+i*c,f=a*a+o*o,p=a*s+o*c,m=l*f-u*u,h=m===0?0:1/m,g=(f*d-u*p)*h,_=(l*p-u*d)*h;return g>=0&&_>=0&&g+_<1}},48653(e){e.exports=function(e,t,n,r){n===void 0&&(n=!1),r===void 0&&(r=[]);for(var i=e.x3-e.x1,a=e.y3-e.y1,o=e.x2-e.x1,s=e.y2-e.y1,c=i*i+a*a,l=i*o+a*s,u=o*o+s*s,d=c*u-l*l,f=d===0?0:1/d,p,m,h,g,_,v,y=e.x1,b=e.y1,x=0;x<t.length&&(h=t[x].x-y,g=t[x].y-b,_=i*h+a*g,v=o*h+s*g,p=(u*_-l*v)*f,m=(c*v-l*_)*f,!(p>=0&&m>=0&&p+m<1&&(r.push({x:t[x].x,y:t[x].y}),n)));x++);return r}},96006(e,t,n){var r=n(10690);e.exports=function(e,t){return r(e,t.x,t.y)}},71326(e){e.exports=function(e,t){return t.setTo(e.x1,e.y1,e.x2,e.y2,e.x3,e.y3)}},71694(e){e.exports=function(e,t){return t===void 0&&(t=[]),t.push({x:e.x1,y:e.y1}),t.push({x:e.x2,y:e.y2}),t.push({x:e.x3,y:e.y3}),t}},33522(e){e.exports=function(e,t){return e.x1===t.x1&&e.y1===t.y1&&e.x2===t.x2&&e.y2===t.y2&&e.x3===t.x3&&e.y3===t.y3}},20437(e,t,n){var r=n(26099),i=n(35001);e.exports=function(e,t,n){n===void 0&&(n=new r);var a=e.getLineA(),o=e.getLineB(),s=e.getLineC();if(t<=0||t>=1)return n.x=a.x1,n.y=a.y1,n;var c=i(a),l=i(o),u=i(s),d=(c+l+u)*t,f=0;return d<c?(f=d/c,n.x=a.x1+(a.x2-a.x1)*f,n.y=a.y1+(a.y2-a.y1)*f):d>c+l?(d-=c+l,f=d/u,n.x=s.x1+(s.x2-s.x1)*f,n.y=s.y1+(s.y2-s.y1)*f):(d-=c,f=d/l,n.x=o.x1+(o.x2-o.x1)*f,n.y=o.y1+(o.y2-o.y1)*f),n}},80672(e,t,n){var r=n(35001),i=n(26099);e.exports=function(e,t,n,a){a===void 0&&(a=[]);var o=e.getLineA(),s=e.getLineB(),c=e.getLineC(),l=r(o),u=r(s),d=r(c),f=l+u+d;!t&&n>0&&(t=f/n);for(var p=0;p<t;p++){var m=p/t*f,h=0,g=new i;m<l?(h=m/l,g.x=o.x1+(o.x2-o.x1)*h,g.y=o.y1+(o.y2-o.y1)*h):m>l+u?(m-=l+u,h=m/d,g.x=c.x1+(c.x2-c.x1)*h,g.y=c.y1+(c.y2-c.y1)*h):(m-=l,h=m/u,g.x=s.x1+(s.x2-s.x1)*h,g.y=s.y1+(s.y2-s.y1)*h),a.push(g)}return a}},39757(e,t,n){var r=n(26099);function i(e,t,n,r){var i=e-n,a=t-r,o=i*i+a*a;return Math.sqrt(o)}e.exports=function(e,t){t===void 0&&(t=new r);var n=e.x1,a=e.y1,o=e.x2,s=e.y2,c=e.x3,l=e.y3,u=i(c,l,o,s),d=i(n,a,c,l),f=i(o,s,n,a),p=u+d+f;return t.x=(n*u+o*d+c*f)/p,t.y=(a*u+s*d+l*f)/p,t}},13584(e){e.exports=function(e,t,n){return e.x1+=t,e.y1+=n,e.x2+=t,e.y2+=n,e.x3+=t,e.y3+=n,e}},1376(e,t,n){var r=n(35001);e.exports=function(e){var t=e.getLineA(),n=e.getLineB(),i=e.getLineC();return r(t)+r(n)+r(i)}},90260(e,t,n){var r=n(26099);e.exports=function(e,t){t===void 0&&(t=new r);var n=e.x2-e.x1,i=e.y2-e.y1,a=e.x3-e.x1,o=e.y3-e.y1,s=Math.random(),c=Math.random();return s+c>=1&&(s=1-s,c=1-c),t.x=e.x1+(n*s+a*c),t.y=e.y1+(i*s+o*c),t}},52172(e,t,n){var r=n(99614),i=n(39757);e.exports=function(e,t){var n=i(e);return r(e,n.x,n.y,t)}},49907(e,t,n){var r=n(99614);e.exports=function(e,t,n){return r(e,t.x,t.y,n)}},99614(e){e.exports=function(e,t,n,r){var i=Math.cos(r),a=Math.sin(r),o=e.x1-t,s=e.y1-n;return e.x1=o*i-s*a+t,e.y1=o*a+s*i+n,o=e.x2-t,s=e.y2-n,e.x2=o*i-s*a+t,e.y2=o*a+s*i+n,o=e.x3-t,s=e.y3-n,e.x3=o*i-s*a+t,e.y3=o*a+s*i+n,e}},16483(e,t,n){var r=n(83419),i=n(10690),a=n(20437),o=n(80672),s=n(23777),c=n(23031),l=n(90260);e.exports=new r({initialize:function(e,t,n,r,i,a){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=0),i===void 0&&(i=0),a===void 0&&(a=0),this.type=s.TRIANGLE,this.x1=e,this.y1=t,this.x2=n,this.y2=r,this.x3=i,this.y3=a},contains:function(e,t){return i(this,e,t)},getPoint:function(e,t){return a(this,e,t)},getPoints:function(e,t,n){return o(this,e,t,n)},getRandomPoint:function(e){return l(this,e)},setTo:function(e,t,n,r,i,a){return e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=0),i===void 0&&(i=0),a===void 0&&(a=0),this.x1=e,this.y1=t,this.x2=n,this.y2=r,this.x3=i,this.y3=a,this},getLineA:function(e){return e===void 0&&(e=new c),e.setTo(this.x1,this.y1,this.x2,this.y2),e},getLineB:function(e){return e===void 0&&(e=new c),e.setTo(this.x2,this.y2,this.x3,this.y3),e},getLineC:function(e){return e===void 0&&(e=new c),e.setTo(this.x3,this.y3,this.x1,this.y1),e},left:{get:function(){return Math.min(this.x1,this.x2,this.x3)},set:function(e){var t=0;t=this.x1<=this.x2&&this.x1<=this.x3?this.x1-e:this.x2<=this.x1&&this.x2<=this.x3?this.x2-e:this.x3-e,this.x1-=t,this.x2-=t,this.x3-=t}},right:{get:function(){return Math.max(this.x1,this.x2,this.x3)},set:function(e){var t=0;t=this.x1>=this.x2&&this.x1>=this.x3?this.x1-e:this.x2>=this.x1&&this.x2>=this.x3?this.x2-e:this.x3-e,this.x1-=t,this.x2-=t,this.x3-=t}},top:{get:function(){return Math.min(this.y1,this.y2,this.y3)},set:function(e){var t=0;t=this.y1<=this.y2&&this.y1<=this.y3?this.y1-e:this.y2<=this.y1&&this.y2<=this.y3?this.y2-e:this.y3-e,this.y1-=t,this.y2-=t,this.y3-=t}},bottom:{get:function(){return Math.max(this.y1,this.y2,this.y3)},set:function(e){var t=0;t=this.y1>=this.y2&&this.y1>=this.y3?this.y1-e:this.y2>=this.y1&&this.y2>=this.y3?this.y2-e:this.y3-e,this.y1-=t,this.y2-=t,this.y3-=t}}})},84435(e,t,n){var r=n(16483);r.Area=n(41658),r.BuildEquilateral=n(39208),r.BuildFromPolygon=n(39545),r.BuildRight=n(90301),r.CenterOn=n(23707),r.Centroid=n(97523),r.CircumCenter=n(24951),r.CircumCircle=n(85614),r.Clone=n(74422),r.Contains=n(10690),r.ContainsArray=n(48653),r.ContainsPoint=n(96006),r.CopyFrom=n(71326),r.Decompose=n(71694),r.Equals=n(33522),r.GetPoint=n(20437),r.GetPoints=n(80672),r.InCenter=n(39757),r.Perimeter=n(1376),r.Offset=n(13584),r.Random=n(90260),r.Rotate=n(52172),r.RotateAroundPoint=n(49907),r.RotateAroundXY=n(99614),e.exports=r},74457(e){e.exports=function(e,t,n){return{gameObject:e,enabled:!0,draggable:!1,dropZone:!1,cursor:!1,target:null,camera:null,hitArea:t,hitAreaCallback:n,hitAreaDebug:null,customHitArea:!1,localX:0,localY:0,dragState:0,dragStartX:0,dragStartY:0,dragStartXGlobal:0,dragStartYGlobal:0,dragStartCamera:null,dragX:0,dragY:0}}},84409(e){e.exports=function(e,t){return function(n,r,i,a){var o=e.getPixelAlpha(r,i,a.texture.key,a.frame.name);return o&&o>=t}}},7003(e,t,n){var r=n(83419),i=n(93301),a=n(50792),o=n(8214),s=n(8443),c=n(78970),l=n(85098),u=n(42515),d=n(36210),f=n(61340),p=n(85955);e.exports=new r({initialize:function(e,t){this.game=e,this.scaleManager,this.canvas,this.config=t,this.enabled=!0,this.events=new a,this.isOver=!0,this.defaultCursor=``,this.keyboard=t.inputKeyboard?new c(this):null,this.mouse=t.inputMouse?new l(this):null,this.touch=t.inputTouch?new d(this):null,this.pointers=[],this.pointersTotal=t.inputActivePointers;for(var n=0;n<=this.pointersTotal;n++){var r=new u(this,n);r.smoothFactor=t.inputSmoothFactor,this.pointers.push(r)}this.mousePointer=t.inputMouse?this.pointers[0]:null,this.activePointer=this.pointers[0],this.globalTopOnly=!0,this.time=0,this._tempPoint={x:0,y:0},this._tempHitTest=[],this._tempMatrix=new f,this._tempMatrix2=new f,this._tempSkip=!1,this.mousePointerContainer=[this.mousePointer],e.events.once(s.BOOT,this.boot,this)},boot:function(){var e=this.game,t=e.events;this.canvas=e.canvas,this.scaleManager=e.scale,this.events.emit(o.MANAGER_BOOT),t.on(s.PRE_RENDER,this.preRender,this),t.once(s.DESTROY,this.destroy,this)},setCanvasOver:function(e){this.isOver=!0,this.events.emit(o.GAME_OVER,e)},setCanvasOut:function(e){this.isOver=!1,this.events.emit(o.GAME_OUT,e)},preRender:function(){var e=this.game.loop.now,t=this.game.loop.delta,n=this.game.scene.getScenes(!0,!0);this.time=e,this.events.emit(o.MANAGER_UPDATE);for(var r=0;r<n.length;r++){var i=n[r];if(i.sys.input&&i.sys.input.updatePoll(e,t)&&this.globalTopOnly)return}},setDefaultCursor:function(e){this.defaultCursor=e,this.canvas.style.cursor!==e&&(this.canvas.style.cursor=e)},setCursor:function(e){e.cursor&&(this.canvas.style.cursor=e.cursor)},resetCursor:function(e,t){(t||e&&e.cursor)&&this.canvas&&(this.canvas.style.cursor=this.defaultCursor)},addPointer:function(e){e===void 0&&(e=1);var t=[];this.pointersTotal+e>10&&(e=10-this.pointersTotal);for(var n=0;n<e;n++){var r=this.pointers.length,i=new u(this,r);i.smoothFactor=this.config.inputSmoothFactor,this.pointers.push(i),this.pointersTotal++,t.push(i)}return t},updateInputPlugins:function(e,t){var n=this.game.scene.getScenes(!1,!0);this._tempSkip=!1;for(var r=0;r<n.length;r++){var i=n[r];if(i.sys.input&&(i.sys.input.update(e,t)&&this.globalTopOnly||this._tempSkip))return}},onTouchStart:function(e){for(var t=this.pointers,n=[],r=0;r<e.changedTouches.length;r++)for(var a=e.changedTouches[r],o=1;o<t.length;o++){var s=t[o];if(!s.active){s.touchstart(a,e),this.activePointer=s,n.push(s);break}}this.updateInputPlugins(i.TOUCH_START,n)},onTouchMove:function(e){for(var t=this.pointers,n=[],r=0;r<e.changedTouches.length;r++)for(var a=e.changedTouches[r],o=1;o<t.length;o++){var s=t[o];if(s.active&&s.identifier===a.identifier){var c=document.elementFromPoint(a.clientX,a.clientY)===this.canvas;!this.isOver&&c?this.setCanvasOver(e):this.isOver&&!c&&this.setCanvasOut(e),this.isOver&&(s.touchmove(a,e),this.activePointer=s,n.push(s));break}}this.updateInputPlugins(i.TOUCH_MOVE,n)},onTouchEnd:function(e){for(var t=this.pointers,n=[],r=0;r<e.changedTouches.length;r++)for(var a=e.changedTouches[r],o=1;o<t.length;o++){var s=t[o];if(s.active&&s.identifier===a.identifier){s.touchend(a,e),n.push(s);break}}this.updateInputPlugins(i.TOUCH_END,n)},onTouchCancel:function(e){for(var t=this.pointers,n=[],r=0;r<e.changedTouches.length;r++)for(var a=e.changedTouches[r],o=1;o<t.length;o++){var s=t[o];if(s.active&&s.identifier===a.identifier){s.touchcancel(a,e),n.push(s);break}}this.updateInputPlugins(i.TOUCH_CANCEL,n)},onMouseDown:function(e){var t=this.mousePointer;t.down(e),t.updateMotion(),this.activePointer=t,this.updateInputPlugins(i.MOUSE_DOWN,this.mousePointerContainer)},onMouseMove:function(e){var t=this.mousePointer;t.move(e),t.updateMotion(),this.activePointer=t,this.updateInputPlugins(i.MOUSE_MOVE,this.mousePointerContainer)},onMouseUp:function(e){var t=this.mousePointer;t.up(e),t.updateMotion(),this.activePointer=t,this.updateInputPlugins(i.MOUSE_UP,this.mousePointerContainer)},onMouseWheel:function(e){var t=this.mousePointer;t.wheel(e),this.activePointer=t,this.updateInputPlugins(i.MOUSE_WHEEL,this.mousePointerContainer)},onPointerLockChange:function(e){var t=this.mouse.locked;this.mousePointer.locked=t,this.events.emit(o.POINTERLOCK_CHANGE,e,t)},inputCandidate:function(e,t){var n=e.input;if(!n||!n.enabled||!e.willRender(t))return!1;var r=!0,i=e.parentContainer;if(i)do{if(!i.willRender(t)){r=!1;break}i=i.parentContainer}while(i);return r},hitTest:function(e,t,n,r){r===void 0&&(r=this._tempHitTest);var i=this._tempPoint,a=n.scrollX,o=n.scrollY;r.length=0;var s=e.x,c=e.y;n.getWorldPoint(s,c,i),e.worldX=i.x,e.worldY=i.y;for(var l={x:0,y:0},u=this._tempMatrix,d=this._tempMatrix2,f=0;f<t.length;f++){var m=t[f];if(this.inputCandidate(m,n)){var h=i.x+a*m.scrollFactorX-a,g=i.y+o*m.scrollFactorY-o;m.parentContainer?(m.getWorldTransformMatrix(u,d),u.applyInverse(h,g,l)):p(h,g,m.x,m.y,m.rotation,m.scaleX,m.scaleY,l),this.pointWithinHitArea(m,l.x,l.y)&&r.push(m)}}return r},pointWithinHitArea:function(e,t,n){t+=e.displayOriginX,n+=e.displayOriginY;var r=e.input;return r&&r.hitAreaCallback(r.hitArea,t,n,e)?(r.localX=t,r.localY=n,!0):!1},pointWithinInteractiveObject:function(e,t,n){return e.hitArea?(t+=e.gameObject.displayOriginX,n+=e.gameObject.displayOriginY,e.localX=t,e.localY=n,e.hitAreaCallback(e.hitArea,t,n,e)):!1},transformPointer:function(e,t,n,r){var i=e.position,a=e.prevPosition;a.x=i.x,a.y=i.y;var o=this.scaleManager.transformX(t),s=this.scaleManager.transformY(n),c=e.smoothFactor;!r||c===0?(i.x=o,i.y=s):(i.x=o*c+a.x*(1-c),i.y=s*c+a.y*(1-c))},destroy:function(){this.events.removeAllListeners(),this.game.events.off(s.PRE_RENDER),this.keyboard&&this.keyboard.destroy(),this.mouse&&this.mouse.destroy(),this.touch&&this.touch.destroy();for(var e=0;e<this.pointers.length;e++)this.pointers[e].destroy();this.pointers=[],this._tempHitTest=[],this._tempMatrix.destroy(),this.canvas=null,this.game=null}})},48205(e,t,n){var r=n(96503),i=n(87902),a=n(83419),o=n(93301),s=n(74457),c=n(84409),l=n(20339),u=n(8497),d=n(81154),f=n(8214),p=n(50792),m=n(95540),h=n(23777),g=n(89639),_=n(41212),v=n(37277),y=n(87841),b=n(37303),x=n(44594),S=n(16483),C=n(10690),w=new a({Extends:p,initialize:function(e){p.call(this),this.scene=e,this.systems=e.sys,this.settings=e.sys.settings,this.manager=e.sys.game.input,this.pluginEvents=new p,this.enabled=!0,this.displayList,this.cameras,g.install(this),this.mouse=this.manager.mouse,this.topOnly=!0,this.pollRate=-1,this._pollTimer=0;var t={cancelled:!1};this._eventContainer={stopPropagation:function(){t.cancelled=!0}},this._eventData=t,this.dragDistanceThreshold=0,this.dragTimeThreshold=0,this._temp=[],this._tempZones=[],this._list=[],this._pendingInsertion=[],this._pendingRemoval=[],this._draggable=[],this._drag={0:[],1:[],2:[],3:[],4:[],5:[],6:[],7:[],8:[],9:[],10:[]},this._dragState=[],this._over={0:[],1:[],2:[],3:[],4:[],5:[],6:[],7:[],8:[],9:[],10:[]},this._validTypes=[`onDown`,`onUp`,`onOver`,`onOut`,`onMove`,`onDragStart`,`onDrag`,`onDragEnd`,`onDragEnter`,`onDragLeave`,`onDragOver`,`onDrop`],this._updatedThisFrame=!1,e.sys.events.once(x.BOOT,this.boot,this),e.sys.events.on(x.START,this.start,this)},boot:function(){this.cameras=this.systems.cameras,this.displayList=this.systems.displayList,this.systems.events.once(x.DESTROY,this.destroy,this),this.pluginEvents.emit(f.BOOT)},start:function(){var e=this.systems.events;e.on(x.TRANSITION_START,this.transitionIn,this),e.on(x.TRANSITION_OUT,this.transitionOut,this),e.on(x.TRANSITION_COMPLETE,this.transitionComplete,this),e.on(x.PRE_UPDATE,this.preUpdate,this),e.once(x.SHUTDOWN,this.shutdown,this),this.manager.events.on(f.GAME_OUT,this.onGameOut,this),this.manager.events.on(f.GAME_OVER,this.onGameOver,this),this.enabled=!0,this._dragState=[0,0,0,0,0,0,0,0,0,0],this.pluginEvents.emit(f.START)},onGameOver:function(e){this.isActive()&&this.emit(f.GAME_OVER,e.timeStamp,e)},onGameOut:function(e){this.isActive()&&this.emit(f.GAME_OUT,e.timeStamp,e)},preUpdate:function(){this.pluginEvents.emit(f.PRE_UPDATE);var e=this._pendingRemoval,t=this._pendingInsertion,n=e.length,r=t.length;if(!(n===0&&r===0)){for(var i=this._list,a=0;a<n;a++){var o=e[a],s=i.indexOf(o);s>-1&&(i.splice(s,1),this.clear(o,!0))}this._pendingRemoval.length=0,this._list=i.concat(t.splice(0))}},isActive:function(){return this.manager&&this.manager.enabled&&this.enabled&&this.scene.sys.canInput()},setCursor:function(e){this.manager&&this.manager.setCursor(e)},resetCursor:function(){this.manager&&this.manager.resetCursor(null,!0)},updatePoll:function(e,t){if(!this.isActive())return!1;if(this.pluginEvents.emit(f.UPDATE,e,t),this._updatedThisFrame)return this._updatedThisFrame=!1,!1;var n,r=this.manager.pointers;for(n=0;n<r.length;n++)r[n].updateMotion();if(this._list.length===0)return!1;var i=this.pollRate;if(i===-1)return!1;if(i>0)if(this._pollTimer-=t,this._pollTimer<0)this._pollTimer=this.pollRate;else return!1;var a=!1;for(n=0;n<r.length;n++){var o=0,s=r[n];this._tempZones=[],this._temp=this.hitTestPointer(s),this.sortGameObjects(this._temp,s),this.sortDropZones(this._tempZones),this.topOnly&&(this._temp.length&&this._temp.splice(1),this._tempZones.length&&this._tempZones.splice(1)),o+=this.processOverOutEvents(s),this.getDragState(s)===2&&this.processDragThresholdEvent(s,e),o>0&&(a=!0)}return a},update:function(e,t){if(!this.isActive())return!1;for(var n=!1,r=0;r<t.length;r++){var i=0,a=t[r];switch(this._tempZones=[],this._temp=this.hitTestPointer(a),this.sortGameObjects(this._temp,a),this.sortDropZones(this._tempZones),this.topOnly&&(this._temp.length&&this._temp.splice(1),this._tempZones.length&&this._tempZones.splice(1)),e){case o.MOUSE_DOWN:i+=this.processDragDownEvent(a),i+=this.processDownEvents(a),i+=this.processOverOutEvents(a);break;case o.MOUSE_UP:i+=this.processDragUpEvent(a),i+=this.processUpEvents(a),i+=this.processOverOutEvents(a);break;case o.TOUCH_START:i+=this.processDragDownEvent(a),i+=this.processDownEvents(a),i+=this.processOverEvents(a);break;case o.TOUCH_END:case o.TOUCH_CANCEL:i+=this.processDragUpEvent(a),i+=this.processUpEvents(a),i+=this.processOutEvents(a);break;case o.MOUSE_MOVE:case o.TOUCH_MOVE:i+=this.processDragMoveEvent(a),i+=this.processMoveEvents(a),i+=this.processOverOutEvents(a);break;case o.MOUSE_WHEEL:i+=this.processWheelEvent(a);break}i>0&&(n=!0)}return this._updatedThisFrame=!0,n},clear:function(e,t){t===void 0&&(t=!1),this.disable(e);var n=e.input;n&&(this.removeDebug(e),this.manager.resetCursor(n),n.gameObject=void 0,n.target=void 0,n.hitArea=void 0,n.hitAreaCallback=void 0,n.callbackContext=void 0,e.input=null),t||this.queueForRemoval(e);var r=this._draggable.indexOf(e);return r>-1&&this._draggable.splice(r,1),e},disable:function(e,t){t===void 0&&(t=!1);var n=e.input;n&&(n.enabled=!1,n.dragState=0);for(var r=this._drag,i=this._over,a=this.manager,o=0,s;o<a.pointers.length;o++)s=r[o].indexOf(e),s>-1&&r[o].splice(s,1),s=i[o].indexOf(e),s>-1&&i[o].splice(s,1);return t&&this.resetCursor(),this},enable:function(e,t,n,r){return r===void 0&&(r=!1),e.input?e.input.enabled=!0:this.setHitArea(e,t,n),e.input&&r&&!e.input.dropZone&&(e.input.dropZone=r),this},hitTestPointer:function(e){for(var t=this.cameras.getCamerasBelowPointer(e),n=0;n<t.length;n++){for(var r=t[n],i=this.manager.hitTest(e,this._list,r),a=0;a<i.length;a++){var o=i[a];o.input.dropZone&&this._tempZones.push(o)}if(i.length>0)return e.camera=r,i}return e.camera=t[0],[]},processDownEvents:function(e){var t=0,n=this._temp,r=this._eventData,i=this._eventContainer;r.cancelled=!1;for(var a=0;a<n.length;a++){var o=n[a];if(!(!o.input||!o.input.enabled)&&(t++,o.emit(f.GAMEOBJECT_POINTER_DOWN,e,o.input.localX,o.input.localY,i),r.cancelled||!this.isActive()||o.input&&o.input.enabled&&(this.emit(f.GAMEOBJECT_DOWN,e,o,i),r.cancelled||!this.isActive())))break}return!r.cancelled&&this.isActive()&&(e.downElement===this.manager.game.canvas?this.emit(f.POINTER_DOWN,e,n):this.emit(f.POINTER_DOWN_OUTSIDE,e)),t},getDragState:function(e){return this._dragState[e.id]},setDragState:function(e,t){this._dragState[e.id]=t},processDragThresholdEvent:function(e,t){var n=!1,r=this.dragTimeThreshold,i=this.dragDistanceThreshold;if((i>0&&l(e.x,e.y,e.downX,e.downY)>=i||r>0&&t>=e.downTime+r)&&(n=!0),n)return this.setDragState(e,3),this.processDragStartList(e)},processDragStartList:function(e){if(this.getDragState(e)!==3)return 0;var t=this._drag[e.id];t.length>1&&(t=t.slice(0));for(var n=0;n<t.length;n++){var r=t[n],i=r.input;i.dragState=2,i.dragStartX=r.x,i.dragStartY=r.y,i.dragStartXGlobal=e.worldX,i.dragStartYGlobal=e.worldY,i.dragStartCamera=e.camera,i.dragX=i.dragStartXGlobal-i.dragStartX,i.dragY=i.dragStartYGlobal-i.dragStartY,r.emit(f.GAMEOBJECT_DRAG_START,e,i.dragX,i.dragY),this.emit(f.DRAG_START,e,r)}return this.setDragState(e,4),t.length},processDragDownEvent:function(e){var t=this._temp;if(this._draggable.length===0||t.length===0||!e.primaryDown||this.getDragState(e)!==0)return 0;this.setDragState(e,1);for(var n=[],r=0;r<t.length;r++){var i=t[r];i.input.draggable&&i.input.dragState===0&&n.push(i)}return n.length===0?(this.setDragState(e,0),0):(n.length>1&&(this.sortGameObjects(n,e),this.topOnly&&n.splice(1)),this._drag[e.id]=n,this.dragDistanceThreshold===0&&this.dragTimeThreshold===0?(this.setDragState(e,3),this.processDragStartList(e)):(this.setDragState(e,2),0))},processDragMoveEvent:function(e){if(this.getDragState(e)===2&&this.processDragThresholdEvent(e,this.manager.game.loop.now),this.getDragState(e)!==4)return 0;var t=this._tempZones,n=this._drag[e.id];n.length>1&&(n=n.slice(0));for(var r=0;r<n.length;r++){var i=n[r],a=i.input,o=a.target;if(o){var s=t.indexOf(o);s===0?(i.emit(f.GAMEOBJECT_DRAG_OVER,e,o),this.emit(f.DRAG_OVER,e,i,o)):s>0?(i.emit(f.GAMEOBJECT_DRAG_LEAVE,e,o),this.emit(f.DRAG_LEAVE,e,i,o),a.target=t[0],o=a.target,i.emit(f.GAMEOBJECT_DRAG_ENTER,e,o),this.emit(f.DRAG_ENTER,e,i,o)):(i.emit(f.GAMEOBJECT_DRAG_LEAVE,e,o),this.emit(f.DRAG_LEAVE,e,i,o),t[0]?(a.target=t[0],o=a.target,i.emit(f.GAMEOBJECT_DRAG_ENTER,e,o),this.emit(f.DRAG_ENTER,e,i,o)):a.target=null)}else !o&&t[0]&&(a.target=t[0],o=a.target,i.emit(f.GAMEOBJECT_DRAG_ENTER,e,o),this.emit(f.DRAG_ENTER,e,i,o));var c,l,u=e.positionToCamera(a.dragStartCamera);if(!i.parentContainer)c=u.x-a.dragX,l=u.y-a.dragY;else{var d=u.x-a.dragStartXGlobal,p=u.y-a.dragStartYGlobal,m=i.getParentRotation(),h=d*Math.cos(m)+p*Math.sin(m),g=p*Math.cos(m)-d*Math.sin(m);h*=1/i.parentContainer.scaleX,g*=1/i.parentContainer.scaleY,c=h+a.dragStartX,l=g+a.dragStartY}i.emit(f.GAMEOBJECT_DRAG,e,c,l),this.emit(f.DRAG,e,i,c,l)}return n.length},processDragUpEvent:function(e){var t=this._drag[e.id];t.length>1&&(t=t.slice(0));for(var n=0;n<t.length;n++){var r=t[n],i=r.input;if(i&&i.dragState===2){i.dragState=0,i.dragX=i.localX-r.displayOriginX,i.dragY=i.localY-r.displayOriginY,i.dragStartCamera=null;var a=!1,o=i.target;o&&(r.emit(f.GAMEOBJECT_DROP,e,o),this.emit(f.DROP,e,r,o),i.target=null,a=!0),r.input&&r.input.enabled&&(r.emit(f.GAMEOBJECT_DRAG_END,e,i.dragX,i.dragY,a),this.emit(f.DRAG_END,e,r,a))}}return this.setDragState(e,0),t.splice(0),0},processMoveEvents:function(e){var t=0,n=this._temp,r=this._eventData,i=this._eventContainer;r.cancelled=!1;for(var a=0;a<n.length;a++){var o=n[a];if(!(!o.input||!o.input.enabled)&&(t++,o.emit(f.GAMEOBJECT_POINTER_MOVE,e,o.input.localX,o.input.localY,i),r.cancelled||!this.isActive()||o.input&&o.input.enabled&&(this.emit(f.GAMEOBJECT_MOVE,e,o,i),r.cancelled||!this.isActive()||this.topOnly)))break}return!r.cancelled&&this.isActive()&&this.emit(f.POINTER_MOVE,e,n),t},processWheelEvent:function(e){var t=0,n=this._temp,r=this._eventData,i=this._eventContainer;r.cancelled=!1;for(var a=e.deltaX,o=e.deltaY,s=e.deltaZ,c=0;c<n.length;c++){var l=n[c];if(!(!l.input||!l.input.enabled)&&(t++,l.emit(f.GAMEOBJECT_POINTER_WHEEL,e,a,o,s,i),r.cancelled||!this.isActive()||l.input&&l.input.enabled&&(this.emit(f.GAMEOBJECT_WHEEL,e,l,a,o,s,i),r.cancelled||!this.isActive())))break}return!r.cancelled&&this.isActive()&&this.emit(f.POINTER_WHEEL,e,n,a,o,s),t},processOverEvents:function(e){var t=this._temp,n=0,r=t.length,i=[];if(r>0){var a=this.manager,o=this._eventData,s=this._eventContainer;o.cancelled=!1;for(var c=0;c<r;c++){var l=t[c];if(!(!l.input||!l.input.enabled)&&(i.push(l),a.setCursor(l.input),l.emit(f.GAMEOBJECT_POINTER_OVER,e,l.input.localX,l.input.localY,s),n++,o.cancelled||!this.isActive()||l.input&&l.input.enabled&&(this.emit(f.GAMEOBJECT_OVER,e,l,s),o.cancelled||!this.isActive())))break}!o.cancelled&&this.isActive()&&this.emit(f.POINTER_OVER,e,i)}return this._over[e.id]=i,n},processOutEvents:function(e){var t=this._over[e.id],n=0,r=t.length;if(r>0){var i=this.manager,a=this._eventData,o=this._eventContainer;a.cancelled=!1,this.sortGameObjects(t,e);for(var s=0;s<r;s++){var c=t[s];if(c=t[s],!(!c.input||!c.input.enabled)&&(i.resetCursor(c.input),c.emit(f.GAMEOBJECT_POINTER_OUT,e,o),n++,a.cancelled||!this.isActive()||c.input&&c.input.enabled&&(this.emit(f.GAMEOBJECT_OUT,e,c,o),a.cancelled||!this.isActive())))break}!a.cancelled&&this.isActive()&&this.emit(f.POINTER_OUT,e,t),this._over[e.id]=[]}return n},processOverOutEvents:function(e){var t=this._temp,n,r,i=[],a=[],o=[],s=this._over[e.id],c=this._drag[e.id],l=this.manager;for(n=0;n<s.length;n++)r=s[n],t.indexOf(r)===-1&&c.indexOf(r)===-1?i.push(r):o.push(r);for(n=0;n<t.length;n++)r=t[n],s.indexOf(r)===-1&&a.push(r);var u=i.length,d=0,p=this._eventData,m=this._eventContainer;if(p.cancelled=!1,u>0){for(this.sortGameObjects(i,e),n=0;n<u&&(r=i[n],!(!(!r.input||!r.input.enabled)&&(l.resetCursor(r.input),r.emit(f.GAMEOBJECT_POINTER_OUT,e,m),d++,p.cancelled||!this.isActive()||r.input&&r.input.enabled&&(this.emit(f.GAMEOBJECT_OUT,e,r,m),p.cancelled||!this.isActive()))));n++);(!p.cancelled||this.isActive())&&this.emit(f.POINTER_OUT,e,i)}if(u=a.length,p.cancelled=!1,u>0){for(this.sortGameObjects(a,e),n=0;n<u&&(r=a[n],!(!(!r.input||!r.input.enabled)&&(l.setCursor(r.input),r.emit(f.GAMEOBJECT_POINTER_OVER,e,r.input.localX,r.input.localY,m),d++,p.cancelled||!this.isActive()||r.input&&r.input.enabled&&(this.emit(f.GAMEOBJECT_OVER,e,r,m),p.cancelled||!this.isActive()))));n++);!p.cancelled&&this.isActive()&&this.emit(f.POINTER_OVER,e,a)}return s=o.concat(a),this._over[e.id]=this.sortGameObjects(s,e),d},processUpEvents:function(e){var t=this._temp,n=this._eventData,r=this._eventContainer;n.cancelled=!1;for(var i=0;i<t.length;i++){var a=t[i];if(!(!a.input||!a.input.enabled)&&(a.emit(f.GAMEOBJECT_POINTER_UP,e,a.input.localX,a.input.localY,r),n.cancelled||!this.isActive()||a.input&&a.input.enabled&&(this.emit(f.GAMEOBJECT_UP,e,a,r),n.cancelled||!this.isActive())))break}return!n.cancelled&&this.isActive()&&(e.upElement===this.manager.game.canvas?this.emit(f.POINTER_UP,e,t):this.emit(f.POINTER_UP_OUTSIDE,e)),t.length},forceDownState:function(e,t){this.forceState(e,t,f.GAMEOBJECT_POINTER_DOWN,f.GAMEOBJECT_DOWN,!1)},forceUpState:function(e,t){this.forceState(e,t,f.GAMEOBJECT_POINTER_UP,f.GAMEOBJECT_UP,!1)},forceOverState:function(e,t){this.forceState(e,t,f.GAMEOBJECT_POINTER_OVER,f.GAMEOBJECT_OVER,!0)},forceOutState:function(e,t){this.forceState(e,t,f.GAMEOBJECT_POINTER_OUT,f.GAMEOBJECT_OUT,!1)},forceState:function(e,t,n,r,i){var a=this._eventData,o=this._eventContainer;a.cancelled=!1,t.input&&t.input.enabled&&(t.emit(n,e,t.input.localX,t.input.localY,o),i&&this.setCursor(t.input),!a.cancelled&&this.isActive()&&t.input&&t.input.enabled&&this.emit(r,e,t,o))},queueForInsertion:function(e){return this._pendingInsertion.indexOf(e)===-1&&this._list.indexOf(e)===-1&&this._pendingInsertion.push(e),this},queueForRemoval:function(e){return this._pendingRemoval.push(e),this},setDraggable:function(e,t){t===void 0&&(t=!0),Array.isArray(e)||(e=[e]);for(var n=0;n<e.length;n++){var r=e[n];r.input.draggable=t;var i=this._draggable.indexOf(r);t&&i===-1?this._draggable.push(r):!t&&i>-1&&this._draggable.splice(i,1)}return this},makePixelPerfect:function(e){e===void 0&&(e=1);var t=this.systems.textures;return c(t,e)},setHitArea:function(e,t,n){if(t===void 0)return this.setHitAreaFromTexture(e);Array.isArray(e)||(e=[e]);var r=!1,i=!1,a=!1,o=!1,c=!1,l=!0;if(_(t)&&Object.keys(t).length){var u=t;t=m(u,`hitArea`,null),n=m(u,`hitAreaCallback`,null),c=m(u,`pixelPerfect`,!1);var d=m(u,`alphaTolerance`,1);c&&(t={},n=this.makePixelPerfect(d)),r=m(u,`draggable`,!1),i=m(u,`dropZone`,!1),a=m(u,`cursor`,!1),o=m(u,`useHandCursor`,!1),(!t||!n)&&(this.setHitAreaFromTexture(e),l=!1)}else typeof t==`function`&&!n&&(n=t,t={});for(var f=0;f<e.length;f++){var p=e[f];if(c&&p.type===`Container`){console.warn(`Cannot pixelPerfect test a Container. Use a custom callback.`);continue}var h=p.input?p.input:s(p,t,n);h.customHitArea=l,h.dropZone=i,h.cursor=o?`pointer`:a,p.input=h,r&&this.setDraggable(p),this.queueForInsertion(p)}return this},setHitAreaCircle:function(e,t,n,a,o){o===void 0&&(o=i);var s=new r(t,n,a);return this.setHitArea(e,s,o)},setHitAreaEllipse:function(e,t,n,r,i,a){a===void 0&&(a=d);var o=new u(t,n,r,i);return this.setHitArea(e,o,a)},setHitAreaFromTexture:function(e,t){t===void 0&&(t=b),Array.isArray(e)||(e=[e]);for(var n=0;n<e.length;n++){var r=e[n],i=r.frame,a=0,o=0;if(r.width?(a=r.width,o=r.height):i&&(a=i.realWidth,o=i.realHeight),r.type===`Container`&&(a===0||o===0)){console.warn(`Container.setInteractive must specify a Shape or call setSize() first`);continue}a!==0&&o!==0&&(r.input=s(r,new y(0,0,a,o),t),this.queueForInsertion(r))}return this},setHitAreaRectangle:function(e,t,n,r,i,a){a===void 0&&(a=b);var o=new y(t,n,r,i);return this.setHitArea(e,o,a)},setHitAreaTriangle:function(e,t,n,r,i,a,o,s){s===void 0&&(s=C);var c=new S(t,n,r,i,a,o);return this.setHitArea(e,c,s)},enableDebug:function(e,t){t===void 0&&(t=65280);var n=e.input;if(!n||!n.hitArea)return this;var r=n.hitArea,i=r.type,a=n.hitAreaDebug,o=this.systems.add,s=this.systems.updateList;a&&=(s.remove(a),a.destroy(),null);var c=0,l=0;switch(i){case h.CIRCLE:a=o.arc(0,0,r.radius),c=r.x-r.radius,l=r.y-r.radius;break;case h.ELLIPSE:a=o.ellipse(0,0,r.width,r.height),c=r.x-r.width/2,l=r.y-r.height/2;break;case h.LINE:a=o.line(0,0,r.x1,r.y1,r.x2,r.y2);break;case h.POLYGON:a=o.polygon(0,0,r.points);break;case h.RECTANGLE:a=o.rectangle(0,0,r.width,r.height),c=r.x,l=r.y;break;case h.TRIANGLE:a=o.triangle(0,0,r.x1,r.y1,r.x2,r.y2,r.x3,r.y3);break}return a&&(a.isFilled=!1,a.strokeColor=t,a.preUpdate=function(){a.setVisible(e.visible),a.setStrokeStyle(1/e.scale,a.strokeColor),a.setDisplayOrigin(e.displayOriginX,e.displayOriginY);var t=e.x,n=e.y,r=e.rotation,i=e.scaleX,o=e.scaleY;if(e.parentContainer){var s=e.getWorldTransformMatrix();t=s.tx,n=s.ty,r=s.rotation,i=s.scaleX,o=s.scaleY}a.setRotation(r),a.setScale(i,o),a.setPosition(t+c*i,n+l*o),a.setScrollFactor(e.scrollFactorX,e.scrollFactorY),a.setDepth(e.depth)},s.add(a),n.hitAreaDebug=a),this},removeDebug:function(e){var t=e.input;return t&&t.hitAreaDebug&&(t.hitAreaDebug.destroy(),t.hitAreaDebug=null),this},setPollAlways:function(){return this.setPollRate(0)},setPollOnMove:function(){return this.setPollRate(-1)},setPollRate:function(e){return this.pollRate=e,this._pollTimer=0,this},setGlobalTopOnly:function(e){return this.manager.globalTopOnly=e,this},setTopOnly:function(e){return this.topOnly=e,this},sortGameObjects:function(e,t){if(e.length<2||!t.camera)return e;var n=t.camera.renderList;return e.sort(function(e,t){var r=Math.max(n.indexOf(e),0);return Math.max(n.indexOf(t),0)-r})},sortDropZones:function(e){return e.length<2?e:(this.scene.sys.depthSort(),e.sort(this.sortDropZoneHandler.bind(this)))},sortDropZoneHandler:function(e,t){if(!e.parentContainer&&!t.parentContainer)return this.displayList.getIndex(t)-this.displayList.getIndex(e);if(e.parentContainer===t.parentContainer)return t.parentContainer.getIndex(t)-e.parentContainer.getIndex(e);if(e.parentContainer===t)return-1;if(t.parentContainer===e)return 1;for(var n=e.getIndexList(),r=t.getIndexList(),i=Math.min(n.length,r.length),a=0;a<i;a++){var o=n[a],s=r[a];if(o!==s)return s-o}return r.length-n.length},stopPropagation:function(){return this.manager._tempSkip=!0,this},addPointer:function(e){return this.manager.addPointer(e)},setDefaultCursor:function(e){return this.manager.setDefaultCursor(e),this},transitionIn:function(){this.enabled=this.settings.transitionAllowInput},transitionComplete:function(){this.settings.transitionAllowInput||(this.enabled=!0)},transitionOut:function(){this.enabled=this.settings.transitionAllowInput},shutdown:function(){this.pluginEvents.emit(f.SHUTDOWN),this._temp.length=0,this._list.length=0,this._draggable.length=0,this._pendingRemoval.length=0,this._pendingInsertion.length=0,this._dragState.length=0;for(var e=0;e<10;e++)this._drag[e]=[],this._over[e]=[];this.removeAllListeners();var t=this.manager;t.canvas.style.cursor=t.defaultCursor;var n=this.systems.events;n.off(x.TRANSITION_START,this.transitionIn,this),n.off(x.TRANSITION_OUT,this.transitionOut,this),n.off(x.TRANSITION_COMPLETE,this.transitionComplete,this),n.off(x.PRE_UPDATE,this.preUpdate,this),t.events.off(f.GAME_OUT,this.onGameOut,this),t.events.off(f.GAME_OVER,this.onGameOver,this),n.off(x.SHUTDOWN,this.shutdown,this)},resetPointers:function(){for(var e=this.manager.pointers,t=0;t<e.length;t++)e[t].reset()},destroy:function(){this.shutdown(),this.pluginEvents.emit(f.DESTROY),this.pluginEvents.removeAllListeners(),this.scene.sys.events.off(x.START,this.start,this),this.scene=null,this.cameras=null,this.manager=null,this.events=null,this.mouse=null},x:{get:function(){return this.manager.activePointer.x}},y:{get:function(){return this.manager.activePointer.y}},isOver:{get:function(){return this.manager.isOver}},mousePointer:{get:function(){return this.manager.mousePointer}},activePointer:{get:function(){return this.manager.activePointer}},pointer1:{get:function(){return this.manager.pointers[1]}},pointer2:{get:function(){return this.manager.pointers[2]}},pointer3:{get:function(){return this.manager.pointers[3]}},pointer4:{get:function(){return this.manager.pointers[4]}},pointer5:{get:function(){return this.manager.pointers[5]}},pointer6:{get:function(){return this.manager.pointers[6]}},pointer7:{get:function(){return this.manager.pointers[7]}},pointer8:{get:function(){return this.manager.pointers[8]}},pointer9:{get:function(){return this.manager.pointers[9]}},pointer10:{get:function(){return this.manager.pointers[10]}}});v.register(`InputPlugin`,w,`input`),e.exports=w},89639(e,t,n){var r=n(35154),i={},a={};a.register=function(e,t,n,r,a){i[e]={plugin:t,mapping:n,settingsKey:r,configKey:a}},a.getPlugin=function(e){return i[e]},a.install=function(e){var t=e.scene.sys,n=t.settings.input,a=t.game.config;for(var o in i){var s=i[o].plugin,c=i[o].mapping,l=i[o].settingsKey,u=i[o].configKey;r(n,l,a[u])&&(e[c]=new s(e))}},a.remove=function(e){i.hasOwnProperty(e)&&delete i[e]},e.exports=a},42515(e,t,n){var r=n(31040),i=n(83419),a=n(20339),o=n(43855),s=n(47235),c=n(26099),l=n(25892);e.exports=new i({initialize:function(e,t){this.manager=e,this.id=t,this.event,this.downElement,this.upElement,this.camera=null,this.button=0,this.buttons=0,this.position=new c,this.prevPosition=new c,this.midPoint=new c(-1,-1),this.velocity=new c,this.angle=0,this.distance=0,this.smoothFactor=0,this.motionFactor=.2,this.worldX=0,this.worldY=0,this.moveTime=0,this.downX=0,this.downY=0,this.downTime=0,this.upX=0,this.upY=0,this.upTime=0,this.primaryDown=!1,this.isDown=!1,this.wasTouch=!1,this.wasCanceled=!1,this.movementX=0,this.movementY=0,this.identifier=0,this.pointerId=null,this.active=t===0,this.locked=!1,this.deltaX=0,this.deltaY=0,this.deltaZ=0},updateWorldPoint:function(e){var t=e.getWorldPoint(this.x,this.y);return this.worldX=t.x,this.worldY=t.y,this},positionToCamera:function(e,t){return e.getWorldPoint(this.x,this.y,t)},updateMotion:function(){var e=this.position.x,t=this.position.y,n=this.midPoint.x,i=this.midPoint.y;if(!(e===n&&t===i)){var a=s(this.motionFactor,n,e),c=s(this.motionFactor,i,t);o(a,e,.1)&&(a=e),o(c,t,.1)&&(c=t),this.midPoint.set(a,c);var l=e-a,u=t-c;this.velocity.set(l,u),this.angle=r(a,c,e,t),this.distance=Math.sqrt(l*l+u*u)}},up:function(e){`buttons`in e&&(this.buttons=e.buttons),this.event=e,this.button=e.button,this.upElement=e.target,this.manager.transformPointer(this,e.pageX,e.pageY,!1),e.button===0&&(this.primaryDown=!1,this.upX=this.x,this.upY=this.y),this.buttons===0&&(this.isDown=!1,this.upTime=e.timeStamp,this.wasTouch=!1)},down:function(e){`buttons`in e&&(this.buttons=e.buttons),this.event=e,this.button=e.button,this.downElement=e.target,this.manager.transformPointer(this,e.pageX,e.pageY,!1),e.button===0&&(this.primaryDown=!0,this.downX=this.x,this.downY=this.y),l.macOS&&e.ctrlKey&&(this.buttons=2,this.primaryDown=!1),this.isDown||(this.isDown=!0,this.downTime=e.timeStamp),this.wasTouch=!1},move:function(e){`buttons`in e&&(this.buttons=e.buttons),this.event=e,this.manager.transformPointer(this,e.pageX,e.pageY,!0),this.locked&&(this.movementX=e.movementX||e.mozMovementX||e.webkitMovementX||0,this.movementY=e.movementY||e.mozMovementY||e.webkitMovementY||0),this.moveTime=e.timeStamp,this.wasTouch=!1},wheel:function(e){`buttons`in e&&(this.buttons=e.buttons),this.event=e,this.manager.transformPointer(this,e.pageX,e.pageY,!1),this.deltaX=e.deltaX,this.deltaY=e.deltaY,this.deltaZ=e.deltaZ,this.wasTouch=!1},touchstart:function(e,t){e.pointerId&&(this.pointerId=e.pointerId),this.identifier=e.identifier,this.target=e.target,this.active=!0,this.buttons=1,this.event=t,this.downElement=e.target,this.manager.transformPointer(this,e.pageX,e.pageY,!1),this.primaryDown=!0,this.downX=this.x,this.downY=this.y,this.downTime=t.timeStamp,this.isDown=!0,this.wasTouch=!0,this.wasCanceled=!1,this.updateMotion()},touchmove:function(e,t){this.event=t,this.manager.transformPointer(this,e.pageX,e.pageY,!0),this.moveTime=t.timeStamp,this.wasTouch=!0,this.updateMotion()},touchend:function(e,t){this.buttons=0,this.event=t,this.upElement=e.target,this.manager.transformPointer(this,e.pageX,e.pageY,!1),this.primaryDown=!1,this.upX=this.x,this.upY=this.y,this.upTime=t.timeStamp,this.isDown=!1,this.wasTouch=!0,this.wasCanceled=!1,this.active=!1,this.updateMotion()},touchcancel:function(e,t){this.buttons=0,this.event=t,this.upElement=e.target,this.manager.transformPointer(this,e.pageX,e.pageY,!1),this.primaryDown=!1,this.upX=this.x,this.upY=this.y,this.upTime=t.timeStamp,this.isDown=!1,this.wasTouch=!0,this.wasCanceled=!0,this.active=!1},noButtonDown:function(){return this.buttons===0},leftButtonDown:function(){return!!(this.buttons&1)},rightButtonDown:function(){return!!(this.buttons&2)},middleButtonDown:function(){return!!(this.buttons&4)},backButtonDown:function(){return!!(this.buttons&8)},forwardButtonDown:function(){return!!(this.buttons&16)},leftButtonReleased:function(){return this.buttons===0?this.button===0&&!this.isDown:this.button===0},rightButtonReleased:function(){return this.buttons===0?this.button===2&&!this.isDown:this.button===2},middleButtonReleased:function(){return this.buttons===0?this.button===1&&!this.isDown:this.button===1},backButtonReleased:function(){return this.buttons===0?this.button===3&&!this.isDown:this.button===3},forwardButtonReleased:function(){return this.buttons===0?this.button===4&&!this.isDown:this.button===4},getDistance:function(){return this.isDown?a(this.downX,this.downY,this.x,this.y):a(this.downX,this.downY,this.upX,this.upY)},getDistanceX:function(){return this.isDown?Math.abs(this.downX-this.x):Math.abs(this.downX-this.upX)},getDistanceY:function(){return this.isDown?Math.abs(this.downY-this.y):Math.abs(this.downY-this.upY)},getDuration:function(){return this.isDown?this.manager.time-this.downTime:this.upTime-this.downTime},getAngle:function(){return this.isDown?r(this.downX,this.downY,this.x,this.y):r(this.downX,this.downY,this.upX,this.upY)},getInterpolatedPosition:function(e,t){e===void 0&&(e=10),t===void 0&&(t=[]);for(var n=this.prevPosition.x,r=this.prevPosition.y,i=this.position.x,a=this.position.y,o=0;o<e;o++){var c=1/e*o;t[o]={x:s(c,n,i),y:s(c,r,a)}}return t},reset:function(){this.event=null,this.downElement=null,this.upElement=null,this.button=0,this.buttons=0,this.position.set(0,0),this.prevPosition.set(0,0),this.midPoint.set(-1,-1),this.velocity.set(0,0),this.angle=0,this.distance=0,this.worldX=0,this.worldY=0,this.downX=0,this.downY=0,this.upX=0,this.upY=0,this.moveTime=0,this.upTime=0,this.downTime=0,this.primaryDown=!1,this.isDown=!1,this.wasTouch=!1,this.wasCanceled=!1,this.movementX=0,this.movementY=0,this.identifier=0,this.pointerId=null,this.deltaX=0,this.deltaY=0,this.deltaZ=0,this.active=this.id===0},destroy:function(){this.camera=null,this.manager=null,this.position=null},x:{get:function(){return this.position.x},set:function(e){this.position.x=e}},y:{get:function(){return this.position.y},set:function(e){this.position.y=e}},time:{get:function(){return this.event?this.event.timeStamp:0}}})},93301(e){e.exports={MOUSE_DOWN:0,MOUSE_MOVE:1,MOUSE_UP:2,TOUCH_START:3,TOUCH_MOVE:4,TOUCH_END:5,POINTER_LOCK_CHANGE:6,TOUCH_CANCEL:7,MOUSE_WHEEL:8}},7179(e){e.exports=`boot`},85375(e){e.exports=`destroy`},62224(e){e.exports=`dragend`},23388(e){e.exports=`dragenter`},16133(e){e.exports=`drag`},27829(e){e.exports=`dragleave`},53904(e){e.exports=`dragover`},56058(e){e.exports=`dragstart`},2642(e){e.exports=`drop`},88171(e){e.exports=`gameobjectdown`},36147(e){e.exports=`dragend`},71692(e){e.exports=`dragenter`},96149(e){e.exports=`drag`},81285(e){e.exports=`dragleave`},74048(e){e.exports=`dragover`},21322(e){e.exports=`dragstart`},49378(e){e.exports=`drop`},86754(e){e.exports=`gameobjectmove`},86433(e){e.exports=`gameobjectout`},60709(e){e.exports=`gameobjectover`},24081(e){e.exports=`pointerdown`},11172(e){e.exports=`pointermove`},18907(e){e.exports=`pointerout`},95579(e){e.exports=`pointerover`},35368(e){e.exports=`pointerup`},26972(e){e.exports=`wheel`},47078(e){e.exports=`gameobjectup`},73802(e){e.exports=`gameobjectwheel`},56718(e){e.exports=`gameout`},25936(e){e.exports=`gameover`},27503(e){e.exports=`boot`},50852(e){e.exports=`process`},96438(e){e.exports=`update`},59152(e){e.exports=`pointerlockchange`},47777(e){e.exports=`pointerdown`},27957(e){e.exports=`pointerdownoutside`},19444(e){e.exports=`pointermove`},54251(e){e.exports=`pointerout`},18667(e){e.exports=`pointerover`},27192(e){e.exports=`pointerup`},24652(e){e.exports=`pointerupoutside`},45132(e){e.exports=`wheel`},44512(e){e.exports=`preupdate`},15757(e){e.exports=`shutdown`},41637(e){e.exports=`start`},93802(e){e.exports=`update`},8214(e,t,n){e.exports={BOOT:n(7179),DESTROY:n(85375),DRAG_END:n(62224),DRAG_ENTER:n(23388),DRAG:n(16133),DRAG_LEAVE:n(27829),DRAG_OVER:n(53904),DRAG_START:n(56058),DROP:n(2642),GAME_OUT:n(56718),GAME_OVER:n(25936),GAMEOBJECT_DOWN:n(88171),GAMEOBJECT_DRAG_END:n(36147),GAMEOBJECT_DRAG_ENTER:n(71692),GAMEOBJECT_DRAG:n(96149),GAMEOBJECT_DRAG_LEAVE:n(81285),GAMEOBJECT_DRAG_OVER:n(74048),GAMEOBJECT_DRAG_START:n(21322),GAMEOBJECT_DROP:n(49378),GAMEOBJECT_MOVE:n(86754),GAMEOBJECT_OUT:n(86433),GAMEOBJECT_OVER:n(60709),GAMEOBJECT_POINTER_DOWN:n(24081),GAMEOBJECT_POINTER_MOVE:n(11172),GAMEOBJECT_POINTER_OUT:n(18907),GAMEOBJECT_POINTER_OVER:n(95579),GAMEOBJECT_POINTER_UP:n(35368),GAMEOBJECT_POINTER_WHEEL:n(26972),GAMEOBJECT_UP:n(47078),GAMEOBJECT_WHEEL:n(73802),MANAGER_BOOT:n(27503),MANAGER_PROCESS:n(50852),MANAGER_UPDATE:n(96438),POINTER_DOWN:n(47777),POINTER_DOWN_OUTSIDE:n(27957),POINTER_MOVE:n(19444),POINTER_OUT:n(54251),POINTER_OVER:n(18667),POINTER_UP:n(27192),POINTER_UP_OUTSIDE:n(24652),POINTER_WHEEL:n(45132),POINTERLOCK_CHANGE:n(59152),PRE_UPDATE:n(44512),SHUTDOWN:n(15757),START:n(41637),UPDATE:n(93802)}},97421(e,t,n){e.exports=new(n(83419))({initialize:function(e,t){this.pad=e,this.events=e.events,this.index=t,this.value=0,this.threshold=.1},update:function(e){this.value=e},getValue:function(){return Math.abs(this.value)<this.threshold?0:this.value},destroy:function(){this.pad=null,this.events=null}})},28884(e,t,n){var r=n(83419),i=n(92734);e.exports=new r({initialize:function(e,t,n){n===void 0&&(n=!1),this.pad=e,this.events=e.manager,this.index=t,this.value=0,this.threshold=1,this.pressed=n},update:function(e){this.value=e;var t=this.pad,n=this.index;e>=this.threshold?this.pressed||(this.pressed=!0,this.events.emit(i.BUTTON_DOWN,t,this,e),this.pad.emit(i.GAMEPAD_BUTTON_DOWN,n,e,this)):this.pressed&&(this.pressed=!1,this.events.emit(i.BUTTON_UP,t,this,e),this.pad.emit(i.GAMEPAD_BUTTON_UP,n,e,this))},destroy:function(){this.pad=null,this.events=null}})},99125(e,t,n){var r=n(97421),i=n(28884),a=n(83419),o=n(50792),s=n(26099);e.exports=new a({Extends:o,initialize:function(e,t){o.call(this),this.manager=e,this.pad=t,this.id=t.id,this.index=t.index;for(var n=[],a=0;a<t.buttons.length;a++)n.push(new i(this,a,t.buttons[a].value>=.5));this.buttons=n;var c=[];for(a=0;a<t.axes.length;a++)c.push(new r(this,a));this.axes=c,this.vibration=t.vibrationActuator;var l={value:0,pressed:!1};this._LCLeft=n[14]?n[14]:l,this._LCRight=n[15]?n[15]:l,this._LCTop=n[12]?n[12]:l,this._LCBottom=n[13]?n[13]:l,this._RCLeft=n[2]?n[2]:l,this._RCRight=n[1]?n[1]:l,this._RCTop=n[3]?n[3]:l,this._RCBottom=n[0]?n[0]:l,this._FBLeftTop=n[4]?n[4]:l,this._FBLeftBottom=n[6]?n[6]:l,this._FBRightTop=n[5]?n[5]:l,this._FBRightBottom=n[7]?n[7]:l;var u={value:0};this._HAxisLeft=c[0]?c[0]:u,this._VAxisLeft=c[1]?c[1]:u,this._HAxisRight=c[2]?c[2]:u,this._VAxisRight=c[3]?c[3]:u,this.leftStick=new s,this.rightStick=new s,this._created=performance.now()},getAxisTotal:function(){return this.axes.length},getAxisValue:function(e){return this.axes[e].getValue()},setAxisThreshold:function(e){for(var t=0;t<this.axes.length;t++)this.axes[t].threshold=e},getButtonTotal:function(){return this.buttons.length},getButtonValue:function(e){return this.buttons[e].value},isButtonDown:function(e){return this.buttons[e].pressed},update:function(e){if(!(e.timestamp<this._created)){var t,n=this.buttons,r=e.buttons,i=n.length;for(t=0;t<i;t++)n[t].update(r[t].value);var a=this.axes,o=e.axes;for(i=a.length,t=0;t<i;t++)a[t].update(o[t]);i>=2&&(this.leftStick.set(a[0].getValue(),a[1].getValue()),i>=4&&this.rightStick.set(a[2].getValue(),a[3].getValue()))}},destroy:function(){this.removeAllListeners(),this.manager=null,this.pad=null;var e;for(e=0;e<this.buttons.length;e++)this.buttons[e].destroy();for(e=0;e<this.axes.length;e++)this.axes[e].destroy();this.buttons=[],this.axes=[]},connected:{get:function(){return this.pad.connected}},timestamp:{get:function(){return this.pad.timestamp}},left:{get:function(){return this._LCLeft.pressed}},right:{get:function(){return this._LCRight.pressed}},up:{get:function(){return this._LCTop.pressed}},down:{get:function(){return this._LCBottom.pressed}},A:{get:function(){return this._RCBottom.pressed}},Y:{get:function(){return this._RCTop.pressed}},X:{get:function(){return this._RCLeft.pressed}},B:{get:function(){return this._RCRight.pressed}},L1:{get:function(){return this._FBLeftTop.value}},L2:{get:function(){return this._FBLeftBottom.value}},R1:{get:function(){return this._FBRightTop.value}},R2:{get:function(){return this._FBRightBottom.value}}})},56654(e,t,n){var r=n(83419),i=n(50792),a=n(92734),o=n(99125),s=n(35154),c=n(89639),l=n(8214),u=new r({Extends:i,initialize:function(e){i.call(this),this.scene=e.scene,this.settings=this.scene.sys.settings,this.sceneInputPlugin=e,this.enabled=!0,this.target,this.gamepads=[],this.queue=[],this.onGamepadHandler,this._pad1,this._pad2,this._pad3,this._pad4,e.pluginEvents.once(l.BOOT,this.boot,this),e.pluginEvents.on(l.START,this.start,this)},boot:function(){var e=this.scene.sys.game,t=this.settings.input,n=e.config;this.enabled=s(t,`gamepad`,n.inputGamepad)&&e.device.input.gamepads,this.target=s(t,`gamepad.target`,n.inputGamepadEventTarget),this.sceneInputPlugin.pluginEvents.once(l.DESTROY,this.destroy,this)},start:function(){this.enabled&&(this.startListeners(),this.refreshPads()),this.sceneInputPlugin.pluginEvents.once(l.SHUTDOWN,this.shutdown,this)},isActive:function(){return this.enabled&&this.scene.sys.isActive()},startListeners:function(){var e=this,t=this.target,n=function(t){t.defaultPrevented||!e.isActive()||(e.refreshPads(),e.queue.push(t))};this.onGamepadHandler=n,t.addEventListener(`gamepadconnected`,n,!1),t.addEventListener(`gamepaddisconnected`,n,!1),this.sceneInputPlugin.pluginEvents.on(l.UPDATE,this.update,this)},stopListeners:function(){this.target.removeEventListener(`gamepadconnected`,this.onGamepadHandler),this.target.removeEventListener(`gamepaddisconnected`,this.onGamepadHandler),this.sceneInputPlugin.pluginEvents.off(l.UPDATE,this.update);for(var e=this.gamepads,t=0;t<e.length;t++)e[t]&&e[t].removeAllListeners()},disconnectAll:function(){for(var e=this.gamepads,t=0;t<e.length;t++)e[t]&&(e[t].pad.connected=!1)},refreshPads:function(){var e=navigator.getGamepads();if(!e)this.disconnectAll();else for(var t=this.gamepads,n=0;n<e.length;n++){var r=e[n];if(r){var i=r.id,a=r.index,s=t[a];if(s)s.id===i?s.update(r):(s.destroy(),t[a]=new o(this,r));else{var c=new o(this,r);t[a]=c,this._pad1?this._pad2?this._pad3?this._pad4||=c:this._pad3=c:this._pad2=c:this._pad1=c}}}},getAll:function(){for(var e=[],t=this.gamepads,n=0;n<t.length;n++)t[n]&&e.push(t[n]);return e},getPad:function(e){for(var t=this.gamepads,n=0;n<t.length;n++)if(t[n]&&t[n].index===e)return t[n]},update:function(){if(this.enabled){this.refreshPads();var e=this.queue.length;if(e!==0)for(var t=this.queue.splice(0,e),n=0;n<e;n++){var r=t[n],i=this.getPad(r.gamepad.index);r.type===`gamepadconnected`?this.emit(a.CONNECTED,i,r):r.type===`gamepaddisconnected`&&this.emit(a.DISCONNECTED,i,r)}}},shutdown:function(){this.stopListeners(),this.removeAllListeners()},destroy:function(){this.shutdown();for(var e=0;e<this.gamepads.length;e++)this.gamepads[e]&&this.gamepads[e].destroy();this.gamepads=[],this.scene=null,this.settings=null,this.sceneInputPlugin=null,this.target=null},total:{get:function(){return this.gamepads.length}},pad1:{get:function(){return this._pad1}},pad2:{get:function(){return this._pad2}},pad3:{get:function(){return this._pad3}},pad4:{get:function(){return this._pad4}}});c.register(`GamepadPlugin`,u,`gamepad`,`gamepad`,`inputGamepad`),e.exports=u},89651(e){e.exports={UP:12,DOWN:13,LEFT:14,RIGHT:15,SELECT:8,START:9,B:0,A:1,Y:2,X:3,LEFT_SHOULDER:4,RIGHT_SHOULDER:5}},65294(e){e.exports={UP:12,DOWN:13,LEFT:14,RIGHT:15,SHARE:8,OPTIONS:9,PS:16,TOUCHBAR:17,X:0,CIRCLE:1,SQUARE:2,TRIANGLE:3,L1:4,R1:5,L2:6,R2:7,L3:10,R3:11,LEFT_STICK_H:0,LEFT_STICK_V:1,RIGHT_STICK_H:2,RIGHT_STICK_V:3}},90089(e){e.exports={UP:12,DOWN:13,LEFT:14,RIGHT:15,MENU:16,A:0,B:1,X:2,Y:3,LB:4,RB:5,LT:6,RT:7,BACK:8,START:9,LS:10,RS:11,LEFT_STICK_H:0,LEFT_STICK_V:1,RIGHT_STICK_H:2,RIGHT_STICK_V:3}},64894(e,t,n){e.exports={DUALSHOCK_4:n(65294),SNES_USB:n(89651),XBOX_360:n(90089)}},46008(e){e.exports=`down`},7629(e){e.exports=`up`},42206(e){e.exports=`connected`},86544(e){e.exports=`disconnected`},94784(e){e.exports=`down`},14325(e){e.exports=`up`},92734(e,t,n){e.exports={BUTTON_DOWN:n(46008),BUTTON_UP:n(7629),CONNECTED:n(42206),DISCONNECTED:n(86544),GAMEPAD_BUTTON_DOWN:n(94784),GAMEPAD_BUTTON_UP:n(14325)}},48646(e,t,n){e.exports={Axis:n(97421),Button:n(28884),Events:n(92734),Gamepad:n(99125),GamepadPlugin:n(56654),Configs:n(64894)}},14350(e,t,n){var r=n(93301),i=n(79291),a={CreatePixelPerfectHandler:n(84409),CreateInteractiveObject:n(74457),Events:n(8214),Gamepad:n(48646),InputManager:n(7003),InputPlugin:n(48205),InputPluginCache:n(89639),Keyboard:n(51442),Mouse:n(87078),Pointer:n(42515),Touch:n(95618)};a=i(!1,a,r),e.exports=a},78970(e,t,n){var r=n(72905),i=n(83419),a=n(8443),o=n(8214),s=n(46032),c=n(29747);e.exports=new i({initialize:function(e){this.manager=e,this.queue=[],this.preventDefault=!0,this.captures=[],this.enabled=!1,this.target,this.onKeyDown=c,this.onKeyUp=c,e.events.once(o.MANAGER_BOOT,this.boot,this)},boot:function(){var e=this.manager.config;this.enabled=e.inputKeyboard,this.target=e.inputKeyboardEventTarget,this.addCapture(e.inputKeyboardCapture),!this.target&&window&&(this.target=window),this.enabled&&this.target&&this.startListeners(),this.manager.game.events.on(a.POST_STEP,this.postUpdate,this)},startListeners:function(){var e=this;this.onKeyDown=function(t){if(!(t.defaultPrevented||!e.enabled||!e.manager)){e.queue.push(t),e.manager.events.emit(o.MANAGER_PROCESS);var n=t.altKey||t.ctrlKey||t.shiftKey||t.metaKey;e.preventDefault&&!n&&e.captures.indexOf(t.keyCode)>-1&&t.preventDefault()}},this.onKeyUp=function(t){if(!(t.defaultPrevented||!e.enabled||!e.manager)){e.queue.push(t),e.manager.events.emit(o.MANAGER_PROCESS);var n=t.altKey||t.ctrlKey||t.shiftKey||t.metaKey;e.preventDefault&&!n&&e.captures.indexOf(t.keyCode)>-1&&t.preventDefault()}};var t=this.target;t&&(t.addEventListener(`keydown`,this.onKeyDown,!1),t.addEventListener(`keyup`,this.onKeyUp,!1),this.enabled=!0)},stopListeners:function(){var e=this.target;e.removeEventListener(`keydown`,this.onKeyDown,!1),e.removeEventListener(`keyup`,this.onKeyUp,!1),this.enabled=!1},postUpdate:function(){this.queue=[]},addCapture:function(e){typeof e==`string`&&(e=e.split(`,`)),Array.isArray(e)||(e=[e]);for(var t=this.captures,n=0;n<e.length;n++){var r=e[n];typeof r==`string`&&(r=s[r.trim().toUpperCase()]),t.indexOf(r)===-1&&t.push(r)}this.preventDefault=t.length>0},removeCapture:function(e){typeof e==`string`&&(e=e.split(`,`)),Array.isArray(e)||(e=[e]);for(var t=this.captures,n=0;n<e.length;n++){var i=e[n];typeof i==`string`&&(i=s[i.toUpperCase()]),r(t,i)}this.preventDefault=t.length>0},clearCaptures:function(){this.captures=[],this.preventDefault=!1},destroy:function(){this.stopListeners(),this.clearCaptures(),this.queue=[],this.manager.game.events.off(a.POST_STEP,this.postUpdate,this),this.target=null,this.enabled=!1,this.manager=null}})},28846(e,t,n){var r=n(83419),i=n(50792),a=n(95922),o=n(8443),s=n(35154),c=n(8214),l=n(89639),u=n(30472),d=n(46032),f=n(87960),p=n(74600),m=n(44594),h=n(56583),g=new r({Extends:i,initialize:function(e){i.call(this),this.game=e.systems.game,this.scene=e.scene,this.settings=this.scene.sys.settings,this.sceneInputPlugin=e,this.manager=e.manager.keyboard,this.enabled=!0,this.keys=[],this.combos=[],this.prevCode=null,this.prevTime=0,this.prevType=null,e.pluginEvents.once(c.BOOT,this.boot,this),e.pluginEvents.on(c.START,this.start,this)},boot:function(){var e=this.settings.input;this.enabled=s(e,`keyboard`,!0);var t=s(e,`keyboard.capture`,null);t&&this.addCaptures(t),this.sceneInputPlugin.pluginEvents.once(c.DESTROY,this.destroy,this)},start:function(){this.sceneInputPlugin.manager.events.on(c.MANAGER_PROCESS,this.update,this),this.sceneInputPlugin.pluginEvents.once(c.SHUTDOWN,this.shutdown,this),this.game.events.on(o.BLUR,this.resetKeys,this),this.scene.sys.events.on(m.PAUSE,this.resetKeys,this),this.scene.sys.events.on(m.SLEEP,this.resetKeys,this)},isActive:function(){return this.enabled&&this.scene.sys.canInput()},addCapture:function(e){return this.manager.addCapture(e),this},removeCapture:function(e){return this.manager.removeCapture(e),this},getCaptures:function(){return this.manager.captures},enableGlobalCapture:function(){return this.manager.preventDefault=!0,this},disableGlobalCapture:function(){return this.manager.preventDefault=!1,this},clearCaptures:function(){return this.manager.clearCaptures(),this},createCursorKeys:function(){return this.addKeys({up:d.UP,down:d.DOWN,left:d.LEFT,right:d.RIGHT,space:d.SPACE,shift:d.SHIFT})},addKeys:function(e,t,n){t===void 0&&(t=!0),n===void 0&&(n=!1);var r={};if(typeof e==`string`){e=e.split(`,`);for(var i=0;i<e.length;i++){var a=e[i].trim();a&&(r[a]=this.addKey(a,t,n))}}else for(var o in e)r[o]=this.addKey(e[o],t,n);return r},addKey:function(e,t,n){t===void 0&&(t=!0),n===void 0&&(n=!1);var r=this.keys;if(e instanceof u){var i=r.indexOf(e);return i>-1?r[i]=e:r[e.keyCode]=e,t&&this.addCapture(e.keyCode),e.setEmitOnRepeat(n),e}return typeof e==`string`&&(e=d[e.toUpperCase()]),r[e]||(r[e]=new u(this,e),t&&this.addCapture(e),r[e].setEmitOnRepeat(n)),r[e]},removeKey:function(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!1);var r=this.keys,i;if(e instanceof u){var a=r.indexOf(e);a>-1&&(i=this.keys[a],this.keys[a]=void 0)}else typeof e==`string`&&(e=d[e.toUpperCase()]);return r[e]&&(i=r[e],r[e]=void 0),i&&(i.plugin=null,n&&this.removeCapture(i.keyCode),t&&i.destroy()),this},removeAllKeys:function(e,t){e===void 0&&(e=!1),t===void 0&&(t=!1);for(var n=this.keys,r=0;r<n.length;r++){var i=n[r];i&&(n[r]=void 0,t&&this.removeCapture(i.keyCode),e&&i.destroy())}return this},createCombo:function(e,t){return new f(this,e,t)},checkDown:function(e,t){if(t===void 0&&(t=0),this.enabled&&e.isDown){var n=h(this.time-e.timeDown,t);if(n>e._tick)return e._tick=n,!0}return!1},update:function(){var e=this.manager.queue,t=e.length;if(!(!this.isActive()||t===0))for(var n=this.keys,r=0;r<t;r++){var i=e[r],o=i.keyCode,s=n[o],c=!1;i.cancelled===void 0&&(i.cancelled=0,i.stopImmediatePropagation=function(){i.cancelled=1},i.stopPropagation=function(){i.cancelled=-1}),i.cancelled!==-1&&(o===this.prevCode&&i.timeStamp===this.prevTime&&i.type===this.prevType||(this.prevCode=o,this.prevTime=i.timeStamp,this.prevType=i.type,i.type===`keydown`?(s&&(c=s.isDown,s.onDown(i)),!i.cancelled&&(!s||!c)&&(p[o]&&this.emit(a.KEY_DOWN+p[o],i),i.cancelled||this.emit(a.ANY_KEY_DOWN,i))):(s&&s.onUp(i),i.cancelled||(p[o]&&this.emit(a.KEY_UP+p[o],i),i.cancelled||this.emit(a.ANY_KEY_UP,i))),i.cancelled===1&&(i.cancelled=0)))}},resetKeys:function(){for(var e=this.keys,t=0;t<e.length;t++)e[t]&&e[t].reset();return this},shutdown:function(){this.removeAllKeys(!0),this.removeAllListeners(),this.sceneInputPlugin.manager.events.off(c.MANAGER_PROCESS,this.update,this),this.game.events.off(o.BLUR,this.resetKeys),this.scene.sys.events.off(m.PAUSE,this.resetKeys,this),this.scene.sys.events.off(m.SLEEP,this.resetKeys,this),this.queue=[]},destroy:function(){this.shutdown();for(var e=this.keys,t=0;t<e.length;t++)e[t]&&e[t].destroy();this.keys=[],this.combos=[],this.queue=[],this.scene=null,this.settings=null,this.sceneInputPlugin=null,this.manager=null},time:{get:function(){return this.sceneInputPlugin.manager.time}}});l.register(`KeyboardPlugin`,g,`keyboard`,`keyboard`,`inputKeyboard`),e.exports=g},66970(e){e.exports=function(e,t){return t.timeLastMatched=e.timeStamp,t.index++,t.index===t.size?!0:(t.current=t.keyCodes[t.index],!1)}},87960(e,t,n){var r=n(83419),i=n(95922),a=n(95540),o=n(68769),s=n(92803);e.exports=new r({initialize:function(e,t,n){if(n===void 0&&(n={}),t.length<2)return!1;this.manager=e,this.enabled=!0,this.keyCodes=[];for(var r=0;r<t.length;r++){var c=t[r];typeof c==`string`?this.keyCodes.push(c.toUpperCase().charCodeAt(0)):typeof c==`number`?this.keyCodes.push(c):c.hasOwnProperty(`keyCode`)&&this.keyCodes.push(c.keyCode)}this.current=this.keyCodes[0],this.index=0,this.size=this.keyCodes.length,this.timeLastMatched=0,this.matched=!1,this.timeMatched=0,this.resetOnWrongKey=a(n,`resetOnWrongKey`,!0),this.maxKeyDelay=a(n,`maxKeyDelay`,0),this.resetOnMatch=a(n,`resetOnMatch`,!1),this.deleteOnMatch=a(n,`deleteOnMatch`,!1);var l=this,u=function(e){l.matched||!l.enabled||o(e,l)&&(l.manager.emit(i.COMBO_MATCH,l,e),l.resetOnMatch?s(l):l.deleteOnMatch&&l.destroy())};this.onKeyDown=u,this.manager.on(i.ANY_KEY_DOWN,this.onKeyDown)},progress:{get:function(){return this.index/this.size}},destroy:function(){this.enabled=!1,this.keyCodes=[],this.manager.off(i.ANY_KEY_DOWN,this.onKeyDown),this.manager=null}})},68769(e,t,n){var r=n(66970);e.exports=function(e,t){if(t.matched)return!0;var n=!1,i=!1;if(e.keyCode===t.current)if(t.index>0&&t.maxKeyDelay>0){var a=t.timeLastMatched+t.maxKeyDelay;e.timeStamp<=a&&(i=!0,n=r(e,t))}else i=!0,n=r(e,t);return!i&&t.resetOnWrongKey&&(t.index=0,t.current=t.keyCodes[0]),n&&(t.timeLastMatched=e.timeStamp,t.matched=!0,t.timeMatched=e.timeStamp),n}},92803(e){e.exports=function(e){return e.current=e.keyCodes[0],e.index=0,e.timeLastMatched=0,e.matched=!1,e.timeMatched=0,e}},92612(e){e.exports=`keydown`},23345(e){e.exports=`keyup`},21957(e){e.exports=`keycombomatch`},44743(e){e.exports=`down`},3771(e){e.exports=`keydown-`},46358(e){e.exports=`keyup-`},75674(e){e.exports=`up`},95922(e,t,n){e.exports={ANY_KEY_DOWN:n(92612),ANY_KEY_UP:n(23345),COMBO_MATCH:n(21957),DOWN:n(44743),KEY_DOWN:n(3771),KEY_UP:n(46358),UP:n(75674)}},51442(e,t,n){e.exports={Events:n(95922),KeyboardManager:n(78970),KeyboardPlugin:n(28846),Key:n(30472),KeyCodes:n(46032),KeyCombo:n(87960),AdvanceKeyCombo:n(66970),ProcessKeyCombo:n(68769),ResetKeyCombo:n(92803),JustDown:n(90229),JustUp:n(38796),DownDuration:n(37015),UpDuration:n(41170)}},37015(e){e.exports=function(e,t){t===void 0&&(t=50);var n=e.plugin.game.loop.time-e.timeDown;return e.isDown&&n<t}},90229(e){e.exports=function(e){return e._justDown?(e._justDown=!1,!0):!1}},38796(e){e.exports=function(e){return e._justUp?(e._justUp=!1,!0):!1}},30472(e,t,n){var r=n(83419),i=n(50792),a=n(95922);e.exports=new r({Extends:i,initialize:function(e,t){i.call(this),this.plugin=e,this.keyCode=t,this.originalEvent=void 0,this.enabled=!0,this.isDown=!1,this.isUp=!0,this.altKey=!1,this.ctrlKey=!1,this.shiftKey=!1,this.metaKey=!1,this.location=0,this.timeDown=0,this.duration=0,this.timeUp=0,this.emitOnRepeat=!1,this.repeats=0,this._justDown=!1,this._justUp=!1,this._tick=-1},setEmitOnRepeat:function(e){return this.emitOnRepeat=e,this},onDown:function(e){this.originalEvent=e,this.enabled&&(this.altKey=e.altKey,this.ctrlKey=e.ctrlKey,this.shiftKey=e.shiftKey,this.metaKey=e.metaKey,this.location=e.location,this.repeats++,this.isDown?this.emitOnRepeat&&this.emit(a.DOWN,this,e):(this.isDown=!0,this.isUp=!1,this.timeDown=e.timeStamp,this.duration=0,this._justDown=!0,this._justUp=!1,this.emit(a.DOWN,this,e)))},onUp:function(e){this.originalEvent=e,this.enabled&&(this.isDown=!1,this.isUp=!0,this.timeUp=e.timeStamp,this.duration=this.timeUp-this.timeDown,this.repeats=0,this._justDown=!1,this._justUp=!0,this._tick=-1,this.emit(a.UP,this,e))},reset:function(){return this.isDown=!1,this.isUp=!0,this.altKey=!1,this.ctrlKey=!1,this.shiftKey=!1,this.metaKey=!1,this.timeDown=0,this.duration=0,this.timeUp=0,this.repeats=0,this._justDown=!1,this._justUp=!1,this._tick=-1,this},getDuration:function(){return this.isDown?this.plugin.game.loop.time-this.timeDown:0},destroy:function(){this.removeAllListeners(),this.originalEvent=null,this.plugin=null}})},46032(e){e.exports={BACKSPACE:8,TAB:9,ENTER:13,SHIFT:16,CTRL:17,ALT:18,PAUSE:19,CAPS_LOCK:20,ESC:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,PRINT_SCREEN:42,INSERT:45,DELETE:46,ZERO:48,ONE:49,TWO:50,THREE:51,FOUR:52,FIVE:53,SIX:54,SEVEN:55,EIGHT:56,NINE:57,NUMPAD_ZERO:96,NUMPAD_ONE:97,NUMPAD_TWO:98,NUMPAD_THREE:99,NUMPAD_FOUR:100,NUMPAD_FIVE:101,NUMPAD_SIX:102,NUMPAD_SEVEN:103,NUMPAD_EIGHT:104,NUMPAD_NINE:105,NUMPAD_ADD:107,NUMPAD_SUBTRACT:109,A:65,B:66,C:67,D:68,E:69,F:70,G:71,H:72,I:73,J:74,K:75,L:76,M:77,N:78,O:79,P:80,Q:81,R:82,S:83,T:84,U:85,V:86,W:87,X:88,Y:89,Z:90,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,SEMICOLON:186,PLUS:187,COMMA:188,MINUS:189,PERIOD:190,FORWARD_SLASH:191,BACK_SLASH:220,QUOTES:222,BACKTICK:192,OPEN_BRACKET:219,CLOSED_BRACKET:221,SEMICOLON_FIREFOX:59,COLON:58,COMMA_FIREFOX_WINDOWS:60,COMMA_FIREFOX:62,BRACKET_RIGHT_FIREFOX:174,BRACKET_LEFT_FIREFOX:175}},74600(e,t,n){var r=n(46032),i={};for(var a in r)i[r[a]]=a;e.exports=i},41170(e){e.exports=function(e,t){t===void 0&&(t=50);var n=e.plugin.game.loop.time-e.timeUp;return e.isUp&&n<t}},85098(e,t,n){var r=n(83419),i=n(89357),a=n(8214),o=n(29747);e.exports=new r({initialize:function(e){this.manager=e,this.preventDefaultDown=!0,this.preventDefaultUp=!0,this.preventDefaultMove=!0,this.preventDefaultWheel=!1,this.enabled=!1,this.target,this.locked=!1,this.onMouseMove=o,this.onMouseDown=o,this.onMouseUp=o,this.onMouseDownWindow=o,this.onMouseUpWindow=o,this.onMouseOver=o,this.onMouseOut=o,this.onMouseWheel=o,this.pointerLockChange=o,this.isTop=!0,e.events.once(a.MANAGER_BOOT,this.boot,this)},boot:function(){var e=this.manager.config;this.enabled=e.inputMouse,this.target=e.inputMouseEventTarget,this.passive=e.inputMousePassive,this.preventDefaultDown=e.inputMousePreventDefaultDown,this.preventDefaultUp=e.inputMousePreventDefaultUp,this.preventDefaultMove=e.inputMousePreventDefaultMove,this.preventDefaultWheel=e.inputMousePreventDefaultWheel,this.target?typeof this.target==`string`&&(this.target=document.getElementById(this.target)):this.target=this.manager.game.canvas,e.disableContextMenu&&this.disableContextMenu(),this.enabled&&this.target&&this.startListeners()},disableContextMenu:function(){return this.target.addEventListener(`contextmenu`,function(e){return e.preventDefault(),!1}),this},requestPointerLock:function(){if(i.pointerLock){var e=this.target;e.requestPointerLock=e.requestPointerLock||e.mozRequestPointerLock||e.webkitRequestPointerLock,e.requestPointerLock()}},releasePointerLock:function(){i.pointerLock&&(document.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock,document.exitPointerLock())},startListeners:function(){var e=this.target;if(e){var t=this,n=this.manager,r=n.canvas,a=window&&window.focus&&n.game.config.autoFocus;this.onMouseMove=function(e){!e.defaultPrevented&&t.enabled&&n&&n.enabled&&(n.onMouseMove(e),t.preventDefaultMove&&e.preventDefault())},this.onMouseDown=function(e){a&&window.focus(),!e.defaultPrevented&&t.enabled&&n&&n.enabled&&(n.onMouseDown(e),t.preventDefaultDown&&e.target===r&&e.preventDefault())},this.onMouseDownWindow=function(e){e.sourceCapabilities&&e.sourceCapabilities.firesTouchEvents||!e.defaultPrevented&&t.enabled&&n&&n.enabled&&e.target!==r&&n.onMouseDown(e)},this.onMouseUp=function(e){!e.defaultPrevented&&t.enabled&&n&&n.enabled&&(n.onMouseUp(e),t.preventDefaultUp&&e.target===r&&e.preventDefault())},this.onMouseUpWindow=function(e){e.sourceCapabilities&&e.sourceCapabilities.firesTouchEvents||!e.defaultPrevented&&t.enabled&&n&&n.enabled&&e.target!==r&&n.onMouseUp(e)},this.onMouseOver=function(e){!e.defaultPrevented&&t.enabled&&n&&n.enabled&&n.setCanvasOver(e)},this.onMouseOut=function(e){!e.defaultPrevented&&t.enabled&&n&&n.enabled&&n.setCanvasOut(e)},this.onMouseWheel=function(e){!e.defaultPrevented&&t.enabled&&n&&n.enabled&&n.onMouseWheel(e),t.preventDefaultWheel&&e.target===r&&e.preventDefault()};var o={passive:!0};if(e.addEventListener(`mousemove`,this.onMouseMove),e.addEventListener(`mousedown`,this.onMouseDown),e.addEventListener(`mouseup`,this.onMouseUp),e.addEventListener(`mouseover`,this.onMouseOver,o),e.addEventListener(`mouseout`,this.onMouseOut,o),this.preventDefaultWheel?e.addEventListener(`wheel`,this.onMouseWheel,{passive:!1}):e.addEventListener(`wheel`,this.onMouseWheel,o),window&&n.game.config.inputWindowEvents)try{window.top.addEventListener(`mousedown`,this.onMouseDownWindow,o),window.top.addEventListener(`mouseup`,this.onMouseUpWindow,o)}catch{window.addEventListener(`mousedown`,this.onMouseDownWindow,o),window.addEventListener(`mouseup`,this.onMouseUpWindow,o),this.isTop=!1}i.pointerLock&&(this.pointerLockChange=function(e){var r=t.target;t.locked=document.pointerLockElement===r||document.mozPointerLockElement===r||document.webkitPointerLockElement===r,n.onPointerLockChange(e)},document.addEventListener(`pointerlockchange`,this.pointerLockChange,!0),document.addEventListener(`mozpointerlockchange`,this.pointerLockChange,!0),document.addEventListener(`webkitpointerlockchange`,this.pointerLockChange,!0)),this.enabled=!0}},stopListeners:function(){var e=this.target;e.removeEventListener(`mousemove`,this.onMouseMove),e.removeEventListener(`mousedown`,this.onMouseDown),e.removeEventListener(`mouseup`,this.onMouseUp),e.removeEventListener(`mouseover`,this.onMouseOver),e.removeEventListener(`mouseout`,this.onMouseOut),window&&(e=this.isTop?window.top:window,e.removeEventListener(`mousedown`,this.onMouseDownWindow),e.removeEventListener(`mouseup`,this.onMouseUpWindow)),i.pointerLock&&(document.removeEventListener(`pointerlockchange`,this.pointerLockChange,!0),document.removeEventListener(`mozpointerlockchange`,this.pointerLockChange,!0),document.removeEventListener(`webkitpointerlockchange`,this.pointerLockChange,!0))},destroy:function(){this.stopListeners(),this.target=null,this.enabled=!1,this.manager=null}})},87078(e,t,n){e.exports={MouseManager:n(85098)}},36210(e,t,n){var r=n(83419),i=n(8214),a=n(29747);e.exports=new r({initialize:function(e){this.manager=e,this.capture=!0,this.enabled=!1,this.target,this.onTouchStart=a,this.onTouchStartWindow=a,this.onTouchMove=a,this.onTouchEnd=a,this.onTouchEndWindow=a,this.onTouchCancel=a,this.onTouchCancelWindow=a,this.isTop=!0,e.events.once(i.MANAGER_BOOT,this.boot,this)},boot:function(){var e=this.manager.config;this.enabled=e.inputTouch,this.target=e.inputTouchEventTarget,this.capture=e.inputTouchCapture,this.target?typeof this.target==`string`&&(this.target=document.getElementById(this.target)):this.target=this.manager.game.canvas,e.disableContextMenu&&this.disableContextMenu(),this.enabled&&this.target&&this.startListeners()},disableContextMenu:function(){return this.target.addEventListener(`contextmenu`,function(e){return e.preventDefault(),!1}),this},startListeners:function(){var e=this.target;if(e){var t=this,n=this.manager,r=n.canvas,i=window&&window.focus&&n.game.config.autoFocus;this.onTouchMove=function(e){!e.defaultPrevented&&t.enabled&&n&&n.enabled&&(n.onTouchMove(e),t.capture&&e.cancelable&&e.preventDefault())},this.onTouchStart=function(e){i&&window.focus(),!e.defaultPrevented&&t.enabled&&n&&n.enabled&&(n.onTouchStart(e),t.capture&&e.cancelable&&e.target===r&&e.preventDefault())},this.onTouchStartWindow=function(e){!e.defaultPrevented&&t.enabled&&n&&n.enabled&&e.target!==r&&n.onTouchStart(e)},this.onTouchEnd=function(e){!e.defaultPrevented&&t.enabled&&n&&n.enabled&&(n.onTouchEnd(e),t.capture&&e.cancelable&&e.target===r&&e.preventDefault())},this.onTouchEndWindow=function(e){!e.defaultPrevented&&t.enabled&&n&&n.enabled&&e.target!==r&&n.onTouchEnd(e)},this.onTouchCancel=function(e){!e.defaultPrevented&&t.enabled&&n&&n.enabled&&(n.onTouchCancel(e),t.capture&&e.preventDefault())},this.onTouchCancelWindow=function(e){!e.defaultPrevented&&t.enabled&&n&&n.enabled&&n.onTouchCancel(e)};var a=this.capture,o={passive:!0},s={passive:!1};if(e.addEventListener(`touchstart`,this.onTouchStart,a?s:o),e.addEventListener(`touchmove`,this.onTouchMove,a?s:o),e.addEventListener(`touchend`,this.onTouchEnd,a?s:o),e.addEventListener(`touchcancel`,this.onTouchCancel,a?s:o),window&&n.game.config.inputWindowEvents)try{window.top.addEventListener(`touchstart`,this.onTouchStartWindow,s),window.top.addEventListener(`touchend`,this.onTouchEndWindow,s),window.top.addEventListener(`touchcancel`,this.onTouchCancelWindow,s)}catch{window.addEventListener(`touchstart`,this.onTouchStartWindow,s),window.addEventListener(`touchend`,this.onTouchEndWindow,s),window.addEventListener(`touchcancel`,this.onTouchCancelWindow,s),this.isTop=!1}this.enabled=!0}},stopListeners:function(){var e=this.target;e.removeEventListener(`touchstart`,this.onTouchStart),e.removeEventListener(`touchmove`,this.onTouchMove),e.removeEventListener(`touchend`,this.onTouchEnd),e.removeEventListener(`touchcancel`,this.onTouchCancel),window&&(e=this.isTop?window.top:window,e.removeEventListener(`touchstart`,this.onTouchStartWindow),e.removeEventListener(`touchend`,this.onTouchEndWindow),e.removeEventListener(`touchcancel`,this.onTouchCancelWindow))},destroy:function(){this.stopListeners(),this.target=null,this.enabled=!1,this.manager=null}})},95618(e,t,n){e.exports={TouchManager:n(36210)}},41299(e,t,n){var r=n(83419),i=n(23906),a=n(54899),o=n(95540),s=n(98356),c=n(3374),l=n(84376),u=n(92638),d=new r({initialize:function(e,t){if(this.loader=e,this.cache=o(t,`cache`,!1),this.type=o(t,`type`,!1),!this.type)throw Error(`Invalid File type: `+this.type);this.key=o(t,`key`,!1);var n=this.key;if(e.prefix&&e.prefix!==``&&(this.key=e.prefix+n),!this.key)throw Error(`Invalid File key: `+this.key);var r=o(t,`url`);r===void 0?r=e.path+n+`.`+o(t,`extension`,``):typeof r==`string`&&!r.match(/^(?:blob:|data:|capacitor:\/\/|http:\/\/|https:\/\/|\/\/)/)&&(r=e.path+r),this.url=r,this.src=``,this.xhrSettings=u(o(t,`responseType`,void 0)),o(t,`xhrSettings`,!1)&&(this.xhrSettings=c(this.xhrSettings,o(t,`xhrSettings`,{}))),this.xhrLoader=null,this.state=typeof this.url==`function`?i.FILE_POPULATED:i.FILE_PENDING,this.bytesTotal=0,this.bytesLoaded=-1,this.percentComplete=-1,this.crossOrigin=void 0,this.data=void 0,this.config=o(t,`config`,{}),this.multiFile,this.linkFile,this.base64=typeof r==`string`&&r.indexOf(`data:`)===0,this.retryAttempts=o(t,`maxRetries`,e.maxRetries)},setLink:function(e){this.linkFile=e,e.linkFile=this},resetXHR:function(){this.xhrLoader&&(this.xhrLoader.onload=void 0,this.xhrLoader.onerror=void 0,this.xhrLoader.onprogress=void 0)},load:function(){if(this.state===i.FILE_POPULATED)this.loader.nextFile(this,!0);else{if(this.state=i.FILE_LOADING,this.src=s(this,this.loader.baseURL),!this.src)throw Error(`URL Error in File: `+this.key+` from: `+this.url);this.src.indexOf(`data:`)===0&&(this.base64=!0),this.xhrLoader=l(this,this.loader.xhr)}},onLoad:function(e,t){var n=e.responseURL&&this.loader.localSchemes.some(function(t){return e.responseURL.indexOf(t)===0})&&t.target.status===0,r=!(t.target&&t.target.status!==200)||n;e.readyState===4&&e.status>=400&&e.status<=599&&(r=!1),this.state=i.FILE_LOADED,this.resetXHR(),this.loader.nextFile(this,r)},onBase64Load:function(e){this.xhrLoader=e,this.state=i.FILE_LOADED,this.percentComplete=1,this.loader.emit(a.FILE_PROGRESS,this,this.percentComplete),this.loader.nextFile(this,!0)},onError:function(){this.resetXHR(),this.retryAttempts>0?(this.retryAttempts--,this.load()):this.loader.nextFile(this,!1)},onProgress:function(e){e.lengthComputable&&(this.bytesLoaded=e.loaded,this.bytesTotal=e.total,this.percentComplete=Math.min(this.bytesLoaded/this.bytesTotal,1),this.loader.emit(a.FILE_PROGRESS,this,this.percentComplete))},onProcess:function(){this.state=i.FILE_PROCESSING,this.onProcessComplete()},onProcessComplete:function(){this.state=i.FILE_COMPLETE,this.multiFile&&this.multiFile.onFileComplete(this),this.loader.fileProcessComplete(this)},onProcessError:function(){console.error(`Failed to process file: %s "%s"`,this.type,this.key),this.state=i.FILE_ERRORED,this.multiFile&&this.multiFile.onFileFailed(this),this.loader.fileProcessComplete(this)},hasCacheConflict:function(){return this.cache&&this.cache.exists(this.key)},addToCache:function(){this.cache&&this.data&&this.cache.add(this.key,this.data)},pendingDestroy:function(e){if(this.state!==i.FILE_PENDING_DESTROY){e===void 0&&(e=this.data);var t=this.key,n=this.type;this.loader.emit(a.FILE_COMPLETE,t,n,e),this.loader.emit(a.FILE_KEY_COMPLETE+n+`-`+t,t,n,e),this.loader.flagForRemoval(this),this.state=i.FILE_PENDING_DESTROY}},destroy:function(){this.loader=null,this.cache=null,this.xhrSettings=null,this.multiFile=null,this.linkFile=null,this.data=null}});d.createObjectURL=function(e,t,n){if(typeof URL==`function`)e.src=URL.createObjectURL(t);else{var r=new FileReader;r.onload=function(){e.removeAttribute(`crossOrigin`),e.src=`data:`+(t.type||n)+`;base64,`+r.result.split(`,`)[1]},r.onerror=e.onerror,r.readAsDataURL(t)}},d.revokeObjectURL=function(e){typeof URL==`function`&&URL.revokeObjectURL(e.src)},e.exports=d},74099(e){var t={};e.exports={install:function(e){for(var n in t)e[n]=t[n]},register:function(e,n){t[e]=n},destroy:function(){t={}}}},98356(e){e.exports=function(e,t){return e.url?e.url.match(/^(?:blob:|data:|capacitor:\/\/|file:\/\/|http:\/\/|https:\/\/|\/\/)/)?e.url:t+e.url:!1}},74261(e,t,n){var r=n(83419),i=n(23906),a=n(50792),o=n(54899),s=n(74099),c=n(95540),l=n(35154),u=n(41212),d=n(37277),f=n(44594),p=n(92638),m=new r({Extends:a,initialize:function(e){a.call(this);var t=e.sys.game.config,n=e.sys.settings.loader;this.scene=e,this.systems=e.sys,this.cacheManager=e.sys.cache,this.textureManager=e.sys.textures,this.sceneManager=e.sys.game.scene,s.install(this),this.prefix=``,this.path=``,this.baseURL=``,this.setBaseURL(c(n,`baseURL`,t.loaderBaseURL)),this.setPath(c(n,`path`,t.loaderPath)),this.setPrefix(c(n,`prefix`,t.loaderPrefix)),this.maxParallelDownloads=c(n,`maxParallelDownloads`,t.loaderMaxParallelDownloads),this.xhr=p(c(n,`responseType`,t.loaderResponseType),c(n,`async`,t.loaderAsync),c(n,`user`,t.loaderUser),c(n,`password`,t.loaderPassword),c(n,`timeout`,t.loaderTimeout),c(n,`withCredentials`,t.loaderWithCredentials)),this.crossOrigin=c(n,`crossOrigin`,t.loaderCrossOrigin),this.imageLoadType=c(n,`imageLoadType`,t.loaderImageLoadType),this.localSchemes=c(n,`localScheme`,t.loaderLocalScheme),this.totalToLoad=0,this.progress=0,this.list=new Set,this.inflight=new Set,this.queue=new Set,this._deleteQueue=new Set,this.totalFailed=0,this.totalComplete=0,this.state=i.LOADER_IDLE,this.multiKeyIndex=0,this.maxRetries=c(n,`maxRetries`,t.loaderMaxRetries),e.sys.events.once(f.BOOT,this.boot,this),e.sys.events.on(f.START,this.pluginStart,this)},boot:function(){this.systems.events.once(f.DESTROY,this.destroy,this)},pluginStart:function(){this.systems.events.once(f.SHUTDOWN,this.shutdown,this)},setBaseURL:function(e){return e===void 0&&(e=``),e!==``&&e.substr(-1)!==`/`&&(e=e.concat(`/`)),this.baseURL=e,this},setPath:function(e){return e===void 0&&(e=``),e!==``&&e.substr(-1)!==`/`&&(e=e.concat(`/`)),this.path=e,this},setPrefix:function(e){return e===void 0&&(e=``),this.prefix=e,this},setCORS:function(e){return this.crossOrigin=e,this},addFile:function(e){Array.isArray(e)||(e=[e]);for(var t=0;t<e.length;t++){var n=e[t];this.keyExists(n)||(this.list.add(n),this.emit(o.ADD,n.key,n.type,this,n),this.isLoading()&&(this.totalToLoad++,this.updateProgress()))}},keyExists:function(e){var t=e.hasCacheConflict();return t||this.list.forEach(function(n){if(n.type===e.type&&n.key===e.key)return t=!0,!1}),!t&&this.isLoading()&&(this.inflight.forEach(function(n){if(n.type===e.type&&n.key===e.key)return t=!0,!1}),this.queue.forEach(function(n){if(n.type===e.type&&n.key===e.key)return t=!0,!1})),t},addPack:function(e,t){if(typeof t==`string`){var n=l(e,t);n&&(e={packKey:n})}var r=0,i=this.baseURL,a=this.path,o=this.prefix;for(var s in e)if(Object.prototype.hasOwnProperty.call(e,s)){var u=e[s],d=c(u,`baseURL`,i),f=c(u,`path`,a),p=c(u,`prefix`,o),m=c(u,`files`,null),h=c(u,`defaultType`,`void`);if(Array.isArray(m)){this.setBaseURL(d),this.setPath(f),this.setPrefix(p);for(var g=0;g<m.length;g++){var _=m[g],v=_.hasOwnProperty(`type`)?_.type:h;this[v]&&(this[v](_),r++)}}}return this.setBaseURL(i),this.setPath(a),this.setPrefix(o),r>0},removePack:function(e,t){var n=this.systems.anims,r=this.cacheManager,i=this.textureManager,a={animation:`json`,aseprite:`json`,audio:`audio`,audioSprite:`audio`,binary:`binary`,bitmapFont:`bitmapFont`,css:null,glsl:`shader`,html:`html`,json:`json`,obj:`obj`,plugin:null,scenePlugin:null,script:null,spine:`json`,text:`text`,tilemapCSV:`tilemap`,tilemapImpact:`tilemap`,tilemapTiledJSON:`tilemap`,video:`video`,xml:`xml`},o;if(u(e))o=e;else if(o=r.json.get(e),!o){console.warn(`Asset Pack not found in JSON cache:`,e);return}for(var s in t&&(o={_:o[t]}),o){var l=o[s],d=c(l,`prefix`,``),f=c(l,`files`),p=c(l,`defaultType`);if(Array.isArray(f))for(var m=0;m<f.length;m++){var h=f[m],g=h.hasOwnProperty(`type`)?h.type:p;if(!g){console.warn(`No type:`,h);continue}var _=d+h.key;if(g===`animation`&&n.remove(_),!((g===`aseprite`||g===`atlas`||g===`atlasXML`||g===`htmlTexture`||g===`image`||g===`multiatlas`||g===`spritesheet`||g===`svg`||g===`texture`||g===`unityAtlas`)&&(i.remove(_),!a[g]))){if(g===`pack`){this.removePack(_,h.dataKey);continue}if(g===`spine`){var v=r.custom.spine.get(_);if(!v)continue;var y=v.prefix===void 0?``:v.prefix;r.custom.spine.remove(_);var b=r.custom.spineTextures.get(_);if(!b)continue;r.custom.spineTextures.remove(_);for(var x=0;x<b.pages.length;x++){var S=y+b.pages[x].name,C=_+`:`+S;i.exists(C)?i.remove(C):i.remove(S)}}var w=a[g];if(w!==null){if(!w){console.warn(`Unknown type:`,g);continue}r[w].remove(_)}}}}},isLoading:function(){return this.state===i.LOADER_LOADING||this.state===i.LOADER_PROCESSING},isReady:function(){return this.state===i.LOADER_IDLE||this.state===i.LOADER_COMPLETE},start:function(){this.isReady()&&(this.progress=0,this.totalFailed=0,this.totalComplete=0,this.totalToLoad=this.list.size,this.emit(o.START,this),this.list.size===0?this.loadComplete():(this.state=i.LOADER_LOADING,this.inflight.clear(),this.queue.clear(),this.updateProgress(),this.checkLoadQueue(),this.systems.events.on(f.UPDATE,this.update,this)))},updateProgress:function(){this.progress=1-(this.list.size+this.inflight.size)/this.totalToLoad,this.emit(o.PROGRESS,this.progress)},update:function(){this.state===i.LOADER_LOADING&&this.list.size>0&&this.inflight.size<this.maxParallelDownloads&&this.checkLoadQueue()},checkLoadQueue:function(){this.list.forEach(function(e){if((e.state===i.FILE_POPULATED||e.state===i.FILE_PENDING&&this.inflight.size<this.maxParallelDownloads)&&(this.inflight.add(e),this.list.delete(e),e.crossOrigin||=this.crossOrigin,e.load()),this.inflight.size===this.maxParallelDownloads)return!1},this)},nextFile:function(e,t){this.inflight&&(this.inflight.delete(e),this.updateProgress(),t?(this.totalComplete++,this.queue.add(e),this.emit(o.FILE_LOAD,e),e.onProcess()):(this.totalFailed++,this._deleteQueue.add(e),this.emit(o.FILE_LOAD_ERROR,e),this.fileProcessComplete(e)))},fileProcessComplete:function(e){!this.scene||!this.systems||!this.systems.game||this.systems.game.pendingDestroy||(e.state===i.FILE_ERRORED?e.multiFile&&e.multiFile.onFileFailed(e):e.state===i.FILE_COMPLETE&&(e.multiFile?e.multiFile.isReadyToProcess()&&(e.multiFile.addToCache(),e.multiFile.pendingDestroy()):(e.addToCache(),e.pendingDestroy())),this.queue.delete(e),this.list.size===0&&this.inflight.size===0&&this.queue.size===0&&this.loadComplete())},loadComplete:function(){this.emit(o.POST_PROCESS,this),this.list.clear(),this.inflight.clear(),this.queue.clear(),this.progress=1,this.state=i.LOADER_COMPLETE,this.systems.events.off(f.UPDATE,this.update,this),this._deleteQueue.forEach(function(e){e.destroy()}),this._deleteQueue.clear(),this.emit(o.COMPLETE,this,this.totalComplete,this.totalFailed)},flagForRemoval:function(e){this._deleteQueue.add(e)},saveJSON:function(e,t){return this.save(JSON.stringify(e),t)},save:function(e,t,n){t===void 0&&(t=`file.json`),n===void 0&&(n=`application/json`);var r=new Blob([e],{type:n}),i=URL.createObjectURL(r),a=document.createElement(`a`);return a.download=t,a.textContent=`Download `+t,a.href=i,a.click(),this},reset:function(){this.list.clear(),this.inflight.clear(),this.queue.clear();var e=this.systems.game.config,t=this.systems.settings.loader;this.setBaseURL(c(t,`baseURL`,e.loaderBaseURL)),this.setPath(c(t,`path`,e.loaderPath)),this.setPrefix(c(t,`prefix`,e.loaderPrefix)),this.state=i.LOADER_IDLE},shutdown:function(){this.reset(),this.state=i.LOADER_SHUTDOWN,this.removeAllListeners(),this.systems.events.off(f.UPDATE,this.update,this),this.systems.events.off(f.SHUTDOWN,this.shutdown,this)},destroy:function(){this.shutdown(),this.state=i.LOADER_DESTROYED,this.systems.events.off(f.UPDATE,this.update,this),this.systems.events.off(f.START,this.pluginStart,this),this.list=null,this.inflight=null,this.queue=null,this.scene=null,this.systems=null,this.textureManager=null,this.cacheManager=null,this.sceneManager=null}});d.register(`Loader`,m,`load`),e.exports=m},3374(e,t,n){var r=n(79291),i=n(92638);e.exports=function(e,t){var n=e===void 0?i():r({},e);if(t)for(var a in t)t[a]!==void 0&&(n[a]=t[a]);return n}},26430(e,t,n){var r=n(83419),i=n(23906),a=n(54899);e.exports=new r({initialize:function(e,t,n,r){var a=[];r.forEach(function(e){e&&a.push(e)}),this.loader=e,this.type=t,this.key=n;var o=this.key;e.prefix&&e.prefix!==``&&(this.key=e.prefix+o),this.multiKeyIndex=e.multiKeyIndex++,this.files=a,this.state=i.FILE_PENDING,this.complete=!1,this.pending=a.length,this.failed=0,this.config={},this.baseURL=e.baseURL,this.path=e.path,this.prefix=e.prefix;for(var s=0;s<a.length;s++)a[s].multiFile=this},isReadyToProcess:function(){return this.pending===0&&this.failed===0&&!this.complete},addToMultiFile:function(e){return this.files.push(e),e.multiFile=this,this.pending++,this.complete=!1,this},onFileComplete:function(e){this.files.indexOf(e)!==-1&&this.pending--},onFileFailed:function(e){this.files.indexOf(e)!==-1&&(this.failed++,console.error(`File failed: %s "%s" (via %s "%s")`,this.type,this.key,e.type,e.key))},pendingDestroy:function(){if(this.state!==i.FILE_PENDING_DESTROY){var e=this.key,t=this.type;this.loader.emit(a.FILE_COMPLETE,e,t),this.loader.emit(a.FILE_KEY_COMPLETE+t+`-`+e,e,t),this.loader.flagForRemoval(this);for(var n=0;n<this.files.length;n++)this.files[n].pendingDestroy();this.state=i.FILE_PENDING_DESTROY}},destroy:function(){this.loader=null,this.files=null,this.config=null}})},84376(e,t,n){var r=n(3374);e.exports=function(e,t){var n=r(t,e.xhrSettings);if(e.base64){var i=e.url.split(`;base64,`).pop()||e.url.split(`,`).pop(),a=e.xhrSettings.responseType===`arraybuffer`?{response:Uint8Array.from(atob(i),function(e){return e.charCodeAt(0)}).buffer}:{responseText:atob(i)};e.onBase64Load(a);return}var o=new XMLHttpRequest;if(o.open(`GET`,e.src,n.async,n.user,n.password),o.responseType=e.xhrSettings.responseType,o.timeout=n.timeout,n.headers)for(var s in n.headers)o.setRequestHeader(s,n.headers[s]);return n.header&&n.headerValue&&o.setRequestHeader(n.header,n.headerValue),n.requestedWith&&o.setRequestHeader(`X-Requested-With`,n.requestedWith),n.overrideMimeType&&o.overrideMimeType(n.overrideMimeType),n.withCredentials&&(o.withCredentials=!0),o.onload=e.onLoad.bind(e,o),o.onerror=e.onError.bind(e,o),o.onprogress=e.onProgress.bind(e),o.ontimeout=e.onError.bind(e,o),o.send(),o}},92638(e){e.exports=function(e,t,n,r,i,a){return e===void 0&&(e=``),t===void 0&&(t=!0),n===void 0&&(n=``),r===void 0&&(r=``),i===void 0&&(i=0),a===void 0&&(a=!1),{responseType:e,async:t,user:n,password:r,timeout:i,headers:void 0,header:void 0,headerValue:void 0,requestedWith:!1,overrideMimeType:void 0,withCredentials:a}}},23906(e){e.exports={LOADER_IDLE:0,LOADER_LOADING:1,LOADER_PROCESSING:2,LOADER_COMPLETE:3,LOADER_SHUTDOWN:4,LOADER_DESTROYED:5,FILE_PENDING:10,FILE_LOADING:11,FILE_LOADED:12,FILE_FAILED:13,FILE_PROCESSING:14,FILE_ERRORED:16,FILE_COMPLETE:17,FILE_DESTROYED:18,FILE_POPULATED:19,FILE_PENDING_DESTROY:20}},42155(e){e.exports=`addfile`},38991(e){e.exports=`complete`},27540(e){e.exports=`filecomplete`},87464(e){e.exports=`filecomplete-`},94486(e){e.exports=`loaderror`},13035(e){e.exports=`load`},38144(e){e.exports=`fileprogress`},97520(e){e.exports=`postprocess`},85595(e){e.exports=`progress`},55680(e){e.exports=`start`},54899(e,t,n){e.exports={ADD:n(42155),COMPLETE:n(38991),FILE_COMPLETE:n(27540),FILE_KEY_COMPLETE:n(87464),FILE_LOAD_ERROR:n(94486),FILE_LOAD:n(13035),FILE_PROGRESS:n(38144),POST_PROCESS:n(97520),PROGRESS:n(85595),START:n(55680)}},14135(e,t,n){var r=n(83419),i=n(74099),a=n(518),o=n(54899),s=new r({Extends:a,initialize:function(e,t,n,r,i){a.call(this,e,t,n,r,i),this.type=`animationJSON`},onProcess:function(){this.loader.once(o.POST_PROCESS,this.onLoadComplete,this),a.prototype.onProcess.call(this)},onLoadComplete:function(){this.loader.systems.anims.fromJSON(this.data)}});i.register(`animation`,function(e,t,n,r){if(Array.isArray(e))for(var i=0;i<e.length;i++)this.addFile(new s(this,e[i]));else this.addFile(new s(this,e,t,r,n));return this}),e.exports=s},76272(e,t,n){var r=n(83419),i=n(74099),a=n(95540),o=n(19550),s=n(41212),c=n(518),l=n(26430),u=new r({Extends:l,initialize:function(e,t,n,r,i,u){var d,f;if(s(t)){var p=t;t=a(p,`key`),d=new o(e,{key:t,url:a(p,`textureURL`),extension:a(p,`textureExtension`,`png`),normalMap:a(p,`normalMap`),xhrSettings:a(p,`textureXhrSettings`)}),f=new c(e,{key:t,url:a(p,`atlasURL`),extension:a(p,`atlasExtension`,`json`),xhrSettings:a(p,`atlasXhrSettings`)})}else d=new o(e,t,n,i),f=new c(e,t,r,u);d.linkFile?l.call(this,e,`atlasjson`,t,[d,f,d.linkFile]):l.call(this,e,`atlasjson`,t,[d,f])},addToCache:function(){if(this.isReadyToProcess()){var e=this.files[0],t=this.files[1],n=this.files[2]?this.files[2].data:null;this.loader.textureManager.addAtlas(e.key,e.data,t.data,n),t.addToCache(),this.complete=!0}}});i.register(`aseprite`,function(e,t,n,r,i){var a;if(Array.isArray(e))for(var o=0;o<e.length;o++)a=new u(this,e[o]),this.addFile(a.files);else a=new u(this,e,t,n,r,i),this.addFile(a.files);return this}),e.exports=u},38734(e,t,n){var r=n(83419),i=n(74099),a=n(95540),o=n(19550),s=n(41212),c=n(518),l=n(26430),u=new r({Extends:l,initialize:function(e,t,n,r,i,u){var d,f;if(s(t)){var p=t;t=a(p,`key`),d=new o(e,{key:t,url:a(p,`textureURL`),extension:a(p,`textureExtension`,`png`),normalMap:a(p,`normalMap`),xhrSettings:a(p,`textureXhrSettings`)}),f=new c(e,{key:t,url:a(p,`atlasURL`),extension:a(p,`atlasExtension`,`json`),xhrSettings:a(p,`atlasXhrSettings`)})}else d=new o(e,t,n,i),f=new c(e,t,r,u);d.linkFile?l.call(this,e,`atlasjson`,t,[d,f,d.linkFile]):l.call(this,e,`atlasjson`,t,[d,f])},addToCache:function(){if(this.isReadyToProcess()){var e=this.files[0],t=this.files[1],n=this.files[2]?this.files[2].data:null;this.loader.textureManager.addAtlas(e.key,e.data,t.data,n),this.complete=!0}}});i.register(`atlas`,function(e,t,n,r,i){var a;if(Array.isArray(e))for(var o=0;o<e.length;o++)a=new u(this,e[o]),this.addFile(a.files);else a=new u(this,e,t,n,r,i),this.addFile(a.files);return this}),e.exports=u},74599(e,t,n){var r=n(83419),i=n(74099),a=n(95540),o=n(19550),s=n(41212),c=n(26430),l=n(57318),u=new r({Extends:c,initialize:function(e,t,n,r,i,u){var d,f;if(s(t)){var p=t;t=a(p,`key`),d=new o(e,{key:t,url:a(p,`textureURL`),extension:a(p,`textureExtension`,`png`),normalMap:a(p,`normalMap`),xhrSettings:a(p,`textureXhrSettings`)}),f=new l(e,{key:t,url:a(p,`atlasURL`),extension:a(p,`atlasExtension`,`xml`),xhrSettings:a(p,`atlasXhrSettings`)})}else d=new o(e,t,n,i),f=new l(e,t,r,u);d.linkFile?c.call(this,e,`atlasxml`,t,[d,f,d.linkFile]):c.call(this,e,`atlasxml`,t,[d,f])},addToCache:function(){if(this.isReadyToProcess()){var e=this.files[0],t=this.files[1],n=this.files[2]?this.files[2].data:null;this.loader.textureManager.addAtlasXML(e.key,e.data,t.data,n),this.complete=!0}}});i.register(`atlasXML`,function(e,t,n,r,i){var a;if(Array.isArray(e))for(var o=0;o<e.length;o++)a=new u(this,e[o]),this.addFile(a.files);else a=new u(this,e,t,n,r,i),this.addFile(a.files);return this}),e.exports=u},21097(e,t,n){var r=n(83419),i=n(23906),a=n(41299),o=n(74099),s=n(95540),c=n(89749),l=n(41212),u=new r({Extends:a,initialize:function(e,t,n,r,i){if(l(t)){var o=t;t=s(o,`key`),r=s(o,`xhrSettings`),i=s(o,`context`,i)}var c={type:`audio`,cache:e.cacheManager.audio,extension:n.type,responseType:`arraybuffer`,key:t,url:n.url,xhrSettings:r,config:{context:i}};a.call(this,e,c)},onProcess:function(){this.state=i.FILE_PROCESSING;var e=this;this.config.context.decodeAudioData(this.xhrLoader.response,function(t){e.data=t,e.onProcessComplete()},function(t){console.error(`Error decoding audio: `+e.key+` - `,t?t.message:null),e.onProcessError()}),this.config.context=null}});u.create=function(e,t,n,r,i){var a=e.systems.game,o=a.config.audio,d=a.device.audio;l(t)&&(n=s(t,`url`,[]),r=s(t,`config`,{}));var f=u.getAudioURL(a,n);return f?d.webAudio&&!o.disableWebAudio?new u(e,t,f,i,a.sound.context):new c(e,t,f,r):(console.warn(`No audio URLs for "%s" can play on this device`,t),null)},u.getAudioURL=function(e,t){Array.isArray(t)||(t=[t]);for(var n=0;n<t.length;n++){var r=s(t[n],`url`,t[n]);if(r.indexOf(`blob:`)===0||r.indexOf(`data:`)===0)return{url:r,type:``};var i=r.match(/\.([a-zA-Z0-9]+)($|\?)/);if(i=s(t[n],`type`,i?i[1]:``).toLowerCase(),e.device.audio[i])return{url:r,type:i}}return null},o.register(`audio`,function(e,t,n,r){var i=this.systems.game,a=i.config.audio,o=i.device.audio;if(a.noAudio||!o.webAudio&&!o.audioData)return this;var s;if(Array.isArray(e))for(var c=0;c<e.length;c++)s=u.create(this,e[c]),s&&this.addFile(s);else s=u.create(this,e,t,n,r),s&&this.addFile(s);return this}),e.exports=u},89524(e,t,n){var r=n(21097),i=n(83419),a=n(74099),o=n(95540),s=n(41212),c=n(518),l=n(26430),u=new i({Extends:l,initialize:function(e,t,n,i,a,u,d){if(s(t)){var f=t;t=o(f,`key`),n=o(f,`jsonURL`),i=o(f,`audioURL`),a=o(f,`audioConfig`),u=o(f,`audioXhrSettings`),d=o(f,`jsonXhrSettings`)}var p;if(!i)p=new c(e,t,n,d),l.call(this,e,`audiosprite`,t,[p]),this.config.resourceLoad=!0,this.config.audioConfig=a,this.config.audioXhrSettings=u;else{var m=r.create(e,t,i,a,u);m&&(p=new c(e,t,n,d),l.call(this,e,`audiosprite`,t,[m,p]),this.config.resourceLoad=!1)}},onFileComplete:function(e){if(this.files.indexOf(e)!==-1&&(this.pending--,this.config.resourceLoad&&e.type===`json`&&e.data.hasOwnProperty(`resources`))){var t=e.data.resources,n=o(this.config,`audioConfig`),i=o(this.config,`audioXhrSettings`),a=r.create(this.loader,e.key,t,n,i);a&&(this.addToMultiFile(a),this.loader.addFile(a))}},addToCache:function(){if(this.isReadyToProcess()){var e=this.files[0],t=this.files[1];e.addToCache(),t.addToCache(),this.complete=!0}}});a.register(`audioSprite`,function(e,t,n,r,i,a){var o=this.systems.game,s=o.config.audio,c=o.device.audio;if(s&&s.noAudio||!c.webAudio&&!c.audioData)return this;var l;if(Array.isArray(e))for(var d=0;d<e.length;d++)l=new u(this,e[d]),l.files&&this.addFile(l.files);else l=new u(this,e,t,n,r,i,a),l.files&&this.addFile(l.files);return this})},85722(e,t,n){var r=n(83419),i=n(23906),a=n(41299),o=n(74099),s=n(95540),c=n(41212),l=new r({Extends:a,initialize:function(e,t,n,r,i){var o=`bin`;if(c(t)){var l=t;t=s(l,`key`),n=s(l,`url`),r=s(l,`xhrSettings`),o=s(l,`extension`,o),i=s(l,`dataType`,i)}var u={type:`binary`,cache:e.cacheManager.binary,extension:o,responseType:`arraybuffer`,key:t,url:n,xhrSettings:r,config:{dataType:i}};a.call(this,e,u)},onProcess:function(){this.state=i.FILE_PROCESSING;var e=this.config.dataType;this.data=e?new e(this.xhrLoader.response):this.xhrLoader.response,this.onProcessComplete()}});o.register(`binary`,function(e,t,n,r){if(Array.isArray(e))for(var i=0;i<e.length;i++)this.addFile(new l(this,e[i]));else this.addFile(new l(this,e,t,r,n));return this}),e.exports=l},97025(e,t,n){var r=n(83419),i=n(74099),a=n(95540),o=n(19550),s=n(41212),c=n(26430),l=n(21859),u=n(57318),d=new r({Extends:c,initialize:function(e,t,n,r,i,l){var d,f;if(s(t)){var p=t;t=a(p,`key`),d=new o(e,{key:t,url:a(p,`textureURL`),extension:a(p,`textureExtension`,`png`),normalMap:a(p,`normalMap`),xhrSettings:a(p,`textureXhrSettings`)}),f=new u(e,{key:t,url:a(p,`fontDataURL`),extension:a(p,`fontDataExtension`,`xml`),xhrSettings:a(p,`fontDataXhrSettings`)})}else d=new o(e,t,n,i),f=new u(e,t,r,l);d.linkFile?c.call(this,e,`bitmapfont`,t,[d,f,d.linkFile]):c.call(this,e,`bitmapfont`,t,[d,f])},addToCache:function(){if(this.isReadyToProcess()){var e=this.files[0],t=this.files[1];e.addToCache();var n=e.cache.get(e.key),r=l(t.data,e.cache.getFrame(e.key),0,0,n);this.loader.cacheManager.bitmapFont.add(e.key,{data:r,texture:e.key,frame:null}),this.complete=!0}}});i.register(`bitmapFont`,function(e,t,n,r,i){var a;if(Array.isArray(e))for(var o=0;o<e.length;o++)a=new d(this,e[o]),this.addFile(a.files);else a=new d(this,e,t,n,r,i),this.addFile(a.files);return this}),e.exports=d},16024(e,t,n){var r=n(83419),i=n(23906),a=n(41299),o=n(74099),s=n(95540),c=n(41212),l=new r({Extends:a,initialize:function(e,t,n,r){var i=`css`;if(c(t)){var o=t;t=s(o,`key`),n=s(o,`url`),r=s(o,`xhrSettings`),i=s(o,`extension`,i)}var l={type:`script`,cache:!1,extension:i,responseType:`text`,key:t,url:n,xhrSettings:r};a.call(this,e,l)},onProcess:function(){this.state=i.FILE_PROCESSING,this.data=document.createElement(`style`),this.data.defer=!1,this.data.innerHTML=this.xhrLoader.responseText,document.head.appendChild(this.data),this.onProcessComplete()}});o.register(`css`,function(e,t,n){if(Array.isArray(e))for(var r=0;r<e.length;r++)this.addFile(new l(this,e[r]));else this.addFile(new l(this,e,t,n));return this}),e.exports=l},69559(e,t,n){var r=n(38734),i=n(85722),a=n(83419),o=n(74099),s=n(95540),c=n(19550),l=n(41212),u=n(518),d=n(31403),f=n(46975),p=n(59327),m=n(26430),h=n(82038),g=n(55222),_=new a({Extends:m,initialize:function(e,t,n,r){if(n.multiAtlasURL){var a=new u(e,{key:t,url:n.multiAtlasURL,xhrSettings:r,config:n});m.call(this,e,`texture`,t,[a])}else{var o=n.textureURL.substr(n.textureURL.length-3);n.type||=o.toLowerCase()===`ktx`?`KTX`:`PVR`;var s=new i(e,{key:t,url:n.textureURL,extension:o,xhrSettings:r,config:n});if(n.atlasURL){var c=new u(e,{key:t,url:n.atlasURL,xhrSettings:r,config:n});m.call(this,e,`texture`,t,[s,c])}else m.call(this,e,`texture`,t,[s])}this.config=n},onFileComplete:function(e){if(this.files.indexOf(e)!==-1){if(this.pending--,!this.config.multiAtlasURL)return;if(e.type===`json`&&e.data.hasOwnProperty(`textures`)){var t=e.data.textures,n=this.config,r=this.loader,a=r.baseURL,o=r.path,c=r.prefix,l=s(n,`multiBaseURL`,this.baseURL),u=s(n,`multiPath`,this.path),d=s(n,`prefix`,this.prefix),f=s(n,`textureXhrSettings`);l&&r.setBaseURL(l),u&&r.setPath(u),d&&r.setPrefix(d);for(var p=0;p<t.length;p++){var m=t[p].image,h=`CMA`+this.multiKeyIndex+`_`+m,g=new i(r,h,m,f);if(this.addToMultiFile(g),r.addFile(g),t[p].normalMap){var _=new i(r,h,t[p].normalMap,f);_.type=`normalMap`,g.setLink(_),this.addToMultiFile(_),r.addFile(_)}}r.setBaseURL(a),r.setPath(o),r.setPrefix(c)}}},addToCache:function(){function e(e){console.warn(`Compressed Texture Invalid: "`+a.key+`". `+e)}if(this.isReadyToProcess()){var t=this.config;if(t.multiAtlasURL)this.addMultiToCache();else{var n=this.loader.systems.renderer,r=this.loader.textureManager,i,a=this.files[0],o=this.files[1];if(t.type===`PVR`?i=h(a.data):t.type===`KTX`&&(i=d(a.data),i||e(`KTX file contains unsupported format.`)),i&&!g(i)&&(e(`Texture dimensions failed verification. Check the texture format specifications for `+t.format+` 0x`+i.internalFormat.toString(16)+`.`),i=null),i&&!n.supportsCompressedTexture(t.format,i.internalFormat)&&(e(`Texture format `+t.format+` with internal format `+i.internalFormat+` not supported by the GPU. Texture invalid. This is often due to the texture using sRGB instead of linear RGB.`),i=null),i){i.format=n.getCompressedTextureName(t.format,i.internalFormat);var s=o&&o.data?o.data:null;r.addCompressedTexture(a.key,i,s)}}this.complete=!0}},addMultiToCache:function(){for(var e=this.config,t=this.files[0],n=[],r=[],i=[],a=this.loader.systems.renderer,o=this.loader.textureManager,s,c=1;c<this.files.length;c++){var l=this.files[c];if(l.type!==`normalMap`)for(var u=l.key.indexOf(`_`),f=l.key.substr(u+1),p=l.data,m=0;m<t.data.textures.length;m++){var g=t.data.textures[m];if(g.image===f){e.type===`PVR`?s=h(p):e.type===`KTX`&&(s=d(p)),s&&a.supportsCompressedTexture(e.format,s.internalFormat)&&(s.format=a.getCompressedTextureName(e.format,s.internalFormat),r.push(s),n.push(g),l.linkFile&&i.push(l.linkFile.data));break}}}i.length===0&&(i=void 0),o.addAtlasJSONArray(this.key,r,n,i),this.complete=!0}});o.register(`texture`,function(e,t,n){var i=this.systems.renderer,a=function(e,t,n,a){var o={format:null,type:null,textureURL:void 0,atlasURL:void 0,multiAtlasURL:void 0,multiPath:void 0,multiBaseURL:void 0};if(l(t)){var u=t;t=s(u,`key`),n=s(u,`url`),a=s(u,`xhrSettings`)}var d=!1;for(var m in n)if(i.supportsCompressedTexture(m)){var h=n[m];typeof h==`string`?o.textureURL=h:o=f(h,o),o.format=m.toUpperCase(),d=!0;break}if(!d)console.warn(`No supported compressed texture format or IMG fallback`,t);else if(o.format===`IMG`){var g,v;o.multiAtlasURL?(v=new p(e,t,o.multiAtlasURL,o.multiPath,o.multiBaseURL,a),g=v.files):o.atlasURL?(v=new r(e,t,o.textureURL,o.atlasURL,a),g=v.files):g=new c(e,t,o.textureURL,a),e.addFile(g)}else{var y=new _(e,t,o,a);e.addFile(y.files)}};if(Array.isArray(e))for(var o=0;o<e.length;o++)a(this,e[o]);else a(this,e,t,n);return this}),e.exports=_},87674(e,t,n){var r=n(83419),i=n(23906),a=n(41299),o=n(74099),s=n(95540),c=n(98356),l=n(41212),u=new r({Extends:a,initialize:function(e,t,n,r,o,c){var u=`ttf`;if(l(t)){var d=t;t=s(d,`key`),n=s(d,`url`),r=s(d,`format`,`truetype`),o=s(d,`descriptors`,null),c=s(d,`xhrSettings`),u=s(d,`extension`,u)}else r===void 0&&(r=`truetype`);var f={type:`font`,cache:!1,extension:u,responseType:`text`,key:t,url:n,xhrSettings:c};a.call(this,e,f),this.data={format:r,descriptors:o},this.state=i.FILE_POPULATED},onProcess:function(){this.state=i.FILE_PROCESSING,this.src=c(this,this.loader.baseURL);var e,t=this.key,n=`url(`+this.src+`) format("`+this.data.format+`")`;e=this.data.descriptors?new FontFace(t,n,this.data.descriptors):new FontFace(t,n);var r=this;e.load().then(function(){document.fonts.add(e),document.body.classList.add(`fonts-loaded`),r.onProcessComplete()}).catch(function(){console.warn(`Font failed to load`,n),r.onProcessComplete()})}});o.register(`font`,function(e,t,n,r,i){if(Array.isArray(e))for(var a=0;a<e.length;a++)this.addFile(new u(this,e[a]));else this.addFile(new u(this,e,t,n,r,i));return this}),e.exports=u},47931(e,t,n){var r=n(83419),i=n(23906),a=n(41299),o=n(74099),s=n(95540),c=n(41212),l=n(73894),u=new r({Extends:a,initialize:function(e,t,n,r){var i=`glsl`;if(c(t)){var o=t;t=s(o,`key`),n=s(o,`url`),r=s(o,`xhrSettings`),i=s(o,`extension`,i)}var l={type:`glsl`,cache:e.cacheManager.shader,extension:i,responseType:`text`,key:t,url:n,xhrSettings:r};a.call(this,e,l)},onProcess:function(){this.state=i.FILE_PROCESSING,this.data=this.xhrLoader.responseText,this.onProcessComplete()},addToCache:function(){this.cache.add(this.key,new l(this.key,this.data))}});o.register(`glsl`,function(e,t,n){if(Array.isArray(e))for(var r=0;r<e.length;r++)this.addFile(new u(this,e[r]));else this.addFile(new u(this,e,t,n));return this}),e.exports=u},89749(e,t,n){var r=n(83419),i=n(54899),a=n(41299),o=n(95540),s=n(98356),c=n(41212);e.exports=new r({Extends:a,initialize:function(e,t,n,r){if(c(t)){var i=t;t=o(i,`key`),r=o(i,`config`,r)}var s={type:`audio`,cache:e.cacheManager.audio,extension:n.type,key:t,url:n.url,config:r};a.call(this,e,s),this.locked=`ontouchstart`in window,this.loaded=!1,this.filesLoaded=0,this.filesTotal=0},onLoad:function(){this.loaded||(this.loaded=!0,this.loader.nextFile(this,!0))},onError:function(){for(var e=0;e<this.data.length;e++){var t=this.data[e];t.oncanplaythrough=null,t.onerror=null}this.loader.nextFile(this,!1)},onProgress:function(e){var t=e.target;t.oncanplaythrough=null,t.onerror=null,this.filesLoaded++,this.percentComplete=Math.min(this.filesLoaded/this.filesTotal,1),this.loader.emit(i.FILE_PROGRESS,this,this.percentComplete),this.filesLoaded===this.filesTotal&&this.onLoad()},load:function(){this.data=[];var e=this.config&&this.config.instances||1;this.filesTotal=e,this.filesLoaded=0,this.percentComplete=0;for(var t=0;t<e;t++){var n=new Audio;n.dataset||={},n.dataset.name=this.key+(`0`+t).slice(-2),n.dataset.used=`false`,this.locked?n.dataset.locked=`true`:(n.dataset.locked=`false`,n.preload=`auto`,n.oncanplaythrough=this.onProgress.bind(this),n.onerror=this.onError.bind(this)),this.data.push(n)}for(t=0;t<this.data.length;t++)n=this.data[t],n.src=s(this,this.loader.baseURL),this.locked||n.load();this.locked&&setTimeout(this.onLoad.bind(this))}})},88470(e,t,n){var r=n(83419),i=n(23906),a=n(41299),o=n(74099),s=n(95540),c=n(41212),l=new r({Extends:a,initialize:function(e,t,n,r){var i=`html`;if(c(t)){var o=t;t=s(o,`key`),n=s(o,`url`),r=s(o,`xhrSettings`),i=s(o,`extension`,i)}var l={type:`text`,cache:e.cacheManager.html,extension:i,responseType:`text`,key:t,url:n,xhrSettings:r};a.call(this,e,l)},onProcess:function(){this.state=i.FILE_PROCESSING,this.data=this.xhrLoader.responseText,this.onProcessComplete()}});o.register(`html`,function(e,t,n){if(Array.isArray(e))for(var r=0;r<e.length;r++)this.addFile(new l(this,e[r]));else this.addFile(new l(this,e,t,n));return this}),e.exports=l},14643(e,t,n){var r=n(83419),i=n(23906),a=n(41299),o=n(74099),s=n(95540),c=n(41212),l=new r({Extends:a,initialize:function(e,t,n,r,i,o){r===void 0&&(r=512),i===void 0&&(i=512);var l=`html`;if(c(t)){var u=t;t=s(u,`key`),n=s(u,`url`),o=s(u,`xhrSettings`),l=s(u,`extension`,l),r=s(u,`width`,r),i=s(u,`height`,i)}var d={type:`html`,cache:e.textureManager,extension:l,responseType:`text`,key:t,url:n,xhrSettings:o,config:{width:r,height:i}};a.call(this,e,d)},onProcess:function(){this.state=i.FILE_PROCESSING;var e=this.config.width,t=this.config.height,n=[];n.push(`<svg width="`+e+`px" height="`+t+`px" viewBox="0 0 `+e+` `+t+`" xmlns="http://www.w3.org/2000/svg">`),n.push(`<foreignObject width="100%" height="100%">`),n.push(`<body xmlns="http://www.w3.org/1999/xhtml">`),n.push(this.xhrLoader.responseText),n.push(`</body>`),n.push(`</foreignObject>`),n.push(`</svg>`);var r=[n.join(`
24
+ `)],o=this;try{var s=new window.Blob(r,{type:`image/svg+xml;charset=utf-8`})}catch{o.state=i.FILE_ERRORED,o.onProcessComplete();return}this.data=new Image,this.data.crossOrigin=this.crossOrigin,this.data.onload=function(){a.revokeObjectURL(o.data),o.onProcessComplete()},this.data.onerror=function(){a.revokeObjectURL(o.data),o.onProcessError()},a.createObjectURL(this.data,s,`image/svg+xml`)},addToCache:function(){this.cache.addImage(this.key,this.data)}});o.register(`htmlTexture`,function(e,t,n,r,i){if(Array.isArray(e))for(var a=0;a<e.length;a++)this.addFile(new l(this,e[a]));else this.addFile(new l(this,e,t,n,r,i));return this}),e.exports=l},19550(e,t,n){var r=n(83419),i=n(23906),a=n(41299),o=n(74099),s=n(95540),c=n(41212),l=n(98356),u=new r({Extends:a,initialize:function e(t,n,r,i,o){var l=`png`,u;if(c(n)){var d=n;n=s(d,`key`),r=s(d,`url`),u=s(d,`normalMap`),i=s(d,`xhrSettings`),l=s(d,`extension`,l),o=s(d,`frameConfig`)}Array.isArray(r)&&(u=r[1],r=r[0]);var f={type:`image`,cache:t.textureManager,extension:l,responseType:`blob`,key:n,url:r,xhrSettings:i,config:o};if(a.call(this,t,f),u){var p=new e(t,this.key,u,i,o);p.type=`normalMap`,this.setLink(p),t.addFile(p)}this.useImageElementLoad=t.imageLoadType===`HTMLImageElement`||this.base64,this.useImageElementLoad&&(this.load=this.loadImage,this.onProcess=this.onProcessImage)},onProcess:function(){this.state=i.FILE_PROCESSING,this.data=new Image,this.data.crossOrigin=this.crossOrigin;var e=this;this.data.onload=function(){a.revokeObjectURL(e.data),e.onProcessComplete()},this.data.onerror=function(){a.revokeObjectURL(e.data),e.onProcessError()},a.createObjectURL(this.data,this.xhrLoader.response,`image/png`)},onProcessImage:function(){var e=this.state;this.state=i.FILE_PROCESSING,e===i.FILE_LOADED?this.onProcessComplete():this.onProcessError()},loadImage:function(){this.state=i.FILE_LOADING,this.src=l(this,this.loader.baseURL),this.data=new Image,this.data.crossOrigin=this.crossOrigin;var e=this;this.data.onload=function(){e.state=i.FILE_LOADED,e.loader.nextFile(e,!0)},this.data.onerror=function(){e.loader.nextFile(e,!1)},this.data.src=this.src},addToCache:function(){var e=this.linkFile;e?e.state>=i.FILE_COMPLETE&&(e.type===`spritesheet`?e.addToCache():this.type===`normalMap`?this.cache.addImage(this.key,e.data,this.data):this.cache.addImage(this.key,this.data,e.data)):this.cache.addImage(this.key,this.data)}});o.register(`image`,function(e,t,n){if(Array.isArray(e))for(var r=0;r<e.length;r++)this.addFile(new u(this,e[r]));else this.addFile(new u(this,e,t,n));return this}),e.exports=u},518(e,t,n){var r=n(83419),i=n(23906),a=n(41299),o=n(74099),s=n(95540),c=n(35154),l=n(41212),u=new r({Extends:a,initialize:function(e,t,n,r,o){var u=`json`;if(l(t)){var d=t;t=s(d,`key`),n=s(d,`url`),r=s(d,`xhrSettings`),u=s(d,`extension`,u),o=s(d,`dataKey`,o)}var f={type:`json`,cache:e.cacheManager.json,extension:u,responseType:`text`,key:t,url:n,xhrSettings:r,config:o};a.call(this,e,f),l(n)&&(o?this.data=c(n,o):this.data=n,this.state=i.FILE_POPULATED)},onProcess:function(){if(this.state!==i.FILE_POPULATED){this.state=i.FILE_PROCESSING;try{var e=JSON.parse(this.xhrLoader.responseText)}catch(e){throw this.onProcessError(),e}var t=this.config;typeof t==`string`?this.data=c(e,t,e):this.data=e}this.onProcessComplete()}});o.register(`json`,function(e,t,n,r){if(Array.isArray(e))for(var i=0;i<e.length;i++)this.addFile(new u(this,e[i]));else this.addFile(new u(this,e,t,r,n));return this}),e.exports=u},59327(e,t,n){var r=n(83419),i=n(74099),a=n(95540),o=n(19550),s=n(41212),c=n(518),l=n(26430),u=new r({Extends:l,initialize:function(e,t,n,r,i,o,u){if(s(t)){var d=t;t=a(d,`key`),n=a(d,`url`,!1)?a(d,`url`):a(d,`atlasURL`),o=a(d,`xhrSettings`),r=a(d,`path`),i=a(d,`baseURL`),u=a(d,`textureXhrSettings`)}var f=new c(e,t,n,o);l.call(this,e,`multiatlas`,t,[f]),this.config.path=r,this.config.baseURL=i,this.config.textureXhrSettings=u},onFileComplete:function(e){if(this.files.indexOf(e)!==-1&&(this.pending--,e.type===`json`&&e.data.hasOwnProperty(`textures`))){var t=e.data.textures,n=this.config,r=this.loader,i=r.baseURL,s=r.path,c=r.prefix,l=a(n,`baseURL`,this.baseURL),u=a(n,`path`,this.path),d=a(n,`prefix`,this.prefix),f=a(n,`textureXhrSettings`);r.setBaseURL(l),r.setPath(u),r.setPrefix(d);for(var p=0;p<t.length;p++){var m=t[p].image,h=`MA`+this.multiKeyIndex+`_`+m,g=new o(r,h,m,f);if(this.addToMultiFile(g),r.addFile(g),t[p].normalMap){var _=new o(r,h,t[p].normalMap,f);_.type=`normalMap`,g.setLink(_),this.addToMultiFile(_),r.addFile(_)}}r.setBaseURL(i),r.setPath(s),r.setPrefix(c)}},addToCache:function(){if(this.isReadyToProcess()){for(var e=this.files[0],t=[],n=[],r=[],i=1;i<this.files.length;i++){var a=this.files[i];if(a.type!==`normalMap`)for(var o=a.key.indexOf(`_`),s=a.key.substr(o+1),c=a.data,l=0;l<e.data.textures.length;l++){var u=e.data.textures[l];if(u.image===s){n.push(c),t.push(u),a.linkFile&&r.push(a.linkFile.data);break}}}r.length===0&&(r=void 0),this.loader.textureManager.addAtlasJSONArray(this.key,n,t,r),this.complete=!0}}});i.register(`multiatlas`,function(e,t,n,r,i){var a;if(Array.isArray(e))for(var o=0;o<e.length;o++)a=new u(this,e[o]),this.addFile(a.files);else a=new u(this,e,t,n,r,i),this.addFile(a.files);return this}),e.exports=u},99297(e,t,n){var r=n(83419),i=n(74099),a=n(95540),o=n(41212),s=n(26430),c=n(34328),l=new r({Extends:s,initialize:function(e,t,n,r){var i=`js`,l=[];if(o(t)){var u=t;t=a(u,`key`),n=a(u,`url`),r=a(u,`xhrSettings`),i=a(u,`extension`,i)}Array.isArray(n)||(n=[n]);for(var d=0;d<n.length;d++){var f=new c(e,{key:t+`_`+d.toString(),url:n[d],extension:i,xhrSettings:r});f.onProcess=function(){this.onProcessComplete()},l.push(f)}s.call(this,e,`scripts`,t,l)},addToCache:function(){if(this.isReadyToProcess()){for(var e=0;e<this.files.length;e++){var t=this.files[e];t.data=document.createElement(`script`),t.data.language=`javascript`,t.data.type=`text/javascript`,t.data.defer=!1,t.data.text=t.xhrLoader.responseText,document.head.appendChild(t.data)}this.complete=!0}}});i.register(`scripts`,function(e,t,n){var r;if(Array.isArray(e))for(var i=0;i<e.length;i++)r=new l(this,e[i]),this.addFile(r.files);else r=new l(this,e,t,n),this.addFile(r.files);return this}),e.exports=l},11069(e,t,n){var r=n(83419),i=n(23906),a=n(41299),o=n(74099),s=n(95540),c=n(19550),l=n(41212),u=n(26430),d=n(39620),f=new r({Extends:a,initialize:function(e,t,n,r){var i={type:`pct`,cache:e.cacheManager.atlas,extension:`pct`,responseType:`text`,key:t,url:n,xhrSettings:r};a.call(this,e,i)},onProcess:function(){this.state=i.FILE_PROCESSING;var e=d(this.xhrLoader.responseText);if(!e){this.onProcessError();return}this.data=e,this.onProcessComplete()}}),p=new r({Extends:u,initialize:function(e,t,n,r,i,a,o){if(l(t)){var c=t;t=s(c,`key`),n=s(c,`url`,!1)?s(c,`url`):s(c,`atlasURL`),a=s(c,`xhrSettings`),r=s(c,`path`),i=s(c,`baseURL`),o=s(c,`textureXhrSettings`)}var d=new f(e,t,n,a);u.call(this,e,`pctatlas`,t,[d]),this.config.path=r,this.config.baseURL=i,this.config.textureXhrSettings=o},onFileComplete:function(e){if(this.files.indexOf(e)!==-1&&(this.pending--,e.type===`pct`&&e.data&&Array.isArray(e.data.pages))){var t=e.data.pages,n=this.config,r=this.loader,i=r.baseURL,a=r.path,o=r.prefix,l=s(n,`baseURL`,this.baseURL),u=s(n,`path`,this.path),d=s(n,`prefix`,this.prefix),f=s(n,`textureXhrSettings`);r.setBaseURL(l),r.setPath(u),r.setPrefix(d);for(var p=0;p<t.length;p++){var m=t[p].filename,h=new c(r,`PCT`+this.multiKeyIndex+`_`+m,m,f);this.addToMultiFile(h),r.addFile(h)}r.setBaseURL(i),r.setPath(a),r.setPrefix(o)}},addToCache:function(){if(this.isReadyToProcess()){for(var e=this.files[0].data,t=e.pages,n=`PCT`+this.multiKeyIndex+`_`,r={},i=1;i<this.files.length;i++){var a=this.files[i],o=a.key,s=o.indexOf(n),c=s>=0?o.substring(s+n.length):o;r[c]=a.data}for(var l=[],u=0;u<t.length;u++){var d=r[t[u].filename];d&&l.push(d)}this.loader.cacheManager.atlas.add(this.key,e),this.loader.textureManager.addAtlasPCT(this.key,l,e),this.complete=!0}}});o.register(`atlasPCT`,function(e,t,n,r,i){var a;if(Array.isArray(e))for(var o=0;o<e.length;o++)a=new p(this,e[o]),this.addFile(a.files);else a=new p(this,e,t,n,r,i),this.addFile(a.files);return this}),e.exports=p},58610(e,t,n){var r=n(83419),i=n(23906),a=n(74099),o=n(518),s=new r({Extends:o,initialize:function(e,t,n,r,i){o.call(this,e,t,n,r,i),this.type=`packfile`},onProcess:function(){if(this.state!==i.FILE_POPULATED&&(this.state=i.FILE_PROCESSING,this.data=JSON.parse(this.xhrLoader.responseText)),this.data.hasOwnProperty(`files`)&&this.config){var e={};e[this.config]=this.data,this.data=e}this.loader.addPack(this.data,this.config),this.onProcessComplete()}});a.register(`pack`,function(e,t,n,r){if(Array.isArray(e))for(var i=0;i<e.length;i++)this.addFile(new s(this,e[i]));else this.addFile(new s(this,e,t,r,n));return this}),e.exports=s},48988(e,t,n){var r=n(83419),i=n(23906),a=n(41299),o=n(74099),s=n(95540),c=n(41212),l=new r({Extends:a,initialize:function(e,t,n,r,o,l){var u=`js`;if(c(t)){var d=t;t=s(d,`key`),n=s(d,`url`),l=s(d,`xhrSettings`),u=s(d,`extension`,u),r=s(d,`start`),o=s(d,`mapping`)}var f={type:`plugin`,cache:!1,extension:u,responseType:`text`,key:t,url:n,xhrSettings:l,config:{start:r,mapping:o}};a.call(this,e,f),typeof n==`function`&&(this.data=n,this.state=i.FILE_POPULATED)},onProcess:function(){var e=this.loader.systems.plugins,t=this.config,n=s(t,`start`,!1),r=s(t,`mapping`,null);if(this.state===i.FILE_POPULATED)e.install(this.key,this.data,n,r);else{this.state=i.FILE_PROCESSING,this.data=document.createElement(`script`),this.data.language=`javascript`,this.data.type=`text/javascript`,this.data.defer=!1,this.data.text=this.xhrLoader.responseText,document.head.appendChild(this.data);var a=e.install(this.key,window[this.key],n,r);(n||r)&&(this.loader.systems[r]=a,this.loader.scene[r]=a)}this.onProcessComplete()}});o.register(`plugin`,function(e,t,n,r,i){if(Array.isArray(e))for(var a=0;a<e.length;a++)this.addFile(new l(this,e[a]));else this.addFile(new l(this,e,t,n,r,i));return this}),e.exports=l},67397(e,t,n){var r=n(83419),i=n(23906),a=n(41299),o=n(74099),s=n(95540),c=n(41212),l=new r({Extends:a,initialize:function(e,t,n,r,i){var o=`svg`;if(c(t)){var l=t;t=s(l,`key`),n=s(l,`url`),r=s(l,`svgConfig`,{}),i=s(l,`xhrSettings`),o=s(l,`extension`,o)}var u={type:`svg`,cache:e.textureManager,extension:o,responseType:`text`,key:t,url:n,xhrSettings:i,config:{width:s(r,`width`),height:s(r,`height`),scale:s(r,`scale`)}};a.call(this,e,u)},onProcess:function(){this.state=i.FILE_PROCESSING;var e=this.xhrLoader.responseText,t=[e],n=this.config.width,r=this.config.height,o=this.config.scale;resize:if(n&&r||o){var s=null;s=new DOMParser().parseFromString(e,`text/xml`);var c=s.getElementsByTagName(`svg`)[0],l=c.hasAttribute(`viewBox`),u=parseFloat(c.getAttribute(`width`)),d=parseFloat(c.getAttribute(`height`));if(!l&&u&&d)c.setAttribute(`viewBox`,`0 0 `+u+` `+d);else if(l&&!u&&!d){var f=c.getAttribute(`viewBox`).split(/\s+|,/);u=f[2],d=f[3]}if(o)if(u&&d)n=u*o,r=d*o;else break resize;c.setAttribute(`width`,n.toString()+`px`),c.setAttribute(`height`,r.toString()+`px`),t=[new XMLSerializer().serializeToString(c)]}try{var p=new window.Blob(t,{type:`image/svg+xml;charset=utf-8`})}catch{this.onProcessError();return}this.data=new Image,this.data.crossOrigin=this.crossOrigin;var m=this,h=!1;this.data.onload=function(){h||a.revokeObjectURL(m.data),m.onProcessComplete()},this.data.onerror=function(){h?m.onProcessError():(h=!0,a.revokeObjectURL(m.data),m.data.src=`data:image/svg+xml,`+encodeURIComponent(t.join(``)))},a.createObjectURL(this.data,p,`image/svg+xml`)},addToCache:function(){this.cache.addImage(this.key,this.data)}});o.register(`svg`,function(e,t,n,r){if(Array.isArray(e))for(var i=0;i<e.length;i++)this.addFile(new l(this,e[i]));else this.addFile(new l(this,e,t,n,r));return this}),e.exports=l},88423(e,t,n){var r=n(83419),i=n(23906),a=n(41299),o=n(74099),s=n(95540),c=n(41212),l=new r({Extends:a,initialize:function(e,t,n,r){var i=`js`;if(c(t)){var o=t;t=s(o,`key`),n=s(o,`url`),r=s(o,`xhrSettings`),i=s(o,`extension`,i)}var l={type:`text`,extension:i,responseType:`text`,key:t,url:n,xhrSettings:r};a.call(this,e,l)},onProcess:function(){this.state=i.FILE_PROCESSING,this.data=this.xhrLoader.responseText,this.onProcessComplete()},addToCache:function(){var e=this.data.concat(`(function(){
25
+ return new `+this.key+`();
26
+ }).call(this);`),t=eval;this.loader.sceneManager.add(this.key,t(e)),this.complete=!0}});o.register(`sceneFile`,function(e,t,n){if(Array.isArray(e))for(var r=0;r<e.length;r++)this.addFile(new l(this,e[r]));else this.addFile(new l(this,e,t,n));return this}),e.exports=l},56812(e,t,n){var r=n(83419),i=n(23906),a=n(41299),o=n(74099),s=n(95540),c=n(41212),l=new r({Extends:a,initialize:function(e,t,n,r,o,l){var u=`js`;if(c(t)){var d=t;t=s(d,`key`),n=s(d,`url`),l=s(d,`xhrSettings`),u=s(d,`extension`,u),r=s(d,`systemKey`),o=s(d,`sceneKey`)}var f={type:`scenePlugin`,cache:!1,extension:u,responseType:`text`,key:t,url:n,xhrSettings:l,config:{systemKey:r,sceneKey:o}};a.call(this,e,f),typeof n==`function`&&(this.data=n,this.state=i.FILE_POPULATED)},onProcess:function(){var e=this.loader.systems.plugins,t=this.config,n=this.key,r=s(t,`systemKey`,n),a=s(t,`sceneKey`,n);this.state===i.FILE_POPULATED?e.installScenePlugin(r,this.data,a,this.loader.scene,!0):(this.state=i.FILE_PROCESSING,this.data=document.createElement(`script`),this.data.language=`javascript`,this.data.type=`text/javascript`,this.data.defer=!1,this.data.text=this.xhrLoader.responseText,document.head.appendChild(this.data),e.installScenePlugin(r,window[this.key],a,this.loader.scene,!0)),this.onProcessComplete()}});o.register(`scenePlugin`,function(e,t,n,r,i){if(Array.isArray(e))for(var a=0;a<e.length;a++)this.addFile(new l(this,e[a]));else this.addFile(new l(this,e,t,n,r,i));return this}),e.exports=l},34328(e,t,n){var r=n(83419),i=n(23906),a=n(41299),o=n(74099),s=n(95540),c=n(41212),l=new r({Extends:a,initialize:function(e,t,n,r,i){var o=`js`;if(c(t)){var l=t;t=s(l,`key`),n=s(l,`url`),r=s(l,`type`,`script`),i=s(l,`xhrSettings`),o=s(l,`extension`,o)}else r===void 0&&(r=`script`);var u={type:r,cache:!1,extension:o,responseType:`text`,key:t,url:n,xhrSettings:i};a.call(this,e,u)},onProcess:function(){this.state=i.FILE_PROCESSING,this.data=document.createElement(`script`),this.data.language=`javascript`,this.data.type=`text/javascript`,this.data.defer=!1,this.data.text=this.xhrLoader.responseText,document.head.appendChild(this.data),this.onProcessComplete()}});o.register(`script`,function(e,t,n,r){if(Array.isArray(e))for(var i=0;i<e.length;i++)this.addFile(new l(this,e[i]));else this.addFile(new l(this,e,t,n,r));return this}),e.exports=l},85035(e,t,n){var r=n(83419),i=n(23906),a=n(74099),o=n(19550),s=new r({Extends:o,initialize:function(e,t,n,r,i){o.call(this,e,t,n,i,r),this.type=`spritesheet`},addToCache:function(){var e=this.linkFile;e?e.state>=i.FILE_COMPLETE&&(this.type===`normalMap`?this.cache.addSpriteSheet(this.key,e.data,this.config,this.data):this.cache.addSpriteSheet(this.key,this.data,this.config,e.data)):this.cache.addSpriteSheet(this.key,this.data,this.config)}});a.register(`spritesheet`,function(e,t,n,r){if(Array.isArray(e))for(var i=0;i<e.length;i++)this.addFile(new s(this,e[i]));else this.addFile(new s(this,e,t,n,r));return this}),e.exports=s},78776(e,t,n){var r=n(83419),i=n(23906),a=n(41299),o=n(74099),s=n(95540),c=n(41212),l=new r({Extends:a,initialize:function(e,t,n,r){var i=`text`,o=`txt`,l=e.cacheManager.text;if(c(t)){var u=t;t=s(u,`key`),n=s(u,`url`),r=s(u,`xhrSettings`),o=s(u,`extension`,o),i=s(u,`type`,i),l=s(u,`cache`,l)}var d={type:i,cache:l,extension:o,responseType:`text`,key:t,url:n,xhrSettings:r};a.call(this,e,d)},onProcess:function(){this.state=i.FILE_PROCESSING,this.data=this.xhrLoader.responseText,this.onProcessComplete()}});o.register(`text`,function(e,t,n){if(Array.isArray(e))for(var r=0;r<e.length;r++)this.addFile(new l(this,e[r]));else this.addFile(new l(this,e,t,n));return this}),e.exports=l},49477(e,t,n){var r=n(83419),i=n(23906),a=n(41299),o=n(74099),s=n(95540),c=n(41212),l=n(80341),u=new r({Extends:a,initialize:function(e,t,n,r){var i=`csv`;if(c(t)){var o=t;t=s(o,`key`),n=s(o,`url`),r=s(o,`xhrSettings`),i=s(o,`extension`,i)}var u={type:`tilemapCSV`,cache:e.cacheManager.tilemap,extension:i,responseType:`text`,key:t,url:n,xhrSettings:r};a.call(this,e,u),this.tilemapFormat=l.CSV},onProcess:function(){this.state=i.FILE_PROCESSING,this.data=this.xhrLoader.responseText,this.onProcessComplete()},addToCache:function(){var e={format:this.tilemapFormat,data:this.data};this.cache.add(this.key,e)}});o.register(`tilemapCSV`,function(e,t,n){if(Array.isArray(e))for(var r=0;r<e.length;r++)this.addFile(new u(this,e[r]));else this.addFile(new u(this,e,t,n));return this}),e.exports=u},40807(e,t,n){var r=n(83419),i=n(74099),a=n(518),o=n(80341),s=new r({Extends:a,initialize:function(e,t,n,r){a.call(this,e,t,n,r),this.type=`tilemapJSON`,this.cache=e.cacheManager.tilemap},addToCache:function(){var e={format:o.WELTMEISTER,data:this.data};this.cache.add(this.key,e)}});i.register(`tilemapImpact`,function(e,t,n){if(Array.isArray(e))for(var r=0;r<e.length;r++)this.addFile(new s(this,e[r]));else this.addFile(new s(this,e,t,n));return this}),e.exports=s},56775(e,t,n){var r=n(83419),i=n(74099),a=n(518),o=n(80341),s=new r({Extends:a,initialize:function(e,t,n,r){a.call(this,e,t,n,r),this.type=`tilemapJSON`,this.cache=e.cacheManager.tilemap},addToCache:function(){var e={format:o.TILED_JSON,data:this.data};this.cache.add(this.key,e)}});i.register(`tilemapTiledJSON`,function(e,t,n){if(Array.isArray(e))for(var r=0;r<e.length;r++)this.addFile(new s(this,e[r]));else this.addFile(new s(this,e,t,n));return this}),e.exports=s},25771(e,t,n){var r=n(83419),i=n(74099),a=n(95540),o=n(19550),s=n(41212),c=n(26430),l=n(78776),u=new r({Extends:c,initialize:function(e,t,n,r,i,u){var d,f;if(s(t)){var p=t;t=a(p,`key`),d=new o(e,{key:t,url:a(p,`textureURL`),extension:a(p,`textureExtension`,`png`),normalMap:a(p,`normalMap`),xhrSettings:a(p,`textureXhrSettings`)}),f=new l(e,{key:t,url:a(p,`atlasURL`),extension:a(p,`atlasExtension`,`txt`),xhrSettings:a(p,`atlasXhrSettings`)})}else d=new o(e,t,n,i),f=new l(e,t,r,u);d.linkFile?c.call(this,e,`unityatlas`,t,[d,f,d.linkFile]):c.call(this,e,`unityatlas`,t,[d,f])},addToCache:function(){if(this.isReadyToProcess()){var e=this.files[0],t=this.files[1],n=this.files[2]?this.files[2].data:null;this.loader.textureManager.addUnityAtlas(e.key,e.data,t.data,n),this.complete=!0}}});i.register(`unityAtlas`,function(e,t,n,r,i){var a;if(Array.isArray(e))for(var o=0;o<e.length;o++)a=new u(this,e[o]),this.addFile(a.files);else a=new u(this,e,t,n,r,i),this.addFile(a.files);return this}),e.exports=u},33720(e,t,n){var r=n(83419),i=n(23906),a=n(41299),o=n(74099),s=n(98356),c=n(95540),l=n(41212),u=new r({Extends:a,initialize:function(e,t,n,r){if(r===void 0&&(r=!1),l(t)){var i=t;t=c(i,`key`),n=c(i,`url`,[]),r=c(i,`noAudio`,!1)}var o=e.systems.game.device.video.getVideoURL(n);o||console.warn(`VideoFile: No supported format for `+t);var s={type:`video`,cache:e.cacheManager.video,extension:o.type,key:t,url:o.url,config:{noAudio:r}};a.call(this,e,s)},onProcess:function(){this.data={url:this.src,noAudio:this.config.noAudio,crossOrigin:this.crossOrigin},this.onProcessComplete()},load:function(){this.src=s(this,this.loader.baseURL),this.state=i.FILE_LOADED,this.loader.nextFile(this,!0)}});o.register(`video`,function(e,t,n){if(Array.isArray(e))for(var r=0;r<e.length;r++)this.addFile(new u(this,e[r]));else this.addFile(new u(this,e,t,n));return this}),e.exports=u},57318(e,t,n){var r=n(83419),i=n(23906),a=n(41299),o=n(74099),s=n(95540),c=n(41212),l=n(56836),u=new r({Extends:a,initialize:function(e,t,n,r){var i=`xml`;if(c(t)){var o=t;t=s(o,`key`),n=s(o,`url`),r=s(o,`xhrSettings`),i=s(o,`extension`,i)}var l={type:`xml`,cache:e.cacheManager.xml,extension:i,responseType:`text`,key:t,url:n,xhrSettings:r};a.call(this,e,l)},onProcess:function(){this.state=i.FILE_PROCESSING,this.data=l(this.xhrLoader.responseText),this.data?this.onProcessComplete():this.onProcessError()}});o.register(`xml`,function(e,t,n){if(Array.isArray(e))for(var r=0;r<e.length;r++)this.addFile(new u(this,e[r]));else this.addFile(new u(this,e,t,n));return this}),e.exports=u},64589(e,t,n){e.exports={AnimationJSONFile:n(14135),AsepriteFile:n(76272),AtlasJSONFile:n(38734),AtlasXMLFile:n(74599),AudioFile:n(21097),AudioSpriteFile:n(89524),BinaryFile:n(85722),BitmapFontFile:n(97025),CompressedTextureFile:n(69559),CSSFile:n(16024),FontFile:n(87674),GLSLFile:n(47931),HTML5AudioFile:n(89749),HTMLFile:n(88470),HTMLTextureFile:n(14643),ImageFile:n(19550),JSONFile:n(518),MultiAtlasFile:n(59327),MultiScriptFile:n(99297),PackFile:n(58610),PCTAtlasFile:n(11069),PluginFile:n(48988),SceneFile:n(88423),ScenePluginFile:n(56812),ScriptFile:n(34328),SpriteSheetFile:n(85035),SVGFile:n(67397),TextFile:n(78776),TilemapCSVFile:n(49477),TilemapImpactFile:n(40807),TilemapJSONFile:n(56775),UnityAtlasFile:n(25771),VideoFile:n(33720),XMLFile:n(57318)}},57777(e,t,n){var r=n(23906),i=n(79291),a={Events:n(54899),FileTypes:n(64589),File:n(41299),FileTypesManager:n(74099),GetURL:n(98356),LoaderPlugin:n(74261),MergeXHRSettings:n(3374),MultiFile:n(26430),XHRLoader:n(84376),XHRSettings:n(92638)};a=i(!1,a,r),e.exports=a},53307(e){e.exports=function(e){for(var t=0,n=0;n<e.length;n++)t+=+e[n];return t/e.length}},85710(e,t,n){var r=n(6411);e.exports=function(e,t){return r(e)/r(t)/r(e-t)}},30976(e){e.exports=function(e,t){return Math.floor(Math.random()*(t-e+1)+e)}},87842(e){e.exports=function(e,t,n,r,i){var a=(r-t)*.5,o=(i-n)*.5,s=e*e,c=e*s;return(2*n-2*r+a+o)*c+(-3*n+3*r-2*a-o)*s+a*e+n}},26302(e){e.exports=function(e,t,n){t===void 0&&(t=0),n===void 0&&(n=10);var r=n**+-t;return Math.ceil(e*r)/r}},45319(e){e.exports=function(e,t,n){return Math.max(t,Math.min(n,e))}},39506(e,t,n){var r=n(36383);e.exports=function(e){return e*r.DEG_TO_RAD}},61241(e){e.exports=function(e,t){return Math.abs(e-t)}},38857(e,t,n){var r=n(45319),i=n(83419),a=n(37867),o=n(29747),s=new a,c=new i({initialize:function e(t,n,r,i){t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=0),i===void 0&&(i=e.DefaultOrder),this._x=t,this._y=n,this._z=r,this._order=i,this.onChangeCallback=o},x:{get:function(){return this._x},set:function(e){this._x=e,this.onChangeCallback(this)}},y:{get:function(){return this._y},set:function(e){this._y=e,this.onChangeCallback(this)}},z:{get:function(){return this._z},set:function(e){this._z=e,this.onChangeCallback(this)}},order:{get:function(){return this._order},set:function(e){this._order=e,this.onChangeCallback(this)}},set:function(e,t,n,r){return r===void 0&&(r=this._order),this._x=e,this._y=t,this._z=n,this._order=r,this.onChangeCallback(this),this},copy:function(e){return this.set(e.x,e.y,e.z,e.order)},setFromQuaternion:function(e,t,n){return t===void 0&&(t=this._order),n===void 0&&(n=!1),s.fromQuat(e),this.setFromRotationMatrix(s,t,n)},setFromRotationMatrix:function(e,t,n){t===void 0&&(t=this._order),n===void 0&&(n=!1);var i=e.val,a=i[0],o=i[4],s=i[8],c=i[1],l=i[5],u=i[9],d=i[2],f=i[6],p=i[10],m=0,h=0,g=0,_=.99999;switch(t){case`XYZ`:h=Math.asin(r(s,-1,1)),Math.abs(s)<_?(m=Math.atan2(-u,p),g=Math.atan2(-o,a)):m=Math.atan2(f,l);break;case`YXZ`:m=Math.asin(-r(u,-1,1)),Math.abs(u)<_?(h=Math.atan2(s,p),g=Math.atan2(c,l)):h=Math.atan2(-d,a);break;case`ZXY`:m=Math.asin(r(f,-1,1)),Math.abs(f)<_?(h=Math.atan2(-d,p),g=Math.atan2(-o,l)):g=Math.atan2(c,a);break;case`ZYX`:h=Math.asin(-r(d,-1,1)),Math.abs(d)<_?(m=Math.atan2(f,p),g=Math.atan2(c,a)):g=Math.atan2(-o,l);break;case`YZX`:g=Math.asin(r(c,-1,1)),Math.abs(c)<_?(m=Math.atan2(-u,l),h=Math.atan2(-d,a)):h=Math.atan2(s,p);break;case`XZY`:g=Math.asin(-r(o,-1,1)),Math.abs(o)<_?(m=Math.atan2(f,l),h=Math.atan2(s,a)):m=Math.atan2(-u,p);break}return this._x=m,this._y=h,this._z=g,this._order=t,n&&this.onChangeCallback(this),this}});c.RotationOrders=[`XYZ`,`YXZ`,`ZXY`,`ZYX`,`YZX`,`XZY`],c.DefaultOrder=`XYZ`,e.exports=c},6411(e){e.exports=function(e){if(e===0)return 1;for(var t=e;--e;)t*=e;return t}},99472(e){e.exports=function(e,t){return Math.random()*(t-e)+e}},77623(e){e.exports=function(e,t,n){t===void 0&&(t=0),n===void 0&&(n=10);var r=n**+-t;return Math.floor(e*r)/r}},62945(e,t,n){var r=n(45319);e.exports=function(e,t,n){return e=r(e,0,1),(n-t)*e+t}},2672(e,t,n){var r=n(26099);e.exports=function(e,t){t===void 0&&(t=new r);var n=e.length;if(!Array.isArray(e)||n===0)throw Error(`GetCentroid points be a non-empty array`);if(n===1)t.x=e[0].x,t.y=e[0].y;else{for(var i=0;i<n;i++)t.x+=e[i].x,t.y+=e[i].y;t.x/=n,t.y/=n}return t}},38265(e){e.exports=function(e,t){return e/t/1e3}},55133(e,t,n){var r=n(87841);e.exports=function(e,t){t===void 0&&(t=new r);for(var n=-1/0,i=1/0,a=-1/0,o=1/0,s=0;s<e.length;s++){var c=e[s];c.x>n&&(n=c.x),c.x<i&&(i=c.x),c.y>a&&(a=c.y),c.y<o&&(o=c.y)}return t.x=i,t.y=o,t.width=n-i,t.height=a-o,t}},72958(e,t,n){var r=n(26099),i=n(25836),a=n(61369),o=function(e,t){switch(typeof e==`number`&&(e=[e]),t){case 2:return g(e,!0);case 1:return g(e);default:return m(e)}},s=new r,c=new i,l=new a,u=12.9898,d=new r(12.9898,78.233),f=new i(12.9898,78.233,9441.8953),p=new a(12.9898,78.233,9441.8953,61.99),m=function(e){var t;switch(e.length){case 4:l.set(e[0],e[1],e[2],e[3]),t=43757.5453*Math.sin(l.dot(p));break;case 3:c.set(e[0],e[1],e[2]),t=43757.5453*Math.sin(c.dot(f));break;case 2:s.set(e[0],e[1]),t=43757.5453*Math.sin(s.dot(d));break;default:t=43757.5453*Math.sin(e[0]*u);break}return t-Math.floor(t)},h=2**32,g=function(e,t){var n;switch(e.length){case 4:n=e[0]*19+e[1]*47+e[2]*101+e[3]*173;break;case 3:n=e[0]*19+e[1]*47+e[2]*101;break;case 2:n=e[0]*19+e[1]*47;break;default:n=e[0]*19;break}t&&(n*=2**(32-Math.floor(Math.log2(n))));var r=(n>>>0)*747796405+2891336453,i=(r>>>(r>>>28)+4^r)*277803737,a=(i>>>22^i)>>>0;return a/=h,a};e.exports=o},84854(e,t,n){var r=n(72958),i=function(e,t){typeof e==`number`&&(e=[e]),t||={};for(var n=0,r=t.noiseIterations||1,i=0;i<r;i++){var a=2**i;n+=(f(e,t,a)-.5)/a}return n+.5},a=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16],o=[,,,,],s=[,,,,],c=[,,,,],l=[,,,,],u=[,,,,],d=[,,,,],f=function(e,t,n){var r,i,a,l,u=t.noiseMode||0,d=t.noiseSmoothing===void 0?1:t.noiseSmoothing,f=Math.max(1,Math.min(e.length,4)),h=t.noiseCells||[32,32,32,32].slice(0,f);for(r=0;r<f;r++){var g=e[r]*n*h[r];o[r]=Math.floor(g),s[r]=g%1}var _=0,v=0;(u===0||u===1)&&(_=4*f);var y=3**f;for(l=0;l<y;l++)switch(c[0]=l%3-1,f>1&&(c[1]=Math.floor(l/3)%3-1,f>2&&(c[2]=Math.floor(l/9)%3-1,f>3&&(c[3]=Math.floor(l/27)%3-1))),i=p(f,o,c,t,n),a=m(f,c,s,i),u){case 0:a<_&&(_=a);break;case 1:a<_&&(_=a,v=i[0]);break;case 2:a=Math.sqrt(a),_+=2**(-32/d*a);break}return u===0?Math.sqrt(_):u===1?v:-(1/32*d)*Math.log2(_)},p=function(e,t,n,i,o){var s,c,d=i.noiseWrap?i.noiseWrap:i.noiseCells||[32,32,32,32],f=i.noiseSeed?i.noiseSeed:a;for(s=0;s<e;s++)l[s]=(t[s]+n[s])%(d[s]*o);for(s=0;s<e;s++){var p=Array(e);for(c=0;c<e;c++)p[c]=l[c]+f[s*e+c];u[s]=r(p,i.algorithm)}return u},m=function(e,t,n,r){var i;for(i=0;i<e;i++)d[i]=t[i]-n[i]+r[i];var a=0;for(i=0;i<e;i++)a+=d[i]*d[i];return a};e.exports=i},84366(e){var t=function(e,t){typeof e==`number`&&(e=[e]),t||={};for(var i=Math.min(3,e.length),l=0;i<2;)e.push(0),i++;var u=t.noiseIterations||1,d=t.noiseWarpIterations||1,f=t.noiseDetailPower||2,p=t.noiseFlowPower||2,m=t.noiseContributionPower||2,h=t.noiseWarpDetailPower||2,g=t.noiseWarpFlowPower||2,_=t.noiseWarpContributionPower||2,v=t.noiseCells||[32,32,32],y=t.noiseOffset||[0,0,0],b=t.noiseWarpAmount||0;if(t.noiseSeed)for(var x=[1,2,3],S=0;S<i;S++)s[S]=t.noiseSeed[S]===void 0?x[S]:t.noiseSeed[S];for(S=0;S<i;S++)n[S]=e[S]*v[S]+y[S];if(b>0&&d>0&&i>=2){if(i===2){var C=c(d,2,n,t,h,g,_);r[0]=n[0]+a[0],r[1]=n[1]+a[1];var w=c(d,2,r,t,h,g,_);n[0]+=C*b,n[1]+=w*b}else if(i===3){var T=c(d,3,n,t,h,g,_);r[0]=n[0]+a[0],r[1]=n[1]+a[1],r[2]=n[2]+a[2];var E=c(d,3,r,t,h,g,_);r[0]=n[0]+o[0],r[1]=n[1]+o[1],r[2]=n[2]+o[2];var D=c(d,3,r,t,h,g,_);n[0]+=T*b,n[1]+=E*b,n[2]+=D*b}}return l=c(u,i,n,t,f,p,m),l},n=[0,0,0],r=[0,0,0],i=[0,0,0],a=[11.3,23.7,13.1],o=[29.9,2.3,31.7],s=[0,0,0],c=function(e,t,n,a,o,s,c){for(var l,u=0,f=0,p=a.noiseCells||[32,32,32],h=a.noisePeriod||p,g=a.noiseFlow||0,_=0;_<e;_++){var v=o**+_,y=s**+_;for(l=0;l<t;l++)r[l]=(n[l]+_)*v;for(l=0;l<t;l++)i[l]=h[l]*v;t===2?f=d(r,i,g*y+_):t===3&&(f=m(r,i,g*y+_)),u+=f/c**+_}return u},l={uv:{x:0,y:0},i0:{x:0,y:0},f0:{x:0,y:0},o1:{x:0,y:0},i1:{x:0,y:0},i2:{x:0,y:0},v0:{x:0,y:0},v1:{x:0,y:0},v2:{x:0,y:0},x0:{x:0,y:0},x1:{x:0,y:0},x2:{x:0,y:0},iu:[0,0,0],iv:[0,0,0],xw:[0,0,0],yw:[0,0,0],hash:[0,0,0],psi:[0,0,0],gx:[0,0,0],gy:[0,0,0],g0:{x:0,y:0},g1:{x:0,y:0},g2:{x:0,y:0},w:[0,0,0],w2:[0,0,0],w4:[0,0,0],gdotx:[0,0,0]};function u(e,t){return e.x*t.x+e.y*t.y}var d=function(e,t,n){var r,i=l.uv,a=l.i0,o=l.f0,c=l.o1,d=l.i1,f=l.i2,p=l.v0,m=l.v1,h=l.v2,g=l.x0,_=l.x1,v=l.x2,y=l.iu,b=l.iv,x=l.xw,S=l.yw,C=l.hash,w=l.psi,T=l.gx,E=l.gy,D=l.g0,O=l.g1,k=l.g2,A=l.w,j=l.w2,M=l.w4,N=l.gdotx,P=e[0],F=e[1];i.x=P+F*.5,i.y=F,a.x=Math.floor(i.x),a.y=Math.floor(i.y),o.x=i.x-a.x,o.y=i.y-a.y;var I=+(o.y<=o.x);if(c.x=I,c.y=1-I,d.x=a.x+c.x,d.y=a.y+c.y,f.x=a.x+1,f.y=a.y+1,p.x=a.x-a.y*.5,p.y=a.y,m.x=p.x+c.x-c.y*.5,m.y=p.y+c.y,h.x=p.x+.5,h.y=p.y+1,g.x=P-p.x,g.y=F-p.y,_.x=P-m.x,_.y=F-m.y,v.x=P-h.x,v.y=F-h.y,t[0]>0||t[1]>0)for(x[0]=p.x,x[1]=m.x,x[2]=h.x,S[0]=p.y,S[1]=m.y,S[2]=h.y,t[0]>0&&(x[0]=(p.x%t[0]+t[0])%t[0],x[1]=(m.x%t[0]+t[0])%t[0],x[2]=(h.x%t[0]+t[0])%t[0]),t[1]>0&&(S[0]=(p.y%t[1]+t[1])%t[1],S[1]=(m.y%t[1]+t[1])%t[1],S[2]=(h.y%t[1]+t[1])%t[1]),r=0;r<3;r++)y[r]=Math.floor(x[r]+.5*S[r]+.5),b[r]=Math.floor(S[r]+.5);else y[0]=a.x,y[1]=d.x,y[2]=f.x,b[0]=a.y,b[1]=d.y,b[2]=f.y;for(y[0]+=s[0],y[1]+=s[0],y[2]+=s[0],b[0]+=s[1],b[1]+=s[1],b[2]+=s[1],r=0;r<3;r++)C[r]=y[r]%289,C[r]<0&&(C[r]+=289);for(r=0;r<3;r++)C[r]=((C[r]*51+2)*C[r]+b[r])%289;for(r=0;r<3;r++)C[r]=(C[r]*34+10)*C[r]%289;for(r=0;r<3;r++)w[r]=C[r]*.07482+n,T[r]=Math.cos(w[r]),E[r]=Math.sin(w[r]);for(D.x=T[0],D.y=E[0],O.x=T[1],O.y=E[1],k.x=T[2],k.y=E[2],A[0]=.8-u(g,g),A[1]=.8-u(_,_),A[2]=.8-u(v,v),r=0;r<3;r++)A[r]=Math.max(A[r],0),j[r]=A[r]*A[r],M[r]=j[r]*j[r];return N[0]=u(D,g),N[1]=u(O,_),N[2]=u(k,v),10.9*(M[0]*N[0]+M[1]*N[1]+M[2]*N[2])},f={uvw:[0,0,0],i0:[0,0,0],f0:[0,0,0],g_:[0,0,0],l_:[0,0,0],g:[0,0,0],l:[0,0,0],o1:[0,0,0],o2:[0,0,0],i1:[0,0,0],i2:[0,0,0],i3:[0,0,0],v0:[0,0,0],v1:[0,0,0],v2:[0,0,0],v3:[0,0,0],x0:[0,0,0],x1:[0,0,0],x2:[0,0,0],x3:[0,0,0],vx:[0,0,0,0],vy:[0,0,0,0],vz:[0,0,0,0],hash:[0,0,0,0],theta:[0,0,0,0],sz:[0,0,0,0],psi:[0,0,0,0],Ct:[0,0,0,0],St:[0,0,0,0],szp:[0,0,0,0],gx:[0,0,0,0],gy:[0,0,0,0],gz:[0,0,0,0],px:[0,0,0,0],py:[0,0,0,0],pz:[0,0,0,0],Sp:[0,0,0,0],Cp:[0,0,0,0],Ctp:[0,0,0,0],qx:[0,0,0,0],qy:[0,0,0,0],qz:[0,0,0,0],Sa:[0,0,0,0],Ca:[0,0,0,0],w:[0,0,0,0],w2:[0,0,0,0],w3:[0,0,0,0],gdotx:[0,0,0,0]},p=function(e,t){for(var n=0;n<4;n++){var r=e[n]%289;r<0&&(r+=289),t[n]=(r*34+10)*r%289}},m=function(e,t,n){var r=f.uvw,i=f.i0,a=f.f0,o=f.g_,c=f.l_,l=f.g,u=f.l,d=f.o1,m=f.o2,h=f.i1,g=f.i2,_=f.i3,v=f.v0,y=f.v1,b=f.v2,x=f.v3,S=f.x0,C=f.x1,w=f.x2,T=f.x3,E=f.vx,D=f.vy,O=f.vz,k=f.hash,A=f.theta,j=f.sz,M=f.psi,N=f.Ct,P=f.St,F=f.szp,I=f.gx,L=f.gy,R=f.gz,z=f.px,B=f.py,V=f.pz,H=f.Sp,U=f.Cp,W=f.Ctp,G=f.qx,ee=f.qy,K=f.qz,q=f.Sa,J=f.Ca,Y=f.w,te=f.w2,X=f.w3,Z=f.gdotx;r[0]=0*e[0]+1*e[1]+1*e[2],r[1]=1*e[0]+0*e[1]+1*e[2],r[2]=1*e[0]+1*e[1]+0*e[2];for(var Q=0;Q<3;Q++)i[Q]=Math.floor(r[Q]),a[Q]=r[Q]-i[Q];for(o[0]=a[0]>a[1]?0:1,o[1]=a[1]>a[2]?0:1,o[2]=a[0]>a[2]?0:1,c[0]=1-o[0],c[1]=1-o[1],c[2]=1-o[2],l[0]=c[2],l[1]=o[0],l[2]=o[1],u[0]=c[0],u[1]=c[1],u[2]=o[2],Q=0;Q<3;Q++)d[Q]=Math.min(l[Q],u[Q]),m[Q]=Math.max(l[Q],u[Q]);for(Q=0;Q<3;Q++)h[Q]=i[Q]+d[Q],g[Q]=i[Q]+m[Q],_[Q]=i[Q]+1;var ne=i[0],$=i[1],re=i[2],ie=h[0],ae=h[1],oe=h[2],se=g[0],ce=g[1],le=g[2],ue=_[0],de=_[1],fe=_[2];for(v[0]=-.5*ne+.5*$+.5*re,v[1]=.5*ne-.5*$+.5*re,v[2]=.5*ne+.5*$-.5*re,y[0]=-.5*ie+.5*ae+.5*oe,y[1]=.5*ie-.5*ae+.5*oe,y[2]=.5*ie+.5*ae-.5*oe,b[0]=-.5*se+.5*ce+.5*le,b[1]=.5*se-.5*ce+.5*le,b[2]=.5*se+.5*ce-.5*le,x[0]=-.5*ue+.5*de+.5*fe,x[1]=.5*ue-.5*de+.5*fe,x[2]=.5*ue+.5*de-.5*fe,Q=0;Q<3;Q++)S[Q]=e[Q]-v[Q],C[Q]=e[Q]-y[Q],w[Q]=e[Q]-b[Q],T[Q]=e[Q]-x[Q];if(t[0]>0||t[1]>0||t[2]>0){if(E[0]=v[0],E[1]=y[0],E[2]=b[0],E[3]=x[0],D[0]=v[1],D[1]=y[1],D[2]=b[1],D[3]=x[1],O[0]=v[2],O[1]=y[2],O[2]=b[2],O[3]=x[2],t[0]>0)for(Q=0;Q<4;Q++)E[Q]=(E[Q]%t[0]+t[0])%t[0];if(t[1]>0)for(Q=0;Q<4;Q++)D[Q]=(D[Q]%t[1]+t[1])%t[1];if(t[2]>0)for(Q=0;Q<4;Q++)O[Q]=(O[Q]%t[2]+t[2])%t[2];var pe=E[0],me=D[0],he=O[0],ge=E[1],_e=D[1],ve=O[1],ye=E[2],be=D[2],xe=O[2],Se=E[3],Ce=D[3],we=O[3];i[0]=Math.floor(0*pe+1*me+1*he+.5),i[1]=Math.floor(1*pe+0*me+1*he+.5),i[2]=Math.floor(1*pe+1*me+0*he+.5),h[0]=Math.floor(0*ge+1*_e+1*ve+.5),h[1]=Math.floor(1*ge+0*_e+1*ve+.5),h[2]=Math.floor(1*ge+1*_e+0*ve+.5),g[0]=Math.floor(0*ye+1*be+1*xe+.5),g[1]=Math.floor(1*ye+0*be+1*xe+.5),g[2]=Math.floor(1*ye+1*be+0*xe+.5),_[0]=Math.floor(0*Se+1*Ce+1*we+.5),_[1]=Math.floor(1*Se+0*Ce+1*we+.5),_[2]=Math.floor(1*Se+1*Ce+0*we+.5)}i[0]+=s[0],i[1]+=s[1],i[2]+=s[2],h[0]+=s[0],h[1]+=s[1],h[2]+=s[2],g[0]+=s[0],g[1]+=s[1],g[2]+=s[2],_[0]+=s[0],_[1]+=s[1],_[2]+=s[2];var Te=f.vx,Ee=f.vy;for(Te[0]=i[2],Te[1]=h[2],Te[2]=g[2],Te[3]=_[2],p(Te,Ee),Ee[0]+=i[1],Ee[1]+=h[1],Ee[2]+=g[1],Ee[3]+=_[1],p(Ee,Te),Te[0]+=i[0],Te[1]+=h[0],Te[2]+=g[0],Te[3]+=_[0],p(Te,k),Q=0;Q<4;Q++)A[Q]=k[Q]*3.883222077,j[Q]=.996539792-.006920415*k[Q],M[Q]=k[Q]*.108705628,N[Q]=Math.cos(A[Q]),P[Q]=Math.sin(A[Q]),F[Q]=Math.sqrt(Math.max(0,1-j[Q]*j[Q]));if(n!==0)for(Q=0;Q<4;Q++)z[Q]=N[Q]*F[Q],B[Q]=P[Q]*F[Q],V[Q]=j[Q],H[Q]=Math.sin(M[Q]),U[Q]=Math.cos(M[Q]),W[Q]=P[Q]*H[Q]-N[Q]*U[Q],G[Q]=(1-j[Q])*(W[Q]*P[Q])+j[Q]*H[Q],ee[Q]=(1-j[Q])*(-W[Q]*N[Q])+j[Q]*U[Q],K[Q]=-(B[Q]*U[Q]+z[Q]*H[Q]),q[Q]=Math.sin(n),J[Q]=Math.cos(n),I[Q]=J[Q]*z[Q]+q[Q]*G[Q],L[Q]=J[Q]*B[Q]+q[Q]*ee[Q],R[Q]=J[Q]*V[Q]+q[Q]*K[Q];else for(Q=0;Q<4;Q++)I[Q]=N[Q]*F[Q],L[Q]=P[Q]*F[Q],R[Q]=j[Q];for(Q=0;Q<4;Q++){var De=Q===0?S[0]:Q===1?C[0]:Q===2?w[0]:T[0],Oe=Q===0?S[1]:Q===1?C[1]:Q===2?w[1]:T[1],ke=Q===0?S[2]:Q===1?C[2]:Q===2?w[2]:T[2];Y[Q]=.5-(De*De+Oe*Oe+ke*ke),Y[Q]<0&&(Y[Q]=0),te[Q]=Y[Q]*Y[Q],X[Q]=te[Q]*Y[Q]}for(Q=0;Q<4;Q++){var Ae=I[Q],je=L[Q],Me=R[Q],Ne=Q===0?S[0]:Q===1?C[0]:Q===2?w[0]:T[0],Pe=Q===0?S[1]:Q===1?C[1]:Q===2?w[1]:T[1],Fe=Q===0?S[2]:Q===1?C[2]:Q===2?w[2]:T[2];Z[Q]=Ae*Ne+je*Pe+Me*Fe}var Ie=0;for(Q=0;Q<4;Q++)Ie+=X[Q]*Z[Q];return 39.5*Ie};e.exports=t},78702(e){e.exports=function(e){return e==parseFloat(e)?!(e%2):void 0}},94883(e){e.exports=function(e){return e===parseFloat(e)?!(e%2):void 0}},28915(e){e.exports=function(e,t,n){return(t-e)*n+e}},94908(e){e.exports=function(e,t,n){return n===void 0&&(n=0),e.clone().lerp(t,n)}},94434(e,t,n){var r=new(n(83419))({initialize:function(e){this.val=new Float32Array(9),e?this.copy(e):this.identity()},clone:function(){return new r(this)},set:function(e){return this.copy(e)},copy:function(e){var t=this.val,n=e.val;return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t[6]=n[6],t[7]=n[7],t[8]=n[8],this},fromMat4:function(e){var t=e.val,n=this.val;return n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[4],n[4]=t[5],n[5]=t[6],n[6]=t[8],n[7]=t[9],n[8]=t[10],this},fromArray:function(e){var t=this.val;return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],this},identity:function(){var e=this.val;return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=1,e[5]=0,e[6]=0,e[7]=0,e[8]=1,this},transpose:function(){var e=this.val,t=e[1],n=e[2],r=e[5];return e[1]=e[3],e[2]=e[6],e[3]=t,e[5]=e[7],e[6]=n,e[7]=r,this},invert:function(){var e=this.val,t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=e[6],c=e[7],l=e[8],u=l*a-o*c,d=-l*i+o*s,f=c*i-a*s,p=t*u+n*d+r*f;return p?(p=1/p,e[0]=u*p,e[1]=(-l*n+r*c)*p,e[2]=(o*n-r*a)*p,e[3]=d*p,e[4]=(l*t-r*s)*p,e[5]=(-o*t+r*i)*p,e[6]=f*p,e[7]=(-c*t+n*s)*p,e[8]=(a*t-n*i)*p,this):null},adjoint:function(){var e=this.val,t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=e[6],c=e[7],l=e[8];return e[0]=a*l-o*c,e[1]=r*c-n*l,e[2]=n*o-r*a,e[3]=o*s-i*l,e[4]=t*l-r*s,e[5]=r*i-t*o,e[6]=i*c-a*s,e[7]=n*s-t*c,e[8]=t*a-n*i,this},determinant:function(){var e=this.val,t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=e[6],c=e[7],l=e[8];return t*(l*a-o*c)+n*(-l*i+o*s)+r*(c*i-a*s)},multiply:function(e){var t=this.val,n=t[0],r=t[1],i=t[2],a=t[3],o=t[4],s=t[5],c=t[6],l=t[7],u=t[8],d=e.val,f=d[0],p=d[1],m=d[2],h=d[3],g=d[4],_=d[5],v=d[6],y=d[7],b=d[8];return t[0]=f*n+p*a+m*c,t[1]=f*r+p*o+m*l,t[2]=f*i+p*s+m*u,t[3]=h*n+g*a+_*c,t[4]=h*r+g*o+_*l,t[5]=h*i+g*s+_*u,t[6]=v*n+y*a+b*c,t[7]=v*r+y*o+b*l,t[8]=v*i+y*s+b*u,this},translate:function(e){var t=this.val,n=e.x,r=e.y;return t[6]=n*t[0]+r*t[3]+t[6],t[7]=n*t[1]+r*t[4]+t[7],t[8]=n*t[2]+r*t[5]+t[8],this},rotate:function(e){var t=this.val,n=t[0],r=t[1],i=t[2],a=t[3],o=t[4],s=t[5],c=Math.sin(e),l=Math.cos(e);return t[0]=l*n+c*a,t[1]=l*r+c*o,t[2]=l*i+c*s,t[3]=l*a-c*n,t[4]=l*o-c*r,t[5]=l*s-c*i,this},scale:function(e){var t=this.val,n=e.x,r=e.y;return t[0]=n*t[0],t[1]=n*t[1],t[2]=n*t[2],t[3]=r*t[3],t[4]=r*t[4],t[5]=r*t[5],this},fromQuat:function(e){var t=e.x,n=e.y,r=e.z,i=e.w,a=t+t,o=n+n,s=r+r,c=t*a,l=t*o,u=t*s,d=n*o,f=n*s,p=r*s,m=i*a,h=i*o,g=i*s,_=this.val;return _[0]=1-(d+p),_[3]=l+g,_[6]=u-h,_[1]=l-g,_[4]=1-(c+p),_[7]=f+m,_[2]=u+h,_[5]=f-m,_[8]=1-(c+d),this},normalFromMat4:function(e){var t=e.val,n=this.val,r=t[0],i=t[1],a=t[2],o=t[3],s=t[4],c=t[5],l=t[6],u=t[7],d=t[8],f=t[9],p=t[10],m=t[11],h=t[12],g=t[13],_=t[14],v=t[15],y=r*c-i*s,b=r*l-a*s,x=r*u-o*s,S=i*l-a*c,C=i*u-o*c,w=a*u-o*l,T=d*g-f*h,E=d*_-p*h,D=d*v-m*h,O=f*_-p*g,k=f*v-m*g,A=p*v-m*_,j=y*A-b*k+x*O+S*D-C*E+w*T;return j?(j=1/j,n[0]=(c*A-l*k+u*O)*j,n[1]=(l*D-s*A-u*E)*j,n[2]=(s*k-c*D+u*T)*j,n[3]=(a*k-i*A-o*O)*j,n[4]=(r*A-a*D+o*E)*j,n[5]=(i*D-r*k-o*T)*j,n[6]=(g*w-_*C+v*S)*j,n[7]=(_*x-h*w-v*b)*j,n[8]=(h*C-g*x+v*y)*j,this):null}});e.exports=r},37867(e,t,n){var r=n(83419),i=n(25836),a=1e-6,o=new r({initialize:function(e){this.val=new Float32Array(16),e?this.copy(e):this.identity()},clone:function(){return new o(this)},set:function(e){return this.copy(e)},setValues:function(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h){var g=this.val;return g[0]=e,g[1]=t,g[2]=n,g[3]=r,g[4]=i,g[5]=a,g[6]=o,g[7]=s,g[8]=c,g[9]=l,g[10]=u,g[11]=d,g[12]=f,g[13]=p,g[14]=m,g[15]=h,this},copy:function(e){var t=e.val;return this.setValues(t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8],t[9],t[10],t[11],t[12],t[13],t[14],t[15])},fromArray:function(e){return this.setValues(e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8],e[9],e[10],e[11],e[12],e[13],e[14],e[15])},zero:function(){return this.setValues(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)},transform:function(e,t,n){var r=s.fromQuat(n).val,i=t.x,a=t.y,o=t.z;return this.setValues(r[0]*i,r[1]*i,r[2]*i,0,r[4]*a,r[5]*a,r[6]*a,0,r[8]*o,r[9]*o,r[10]*o,0,e.x,e.y,e.z,1)},xyz:function(e,t,n){this.identity();var r=this.val;return r[12]=e,r[13]=t,r[14]=n,this},scaling:function(e,t,n){this.zero();var r=this.val;return r[0]=e,r[5]=t,r[10]=n,r[15]=1,this},identity:function(){return this.setValues(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1)},transpose:function(){var e=this.val,t=e[1],n=e[2],r=e[3],i=e[6],a=e[7],o=e[11];return e[1]=e[4],e[2]=e[8],e[3]=e[12],e[4]=t,e[6]=e[9],e[7]=e[13],e[8]=n,e[9]=i,e[11]=e[14],e[12]=r,e[13]=a,e[14]=o,this},getInverse:function(e){return this.copy(e),this.invert()},invert:function(){var e=this.val,t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=e[6],c=e[7],l=e[8],u=e[9],d=e[10],f=e[11],p=e[12],m=e[13],h=e[14],g=e[15],_=t*o-n*a,v=t*s-r*a,y=t*c-i*a,b=n*s-r*o,x=n*c-i*o,S=r*c-i*s,C=l*m-u*p,w=l*h-d*p,T=l*g-f*p,E=u*h-d*m,D=u*g-f*m,O=d*g-f*h,k=_*O-v*D+y*E+b*T-x*w+S*C;return k?(k=1/k,this.setValues((o*O-s*D+c*E)*k,(r*D-n*O-i*E)*k,(m*S-h*x+g*b)*k,(d*x-u*S-f*b)*k,(s*T-a*O-c*w)*k,(t*O-r*T+i*w)*k,(h*y-p*S-g*v)*k,(l*S-d*y+f*v)*k,(a*D-o*T+c*C)*k,(n*T-t*D-i*C)*k,(p*x-m*y+g*_)*k,(u*y-l*x-f*_)*k,(o*w-a*E-s*C)*k,(t*E-n*w+r*C)*k,(m*v-p*b-h*_)*k,(l*b-u*v+d*_)*k)):this},adjoint:function(){var e=this.val,t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=e[6],c=e[7],l=e[8],u=e[9],d=e[10],f=e[11],p=e[12],m=e[13],h=e[14],g=e[15];return this.setValues(o*(d*g-f*h)-u*(s*g-c*h)+m*(s*f-c*d),-(n*(d*g-f*h)-u*(r*g-i*h)+m*(r*f-i*d)),n*(s*g-c*h)-o*(r*g-i*h)+m*(r*c-i*s),-(n*(s*f-c*d)-o*(r*f-i*d)+u*(r*c-i*s)),-(a*(d*g-f*h)-l*(s*g-c*h)+p*(s*f-c*d)),t*(d*g-f*h)-l*(r*g-i*h)+p*(r*f-i*d),-(t*(s*g-c*h)-a*(r*g-i*h)+p*(r*c-i*s)),t*(s*f-c*d)-a*(r*f-i*d)+l*(r*c-i*s),a*(u*g-f*m)-l*(o*g-c*m)+p*(o*f-c*u),-(t*(u*g-f*m)-l*(n*g-i*m)+p*(n*f-i*u)),t*(o*g-c*m)-a*(n*g-i*m)+p*(n*c-i*o),-(t*(o*f-c*u)-a*(n*f-i*u)+l*(n*c-i*o)),-(a*(u*h-d*m)-l*(o*h-s*m)+p*(o*d-s*u)),t*(u*h-d*m)-l*(n*h-r*m)+p*(n*d-r*u),-(t*(o*h-s*m)-a*(n*h-r*m)+p*(n*s-r*o)),t*(o*d-s*u)-a*(n*d-r*u)+l*(n*s-r*o))},determinant:function(){var e=this.val,t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=e[6],c=e[7],l=e[8],u=e[9],d=e[10],f=e[11],p=e[12],m=e[13],h=e[14],g=e[15],_=t*o-n*a,v=t*s-r*a,y=t*c-i*a,b=n*s-r*o,x=n*c-i*o,S=r*c-i*s,C=l*m-u*p,w=l*h-d*p,T=l*g-f*p,E=u*h-d*m,D=u*g-f*m;return _*(d*g-f*h)-v*D+y*E+b*T-x*w+S*C},multiply:function(e){var t=this.val,n=t[0],r=t[1],i=t[2],a=t[3],o=t[4],s=t[5],c=t[6],l=t[7],u=t[8],d=t[9],f=t[10],p=t[11],m=t[12],h=t[13],g=t[14],_=t[15],v=e.val,y=v[0],b=v[1],x=v[2],S=v[3];return t[0]=y*n+b*o+x*u+S*m,t[1]=y*r+b*s+x*d+S*h,t[2]=y*i+b*c+x*f+S*g,t[3]=y*a+b*l+x*p+S*_,y=v[4],b=v[5],x=v[6],S=v[7],t[4]=y*n+b*o+x*u+S*m,t[5]=y*r+b*s+x*d+S*h,t[6]=y*i+b*c+x*f+S*g,t[7]=y*a+b*l+x*p+S*_,y=v[8],b=v[9],x=v[10],S=v[11],t[8]=y*n+b*o+x*u+S*m,t[9]=y*r+b*s+x*d+S*h,t[10]=y*i+b*c+x*f+S*g,t[11]=y*a+b*l+x*p+S*_,y=v[12],b=v[13],x=v[14],S=v[15],t[12]=y*n+b*o+x*u+S*m,t[13]=y*r+b*s+x*d+S*h,t[14]=y*i+b*c+x*f+S*g,t[15]=y*a+b*l+x*p+S*_,this},multiplyLocal:function(e){var t=this.val,n=e.val;return this.setValues(t[0]*n[0]+t[1]*n[4]+t[2]*n[8]+t[3]*n[12],t[0]*n[1]+t[1]*n[5]+t[2]*n[9]+t[3]*n[13],t[0]*n[2]+t[1]*n[6]+t[2]*n[10]+t[3]*n[14],t[0]*n[3]+t[1]*n[7]+t[2]*n[11]+t[3]*n[15],t[4]*n[0]+t[5]*n[4]+t[6]*n[8]+t[7]*n[12],t[4]*n[1]+t[5]*n[5]+t[6]*n[9]+t[7]*n[13],t[4]*n[2]+t[5]*n[6]+t[6]*n[10]+t[7]*n[14],t[4]*n[3]+t[5]*n[7]+t[6]*n[11]+t[7]*n[15],t[8]*n[0]+t[9]*n[4]+t[10]*n[8]+t[11]*n[12],t[8]*n[1]+t[9]*n[5]+t[10]*n[9]+t[11]*n[13],t[8]*n[2]+t[9]*n[6]+t[10]*n[10]+t[11]*n[14],t[8]*n[3]+t[9]*n[7]+t[10]*n[11]+t[11]*n[15],t[12]*n[0]+t[13]*n[4]+t[14]*n[8]+t[15]*n[12],t[12]*n[1]+t[13]*n[5]+t[14]*n[9]+t[15]*n[13],t[12]*n[2]+t[13]*n[6]+t[14]*n[10]+t[15]*n[14],t[12]*n[3]+t[13]*n[7]+t[14]*n[11]+t[15]*n[15])},premultiply:function(e){return this.multiplyMatrices(e,this)},multiplyMatrices:function(e,t){var n=e.val,r=t.val,i=n[0],a=n[4],o=n[8],s=n[12],c=n[1],l=n[5],u=n[9],d=n[13],f=n[2],p=n[6],m=n[10],h=n[14],g=n[3],_=n[7],v=n[11],y=n[15],b=r[0],x=r[4],S=r[8],C=r[12],w=r[1],T=r[5],E=r[9],D=r[13],O=r[2],k=r[6],A=r[10],j=r[14],M=r[3],N=r[7],P=r[11],F=r[15];return this.setValues(i*b+a*w+o*O+s*M,c*b+l*w+u*O+d*M,f*b+p*w+m*O+h*M,g*b+_*w+v*O+y*M,i*x+a*T+o*k+s*N,c*x+l*T+u*k+d*N,f*x+p*T+m*k+h*N,g*x+_*T+v*k+y*N,i*S+a*E+o*A+s*P,c*S+l*E+u*A+d*P,f*S+p*E+m*A+h*P,g*S+_*E+v*A+y*P,i*C+a*D+o*j+s*F,c*C+l*D+u*j+d*F,f*C+p*D+m*j+h*F,g*C+_*D+v*j+y*F)},translate:function(e){return this.translateXYZ(e.x,e.y,e.z)},translateXYZ:function(e,t,n){var r=this.val;return r[12]=r[0]*e+r[4]*t+r[8]*n+r[12],r[13]=r[1]*e+r[5]*t+r[9]*n+r[13],r[14]=r[2]*e+r[6]*t+r[10]*n+r[14],r[15]=r[3]*e+r[7]*t+r[11]*n+r[15],this},scale:function(e){return this.scaleXYZ(e.x,e.y,e.z)},scaleXYZ:function(e,t,n){var r=this.val;return r[0]*=e,r[1]*=e,r[2]*=e,r[3]*=e,r[4]*=t,r[5]*=t,r[6]*=t,r[7]*=t,r[8]*=n,r[9]*=n,r[10]*=n,r[11]*=n,this},makeRotationAxis:function(e,t){var n=Math.cos(t),r=Math.sin(t),i=1-n,a=e.x,o=e.y,s=e.z,c=i*a,l=i*o;return this.setValues(c*a+n,c*o-r*s,c*s+r*o,0,c*o+r*s,l*o+n,l*s-r*a,0,c*s-r*o,l*s+r*a,i*s*s+n,0,0,0,0,1)},rotate:function(e,t){var n=this.val,r=t.x,i=t.y,o=t.z,s=Math.sqrt(r*r+i*i+o*o);if(Math.abs(s)<a)return this;s=1/s,r*=s,i*=s,o*=s;var c=Math.sin(e),l=Math.cos(e),u=1-l,d=n[0],f=n[1],p=n[2],m=n[3],h=n[4],g=n[5],_=n[6],v=n[7],y=n[8],b=n[9],x=n[10],S=n[11],C=n[12],w=n[13],T=n[14],E=n[15],D=r*r*u+l,O=i*r*u+o*c,k=o*r*u-i*c,A=r*i*u-o*c,j=i*i*u+l,M=o*i*u+r*c,N=r*o*u+i*c,P=i*o*u-r*c,F=o*o*u+l;return this.setValues(d*D+h*O+y*k,f*D+g*O+b*k,p*D+_*O+x*k,m*D+v*O+S*k,d*A+h*j+y*M,f*A+g*j+b*M,p*A+_*j+x*M,m*A+v*j+S*M,d*N+h*P+y*F,f*N+g*P+b*F,p*N+_*P+x*F,m*N+v*P+S*F,C,w,T,E)},rotateX:function(e){var t=this.val,n=Math.sin(e),r=Math.cos(e),i=t[4],a=t[5],o=t[6],s=t[7],c=t[8],l=t[9],u=t[10],d=t[11];return t[4]=i*r+c*n,t[5]=a*r+l*n,t[6]=o*r+u*n,t[7]=s*r+d*n,t[8]=c*r-i*n,t[9]=l*r-a*n,t[10]=u*r-o*n,t[11]=d*r-s*n,this},rotateY:function(e){var t=this.val,n=Math.sin(e),r=Math.cos(e),i=t[0],a=t[1],o=t[2],s=t[3],c=t[8],l=t[9],u=t[10],d=t[11];return t[0]=i*r-c*n,t[1]=a*r-l*n,t[2]=o*r-u*n,t[3]=s*r-d*n,t[8]=i*n+c*r,t[9]=a*n+l*r,t[10]=o*n+u*r,t[11]=s*n+d*r,this},rotateZ:function(e){var t=this.val,n=Math.sin(e),r=Math.cos(e),i=t[0],a=t[1],o=t[2],s=t[3],c=t[4],l=t[5],u=t[6],d=t[7];return t[0]=i*r+c*n,t[1]=a*r+l*n,t[2]=o*r+u*n,t[3]=s*r+d*n,t[4]=c*r-i*n,t[5]=l*r-a*n,t[6]=u*r-o*n,t[7]=d*r-s*n,this},fromRotationTranslation:function(e,t){var n=e.x,r=e.y,i=e.z,a=e.w,o=n+n,s=r+r,c=i+i,l=n*o,u=n*s,d=n*c,f=r*s,p=r*c,m=i*c,h=a*o,g=a*s,_=a*c;return this.setValues(1-(f+m),u+_,d-g,0,u-_,1-(l+m),p+h,0,d+g,p-h,1-(l+f),0,t.x,t.y,t.z,1)},fromQuat:function(e){var t=e.x,n=e.y,r=e.z,i=e.w,a=t+t,o=n+n,s=r+r,c=t*a,l=t*o,u=t*s,d=n*o,f=n*s,p=r*s,m=i*a,h=i*o,g=i*s;return this.setValues(1-(d+p),l+g,u-h,0,l-g,1-(c+p),f+m,0,u+h,f-m,1-(c+d),0,0,0,0,1)},frustum:function(e,t,n,r,i,a){var o=1/(t-e),s=1/(r-n),c=1/(i-a);return this.setValues(i*2*o,0,0,0,0,i*2*s,0,0,(t+e)*o,(r+n)*s,(a+i)*c,-1,0,0,a*i*2*c,0)},perspective:function(e,t,n,r){var i=1/Math.tan(e/2),a=1/(n-r);return this.setValues(i/t,0,0,0,0,i,0,0,0,0,(r+n)*a,-1,0,0,2*r*n*a,0)},perspectiveLH:function(e,t,n,r){return this.setValues(2*n/e,0,0,0,0,2*n/t,0,0,0,0,-r/(n-r),1,0,0,n*r/(n-r),0)},ortho:function(e,t,n,r,i,a){var o=e-t,s=n-r,c=i-a;return o=o===0?o:1/o,s=s===0?s:1/s,c=c===0?c:1/c,this.setValues(-2*o,0,0,0,0,-2*s,0,0,0,0,2*c,0,(e+t)*o,(r+n)*s,(a+i)*c,1)},lookAtRH:function(e,t,n){var r=this.val;return d.subVectors(e,t),d.lengthSq()===0&&(d.z=1),d.normalize(),l.crossVectors(n,d),l.lengthSq()===0&&(Math.abs(n.z)===1?d.x+=1e-4:d.z+=1e-4,d.normalize(),l.crossVectors(n,d)),l.normalize(),u.crossVectors(d,l),r[0]=l.x,r[1]=l.y,r[2]=l.z,r[4]=u.x,r[5]=u.y,r[6]=u.z,r[8]=d.x,r[9]=d.y,r[10]=d.z,this},lookAt:function(e,t,n){var r=e.x,i=e.y,o=e.z,s=n.x,c=n.y,l=n.z,u=t.x,d=t.y,f=t.z;if(Math.abs(r-u)<a&&Math.abs(i-d)<a&&Math.abs(o-f)<a)return this.identity();var p=r-u,m=i-d,h=o-f,g=1/Math.sqrt(p*p+m*m+h*h);p*=g,m*=g,h*=g;var _=c*h-l*m,v=l*p-s*h,y=s*m-c*p;g=Math.sqrt(_*_+v*v+y*y),g?(g=1/g,_*=g,v*=g,y*=g):(_=0,v=0,y=0);var b=m*y-h*v,x=h*_-p*y,S=p*v-m*_;return g=Math.sqrt(b*b+x*x+S*S),g?(g=1/g,b*=g,x*=g,S*=g):(b=0,x=0,S=0),this.setValues(_,b,p,0,v,x,m,0,y,S,h,0,-(_*r+v*i+y*o),-(b*r+x*i+S*o),-(p*r+m*i+h*o),1)},yawPitchRoll:function(e,t,n){this.zero(),s.zero(),c.zero();var r=this.val,i=s.val,a=c.val,o=Math.sin(n),l=Math.cos(n);return r[10]=1,r[15]=1,r[0]=l,r[1]=o,r[4]=-o,r[5]=l,o=Math.sin(t),l=Math.cos(t),i[0]=1,i[15]=1,i[5]=l,i[10]=l,i[9]=-o,i[6]=o,o=Math.sin(e),l=Math.cos(e),a[5]=1,a[15]=1,a[0]=l,a[2]=-o,a[8]=o,a[10]=l,this.multiplyLocal(s),this.multiplyLocal(c),this},setWorldMatrix:function(e,t,n,r,i){return this.yawPitchRoll(e.y,e.x,e.z),s.scaling(n.x,n.y,n.z),c.xyz(t.x,t.y,t.z),this.multiplyLocal(s),this.multiplyLocal(c),r&&this.multiplyLocal(r),i&&this.multiplyLocal(i),this},multiplyToMat4:function(e,t){var n=this.val,r=e.val,i=n[0],a=n[1],o=n[2],s=n[3],c=n[4],l=n[5],u=n[6],d=n[7],f=n[8],p=n[9],m=n[10],h=n[11],g=n[12],_=n[13],v=n[14],y=n[15],b=r[0],x=r[1],S=r[2],C=r[3],w=r[4],T=r[5],E=r[6],D=r[7],O=r[8],k=r[9],A=r[10],j=r[11],M=r[12],N=r[13],P=r[14],F=r[15];return t.setValues(b*i+x*c+S*f+C*g,x*a+x*l+S*p+C*_,S*o+x*u+S*m+C*v,C*s+x*d+S*h+C*y,w*i+T*c+E*f+D*g,w*a+T*l+E*p+D*_,w*o+T*u+E*m+D*v,w*s+T*d+E*h+D*y,O*i+k*c+A*f+j*g,O*a+k*l+A*p+j*_,O*o+k*u+A*m+j*v,O*s+k*d+A*h+j*y,M*i+N*c+P*f+F*g,M*a+N*l+P*p+F*_,M*o+N*u+P*m+F*v,M*s+N*d+P*h+F*y)},fromRotationXYTranslation:function(e,t,n){var r=t.x,i=t.y,a=t.z,o=Math.sin(e.x),s=Math.cos(e.x),c=Math.sin(e.y),l=Math.cos(e.y),u=r,d=i,f=a,p=-o,m=0-p*c,h=0-s*c,g=p*l,_=s*l;return n||(u=l*r+c*a,d=m*r+s*i+g*a,f=h*r+o*i+_*a),this.setValues(l,m,h,0,0,s,o,0,c,g,_,0,u,d,f,1)},getMaxScaleOnAxis:function(){var e=this.val,t=e[0]*e[0]+e[1]*e[1]+e[2]*e[2],n=e[4]*e[4]+e[5]*e[5]+e[6]*e[6],r=e[8]*e[8]+e[9]*e[9]+e[10]*e[10];return Math.sqrt(Math.max(t,n,r))}}),s=new o,c=new o,l=new i,u=new i,d=new i;e.exports=o},86883(e){e.exports=function(e,t,n){return Math.min(e+t,n)}},50040(e){e.exports=function(e){var t=e.length;if(t===0)return 0;e.sort(function(e,t){return e-t});var n=Math.floor(t/2);return t%2==0?(e[n]+e[n-1])/2:e[n]}},37204(e){e.exports=function(e,t,n){return Math.max(e-t,n)}},65201(e){e.exports=function(e,t,n,r){n===void 0&&(n=t+1);var i=(e-t)/(n-t);return i>1?r===void 0?i=1:(i=(r-e)/(r-n),i<0&&(i=0)):i<0&&(i=0),i}},15746(e,t,n){var r=n(83419),i=n(94434),a=n(29747),o=n(25836),s=1e-6,c=new Int8Array([1,2,0]),l=new Float32Array([0,0,0]),u=new o(1,0,0),d=new o(0,1,0),f=new o,p=new i;e.exports=new r({initialize:function(e,t,n,r){this.onChangeCallback=a,this.set(e,t,n,r)},x:{get:function(){return this._x},set:function(e){this._x=e,this.onChangeCallback(this)}},y:{get:function(){return this._y},set:function(e){this._y=e,this.onChangeCallback(this)}},z:{get:function(){return this._z},set:function(e){this._z=e,this.onChangeCallback(this)}},w:{get:function(){return this._w},set:function(e){this._w=e,this.onChangeCallback(this)}},copy:function(e){return this.set(e)},set:function(e,t,n,r,i){return i===void 0&&(i=!0),typeof e==`object`?(this._x=e.x||0,this._y=e.y||0,this._z=e.z||0,this._w=e.w||0):(this._x=e||0,this._y=t||0,this._z=n||0,this._w=r||0),i&&this.onChangeCallback(this),this},add:function(e){return this._x+=e.x,this._y+=e.y,this._z+=e.z,this._w+=e.w,this.onChangeCallback(this),this},subtract:function(e){return this._x-=e.x,this._y-=e.y,this._z-=e.z,this._w-=e.w,this.onChangeCallback(this),this},scale:function(e){return this._x*=e,this._y*=e,this._z*=e,this._w*=e,this.onChangeCallback(this),this},length:function(){var e=this.x,t=this.y,n=this.z,r=this.w;return Math.sqrt(e*e+t*t+n*n+r*r)},lengthSq:function(){var e=this.x,t=this.y,n=this.z,r=this.w;return e*e+t*t+n*n+r*r},normalize:function(){var e=this.x,t=this.y,n=this.z,r=this.w,i=e*e+t*t+n*n+r*r;return i>0&&(i=1/Math.sqrt(i),this._x=e*i,this._y=t*i,this._z=n*i,this._w=r*i),this.onChangeCallback(this),this},dot:function(e){return this.x*e.x+this.y*e.y+this.z*e.z+this.w*e.w},lerp:function(e,t){t===void 0&&(t=0);var n=this.x,r=this.y,i=this.z,a=this.w;return this.set(n+t*(e.x-n),r+t*(e.y-r),i+t*(e.z-i),a+t*(e.w-a))},rotationTo:function(e,t){var n=e.x*t.x+e.y*t.y+e.z*t.z;return n<-.999999?(f.copy(u).cross(e).length()<s&&f.copy(d).cross(e),f.normalize(),this.setAxisAngle(f,Math.PI)):n>.999999?this.set(0,0,0,1):(f.copy(e).cross(t),this._x=f.x,this._y=f.y,this._z=f.z,this._w=1+n,this.normalize())},setAxes:function(e,t,n){var r=p.val;return r[0]=t.x,r[3]=t.y,r[6]=t.z,r[1]=n.x,r[4]=n.y,r[7]=n.z,r[2]=-e.x,r[5]=-e.y,r[8]=-e.z,this.fromMat3(p).normalize()},identity:function(){return this.set(0,0,0,1)},setAxisAngle:function(e,t){t*=.5;var n=Math.sin(t);return this.set(n*e.x,n*e.y,n*e.z,Math.cos(t))},multiply:function(e){var t=this.x,n=this.y,r=this.z,i=this.w,a=e.x,o=e.y,s=e.z,c=e.w;return this.set(t*c+i*a+n*s-r*o,n*c+i*o+r*a-t*s,r*c+i*s+t*o-n*a,i*c-t*a-n*o-r*s)},slerp:function(e,t){var n=this.x,r=this.y,i=this.z,a=this.w,o=e.x,c=e.y,l=e.z,u=e.w,d=n*o+r*c+i*l+a*u;d<0&&(d=-d,o=-o,c=-c,l=-l,u=-u);var f=1-t,p=t;if(1-d>s){var m=Math.acos(d),h=Math.sin(m);f=Math.sin((1-t)*m)/h,p=Math.sin(t*m)/h}return this.set(f*n+p*o,f*r+p*c,f*i+p*l,f*a+p*u)},invert:function(){var e=this.x,t=this.y,n=this.z,r=this.w,i=e*e+t*t+n*n+r*r,a=i?1/i:0;return this.set(-e*a,-t*a,-n*a,r*a)},conjugate:function(){return this._x=-this.x,this._y=-this.y,this._z=-this.z,this.onChangeCallback(this),this},rotateX:function(e){e*=.5;var t=this.x,n=this.y,r=this.z,i=this.w,a=Math.sin(e),o=Math.cos(e);return this.set(t*o+i*a,n*o+r*a,r*o-n*a,i*o-t*a)},rotateY:function(e){e*=.5;var t=this.x,n=this.y,r=this.z,i=this.w,a=Math.sin(e),o=Math.cos(e);return this.set(t*o-r*a,n*o+i*a,r*o+t*a,i*o-n*a)},rotateZ:function(e){e*=.5;var t=this.x,n=this.y,r=this.z,i=this.w,a=Math.sin(e),o=Math.cos(e);return this.set(t*o+n*a,n*o-t*a,r*o+i*a,i*o-r*a)},calculateW:function(){var e=this.x,t=this.y,n=this.z;return this.w=-Math.sqrt(1-e*e-t*t-n*n),this},setFromEuler:function(e,t){var n=e.x/2,r=e.y/2,i=e.z/2,a=Math.cos(n),o=Math.cos(r),s=Math.cos(i),c=Math.sin(n),l=Math.sin(r),u=Math.sin(i);switch(e.order){case`XYZ`:this.set(c*o*s+a*l*u,a*l*s-c*o*u,a*o*u+c*l*s,a*o*s-c*l*u,t);break;case`YXZ`:this.set(c*o*s+a*l*u,a*l*s-c*o*u,a*o*u-c*l*s,a*o*s+c*l*u,t);break;case`ZXY`:this.set(c*o*s-a*l*u,a*l*s+c*o*u,a*o*u+c*l*s,a*o*s-c*l*u,t);break;case`ZYX`:this.set(c*o*s-a*l*u,a*l*s+c*o*u,a*o*u-c*l*s,a*o*s+c*l*u,t);break;case`YZX`:this.set(c*o*s+a*l*u,a*l*s+c*o*u,a*o*u-c*l*s,a*o*s-c*l*u,t);break;case`XZY`:this.set(c*o*s-a*l*u,a*l*s-c*o*u,a*o*u+c*l*s,a*o*s+c*l*u,t);break}return this},setFromRotationMatrix:function(e){var t=e.val,n=t[0],r=t[4],i=t[8],a=t[1],o=t[5],s=t[9],c=t[2],l=t[6],u=t[10],d=n+o+u,f;return d>0?(f=.5/Math.sqrt(d+1),this.set((l-s)*f,(i-c)*f,(a-r)*f,.25/f)):n>o&&n>u?(f=2*Math.sqrt(1+n-o-u),this.set(.25*f,(r+a)/f,(i+c)/f,(l-s)/f)):o>u?(f=2*Math.sqrt(1+o-n-u),this.set((r+a)/f,.25*f,(s+l)/f,(i-c)/f)):(f=2*Math.sqrt(1+u-n-o),this.set((i+c)/f,(s+l)/f,.25*f,(a-r)/f)),this},fromMat3:function(e){var t=e.val,n=t[0]+t[4]+t[8],r;if(n>0)r=Math.sqrt(n+1),this.w=.5*r,r=.5/r,this._x=(t[7]-t[5])*r,this._y=(t[2]-t[6])*r,this._z=(t[3]-t[1])*r;else{var i=0;t[4]>t[0]&&(i=1),t[8]>t[i*3+i]&&(i=2);var a=c[i],o=c[a];r=Math.sqrt(t[i*3+i]-t[a*3+a]-t[o*3+o]+1),l[i]=.5*r,r=.5/r,l[a]=(t[a*3+i]+t[i*3+a])*r,l[o]=(t[o*3+i]+t[i*3+o])*r,this._x=l[0],this._y=l[1],this._z=l[2],this._w=(t[o*3+a]-t[a*3+o])*r}return this.onChangeCallback(this),this}})},43396(e,t,n){var r=n(36383);e.exports=function(e){return e*r.RAD_TO_DEG}},74362(e){e.exports=function(e,t){t===void 0&&(t=1);var n=Math.random()*2*Math.PI;return e.x=Math.cos(n)*t,e.y=Math.sin(n)*t,e}},60706(e){e.exports=function(e,t){t===void 0&&(t=1);var n=Math.random()*2*Math.PI,r=Math.random()*2-1,i=Math.sqrt(1-r*r)*t;return e.x=Math.cos(n)*i,e.y=Math.sin(n)*i,e.z=r*t,e}},67421(e){e.exports=function(e,t){return t===void 0&&(t=1),e.x=(Math.random()*2-1)*t,e.y=(Math.random()*2-1)*t,e.z=(Math.random()*2-1)*t,e.w=(Math.random()*2-1)*t,e}},36305(e){e.exports=function(e,t){var n=e.x,r=e.y;return e.x=n*Math.cos(t)-r*Math.sin(t),e.y=n*Math.sin(t)+r*Math.cos(t),e}},11520(e){e.exports=function(e,t,n,r){var i=Math.cos(r),a=Math.sin(r),o=e.x-t,s=e.y-n;return e.x=o*i-s*a+t,e.y=o*a+s*i+n,e}},1163(e){e.exports=function(e,t,n,r,i){var a=r+Math.atan2(e.y-n,e.x-t);return e.x=t+i*Math.cos(a),e.y=n+i*Math.sin(a),e}},70336(e){e.exports=function(e,t,n,r,i){return e.x=t+i*Math.cos(r),e.y=n+i*Math.sin(r),e}},72678(e,t,n){var r=n(25836),i=n(37867),a=n(15746),o=new i,s=new a,c=new r;e.exports=function(e,t,n){return s.setAxisAngle(t,n),o.fromRotationTranslation(s,c.set(0,0,0)),e.transformMat4(o)}},2284(e){e.exports=function(e){return e>0?Math.ceil(e):Math.floor(e)}},41013(e){e.exports=function(e,t,n){t===void 0&&(t=0),n===void 0&&(n=10);var r=n**+-t;return Math.round(e*r)/r}},7602(e){e.exports=function(e,t,n){return e<=t?0:e>=n?1:(e=(e-t)/(n-t),e*e*(3-2*e))}},54261(e){e.exports=function(e,t,n){return e=Math.max(0,Math.min(1,(e-t)/(n-t))),e*e*e*(e*(e*6-15)+10)}},44408(e,t,n){var r=n(26099);e.exports=function(e,t,n,i){i===void 0&&(i=new r);var a=0,o=0,s=t*n;return e>0&&e<=s&&(e>t-1?(o=Math.floor(e/t),a=e-o*t):a=e),i.set(a,o)}},85955(e,t,n){var r=n(26099);e.exports=function(e,t,n,i,a,o,s,c){c===void 0&&(c=new r);var l=Math.sin(a),u=Math.cos(a),d=u*o,f=l*o,p=-l*s,m=u*s,h=1/(d*m+p*-f);return c.x=m*h*e+-p*h*t+(i*p-n*m)*h,c.y=d*h*t+-f*h*e+(-i*d+n*f)*h,c}},26099(e,t,n){var r=n(83419),i=n(43855),a=new r({initialize:function(e,t){this.x=0,this.y=0,typeof e==`object`?(this.x=e.x||0,this.y=e.y||0):(t===void 0&&(t=e),this.x=e||0,this.y=t||0)},clone:function(){return new a(this.x,this.y)},copy:function(e){return this.x=e.x||0,this.y=e.y||0,this},setFromObject:function(e){return this.x=e.x||0,this.y=e.y||0,this},set:function(e,t){return t===void 0&&(t=e),this.x=e,this.y=t,this},setTo:function(e,t){return this.set(e,t)},ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this},floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this},invert:function(){return this.set(this.y,this.x)},setToPolar:function(e,t){return t??=1,this.x=Math.cos(e)*t,this.y=Math.sin(e)*t,this},equals:function(e){return this.x===e.x&&this.y===e.y},fuzzyEquals:function(e,t){return i(this.x,e.x,t)&&i(this.y,e.y,t)},angle:function(){var e=Math.atan2(this.y,this.x);return e<0&&(e+=2*Math.PI),e},setAngle:function(e){return this.setToPolar(e,this.length())},add:function(e){return this.x+=e.x,this.y+=e.y,this},subtract:function(e){return this.x-=e.x,this.y-=e.y,this},multiply:function(e){return this.x*=e.x,this.y*=e.y,this},scale:function(e){return isFinite(e)?(this.x*=e,this.y*=e):(this.x=0,this.y=0),this},divide:function(e){return this.x/=e.x,this.y/=e.y,this},negate:function(){return this.x=-this.x,this.y=-this.y,this},distance:function(e){var t=e.x-this.x,n=e.y-this.y;return Math.sqrt(t*t+n*n)},distanceSq:function(e){var t=e.x-this.x,n=e.y-this.y;return t*t+n*n},length:function(){var e=this.x,t=this.y;return Math.sqrt(e*e+t*t)},setLength:function(e){return this.normalize().scale(e)},lengthSq:function(){var e=this.x,t=this.y;return e*e+t*t},normalize:function(){var e=this.x,t=this.y,n=e*e+t*t;return n>0&&(n=1/Math.sqrt(n),this.x=e*n,this.y=t*n),this},normalizeRightHand:function(){var e=this.x;return this.x=this.y*-1,this.y=e,this},normalizeLeftHand:function(){var e=this.x;return this.x=this.y,this.y=e*-1,this},dot:function(e){return this.x*e.x+this.y*e.y},cross:function(e){return this.x*e.y-this.y*e.x},lerp:function(e,t){t===void 0&&(t=0);var n=this.x,r=this.y;return this.x=n+t*(e.x-n),this.y=r+t*(e.y-r),this},transformMat3:function(e){var t=this.x,n=this.y,r=e.val;return this.x=r[0]*t+r[3]*n+r[6],this.y=r[1]*t+r[4]*n+r[7],this},transformMat4:function(e){var t=this.x,n=this.y,r=e.val;return this.x=r[0]*t+r[4]*n+r[12],this.y=r[1]*t+r[5]*n+r[13],this},reset:function(){return this.x=0,this.y=0,this},limit:function(e){var t=this.length();return t&&t>e&&this.scale(e/t),this},reflect:function(e){return e=e.clone().normalize(),this.subtract(e.scale(2*this.dot(e)))},mirror:function(e){return this.reflect(e).negate()},rotate:function(e){var t=Math.cos(e),n=Math.sin(e);return this.set(t*this.x-n*this.y,n*this.x+t*this.y)},project:function(e){var t=this.dot(e)/e.dot(e);return this.copy(e).scale(t)},projectUnit:function(e,t){t===void 0&&(t=new a);var n=this.x*e.x+this.y*e.y;return n!==0&&(t.x=n*e.x,t.y=n*e.y),t}});a.ZERO=new a,a.RIGHT=new a(1,0),a.LEFT=new a(-1,0),a.UP=new a(0,-1),a.DOWN=new a(0,1),a.ONE=new a(1,1),e.exports=a},25836(e,t,n){var r=new(n(83419))({initialize:function(e,t,n){this.x=0,this.y=0,this.z=0,typeof e==`object`?(this.x=e.x||0,this.y=e.y||0,this.z=e.z||0):(this.x=e||0,this.y=t||0,this.z=n||0)},up:function(){return this.x=0,this.y=1,this.z=0,this},min:function(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z),this},max:function(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z),this},clone:function(){return new r(this.x,this.y,this.z)},addVectors:function(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this},subVectors:function(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this},crossVectors:function(e,t){var n=e.x,r=e.y,i=e.z,a=t.x,o=t.y,s=t.z;return this.x=r*s-i*o,this.y=i*a-n*s,this.z=n*o-r*a,this},equals:function(e){return this.x===e.x&&this.y===e.y&&this.z===e.z},copy:function(e){return this.x=e.x,this.y=e.y,this.z=e.z||0,this},set:function(e,t,n){return typeof e==`object`?(this.x=e.x||0,this.y=e.y||0,this.z=e.z||0):(this.x=e||0,this.y=t||0,this.z=n||0),this},setFromMatrixPosition:function(e){return this.fromArray(e.val,12)},setFromMatrixColumn:function(e,t){return this.fromArray(e.val,t*4)},fromArray:function(e,t){return t===void 0&&(t=0),this.x=e[t],this.y=e[t+1],this.z=e[t+2],this},add:function(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z||0,this},addScalar:function(e){return this.x+=e,this.y+=e,this.z+=e,this},addScale:function(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t||0,this},subtract:function(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z||0,this},multiply:function(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z||1,this},scale:function(e){return isFinite(e)?(this.x*=e,this.y*=e,this.z*=e):(this.x=0,this.y=0,this.z=0),this},divide:function(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z||1,this},negate:function(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this},distance:function(e){var t=e.x-this.x,n=e.y-this.y,r=e.z-this.z||0;return Math.sqrt(t*t+n*n+r*r)},distanceSq:function(e){var t=e.x-this.x,n=e.y-this.y,r=e.z-this.z||0;return t*t+n*n+r*r},length:function(){var e=this.x,t=this.y,n=this.z;return Math.sqrt(e*e+t*t+n*n)},lengthSq:function(){var e=this.x,t=this.y,n=this.z;return e*e+t*t+n*n},normalize:function(){var e=this.x,t=this.y,n=this.z,r=e*e+t*t+n*n;return r>0&&(r=1/Math.sqrt(r),this.x=e*r,this.y=t*r,this.z=n*r),this},dot:function(e){return this.x*e.x+this.y*e.y+this.z*e.z},cross:function(e){var t=this.x,n=this.y,r=this.z,i=e.x,a=e.y,o=e.z;return this.x=n*o-r*a,this.y=r*i-t*o,this.z=t*a-n*i,this},lerp:function(e,t){t===void 0&&(t=0);var n=this.x,r=this.y,i=this.z;return this.x=n+t*(e.x-n),this.y=r+t*(e.y-r),this.z=i+t*(e.z-i),this},applyMatrix3:function(e){var t=this.x,n=this.y,r=this.z,i=e.val;return this.x=i[0]*t+i[3]*n+i[6]*r,this.y=i[1]*t+i[4]*n+i[7]*r,this.z=i[2]*t+i[5]*n+i[8]*r,this},applyMatrix4:function(e){var t=this.x,n=this.y,r=this.z,i=e.val,a=1/(i[3]*t+i[7]*n+i[11]*r+i[15]);return this.x=(i[0]*t+i[4]*n+i[8]*r+i[12])*a,this.y=(i[1]*t+i[5]*n+i[9]*r+i[13])*a,this.z=(i[2]*t+i[6]*n+i[10]*r+i[14])*a,this},transformMat3:function(e){var t=this.x,n=this.y,r=this.z,i=e.val;return this.x=t*i[0]+n*i[3]+r*i[6],this.y=t*i[1]+n*i[4]+r*i[7],this.z=t*i[2]+n*i[5]+r*i[8],this},transformMat4:function(e){var t=this.x,n=this.y,r=this.z,i=e.val;return this.x=i[0]*t+i[4]*n+i[8]*r+i[12],this.y=i[1]*t+i[5]*n+i[9]*r+i[13],this.z=i[2]*t+i[6]*n+i[10]*r+i[14],this},transformCoordinates:function(e){var t=this.x,n=this.y,r=this.z,i=e.val,a=t*i[0]+n*i[4]+r*i[8]+i[12],o=t*i[1]+n*i[5]+r*i[9]+i[13],s=t*i[2]+n*i[6]+r*i[10]+i[14],c=t*i[3]+n*i[7]+r*i[11]+i[15];return this.x=a/c,this.y=o/c,this.z=s/c,this},transformQuat:function(e){var t=this.x,n=this.y,r=this.z,i=e.x,a=e.y,o=e.z,s=e.w,c=s*t+a*r-o*n,l=s*n+o*t-i*r,u=s*r+i*n-a*t,d=-i*t-a*n-o*r;return this.x=c*s+d*-i+l*-o-u*-a,this.y=l*s+d*-a+u*-i-c*-o,this.z=u*s+d*-o+c*-a-l*-i,this},project:function(e){var t=this.x,n=this.y,r=this.z,i=e.val,a=i[0],o=i[1],s=i[2],c=i[3],l=i[4],u=i[5],d=i[6],f=i[7],p=i[8],m=i[9],h=i[10],g=i[11],_=i[12],v=i[13],y=i[14],b=i[15],x=1/(t*c+n*f+r*g+b);return this.x=(t*a+n*l+r*p+_)*x,this.y=(t*o+n*u+r*m+v)*x,this.z=(t*s+n*d+r*h+y)*x,this},projectViewMatrix:function(e,t){return this.applyMatrix4(e).applyMatrix4(t)},unprojectViewMatrix:function(e,t){return this.applyMatrix4(e).applyMatrix4(t)},unproject:function(e,t){var n=e.x,r=e.y,i=e.z,a=e.w,o=this.x-n,s=a-this.y-1-r,c=this.z;return this.x=2*o/i-1,this.y=2*s/a-1,this.z=2*c-1,this.project(t)},reset:function(){return this.x=0,this.y=0,this.z=0,this}});r.ZERO=new r,r.RIGHT=new r(1,0,0),r.LEFT=new r(-1,0,0),r.UP=new r(0,-1,0),r.DOWN=new r(0,1,0),r.FORWARD=new r(0,0,1),r.BACK=new r(0,0,-1),r.ONE=new r(1,1,1),e.exports=r},61369(e,t,n){var r=new(n(83419))({initialize:function(e,t,n,r){this.x=0,this.y=0,this.z=0,this.w=0,typeof e==`object`?(this.x=e.x||0,this.y=e.y||0,this.z=e.z||0,this.w=e.w||0):(this.x=e||0,this.y=t||0,this.z=n||0,this.w=r||0)},clone:function(){return new r(this.x,this.y,this.z,this.w)},copy:function(e){return this.x=e.x,this.y=e.y,this.z=e.z||0,this.w=e.w||0,this},equals:function(e){return this.x===e.x&&this.y===e.y&&this.z===e.z&&this.w===e.w},set:function(e,t,n,r){return typeof e==`object`?(this.x=e.x||0,this.y=e.y||0,this.z=e.z||0,this.w=e.w||0):(this.x=e||0,this.y=t||0,this.z=n||0,this.w=r||0),this},add:function(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z||0,this.w+=e.w||0,this},subtract:function(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z||0,this.w-=e.w||0,this},scale:function(e){return this.x*=e,this.y*=e,this.z*=e,this.w*=e,this},length:function(){var e=this.x,t=this.y,n=this.z,r=this.w;return Math.sqrt(e*e+t*t+n*n+r*r)},lengthSq:function(){var e=this.x,t=this.y,n=this.z,r=this.w;return e*e+t*t+n*n+r*r},normalize:function(){var e=this.x,t=this.y,n=this.z,r=this.w,i=e*e+t*t+n*n+r*r;return i>0&&(i=1/Math.sqrt(i),this.x=e*i,this.y=t*i,this.z=n*i,this.w=r*i),this},dot:function(e){return this.x*e.x+this.y*e.y+this.z*e.z+this.w*e.w},lerp:function(e,t){t===void 0&&(t=0);var n=this.x,r=this.y,i=this.z,a=this.w;return this.x=n+t*(e.x-n),this.y=r+t*(e.y-r),this.z=i+t*(e.z-i),this.w=a+t*(e.w-a),this},multiply:function(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z||1,this.w*=e.w||1,this},divide:function(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z||1,this.w/=e.w||1,this},distance:function(e){var t=e.x-this.x,n=e.y-this.y,r=e.z-this.z||0,i=e.w-this.w||0;return Math.sqrt(t*t+n*n+r*r+i*i)},distanceSq:function(e){var t=e.x-this.x,n=e.y-this.y,r=e.z-this.z||0,i=e.w-this.w||0;return t*t+n*n+r*r+i*i},negate:function(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this},transformMat4:function(e){var t=this.x,n=this.y,r=this.z,i=this.w,a=e.val;return this.x=a[0]*t+a[4]*n+a[8]*r+a[12]*i,this.y=a[1]*t+a[5]*n+a[9]*r+a[13]*i,this.z=a[2]*t+a[6]*n+a[10]*r+a[14]*i,this.w=a[3]*t+a[7]*n+a[11]*r+a[15]*i,this},transformQuat:function(e){var t=this.x,n=this.y,r=this.z,i=e.x,a=e.y,o=e.z,s=e.w,c=s*t+a*r-o*n,l=s*n+o*t-i*r,u=s*r+i*n-a*t,d=-i*t-a*n-o*r;return this.x=c*s+d*-i+l*-o-u*-a,this.y=l*s+d*-a+u*-i-c*-o,this.z=u*s+d*-o+c*-a-l*-i,this},reset:function(){return this.x=0,this.y=0,this.z=0,this.w=0,this}});r.prototype.sub=r.prototype.subtract,r.prototype.mul=r.prototype.multiply,r.prototype.div=r.prototype.divide,r.prototype.dist=r.prototype.distance,r.prototype.distSq=r.prototype.distanceSq,r.prototype.len=r.prototype.length,r.prototype.lenSq=r.prototype.lengthSq,e.exports=r},60417(e){e.exports=function(e,t,n){return Math.abs(e-t)<=n}},15994(e){e.exports=function(e,t,n){var r=n-t;return t+((e-t)%r+r)%r}},31040(e){e.exports=function(e,t,n,r){return Math.atan2(r-t,n-e)}},55495(e){e.exports=function(e,t){return Math.atan2(t.y-e.y,t.x-e.x)}},128(e){e.exports=function(e,t){return Math.atan2(t.x-e.x,t.y-e.y)}},41273(e){e.exports=function(e,t,n,r){return Math.atan2(n-e,r-t)}},1432(e,t,n){var r=n(36383);e.exports=function(e){return e>Math.PI&&(e-=r.TAU),Math.abs(((e+r.PI_OVER_2)%r.TAU-r.TAU)%r.TAU)}},49127(e,t,n){var r=n(12407);e.exports=function(e,t){return r(t-e)}},52285(e,t,n){var r=n(36383),i=n(12407),a=r.TAU;e.exports=function(e,t){var n=i(t-e);return n>0&&(n-=a),n}},67317(e,t,n){var r=n(86554);e.exports=function(e,t){return r(t-e)}},12407(e){e.exports=function(e){return e%=2*Math.PI,e>=0?e:e+2*Math.PI}},53993(e,t,n){var r=n(99472);e.exports=function(){return r(-Math.PI,Math.PI)}},86564(e,t,n){var r=n(99472);e.exports=function(){return r(-180,180)}},90154(e,t,n){var r=n(12407);e.exports=function(e){return r(e+Math.PI)}},48736(e,t,n){var r=n(36383);e.exports=function(e,t,n){return n===void 0&&(n=.05),e===t||(Math.abs(t-e)<=n||Math.abs(t-e)>=r.TAU-n?e=t:(Math.abs(t-e)>Math.PI&&(t<e?t+=r.TAU:t-=r.TAU),t>e?e+=n:t<e&&(e-=n))),e}},61430(e){e.exports=function(e,t){var n=t-e;return n===0?0:n-Math.floor((n- -180)/360)*360}},86554(e,t,n){var r=n(15994);e.exports=function(e){return r(e,-Math.PI,Math.PI)}},30954(e,t,n){var r=n(15994);e.exports=function(e){return r(e,-180,180)}},25588(e,t,n){e.exports={Between:n(31040),BetweenPoints:n(55495),BetweenPointsY:n(128),BetweenY:n(41273),CounterClockwise:n(1432),GetClockwiseDistance:n(49127),GetCounterClockwiseDistance:n(52285),GetShortestDistance:n(67317),Normalize:n(12407),Random:n(53993),RandomDegrees:n(86564),Reverse:n(90154),RotateTo:n(48736),ShortestBetween:n(61430),Wrap:n(86554),WrapDegrees:n(30954)}},36383(e){e.exports={TAU:Math.PI*2,PI_OVER_2:Math.PI/2,EPSILON:1e-6,DEG_TO_RAD:Math.PI/180,RAD_TO_DEG:180/Math.PI,RND:null,MIN_SAFE_INTEGER:-(2**53-1)||-9007199254740991,MAX_SAFE_INTEGER:2**53-1||9007199254740991}},20339(e){e.exports=function(e,t,n,r){var i=e-n,a=t-r;return Math.sqrt(i*i+a*a)}},52816(e){e.exports=function(e,t){var n=e.x-t.x,r=e.y-t.y;return Math.sqrt(n*n+r*r)}},64559(e){e.exports=function(e,t){var n=e.x-t.x,r=e.y-t.y;return n*n+r*r}},82340(e){e.exports=function(e,t,n,r){return Math.max(Math.abs(e-n),Math.abs(t-r))}},14390(e){e.exports=function(e,t,n,r,i){return i===void 0&&(i=2),Math.sqrt((n-e)**+i+(r-t)**+i)}},2243(e){e.exports=function(e,t,n,r){return Math.abs(e-n)+Math.abs(t-r)}},89774(e){e.exports=function(e,t,n,r){var i=e-n,a=t-r;return i*i+a*a}},50994(e,t,n){e.exports={Between:n(20339),BetweenPoints:n(52816),BetweenPointsSquared:n(64559),Chebyshev:n(82340),Power:n(14390),Snake:n(2243),Squared:n(89774)}},62640(e,t,n){var r=n(54178),i=n(41521),a=n(79980),o=n(85433),s=n(99140),c=n(48857),l=n(81596),u=n(59133),d=n(98516),f=n(35248),p=n(82500),m=n(49752);e.exports={Power0:l,Power1:u.Out,Power2:o.Out,Power3:d.Out,Power4:f.Out,Linear:l,Quad:u.Out,Cubic:o.Out,Quart:d.Out,Quint:f.Out,Sine:p.Out,Expo:c.Out,Circ:a.Out,Elastic:s.Out,Back:r.Out,Bounce:i.Out,Stepped:m,"Quad.easeIn":u.In,"Cubic.easeIn":o.In,"Quart.easeIn":d.In,"Quint.easeIn":f.In,"Sine.easeIn":p.In,"Expo.easeIn":c.In,"Circ.easeIn":a.In,"Elastic.easeIn":s.In,"Back.easeIn":r.In,"Bounce.easeIn":i.In,"Quad.easeOut":u.Out,"Cubic.easeOut":o.Out,"Quart.easeOut":d.Out,"Quint.easeOut":f.Out,"Sine.easeOut":p.Out,"Expo.easeOut":c.Out,"Circ.easeOut":a.Out,"Elastic.easeOut":s.Out,"Back.easeOut":r.Out,"Bounce.easeOut":i.Out,"Quad.easeInOut":u.InOut,"Cubic.easeInOut":o.InOut,"Quart.easeInOut":d.InOut,"Quint.easeInOut":f.InOut,"Sine.easeInOut":p.InOut,"Expo.easeInOut":c.InOut,"Circ.easeInOut":a.InOut,"Elastic.easeInOut":s.InOut,"Back.easeInOut":r.InOut,"Bounce.easeInOut":i.InOut}},1639(e){e.exports=function(e,t){return t===void 0&&(t=1.70158),e*e*((t+1)*e-t)}},50099(e){e.exports=function(e,t){t===void 0&&(t=1.70158);var n=t*1.525;return(e*=2)<1?.5*(e*e*((n+1)*e-n)):.5*((e-=2)*e*((n+1)*e+n)+2)}},41286(e){e.exports=function(e,t){return t===void 0&&(t=1.70158),--e*e*((t+1)*e+t)+1}},54178(e,t,n){e.exports={In:n(1639),Out:n(41286),InOut:n(50099)}},59590(e){e.exports=function(e){return e=1-e,e<1/2.75?1-7.5625*e*e:e<2/2.75?1-(7.5625*(e-=1.5/2.75)*e+.75):e<2.5/2.75?1-(7.5625*(e-=2.25/2.75)*e+.9375):1-(7.5625*(e-=2.625/2.75)*e+.984375)}},41788(e){e.exports=function(e){var t=!1;return e<.5?(e=1-e*2,t=!0):e=e*2-1,e=e<1/2.75?7.5625*e*e:e<2/2.75?7.5625*(e-=1.5/2.75)*e+.75:e<2.5/2.75?7.5625*(e-=2.25/2.75)*e+.9375:7.5625*(e-=2.625/2.75)*e+.984375,t?(1-e)*.5:e*.5+.5}},69905(e){e.exports=function(e){return e<1/2.75?7.5625*e*e:e<2/2.75?7.5625*(e-=1.5/2.75)*e+.75:e<2.5/2.75?7.5625*(e-=2.25/2.75)*e+.9375:7.5625*(e-=2.625/2.75)*e+.984375}},41521(e,t,n){e.exports={In:n(59590),Out:n(69905),InOut:n(41788)}},91861(e){e.exports=function(e){return 1-Math.sqrt(1-e*e)}},4177(e){e.exports=function(e){return(e*=2)<1?-.5*(Math.sqrt(1-e*e)-1):.5*(Math.sqrt(1-(e-=2)*e)+1)}},57512(e){e.exports=function(e){return Math.sqrt(1- --e*e)}},79980(e,t,n){e.exports={In:n(91861),Out:n(57512),InOut:n(4177)}},51150(e){e.exports=function(e){return e*e*e}},82820(e){e.exports=function(e){return(e*=2)<1?.5*e*e*e:.5*((e-=2)*e*e+2)}},35033(e){e.exports=function(e){return--e*e*e+1}},85433(e,t,n){e.exports={In:n(51150),Out:n(35033),InOut:n(82820)}},69965(e){e.exports=function(e,t,n){if(t===void 0&&(t=.1),n===void 0&&(n=.1),e===0)return 0;if(e===1)return 1;var r=n/4;return t<1?t=1:r=n*Math.asin(1/t)/(2*Math.PI),-(t*2**(10*--e)*Math.sin((e-r)*(2*Math.PI)/n))}},50665(e){e.exports=function(e,t,n){if(t===void 0&&(t=.1),n===void 0&&(n=.1),e===0)return 0;if(e===1)return 1;var r=n/4;return t<1?t=1:r=n*Math.asin(1/t)/(2*Math.PI),(e*=2)<1?-.5*(t*2**(10*--e)*Math.sin((e-r)*(2*Math.PI)/n)):t*2**(-10*--e)*Math.sin((e-r)*(2*Math.PI)/n)*.5+1}},7744(e){e.exports=function(e,t,n){if(t===void 0&&(t=.1),n===void 0&&(n=.1),e===0)return 0;if(e===1)return 1;var r=n/4;return t<1?t=1:r=n*Math.asin(1/t)/(2*Math.PI),t*2**(-10*e)*Math.sin((e-r)*(2*Math.PI)/n)+1}},99140(e,t,n){e.exports={In:n(69965),Out:n(7744),InOut:n(50665)}},24590(e){e.exports=function(e){return 2**(10*(e-1))-.001}},87844(e){e.exports=function(e){return(e*=2)<1?.5*2**(10*(e-1)):.5*(2-2**(-10*(e-1)))}},89433(e){e.exports=function(e){return 1-2**(-10*e)}},48857(e,t,n){e.exports={In:n(24590),Out:n(89433),InOut:n(87844)}},48820(e,t,n){e.exports={Back:n(54178),Bounce:n(41521),Circular:n(79980),Cubic:n(85433),Elastic:n(99140),Expo:n(48857),Linear:n(81596),Quadratic:n(59133),Quartic:n(98516),Quintic:n(35248),Sine:n(82500),Stepped:n(49752)}},7147(e){e.exports=function(e){return e}},81596(e,t,n){e.exports=n(7147)},34826(e){e.exports=function(e){return e*e}},20544(e){e.exports=function(e){return(e*=2)<1?.5*e*e:-.5*(--e*(e-2)-1)}},92029(e){e.exports=function(e){return e*(2-e)}},59133(e,t,n){e.exports={In:n(34826),Out:n(92029),InOut:n(20544)}},64413(e){e.exports=function(e){return e*e*e*e}},78137(e){e.exports=function(e){return(e*=2)<1?.5*e*e*e*e:-.5*((e-=2)*e*e*e-2)}},45840(e){e.exports=function(e){return 1- --e*e*e*e}},98516(e,t,n){e.exports={In:n(64413),Out:n(45840),InOut:n(78137)}},87745(e){e.exports=function(e){return e*e*e*e*e}},16509(e){e.exports=function(e){return(e*=2)<1?.5*e*e*e*e*e:.5*((e-=2)*e*e*e*e+2)}},17868(e){e.exports=function(e){return--e*e*e*e*e+1}},35248(e,t,n){e.exports={In:n(87745),Out:n(17868),InOut:n(16509)}},80461(e){e.exports=function(e){return e===0?0:e===1?1:1-Math.cos(e*Math.PI/2)}},34025(e){e.exports=function(e){return e===0?0:e===1?1:.5*(1-Math.cos(Math.PI*e))}},52768(e){e.exports=function(e){return e===0?0:e===1?1:Math.sin(e*Math.PI/2)}},82500(e,t,n){e.exports={In:n(80461),Out:n(52768),InOut:n(34025)}},72251(e){e.exports=function(e,t){return t===void 0&&(t=1),e<=0?0:e>=1?1:((t*e|0)+1)*(1/t)}},49752(e,t,n){e.exports=n(72251)},75698(e){e.exports=function(e,t){return t===void 0&&(t=1e-4),Math.ceil(e-t)}},43855(e){e.exports=function(e,t,n){return n===void 0&&(n=1e-4),Math.abs(e-t)<n}},25777(e){e.exports=function(e,t){return t===void 0&&(t=1e-4),Math.floor(e+t)}},5470(e){e.exports=function(e,t,n){return n===void 0&&(n=1e-4),e>t-n}},94977(e){e.exports=function(e,t,n){return n===void 0&&(n=1e-4),e<t+n}},48379(e,t,n){e.exports={Ceil:n(75698),Equal:n(43855),Floor:n(25777),GreaterThan:n(5470),LessThan:n(94977)}},75508(e,t,n){var r=n(36383),i=n(79291),a={Angle:n(25588),Distance:n(50994),Easing:n(48820),Fuzzy:n(48379),Interpolation:n(38289),Pow2:n(49001),Snap:n(73697),RandomDataGenerator:n(28453),Average:n(53307),Bernstein:n(85710),Between:n(30976),CatmullRom:n(87842),CeilTo:n(26302),Clamp:n(45319),DegToRad:n(39506),Difference:n(61241),Euler:n(38857),Factorial:n(6411),FloatBetween:n(99472),FloorTo:n(77623),FromPercent:n(62945),GetCentroid:n(2672),GetSpeed:n(38265),GetVec2Bounds:n(55133),Hash:n(72958),HashCell:n(84854),HashSimplex:n(84366),IsEven:n(78702),IsEvenStrict:n(94883),Linear:n(28915),LinearXY:n(94908),MaxAdd:n(86883),Median:n(50040),MinSub:n(37204),Percent:n(65201),RadToDeg:n(43396),RandomXY:n(74362),RandomXYZ:n(60706),RandomXYZW:n(67421),Rotate:n(36305),RotateAround:n(11520),RotateAroundDistance:n(1163),RotateTo:n(70336),RoundAwayFromZero:n(2284),RoundTo:n(41013),SmootherStep:n(54261),SmoothStep:n(7602),ToXY:n(44408),TransformXY:n(85955),Within:n(60417),Wrap:n(15994),Vector2:n(26099),Vector3:n(25836),Vector4:n(61369),Matrix3:n(94434),Matrix4:n(37867),Quaternion:n(15746),RotateVec3:n(72678)};a=i(!1,a,r),e.exports=a},89318(e,t,n){var r=n(85710);e.exports=function(e,t){for(var n=0,i=e.length-1,a=0;a<=i;a++)n+=(1-t)**(i-a)*t**+a*e[a]*r(i,a);return n}},77259(e,t,n){var r=n(87842);e.exports=function(e,t){var n=e.length-1,i=n*t,a=Math.floor(i);return e[0]===e[n]?(t<0&&(a=Math.floor(i=n*(1+t))),r(i-a,e[(a-1+n)%n],e[a],e[(a+1)%n],e[(a+2)%n])):t<0?e[0]-(r(-i,e[0],e[0],e[1],e[1])-e[0]):t>1?e[n]-(r(i-n,e[n],e[n],e[n-1],e[n-1])-e[n]):r(i-a,e[a?a-1:0],e[a],e[n<a+1?n:a+1],e[n<a+2?n:a+2])}},36316(e){function t(e,t){var n=1-e;return n*n*n*t}function n(e,t){var n=1-e;return 3*n*n*e*t}function r(e,t){return 3*(1-e)*e*e*t}function i(e,t){return e*e*e*t}e.exports=function(e,a,o,s,c){return t(e,a)+n(e,o)+r(e,s)+i(e,c)}},28392(e,t,n){var r=n(28915);e.exports=function(e,t){var n=e.length-1,i=n*t,a=Math.floor(i);return t<0?r(e[0],e[1],i):t>1?r(e[n],e[n-1],n-i):r(e[a],e[a+1>n?n:a+1],i-a)}},32112(e){function t(e,t){var n=1-e;return n*n*t}function n(e,t){return 2*(1-e)*e*t}function r(e,t){return e*e*t}e.exports=function(e,i,a,o){return t(e,i)+n(e,a)+r(e,o)}},47235(e,t,n){var r=n(7602);e.exports=function(e,t,n){return t+(n-t)*r(e,0,1)}},50178(e,t,n){var r=n(54261);e.exports=function(e,t,n){return t+(n-t)*r(e,0,1)}},38289(e,t,n){e.exports={Bezier:n(89318),CatmullRom:n(77259),CubicBezier:n(36316),Linear:n(28392),QuadraticBezier:n(32112),SmoothStep:n(47235),SmootherStep:n(50178)}},98439(e){e.exports=function(e){var t=Math.log(e)/.6931471805599453;return 1<<Math.ceil(t)}},50030(e){e.exports=function(e,t){return e>0&&(e&e-1)==0&&t>0&&(t&t-1)==0}},81230(e){e.exports=function(e){return e>0&&(e&e-1)==0}},49001(e,t,n){e.exports={GetNext:n(98439),IsSize:n(50030),IsValue:n(81230)}},28453(e,t,n){e.exports=new(n(83419))({initialize:function(e){e===void 0&&(e=[(Date.now()*Math.random()).toString()]),this.c=1,this.s0=0,this.s1=0,this.s2=0,this.n=0,this.signs=[-1,1],e&&this.init(e)},rnd:function(){var e=2091639*this.s0+this.c*23283064365386963e-26;return this.c=e|0,this.s0=this.s1,this.s1=this.s2,this.s2=e-this.c,this.s2},hash:function(e){var t,n=this.n;e=e.toString();for(var r=0;r<e.length;r++)n+=e.charCodeAt(r),t=.02519603282416938*n,n=t>>>0,t-=n,t*=n,n=t>>>0,t-=n,n+=t*4294967296;return this.n=n,(n>>>0)*23283064365386963e-26},init:function(e){typeof e==`string`?this.state(e):this.sow(e)},sow:function(e){if(this.n=4022871197,this.s0=this.hash(` `),this.s1=this.hash(` `),this.s2=this.hash(` `),this.c=1,e)for(var t=0;t<e.length&&e[t]!=null;t++){var n=e[t];this.s0-=this.hash(n),this.s0+=~~(this.s0<0),this.s1-=this.hash(n),this.s1+=~~(this.s1<0),this.s2-=this.hash(n),this.s2+=~~(this.s2<0)}},integer:function(){return this.rnd()*4294967296},frac:function(){return this.rnd()+(this.rnd()*2097152|0)*11102230246251565e-32},real:function(){return this.integer()+this.frac()},integerInRange:function(e,t){return Math.floor(this.realInRange(0,t-e+1)+e)},between:function(e,t){return Math.floor(this.realInRange(0,t-e+1)+e)},realInRange:function(e,t){return this.frac()*(t-e)+e},normal:function(){return 1-2*this.frac()},uuid:function(){var e=``,t=``;for(t=e=``;e++<36;t+=~e%5|e*3&4?(e^15?8^this.frac()*(e^20?16:4):4).toString(16):`-`);return t},pick:function(e){return e[this.integerInRange(0,e.length-1)]},sign:function(){return this.pick(this.signs)},weightedPick:function(e){return e[~~(this.frac()**2*(e.length-.5)+.5)]},timestamp:function(e,t){return this.realInRange(e||9466848e5,t||1577862e6)},angle:function(){return this.integerInRange(-180,180)},rotation:function(){return this.realInRange(-3.1415926,3.1415926)},state:function(e){return typeof e==`string`&&e.match(/^!rnd/)&&(e=e.split(`,`),this.c=parseFloat(e[1]),this.s0=parseFloat(e[2]),this.s1=parseFloat(e[3]),this.s2=parseFloat(e[4])),[`!rnd`,this.c,this.s0,this.s1,this.s2].join(`,`)},shuffle:function(e){for(var t=e.length-1;t>0;t--){var n=Math.floor(this.frac()*(t+1)),r=e[n];e[n]=e[t],e[t]=r}return e}})},63448(e){e.exports=function(e,t,n,r){return n===void 0&&(n=0),t===0?e:(e-=n,e=t*Math.ceil(e/t),r?(n+e)/t:n+e)}},56583(e){e.exports=function(e,t,n,r){return n===void 0&&(n=0),t===0?e:(e-=n,e=t*Math.floor(e/t),r?(n+e)/t:n+e)}},77720(e){e.exports=function(e,t,n,r){return n===void 0&&(n=0),t===0?e:(e-=n,e=t*Math.round(e/t),r?(n+e)/t:n+e)}},73697(e,t,n){e.exports={Ceil:n(63448),Floor:n(56583),To:n(77720)}},71289(e,t,n){var r=n(83419),i=n(92209),a=n(88571);e.exports=new r({Extends:a,Mixins:[i.Acceleration,i.Angular,i.Bounce,i.Collision,i.Debug,i.Drag,i.Enable,i.Friction,i.Gravity,i.Immovable,i.Mass,i.Pushable,i.Size,i.Velocity],initialize:function(e,t,n,r,i){a.call(this,e,t,n,r,i),this.body=null}})},86689(e,t,n){var r=n(83419),i=n(39506),a=n(20339),o=n(89774),s=n(66022),c=n(95540),l=n(46975),u=n(72441),d=n(47956),f=n(37277),p=n(44594),m=n(26099),h=n(82248),g=new r({initialize:function(e){this.scene=e,this.systems=e.sys,this.config=this.getConfig(),this.world,this.add,this._category=1,e.sys.events.once(p.BOOT,this.boot,this),e.sys.events.on(p.START,this.start,this)},boot:function(){this.world=new h(this.scene,this.config),this.add=new s(this.world),this.systems.events.once(p.DESTROY,this.destroy,this)},start:function(){this.world||(this.world=new h(this.scene,this.config),this.add=new s(this.world));var e=this.systems.events;c(this.config,`customUpdate`,!1)||e.on(p.UPDATE,this.world.update,this.world),e.on(p.POST_UPDATE,this.world.postUpdate,this.world),e.once(p.SHUTDOWN,this.shutdown,this)},enableUpdate:function(){this.systems.events.on(p.UPDATE,this.world.update,this.world)},disableUpdate:function(){this.systems.events.off(p.UPDATE,this.world.update,this.world)},getConfig:function(){var e=this.systems.game.config.physics,t=this.systems.settings.physics;return l(c(t,`arcade`,{}),c(e,`arcade`,{}))},nextCategory:function(){return this._category<<=1,this._category},overlap:function(e,t,n,r,i){return n===void 0&&(n=null),r===void 0&&(r=null),i===void 0&&(i=n),this.world.collideObjects(e,t,n,r,i,!0)},collide:function(e,t,n,r,i){return n===void 0&&(n=null),r===void 0&&(r=null),i===void 0&&(i=n),this.world.collideObjects(e,t,n,r,i,!1)},collideTiles:function(e,t,n,r,i){return this.world.collideTiles(e,t,n,r,i)},overlapTiles:function(e,t,n,r,i){return this.world.overlapTiles(e,t,n,r,i)},pause:function(){return this.world.pause()},resume:function(){return this.world.resume()},accelerateTo:function(e,t,n,r,i,a){r===void 0&&(r=60);var o=Math.atan2(n-e.y,t-e.x);return e.body.acceleration.setToPolar(o,r),i!==void 0&&a!==void 0&&e.body.maxVelocity.set(i,a),o},accelerateToObject:function(e,t,n,r,i){return this.accelerateTo(e,t.x,t.y,n,r,i)},closest:function(e,t){t||=Array.from(this.world.bodies);for(var n=Number.MAX_VALUE,r=null,i=e.x,a=e.y,s=t.length,c=0;c<s;c++){var l=t[c],u=l.body||l;if(!(e===l||e===u||e===u.gameObject||e===u.center)){var d=o(i,a,u.center.x,u.center.y);d<n&&(r=l,n=d)}}return r},furthest:function(e,t){t||=Array.from(this.world.bodies);for(var n=-1,r=null,i=e.x,a=e.y,s=t.length,c=0;c<s;c++){var l=t[c],u=l.body||l;if(!(e===l||e===u||e===u.gameObject||e===u.center)){var d=o(i,a,u.center.x,u.center.y);d>n&&(r=l,n=d)}}return r},moveTo:function(e,t,n,r,i){r===void 0&&(r=60),i===void 0&&(i=0);var o=Math.atan2(n-e.y,t-e.x);return i>0&&(r=a(e.x,e.y,t,n)/(i/1e3)),e.body.velocity.setToPolar(o,r),o},moveToObject:function(e,t,n,r){return this.moveTo(e,t.x,t.y,n,r)},velocityFromAngle:function(e,t,n){return t===void 0&&(t=60),n===void 0&&(n=new m),n.setToPolar(i(e),t)},velocityFromRotation:function(e,t,n){return t===void 0&&(t=60),n===void 0&&(n=new m),n.setToPolar(e,t)},overlapRect:function(e,t,n,r,i,a){return d(this.world,e,t,n,r,i,a)},overlapCirc:function(e,t,n,r,i){return u(this.world,e,t,n,r,i)},shutdown:function(){if(this.world){var e=this.systems.events;e.off(p.UPDATE,this.world.update,this.world),e.off(p.POST_UPDATE,this.world.postUpdate,this.world),e.off(p.SHUTDOWN,this.shutdown,this),this.add.destroy(),this.world.destroy(),this.add=null,this.world=null,this._category=1}},destroy:function(){this.shutdown(),this.scene.sys.events.off(p.START,this.start,this),this.scene=null,this.systems=null}});f.register(`ArcadePhysics`,g,`arcadePhysics`),e.exports=g},13759(e,t,n){var r=n(83419),i=n(92209),a=n(68287);e.exports=new r({Extends:a,Mixins:[i.Acceleration,i.Angular,i.Bounce,i.Collision,i.Debug,i.Drag,i.Enable,i.Friction,i.Gravity,i.Immovable,i.Mass,i.Pushable,i.Size,i.Velocity],initialize:function(e,t,n,r,i){a.call(this,e,t,n,r,i),this.body=null}})},37742(e,t,n){var r=n(83419),i=n(78389),a=n(37747),o=n(63012),s=n(43396),c=n(87841),l=n(37303),u=n(95829),d=n(26099);e.exports=new r({Mixins:[i],initialize:function(e,t){var n=64,r=64,i={x:0,y:0,angle:0,rotation:0,scaleX:1,scaleY:1,displayOriginX:0,displayOriginY:0},o=t!==void 0;o&&t.displayWidth&&(n=t.displayWidth,r=t.displayHeight),o||(t=i),this.world=e,this.gameObject=o?t:void 0,this.isBody=!0,this.transform={x:t.x,y:t.y,rotation:t.angle,scaleX:t.scaleX,scaleY:t.scaleY,displayOriginX:t.displayOriginX,displayOriginY:t.displayOriginY},this.debugShowBody=e.defaults.debugShowBody,this.debugShowVelocity=e.defaults.debugShowVelocity,this.debugBodyColor=e.defaults.bodyDebugColor,this.enable=!0,this.isCircle=!1,this.radius=0,this.offset=new d,this.position=new d(t.x-t.scaleX*t.displayOriginX,t.y-t.scaleY*t.displayOriginY),this.prev=this.position.clone(),this.prevFrame=this.position.clone(),this.allowRotation=!0,this.rotation=t.angle,this.preRotation=t.angle,this.width=n,this.height=r,this.sourceWidth=n,this.sourceHeight=r,t.frame&&(this.sourceWidth=t.frame.realWidth,this.sourceHeight=t.frame.realHeight),this.halfWidth=Math.abs(n/2),this.halfHeight=Math.abs(r/2),this.center=new d(this.position.x+this.halfWidth,this.position.y+this.halfHeight),this.velocity=new d,this.newVelocity=new d,this.deltaMax=new d,this.acceleration=new d,this.allowDrag=!0,this.drag=new d,this.allowGravity=!0,this.gravity=new d,this.bounce=new d,this.worldBounce=null,this.customBoundsRectangle=e.bounds,this.onWorldBounds=!1,this.onCollide=!1,this.onOverlap=!1,this.maxVelocity=new d(1e4,1e4),this.maxSpeed=-1,this.friction=new d(1,0),this.useDamping=!1,this.angularVelocity=0,this.angularAcceleration=0,this.angularDrag=0,this.maxAngular=1e3,this.mass=1,this.angle=0,this.speed=0,this.facing=a.FACING_NONE,this.immovable=!1,this.pushable=!0,this.slideFactor=new d(1,1),this.moves=!0,this.customSeparateX=!1,this.customSeparateY=!1,this.overlapX=0,this.overlapY=0,this.overlapR=0,this.embedded=!1,this.collideWorldBounds=!1,this.checkCollision=u(!1),this.touching=u(!0),this.wasTouching=u(!0),this.blocked=u(!0),this.syncBounds=!1,this.physicsType=a.DYNAMIC_BODY,this.collisionCategory=1,this.collisionMask=1,this._sx=t.scaleX,this._sy=t.scaleY,this._dx=0,this._dy=0,this._tx=0,this._ty=0,this._bounds=new c,this.directControl=!1,this.autoFrame=this.position.clone()},updateBounds:function(){var e=this.gameObject,t=this.transform;if(e.parentContainer){var n=e.getWorldTransformMatrix(this.world._tempMatrix,this.world._tempMatrix2);t.x=n.tx,t.y=n.ty,t.rotation=s(n.rotation),t.scaleX=n.scaleX,t.scaleY=n.scaleY,t.displayOriginX=e.displayOriginX,t.displayOriginY=e.displayOriginY}else t.x=e.x,t.y=e.y,t.rotation=e.angle,t.scaleX=e.scaleX,t.scaleY=e.scaleY,t.displayOriginX=e.displayOriginX,t.displayOriginY=e.displayOriginY;var r=!1;if(this.syncBounds){var i=e.getBounds(this._bounds);this.width=i.width,this.height=i.height,r=!0}else{var a=Math.abs(t.scaleX),o=Math.abs(t.scaleY);(this._sx!==a||this._sy!==o)&&(this.width=this.sourceWidth*a,this.height=this.sourceHeight*o,this._sx=a,this._sy=o,r=!0)}r&&(this.halfWidth=Math.floor(this.width/2),this.halfHeight=Math.floor(this.height/2),this.updateCenter())},updateCenter:function(){this.center.set(this.position.x+this.halfWidth,this.position.y+this.halfHeight)},updateFromGameObject:function(){this.updateBounds();var e=this.transform;this.position.x=e.x+e.scaleX*(this.offset.x-e.displayOriginX),this.position.y=e.y+e.scaleY*(this.offset.y-e.displayOriginY),this.updateCenter()},resetFlags:function(e){e===void 0&&(e=!1);var t=this.wasTouching,n=this.touching,r=this.blocked;e?u(!0,t):(t.none=n.none,t.up=n.up,t.down=n.down,t.left=n.left,t.right=n.right),u(!0,n),u(!0,r),this.overlapR=0,this.overlapX=0,this.overlapY=0,this.embedded=!1},preUpdate:function(e,t){if(e&&this.resetFlags(),this.gameObject&&this.updateFromGameObject(),this.rotation=this.transform.rotation,this.preRotation=this.rotation,this.moves){var n=this.position;this.prev.x=n.x,this.prev.y=n.y,this.prevFrame.x=n.x,this.prevFrame.y=n.y}e&&this.update(t)},update:function(e){var t=this.prev,n=this.position,r=this.velocity;if(t.set(n.x,n.y),!this.moves){this._dx=n.x-t.x,this._dy=n.y-t.y;return}if(this.directControl){var i=this.autoFrame;r.set((n.x-i.x)/e,(n.y-i.y)/e),this.world.updateMotion(this,e),this._dx=n.x-i.x,this._dy=n.y-i.y}else this.world.updateMotion(this,e),this.newVelocity.set(r.x*e,r.y*e),n.add(this.newVelocity),this._dx=n.x-t.x,this._dy=n.y-t.y;var a=r.x,s=r.y;if(this.updateCenter(),this.angle=Math.atan2(s,a),this.speed=Math.sqrt(a*a+s*s),this.collideWorldBounds&&this.checkWorldBounds()&&this.onWorldBounds){var c=this.blocked;this.world.emit(o.WORLD_BOUNDS,this,c.up,c.down,c.left,c.right)}},postUpdate:function(){var e=this.position,t=e.x-this.prevFrame.x,n=e.y-this.prevFrame.y,r=this.gameObject;if(this.moves){var i=this.deltaMax.x,o=this.deltaMax.y;i!==0&&t!==0&&(t<0&&t<-i?t=-i:t>0&&t>i&&(t=i)),o!==0&&n!==0&&(n<0&&n<-o?n=-o:n>0&&n>o&&(n=o)),r&&(r.x+=t,r.y+=n)}t<0?this.facing=a.FACING_LEFT:t>0&&(this.facing=a.FACING_RIGHT),n<0?this.facing=a.FACING_UP:n>0&&(this.facing=a.FACING_DOWN),this.allowRotation&&r&&(r.angle+=this.deltaZ()),this._tx=t,this._ty=n,this.autoFrame.set(e.x,e.y)},setBoundsRectangle:function(e){return this.customBoundsRectangle=e||this.world.bounds,this},checkWorldBounds:function(){var e=this.position,t=this.velocity,n=this.blocked,r=this.customBoundsRectangle,i=this.world.checkCollision,a=this.worldBounce?-this.worldBounce.x:-this.bounce.x,o=this.worldBounce?-this.worldBounce.y:-this.bounce.y,s=!1;return e.x<r.x&&i.left?(e.x=r.x,t.x*=a,n.left=!0,s=!0):this.right>r.right&&i.right&&(e.x=r.right-this.width,t.x*=a,n.right=!0,s=!0),e.y<r.y&&i.up?(e.y=r.y,t.y*=o,n.up=!0,s=!0):this.bottom>r.bottom&&i.down&&(e.y=r.bottom-this.height,t.y*=o,n.down=!0,s=!0),s&&(this.blocked.none=!1,this.updateCenter()),s},setOffset:function(e,t){return t===void 0&&(t=e),this.offset.set(e,t),this},setGameObject:function(e,t){if(t===void 0&&(t=!0),!e||!e.hasTransformComponent)return this;var n=this.world;return this.gameObject&&this.gameObject.body&&(n.disable(this.gameObject),this.gameObject.body=null),e.body&&n.disable(e),this.gameObject=e,e.body=this,this.setSize(),this.enable=t,this},setSize:function(e,t,n){n===void 0&&(n=!0);var r=this.gameObject;if(r&&(!e&&r.frame&&(e=r.frame.realWidth),!t&&r.frame&&(t=r.frame.realHeight)),this.sourceWidth=e,this.sourceHeight=t,this.width=this.sourceWidth*this._sx,this.height=this.sourceHeight*this._sy,this.halfWidth=Math.floor(this.width/2),this.halfHeight=Math.floor(this.height/2),this.updateCenter(),n&&r&&r.getCenter){var i=(r.width-e)/2,a=(r.height-t)/2;this.offset.set(i,a)}return this.isCircle=!1,this.radius=0,this},setCircle:function(e,t,n){return t===void 0&&(t=this.offset.x),n===void 0&&(n=this.offset.y),e>0?(this.isCircle=!0,this.radius=e,this.sourceWidth=e*2,this.sourceHeight=e*2,this.width=this.sourceWidth*this._sx,this.height=this.sourceHeight*this._sy,this.halfWidth=Math.floor(this.width/2),this.halfHeight=Math.floor(this.height/2),this.offset.set(t,n),this.updateCenter()):this.isCircle=!1,this},reset:function(e,t){this.stop();var n=this.gameObject;n&&(n.setPosition(e,t),this.rotation=n.angle,this.preRotation=n.angle);var r=this.position;n&&n.getTopLeft?n.getTopLeft(r):r.set(e,t),this.prev.copy(r),this.prevFrame.copy(r),this.autoFrame.copy(r),n&&this.updateBounds(),this.updateCenter(),this.collideWorldBounds&&this.checkWorldBounds(),this.resetFlags(!0)},stop:function(){return this.velocity.set(0),this.acceleration.set(0),this.speed=0,this.angularVelocity=0,this.angularAcceleration=0,this},getBounds:function(e){return e.x=this.x,e.y=this.y,e.right=this.right,e.bottom=this.bottom,e},hitTest:function(e,t){return this.isCircle?this.radius>0&&e>=this.left&&e<=this.right&&t>=this.top&&t<=this.bottom?(this.center.x-e)*(this.center.x-e)+(this.center.y-t)*(this.center.y-t)<=this.radius*this.radius:!1:l(this,e,t)},onFloor:function(){return this.blocked.down},onCeiling:function(){return this.blocked.up},onWall:function(){return this.blocked.left||this.blocked.right},deltaAbsX:function(){return this._dx>0?this._dx:-this._dx},deltaAbsY:function(){return this._dy>0?this._dy:-this._dy},deltaX:function(){return this._dx},deltaY:function(){return this._dy},deltaXFinal:function(){return this._tx},deltaYFinal:function(){return this._ty},deltaZ:function(){return this.rotation-this.preRotation},destroy:function(){this.enable=!1,this.world&&this.world.pendingDestroy.add(this)},drawDebug:function(e){var t=this.position,n=t.x+this.halfWidth,r=t.y+this.halfHeight;this.debugShowBody&&(e.lineStyle(e.defaultStrokeWidth,this.debugBodyColor),this.isCircle?e.strokeCircle(n,r,this.width/2):(this.checkCollision.up&&e.lineBetween(t.x,t.y,t.x+this.width,t.y),this.checkCollision.right&&e.lineBetween(t.x+this.width,t.y,t.x+this.width,t.y+this.height),this.checkCollision.down&&e.lineBetween(t.x,t.y+this.height,t.x+this.width,t.y+this.height),this.checkCollision.left&&e.lineBetween(t.x,t.y,t.x,t.y+this.height))),this.debugShowVelocity&&(e.lineStyle(e.defaultStrokeWidth,this.world.defaults.velocityDebugColor,1),e.lineBetween(n,r,n+this.velocity.x/2,r+this.velocity.y/2))},willDrawDebug:function(){return this.debugShowBody||this.debugShowVelocity},setDirectControl:function(e){return e===void 0&&(e=!0),this.directControl=e,this},setCollideWorldBounds:function(e,t,n,r){e===void 0&&(e=!0),this.collideWorldBounds=e;var i=t!==void 0,a=n!==void 0;return(i||a)&&(this.worldBounce||=new d,i&&(this.worldBounce.x=t),a&&(this.worldBounce.y=n)),r!==void 0&&(this.onWorldBounds=r),this},setVelocity:function(e,t){return this.velocity.set(e,t),e=this.velocity.x,t=this.velocity.y,this.speed=Math.sqrt(e*e+t*t),this},setVelocityX:function(e){return this.setVelocity(e,this.velocity.y)},setVelocityY:function(e){return this.setVelocity(this.velocity.x,e)},setMaxVelocity:function(e,t){return this.maxVelocity.set(e,t),this},setMaxVelocityX:function(e){return this.maxVelocity.x=e,this},setMaxVelocityY:function(e){return this.maxVelocity.y=e,this},setMaxSpeed:function(e){return this.maxSpeed=e,this},setSlideFactor:function(e,t){return this.slideFactor.set(e,t),this},setBounce:function(e,t){return this.bounce.set(e,t),this},setBounceX:function(e){return this.bounce.x=e,this},setBounceY:function(e){return this.bounce.y=e,this},setAcceleration:function(e,t){return this.acceleration.set(e,t),this},setAccelerationX:function(e){return this.acceleration.x=e,this},setAccelerationY:function(e){return this.acceleration.y=e,this},setAllowDrag:function(e){return e===void 0&&(e=!0),this.allowDrag=e,this},setAllowGravity:function(e){return e===void 0&&(e=!0),this.allowGravity=e,this},setAllowRotation:function(e){return e===void 0&&(e=!0),this.allowRotation=e,this},setDrag:function(e,t){return this.drag.set(e,t),this},setDamping:function(e){return this.useDamping=e,this},setDragX:function(e){return this.drag.x=e,this},setDragY:function(e){return this.drag.y=e,this},setGravity:function(e,t){return this.gravity.set(e,t),this},setGravityX:function(e){return this.gravity.x=e,this},setGravityY:function(e){return this.gravity.y=e,this},setFriction:function(e,t){return this.friction.set(e,t),this},setFrictionX:function(e){return this.friction.x=e,this},setFrictionY:function(e){return this.friction.y=e,this},setAngularVelocity:function(e){return this.angularVelocity=e,this},setAngularAcceleration:function(e){return this.angularAcceleration=e,this},setAngularDrag:function(e){return this.angularDrag=e,this},setMass:function(e){return this.mass=e,this},setImmovable:function(e){return e===void 0&&(e=!0),this.immovable=e,this},setEnable:function(e){return e===void 0&&(e=!0),this.enable=e,this},processX:function(e,t,n,r){this.x+=e,this.updateCenter(),t!==null&&(this.velocity.x=t*this.slideFactor.x);var i=this.blocked;n&&(i.left=!0,i.none=!1),r&&(i.right=!0,i.none=!1)},processY:function(e,t,n,r){this.y+=e,this.updateCenter(),t!==null&&(this.velocity.y=t*this.slideFactor.y);var i=this.blocked;n&&(i.up=!0,i.none=!1),r&&(i.down=!0,i.none=!1)},x:{get:function(){return this.position.x},set:function(e){this.position.x=e}},y:{get:function(){return this.position.y},set:function(e){this.position.y=e}},left:{get:function(){return this.position.x}},right:{get:function(){return this.position.x+this.width}},top:{get:function(){return this.position.y}},bottom:{get:function(){return this.position.y+this.height}}})},79342(e,t,n){e.exports=new(n(83419))({initialize:function(e,t,n,r,i,a,o){this.world=e,this.name=``,this.active=!0,this.overlapOnly=t,this.object1=n,this.object2=r,this.collideCallback=i,this.processCallback=a,this.callbackContext=o},setName:function(e){return this.name=e,this},update:function(){this.world.collideObjects(this.object1,this.object2,this.collideCallback,this.processCallback,this.callbackContext,this.overlapOnly)},destroy:function(){this.world.removeCollider(this),this.active=!1,this.world=null,this.object1=null,this.object2=null,this.collideCallback=null,this.processCallback=null,this.callbackContext=null}})},66022(e,t,n){var r=n(71289),i=n(13759),a=n(37742),o=n(83419),s=n(37747),c=n(60758),l=n(72624),u=n(71464);e.exports=new o({initialize:function(e){this.world=e,this.scene=e.scene,this.sys=e.scene.sys},collider:function(e,t,n,r,i){return this.world.addCollider(e,t,n,r,i)},overlap:function(e,t,n,r,i){return this.world.addOverlap(e,t,n,r,i)},existing:function(e,t){var n=t?s.STATIC_BODY:s.DYNAMIC_BODY;return this.world.enableBody(e,n),e},staticImage:function(e,t,n,i){var a=new r(this.scene,e,t,n,i);return this.sys.displayList.add(a),this.world.enableBody(a,s.STATIC_BODY),a},image:function(e,t,n,i){var a=new r(this.scene,e,t,n,i);return this.sys.displayList.add(a),this.world.enableBody(a,s.DYNAMIC_BODY),a},staticSprite:function(e,t,n,r){var a=new i(this.scene,e,t,n,r);return this.sys.displayList.add(a),this.sys.updateList.add(a),this.world.enableBody(a,s.STATIC_BODY),a},sprite:function(e,t,n,r){var a=new i(this.scene,e,t,n,r);return this.sys.displayList.add(a),this.sys.updateList.add(a),this.world.enableBody(a,s.DYNAMIC_BODY),a},staticGroup:function(e,t){return this.sys.updateList.add(new u(this.world,this.world.scene,e,t))},group:function(e,t){return this.sys.updateList.add(new c(this.world,this.world.scene,e,t))},body:function(e,t,n,r){var i=new a(this.world);return i.position.set(e,t),n&&r&&i.setSize(n,r),this.world.add(i,s.DYNAMIC_BODY),i},staticBody:function(e,t,n,r){var i=new l(this.world);return i.position.set(e,t),n&&r&&i.setSize(n,r),this.world.add(i,s.STATIC_BODY),i},destroy:function(){this.world=null,this.scene=null,this.sys=null}})},79599(e){e.exports=function(e){var t=0;if(!Array.isArray(e))t=e;else for(var n=0;n<e.length;n++)t|=e[n];return t}},64897(e,t,n){var r=n(37747);e.exports=function(e,t,n,i){var a=0,o=e.deltaAbsX()+t.deltaAbsX()+i;return e._dx===0&&t._dx===0?(e.embedded=!0,t.embedded=!0):e._dx>t._dx?(a=e.right-t.x,a>o&&!n||e.checkCollision.right===!1||t.checkCollision.left===!1?a=0:(e.touching.none=!1,e.touching.right=!0,t.touching.none=!1,t.touching.left=!0,t.physicsType===r.STATIC_BODY&&!n&&(e.blocked.none=!1,e.blocked.right=!0),e.physicsType===r.STATIC_BODY&&!n&&(t.blocked.none=!1,t.blocked.left=!0))):e._dx<t._dx&&(a=e.x-t.width-t.x,-a>o&&!n||e.checkCollision.left===!1||t.checkCollision.right===!1?a=0:(e.touching.none=!1,e.touching.left=!0,t.touching.none=!1,t.touching.right=!0,t.physicsType===r.STATIC_BODY&&!n&&(e.blocked.none=!1,e.blocked.left=!0),e.physicsType===r.STATIC_BODY&&!n&&(t.blocked.none=!1,t.blocked.right=!0))),e.overlapX=a,t.overlapX=a,a}},45170(e,t,n){var r=n(37747);e.exports=function(e,t,n,i){var a=0,o=e.deltaAbsY()+t.deltaAbsY()+i;return e._dy===0&&t._dy===0?(e.embedded=!0,t.embedded=!0):e._dy>t._dy?(a=e.bottom-t.y,a>o&&!n||e.checkCollision.down===!1||t.checkCollision.up===!1?a=0:(e.touching.none=!1,e.touching.down=!0,t.touching.none=!1,t.touching.up=!0,t.physicsType===r.STATIC_BODY&&!n&&(e.blocked.none=!1,e.blocked.down=!0),e.physicsType===r.STATIC_BODY&&!n&&(t.blocked.none=!1,t.blocked.up=!0))):e._dy<t._dy&&(a=e.y-t.bottom,-a>o&&!n||e.checkCollision.up===!1||t.checkCollision.down===!1?a=0:(e.touching.none=!1,e.touching.up=!0,t.touching.none=!1,t.touching.down=!0,t.physicsType===r.STATIC_BODY&&!n&&(e.blocked.none=!1,e.blocked.up=!0),e.physicsType===r.STATIC_BODY&&!n&&(t.blocked.none=!1,t.blocked.down=!0))),e.overlapY=a,t.overlapY=a,a}},60758(e,t,n){var r=n(13759),i=n(83419),a=n(78389),o=n(37747),s=n(95540),c=n(26479),l=n(41212);e.exports=new i({Extends:c,Mixins:[a],initialize:function(e,t,n,i){if(!n&&!i)i={internalCreateCallback:this.createCallbackHandler,internalRemoveCallback:this.removeCallbackHandler};else if(l(n))i=n,n=null,i.internalCreateCallback=this.createCallbackHandler,i.internalRemoveCallback=this.removeCallbackHandler;else if(Array.isArray(n)&&l(n[0])){var a=this;n.forEach(function(e){e.internalCreateCallback=a.createCallbackHandler,e.internalRemoveCallback=a.removeCallbackHandler,e.classType=s(e,`classType`,r)}),i=null}else i={internalCreateCallback:this.createCallbackHandler,internalRemoveCallback:this.removeCallbackHandler};this.world=e,i&&(i.classType=s(i,`classType`,r)),this.physicsType=o.DYNAMIC_BODY,this.collisionCategory=1,this.collisionMask=2147483647,this.defaults={setCollideWorldBounds:s(i,`collideWorldBounds`,!1),setBoundsRectangle:s(i,`customBoundsRectangle`,null),setAccelerationX:s(i,`accelerationX`,0),setAccelerationY:s(i,`accelerationY`,0),setAllowDrag:s(i,`allowDrag`,!0),setAllowGravity:s(i,`allowGravity`,!0),setAllowRotation:s(i,`allowRotation`,!0),setDamping:s(i,`useDamping`,!1),setBounceX:s(i,`bounceX`,0),setBounceY:s(i,`bounceY`,0),setDragX:s(i,`dragX`,0),setDragY:s(i,`dragY`,0),setEnable:s(i,`enable`,!0),setGravityX:s(i,`gravityX`,0),setGravityY:s(i,`gravityY`,0),setFrictionX:s(i,`frictionX`,0),setFrictionY:s(i,`frictionY`,0),setMaxSpeed:s(i,`maxSpeed`,-1),setMaxVelocityX:s(i,`maxVelocityX`,1e4),setMaxVelocityY:s(i,`maxVelocityY`,1e4),setVelocityX:s(i,`velocityX`,0),setVelocityY:s(i,`velocityY`,0),setAngularVelocity:s(i,`angularVelocity`,0),setAngularAcceleration:s(i,`angularAcceleration`,0),setAngularDrag:s(i,`angularDrag`,0),setMass:s(i,`mass`,1),setImmovable:s(i,`immovable`,!1)},c.call(this,t,n,i),this.type=`PhysicsGroup`},createCallbackHandler:function(e){(!e.body||e.body.physicsType!==o.DYNAMIC_BODY)&&(e.body&&=(e.body.destroy(),null),this.world.enableBody(e,o.DYNAMIC_BODY));var t=e.body;for(var n in this.defaults)t[n](this.defaults[n])},removeCallbackHandler:function(e){e.body&&this.world.disableBody(e)},setVelocity:function(e,t,n){n===void 0&&(n=0);for(var r=this.getChildren(),i=0;i<r.length;i++)r[i].body.velocity.set(e+i*n,t+i*n);return this},setVelocityX:function(e,t){t===void 0&&(t=0);for(var n=this.getChildren(),r=0;r<n.length;r++)n[r].body.velocity.x=e+r*t;return this},setVelocityY:function(e,t){t===void 0&&(t=0);for(var n=this.getChildren(),r=0;r<n.length;r++)n[r].body.velocity.y=e+r*t;return this}})},3017(e){var t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v=function(e,a,o){t=e,n=a;var v=t.velocity.x,b=n.velocity.x;return r=t.pushable,l=t._dx<0,u=t._dx>0,d=t._dx===0,h=Math.abs(t.right-n.x)<=Math.abs(n.right-t.x),s=b-v*t.bounce.x,i=n.pushable,f=n._dx<0,p=n._dx>0,m=n._dx===0,g=!h,c=v-b*n.bounce.x,_=Math.abs(o),y()},y=function(){return u&&h&&n.blocked.right?(t.processX(-_,s,!1,!0),1):l&&g&&n.blocked.left?(t.processX(_,s,!0),1):p&&g&&t.blocked.right?(n.processX(-_,c,!1,!0),2):f&&h&&t.blocked.left?(n.processX(_,c,!0),2):0},b=function(){var e=t.velocity.x,r=n.velocity.x,i=Math.sqrt(r*r*n.mass/t.mass)*(r>0?1:-1),s=Math.sqrt(e*e*t.mass/n.mass)*(e>0?1:-1),c=(i+s)*.5;return i-=c,s-=c,a=c+i*t.bounce.x,o=c+s*n.bounce.x,l&&g?x(0):f&&h?x(1):u&&h?x(2):p&&g?x(3):!1},x=function(e){if(r&&i)_*=.5,e===0||e===3?(t.processX(_,a),n.processX(-_,o)):(t.processX(-_,a),n.processX(_,o));else if(r&&!i)e===0||e===3?t.processX(_,s,!0):t.processX(-_,s,!1,!0);else if(!r&&i)e===0||e===3?n.processX(-_,c,!1,!0):n.processX(_,c,!0);else{var h=_*.5;e===0?m?(t.processX(_,0,!0),n.processX(0,null,!1,!0)):p?(t.processX(h,0,!0),n.processX(-h,0,!1,!0)):(t.processX(h,n.velocity.x,!0),n.processX(-h,null,!1,!0)):e===1?d?(t.processX(0,null,!1,!0),n.processX(_,0,!0)):u?(t.processX(-h,0,!1,!0),n.processX(h,0,!0)):(t.processX(-h,null,!1,!0),n.processX(h,t.velocity.x,!0)):e===2?m?(t.processX(-_,0,!1,!0),n.processX(0,null,!0)):f?(t.processX(-h,0,!1,!0),n.processX(h,0,!0)):(t.processX(-h,n.velocity.x,!1,!0),n.processX(h,null,!0)):e===3&&(d?(t.processX(0,null,!0),n.processX(-_,0,!1,!0)):l?(t.processX(h,0,!0),n.processX(-h,0,!1,!0)):(t.processX(h,n.velocity.x,!0),n.processX(-h,null,!1,!0)))}return!0};e.exports={BlockCheck:y,Check:b,Set:v,Run:x,RunImmovableBody1:function(e){if(e===1?n.velocity.x=0:h?n.processX(_,c,!0):n.processX(-_,c,!1,!0),t.moves){var r=t.directControl?t.y-t.autoFrame.y:t.y-t.prev.y;n.y+=r*t.friction.y,n._dy=n.y-n.prev.y}},RunImmovableBody2:function(e){if(e===2?t.velocity.x=0:g?t.processX(_,s,!0):t.processX(-_,s,!1,!0),n.moves){var r=n.directControl?n.y-n.autoFrame.y:n.y-n.prev.y;t.y+=r*n.friction.y,t._dy=t.y-t.prev.y}}}},47962(e){var t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v=function(e,a,o){t=e,n=a;var v=t.velocity.y,b=n.velocity.y;return r=t.pushable,l=t._dy<0,u=t._dy>0,d=t._dy===0,h=Math.abs(t.bottom-n.y)<=Math.abs(n.bottom-t.y),s=b-v*t.bounce.y,i=n.pushable,f=n._dy<0,p=n._dy>0,m=n._dy===0,g=!h,c=v-b*n.bounce.y,_=Math.abs(o),y()},y=function(){return u&&h&&n.blocked.down?(t.processY(-_,s,!1,!0),1):l&&g&&n.blocked.up?(t.processY(_,s,!0),1):p&&g&&t.blocked.down?(n.processY(-_,c,!1,!0),2):f&&h&&t.blocked.up?(n.processY(_,c,!0),2):0},b=function(){var e=t.velocity.y,r=n.velocity.y,i=Math.sqrt(r*r*n.mass/t.mass)*(r>0?1:-1),s=Math.sqrt(e*e*t.mass/n.mass)*(e>0?1:-1),c=(i+s)*.5;return i-=c,s-=c,a=c+i*t.bounce.y,o=c+s*n.bounce.y,l&&g?x(0):f&&h?x(1):u&&h?x(2):p&&g?x(3):!1},x=function(e){if(r&&i)_*=.5,e===0||e===3?(t.processY(_,a),n.processY(-_,o)):(t.processY(-_,a),n.processY(_,o));else if(r&&!i)e===0||e===3?t.processY(_,s,!0):t.processY(-_,s,!1,!0);else if(!r&&i)e===0||e===3?n.processY(-_,c,!1,!0):n.processY(_,c,!0);else{var h=_*.5;e===0?m?(t.processY(_,0,!0),n.processY(0,null,!1,!0)):p?(t.processY(h,0,!0),n.processY(-h,0,!1,!0)):(t.processY(h,n.velocity.y,!0),n.processY(-h,null,!1,!0)):e===1?d?(t.processY(0,null,!1,!0),n.processY(_,0,!0)):u?(t.processY(-h,0,!1,!0),n.processY(h,0,!0)):(t.processY(-h,null,!1,!0),n.processY(h,t.velocity.y,!0)):e===2?m?(t.processY(-_,0,!1,!0),n.processY(0,null,!0)):f?(t.processY(-h,0,!1,!0),n.processY(h,0,!0)):(t.processY(-h,n.velocity.y,!1,!0),n.processY(h,null,!0)):e===3&&(d?(t.processY(0,null,!0),n.processY(-_,0,!1,!0)):l?(t.processY(h,0,!0),n.processY(-h,0,!1,!0)):(t.processY(h,n.velocity.y,!0),n.processY(-h,null,!1,!0)))}return!0};e.exports={BlockCheck:y,Check:b,Set:v,Run:x,RunImmovableBody1:function(e){if(e===1?n.velocity.y=0:h?n.processY(_,c,!0):n.processY(-_,c,!1,!0),t.moves){var r=t.directControl?t.x-t.autoFrame.x:t.x-t.prev.x;n.x+=r*t.friction.x,n._dx=n.x-n.prev.x}},RunImmovableBody2:function(e){if(e===2?t.velocity.y=0:g?t.processY(_,s,!0):t.processY(-_,s,!1,!0),n.moves){var r=n.directControl?n.x-n.autoFrame.x:n.x-n.prev.x;t.x+=r*n.friction.x,t._dx=t.x-t.prev.x}}}},14087(e,t,n){var r=n(64897),i=n(3017);e.exports=function(e,t,n,a,o){o===void 0&&(o=r(e,t,n,a));var s=e.immovable,c=t.immovable;if(n||o===0||s&&c||e.customSeparateX||t.customSeparateX)return o!==0||e.embedded&&t.embedded;var l=i.Set(e,t,o);return!s&&!c?l>0?!0:i.Check():(s?i.RunImmovableBody1(l):c&&i.RunImmovableBody2(l),!0)}},89936(e,t,n){var r=n(45170),i=n(47962);e.exports=function(e,t,n,a,o){o===void 0&&(o=r(e,t,n,a));var s=e.immovable,c=t.immovable;if(n||o===0||s&&c||e.customSeparateY||t.customSeparateY)return o!==0||e.embedded&&t.embedded;var l=i.Set(e,t,o);return!s&&!c?l>0?!0:i.Check():(s?i.RunImmovableBody1(l):c&&i.RunImmovableBody2(l),!0)}},95829(e){e.exports=function(e,t){return t===void 0&&(t={}),t.none=e,t.up=!1,t.down=!1,t.left=!1,t.right=!1,e||(t.up=!0,t.down=!0,t.left=!0,t.right=!0),t}},72624(e,t,n){var r=n(87902),i=n(83419),a=n(78389),o=n(37747),s=n(37303),c=n(95829),l=n(26099);e.exports=new i({Mixins:[a],initialize:function(e,t){var n=64,r=64,i={x:0,y:0,angle:0,rotation:0,scaleX:1,scaleY:1,displayOriginX:0,displayOriginY:0},a=t!==void 0;a&&t.displayWidth&&(n=t.displayWidth,r=t.displayHeight),a||(t=i),this.world=e,this.gameObject=a?t:void 0,this.isBody=!0,this.debugShowBody=e.defaults.debugShowStaticBody,this.debugBodyColor=e.defaults.staticBodyDebugColor,this.enable=!0,this.isCircle=!1,this.radius=0,this.offset=new l,this.position=new l(t.x-n*t.originX,t.y-r*t.originY),this.width=n,this.height=r,this.halfWidth=Math.abs(this.width/2),this.halfHeight=Math.abs(this.height/2),this.center=new l(this.position.x+this.halfWidth,this.position.y+this.halfHeight),this.velocity=l.ZERO,this.allowGravity=!1,this.gravity=l.ZERO,this.bounce=l.ZERO,this.onWorldBounds=!1,this.onCollide=!1,this.onOverlap=!1,this.mass=1,this.immovable=!0,this.pushable=!1,this.customSeparateX=!1,this.customSeparateY=!1,this.overlapX=0,this.overlapY=0,this.overlapR=0,this.embedded=!1,this.collideWorldBounds=!1,this.checkCollision=c(!1),this.touching=c(!0),this.wasTouching=c(!0),this.blocked=c(!0),this.physicsType=o.STATIC_BODY,this.collisionCategory=1,this.collisionMask=1,this._dx=0,this._dy=0},setGameObject:function(e,t,n){if(t===void 0&&(t=!0),n===void 0&&(n=!0),!e||!e.hasTransformComponent)return this;var r=this.world;return this.gameObject&&this.gameObject.body&&(r.disable(this.gameObject),this.gameObject.body=null),e.body&&r.disable(e),this.gameObject=e,e.body=this,this.setSize(),t&&this.updateFromGameObject(),this.enable=n,this},updateFromGameObject:function(){this.world.staticTree.remove(this);var e=this.gameObject;return e.getTopLeft(this.position),this.width=e.displayWidth,this.height=e.displayHeight,this.halfWidth=Math.abs(this.width/2),this.halfHeight=Math.abs(this.height/2),this.center.set(this.position.x+this.halfWidth,this.position.y+this.halfHeight),this.world.staticTree.insert(this),this},setOffset:function(e,t){return t===void 0&&(t=e),this.world.staticTree.remove(this),this.position.x-=this.offset.x,this.position.y-=this.offset.y,this.offset.set(e,t),this.position.x+=this.offset.x,this.position.y+=this.offset.y,this.updateCenter(),this.world.staticTree.insert(this),this},setSize:function(e,t,n){n===void 0&&(n=!0);var r=this.gameObject;if(r&&r.frame&&(e||=r.frame.realWidth,t||=r.frame.realHeight),this.world.staticTree.remove(this),this.width=e,this.height=t,this.halfWidth=Math.floor(e/2),this.halfHeight=Math.floor(t/2),n&&r&&r.getCenter){var i=r.displayWidth/2,a=r.displayHeight/2;this.position.x-=this.offset.x,this.position.y-=this.offset.y,this.offset.set(i-this.halfWidth,a-this.halfHeight),this.position.x+=this.offset.x,this.position.y+=this.offset.y}return this.updateCenter(),this.isCircle=!1,this.radius=0,this.world.staticTree.insert(this),this},setCircle:function(e,t,n){return t===void 0&&(t=this.offset.x),n===void 0&&(n=this.offset.y),e>0?(this.world.staticTree.remove(this),this.isCircle=!0,this.radius=e,this.width=e*2,this.height=e*2,this.halfWidth=Math.floor(this.width/2),this.halfHeight=Math.floor(this.height/2),this.offset.set(t,n),this.updateCenter(),this.world.staticTree.insert(this)):this.isCircle=!1,this},updateCenter:function(){this.center.set(this.position.x+this.halfWidth,this.position.y+this.halfHeight)},reset:function(e,t){var n=this.gameObject;e===void 0&&(e=n.x),t===void 0&&(t=n.y),this.world.staticTree.remove(this),n.setPosition(e,t),n.getTopLeft(this.position),this.position.x+=this.offset.x,this.position.y+=this.offset.y,this.updateCenter(),this.world.staticTree.insert(this)},stop:function(){return this},getBounds:function(e){return e.x=this.x,e.y=this.y,e.right=this.right,e.bottom=this.bottom,e},hitTest:function(e,t){return this.isCircle?r(this,e,t):s(this,e,t)},postUpdate:function(){},deltaAbsX:function(){return 0},deltaAbsY:function(){return 0},deltaX:function(){return 0},deltaY:function(){return 0},deltaZ:function(){return 0},destroy:function(){this.enable=!1,this.world.pendingDestroy.add(this)},drawDebug:function(e){var t=this.position,n=t.x+this.halfWidth,r=t.y+this.halfHeight;this.debugShowBody&&(e.lineStyle(e.defaultStrokeWidth,this.debugBodyColor,1),this.isCircle?e.strokeCircle(n,r,this.width/2):e.strokeRect(t.x,t.y,this.width,this.height))},willDrawDebug:function(){return this.debugShowBody},setMass:function(e){return e<=0&&(e=.1),this.mass=e,this},x:{get:function(){return this.position.x},set:function(e){this.world.staticTree.remove(this),this.position.x=e,this.world.staticTree.insert(this)}},y:{get:function(){return this.position.y},set:function(e){this.world.staticTree.remove(this),this.position.y=e,this.world.staticTree.insert(this)}},left:{get:function(){return this.position.x}},right:{get:function(){return this.position.x+this.width}},top:{get:function(){return this.position.y}},bottom:{get:function(){return this.position.y+this.height}}})},71464(e,t,n){var r=n(13759),i=n(83419),a=n(78389),o=n(37747),s=n(95540),c=n(26479),l=n(41212);e.exports=new i({Extends:c,Mixins:[a],initialize:function(e,t,n,i){!n&&!i?i={internalCreateCallback:this.createCallbackHandler,internalRemoveCallback:this.removeCallbackHandler,createMultipleCallback:this.createMultipleCallbackHandler,classType:r}:l(n)?(i=n,n=null,i.internalCreateCallback=this.createCallbackHandler,i.internalRemoveCallback=this.removeCallbackHandler,i.createMultipleCallback=this.createMultipleCallbackHandler,i.classType=s(i,`classType`,r)):Array.isArray(n)&&l(n[0])?(i=n,n=null,i.forEach(function(e){e.internalCreateCallback=this.createCallbackHandler,e.internalRemoveCallback=this.removeCallbackHandler,e.createMultipleCallback=this.createMultipleCallbackHandler,e.classType=s(e,`classType`,r)},this)):i={internalCreateCallback:this.createCallbackHandler,internalRemoveCallback:this.removeCallbackHandler},this.world=e,this.physicsType=o.STATIC_BODY,this.collisionCategory=1,this.collisionMask=1,c.call(this,t,n,i),this.type=`StaticPhysicsGroup`},createCallbackHandler:function(e){(!e.body||e.body.physicsType!==o.STATIC_BODY)&&(e.body&&=(e.body.destroy(),null),this.world.enableBody(e,o.STATIC_BODY))},removeCallbackHandler:function(e){e.body&&this.world.disableBody(e)},createMultipleCallbackHandler:function(){this.refresh()},refresh:function(){for(var e=Array.from(this.children),t=0;t<e.length;t++)e[t].body.reset();return this}})},82248(e,t,n){var r=n(55495),i=n(37742),a=n(45319),o=n(83419),s=n(79342),c=n(37747),l=n(20339),u=n(52816),d=n(50792),f=n(63012),p=n(43855),m=n(5470),h=n(94977),g=n(64897),_=n(45170),v=n(96523),y=n(35154),b=n(36383),x=n(25774),S=n(96602),C=n(87841),w=n(59542),T=n(40012),E=n(14087),D=n(89936),O=n(72624),k=n(2483),A=n(61340),j=n(26099),M=n(15994);e.exports=new o({Extends:d,initialize:function(e,t){d.call(this),this.scene=e,this.bodies=new Set,this.staticBodies=new Set,this.pendingDestroy=new Set,this.colliders=new x,this.gravity=new j(y(t,`gravity.x`,0),y(t,`gravity.y`,0)),this.bounds=new C(y(t,`x`,0),y(t,`y`,0),y(t,`width`,e.sys.scale.width),y(t,`height`,e.sys.scale.height)),this.checkCollision={up:y(t,`checkCollision.up`,!0),down:y(t,`checkCollision.down`,!0),left:y(t,`checkCollision.left`,!0),right:y(t,`checkCollision.right`,!0)},this.fps=y(t,`fps`,60),this.fixedStep=y(t,`fixedStep`,!0),this._elapsed=0,this._frameTime=1/this.fps,this._frameTimeMS=1e3*this._frameTime,this.stepsLastFrame=0,this.timeScale=y(t,`timeScale`,1),this.OVERLAP_BIAS=y(t,`overlapBias`,4),this.TILE_BIAS=y(t,`tileBias`,16),this.forceX=y(t,`forceX`,!1),this.isPaused=y(t,`isPaused`,!1),this._total=0,this.drawDebug=y(t,`debug`,!1),this.debugGraphic,this.defaults={debugShowBody:y(t,`debugShowBody`,!0),debugShowStaticBody:y(t,`debugShowStaticBody`,!0),debugShowVelocity:y(t,`debugShowVelocity`,!0),bodyDebugColor:y(t,`debugBodyColor`,16711935),staticBodyDebugColor:y(t,`debugStaticBodyColor`,255),velocityDebugColor:y(t,`debugVelocityColor`,65280)},this.maxEntries=y(t,`maxEntries`,16),this.useTree=y(t,`useTree`,!0),this.tree=new w(this.maxEntries),this.staticTree=new w(this.maxEntries),this.treeMinMax={minX:0,minY:0,maxX:0,maxY:0},this._tempMatrix=new A,this._tempMatrix2=new A,this.tileFilterOptions={isColliding:!0,isNotEmpty:!0,hasInterestingFace:!0},this.drawDebug&&this.createDebugGraphic()},enable:function(e,t){t===void 0&&(t=c.DYNAMIC_BODY),Array.isArray(e)||(e=[e]);for(var n=0;n<e.length;n++){var r=e[n];if(r.isParent)for(var i=r.getChildren(),a=0;a<i.length;a++){var o=i[a];o.isParent?this.enable(o,t):this.enableBody(o,t)}else this.enableBody(r,t)}},enableBody:function(e,t){return t===void 0&&(t=c.DYNAMIC_BODY),e.hasTransformComponent&&(e.body||(t===c.DYNAMIC_BODY?e.body=new i(this,e):t===c.STATIC_BODY&&(e.body=new O(this,e))),this.add(e.body)),e},add:function(e){return e.physicsType===c.DYNAMIC_BODY?this.bodies.add(e):e.physicsType===c.STATIC_BODY&&(this.staticBodies.add(e),this.staticTree.insert(e)),e.enable=!0,e},disable:function(e){Array.isArray(e)||(e=[e]);for(var t=0;t<e.length;t++){var n=e[t];if(n.isParent)for(var r=n.getChildren(),i=0;i<r.length;i++){var a=r[i];a.isParent?this.disable(a):this.disableBody(a.body)}else this.disableBody(n.body)}},disableBody:function(e){this.remove(e),e.enable=!1},remove:function(e){e.physicsType===c.DYNAMIC_BODY?(this.tree.remove(e),this.bodies.delete(e)):e.physicsType===c.STATIC_BODY&&(this.staticBodies.delete(e),this.staticTree.remove(e))},createDebugGraphic:function(){var e=this.scene.sys.add.graphics({x:0,y:0});return e.setDepth(Number.MAX_VALUE),this.debugGraphic=e,this.drawDebug=!0,e},setBounds:function(e,t,n,r,i,a,o,s){return this.bounds.setTo(e,t,n,r),i!==void 0&&this.setBoundsCollision(i,a,o,s),this},setBoundsCollision:function(e,t,n,r){return e===void 0&&(e=!0),t===void 0&&(t=!0),n===void 0&&(n=!0),r===void 0&&(r=!0),this.checkCollision.left=e,this.checkCollision.right=t,this.checkCollision.up=n,this.checkCollision.down=r,this},pause:function(){return this.isPaused=!0,this.emit(f.PAUSE),this},resume:function(){return this.isPaused=!1,this.emit(f.RESUME),this},addCollider:function(e,t,n,r,i){n===void 0&&(n=null),r===void 0&&(r=null),i===void 0&&(i=n);var a=new s(this,!1,e,t,n,r,i);return this.colliders.add(a),a},addOverlap:function(e,t,n,r,i){n===void 0&&(n=null),r===void 0&&(r=null),i===void 0&&(i=n);var a=new s(this,!0,e,t,n,r,i);return this.colliders.add(a),a},removeCollider:function(e){return this.colliders.remove(e),this},setFPS:function(e){return this.fps=e,this._frameTime=1/this.fps,this._frameTimeMS=1e3*this._frameTime,this},update:function(e,t){if(!(this.isPaused||this.bodies.size===0)){var n=this._frameTime,r=this._frameTimeMS*this.timeScale;this._elapsed+=t;var i=this.bodies,a=this._elapsed>=r;if(this.fixedStep||(n=t*.001,a=!0,this._elapsed=0),i.forEach(function(e){e.enable&&e.preUpdate(a,n)}),a){this._elapsed-=r,this.stepsLastFrame=1,this.useTree&&(this.tree.clear(),this.tree.load(Array.from(i)));for(var o=this.colliders.update(),s=0;s<o.length;s++){var c=o[s];c.active&&c.update()}this.emit(f.WORLD_STEP,n)}for(;this._elapsed>=r;)this._elapsed-=r,this.step(n)}},step:function(e){var t=this.bodies;t.forEach(function(t){t.enable&&t.update(e)}),this.useTree&&(this.tree.clear(),this.tree.load(Array.from(t)));for(var n=this.colliders.update(),r=0;r<n.length;r++){var i=n[r];i.active&&i.update()}this.emit(f.WORLD_STEP,e),this.stepsLastFrame++},singleStep:function(){this.update(0,this._frameTimeMS),this.postUpdate()},postUpdate:function(){var e=this.bodies,t=this.staticBodies;if(this.stepsLastFrame&&(this.stepsLastFrame=0,e.forEach(function(e){e.enable&&e.postUpdate()})),this.drawDebug){var n=this.debugGraphic;n.clear(),e.forEach(function(e){e.willDrawDebug()&&e.drawDebug(n)}),t.forEach(function(e){e.willDrawDebug()&&e.drawDebug(n)})}var r=this.pendingDestroy;if(r.size>0){var i=this.tree,a=this.staticTree;r.forEach(function(n){n.physicsType===c.DYNAMIC_BODY?(i.remove(n),e.delete(n)):n.physicsType===c.STATIC_BODY&&(a.remove(n),t.delete(n)),n.world=void 0,n.gameObject=void 0}),r.clear()}},updateMotion:function(e,t){e.allowRotation&&this.computeAngularVelocity(e,t),this.computeVelocity(e,t)},computeAngularVelocity:function(e,t){var n=e.angularVelocity,r=e.angularAcceleration,i=e.angularDrag,o=e.maxAngular;r?n+=r*t:e.allowDrag&&i&&(i*=t,m(n-i,0,.1)?n-=i:h(n+i,0,.1)?n+=i:n=0),n=a(n,-o,o);var s=n-e.angularVelocity;e.angularVelocity+=s,e.rotation+=e.angularVelocity*t},computeVelocity:function(e,t){var n=e.velocity.x,r=e.acceleration.x,i=e.drag.x,o=e.maxVelocity.x,s=e.velocity.y,c=e.acceleration.y,l=e.drag.y,u=e.maxVelocity.y,d=e.speed,f=e.maxSpeed,g=e.allowDrag,_=e.useDamping;e.allowGravity&&(n+=(this.gravity.x+e.gravity.x)*t,s+=(this.gravity.y+e.gravity.y)*t),r?n+=r*t:g&&i&&(_?(i**=+t,n*=i,d=Math.sqrt(n*n+s*s),p(d,0,.001)&&(n=0)):(i*=t,m(n-i,0,.01)?n-=i:h(n+i,0,.01)?n+=i:n=0)),c?s+=c*t:g&&l&&(_?(l**=+t,s*=l,d=Math.sqrt(n*n+s*s),p(d,0,.001)&&(s=0)):(l*=t,m(s-l,0,.01)?s-=l:h(s+l,0,.01)?s+=l:s=0)),n=a(n,-o,o),s=a(s,-u,u),e.velocity.set(n,s),f>-1&&e.velocity.length()>f&&(e.velocity.normalize().scale(f),d=f),e.speed=d},separate:function(e,t,n,r,i){var a,o,s=!1,c=!0;if(!e.enable||!t.enable||e.checkCollision.none||t.checkCollision.none||!this.intersects(e,t)||(e.collisionMask&t.collisionCategory)===0||(t.collisionMask&e.collisionCategory)===0||n&&n.call(r,e.gameObject||e,t.gameObject||t)===!1)return s;if(e.isCircle||t.isCircle){var l=this.separateCircle(e,t,i);l.result?(s=!0,c=!1):(a=l.x,o=l.y,c=!0)}if(c){var u=!1,d=!1,p=this.OVERLAP_BIAS;i?(u=E(e,t,i,p,a),d=D(e,t,i,p,o)):this.forceX||Math.abs(this.gravity.y+e.gravity.y)<Math.abs(this.gravity.x+e.gravity.x)?(u=E(e,t,i,p,a),this.intersects(e,t)&&(d=D(e,t,i,p,o))):(d=D(e,t,i,p,o),this.intersects(e,t)&&(u=E(e,t,i,p,a))),s=u||d}return s&&(i?(e.onOverlap||t.onOverlap)&&this.emit(f.OVERLAP,e.gameObject,t.gameObject,e,t):(e.onCollide||t.onCollide)&&this.emit(f.COLLIDE,e.gameObject,t.gameObject,e,t)),s},separateCircle:function(e,t,n){g(e,t,!1,0),_(e,t,!1,0);var i=e.isCircle,a=t.isCircle,o=e.center,s=t.center,c=e.immovable,d=t.immovable,f=e.velocity,p=t.velocity,m=0,h=!0;if(i!==a){h=!1;var v=o.x,y=o.y,x=e.halfWidth,S=t.position.x,C=t.position.y,w=t.right,T=t.bottom;a&&(v=s.x,y=s.y,x=t.halfWidth,S=e.position.x,C=e.position.y,w=e.right,T=e.bottom),y<C?v<S?m=l(v,y,S,C)-x:v>w&&(m=l(v,y,w,C)-x):y>T&&(v<S?m=l(v,y,S,T)-x:v>w&&(m=l(v,y,w,T)-x)),m*=-1}else m=e.halfWidth+t.halfWidth-u(o,s);e.overlapR=m,t.overlapR=m;var E=r(o,s),D=(m+b.EPSILON)*Math.cos(E),O=(m+b.EPSILON)*Math.sin(E),k={overlap:m,result:!1,x:D,y:O};if(n&&(!h||h&&m!==0))return k.result=!0,k;if(!h&&m===0||c&&d||e.customSeparateX||t.customSeparateX)return k.x=void 0,k.y=void 0,k;var A=!e.pushable&&!t.pushable;if(h){var j=o.x-s.x,M=o.y-s.y,N=Math.sqrt(j**2+M**2),P=(s.x-o.x)/N||0,F=(s.y-o.y)/N||0,I=2*(f.x*P+f.y*F-p.x*P-p.y*F)/(e.mass+t.mass);(c||d||!e.pushable||!t.pushable)&&(I*=2),!c&&e.pushable&&(f.x-=I/e.mass*P,f.y-=I/e.mass*F,f.multiply(e.bounce)),!d&&t.pushable&&(p.x+=I/t.mass*P,p.y+=I/t.mass*F,p.multiply(t.bounce)),!c&&!d&&(D*=.5,O*=.5),(!c||e.pushable||A)&&(e.x-=D,e.y-=O,e.updateCenter()),(!d||t.pushable||A)&&(t.x+=D,t.y+=O,t.updateCenter()),k.result=!0}else !c&&(e.pushable||A)&&(e.x-=D,e.y-=O,e.updateCenter()),(!d||t.pushable||A)&&(t.x+=D,t.y+=O,t.updateCenter()),k.x=void 0,k.y=void 0;return k},intersects:function(e,t){return e===t?!1:!e.isCircle&&!t.isCircle?!(e.right<=t.left||e.bottom<=t.top||e.left>=t.right||e.top>=t.bottom):e.isCircle?t.isCircle?u(e.center,t.center)<=e.halfWidth+t.halfWidth:this.circleBodyIntersects(e,t):this.circleBodyIntersects(t,e)},circleBodyIntersects:function(e,t){var n=a(e.center.x,t.left,t.right),r=a(e.center.y,t.top,t.bottom);return(e.center.x-n)*(e.center.x-n)+(e.center.y-r)*(e.center.y-r)<=e.halfWidth*e.halfWidth},overlap:function(e,t,n,r,i){return n===void 0&&(n=null),r===void 0&&(r=null),i===void 0&&(i=n),this.collideObjects(e,t,n,r,i,!0)},collide:function(e,t,n,r,i){return n===void 0&&(n=null),r===void 0&&(r=null),i===void 0&&(i=n),this.collideObjects(e,t,n,r,i,!1)},collideObjects:function(e,t,n,r,i,a){var o,s;e.isParent&&(e.physicsType===void 0||t===void 0||e===t)&&(e=Array.from(e.children)),t&&t.isParent&&t.physicsType===void 0&&(t=Array.from(t.children));var c=Array.isArray(e),l=Array.isArray(t);if(this._total=0,!c&&!l)this.collideHandler(e,t,n,r,i,a);else if(!c&&l)for(o=0;o<t.length;o++)this.collideHandler(e,t[o],n,r,i,a);else if(c&&!l)if(t)for(o=0;o<e.length;o++)this.collideHandler(e[o],t,n,r,i,a);else for(o=0;o<e.length;o++){var u=e[o];for(s=o+1;s<e.length;s++)o!==s&&this.collideHandler(u,e[s],n,r,i,a)}else for(o=0;o<e.length;o++)for(s=0;s<t.length;s++)this.collideHandler(e[o],t[s],n,r,i,a);return this._total>0},collideHandler:function(e,t,n,r,i,a){if(t===void 0&&e.isParent)return this.collideGroupVsGroup(e,e,n,r,i,a);if(!e||!t)return!1;if(e.body||e.isBody){if(t.body||t.isBody)return this.collideSpriteVsSprite(e,t,n,r,i,a);if(t.isParent)return this.collideSpriteVsGroup(e,t,n,r,i,a);if(t.isTilemap)return this.collideSpriteVsTilemapLayer(e,t,n,r,i,a)}else if(e.isParent){if(t.body||t.isBody)return this.collideSpriteVsGroup(t,e,n,r,i,a);if(t.isParent)return this.collideGroupVsGroup(e,t,n,r,i,a);if(t.isTilemap)return this.collideGroupVsTilemapLayer(e,t,n,r,i,a)}else if(e.isTilemap){if(t.body||t.isBody)return this.collideSpriteVsTilemapLayer(t,e,n,r,i,a);if(t.isParent)return this.collideGroupVsTilemapLayer(t,e,n,r,i,a)}},canCollide:function(e,t){return e&&t&&(e.collisionMask&t.collisionCategory)!==0&&(t.collisionMask&e.collisionCategory)!==0},collideSpriteVsSprite:function(e,t,n,r,i,a){var o=e.isBody?e:e.body,s=t.isBody?t:t.body;return this.canCollide(o,s)?(this.separate(o,s,r,i,a)&&(n&&n.call(i,e,t),this._total++),!0):!1},collideSpriteVsGroup:function(e,t,n,r,i,a){var o=e.isBody?e:e.body;if(!(t.getLength()===0||!o||!o.enable||o.checkCollision.none||!this.canCollide(o,t))){var s,l,u;if(this.useTree||t.physicsType===c.STATIC_BODY){var d=this.treeMinMax;d.minX=o.left,d.minY=o.top,d.maxX=o.right,d.maxY=o.bottom;var f=t.physicsType===c.DYNAMIC_BODY?this.tree.search(d):this.staticTree.search(d);for(l=f.length,s=0;s<l;s++)u=f[s],!(o===u||!u.enable||u.checkCollision.none||!t.contains(u.gameObject))&&this.separate(o,u,r,i,a)&&(n&&n.call(i,o.gameObject,u.gameObject),this._total++)}else{var p=t.getChildren(),m=p.indexOf(e);for(l=p.length,s=0;s<l;s++)u=p[s].body,!(!u||s===m||!u.enable)&&this.separate(o,u,r,i,a)&&(n&&n.call(i,o.gameObject,u.gameObject),this._total++)}}},collideGroupVsTilemapLayer:function(e,t,n,r,i,a){if(!this.canCollide(e,t))return!1;var o=e.getChildren();if(o.length===0)return!1;for(var s=!1,c=0;c<o.length;c++)(o[c].body||o[c].isBody)&&this.collideSpriteVsTilemapLayer(o[c],t,n,r,i,a)&&(s=!0);return s},collideTiles:function(e,t,n,r,i){return t.length===0||e.body&&!e.body.enable||e.isBody&&!e.enable?!1:this.collideSpriteVsTilesHandler(e,t,n,r,i,!1,!1)},overlapTiles:function(e,t,n,r,i){return t.length===0||e.body&&!e.body.enable||e.isBody&&!e.enable?!1:this.collideSpriteVsTilesHandler(e,t,n,r,i,!0,!1)},collideSpriteVsTilemapLayer:function(e,t,n,r,i,a){var o=e.isBody?e:e.body;if(!o.enable||o.checkCollision.none||!this.canCollide(o,t))return!1;var s=t.layer,c=v(o.x-s.tileWidth*t.scaleX,o.y-s.tileHeight*t.scaleY,o.width+s.tileWidth*t.scaleX,o.height+s.tileHeight*t.scaleY,a?null:this.tileFilterOptions,t.scene.cameras.main,t.layer);return c.length===0?!1:this.collideSpriteVsTilesHandler(e,c,n,r,i,a,!0)},collideSpriteVsTilesHandler:function(e,t,n,r,i,a,o){for(var s=e.isBody?e:e.body,c,l={left:0,right:0,top:0,bottom:0},u,d=!1,p=0;p<t.length;p++){c=t[p],u=c.tilemapLayer;var m=u.tileToWorldXY(c.x,c.y);l.left=m.x,l.top=m.y,l.right=l.left+c.width*u.scaleX,l.bottom=l.top+c.height*u.scaleY,k(l,s)&&(!r||r.call(i,e,c))&&S(c,e)&&(a||T(p,s,c,l,u,this.TILE_BIAS,o))&&(this._total++,d=!0,n&&n.call(i,e,c),a&&s.onOverlap?this.emit(f.TILE_OVERLAP,e,c,s):s.onCollide&&this.emit(f.TILE_COLLIDE,e,c,s))}return d},collideGroupVsGroup:function(e,t,n,r,i,a){if(!(e.getLength()===0||t.getLength()===0||!this.canCollide(e,t)))for(var o=e.getChildren(),s=0;s<o.length;s++)this.collideSpriteVsGroup(o[s],t,n,r,i,a)},wrap:function(e,t){e.body?this.wrapObject(e,t):e.getChildren?this.wrapArray(e.getChildren(),t):Array.isArray(e)?this.wrapArray(e,t):this.wrapObject(e,t)},wrapArray:function(e,t){for(var n=0;n<e.length;n++)this.wrapObject(e[n],t)},wrapObject:function(e,t){t===void 0&&(t=0),e.x=M(e.x,this.bounds.left-t,this.bounds.right+t),e.y=M(e.y,this.bounds.top-t,this.bounds.bottom+t)},shutdown:function(){this.tree.clear(),this.staticTree.clear(),this.bodies.clear(),this.staticBodies.clear(),this.colliders.destroy(),this.removeAllListeners()},destroy:function(){this.shutdown(),this.scene=null,this.debugGraphic&&=(this.debugGraphic.destroy(),null)}})},1093(e){e.exports={setAcceleration:function(e,t){return this.body.acceleration.set(e,t),this},setAccelerationX:function(e){return this.body.acceleration.x=e,this},setAccelerationY:function(e){return this.body.acceleration.y=e,this}}},59023(e){e.exports={setAngularVelocity:function(e){return this.body.angularVelocity=e,this},setAngularAcceleration:function(e){return this.body.angularAcceleration=e,this},setAngularDrag:function(e){return this.body.angularDrag=e,this}}},62069(e){e.exports={setBounce:function(e,t){return this.body.bounce.set(e,t),this},setBounceX:function(e){return this.body.bounce.x=e,this},setBounceY:function(e){return this.body.bounce.y=e,this},setCollideWorldBounds:function(e,t,n,r){return this.body.setCollideWorldBounds(e,t,n,r),this}}},78389(e,t,n){var r=n(79599);e.exports={setCollisionCategory:function(e){var t=this.body?this.body:this;return t.collisionCategory=e,this},willCollideWith:function(e){return((this.body?this.body:this).collisionMask&e)!==0},addCollidesWith:function(e){var t=this.body?this.body:this;return t.collisionMask|=e,this},removeCollidesWith:function(e){var t=this.body?this.body:this;return t.collisionMask&=~e,this},setCollidesWith:function(e){var t=this.body?this.body:this;return t.collisionMask=r(e),this},resetCollisionCategory:function(){var e=this.body?this.body:this;return e.collisionCategory=1,e.collisionMask=2147483647,this}}},87118(e){e.exports={setDebug:function(e,t,n){return this.debugShowBody=e,this.debugShowVelocity=t,this.debugBodyColor=n,this},setDebugBodyColor:function(e){return this.body.debugBodyColor=e,this},debugShowBody:{get:function(){return this.body.debugShowBody},set:function(e){this.body.debugShowBody=e}},debugShowVelocity:{get:function(){return this.body.debugShowVelocity},set:function(e){this.body.debugShowVelocity=e}},debugBodyColor:{get:function(){return this.body.debugBodyColor},set:function(e){this.body.debugBodyColor=e}}}},52819(e){e.exports={setDrag:function(e,t){return this.body.drag.set(e,t),this},setDragX:function(e){return this.body.drag.x=e,this},setDragY:function(e){return this.body.drag.y=e,this},setDamping:function(e){return this.body.useDamping=e,this}}},4074(e){e.exports={setDirectControl:function(e){return this.body.setDirectControl(e),this},enableBody:function(e,t,n,r,i){return e&&this.body.reset(t,n),r&&(this.body.gameObject.active=!0),i&&(this.body.gameObject.visible=!0),this.body.enable=!0,this},disableBody:function(e,t){return e===void 0&&(e=!1),t===void 0&&(t=!1),this.body.stop(),this.body.enable=!1,e&&(this.body.gameObject.active=!1),t&&(this.body.gameObject.visible=!1),this},refreshBody:function(){return this.body.updateFromGameObject(),this}}},40831(e){e.exports={setFriction:function(e,t){return this.body.friction.set(e,t),this},setFrictionX:function(e){return this.body.friction.x=e,this},setFrictionY:function(e){return this.body.friction.y=e,this}}},26775(e){e.exports={setGravity:function(e,t){return this.body.gravity.set(e,t),this},setGravityX:function(e){return this.body.gravity.x=e,this},setGravityY:function(e){return this.body.gravity.y=e,this}}},9437(e){e.exports={setImmovable:function(e){return e===void 0&&(e=!0),this.body.immovable=e,this}}},30621(e){e.exports={setMass:function(e){return this.body.mass=e,this}}},72441(e,t,n){var r=n(47956),i=n(96503),a=n(2044),o=n(81491);e.exports=function(e,t,n,s,c,l){var u=r(e,t-s,n-s,2*s,2*s,c,l);if(u.length===0)return u;for(var d=new i(t,n,s),f=new i,p=[],m=0;m<u.length;m++){var h=u[m];h.isCircle?(f.setTo(h.center.x,h.center.y,h.halfWidth),a(d,f)&&p.push(h)):o(d,h)&&p.push(h)}return p}},47956(e){e.exports=function(e,t,n,r,i,a,o){a===void 0&&(a=!0),o===void 0&&(o=!1);var s=[],c=[],l=e.treeMinMax;if(l.minX=t,l.minY=n,l.maxX=t+r,l.maxY=n+i,o&&(c=e.staticTree.search(l)),a&&e.useTree)s=e.tree.search(l);else if(a)for(var u=Array.from(e.bodies),d={position:{x:t,y:n},left:t,top:n,right:t+r,bottom:n+i,isCircle:!1},f=e.intersects,p=0;p<u.length;p++){var m=u[p];f(m,d)&&s.push(m)}return c.concat(s)}},62121(e){e.exports={setPushable:function(e){return e===void 0&&(e=!0),this.body.pushable=e,this}}},29384(e){e.exports={setOffset:function(e,t){return this.body.setOffset(e,t),this},setSize:function(e,t,n){return this.body.setSize(e,t,n),this},setBodySize:function(e,t,n){return this.body.setSize(e,t,n),this},setCircle:function(e,t,n){return this.body.setCircle(e,t,n),this}}},15098(e){e.exports={setVelocity:function(e,t){return this.body.setVelocity(e,t),this},setVelocityX:function(e){return this.body.setVelocityX(e),this},setVelocityY:function(e){return this.body.setVelocityY(e),this},setMaxVelocity:function(e,t){return this.body.maxVelocity.set(e,t),this}}},92209(e,t,n){e.exports={Acceleration:n(1093),Angular:n(59023),Bounce:n(62069),Collision:n(78389),Debug:n(87118),Drag:n(52819),Enable:n(4074),Friction:n(40831),Gravity:n(26775),Immovable:n(9437),Mass:n(30621),OverlapCirc:n(72441),OverlapRect:n(47956),Pushable:n(62121),Size:n(29384),Velocity:n(15098)}},37747(e){e.exports={DYNAMIC_BODY:0,STATIC_BODY:1,GROUP:2,TILEMAPLAYER:3,FACING_NONE:10,FACING_UP:11,FACING_DOWN:12,FACING_LEFT:13,FACING_RIGHT:14}},20009(e){e.exports=`collide`},36768(e){e.exports=`overlap`},60473(e){e.exports=`pause`},89954(e){e.exports=`resume`},61804(e){e.exports=`tilecollide`},7161(e){e.exports=`tileoverlap`},34689(e){e.exports=`worldbounds`},16006(e){e.exports=`worldstep`},63012(e,t,n){e.exports={COLLIDE:n(20009),OVERLAP:n(36768),PAUSE:n(60473),RESUME:n(89954),TILE_COLLIDE:n(61804),TILE_OVERLAP:n(7161),WORLD_BOUNDS:n(34689),WORLD_STEP:n(16006)}},27064(e,t,n){var r=n(37747),i=n(79291),a={ArcadePhysics:n(86689),Body:n(37742),Collider:n(79342),Components:n(92209),Events:n(63012),Factory:n(66022),GetCollidesWith:n(79599),GetOverlapX:n(64897),GetOverlapY:n(45170),SeparateX:n(14087),SeparateY:n(89936),Group:n(60758),Image:n(71289),Sprite:n(13759),StaticBody:n(72624),StaticGroup:n(71464),Tilemap:n(55173),World:n(82248)};a=i(!1,a,r),e.exports=a},96602(e){e.exports=function(e,t){return e.collisionCallback?!e.collisionCallback.call(e.collisionCallbackContext,t,e):e.layer.callbacks[e.index]?!e.layer.callbacks[e.index].callback.call(e.layer.callbacks[e.index].callbackContext,t,e):!0}},36294(e){e.exports=function(e,t){t<0?(e.blocked.none=!1,e.blocked.left=!0):t>0&&(e.blocked.none=!1,e.blocked.right=!0),e.position.x-=t,e.updateCenter(),e.bounce.x===0?e.velocity.x=0:e.velocity.x=-e.velocity.x*e.bounce.x}},67013(e){e.exports=function(e,t){t<0?(e.blocked.none=!1,e.blocked.up=!0):t>0&&(e.blocked.none=!1,e.blocked.down=!0),e.position.y-=t,e.updateCenter(),e.bounce.y===0?e.velocity.y=0:e.velocity.y=-e.velocity.y*e.bounce.y}},40012(e,t,n){var r=n(21329),i=n(53442),a=n(2483);e.exports=function(e,t,n,o,s,c,l){var u=o.left,d=o.top,f=o.right,p=o.bottom,m=n.faceLeft||n.faceRight,h=n.faceTop||n.faceBottom;if(l||(m=!0,h=!0),!m&&!h)return!1;var g=0,_=0,v=0,y=1;if(t.deltaAbsX()>t.deltaAbsY()?v=-1:t.deltaAbsX()<t.deltaAbsY()&&(y=-1),t.deltaX()!==0&&t.deltaY()!==0&&m&&h&&(v=Math.min(Math.abs(t.position.x-f),Math.abs(t.right-u)),y=Math.min(Math.abs(t.position.y-p),Math.abs(t.bottom-d))),v<y){if(m&&(g=r(t,n,u,f,c,l),g!==0&&!a(o,t)))return!0;h&&(_=i(t,n,d,p,c,l))}else{if(h&&(_=i(t,n,d,p,c,l),_!==0&&!a(o,t)))return!0;m&&(g=r(t,n,u,f,c,l))}return g!==0||_!==0}},21329(e,t,n){var r=n(36294);e.exports=function(e,t,n,i,a,o){var s=0,c=t.faceLeft,l=t.faceRight,u=t.collideLeft,d=t.collideRight;return o||(c=!0,l=!0,u=!0,d=!0),e.deltaX()<0&&d&&e.checkCollision.left?l&&e.x<i&&(s=e.x-i,s<-a&&(s=0)):e.deltaX()>0&&u&&e.checkCollision.right&&c&&e.right>n&&(s=e.right-n,s>a&&(s=0)),s!==0&&(e.customSeparateX?e.overlapX=s:r(e,s)),s}},53442(e,t,n){var r=n(67013);e.exports=function(e,t,n,i,a,o){var s=0,c=t.faceTop,l=t.faceBottom,u=t.collideUp,d=t.collideDown;return o||(c=!0,l=!0,u=!0,d=!0),e.deltaY()<0&&d&&e.checkCollision.up?l&&e.y<i&&(s=e.y-i,s<-a&&(s=0)):e.deltaY()>0&&u&&e.checkCollision.down&&c&&e.bottom>n&&(s=e.bottom-n,s>a&&(s=0)),s!==0&&(e.customSeparateY?e.overlapY=s:r(e,s)),s}},2483(e){e.exports=function(e,t){return!(t.right<=e.left||t.bottom<=e.top||t.position.x>=e.right||t.position.y>=e.bottom)}},55173(e,t,n){e.exports={ProcessTileCallbacks:n(96602),ProcessTileSeparationX:n(36294),ProcessTileSeparationY:n(67013),SeparateTile:n(40012),TileCheckX:n(21329),TileCheckY:n(53442),TileIntersectsBody:n(2483)}},44563(e,t,n){e.exports={Arcade:n(27064),Matter:n(3875)}},68174(e,t,n){var r=n(83419),i=n(26099);e.exports=new r({initialize:function(){this.boundsCenter=new i,this.centerDiff=new i},parseBody:function(e){if(e=e.hasOwnProperty(`body`)?e.body:e,!e.hasOwnProperty(`bounds`)||!e.hasOwnProperty(`centerOfMass`))return!1;var t=this.boundsCenter,n=this.centerDiff,r=e.bounds.max.x-e.bounds.min.x,i=e.bounds.max.y-e.bounds.min.y,a=r*e.centerOfMass.x,o=i*e.centerOfMass.y;return t.set(r/2,i/2),n.set(a-t.x,o-t.y),!0},getTopLeft:function(e,t,n){if(t===void 0&&(t=0),n===void 0&&(n=0),this.parseBody(e)){var r=this.boundsCenter,a=this.centerDiff;return new i(t+r.x+a.x,n+r.y+a.y)}return!1},getTopCenter:function(e,t,n){if(t===void 0&&(t=0),n===void 0&&(n=0),this.parseBody(e)){var r=this.boundsCenter,a=this.centerDiff;return new i(t+a.x,n+r.y+a.y)}return!1},getTopRight:function(e,t,n){if(t===void 0&&(t=0),n===void 0&&(n=0),this.parseBody(e)){var r=this.boundsCenter,a=this.centerDiff;return new i(t-(r.x-a.x),n+r.y+a.y)}return!1},getLeftCenter:function(e,t,n){if(t===void 0&&(t=0),n===void 0&&(n=0),this.parseBody(e)){var r=this.boundsCenter,a=this.centerDiff;return new i(t+r.x+a.x,n+a.y)}return!1},getCenter:function(e,t,n){if(t===void 0&&(t=0),n===void 0&&(n=0),this.parseBody(e)){var r=this.centerDiff;return new i(t+r.x,n+r.y)}return!1},getRightCenter:function(e,t,n){if(t===void 0&&(t=0),n===void 0&&(n=0),this.parseBody(e)){var r=this.boundsCenter,a=this.centerDiff;return new i(t-(r.x-a.x),n+a.y)}return!1},getBottomLeft:function(e,t,n){if(t===void 0&&(t=0),n===void 0&&(n=0),this.parseBody(e)){var r=this.boundsCenter,a=this.centerDiff;return new i(t+r.x+a.x,n-(r.y-a.y))}return!1},getBottomCenter:function(e,t,n){if(t===void 0&&(t=0),n===void 0&&(n=0),this.parseBody(e)){var r=this.boundsCenter,a=this.centerDiff;return new i(t+a.x,n-(r.y-a.y))}return!1},getBottomRight:function(e,t,n){if(t===void 0&&(t=0),n===void 0&&(n=0),this.parseBody(e)){var r=this.boundsCenter,a=this.centerDiff;return new i(t-(r.x-a.x),n-(r.y-a.y))}return!1}})},19933(e,t,n){var r=n(6790);r.Body=n(22562),r.Composite=n(69351),r.World=n(4372),r.Collision=n(52284),r.Detector=n(81388),r.Pairs=n(99561),r.Pair=n(4506),r.Query=n(73296),r.Resolver=n(66272),r.Constraint=n(48140),r.Common=n(53402),r.Engine=n(48413),r.Events=n(35810),r.Sleeping=n(53614),r.Plugin=n(73832),r.Bodies=n(66280),r.Composites=n(74116),r.Axes=n(66615),r.Bounds=n(15647),r.Svg=n(74058),r.Vector=n(31725),r.Vertices=n(41598),r.World.add=r.Composite.add,r.World.remove=r.Composite.remove,r.World.addComposite=r.Composite.addComposite,r.World.addBody=r.Composite.addBody,r.World.addConstraint=r.Composite.addConstraint,r.World.clear=r.Composite.clear,e.exports=r},28137(e,t,n){var r=n(66280),i=n(83419),a=n(74116),o=n(48140),s=n(74058),c=n(75803),l=n(23181),u=n(34803),d=n(73834),f=n(19496),p=n(85791),m=n(98713),h=n(41598);e.exports=new i({initialize:function(e){this.world=e,this.scene=e.scene,this.sys=e.scene.sys},rectangle:function(e,t,n,i,a){var o=r.rectangle(e,t,n,i,a);return this.world.add(o),o},trapezoid:function(e,t,n,i,a,o){var s=r.trapezoid(e,t,n,i,a,o);return this.world.add(s),s},circle:function(e,t,n,i,a){var o=r.circle(e,t,n,i,a);return this.world.add(o),o},polygon:function(e,t,n,i,a){var o=r.polygon(e,t,n,i,a);return this.world.add(o),o},fromVertices:function(e,t,n,i,a,o,s){typeof n==`string`&&(n=h.fromPath(n));var c=r.fromVertices(e,t,n,i,a,o,s);return this.world.add(c),c},fromPhysicsEditor:function(e,t,n,r,i){i===void 0&&(i=!0);var a=f.parseBody(e,t,n,r);return i&&!this.world.has(a)&&this.world.add(a),a},fromSVG:function(e,t,n,i,a,o){i===void 0&&(i=1),a===void 0&&(a={}),o===void 0&&(o=!0);for(var c=n.getElementsByTagName(`path`),l=[],u=0;u<c.length;u++){var d=s.pathToVertices(c[u],30);i!==1&&h.scale(d,i,i),l.push(d)}var f=r.fromVertices(e,t,l,a);return o&&this.world.add(f),f},fromJSON:function(e,t,n,r,i){r===void 0&&(r={}),i===void 0&&(i=!0);var a=p.parseBody(e,t,n,r);return a&&i&&this.world.add(a),a},imageStack:function(e,t,n,r,i,o,s,c,u){s===void 0&&(s=0),c===void 0&&(c=0),u===void 0&&(u={});var d=this.world,f=this.sys.displayList;u.addToWorld=!1;var p=a.stack(n,r,i,o,s,c,function(n,r){var i=new l(d,n,r,e,t,u);return f.add(i),i.body});return d.add(p),p},stack:function(e,t,n,r,i,o,s){var c=a.stack(e,t,n,r,i,o,s);return this.world.add(c),c},pyramid:function(e,t,n,r,i,o,s){var c=a.pyramid(e,t,n,r,i,o,s);return this.world.add(c),c},chain:function(e,t,n,r,i,o){return a.chain(e,t,n,r,i,o)},mesh:function(e,t,n,r,i){return a.mesh(e,t,n,r,i)},newtonsCradle:function(e,t,n,r,i){var o=a.newtonsCradle(e,t,n,r,i);return this.world.add(o),o},car:function(e,t,n,r,i){var o=a.car(e,t,n,r,i);return this.world.add(o),o},softBody:function(e,t,n,r,i,o,s,c,l,u){var d=a.softBody(e,t,n,r,i,o,s,c,l,u);return this.world.add(d),d},joint:function(e,t,n,r,i){return this.constraint(e,t,n,r,i)},spring:function(e,t,n,r,i){return this.constraint(e,t,n,r,i)},constraint:function(e,t,n,r,i){r===void 0&&(r=1),i===void 0&&(i={}),i.bodyA=e.type===`body`?e:e.body,i.bodyB=t.type===`body`?t:t.body,isNaN(n)||(i.length=n),i.stiffness=r;var a=o.create(i);return this.world.add(a),a},worldConstraint:function(e,t,n,r){n===void 0&&(n=1),r===void 0&&(r={}),r.bodyB=e.type===`body`?e:e.body,isNaN(t)||(r.length=t),r.stiffness=n;var i=o.create(r);return this.world.add(i),i},mouseSpring:function(e){return this.pointerConstraint(e)},pointerConstraint:function(e){e===void 0&&(e={}),e.hasOwnProperty(`render`)||(e.render={visible:!1});var t=new m(this.scene,this.world,e);return this.world.add(t.constraint),t},image:function(e,t,n,r,i){var a=new l(this.world,e,t,n,r,i);return this.sys.displayList.add(a),a},tileBody:function(e,t){return new d(this.world,e,t)},sprite:function(e,t,n,r,i){var a=new u(this.world,e,t,n,r,i);return this.sys.displayList.add(a),this.sys.updateList.add(a),a},gameObject:function(e,t,n){return c(this.world,e,t,n)},destroy:function(){this.world=null,this.scene=null,this.sys=null}})},75803(e,t,n){var r=n(9503),i=n(95540),a=n(26099);function o(e){return!!e.get&&typeof e.get==`function`||!!e.set&&typeof e.set==`function`}e.exports=function(e,t,n,s){n===void 0&&(n={}),s===void 0&&(s=!0);var c=t.x,l=t.y;if(t.body={temp:!0,position:{x:c,y:l}},[r.Bounce,r.Collision,r.Force,r.Friction,r.Gravity,r.Mass,r.Sensor,r.SetBody,r.Sleep,r.Static,r.Transform,r.Velocity].forEach(function(e){for(var n in e)o(e[n])?Object.defineProperty(t,n,{get:e[n].get,set:e[n].set}):Object.defineProperty(t,n,{value:e[n]})}),t.world=e,t._tempVec2=new a(c,l),n.hasOwnProperty(`type`)&&n.type===`body`)t.setExistingBody(n,s);else{var u=i(n,`shape`,null);u||=`rectangle`,n.addToWorld=s,t.setBody(u,n)}return t}},23181(e,t,n){var r=n(83419),i=n(9503),a=n(95643),o=n(95540),s=n(88571),c=n(26099);e.exports=new r({Extends:s,Mixins:[i.Bounce,i.Collision,i.Force,i.Friction,i.Gravity,i.Mass,i.Sensor,i.SetBody,i.Sleep,i.Static,i.Transform,i.Velocity],initialize:function(e,t,n,r,i,s){a.call(this,e.scene,`Image`),this._crop=this.resetCropObject(),this.setTexture(r,i),this.setSizeToFrame(),this.setOrigin(),this.initRenderNodes(this._defaultRenderNodesMap),this.world=e,this._tempVec2=new c(t,n);var l=o(s,`shape`,null);l?this.setBody(l,s):this.setRectangle(this.width,this.height,s),this.setPosition(t,n)}})},42045(e,t,n){var r=n(60461),i=n(66615),a=n(66280),o=n(22562),s=n(68174),c=n(15647),l=n(83419),u=n(52284),d=n(53402),f=n(69351),p=n(74116),m=n(48140),h=n(81388),g=n(20339),_=n(28137),v=n(95540),y=n(35154),b=n(46975),x=n(4506),S=n(99561),C=n(37277),w=n(73296),T=n(66272),E=n(44594),D=n(74058),O=n(31725),k=n(41598),A=n(68243);d.setDecomp(n(55973));var j=new l({initialize:function(e){this.scene=e,this.systems=e.sys,this.config=this.getConfig(),this.world,this.add,this.bodyBounds,this.body=o,this.composite=f,this.collision=u,this.detector=h,this.pair=x,this.pairs=S,this.query=w,this.resolver=T,this.constraint=m,this.bodies=a,this.composites=p,this.axes=i,this.bounds=c,this.svg=D,this.vector=O,this.vertices=k,this.verts=k,this._tempVec2=O.create(),T._restingThresh=y(this.config,`restingThresh`,4),T._restingThreshTangent=y(this.config,`restingThreshTangent`,6),T._positionDampen=y(this.config,`positionDampen`,.9),T._positionWarming=y(this.config,`positionWarming`,.8),T._frictionNormalMultiplier=y(this.config,`frictionNormalMultiplier`,5),e.sys.events.once(E.BOOT,this.boot,this),e.sys.events.on(E.START,this.start,this)},boot:function(){this.world=new A(this.scene,this.config),this.add=new _(this.world),this.bodyBounds=new s,this.systems.events.once(E.DESTROY,this.destroy,this)},start:function(){this.world||(this.world=new A(this.scene,this.config),this.add=new _(this.world));var e=this.systems.events;e.on(E.UPDATE,this.world.update,this.world),e.on(E.POST_UPDATE,this.world.postUpdate,this.world),e.once(E.SHUTDOWN,this.shutdown,this)},getConfig:function(){var e=this.systems.game.config.physics,t=this.systems.settings.physics;return b(v(t,`matter`,{}),v(e,`matter`,{}))},pause:function(){return this.world.pause()},resume:function(){return this.world.resume()},set60Hz:function(){return this.world.getDelta=this.world.update60Hz,this.world.autoUpdate=!0,this},set30Hz:function(){return this.world.getDelta=this.world.update30Hz,this.world.autoUpdate=!0,this},step:function(e,t){this.world.step(e,t)},containsPoint:function(e,t,n){e=this.getMatterBodies(e);var r=O.create(t,n);return w.point(e,r).length>0},intersectPoint:function(e,t,n){n=this.getMatterBodies(n);var r=O.create(e,t),i=[];return w.point(n,r).forEach(function(e){i.indexOf(e)===-1&&i.push(e)}),i},intersectRect:function(e,t,n,r,i,a){i===void 0&&(i=!1),a=this.getMatterBodies(a);var o={min:{x:e,y:t},max:{x:e+n,y:t+r}},s=[];return w.region(a,o,i).forEach(function(e){s.indexOf(e)===-1&&s.push(e)}),s},intersectRay:function(e,t,n,r,i,a){i===void 0&&(i=1),a=this.getMatterBodies(a);for(var o=[],s=w.ray(a,O.create(e,t),O.create(n,r),i),c=0;c<s.length;c++)o.push(s[c].body);return o},intersectBody:function(e,t){t=this.getMatterBodies(t);for(var n=[],r=w.collides(e,t),i=0;i<r.length;i++){var a=r[i];a.bodyA===e?n.push(a.bodyB):n.push(a.bodyA)}return n},overlap:function(e,t,n,r,i){n===void 0&&(n=null),r===void 0&&(r=null),i===void 0&&(i=n),Array.isArray(e)||(e=[e]),e=this.getMatterBodies(e),t=this.getMatterBodies(t);for(var a=!1,o=0;o<e.length;o++)for(var s=e[o],c=w.collides(s,t),l=0;l<c.length;l++){var u=c[l],d=u.bodyA.id===s.id?u.bodyB:u.bodyA;if(!r||r.call(i,s,d,u)){if(a=!0,n)n.call(i,s,d,u);else if(!r)return!0}}return a},setCollisionCategory:function(e,t){return e=this.getMatterBodies(e),e.forEach(function(e){e.collisionFilter.category=t}),this},setCollisionGroup:function(e,t){return e=this.getMatterBodies(e),e.forEach(function(e){e.collisionFilter.group=t}),this},setCollidesWith:function(e,t){e=this.getMatterBodies(e);var n=0;if(!Array.isArray(t))n=t;else for(var r=0;r<t.length;r++)n|=t[r];return e.forEach(function(e){e.collisionFilter.mask=n}),this},getMatterBodies:function(e){if(!e)return this.world.getAllBodies();Array.isArray(e)||(e=[e]);for(var t=[],n=0;n<e.length;n++){var r=e[n].hasOwnProperty(`body`)?e[n].body:e[n];t.push(r)}return t},setVelocity:function(e,t,n){e=this.getMatterBodies(e);var r=this._tempVec2;return r.x=t,r.y=n,e.forEach(function(e){o.setVelocity(e,r)}),this},setVelocityX:function(e,t){e=this.getMatterBodies(e);var n=this._tempVec2;return n.x=t,e.forEach(function(e){n.y=e.velocity.y,o.setVelocity(e,n)}),this},setVelocityY:function(e,t){e=this.getMatterBodies(e);var n=this._tempVec2;return n.y=t,e.forEach(function(e){n.x=e.velocity.x,o.setVelocity(e,n)}),this},setAngularVelocity:function(e,t){return e=this.getMatterBodies(e),e.forEach(function(e){o.setAngularVelocity(e,t)}),this},applyForce:function(e,t){e=this.getMatterBodies(e);var n=this._tempVec2;return e.forEach(function(e){n.x=e.position.x,n.y=e.position.y,o.applyForce(e,n,t)}),this},applyForceFromPosition:function(e,t,n,r){e=this.getMatterBodies(e);var i=this._tempVec2;return e.forEach(function(e){r===void 0&&(r=e.angle),i.x=n*Math.cos(r),i.y=n*Math.sin(r),o.applyForce(e,t,i)}),this},applyForceFromAngle:function(e,t,n){e=this.getMatterBodies(e);var r=this._tempVec2;return e.forEach(function(e){n===void 0&&(n=e.angle),r.x=t*Math.cos(n),r.y=t*Math.sin(n),o.applyForce(e,{x:e.position.x,y:e.position.y},r)}),this},getConstraintLength:function(e){var t=e.pointA.x,n=e.pointA.y,r=e.pointB.x,i=e.pointB.y;return e.bodyA&&(t+=e.bodyA.position.x,n+=e.bodyA.position.y),e.bodyB&&(r+=e.bodyB.position.x,i+=e.bodyB.position.y),g(t,n,r,i)},alignBody:function(e,t,n,i){e=e.hasOwnProperty(`body`)?e.body:e;var a;switch(i){case r.TOP_LEFT:case r.LEFT_TOP:a=this.bodyBounds.getTopLeft(e,t,n);break;case r.TOP_CENTER:a=this.bodyBounds.getTopCenter(e,t,n);break;case r.TOP_RIGHT:case r.RIGHT_TOP:a=this.bodyBounds.getTopRight(e,t,n);break;case r.LEFT_CENTER:a=this.bodyBounds.getLeftCenter(e,t,n);break;case r.CENTER:a=this.bodyBounds.getCenter(e,t,n);break;case r.RIGHT_CENTER:a=this.bodyBounds.getRightCenter(e,t,n);break;case r.LEFT_BOTTOM:case r.BOTTOM_LEFT:a=this.bodyBounds.getBottomLeft(e,t,n);break;case r.BOTTOM_CENTER:a=this.bodyBounds.getBottomCenter(e,t,n);break;case r.BOTTOM_RIGHT:case r.RIGHT_BOTTOM:a=this.bodyBounds.getBottomRight(e,t,n);break}return a&&o.setPosition(e,a),this},shutdown:function(){var e=this.systems.events;this.world&&(e.off(E.UPDATE,this.world.update,this.world),e.off(E.POST_UPDATE,this.world.postUpdate,this.world)),e.off(E.SHUTDOWN,this.shutdown,this),this.add&&this.add.destroy(),this.world&&this.world.destroy(),this.add=null,this.world=null},destroy:function(){this.shutdown(),this.scene.sys.events.off(E.START,this.start,this),this.scene=null,this.systems=null}});C.register(`MatterPhysics`,j,`matterPhysics`),e.exports=j},34803(e,t,n){var r=n(9674),i=n(83419),a=n(9503),o=n(95643),s=n(95540),c=n(68287),l=n(26099);e.exports=new i({Extends:c,Mixins:[a.Bounce,a.Collision,a.Force,a.Friction,a.Gravity,a.Mass,a.Sensor,a.SetBody,a.Sleep,a.Static,a.Transform,a.Velocity],initialize:function(e,t,n,i,a,c){o.call(this,e.scene,`Sprite`),this._crop=this.resetCropObject(),this.anims=new r(this),this.setTexture(i,a),this.setSizeToFrame(),this.setOrigin(),this.initRenderNodes(this._defaultRenderNodesMap),this.world=e,this._tempVec2=new l(t,n);var u=s(c,`shape`,null);u?this.setBody(u,c):this.setRectangle(this.width,this.height,c),this.setPosition(t,n)}})},73834(e,t,n){var r=n(66280),i=n(22562),a=n(83419),o=n(9503),s=n(62644),c=n(50792),l=n(95540),u=n(97022),d=n(41598);e.exports=new a({Extends:c,Mixins:[o.Bounce,o.Collision,o.Friction,o.Gravity,o.Mass,o.Sensor,o.Sleep,o.Static],initialize:function(e,t,n){c.call(this),this.tile=t,this.world=e,t.physics.matterBody&&t.physics.matterBody.destroy(),t.physics.matterBody=this;var r=l(n,`body`,null),a=l(n,`addToWorld`,!0);if(r?this.setBody(r,a):(l(t.getCollisionGroup(),`objects`,[]).length>0?this.setFromTileCollision(n):this.setFromTileRectangle(n),r=this.body),t.flipX||t.flipY){var o={x:t.getCenterX(),y:t.getCenterY()},s=t.flipX?-1:1,u=t.flipY?-1:1;i.scale(r,s,u,o)}},setFromTileRectangle:function(e){e===void 0&&(e={}),u(e,`isStatic`)||(e.isStatic=!0),u(e,`addToWorld`)||(e.addToWorld=!0);var t=this.tile.getBounds(),n=t.x+t.width/2,i=t.y+t.height/2,a=r.rectangle(n,i,t.width,t.height,e);return this.setBody(a,e.addToWorld),this},setFromTileCollision:function(e){e===void 0&&(e={}),u(e,`isStatic`)||(e.isStatic=!0),u(e,`addToWorld`)||(e.addToWorld=!0);for(var t=this.tile.tilemapLayer.scaleX,n=this.tile.tilemapLayer.scaleY,a=this.tile.getLeft(),o=this.tile.getTop(),c=l(this.tile.getCollisionGroup(),`objects`,[]),f=[],p=0;p<c.length;p++){var m=c[p],h=a+m.x*t,g=o+m.y*n,_=m.width*t,v=m.height*n,y=null;if(m.rectangle)y=r.rectangle(h+_/2,g+v/2,_,v,e);else if(m.ellipse)y=r.circle(h+_/2,g+v/2,_/2,e);else if(m.polygon||m.polyline){var b=(m.polygon?m.polygon:m.polyline).map(function(e){return{x:e.x*t,y:e.y*n}}),x=d.create(b),S=d.centre(x);h+=S.x,g+=S.y,y=r.fromVertices(h,g,x,e)}y&&f.push(y)}if(f.length===1)this.setBody(f[0],e.addToWorld);else if(f.length>1){var C=s(e);C.parts=f,this.setBody(i.create(C),C.addToWorld)}return this},setBody:function(e,t){return t===void 0&&(t=!0),this.body&&this.removeBody(),this.body=e,this.body.gameObject=this,t&&this.world.add(this.body),this},removeBody:function(){return this.body&&=(this.world.remove(this.body),this.body.gameObject=void 0,void 0),this},destroy:function(){this.removeBody(),this.tile.physics.matterBody=void 0,this.removeAllListeners()}})},19496(e,t,n){var r=n(66280),i=n(22562),a=n(53402),o=n(95540),s=n(41598);e.exports={parseBody:function(e,t,n,r){r===void 0&&(r={});for(var s=o(n,`fixtures`,[]),c=[],l=0;l<s.length;l++)for(var u=this.parseFixture(s[l]),d=0;d<u.length;d++)c.push(u[d]);var f=a.clone(n,!0);a.extend(f,r,!0),delete f.fixtures,delete f.type;var p=i.create(f);return i.setParts(p,c),i.setPosition(p,{x:e,y:t}),p},parseFixture:function(e){var t=a.extend({},!1,e);delete t.circle,delete t.vertices;var n;if(e.circle){var i=o(e.circle,`x`),s=o(e.circle,`y`),c=o(e.circle,`radius`);n=[r.circle(i,s,c,t)]}else e.vertices&&(n=this.parseVertices(e.vertices,t));return n},parseVertices:function(e,t){t===void 0&&(t={});for(var n=[],o=0;o<e.length;o++)s.clockwiseSort(e[o]),n.push(i.create(a.extend({position:s.centre(e[o]),vertices:e[o]},t)));return r.flagCoincidentParts(n)}}},85791(e,t,n){var r=n(66280),i=n(22562);e.exports={parseBody:function(e,t,n,a){a===void 0&&(a={});var o,s=n.vertices;if(s.length===1)a.vertices=s[0],o=i.create(a),r.flagCoincidentParts(o.parts);else{for(var c=[],l=0;l<s.length;l++){var u=i.create({vertices:s[l]});c.push(u)}r.flagCoincidentParts(c),a.parts=c,o=i.create(a)}return o.label=n.label,i.setPosition(o,{x:e,y:t}),o}}},98713(e,t,n){var r=n(15647),i=n(83419),a=n(69351),o=n(48140),s=n(81388),c=n(1121),l=n(8214),u=n(46975),d=n(53614),f=n(26099),p=n(41598);e.exports=new i({initialize:function(e,t,n){n===void 0&&(n={});var r={label:`Pointer Constraint`,pointA:{x:0,y:0},pointB:{x:0,y:0},length:.01,stiffness:.1,angularStiffness:1,collisionFilter:{category:1,mask:4294967295,group:0}};this.scene=e,this.world=t,this.camera=null,this.pointer=null,this.active=!0,this.position=new f,this.body=null,this.part=null,this.constraint=o.create(u(n,r)),this.world.on(c.BEFORE_UPDATE,this.update,this),e.sys.input.on(l.POINTER_DOWN,this.onDown,this),e.sys.input.on(l.POINTER_UP,this.onUp,this)},onDown:function(e){this.pointer||(this.pointer=e,this.camera=e.camera)},onUp:function(e){e===this.pointer&&(this.pointer=null)},getBody:function(e){var t=this.position,n=this.constraint;this.camera.getWorldPoint(e.x,e.y,t);for(var i=a.allBodies(this.world.localWorld),o=0;o<i.length;o++){var l=i[o];if(!l.ignorePointer&&r.contains(l.bounds,t)&&s.canCollide(l.collisionFilter,n.collisionFilter)&&this.hitTestBody(l,t))return this.world.emit(c.DRAG_START,l,this.part,this),!0}return!1},hitTestBody:function(e,t){for(var n=this.constraint,r=e.parts.length,i=+(r>1);i<r;i++){var a=e.parts[i];if(p.contains(a.vertices,t))return n.pointA=t,n.pointB={x:t.x-e.position.x,y:t.y-e.position.y},n.bodyB=e,n.angleB=e.angle,d.set(e,!1),this.part=a,this.body=e,!0}return!1},update:function(){var e=this.pointer,t=this.body;if(!this.active||!e){t&&this.stopDrag();return}if(!e.isDown&&t){this.stopDrag();return}else if(e.isDown){if(!this.camera||!t&&!this.getBody(e))return;t=this.body;var n=this.position,r=this.constraint;this.camera.getWorldPoint(e.x,e.y,n),r.pointA.x=n.x,r.pointA.y=n.y,d.set(t,!1),this.world.emit(c.DRAG,t,this)}},stopDrag:function(){var e=this.body,t=this.constraint;t.bodyB=null,t.pointB=null,this.pointer=null,this.body=null,this.part=null,e&&this.world.emit(c.DRAG_END,e,this)},destroy:function(){this.world.removeConstraint(this.constraint),this.pointer=null,this.constraint=null,this.body=null,this.part=null,this.world.off(c.BEFORE_UPDATE,this.update),this.scene.sys.input.off(l.POINTER_DOWN,this.onDown,this),this.scene.sys.input.off(l.POINTER_UP,this.onUp,this)}})},68243(e,t,n){var r=n(66280),i=n(22562),a=n(83419),o=n(53402),s=n(69351),c=n(48413),l=n(50792),u=n(1121),d=n(95540),f=n(35154),p=n(22562),m=n(35810),h=n(73834),g=n(4372),_=n(13037),v=n(31725);e.exports=new a({Extends:l,initialize:function(e,t){l.call(this),this.scene=e,this.engine=c.create(t),this.localWorld=this.engine.world;var n=f(t,`gravity`,null);n?this.setGravity(n.x,n.y,n.scale):n===!1&&this.setGravity(0,0,0),this.walls={left:null,right:null,top:null,bottom:null},this.enabled=f(t,`enabled`,!0),this.getDelta=f(t,`getDelta`,this.update60Hz);var r=d(t,`runner`,{});d(r,`fps`,!1)&&(r.delta=1e3/d(r,`fps`,60)),this.runner=_.create(r),this.autoUpdate=f(t,`autoUpdate`,!0);var i=f(t,`debug`,!1);if(this.drawDebug=typeof i==`object`?!0:i,this.debugGraphic,this.debugConfig={showAxes:d(i,`showAxes`,!1),showAngleIndicator:d(i,`showAngleIndicator`,!1),angleColor:d(i,`angleColor`,15208787),showBroadphase:d(i,`showBroadphase`,!1),broadphaseColor:d(i,`broadphaseColor`,16757760),showBounds:d(i,`showBounds`,!1),boundsColor:d(i,`boundsColor`,16777215),showVelocity:d(i,`showVelocity`,!1),velocityColor:d(i,`velocityColor`,44783),showCollisions:d(i,`showCollisions`,!1),collisionColor:d(i,`collisionColor`,16094476),showSeparations:d(i,`showSeparations`,!1),separationColor:d(i,`separationColor`,16753920),showBody:d(i,`showBody`,!0),showStaticBody:d(i,`showStaticBody`,!0),showInternalEdges:d(i,`showInternalEdges`,!1),renderFill:d(i,`renderFill`,!1),renderLine:d(i,`renderLine`,!0),fillColor:d(i,`fillColor`,1075465),fillOpacity:d(i,`fillOpacity`,1),lineColor:d(i,`lineColor`,2678297),lineOpacity:d(i,`lineOpacity`,1),lineThickness:d(i,`lineThickness`,1),staticFillColor:d(i,`staticFillColor`,857979),staticLineColor:d(i,`staticLineColor`,1255396),showSleeping:d(i,`showSleeping`,!1),staticBodySleepOpacity:d(i,`staticBodySleepOpacity`,.7),sleepFillColor:d(i,`sleepFillColor`,4605510),sleepLineColor:d(i,`sleepLineColor`,10066585),showSensors:d(i,`showSensors`,!0),sensorFillColor:d(i,`sensorFillColor`,857979),sensorLineColor:d(i,`sensorLineColor`,1255396),showPositions:d(i,`showPositions`,!0),positionSize:d(i,`positionSize`,4),positionColor:d(i,`positionColor`,14697178),showJoint:d(i,`showJoint`,!0),jointColor:d(i,`jointColor`,14737474),jointLineOpacity:d(i,`jointLineOpacity`,1),jointLineThickness:d(i,`jointLineThickness`,2),pinSize:d(i,`pinSize`,4),pinColor:d(i,`pinColor`,4382944),springColor:d(i,`springColor`,14697184),anchorColor:d(i,`anchorColor`,15724527),anchorSize:d(i,`anchorSize`,4),showConvexHulls:d(i,`showConvexHulls`,!1),hullColor:d(i,`hullColor`,14091216)},this.drawDebug&&this.createDebugGraphic(),this.setEventsProxy(),d(t,`setBounds`,!1)){var a=t.setBounds;if(typeof a==`boolean`)this.setBounds();else{var o=d(a,`x`,0),s=d(a,`y`,0),u=d(a,`width`,e.sys.scale.width),p=d(a,`height`,e.sys.scale.height),m=d(a,`thickness`,64),h=d(a,`left`,!0),g=d(a,`right`,!0),v=d(a,`top`,!0),y=d(a,`bottom`,!0);this.setBounds(o,s,u,p,m,h,g,v,y)}}},setCompositeRenderStyle:function(e){var t=e.bodies,n=e.constraints,r=e.composites,i,a,o;for(i=0;i<t.length;i++)a=t[i],o=a.render,this.setBodyRenderStyle(a,o.lineColor,o.lineOpacity,o.lineThickness,o.fillColor,o.fillOpacity);for(i=0;i<n.length;i++)a=n[i],o=a.render,this.setConstraintRenderStyle(a,o.lineColor,o.lineOpacity,o.lineThickness,o.pinSize,o.anchorColor,o.anchorSize);for(i=0;i<r.length;i++)a=r[i],this.setCompositeRenderStyle(a);return this},setBodyRenderStyle:function(e,t,n,r,i,a){var o=e.render,s=this.debugConfig;return o?(t??=e.isStatic?s.staticLineColor:s.lineColor,n??=s.lineOpacity,r??=s.lineThickness,i??=e.isStatic?s.staticFillColor:s.fillColor,a??=s.fillOpacity,t!==!1&&(o.lineColor=t),n!==!1&&(o.lineOpacity=n),r!==!1&&(o.lineThickness=r),i!==!1&&(o.fillColor=i),a!==!1&&(o.fillOpacity=a),this):this},setConstraintRenderStyle:function(e,t,n,r,i,a,o){var s=e.render,c=this.debugConfig;if(!s)return this;if(t==null){var l=s.type;l===`line`?t=c.jointColor:l===`pin`?t=c.pinColor:l===`spring`&&(t=c.springColor)}return n??=c.jointLineOpacity,r??=c.jointLineThickness,i??=c.pinSize,a??=c.anchorColor,o??=c.anchorSize,t!==!1&&(s.lineColor=t),n!==!1&&(s.lineOpacity=n),r!==!1&&(s.lineThickness=r),i!==!1&&(s.pinSize=i),a!==!1&&(s.anchorColor=a),o!==!1&&(s.anchorSize=o),this},setEventsProxy:function(){var e=this,t=this.engine,n=this.localWorld;this.drawDebug&&(m.on(n,`compositeModified`,function(t){e.setCompositeRenderStyle(t)}),m.on(n,`beforeAdd`,function(t){for(var n=[].concat(t.object),r=0;r<n.length;r++){var i=n[r],a=i.render;i.type===`body`?e.setBodyRenderStyle(i,a.lineColor,a.lineOpacity,a.lineThickness,a.fillColor,a.fillOpacity):i.type===`composite`?e.setCompositeRenderStyle(i):i.type===`constraint`&&e.setConstraintRenderStyle(i,a.lineColor,a.lineOpacity,a.lineThickness,a.pinSize,a.anchorColor,a.anchorSize)}})),m.on(n,`beforeAdd`,function(t){e.emit(u.BEFORE_ADD,t)}),m.on(n,`afterAdd`,function(t){e.emit(u.AFTER_ADD,t)}),m.on(n,`beforeRemove`,function(t){e.emit(u.BEFORE_REMOVE,t)}),m.on(n,`afterRemove`,function(t){e.emit(u.AFTER_REMOVE,t)}),m.on(t,`beforeUpdate`,function(t){e.emit(u.BEFORE_UPDATE,t)}),m.on(t,`afterUpdate`,function(t){e.emit(u.AFTER_UPDATE,t)}),m.on(t,`collisionStart`,function(t){var n=t.pairs,r,i;n.length>0&&n.map(function(e){r=e.bodyA,i=e.bodyB,r.gameObject&&r.gameObject.emit(`collide`,r,i,e),i.gameObject&&i.gameObject.emit(`collide`,i,r,e),m.trigger(r,`onCollide`,{pair:e}),m.trigger(i,`onCollide`,{pair:e}),r.onCollideCallback&&r.onCollideCallback(e),i.onCollideCallback&&i.onCollideCallback(e),r.onCollideWith[i.id]&&r.onCollideWith[i.id](i,e),i.onCollideWith[r.id]&&i.onCollideWith[r.id](r,e)}),e.emit(u.COLLISION_START,t,r,i)}),m.on(t,`collisionActive`,function(t){var n=t.pairs,r,i;n.length>0&&n.map(function(e){r=e.bodyA,i=e.bodyB,r.gameObject&&r.gameObject.emit(`collideActive`,r,i,e),i.gameObject&&i.gameObject.emit(`collideActive`,i,r,e),m.trigger(r,`onCollideActive`,{pair:e}),m.trigger(i,`onCollideActive`,{pair:e}),r.onCollideActiveCallback&&r.onCollideActiveCallback(e),i.onCollideActiveCallback&&i.onCollideActiveCallback(e)}),e.emit(u.COLLISION_ACTIVE,t,r,i)}),m.on(t,`collisionEnd`,function(t){var n=t.pairs,r,i;n.length>0&&n.map(function(e){r=e.bodyA,i=e.bodyB,r.gameObject&&r.gameObject.emit(`collideEnd`,r,i,e),i.gameObject&&i.gameObject.emit(`collideEnd`,i,r,e),m.trigger(r,`onCollideEnd`,{pair:e}),m.trigger(i,`onCollideEnd`,{pair:e}),r.onCollideEndCallback&&r.onCollideEndCallback(e),i.onCollideEndCallback&&i.onCollideEndCallback(e)}),e.emit(u.COLLISION_END,t,r,i)})},setBounds:function(e,t,n,r,i,a,o,s,c){return e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=this.scene.sys.scale.width),r===void 0&&(r=this.scene.sys.scale.height),i===void 0&&(i=64),a===void 0&&(a=!0),o===void 0&&(o=!0),s===void 0&&(s=!0),c===void 0&&(c=!0),this.updateWall(a,`left`,e-i,t-i,i,r+i*2),this.updateWall(o,`right`,e+n,t-i,i,r+i*2),this.updateWall(s,`top`,e,t-i,n,i),this.updateWall(c,`bottom`,e,t+r,n,i),this},updateWall:function(e,t,n,r,i,a){var o=this.walls[t];e?(o&&g.remove(this.localWorld,o),n+=i/2,r+=a/2,this.walls[t]=this.create(n,r,i,a,{isStatic:!0,friction:0,frictionStatic:0})):(o&&g.remove(this.localWorld,o),this.walls[t]=null)},createDebugGraphic:function(){var e=this.scene.sys.add.graphics({x:0,y:0});return e.setDepth(Number.MAX_VALUE),this.debugGraphic=e,this.drawDebug=!0,e},disableGravity:function(){return this.localWorld.gravity.x=0,this.localWorld.gravity.y=0,this.localWorld.gravity.scale=0,this},setGravity:function(e,t,n){return e===void 0&&(e=0),t===void 0&&(t=1),n===void 0&&(n=.001),this.localWorld.gravity.x=e,this.localWorld.gravity.y=t,this.localWorld.gravity.scale=n,this},create:function(e,t,n,i,a){var o=r.rectangle(e,t,n,i,a);return g.add(this.localWorld,o),o},add:function(e){return g.add(this.localWorld,e),this},remove:function(e,t){Array.isArray(e)||(e=[e]);for(var n=0;n<e.length;n++){var r=e[n],i=r.body?r.body:r;s.remove(this.localWorld,i,t)}return this},removeConstraint:function(e,t){return s.remove(this.localWorld,e,t),this},convertTilemapLayer:function(e,t){var n=e.layer,r=e.getTilesWithin(0,0,n.width,n.height,{isColliding:!0});return this.convertTiles(r,t),this},convertTiles:function(e,t){if(e.length===0)return this;for(var n=0;n<e.length;n++)new h(this,e[n],t);return this},nextGroup:function(e){return p.nextGroup(e)},nextCategory:function(){return p.nextCategory()},pause:function(){return this.enabled=!1,this.emit(u.PAUSE),this},resume:function(){return this.enabled=!0,this.runner.timeLastTick=o.now(),this.emit(u.RESUME),this},update:function(e){if(!(!this.enabled||!this.autoUpdate)){var t=this.engine,n=this.runner,r=o.now(),i=n.delta,a=0,s=e-n.timeLastTick;if((!s||!n.timeLastTick||s>Math.max(_._maxFrameDelta,n.maxFrameTime))&&(s=n.frameDelta||_._frameDeltaFallback),n.frameDeltaSmoothing){n.frameDeltaHistory.push(s),n.frameDeltaHistory=n.frameDeltaHistory.slice(-n.frameDeltaHistorySize);var l=n.frameDeltaHistory.slice(0).sort(),u=n.frameDeltaHistory.slice(l.length*_._smoothingLowerBound,l.length*_._smoothingUpperBound);s=_._mean(u)||s}n.frameDeltaSnapping&&(s=1e3/Math.round(1e3/s)),n.frameDelta=s,n.timeLastTick=e,n.timeBuffer+=n.frameDelta,n.timeBuffer=o.clamp(n.timeBuffer,0,n.frameDelta+i*_._timeBufferMargin),n.lastUpdatesDeferred=0;for(var d=n.maxUpdates||Math.ceil(n.maxFrameTime/i),f=o.now();i>0&&n.timeBuffer>=i*_._timeBufferMargin;){c.update(t,i),n.timeBuffer-=i,a+=1;var p=o.now()-r,m=o.now()-f,h=p+_._elapsedNextEstimate*m/a;if(a>=d||h>n.maxFrameTime){n.lastUpdatesDeferred=Math.round(Math.max(0,n.timeBuffer/i-_._timeBufferMargin));break}}}},step:function(e){c.update(this.engine,e)},update60Hz:function(){return 1e3/60},update30Hz:function(){return 1e3/30},has:function(e){var t=e.hasOwnProperty(`body`)?e.body:e;return s.get(this.localWorld,t.id,t.type)!==null},getAllBodies:function(){return s.allBodies(this.localWorld)},getAllConstraints:function(){return s.allConstraints(this.localWorld)},getAllComposites:function(){return s.allComposites(this.localWorld)},postUpdate:function(){if(this.drawDebug){var e=this.debugConfig,t=this.engine,n=this.debugGraphic,r=s.allBodies(this.localWorld);this.debugGraphic.clear(),e.showBroadphase&&t.broadphase.controller&&this.renderGrid(t.broadphase,n,e.broadphaseColor,.5),e.showBounds&&this.renderBodyBounds(r,n,e.boundsColor,.5),(e.showBody||e.showStaticBody)&&this.renderBodies(r),e.showJoint&&this.renderJoints(),(e.showAxes||e.showAngleIndicator)&&this.renderBodyAxes(r,n,e.showAxes,e.angleColor,.5),e.showVelocity&&this.renderBodyVelocity(r,n,e.velocityColor,1,2),e.showSeparations&&this.renderSeparations(t.pairs.list,n,e.separationColor),e.showCollisions&&this.renderCollisions(t.pairs.list,n,e.collisionColor)}},renderGrid:function(e,t,n,r){t.lineStyle(1,n,r);for(var i=o.keys(e.buckets),a=0;a<i.length;a++){var s=i[a];if(!(e.buckets[s].length<2)){var c=s.split(/C|R/);t.strokeRect(parseInt(c[1],10)*e.bucketWidth,parseInt(c[2],10)*e.bucketHeight,e.bucketWidth,e.bucketHeight)}}return this},renderSeparations:function(e,t,n){t.lineStyle(1,n,1);for(var r=0;r<e.length;r++){var i=e[r];if(i.isActive){var a=i.collision,o=a.bodyA,s=a.bodyB,c=o.position,l=s.position,u=a.penetration,d=!o.isStatic&&!s.isStatic?4:1;s.isStatic&&(d=0),t.lineBetween(l.x,l.y,l.x-u.x*d,l.y-u.y*d),d=!o.isStatic&&!s.isStatic?4:1,o.isStatic&&(d=0),t.lineBetween(c.x,c.y,c.x-u.x*d,c.y-u.y*d)}}return this},renderCollisions:function(e,t,n){t.lineStyle(1,n,.5),t.fillStyle(n,1);var r,i;for(r=0;r<e.length;r++)if(i=e[r],i.isActive)for(var a=0;a<i.contactCount;a++){var o=i.contacts[a].vertex;o&&t.fillRect(o.x-2,o.y-2,5,5)}for(r=0;r<e.length;r++)if(i=e[r],i.isActive){var s=i.collision,c=i.contacts;if(i.contactCount>0){var l=c[0].vertex.x,u=c[0].vertex.y;i.contactCount===2&&(l=(c[0].vertex.x+c[1].vertex.x)/2,u=(c[0].vertex.y+c[1].vertex.y)/2),s.bodyB===s.supports[0].body||s.bodyA.isStatic?t.lineBetween(l-s.normal.x*8,u-s.normal.y*8,l,u):t.lineBetween(l+s.normal.x*8,u+s.normal.y*8,l,u)}}return this},renderBodyBounds:function(e,t,n,r){t.lineStyle(1,n,r);for(var i=0;i<e.length;i++){var a=e[i];if(a.render.visible){var o=a.bounds;if(o)t.strokeRect(o.min.x,o.min.y,o.max.x-o.min.x,o.max.y-o.min.y);else for(var s=a.parts,c=+(s.length>1);c<s.length;c++){var l=s[c];t.strokeRect(l.bounds.min.x,l.bounds.min.y,l.bounds.max.x-l.bounds.min.x,l.bounds.max.y-l.bounds.min.y)}}}return this},renderBodyAxes:function(e,t,n,r,i){t.lineStyle(1,r,i);for(var a=0;a<e.length;a++){var o=e[a],s=o.parts;if(o.render.visible){var c,l,u;if(n)for(l=+(s.length>1);l<s.length;l++)for(c=s[l],u=0;u<c.axes.length;u++){var d=c.axes[u];t.lineBetween(c.position.x,c.position.y,c.position.x+d.x*20,c.position.y+d.y*20)}else for(l=+(s.length>1);l<s.length;l++)for(c=s[l],u=0;u<c.axes.length;u++)t.lineBetween(c.position.x,c.position.y,(c.vertices[0].x+c.vertices[c.vertices.length-1].x)/2,(c.vertices[0].y+c.vertices[c.vertices.length-1].y)/2)}}return this},renderBodyVelocity:function(e,t,n,r,i){t.lineStyle(i,n,r);for(var a=0;a<e.length;a++){var o=e[a];o.render.visible&&t.lineBetween(o.position.x,o.position.y,o.position.x+(o.position.x-o.positionPrev.x)*2,o.position.y+(o.position.y-o.positionPrev.y)*2)}return this},renderBodies:function(e){for(var t=this.debugGraphic,n=this.debugConfig,r=n.showBody,i=n.showStaticBody,a=n.showSleeping,o=n.showInternalEdges,s=n.showConvexHulls,c=n.renderFill,l=n.renderLine,u=n.staticBodySleepOpacity,d=n.sleepFillColor,f=n.sleepLineColor,p=n.hullColor,m=0;m<e.length;m++){var h=e[m];if(h.render.visible&&!(!i&&h.isStatic||!r&&!h.isStatic)){var g=h.render.lineColor,_=h.render.lineOpacity,v=h.render.lineThickness,y=h.render.fillColor,b=h.render.fillOpacity;a&&h.isSleeping&&(h.isStatic?(_*=u,b*=u):(g=f,y=d)),c||(y=null),l||(g=null),this.renderBody(h,t,o,g,_,v,y,b);var x=h.parts.length;s&&x>1&&this.renderConvexHull(h,t,p,v)}}},renderBody:function(e,t,n,r,i,a,o,s){r===void 0&&(r=null),i===void 0&&(i=null),a===void 0&&(a=1),o===void 0&&(o=null),s===void 0&&(s=null);for(var c=this.debugConfig,l=c.sensorFillColor,u=c.sensorLineColor,d=e.parts,f=d.length,p=+(f>1);p<f;p++){var m=d[p],h=m.render,g=h.opacity;if(!(!h.visible||g===0||m.isSensor&&!c.showSensors)){var _=m.circleRadius;if(t.beginPath(),m.isSensor?(o!==null&&t.fillStyle(l,s*g),r!==null&&t.lineStyle(a,u,i*g)):(o!==null&&t.fillStyle(o,s*g),r!==null&&t.lineStyle(a,r,i*g)),_)t.arc(m.position.x,m.position.y,_,0,2*Math.PI);else{var v=m.vertices,y=v.length;t.moveTo(v[0].x,v[0].y);for(var b=1;b<y;b++){var x=v[b];if(!v[b-1].isInternal||n?t.lineTo(x.x,x.y):t.moveTo(x.x,x.y),b<y&&x.isInternal&&!n){var S=(b+1)%y;t.moveTo(v[S].x,v[S].y)}}t.closePath()}o!==null&&t.fillPath(),r!==null&&t.strokePath()}}if(c.showPositions&&!e.isStatic){var C=e.position.x,w=e.position.y,T=Math.ceil(c.positionSize/2);t.fillStyle(c.positionColor,1),t.fillRect(C-T,w-T,c.positionSize,c.positionSize)}return this},renderConvexHull:function(e,t,n,r){if(r===void 0&&(r=1),e.parts.length>1){var i=e.vertices;t.lineStyle(r,n),t.beginPath(),t.moveTo(i[0].x,i[0].y);for(var a=1;a<i.length;a++)t.lineTo(i[a].x,i[a].y);t.lineTo(i[0].x,i[0].y),t.strokePath()}return this},renderJoints:function(){for(var e=this.debugGraphic,t=s.allConstraints(this.localWorld),n=0;n<t.length;n++){var r=t[n].render,i=r.lineColor,a=r.lineOpacity,o=r.lineThickness,c=r.pinSize,l=r.anchorColor,u=r.anchorSize;this.renderConstraint(t[n],e,i,a,o,c,l,u)}},renderConstraint:function(e,t,n,r,i,a,s,c){var l=e.render;if(!l.visible||!e.pointA||!e.pointB)return this;t.lineStyle(i,n,r);var u=e.bodyA,d=e.bodyB,f=u?v.add(u.position,e.pointA):e.pointA,p;if(l.type===`pin`)t.strokeCircle(f.x,f.y,a);else{if(p=d?v.add(d.position,e.pointB):e.pointB,t.beginPath(),t.moveTo(f.x,f.y),l.type===`spring`)for(var m=v.sub(p,f),h=v.perp(v.normalise(m)),g=Math.ceil(o.clamp(e.length/5,12,20)),_,y=1;y<g;y+=1)_=y%2==0?1:-1,t.lineTo(f.x+m.x*(y/g)+h.x*_*4,f.y+m.y*(y/g)+h.y*_*4);t.lineTo(p.x,p.y)}return t.strokePath(),l.anchors&&c>0&&(t.fillStyle(s),t.fillCircle(f.x,f.y,c),t.fillCircle(p.x,p.y,c)),this},resetCollisionIDs:function(){return i._nextCollidingGroupId=1,i._nextNonCollidingGroupId=-1,i._nextCategory=1,this},shutdown:function(){m.off(this.engine),this.removeAllListeners(),g.clear(this.localWorld,!1),c.clear(this.engine),this.drawDebug&&this.debugGraphic.destroy()},destroy:function(){this.shutdown()}})},70410(e){e.exports={setBounce:function(e){return this.body.restitution=e,this}}},66968(e){e.exports={setCollisionCategory:function(e){return this.body.collisionFilter.category=e,this},setCollisionGroup:function(e){return this.body.collisionFilter.group=e,this},setCollidesWith:function(e){var t=0;if(!Array.isArray(e))t=e;else for(var n=0;n<e.length;n++)t|=e[n];return this.body.collisionFilter.mask=t,this},setOnCollide:function(e){return this.body.onCollideCallback=e,this},setOnCollideEnd:function(e){return this.body.onCollideEndCallback=e,this},setOnCollideActive:function(e){return this.body.onCollideActiveCallback=e,this},setOnCollideWith:function(e,t){Array.isArray(e)||(e=[e]);for(var n=0;n<e.length;n++){var r=e[n].hasOwnProperty(`body`)?e[n].body:e[n];this.body.setOnCollideWith(r,t)}return this}}},51607(e,t,n){var r=n(22562);e.exports={applyForce:function(e){return this._tempVec2.set(this.body.position.x,this.body.position.y),r.applyForce(this.body,this._tempVec2,e),this},applyForceFrom:function(e,t){return r.applyForce(this.body,e,t),this},thrust:function(e){var t=this.body.angle;return this._tempVec2.set(e*Math.cos(t),e*Math.sin(t)),r.applyForce(this.body,{x:this.body.position.x,y:this.body.position.y},this._tempVec2),this},thrustLeft:function(e){var t=this.body.angle-Math.PI/2;return this._tempVec2.set(e*Math.cos(t),e*Math.sin(t)),r.applyForce(this.body,{x:this.body.position.x,y:this.body.position.y},this._tempVec2),this},thrustRight:function(e){var t=this.body.angle+Math.PI/2;return this._tempVec2.set(e*Math.cos(t),e*Math.sin(t)),r.applyForce(this.body,{x:this.body.position.x,y:this.body.position.y},this._tempVec2),this},thrustBack:function(e){var t=this.body.angle-Math.PI;return this._tempVec2.set(e*Math.cos(t),e*Math.sin(t)),r.applyForce(this.body,{x:this.body.position.x,y:this.body.position.y},this._tempVec2),this}}},5436(e){e.exports={setFriction:function(e,t,n){return this.body.friction=e,t!==void 0&&(this.body.frictionAir=t),n!==void 0&&(this.body.frictionStatic=n),this},setFrictionAir:function(e){return this.body.frictionAir=e,this},setFrictionStatic:function(e){return this.body.frictionStatic=e,this}}},39858(e){e.exports={setIgnoreGravity:function(e){return this.body.ignoreGravity=e,this}}},37302(e,t,n){var r=n(22562),i=n(26099);e.exports={setMass:function(e){return r.setMass(this.body,e),this},setDensity:function(e){return r.setDensity(this.body,e),this},centerOfMass:{get:function(){return new i(this.body.centerOfMass.x,this.body.centerOfMass.y)}}}},39132(e){e.exports={setSensor:function(e){return this.body.isSensor=e,this},isSensor:function(){return this.body.isSensor}}},57772(e,t,n){var r=n(66280),i=n(22562),a=n(43855),o=n(95540),s=n(19496),c=n(85791),l=n(41598);e.exports={setRectangle:function(e,t,n){return this.setBody({type:`rectangle`,width:e,height:t},n)},setCircle:function(e,t){return this.setBody({type:`circle`,radius:e},t)},setPolygon:function(e,t,n){return this.setBody({type:`polygon`,sides:t,radius:e},n)},setTrapezoid:function(e,t,n,r){return this.setBody({type:`trapezoid`,width:e,height:t,slope:n},r)},setExistingBody:function(e,t){t===void 0&&(t=!0),this.body&&this.world.remove(this.body,!0),this.body=e;for(var n=0;n<e.parts.length;n++)e.parts[n].gameObject=this;var r=this;if(e.destroy=function(){r.world.remove(r.body,!0),r.body.gameObject=null},t&&(this.world.has(e)&&this.world.remove(e,!0),this.world.add(e)),this._originComponent){var i=e.render.sprite.xOffset,o=e.render.sprite.yOffset,s=e.centerOfMass.x,c=e.centerOfMass.y;if(a(s,.5)&&a(c,.5))this.setOrigin(i+.5,o+.5);else{var l=e.centerOffset.x,u=e.centerOffset.y;this.setOrigin(i+l/this.displayWidth,o+u/this.displayHeight)}}return this},setBody:function(e,t){if(!e)return this;var n;typeof e==`string`&&(e={type:e});var a=o(e,`type`,`rectangle`),u=o(e,`x`,this._tempVec2.x),d=o(e,`y`,this._tempVec2.y),f=o(e,`width`,this.width),p=o(e,`height`,this.height);switch(a){case`rectangle`:n=r.rectangle(u,d,f,p,t);break;case`circle`:var m=o(e,`radius`,Math.max(f,p)/2),h=o(e,`maxSides`,25);n=r.circle(u,d,m,t,h);break;case`trapezoid`:var g=o(e,`slope`,.5);n=r.trapezoid(u,d,f,p,g,t);break;case`polygon`:var _=o(e,`sides`,5),v=o(e,`radius`,Math.max(f,p)/2);n=r.polygon(u,d,_,v,t);break;case`fromVertices`:case`fromVerts`:var y=o(e,`verts`,null);if(y)if(typeof y==`string`&&(y=l.fromPath(y)),this.body&&!this.body.hasOwnProperty(`temp`))i.setVertices(this.body,y),n=this.body;else{var b=o(e,`flagInternal`,!1),x=o(e,`removeCollinear`,.01),S=o(e,`minimumArea`,10);n=r.fromVertices(u,d,y,t,b,x,S)}break;case`fromPhysicsEditor`:n=s.parseBody(u,d,e,t);break;case`fromPhysicsTracer`:n=c.parseBody(u,d,e,t);break}return n&&this.setExistingBody(n,e.addToWorld),this}}},38083(e,t,n){var r=n(1121),i=n(53614),a=n(35810);e.exports={setToSleep:function(){return i.set(this.body,!0),this},setAwake:function(){return i.set(this.body,!1),this},setSleepThreshold:function(e){return e===void 0&&(e=60),this.body.sleepThreshold=e,this},setSleepEvents:function(e,t){return this.setSleepStartEvent(e),this.setSleepEndEvent(t),this},setSleepStartEvent:function(e){if(e){var t=this.world;a.on(this.body,`sleepStart`,function(e){t.emit(r.SLEEP_START,e,this)})}else a.off(this.body,`sleepStart`);return this},setSleepEndEvent:function(e){if(e){var t=this.world;a.on(this.body,`sleepEnd`,function(e){t.emit(r.SLEEP_END,e,this)})}else a.off(this.body,`sleepEnd`);return this}}},90556(e,t,n){var r=n(22562);e.exports={setStatic:function(e){return r.setStatic(this.body,e),this},isStatic:function(){return this.body.isStatic}}},85436(e,t,n){var r=n(22562),i=n(36383),a=n(86554),o=n(30954),s=4;e.exports={x:{get:function(){return this.body.position.x},set:function(e){this._tempVec2.set(e,this.y),r.setPosition(this.body,this._tempVec2)}},y:{get:function(){return this.body.position.y},set:function(e){this._tempVec2.set(this.x,e),r.setPosition(this.body,this._tempVec2)}},scale:{get:function(){return(this._scaleX+this._scaleY)/2},set:function(e){this.setScale(e,e)}},scaleX:{get:function(){return this._scaleX},set:function(e){var t=1/this._scaleX,n=1/this._scaleY;this._scaleX=e,this._scaleX===0?this.renderFlags&=~s:this.renderFlags|=s,r.scale(this.body,t,n),r.scale(this.body,e,this._scaleY)}},scaleY:{get:function(){return this._scaleY},set:function(e){var t=1/this._scaleX,n=1/this._scaleY;this._scaleY=e,this._scaleY===0?this.renderFlags&=~s:this.renderFlags|=s,r.scale(this.body,t,n),r.scale(this.body,this._scaleX,e)}},angle:{get:function(){return o(this.body.angle*i.RAD_TO_DEG)},set:function(e){this.rotation=o(e)*i.DEG_TO_RAD}},rotation:{get:function(){return this.body.angle},set:function(e){this._rotation=a(e),r.setAngle(this.body,this._rotation)}},setPosition:function(e,t){return e===void 0&&(e=0),t===void 0&&(t=e),this._tempVec2.set(e,t),r.setPosition(this.body,this._tempVec2),this},setRotation:function(e){return e===void 0&&(e=0),this._rotation=a(e),r.setAngle(this.body,e),this},setFixedRotation:function(){return r.setInertia(this.body,1/0),this},setAngle:function(e){return e===void 0&&(e=0),this.angle=e,r.setAngle(this.body,this.rotation),this},setScale:function(e,t,n){e===void 0&&(e=1),t===void 0&&(t=e);var i=1/this._scaleX,a=1/this._scaleY;return this._scaleX=e,this._scaleY=t,r.scale(this.body,i,a,n),r.scale(this.body,e,t,n),this}}},42081(e,t,n){var r=n(22562);e.exports={setVelocityX:function(e){return this._tempVec2.set(e,this.body.velocity.y),r.setVelocity(this.body,this._tempVec2),this},setVelocityY:function(e){return this._tempVec2.set(this.body.velocity.x,e),r.setVelocity(this.body,this._tempVec2),this},setVelocity:function(e,t){return this._tempVec2.set(e,t),r.setVelocity(this.body,this._tempVec2),this},getVelocity:function(){return r.getVelocity(this.body)},setAngularVelocity:function(e){return r.setAngularVelocity(this.body,e),this},getAngularVelocity:function(){return r.getAngularVelocity(this.body)},setAngularSpeed:function(e){return r.setAngularSpeed(this.body,e),this},getAngularSpeed:function(){return r.getAngularSpeed(this.body)}}},9503(e,t,n){e.exports={Bounce:n(70410),Collision:n(66968),Force:n(51607),Friction:n(5436),Gravity:n(39858),Mass:n(37302),Sensor:n(39132),SetBody:n(57772),Sleep:n(38083),Static:n(90556),Transform:n(85436),Velocity:n(42081)}},85608(e){e.exports=`afteradd`},1213(e){e.exports=`afterremove`},25968(e){e.exports=`afterupdate`},67205(e){e.exports=`beforeadd`},39438(e){e.exports=`beforeremove`},44823(e){e.exports=`beforeupdate`},92593(e){e.exports=`collisionactive`},60128(e){e.exports=`collisionend`},76861(e){e.exports=`collisionstart`},92362(e){e.exports=`dragend`},76408(e){e.exports=`drag`},93971(e){e.exports=`dragstart`},5656(e){e.exports=`pause`},47861(e){e.exports=`resume`},79099(e){e.exports=`sleepend`},35906(e){e.exports=`sleepstart`},1121(e,t,n){e.exports={AFTER_ADD:n(85608),AFTER_REMOVE:n(1213),AFTER_UPDATE:n(25968),BEFORE_ADD:n(67205),BEFORE_REMOVE:n(39438),BEFORE_UPDATE:n(44823),COLLISION_ACTIVE:n(92593),COLLISION_END:n(60128),COLLISION_START:n(76861),DRAG_END:n(92362),DRAG:n(76408),DRAG_START:n(93971),PAUSE:n(5656),RESUME:n(47861),SLEEP_END:n(79099),SLEEP_START:n(35906)}},3875(e,t,n){e.exports={BodyBounds:n(68174),Components:n(9503),Events:n(1121),Factory:n(28137),MatterGameObject:n(75803),Image:n(23181),Matter:n(19933),MatterPhysics:n(42045),PolyDecomp:n(55973),Sprite:n(34803),TileBody:n(73834),PhysicsEditorParser:n(19496),PhysicsJSONParser:n(85791),PointerConstraint:n(98713),World:n(68243)}},22562(e,t,n){var r={};e.exports=r;var i=n(41598),a=n(31725),o=n(53614),s=n(53402),c=n(15647),l=n(66615);(function(){r._timeCorrection=!0,r._inertiaScale=4,r._nextCollidingGroupId=1,r._nextNonCollidingGroupId=-1,r._nextCategory=1,r._baseDelta=1e3/60,r.create=function(t){var n={id:s.nextId(),type:`body`,label:`Body`,parts:[],plugin:{},attractors:t.attractors||[],wrapBounds:null,angle:0,vertices:null,position:{x:0,y:0},force:{x:0,y:0},torque:0,positionImpulse:{x:0,y:0},constraintImpulse:{x:0,y:0,angle:0},totalContacts:0,speed:0,angularSpeed:0,velocity:{x:0,y:0},angularVelocity:0,isSensor:!1,isStatic:!1,isSleeping:!1,motion:0,sleepThreshold:60,density:.001,restitution:0,friction:.1,frictionStatic:.5,frictionAir:.01,collisionFilter:{category:1,mask:4294967295,group:0},slop:.05,timeScale:1,events:null,bounds:null,chamfer:null,circleRadius:0,positionPrev:null,anglePrev:0,parent:null,axes:null,area:0,mass:0,inverseMass:0,inertia:0,deltaTime:1e3/60,inverseInertia:0,_original:null,render:{visible:!0,opacity:1,sprite:{xOffset:0,yOffset:0},fillColor:null,fillOpacity:null,lineColor:null,lineOpacity:null,lineThickness:null},gameObject:null,scale:{x:1,y:1},centerOfMass:{x:0,y:0},centerOffset:{x:0,y:0},gravityScale:{x:1,y:1},ignoreGravity:!1,ignorePointer:!1,onCollideCallback:null,onCollideEndCallback:null,onCollideActiveCallback:null,onCollideWith:{}};!t.hasOwnProperty(`position`)&&t.hasOwnProperty(`vertices`)?t.position=i.centre(t.vertices):t.hasOwnProperty(`vertices`)||(n.vertices=i.fromPath(`L 0 0 L 40 0 L 40 40 L 0 40`));var r=s.extend(n,t);return e(r,t),r.setOnCollideWith=function(e,t){return t?this.onCollideWith[e.id]=t:delete this.onCollideWith[e.id],this},r},r.nextGroup=function(e){return e?r._nextNonCollidingGroupId--:r._nextCollidingGroupId++},r.nextCategory=function(){return r._nextCategory<<=1,r._nextCategory};var e=function(e,t){if(t||={},r.set(e,{bounds:e.bounds||c.create(e.vertices),positionPrev:e.positionPrev||a.clone(e.position),anglePrev:e.anglePrev||e.angle,vertices:e.vertices,parts:e.parts||[e],isStatic:e.isStatic,isSleeping:e.isSleeping,parent:e.parent||e}),i.rotate(e.vertices,e.angle,e.position),l.rotate(e.axes,e.angle),c.update(e.bounds,e.vertices,e.velocity),r.set(e,{axes:t.axes||e.axes,area:t.area||e.area,mass:t.mass||e.mass,inertia:t.inertia||e.inertia}),e.parts.length===1){var n=e.bounds,o=e.centerOfMass,s=e.centerOffset,u=n.max.x-n.min.x,d=n.max.y-n.min.y;o.x=-(n.min.x-e.position.x)/u,o.y=-(n.min.y-e.position.y)/d,s.x=u*o.x,s.y=d*o.y}};r.set=function(e,t,n){for(var i in typeof t==`string`&&(i=t,t={},t[i]=n),t)if(Object.prototype.hasOwnProperty.call(t,i))switch(n=t[i],i){case`isStatic`:r.setStatic(e,n);break;case`isSleeping`:o.set(e,n);break;case`mass`:r.setMass(e,n);break;case`density`:r.setDensity(e,n);break;case`inertia`:r.setInertia(e,n);break;case`vertices`:r.setVertices(e,n);break;case`position`:r.setPosition(e,n);break;case`angle`:r.setAngle(e,n);break;case`velocity`:r.setVelocity(e,n);break;case`angularVelocity`:r.setAngularVelocity(e,n);break;case`speed`:r.setSpeed(e,n);break;case`angularSpeed`:r.setAngularSpeed(e,n);break;case`parts`:r.setParts(e,n);break;case`centre`:r.setCentre(e,n);break;default:e[i]=n}},r.setStatic=function(e,t){for(var n=0;n<e.parts.length;n++){var r=e.parts[n];t?(r.isStatic||(r._original={restitution:r.restitution,friction:r.friction,mass:r.mass,inertia:r.inertia,density:r.density,inverseMass:r.inverseMass,inverseInertia:r.inverseInertia}),r.restitution=0,r.friction=1,r.mass=r.inertia=r.density=1/0,r.inverseMass=r.inverseInertia=0,r.positionPrev.x=r.position.x,r.positionPrev.y=r.position.y,r.anglePrev=r.angle,r.angularVelocity=0,r.speed=0,r.angularSpeed=0,r.motion=0):r._original&&=(r.restitution=r._original.restitution,r.friction=r._original.friction,r.mass=r._original.mass,r.inertia=r._original.inertia,r.density=r._original.density,r.inverseMass=r._original.inverseMass,r.inverseInertia=r._original.inverseInertia,null),r.isStatic=t}},r.setMass=function(e,t){e.inertia=e.inertia/(e.mass/6)*(t/6),e.inverseInertia=1/e.inertia,e.mass=t,e.inverseMass=1/e.mass,e.density=e.mass/e.area},r.setDensity=function(e,t){r.setMass(e,t*e.area),e.density=t},r.setInertia=function(e,t){e.inertia=t,e.inverseInertia=1/e.inertia},r.setVertices=function(e,t){t[0].body===e?e.vertices=t:e.vertices=i.create(t,e),e.axes=l.fromVertices(e.vertices),e.area=i.area(e.vertices),r.setMass(e,e.density*e.area);var n=i.centre(e.vertices);i.translate(e.vertices,n,-1),r.setInertia(e,r._inertiaScale*i.inertia(e.vertices,e.mass)),i.translate(e.vertices,e.position),c.update(e.bounds,e.vertices,e.velocity)},r.setParts=function(e,t,n){var a;for(t=t.slice(0),e.parts.length=0,e.parts.push(e),e.parent=e,a=0;a<t.length;a++){var o=t[a];o!==e&&(o.parent=e,e.parts.push(o))}if(e.parts.length!==1){if(n=n===void 0?!0:n,n){var s=[];for(a=0;a<t.length;a++)s=s.concat(t[a].vertices);i.clockwiseSort(s);var l=i.hull(s),u=i.centre(l);r.setVertices(e,l),i.translate(e.vertices,u)}var d=r._totalProperties(e),f=d.centre.x,p=d.centre.y,m=e.bounds,h=e.centerOfMass,g=e.centerOffset;c.update(m,e.vertices,e.velocity),h.x=-(m.min.x-f)/(m.max.x-m.min.x),h.y=-(m.min.y-p)/(m.max.y-m.min.y),g.x=f,g.y=p,e.area=d.area,e.parent=e,e.position.x=f,e.position.y=p,e.positionPrev.x=f,e.positionPrev.y=p,r.setMass(e,d.mass),r.setInertia(e,d.inertia),r.setPosition(e,d.centre)}},r.setCentre=function(e,t,n){n?(e.positionPrev.x+=t.x,e.positionPrev.y+=t.y,e.position.x+=t.x,e.position.y+=t.y):(e.positionPrev.x=t.x-(e.position.x-e.positionPrev.x),e.positionPrev.y=t.y-(e.position.y-e.positionPrev.y),e.position.x=t.x,e.position.y=t.y)},r.setPosition=function(e,t,n){var r=a.sub(t,e.position);n?(e.positionPrev.x=e.position.x,e.positionPrev.y=e.position.y,e.velocity.x=r.x,e.velocity.y=r.y,e.speed=a.magnitude(r)):(e.positionPrev.x+=r.x,e.positionPrev.y+=r.y);for(var o=0;o<e.parts.length;o++){var s=e.parts[o];s.position.x+=r.x,s.position.y+=r.y,i.translate(s.vertices,r),c.update(s.bounds,s.vertices,e.velocity)}},r.setAngle=function(e,t,n){var r=t-e.angle;n?(e.anglePrev=e.angle,e.angularVelocity=r,e.angularSpeed=Math.abs(r)):e.anglePrev+=r;for(var o=0;o<e.parts.length;o++){var s=e.parts[o];s.angle+=r,i.rotate(s.vertices,r,e.position),l.rotate(s.axes,r),c.update(s.bounds,s.vertices,e.velocity),o>0&&a.rotateAbout(s.position,r,e.position,s.position)}},r.setVelocity=function(e,t){var n=e.deltaTime/r._baseDelta;e.positionPrev.x=e.position.x-t.x*n,e.positionPrev.y=e.position.y-t.y*n,e.velocity.x=(e.position.x-e.positionPrev.x)/n,e.velocity.y=(e.position.y-e.positionPrev.y)/n,e.speed=a.magnitude(e.velocity)},r.getVelocity=function(e){var t=r._baseDelta/e.deltaTime;return{x:(e.position.x-e.positionPrev.x)*t,y:(e.position.y-e.positionPrev.y)*t}},r.getSpeed=function(e){return a.magnitude(r.getVelocity(e))},r.setSpeed=function(e,t){r.setVelocity(e,a.mult(a.normalise(r.getVelocity(e)),t))},r.setAngularVelocity=function(e,t){var n=e.deltaTime/r._baseDelta;e.anglePrev=e.angle-t*n,e.angularVelocity=(e.angle-e.anglePrev)/n,e.angularSpeed=Math.abs(e.angularVelocity)},r.getAngularVelocity=function(e){return(e.angle-e.anglePrev)*r._baseDelta/e.deltaTime},r.getAngularSpeed=function(e){return Math.abs(r.getAngularVelocity(e))},r.setAngularSpeed=function(e,t){r.setAngularVelocity(e,s.sign(r.getAngularVelocity(e))*t)},r.translate=function(e,t,n){r.setPosition(e,a.add(e.position,t),n)},r.rotate=function(e,t,n,i){if(!n)r.setAngle(e,e.angle+t,i);else{var a=Math.cos(t),o=Math.sin(t),s=e.position.x-n.x,c=e.position.y-n.y;r.setPosition(e,{x:n.x+(s*a-c*o),y:n.y+(s*o+c*a)},i),r.setAngle(e,e.angle+t,i)}},r.scale=function(e,t,n,a){var o=0,s=0;a||=e.position;for(var u=e.inertia===1/0,d=0;d<e.parts.length;d++){var f=e.parts[d];f.scale.x=t,f.scale.y=n,i.scale(f.vertices,t,n,a),f.axes=l.fromVertices(f.vertices),f.area=i.area(f.vertices),r.setMass(f,e.density*f.area),i.translate(f.vertices,{x:-f.position.x,y:-f.position.y}),r.setInertia(f,r._inertiaScale*i.inertia(f.vertices,f.mass)),i.translate(f.vertices,{x:f.position.x,y:f.position.y}),d>0&&(o+=f.area,s+=f.inertia),f.position.x=a.x+(f.position.x-a.x)*t,f.position.y=a.y+(f.position.y-a.y)*n,c.update(f.bounds,f.vertices,e.velocity)}e.parts.length>1&&(e.area=o,e.isStatic||(r.setMass(e,e.density*o),r.setInertia(e,s))),e.circleRadius&&(t===n?e.circleRadius*=t:e.circleRadius=null),u&&r.setInertia(e,1/0)},r.update=function(e,t){t=(t===void 0?1e3/60:t)*e.timeScale;var n=t*t,o=r._timeCorrection?t/(e.deltaTime||t):1,u=1-e.frictionAir*(t/s._baseDelta),d=(e.position.x-e.positionPrev.x)*o,f=(e.position.y-e.positionPrev.y)*o;e.velocity.x=d*u+e.force.x/e.mass*n,e.velocity.y=f*u+e.force.y/e.mass*n,e.positionPrev.x=e.position.x,e.positionPrev.y=e.position.y,e.position.x+=e.velocity.x,e.position.y+=e.velocity.y,e.deltaTime=t,e.angularVelocity=(e.angle-e.anglePrev)*u*o+e.torque/e.inertia*n,e.anglePrev=e.angle,e.angle+=e.angularVelocity,e.speed=a.magnitude(e.velocity),e.angularSpeed=Math.abs(e.angularVelocity);for(var p=0;p<e.parts.length;p++){var m=e.parts[p];i.translate(m.vertices,e.velocity),p>0&&(m.position.x+=e.velocity.x,m.position.y+=e.velocity.y),e.angularVelocity!==0&&(i.rotate(m.vertices,e.angularVelocity,e.position),l.rotate(m.axes,e.angularVelocity),p>0&&a.rotateAbout(m.position,e.angularVelocity,e.position,m.position)),c.update(m.bounds,m.vertices,e.velocity)}},r.updateVelocities=function(e){var t=r._baseDelta/e.deltaTime,n=e.velocity;n.x=(e.position.x-e.positionPrev.x)*t,n.y=(e.position.y-e.positionPrev.y)*t,e.speed=Math.sqrt(n.x*n.x+n.y*n.y),e.angularVelocity=(e.angle-e.anglePrev)*t,e.angularSpeed=Math.abs(e.angularVelocity)},r.applyForce=function(e,t,n){var r={x:t.x-e.position.x,y:t.y-e.position.y};e.force.x+=n.x,e.force.y+=n.y,e.torque+=r.x*n.y-r.y*n.x},r._totalProperties=function(e){for(var t={mass:0,area:0,inertia:0,centre:{x:0,y:0}},n=e.parts.length===1?0:1;n<e.parts.length;n++){var r=e.parts[n],i=r.mass===1/0?1:r.mass;t.mass+=i,t.area+=r.area,t.inertia+=r.inertia,t.centre=a.add(t.centre,a.mult(r.position,i))}return t.centre=a.div(t.centre,t.mass),t},r.wrap=function(e,t){var n=c.wrap(e.bounds,t);return n&&r.translate(e,n),n}})()},69351(e,t,n){var r={};e.exports=r;var i=n(35810),a=n(53402),o=n(15647),s=n(22562);(function(){r.create=function(e){return a.extend({id:a.nextId(),type:`composite`,parent:null,isModified:!1,bodies:[],constraints:[],composites:[],label:`Composite`,plugin:{},wrapBounds:null,cache:{allBodies:null,allConstraints:null,allComposites:null}},e)},r.setModified=function(e,t,n,a){if(i.trigger(e,`compositeModified`,e),e.isModified=t,t&&e.cache&&(e.cache.allBodies=null,e.cache.allConstraints=null,e.cache.allComposites=null),n&&e.parent&&r.setModified(e.parent,t,n,a),a)for(var o=0;o<e.composites.length;o++){var s=e.composites[o];r.setModified(s,t,n,a)}},r.add=function(e,t){var n=[].concat(t);i.trigger(e,`beforeAdd`,{object:t});for(var o=0;o<n.length;o++){var s=n[o];switch(s.type){case`body`:if(s.parent!==s){a.warn(`Composite.add: skipped adding a compound body part (you must add its parent instead)`);break}r.addBody(e,s);break;case`constraint`:r.addConstraint(e,s);break;case`composite`:r.addComposite(e,s);break;case`mouseConstraint`:r.addConstraint(e,s.constraint);break}}return i.trigger(e,`afterAdd`,{object:t}),e},r.remove=function(e,t,n){var a=[].concat(t);i.trigger(e,`beforeRemove`,{object:t});for(var o=0;o<a.length;o++){var s=a[o];switch(s.type){case`body`:r.removeBody(e,s,n);break;case`constraint`:r.removeConstraint(e,s,n);break;case`composite`:r.removeComposite(e,s,n);break;case`mouseConstraint`:r.removeConstraint(e,s.constraint);break}}return i.trigger(e,`afterRemove`,{object:t}),e},r.addComposite=function(e,t){return e.composites.push(t),t.parent=e,r.setModified(e,!0,!0,!1),e},r.removeComposite=function(e,t,n){var i=a.indexOf(e.composites,t);if(i!==-1){var o=r.allBodies(t);r.removeCompositeAt(e,i);for(var s=0;s<o.length;s++)o[s].sleepCounter=0}if(n)for(var s=0;s<e.composites.length;s++)r.removeComposite(e.composites[s],t,!0);return e},r.removeCompositeAt=function(e,t){return e.composites.splice(t,1),r.setModified(e,!0,!0,!1),e},r.addBody=function(e,t){return e.bodies.push(t),r.setModified(e,!0,!0,!1),e},r.removeBody=function(e,t,n){var i=a.indexOf(e.bodies,t);if(i!==-1&&(r.removeBodyAt(e,i),t.sleepCounter=0),n)for(var o=0;o<e.composites.length;o++)r.removeBody(e.composites[o],t,!0);return e},r.removeBodyAt=function(e,t){return e.bodies.splice(t,1),r.setModified(e,!0,!0,!1),e},r.addConstraint=function(e,t){return e.constraints.push(t),r.setModified(e,!0,!0,!1),e},r.removeConstraint=function(e,t,n){var i=a.indexOf(e.constraints,t);if(i!==-1&&r.removeConstraintAt(e,i),n)for(var o=0;o<e.composites.length;o++)r.removeConstraint(e.composites[o],t,!0);return e},r.removeConstraintAt=function(e,t){return e.constraints.splice(t,1),r.setModified(e,!0,!0,!1),e},r.clear=function(e,t,n){if(n)for(var i=0;i<e.composites.length;i++)r.clear(e.composites[i],t,!0);return t?e.bodies=e.bodies.filter(function(e){return e.isStatic}):e.bodies.length=0,e.constraints.length=0,e.composites.length=0,r.setModified(e,!0,!0,!1),e},r.allBodies=function(e){if(e.cache&&e.cache.allBodies)return e.cache.allBodies;for(var t=[].concat(e.bodies),n=0;n<e.composites.length;n++)t=t.concat(r.allBodies(e.composites[n]));return e.cache&&(e.cache.allBodies=t),t},r.allConstraints=function(e){if(e.cache&&e.cache.allConstraints)return e.cache.allConstraints;for(var t=[].concat(e.constraints),n=0;n<e.composites.length;n++)t=t.concat(r.allConstraints(e.composites[n]));return e.cache&&(e.cache.allConstraints=t),t},r.allComposites=function(e){if(e.cache&&e.cache.allComposites)return e.cache.allComposites;for(var t=[].concat(e.composites),n=0;n<e.composites.length;n++)t=t.concat(r.allComposites(e.composites[n]));return e.cache&&(e.cache.allComposites=t),t},r.get=function(e,t,n){var i,a;switch(n){case`body`:i=r.allBodies(e);break;case`constraint`:i=r.allConstraints(e);break;case`composite`:i=r.allComposites(e).concat(e);break}return i?(a=i.filter(function(e){return e.id.toString()===t.toString()}),a.length===0?null:a[0]):null},r.move=function(e,t,n){return r.remove(e,t),r.add(n,t),e},r.rebase=function(e){for(var t=r.allBodies(e).concat(r.allConstraints(e)).concat(r.allComposites(e)),n=0;n<t.length;n++)t[n].id=a.nextId();return e},r.translate=function(e,t,n){for(var i=n?r.allBodies(e):e.bodies,a=0;a<i.length;a++)s.translate(i[a],t);return e},r.rotate=function(e,t,n,i){for(var a=Math.cos(t),o=Math.sin(t),c=i?r.allBodies(e):e.bodies,l=0;l<c.length;l++){var u=c[l],d=u.position.x-n.x,f=u.position.y-n.y;s.setPosition(u,{x:n.x+(d*a-f*o),y:n.y+(d*o+f*a)}),s.rotate(u,t)}return e},r.scale=function(e,t,n,i,a){for(var o=a?r.allBodies(e):e.bodies,c=0;c<o.length;c++){var l=o[c],u=l.position.x-i.x,d=l.position.y-i.y;s.setPosition(l,{x:i.x+u*t,y:i.y+d*n}),s.scale(l,t,n)}return e},r.bounds=function(e){for(var t=r.allBodies(e),n=[],i=0;i<t.length;i+=1){var a=t[i];n.push(a.bounds.min,a.bounds.max)}return o.create(n)},r.wrap=function(e,t){var n=o.wrap(r.bounds(e),t);return n&&r.translate(e,n),n}})()},4372(e,t,n){var r={};e.exports=r;var i=n(69351);(function(){r.create=i.create,r.add=i.add,r.remove=i.remove,r.clear=i.clear,r.addComposite=i.addComposite,r.addBody=i.addBody,r.addConstraint=i.addConstraint})()},52284(e,t,n){var r={};e.exports=r;var i=n(41598),a=n(4506);(function(){var e=[],t={overlap:0,axis:null},n={overlap:0,axis:null};r.create=function(e,t){return{pair:null,collided:!1,bodyA:e,bodyB:t,parentA:e.parent,parentB:t.parent,depth:0,normal:{x:0,y:0},tangent:{x:0,y:0},penetration:{x:0,y:0},supports:[null,null],supportCount:0}},r.collides=function(e,o,s){if(r._overlapAxes(t,e.vertices,o.vertices,e.axes),t.overlap<=0||(r._overlapAxes(n,o.vertices,e.vertices,o.axes),n.overlap<=0))return null;var c=s&&s.table[a.id(e,o)],l;c?l=c.collision:(l=r.create(e,o),l.collided=!0,l.bodyA=e.id<o.id?e:o,l.bodyB=e.id<o.id?o:e,l.parentA=l.bodyA.parent,l.parentB=l.bodyB.parent),e=l.bodyA,o=l.bodyB;var u=t.overlap<n.overlap?t:n,d=l.normal,f=l.tangent,p=l.penetration,m=l.supports,h=u.overlap,g=u.axis,_=g.x,v=g.y,y=o.position.x-e.position.x,b=o.position.y-e.position.y;_*y+v*b>=0&&(_=-_,v=-v),d.x=_,d.y=v,f.x=-v,f.y=_,p.x=_*h,p.y=v*h,l.depth=h;var x=r._findSupports(e,o,d,1),S=0;if(i.contains(e.vertices,x[0])&&(m[S++]=x[0]),i.contains(e.vertices,x[1])&&(m[S++]=x[1]),S<2){var C=r._findSupports(o,e,d,-1);i.contains(o.vertices,C[0])&&(m[S++]=C[0]),S<2&&i.contains(o.vertices,C[1])&&(m[S++]=C[1])}return S===0&&(m[S++]=x[0]),l.supportCount=S,l},r._overlapAxes=function(e,t,n,r){var i=t.length,a=n.length,o=t[0].x,s=t[0].y,c=n[0].x,l=n[0].y,u=r.length,d=Number.MAX_VALUE,f=0,p,m,h,g,_,v;for(_=0;_<u;_++){var y=r[_],b=y.x,x=y.y,S=o*b+s*x,C=c*b+l*x,w=S,T=C;for(v=1;v<i;v+=1)g=t[v].x*b+t[v].y*x,g>w?w=g:g<S&&(S=g);for(v=1;v<a;v+=1)g=n[v].x*b+n[v].y*x,g>T?T=g:g<C&&(C=g);if(m=w-C,h=T-S,p=m<h?m:h,p<d&&(d=p,f=_,p<=0))break}e.axis=r[f],e.overlap=d},r._findSupports=function(t,n,r,i){var a=n.vertices,o=a.length,s=t.position.x,c=t.position.y,l=r.x*i,u=r.y*i,d=a[0],f=d,p=l*(s-f.x)+u*(c-f.y),m,h,g;for(g=1;g<o;g+=1)f=a[g],h=l*(s-f.x)+u*(c-f.y),h<p&&(p=h,d=f);return m=a[(o+d.index-1)%o],p=l*(s-m.x)+u*(c-m.y),f=a[(d.index+1)%o],l*(s-f.x)+u*(c-f.y)<p?(e[0]=d,e[1]=f,e):(e[0]=d,e[1]=m,e)}})()},43424(e){var t={};e.exports=t,(function(){t.create=function(e){return{vertex:e,normalImpulse:0,tangentImpulse:0}}})()},81388(e,t,n){var r={};e.exports=r;var i=n(53402),a=n(52284);(function(){r.create=function(e){return i.extend({bodies:[],collisions:[],pairs:null},e)},r.setBodies=function(e,t){e.bodies=t.slice(0)},r.clear=function(e){e.bodies=[],e.collisions=[]},r.collisions=function(e){var t=e.pairs,n=e.bodies,i=n.length,o=r.canCollide,s=a.collides,c=e.collisions,l=0,u,d;for(n.sort(r._compareBoundsX),u=0;u<i;u++){var f=n[u],p=f.bounds,m=f.bounds.max.x,h=f.bounds.max.y,g=f.bounds.min.y,_=f.isStatic||f.isSleeping,v=f.parts.length,y=v===1;for(d=u+1;d<i;d++){var b=n[d],x=b.bounds;if(x.min.x>m)break;if(!(h<x.min.y||g>x.max.y)&&!(_&&(b.isStatic||b.isSleeping))&&o(f.collisionFilter,b.collisionFilter)){var S=b.parts.length;if(y&&S===1){var C=s(f,b,t);C&&(c[l++]=C)}else for(var w=+(v>1),T=+(S>1),E=w;E<v;E++)for(var D=f.parts[E],p=D.bounds,O=T;O<S;O++){var k=b.parts[O],x=k.bounds;if(!(p.min.x>x.max.x||p.max.x<x.min.x||p.max.y<x.min.y||p.min.y>x.max.y)){var C=s(D,k,t);C&&(c[l++]=C)}}}}}return c.length!==l&&(c.length=l),c},r.canCollide=function(e,t){return e.group===t.group&&e.group!==0?e.group>0:(e.mask&t.category)!==0&&(t.mask&e.category)!==0},r._compareBoundsX=function(e,t){return e.bounds.min.x-t.bounds.min.x}})()},4506(e,t,n){var r={};e.exports=r;var i=n(43424);(function(){r.create=function(e,t){var n=e.bodyA,a=e.bodyB,o={id:r.id(n,a),bodyA:n,bodyB:a,collision:e,contacts:[i.create(),i.create()],contactCount:0,separation:0,isActive:!0,isSensor:n.isSensor||a.isSensor,timeCreated:t,timeUpdated:t,inverseMass:0,friction:0,frictionStatic:0,restitution:0,slop:0};return r.update(o,e,t),o},r.update=function(e,t,n){var r=t.supports,i=t.supportCount,a=e.contacts,o=t.parentA,s=t.parentB;e.isActive=!0,e.timeUpdated=n,e.collision=t,e.separation=t.depth,e.inverseMass=o.inverseMass+s.inverseMass,e.friction=o.friction<s.friction?o.friction:s.friction,e.frictionStatic=o.frictionStatic>s.frictionStatic?o.frictionStatic:s.frictionStatic,e.restitution=o.restitution>s.restitution?o.restitution:s.restitution,e.slop=o.slop>s.slop?o.slop:s.slop,e.contactCount=i,t.pair=e;var c=r[0],l=a[0],u=r[1],d=a[1];(d.vertex===c||l.vertex===u)&&(a[1]=l,a[0]=l=d,d=a[1]),l.vertex=c,d.vertex=u},r.setActive=function(e,t,n){t?(e.isActive=!0,e.timeUpdated=n):(e.isActive=!1,e.contactCount=0)},r.id=function(e,t){return e.id<t.id?e.id.toString(36)+`:`+t.id.toString(36):t.id.toString(36)+`:`+e.id.toString(36)}})()},99561(e,t,n){var r={};e.exports=r;var i=n(4506),a=n(53402);(function(){r.create=function(e){return a.extend({table:{},list:[],collisionStart:[],collisionActive:[],collisionEnd:[]},e)},r.update=function(e,t,n){var r=i.update,a=i.create,o=i.setActive,s=e.table,c=e.list,l=c.length,u=l,d=e.collisionStart,f=e.collisionEnd,p=e.collisionActive,m=t.length,h=0,g=0,_=0,v,y,b;for(b=0;b<m;b++)v=t[b],y=v.pair,y?(y.isActive&&(p[_++]=y),r(y,v,n)):(y=a(v,n),s[y.id]=y,d[h++]=y,c[u++]=y);for(u=0,l=c.length,b=0;b<l;b++)y=c[b],y.timeUpdated>=n?c[u++]=y:(o(y,!1,n),y.collision.bodyA.sleepCounter>0&&y.collision.bodyB.sleepCounter>0?c[u++]=y:(f[g++]=y,delete s[y.id]));c.length!==u&&(c.length=u),d.length!==h&&(d.length=h),f.length!==g&&(f.length=g),p.length!==_&&(p.length=_)},r.clear=function(e){return e.table={},e.list.length=0,e.collisionStart.length=0,e.collisionActive.length=0,e.collisionEnd.length=0,e}})()},73296(e,t,n){var r={};e.exports=r;var i=n(31725),a=n(52284),o=n(15647),s=n(66280),c=n(41598);(function(){r.collides=function(e,t){for(var n=[],r=t.length,i=e.bounds,s=a.collides,c=o.overlaps,l=0;l<r;l++){var u=t[l],d=u.parts.length,f=d===1?0:1;if(e!==u&&c(u.bounds,i))for(var p=f;p<d;p++){var m=u.parts[p];if(c(m.bounds,i)){var h=s(m,e);if(h){n.push(h);break}}}}return n},r.ray=function(e,t,n,a){a||=1e-100;for(var o=i.angle(t,n),c=i.magnitude(i.sub(t,n)),l=(n.x+t.x)*.5,u=(n.y+t.y)*.5,d=s.rectangle(l,u,c,a,{angle:o}),f=r.collides(d,e),p=0;p<f.length;p+=1){var m=f[p];m.body=m.bodyB=m.bodyA}return f},r.region=function(e,t,n){for(var r=[],i=0;i<e.length;i++){var a=e[i],s=o.overlaps(a.bounds,t);(s&&!n||!s&&n)&&r.push(a)}return r},r.point=function(e,t){for(var n=[],r=0;r<e.length;r++){var i=e[r];if(o.contains(i.bounds,t))for(var a=i.parts.length===1?0:1;a<i.parts.length;a++){var s=i.parts[a];if(o.contains(s.bounds,t)&&c.contains(s.vertices,t)){n.push(i);break}}}return n}})()},66272(e,t,n){var r={};e.exports=r;var i=n(41598),a=n(53402),o=n(15647);(function(){r._restingThresh=2,r._restingThreshTangent=Math.sqrt(6),r._positionDampen=.9,r._positionWarming=.8,r._frictionNormalMultiplier=5,r._frictionMaxStatic=Number.MAX_VALUE,r.preSolvePosition=function(e){var t,n,r,i=e.length;for(t=0;t<i;t++)n=e[t],n.isActive&&(r=n.contactCount,n.collision.parentA.totalContacts+=r,n.collision.parentB.totalContacts+=r)},r.solvePosition=function(e,t,n){var i,o,s,c,l,u,d,f,p=r._positionDampen*(n||1),m=a.clamp(t/a._baseDelta,0,1),h=e.length;for(i=0;i<h;i++)o=e[i],!(!o.isActive||o.isSensor)&&(s=o.collision,c=s.parentA,l=s.parentB,u=s.normal,o.separation=s.depth+u.x*(l.positionImpulse.x-c.positionImpulse.x)+u.y*(l.positionImpulse.y-c.positionImpulse.y));for(i=0;i<h;i++)o=e[i],!(!o.isActive||o.isSensor)&&(s=o.collision,c=s.parentA,l=s.parentB,u=s.normal,f=o.separation-o.slop*m,(c.isStatic||l.isStatic)&&(f*=2),c.isStatic||c.isSleeping||(d=p/c.totalContacts,c.positionImpulse.x+=u.x*f*d,c.positionImpulse.y+=u.y*f*d),l.isStatic||l.isSleeping||(d=p/l.totalContacts,l.positionImpulse.x-=u.x*f*d,l.positionImpulse.y-=u.y*f*d))},r.postSolvePosition=function(e){for(var t=r._positionWarming,n=e.length,a=i.translate,s=o.update,c=0;c<n;c++){var l=e[c],u=l.positionImpulse,d=u.x,f=u.y,p=l.velocity;if(l.totalContacts=0,d!==0||f!==0){for(var m=0;m<l.parts.length;m++){var h=l.parts[m];a(h.vertices,u),s(h.bounds,h.vertices,p),h.position.x+=d,h.position.y+=f}l.positionPrev.x+=d,l.positionPrev.y+=f,d*p.x+f*p.y<0?(u.x=0,u.y=0):(u.x*=t,u.y*=t)}}},r.preSolveVelocity=function(e){var t=e.length,n,r;for(n=0;n<t;n++){var i=e[n];if(!(!i.isActive||i.isSensor)){var a=i.contacts,o=i.contactCount,s=i.collision,c=s.parentA,l=s.parentB,u=s.normal,d=s.tangent;for(r=0;r<o;r++){var f=a[r],p=f.vertex,m=f.normalImpulse,h=f.tangentImpulse;if(m!==0||h!==0){var g=u.x*m+d.x*h,_=u.y*m+d.y*h;c.isStatic||c.isSleeping||(c.positionPrev.x+=g*c.inverseMass,c.positionPrev.y+=_*c.inverseMass,c.anglePrev+=c.inverseInertia*((p.x-c.position.x)*_-(p.y-c.position.y)*g)),l.isStatic||l.isSleeping||(l.positionPrev.x-=g*l.inverseMass,l.positionPrev.y-=_*l.inverseMass,l.anglePrev-=l.inverseInertia*((p.x-l.position.x)*_-(p.y-l.position.y)*g))}}}}},r.solveVelocity=function(e,t){var n=t/a._baseDelta,i=n*n*n,o=-r._restingThresh*n,s=r._restingThreshTangent,c=r._frictionNormalMultiplier*n,l=r._frictionMaxStatic,u=e.length,d,f,p,m;for(p=0;p<u;p++){var h=e[p];if(!(!h.isActive||h.isSensor)){var g=h.collision,_=g.parentA,v=g.parentB,y=g.normal.x,b=g.normal.y,x=g.tangent.x,S=g.tangent.y,C=h.inverseMass,w=h.friction*h.frictionStatic*c,T=h.contacts,E=h.contactCount,D=1/E,O=_.position.x-_.positionPrev.x,k=_.position.y-_.positionPrev.y,A=_.angle-_.anglePrev,j=v.position.x-v.positionPrev.x,M=v.position.y-v.positionPrev.y,N=v.angle-v.anglePrev;for(m=0;m<E;m++){var P=T[m],F=P.vertex,I=F.x-_.position.x,L=F.y-_.position.y,R=F.x-v.position.x,z=F.y-v.position.y,B=O-L*A,V=k+I*A,H=j-z*N,U=M+R*N,W=B-H,G=V-U,ee=y*W+b*G,K=x*W+S*G,q=h.separation+ee,J=Math.min(q,1);J=q<0?0:J;var Y=J*w;K<-Y||K>Y?(f=K>0?K:-K,d=h.friction*(K>0?1:-1)*i,d<-f?d=-f:d>f&&(d=f)):(d=K,f=l);var te=I*b-L*y,X=R*b-z*y,Z=D/(C+_.inverseInertia*te*te+v.inverseInertia*X*X),Q=(1+h.restitution)*ee*Z;if(d*=Z,ee<o)P.normalImpulse=0;else{var ne=P.normalImpulse;P.normalImpulse+=Q,P.normalImpulse>0&&(P.normalImpulse=0),Q=P.normalImpulse-ne}if(K<-s||K>s)P.tangentImpulse=0;else{var $=P.tangentImpulse;P.tangentImpulse+=d,P.tangentImpulse<-f&&(P.tangentImpulse=-f),P.tangentImpulse>f&&(P.tangentImpulse=f),d=P.tangentImpulse-$}var re=y*Q+x*d,ie=b*Q+S*d;_.isStatic||_.isSleeping||(_.positionPrev.x+=re*_.inverseMass,_.positionPrev.y+=ie*_.inverseMass,_.anglePrev+=(I*ie-L*re)*_.inverseInertia),v.isStatic||v.isSleeping||(v.positionPrev.x-=re*v.inverseMass,v.positionPrev.y-=ie*v.inverseMass,v.anglePrev-=(R*ie-z*re)*v.inverseInertia)}}}}})()},48140(e,t,n){var r={};e.exports=r;var i=n(41598),a=n(31725),o=n(53614),s=n(15647),c=n(66615),l=n(53402);(function(){r._warming=.4,r._torqueDampen=1,r._minLength=1e-6,r.create=function(e){var t=e;t.bodyA&&!t.pointA&&(t.pointA={x:0,y:0}),t.bodyB&&!t.pointB&&(t.pointB={x:0,y:0});var n=t.bodyA?a.add(t.bodyA.position,t.pointA):t.pointA,r=t.bodyB?a.add(t.bodyB.position,t.pointB):t.pointB,i=a.magnitude(a.sub(n,r));t.length=t.length===void 0?i:t.length,t.id=t.id||l.nextId(),t.label=t.label||`Constraint`,t.type=`constraint`,t.stiffness=t.stiffness||(t.length>0?1:.7),t.damping=t.damping||0,t.angularStiffness=t.angularStiffness||0,t.angleA=t.bodyA?t.bodyA.angle:t.angleA,t.angleB=t.bodyB?t.bodyB.angle:t.angleB,t.plugin={};var o={visible:!0,type:`line`,anchors:!0,lineColor:null,lineOpacity:null,lineThickness:null,pinSize:null,anchorColor:null,anchorSize:null};return t.length===0&&t.stiffness>.1?(o.type=`pin`,o.anchors=!1):t.stiffness<.9&&(o.type=`spring`),t.render=l.extend(o,t.render),t},r.preSolveAll=function(e){for(var t=0;t<e.length;t+=1){var n=e[t],r=n.constraintImpulse;n.isStatic||r.x===0&&r.y===0&&r.angle===0||(n.position.x+=r.x,n.position.y+=r.y,n.angle+=r.angle)}},r.solveAll=function(e,t){for(var n=l.clamp(t/l._baseDelta,0,1),i=0;i<e.length;i+=1){var a=e[i],o=!a.bodyA||a.bodyA&&a.bodyA.isStatic,s=!a.bodyB||a.bodyB&&a.bodyB.isStatic;(o||s)&&r.solve(e[i],n)}for(i=0;i<e.length;i+=1)a=e[i],o=!a.bodyA||a.bodyA&&a.bodyA.isStatic,s=!a.bodyB||a.bodyB&&a.bodyB.isStatic,!o&&!s&&r.solve(e[i],n)},r.solve=function(e,t){var n=e.bodyA,i=e.bodyB,o=e.pointA,s=e.pointB;if(!(!n&&!i)){n&&!n.isStatic&&(a.rotate(o,n.angle-e.angleA,o),e.angleA=n.angle),i&&!i.isStatic&&(a.rotate(s,i.angle-e.angleB,s),e.angleB=i.angle);var c=o,l=s;if(n&&(c=a.add(n.position,o)),i&&(l=a.add(i.position,s)),!(!c||!l)){var u=a.sub(c,l),d=a.magnitude(u);d<r._minLength&&(d=r._minLength);var f=(d-e.length)/d,p=e.stiffness>=1||e.length===0?e.stiffness*t:e.stiffness*t*t,m=e.damping*t,h=a.mult(u,f*p),g=(n?n.inverseMass:0)+(i?i.inverseMass:0),_=g+((n?n.inverseInertia:0)+(i?i.inverseInertia:0)),v,y,b,x,S;if(m>0){var C=a.create();b=a.div(u,d),S=a.sub(i&&a.sub(i.position,i.positionPrev)||C,n&&a.sub(n.position,n.positionPrev)||C),x=a.dot(b,S)}n&&!n.isStatic&&(y=n.inverseMass/g,n.constraintImpulse.x-=h.x*y,n.constraintImpulse.y-=h.y*y,n.position.x-=h.x*y,n.position.y-=h.y*y,m>0&&(n.positionPrev.x-=m*b.x*x*y,n.positionPrev.y-=m*b.y*x*y),v=a.cross(o,h)/_*r._torqueDampen*n.inverseInertia*(1-e.angularStiffness),n.constraintImpulse.angle-=v,n.angle-=v),i&&!i.isStatic&&(y=i.inverseMass/g,i.constraintImpulse.x+=h.x*y,i.constraintImpulse.y+=h.y*y,i.position.x+=h.x*y,i.position.y+=h.y*y,m>0&&(i.positionPrev.x+=m*b.x*x*y,i.positionPrev.y+=m*b.y*x*y),v=a.cross(s,h)/_*r._torqueDampen*i.inverseInertia*(1-e.angularStiffness),i.constraintImpulse.angle+=v,i.angle+=v)}}},r.postSolveAll=function(e){for(var t=0;t<e.length;t++){var n=e[t],l=n.constraintImpulse;if(!(n.isStatic||l.x===0&&l.y===0&&l.angle===0)){o.set(n,!1);for(var u=0;u<n.parts.length;u++){var d=n.parts[u];i.translate(d.vertices,l),u>0&&(d.position.x+=l.x,d.position.y+=l.y),l.angle!==0&&(i.rotate(d.vertices,l.angle,n.position),c.rotate(d.axes,l.angle),u>0&&a.rotateAbout(d.position,l.angle,n.position,d.position)),s.update(d.bounds,d.vertices,n.velocity)}l.angle*=r._warming,l.x*=r._warming,l.y*=r._warming}}},r.pointAWorld=function(e){return{x:(e.bodyA?e.bodyA.position.x:0)+(e.pointA?e.pointA.x:0),y:(e.bodyA?e.bodyA.position.y:0)+(e.pointA?e.pointA.y:0)}},r.pointBWorld=function(e){return{x:(e.bodyB?e.bodyB.position.x:0)+(e.pointB?e.pointB.x:0),y:(e.bodyB?e.bodyB.position.y:0)+(e.pointB?e.pointB.y:0)}},r.currentLength=function(e){var t=(e.bodyA?e.bodyA.position.x:0)+(e.pointA?e.pointA.x:0),n=(e.bodyA?e.bodyA.position.y:0)+(e.pointA?e.pointA.y:0),r=(e.bodyB?e.bodyB.position.x:0)+(e.pointB?e.pointB.x:0),i=(e.bodyB?e.bodyB.position.y:0)+(e.pointB?e.pointB.y:0),a=t-r,o=n-i;return Math.sqrt(a*a+o*o)}})()},53402(e,t,n){var r={};e.exports=r,(function(){r._baseDelta=1e3/60,r._nextId=0,r._seed=0,r._nowStartTime=+new Date,r._warnedOnce={},r._decomp=null,r.extend=function(e,t){var n,i;typeof t==`boolean`?(n=2,i=t):(n=1,i=!0);for(var a=n;a<arguments.length;a++){var o=arguments[a];if(o)for(var s in o)i&&o[s]&&o[s].constructor===Object&&(!e[s]||e[s].constructor===Object)?(e[s]=e[s]||{},r.extend(e[s],i,o[s])):e[s]=o[s]}return e},r.clone=function(e,t){return r.extend({},t,e)},r.keys=function(e){if(Object.keys)return Object.keys(e);var t=[];for(var n in e)t.push(n);return t},r.values=function(e){var t=[];if(Object.keys){for(var n=Object.keys(e),r=0;r<n.length;r++)t.push(e[n[r]]);return t}for(var i in e)t.push(e[i]);return t},r.get=function(e,t,n,r){t=t.split(`.`).slice(n,r);for(var i=0;i<t.length;i+=1)e=e[t[i]];return e},r.set=function(e,t,n,i,a){var o=t.split(`.`).slice(i,a);return r.get(e,t,0,-1)[o[o.length-1]]=n,n},r.shuffle=function(e){for(var t=e.length-1;t>0;t--){var n=Math.floor(r.random()*(t+1)),i=e[t];e[t]=e[n],e[n]=i}return e},r.choose=function(e){return e[Math.floor(r.random()*e.length)]},r.isElement=function(e){return typeof HTMLElement<`u`?e instanceof HTMLElement:!!(e&&e.nodeType&&e.nodeName)},r.isArray=function(e){return Object.prototype.toString.call(e)===`[object Array]`},r.isFunction=function(e){return typeof e==`function`},r.isPlainObject=function(e){return typeof e==`object`&&e.constructor===Object},r.isString=function(e){return toString.call(e)===`[object String]`},r.clamp=function(e,t,n){return e<t?t:e>n?n:e},r.sign=function(e){return e<0?-1:1},r.now=function(){if(typeof window<`u`&&window.performance){if(window.performance.now)return window.performance.now();if(window.performance.webkitNow)return window.performance.webkitNow()}return Date.now?Date.now():new Date-r._nowStartTime},r.random=function(t,n){return t=t===void 0?0:t,n=n===void 0?1:n,t+e()*(n-t)};var e=function(){return r._seed=(r._seed*9301+49297)%233280,r._seed/233280};r.colorToNumber=function(e){return e=e.replace(`#`,``),e.length==3&&(e=e.charAt(0)+e.charAt(0)+e.charAt(1)+e.charAt(1)+e.charAt(2)+e.charAt(2)),parseInt(e,16)},r.logLevel=1,r.log=function(){console&&r.logLevel>0&&r.logLevel<=3&&console.log.apply(console,[`matter-js:`].concat(Array.prototype.slice.call(arguments)))},r.info=function(){console&&r.logLevel>0&&r.logLevel<=2&&console.info.apply(console,[`matter-js:`].concat(Array.prototype.slice.call(arguments)))},r.warn=function(){console&&r.logLevel>0&&r.logLevel<=3&&console.warn.apply(console,[`matter-js:`].concat(Array.prototype.slice.call(arguments)))},r.warnOnce=function(){var e=Array.prototype.slice.call(arguments).join(` `);r._warnedOnce[e]||(r.warn(e),r._warnedOnce[e]=!0)},r.deprecated=function(e,t,n){e[t]=r.chain(function(){r.warnOnce(`🔅 deprecated 🔅`,n)},e[t])},r.nextId=function(){return r._nextId++},r.indexOf=function(e,t){if(e.indexOf)return e.indexOf(t);for(var n=0;n<e.length;n++)if(e[n]===t)return n;return-1},r.map=function(e,t){if(e.map)return e.map(t);for(var n=[],r=0;r<e.length;r+=1)n.push(t(e[r]));return n},r.topologicalSort=function(e){var t=[],n=[],i=[];for(var a in e)!n[a]&&!i[a]&&r._topologicalSort(a,n,i,e,t);return t},r._topologicalSort=function(e,t,n,i,a){var o=i[e]||[];n[e]=!0;for(var s=0;s<o.length;s+=1){var c=o[s];n[c]||t[c]||r._topologicalSort(c,t,n,i,a)}n[e]=!1,t[e]=!0,a.push(e)},r.chain=function(){for(var e=[],t=0;t<arguments.length;t+=1){var n=arguments[t];n._chained?e.push.apply(e,n._chained):e.push(n)}var r=function(){for(var t,n=Array(arguments.length),r=0,i=arguments.length;r<i;r++)n[r]=arguments[r];for(r=0;r<e.length;r+=1){var a=e[r].apply(t,n);a!==void 0&&(t=a)}return t};return r._chained=e,r},r.chainPathBefore=function(e,t,n){return r.set(e,t,r.chain(n,r.get(e,t)))},r.chainPathAfter=function(e,t,n){return r.set(e,t,r.chain(r.get(e,t),n))},r.setDecomp=function(e){r._decomp=e},r.getDecomp=function(){var e=r._decomp;try{!e&&typeof window<`u`&&(e=window.decomp),!e&&n.g!==void 0&&(e=n.g.decomp)}catch{e=null}return e}})()},48413(e,t,n){var r={};e.exports=r;var i=n(53614),a=n(66272),o=n(81388),s=n(99561),c=n(35810),l=n(69351),u=n(48140),d=n(53402),f=n(22562);(function(){r._deltaMax=1e3/60,r.create=function(e){e||={};var t=d.extend({positionIterations:6,velocityIterations:4,constraintIterations:2,enableSleeping:!1,events:[],plugin:{},gravity:{x:0,y:1,scale:.001},timing:{timestamp:0,timeScale:1,lastDelta:0,lastElapsed:0,lastUpdatesPerFrame:0}},e);return t.world=e.world||l.create({label:`World`}),t.pairs=e.pairs||s.create(),t.detector=e.detector||o.create(),t.detector.pairs=t.pairs,t.grid={buckets:[]},t.world.gravity=t.gravity,t.broadphase=t.grid,t.metrics={},t},r.update=function(e,t){var n=d.now(),f=e.world,p=e.detector,m=e.pairs,h=e.timing,g=h.timestamp,_;t>r._deltaMax&&d.warnOnce(`Matter.Engine.update: delta argument is recommended to be less than or equal to`,r._deltaMax.toFixed(3),`ms.`),t=t===void 0?d._baseDelta:t,t*=h.timeScale,h.timestamp+=t,h.lastDelta=t;var v={timestamp:h.timestamp,delta:t};c.trigger(e,`beforeUpdate`,v);var y=l.allBodies(f),b=l.allConstraints(f),x=l.allComposites(f);for(f.isModified&&(o.setBodies(p,y),l.setModified(f,!1,!1,!0)),e.enableSleeping&&i.update(y,t),r._bodiesApplyGravity(y,e.gravity),r.wrap(y,x),r.attractors(y),t>0&&r._bodiesUpdate(y,t),c.trigger(e,`beforeSolve`,v),u.preSolveAll(y),_=0;_<e.constraintIterations;_++)u.solveAll(b,t);u.postSolveAll(y);var S=o.collisions(p);s.update(m,S,g),e.enableSleeping&&i.afterCollisions(m.list),m.collisionStart.length>0&&c.trigger(e,`collisionStart`,{pairs:m.collisionStart,timestamp:h.timestamp,delta:t});var C=d.clamp(20/e.positionIterations,0,1);for(a.preSolvePosition(m.list),_=0;_<e.positionIterations;_++)a.solvePosition(m.list,t,C);for(a.postSolvePosition(y),u.preSolveAll(y),_=0;_<e.constraintIterations;_++)u.solveAll(b,t);for(u.postSolveAll(y),a.preSolveVelocity(m.list),_=0;_<e.velocityIterations;_++)a.solveVelocity(m.list,t);return r._bodiesUpdateVelocities(y),m.collisionActive.length>0&&c.trigger(e,`collisionActive`,{pairs:m.collisionActive,timestamp:h.timestamp,delta:t}),m.collisionEnd.length>0&&c.trigger(e,`collisionEnd`,{pairs:m.collisionEnd,timestamp:h.timestamp,delta:t}),r._bodiesClearForces(y),c.trigger(e,`afterUpdate`,v),e.timing.lastElapsed=d.now()-n,e},r.merge=function(e,t){if(d.extend(e,t),t.world){e.world=t.world,r.clear(e);for(var n=l.allBodies(e.world),a=0;a<n.length;a++){var o=n[a];i.set(o,!1),o.id=d.nextId()}}},r.clear=function(e){s.clear(e.pairs),o.clear(e.detector)},r._bodiesClearForces=function(e){for(var t=e.length,n=0;n<t;n++){var r=e[n];r.force.x=0,r.force.y=0,r.torque=0}},r._bodiesApplyGravity=function(e,t){var n=t.scale===void 0?.001:t.scale,r=e.length;if(!(t.x===0&&t.y===0||n===0))for(var i=0;i<r;i++){var a=e[i];a.ignoreGravity||a.isStatic||a.isSleeping||(a.force.y+=a.mass*t.y*n,a.force.x+=a.mass*t.x*n)}},r._bodiesUpdate=function(e,t){for(var n=e.length,r=0;r<n;r++){var i=e[r];i.isStatic||i.isSleeping||f.update(i,t)}},r._bodiesUpdateVelocities=function(e){for(var t=e.length,n=0;n<t;n++)f.updateVelocities(e[n])},r.wrap=function(e,t){for(var n=0;n<e.length;n+=1){var r=e[n];r.wrapBounds!==null&&f.wrap(r,r.wrapBounds)}for(n=0;n<t.length;n+=1){var i=t[n];i.wrapBounds!==null&&l.wrap(i,i.wrapBounds)}},r.attractors=function(e){for(var t=0;t<e.length;t++){var n=e[t],r=n.attractors;if(r&&r.length>0)for(var i=0;i<e.length;i++){var a=e[i];if(t!==i)for(var o=0;o<r.length;o++){var s=r[o],c=s;d.isFunction(s)&&(c=s(n,a)),c&&f.applyForce(a,a.position,c)}}}}})()},35810(e,t,n){var r={};e.exports=r;var i=n(53402);(function(){r.on=function(e,t,n){for(var r=t.split(` `),i,a=0;a<r.length;a++)i=r[a],e.events=e.events||{},e.events[i]=e.events[i]||[],e.events[i].push(n);return n},r.off=function(e,t,n){if(!t){e.events={};return}typeof t==`function`&&(n=t,t=i.keys(e.events).join(` `));for(var r=t.split(` `),a=0;a<r.length;a++){var o=e.events[r[a]],s=[];if(n&&o)for(var c=0;c<o.length;c++)o[c]!==n&&s.push(o[c]);e.events[r[a]]=s}},r.trigger=function(e,t,n){var r,a,o,s,c=e.events;if(c&&i.keys(c).length>0){n||={},r=t.split(` `);for(var l=0;l<r.length;l++)if(a=r[l],o=c[a],o){s=i.clone(n,!1),s.name=a,s.source=e;for(var u=0;u<o.length;u++)o[u].apply(e,[s])}}}})()},6790(e,t,n){var r={};e.exports=r;var i=n(73832),a=n(53402);(function(){r.name=`matter-js`,r.version=`0.20.0`,r.uses=[],r.used=[],r.use=function(){i.use(r,Array.prototype.slice.call(arguments))},r.before=function(e,t){return e=e.replace(/^Matter./,``),a.chainPathBefore(r,e,t)},r.after=function(e,t){return e=e.replace(/^Matter./,``),a.chainPathAfter(r,e,t)}})()},73832(e,t,n){var r={};e.exports=r;var i=n(53402);(function(){r._registry={},r.register=function(e){if(r.isPlugin(e)||i.warn(`Plugin.register:`,r.toString(e),`does not implement all required fields.`),e.name in r._registry){var t=r._registry[e.name],n=r.versionParse(e.version).number,a=r.versionParse(t.version).number;n>a?(i.warn(`Plugin.register:`,r.toString(t),`was upgraded to`,r.toString(e)),r._registry[e.name]=e):n<a?i.warn(`Plugin.register:`,r.toString(t),`can not be downgraded to`,r.toString(e)):e!==t&&i.warn(`Plugin.register:`,r.toString(e),`is already registered to different plugin object`)}else r._registry[e.name]=e;return e},r.resolve=function(e){return r._registry[r.dependencyParse(e).name]},r.toString=function(e){return typeof e==`string`?e:(e.name||`anonymous`)+`@`+(e.version||e.range||`0.0.0`)},r.isPlugin=function(e){return e&&e.name&&e.version&&e.install},r.isUsed=function(e,t){return e.used.indexOf(t)>-1},r.isFor=function(e,t){var n=e.for&&r.dependencyParse(e.for);return!e.for||t.name===n.name&&r.versionSatisfies(t.version,n.range)},r.use=function(e,t){if(e.uses=(e.uses||[]).concat(t||[]),e.uses.length===0){i.warn(`Plugin.use:`,r.toString(e),`does not specify any dependencies to install.`);return}for(var n=r.dependencies(e),a=i.topologicalSort(n),o=[],s=0;s<a.length;s+=1)if(a[s]!==e.name){var c=r.resolve(a[s]);if(!c){o.push(`❌ `+a[s]);continue}r.isUsed(e,c.name)||(r.isFor(c,e)||(i.warn(`Plugin.use:`,r.toString(c),`is for`,c.for,`but installed on`,r.toString(e)+`.`),c._warned=!0),c.install?c.install(e):(i.warn(`Plugin.use:`,r.toString(c),`does not specify an install function.`),c._warned=!0),c._warned?(o.push(`🔶 `+r.toString(c)),delete c._warned):o.push(`✅ `+r.toString(c)),e.used.push(c.name))}o.length>0&&!c.silent&&i.info(o.join(` `))},r.dependencies=function(e,t){var n=r.dependencyParse(e),a=n.name;if(t||={},!(a in t)){e=r.resolve(e)||e,t[a]=i.map(e.uses||[],function(t){r.isPlugin(t)&&r.register(t);var a=r.dependencyParse(t),o=r.resolve(t);return o&&!r.versionSatisfies(o.version,a.range)?(i.warn(`Plugin.dependencies:`,r.toString(o),`does not satisfy`,r.toString(a),`used by`,r.toString(n)+`.`),o._warned=!0,e._warned=!0):o||(i.warn(`Plugin.dependencies:`,r.toString(t),`used by`,r.toString(n),`could not be resolved.`),e._warned=!0),a.name});for(var o=0;o<t[a].length;o+=1)r.dependencies(t[a][o],t);return t}},r.dependencyParse=function(e){return i.isString(e)?(/^[\w-]+(@(\*|[\^~]?\d+\.\d+\.\d+(-[0-9A-Za-z-+]+)?))?$/.test(e)||i.warn(`Plugin.dependencyParse:`,e,`is not a valid dependency string.`),{name:e.split(`@`)[0],range:e.split(`@`)[1]||`*`}):{name:e.name,range:e.range||e.version}},r.versionParse=function(e){var t=/^(\*)|(\^|~|>=|>)?\s*((\d+)\.(\d+)\.(\d+))(-[0-9A-Za-z-+]+)?$/;t.test(e)||i.warn(`Plugin.versionParse:`,e,`is not a valid version or range.`);var n=t.exec(e),r=Number(n[4]),a=Number(n[5]),o=Number(n[6]);return{isRange:!!(n[1]||n[2]),version:n[3],range:e,operator:n[1]||n[2]||``,major:r,minor:a,patch:o,parts:[r,a,o],prerelease:n[7],number:r*1e8+a*1e4+o}},r.versionSatisfies=function(e,t){t||=`*`;var n=r.versionParse(t),i=r.versionParse(e);if(n.isRange){if(n.operator===`*`||e===`*`)return!0;if(n.operator===`>`)return i.number>n.number;if(n.operator===`>=`)return i.number>=n.number;if(n.operator===`~`)return i.major===n.major&&i.minor===n.minor&&i.patch>=n.patch;if(n.operator===`^`)return n.major>0?i.major===n.major&&i.number>=n.number:n.minor>0?i.minor===n.minor&&i.patch>=n.patch:i.patch===n.patch}return e===t||e===`*`}})()},13037(e,t,n){var r={};e.exports=r;var i=n(35810),a=n(48413),o=n(53402);(function(){r._maxFrameDelta=1e3/15,r._frameDeltaFallback=1e3/60,r._timeBufferMargin=1.5,r._elapsedNextEstimate=1,r._smoothingLowerBound=.1,r._smoothingUpperBound=.9,r.create=function(e){var t=o.extend({delta:1e3/60,frameDelta:null,frameDeltaSmoothing:!0,frameDeltaSnapping:!0,frameDeltaHistory:[],frameDeltaHistorySize:100,frameRequestId:null,timeBuffer:0,timeLastTick:null,maxUpdates:null,maxFrameTime:1e3/30,lastUpdatesDeferred:0,enabled:!0},e);return t.fps=0,t},r.run=function(e,t){return e.timeBuffer=r._frameDeltaFallback,(function n(i){e.frameRequestId=r._onNextFrame(e,n),i&&e.enabled&&r.tick(e,t,i)})(),e},r.tick=function(t,n,s){var c=o.now(),l=t.delta,u=0,d=s-t.timeLastTick;if((!d||!t.timeLastTick||d>Math.max(r._maxFrameDelta,t.maxFrameTime))&&(d=t.frameDelta||r._frameDeltaFallback),t.frameDeltaSmoothing){t.frameDeltaHistory.push(d),t.frameDeltaHistory=t.frameDeltaHistory.slice(-t.frameDeltaHistorySize);var f=t.frameDeltaHistory.slice(0).sort();d=e(t.frameDeltaHistory.slice(f.length*r._smoothingLowerBound,f.length*r._smoothingUpperBound))||d}t.frameDeltaSnapping&&(d=1e3/Math.round(1e3/d)),t.frameDelta=d,t.timeLastTick=s,t.timeBuffer+=t.frameDelta,t.timeBuffer=o.clamp(t.timeBuffer,0,t.frameDelta+l*r._timeBufferMargin),t.lastUpdatesDeferred=0;var p=t.maxUpdates||Math.ceil(t.maxFrameTime/l),m={timestamp:n.timing.timestamp};i.trigger(t,`beforeTick`,m),i.trigger(t,`tick`,m);for(var h=o.now();l>0&&t.timeBuffer>=l*r._timeBufferMargin;){i.trigger(t,`beforeUpdate`,m),a.update(n,l),i.trigger(t,`afterUpdate`,m),t.timeBuffer-=l,u+=1;var g=o.now()-c,_=o.now()-h,v=g+r._elapsedNextEstimate*_/u;if(u>=p||v>t.maxFrameTime){t.lastUpdatesDeferred=Math.round(Math.max(0,t.timeBuffer/l-r._timeBufferMargin));break}}n.timing.lastUpdatesPerFrame=u,i.trigger(t,`afterTick`,m),t.frameDeltaHistory.length>=100&&(t.lastUpdatesDeferred&&Math.round(t.frameDelta/l)>p?o.warnOnce(`Matter.Runner: runner reached runner.maxUpdates, see docs.`):t.lastUpdatesDeferred&&o.warnOnce(`Matter.Runner: runner reached runner.maxFrameTime, see docs.`),t.isFixed!==void 0&&o.warnOnce(`Matter.Runner: runner.isFixed is now redundant, see docs.`),(t.deltaMin||t.deltaMax)&&o.warnOnce(`Matter.Runner: runner.deltaMin and runner.deltaMax were removed, see docs.`),t.fps!==0&&o.warnOnce(`Matter.Runner: runner.fps was replaced by runner.delta, see docs.`))},r.stop=function(e){r._cancelNextFrame(e)},r._onNextFrame=function(e,t){if(typeof window<`u`&&window.requestAnimationFrame)e.frameRequestId=window.requestAnimationFrame(t);else throw Error(`Matter.Runner: missing required global window.requestAnimationFrame.`);return e.frameRequestId},r._cancelNextFrame=function(e){if(typeof window<`u`&&window.cancelAnimationFrame)window.cancelAnimationFrame(e.frameRequestId);else throw Error(`Matter.Runner: missing required global window.cancelAnimationFrame.`)};var e=function(e){for(var t=0,n=e.length,r=0;r<n;r+=1)t+=e[r];return t/n||0};r._mean=e})()},53614(e,t,n){var r={};e.exports=r;var i=n(22562),a=n(35810),o=n(53402);(function(){r._motionWakeThreshold=.18,r._motionSleepThreshold=.08,r._minBias=.9,r.update=function(e,t){for(var n=t/o._baseDelta,a=r._motionSleepThreshold,s=0;s<e.length;s++){var c=e[s],l=i.getSpeed(c),u=i.getAngularSpeed(c),d=l*l+u*u;if(c.force.x!==0||c.force.y!==0){r.set(c,!1);continue}var f=Math.min(c.motion,d),p=Math.max(c.motion,d);c.motion=r._minBias*f+(1-r._minBias)*p,c.sleepThreshold>0&&c.motion<a?(c.sleepCounter+=1,c.sleepCounter>=c.sleepThreshold/n&&r.set(c,!0)):c.sleepCounter>0&&--c.sleepCounter}},r.afterCollisions=function(e){for(var t=r._motionSleepThreshold,n=0;n<e.length;n++){var i=e[n];if(i.isActive){var a=i.collision,o=a.bodyA.parent,s=a.bodyB.parent;if(!(o.isSleeping&&s.isSleeping||o.isStatic||s.isStatic)&&(o.isSleeping||s.isSleeping)){var c=o.isSleeping&&!o.isStatic?o:s,l=c===o?s:o;!c.isStatic&&l.motion>t&&r.set(c,!1)}}}},r.set=function(e,t){var n=e.isSleeping;t?(e.isSleeping=!0,e.sleepCounter=e.sleepThreshold,e.positionImpulse.x=0,e.positionImpulse.y=0,e.positionPrev.x=e.position.x,e.positionPrev.y=e.position.y,e.anglePrev=e.angle,e.speed=0,e.angularSpeed=0,e.motion=0,n||a.trigger(e,`sleepStart`)):(e.isSleeping=!1,e.sleepCounter=0,n&&a.trigger(e,`sleepEnd`))}})()},66280(e,t,n){var r={};e.exports=r;var i=n(41598),a=n(53402),o=n(22562),s=n(15647),c=n(31725);(function(){r.rectangle=function(e,t,n,r,s){s||={};var c={label:`Rectangle Body`,position:{x:e,y:t},vertices:i.fromPath(`L 0 0 L `+n+` 0 L `+n+` `+r+` L 0 `+r)};if(s.chamfer){var l=s.chamfer;c.vertices=i.chamfer(c.vertices,l.radius,l.quality,l.qualityMin,l.qualityMax),delete s.chamfer}return o.create(a.extend({},c,s))},r.trapezoid=function(e,t,n,r,s,c){c||={},s>=1&&a.warn(`Bodies.trapezoid: slope parameter must be < 1.`),s*=.5;var l=(1-s*2)*n,u=n*s,d=u+l,f=d+u,p=s<.5?`L 0 0 L `+u+` `+-r+` L `+d+` `+-r+` L `+f+` 0`:`L 0 0 L `+d+` `+-r+` L `+f+` 0`,m={label:`Trapezoid Body`,position:{x:e,y:t},vertices:i.fromPath(p)};if(c.chamfer){var h=c.chamfer;m.vertices=i.chamfer(m.vertices,h.radius,h.quality,h.qualityMin,h.qualityMax),delete c.chamfer}return o.create(a.extend({},m,c))},r.circle=function(e,t,n,i,o){i||={};var s={label:`Circle Body`,circleRadius:n};o||=25;var c=Math.ceil(Math.max(10,Math.min(o,n)));return c%2==1&&(c+=1),r.polygon(e,t,c,n,a.extend({},s,i))},r.polygon=function(e,t,n,s,c){if(c||={},n<3)return r.circle(e,t,s,c);for(var l=2*Math.PI/n,u=``,d=l*.5,f=0;f<n;f+=1){var p=d+f*l,m=Math.cos(p)*s,h=Math.sin(p)*s;u+=`L `+m.toFixed(3)+` `+h.toFixed(3)+` `}var g={label:`Polygon Body`,position:{x:e,y:t},vertices:i.fromPath(u)};if(c.chamfer){var _=c.chamfer;g.vertices=i.chamfer(g.vertices,_.radius,_.quality,_.qualityMin,_.qualityMax),delete c.chamfer}return o.create(a.extend({},g,c))},r.fromVertices=function(e,t,n,r,l,u,d,f){var p=a.getDecomp(),m=!!(p&&p.quickDecomp),h,g,_,v,y,b,x,S,C,w;for(r||={},g=[],l=l===void 0?!1:l,u=u===void 0?.01:u,d=d===void 0?10:d,f=f===void 0?.01:f,a.isArray(n[0])||(n=[n]),C=0;C<n.length;C+=1)if(y=n[C],_=i.isConvex(y),v=!_,v&&!m&&a.warnOnce(`Bodies.fromVertices: Install the 'poly-decomp' library and use Common.setDecomp or provide 'decomp' as a global to decompose concave vertices.`),_||!m)y=_?i.clockwiseSort(y):i.hull(y),g.push({position:{x:e,y:t},vertices:y});else{var T=y.map(function(e){return[e.x,e.y]});p.makeCCW(T),u!==!1&&p.removeCollinearPoints(T,u),f!==!1&&p.removeDuplicatePoints&&p.removeDuplicatePoints(T,f);var E=p.quickDecomp(T);for(b=0;b<E.length;b++){var D=E[b].map(function(e){return{x:e[0],y:e[1]}});d>0&&i.area(D)<d||g.push({position:i.centre(D),vertices:D})}}for(b=0;b<g.length;b++)g[b]=o.create(a.extend(g[b],r));if(l){var O=5;for(b=0;b<g.length;b++){var k=g[b];for(x=b+1;x<g.length;x++){var A=g[x];if(s.overlaps(k.bounds,A.bounds)){var j=k.vertices,M=A.vertices;for(S=0;S<k.vertices.length;S++)for(w=0;w<A.vertices.length;w++){var N=c.magnitudeSquared(c.sub(j[(S+1)%j.length],M[w])),P=c.magnitudeSquared(c.sub(j[S],M[(w+1)%M.length]));N<O&&P<O&&(j[S].isInternal=!0,M[w].isInternal=!0)}}}}}return g.length>1?(h=o.create(a.extend({parts:g.slice(0)},r)),o.setPosition(h,{x:e,y:t}),h):g[0]},r.flagCoincidentParts=function(e,t){t===void 0&&(t=5);for(var n=0;n<e.length;n++)for(var r=e[n],i=n+1;i<e.length;i++){var a=e[i];if(s.overlaps(r.bounds,a.bounds))for(var o=r.vertices,l=a.vertices,u=0;u<r.vertices.length;u++)for(var d=0;d<a.vertices.length;d++){var f=c.magnitudeSquared(c.sub(o[(u+1)%o.length],l[d])),p=c.magnitudeSquared(c.sub(o[u],l[(d+1)%l.length]));f<t&&p<t&&(o[u].isInternal=!0,l[d].isInternal=!0)}}return e}})()},74116(e,t,n){var r={};e.exports=r;var i=n(69351),a=n(48140),o=n(53402),s=n(22562),c=n(66280);(function(){r.stack=function(e,t,n,r,a,o,c){for(var l=i.create({label:`Stack`}),u=e,d=t,f,p=0,m=0;m<r;m++){for(var h=0,g=0;g<n;g++){var _=c(u,d,g,m,f,p);if(_){var v=_.bounds.max.y-_.bounds.min.y,y=_.bounds.max.x-_.bounds.min.x;v>h&&(h=v),s.translate(_,{x:y*.5,y:v*.5}),u=_.bounds.max.x+a,i.addBody(l,_),f=_,p+=1}else u+=a}d+=h+o,u=e}return l},r.chain=function(e,t,n,r,s,c){for(var l=e.bodies,u=1;u<l.length;u++){var d=l[u-1],f=l[u],p=d.bounds.max.y-d.bounds.min.y,m=d.bounds.max.x-d.bounds.min.x,h=f.bounds.max.y-f.bounds.min.y,g=f.bounds.max.x-f.bounds.min.x,_={bodyA:d,pointA:{x:m*t,y:p*n},bodyB:f,pointB:{x:g*r,y:h*s}},v=o.extend(_,c);i.addConstraint(e,a.create(v))}return e.label+=` Chain`,e},r.mesh=function(e,t,n,r,s){var c=e.bodies,l,u,d,f,p;for(l=0;l<n;l++){for(u=1;u<t;u++)d=c[u-1+l*t],f=c[u+l*t],i.addConstraint(e,a.create(o.extend({bodyA:d,bodyB:f},s)));if(l>0)for(u=0;u<t;u++)d=c[u+(l-1)*t],f=c[u+l*t],i.addConstraint(e,a.create(o.extend({bodyA:d,bodyB:f},s))),r&&u>0&&(p=c[u-1+(l-1)*t],i.addConstraint(e,a.create(o.extend({bodyA:p,bodyB:f},s)))),r&&u<t-1&&(p=c[u+1+(l-1)*t],i.addConstraint(e,a.create(o.extend({bodyA:p,bodyB:f},s))))}return e.label+=` Mesh`,e},r.pyramid=function(e,t,n,i,a,o,c){return r.stack(e,t,n,i,a,o,function(t,r,o,l,u,d){var f=Math.min(i,Math.ceil(n/2)),p=u?u.bounds.max.x-u.bounds.min.x:0;if(!(l>f)){l=f-l;var m=l,h=n-1-l;if(!(o<m||o>h))return d===1&&s.translate(u,{x:(o+(n%2==1?1:-1))*p,y:0}),c(e+(u?o*p:0)+o*a,r,o,l,u,d)}})},r.newtonsCradle=function(e,t,n,r,o){for(var s=i.create({label:`Newtons Cradle`}),l=0;l<n;l++){var u=1.9,d=c.circle(e+r*u*l,t+o,r,{inertia:1/0,restitution:1,friction:0,frictionAir:1e-4,slop:1}),f=a.create({pointA:{x:e+r*u*l,y:t},bodyB:d});i.addBody(s,d),i.addConstraint(s,f)}return s},r.car=function(e,t,n,r,o){var l=s.nextGroup(!0),u=20,d=-n*.5+u,f=n*.5-u,p=0,m=i.create({label:`Car`}),h=c.rectangle(e,t,n,r,{collisionFilter:{group:l},chamfer:{radius:r*.5},density:2e-4}),g=c.circle(e+d,t+p,o,{collisionFilter:{group:l},friction:.8}),_=c.circle(e+f,t+p,o,{collisionFilter:{group:l},friction:.8}),v=a.create({bodyB:h,pointB:{x:d,y:p},bodyA:g,stiffness:1,length:0}),y=a.create({bodyB:h,pointB:{x:f,y:p},bodyA:_,stiffness:1,length:0});return i.addBody(m,h),i.addBody(m,g),i.addBody(m,_),i.addConstraint(m,v),i.addConstraint(m,y),m},r.softBody=function(e,t,n,i,a,s,l,u,d,f){d=o.extend({inertia:1/0},d),f=o.extend({stiffness:.2,render:{type:`line`,anchors:!1}},f);var p=r.stack(e,t,n,i,a,s,function(e,t){return c.circle(e,t,u,d)});return r.mesh(p,n,i,l,f),p.label=`Soft Body`,p}})()},66615(e,t,n){var r={};e.exports=r;var i=n(31725),a=n(53402);(function(){r.fromVertices=function(e){for(var t={},n=0;n<e.length;n++){var r=(n+1)%e.length,o=i.normalise({x:e[r].y-e[n].y,y:e[n].x-e[r].x}),s=o.y===0?1/0:o.x/o.y;s=s.toFixed(3).toString(),t[s]=o}return a.values(t)},r.rotate=function(e,t){if(t!==0)for(var n=Math.cos(t),r=Math.sin(t),i=0;i<e.length;i++){var a=e[i],o=a.x*n-a.y*r;a.y=a.x*r+a.y*n,a.x=o}}})()},15647(e){var t={};e.exports=t,(function(){t.create=function(e){var n={min:{x:0,y:0},max:{x:0,y:0}};return e&&t.update(n,e),n},t.update=function(e,t,n){e.min.x=1/0,e.max.x=-1/0,e.min.y=1/0,e.max.y=-1/0;for(var r=0;r<t.length;r++){var i=t[r];i.x>e.max.x&&(e.max.x=i.x),i.x<e.min.x&&(e.min.x=i.x),i.y>e.max.y&&(e.max.y=i.y),i.y<e.min.y&&(e.min.y=i.y)}n&&(n.x>0?e.max.x+=n.x:e.min.x+=n.x,n.y>0?e.max.y+=n.y:e.min.y+=n.y)},t.contains=function(e,t){return t.x>=e.min.x&&t.x<=e.max.x&&t.y>=e.min.y&&t.y<=e.max.y},t.overlaps=function(e,t){return e.min.x<=t.max.x&&e.max.x>=t.min.x&&e.max.y>=t.min.y&&e.min.y<=t.max.y},t.translate=function(e,t){e.min.x+=t.x,e.max.x+=t.x,e.min.y+=t.y,e.max.y+=t.y},t.shift=function(e,t){var n=e.max.x-e.min.x,r=e.max.y-e.min.y;e.min.x=t.x,e.max.x=t.x+n,e.min.y=t.y,e.max.y=t.y+r},t.wrap=function(e,t,n){var r=null,i=null;if(t.min.x!==void 0&&t.max.x!==void 0&&(e.min.x>t.max.x?r=t.min.x-e.max.x:e.max.x<t.min.x&&(r=t.max.x-e.min.x)),t.min.y!==void 0&&t.max.y!==void 0&&(e.min.y>t.max.y?i=t.min.y-e.max.y:e.max.y<t.min.y&&(i=t.max.y-e.min.y)),r!==null||i!==null)return{x:r||0,y:i||0}}})()},74058(e,t,n){var r={};e.exports=r,n(15647);var i=n(53402);(function(){r.pathToVertices=function(e,t){typeof window<`u`&&!(`SVGPathSeg`in window)&&i.warn(`Svg.pathToVertices: SVGPathSeg not defined, a polyfill is required.`);var n,a,o,s,c,l,u,d,f,p,m=[],h,g,_=0,v=0,y=0;t||=15;var b=function(e,t,n){var r=n%2==1&&n>1;if(!f||e!=f.x||t!=f.y){f&&r?(h=f.x,g=f.y):(h=0,g=0);var i={x:h+e,y:g+t};(r||!f)&&(f=i),m.push(i),v=h+e,y=g+t}},x=function(e){var t=e.pathSegTypeAsLetter.toUpperCase();if(t!==`Z`){switch(t){case`M`:case`L`:case`T`:case`C`:case`S`:case`Q`:v=e.x,y=e.y;break;case`H`:v=e.x;break;case`V`:y=e.y;break}b(v,y,e.pathSegType)}};for(r._svgPathToAbsolute(e),o=e.getTotalLength(),l=[],n=0;n<e.pathSegList.numberOfItems;n+=1)l.push(e.pathSegList.getItem(n));for(u=l.concat();_<o;){if(p=e.getPathSegAtLength(_),c=l[p],c!=d){for(;u.length&&u[0]!=c;)x(u.shift());d=c}switch(c.pathSegTypeAsLetter.toUpperCase()){case`C`:case`T`:case`S`:case`Q`:case`A`:s=e.getPointAtLength(_),b(s.x,s.y,0);break}_+=t}for(n=0,a=u.length;n<a;++n)x(u[n]);return m},r._svgPathToAbsolute=function(e){for(var t,n,r,i,a,o,s=e.pathSegList,c=0,l=0,u=s.numberOfItems,d=0;d<u;++d){var f=s.getItem(d),p=f.pathSegTypeAsLetter;if(/[MLHVCSQTA]/.test(p))`x`in f&&(c=f.x),`y`in f&&(l=f.y);else switch(`x1`in f&&(r=c+f.x1),`x2`in f&&(a=c+f.x2),`y1`in f&&(i=l+f.y1),`y2`in f&&(o=l+f.y2),`x`in f&&(c+=f.x),`y`in f&&(l+=f.y),p){case`m`:s.replaceItem(e.createSVGPathSegMovetoAbs(c,l),d);break;case`l`:s.replaceItem(e.createSVGPathSegLinetoAbs(c,l),d);break;case`h`:s.replaceItem(e.createSVGPathSegLinetoHorizontalAbs(c),d);break;case`v`:s.replaceItem(e.createSVGPathSegLinetoVerticalAbs(l),d);break;case`c`:s.replaceItem(e.createSVGPathSegCurvetoCubicAbs(c,l,r,i,a,o),d);break;case`s`:s.replaceItem(e.createSVGPathSegCurvetoCubicSmoothAbs(c,l,a,o),d);break;case`q`:s.replaceItem(e.createSVGPathSegCurvetoQuadraticAbs(c,l,r,i),d);break;case`t`:s.replaceItem(e.createSVGPathSegCurvetoQuadraticSmoothAbs(c,l),d);break;case`a`:s.replaceItem(e.createSVGPathSegArcAbs(c,l,f.r1,f.r2,f.angle,f.largeArcFlag,f.sweepFlag),d);break;case`z`:case`Z`:c=t,l=n;break}(p==`M`||p==`m`)&&(t=c,n=l)}}})()},31725(e){var t={};e.exports=t,(function(){t.create=function(e,t){return{x:e||0,y:t||0}},t.clone=function(e){return{x:e.x,y:e.y}},t.magnitude=function(e){return Math.sqrt(e.x*e.x+e.y*e.y)},t.magnitudeSquared=function(e){return e.x*e.x+e.y*e.y},t.rotate=function(e,t,n){var r=Math.cos(t),i=Math.sin(t);n||={};var a=e.x*r-e.y*i;return n.y=e.x*i+e.y*r,n.x=a,n},t.rotateAbout=function(e,t,n,r){var i=Math.cos(t),a=Math.sin(t);r||={};var o=n.x+((e.x-n.x)*i-(e.y-n.y)*a);return r.y=n.y+((e.x-n.x)*a+(e.y-n.y)*i),r.x=o,r},t.normalise=function(e){var n=t.magnitude(e);return n===0?{x:0,y:0}:{x:e.x/n,y:e.y/n}},t.dot=function(e,t){return e.x*t.x+e.y*t.y},t.cross=function(e,t){return e.x*t.y-e.y*t.x},t.cross3=function(e,t,n){return(t.x-e.x)*(n.y-e.y)-(t.y-e.y)*(n.x-e.x)},t.add=function(e,t,n){return n||={},n.x=e.x+t.x,n.y=e.y+t.y,n},t.sub=function(e,t,n){return n||={},n.x=e.x-t.x,n.y=e.y-t.y,n},t.mult=function(e,t){return{x:e.x*t,y:e.y*t}},t.div=function(e,t){return{x:e.x/t,y:e.y/t}},t.perp=function(e,t){return t=t===!0?-1:1,{x:t*-e.y,y:t*e.x}},t.neg=function(e){return{x:-e.x,y:-e.y}},t.angle=function(e,t){return Math.atan2(t.y-e.y,t.x-e.x)},t._temp=[t.create(),t.create(),t.create(),t.create(),t.create(),t.create()]})()},41598(e,t,n){var r={};e.exports=r;var i=n(31725),a=n(53402);(function(){r.create=function(e,t){for(var n=[],r=0;r<e.length;r++){var i=e[r],a={x:i.x,y:i.y,index:r,body:t,isInternal:!1};n.push(a)}return n},r.fromPath=function(e,t){var n=/L?\s*([-\d.e]+)[\s,]*([-\d.e]+)*/gi,i=[];return e.replace(n,function(e,t,n){i.push({x:parseFloat(t),y:parseFloat(n)})}),r.create(i,t)},r.centre=function(e){for(var t=r.area(e,!0),n={x:0,y:0},a,o,s,c=0;c<e.length;c++)s=(c+1)%e.length,a=i.cross(e[c],e[s]),o=i.mult(i.add(e[c],e[s]),a),n=i.add(n,o);return i.div(n,6*t)},r.mean=function(e){for(var t={x:0,y:0},n=0;n<e.length;n++)t.x+=e[n].x,t.y+=e[n].y;return i.div(t,e.length)},r.area=function(e,t){for(var n=0,r=e.length-1,i=0;i<e.length;i++)n+=(e[r].x-e[i].x)*(e[r].y+e[i].y),r=i;return t?n/2:Math.abs(n)/2},r.inertia=function(e,t){for(var n=0,r=0,a=e,o,s,c=0;c<a.length;c++)s=(c+1)%a.length,o=Math.abs(i.cross(a[s],a[c])),n+=o*(i.dot(a[s],a[s])+i.dot(a[s],a[c])+i.dot(a[c],a[c])),r+=o;return t/6*(n/r)},r.translate=function(e,t,n){n=n===void 0?1:n;var r=e.length,i=t.x*n,a=t.y*n,o;for(o=0;o<r;o++)e[o].x+=i,e[o].y+=a;return e},r.rotate=function(e,t,n){if(t!==0){var r=Math.cos(t),i=Math.sin(t),a=n.x,o=n.y,s=e.length,c,l,u,d;for(d=0;d<s;d++)c=e[d],l=c.x-a,u=c.y-o,c.x=a+(l*r-u*i),c.y=o+(l*i+u*r);return e}},r.contains=function(e,t){for(var n=t.x,r=t.y,i=e.length,a=e[i-1],o,s=0;s<i;s++){if(o=e[s],(n-a.x)*(o.y-a.y)+(r-a.y)*(a.x-o.x)>0)return!1;a=o}return!0},r.scale=function(e,t,n,a){if(t===1&&n===1)return e;a||=r.centre(e);for(var o,s,c=0;c<e.length;c++)o=e[c],s=i.sub(o,a),e[c].x=a.x+s.x*t,e[c].y=a.y+s.y*n;return e},r.chamfer=function(e,t,n,r,o){typeof t==`number`?t=[t]:t||=[8],n=n===void 0?-1:n,r||=2,o||=14;for(var s=[],c=0;c<e.length;c++){var l=e[c-1>=0?c-1:e.length-1],u=e[c],d=e[(c+1)%e.length],f=t[c<t.length?c:t.length-1];if(f===0){s.push(u);continue}var p=i.normalise({x:u.y-l.y,y:l.x-u.x}),m=i.normalise({x:d.y-u.y,y:u.x-d.x}),h=Math.sqrt(2*f**2),g=i.mult(a.clone(p),f),_=i.normalise(i.mult(i.add(p,m),.5)),v=i.sub(u,i.mult(_,h)),y=n;n===-1&&(y=f**.32*1.75),y=a.clamp(y,r,o),y%2==1&&(y+=1);for(var b=Math.acos(i.dot(p,m))/y,x=0;x<y;x++)s.push(i.add(i.rotate(g,b*x),v))}return s},r.clockwiseSort=function(e){var t=r.mean(e);return e.sort(function(e,n){return i.angle(t,e)-i.angle(t,n)}),e},r.isConvex=function(e){var t=0,n=e.length,r,i,a,o;if(n<3)return null;for(r=0;r<n;r++)if(i=(r+1)%n,a=(r+2)%n,o=(e[i].x-e[r].x)*(e[a].y-e[i].y),o-=(e[i].y-e[r].y)*(e[a].x-e[i].x),o<0?t|=1:o>0&&(t|=2),t===3)return!1;return t===0?null:!0},r.hull=function(e){var t=[],n=[],r,a;for(e=e.slice(0),e.sort(function(e,t){var n=e.x-t.x;return n===0?e.y-t.y:n}),a=0;a<e.length;a+=1){for(r=e[a];n.length>=2&&i.cross3(n[n.length-2],n[n.length-1],r)<=0;)n.pop();n.push(r)}for(a=e.length-1;a>=0;--a){for(r=e[a];t.length>=2&&i.cross3(t[t.length-2],t[t.length-1],r)<=0;)t.pop();t.push(r)}return t.pop(),n.pop(),t.concat(n)}})()},55973(e){e.exports={decomp:w,quickDecomp:O,isSimple:E,removeCollinearPoints:k,removeDuplicatePoints:A,makeCCW:h};function t(e,t,n){n||=0;var r=[0,0],i=e[1][1]-e[0][1],a=e[0][0]-e[1][0],o=i*e[0][0]+a*e[0][1],s=t[1][1]-t[0][1],c=t[0][0]-t[1][0],l=s*t[0][0]+c*t[0][1],u=i*c-s*a;return j(u,0,n)||(r[0]=(c*o-a*l)/u,r[1]=(i*l-s*o)/u),r}function n(e,t,n,r){var i=t[0]-e[0],a=t[1]-e[1],o=r[0]-n[0],s=r[1]-n[1];if(o*a-s*i===0)return!1;var c=(i*(n[1]-e[1])+a*(e[0]-n[0]))/(o*a-s*i),l=(o*(e[1]-n[1])+s*(n[0]-e[0]))/(s*i-o*a);return c>=0&&c<=1&&l>=0&&l<=1}function r(e,t,n){return(t[0]-e[0])*(n[1]-e[1])-(n[0]-e[0])*(t[1]-e[1])}function i(e,t,n){return r(e,t,n)>0}function a(e,t,n){return r(e,t,n)>=0}function o(e,t,n){return r(e,t,n)<0}function s(e,t,n){return r(e,t,n)<=0}var c=[],l=[];function u(e,t,n,i){if(i){var a=c,o=l;a[0]=t[0]-e[0],a[1]=t[1]-e[1],o[0]=n[0]-t[0],o[1]=n[1]-t[1];var s=a[0]*o[0]+a[1]*o[1],u=Math.sqrt(a[0]*a[0]+a[1]*a[1]),d=Math.sqrt(o[0]*o[0]+o[1]*o[1]);return Math.acos(s/(u*d))<i}else return r(e,t,n)===0}function d(e,t){var n=t[0]-e[0],r=t[1]-e[1];return n*n+r*r}function f(e,t){var n=e.length;return e[t<0?t%n+n:t%n]}function p(e){e.length=0}function m(e,t,n,r){for(var i=n;i<r;i++)e.push(t[i])}function h(e){for(var t=0,n=e,r=1;r<e.length;++r)(n[r][1]<n[t][1]||n[r][1]===n[t][1]&&n[r][0]>n[t][0])&&(t=r);return i(f(e,t-1),f(e,t),f(e,t+1))?!1:(g(e),!0)}function g(e){for(var t=[],n=e.length,r=0;r!==n;r++)t.push(e.pop());for(var r=0;r!==n;r++)e[r]=t[r]}function _(e,t){return o(f(e,t-1),f(e,t),f(e,t+1))}var v=[],y=[];function b(e,n,r){var i,o,c=v,l=y;if(a(f(e,n+1),f(e,n),f(e,r))&&s(f(e,n-1),f(e,n),f(e,r)))return!1;o=d(f(e,n),f(e,r));for(var u=0;u!==e.length;++u)if(!((u+1)%e.length===n||u===n)&&a(f(e,n),f(e,r),f(e,u+1))&&s(f(e,n),f(e,r),f(e,u))&&(c[0]=f(e,n),c[1]=f(e,r),l[0]=f(e,u),l[1]=f(e,u+1),i=t(c,l),d(f(e,n),i)<o))return!1;return!0}function x(e,t,r){for(var i=0;i!==e.length;++i)if(!(i===t||i===r||(i+1)%e.length===t||(i+1)%e.length===r)&&n(f(e,t),f(e,r),f(e,i),f(e,i+1)))return!1;return!0}function S(e,t,n,r){var i=r||[];if(p(i),t<n)for(var a=t;a<=n;a++)i.push(e[a]);else{for(var a=0;a<=n;a++)i.push(e[a]);for(var a=t;a<e.length;a++)i.push(e[a])}return i}function C(e){for(var t=[],n=[],r=[],i=[],a=Number.MAX_VALUE,o=0;o<e.length;++o)if(_(e,o)){for(var s=0;s<e.length;++s)if(b(e,o,s)){n=C(S(e,o,s,i)),r=C(S(e,s,o,i));for(var c=0;c<r.length;c++)n.push(r[c]);n.length<a&&(t=n,a=n.length,t.push([f(e,o),f(e,s)]))}}return t}function w(e){var t=C(e);return t.length>0?T(e,t):[e]}function T(e,t){if(t.length===0)return[e];if(t instanceof Array&&t.length&&t[0]instanceof Array&&t[0].length===2&&t[0][0]instanceof Array){for(var n=[e],r=0;r<t.length;r++)for(var i=t[r],a=0;a<n.length;a++){var o=n[a],s=T(o,i);if(s){n.splice(a,1),n.push(s[0],s[1]);break}}return n}else{var i=t,r=e.indexOf(i[0]),a=e.indexOf(i[1]);return r!==-1&&a!==-1?[S(e,r,a),S(e,a,r)]:!1}}function E(e){var t=e,r;for(r=0;r<t.length-1;r++)for(var i=0;i<r-1;i++)if(n(t[r],t[r+1],t[i],t[i+1]))return!1;for(r=1;r<t.length-2;r++)if(n(t[0],t[t.length-1],t[r],t[r+1]))return!1;return!0}function D(e,t,n,r,i){i||=0;var a=t[1]-e[1],o=e[0]-t[0],s=a*e[0]+o*e[1],c=r[1]-n[1],l=n[0]-r[0],u=c*n[0]+l*n[1],d=a*l-c*o;return j(d,0,i)?[0,0]:[(l*s-o*u)/d,(a*u-c*s)/d]}function O(e,t,n,r,c,l,u){l||=100,u||=0,c||=25,t=t===void 0?[]:t,n||=[],r||=[];var p=[0,0],h=[0,0],g=[0,0],v=0,y=0,b=0,S=0,C=0,w=0,T=0,E=[],k=[],A=e,j=e;if(j.length<3)return t;if(u++,u>l)return console.warn(`quickDecomp: max level (`+l+`) reached.`),t;for(var M=0;M<e.length;++M)if(_(A,M)){n.push(A[M]),v=y=Number.MAX_VALUE;for(var N=0;N<e.length;++N)i(f(A,M-1),f(A,M),f(A,N))&&s(f(A,M-1),f(A,M),f(A,N-1))&&(g=D(f(A,M-1),f(A,M),f(A,N),f(A,N-1)),o(f(A,M+1),f(A,M),g)&&(b=d(A[M],g),b<y&&(y=b,h=g,w=N))),i(f(A,M+1),f(A,M),f(A,N+1))&&s(f(A,M+1),f(A,M),f(A,N))&&(g=D(f(A,M+1),f(A,M),f(A,N),f(A,N+1)),i(f(A,M-1),f(A,M),g)&&(b=d(A[M],g),b<v&&(v=b,p=g,C=N)));if(w===(C+1)%e.length)g[0]=(h[0]+p[0])/2,g[1]=(h[1]+p[1])/2,r.push(g),M<C?(m(E,A,M,C+1),E.push(g),k.push(g),w!==0&&m(k,A,w,A.length),m(k,A,0,M+1)):(M!==0&&m(E,A,M,A.length),m(E,A,0,C+1),E.push(g),k.push(g),m(k,A,w,M+1));else{if(w>C&&(C+=e.length),S=Number.MAX_VALUE,C<w)return t;for(var N=w;N<=C;++N)a(f(A,M-1),f(A,M),f(A,N))&&s(f(A,M+1),f(A,M),f(A,N))&&(b=d(f(A,M),f(A,N)),b<S&&x(A,M,N)&&(S=b,T=N%e.length));M<T?(m(E,A,M,T+1),T!==0&&m(k,A,T,j.length),m(k,A,0,M+1)):(M!==0&&m(E,A,M,j.length),m(E,A,0,T+1),m(k,A,T,M+1))}return E.length<k.length?(O(E,t,n,r,c,l,u),O(k,t,n,r,c,l,u)):(O(k,t,n,r,c,l,u),O(E,t,n,r,c,l,u)),t}return t.push(e),t}function k(e,t){for(var n=0,r=e.length-1;e.length>3&&r>=0;--r)u(f(e,r-1),f(e,r),f(e,r+1),t)&&(e.splice(r%e.length,1),n++);return n}function A(e,t){for(var n=e.length-1;n>=1;--n)for(var r=e[n],i=n-1;i>=0;--i)if(M(r,e[i],t)){e.splice(n,1);continue}}function j(e,t,n){return n||=0,Math.abs(e-t)<=n}function M(e,t,n){return j(e[0],t[0],n)&&j(e[1],t[1],n)}},52018(e,t,n){e.exports=new(n(83419))({initialize:function(e){this.pluginManager=e,this.game=e.game},init:function(){},start:function(){},stop:function(){},destroy:function(){this.pluginManager=null,this.game=null,this.scene=null,this.systems=null}})},42363(e){var t={Global:[`game`,`anims`,`cache`,`plugins`,`registry`,`scale`,`sound`,`textures`,`renderer`],CoreScene:[`EventEmitter`,`CameraManager`,`GameObjectCreator`,`GameObjectFactory`,`ScenePlugin`,`DisplayList`,`UpdateList`],DefaultScene:[`Clock`,`DataManagerPlugin`,`InputPlugin`,`Loader`,`TweenManager`,`LightsPlugin`]};typeof PLUGIN_CAMERA3D&&t.DefaultScene.push(`CameraManager3D`),typeof PLUGIN_FBINSTANT&&t.Global.push(`facebook`),e.exports=t},37277(e){var t={},n={},r={};r.register=function(e,n,r,i){i===void 0&&(i=!1),t[e]={plugin:n,mapping:r,custom:i}},r.registerCustom=function(e,t,r,i){n[e]={plugin:t,mapping:r,data:i}},r.hasCore=function(e){return t.hasOwnProperty(e)},r.hasCustom=function(e){return n.hasOwnProperty(e)},r.getCore=function(e){return t[e]},r.getCustom=function(e){return n[e]},r.getCustomClass=function(e){return n.hasOwnProperty(e)?n[e].plugin:null},r.remove=function(e){t.hasOwnProperty(e)&&delete t[e]},r.removeCustom=function(e){n.hasOwnProperty(e)&&delete n[e]},r.destroyCorePlugins=function(){for(var e in t)t.hasOwnProperty(e)&&delete t[e]},r.destroyCustomPlugins=function(){for(var e in n)n.hasOwnProperty(e)&&delete n[e]},e.exports=r},77332(e,t,n){var r=n(83419),i=n(8443),a=n(50792),o=n(74099),s=n(44603),c=n(39429),l=n(95540),u=n(37277),d=n(72905),f=n(8054);e.exports=new r({Extends:a,initialize:function(e){a.call(this),this.game=e,this.plugins=[],this.scenePlugins=[],this._pendingGlobal=[],this._pendingScene=[],e.isBooted||e.config.renderType===f.HEADLESS?this.boot():e.events.once(i.BOOT,this.boot,this)},boot:function(){var e,t,n,r,a,o,s,c=this.game.config,u=c.installGlobalPlugins;for(u=u.concat(this._pendingGlobal),e=0;e<u.length;e++)t=u[e],n=l(t,`key`,null),r=l(t,`plugin`,null),a=l(t,`start`,!1),o=l(t,`mapping`,null),s=l(t,`data`,null),n&&(r?this.install(n,r,a,o,s):console.warn("Missing `plugin` for key: "+n));for(u=c.installScenePlugins,u=u.concat(this._pendingScene),e=0;e<u.length;e++)t=u[e],n=l(t,`key`,null),r=l(t,`plugin`,null),o=l(t,`mapping`,null),n&&(r?this.installScenePlugin(n,r,o):console.warn("Missing `plugin` for key: "+n));this._pendingGlobal=[],this._pendingScene=[],this.game.events.once(i.DESTROY,this.destroy,this)},addToScene:function(e,t,n){var r,i,a,o=this.game,s=e.scene,c=e.settings.map,l=e.settings.isBooted;for(r=0;r<t.length;r++)i=t[r],o[i]?(e[i]=o[i],c.hasOwnProperty(i)&&(s[c[i]]=e[i])):i===`game`&&c.hasOwnProperty(i)&&(s[c[i]]=o);for(var d=0;d<n.length;d++)for(a=n[d],r=0;r<a.length;r++)if(i=a[r],u.hasCore(i)){var f=u.getCore(i),p=f.mapping,m=new f.plugin(s,this,p);e[p]=m,f.custom?s[p]=m:c.hasOwnProperty(p)&&(s[c[p]]=m),l&&m.boot()}for(a=this.plugins,r=0;r<a.length;r++){var h=a[r];h.mapping&&(s[h.mapping]=h.plugin)}},getDefaultScenePlugins:function(){var e=this.game.config.defaultPlugins;return e=e.concat(this.scenePlugins),e},installScenePlugin:function(e,t,n,r,i){if(i===void 0&&(i=!1),typeof t!=`function`){console.warn(`Invalid Scene Plugin: `+e);return}if(u.hasCore(e)||u.register(e,t,n,!0),this.scenePlugins.indexOf(e)===-1)this.scenePlugins.push(e);else if(!i&&u.hasCore(e)){console.warn(`Scene Plugin key in use: `+e);return}if(r){var a=new t(r,this,e);r.sys[e]=a,n&&n!==``&&(r[n]=a),a.boot()}},install:function(e,t,n,r,i){if(n===void 0&&(n=!1),r===void 0&&(r=null),i===void 0&&(i=null),typeof t!=`function`)return console.warn(`Invalid Plugin: `+e),null;if(u.hasCustom(e))return console.warn(`Plugin key in use: `+e),null;if(r!==null&&(n=!0),!this.game.isBooted)this._pendingGlobal.push({key:e,plugin:t,start:n,mapping:r,data:i});else if(u.registerCustom(e,t,r,i),n)return this.start(e);return null},getIndex:function(e){for(var t=this.plugins,n=0;n<t.length;n++)if(t[n].key===e)return n;return-1},getEntry:function(e){var t=this.getIndex(e);if(t!==-1)return this.plugins[t]},isActive:function(e){var t=this.getEntry(e);return t&&t.active},start:function(e,t){t===void 0&&(t=e);var n=this.getEntry(t);return n&&!n.active?(n.active=!0,n.plugin.start()):n||=this.createEntry(e,t),n?n.plugin:null},createEntry:function(e,t){var n=u.getCustom(e);if(n){var r=new n.plugin(this);n={key:t,plugin:r,active:!0,mapping:n.mapping,data:n.data},this.plugins.push(n),r.init(n.data),r.start()}return n},stop:function(e){var t=this.getEntry(e);return t&&t.active&&(t.active=!1,t.plugin.stop()),this},get:function(e,t){t===void 0&&(t=!0);var n=this.getEntry(e);if(n)return n.plugin;var r=this.getClass(e);return r&&t?(n=this.createEntry(e,e),n?n.plugin:null):r||null},getClass:function(e){return u.getCustomClass(e)},removeGlobalPlugin:function(e){var t=this.getEntry(e);t&&d(this.plugins,t),u.removeCustom(e)},removeScenePlugin:function(e){d(this.scenePlugins,e),u.remove(e)},registerGameObject:function(e,t,n){return t&&c.register(e,t),n&&s.register(e,n),this},removeGameObject:function(e,t,n){return t===void 0&&(t=!0),n===void 0&&(n=!0),t&&c.remove(e),n&&s.remove(e),this},registerFileType:function(e,t,n){o.register(e,t),n&&n.sys.load&&(n.sys.load[e]=t)},destroy:function(){for(var e=0;e<this.plugins.length;e++)this.plugins[e].plugin.destroy();u.destroyCustomPlugins(),this.game.noReturn&&u.destroyCorePlugins(),this.game=null,this.plugins=[],this.scenePlugins=[]}})},45145(e,t,n){var r=n(52018),i=n(83419),a=n(44594);e.exports=new i({Extends:r,initialize:function(e,t,n){r.call(this,t),this.scene=e,this.systems=e.sys,this.pluginKey=n,e.sys.events.once(a.BOOT,this.boot,this)},boot:function(){},destroy:function(){this.pluginManager=null,this.game=null,this.scene=null,this.systems=null}})},18922(e,t,n){e.exports={BasePlugin:n(52018),DefaultPlugins:n(42363),PluginCache:n(37277),PluginManager:n(77332),ScenePlugin:n(45145)}},63595(){typeof HTMLVideoElement<`u`&&!(`requestVideoFrameCallback`in HTMLVideoElement.prototype)&&`getVideoPlaybackQuality`in HTMLVideoElement.prototype&&(HTMLVideoElement.prototype._rvfcpolyfillmap={},HTMLVideoElement.prototype.requestVideoFrameCallback=function(e){let t=performance.now(),n=this.getVideoPlaybackQuality(),r=this.mozPresentedFrames||this.mozPaintedFrames||n.totalVideoFrames-n.droppedVideoFrames,i=(a,o)=>{let s=this.getVideoPlaybackQuality(),c=this.mozPresentedFrames||this.mozPaintedFrames||s.totalVideoFrames-s.droppedVideoFrames;if(c>r){let r=this.mozFrameDelay||s.totalFrameDelay-n.totalFrameDelay||0,i=o-a;e(o,{presentationTime:o+r*1e3,expectedDisplayTime:o+i,width:this.videoWidth,height:this.videoHeight,mediaTime:Math.max(0,this.currentTime||0)+i/1e3,presentedFrames:c,processingDuration:r}),delete this._rvfcpolyfillmap[t]}else this._rvfcpolyfillmap[t]=requestAnimationFrame(e=>i(o,e))};return this._rvfcpolyfillmap[t]=requestAnimationFrame(e=>i(t,e)),t},HTMLVideoElement.prototype.cancelVideoFrameCallback=function(e){cancelAnimationFrame(this._rvfcpolyfillmap[e]),delete this._rvfcpolyfillmap[e]})},10312(e){e.exports={SKIP_CHECK:-1,NORMAL:0,ADD:1,MULTIPLY:2,SCREEN:3,OVERLAY:4,DARKEN:5,LIGHTEN:6,COLOR_DODGE:7,COLOR_BURN:8,HARD_LIGHT:9,SOFT_LIGHT:10,DIFFERENCE:11,EXCLUSION:12,HUE:13,SATURATION:14,COLOR:15,LUMINOSITY:16,ERASE:17,SOURCE_IN:18,SOURCE_OUT:19,SOURCE_ATOP:20,DESTINATION_OVER:21,DESTINATION_IN:22,DESTINATION_OUT:23,DESTINATION_ATOP:24,LIGHTER:25,COPY:26,XOR:27}},29795(e){e.exports={DEFAULT:0,LINEAR:0,NEAREST:1}},84322(e){e.exports={MULTIPLY:0,FILL:1,ADD:2,SCREEN:4,OVERLAY:5,HARD_LIGHT:6}},68627(e,t,n){var r=n(19715),i=n(32880),a=n(83419),o=n(8054),s=n(50792),c=n(92503),l=n(56373),u=n(97480),d=n(69442),f=n(8443),p=n(61340);e.exports=new a({Extends:s,initialize:function(e){s.call(this);var t=e.config;this.config={clearBeforeRender:t.clearBeforeRender,backgroundColor:t.backgroundColor,antialias:t.antialias,roundPixels:t.roundPixels,transparent:t.transparent},this.game=e,this.type=o.CANVAS,this.drawCount=0,this.width=0,this.height=0,this.gameCanvas=e.canvas;var n={alpha:t.transparent,desynchronized:t.desynchronized,willReadFrequently:!1};this.gameContext=t.context?t.context:this.gameCanvas.getContext(`2d`,n),this.currentContext=this.gameContext,this.antialias=t.antialias,this.blendModes=l(),this.snapshotState={x:0,y:0,width:1,height:1,getPixel:!1,callback:null,type:`image/png`,encoder:.92},this._tempMatrix1=new p,this._tempMatrix2=new p,this._tempMatrix3=new p,this.isBooted=!1,this.init()},init:function(){var e=this.game;e.events.once(f.BOOT,function(){var e=this.config;if(!e.transparent){var t=this.gameContext,n=this.gameCanvas;t.fillStyle=e.backgroundColor.rgba,t.fillRect(0,0,n.width,n.height)}},this),e.textures.once(d.READY,this.boot,this)},boot:function(){var e=this.game,t=e.scale.baseSize;this.width=t.width,this.height=t.height,this.isBooted=!0,e.scale.on(u.RESIZE,this.onResize,this),this.resize(t.width,t.height)},onResize:function(e,t){(t.width!==this.width||t.height!==this.height)&&this.resize(t.width,t.height)},resize:function(e,t){this.width=e,this.height=t,this.emit(c.RESIZE,e,t)},resetTransform:function(){this.currentContext.setTransform(1,0,0,1,0,0)},setBlendMode:function(e){return this.currentContext.globalCompositeOperation=e,this},setContext:function(e){return this.currentContext=e||this.gameContext,this},setAlpha:function(e){return this.currentContext.globalAlpha=e,this},preRender:function(){var e=this.gameContext,t=this.config,n=this.width,r=this.height;e.globalAlpha=1,e.globalCompositeOperation=`source-over`,e.setTransform(1,0,0,1,0,0),this.emit(c.PRE_RENDER_CLEAR),t.clearBeforeRender&&(e.clearRect(0,0,n,r),t.transparent||(e.fillStyle=t.backgroundColor.rgba,e.fillRect(0,0,n,r))),e.save(),this.drawCount=0,this.emit(c.PRE_RENDER)},render:function(e,t,n){var i=t.length;this.emit(c.RENDER,e,n);var a=n.x,o=n.y,s=n.width,l=n.height,u=n.renderToTexture?n.context:e.sys.context;u.save(),this.game.scene.customViewports&&(u.beginPath(),u.rect(a,o,s,l),u.clip()),n.emit(r.PRE_RENDER,n),this.currentContext=u;var d=n.mask;d&&d.preRenderCanvas(this,null,n._maskCamera),n.transparent||(u.fillStyle=n.backgroundColor.rgba,u.fillRect(a,o,s,l)),u.globalAlpha=n.alpha,u.globalCompositeOperation=`source-over`,this.drawCount+=i,n.renderToTexture&&n.emit(r.PRE_RENDER,n),n.matrix.copyToContext(u);for(var f=0;f<i;f++){var p=t[f];p.mask&&p.mask.preRenderCanvas(this,p,n),p.renderCanvas(this,p,n),p.mask&&p.mask.postRenderCanvas(this,p,n)}u.setTransform(1,0,0,1,0,0),u.globalCompositeOperation=`source-over`,u.globalAlpha=1,n.flashEffect.postRenderCanvas(u),n.fadeEffect.postRenderCanvas(u),n.dirty=!1,d&&d.postRenderCanvas(this),u.restore(),n.renderToTexture&&(n.emit(r.POST_RENDER,n),n.renderToGame&&e.sys.context.drawImage(n.canvas,a,o)),n.emit(r.POST_RENDER,n)},postRender:function(){this.gameContext.restore(),this.emit(c.POST_RENDER);var e=this.snapshotState;e.callback&&=(i(this.gameCanvas,e),null)},snapshotCanvas:function(e,t,n,r,a,o,s,c,l){n===void 0&&(n=!1),this.snapshotArea(r,a,o,s,t,c,l);var u=this.snapshotState;return u.getPixel=n,i(e,u),u.callback=null,this},snapshot:function(e,t,n){return this.snapshotArea(0,0,this.gameCanvas.width,this.gameCanvas.height,e,t,n)},snapshotArea:function(e,t,n,r,i,a,o){var s=this.snapshotState;return s.callback=i,s.type=a,s.encoder=o,s.getPixel=!1,s.x=e,s.y=t,s.width=Math.min(n,this.gameCanvas.width),s.height=Math.min(r,this.gameCanvas.height),this},snapshotPixel:function(e,t,n){return this.snapshotArea(e,t,1,1,n),this.snapshotState.getPixel=!0,this},batchSprite:function(e,t,n,r){var i=n.alpha*e.alpha;if(i!==0){var a=this.currentContext,o=this._tempMatrix1,s=this._tempMatrix2,c=t.canvasData,l=c.x,u=c.y,d=t.cutWidth,f=t.cutHeight,p=t.customPivot,m=t.source.resolution,h=e.displayOriginX,g=e.displayOriginY,_=-h+t.x,v=-g+t.y;if(e.isCropped){var y=e._crop;(y.flipX!==e.flipX||y.flipY!==e.flipY)&&t.updateCropUVs(y,e.flipX,e.flipY),d=y.cw,f=y.ch,l=y.cx,u=y.cy,_=-h+y.x,v=-g+y.y,e.flipX&&(_>=0?_=-(_+d):_<0&&(_=Math.abs(_)-d)),e.flipY&&(v>=0?v=-(v+f):v<0&&(v=Math.abs(v)-f))}var b=1,x=1;e.flipX&&(p||(_+=-t.realWidth+h*2),b=-1),e.flipY&&(p||(v+=-t.realHeight+g*2),x=-1);var S=e.x,C=e.y;if(n.roundPixels&&(S=Math.floor(S),C=Math.floor(C)),s.applyITRS(S,C,e.rotation,e.scaleX*b,e.scaleY*x),o.copyWithScrollFactorFrom(n.matrixCombined,n.scrollX,n.scrollY,e.scrollFactorX,e.scrollFactorY),r&&o.multiply(r),o.multiply(s),n.renderRoundPixels&&(o.e=Math.floor(o.e+.5),o.f=Math.floor(o.f+.5)),a.save(),o.setToContext(a),a.globalCompositeOperation=this.blendModes[e.blendMode],a.globalAlpha=i,a.imageSmoothingEnabled=!t.source.scaleMode,e.mask&&e.mask.preRenderCanvas(this,e,n),d>0&&f>0){var w=d/m,T=f/m;n.roundPixels&&(_=Math.floor(_+.5),v=Math.floor(v+.5),w+=.5,T+=.5),a.drawImage(t.source.image,l,u,d,f,_,v,w,T)}e.mask&&e.mask.postRenderCanvas(this,e,n),a.restore()}},destroy:function(){this.removeAllListeners(),this.game=null,this.gameCanvas=null,this.gameContext=null}})},55830(e,t,n){e.exports={CanvasRenderer:n(68627),GetBlendModes:n(56373),SetTransform:n(20926)}},56373(e,t,n){var r=n(10312),i=n(89289);e.exports=function(){var e=[],t=i.supportNewBlendModes,n=`source-over`;return e[r.NORMAL]=n,e[r.ADD]=`lighter`,e[r.MULTIPLY]=t?`multiply`:n,e[r.SCREEN]=t?`screen`:n,e[r.OVERLAY]=t?`overlay`:n,e[r.DARKEN]=t?`darken`:n,e[r.LIGHTEN]=t?`lighten`:n,e[r.COLOR_DODGE]=t?`color-dodge`:n,e[r.COLOR_BURN]=t?`color-burn`:n,e[r.HARD_LIGHT]=t?`hard-light`:n,e[r.SOFT_LIGHT]=t?`soft-light`:n,e[r.DIFFERENCE]=t?`difference`:n,e[r.EXCLUSION]=t?`exclusion`:n,e[r.HUE]=t?`hue`:n,e[r.SATURATION]=t?`saturation`:n,e[r.COLOR]=t?`color`:n,e[r.LUMINOSITY]=t?`luminosity`:n,e[r.ERASE]=`destination-out`,e[r.SOURCE_IN]=`source-in`,e[r.SOURCE_OUT]=`source-out`,e[r.SOURCE_ATOP]=`source-atop`,e[r.DESTINATION_OVER]=`destination-over`,e[r.DESTINATION_IN]=`destination-in`,e[r.DESTINATION_OUT]=`destination-out`,e[r.DESTINATION_ATOP]=`destination-atop`,e[r.LIGHTER]=`lighter`,e[r.COPY]=`copy`,e[r.XOR]=`xor`,e}},20926(e,t,n){var r=n(91296);e.exports=function(e,t,n,i,a){var o=i.alpha*n.alpha;if(o<=0)return!1;var s=r(n,i,a).calc;return t.globalCompositeOperation=e.blendModes[n.blendMode],t.globalAlpha=o,t.save(),s.setToContext(t),t.imageSmoothingEnabled=n.frame?!n.frame.source.scaleMode:e.antialias,!0}},63899(e){e.exports=`losewebgl`},6119(e){e.exports=`postrender`},31124(e){e.exports=`prerenderclear`},48070(e){e.exports=`prerender`},15640(e){e.exports=`render`},8912(e){e.exports=`resize`},87124(e){e.exports=`restorewebgl`},53998(e){e.exports=`setparalleltextureunits`},92503(e,t,n){e.exports={LOSE_WEBGL:n(63899),POST_RENDER:n(6119),PRE_RENDER:n(48070),PRE_RENDER_CLEAR:n(31124),RENDER:n(15640),RESIZE:n(8912),RESTORE_WEBGL:n(87124),SET_PARALLEL_TEXTURE_UNITS:n(53998)}},36909(e,t,n){e.exports={Events:n(92503),Snapshot:n(89966)},e.exports.Canvas=n(55830),e.exports.WebGL=n(4159)},32880(e,t,n){var r=n(27919),i=n(40987),a=n(95540);e.exports=function(e,t){var n=a(t,`callback`),o=a(t,`type`,`image/png`),s=a(t,`encoder`,.92),c=Math.abs(Math.round(a(t,`x`,0))),l=Math.abs(Math.round(a(t,`y`,0))),u=Math.floor(a(t,`width`,e.width)),d=Math.floor(a(t,`height`,e.height));if(a(t,`getPixel`,!1)){var f=e.getContext(`2d`,{willReadFrequently:!1}).getImageData(c,l,1,1).data;n.call(null,new i(f[0],f[1],f[2],f[3]))}else if(c!==0||l!==0||u!==e.width||d!==e.height){var p=r.createWebGL(this,u,d),m=p.getContext(`2d`,{willReadFrequently:!0});u>0&&d>0&&m.drawImage(e,c,l,u,d,0,0,u,d);var h=new Image;h.onerror=function(){n.call(null),r.remove(p)},h.onload=function(){n.call(null,h),r.remove(p)},h.src=p.toDataURL(o,s)}else{var g=new Image;g.onerror=function(){n.call(null)},g.onload=function(){n.call(null,g)},g.src=e.toDataURL(o,s)}}},88815(e,t,n){var r=n(27919),i=n(40987),a=n(95540);e.exports=function(e,t){var n=e,o=a(t,`callback`),s=a(t,`type`,`image/png`),c=a(t,`encoder`,.92),l=Math.abs(Math.round(a(t,`x`,0))),u=Math.abs(Math.round(a(t,`y`,0))),d=a(t,`getPixel`,!1),f=a(t,`isFramebuffer`,!1),p=f?a(t,`bufferWidth`,1):n.drawingBufferWidth,m=f?a(t,`bufferHeight`,1):n.drawingBufferHeight;if(d){var h=new Uint8Array(4),g=m-u-1;n.readPixels(l,g,1,1,n.RGBA,n.UNSIGNED_BYTE,h),o.call(null,new i(h[0],h[1],h[2],h[3]))}else{var _=Math.floor(a(t,`width`,p)),v=Math.floor(a(t,`height`,m)),y=_*v*4,b=new Uint8Array(y);n.readPixels(l,m-u-v,_,v,n.RGBA,n.UNSIGNED_BYTE,b);for(var x=r.createWebGL(this,_,v),S=x.getContext(`2d`,{willReadFrequently:!0}),C=S.getImageData(0,0,_,v),w=C.data,T=0;T<v;T++)for(var E=0;E<_;E++){var D=((v-T-1)*_+E)*4,O=(T*_+E)*4,k=b[D+0],A=b[D+1],j=b[D+2],M=b[D+3];if(t.unpremultiplyAlpha&&M!==0){var N=255/M;k=Math.floor(k*N),A=Math.floor(A*N),j=Math.floor(j*N)}w[O+0]=k,w[O+1]=A,w[O+2]=j,w[O+3]=M}S.putImageData(C,0,0);var P=new Image;P.onerror=function(){o.call(null),r.remove(x)},P.onload=function(){o.call(null,P),r.remove(x)},P.src=x.toDataURL(s,c)}}},89966(e,t,n){e.exports={Canvas:n(32880),WebGL:n(88815)}},87774(e,t,n){var r=new(n(83419))({initialize:function(e,t){t===void 0&&(t={}),this.renderer=e,this.camera=null,this.setCamera(t.camera||null),this.state={bindings:{framebuffer:null},blend:{},colorClearValue:t.clearColor||[0,0,0,0],scissor:{box:[0,0,0,0],enable:!0},viewport:[0,0,0,0]},this.blendMode=-1,this.setBlendMode(t.blendMode||0),this.autoClear=0,t.autoClear===void 0||t.autoClear===!0?this.setAutoClear(!0,!0,!0):Array.isArray(t.autoClear)&&this.setAutoClear.apply(this,t.autoClear),this.useCanvas=!!t.useCanvas,this.framebuffer=null,this.texture=null,this.pool=t.pool||null,this.lastUsed=0,this.width=0,this.height=0,this._locks=[],t.copyFrom?this.copy(t.copyFrom):this.resize(t.width||e.width,t.height||e.height)},resize:function(e,t){if(e=Math.round(e),t=Math.round(t),e<=0&&(e=1),t<=0&&(t=1),this.useCanvas)this.framebuffer||=this.renderer.createFramebuffer(null);else if(this.framebuffer)this.framebuffer.resize(e,t);else{var n=this.renderer;this.texture=n.createTextureFromSource(null,e,t,0),this.framebuffer=n.createFramebuffer(this.texture,!0,!1)}this.state.bindings.framebuffer=this.framebuffer,this.width=e,this.height=t,this.state.scissor.box=[0,0,e,t],this.state.viewport=[0,0,e,t]},copy:function(e){var t=e.state,n=t.blend,r=t.scissor;this.autoClear=e.autoClear,this.useCanvas=e.useCanvas,this.framebuffer=e.framebuffer,this.texture=e.texture,this.camera=e.camera,this.blendMode=e.blendMode,this.width=e.width,this.height=e.height,this.state={bindings:{framebuffer:t.bindings.framebuffer},blend:{color:n.color&&n.color.slice(),enable:n.enable,equation:n.equation,func:n.func},colorClearValue:t.colorClearValue.slice(),scissor:{box:r.box.slice(),enable:r.enable},viewport:t.viewport.slice()}},getClone:function(e){var t=new r(this.renderer,{copyFrom:this});return e||t.setAutoClear(!1,!1,!1),t},setAutoClear:function(e,t,n){var r=0,i=this.renderer.gl;e&&(r|=i.COLOR_BUFFER_BIT),t&&(r|=i.DEPTH_BUFFER_BIT),n&&(r|=i.STENCIL_BUFFER_BIT),this.autoClear=r},setBlendMode:function(e,t){if(e!==this.blendMode){var n=this.state.blend,r=this.renderer.blendModes[e];n.enable=r.enable,n.equation=r.equation,n.func=r.func,t?n.color=t:n.color=void 0,this.blendMode=e}},setCamera:function(e){this.camera=e},setClearColor:function(e,t,n,r){var i=this.state.colorClearValue;e===i[0]&&t===i[1]&&n===i[2]&&r===i[3]||(this.state.colorClearValue=[e,t,n,r])},setScissorBox:function(e,t,n,r){t=this.height-t-r,this.state.scissor.box=[e,t,n,r]},setScissorEnable:function(e){this.state.scissor.enable=e},use:function(){this.renderer.renderNodes.finishBatch(),this.autoClear&&this.clear()},release:function(){this.pool&&this._locks.length===0&&(this.lastUsed=Date.now(),this.pool.add(this)),this.renderer.renderNodes.finishBatch()},lock:function(e){this._locks.indexOf(e)===-1&&this._locks.push(e)},unlock:function(e,t){var n=this._locks.indexOf(e);n!==-1&&this._locks.splice(n,1),t&&this.release()},isLocked:function(){return this._locks.length>0},beginDraw:function(){this.framebuffer&&this.renderer.glTextureUnits.unbindTexture(this.texture),this.renderer.glWrapper.update(this.state)},clear:function(e){this.beginDraw(),e===void 0&&(e=this.autoClear),this.renderer.renderNodes.finishBatch(),this.renderer.gl.clear(e)},destroy:function(){this.renderer.deleteTexture(this.texture),this.renderer.deleteFramebuffer(this.state.bindings.framebuffer),this.renderer=null,this.camera=null,this.state=null,this.framebuffer=null,this.texture=null}});e.exports=r},65656(e,t,n){var r=n(83419),i=n(87774);e.exports=new r({initialize:function(e,t,n){this.renderer=e,this.maxAge=t,this.maxPoolSize=n,this.agePool=[],this.sizePool={}},add:function(e){if(this.agePool.indexOf(e)===-1){var t=e.width+`x`+e.height;this.sizePool[t]?this.sizePool[t].push(e):this.sizePool[t]=[e],this.agePool.push(e)}},get:function(e,t){var n,r,a=this.renderer;e===void 0&&(e=a.width),t===void 0&&(t=a.height);var o=a.getMaxTextureSize();e>o&&(e=o),t>o&&(t=o);var s=e+`x`+t,c=this.sizePool[s];if(c&&c.length>0)return n=c.pop(),r=this.agePool.indexOf(n),this.agePool.splice(r,1),n;if(this.agePool.length>0){var l=Date.now(),u=this.maxAge;if(n=this.agePool[0],l-n.lastUsed>u){this.agePool.shift();var d=n.width+`x`+n.height;return c=this.sizePool[d],r=c.indexOf(n),c.splice(r,1),n.resize(e,t),n}}return this.agePool.length<this.maxPoolSize?(n=new i(a,{autoClear:!0,pool:this,width:e,height:t}),n):(n=this.agePool.shift(),n?(c=this.sizePool[s],r=c.indexOf(n),c.splice(r,1),n.resize(e,t),n):(n=new i(a,{autoClear:!0,pool:this,width:e,height:t}),n))},setMaxAge:function(e){this.maxAge=e},setMaxPoolSize:function(e){this.maxPoolSize=e},clear:function(){for(var e=0;e<this.agePool.length;e++)this.agePool[e].destroy();this.sizePool={},this.agePool.length=0},prune:function(){var e=this.sizePool,t=this.agePool,n=t.length-this.maxPoolSize;if(n>0)for(var r=t.splice(0,n),i=0;i<n;i++){var a=r[i],o=e[a.width+`x`+a.height],s=o.indexOf(a);o.splice(s,1),a.destroy()}}})},56436(e,t,n){var r=n(83419),i=n(62644);e.exports=new r({initialize:function(e,t,n){this.renderer=e,this.indexBuffer=n,this.attributeBufferLayouts=t,this.currentProgramKey=null,this.currentConfig={base:{vertexShader:``,fragmentShader:``},additions:[],features:[]},this.programs={},this.uniforms={}},getCurrentProgramSuite:function(){var e=this.currentConfig,t=this.renderer,n=t.shaderProgramFactory,r=n.getKey(e.base,e.additions,e.features);if(!this.programs[r]){var a=n.getShaderProgram(e.base,e.additions,e.features);a.compiling&&a.checkParallelCompile(),a.compiling||(this.programs[r]={program:a,vao:t.createVAO(a,this.indexBuffer,this.attributeBufferLayouts),config:i(e)})}return this.programs[r]||null},resetCurrentConfig:function(){this.currentConfig.base.vertexShader=``,this.currentConfig.base.fragmentShader=``,this.currentConfig.additions.length=0,this.currentConfig.features.length=0},setUniform:function(e,t){this.uniforms[e]=t},removeUniform:function(e){delete this.uniforms[e]},clearUniforms:function(){this.uniforms={}},applyUniforms:function(e){var t=this.uniforms;for(var n in t)e.setUniform(n,t[n])},setBaseShader:function(e,t,n){var r=this.currentConfig.base;r.name=e,r.vertexShader=t,r.fragmentShader=n},addAddition:function(e,t){t===void 0?this.currentConfig.additions.push(e):this.currentConfig.additions.splice(t,0,e)},getAddition:function(e){for(var t=this.currentConfig.additions,n=0;n<t.length;n++){var r=t[n];if(r.name===e)return r}return null},getAdditionsByTag:function(e){return this.currentConfig.additions.filter(function(t){return t.tags?t.tags.includes(e):!1})},getAdditionIndex:function(e){return this.currentConfig.additions.findIndex(function(t){return t.name===e})},removeAddition:function(e){this.currentConfig.additions=this.currentConfig.additions.filter(function(t){return t.name!==e})},replaceAddition:function(e,t){var n=this.currentConfig.additions.findIndex(function(t){return t.name===e});n!==-1&&(this.currentConfig.additions[n]=t)},addFeature:function(e){this.currentConfig.features.indexOf(e)===-1&&this.currentConfig.features.push(e)},removeFeature:function(e){this.currentConfig.features=this.currentConfig.features.filter(function(t){return t!==e})},clearFeatures:function(){this.currentConfig.features.length=0}})},18804(e,t,n){e.exports=new(n(83419))({initialize:function(e){this.renderer=e,this.programs={}},has:function(e){return this.programs[e]!==void 0},getShaderProgram:function(e,t,n){var r=this.getKey(e,t,n),i=this.programs[r];return i||=this.createShaderProgram(r,e,t,n),i},getKey:function(e,t,n){var r=e.name;if(t&&t.length>0){r+=`_`;for(var i=0;i<t.length;i++){var a=t[i];a.disable||(r+=`_`+a.name)}}return n&&n.length>0&&(r+=`__`,r+=n.sort().join(`_`)),r},createShaderProgram:function(e,t,n,r){var i=t.vertexShader,a=t.fragmentShader;if(i=i.replace(/\r/g,``),a=a.replace(/\r/g,``),n){for(var o,s,c={},l=0;l<n.length;l++){var u=n[l];if(!u.disable)for(o in u.additions)s=u.additions[o],s=s.replace(/\r/g,``),c[o]||(c[o]=``),c[o]+=s+`
27
+ `}for(o in c){var d=`#pragma phaserTemplate(`+o+`)
28
+ `;s=c[o],i=i.replace(d,s),a=a.replace(d,s)}}if(r){var f=``,p=/[^a-zA-Z0-9]/g;for(l=0;l<r.length;l++){var m=r[l].toUpperCase().replace(p,`_`);f+=`#define FEATURE_`+m+`
29
+ `}i=i.replace(`#pragma phaserTemplate(features)`,f),a=a.replace(`#pragma phaserTemplate(features)`,f)}i=i.replace(`#pragma phaserTemplate(shaderName)`,`#define SHADER_NAME `+e+`__VERTEX`),a=a.replace(`#pragma phaserTemplate(shaderName)`,`#define SHADER_NAME `+e+`__FRAGMENT`);var h=/\s*#pragma phaserTemplate\(.*/g;i=i.replace(h,``),a=a.replace(h,``);var g=this.renderer.createProgram(i,a);return this.programs[e]=g,g}})},70554(e,t,n){var r=n(61340);e.exports={getTintFromFloats:function(e,t,n,r){var i=(e*255|0)&255,a=(t*255|0)&255,o=(n*255|0)&255;return(((r*255|0)&255)<<24|i<<16|a<<8|o)>>>0},getTintAppendFloatAlpha:function(e,t){return(((t*255|0)&255)<<24|e)>>>0},getTintAppendFloatAlphaAndSwap:function(e,t){var n=(e>>16|0)&255,r=(e>>8|0)&255,i=(e|0)&255;return(((t*255|0)&255)<<24|i<<16|r<<8|n)>>>0},getFloatsFromUintRGB:function(e){var t=(e>>16|0)&255,n=(e>>8|0)&255,r=(e|0)&255;return[t/255,n/255,r/255]},checkShaderMax:function(e,t){var n=Math.min(16,e.getParameter(e.MAX_TEXTURE_IMAGE_UNITS));return!t||t===-1?n:Math.min(n,t)},updateLightingUniforms:function(e,t,n,i,a,o,s,c){var l=t.camera,u=l.scene.sys.lights;if(!(!u||!u.active)){var d=u.getLights(l),f=d.length,p=u.ambientColor,m=t.height;if(e){n.setUniform(`uNormSampler`,i),n.setUniform(`uCamera`,[l.x,l.y,l.rotation,l.zoom]),n.setUniform(`uAmbientLightColor`,[p.r,p.g,p.b]),n.setUniform(`uLightCount`,f);for(var h=new r,g=0;g<f;g++){var _=d[g].light,v=_.color,y=`uLights[`+g+`].`;h.copyWithScrollFactorFrom(l.matrixCombined,l.scrollX,l.scrollY,_.scrollFactorX,_.scrollFactorY),h.transformPoint(_.x,_.y,a),n.setUniform(y+`position`,[a.x,m-a.y,_.z*l.zoom]),n.setUniform(y+`color`,[v.r,v.g,v.b]),n.setUniform(y+`intensity`,_.intensity),n.setUniform(y+`radius`,_.radius)}o&&(n.setUniform(`uDiffuseFlatThreshold`,c*3),n.setUniform(`uPenumbra`,s))}else for(n.removeUniform(`uNormSampler`),n.removeUniform(`uCamera`),n.removeUniform(`uAmbientLightColor`),n.removeUniform(`uLightCount`),n.removeUniform(`uPenumbra`),n.removeUniform(`uDiffuseFlatThreshold`),g=0;g<f;g++)y=`uLights[`+g+`].`,n.removeUniform(y+`position`),n.removeUniform(y+`color`),n.removeUniform(y+`intensity`),n.removeUniform(y+`radius`)}}}},74797(e,t,n){var r=n(95428),i=n(72905),a=n(83419),o=n(8054),s=n(50792),c=n(92503),l=n(50030),u=n(37867),d=n(29747),f=n(87774),p=n(97480),m=n(69442),h=n(70554),g=n(88815),_=n(26128),v=n(37959),y=n(1482),b=n(86272),x=n(82751),S=n(13760),C=n(84387),w=n(85788),T=n(47774),E=n(53314),D=n(30130),O=n(65656),k=n(18804),A=!1;if(0)var j;e.exports=new a({Extends:s,initialize:function(e){s.call(this);var t=e.config,n={alpha:t.transparent,desynchronized:t.desynchronized,depth:!0,antialias:t.antialiasGL,premultipliedAlpha:t.premultipliedAlpha,stencil:!0,failIfMajorPerformanceCaveat:t.failIfMajorPerformanceCaveat,powerPreference:t.powerPreference,preserveDrawingBuffer:t.preserveDrawingBuffer,willReadFrequently:!1};this.config={clearBeforeRender:t.clearBeforeRender,antialias:t.antialias,backgroundColor:t.backgroundColor,contextCreation:n,roundPixels:t.roundPixels,pathDetailThreshold:t.pathDetailThreshold,maxTextures:t.maxTextures,maxTextureSize:t.maxTextureSize,batchSize:t.batchSize,maxLights:t.maxLights,mipmapFilter:t.mipmapFilter},this.game=e,this.type=o.WEBGL,this.renderNodes=null,this.cameraRenderNode=null,this.shaderProgramFactory=new k(this),this.width=0,this.height=0,this.canvas=e.canvas,this.blendModes=[],this.contextLost=!1,this.snapshotState={x:0,y:0,width:1,height:1,getPixel:!1,callback:null,type:`image/png`,encoder:.92,isFramebuffer:!1,bufferWidth:0,bufferHeight:0,unpremultiplyAlpha:!0},this.maxTextures=0,this.textureUnitIndices=[],this.glBufferWrappers=[],this.glProgramWrappers=[],this.glTextureWrappers=[],this.glFramebufferWrappers=[],this.glVAOWrappers=[],this.genericQuadIndexBuffer=null,this.baseDrawingContext=null,this.currentViewCamera=null,this.drawingContextPool=new O(this,1e3,1024),this.contextLostHandler=d,this.contextRestoredHandler=d,this.previousContextLostHandler=d,this.previousContextRestoredHandler=d,this.gl=null,this.glWrapper=null,this.glTextureUnits=null,this.supportedExtensions=null,this.instancedArraysExtension=null,this.parallelShaderCompileExtension=null,this.standardDerivativesExtension=null,this.vaoExtension=null,this.extensions={},this.glFormats,this.compression,this.drawingBufferHeight=0,this.blankTexture=null,this.normalTexture=null,this.whiteTexture=null,this.shaderSetters=null,this.mipmapFilter=null,this.isBooted=!1,this.projectionMatrix,this.projectionWidth=0,this.projectionHeight=0,this.projectionFlipY=!1,this.spector=null,this._debugCapture=!1,this.init(this.config)},init:function(e){var t,n=this.game,r=this.canvas,i=e.backgroundColor;if(A&&(this.spector=new j.Spector,this.spector.onCapture.add(this.onCapture.bind(this))),t=n.config.context?n.config.context:r.getContext(`webgl`,e.contextCreation)||r.getContext(`experimental-webgl`,e.contextCreation),!t||t.isContextLost())throw this.contextLost=!0,Error(`WebGL unsupported`);this.gl=t,this.setExtensions(),this.setContextHandlers(),n.context=t;for(var a=0;a<=27;a++)this.blendModes.push(T.createCombined(this));for(this.blendModes[1].func=[t.ONE,t.DST_ALPHA,t.ONE,t.DST_ALPHA],this.blendModes[2].func=[t.DST_COLOR,t.ONE_MINUS_SRC_ALPHA,t.DST_COLOR,t.ONE_MINUS_SRC_ALPHA],this.blendModes[3].func=[t.ONE,t.ONE_MINUS_SRC_COLOR,t.ONE,t.ONE_MINUS_SRC_COLOR],this.blendModes[17].equation=[t.FUNC_REVERSE_SUBTRACT,t.FUNC_REVERSE_SUBTRACT],this.blendModes[17].func=[t.ZERO,t.ONE_MINUS_SRC_ALPHA,t.ZERO,t.ONE_MINUS_SRC_ALPHA],this.glFormats=[t.BYTE,t.SHORT,t.UNSIGNED_BYTE,t.UNSIGNED_SHORT,t.FLOAT],this.shaderSetters=new b(this),(!e.maxTextures||e.maxTextures===-1)&&(e.maxTextures=t.getParameter(t.MAX_TEXTURE_IMAGE_UNITS)),e.maxTextureSize||=t.getParameter(t.MAX_TEXTURE_SIZE),this.compression=this.getCompressedTextures(),this.glWrapper=new v(this),this.glWrapper.update(void 0,!0),t.clearColor(i.redGL,i.greenGL,i.blueGL,i.alphaGL),t.clear(t.COLOR_BUFFER_BIT),[`NEAREST`,`LINEAR`,`NEAREST_MIPMAP_NEAREST`,`LINEAR_MIPMAP_NEAREST`,`NEAREST_MIPMAP_LINEAR`,`LINEAR_MIPMAP_LINEAR`].indexOf(e.mipmapFilter)!==-1&&(this.mipmapFilter=t[e.mipmapFilter]),this.maxTextures=h.checkShaderMax(t,e.maxTextures),a=0;a<this.maxTextures;a++)this.textureUnitIndices.push(a);return this.glTextureUnits=new S(this),this.projectionMatrix=new u().identity(),n.textures.once(m.READY,this.boot,this),this},boot:function(){var e=this.game,t=this.gl,n=e.scale.baseSize,r=n.width,i=n.height;this.width=r,this.height=i,this.isBooted=!0,this.glWrapper.updateVAO({vao:null}),this.genericQuadIndexBuffer=this.createIndexBuffer(new Uint16Array([0,1,2,3]),t.STATIC_DRAW),this.renderNodes=new D(this),this.cameraRenderNode=this.renderNodes.getNode(`Camera`),this.blankTexture=e.textures.getFrame(`__DEFAULT`).glTexture,this.normalTexture=e.textures.getFrame(`__NORMAL`).glTexture,this.whiteTexture=e.textures.getFrame(`__WHITE`).glTexture,this.baseDrawingContext=new f(this,{autoClear:!0,useCanvas:!0,clearColor:[this.config.backgroundColor.redGL,this.config.backgroundColor.greenGL,this.config.backgroundColor.blueGL,this.config.backgroundColor.alphaGL]}),this.on(c.RESIZE,this.baseDrawingContext.resize,this.baseDrawingContext),e.scale.on(p.RESIZE,this.onResize,this),this.resize(r,i)},setExtensions:function(){var e=this.gl,t=this.game,n=e.getSupportedExtensions();this.supportedExtensions=n;var r=`ANGLE_instanced_arrays`;if(this.instancedArraysExtension=n.indexOf(r)>-1?e.getExtension(r):null,t.config.skipUnreadyShaders){var i=`KHR_parallel_shader_compile`;this.parallelShaderCompileExtension=n.indexOf(i)>-1?e.getExtension(i):null,this.parallelShaderCompileExtension||(t.config.skipUnreadyShaders=!1)}var a=`OES_vertex_array_object`;this.vaoExtension=n.indexOf(a)>-1?e.getExtension(a):null;var o=`OES_standard_derivatives`;if(this.standardDerivativesExtension=n.indexOf(o)>-1?e.getExtension(o):null,e instanceof WebGLRenderingContext){if(this.instancedArraysExtension)e.vertexAttribDivisor=this.instancedArraysExtension.vertexAttribDivisorANGLE.bind(this.instancedArraysExtension),e.drawArraysInstanced=this.instancedArraysExtension.drawArraysInstancedANGLE.bind(this.instancedArraysExtension),e.drawElementsInstanced=this.instancedArraysExtension.drawElementsInstancedANGLE.bind(this.instancedArraysExtension);else throw Error(`ANGLE_instanced_arrays extension not supported. Required for rendering.`);if(this.vaoExtension)e.createVertexArray=this.vaoExtension.createVertexArrayOES.bind(this.vaoExtension),e.bindVertexArray=this.vaoExtension.bindVertexArrayOES.bind(this.vaoExtension),e.deleteVertexArray=this.vaoExtension.deleteVertexArrayOES.bind(this.vaoExtension),e.isVertexArray=this.vaoExtension.isVertexArrayOES.bind(this.vaoExtension);else throw Error(`OES_vertex_array_object extension not supported. Required for rendering.`);if(this.standardDerivativesExtension)e.FRAGMENT_SHADER_DERIVATIVE_HINT=this.standardDerivativesExtension.FRAGMENT_SHADER_DERIVATIVE_HINT_OES;else if(t.config.smoothPixelArt)throw Error(`OES_standard_derivatives extension not supported. Cannot use smoothPixelArt.`)}},setContextHandlers:function(e,t){this.previousContextLostHandler&&this.canvas.removeEventListener(`webglcontextlost`,this.previousContextLostHandler,!1),this.previousContextRestoredHandler&&this.canvas.removeEventListener(`webglcontextrestored`,this.previousContextRestoredHandler,!1),typeof e==`function`?this.contextLostHandler=e.bind(this):this.contextLostHandler=this.dispatchContextLost.bind(this),typeof t==`function`?this.contextRestoredHandler=t.bind(this):this.contextRestoredHandler=this.dispatchContextRestored.bind(this),this.canvas.addEventListener(`webglcontextlost`,this.contextLostHandler,!1),this.canvas.addEventListener(`webglcontextrestored`,this.contextRestoredHandler,!1),this.previousContextLostHandler=this.contextLostHandler,this.previousContextRestoredHandler=this.contextRestoredHandler},dispatchContextLost:function(e){this.contextLost=!0,console&&console.warn(`WebGL Context lost. Renderer disabled`),this.emit(c.LOSE_WEBGL,this),e.preventDefault()},dispatchContextRestored:function(e){if(this.gl.isContextLost()){console&&console.log(`WebGL Context restored, but context is still lost`);return}this.setExtensions(),this.glWrapper.update(E.getDefault(this),!0),this.glTextureUnits.init(),this.compression=this.getCompressedTextures();var t=function(e){e.createResource()};r(this.glTextureWrappers,t),r(this.glBufferWrappers,t),r(this.glFramebufferWrappers,t),r(this.glProgramWrappers,t),r(this.glVAOWrappers,t),this.glTextureUnits.bindUnits(this.glTextureUnits.units,!0),this.resize(this.game.scale.baseSize.width,this.game.scale.baseSize.height),this.contextLost=!1,console&&console.warn(`WebGL Context restored. Renderer running again.`),this.emit(c.RESTORE_WEBGL,this),e.preventDefault()},captureFrame:function(e,t){e===void 0&&(e=!1),t===void 0&&(t=!1),A&&this.spector&&!this._debugCapture&&(this.spector.captureCanvas(this.canvas,0,e,t),this._debugCapture=!0)},captureNextFrame:function(){A&&this.spector&&!this._debugCapture&&(this._debugCapture=!0,this.spector.captureNextFrame(this.canvas))},getFps:function(){if(A&&this.spector)return this.spector.getFps()},log:function(){if(A&&this.spector){var e=Array.prototype.slice.call(arguments).join(` `);return this.spector.log(e)}},startCapture:function(e,t,n){e===void 0&&(e=0),t===void 0&&(t=!1),n===void 0&&(n=!1),A&&this.spector&&!this._debugCapture&&(this.spector.startCapture(this.canvas,e,t,n),this._debugCapture=!0)},stopCapture:function(){if(A&&this.spector&&this._debugCapture)return this.spector.stopCapture()},onCapture:function(e){A&&(this.spector.getResultUI().display(e),this._debugCapture=!1)},onResize:function(e,t){(t.width!==this.width||t.height!==this.height)&&this.resize(t.width,t.height)},resize:function(e,t){var n=this.gl;return this.width=e,this.height=t,this.setProjectionMatrix(e,t),this.drawingBufferHeight=n.drawingBufferHeight,this.glWrapper.update({scissor:{box:[0,n.drawingBufferHeight-t,e,t]},viewport:[0,0,e,t]}),this.emit(c.RESIZE,e,t),this},getCompressedTextures:function(){var e=`WEBGL_compressed_texture_`,t=`WEBKIT_`+e,n=`EXT_texture_compression_`,r=function(r,i){var a=r.getExtension(e+i)||r.getExtension(t+i)||r.getExtension(n+i);if(a){var o={};for(var s in a)o[a[s]]=s;return o}},i=this.gl;return{ETC:r(i,`etc`),ETC1:r(i,`etc1`),ATC:r(i,`atc`),ASTC:r(i,`astc`),BPTC:r(i,`bptc`),RGTC:r(i,`rgtc`),PVRTC:r(i,`pvrtc`),S3TC:r(i,`s3tc`),S3TCSRGB:r(i,`s3tc_srgb`),IMG:!0}},getCompressedTextureName:function(e,t){var n=this.compression[e.toUpperCase()];if(t in n)return n[t]},supportsCompressedTexture:function(e,t){var n=this.compression[e.toUpperCase()];return n?t?t in n:!0:!1},getAspectRatio:function(){return this.width/this.height},setProjectionMatrix:function(e,t,n){return(e!==this.projectionWidth||t!==this.projectionHeight||n!==this.projectionFlipY)&&(this.projectionWidth=e,this.projectionHeight=t,this.projectionFlipY=!!n,n?this.projectionMatrix.ortho(0,e,0,t,-1e3,1e3):this.projectionMatrix.ortho(0,e,t,0,-1e3,1e3)),this},setProjectionMatrixFromDrawingContext:function(e){return this.setProjectionMatrix(e.width,e.height,!1)},resetProjectionMatrix:function(){return this.setProjectionMatrix(this.width,this.height)},hasExtension:function(e){return this.supportedExtensions?this.supportedExtensions.indexOf(e):!1},getExtension:function(e){return this.hasExtension(e)?(e in this.extensions||(this.extensions[e]=this.gl.getExtension(e)),this.extensions[e]):null},addBlendMode:function(e,t){return this.blendModes.push(T.createCombined(this,!0,void 0,t,e[0],e[1]))-1-1},updateBlendMode:function(e,t,n){if(e>17&&this.blendModes[e]){var r=this.blendModes[e];t.length===2?r.func=[t[0],t[1],t[0],t[1]]:r.func=[t[0],t[1],t[2],t[3]],typeof n==`number`?r.equation=[n,n]:r.equation=[n[0],n[1]]}return this},removeBlendMode:function(e){return e>17&&this.blendModes[e]&&this.blendModes.splice(e,1),this},clearFramebuffer:function(e,t,n){var r=this.gl,i=0;e&&(this.glWrapper.updateColorClearValue({colorClearValue:e}),i|=r.COLOR_BUFFER_BIT),t!==void 0&&(this.glWrapper.updateStencilClear({stencil:{clear:t}}),i|=r.STENCIL_BUFFER_BIT),n!==void 0&&(i|=r.DEPTH_BUFFER_BIT),r.clear(i)},createTextureFromSource:function(e,t,n,r,i,a){i===void 0&&(i=!1);var s=this.gl,c=s.NEAREST,u=s.NEAREST,d=s.CLAMP_TO_EDGE,f=null;t=e?e.width:t,n=e?e.height:n;var p=l(t,n);if(p&&!i&&(d=s.REPEAT),r===o.ScaleModes.LINEAR&&this.config.antialias){var m=e&&e.compressed,h=!m&&p||m&&e.mipmaps.length>1;c=this.mipmapFilter&&h?this.mipmapFilter:s.LINEAR,u=s.LINEAR}return f=!e&&typeof t==`number`&&typeof n==`number`?this.createTexture2D(0,c,u,d,d,s.RGBA,null,t,n,void 0,void 0,a):this.createTexture2D(0,c,u,d,d,s.RGBA,e,void 0,void 0,void 0,void 0,a),f},createTexture2D:function(e,t,n,r,i,a,o,s,c,l,u,d){typeof s!=`number`&&(s=o?o.width:1),typeof c!=`number`&&(c=o?o.height:1);var f=new x(this,e,t,n,r,i,a,o,s,c,l,u,d);return this.glTextureWrappers.push(f),f},createFramebuffer:function(e,t,n){!Array.isArray(e)&&e!==null&&(e=[e]);var r=new C(this,e,t,n);return this.glFramebufferWrappers.push(r),r},createProgram:function(e,t){var n=new y(this,e,t);return this.glProgramWrappers.push(n),n},createVertexBuffer:function(e,t){var n=this.gl,r=new _(this,e,n.ARRAY_BUFFER,t);return this.glBufferWrappers.push(r),r},createIndexBuffer:function(e,t){var n=this.gl,r=new _(this,e,n.ELEMENT_ARRAY_BUFFER,t);return this.glBufferWrappers.push(r),r},createVAO:function(e,t,n){var r=new w(this,e,t,n);return this.glVAOWrappers.push(r),r},deleteTexture:function(e){if(e)return i(this.glTextureWrappers,e),e.destroy(),this},deleteFramebuffer:function(e){return e?(i(this.glFramebufferWrappers,e),e.destroy(),this):this},deleteProgram:function(e){return e&&(i(this.glProgramWrappers,e),e.destroy()),this},deleteBuffer:function(e){return e?(i(this.glBufferWrappers,e),e.destroy(),this):this},preRender:function(){if(!this.contextLost){this.emit(c.PRE_RENDER_CLEAR);var e=this.baseDrawingContext;if(this.config.clearBeforeRender){var t=this.config.backgroundColor;e.setClearColor(t.redGL,t.greenGL,t.blueGL,t.alphaGL),e.setAutoClear(!0,!0,!0)}else e.setAutoClear(!1,!1,!1);e.use(),this.emit(c.PRE_RENDER)}},render:function(e,t,n){this.contextLost||(this.emit(c.RENDER,e,n),this.currentViewCamera=n,this.cameraRenderNode.run(this.baseDrawingContext,t,n),this.currentViewCamera=null)},postRender:function(){if(this.baseDrawingContext.release(),!this.contextLost){this.emit(c.POST_RENDER);var e=this.snapshotState;e.callback&&=(g(this.gl,e),null)}},drawElements:function(e,t,n,r,i,a,o){var s=this.gl;e.beginDraw(),n.bind(),r.bind(),this.glTextureUnits.bindUnits(t),s.drawElements(o||s.TRIANGLE_STRIP,i,s.UNSIGNED_SHORT,a)},drawInstancedArrays:function(e,t,n,r,i,a,o,s){var c=this.gl;e.beginDraw(),n.bind(),r.bind(),this.glTextureUnits.bindUnits(t),c.drawArraysInstanced(s||c.TRIANGLE_STRIP,i,a,o)},snapshot:function(e,t,n){return this.snapshotArea(0,0,this.gl.drawingBufferWidth,this.gl.drawingBufferHeight,e,t,n)},snapshotArea:function(e,t,n,r,i,a,o){var s=this.snapshotState;return s.callback=i,s.type=a,s.encoder=o,s.getPixel=!1,s.x=e,s.y=t,s.width=n,s.height=r,s.unpremultiplyAlpha=this.game.config.premultipliedAlpha,this},snapshotPixel:function(e,t,n){return this.snapshotArea(e,t,1,1,n),this.snapshotState.getPixel=!0,this},snapshotFramebuffer:function(e,t,n,r,i,a,o,s,c,l,u){i===void 0&&(i=!1),a===void 0&&(a=0),o===void 0&&(o=0),s===void 0&&(s=t),c===void 0&&(c=n),l===`pixel`&&(i=!0,l=`image/png`),this.snapshotArea(a,o,s,c,r,l,u);var d=this.snapshotState;return d.getPixel=i,d.isFramebuffer=!0,d.bufferWidth=t,d.bufferHeight=n,d.width=Math.min(d.width,t),d.height=Math.min(d.height,n),this.glWrapper.updateBindingsFramebuffer({bindings:{framebuffer:e}}),g(this.gl,d),d.callback=null,d.isFramebuffer=!1,this},canvasToTexture:function(e,t,n,r){n===void 0&&(n=!1),r===void 0&&(r=!0);var i=this.gl,a=i.NEAREST,o=i.NEAREST,s=e.width,c=e.height,u=i.CLAMP_TO_EDGE,d=l(s,c);return!n&&d&&(u=i.REPEAT),this.config.antialias&&(a=d&&this.mipmapFilter?this.mipmapFilter:i.LINEAR,o=i.LINEAR),t?(t.update(e,s,c,r,u,u,a,o,t.format),t):this.createTexture2D(0,a,o,u,u,i.RGBA,e,s,c,!0,!1,r)},createCanvasTexture:function(e,t,n){return t===void 0&&(t=!1),n===void 0&&(n=!0),this.canvasToTexture(e,null,t,n)},updateCanvasTexture:function(e,t,n,r){return n===void 0&&(n=!0),r===void 0&&(r=!1),this.canvasToTexture(e,t,r,n)},videoToTexture:function(e,t,n,r){n===void 0&&(n=!1),r===void 0&&(r=!0);var i=this.gl,a=i.NEAREST,o=i.NEAREST,s=e.videoWidth,c=e.videoHeight,u=i.CLAMP_TO_EDGE,d=l(s,c);return!n&&d&&(u=i.REPEAT),this.config.antialias&&(a=d&&this.mipmapFilter?this.mipmapFilter:i.LINEAR,o=i.LINEAR),t?(t.update(e,s,c,r,u,u,a,o,t.format),t):this.createTexture2D(0,a,o,u,u,i.RGBA,e,s,c,!0,!0,r)},createVideoTexture:function(e,t,n){return t===void 0&&(t=!1),n===void 0&&(n=!0),this.videoToTexture(e,null,t,n)},updateVideoTexture:function(e,t,n,r){return n===void 0&&(n=!0),r===void 0&&(r=!1),this.videoToTexture(e,t,r,n)},createUint8ArrayTexture:function(e,t,n,r,i){var a=this.gl,o=a.NEAREST,s=a.NEAREST,c=a.CLAMP_TO_EDGE;return l(t,n)&&(c=a.REPEAT),r===void 0&&(r=!0),i===void 0&&(i=!0),this.createTexture2D(0,o,s,c,c,a.RGBA,e,t,n,r,!1,i)},setTextureFilter:function(e,t){var n=this.gl,r=t===0?n.LINEAR:n.NEAREST,i=this.glTextureUnits,a=i.units[0];return i.bind(e,0),e.update(e.pixels,e.width,e.height,e.flipY,e.wrapS,e.wrapT,r,r,e.format),a&&i.bind(a,0),this},setTextureWrap:function(e,t,n){var r=this.gl;if(!l(e.width,e.height)&&(t!==r.CLAMP_TO_EDGE||n!==r.CLAMP_TO_EDGE))return this;var i=this.glTextureUnits,a=i.units[0];return i.bind(e,0),e.update(e.pixels,e.width,e.height,e.flipY,t,n,e.minFilter,e.magFilter,e.format),a&&i.bind(a,0),this},getMaxTextureSize:function(){return this.config.maxTextureSize},destroy:function(){this.off(c.RESIZE,this.baseDrawingContext.resize,this.baseDrawingContext),this.canvas.removeEventListener(`webglcontextlost`,this.contextLostHandler,!1),this.canvas.removeEventListener(`webglcontextrestored`,this.contextRestoredHandler,!1);var e=function(e){e.destroy()};r(this.glBufferWrappers,e),r(this.glFramebufferWrappers,e),r(this.glProgramWrappers,e),r(this.glTextureWrappers,e),this.removeAllListeners(),this.extensions={},this.gl=null,this.game=null,this.canvas=null,this.contextLost=!0,A&&(this.spector=null)}})},14500(e){e.exports={BYTE:{enum:5120,size:1},UNSIGNED_BYTE:{enum:5121,size:1},SHORT:{enum:5122,size:2},UNSIGNED_SHORT:{enum:5123,size:2},INT:{enum:5124,size:4},UNSIGNED_INT:{enum:5125,size:4},FLOAT:{enum:5126,size:4}}},4159(e,t,n){var r=n(14500),i=n(79291),a={Shaders:n(89350),ShaderAdditionMakers:n(83786),DrawingContext:n(87774),DrawingContextPool:n(65656),ProgramManager:n(56436),RenderNodes:n(54521),ShaderProgramFactory:n(18804),Utils:n(70554),WebGLRenderer:n(74797),Wrappers:n(31884)};a=i(!1,a,r),e.exports=a},47774(e){e.exports={createCombined:function(e,t,n,r,i,a){var o=e.gl;return t===void 0&&(t=!0),n===void 0&&(n=[0,0,0,0]),r===void 0&&(r=o.FUNC_ADD),i===void 0&&(i=o.ONE),a===void 0&&(a=o.ONE_MINUS_SRC_ALPHA),{enabled:t,color:n,equation:[r,r],func:[i,a,i,a]}},createSeparate:function(e,t,n,r,i,a,o,s,c){var l=e.gl;return t===void 0&&(t=!0),n===void 0&&(n=[0,0,0,0]),r===void 0&&(r=l.FUNC_ADD),i===void 0&&(i=l.FUNC_ADD),a===void 0&&(a=l.ONE),o===void 0&&(o=l.ONE_MINUS_SRC_ALPHA),s===void 0&&(s=l.ONE),c===void 0&&(c=l.ONE_MINUS_SRC_ALPHA),{enabled:t,color:n,equation:[r,i],func:[a,o,s,c]}}}},53314(e,t,n){var r=n(8054),i=n(62644),a=n(71623);e.exports={getDefault:function(e){return{bindings:{activeTexture:0,arrayBuffer:null,elementArrayBuffer:null,framebuffer:null,program:null,renderbuffer:null},blend:i(e.blendModes[r.BlendModes.NORMAL]),colorClearValue:[0,0,0,1],colorWritemask:[!0,!0,!0,!0],cullFace:!1,depthTest:!1,scissor:{enable:!0,box:[0,0,0,0]},stencil:a.create(e),texturing:{flipY:!1,premultiplyAlpha:!1},vao:null,viewport:[0,0,0,0]}}}},71623(e){e.exports={create:function(e,t,n,r,i,a,o,s,c){var l=e.gl;return t===void 0&&(t=!1),n===void 0&&(n=l.ALWAYS),r===void 0&&(r=0),i===void 0&&(i=255),a===void 0&&(a=l.KEEP),o===void 0&&(o=l.KEEP),s===void 0&&(s=l.KEEP),c===void 0&&(c=0),{enabled:t,func:{func:n,ref:r,mask:i},op:{fail:a,zfail:o,zpass:s},clear:c}}}},13961(e,t,n){var r=n(83419),i=n(56436),a=n(40952),o=n(6141),s=n(36909);e.exports=new r({Extends:o,initialize:function(e,t,n){var r=e.renderer,c=r.gl;n=this._copyAndCompleteConfig(e,n||{},t);var l=n.name;if(!l)throw Error(`BatchHandler must have a name`);o.call(this,l,e),this.instancesPerBatch=-1,this.verticesPerInstance=n.verticesPerInstance;var u=Math.floor(65536/this.verticesPerInstance),d=n.instancesPerBatch||r.config.batchSize||u;this.instancesPerBatch=Math.min(d,u),this.indicesPerInstance=n.indicesPerInstance,this.bytesPerIndexPerInstance=this.indicesPerInstance*Uint16Array.BYTES_PER_ELEMENT,this.maxTexturesPerBatch=1,this.manager.on(s.Events.SET_PARALLEL_TEXTURE_UNITS,this.updateTextureCount,this),r.glWrapper.updateVAO({vao:null}),this.indexBuffer=r.createIndexBuffer(this._generateElementIndices(this.instancesPerBatch),n.indexBufferDynamic?c.DYNAMIC_DRAW:c.STATIC_DRAW);var f=n.vertexBufferLayout;if(f.count=this.instancesPerBatch*this.verticesPerInstance,this.vertexBufferLayout=new a(r,f,null),this.programManager=new i(r,[this.vertexBufferLayout],this.indexBuffer),this.programManager.setBaseShader(n.shaderName,n.vertexSource,n.fragmentSource),n.shaderAdditions)for(var p=0;p<n.shaderAdditions.length;p++){var m=n.shaderAdditions[p];this.programManager.addAddition(m)}if(n.shaderFeatures)for(p=0;p<n.shaderFeatures.length;p++)this.programManager.addFeature(n.shaderFeatures[p]);this.bytesPerInstance=this.vertexBufferLayout.layout.stride*this.verticesPerInstance,this.floatsPerInstance=this.bytesPerInstance/Float32Array.BYTES_PER_ELEMENT,this.currentBatchEntry={start:0,count:0,unit:0,texture:[]},this.batchEntries=[],this.instanceCount=0,this.updateTextureCount(e.maxParallelTextureUnits),this.resize(r.width,r.height),r.on(s.Events.RESIZE,this.resize,this)},_copyAndCompleteConfig:function(e,t,n){var r={};r.name=t.name||n.name,r.verticesPerInstance=t.verticesPerInstance||n.verticesPerInstance,r.indicesPerInstance=t.indicesPerInstance||n.indicesPerInstance,r.shaderName=t.shaderName||n.shaderName,r.vertexSource=t.vertexSource||n.vertexSource,r.fragmentSource=t.fragmentSource||n.fragmentSource,r.shaderAdditions=t.shaderAdditions||n.shaderAdditions,Array.isArray(r.shaderAdditions)&&(r.shaderAdditions=r.shaderAdditions.map(function(e){return Object.assign({},e)})),r.shaderFeatures=t.shaderFeatures||n.shaderFeatures,r.indexBufferDynamic=t.indexBufferDynamic||n.indexBufferDynamic,r.instancesPerBatch=t.instancesPerBatch,r.maxTexturesPerBatch=t.maxTexturesPerBatch;var i=t.vertexBufferLayout||n.vertexBufferLayout;r.vertexBufferLayout={},r.vertexBufferLayout.usage=i.usage,r.vertexBufferLayout.layout=[];for(var a=t.vertexBufferLayoutRemove||[],o=0;o<i.layout.length;o++){var s=i.layout[o];a.indexOf(s.name)===-1&&(r.vertexBufferLayout.layout[o]={name:s.name,size:s.size||1,type:s.type||`FLOAT`,normalized:s.normalized||!1})}if(t.vertexBufferLayoutAdd){var c=t.vertexBufferLayoutAdd||[];for(o=0;o<c.length;o++){var l=c[o];r.vertexBufferLayout.layout.push({name:l.name,size:l.size||1,type:l.type||`FLOAT`,normalized:l.normalized||!1})}}return r},_generateElementIndices:function(e){return new ArrayBuffer(e*this.bytesPerInstance)},resize:function(e,t){},updateTextureCount:function(e){},run:function(e){},batch:function(){}})},16971(e,t,n){var r=n(83419),i=n(4127),a=n(89924),o=n(13961);e.exports=new r({Extends:o,initialize:function(e,t){o.call(this,e,this.defaultConfig,t),this._emptyTextures=[]},defaultConfig:{name:`BatchHandlerPointLight`,verticesPerInstance:4,indicesPerInstance:6,shaderName:`POINTLIGHT`,vertexSource:a,fragmentSource:i,vertexBufferLayout:{usage:`DYNAMIC_DRAW`,layout:[{name:`inPosition`,size:2},{name:`inLightPosition`,size:2},{name:`inLightRadius`,size:1},{name:`inLightAttenuation`,size:1},{name:`inLightColor`,size:4}]}},_generateElementIndices:function(e){for(var t=new ArrayBuffer(e*6*2),n=new Uint16Array(t),r=0,i=0;i<e;i++){var a=i*4;n[r++]=a,n[r++]=a,n[r++]=a+1,n[r++]=a+2,n[r++]=a+3,n[r++]=a+3}return t},setupUniforms:function(e){var t=this.programManager,n=e.width,r=e.height;t.setUniform(`uCameraZoom`,e.camera.zoom),t.setUniform(`uResolution`,[n,r]),e.renderer.setProjectionMatrixFromDrawingContext(e),t.setUniform(`uProjectionMatrix`,e.renderer.projectionMatrix.val)},run:function(e){var t=this.instanceCount;if(t!==0){this.onRunBegin(e);var n=this.programManager,r=n.getCurrentProgramSuite();if(r){var i=r.program,a=r.vao;this.setupUniforms(e),n.applyUniforms(i),this.vertexBufferLayout.buffer.update(this.instanceCount*this.bytesPerInstance),this.manager.renderer.drawElements(e,this._emptyTextures,i,a,t*this.indicesPerInstance,0)}this.instanceCount=0,this.onRunEnd(e)}},batch:function(e,t,n,r,i,a,o,s,c,l,u,d){this.instanceCount===0&&this.manager.setCurrentBatchNode(this,e);var f=t.color,p=t.intensity,m=t.radius,h=t.attenuation,g=f.r*p,_=f.g*p,v=f.b*p,y=t.alpha,b=this.instanceCount*this.floatsPerInstance,x=this.vertexBufferLayout.buffer.viewF32;x[b++]=i,x[b++]=a,x[b++]=u,x[b++]=d,x[b++]=m,x[b++]=h,x[b++]=g,x[b++]=_,x[b++]=v,x[b++]=y,x[b++]=n,x[b++]=r,x[b++]=u,x[b++]=d,x[b++]=m,x[b++]=h,x[b++]=g,x[b++]=_,x[b++]=v,x[b++]=y,x[b++]=c,x[b++]=l,x[b++]=u,x[b++]=d,x[b++]=m,x[b++]=h,x[b++]=g,x[b++]=_,x[b++]=v,x[b++]=y,x[b++]=o,x[b++]=s,x[b++]=u,x[b++]=d,x[b++]=m,x[b++]=h,x[b++]=g,x[b++]=_,x[b++]=v,x[b++]=y,this.instanceCount++,this.instanceCount===this.instancesPerBatch&&this.run(e)}})},15214(e,t,n){var r=n(26099),i=n(83419),a=n(62644),o=n(70554),s=n(98840),c=n(44667),l=n(81084),u=n(44349),d=n(6184),f=n(11653),p=n(40829),m=n(42792),h=n(96049),g=n(33997),_=n(79532),v=n(65217),y=n(74505),b=n(13961);e.exports=new i({Extends:b,initialize:function(e,t){this.renderOptions={multiTexturing:!1,texRes:!1,lighting:!1,selfShadow:!1,selfShadowPenumbra:0,selfShadowThreshold:0,smoothPixelArt:!1},b.call(this,e,this.defaultConfig,t),this.programManager.setUniform(`uMainSampler[0]`,this.manager.renderer.textureUnitIndices),this.nextRenderOptions=a(this.renderOptions),this._renderOptionsChanged=!1,this._lightVector=new r},defaultConfig:{name:`BatchHandlerQuad`,verticesPerInstance:4,indicesPerInstance:6,shaderName:`STANDARD`,vertexSource:c,fragmentSource:s,shaderAdditions:[m(),h(!0),y(!0),f(1),g(),u(),d(!0),v(!0),_(!0),p(!0),l(!0)],vertexBufferLayout:{usage:`DYNAMIC_DRAW`,layout:[{name:`inPosition`,size:2},{name:`inTexCoord`,size:2},{name:`inTexDatum`},{name:`inTintEffect`},{name:`inTint`,size:4,type:`UNSIGNED_BYTE`,normalized:!0}]}},_generateElementIndices:function(e){for(var t=new ArrayBuffer(e*6*2),n=new Uint16Array(t),r=0,i=0;i<e;i++){var a=i*4;n[r++]=a,n[r++]=a,n[r++]=a+1,n[r++]=a+2,n[r++]=a+3,n[r++]=a+3}return t},updateTextureCount:function(e){var t=this.manager.renderer;e===void 0&&(e=t.maxTextures);var n=Math.max(1,Math.min(e,t.maxTextures));if(n!==this.maxTexturesPerBatch){if(n<this.currentBatchEntry.unit&&this.manager.currentBatchNode===this&&this.manager.finishBatch(),this.maxTexturesPerBatch=n,this.renderOptions.multiTexturing){var r=this.programManager,i=r.getAdditionsByTag(`TEXTURE`)[0];i&&r.replaceAddition(i.name,g(this.maxTexturesPerBatch))}this.resize(t.width,t.height)}},setupUniforms:function(e){var t=this.programManager,n=this.renderOptions;t.setUniform(`uResolution`,[e.width,e.height]),e.renderer.setProjectionMatrixFromDrawingContext(e),t.setUniform(`uProjectionMatrix`,e.renderer.projectionMatrix.val),this.renderOptions.lighting&&o.updateLightingUniforms(n.lighting,e,t,1,this._lightVector,n.selfShadow,n.selfShadowThreshold,n.selfShadowPenumbra)},setupTextureUniforms:function(e){var t=this.programManager;if(this.renderOptions.multiTexturing){for(var n=[],r=0;r<e.length;r++)n.push(e[r].width,e[r].height);t.setUniform(`uMainResolution[0]`,n)}else t.setUniform(`uMainResolution[0]`,[e[0].width,e[0].height])},finalizeTextureCount:function(e){var t=this.programManager;this.renderOptions.lighting&&(e=1);var n=t.getAdditionsByTag(`TEXTURE`)[0];n&&t.replaceAddition(n.name,g(e));var r=t.getAdditionsByTag(`TexCount`)[0];r&&t.replaceAddition(r.name,f(e))},updateRenderOptions:function(e){var t=this.nextRenderOptions,n=this.renderOptions,r=!1,i=!!e.multiTexturing&&!e.lighting;i!==n.multiTexturing&&(t.multiTexturing=i,r=!0);var a=!!e.lighting;a!==n.lighting&&(t.lighting=a,r=!0);var o=a&&e.lighting.selfShadow&&e.lighting.selfShadow.enabled;o!==n.selfShadow&&(t.selfShadow=o,r=!0);var s=o?e.lighting.selfShadow.penumbra:0;s!==n.selfShadowPenumbra&&(t.selfShadowPenumbra=s,r=!0);var c=o?e.lighting.selfShadow.diffuseFlatThreshold:0;c!==n.selfShadowThreshold&&(t.selfShadowThreshold=c,r=!0);var l=!!e.smoothPixelArt;l!==n.smoothPixelArt&&(t.smoothPixelArt=l,t.texRes=l,r=!0),this._renderOptionsChanged=r},updateShaderConfig:function(){var e=this.programManager,t=this.renderOptions,n=this.nextRenderOptions,r;if(t.multiTexturing!==n.multiTexturing){var i=n.multiTexturing;t.multiTexturing=i;var a=e.getAdditionsByTag(`TexCount`)[0];a&&e.replaceAddition(a.name,f(i?this.maxTexturesPerBatch:1));var o=e.getAdditionsByTag(`TEXTURE`)[0];o&&e.replaceAddition(o.name,g(i?this.maxTexturesPerBatch:1))}if(t.lighting!==n.lighting){var s=n.lighting;t.lighting=s;var c=e.getAdditionsByTag(`LIGHTING`);for(r=0;r<c.length;r++){var l=c[r];l.disable=!s}if(s){var u=e.getAddition(`DefineLights`);u&&(u.additions.fragmentDefine=`#define LIGHT_COUNT `+this.manager.renderer.config.maxLights)}}if(t.selfShadow!==n.selfShadow){var d=n.selfShadow;t.selfShadow=d,d?e.addFeature(`SELFSHADOW`):e.removeFeature(`SELFSHADOW`)}if(t.selfShadowPenumbra=n.selfShadowPenumbra,t.selfShadowThreshold=n.selfShadowThreshold,t.smoothPixelArt!==n.smoothPixelArt){var p=n.smoothPixelArt;t.smoothPixelArt=p;var m=e.getAddition(`SmoothPixelArt`);m&&(m.disable=!p)}if(t.texRes!==n.texRes){var h=n.texRes;t.texRes=h;var _=e.getAddition(`GetTexRes`);_&&(_.disable=!h)}},run:function(e){if(this.instanceCount!==0){this.onRunBegin(e),this.pushCurrentBatchEntry();var t=this.programManager,n=this.bytesPerIndexPerInstance,r=this.indicesPerInstance,i=this.manager.renderer;this.vertexBufferLayout.buffer.update(this.instanceCount*this.bytesPerInstance);for(var a=this.batchEntries.length,o=0;o<a;o++){var s=this.batchEntries[o];this.finalizeTextureCount(s.unit);var c=t.getCurrentProgramSuite();if(c){var l=c.program,u=c.vao;this.setupUniforms(e),t.applyUniforms(l),this.renderOptions.texRes&&(this.setupTextureUniforms(s.texture),t.applyUniforms(l)),i.drawElements(e,s.texture,l,u,s.count*r,s.start*n)}}this.instanceCount=0,this.currentBatchEntry.start=0,this.batchEntries.length=0,this.onRunEnd(e)}},batch:function(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y){this.instanceCount===0&&this.manager.setCurrentBatchNode(this,e),this.updateRenderOptions(y),this._renderOptionsChanged&&(this.run(e),this.updateShaderConfig());var b=this.batchTextures(t,y),x=this.instanceCount*this.floatsPerInstance,S=this.vertexBufferLayout.buffer,C=S.viewF32,w=S.viewU32;C[x++]=i,C[x++]=a,C[x++]=u,C[x++]=d+p,C[x++]=b,C[x++]=m,w[x++]=g,C[x++]=n,C[x++]=r,C[x++]=u,C[x++]=d,C[x++]=b,C[x++]=m,w[x++]=h,C[x++]=c,C[x++]=l,C[x++]=u+f,C[x++]=d+p,C[x++]=b,C[x++]=m,w[x++]=v,C[x++]=o,C[x++]=s,C[x++]=u+f,C[x++]=d,C[x++]=b,C[x++]=m,w[x++]=_,this.instanceCount++,this.currentBatchEntry.count++,this.instanceCount===this.instancesPerBatch&&this.run(e)},batchTextures:function(e,t){var n=this.renderOptions,r=0,i=this.currentBatchEntry;if(n.multiTexturing)r=e.batchUnit,r===-1&&(i.texture.length===this.maxTexturesPerBatch&&(this.pushCurrentBatchEntry(),i=this.currentBatchEntry),r=i.unit,e.batchUnit=r,i.texture[r]=e,i.unit++);else if(n.lighting){r=t.lighting.normalMapRotation;var a=t.lighting.normalGLTexture;(i.texture[0]!==e||i.texture[1]!==a)&&(this.pushCurrentBatchEntry(),i=this.currentBatchEntry,e.batchUnit=0,a.batchUnit=1,i.texture[0]=e,i.texture[1]=a,i.unit=2)}else i.texture[0]!==e&&(this.pushCurrentBatchEntry(),i=this.currentBatchEntry,e.batchUnit=0,i.texture[0]=e,i.unit=1);return r},pushCurrentBatchEntry:function(){if(!(this.currentBatchEntry.count<1)){this.batchEntries.push(this.currentBatchEntry);for(var e=this.currentBatchEntry.texture,t=0;t<e.length;t++)e[t].batchUnit=-1;this.currentBatchEntry={start:this.instanceCount,count:0,unit:0,texture:[]}}}})},72266(e,t,n){var r=n(83419),i=n(15214);e.exports=new r({Extends:i,initialize:function(e,t){t===void 0&&(t={}),t.name||=`BatchHandlerQuadSingle`,t.shaderName||=`STANDARD_SINGLE`,t.instancesPerBatch||=1,i.call(this,e,t)}})},62791(e,t,n){var r=n(83419),i=n(98840),a=n(44667),o=n(44349),s=n(11653),c=n(42792),l=n(96049),u=n(74505),d=n(33997),f=n(70554),p=n(15214),m=f.getTintAppendFloatAlpha;e.exports=new r({Extends:p,initialize:function(e,t){p.call(this,e,t),this.renderOptions.multiTexturing=!0},defaultConfig:{name:`BatchHandlerStrip`,verticesPerInstance:2,indicesPerInstance:2,shaderName:`STRIP`,vertexSource:a,fragmentSource:i,shaderAdditions:[c(),l(!0),u(!0),s(1),d(),o()],vertexBufferLayout:{usage:`DYNAMIC_DRAW`,layout:[{name:`inPosition`,size:2},{name:`inTexCoord`,size:2},{name:`inTexDatum`},{name:`inTintEffect`},{name:`inTint`,size:4,type:`UNSIGNED_BYTE`,normalized:!0}]}},_generateElementIndices:function(e){for(var t=new ArrayBuffer(e*2*2),n=new Uint16Array(t),r=n.length,i=0;i<r;i++)n[i]=i;return t},batchStrip:function(e,t,n,r,i,a,o,s,c,l,u,d){this.instanceCount===0&&this.manager.setCurrentBatchNode(this,e);var f=i.length/(2*this.verticesPerInstance);if(f>this.instancesPerBatch)throw Error(`BatchHandlerStrip: Vertex count exceeds maximum per batch (`+this.maxVerticesPerBatch+`)`);this.instanceCount+f>this.instancesPerBatch&&this.run(e),this.updateRenderOptions(u),this._renderOptionsChanged&&(this.run(e),this.updateShaderConfig());var p=this.batchTextures(r),h=this.instanceCount*this.floatsPerInstance,g=this.vertexBufferLayout.buffer,_=g.viewF32,v=g.viewU32,y=!1;if(this.instanceCount>0){var b=1+this.floatsPerInstance/this.verticesPerInstance;_[h++]=_[h-b],_[h++]=_[h-b],_[h++]=_[h-b],_[h++]=_[h-b],_[h++]=_[h-b],_[h++]=_[h-b],v[h++]=v[h-b],y=!0}var x;d&&(x=[]);for(var S=n.a,C=n.b,w=n.c,T=n.d,E=n.e,D=n.f,O=i.length,k=0;k<O;k+=2){var A=i[k],j=i[k+1],M=A*S+j*w+E,N=A*C+j*T+D;_[h++]=M,_[h++]=N,_[h++]=a[k],_[h++]=a[k+1],_[h++]=p,_[h++]=l,v[h++]=m(o[k/2],s[k/2]*c),y?(k-=2,this.instanceCount++,this.currentBatchEntry.count++,y=!1):x&&x.push(M,N),k%4==2&&(this.instanceCount++,this.currentBatchEntry.count++)}d&&d.call(t,t,O,x)}})},21832(e,t,n){var r=n(83419),i=n(98840),a=n(44667),o=n(81084),s=n(44349),c=n(6184),l=n(11653),u=n(40829),d=n(42792),f=n(96049),p=n(33997),m=n(10455),h=n(79532),g=n(65217),_=n(74505),v=n(44832),y=n(23295),b=n(15214);e.exports=new r({Extends:b,initialize:function(e,t){b.call(this,e,t)},defaultConfig:{name:`BatchHandlerTileSprite`,verticesPerInstance:4,indicesPerInstance:6,shaderName:`TILESPRITE`,vertexSource:a,fragmentSource:i,shaderAdditions:[m(),d(),f(!0),y(!0),v(!0),_(!0),l(1),p(),s(),c(!0),g(!0),h(!0),u(!0),o(!0)],vertexBufferLayout:{usage:`DYNAMIC_DRAW`,layout:[{name:`inPosition`,size:2},{name:`inTexCoord`,size:2},{name:`inFrame`,size:4},{name:`inTexDatum`},{name:`inTintEffect`},{name:`inTint`,size:4,type:`UNSIGNED_BYTE`,normalized:!0}]}},updateRenderOptions:function(e){b.prototype.updateRenderOptions.call(this,e);var t=this.renderOptions,n=this.nextRenderOptions,r=this._renderOptionsChanged;n.clampFrame=!!e.clampFrame,n.clampFrame!==t.clampFrame&&(r=!0),n.wrapFrame=!!e.wrapFrame,n.wrapFrame!==t.wrapFrame&&(r=!0),n.texRes=n.clampFrame||n.texRes,n.texRes!==t.texRes&&(r=!0),r&&(this._renderOptionsChanged=!0)},updateShaderConfig:function(){b.prototype.updateShaderConfig.call(this);var e=this.programManager,t=this.renderOptions,n=this.nextRenderOptions;if(n.clampFrame!==t.clampFrame){t.clampFrame=n.clampFrame;var r=e.getAddition(`TexCoordFrameClamp`);r.disable=!n.clampFrame}if(n.wrapFrame!==t.wrapFrame){var i=n.wrapFrame;t.wrapFrame=i;var a=e.getAddition(`TexCoordFrameWrap`);a.disable=!i}},batch:function(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,E,D){this.instanceCount===0&&this.manager.setCurrentBatchNode(this,e),this.updateRenderOptions(y),this._renderOptionsChanged&&(this.run(e),this.updateShaderConfig());var O=this.batchTextures(t,y),k=this.instanceCount*this.floatsPerInstance,A=this.vertexBufferLayout.buffer,j=A.viewF32,M=A.viewU32;j[k++]=i,j[k++]=a,j[k++]=S,j[k++]=C,j[k++]=u,j[k++]=d,j[k++]=f,j[k++]=p,j[k++]=O,j[k++]=m,M[k++]=g,j[k++]=n,j[k++]=r,j[k++]=b,j[k++]=x,j[k++]=u,j[k++]=d,j[k++]=f,j[k++]=p,j[k++]=O,j[k++]=m,M[k++]=h,j[k++]=c,j[k++]=l,j[k++]=E,j[k++]=D,j[k++]=u,j[k++]=d,j[k++]=f,j[k++]=p,j[k++]=O,j[k++]=m,M[k++]=v,j[k++]=o,j[k++]=s,j[k++]=w,j[k++]=T,j[k++]=u,j[k++]=d,j[k++]=f,j[k++]=p,j[k++]=O,j[k++]=m,M[k++]=_,this.instanceCount++,this.currentBatchEntry.count++,this.instanceCount===this.instancesPerBatch&&this.run(e)}})},62087(e,t,n){var r=n(26099),i=n(83419),a=n(81084),o=n(6184),s=n(13198),c=n(73416),l=n(91627),u=n(70554),d=n(13961);e.exports=new i({Extends:d,initialize:function(e,t){d.call(this,e,this.defaultConfig,t),this._emptyTextures=[],this.vertexCount=0,this._lightVector=new r,this.renderOptions={lighting:!1},this.nextRenderOptions={lighting:!1},this._renderOptionsChanged=!1},defaultConfig:{name:`BatchHandlerTriFlat`,verticesPerInstance:3,indicesPerInstance:3,shaderName:`FLAT`,vertexSource:l,fragmentSource:c,shaderAdditions:[o(!0),s(!0),a(!0)],indexBufferDynamic:!0,vertexBufferLayout:{usage:`DYNAMIC_DRAW`,layout:[{name:`inPosition`,size:2},{name:`inTint`,size:4,type:`UNSIGNED_BYTE`,normalized:!0}]}},_generateElementIndices:function(e){return new ArrayBuffer(e*3*2)},setupUniforms:function(e){var t=this.programManager;e.renderer.setProjectionMatrixFromDrawingContext(e),t.setUniform(`uProjectionMatrix`,e.renderer.projectionMatrix.val),this.renderOptions.lighting&&(u.updateLightingUniforms(this.renderOptions.lighting,e,t,1,this._lightVector),t.setUniform(`uResolution`,[e.width,e.height]))},updateRenderOptions:function(e){var t=this.nextRenderOptions,n=this.renderOptions,r=!1;e!==n.lighting&&(t.lighting=e,r=!0),this._renderOptionsChanged=r},updateShaderConfig:function(){var e=this.programManager,t=this.renderOptions,n=this.nextRenderOptions;if(t.lighting!==n.lighting){var r=n.lighting;t.lighting=r;for(var i=e.getAdditionsByTag(`LIGHTING`),a=0;a<i.length;a++){var o=i[a];o.disable=!r}if(r){var s=e.getAddition(`DefineLights`);s&&(s.additions.fragmentDefine=`#define LIGHT_COUNT `+this.manager.renderer.config.maxLights)}}},run:function(e){if(this.instanceCount!==0){this.onRunBegin(e);var t=this.programManager,n=t.getCurrentProgramSuite();if(n){var r=n.program,i=n.vao;this.setupUniforms(e),t.applyUniforms(r);var a=this.indicesPerInstance,o=this.instanceCount,s=this.manager.renderer,c=this.vertexBufferLayout.buffer,l=this.vertexBufferLayout.layout.stride;c.update(this.vertexCount*l),i.bind(),i.indexBuffer.update(o*a*2),s.drawElements(e,this._emptyTextures,r,i,o*a,0,s.gl.TRIANGLES)}this.instanceCount=0,this.vertexCount=0,this.onRunEnd(e)}},batch:function(e,t,n,r,i){this.instanceCount===0&&this.manager.setCurrentBatchNode(this,e),this.updateRenderOptions(i),this._renderOptionsChanged&&(this.run(e),this.updateShaderConfig());for(var a=0,o=0,s=this.instancesPerBatch,c=this.vertexBufferLayout.layout.stride,l=this.verticesPerInstance,u=this.indexBuffer.viewU16,d=this.instanceCount*this.indicesPerInstance,f=this.vertexBufferLayout.buffer,p=f.viewF32,m=f.viewU32,h=this.vertexCount*c/p.BYTES_PER_ELEMENT,g=[],_=0,v=[],y=0,b=0;b<t.length;b++){var x=t[b],S=x*2;g[b]!==a&&(p[h++]=n[S],p[h++]=n[S+1],m[h++]=r[x],g[_++]=a,v[y++]=this.vertexCount,this.vertexCount++);var C=v[y-1];u[d++]=C,o++,o===l&&(this.instanceCount++,o=0),(this.instanceCount===s||o===0&&d+l>=u.length)&&(a++,this.run(e),d=this.instanceCount*this.indicesPerInstance,h=this.vertexCount*c/p.BYTES_PER_ELEMENT,_=0,y=0)}}})},61842(e,t,n){var r=n(19715),i=n(1e3),a=n(61340),o=n(87841),s=n(43855),c=n(83419),l=n(70554),u=n(6141);function d(e){return l.getTintAppendFloatAlpha(16777215,e)}e.exports=new c({Extends:u,initialize:function(e){u.call(this,`Camera`,e),this.batchHandlerQuadSingleNode=e.getNode(`BatchHandlerQuadSingle`),this.fillCameraNode=e.getNode(`FillCamera`),this.listCompositorNode=e.getNode(`ListCompositor`),this._parentTransformMatrix=new a},run:function(e,t,n,a,c,l){this.onRunBegin(e);var u,f=e.renderer.drawingContextPool,p=this.manager,m=n.alpha,h=n.filters.internal.getActive(),g=n.filters.external.getActive(),_=c||n.forceComposite||h.length||g.length||m<1;a?n.matrixExternal.multiply(a,a):a=this._parentTransformMatrix.copyFrom(n.matrixExternal);var v=a.decomposeMatrix(),y=s(v.translateX,0)&&s(v.translateY,0)&&s(v.rotation,0)&&s(v.scaleX,1)&&s(v.scaleY,1),b=n.x,x=n.y,S=n.width,C=n.height,w=e.getClone();w.setCamera(n),_?(u=f.get(S,C),u.setCamera(n),u.setScissorBox(0,0,S,C)):(u=w,u.setScissorBox(b,x,S,C)),u.use();var T=this.fillCameraNode;if(n.backgroundColor.alphaGL>0){var E=n.backgroundColor,D=i(E.red,E.green,E.blue,E.alpha);T.run(u,D,_)}this.listCompositorNode.run(u,t,null,l);var O=n.flashEffect;O.postRenderWebGL()&&(D=i(O.red,O.green,O.blue,O.alpha*255),T.run(u,D,_));var k=n.fadeEffect;if(k.postRenderWebGL()&&(D=i(k.red,k.green,k.blue,k.alpha*255),T.run(u,D,_)),p.finishBatch(),_){var A,j,M,N,P,F={smoothPixelArt:p.renderer.game.config.smoothPixelArt},I=new o(0,0,u.width,u.height);for(A=0;A<h.length;A++)j=h[A],N=p.getNode(j.renderNode),u=N.run(j,u),M=j.getPadding(),I.setTo(I.x+M.x,I.y+M.y,I.width+M.width,I.height+M.height);var L=u,R=g.length>0,z=!R,B=new o(0,0,w.width,w.height);if(R){for(A=g.length-1;A>=0;A--)j=g[A],j.active&&(M=j.getPadding(),B.setTo(B.x+M.x,B.y+M.y,B.width+M.width,B.height+M.height));z=B.width!==u.width||B.height!==u.height||!y,z&&(u=f.get(B.width,B.height),u.setScissorBox(0,0,B.width,B.height),u.setCamera(w.camera),u.use())}else u=w;if(z){var V=B.x,H=B.y,U;a.setQuad(I.x,I.y,I.x+I.width,I.y+I.height),U=a.quad,P=R?4294967295:d(m),n.roundPixels&&(U[0]=Math.round(U[0]),U[1]=Math.round(U[1]),U[2]=Math.round(U[2]),U[3]=Math.round(U[3]),U[4]=Math.round(U[4]),U[5]=Math.round(U[5]),U[6]=Math.round(U[6]),U[7]=Math.round(U[7])),this.batchHandlerQuadSingleNode.batch(u,L.texture,U[0]-V,U[1]-H,U[2]-V,U[3]-H,U[6]-V,U[7]-H,U[4]-V,U[5]-H,0,1,1,-1,!1,P,P,P,P,F)}if(L!==u&&L.release(),R){var W=!1;for(L=null,M=new o,A=0;A<g.length;A++)j=g[A],j.allowBaseDraw&&u.width===w.width&&u.height===w.height&&A===g.length-1&&m===1&&(W=!0,L=w),N=p.getNode(j.renderNode),u=N.run(j,u,L,M),M=j.currentPadding,M.x=-M.x,M.y=-M.y,M.width=-M.width,M.height=-M.height;if(!W){P=d(m);var G=-M.x,ee=-M.y,K=u.width+M.right,q=u.height+M.bottom;this.batchHandlerQuadSingleNode.batch(w,u.texture,G,q,G,ee,K,q,K,ee,0,0,1,1,!1,P,P,P,P,F),u.release()}}}n.dirty=!1,n.emit(r.POST_RENDER,n),this.onRunEnd(e)}})},76409(e,t,n){var r=n(83419),i=n(6141);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`DrawLine`,e)},run:function(e,t,n,r,i,a,o,s,c){this.onRunBegin(e);var l=i-n,u=a-r,d=Math.sqrt(l*l+u*u),f=o*(a-r)/d,p=o*(n-i)/d,m=s*(a-r)/d,h=s*(n-i)/d,g=i-m,_=a-h,v=n-f,y=r-p,b=i+m,x=a+h,S=n+f,C=r+p,w=c.length;t?(c[w+0]=t.getX(S,C),c[w+1]=t.getY(S,C),c[w+2]=t.getX(v,y),c[w+3]=t.getY(v,y),c[w+4]=t.getX(g,_),c[w+5]=t.getY(g,_),c[w+6]=t.getX(b,x),c[w+7]=t.getY(b,x)):(c[w+0]=S,c[w+1]=C,c[w+2]=v,c[w+3]=y,c[w+4]=g,c[w+5]=_,c[w+6]=b,c[w+7]=x),this.onRunEnd(e)}})},95449(e,t,n){var r=n(19715),i=n(42538),a=n(83419),o=n(10312),s=n(6141);e.exports=new a({Extends:s,initialize:function(e){s.call(this,`DynamicTextureHandler`,e),this.fillRectNode=this.manager.getNode(`FillRect`)},run:function(e){var t=e.drawingContext,n=t.camera,a=t.renderer,s=e.manager;this.onRunBegin(t);var c=t.framebuffer.renderTexture;if(c)for(var l=a.glTextureUnits,u=l.units,d=0;d<u.length;d++)u[d]===c&&l.bind(null,d);t.setScissorBox(0,0,n.width,n.height),t.use();for(var f,p,m,h,g,_,v,y,b,x,S,C,w,T,E=e.commandBuffer,D=E.length,O=!1,k=null,A=!1,j=t,M=a.gl,N=0;N<D;N++)switch(E[N]){case i.CLEAR:w=E[++N],T=E[++N],C=E[++N],h=E[++N];var P=j.getClone();P.setScissorEnable(!0),P.setScissorBox(w,T,C,h),P.use(),P.clear(M.COLOR_BUFFER_BIT|M.DEPTH_BUFFER_BIT|M.STENCIL_BUFFER_BIT),P.release();break;case i.FILL:var F=E[++N];w=E[++N],T=E[++N],C=E[++N],h=E[++N],this.fillRectNode.run(j,null,null,w,T,C,h,F,F,F,F,!1);break;case i.STAMP:g=E[++N],m=E[++N],w=E[++N],T=E[++N],f=E[++N],S=E[++N],y=E[++N],b=E[++N],x=E[++N],_=E[++N],v=E[++N],p=E[++N];var I=s.resetStamp(f,S);I.setPosition(w,T).setRotation(y).setTexture(g,m).setOrigin(_,v).setScale(b,x).setBlendMode(p),j=this._draw(a,I,j,t,k);break;case i.REPEAT:g=E[++N],m=E[++N],w=E[++N],T=E[++N],f=E[++N],S=E[++N],y=E[++N],b=E[++N],x=E[++N],_=E[++N],v=E[++N],p=E[++N],C=E[++N],h=E[++N];var L=E[++N],R=E[++N],z=E[++N],B=E[++N],V=E[++N],H=s.resetTileSprite(f,S);H.setPosition(w,T).setRotation(y).setTexture(g,m).setSize(C,h).setOrigin(_,v).setScale(b,x).setBlendMode(p).setTilePosition(L,R).setTileRotation(z).setTileScale(B,V),j=this._draw(a,H,j,t,k);break;case i.DRAW:var U=E[++N];if(w=E[++N],T=E[++N],w!==void 0){var W=U.x;U.x+=w}if(T!==void 0){var G=U.y;U.y+=T}j=this._draw(a,U,j,t,k),w!==void 0&&(U.x=W),T!==void 0&&(U.y=G);break;case i.SET_ERASE:O=E[++N],O?(k||(k=t.getClone(),k.setBlendMode(o.ERASE)),j!==k&&(j.release(),j=k,k.use())):j===k&&(k.release(),j=t,t.use());break;case i.PRESERVE:A=E[++N];break;case i.CALLBACK:var ee=E[++N];ee();break;case i.CAPTURE:U=E[++N];var K=E[++N],q=e.startCapture(U,K),J=j;K.camera&&(J=J.getClone(),J.setCamera(K.camera),J.use()),this._draw(a,U,J,t,k,q.transform),e.finishCapture(U,q),K.camera&&J.release();break}A||(E.length=0),j.release(),n.emit(r.POST_RENDER,n),this.onRunEnd(t)},_draw:function(e,t,n,r,i,a){if(n!==i&&t.blendMode!==n.blendMode&&t.blendMode!==o.SKIP_CHECK){n.release();var s=t.blendMode;s===r.blendMode?n=r:(n=r.getClone(),n.setBlendMode(s)),n.use()}return t.renderWebGLStep(e,t,n,a),n}})},61199(e,t,n){var r=n(83419),i=n(6141);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FillCamera`,e),this.fillRectNode=this.manager.getNode(`FillRect`)},run:function(e,t,n){this.onRunBegin(e);var r=e.camera,i=n?0:r.x,a=n?0:r.y,o=r.width,s=r.height;this.fillRectNode.run(e,null,null,i,a,o,s,t,t,t,t),this.onRunEnd(e)}})},14255(e,t,n){var r=n(94811),i=n(83419),a=n(6141);e.exports=new i({Extends:a,initialize:function(e){a.call(this,`FillPath`,e)},run:function(e,t,n,i,a,o,s,c,l){this.onRunBegin(e),c===void 0&&(c=0);var u=i.length,d,f,p,m,h,g,_=0,v=0,y=[],b=[],x=0;for(f=0;f<u;f++)p=i[f],h=t.getX(p.x,p.y),g=t.getY(p.x,p.y),!(f>0&&f<u-1&&Math.abs(h-y[_-2])<=c&&Math.abs(g-y[_-1])<=c)&&(y[_++]=h,y[_++]=g);if(m=r(y),a===o&&a===s){var S=y.length;for(d=0;d<S;d+=2)b[x++]=a;n.batch(e,m,y,b,l)}else{var C=m.length,w=Array(C),T=Array(C*2),E=0;for(d=0;d<C;d+=3){var D=m[d]*2;h=y[D+0],g=y[D+1],T[E++]=h,T[E++]=g,D=m[d+1]*2,h=y[D+0],g=y[D+1],T[E++]=h,T[E++]=g,D=m[d+2]*2,h=y[D+0],g=y[D+1],T[E++]=h,T[E++]=g,b[x++]=a,b[x++]=o,b[x++]=s,w[v++]=d+0,w[v++]=d+1,w[v++]=d+2}n.batch(e,w,T,b,l)}this.onRunEnd(e)}})},12682(e,t,n){var r=n(61340),i=n(83419),a=n(6141);e.exports=new i({Extends:a,initialize:function(e){a.call(this,`FillRect`,e),this._batchHandlerDefault=e.getNode(`BatchHandlerTriFlat`),this._identityMatrix=new r,this._indexedTriangles=[0,1,2,2,3,0]},run:function(e,t,n,r,i,a,o,s,c,l,u,d){this.onRunBegin(e),t||=this._identityMatrix,n||=this._batchHandlerDefault;var f=t.setQuad(r,i,r+a,i+o);n.batch(e,this._indexedTriangles,f,[s,l,u,c],d),this.onRunEnd(e)}})},13119(e,t,n){var r=n(83419),i=n(6141);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FillTri`,e),this._indexedTriangles=[0,1,2]},run:function(e,t,n,r,i,a,o,s,c,l,u,d,f){this.onRunBegin(e),t?n.batch(e,this._indexedTriangles,[t.getX(r,i),t.getY(r,i),t.getX(a,o),t.getY(a,o),t.getX(s,c),t.getY(s,c)],[l,u,d],f):n.batch(e,this._indexedTriangles,[r,i,a,o,s,c],[l,u,d],f),this.onRunEnd(e)}})},27996(e,t,n){var r=n(83419),i=n(8054),a=n(6141);e.exports=new r({Extends:a,initialize:function(e){a.call(this,`ListCompositor`,e)},run:function(e,t,n,r){this.onRunBegin(e);for(var a=e,o=e.blendMode,s=o,c=this.manager.renderer,l=0;l<t.length;l++){var u=t[l];u.blendMode!==s&&u.blendMode!==i.BlendModes.SKIP_CHECK&&(a!==e&&a.release(),s=u.blendMode,s===o?a=e:(a=e.getClone(),a.setBlendMode(s),a.use())),u.renderWebGLStep(c,u,a,n,r,t,l)}a!==e&&a.release(),this.onRunEnd(e)}})},56432(e,t,n){var r=n(83419),i=n(46975),a=n(6141);e.exports=new r({Extends:a,initialize:function(e){a.call(this,`RebindContext`,e),this._state={bindings:{activeTexture:0,arrayBuffer:null,elementArrayBuffer:null,framebuffer:null,program:null,renderbuffer:null},vao:null}},run:function(e){this.onRunBegin(e);var t=this.manager.renderer,n=t.glWrapper;t.clearFramebuffer(void 0,void 0,0),n.update(i(this._state,n.state),!0),t.glTextureUnits.unbindAllUnits(),this.onRunEnd(e)}})},6141(e,t,n){e.exports=new(n(83419))({initialize:function(e,t){this.name=e,this.manager=t,this._run=null},run:function(){},onRunBegin:function(e){},onRunEnd:function(e){},setDebug:function(e){e?(this._run=this.run,this.run=function(){var e=this.manager;e.pushDebug(this.name);var t=this._run.apply(this,arguments);return e.popDebug(),t}):(this.run=this._run,this._run=null)}})},30130(e,t,n){var r=n(50792),i=n(83419),a=n(92503),o=n(47406),s=n(53663),c=n(16971),l=n(15214),u=n(72266),d=n(62791),f=n(21832),p=n(62087),m=n(61842),h=n(76409),g=n(95449),_=n(61199),v=n(14255),y=n(12682),b=n(13119),x=n(22731),S=n(57032),C=n(52903),w=n(13922),T=n(33466),E=n(75798),D=n(90830),O=n(52302),k=n(34989),A=n(91614),j=n(15600),M=n(99786),N=n(26825),P=n(54900),F=n(34652),I=n(26703),L=n(56165),R=n(40305),z=n(55905),B=n(58167),V=n(40752),H=n(13279),U=n(27459),W=n(88856),G=n(10845),ee=n(99184),K=n(27996),q=n(56432),J=n(17486),Y=n(31029),te=n(94494),X=n(87469),Z=n(89723),Q=n(12913),ne=n(22995),$=n(86081),re=n(88383),ie=n(34454),ae=n(46211),oe=n(95433);e.exports=new i({Extends:r,initialize:function(e){r.call(this),this.renderer=e;var t=e.game;this.maxParallelTextureUnits=t.config.autoMobileTextures&&!t.device.os.desktop?1:e.maxTextures,this._nodes={},this._nodeConstructors={BaseFilter:o,BaseFilterShader:s,BatchHandlerPointLight:c,BatchHandlerQuad:l,BatchHandlerQuadSingle:u,BatchHandlerStrip:d,BatchHandlerTileSprite:f,BatchHandlerTriFlat:p,Camera:m,DrawLine:h,DynamicTextureHandler:g,FillCamera:_,FillPath:v,FillRect:y,FillTri:b,FilterBarrel:x,FilterBlend:S,FilterBlocky:C,FilterBlur:w,FilterBlurHigh:T,FilterBlurLow:E,FilterBlurMed:D,FilterBokeh:O,FilterColorMatrix:k,FilterCombineColorMatrix:A,FilterDisplacement:j,FilterGlow:M,FilterGradientMap:N,FilterImageLight:P,FilterKey:F,FilterMask:I,FilterNormalTools:L,FilterPanoramaBlur:R,FilterParallelFilters:z,FilterPixelate:B,FilterQuantize:V,FilterSampler:H,FilterShadow:U,FilterThreshold:W,FilterVignette:G,FilterWipe:ee,ListCompositor:K,RebindContext:q,StrokePath:J,SubmitterQuad:Y,SubmitterTile:te,SubmitterTilemapGPULayer:X,SubmitterTileSprite:Z,TexturerImage:Q,TexturerTileSprite:ne,TransformerImage:$,TransformerStamp:re,TransformerTile:ie,TransformerTileSprite:ae,YieldContext:oe},Object.entries(t.config.renderNodes).forEach(function(e){var t=e[0],n=e[1];this.addNodeConstructor(t,n)},this),this.currentBatchNode=null,this.currentBatchDrawingContext=null,this.debug=!1,this.debugGraph=null,this.currentDebugNode=null},addNode:function(e,t){if(this._nodes[e])throw Error(`node `+e+` already exists.`);this._nodes[e]=t,this.debug&&t.setDebug(!0)},addNodeConstructor:function(e,t){if(this._nodeConstructors[e])throw Error(`node constructor `+e+` already exists.`);this._nodeConstructors[e]=t},getNode:function(e){if(this._nodes[e])return this._nodes[e];if(this._nodeConstructors[e]){var t=new this._nodeConstructors[e](this);return this.addNode(e,t),t}return null},hasNode:function(e,t){return!!this._nodes[e]||!t&&!!this._nodeConstructors[e]},setCurrentBatchNode:function(e,t){this.currentBatchNode!==e&&(this.currentBatchNode!==null&&this.currentBatchNode.run(this.currentBatchDrawingContext),this.currentBatchNode=e,this.currentBatchDrawingContext=e?t:null)},setMaxParallelTextureUnits:function(e){this.maxParallelTextureUnits=Math.max(1,Math.min(e,this.renderer.maxTextures)),this.emit(a.SET_PARALLEL_TEXTURE_UNITS,this.maxParallelTextureUnits)},finishBatch:function(){this.currentBatchNode!==null&&this.setCurrentBatchNode(null)},startStandAloneRender:function(){this.finishBatch()},setDebug:function(e){for(var t in this.debug=e,this._nodes)this._nodes[t].setDebug(e);e&&(this.debugGraph=null,this.currentDebugNode=null,this.pushDebug(`[Render Tree Root]`),this.renderer.once(a.POST_RENDER,function(){this.setDebug(!1)},this))},pushDebug:function(e){if(this.debug){var t={name:e,children:[],parent:this.currentDebugNode};this.debugGraph?this.currentDebugNode.children.push(t):this.debugGraph=t,this.currentDebugNode=t}},popDebug:function(){this.debug&&(this.currentDebugNode.parent?this.currentDebugNode=this.currentDebugNode.parent:this.currentDebugNode=null)},debugToString:function(){var e=``,t=0,n=this.debugGraph;function r(e){return` `.repeat(e)}function i(e,t){for(var n=r(t)+e.name+`
30
+ `,a=0;a<e.children.length;a++)n+=i(e.children[a],t+1);return n}return e=i(n,t),e}})},55403(e,t,n){var r=n(83419),i=n(40952),a=n(56436),o=n(6141),s=n(65884),c=n(72823);e.exports=new r({Extends:o,initialize:function(e,t){o.call(this,`ShaderQuad`,e);var n=e.renderer;this.renderer=n,t=this._completeConfig(t),t.updateShaderConfig&&(this.updateShaderConfig=t.updateShaderConfig),this.indexBuffer=n.genericQuadIndexBuffer,this.vertexBufferLayout=new i(n,t.vertexBufferLayout,null),this.programManager=new a(n,[this.vertexBufferLayout],this.indexBuffer),this.programManager.setBaseShader(t.shaderName,t.vertexSource,t.fragmentSource);for(var r=0;r<t.shaderAdditions.length;r++){var s=t.shaderAdditions[r];this.programManager.addAddition(s)}this.setUniform=this.programManager.setUniform.bind(this.programManager),this.transformerNode=e.getNode(`TransformerImage`),this._texturerProxy={frameWidth:1,frameHeight:1,frame:{realWidth:1,realHeight:1},uvSource:{x:0,y:0}}},_completeConfig:function(e){var t=this.renderer.gl,n=e.vertexSource;if(!n){var r=e.vertexKey;if(r){var i=this.manager.renderer.game.cache.shader.get(r);i&&i.glsl&&(n=i.glsl)}}n||=s;var a=e.fragmentSource;if(!a){var o=e.fragmentKey;o&&(i=this.manager.renderer.game.cache.shader.get(o),i&&i.glsl&&(a=i.glsl))}return a||=c,{name:e.name||`ShaderQuad`,shaderName:e.shaderName||e.name||`ShaderQuad`,vertexSource:n,fragmentSource:a,shaderAdditions:e.shaderAdditions||[],vertexBufferLayout:{usage:`DYNAMIC_DRAW`,count:4,layout:[{name:`inPosition`,size:2,type:t.FLOAT,normalized:!1},{name:`inTexCoord`,size:2,type:t.FLOAT,normalized:!1}]}}},run:function(e,t,n){var r=this.manager,i=this.renderer;r.startStandAloneRender(),this.onRunBegin(e);var a=t.width,o=t.height;this._texturerProxy.frame.realWidth=a,this._texturerProxy.frame.realHeight=o,this._texturerProxy.frameWidth=a,this._texturerProxy.frameHeight=o;var s,c,l,u,d,f,p,m;if(t.renderToTexture)s=0,c=0,l=0,u=o,d=a,f=o,p=a,m=0;else{var h=this.transformerNode;h.run(e,t,this._texturerProxy,n);var g=h.quad;s=g[0],c=g[1],l=g[2],u=g[3],d=g[4],f=g[5],p=g[6],m=g[7]}var _=this.vertexBufferLayout.layout.stride,v=this.vertexBufferLayout.buffer,y=v.viewF32,b=0;y[b++]=l,y[b++]=u,y[b++]=t.textureCoordinateBottomLeft.x,y[b++]=t.textureCoordinateBottomLeft.y,y[b++]=s,y[b++]=c,y[b++]=t.textureCoordinateTopLeft.x,y[b++]=t.textureCoordinateTopLeft.y,y[b++]=d,y[b++]=f,y[b++]=t.textureCoordinateBottomRight.x,y[b++]=t.textureCoordinateBottomRight.y,y[b++]=p,y[b++]=m,y[b++]=t.textureCoordinateTopRight.x,y[b++]=t.textureCoordinateTopRight.y,v.update(_*4);var x=this.programManager;this.updateShaderConfig(e,t,this);var S=x.getCurrentProgramSuite();if(S){var C=S.program,w=S.vao,T=this.setUniform;i.setProjectionMatrixFromDrawingContext(e),T(`uProjectionMatrix`,e.renderer.projectionMatrix.val),t.setupUniforms(T,e),x.applyUniforms(C),i.drawElements(e,this.setupTextures(t),C,w,4,0)}this.onRunEnd(e)},setupTextures:function(e){for(var t=e.textures,n=[],r=0;r<t.length;r++){var i=t[r].get().source.glTexture;n.push(i)}return n},updateShaderConfig:function(e,t,n){}})},17486(e,t,n){var r=n(83419),i=n(6141);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`StrokePath`,e),this.drawLineNode=this.manager.getNode(`DrawLine`)},run:function(e,t,n,r,i,a,o,s,c,l,u,d){this.onRunBegin(e);var f=this.drawLineNode,p=n.length-1,m,h,g=!1,_=!1;r>2&&p>1&&(g=!0,i||(_=!0));for(var v=[],y=0,b=[],x=0,S,C=[],w=0,T,E,D,O,k=u*u,A,j,M,N=0;N<p;N+=M){if(A=N===0,j=N===p-1,M=1,m=n[N],h=n[N+M],k&&!j)for(T=h.x-m.x,E=h.y-m.y,D=a.getX(T,E)-a.tx,O=a.getY(T,E)-a.ty;N+M<p-1&&D*D+O*O<=k;)M++,h=n[N+M],T=h.x-m.x,E=h.y-m.y,D=a.getX(T,E)-a.tx,O=a.getY(T,E)-a.ty;f.run(e,a,m.x,m.y,h.x,h.y,m.width/2,h.width/2,b),x+=8,S=x/2,C[w++]=o,C[w++]=c,C[w++]=l,C[w++]=s,v[y++]=S-4,v[y++]=S-3,v[y++]=S-2,v[y++]=S-2,v[y++]=S-1,v[y++]=S-4,g&&!A&&(v[y++]=S-4,v[y++]=S-3,v[y++]=S-6,v[y++]=S-6,v[y++]=S-5,v[y++]=S-4,_&&j&&(v[y++]=S-2,v[y++]=S-1,v[y++]=0,v[y++]=0,v[y++]=1,v[y++]=S-2))}t.batch(e,v,b,C,d),this.onRunEnd(e)}})},95433(e,t,n){var r=n(83419),i=n(6141);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`YieldContext`,e),this._state={blend:this.manager.renderer.blendModes[0],vao:null}},run:function(e){this.onRunBegin(e);var t=this.manager,n=t.renderer;t.startStandAloneRender(),n.glWrapper.update(this._state),n.glTextureUnits.unbindAllUnits(),this.onRunEnd(e)}})},70972(e,t,n){e.exports=new(n(90330))([[`Submitter`,`SubmitterQuad`],[`BatchHandler`,`BatchHandlerQuad`]])},98682(e,t,n){e.exports=new(n(90330))([[`Submitter`,`SubmitterQuad`],[`BatchHandler`,`BatchHandlerQuad`]])},87891(e,t,n){e.exports=new(n(90330))([[`Submitter`,`BatchHandlerTriFlat`],[`FillPath`,`FillPath`],[`FillRect`,`FillRect`],[`FillTri`,`FillTri`],[`StrokePath`,`StrokePath`]])},40939(e,t,n){e.exports=new(n(90330))([[`Submitter`,`SubmitterQuad`],[`BatchHandler`,`BatchHandlerQuad`],[`Transformer`,`TransformerImage`],[`Texturer`,`TexturerImage`]])},68668(e,t,n){e.exports=new(n(90330))([[`Submitter`,`SubmitterQuad`],[`BatchHandler`,`BatchHandlerQuad`]])},43246(e,t,n){e.exports=new(n(90330))([[`BatchHandler`,`BatchHandlerPointLight`]])},30529(e,t,n){e.exports=new(n(90330))([[`BatchHandler`,`BatchHandlerQuad`]])},85760(e,t,n){e.exports=new(n(90330))([[`BatchHandler`,`BatchHandlerStrip`]])},78705(e,t,n){e.exports=new(n(90330))([[`Submitter`,`SubmitterQuad`],[`BatchHandler`,`BatchHandlerQuad`],[`Transformer`,`TransformerStamp`],[`Texturer`,`TexturerImage`]])},41571(e,t,n){e.exports=new(n(90330))([[`Submitter`,`SubmitterTileSprite`],[`BatchHandler`,`BatchHandlerTileSprite`],[`Transformer`,`TransformerTileSprite`],[`Texturer`,`TexturerTileSprite`]])},67743(e,t,n){e.exports=new(n(90330))([[`Submitter`,`SubmitterTilemapGPULayer`]])},79317(e,t,n){e.exports=new(n(90330))([[`Submitter`,`SubmitterTile`],[`BatchHandler`,`BatchHandlerTileSprite`],[`Transformer`,`TransformerTile`]])},59212(e,t,n){e.exports={DefaultBitmapTextNodes:n(70972),DefaultBlitterNodes:n(98682),DefaultGraphicsNodes:n(87891),DefaultImageNodes:n(40939),DefaultParticleEmitterNodes:n(68668),DefaultPointLightNodes:n(43246),DefaultQuadNodes:n(30529),DefaultRopeNodes:n(85760),DefaultStampNodes:n(78705),DefaultTilemapGPULayerNodes:n(67743),DefaultTilemapLayerNodes:n(79317),DefaultTileSpriteNodes:n(41571)}},47406(e,t,n){var r=n(83419),i=n(6141);e.exports=new r({Extends:i,initialize:function(e,t){i.call(this,e,t)},run:function(e,t,n,r){}})},53663(e,t,n){var r=n(83419),i=n(2807),a=n(99501),o=n(56436),s=n(40952),c=n(47406),l=new r({Extends:c,initialize:function(e,t,n,r,l){if(!r){var u=t.renderer.game.cache.shader.get(n);if(!(u&&u.glsl))throw Error(`BaseFilterShader: No fragment shader source provided and no shader found with key `+n);r=u.glsl}c.call(this,e,t);var d=t.renderer,f=d.gl,p={name:e,shaderName:e,vertexSource:i,fragmentSource:r,shaderAdditions:l||[],vertexBufferLayout:{usage:`DYNAMIC_DRAW`,count:4,layout:[{name:`inPosition`,size:2,type:f.FLOAT,normalized:!1},{name:`inTexCoord`,size:2,type:f.FLOAT,normalized:!1}]}};p.shaderAdditions.push(a()),this.indexBuffer=d.genericQuadIndexBuffer,this.vertexBufferLayout=new s(d,p.vertexBufferLayout,null),this.programManager=new o(d,[this.vertexBufferLayout],this.indexBuffer),this.programManager.setBaseShader(p.shaderName,p.vertexSource,p.fragmentSource);for(var m=0;m<p.shaderAdditions.length;m++){var h=p.shaderAdditions[m];this.programManager.addAddition(h)}this.programManager.setUniform(`uMainSampler`,0)},run:function(e,t,n,r){var i=this.manager,a=i.renderer;i.startStandAloneRender(),r||=e.getPadding(),n||=a.drawingContextPool.get(t.width+r.width,t.height+r.height),n.use(),this.onRunBegin(n);var o=[t.texture];this.setupTextures(e,o,n);var s=-1,c=-1,l=-1,d=1,f=1,p=1,m=1,h=-1;if(r.left){var g=2*r.left/n.width;s-=g,l-=g}if(r.right){var _=2*r.right/n.width;m-=_,f-=_}if(r.top){var v=2*r.top/n.height;d+=v,p+=v}if(r.bottom){var y=2*r.bottom/n.height;c+=y,h+=y}var b=this.vertexBufferLayout.layout.stride,x=this.vertexBufferLayout.buffer,S=x.viewF32,C=0;S[C++]=-1,S[C++]=-1,S[C++]=u(0,s,m),S[C++]=u(0,c,h),S[C++]=-1,S[C++]=1,S[C++]=u(0,l,f),S[C++]=u(1,d,p),S[C++]=1,S[C++]=-1,S[C++]=u(1,s,m),S[C++]=u(0,c,h),S[C++]=1,S[C++]=1,S[C++]=u(1,l,f),S[C++]=u(1,d,p),x.update(b*4);var w=this.programManager;this.updateShaderConfig(e,n);var T=w.getCurrentProgramSuite();if(T){var E=T.program,D=T.vao;this.setupUniforms(e,n),w.applyUniforms(E),a.drawElements(n,o,E,D,4,0)}return t.release(),this.onRunEnd(n),n},updateShaderConfig:function(e,t){},setupTextures:function(e,t,n){},setupUniforms:function(e,t){}});function u(e,t,n){return t=(1/t+1)*.5,n=(1/n+1)*.5,t+e*(n-t)}e.exports=l},22731(e,t,n){var r=n(83419),i=n(53663),a=n(10235);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterBarrel`,e,null,a)},setupUniforms:function(e,t){this.programManager.setUniform(`amount`,e.amount)}})},57032(e,t,n){var r=n(90330),i=n(83419),a=n(10312),o=n(53663),s=n(65980);e.exports=new i({Extends:o,initialize:function(e){this._blendModeMap=new r;var t=this._blendModeMap;Object.entries(a).forEach(function(e){t.set(e[1],e[0])});var n=t.get(a.NORMAL),i=[{name:n,additions:{fragmentHeader:`#define BLEND `+n},tags:[`blendmode`]}];o.call(this,`FilterBlend`,e,null,s,i)},updateShaderConfig:function(e,t){var n=e.blendMode;n===a.SKIP_CHECK&&(n=a.NORMAL);var r=this._blendModeMap.get(n)||this._blendModeMap.get(a.NORMAL),i=this.programManager.getAdditionsByTag(`blendmode`)[0];i.name=r,i.additions.fragmentHeader=`#define BLEND `+r},setupTextures:function(e,t,n){t[1]=e.glTexture},setupUniforms:function(e,t){var n=this.programManager;n.setUniform(`uMainSampler2`,1),n.setUniform(`amount`,e.amount),n.setUniform(`color`,e.color)}})},52903(e,t,n){var r=n(83419),i=n(53663),a=n(5899);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterBlocky`,e,null,a)},setupUniforms:function(e,t){var n=this.programManager,r=Math.max(1,e.size.x),i=Math.max(1,e.size.y);n.setUniform(`resolution`,[t.width,t.height]),n.setUniform(`uSizeAndOffset`,[r,i,e.offset.x,e.offset.y])}})},13922(e,t,n){var r=n(87841),i=n(83419),a=n(47406);e.exports=new i({Extends:a,initialize:function(e){a.call(this,`FilterBlur`,e)},run:function(e,t,n,i){this.onRunBegin(n);var a=e.quality,o=e.steps,s=null;switch(a){case 2:s=this.manager.getNode(`FilterBlurHigh`);break;case 1:s=this.manager.getNode(`FilterBlurMed`);break;default:s=this.manager.getNode(`FilterBlurLow`);break}var c={strength:e.strength,color:e.glcolor,x:e.x,y:e.y};i||=e.getPadding();for(var l=t,u=0;u<o;u++){c.x=e.x,c.y=0,l=s.run(c,l,null,i),u===0&&(i=new r);var d=u===o-1?n:null;c.x=0,c.y=e.y,l=s.run(c,l,d,i)}return n=l,this.onRunEnd(n),n}})},33466(e,t,n){var r=n(83419),i=n(53663),a=n(20784);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterBlurHigh`,e,null,a)},setupUniforms:function(e,t){var n=this.programManager;n.setUniform(`resolution`,[t.width,t.height]),n.setUniform(`strength`,e.strength),n.setUniform(`color`,e.color),n.setUniform(`offset`,[e.x,e.y])}})},75798(e,t,n){var r=n(83419),i=n(53663),a=n(65122);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterBlurLow`,e,null,a)},setupUniforms:function(e,t){var n=this.programManager;n.setUniform(`resolution`,[t.width,t.height]),n.setUniform(`strength`,e.strength),n.setUniform(`color`,e.color),n.setUniform(`offset`,[e.x,e.y])}})},90830(e,t,n){var r=n(83419),i=n(53663),a=n(60942);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterBlurMed`,e,null,a)},setupUniforms:function(e,t){var n=this.programManager;n.setUniform(`resolution`,[t.width,t.height]),n.setUniform(`strength`,e.strength),n.setUniform(`color`,e.color),n.setUniform(`offset`,[e.x,e.y])}})},52302(e,t,n){var r=n(83419),i=n(53663),a=n(43722);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterBokeh`,e,null,a)},setupUniforms:function(e,t){var n=this.programManager;n.setUniform(`radius`,e.radius),n.setUniform(`amount`,e.amount),n.setUniform(`contrast`,e.contrast),n.setUniform(`strength`,e.strength),n.setUniform(`blur`,[e.blurX,e.blurY]),n.setUniform(`isTiltShift`,e.isTiltShift),n.setUniform(`resolution`,[t.width,t.height])}})},34989(e,t,n){var r=n(83419),i=n(53663),a=n(19883);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterColorMatrix`,e,null,a)},setupUniforms:function(e,t){var n=this.programManager;n.setUniform(`uColorMatrix[0]`,e.colorMatrix.getData()),n.setUniform(`uAlpha`,e.colorMatrix.alpha)}})},91614(e,t,n){var r=n(83419),i=n(53663),a=n(32624);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterCombineColorMatrix`,e,null,a)},setupTextures:function(e,t,n){t[1]=e.glTexture},setupUniforms:function(e,t){var n=this.programManager;n.setUniform(`uTransferSampler`,1),n.setUniform(`uColorMatrixSelf[0]`,e.colorMatrixSelf.getData()),n.setUniform(`uColorMatrixTransfer[0]`,e.colorMatrixTransfer.getData()),n.setUniform(`uAlphaSelf`,e.colorMatrixSelf.alpha),n.setUniform(`uAlphaTransfer`,e.colorMatrixTransfer.alpha),n.setUniform(`uAdditions`,e.additions),n.setUniform(`uMultiplications`,e.multiplications)}})},15600(e,t,n){var r=n(83419),i=n(53663),a=n(12886);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterDisplacement`,e,null,a)},setupTextures:function(e,t){t[1]=e.glTexture},setupUniforms:function(e,t){var n=this.programManager;n.setUniform(`uDisplacementSampler`,1),n.setUniform(`amount`,[e.x,e.y])}})},99786(e,t,n){var r=n(83419),i=n(53663),a=n(33016);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterGlow`,e,null,a,[{name:`distance_10.0`,additions:{fragmentDefine:`#define DISTANCE 10.0`},tags:[`distance`]},{name:`quality_0.1`,additions:{fragmentDefine:`#define QUALITY 0.1`},tags:[`quality`]}])},updateShaderConfig:function(e,t){var n=this.programManager,r=e.distance.toFixed(0)+`.0`,i=n.getAdditionsByTag(`distance`)[0];i.name=`distance_`+r,i.additions.fragmentDefine=`#undef DISTANCE
31
+ #define DISTANCE `+r;var a=e.quality.toFixed(0)+`.0`,o=n.getAdditionsByTag(`quality`)[0];o.name=`quality_`+a,o.additions.fragmentDefine=`#undef QUALITY
32
+ #define QUALITY `+a},setupUniforms:function(e,t){var n=this.programManager;n.setUniform(`resolution`,[t.width,t.height]),n.setUniform(`glowColor`,e.glcolor),n.setUniform(`outerStrength`,e.outerStrength),n.setUniform(`innerStrength`,e.innerStrength),n.setUniform(`scale`,e.scale),n.setUniform(`knockout`,e.knockout)}})},26825(e,t,n){var r=n(83419),i=n(53663),a=n(33179),o=n(68589);e.exports=new r({Extends:i,initialize:function(e){var t=[{name:`RAMP_0`,tags:`RAMP`,additions:{fragmentHeader:o}}];i.call(this,`FilterGradientMap`,e,null,a,t)},setupTextures:function(e,t,n){t[1]=e.ramp.glTexture},setupUniforms:function(e,t){var n=this.programManager,r=e.ramp;n.setUniform(`uRampTexture`,1),n.setUniform(`uRampResolution`,r.dataTextureResolution),n.setUniform(`uRampBandStart`,r.dataTextureFirstBand),n.setUniform(`uDither`,e.dither),n.setUniform(`uUnpremultiply`,e.unpremultiply),n.setUniform(`uColor`,e.color),n.setUniform(`uColorFactor`,e.colorFactor),n.setUniform(`uAlpha`,e.alpha)},updateShaderConfig:function(e,t){var n=e.ramp.bandTreeDepth,r=this.programManager.getAdditionsByTag(`RAMP`)[0];r.name=`RAMP_`+n,r.additions.fragmentHeader=o.replace(`#define BAND_TREE_DEPTH 0.0`,`#define BAND_TREE_DEPTH `+n+`.0`)}})},54900(e,t,n){var r=n(83419),i=n(53663),a=n(94526);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterImageLight`,e,null,a)},setupTextures:function(e,t,n){t[1]=e.environmentGlTexture,t[2]=e.normalGlTexture},setupUniforms:function(e,t){var n=this.programManager;n.setUniform(`uEnvSampler`,1),n.setUniform(`uNormSampler`,2),n.setUniform(`uViewMatrix`,e.viewMatrix.val),n.setUniform(`uModelRotation`,e.getModelRotation()),n.setUniform(`uBulge`,e.bulge),n.setUniform(`uColorFactor`,e.colorFactor)}})},34652(e,t,n){var r=n(83419),i=n(53663),a=n(4488);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterKey`,e,null,a)},setupUniforms:function(e,t){var n=this.programManager;n.setUniform(`uColor`,e.color),n.setUniform(`uIsolateThresholdFeather`,[e.isolate,e.threshold,e.feather])}})},26703(e,t,n){var r=n(83419),i=n(53663),a=n(39603);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterMask`,e,null,a)},setupTextures:function(e,t,n){e.maskGameObject&&(e.needsUpdate||e.autoUpdate)&&e.updateDynamicTexture(n.width,n.height),t[1]=e.glTexture},setupUniforms:function(e,t){var n=this.programManager;n.setUniform(`uMaskSampler`,1),n.setUniform(`invert`,e.invert)}})},56165(e,t,n){var r=n(83419),i=n(53663),a=n(60047);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterNormalTools`,e,null,a,[{name:`view`,additions:{fragmentHeader:`#define VIEW_MATRIX`},tags:[`header`]}])},updateShaderConfig:function(e,t){var n=this.programManager.getAdditionsByTag(`header`)[0];n.name=`view`,n.additions.fragmentHeader=`#define VIEW_MATRIX`,e.facingPower!==1&&(n.name+=`_facingPower`,n.additions.fragmentHeader+=`
33
+ #define FACING_POWER`),e.outputRatio&&(n.name+=`_ratio`,n.additions.fragmentHeader+=`
34
+ #define OUTPUT_RATIO`)},setupUniforms:function(e,t){var n=this.programManager;if(n.setUniform(`uViewMatrix`,e.viewMatrix.val),e.facingPower!==1&&n.setUniform(`uFacingPower`,e.facingPower),e.outputRatio){var r=e.ratioVector;n.setUniform(`uRatioVector`,[r.x,r.y,r.z]),n.setUniform(`uRatioRadius`,e.ratioRadius)}}})},40305(e,t,n){var r=n(83419),i=n(53663),a=n(7529);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterPanoramaBlur`,e,null,a,[{name:`samples_32_16`,additions:{fragmentHeader:`#define SAMPLES_X 32.0
35
+ #define SAMPLES_Y 16.0`},tags:[`samples`]}])},updateShaderConfig:function(e,t){var n=e.samplesX.toFixed(0),r=e.samplesY.toFixed(0),i=this.programManager.getAdditionsByTag(`samples`)[0];i.name=`samples_`+n+`_`+r,i.additions.fragmentHeader=`#define SAMPLES_X `+n+`.0
36
+ #define SAMPLES_Y `+r+`.0`},setupUniforms:function(e,t){var n=this.programManager;n.setUniform(`uRadius`,e.radius),n.setUniform(`uPower`,e.power)}})},55905(e,t,n){var r=n(87841),i=n(83419),a=n(10312),o=n(47406);e.exports=new i({Extends:o,initialize:function(e){o.call(this,`FilterParallelFilters`,e)},run:function(e,t,n,i){this.onRunBegin(n),t.lock(this);var o=e.bottom.getActive(),s=e.top.getActive(),c=i||e.getPadding();if(o.length+s.length>0){var l=t,u=t;if(o.length>0){i=c;for(var d=0;d<o.length;d++){var f=o[d],p=this.manager.getNode(f.renderNode);l=p.run(f,l,null,i),d===0&&d<o.length-1&&(i=new r)}}if(s.length>0)for(i=c,d=0;d<s.length;d++)f=s[d],p=this.manager.getNode(f.renderNode),u=p.run(f,u,null,i),d===0&&d<s.length-1&&(i=new r);t.unlock(this),t!==l&&t!==u&&t.release();var m=e.blend;m.glTexture=u.texture,p=this.manager.getNode(`FilterBlend`),n=this.manager.getNode(`FilterBlend`).run(e.blend,l,n,i),u.release()}else{p=this.manager.getNode(`FilterBlend`);var h={blendMode:a.COPY,glTexture:t.texture,amount:1,color:[1,1,1,1]};t.unlock(this),n=p.run(h,t,n,c)}return this.onRunEnd(n),n}})},58167(e,t,n){var r=n(83419),i=n(53663),a=n(99191);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterPixelate`,e,null,a)},setupUniforms:function(e,t){var n=this.programManager;n.setUniform(`amount`,e.amount),n.setUniform(`resolution`,[t.width,t.height])}})},40752(e,t,n){var r=n(83419),i=n(53663),a=n(88430);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterQuantize`,e,null,a)},setupUniforms:function(e,t){var n=this.programManager;n.setUniform(`uSteps`,e.steps),n.setUniform(`uGamma`,e.gamma),n.setUniform(`uOffset`,e.offset),n.setUniform(`uMode`,e.mode),n.setUniform(`uDither`,e.dither)}})},13279(e,t,n){var r=n(83419),i=n(47406);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterSampler`,e)},run:function(e,t,n,r){this.onRunBegin(t);var i=this.manager.renderer,a=0,o=0,s=1,c=1,l=t.width,u=t.height,d=!1;return e.region?(a=e.region.x,o=e.region.y,e.region.width===void 0?d=!0:(s=e.region.width,c=e.region.height)):(s=l,c=u),i.snapshotFramebuffer(t.framebuffer,l,u,e.callback,d,a,o,s,c),this.onRunEnd(t),t}})},27459(e,t,n){var r=n(83419),i=n(53663),a=n(69355);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterShadow`,e,null,a)},setupUniforms:function(e,t){var n=this.programManager,r=e.samples;n.setUniform(`lightPosition`,[e.x,1-e.y]),n.setUniform(`decay`,e.decay),n.setUniform(`power`,e.power/r),n.setUniform(`color`,e.glcolor),n.setUniform(`samples`,r),n.setUniform(`intensity`,e.intensity)}})},88856(e,t,n){var r=n(83419),i=n(53663),a=n(92636);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterThreshold`,e,null,a)},setupUniforms:function(e,t){var n=this.programManager;n.setUniform(`edge1`,e.edge1),n.setUniform(`edge2`,e.edge2),n.setUniform(`invert`,e.invert)}})},10845(e,t,n){var r=n(83419),i=n(53663),a=n(18185);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterVignette`,e,null,a)},setupUniforms:function(e,t){var n=this.programManager,r=e.color;n.setUniform(`uRadius`,e.radius),n.setUniform(`uStrength`,e.strength),n.setUniform(`uPosition`,[e.x,e.y]),n.setUniform(`uColor`,[r.redGL,r.greenGL,r.blueGL,r.alphaGL]),n.setUniform(`uBlendMode`,e.blendMode)}})},99184(e,t,n){var r=n(83419),i=n(53663),a=n(99174);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`FilterWipe`,e,null,a)},setupTextures:function(e,t,n){t[1]=e.wipeTexture.get().glTexture},setupUniforms:function(e,t){var n=this.programManager;n.setUniform(`uMainSampler2`,1),n.setUniform(`uProgress_WipeWidth_Direction_Axis`,[e.progress,e.wipeWidth,e.direction,e.axis]),n.setUniform(`uReveal`,e.reveal)}})},54521(e,t,n){e.exports={BaseFilter:n(47406),BaseFilterShader:n(53663),BatchHandler:n(13961),BatchHandlerPointLight:n(16971),BatchHandlerQuad:n(15214),BatchHandlerQuadSingle:n(72266),BatchHandlerStrip:n(62791),BatchHandlerTileSprite:n(21832),BatchHandlerTriFlat:n(62087),Camera:n(61842),Defaults:n(59212),DrawLine:n(76409),DynamicTextureHandler:n(95449),FillCamera:n(61199),FillPath:n(14255),FillRect:n(12682),FillTri:n(13119),FilterBarrel:n(22731),FilterBlend:n(57032),FilterBlur:n(13922),FilterBlurHigh:n(33466),FilterBlurLow:n(75798),FilterBlurMed:n(90830),FilterBokeh:n(52302),FilterColorMatrix:n(34989),FilterCombineColorMatrix:n(91614),FilterDisplacement:n(15600),FilterGlow:n(99786),FilterGradientMap:n(26825),FilterImageLight:n(54900),FilterKey:n(34652),FilterMask:n(26703),FilterNormalTools:n(56165),FilterPanoramaBlur:n(40305),FilterParallelFilters:n(55905),FilterPixelate:n(58167),FilterQuantize:n(40752),FilterSampler:n(13279),FilterShadow:n(27459),FilterThreshold:n(88856),FilterVignette:n(10845),FilterWipe:n(99184),ListCompositor:n(27996),RebindContext:n(56432),RenderNode:n(6141),StrokePath:n(17486),SubmitterQuad:n(31029),SubmitterSpriteGPULayer:n(53384),SubmitterTile:n(94494),SubmitterTilemapGPULayer:n(87469),SubmitterTileSprite:n(89723),TexturerImage:n(12913),TexturerTileSprite:n(22995),TransformerImage:n(86081),TransformerStamp:n(88383),TransformerTile:n(34454),TransformerTileSprite:n(46211),YieldContext:n(95433)}},31029(e,t,n){var r=n(83419),i=n(46975),a=n(70554),o=n(6141),s=a.getTintAppendFloatAlpha;e.exports=new r({Extends:o,initialize:function(e,t){t=i(t||{},this.defaultConfig),o.call(this,t.name,e),this.batchHandler=t.batchHandler,this._renderOptions={multiTexturing:!0,lighting:null,smoothPixelArt:null},this._lightingOptions={normalGLTexture:null,normalMapRotation:0,selfShadow:{enabled:!1,penumbra:0,diffuseFlatThreshold:0}}},defaultConfig:{name:`SubmitterQuad`,role:`Submitter`,batchHandler:`BatchHandler`},run:function(e,t,n,r,i,a,o,c,l){this.onRunBegin(e);var u,d,f,p,m;i.run&&i.run(e,t,r),a.run&&a.run(e,t,i,n,r),o?(o.run&&o.run(e,t,r),u=o.tintEffect,d=o.tintTopLeft,f=o.tintBottomLeft,p=o.tintTopRight,m=o.tintBottomRight):(u=t.tintMode,d=s(t.tintTopLeft,t._alphaTL),f=s(t.tintBottomLeft,t._alphaBL),p=s(t.tintTopRight,t._alphaTR),m=s(t.tintBottomRight,t._alphaBR));var h=a.quad,g=i.uvSource,_=g.u0,v=g.v0,y=g.u1,b=g.v1;this.setRenderOptions(t,c,l),(t.customRenderNodes[this.batchHandler]||t.defaultRenderNodes[this.batchHandler]).batch(e,i.frame.source.glTexture,h[0],h[1],h[2],h[3],h[6],h[7],h[4],h[5],_,v,y-_,b-v,u,d,f,p,m,this._renderOptions),this.onRunEnd(e)},setRenderOptions:function(e,t,n){var r=this._renderOptions,i,a;if(e.displayTexture?(i=e.displayTexture,a=e.displayFrame.sourceIndex):e.texture?(i=e.texture,a=e.frame.sourceIndex):e.tileset&&(i=Array.isArray(e.tileset)?e.tileset[0].image:e.tileset.image,a=0),e.lighting){t||i&&(t=i.dataSource[a]),t=t?t.glTexture:this.manager.renderer.normalTexture,isNaN(n)&&(n=e.rotation,e.parentContainer&&(n=e.getWorldTransformMatrix(this._tempMatrix,this._tempMatrix2).rotationNormalized));var o=e.selfShadow,s=o.enabled;s===null&&(s=e.scene.sys.game.config.selfShadow),this._lightingOptions.normalGLTexture=t,this._lightingOptions.normalMapRotation=n,this._lightingOptions.selfShadow.enabled=s,this._lightingOptions.selfShadow.penumbra=o.penumbra,this._lightingOptions.selfShadow.diffuseFlatThreshold=o.diffuseFlatThreshold,r.lighting=this._lightingOptions}else r.lighting=null;r.smoothPixelArt=i&&i.smoothPixelArt!==null?i.smoothPixelArt:e.scene.sys.game.config.smoothPixelArt}})},53384(e,t,n){var r=n(61340),i=n(26099),a=n(83419),o=n(46975),s=n(56436),c=n(81084),l=n(44349),u=n(6184),d=n(11653),f=n(40829),p=n(42792),m=n(96049),h=n(33997),g=n(79532),_=n(74505),v=n(70554),y=n(40952),b=n(6141),x=n(49119);e.exports=new a({Extends:b,initialize:function(e,t,n){var a=e.renderer,c=o(t||{},this.defaultConfig),l=c.name;this._completeLayout(c),b.call(this,l,e),this.config=c,this.gameObject=n,this.instanceBufferLayout=new y(a,c.instanceBufferLayout,null),this.vertexBufferLayout=new y(a,c.vertexBufferLayout,null);var u=this.vertexBufferLayout.buffer,d=u.viewU8;if(d[0]=0,d[1]=1,d[2]=2,d[3]=3,u.update(),this.programManager=new s(a,[this.vertexBufferLayout,this.instanceBufferLayout],this.indexBuffer),this.programManager.setBaseShader(c.shaderName,c.vertexSource,c.fragmentSource),c.shaderAdditions)for(var f=0;f<c.shaderAdditions.length;f++){var p=c.shaderAdditions[f];this.programManager.addAddition(p)}if(c.shaderFeatures)for(f=0;f<c.shaderFeatures.length;f++)this.programManager.addFeature(c.shaderFeatures[f]);this._calcMatrix=new r,this._lightVector=new i},defaultConfig:{name:`SubmitterSpriteGPULayer`,count:0,shaderName:`SpriteGPULayer`,vertexSource:n(3524),fragmentSource:x,shaderAdditions:[p(),m(),_(!0),d(1),h(),l(),u(!0),g(!0),f(!0),c(!0)],instanceBufferLayout:{usage:`STATIC_DRAW`,instanceDivisor:1,layout:[{name:`inPositionX`,size:4},{name:`inPositionY`,size:4},{name:`inRotation`,size:4},{name:`inScaleX`,size:4},{name:`inScaleY`,size:4},{name:`inAlpha`,size:4},{name:`inFrame`,size:4},{name:`inTintBlend`,size:4},{name:`inTintBL`,size:4,type:`UNSIGNED_BYTE`,normalized:!0},{name:`inTintTL`,size:4,type:`UNSIGNED_BYTE`,normalized:!0},{name:`inTintBR`,size:4,type:`UNSIGNED_BYTE`,normalized:!0},{name:`inTintTR`,size:4,type:`UNSIGNED_BYTE`,normalized:!0},{name:`inOriginAndTintModeAndCreationTime`,size:4},{name:`inScrollFactor`,size:2}]},vertexBufferLayout:{usage:`STATIC_DRAW`,count:4,layout:[{name:`inVertex`,type:`UNSIGNED_BYTE`}]}},_completeLayout:function(e){var t=e.vertexBufferLayout;e.vertexBufferLayout={},e.vertexBufferLayout.usage=t.usage,e.vertexBufferLayout.count=t.count,e.vertexBufferLayout.layout=[];for(var n=e.vertexBufferLayoutRemove||[],r=0;r<t.layout.length;r++){var i=t.layout[r];n.indexOf(i.name)===-1&&(e.vertexBufferLayout.layout[r]={name:i.name,size:i.size||1,type:i.type||`FLOAT`,normalized:i.normalized||!1})}if(e.vertexBufferLayoutAdd){var a=e.vertexBufferLayoutAdd||[];for(r=0;r<a.length;r++){var o=a[r];e.vertexBufferLayout.layout.push({name:o.name,size:o.size||1,type:o.type||`FLOAT`,normalized:o.normalized||!1})}}for(t=e.instanceBufferLayout,e.instanceBufferLayout={},e.instanceBufferLayout.usage=t.usage,e.instanceBufferLayout.instanceDivisor=t.instanceDivisor,e.instanceBufferLayout.layout=[],n=e.instanceBufferLayoutRemove||[],r=0;r<t.layout.length;r++)i=t.layout[r],n.indexOf(i.name)===-1&&(e.instanceBufferLayout.layout[r]={name:i.name,size:i.size||1,type:i.type||`FLOAT`,normalized:i.normalized||!1});if(e.instanceBufferLayoutAdd)for(a=e.instanceBufferLayoutAdd||[],r=0;r<a.length;r++)o=a[r],e.instanceBufferLayout.layout.push({name:o.name,size:o.size||1,type:o.type||`FLOAT`,normalized:o.normalized||!1})},setupUniforms:function(e){var t=e.camera,n=this.programManager,r=this.gameObject;n.setUniform(`uRoundPixels`,t.roundPixels),n.setUniform(`uResolution`,[e.width,e.height]),e.renderer.setProjectionMatrixFromDrawingContext(e),n.setUniform(`uProjectionMatrix`,e.renderer.projectionMatrix.val);var i=t.matrixCombined;n.setUniform(`uViewMatrix`,[i.a,i.b,0,i.c,i.d,0,i.tx,i.ty,1]),n.setUniform(`uCameraScrollAndAlpha`,[t.scrollX,t.scrollY,r.alpha]),n.setUniform(`uTime`,r.timeElapsed),n.setUniform(`uDiffuseResolution`,[r.frame.source.width,r.frame.source.height]),n.setUniform(`uFrameDataResolution`,[r.frameDataTexture.width,r.frameDataTexture.height]),n.setUniform(`uGravity`,r.gravity),n.setUniform(`uMainSampler[0]`,0),n.setUniform(`uFrameDataTexture`,1);var a=r.texture.source[0].glTexture;n.setUniform(`uMainResolution[0]`,[a.width,a.height]),v.updateLightingUniforms(r.lighting,e,n,2,this._lightVector,r.selfShadow.enabled,r.selfShadow.diffuseFlatThreshold,r.selfShadow.penumbra)},updateRenderOptions:function(){for(var e=this.programManager,t=this.gameObject.lighting,n=e.getAdditionsByTag(`LIGHTING`),r=0;r<n.length;r++)n[r].disable=!t;if(t){var i=e.getAddition(`DefineLights`);i&&(i.additions.fragmentDefine=`#define LIGHT_COUNT `+this.manager.renderer.config.maxLights)}var a=e.getAddition(`SmoothPixelArt`);if(a){var o=this.gameObject.texture.smoothPixelArt;o===null&&(o=this.gameObject.scene.game.config.smoothPixelArt),a.disable=!o}e.clearFeatures();var s=this.gameObject.getShaderFeatures();for(r=0;r<s.length;r++)e.addFeature(s[r]);this.gameObject.selfShadow.enabled&&e.addFeature(`SELFSHADOW`)},run:function(e){var t,n=this.gameObject;if(n.memberCount!==0){this.manager.startStandAloneRender(),this.onRunBegin(e);var r=n.bufferUpdateSegments;if(r>0){var i=this.instanceBufferLayout.buffer,a=n.memberCount,o=Math.floor(a/n.bufferUpdateSegmentSize),s=!0;for(t=0;t<=o;t++)if(!(1<<t&r)){s=!1;break}if(r===n.MAX_BUFFER_UPDATE_SEGMENTS_FULL||a<=n.bufferUpdateSegmentSize||s)i.update();else{var c=n.bufferUpdateSegmentSize,l=c*this.instanceBufferLayout.layout.stride;for(t=0;t<32&&t*c<a;t++)r&1<<t&&i.update(l,t*l)}n.clearAllSegmentsNeedUpdate()}var u=[n.frame.source.glTexture,n.frameDataTexture];if(n.lighting){var d=n.texture.dataSource[n.frame.sourceIndex];d=d?d.glTexture:this.manager.renderer.normalTexture,u[2]=d}this.updateRenderOptions();var f=this.programManager,p=f.getCurrentProgramSuite();if(p){var m=p.program,h=p.vao;this.setupUniforms(e),f.applyUniforms(m),this.manager.renderer.drawInstancedArrays(e,u,m,h,0,4,n.memberCount)}this.onRunEnd(e)}}})},94494(e,t,n){var r=n(83419),i=n(31029);e.exports=new r({Extends:i,initialize:function(e,t){i.call(this,e,t),this._renderOptions.clampFrame=!0},defaultConfig:{name:`SubmitterTile`,role:`Submitter`,batchHandler:`BatchHandler`},run:function(e,t,n,r,i,a,o,s,c){this.onRunBegin(e);var l,u,d,f,p;if(i.run&&i.run(e,t,r),a.run&&a.run(e,t,i,n,r),o)o.run&&o.run(e,t,r),l=o.tintEffect,u=o.tintTopLeft,d=o.tintBottomLeft,f=o.tintTopRight,p=o.tintBottomRight;else{l=t.tintMode;var m=4294967295;u=m,d=m,f=m,p=m}var h=i.frame,g=a.quad,_=i.uvSource,v=_.u0,y=_.v0,b=_.u1,x=_.v1;this.setRenderOptions(t,s,c),(t.customRenderNodes[this.batchHandler]||t.defaultRenderNodes[this.batchHandler]).batch(e,h.source.glTexture,g[0],g[1],g[2],g[3],g[6],g[7],g[4],g[5],v,y,b-v,x-y,l,u,d,f,p,this._renderOptions,v,x,v,y,b,x,b,y),this.onRunEnd(e)}})},89723(e,t,n){var r=n(83419),i=n(70554),a=n(31029),o=i.getTintAppendFloatAlpha;e.exports=new r({Extends:a,initialize:function(e,t){a.call(this,e,t),this._renderOptions.wrapFrame=!0},defaultConfig:{name:`SubmitterTileSprite`,role:`Submitter`,batchHandler:`BatchHandler`},run:function(e,t,n,r,i,a,s,c,l){this.onRunBegin(e);var u,d,f,p,m;i.run&&i.run(e,t,r),a.run&&a.run(e,t,i,n,r),s?(s.run&&s.run(e,t,r),u=s.tintEffect,d=s.tintTopLeft,f=s.tintBottomLeft,p=s.tintTopRight,m=s.tintBottomRight):(u=t.tintMode,d=o(t.tintTopLeft,t._alphaTL),f=o(t.tintBottomLeft,t._alphaBL),p=o(t.tintTopRight,t._alphaTR),m=o(t.tintBottomRight,t._alphaBR));var h=i.frame,g=a.quad,_=h,v=_.u0,y=_.v0,b=_.u1,x=_.v1,S=i.uvMatrix.quad;this.setRenderOptions(t,c,l),this._lightingOptions.normalMapRotation+=t.tileRotation,(t.customRenderNodes[this.batchHandler]||t.defaultRenderNodes[this.batchHandler]).batch(e,h.source.glTexture,g[0],g[1],g[2],g[3],g[6],g[7],g[4],g[5],v,y,b-v,x-y,u,d,f,p,m,this._renderOptions,S[0],S[1],S[2],S[3],S[6],S[7],S[4],S[5]),this.onRunEnd(e)}})},87469(e,t,n){var r=n(61340),i=n(26099),a=n(83419),o=n(46975),s=n(56436),c=n(84639),l=n(81084),u=n(6184),d=n(747),f=n(74505),p=n(57532),m=n(23879),h=n(40952),g=n(6141),_=n(70554);e.exports=new a({Extends:g,initialize:function(e,t){var n=e.renderer,a=o(t||{},this.defaultConfig),c=a.name;if(this._completeLayout(a),g.call(this,c,e),this.config=a,this.indexBuffer=n.genericQuadIndexBuffer,this.vertexBufferLayout=new h(n,a.vertexBufferLayout,null),this.programManager=new s(n,[this.vertexBufferLayout],this.indexBuffer),this.programManager.setBaseShader(a.shaderName,a.vertexSource,a.fragmentSource),a.shaderAdditions)for(var l=0;l<a.shaderAdditions.length;l++){var u=a.shaderAdditions[l];this.programManager.addAddition(u)}if(a.shaderFeatures)for(l=0;l<a.shaderFeatures.length;l++)this.programManager.addFeature(a.shaderFeatures[l]);this._spriteMatrix=new r,this._calcMatrix=new r,this._lightVector=new i,this._quad=new Float32Array(8)},defaultConfig:{name:`SubmitterTilemapGPULayer`,shaderName:`TilemapGPULayer`,vertexSource:m,fragmentSource:p,shaderAdditions:[f(!0),d(!0),u(!0),l(!0)],vertexBufferLayout:{usage:`DYNAMIC_DRAW`,count:4,layout:[{name:`inPosition`,size:2},{name:`inTexCoord`,size:2}]}},_completeLayout:function(e){var t=e.vertexBufferLayout;e.vertexBufferLayout={},e.vertexBufferLayout.usage=t.usage,e.vertexBufferLayout.count=t.count||4,e.vertexBufferLayout.layout=[];for(var n=e.vertexBufferLayoutRemove||[],r=0;r<t.layout.length;r++){var i=t.layout[r];n.indexOf(i.name)===-1&&(e.vertexBufferLayout.layout[r]={name:i.name,size:i.size||1,type:i.type||`FLOAT`,normalized:i.normalized||!1})}if(e.vertexBufferLayoutAdd){var a=e.vertexBufferLayoutAdd||[];for(r=0;r<a.length;r++){var o=a[r];e.vertexBufferLayout.layout.push({name:o.name,size:o.size||1,type:o.type||`FLOAT`,normalized:o.normalized||!1})}}},setupUniforms:function(e,t){var n=this.programManager;n.setUniform(`uResolution`,[e.width,e.height]),e.renderer.setProjectionMatrixFromDrawingContext(e),n.setUniform(`uProjectionMatrix`,e.renderer.projectionMatrix.val);var r=t.tileset,i=r.glTexture,a=t.layerDataTexture,o=r.getAnimationDataTexture(e.renderer);n.setUniform(`uMainSampler`,0),n.setUniform(`uLayerSampler`,1),n.setUniform(`uAnimSampler`,2),n.setUniform(`uMainResolution`,[i.width,i.height]),n.setUniform(`uLayerResolution`,[a.width,a.height]),n.setUniform(`uAnimResolution`,[o.width,o.height]),n.setUniform(`uTileColumns`,r.columns),n.setUniform(`uTileWidthHeightMarginSpacing`,[r.tileWidth,r.tileHeight,r.tileMargin,r.tileSpacing]),n.setUniform(`uAlpha`,t.alpha),n.setUniform(`uTime`,t.timeElapsed),_.updateLightingUniforms(t.lighting,e,n,3,this._lightVector,t.selfShadow.enabled,t.selfShadow.diffuseFlatThreshold,t.selfShadow.penumbra)},updateRenderOptions:function(e){var t=this.programManager,n=e.tileset.image,r=t.getAdditionsByTag(`MAXANIMS`)[0];r&&t.removeAddition(r.name),e.tileset.maxAnimationLength>0&&t.addAddition(c(e.tileset.maxAnimationLength));for(var i=e.lighting,a=t.getAdditionsByTag(`LIGHTING`),o=0;o<a.length;o++){var s=a[o];s.disable=!i}if(i){var l=t.getAddition(`DefineLights`);l&&(l.additions.fragmentDefine=`#define LIGHT_COUNT `+this.manager.renderer.config.maxLights)}var u=e.selfShadow.enabled;u===null&&(u=e.scene.sys.game.config.selfShadow),u?t.addFeature(`SELFSHADOW`):t.removeFeature(`SELFSHADOW`);var d=n.smoothPixelArt;d===null&&(d=e.scene.sys.game.config.smoothPixelArt);var f=t.getAddition(`SmoothPixelArt`);f&&(f.disable=!d),n.source[0].glTexture.magFilter===this.manager.renderer.gl.LINEAR?t.addFeature(`BORDERFILTER`):t.removeFeature(`BORDERFILTER`)},run:function(e,t,n){var r=this.manager,i=r.renderer;r.startStandAloneRender(),this.onRunBegin(e);var a=e.camera,o=this._spriteMatrix,s=this._calcMatrix,c=this._quad,l=t.x,u=t.y,d=t.width,f=t.height;s.copyWithScrollFactorFrom(a.getViewMatrix(!e.useCanvas),a.scrollX,a.scrollY,t.scrollFactorX,t.scrollFactorY),n&&s.multiply(n),o.applyITRS(l,u,0,t.scaleX,t.scaleY),s.multiply(o),s.setQuad(l,u,l+d,u+f,c);var p=this.vertexBufferLayout.layout.stride,m=this.vertexBufferLayout.buffer,h=m.viewF32,g=0;h[g++]=c[2],h[g++]=c[3],h[g++]=0,h[g++]=0,h[g++]=c[0],h[g++]=c[1],h[g++]=0,h[g++]=1,h[g++]=c[4],h[g++]=c[5],h[g++]=1,h[g++]=0,h[g++]=c[6],h[g++]=c[7],h[g++]=1,h[g++]=1,m.update(p*4);var _=t.tileset,v=_.glTexture,y=_.getAnimationDataIndexMap(i).size>0,b=[v,t.layerDataTexture];if(y&&(b[2]=_.getAnimationDataTexture(i)),t.lighting){var x=_.image.dataSource[0];x=x?x.glTexture:this.manager.renderer.normalTexture,b[3]=x}this.updateRenderOptions(t);var S=this.programManager,C=S.getCurrentProgramSuite();if(C){var w=C.program,T=C.vao;this.setupUniforms(e,t),S.applyUniforms(w),i.drawElements(e,b,w,T,4,0)}this.onRunEnd(e)}})},12913(e,t,n){var r=n(83419),i=n(6141);e.exports=new r({Extends:i,initialize:function(e){i.call(this,`TexturerImage`,e),this.frame=null,this.frameWidth=0,this.frameHeight=0,this.uvSource=null},run:function(e,t,n){this.onRunBegin(e);var r=t.frame;if(this.frame=r,this.frameWidth=r.cutWidth,this.frameHeight=r.cutHeight,this.uvSource=r,t.isCropped){var i=t._crop;this.uvSource=i,(i.flipX!==t.flipX||i.flipY!==t.flipY)&&t.frame.updateCropUVs(i,t.flipX,t.flipY),this.frameWidth=i.width,this.frameHeight=i.height}var a=r.source.resolution;this.frameWidth/=a,this.frameHeight/=a,this.onRunEnd(e)}})},22995(e,t,n){var r=n(61340),i=n(83419),a=n(6141);e.exports=new i({Extends:a,initialize:function(e){a.call(this,`TexturerTileSprite`,e),this.frame=null,this.uvMatrix=new r},run:function(e,t,n){this.onRunBegin(e);var r=t.frame;if(this.frame=r,t.isCropped){var i=t._crop;(i.flipX!==t.flipX||i.flipY!==t.flipY)&&t.frame.updateCropUVs(i,t.flipX,t.flipY)}this.uvMatrix.loadIdentity(),this.uvMatrix.scale(1/r.width,1/r.height),this.uvMatrix.translate(t.tilePositionX,t.tilePositionY),this.uvMatrix.scale(1/t.tileScaleX,1/t.tileScaleY),this.uvMatrix.rotate(-t.tileRotation),this.uvMatrix.setQuad(0,0,t.width,t.height),this.onRunEnd(e)}})},86081(e,t,n){var r=n(61340),i=n(83419),a=n(46975),o=n(6141);e.exports=new i({Extends:o,initialize:function(e,t){t=a(t||{},this.defaultConfig),o.call(this,t.name,e),this.quad=new Float32Array(8),this._spriteMatrix=new r,this._calcMatrix=new r},defaultConfig:{name:`TransformerImage`,role:`Transformer`},run:function(e,t,n,r,i){this.onRunBegin(e);var a=n.frame,o=n.uvSource,s=o.x,c=o.y,l=t.displayOriginX,u=t.displayOriginY,d=-l+s,f=-u+c,p=a.customPivot,m=1,h=1;t.flipX&&(p||(d+=-a.realWidth+l*2),m=-1),t.flipY&&(p||(f+=-a.realHeight+u*2),h=-1);var g=e.camera,_=this._spriteMatrix,v=this._calcMatrix.copyWithScrollFactorFrom(g.getViewMatrix(!e.useCanvas),g.scrollX,g.scrollY,t.scrollFactorX,t.scrollFactorY);r&&v.multiply(r),_.applyITRS(t.x,t.y,t.rotation,t.scaleX*m,t.scaleY*h),v.multiply(_),v.setQuad(d,f,d+n.frameWidth,f+n.frameHeight,this.quad);var y=v.matrix,b=y[0]===1&&y[1]===0&&y[2]===0&&y[3]===1;if(t.willRoundVertices(g,b)){var x=this.quad;x[0]=Math.round(x[0]),x[1]=Math.round(x[1]),x[2]=Math.round(x[2]),x[3]=Math.round(x[3]),x[4]=Math.round(x[4]),x[5]=Math.round(x[5]),x[6]=Math.round(x[6]),x[7]=Math.round(x[7])}this.onRunEnd(e)}})},88383(e,t,n){var r=n(61340),i=n(83419),a=n(46975),o=n(6141);e.exports=new i({Extends:o,initialize:function(e,t){t=a(t||{},this.defaultConfig),o.call(this,t.name,e),this._spriteMatrix=new r,this.quad=this._spriteMatrix.quad},defaultConfig:{name:`TransformerStamp`,role:`Transformer`},run:function(e,t,n,r,i){this.onRunBegin(e);var a=n.frame,o=n.uvSource,s=o.x,c=o.y,l=t.displayOriginX,u=t.displayOriginY,d=-l+s,f=-u+c,p=a.customPivot,m=1,h=1;t.flipX&&(p||(d+=-a.realWidth+l*2),m=-1),t.flipY&&(p||(f+=-a.realHeight+u*2),h=-1);var g=t.x,_=t.y,v=this._spriteMatrix;v.applyITRS(g,_,t.rotation,t.scaleX*m,t.scaleY*h);var y=v.matrix;this.onlyTranslate=y[0]===1&&y[1]===0&&y[2]===0&&y[3]===1,v.setQuad(d,f,d+n.frameWidth,f+n.frameHeight);var b=v.matrix,x=b[0]===1&&b[1]===0&&b[2]===0&&b[3]===1;if(t.willRoundVertices(e.camera,x)){var S=this.quad;S[0]=Math.round(S[0]),S[1]=Math.round(S[1]),S[2]=Math.round(S[2]),S[3]=Math.round(S[3]),S[4]=Math.round(S[4]),S[5]=Math.round(S[5]),S[6]=Math.round(S[6]),S[7]=Math.round(S[7])}this.onRunEnd(e)}})},34454(e,t,n){var r=n(83419),i=n(86081);e.exports=new r({Extends:i,initialize:function(e,t){i.call(this,e,t)},defaultConfig:{name:`TransformerTile`,role:`Transformer`},run:function(e,t,n,r,i){this.onRunBegin(e);var a=e.camera,o=this._calcMatrix,s=this._spriteMatrix;o.copyWithScrollFactorFrom(a.getViewMatrix(!e.useCanvas),a.scrollX,a.scrollY,t.scrollFactorX,t.scrollFactorY),r&&o.multiply(r);var c=n.frameWidth,l=n.frameHeight,u=c,d=l,f=c/2,p=l/2,m=t.scaleX,h=t.scaleY,g=t.gidMap[i.index],_=g.tileOffset.x,v=g.tileOffset.y,y=t.x+i.pixelX*m+(f*m-_),b=t.y+i.pixelY*h+(p*h-v),x=-f,S=-p;i.flipX&&(u*=-1,x+=c),i.flipY&&(d*=-1,x+=l),s.applyITRS(y,b,i.rotation,m,h),o.multiply(s),o.setQuad(x,S,x+u,S+d,this.quad);var C=o.matrix,w=C[0]===1&&C[1]===0&&C[2]===0&&C[3]===1;if(t.willRoundVertices(a,w)){var T=this.quad;T[0]=Math.round(T[0]),T[1]=Math.round(T[1]),T[2]=Math.round(T[2]),T[3]=Math.round(T[3]),T[4]=Math.round(T[4]),T[5]=Math.round(T[5]),T[6]=Math.round(T[6]),T[7]=Math.round(T[7])}this.onRunEnd(e)}})},46211(e,t,n){var r=n(83419),i=n(86081);e.exports=new r({Extends:i,initialize:function(e,t){i.call(this,e,t)},defaultConfig:{name:`TransformerTileSprite`,role:`Transformer`},run:function(e,t,n,r,i){this.onRunBegin(e);var a=t.width,o=t.height,s=t.displayOriginX,c=t.displayOriginY,l=-s,u=-c,d=1,f=1;t.flipX&&(l+=-a+s*2,d=-1),t.flipY&&(u+=-o+c*2,f=-1);var p=t.x,m=t.y,h=e.camera,g=this._calcMatrix,_=this._spriteMatrix;g.copyWithScrollFactorFrom(h.getViewMatrix(!e.useCanvas),h.scrollX,h.scrollY,t.scrollFactorX,t.scrollFactorY),r&&g.multiply(r),_.applyITRS(p,m,t.rotation,t.scaleX*d,t.scaleY*f),g.multiply(_),g.setQuad(l,u,l+a,u+o,this.quad);var v=g.matrix,y=v[0]===1&&v[1]===0&&v[2]===0&&v[3]===1;if(t.willRoundVertices(h,y)){var b=this.quad;b[0]=Math.round(b[0]),b[1]=Math.round(b[1]),b[2]=Math.round(b[2]),b[3]=Math.round(b[3]),b[4]=Math.round(b[4]),b[5]=Math.round(b[5]),b[6]=Math.round(b[6]),b[7]=Math.round(b[7])}this.onRunEnd(e)}})},84547(e){e.exports=[`vec4 applyLighting (vec4 fragColor, vec3 normal)`,`{`,` vec4 lighting = getLighting(fragColor, normal);`,` return fragColor * vec4(lighting.rgb * lighting.a, lighting.a);`,`}`].join(`
37
+ `)},11104(e){e.exports=[`vec4 applyTint(vec4 texture)`,`{`,` vec3 unpremultTexture = texture.rgb / texture.a;`,` float alpha = texture.a * outTint.a;`,` vec3 color = vec3(unpremultTexture);`,` if (outTintEffect == 0.0) {`,` color *= outTint.bgr;`,` }`,` else if (outTintEffect == 1.0) {`,` color = outTint.bgr;`,` }`,` else if (outTintEffect == 2.0) {`,` color += outTint.bgr;`,` }`,` else if (outTintEffect == 4.0) {`,` color = 1.0 - (1.0 - unpremultTexture) * (1.0 - outTint.bgr);`,` }`,` else if (outTintEffect == 5.0) {`,` color = vec3(`,` unpremultTexture.r < 0.5 ? 2.0 * outTint.b * unpremultTexture.r : 1.0 - 2.0 * (1.0 - outTint.b) * (1.0 - unpremultTexture.r),`,` unpremultTexture.g < 0.5 ? 2.0 * outTint.g * unpremultTexture.g : 1.0 - 2.0 * (1.0 - outTint.g) * (1.0 - unpremultTexture.g),`,` unpremultTexture.b < 0.5 ? 2.0 * outTint.r * unpremultTexture.b : 1.0 - 2.0 * (1.0 - outTint.r) * (1.0 - unpremultTexture.b)`,` );`,` }`,` else if (outTintEffect == 6.0) {`,` color = vec3(`,` outTint.b < 0.5 ? 2.0 * outTint.b * unpremultTexture.r : 1.0 - 2.0 * (1.0 - outTint.b) * (1.0 - unpremultTexture.r),`,` outTint.g < 0.5 ? 2.0 * outTint.g * unpremultTexture.g : 1.0 - 2.0 * (1.0 - outTint.g) * (1.0 - unpremultTexture.g),`,` outTint.r < 0.5 ? 2.0 * outTint.r * unpremultTexture.b : 1.0 - 2.0 * (1.0 - outTint.r) * (1.0 - unpremultTexture.b)`,` );`,` }`,` return vec4(color * alpha, alpha);`,`}`].join(`
38
+ `)},81556(e){e.exports=[`vec4 boundedSampler(sampler2D sampler, vec2 uv)`,`{`,` if (clamp(uv, 0.0, 1.0) != uv)`,` {`,` return vec4(0.0, 0.0, 0.0, 0.0);`,` }`,` return texture2D(sampler, uv);`,`}`].join(`
39
+ `)},96293(e){e.exports=[`#define SHADER_NAME PHASER_COLORMATRIX_FS`,`precision mediump float;`,`uniform sampler2D uMainSampler;`,`uniform float uColorMatrix[20];`,`uniform float uAlpha;`,`varying vec2 outTexCoord;`,`void main ()`,`{`,` vec4 c = texture2D(uMainSampler, outTexCoord);`,` if (uAlpha == 0.0)`,` {`,` gl_FragColor = c;`,` return;`,` }`,` if (c.a > 0.0)`,` {`,` c.rgb /= c.a;`,` }`,` vec4 result;`,` result.r = (uColorMatrix[0] * c.r) + (uColorMatrix[1] * c.g) + (uColorMatrix[2] * c.b) + (uColorMatrix[3] * c.a) + uColorMatrix[4];`,` result.g = (uColorMatrix[5] * c.r) + (uColorMatrix[6] * c.g) + (uColorMatrix[7] * c.b) + (uColorMatrix[8] * c.a) + uColorMatrix[9];`,` result.b = (uColorMatrix[10] * c.r) + (uColorMatrix[11] * c.g) + (uColorMatrix[12] * c.b) + (uColorMatrix[13] * c.a) + uColorMatrix[14];`,` result.a = (uColorMatrix[15] * c.r) + (uColorMatrix[16] * c.g) + (uColorMatrix[17] * c.b) + (uColorMatrix[18] * c.a) + uColorMatrix[19];`,` c.rgb *= c.a;`,` result.rgb *= result.a;`,` gl_FragColor = mix(c, result, uAlpha);`,`}`].join(`
40
+ `)},78390(e){e.exports=[`vec2 v2len (vec2 a, vec2 b)`,`{`,` return sqrt(a*a+b*b);`,`}`,`vec2 getBlockyTexCoord (vec2 texCoord, vec2 texRes) {`,` texCoord *= texRes;`,` vec2 seam = floor(texCoord + 0.5);`,` texCoord = (texCoord - seam) / v2len(dFdx(texCoord), dFdy(texCoord)) + seam;`,` texCoord = clamp(texCoord, seam-.5, seam+.5);`,` return texCoord / texRes;`,`}`].join(`
41
+ `)},11719(e){e.exports=[`struct Light`,`{`,` vec3 position;`,` vec3 color;`,` float intensity;`,` float radius;`,`};`,`const int kMaxLights = LIGHT_COUNT;`,`uniform vec4 uCamera; /* x, y, rotation, zoom */`,`uniform sampler2D uNormSampler;`,`uniform vec3 uAmbientLightColor;`,`uniform Light uLights[kMaxLights];`,`uniform int uLightCount;`,`#ifdef FEATURE_SELFSHADOW`,`uniform float uDiffuseFlatThreshold;`,`uniform float uPenumbra;`,`#endif`,`vec4 getLighting (vec4 fragColor, vec3 normal)`,`{`,` vec3 finalColor = vec3(0.0);`,` vec2 res = vec2(min(uResolution.x, uResolution.y)) * uCamera.w;`,` #ifdef FEATURE_SELFSHADOW`,` vec3 unpremultipliedColor = fragColor.rgb / fragColor.a;`,` float occlusionThreshold = 1.0 - ((unpremultipliedColor.r + unpremultipliedColor.g + unpremultipliedColor.b) / uDiffuseFlatThreshold);`,` #endif`,` for (int index = 0; index < kMaxLights; ++index)`,` {`,` if (index < uLightCount)`,` {`,` Light light = uLights[index];`,` vec3 lightDir = vec3((light.position.xy / res) - (gl_FragCoord.xy / res), light.position.z / res.x);`,` vec3 lightNormal = normalize(lightDir);`,` float distToSurf = length(lightDir) * uCamera.w;`,` float diffuseFactor = max(dot(normal, lightNormal), 0.0);`,` float radius = (light.radius / res.x * uCamera.w) * uCamera.w;`,` float attenuation = clamp(1.0 - distToSurf * distToSurf / (radius * radius), 0.0, 1.0);`,` #ifdef FEATURE_SELFSHADOW`,` float occluded = smoothstep(0.0, 1.0, (diffuseFactor - occlusionThreshold) / uPenumbra);`,` vec3 diffuse = light.color * diffuseFactor * occluded;`,` #else`,` vec3 diffuse = light.color * diffuseFactor;`,` #endif`,` finalColor += (attenuation * diffuse) * light.intensity;`,` }`,` }`,` vec4 colorOutput = vec4(uAmbientLightColor + finalColor, 1.0);`,` return colorOutput;`,`}`].join(`
42
+ `)},14030(e){e.exports=[`vec2 clampTexCoordWithinFrame (vec2 texCoord)`,`{`,` vec2 texRes = getTexRes();`,` vec4 frameTexel = outFrame * texRes.xyxy;`,` vec2 frameMin = frameTexel.xy + vec2(0.5, 0.5);`,` vec2 frameMax = frameTexel.xy + frameTexel.zw - vec2(0.5, 0.5);`,` return clamp(texCoord, frameMin / texRes, frameMax / texRes);`,`}`].join(`
43
+ `)},10235(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision mediump float;`,`uniform sampler2D uMainSampler;`,`uniform float amount;`,`varying vec2 outTexCoord;`,`#pragma phaserTemplate(fragmentHeader)`,`vec2 Distort(vec2 p)`,`{`,` float theta = atan(p.y, p.x);`,` float radius = length(p);`,` radius = pow(radius, amount);`,` p.x = radius * cos(theta);`,` p.y = radius * sin(theta);`,` return 0.5 * (p + 1.0);`,`}`,`void main()`,`{`,` vec2 xy = 2.0 * outTexCoord - 1.0;`,` vec2 texCoord = outTexCoord;`,` if (length(xy) < 1.0)`,` {`,` texCoord = Distort(xy);`,` }`,` gl_FragColor = boundedSampler(uMainSampler, texCoord);`,`}`].join(`
44
+ `)},65980(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision mediump float;`,`uniform sampler2D uMainSampler;`,`uniform sampler2D uMainSampler2;`,`uniform float amount;`,`uniform vec4 color;`,`varying vec2 outTexCoord;`,`vec4 NORMAL (vec4 base, vec4 blend)`,`{`,` return blend + base * (1.0 - blend.a);`,`}`,`vec4 ADD (vec4 base, vec4 blend)`,`{`,` return base + blend;`,`}`,`vec4 MULTIPLY (vec4 base, vec4 blend)`,`{`,` return base * blend;`,`}`,`vec4 SCREEN (vec4 base, vec4 blend)`,`{`,` return 1.0 - (1.0 - base) * (1.0 - blend);`,`}`,`float overlayChannel (float base, float blend)`,`{`,` return base < 0.5 ? 2.0 * base * blend : 1.0 - 2.0 * (1.0 - base) * (1.0 - blend);`,`}`,`vec4 OVERLAY (vec4 base, vec4 blend)`,`{`,` return vec4(`,` overlayChannel(base.r, blend.r),`,` overlayChannel(base.g, blend.g),`,` overlayChannel(base.b, blend.b),`,` overlayChannel(base.a, blend.a)`,` );`,`}`,`vec4 DARKEN (vec4 base, vec4 blend)`,`{`,` return min(base, blend);`,`}`,`vec4 LIGHTEN (vec4 base, vec4 blend)`,`{`,` return max(base, blend);`,`}`,`float dodgeChannel (float base, float blend)`,`{`,` return blend == 1.0 ? blend : min(1.0, base / (1.0 - blend));`,`}`,`vec4 COLOR_DODGE (vec4 base, vec4 blend)`,`{`,` return vec4(`,` dodgeChannel(base.r, blend.r),`,` dodgeChannel(base.g, blend.g),`,` dodgeChannel(base.b, blend.b),`,` dodgeChannel(base.a, blend.a)`,` );`,`}`,`float burnChannel (float base, float blend)`,`{`,` return blend == 0.0 ? blend : 1.0 - min(1.0, (1.0 - base) / blend);`,`}`,`vec4 COLOR_BURN (vec4 base, vec4 blend)`,`{`,` return vec4(`,` burnChannel(base.r, blend.r),`,` burnChannel(base.g, blend.g),`,` burnChannel(base.b, blend.b),`,` burnChannel(base.a, blend.a)`,` );`,`}`,`float hardLightChannel (float base, float blend)`,`{`,` return blend < 0.5 ? 2.0 * base * blend : 1.0 - 2.0 * (1.0 - base) * (1.0 - blend);`,`}`,`vec4 HARD_LIGHT (vec4 base, vec4 blend)`,`{`,` return vec4(`,` hardLightChannel(base.r, blend.r),`,` hardLightChannel(base.g, blend.g),`,` hardLightChannel(base.b, blend.b),`,` hardLightChannel(base.a, blend.a)`,` );`,`}`,`float softLightChannel (float base, float blend)`,`{`,` return blend < 0.5 ? (2.0 * base * blend + base * base * (1.0 - 2.0 * blend)) : (sqrt(base) * (2.0 * blend - 1.0) + 2.0 * base * (1.0 - blend));`,`}`,`vec4 SOFT_LIGHT (vec4 base, vec4 blend)`,`{`,` return vec4(`,` softLightChannel(base.r, blend.r),`,` softLightChannel(base.g, blend.g),`,` softLightChannel(base.b, blend.b),`,` softLightChannel(base.a, blend.a)`,` );`,`}`,`vec4 DIFFERENCE (vec4 base, vec4 blend)`,`{`,` return abs(base - blend);`,`}`,`vec4 EXCLUSION (vec4 base, vec4 blend)`,`{`,` return base + blend - 2.0 * base * blend;`,`}`,`vec3 rgbToHsl (vec3 color)`,`{`,` vec3 hsl = vec3(0.0);`,` float fmin = min(min(color.r, color.g), color.b);`,` float fmax = max(max(color.r, color.g), color.b);`,` float delta = fmax - fmin;`,` hsl.z = (fmax + fmin) / 2.0;`,` if (delta == 0.0)`,` {`,` hsl.x = 0.0;`,` hsl.y = 0.0;`,` }`,` else`,` {`,` if (hsl.z < 0.5)`,` {`,` hsl.y = delta / (fmax + fmin);`,` }`,` else`,` {`,` hsl.y = delta / (2.0 - fmax - fmin);`,` }`,` float deltaR = (((fmax - color.r) / 6.0) + (delta / 2.0)) / delta;`,` float deltaG = (((fmax - color.g) / 6.0) + (delta / 2.0)) / delta;`,` float deltaB = (((fmax - color.b) / 6.0) + (delta / 2.0)) / delta;`,` if (color.r == fmax)`,` {`,` hsl.x = deltaB - deltaG;`,` }`,` else if (color.g == fmax)`,` {`,` hsl.x = (1.0 / 3.0) + deltaR - deltaB;`,` }`,` else if (color.b == fmax)`,` {`,` hsl.x = (2.0 / 3.0) + deltaG - deltaR;`,` }`,` if (hsl.x < 0.0)`,` {`,` hsl.x += 1.0;`,` }`,` else if (hsl.x > 1.0)`,` {`,` hsl.x -= 1.0;`,` }`,` }`,` return hsl;`,`}`,`vec3 hslToRgb (vec3 hsl)`,`{`,` float p = hsl.z * (1.0 - hsl.y);`,` float q = hsl.z * (1.0 - hsl.y * hsl.x);`,` float t = hsl.z * (1.0 - hsl.y * (1.0 - hsl.x));`,` if (hsl.x < 1.0 / 6.0)`,` {`,` return vec3(hsl.z, t, p);`,` }`,` else if (hsl.x < 0.5)`,` {`,` return vec3(q, hsl.z, p);`,` }`,` else if (hsl.x < 2.0 / 3.0)`,` {`,` return vec3(p, hsl.z, t);`,` }`,` return vec3(p, q, hsl.z);`,`}`,`vec4 HUE (vec4 base, vec4 blend)`,`{`,` vec3 baseHSL = rgbToHsl(base.rgb);`,` vec3 blendHSL = rgbToHsl(blend.rgb);`,` return vec4(hslToRgb(vec3(blendHSL.x, baseHSL.y, baseHSL.z)), base.a);`,`}`,`vec4 SATURATION (vec4 base, vec4 blend)`,`{`,` vec3 baseHSL = rgbToHsl(base.rgb);`,` vec3 blendHSL = rgbToHsl(blend.rgb);`,` return vec4(hslToRgb(vec3(baseHSL.x, blendHSL.y, baseHSL.z)), base.a);`,`}`,`vec4 COLOR (vec4 base, vec4 blend)`,`{`,` vec3 baseHSL = rgbToHsl(base.rgb);`,` vec3 blendHSL = rgbToHsl(blend.rgb);`,` return vec4(hslToRgb(vec3(blendHSL.x, blendHSL.y, baseHSL.z)), base.a);`,`}`,`vec4 LUMINOSITY (vec4 base, vec4 blend)`,`{`,` vec3 baseHSL = rgbToHsl(base.rgb);`,` vec3 blendHSL = rgbToHsl(blend.rgb);`,` return vec4(hslToRgb(vec3(baseHSL.x, baseHSL.y, blendHSL.z)), base.a);`,`}`,`vec4 ERASE (vec4 base, vec4 blend)`,`{`,` return base * (1.0 - blend.a);`,`}`,`vec4 SOURCE_IN (vec4 base, vec4 blend)`,`{`,` return blend * base.a;`,`}`,`vec4 SOURCE_OUT (vec4 base, vec4 blend)`,`{`,` return blend * (1.0 - base.a);`,`}`,`vec4 SOURCE_ATOP (vec4 base, vec4 blend)`,`{`,` return base * (1.0 - blend.a) + blend * base.a;`,`}`,`vec4 DESTINATION_OVER (vec4 base, vec4 blend)`,`{`,` return base + blend * (1.0 - base.a);`,`}`,`vec4 DESTINATION_IN (vec4 base, vec4 blend)`,`{`,` return base * blend.a;`,`}`,`vec4 DESTINATION_OUT (vec4 base, vec4 blend)`,`{`,` return base * (1.0 - blend.a);`,`}`,`vec4 DESTINATION_ATOP (vec4 base, vec4 blend)`,`{`,` return base * blend.a + blend * (1.0 - base.a);`,`}`,`vec4 LIGHTER (vec4 base, vec4 blend)`,`{`,` return ADD(base, blend);`,`}`,`vec4 COPY (vec4 base, vec4 blend)`,`{`,` return blend;`,`}`,`vec4 XOR (vec4 base, vec4 blend)`,`{`,` return base * (1.0 - blend.a) + blend * (1.0 - base.a);`,`}`,`#pragma phaserTemplate(fragmentHeader)`,`void main ()`,`{`,` vec4 base = boundedSampler(uMainSampler, outTexCoord);`,` vec4 blend = boundedSampler(uMainSampler2, outTexCoord) * color;`,` vec4 blended = BLEND(base, blend);`,` gl_FragColor = mix(base, blended, amount);`,`}`].join(`
45
+ `)},5899(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision mediump float;`,`uniform sampler2D uMainSampler;`,`uniform vec2 resolution;`,`uniform vec4 uSizeAndOffset;`,`varying vec2 outTexCoord;`,`void main()`,`{`,` vec2 gridCell = floor((outTexCoord * resolution + uSizeAndOffset.zw) / uSizeAndOffset.xy) * uSizeAndOffset.xy - uSizeAndOffset.zw;`,` vec2 texCoord = gridCell / resolution;`,` gl_FragColor = texture2D(uMainSampler, texCoord);`,`}`].join(`
46
+ `)},20784(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision mediump float;`,`uniform sampler2D uMainSampler;`,`uniform vec2 resolution;`,`uniform vec2 offset;`,`uniform float strength;`,`uniform vec3 color;`,`varying vec2 outTexCoord;`,`#pragma phaserTemplate(fragmentHeader)`,`void main ()`,`{`,` vec2 uv = outTexCoord;`,` vec4 col = vec4(0.0);`,` vec2 off1 = vec2(1.411764705882353) * offset * strength;`,` vec2 off2 = vec2(3.2941176470588234) * offset * strength;`,` vec2 off3 = vec2(5.176470588235294) * offset * strength;`,` col += boundedSampler(uMainSampler, uv) * 0.1964825501511404;`,` col += boundedSampler(uMainSampler, uv + (off1 / resolution)) * 0.2969069646728344;`,` col += boundedSampler(uMainSampler, uv - (off1 / resolution)) * 0.2969069646728344;`,` col += boundedSampler(uMainSampler, uv + (off2 / resolution)) * 0.09447039785044732;`,` col += boundedSampler(uMainSampler, uv - (off2 / resolution)) * 0.09447039785044732;`,` col += boundedSampler(uMainSampler, uv + (off3 / resolution)) * 0.010381362401148057;`,` col += boundedSampler(uMainSampler, uv - (off3 / resolution)) * 0.010381362401148057;`,` gl_FragColor = col * vec4(color, 1.0);`,`}`].join(`
47
+ `)},65122(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision mediump float;`,`uniform sampler2D uMainSampler;`,`uniform vec2 resolution;`,`uniform vec2 offset;`,`uniform float strength;`,`uniform vec3 color;`,`varying vec2 outTexCoord;`,`#pragma phaserTemplate(fragmentHeader)`,`void main ()`,`{`,` vec2 uv = outTexCoord;`,` vec4 col = vec4(0.0);`,` vec2 offset = vec2(1.333) * offset * strength;`,` col += boundedSampler(uMainSampler, uv) * 0.29411764705882354;`,` col += boundedSampler(uMainSampler, uv + (offset / resolution)) * 0.35294117647058826;`,` col += boundedSampler(uMainSampler, uv - (offset / resolution)) * 0.35294117647058826;`,` gl_FragColor = col * vec4(color, 1.0);`,`}`].join(`
48
+ `)},60942(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision mediump float;`,`uniform sampler2D uMainSampler;`,`uniform vec2 resolution;`,`uniform vec2 offset;`,`uniform float strength;`,`uniform vec3 color;`,`varying vec2 outTexCoord;`,`#pragma phaserTemplate(fragmentHeader)`,`void main ()`,`{`,` vec2 uv = outTexCoord;`,` vec4 col = vec4(0.0);`,` vec2 off1 = vec2(1.3846153846) * offset * strength;`,` vec2 off2 = vec2(3.2307692308) * offset * strength;`,` col += boundedSampler(uMainSampler, uv) * 0.2270270270;`,` col += boundedSampler(uMainSampler, uv + (off1 / resolution)) * 0.3162162162;`,` col += boundedSampler(uMainSampler, uv - (off1 / resolution)) * 0.3162162162;`,` col += boundedSampler(uMainSampler, uv + (off2 / resolution)) * 0.0702702703;`,` col += boundedSampler(uMainSampler, uv - (off2 / resolution)) * 0.0702702703;`,` gl_FragColor = col * vec4(color, 1.0);`,`}`].join(`
49
+ `)},43722(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision mediump float;`,`#define ITERATIONS 100.0`,`#define ONEOVER_ITR 1.0 / ITERATIONS`,`#define PI 3.141596`,`#define GOLDEN_ANGLE 2.39996323`,`uniform sampler2D uMainSampler;`,`uniform vec2 resolution;`,`uniform float radius;`,`uniform float amount;`,`uniform float contrast;`,`uniform bool isTiltShift;`,`uniform float strength;`,`uniform vec2 blur;`,`varying vec2 outTexCoord;`,`vec2 Sample (in float theta, inout float r)`,`{`,` r += 1.0 / r;`,` return (r - 1.0) * vec2(cos(theta), sin(theta)) * 0.06;`,`}`,`#pragma phaserTemplate(fragmentHeader)`,`vec3 Bokeh (sampler2D tex, vec2 uv, float radius)`,`{`,` vec3 acc = vec3(0.0);`,` vec3 div = vec3(0.0);`,` vec2 pixel = vec2(resolution.y / resolution.x, 1.0) * radius * .025;`,` float r = 1.0;`,` for (float j = 0.0; j < GOLDEN_ANGLE * ITERATIONS; j += GOLDEN_ANGLE)`,` {`,` vec3 col = boundedSampler(tex, uv + pixel * Sample(j, r)).xyz;`,` col = contrast > 0.0 ? col * col * (1.0 + contrast) : col;`,` vec3 bokeh = vec3(0.5) + pow(col, vec3(10.0)) * amount;`,` acc += col * bokeh;`,` div += bokeh;`,` }`,` return acc / div;`,`}`,`void main ()`,`{`,` float shift = 1.0;`,` if (isTiltShift)`,` {`,` vec2 uv = vec2(gl_FragCoord.xy / resolution + vec2(-0.5, -0.5)) * 2.0;`,` float centerStrength = 1.0;`,` shift = length(uv * blur * strength) * centerStrength;`,` }`,` gl_FragColor = vec4(Bokeh(uMainSampler, outTexCoord * vec2(1.0, 1.0), radius * shift), 0.0);`,`}`].join(`
50
+ `)},19883(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision mediump float;`,`uniform sampler2D uMainSampler;`,`uniform float uColorMatrix[20];`,`uniform float uAlpha;`,`varying vec2 outTexCoord;`,`void main ()`,`{`,` vec4 c = texture2D(uMainSampler, outTexCoord);`,` if (uAlpha == 0.0)`,` {`,` gl_FragColor = c;`,` return;`,` }`,` if (c.a > 0.0)`,` {`,` c.rgb /= c.a;`,` }`,` vec4 result;`,` result.r = (uColorMatrix[0] * c.r) + (uColorMatrix[1] * c.g) + (uColorMatrix[2] * c.b) + (uColorMatrix[3] * c.a) + uColorMatrix[4];`,` result.g = (uColorMatrix[5] * c.r) + (uColorMatrix[6] * c.g) + (uColorMatrix[7] * c.b) + (uColorMatrix[8] * c.a) + uColorMatrix[9];`,` result.b = (uColorMatrix[10] * c.r) + (uColorMatrix[11] * c.g) + (uColorMatrix[12] * c.b) + (uColorMatrix[13] * c.a) + uColorMatrix[14];`,` result.a = (uColorMatrix[15] * c.r) + (uColorMatrix[16] * c.g) + (uColorMatrix[17] * c.b) + (uColorMatrix[18] * c.a) + uColorMatrix[19];`,` vec3 rgb = mix(c.rgb, result.rgb, uAlpha);`,` rgb *= result.a;`,` gl_FragColor = vec4(rgb, result.a);`,`}`].join(`
51
+ `)},32624(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision mediump float;`,`uniform sampler2D uMainSampler;`,`uniform sampler2D uTransferSampler;`,`uniform float uColorMatrixSelf[20];`,`uniform float uColorMatrixTransfer[20];`,`uniform float uAlphaSelf;`,`uniform float uAlphaTransfer;`,`uniform vec4 uAdditions;`,`uniform vec4 uMultiplications;`,`varying vec2 outTexCoord;`,`#define S uColorMatrixSelf`,`#define T uColorMatrixTransfer`,`void main ()`,`{`,` vec4 self = texture2D(uMainSampler, outTexCoord);`,` if (uAlphaSelf == 0.0)`,` {`,` gl_FragColor = self;`,` return;`,` }`,` if (self.a > 0.0)`,` {`,` self.rgb /= self.a;`,` }`,` vec4 resultSelf;`,` resultSelf.r = (S[0] * self.r) + (S[1] * self.g) + (S[2] * self.b) + (S[3] * self.a) + S[4];`,` resultSelf.g = (S[5] * self.r) + (S[6] * self.g) + (S[7] * self.b) + (S[8] * self.a) + S[9];`,` resultSelf.b = (S[10] * self.r) + (S[11] * self.g) + (S[12] * self.b) + (S[13] * self.a) + S[14];`,` resultSelf.a = (S[15] * self.r) + (S[16] * self.g) + (S[17] * self.b) + (S[18] * self.a) + S[19];`,` if (uAlphaTransfer == 0.0)`,` {`,` self.rgb *= self.a;`,` resultSelf.rgb *= resultSelf.a;`,` gl_FragColor = mix(self, resultSelf, uAlphaSelf);`,` return;`,` }`,` vec4 tex = texture2D(uTransferSampler, outTexCoord);`,` if (tex.a > 0.0)`,` {`,` tex.rgb /= tex.a;`,` }`,` vec4 resultTransfer;`,` resultTransfer.r = (T[0] * tex.r) + (T[1] * tex.g) + (T[2] * tex.b) + (T[3] * tex.a) + T[4];`,` resultTransfer.g = (T[5] * tex.r) + (T[6] * tex.g) + (T[7] * tex.b) + (T[8] * tex.a) + T[9];`,` resultTransfer.b = (T[10] * tex.r) + (T[11] * tex.g) + (T[12] * tex.b) + (T[13] * tex.a) + T[14];`,` resultTransfer.a = (T[15] * tex.r) + (T[16] * tex.g) + (T[17] * tex.b) + (T[18] * tex.a) + T[19];`,` vec4 combo = (resultSelf + resultTransfer) * uAdditions + (resultSelf * resultTransfer) * uMultiplications;`,` self.rgb *= self.a;`,` resultSelf.rgb *= resultSelf.a;`,` combo.rgb *= combo.a;`,` gl_FragColor = mix(self, mix(resultSelf, combo, uAlphaTransfer), uAlphaSelf);`,`}`].join(`
52
+ `)},12886(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision mediump float;`,`uniform sampler2D uMainSampler;`,`uniform sampler2D uDisplacementSampler;`,`uniform vec2 amount;`,`varying vec2 outTexCoord;`,`#pragma phaserTemplate(fragmentHeader)`,`void main ()`,`{`,` vec2 disp = (-vec2(0.5, 0.5) + texture2D(uDisplacementSampler, outTexCoord).rg) * amount;`,` gl_FragColor = boundedSampler(uMainSampler, outTexCoord + disp).rgba;`,`}`].join(`
53
+ `)},33016(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`#define DISTANCE 10.0`,`#define QUALITY 10.0`,`#pragma phaserTemplate(fragmentDefine)`,`precision mediump float;`,`uniform sampler2D uMainSampler;`,`varying vec2 outTexCoord;`,`uniform float outerStrength;`,`uniform float innerStrength;`,`uniform float scale;`,`uniform vec2 resolution;`,`uniform vec4 glowColor;`,`uniform bool knockout;`,`const float PI = 3.14159265358979323846264;`,`const float MAX_ALPHA = DISTANCE * (DISTANCE + 1.0) * QUALITY / 2.0;`,`#pragma phaserTemplate(fragmentHeader)`,`void main ()`,`{`,` vec2 px = vec2(1.0 / resolution.x, 1.0 / resolution.y) * scale;`,` float totalAlpha = 0.0;`,` float curAngle = 0.0;`,` vec2 direction;`,` vec2 displaced;`,` vec4 color;`,` for (float curDistance = 0.0; curDistance < DISTANCE; curDistance++)`,` {`,` curAngle += fract(sin(dot(vec2(curDistance, outTexCoord.x + outTexCoord.y), vec2(12.9898, 78.233))) * 43758.5453);`,` for (float i = 0.0; i < QUALITY; i++)`,` {`,` curAngle += PI * 2.0 / (QUALITY);`,` direction = vec2(cos(curAngle), sin(curAngle)) * px;`,` displaced = outTexCoord + direction * (curDistance + 1.0);`,` color = boundedSampler(uMainSampler, displaced);`,` totalAlpha += (DISTANCE - curDistance) * color.a;`,` }`,` }`,` color = boundedSampler(uMainSampler, outTexCoord);`,` float alphaRatio = (totalAlpha / MAX_ALPHA);`,` float innerGlowAlpha = (1.0 - alphaRatio) * innerStrength * color.a;`,` float innerGlowStrength = min(1.0, innerGlowAlpha);`,` vec4 innerColor = mix(color, glowColor, innerGlowStrength);`,` float outerGlowAlpha = alphaRatio * outerStrength * (1.0 - color.a);`,` float outerGlowStrength = min(1.0 - innerColor.a, outerGlowAlpha);`,` if (knockout)`,` {`,` float resultAlpha = outerGlowStrength + innerGlowStrength;`,` gl_FragColor = vec4(glowColor.rgb * resultAlpha, resultAlpha);`,` }`,` else`,` {`,` vec4 outerGlowColor = outerGlowStrength * glowColor.rgba;`,` gl_FragColor = innerColor + outerGlowColor;`,` }`,`}`].join(`
54
+ `)},33179(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision highp float;`,`#pragma phaserTemplate(fragmentHeader)`,`uniform sampler2D uMainSampler;`,`uniform vec4 uColor;`,`uniform vec4 uColorFactor;`,`uniform bool uUnpremultiply;`,`uniform float uAlpha;`,`varying vec2 outTexCoord;`,`void main ()`,`{`,` vec4 sample = texture2D(uMainSampler, outTexCoord);`,` if (uUnpremultiply)`,` {`,` sample.rgb /= sample.a;`,` }`,` vec4 modulatedSample = sample * uColorFactor + uColor;`,` float progress = modulatedSample.r + modulatedSample.g + modulatedSample.b + modulatedSample.a;`,` vec4 rampColor = getRampAt(progress);`,` rampColor.rgb *= rampColor.a;`,` gl_FragColor = mix(sample, rampColor * sample.a, uAlpha);`,`}`].join(`
55
+ `)},94526(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision mediump float;`,`uniform sampler2D uMainSampler;`,`uniform sampler2D uEnvSampler;`,`uniform sampler2D uNormSampler;`,`uniform mat4 uViewMatrix;`,`uniform float uModelRotation;`,`uniform float uBulge;`,`uniform vec3 uColorFactor;`,`varying vec2 outTexCoord;`,`#define PI 3.14159265358979323846`,`void main()`,`{`,` vec4 color = texture2D(uMainSampler, outTexCoord);`,` vec3 normal = texture2D(uNormSampler, outTexCoord).rgb;`,` vec3 normalN = normal * 2.0 - 1.0;`,` float normalXYLength = length(normalN.xy);`,` float angle = atan(`,` normalN.y,`,` normalN.x`,` ) - uModelRotation;`,` normalN = vec3(`,` normalXYLength * cos(angle),`,` normalXYLength * sin(angle),`,` normalN.z`,` );`,` normalN = reflect(vec3(0.0, 0.0, -1.0), normalN);`,` normalN = (uViewMatrix * vec4(normalN, 1.0)).xyz;`,` float envX = atan(normalN.x, normalN.z) / PI;`,` float envY = sin(normalN.y * PI / 2.0);`,` vec2 uv = vec2(envX, envY) * 0.5 + 0.5;`,` vec2 rotatedTexCoord = vec2(`,` cos(-uModelRotation) * outTexCoord.x - sin(-uModelRotation) * outTexCoord.y,`,` sin(-uModelRotation) * outTexCoord.x + cos(- uModelRotation) * outTexCoord.y`,` );`,` uv += uBulge * (rotatedTexCoord - 0.5);`,` if (uv.y < 0.0)`,` {`,` uv.y = abs(uv.y);`,` uv.x += 0.5;`,` }`,` else if (uv.y > 1.0)`,` {`,` uv.y = 2.0 - uv.y;`,` uv.x += 0.5;`,` }`,` vec3 environment = texture2D(uEnvSampler, uv).rgb;`,` gl_FragColor = vec4(environment * color.rgb * uColorFactor, color.a);`,`}`].join(`
56
+ `)},4488(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision mediump float;`,`uniform sampler2D uMainSampler;`,`uniform vec4 uColor;`,`uniform vec4 uIsolateThresholdFeather;`,`varying vec2 outTexCoord;`,`void main()`,`{`,` vec4 color = texture2D(uMainSampler, outTexCoord);`,` vec3 unpremultipliedColor = color.rgb / color.a;`,` float isolate = uIsolateThresholdFeather.x;`,` float threshold = uIsolateThresholdFeather.y;`,` float feather = uIsolateThresholdFeather.z;`,` float match = distance(unpremultipliedColor, uColor.rgb);`,` match = clamp(match - threshold, 0.0, 1.0);`,` match = clamp(match / feather, 0.0, 1.0);`,` if (isolate == 1.0)`,` {`,` match = 1.0 - match;`,` }`,` match = mix(1.0, match, uColor.a);`,` gl_FragColor = color * match;`,`}`].join(`
57
+ `)},39603(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision mediump float;`,`uniform sampler2D uMainSampler;`,`uniform sampler2D uMaskSampler;`,`uniform bool invert;`,`varying vec2 outTexCoord;`,`void main ()`,`{`,` vec4 color = texture2D(uMainSampler, outTexCoord);`,` vec4 mask = texture2D(uMaskSampler, outTexCoord);`,` float a = mask.a;`,` color *= invert ? (1.0 - a) : a;`,` gl_FragColor = color;`,`}`].join(`
58
+ `)},60047(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision mediump float;`,`#pragma phaserTemplate(fragmentHeader)`,`uniform sampler2D uMainSampler;`,`uniform mat4 uViewMatrix;`,`#ifdef FACING_POWER`,`uniform float uFacingPower;`,`#endif`,`#ifdef OUTPUT_RATIO`,`uniform vec3 uRatioVector;`,`uniform float uRatioRadius;`,`#endif`,`varying vec2 outTexCoord;`,`void main()`,`{`,` vec3 normal = texture2D(uMainSampler, outTexCoord).rgb * 2.0 - 1.0;`,` normal = (uViewMatrix * vec4(normal, 1.0)).xyz;`,` #ifdef FACING_POWER`,` normal = normalize(normal * vec3(1.0, 1.0, uFacingPower));`,` #endif`,` #ifdef OUTPUT_RATIO`,` float ratio = dot(normal, normalize(uRatioVector));`,` ratio = (ratio - 1.0 + uRatioRadius) / uRatioRadius;`,` if (ratio <= 0.0)`,` {`,` ratio = 0.0;`,` }`,` normal = vec3(ratio * 2.0 - 1.0);`,` #endif`,` gl_FragColor = vec4((normal + 1.0) * 0.5, 1.0);`,`}`].join(`
59
+ `)},7529(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision mediump float;`,`uniform sampler2D uMainSampler;`,`uniform float uRadius;`,`uniform float uPower;`,`varying vec2 outTexCoord;`,`#define PI 3.14159265358979323846`,`#pragma phaserTemplate(fragmentHeader)`,`#define STEP_X 1.0 / SAMPLES_X`,`#define STEP_Y 1.0 / SAMPLES_Y`,`vec3 uvPanoramaNormal(vec2 uv)`,`{`,` float y = uv.y * 2.0 - 1.0;`,` float angle = (uv.x * 2.0 - 1.0) * PI;`,` float x = sin(angle);`,` float z = cos(angle);`,` vec2 xz = vec2(x, z);`,` xz *= sqrt(1.0 - y * y);`,` return normalize(vec3(xz.x, y, xz.y));`,`}`,`void main()`,`{`,` vec3 acc = vec3(0.0);`,` float div = 0.0;`,` vec3 texelNormal = uvPanoramaNormal(outTexCoord);`,` for (float y = STEP_Y / 2.0; y < 1.0; y += STEP_Y)`,` {`,` float yWeight = cos((y * 2.0 - 1.0) * PI / 2.0);`,` for (float x = STEP_X / 2.0; x < 1.0; x += STEP_X)`,` {`,` vec2 uv = vec2(x, y);`,` vec3 sampleNormal = uvPanoramaNormal(uv);`,` float dotProduct = dot(sampleNormal, texelNormal);`,` dotProduct = (dotProduct - 1.0 + uRadius) / uRadius;`,` if (dotProduct <= 0.0)`,` {`,` continue;`,` }`,` vec3 color = texture2D(uMainSampler, uv).rgb;`,` color *= pow(length(color), uPower);`,` acc += color * dotProduct * yWeight;`,` div += dotProduct * yWeight;`,` }`,` }`,` gl_FragColor = vec4(acc / div, 1.0);`,`}`].join(`
60
+ `)},99191(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision mediump float;`,`uniform sampler2D uMainSampler;`,`uniform vec2 resolution;`,`uniform float amount;`,`varying vec2 outTexCoord;`,`void main ()`,`{`,` float pixelSize = floor(2.0 + amount);`,` vec2 center = pixelSize * floor(outTexCoord * resolution / pixelSize) + pixelSize * vec2(0.5, 0.5);`,` vec2 corner1 = center + pixelSize * vec2(-0.5, -0.5);`,` vec2 corner2 = center + pixelSize * vec2(+0.5, -0.5);`,` vec2 corner3 = center + pixelSize * vec2(+0.5, +0.5);`,` vec2 corner4 = center + pixelSize * vec2(-0.5, +0.5);`,` vec4 pixel = 0.4 * texture2D(uMainSampler, center / resolution);`,` pixel += 0.15 * texture2D(uMainSampler, corner1 / resolution);`,` pixel += 0.15 * texture2D(uMainSampler, corner2 / resolution);`,` pixel += 0.15 * texture2D(uMainSampler, corner3 / resolution);`,` pixel += 0.15 * texture2D(uMainSampler, corner4 / resolution);`,` gl_FragColor = pixel;`,`}`].join(`
61
+ `)},88430(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision highp float;`,`uniform sampler2D uMainSampler;`,`uniform vec4 uSteps;`,`uniform vec4 uGamma;`,`uniform vec4 uOffset;`,`uniform int uMode;`,`uniform bool uDither;`,`varying vec2 outTexCoord;`,`vec4 rgbaToHsva(vec4 rgba)`,`{`,` float r = rgba.r;`,` float g = rgba.g;`,` float b = rgba.b;`,` float a = rgba.a;`,` float min = min(min(r, g), b);`,` float max = max(max(r, g), b);`,` float d = max - min;`,` float h = 0.0;`,` float s = (max == 0.0) ? 0.0 : d / max;`,` float v = max;`,` if (max != min)`,` {`,` if (max == r)`,` {`,` h = (g - b) / d + ((g < b) ? 6.0 : 0.0);`,` }`,` else if (max == g)`,` {`,` h = (b - r) / d + 2.0;`,` }`,` else`,` {`,` h = (r - g) / d + 4.0;`,` }`,` h /= 6.0;`,` }`,` return vec4(h, s, v, a);`,`}`,`float hsvaToRgbaConvert(float n, vec4 hsva)`,`{`,` float k = mod(n + hsva.x * 6.0, 6.0);`,` float min = min(min(k, 4.0 - k), 1.0);`,` return hsva.z - hsva.z * hsva.y * max(0.0, min);`,`}`,`vec4 hsvaToRgba(vec4 hsva)`,`{`,` return vec4(`,` hsvaToRgbaConvert(5.0, hsva),`,` hsvaToRgbaConvert(3.0, hsva),`,` hsvaToRgbaConvert(1.0, hsva),`,` hsva.a`,` );`,`}`,`vec4 ditherIGN(vec4 value)`,`{`,` value += fract(52.9829189 * fract(0.06711056 * gl_FragCoord.x + 0.00583715 * gl_FragCoord.y)) - 0.5;`,` return value;`,`}`,`void main ()`,`{`,` vec4 sample = texture2D(uMainSampler, outTexCoord);`,` if (uMode == 1)`,` {`,` sample = rgbaToHsva(sample);`,` }`,` sample = pow(sample, uGamma);`,` sample -= uOffset;`,` vec4 steps = max(uSteps - 1.0, 1.0);`,` sample *= steps;`,` if (uDither)`,` {`,` sample = ditherIGN(sample);`,` }`,` sample = ceil(sample - 0.5);`,` sample /= steps;`,` sample += uOffset;`,` sample = pow(sample, 1.0 / uGamma);`,` if (uMode == 1)`,` {`,` sample.x = mod(sample.x, 1.0);`,` sample = hsvaToRgba(clamp(sample, 0.0, 1.0));`,` }`,` gl_FragColor = sample;`,`}`].join(`
62
+ `)},69355(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision mediump float;`,`uniform sampler2D uMainSampler;`,`varying vec2 outTexCoord;`,`uniform vec2 lightPosition;`,`uniform vec4 color;`,`uniform float decay;`,`uniform float power;`,`uniform float intensity;`,`uniform int samples;`,`const int MAX = 12;`,`#pragma phaserTemplate(fragmentHeader)`,`void main ()`,`{`,` vec4 texture = boundedSampler(uMainSampler, outTexCoord);`,` vec2 pc = (lightPosition - outTexCoord) * intensity;`,` float shadow = 0.0;`,` float limit = max(float(MAX), float(samples));`,` for (int i = 0; i < MAX; ++i)`,` {`,` if (i >= samples)`,` {`,` break;`,` }`,` shadow += boundedSampler(uMainSampler, outTexCoord + float(i) * decay / limit * pc).a * power;`,` }`,` float mask = 1.0 - texture.a;`,` gl_FragColor = mix(texture, color, clamp(shadow * mask, 0.0, 1.0));`,`}`].join(`
63
+ `)},92636(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision mediump float;`,`uniform sampler2D uMainSampler;`,`uniform vec4 edge1;`,`uniform vec4 edge2;`,`uniform vec4 invert;`,`varying vec2 outTexCoord;`,`void main ()`,`{`,` vec4 color = texture2D(uMainSampler, outTexCoord);`,` color = clamp((color - edge1) / (edge2 - edge1), 0.0, 1.0);`,` color = mix(color, 1.0 - color, invert);`,` gl_FragColor = color;`,`}`].join(`
64
+ `)},18185(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision mediump float;`,`uniform sampler2D uMainSampler;`,`uniform float uRadius;`,`uniform float uStrength;`,`uniform vec2 uPosition;`,`uniform vec4 uColor;`,`uniform int uBlendMode;`,`varying vec2 outTexCoord;`,`void main ()`,`{`,` float vignette = 1.0;`,` vec2 position = vec2(uPosition.x, 1.0 - uPosition.y);`,` float d = length(outTexCoord - position);`,` if (d <= uRadius)`,` {`,` float g = d / uRadius;`,` vignette = sin(g * 3.14 * uStrength);`,` }`,` vec4 color = uColor;`,` vec4 texture = texture2D(uMainSampler, outTexCoord);`,` if (uBlendMode == 1)`,` {`,` color.rgb = texture.rgb + color.rgb;`,` }`,` else if (uBlendMode == 2)`,` {`,` color.rgb = texture.rgb * color.rgb;`,` }`,` else if (uBlendMode == 3)`,` {`,` color.rgb = 1.0 - ((1.0 - texture.rgb) * (1.0 - color.rgb));`,` }`,` gl_FragColor = mix(texture, color, vignette);`,`}`].join(`
65
+ `)},99174(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision mediump float;`,`uniform sampler2D uMainSampler;`,`uniform sampler2D uMainSampler2;`,`uniform vec4 uProgress_WipeWidth_Direction_Axis;`,`uniform float uReveal;`,`varying vec2 outTexCoord;`,`void main ()`,`{`,` vec4 color0;`,` vec4 color1;`,` if (uReveal == 0.0)`,` {`,` color0 = texture2D(uMainSampler, outTexCoord);`,` color1 = texture2D(uMainSampler2, outTexCoord);`,` }`,` else`,` {`,` color0 = texture2D(uMainSampler2, outTexCoord);`,` color1 = texture2D(uMainSampler, outTexCoord);`,` }`,` float distance = uProgress_WipeWidth_Direction_Axis.x;`,` float width = uProgress_WipeWidth_Direction_Axis.y;`,` float direction = uProgress_WipeWidth_Direction_Axis.z;`,` float axis = outTexCoord.x;`,` if (uProgress_WipeWidth_Direction_Axis.w == 1.0)`,` {`,` axis = outTexCoord.y;`,` }`,` float adjust = mix(width, -width, distance);`,` float value = smoothstep(distance - width, distance + width, abs(direction - axis) + adjust);`,` gl_FragColor = mix(color1, color0, value);`,`}`].join(`
66
+ `)},73416(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`#pragma phaserTemplate(extensions)`,`#pragma phaserTemplate(features)`,`#ifdef GL_FRAGMENT_PRECISION_HIGH`,`precision highp float;`,`#else`,`precision mediump float;`,`#endif`,`#pragma phaserTemplate(fragmentDefine)`,`uniform vec2 uResolution;`,`varying vec4 outTint;`,`#pragma phaserTemplate(outVariables)`,`#pragma phaserTemplate(fragmentHeader)`,`void main ()`,`{`,` vec4 fragColor = outTint;`,` #pragma phaserTemplate(fragmentProcess)`,` gl_FragColor = fragColor;`,`}`].join(`
67
+ `)},91627(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`#pragma phaserTemplate(extensions)`,`#pragma phaserTemplate(features)`,`#ifdef GL_FRAGMENT_PRECISION_HIGH`,`precision highp float;`,`#else`,`precision mediump float;`,`#endif`,`#pragma phaserTemplate(vertexDefine)`,`uniform mat4 uProjectionMatrix;`,`uniform vec2 uResolution;`,`attribute vec2 inPosition;`,`attribute vec4 inTint;`,`varying vec4 outTint;`,`#pragma phaserTemplate(outVariables)`,`#pragma phaserTemplate(vertexHeader)`,`void main ()`,`{`,` gl_Position = uProjectionMatrix * vec4(inPosition, 1.0, 1.0);`,` outTint = vec4(inTint.bgr * inTint.a, inTint.a);`,` #pragma phaserTemplate(vertexProcess)`,`}`].join(`
68
+ `)},84220(e){e.exports=[`vec3 getNormalFromMap (vec2 texCoord)`,`{`,` vec3 normalMap = texture2D(uNormSampler, texCoord).rgb;`,` return normalize(outInverseRotationMatrix * vec3(normalMap * 2.0 - 1.0));`,`}`].join(`
69
+ `)},2860(e){e.exports=[`uniform vec2 uMainResolution[TEXTURE_COUNT];`,`vec2 getTexRes ()`,`{`,` #if TEXTURE_COUNT == 1`,` float texId = 0.0;`,` #else`,` float texId = outTexDatum;`,` #endif`,` #pragma phaserTemplate(texIdProcess)`,` vec2 texRes = vec2(0.0);`,` for (int i = 0; i < TEXTURE_COUNT; i++)`,` {`,` if (texId == float(i))`,` {`,` texRes = uMainResolution[i];`,` break;`,` }`,` }`,` return texRes;`,`}`].join(`
70
+ `)},46432(e){e.exports=[`uniform sampler2D uMainSampler[TEXTURE_COUNT];`,`vec4 getTexture (vec2 texCoord)`,`{`,` #if TEXTURE_COUNT == 1`,` return texture2D(uMainSampler[0], texCoord);`,` #else`,` if (outTexDatum == 0.0) return texture2D(uMainSampler[0], texCoord);`,` #define ELSE_TEX_CASE(INDEX) else if (outTexDatum == float(INDEX)) return texture2D(uMainSampler[INDEX], texCoord);`,` #pragma phaserTemplate(texIdProcess)`,` else return vec4(0.0, 0.0, 0.0, 0.0);`,` #endif`,`}`].join(`
71
+ `)},41509(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision highp float;`,`#pragma phaserTemplate(fragmentHeader)`,`#define PI 3.14159265358979323846`,`uniform int uRepeatMode;`,`uniform float uOffset;`,`uniform int uShapeMode;`,`uniform vec2 uShape;`,`uniform vec2 uStart;`,`varying vec2 outTexCoord;`,`float linear()`,`{`,` float len = length(uShape);`,` return dot(uShape, outTexCoord - uStart) / len / len;`,`}`,`float bilinear()`,`{`,` return abs(linear());`,`}`,`float radial()`,`{`,` return distance(uStart, outTexCoord) / length(uShape);`,`}`,`float conicSymmetric()`,`{`,` return dot(normalize(uShape), normalize(outTexCoord - uStart)) * 0.5 + 0.5;`,`}`,`float conicAsymmetric()`,`{`,` vec2 fromStart = outTexCoord - uStart;`,` float angleFromStart = atan(fromStart.y, fromStart.x);`,` float shapeAngle = atan(uShape.y, uShape.x);`,` float angle = (angleFromStart - shapeAngle) / PI / 2.0;`,` if (angle < 0.0) angle += 1.0;`,` return angle;`,`}`,`float repeat(float value)`,`{`,` if (uRepeatMode == 1)`,` {`,` if (value < 0.0 || value > 1.0)`,` {`,` discard;`,` }`,` return value;`,` }`,` else if (uRepeatMode == 2)`,` {`,` return mod(value, 1.0);`,` }`,` else if (uRepeatMode == 3)`,` {`,` return 1.0 - abs(1.0 - mod(value, 2.0));`,` }`,` return clamp(value, 0.0, 1.0);`,`}`,`void main()`,`{`,` float progress = 0.0;`,` if (uShapeMode == 0)`,` {`,` progress = linear();`,` }`,` else if (uShapeMode == 1)`,` {`,` progress = bilinear();`,` }`,` else if (uShapeMode == 2)`,` {`,` progress = radial();`,` }`,` else if (uShapeMode == 3)`,` {`,` progress = conicSymmetric();`,` }`,` else if (uShapeMode == 4)`,` {`,` progress = conicAsymmetric();`,` }`,` progress -= uOffset;`,` progress = repeat(progress);`,` vec4 bandCol = getRampAt(progress);`,` bandCol.rgb *= bandCol.a;`,` gl_FragColor = bandCol;`,`}`].join(`
72
+ `)},98840(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`#pragma phaserTemplate(extensions)`,`#pragma phaserTemplate(features)`,`#ifdef GL_FRAGMENT_PRECISION_HIGH`,`precision highp float;`,`#else`,`precision mediump float;`,`#endif`,`#pragma phaserTemplate(fragmentDefine)`,`uniform vec2 uResolution;`,`varying vec2 outTexCoord;`,`varying float outTexDatum;`,`varying float outTintEffect;`,`varying vec4 outTint;`,`#pragma phaserTemplate(outVariables)`,`#pragma phaserTemplate(fragmentHeader)`,`void main ()`,`{`,` #pragma phaserTemplate(fragmentProcess)`,` gl_FragColor = fragColor;`,`}`].join(`
73
+ `)},44667(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`#pragma phaserTemplate(extensions)`,`#pragma phaserTemplate(features)`,`#ifdef GL_FRAGMENT_PRECISION_HIGH`,`precision highp float;`,`#else`,`precision mediump float;`,`#endif`,`#pragma phaserTemplate(vertexDefine)`,`uniform mat4 uProjectionMatrix;`,`uniform vec2 uResolution;`,`attribute vec2 inPosition;`,`attribute vec2 inTexCoord;`,`attribute float inTexDatum;`,`attribute float inTintEffect;`,`attribute vec4 inTint;`,`varying vec2 outTexCoord;`,`varying float outTexDatum;`,`varying float outTintEffect;`,`varying vec4 outTint;`,`#pragma phaserTemplate(outVariables)`,`#pragma phaserTemplate(vertexHeader)`,`void main ()`,`{`,` gl_Position = uProjectionMatrix * vec4(inPosition, 1.0, 1.0);`,` outTexCoord = inTexCoord;`,` outTexDatum = inTexDatum;`,` outTint = inTint;`,` outTintEffect = inTintEffect;`,` #pragma phaserTemplate(vertexProcess)`,`}`].join(`
74
+ `)},16421(e){e.exports=[`#version 100`,`#pragma phaserTemplate(shaderName)`,`#ifdef GL_FRAGMENT_PRECISION_HIGH`,`precision highp float;`,`#else`,`precision mediump float;`,`#endif`,`uniform vec2 uOffset;`,`uniform vec4 uColorStart;`,`uniform vec4 uColorEnd;`,`uniform float uPower;`,`uniform int uMode;`,`varying vec2 outTexCoord;`,`float trig(vec2 p)`,`{`,` return fract(43757.5453*sin(dot(p, vec2(12.9898,78.233))));`,`}`,`void main ()`,`{`,` float value = pow(trig(outTexCoord + uOffset), uPower);`,` if (uMode == 0)`,` {`,` vec4 color = mix(uColorStart, uColorEnd, value);`,` color.rgb *= color.a;`,` gl_FragColor = color;`,` }`,` else if (uMode == 1)`,` {`,` float valueR = pow(trig(outTexCoord + uOffset + 32.1), uPower);`,` float valueG = pow(trig(outTexCoord + uOffset + 11.1), uPower);`,` float valueB = pow(trig(outTexCoord + uOffset + 23.4), uPower);`,` vec4 color = vec4(valueR, valueG, valueB, 1.);`,` color *= mix(uColorStart, uColorEnd, value);`,` color.rgb *= color.a;`,` gl_FragColor = color;`,` }`,` else if (uMode == 2)`,` {`,` float valueAngle = pow(trig(outTexCoord + uOffset), uPower) * 3.141592;`,` float x = value * cos(valueAngle);`,` float y = value * sin(valueAngle);`,` vec4 color = vec4(`,` x,`,` y,`,` sqrt(1. - x * x - y * y),`,` 1.0`,` );`,` gl_FragColor = color * 0.5 + 0.5;`,` }`,`}`].join(`
75
+ `)},83587(e){e.exports=[`#version 100`,`#pragma phaserTemplate(shaderName)`,`#pragma phaserTemplate(fragmentIterations)`,`#pragma phaserTemplate(fragmentNormalMap)`,`#ifndef ITERATION_COUNT`,`#define ITERATION_COUNT 1.0`,`#endif`,`#ifndef WARP_ITERATION_COUNT`,`#define WARP_ITERATION_COUNT 1.0`,`#endif`,`#ifdef GL_FRAGMENT_PRECISION_HIGH`,`precision highp float;`,`#else`,`precision mediump float;`,`#endif`,`uniform vec2 uCells;`,`uniform vec2 uPeriod;`,`uniform vec2 uOffset;`,`uniform float uFlow;`,`uniform float uDetailPower;`,`uniform float uFlowPower;`,`uniform float uContributionPower;`,`uniform float uWarpDetailPower;`,`uniform float uWarpFlowPower;`,`uniform float uWarpContributionPower;`,`uniform float uWarpAmount;`,`uniform vec4 uColorStart;`,`uniform vec4 uColorEnd;`,`uniform float uNormalScale;`,`uniform float uValueFactor;`,`uniform float uValueAdd;`,`uniform float uValuePower;`,`uniform vec2 uSeed;`,`varying vec2 outTexCoord;`,`float psrdnoise(vec2 x, vec2 period, float alpha)`,`{`,` vec2 uv = vec2(x.x+x.y*0.5, x.y);`,` vec2 i0 = floor(uv), f0 = fract(uv);`,` float cmp = step(f0.y, f0.x);`,` vec2 o1 = vec2(cmp, 1.0-cmp);`,` vec2 i1 = i0 + o1, i2 = i0 + 1.0;`,` vec2 v0 = vec2(i0.x - i0.y*0.5, i0.y);`,` vec2 v1 = vec2(v0.x + o1.x - o1.y*0.5, v0.y + o1.y);`,` vec2 v2 = vec2(v0.x + 0.5, v0.y + 1.0);`,` vec2 x0 = x - v0, x1 = x - v1, x2 = x - v2;`,` vec3 iu, iv, xw, yw;`,` if(any(greaterThan(period, vec2(0.0)))) {`,` xw = vec3(v0.x, v1.x, v2.x); yw = vec3(v0.y, v1.y, v2.y);`,` if(period.x > 0.0)`,` xw = mod(vec3(v0.x, v1.x, v2.x), period.x);`,` if(period.y > 0.0)`,` yw = mod(vec3(v0.y, v1.y, v2.y), period.y);`,` iu = floor(xw + 0.5*yw + 0.5); iv = floor(yw + 0.5);`,` } else {`,` iu = vec3(i0.x, i1.x, i2.x); iv = vec3(i0.y, i1.y, i2.y);`,` }`,` iu += uSeed.xxx; iv += uSeed.yyy;`,` vec3 hash = mod(iu, 289.0);`,` hash = mod((hash*51.0 + 2.0)*hash + iv, 289.0);`,` hash = mod((hash*34.0 + 10.0)*hash, 289.0);`,` vec3 psi = hash*0.07482 + alpha;`,` vec3 gx = cos(psi); vec3 gy = sin(psi);`,` vec2 g0 = vec2(gx.x, gy.x);`,` vec2 g1 = vec2(gx.y, gy.y);`,` vec2 g2 = vec2(gx.z, gy.z);`,` vec3 w = 0.8 - vec3(dot(x0, x0), dot(x1, x1), dot(x2, x2));`,` w = max(w, 0.0); vec3 w2 = w*w; vec3 w4 = w2*w2;`,` vec3 gdotx = vec3(dot(g0, x0), dot(g1, x1), dot(g2, x2));`,` float n = dot(w4, gdotx);`,` return 10.9*n;`,`}`,`float iterate (vec2 coord, float detailPower, float flowPower, float contributionPower)`,`{`,` float value = 0.;`,` float itValue = 0.;`,` for (float iteration = 0.; iteration < ITERATION_COUNT; iteration++)`,` {`,` float detailScale = pow(detailPower, iteration);`,` float flowScale = pow(flowPower, iteration);`,` itValue = psrdnoise((coord + iteration) * detailScale, uPeriod * detailScale, uFlow * flowScale + iteration);`,` value += itValue / pow(contributionPower, iteration);`,` }`,` return value;`,`}`,`float iterateWarp (vec2 coord, float detailPower, float flowPower, float contributionPower)`,`{`,` float value = 0.;`,` float itValue = 0.;`,` for (float iteration = 0.; iteration < WARP_ITERATION_COUNT; iteration++)`,` {`,` float detailScale = pow(detailPower, iteration);`,` float flowScale = pow(flowPower, iteration);`,` itValue = psrdnoise((coord + iteration) * detailScale, uPeriod * detailScale, uFlow * flowScale + iteration);`,` value += itValue / pow(contributionPower, iteration);`,` }`,` return value;`,`}`,`vec2 warp (vec2 coord)`,`{`,` vec2 o2 = vec2(11.3, 23.7);`,` float coord1 = iterateWarp(coord, uWarpDetailPower, uWarpFlowPower, uWarpContributionPower);`,` float coord2 = iterateWarp(coord + o2, uWarpDetailPower, uWarpFlowPower, uWarpContributionPower);`,` return vec2(coord1, coord2);`,`}`,`void main ()`,`{`,` vec2 coord = outTexCoord * uCells + uOffset;`,` if (uWarpAmount > 0.)`,` {`,` coord += warp(coord) * uWarpAmount;`,` }`,` float value = iterate(coord, uDetailPower, uFlowPower, uContributionPower) * uValueFactor + uValueAdd;`,` value = pow(clamp(value, 0., 1.), uValuePower);`,` #ifndef NORMAL_MAP`,` vec4 color = mix(uColorStart, uColorEnd, value);`,` color.rgb *= color.a;`,` gl_FragColor = color;`,` #else`,` float dx = dFdx(value) * uNormalScale;`,` float dy = dFdy(value) * uNormalScale;`,` vec3 normal = vec3(dx, dy, 1.0 - sqrt(dx * dx + dy * dy)) * 0.5 + 0.5;`,` gl_FragColor = vec4(normal, 1.0);`,` #endif`,`}`].join(`
76
+ `)},13460(e){e.exports=[`#version 100`,`#pragma phaserTemplate(shaderName)`,`#pragma phaserTemplate(fragmentIterations)`,`#pragma phaserTemplate(fragmentNormalMap)`,`#ifndef ITERATION_COUNT`,`#define ITERATION_COUNT 1.0`,`#endif`,`#ifndef WARP_ITERATION_COUNT`,`#define WARP_ITERATION_COUNT 1.0`,`#endif`,`#ifdef GL_FRAGMENT_PRECISION_HIGH`,`precision highp float;`,`#else`,`precision mediump float;`,`#endif`,`uniform vec3 uCells;`,`uniform vec3 uPeriod;`,`uniform vec3 uOffset;`,`uniform float uFlow;`,`uniform float uDetailPower;`,`uniform float uFlowPower;`,`uniform float uContributionPower;`,`uniform float uWarpDetailPower;`,`uniform float uWarpFlowPower;`,`uniform float uWarpContributionPower;`,`uniform float uWarpAmount;`,`uniform vec4 uColorStart;`,`uniform vec4 uColorEnd;`,`uniform float uNormalScale;`,`uniform float uValueFactor;`,`uniform float uValueAdd;`,`uniform float uValuePower;`,`uniform vec3 uSeed;`,`varying vec2 outTexCoord;`,`vec4 permute(vec4 i) {`,` vec4 im = mod(i, 289.0);`,` return mod(((im * 34.0) + 10.0) * im, 289.0);`,`}`,`float psrdnoise(vec3 x, vec3 period, float alpha) {`,` const mat3 M = mat3(0.0, 1.0, 1.0, 1.0, 0.0, 1.0, 1.0, 1.0, 0.0);`,` const mat3 Mi = mat3(-0.5, 0.5, 0.5, 0.5, -0.5, 0.5, 0.5, 0.5, -0.5);`,` vec3 uvw = M * x;`,` vec3 i0 = floor(uvw);`,` vec3 f0 = fract(uvw);`,` vec3 g_ = step(f0.xyx, f0.yzz);`,` vec3 l_ = 1.0 - g_;`,` vec3 g = vec3(l_.z, g_.xy);`,` vec3 l = vec3(l_.xy, g_.z);`,` vec3 o1 = min(g, l);`,` vec3 o2 = max(g, l);`,` vec3 i1 = i0 + o1, i2 = i0 + o2, i3 = i0 + 1.0;`,` vec3 v0 = Mi * i0, v1 = Mi * i1, v2 = Mi * i2, v3 = Mi * i3;`,` vec3 x0 = x - v0, x1 = x - v1, x2 = x - v2, x3 = x - v3;`,` if(any(greaterThan(period, vec3(0.0)))) {`,` vec4 vx = vec4(v0.x, v1.x, v2.x, v3.x);`,` vec4 vy = vec4(v0.y, v1.y, v2.y, v3.y);`,` vec4 vz = vec4(v0.z, v1.z, v2.z, v3.z);`,` if(period.x > 0.0)`,` vx = mod(vx, period.x);`,` if(period.y > 0.0)`,` vy = mod(vy, period.y);`,` if(period.z > 0.0)`,` vz = mod(vz, period.z);`,` i0 = floor(M * vec3(vx.x, vy.x, vz.x) + 0.5);`,` i1 = floor(M * vec3(vx.y, vy.y, vz.y) + 0.5);`,` i2 = floor(M * vec3(vx.z, vy.z, vz.z) + 0.5);`,` i3 = floor(M * vec3(vx.w, vy.w, vz.w) + 0.5);`,` }`,` i0 += uSeed; i1 += uSeed; i2 += uSeed; i3 += uSeed;`,` vec4 hash = permute(permute(permute(vec4(i0.z, i1.z, i2.z, i3.z)) + vec4(i0.y, i1.y, i2.y, i3.y)) + vec4(i0.x, i1.x, i2.x, i3.x));`,` vec4 theta = hash * 3.883222077;`,` vec4 sz = 0.996539792 - 0.006920415 * hash;`,` vec4 psi = hash * 0.108705628;`,` vec4 Ct = cos(theta);`,` vec4 St = sin(theta);`,` vec4 sz_prime = sqrt(1.0 - sz * sz);`,` vec4 gx, gy, gz;`,` if(alpha != 0.0) {`,` vec4 px = Ct * sz_prime;`,` vec4 py = St * sz_prime;`,` vec4 pz = sz;`,` vec4 Sp = sin(psi);`,` vec4 Cp = cos(psi);`,` vec4 Ctp = St * Sp - Ct * Cp;`,` vec4 qx = mix(Ctp * St, Sp, sz);`,` vec4 qy = mix(-Ctp * Ct, Cp, sz);`,` vec4 qz = -(py * Cp + px * Sp);`,` vec4 Sa = vec4(sin(alpha));`,` vec4 Ca = vec4(cos(alpha));`,` gx = Ca * px + Sa * qx;`,` gy = Ca * py + Sa * qy;`,` gz = Ca * pz + Sa * qz;`,` } else {`,` gx = Ct * sz_prime;`,` gy = St * sz_prime;`,` gz = sz;`,` }`,` vec3 g0 = vec3(gx.x, gy.x, gz.x), g1 = vec3(gx.y, gy.y, gz.y);`,` vec3 g2 = vec3(gx.z, gy.z, gz.z), g3 = vec3(gx.w, gy.w, gz.w);`,` vec4 w = 0.5 - vec4(dot(x0, x0), dot(x1, x1), dot(x2, x2), dot(x3, x3));`,` w = max(w, 0.0);`,` vec4 w2 = w * w;`,` vec4 w3 = w2 * w;`,` vec4 gdotx = vec4(dot(g0, x0), dot(g1, x1), dot(g2, x2), dot(g3, x3));`,` float n = dot(w3, gdotx);`,` return 39.5 * n;`,`}`,`float iterate (vec3 coord, float detailPower, float flowPower, float contributionPower)`,`{`,` float value = 0.;`,` float itValue = 0.;`,` for (float iteration = 0.; iteration < ITERATION_COUNT; iteration++)`,` {`,` float detailScale = pow(detailPower, iteration);`,` float flowScale = pow(flowPower, iteration);`,` itValue = psrdnoise((coord + iteration) * detailScale, uPeriod * detailScale, uFlow * flowScale + iteration);`,` value += itValue / pow(contributionPower, iteration);`,` }`,` return value;`,`}`,`float iterateWarp (vec3 coord, float detailPower, float flowPower, float contributionPower)`,`{`,` float value = 0.;`,` float itValue = 0.;`,` for (float iteration = 0.; iteration < WARP_ITERATION_COUNT; iteration++)`,` {`,` float detailScale = pow(detailPower, iteration);`,` float flowScale = pow(flowPower, iteration);`,` itValue = psrdnoise((coord + iteration) * detailScale, uPeriod * detailScale, uFlow * flowScale + iteration);`,` value += itValue / pow(contributionPower, iteration);`,` }`,` return value;`,`}`,`vec3 warp (vec3 coord)`,`{`,` vec3 o2 = vec3(11.3, 23.7, 13.1);`,` vec3 o3 = vec3(29.9, 2.3, 31.7);`,` float coord1 = iterateWarp(coord, uWarpDetailPower, uWarpFlowPower, uWarpContributionPower);`,` float coord2 = iterateWarp(coord + o2, uWarpDetailPower, uWarpFlowPower, uWarpContributionPower);`,` float coord3 = iterateWarp(coord + o3, uWarpDetailPower, uWarpFlowPower, uWarpContributionPower);`,` return vec3(coord1, coord2, coord3);`,`}`,`void main ()`,`{`,` vec3 coord = (vec3(outTexCoord, 0.0) * uCells) + uOffset;`,` if (uWarpAmount > 0.)`,` {`,` coord += warp(coord) * uWarpAmount;`,` }`,` float value = iterate(coord, uDetailPower, uFlowPower, uContributionPower) * uValueFactor + uValueAdd;`,` value = pow(clamp(value, 0., 1.), uValuePower);`,` #ifndef NORMAL_MAP`,` vec4 color = mix(uColorStart, uColorEnd, value);`,` color.rgb *= color.a;`,` gl_FragColor = color;`,` #else`,` float dx = dFdx(value) * uNormalScale;`,` float dy = dFdy(value) * uNormalScale;`,` vec3 normal = vec3(dx, dy, 1.0 - sqrt(dx * dx + dy * dy)) * 0.5 + 0.5;`,` gl_FragColor = vec4(normal, 1.0);`,` #endif`,`}`].join(`
77
+ `)},17205(e){e.exports=[`#version 100`,`#pragma phaserTemplate(shaderName)`,`#pragma phaserTemplate(fragmentMode)`,`#pragma phaserTemplate(fragmentIterations)`,`#pragma phaserTemplate(fragmentNormalMap)`,`#ifdef GL_FRAGMENT_PRECISION_HIGH`,`precision highp float;`,`#else`,`precision mediump float;`,`#endif`,`uniform vec2 uSeedX;`,`uniform vec2 uSeedY;`,`uniform vec2 uCells;`,`uniform vec2 uCellOffset;`,`uniform vec2 uVariation;`,`uniform vec2 uWrap;`,`uniform float uSmoothing;`,`uniform float uNormalScale;`,`uniform vec4 uColorStart;`,`uniform vec4 uColorEnd;`,`varying vec2 outTexCoord;`,`float trig(vec2 p)`,`{`,` return fract(43757.5453*sin(dot(p, vec2(12.9898,78.233))));`,`}`,`vec2 bigCoord (vec2 coord, float scale)`,`{`,` return (coord + uCellOffset) * scale * uCells;`,`}`,`vec2 hash2D (vec2 coord)`,`{`,` return vec2(`,` trig(coord + uSeedX),`,` trig(coord + uSeedY)`,` ) * uVariation;`,`}`,`float worley2D (vec2 uv, float scale)`,`{`,` vec2 coord = bigCoord(uv, scale);`,` vec2 point = floor(coord);`,` vec2 frac = fract(coord);`,` float dist = 12.0;`,` for (float j = -1.0; j <= 1.0; j++)`,` for (float i = -1.0; i <= 1.0; i++)`,` {`,` vec2 cellNeighbor = vec2(i, j);`,` vec2 jitter = hash2D(mod(point + cellNeighbor, uWrap * scale));`,` vec2 diff = cellNeighbor - frac + jitter;`,` float d = dot(diff, diff); // Squared length of diff.`,` if (d < dist)`,` {`,` dist = d;`,` }`,` }`,` return sqrt(dist);`,`}`,`float worley2DIndex (vec2 uv, float scale)`,`{`,` vec2 coord = bigCoord(uv, scale);`,` vec2 point = floor(coord);`,` vec2 frac = fract(coord);`,` float dist = 12.0;`,` float random = 0.0;`,` for (float j = -1.0; j <= 1.0; j++)`,` for (float i = -1.0; i <= 1.0; i++)`,` {`,` vec2 cellNeighbor = vec2(i, j);`,` vec2 jitter = hash2D(mod(point + cellNeighbor, uWrap * scale));`,` vec2 diff = cellNeighbor - frac + jitter;`,` float d = dot(diff, diff); // Squared length of diff.`,` if (d < dist)`,` {`,` dist = d;`,` random = jitter.x;`,` }`,` }`,` return random;`,`}`,`float worley2DSmooth (vec2 uv, float scale)`,`{`,` vec2 coord = bigCoord(uv, scale);`,` vec2 point = floor(coord);`,` vec2 frac = fract(coord);`,` float value = 0.0;`,` for (float j = -1.0; j <= 1.0; j++)`,` for (float i = -1.0; i <= 1.0; i++)`,` {`,` vec2 cellNeighbor = vec2(i, j);`,` vec2 jitter = hash2D(mod(point + cellNeighbor, uWrap * scale));`,` vec2 diff = cellNeighbor - frac + jitter;`,` float d = length(diff);`,` value += exp2(-32.0 / uSmoothing * d); // Accumulate fast-decaying exponential of length.`,` }`,` return -(1.0 / 32.0 * uSmoothing) * log2(value);`,`}`,`float iterateWorley2D (vec2 uv)`,`{`,` float value = 0.0;`,` float itValue = 0.0;`,` for (float iteration = 0.0; iteration < ITERATION_COUNT; iteration++)`,` {`,` float scale = exp2(iteration);`,` #ifdef MODE_DISTANCE`,` itValue = worley2D(uv + iteration, scale);`,` #endif`,` #ifdef MODE_INDEX`,` itValue = worley2DIndex(uv + iteration, scale);`,` #endif`,` #ifdef MODE_DISTANCE_SMOOTH`,` itValue = worley2DSmooth(uv + iteration, scale);`,` #endif`,` value += (itValue - 0.5) / scale;`,` }`,` return value + 0.5;`,`}`,`void main ()`,`{`,` float value = iterateWorley2D(outTexCoord);`,` #ifndef NORMAL_MAP`,` vec4 color = mix(uColorStart, uColorEnd, value);`,` color.rgb *= color.a;`,` gl_FragColor = color;`,` #else`,` float dx = dFdx(value) * uNormalScale;`,` float dy = dFdy(value) * uNormalScale;`,` vec3 normal = vec3(dx, dy, 1.0 - sqrt(dx * dx + dy * dy)) * 0.5 + 0.5;`,` gl_FragColor = vec4(normal, 1.0);`,` #endif`,`}`].join(`
78
+ `)},79814(e){e.exports=[`#version 100`,`#pragma phaserTemplate(shaderName)`,`#pragma phaserTemplate(fragmentMode)`,`#pragma phaserTemplate(fragmentIterations)`,`#pragma phaserTemplate(fragmentNormalMap)`,`#ifdef GL_FRAGMENT_PRECISION_HIGH`,`precision highp float;`,`#else`,`precision mediump float;`,`#endif`,`uniform vec3 uSeedX;`,`uniform vec3 uSeedY;`,`uniform vec3 uSeedZ;`,`uniform vec3 uCells;`,`uniform vec3 uCellOffset;`,`uniform vec3 uVariation;`,`uniform vec3 uWrap;`,`uniform float uSmoothing;`,`uniform float uNormalScale;`,`uniform vec4 uColorStart;`,`uniform vec4 uColorEnd;`,`varying vec2 outTexCoord;`,`float trig(vec3 p)`,`{`,` return fract(43757.5453*sin(dot(p, vec3(12.9898,78.233, 9441.8953))));`,`}`,`vec3 bigCoord (vec3 coord, float scale)`,`{`,` return (coord + uCellOffset) * scale * uCells;`,`}`,`vec3 hash3D (vec3 coord)`,`{`,` return vec3(`,` trig(coord + uSeedX),`,` trig(coord + uSeedY),`,` trig(coord + uSeedZ)`,` ) * uVariation;`,`}`,`float worley3D (vec3 uv, float scale)`,`{`,` vec3 coord = bigCoord(uv, scale);`,` vec3 point = floor(coord);`,` vec3 frac = fract(coord);`,` float dist = 12.0;`,` for (float k = -1.0; k <= 1.0; k++)`,` for (float j = -1.0; j <= 1.0; j++)`,` for (float i = -1.0; i <= 1.0; i++)`,` {`,` vec3 cellNeighbor = vec3(i, j, k);`,` vec3 jitter = hash3D(mod(point + cellNeighbor, uWrap * scale));`,` vec3 diff = cellNeighbor - frac + jitter;`,` float d = dot(diff, diff); // Squared length of diff.`,` if (d < dist)`,` {`,` dist = d;`,` }`,` }`,` return sqrt(dist);`,`}`,`float worley3DIndex (vec3 uv, float scale)`,`{`,` vec3 coord = bigCoord(uv, scale);`,` vec3 point = floor(coord);`,` vec3 frac = fract(coord);`,` float dist = 12.0;`,` float random = 0.0;`,` for (float k = -1.0; k <= 1.0; k++)`,` for (float j = -1.0; j <= 1.0; j++)`,` for (float i = -1.0; i <= 1.0; i++)`,` {`,` vec3 cellNeighbor = vec3(i, j, k);`,` vec3 jitter = hash3D(mod(point + cellNeighbor, uWrap * scale));`,` vec3 diff = cellNeighbor - frac + jitter;`,` float d = dot(diff, diff); // Squared length of diff.`,` if (d < dist)`,` {`,` dist = d;`,` random = jitter.x;`,` }`,` }`,` return random;`,`}`,`float worley3DSmooth (vec3 uv, float scale)`,`{`,` vec3 coord = bigCoord(uv, scale);`,` vec3 point = floor(coord);`,` vec3 frac = fract(coord);`,` float value = 0.0;`,` for (float k = -1.0; k <= 1.0; k++)`,` for (float j = -1.0; j <= 1.0; j++)`,` for (float i = -1.0; i <= 1.0; i++)`,` {`,` vec3 cellNeighbor = vec3(i, j, k);`,` vec3 jitter = hash3D(mod(point + cellNeighbor, uWrap * scale));`,` vec3 diff = cellNeighbor - frac + jitter;`,` float d = length(diff);`,` value += exp2(-32.0 / uSmoothing * d); // Accumulate fast-decaying exponential of length.`,` }`,` return -(1.0 / 32.0 * uSmoothing) * log2(value);`,`}`,`float iterateWorley3D (vec3 uv)`,`{`,` float value = 0.0;`,` float itValue = 0.0;`,` for (float iteration = 0.0; iteration < ITERATION_COUNT; iteration++)`,` {`,` float scale = exp2(iteration);`,` #ifdef MODE_DISTANCE`,` itValue = worley3D(uv + iteration, scale);`,` #endif`,` #ifdef MODE_INDEX`,` itValue = worley3DIndex(uv + iteration, scale);`,` #endif`,` #ifdef MODE_DISTANCE_SMOOTH`,` itValue = worley3DSmooth(uv + iteration, scale);`,` #endif`,` value += (itValue - 0.5) / scale;`,` }`,` return value + 0.5;`,`}`,`void main ()`,`{`,` vec3 uv = vec3(outTexCoord, 0.0);`,` float value = iterateWorley3D(uv);`,` #ifndef NORMAL_MAP`,` vec4 color = mix(uColorStart, uColorEnd, value);`,` color.rgb *= color.a;`,` gl_FragColor = color;`,` #else`,` float dx = dFdx(value) * uNormalScale;`,` float dy = dFdy(value) * uNormalScale;`,` vec3 normal = vec3(dx, dy, 1.0 - sqrt(dx * dx + dy * dy)) * 0.5 + 0.5;`,` gl_FragColor = vec4(normal, 1.0);`,` #endif`,`}`].join(`
79
+ `)},99595(e){e.exports=[`#version 100`,`#pragma phaserTemplate(shaderName)`,`#pragma phaserTemplate(fragmentMode)`,`#pragma phaserTemplate(fragmentIterations)`,`#pragma phaserTemplate(fragmentNormalMap)`,`#ifdef GL_FRAGMENT_PRECISION_HIGH`,`precision highp float;`,`#else`,`precision mediump float;`,`#endif`,`uniform vec4 uSeedX;`,`uniform vec4 uSeedY;`,`uniform vec4 uSeedZ;`,`uniform vec4 uSeedW;`,`uniform vec4 uCells;`,`uniform vec4 uCellOffset;`,`uniform vec4 uVariation;`,`uniform vec4 uWrap;`,`uniform float uSmoothing;`,`uniform float uNormalScale;`,`uniform vec4 uColorStart;`,`uniform vec4 uColorEnd;`,`varying vec2 outTexCoord;`,`float trig(vec4 p)`,`{`,` return fract(43757.5453*sin(dot(p, vec4(12.9898,78.233,9441.8953,61.99))));`,`}`,`vec4 bigCoord (vec4 coord, float scale)`,`{`,` return (coord + uCellOffset) * scale * uCells;`,`}`,`vec4 hash4D (vec4 coord)`,`{`,` return vec4(`,` trig(coord + uSeedX),`,` trig(coord + uSeedY),`,` trig(coord + uSeedZ),`,` trig(coord + uSeedW)`,` ) * uVariation;`,`}`,`float worley4D (vec4 uv, float scale)`,`{`,` vec4 coord = bigCoord(uv, scale);`,` vec4 point = floor(coord);`,` vec4 frac = fract(coord);`,` float dist = 16.0;`,` for (float l = -1.0; l <= 1.0; l++)`,` for (float k = -1.0; k <= 1.0; k++)`,` for (float j = -1.0; j <= 1.0; j++)`,` for (float i = -1.0; i <= 1.0; i++)`,` {`,` vec4 cellNeighbor = vec4(i, j, k, l);`,` vec4 jitter = hash4D(mod(point + cellNeighbor, uWrap * scale));`,` vec4 diff = cellNeighbor - frac + jitter;`,` float d = dot(diff, diff); // Squared length of diff.`,` if (d < dist)`,` {`,` dist = d;`,` }`,` }`,` return sqrt(dist);`,`}`,`float worley4DIndex (vec4 uv, float scale)`,`{`,` vec4 coord = bigCoord(uv, scale);`,` vec4 point = floor(coord);`,` vec4 frac = fract(coord);`,` float dist = 16.0;`,` float random = 0.0;`,` for (float l = -1.0; l <= 1.0; l++)`,` for (float k = -1.0; k <= 1.0; k++)`,` for (float j = -1.0; j <= 1.0; j++)`,` for (float i = -1.0; i <= 1.0; i++)`,` {`,` vec4 cellNeighbor = vec4(i, j, k, l);`,` vec4 jitter = hash4D(mod(point + cellNeighbor, uWrap * scale));`,` vec4 diff = cellNeighbor - frac + jitter;`,` float d = dot(diff, diff); // Squared length of diff.`,` if (d < dist)`,` {`,` dist = d;`,` random = jitter.x;`,` }`,` }`,` return random;`,`}`,`float worley4DSmooth (vec4 uv, float scale)`,`{`,` vec4 coord = bigCoord(uv, scale);`,` vec4 point = floor(coord);`,` vec4 frac = fract(coord);`,` float value = 0.0;`,` for (float l = -1.0; l <= 1.0; l++)`,` for (float k = -1.0; k <= 1.0; k++)`,` for (float j = -1.0; j <= 1.0; j++)`,` for (float i = -1.0; i <= 1.0; i++)`,` {`,` vec4 cellNeighbor = vec4(i, j, k, l);`,` vec4 jitter = hash4D(mod(point + cellNeighbor, uWrap * scale));`,` vec4 diff = cellNeighbor - frac + jitter;`,` float d = length(diff);`,` value += exp2(-32.0 / uSmoothing * d); // Accumulate fast-decaying exponential of length.`,` }`,` return -(1.0 / 32.0 * uSmoothing) * log2(value);`,`}`,`float iterateWorley4D (vec4 uv)`,`{`,` float value = 0.0;`,` float itValue = 0.0;`,` for (float iteration = 0.0; iteration < ITERATION_COUNT; iteration++)`,` {`,` float scale = exp2(iteration);`,` #ifdef MODE_DISTANCE`,` itValue = worley4D(uv + iteration, scale);`,` #endif`,` #ifdef MODE_INDEX`,` itValue = worley4DIndex(uv + iteration, scale);`,` #endif`,` #ifdef MODE_DISTANCE_SMOOTH`,` itValue = worley4DSmooth(uv + iteration, scale);`,` #endif`,` value += (itValue - 0.5) / scale;`,` }`,` return value + 0.5;`,`}`,`void main ()`,`{`,` vec4 uv = vec4(outTexCoord, 0.0, 0.0);`,` float value = iterateWorley4D(uv);`,` #ifndef NORMAL_MAP`,` vec4 color = mix(uColorStart, uColorEnd, value);`,` color.rgb *= color.a;`,` gl_FragColor = color;`,` #else`,` float dx = dFdx(value) * uNormalScale;`,` float dy = dFdy(value) * uNormalScale;`,` vec3 normal = vec3(dx, dy, 1.0 - sqrt(dx * dx + dy * dy)) * 0.5 + 0.5;`,` gl_FragColor = vec4(normal, 1.0);`,` #endif`,`}`].join(`
80
+ `)},62807(e){e.exports=[`float inverseRotation = -rotation - uCamera.z;`,`float irSine = sin(inverseRotation);`,`float irCosine = cos(inverseRotation);`,`outInverseRotationMatrix = mat3(`,` irCosine, irSine, 0.0,`,` -irSine, irCosine, 0.0,`,` 0.0, 0.0, 1.0`,`);`].join(`
81
+ `)},4127(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`#pragma phaserTemplate(extensions)`,`#pragma phaserTemplate(features)`,`precision mediump float;`,`#pragma phaserTemplate(fragmentDefine)`,`uniform vec2 uResolution;`,`uniform float uCameraZoom;`,`varying vec4 lightPosition;`,`varying vec4 lightColor;`,`varying float lightRadius;`,`varying float lightAttenuation;`,`#pragma phaserTemplate(outVariables)`,`#pragma phaserTemplate(fragmentHeader)`,`void main ()`,`{`,` vec2 center = (lightPosition.xy + 1.0) * (uResolution.xy * 0.5);`,` float distToSurf = length(center - gl_FragCoord.xy);`,` float radius = 1.0 - distToSurf / (lightRadius * uCameraZoom);`,` float intensity = smoothstep(0.0, 1.0, radius * lightAttenuation);`,` vec4 color = vec4(intensity, intensity, intensity, 0.0) * lightColor;`,` #pragma phaserTemplate(fragmentProcess)`,` gl_FragColor = vec4(color.rgb * lightColor.a, color.a);`,`}`].join(`
82
+ `)},89924(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`#pragma phaserTemplate(extensions)`,`#pragma phaserTemplate(features)`,`precision mediump float;`,`#pragma phaserTemplate(vertexDefine)`,`uniform mat4 uProjectionMatrix;`,`attribute vec2 inPosition;`,`attribute vec2 inLightPosition;`,`attribute vec4 inLightColor;`,`attribute float inLightRadius;`,`attribute float inLightAttenuation;`,`varying vec4 lightPosition;`,`varying vec4 lightColor;`,`varying float lightRadius;`,`varying float lightAttenuation;`,`#pragma phaserTemplate(outVariables)`,`#pragma phaserTemplate(vertexHeader)`,`void main ()`,`{`,` lightColor = inLightColor;`,` lightRadius = inLightRadius;`,` lightAttenuation = inLightAttenuation;`,` lightPosition = uProjectionMatrix * vec4(inLightPosition, 1.0, 1.0);`,` gl_Position = uProjectionMatrix * vec4(inPosition, 1.0, 1.0);`,` #pragma phaserTemplate(vertexProcess)`,`}`].join(`
83
+ `)},68589(e){e.exports=[`#extension GL_OES_standard_derivatives : enable`,`#define BAND_TREE_DEPTH 0.0`,`uniform sampler2D uRampTexture;`,`uniform vec2 uRampResolution;`,`uniform float uRampBandStart;`,`uniform bool uDither;`,`float decodeNumberSample(vec4 sample)`,`{`,` return (`,` sample.r * 255.0 +`,` sample.g * 255.0 * 256.0 +`,` sample.b * 255.0 * 256.0 * 256.0 +`,` sample.a * 255.0 * 256.0 * 256.0 * 256.0`,` ) / 256.0 / 256.0;`,`}`,`struct Band`,`{`,` vec4 colorStart;`,` vec4 colorEnd;`,` float start;`,` float end;`,` int colorSpace;`,` int interpolation;`,` float middle;`,`};`,`Band getBand(float progress)`,`{`,` vec2 rampStep = 1.0 / uRampResolution;`,` vec2 c = rampStep / 2.0;`,` float start = decodeNumberSample(texture2D(uRampTexture, c));`,` float end = decodeNumberSample(texture2D(uRampTexture, vec2(1.0, 0.0) * rampStep + c));`,` float TREE_OFFSET = 2.0; // Beginning of tree block.`,` float index = 0.0;`,` float x, y;`,` for (float i = 0.0; i < BAND_TREE_DEPTH; i++)`,` {`,` x = mod(index + TREE_OFFSET, uRampResolution.x);`,` y = floor(x / uRampResolution.x);`,` float pivot = decodeNumberSample(texture2D(uRampTexture, vec2(x, y) * rampStep + c));`,` if (progress > pivot)`,` {`,` start = pivot;`,` index = index * 2.0 + 2.0;`,` }`,` else`,` {`,` end = pivot;`,` index = index * 2.0 + 1.0;`,` }`,` }`,` float bandNumber = index - uRampBandStart + TREE_OFFSET;`,` float bandIndex = bandNumber * 3.0 + uRampBandStart;`,` x = mod(bandIndex, uRampResolution.x);`,` y = floor(bandIndex / uRampResolution.x);`,` vec4 colorStart = texture2D(uRampTexture, vec2(x, y) * rampStep + c);`,` x = mod(bandIndex + 1.0, uRampResolution.x);`,` y = floor(bandIndex / uRampResolution.x);`,` vec4 colorEnd = texture2D(uRampTexture, vec2(x, y) * rampStep + c);`,` x = mod(bandIndex + 2.0, uRampResolution.x);`,` y = floor(bandIndex / uRampResolution.x);`,` float bandData = decodeNumberSample(texture2D(uRampTexture, vec2(x, y) * rampStep + c));`,` int colorSpace = int(floor(bandData / 255.0));`,` int interpolation = int(floor(bandData)) - colorSpace * 255;`,` return Band(colorStart, colorEnd, start, end, colorSpace, interpolation, fract(bandData) * 2.0);`,`}`,`float interpolate(float progress, int mode)`,`{`,` if (mode == 1)`,` {`,` if ((progress *= 2.0) < 1.0)`,` {`,` return 0.5 * sqrt(1.0 - (--progress * progress));`,` }`,` progress = 1.0 - progress;`,` return 1.0 - 0.5 * sqrt(1.0 - progress * progress);`,` }`,` if (mode == 2)`,` {`,` return sin((progress - 0.5) * 3.14159265358979323846) * 0.5 + 0.5;`,` }`,` if (mode == 3)`,` {`,` return sqrt(1.0 - (--progress * progress));`,` }`,` if (mode == 4)`,` {`,` return 1.0 - sqrt(1.0 - progress * progress);`,` }`,` return progress;`,`}`,`float ditherIGN(float value)`,`{`,` float dx = dFdx(value);`,` float dy = dFdy(value);`,` float rateOfChange = sqrt(dx * dx + dy * dy);`,` value += (fract(52.9829189 * fract(0.06711056 * gl_FragCoord.x + 0.00583715 * gl_FragCoord.y)) - 0.5) * rateOfChange;`,` return value;`,`}`,`vec4 rgbaToHsva(vec4 rgba)`,`{`,` float r = rgba.r;`,` float g = rgba.g;`,` float b = rgba.b;`,` float a = rgba.a;`,` float min = min(min(r, g), b);`,` float max = max(max(r, g), b);`,` float d = max - min;`,` float h = 0.0;`,` float s = (max == 0.0) ? 0.0 : d / max;`,` float v = max;`,` if (max != min)`,` {`,` if (max == r)`,` {`,` h = (g - b) / d + ((g < b) ? 6.0 : 0.0);`,` }`,` else if (max == g)`,` {`,` h = (b - r) / d + 2.0;`,` }`,` else`,` {`,` h = (r - g) / d + 4.0;`,` }`,` h /= 6.0;`,` }`,` return vec4(h, s, v, a);`,`}`,`float hsvaToRgbaConvert(float n, vec4 hsva)`,`{`,` float k = mod(n + hsva.x * 6.0, 6.0);`,` float min = min(min(k, 4.0 - k), 1.0);`,` return hsva.z - hsva.z * hsva.y * max(0.0, min);`,`}`,`vec4 hsvaToRgba(vec4 hsva)`,`{`,` return vec4(`,` hsvaToRgbaConvert(5.0, hsva),`,` hsvaToRgbaConvert(3.0, hsva),`,` hsvaToRgbaConvert(1.0, hsva),`,` hsva.a`,` );`,`}`,`vec4 mixBandColor(float progress, Band band)`,`{`,` if (band.colorSpace == 0)`,` {`,` return mix(band.colorStart, band.colorEnd, progress);`,` }`,` vec4 hsvaStart = rgbaToHsva(band.colorStart);`,` vec4 hsvaEnd = rgbaToHsva(band.colorEnd);`,` if (band.colorSpace == 1)`,` {`,` float dH = hsvaStart.x - hsvaEnd.x;`,` if (dH > 0.5)`,` {`,` hsvaStart.x -= 1.0;`,` }`,` else if (dH < -0.5)`,` {`,` hsvaStart.x += 1.0;`,` }`,` }`,` else if (band.colorSpace == 2)`,` {`,` if (hsvaStart.x > hsvaEnd.x)`,` {`,` hsvaStart.x -= 1.0;`,` }`,` }`,` else if (band.colorSpace == 3)`,` {`,` if (hsvaStart.x < hsvaEnd.x)`,` {`,` hsvaStart.x += 1.0;`,` }`,` }`,` vec4 hsvaMix = mix(hsvaStart, hsvaEnd, progress);`,` hsvaMix.x = mod(hsvaMix.x, 1.0);`,` return hsvaToRgba(hsvaMix);`,`}`,`vec4 getRampAt(float progress)`,`{`,` Band band = getBand(progress);`,` float bandProgress = (progress - band.start) / (band.end - band.start);`,` float gamma = log(0.5) / log(band.middle);`,` bandProgress = pow(bandProgress, gamma);`,` bandProgress = interpolate(bandProgress, band.interpolation);`,` if (uDither)`,` {`,` bandProgress = ditherIGN(bandProgress);`,` }`,` return mixBandColor(bandProgress, band);`,`}`].join(`
84
+ `)},72823(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`#pragma phaserTemplate(extensions)`,`#pragma phaserTemplate(features)`,`#ifdef GL_FRAGMENT_PRECISION_HIGH`,`precision highp float;`,`#else`,`precision mediump float;`,`#endif`,`#pragma phaserTemplate(fragmentDefine)`,`varying vec2 outTexCoord;`,`#pragma phaserTemplate(outVariables)`,`#pragma phaserTemplate(fragmentHeader)`,`void main ()`,`{`,` vec4 fragColor = vec4(outTexCoord.xyx, 1.0);`,` #pragma phaserTemplate(fragmentProcess)`,` gl_FragColor = fragColor;`,`}`].join(`
85
+ `)},65884(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`#pragma phaserTemplate(extensions)`,`#pragma phaserTemplate(features)`,`#ifdef GL_FRAGMENT_PRECISION_HIGH`,`precision highp float;`,`#else`,`precision mediump float;`,`#endif`,`#pragma phaserTemplate(vertexDefine)`,`uniform mat4 uProjectionMatrix;`,`attribute vec2 inPosition;`,`attribute vec2 inTexCoord;`,`varying vec2 outTexCoord;`,`#pragma phaserTemplate(outVariables)`,`#pragma phaserTemplate(vertexHeader)`,`void main ()`,`{`,` gl_Position = uProjectionMatrix * vec4(inPosition, 1.0, 1.0);`,` outTexCoord = inTexCoord;`,` #pragma phaserTemplate(vertexProcess)`,`}`].join(`
86
+ `)},2807(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`precision mediump float;`,`attribute vec2 inPosition;`,`attribute vec2 inTexCoord;`,`varying vec2 outFragCoord;`,`varying vec2 outTexCoord;`,`void main ()`,`{`,` outFragCoord = inPosition.xy * 0.5 + 0.5;`,` outTexCoord = inTexCoord;`,` gl_Position = vec4(inPosition, 0, 1);`,`}`].join(`
87
+ `)},49119(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`#pragma phaserTemplate(extensions)`,`#pragma phaserTemplate(features)`,`#ifdef GL_FRAGMENT_PRECISION_HIGH`,`precision highp float;`,`#else`,`precision mediump float;`,`#endif`,`#pragma phaserTemplate(fragmentDefine)`,`uniform vec2 uResolution;`,`varying vec2 outTexCoord;`,`varying float outTintEffect;`,`varying vec4 outTint;`,`#pragma phaserTemplate(outVariables)`,`#pragma phaserTemplate(fragmentHeader)`,`void main ()`,`{`,` #pragma phaserTemplate(fragmentProcess)`,` gl_FragColor = fragColor;`,`}`].join(`
88
+ `)},3524(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`#pragma phaserTemplate(extensions)`,`#pragma phaserTemplate(features)`,`#ifdef GL_FRAGMENT_PRECISION_HIGH`,`precision highp float;`,`#else`,`precision mediump float;`,`#endif`,`#define ROUND_BIAS 0.5001`,`#pragma phaserTemplate(vertexDefine)`,`uniform mat4 uProjectionMatrix;`,`uniform mat3 uViewMatrix;`,`uniform vec3 uCameraScrollAndAlpha;`,`uniform int uRoundPixels;`,`uniform vec2 uResolution;`,`uniform float uTime;`,`uniform vec2 uDiffuseResolution;`,`uniform vec2 uFrameDataResolution;`,`uniform sampler2D uFrameDataTexture;`,`uniform float uGravity;`,`attribute float inVertex;`,`attribute vec4 inPositionX;`,`attribute vec4 inPositionY;`,`attribute vec4 inRotation;`,`attribute vec4 inScaleX;`,`attribute vec4 inScaleY;`,`attribute vec4 inAlpha;`,`attribute vec4 inFrame;`,`attribute vec4 inTintBlend;`,`attribute vec4 inTintTL;`,`attribute vec4 inTintTR;`,`attribute vec4 inTintBL;`,`attribute vec4 inTintBR;`,`attribute vec4 inOriginAndTintModeAndCreationTime;`,`attribute vec2 inScrollFactor;`,`varying vec2 outTexCoord;`,`varying float outTintEffect;`,`varying vec4 outTint;`,`#pragma phaserTemplate(outVariables)`,`#pragma phaserTemplate(vertexHeader)`,`const float PI = 3.14159265359;`,`const float HALF_PI = PI / 2.0;`,`const float BOUNCE_OVERSHOOT = 1.70158;`,`const float BOUNCE_OVERSHOOT_PLUS = BOUNCE_OVERSHOOT + 1.0;`,`const float BOUNCE_OVERSHOOT_IN_OUT = BOUNCE_OVERSHOOT * 1.525;`,`const float BOUNCE_OVERSHOOT_IN_OUT_PLUS = BOUNCE_OVERSHOOT_IN_OUT + 1.0;`,`float animate (vec4 anim)`,`{`,` float value = anim.x;`,` float a = anim.y;`,` float b = abs(anim.z);`,` float c = abs(anim.w);`,` bool yoyo = anim.z < 0.0;`,` bool loop = anim.w > 0.0;`,` int type = int(floor(c));`,` if (type == 0|| b == 0.0)`,` {`,` return value;`,` }`,` float duration = b;`,` float delay = mod(c, 1.0) * 2.0;`,` float rawTime = ((uTime - inOriginAndTintModeAndCreationTime.w) / duration) - delay;`,` float time = mod(rawTime, 1.0);`,` if (yoyo && (mod(rawTime, 2.0) >= 1.0))`,` {`,` time = 1.0 - time;`,` }`,` float repeats = loop ? 0.0 : floor(a);`,` float timeContinuous = loop ? time : rawTime;`,` #ifdef FEATURE_LINEAR`,` if (type == 1)`,` {`,` return value + a * timeContinuous;`,` }`,` #endif`,` #ifdef FEATURE_GRAVITY`,` if (type == 2)`,` {`,` float v = floor(a);`,` float gravityFactor = (a - v) * 2.0 - 1.0;`,` if (gravityFactor == 0.0)`,` {`,` gravityFactor = 1.0;`,` }`,` float seconds = timeContinuous * duration / 1000.0;`,` float accel = uGravity * gravityFactor;`,` return value + (v * seconds) + (0.5 * accel * seconds * seconds);`,` }`,` #endif`,` #ifdef FEATURE_QUAD_EASEOUT`,` if (type == 10)`,` {`,` return value + a * time * (2.0 - time)`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_QUAD_EASEIN`,` if (type == 11)`,` {`,` return value + a * time * time`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_QUAD_EASEINOUT`,` if (type == 12)`,` {`,` time *= 2.0;`,` if (time < 1.0)`,` {`,` return value + a * time * time * 0.5`,` + repeats * a;`,` }`,` time -= 1.0;`,` return value + a * -0.5 * (time * (time - 2.0) - 1.0)`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_CUBIC_EASEOUT`,` if (type == 20)`,` {`,` time -= 1.0;`,` return value + a * (time * time * time + 1.0)`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_CUBIC_EASEIN`,` if (type == 21)`,` {`,` return value + a * time * time * time`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_CUBIC_EASEINOUT`,` if (type == 22)`,` {`,` time *= 2.0;`,` if (time < 1.0)`,` {`,` return value + a * time * time * time * 0.5`,` + repeats * a;`,` }`,` time -= 2.0;`,` return value + a * 0.5 * (time * time * time + 2.0)`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_QUART_EASEOUT`,` if (type == 30)`,` {`,` time -= 1.0;`,` return value + a * (1.0 - time * time * time * time)`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_QUART_EASEIN`,` if (type == 31)`,` {`,` return value + a * time * time * time * time`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_QUART_EASEINOUT`,` if (type == 32)`,` {`,` time *= 2.0;`,` if (time < 1.0)`,` {`,` return value + a * time * time * time * time * 0.5`,` + repeats * a;`,` }`,` time -= 2.0;`,` return value + a * -0.5 * (time * time * time * time - 2.0)`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_QUINT_EASEOUT`,` if (type == 40)`,` {`,` time -= 1.0;`,` return value + a * (time * time * time * time * time + 1.0)`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_QUINT_EASEIN`,` if (type == 41)`,` {`,` return value + a * time * time * time * time * time`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_QUINT_EASEINOUT`,` if (type == 42)`,` {`,` time *= 2.0;`,` if (time < 1.0)`,` {`,` return value + a * time * time * time * time * time * 0.5`,` + repeats * a;`,` }`,` time -= 2.0;`,` return value + a * 0.5 * (time * time * time * time * time + 2.0)`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_SINE_EASEOUT`,` if (type == 50)`,` {`,` return value + a * sin(time * HALF_PI)`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_SINE_EASEIN`,` if (type == 51)`,` {`,` return value + a * (1.0 - cos(time * HALF_PI))`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_SINE_EASEINOUT`,` if (type == 52)`,` {`,` return value + a * 0.5 * (1.0 - cos(PI * time))`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_EXPO_EASEOUT`,` if (type == 60)`,` {`,` return value + a * (1.0 - pow(2.0, -10.0 * time))`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_EXPO_EASEIN`,` if (type == 61)`,` {`,` return value + a * pow(2.0, 10.0 * (time - 1.0) - 0.001)`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_EXPO_EASEINOUT`,` if (type == 62)`,` {`,` time *= 2.0;`,` if (time < 1.0)`,` {`,` return value + a * 0.5 * pow(2.0, 10.0 * (time - 1.0))`,` + repeats * a;`,` }`,` time -= 1.0;`,` return value + a * 0.5 * (2.0 - pow(2.0, -10.0 * (time - 1.0)))`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_CIRC_EASEOUT`,` if (type == 70)`,` {`,` time -= 1.0;`,` return value + a * sqrt(1.0 - time * time)`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_CIRC_EASEIN`,` if (type == 71)`,` {`,` return value + a * (1.0 - sqrt(1.0 - time * time))`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_CIRC_EASEINOUT`,` if (type == 72)`,` {`,` time *= 2.0;`,` if (time < 1.0)`,` {`,` return value + a * -0.5 * (sqrt(1.0 - time * time) - 1.0)`,` + repeats * a;`,` }`,` time -= 2.0;`,` return value + a * 0.5 * (sqrt(1.0 - time * time) + 1.0)`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_BACK_EASEOUT`,` if (type == 90)`,` {`,` time -= 1.0;`,` return value + a * (time * time * (BOUNCE_OVERSHOOT_PLUS * time + BOUNCE_OVERSHOOT) + 1.0)`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_BACK_EASEIN`,` if (type == 91)`,` {`,` return value + a * time * time * (BOUNCE_OVERSHOOT_PLUS * time - BOUNCE_OVERSHOOT)`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_BACK_EASEINOUT`,` if (type == 92)`,` {`,` time *= 2.0;`,` if (time < 1.0)`,` {`,` return value + a * 0.5 * (time * time * (BOUNCE_OVERSHOOT_IN_OUT_PLUS * time - BOUNCE_OVERSHOOT_IN_OUT))`,` + repeats * a;`,` }`,` time -= 2.0;`,` return value + a * 0.5 * (time * time * (BOUNCE_OVERSHOOT_IN_OUT_PLUS * time + BOUNCE_OVERSHOOT_IN_OUT) + 2.0)`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_BOUNCE_EASEOUT`,` if (type == 100)`,` {`,` if (time < 1.0 / 2.75)`,` {`,` return value + a * (7.5625 * time * time)`,` + repeats * a;`,` }`,` else if (time < 2.0 / 2.75)`,` {`,` time -= 1.5 / 2.75;`,` return value + a * (7.5625 * time * time + 0.75)`,` + repeats * a;`,` }`,` else if (time < 2.5 / 2.75)`,` {`,` time -= 2.25 / 2.75;`,` return value + a * (7.5625 * time * time + 0.9375)`,` + repeats * a;`,` }`,` else`,` {`,` time -= 2.625 / 2.75;`,` return value + a * (7.5625 * time * time + 0.984375)`,` + repeats * a;`,` }`,` }`,` #endif`,` #ifdef FEATURE_BOUNCE_EASEIN`,` if (type == 101)`,` {`,` time = 1.0 - time;`,` if (time < 1.0 / 2.75)`,` {`,` return value + a * (1.0 - 7.5625 * time * time)`,` + repeats * a;`,` }`,` else if (time < 2.0 / 2.75)`,` {`,` time -= 1.5 / 2.75;`,` return value + a * (1.0 - (7.5625 * time * time + 0.75))`,` + repeats * a;`,` }`,` else if (time < 2.5 / 2.75)`,` {`,` time -= 2.25 / 2.75;`,` return value + a * (1.0 - (7.5625 * time * time + 0.9375))`,` + repeats * a;`,` }`,` else`,` {`,` time -= 2.625 / 2.75;`,` return value + a * (1.0 - (7.5625 * time * time + 0.984375))`,` + repeats * a;`,` }`,` }`,` #endif`,` #ifdef FEATURE_BOUNCE_EASEINOUT`,` if (type == 102)`,` {`,` bool reverse = false;`,` if (time < 0.5)`,` {`,` time = 1.0 - time * 2.0;`,` reverse = true;`,` }`,` if (time < 1.0 / 2.75)`,` {`,` time = 7.5625 * time * time;`,` }`,` else if (time < 2.0 / 2.75)`,` {`,` time -= 1.5 / 2.75;`,` time = 7.5625 * time * time + 0.75;`,` }`,` else if (time < 2.5 / 2.75)`,` {`,` time -= 2.25 / 2.75;`,` time = 7.5625 * time * time + 0.9375;`,` }`,` else`,` {`,` time -= 2.625 / 2.75;`,` time = 7.5625 * time * time + 0.984375;`,` }`,` if (reverse)`,` {`,` return value + a * (1.0 - time) * 0.5`,` + repeats * a;`,` }`,` return value + a * time * 0.5 + 0.5`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_STEPPED`,` if (type == 110)`,` {`,` return value + a * floor(time + 0.5)`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_SMOOTHSTEP_EASEOUT`,` if (type == 120)`,` {`,` return value + a * (smoothstep(0.0, 1.0, time / 2.0 + 0.5) * 2.0 - 1.0)`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_SMOOTHSTEP_EASEIN`,` if (type == 121)`,` {`,` return value + a * smoothstep(0.0, 1.0, time / 2.0) * 2.0`,` + repeats * a;`,` }`,` #endif`,` #ifdef FEATURE_SMOOTHSTEP_EASEINOUT`,` if (type == 122)`,` {`,` return value + a * smoothstep(0.0, 1.0, time)`,` + repeats * a;`,` }`,` #endif`,` return value;`,`}`,`struct Frame {`,` vec2 position;`,` vec2 size;`,` vec2 offset;`,`};`,`Frame getFrame (float frame)`,`{`,` float index1 = floor(frame) * 3.0;`,` float index2 = index1 + 1.0;`,` float index3 = index1 + 2.0;`,` float width = uFrameDataResolution.x;`,` float x = mod(index1, width);`,` float y = floor(index1 / width);`,` vec4 texelUV = texture2D(`,` uFrameDataTexture,`,` vec2(x + 0.5, y + 0.5) / uFrameDataResolution`,` );`,` x = mod(index2, width);`,` y = floor(index2 / width);`,` vec4 texelWH = texture2D(`,` uFrameDataTexture,`,` vec2(x + 0.5, y + 0.5) / uFrameDataResolution`,` );`,` x = mod(index3, width);`,` y = floor(index3 / width);`,` vec4 texelOrigin = texture2D(`,` uFrameDataTexture,`,` vec2(x + 0.5, y + 0.5) / uFrameDataResolution`,` );`,` return Frame(`,` vec2(`,` texelUV.r + texelUV.g * 256.0,`,` texelUV.b + texelUV.a * 256.0`,` ) * 255.0,`,` vec2(`,` texelWH.r + texelWH.g * 256.0,`,` texelWH.b + texelWH.a * 256.0`,` ) * 255.0,`,` vec2(`,` texelOrigin.r + texelOrigin.g * 256.0,`,` texelOrigin.b + texelOrigin.a * 256.0`,` ) * 255.0 - 32768.0`,` );`,`}`,`void main ()`,`{`,` float positionX = animate(inPositionX);`,` float positionY = animate(inPositionY);`,` float rotation = animate(inRotation);`,` float scaleX = animate(inScaleX);`,` float scaleY = animate(inScaleY);`,` float frame = animate(inFrame);`,` float tintBlend = animate(inTintBlend);`,` float alpha = animate(inAlpha);`,` vec2 origin = inOriginAndTintModeAndCreationTime.xy;`,` float tintMode = inOriginAndTintModeAndCreationTime.z;`,` float scrollFactorX = inScrollFactor.x;`,` float scrollFactorY = inScrollFactor.y;`,` Frame frameData = getFrame(frame);`,` vec2 uv = frameData.position / uDiffuseResolution;`,` vec2 wh = frameData.size / uDiffuseResolution;`,` float u = uv.s;`,` float v = uv.t;`,` float w = wh.s;`,` float h = wh.t;`,` float width = frameData.size.s;`,` float height = frameData.size.t;`,` vec4 tint = inTintTL;`,` float x = -origin.x;`,` float y = -origin.y;`,` if (inVertex == 0.0)`,` {`,` y = 1.0 - origin.y;`,` v += h;`,` tint = inTintBL;`,` }`,` else if (inVertex == 2.0)`,` {`,` x = 1.0 - origin.x;`,` y = 1.0 - origin.y;`,` u += w;`,` v += h;`,` tint = inTintBR;`,` }`,` else if (inVertex == 3.0)`,` {`,` x = 1.0 - origin.x;`,` u += w;`,` tint = inTintTR;`,` }`,` vec3 position = vec3(`,` (x * width - frameData.offset.x) * scaleX,`,` (y * height - frameData.offset.y) * scaleY,`,` 1.0`,` );`,` mat3 viewMatrix = uViewMatrix * mat3(`,` 1.0, 0.0, 0.0,`,` 0.0, 1.0, 0.0,`,` uCameraScrollAndAlpha.x * (1.0 - scrollFactorX), uCameraScrollAndAlpha.y * (1.0 - scrollFactorY), 1.0`,` );`,` float sine = sin(rotation);`,` float cosine = cos(rotation);`,` mat3 transformMatrix = mat3(`,` cosine, sine, 0.0,`,` -sine, cosine, 0.0,`,` positionX, positionY, 1.0`,` );`,` position = viewMatrix * transformMatrix * position;`,` alpha *= uCameraScrollAndAlpha.z;`,` tint.a *= alpha;`,` if (uRoundPixels == 1 && rotation == 0.0 && scaleX == 1.0 && scaleY == 1.0)`,` {`,` position.xy = floor(position.xy + ROUND_BIAS);`,` }`,` gl_Position = uProjectionMatrix * vec4(position.xy, 1.0, 1.0);`,` outTexCoord = vec2(u, 1.0 - v);`,` outTint = mix(vec4(1.0, 1.0, 1.0, tint.a), tint, tintBlend);`,` outTintEffect = tintMode;`,` #pragma phaserTemplate(vertexProcess)`,`}`].join(`
89
+ `)},57532(e){e.exports=[`#version 100`,`#pragma phaserTemplate(shaderName)`,`#pragma phaserTemplate(extensions)`,`#pragma phaserTemplate(features)`,`#ifdef GL_FRAGMENT_PRECISION_HIGH`,`precision highp float;`,`#else`,`precision mediump float;`,`#endif`,`/* Redefine MAX_ANIM_FRAMES to support animations with different frame numbers. */`,`#define MAX_ANIM_FRAMES 0`,`#pragma phaserTemplate(fragmentDefine)`,`uniform vec2 uResolution;`,`uniform sampler2D uMainSampler;`,`uniform sampler2D uLayerSampler;`,`uniform vec2 uMainResolution;`,`uniform vec2 uLayerResolution;`,`uniform float uTileColumns;`,`uniform vec4 uTileWidthHeightMarginSpacing;`,`uniform float uAlpha;`,`uniform float uTime;`,`#if MAX_ANIM_FRAMES > 0`,`uniform sampler2D uAnimSampler;`,`uniform vec2 uAnimResolution;`,`#endif`,`varying vec2 outTexCoord;`,`varying vec2 outTileStride;`,`#pragma phaserTemplate(outVariables)`,`vec2 getTexRes ()`,`{`,` return uMainResolution;`,`}`,`float floatTexel (vec4 texel)`,`{`,` return texel.r * 255.0 + (texel.g * 255.0 * 256.0) + (texel.b * 255.0 * 256.0 * 256.0) + (texel.a * 255.0 * 256.0 * 256.0 * 256.0);`,`}`,`struct Tile`,`{`,` float index;`,` vec2 uv; // In texels.`,` #if MAX_ANIM_FRAMES > 0`,` bool animated;`,` #endif`,` bool empty;`,`};`,`Tile getLayerData (vec2 coord)`,`{`,` vec2 texelCoord = coord * uLayerResolution;`,` vec2 tile = floor(texelCoord);`,` vec2 uv = fract(texelCoord);`,` uv.y = 1.0 - uv.y;`,` vec4 texel = texture2D(uLayerSampler, (tile + 0.5) / uLayerResolution) * 255.0;`,` float flags = texel.a;`,` /* Check for empty tile flag in bit 28. */`,` if (flags == 16.0)`,` {`,` return Tile(`,` 0.0,`,` vec2(0.0),`,` #if MAX_ANIM_FRAMES > 0`,` false,`,` #endif`,` true`,` );`,` }`,` /* Bit 31 is flipX. */`,` bool flipX = flags > 127.0;`,` /* Bit 30 is flipY. */`,` bool flipY = mod(flags, 128.0) > 63.0;`,` #if MAX_ANIM_FRAMES > 0`,` /* Bit 29 is animation. */`,` bool animated = mod(flags, 64.0) > 31.0;`,` #endif`,` if (flipX)`,` {`,` uv.x = 1.0 - uv.x;`,` }`,` if (flipY)`,` {`,` uv.y = 1.0 - uv.y;`,` }`,` float index = texel.r + (texel.g * 256.0) + (texel.b * 256.0 * 256.0);`,` return Tile(`,` index,`,` uv * uTileWidthHeightMarginSpacing.xy,`,` #if MAX_ANIM_FRAMES > 0`,` animated,`,` #endif`,` false`,` );`,`}`,`vec2 getFrameCorner (float index)`,`{`,` float x = mod(index, uTileColumns);`,` float y = floor(index / uTileColumns);`,` vec2 xy = vec2(x, y);`,` return xy * outTileStride + uTileWidthHeightMarginSpacing.zz;`,`}`,`#if MAX_ANIM_FRAMES > 0`,`float animationIndex (float index)`,`{`,` float animTextureWidth = uAnimResolution.x;`,` vec2 index2D = vec2(mod(index, animTextureWidth), floor(index / animTextureWidth));`,` vec4 animDurationTexel = texture2D(uAnimSampler, (index2D + 0.5) / uAnimResolution);`,` index2D = vec2(mod(index + 1.0, animTextureWidth), floor((index + 1.0) / animTextureWidth));`,` vec4 animIndexTexel = texture2D(uAnimSampler, (index2D + 0.5) / uAnimResolution);`,` float animDuration = floatTexel(animDurationTexel);`,` float animIndex = floatTexel(animIndexTexel);`,` float animTime = mod(uTime, animDuration);`,` float animTimeAccum = 0.0;`,` for (int i = 0; i < MAX_ANIM_FRAMES; i++)`,` {`,` index2D = vec2(mod(animIndex, animTextureWidth), floor(animIndex / animTextureWidth));`,` animDurationTexel = texture2D(uAnimSampler, (index2D + 0.5) / uAnimResolution);`,` float frameDuration = floatTexel(animDurationTexel);`,` animTimeAccum += frameDuration;`,` if (animTime <= animTimeAccum)`,` {`,` break;`,` }`,` animIndex += 2.0;`,` }`,` animIndex += 1.0;`,` index2D = vec2(mod(animIndex, animTextureWidth), floor(animIndex / animTextureWidth));`,` animIndexTexel = texture2D(uAnimSampler, (index2D + 0.5) / uAnimResolution);`,` float animFrameIndex = floatTexel(animIndexTexel);`,` return animFrameIndex;`,`}`,`#endif`,`vec2 getTileTexelCoord (Tile tile)`,`{`,` if (tile.empty)`,` {`,` return vec2(0.0);`,` }`,` float index = tile.index;`,` #if MAX_ANIM_FRAMES > 0`,` if (tile.animated)`,` {`,` index = animationIndex(index);`,` }`,` #endif`,` vec2 frameCorner = getFrameCorner(index);`,` return frameCorner + tile.uv;`,`}`,`#pragma phaserTemplate(fragmentHeader)`,`struct Samples {`,` vec4 color;`,` #pragma phaserTemplate(defineSamples)`,`};`,`Samples getColorSamples (vec2 texCoord)`,`{`,` Samples samples;`,` samples.color = texture2D(`,` uMainSampler,`,` vec2(texCoord.x, 1.0 - texCoord.y)`,` );`,` #pragma phaserTemplate(getSamples)`,` return samples;`,`}`,`Samples mixSamples (Samples samples1, Samples samples2, float alpha)`,`{`,` Samples samples;`,` samples.color = mix(samples1.color, samples2.color, alpha);`,` #pragma phaserTemplate(mixSamples)`,` return samples;`,`}`,`Samples getFinalSamples (Tile tile, vec2 layerTexCoord)`,`{`,` vec2 texelCoord = getTileTexelCoord(tile);`,` vec2 texCoord = texelCoord / uMainResolution;`,` #pragma phaserTemplate(texCoord)`,` #ifndef FEATURE_BORDERFILTER`,` return getColorSamples(texCoord);`,` #else`,` #pragma phaserTemplate(finalSamples)`,` vec2 wh = uTileWidthHeightMarginSpacing.xy;`,` vec2 frameCorner = getFrameCorner(tile.index);`,` vec2 frameCornerOpposite = frameCorner + wh;`,` vec2 texCoordClamped = clamp(texCoord, (frameCorner + 0.5) / uMainResolution, (frameCornerOpposite - 0.5) / uMainResolution);`,` vec2 dTexelCoord = (texCoord - texCoordClamped) * uMainResolution;`,` dTexelCoord.y = -dTexelCoord.y;`,` vec2 offsets = sign(dTexelCoord);`,` Samples samples0 = getColorSamples(texCoordClamped);`,` if (offsets.x == 0.0)`,` {`,` if (offsets.y == 0.0)`,` {`,` return samples0;`,` }`,` Tile tileY = getLayerData(layerTexCoord + (offsets - dTexelCoord) / wh / uLayerResolution);`,` vec2 texelCoordY = getTileTexelCoord(tileY);`,` vec2 texCoordY = texelCoordY / uMainResolution;`,` Samples samplesY = getColorSamples(texCoordY);`,` return mixSamples(samples0, samplesY, abs(dTexelCoord.y));`,` }`,` else`,` {`,` if (offsets.y == 0.0)`,` {`,` Tile tileX = getLayerData(layerTexCoord + (offsets - dTexelCoord) / wh / uLayerResolution);`,` vec2 texelCoordX = getTileTexelCoord(tileX);`,` vec2 texCoordX = texelCoordX / uMainResolution;`,` Samples samplesX = getColorSamples(texCoordX);`,` return mixSamples(samples0, samplesX, abs(dTexelCoord.x));`,` }`,` Tile tileX = getLayerData(layerTexCoord + (offsets * vec2(1.0, 0.0) - dTexelCoord) / wh / uLayerResolution);`,` vec2 texelCoordX = getTileTexelCoord(tileX);`,` vec2 texCoordX = texelCoordX / uMainResolution;`,` Samples samplesX = getColorSamples(texCoordX);`,` Tile tileY = getLayerData(layerTexCoord + (offsets * vec2(0.0, 1.0) - dTexelCoord) / wh / uLayerResolution);`,` vec2 texelCoordY = getTileTexelCoord(tileY);`,` vec2 texCoordY = texelCoordY / uMainResolution;`,` Samples samplesY = getColorSamples(texCoordY);`,` Tile tileXY = getLayerData(layerTexCoord + (offsets - dTexelCoord) / wh / uLayerResolution);`,` vec2 texelCoordXY = getTileTexelCoord(tileXY);`,` vec2 texCoordXY = texelCoordXY / uMainResolution;`,` Samples samplesXY = getColorSamples(texCoordXY);`,` Samples samples1 = mixSamples(samples0, samplesX, abs(dTexelCoord.x));`,` Samples samples2 = mixSamples(samplesY, samplesXY, abs(dTexelCoord.x));`,` return mixSamples(samples1, samples2, abs(dTexelCoord.y));`,` }`,` #endif`,`}`,`void main ()`,`{`,` vec2 layerTexCoord = outTexCoord;`,` Tile tile = getLayerData(layerTexCoord);`,` Samples samples = getFinalSamples(tile, layerTexCoord);`,` vec4 fragColor = samples.color;`,` #pragma phaserTemplate(declareSamples)`,` #pragma phaserTemplate(fragmentProcess)`,` fragColor *= uAlpha;`,` gl_FragColor = fragColor;`,`}`].join(`
90
+ `)},23879(e){e.exports=[`#pragma phaserTemplate(shaderName)`,`#pragma phaserTemplate(extensions)`,`#pragma phaserTemplate(features)`,`#ifdef GL_FRAGMENT_PRECISION_HIGH`,`precision highp float;`,`#else`,`precision mediump float;`,`#endif`,`#pragma phaserTemplate(vertexDefine)`,`uniform mat4 uProjectionMatrix;`,`uniform vec2 uResolution;`,`uniform vec4 uTileWidthHeightMarginSpacing;`,`attribute vec2 inPosition;`,`attribute vec2 inTexCoord;`,`varying vec2 outTexCoord;`,`varying vec2 outTileStride;`,`#pragma phaserTemplate(outVariables)`,`#pragma phaserTemplate(vertexHeader)`,`void main ()`,`{`,` gl_Position = uProjectionMatrix * vec4(inPosition, 1.0, 1.0);`,` outTexCoord = inTexCoord;`,` outTileStride = uTileWidthHeightMarginSpacing.xy + uTileWidthHeightMarginSpacing.zz;`,` #pragma phaserTemplate(vertexProcess)`,`}`].join(`
91
+ `)},84639(e){e.exports=function(e,t){return{name:e+`Anims`,additions:{fragmentDefine:`#undef MAX_ANIM_FRAMES
92
+ #define MAX_ANIM_FRAMES `+e},tags:[`MAXANIMS`],disable:!!t}}},81084(e,t,n){var r=n(84547);e.exports=function(e){return{name:`ApplyLighting`,additions:{fragmentHeader:r,fragmentProcess:`fragColor = applyLighting(fragColor, normal);`},tags:[`LIGHTING`],disable:!!e}}},44349(e,t,n){var r=n(11104);e.exports=function(e){return{name:`Tint`,additions:{fragmentHeader:r,fragmentProcess:`fragColor = applyTint(fragColor);`},tags:[`TINT`],disable:!!e}}},99501(e,t,n){var r=n(81556);e.exports=function(e){return{name:`BoundedSampler`,additions:{fragmentHeader:r},disable:!!e}}},6184(e,t,n){var r=n(11719);e.exports=function(e){return{name:`DefineLights`,additions:{fragmentDefine:`#define LIGHT_COUNT 1`,fragmentHeader:r},tags:[`LIGHTING`],disable:!!e}}},11653(e){e.exports=function(e,t){return{name:e+`TexCount`,additions:{fragmentDefine:`#define TEXTURE_COUNT `+e},tags:[`TexCount`],disable:!!t}}},13198(e){e.exports=function(e){return{name:`FlatNormal`,additions:{fragmentProcess:`vec3 normal = vec3(0.0, 0.0, 1.0);`},tags:[`LIGHTING`],disable:!!e}}},40829(e,t,n){var r=n(84220);e.exports=function(e){return{name:`NormalMap`,additions:{fragmentHeader:r,fragmentProcess:`vec3 normal = getNormalFromMap(texCoord);`},tags:[`LIGHTING`],disable:!!e}}},42792(e){e.exports=function(e){return{name:`TexCoordOut`,additions:{fragmentProcess:`vec2 texCoord = outTexCoord;
93
+ #pragma phaserTemplate(texCoord)`},tags:[`TEXCOORD`],disable:!!e}}},96049(e,t,n){var r=n(2860);e.exports=function(e){return{name:`GetTexRes`,additions:{fragmentHeader:r},tags:[`TEXRES`],disable:!!e}}},33997(e,t,n){var r=n(46432);e.exports=function(e,t){e===void 0&&(e=1);for(var n=``,i=1;i<e;i++)n+=`ELSE_TEX_CASE(`+i+`)
94
+ `;var a=r.replace(`#pragma phaserTemplate(texIdProcess)`,n);return{name:`GetTexture`+e,additions:{fragmentHeader:a,fragmentProcess:`vec4 fragColor = getTexture(texCoord);`},tags:[`TEXTURE`],disable:!!t}}},10455(e){e.exports=function(e){return{name:`OutFrame`,additions:{vertexHeader:`attribute vec4 inFrame;`,vertexProcess:`outFrame = inFrame;`,outVariables:`varying vec4 outFrame;`},disable:!!e}}},79532(e,t,n){var r=n(62807);e.exports=function(e){return{name:`OutInverseRotation`,additions:{vertexHeader:`uniform vec4 uCamera;`,vertexProcess:r,outVariables:`varying mat3 outInverseRotationMatrix;`},tags:[`LIGHTING`],disable:!!e}}},65217(e){e.exports=function(e){return{name:`RotDatum`,additions:{vertexProcess:`float rotation = inTexDatum;`},tags:[`LIGHTING`],disable:!!e}}},747(e){e.exports=function(e){return{name:`SampleNormal`,additions:{defineSamples:`vec4 normal;`,getSamples:`samples.normal = texture2D(uNormSampler, texCoord);`,mixSamples:`samples.normal = mix(samples1.normal, samples2.normal, alpha);`,declareSamples:`vec3 normal = normalize(samples.normal.rgb * 2.0 - 1.0);`},tags:[`LIGHTING`],disable:!!e}}},74505(e,t,n){var r=n(78390);e.exports=function(e){return{name:`SmoothPixelArt`,additions:{extensions:`#extension GL_OES_standard_derivatives : enable`,fragmentHeader:r,texCoord:`texCoord = getBlockyTexCoord(texCoord, getTexRes());`},disable:!!e}}},44832(e,t,n){var r=n(14030);e.exports=function(e){return{name:`TexCoordFrameClamp`,additions:{fragmentHeader:r,texCoord:`texCoord = clampTexCoordWithinFrame(texCoord);`},disable:!!e}}},23295(e){e.exports=function(e){return{name:`TexCoordFrameWrap`,additions:{texCoord:`// Wrap texture coordinate into the UV space of the texture frame.
95
+ texCoord = mod(texCoord, 1.0) * outFrame.zw + outFrame.xy;`},disable:!!e}}},83786(e,t,n){e.exports={MakeAnimLength:n(84639),MakeApplyLighting:n(81084),MakeApplyTint:n(44349),MakeBoundedSampler:n(99501),MakeDefineLights:n(6184),MakeDefineTexCount:n(11653),MakeFlatNormal:n(13198),MakeGetNormalFromMap:n(40829),MakeGetTexCoordOut:n(42792),MakeGetTexRes:n(96049),MakeGetTexture:n(33997),MakeOutFrame:n(10455),MakeOutInverseRotation:n(79532),MakeRotationDatum:n(65217),MakeSampleNormal:n(747),MakeSmoothPixelArt:n(74505),MakeTexCoordFrameClamp:n(44832),MakeTexCoordFrameWrap:n(23295)}},89350(e,t,n){e.exports={ApplyLighting:n(84547),ApplyTint:n(11104),BoundedSampler:n(81556),ColorMatrixFrag:n(96293),DefineBlockyTexCoord:n(78390),DefineLights:n(11719),DefineTexCoordFrameClamp:n(14030),FilterBarrelFrag:n(10235),FilterBlendFrag:n(65980),FilterBlockyFrag:n(5899),FilterBlurHighFrag:n(20784),FilterBlurLowFrag:n(65122),FilterBlurMedFrag:n(60942),FilterBokehFrag:n(43722),FilterColorMatrixFrag:n(19883),FilterCombineColorMatrixFrag:n(32624),FilterDisplacementFrag:n(12886),FilterGlowFrag:n(33016),FilterGradientMapFrag:n(33179),FilterImageLightFrag:n(94526),FilterKeyFrag:n(4488),FilterMaskFrag:n(39603),FilterNormalToolsFrag:n(60047),FilterPanoramaBlurFrag:n(7529),FilterPixelateFrag:n(99191),FilterQuantizeFrag:n(88430),FilterShadowFrag:n(69355),FilterThresholdFrag:n(92636),FilterVignetteFrag:n(18185),FilterWipeFrag:n(99174),FlatFrag:n(73416),FlatVert:n(91627),GetNormalFromMap:n(84220),GetTexRes:n(2860),GetTexture:n(46432),GradientFrag:n(41509),MultiFrag:n(98840),MultiVert:n(44667),NoiseFrag:n(16421),NoiseSimplex2DFrag:n(83587),NoiseSimplex3DFrag:n(13460),NoiseWorley2DFrag:n(17205),NoiseWorley3DFrag:n(79814),NoiseWorley4DFrag:n(99595),OutInverseRotation:n(62807),PointLightFrag:n(4127),PointLightVert:n(89924),Ramp:n(68589),ShaderQuadFrag:n(72823),ShaderQuadVert:n(65884),SimpleTextureVert:n(2807),SpriteGPULayerFrag:n(49119),SpriteGPULayerVert:n(3524),TilemapGPULayerFrag:n(57532),TilemapGPULayerVert:n(23879)}},26128(e,t,n){e.exports=new(n(83419))({initialize:function(e,t,n,r){this.renderer=e,this.webGLBuffer=null,this.dataBuffer=t,this.viewF32=null,this.viewU8=new Uint8Array(t),this.viewU16=null,this.viewU32=null,this.bufferType=n,this.bufferUsage=r,this.createViews(),this.createResource()},createResource:function(){var e=this.renderer.gl,t=this.bufferType,n=e.createBuffer();this.webGLBuffer=n,this.bind(),e.bufferData(t,this.dataBuffer,this.bufferUsage),this.bind(!0)},bind:function(e){var t=this.renderer.gl,n=this.bufferType,r=e?null:this;n===t.ARRAY_BUFFER?this.renderer.glWrapper.updateBindingsArrayBuffer({bindings:{arrayBuffer:r}}):n===t.ELEMENT_ARRAY_BUFFER&&this.renderer.glWrapper.updateBindingsElementArrayBuffer({bindings:{elementArrayBuffer:r}})},update:function(e,t){var n=this.renderer.gl;this.bind(),t===void 0&&(t=0),e===void 0?n.bufferSubData(this.bufferType,t,this.dataBuffer):n.bufferSubData(this.bufferType,t,this.viewU8.subarray(t,t+e))},resize:function(e){var t=this.renderer.gl;this.dataBuffer=new ArrayBuffer(e),this.createViews(),this.bind(),t.bufferData(this.bufferType,this.dataBuffer,this.bufferUsage)},createViews:function(){var e=this.dataBuffer;this.viewF32=null,e.byteLength%Float32Array.BYTES_PER_ELEMENT===0&&(this.viewF32=new Float32Array(e)),this.viewU8=new Uint8Array(e),this.viewU16=null,e.byteLength%Uint16Array.BYTES_PER_ELEMENT===0&&(this.viewU16=new Uint16Array(e)),this.viewU32=null,e.byteLength%Uint32Array.BYTES_PER_ELEMENT===0&&(this.viewU32=new Uint32Array(e))},destroy:function(){this.renderer.gl.deleteBuffer(this.webGLBuffer),this.webGLBuffer=null,this.dataBuffer=null,this.viewF32=null,this.viewU8=null,this.viewU16=null,this.viewU32=null,this.renderer=null}})},84387(e,t,n){var r=n(83419),i={36054:`Incomplete Attachment`,36055:`Missing Attachment`,36057:`Incomplete Dimensions`,36061:`Framebuffer Unsupported`};e.exports=new r({initialize:function(e,t,n,r){var i=e.gl;if(this.webGLFramebuffer=null,this.renderer=e,this.useCanvas=!t||t.length===0,this.width=0,this.height=0,this.attachments=[],!this.useCanvas){for(var a=0;a<t.length;a++)if(this.attachments.push({texture:t[a],attachmentPoint:i.COLOR_ATTACHMENT0+a}),a===0)this.width=t[a].width,this.height=t[a].height;else if(t[a].width!==this.width||t[a].height!==this.height)throw Error(`Color attachments must have the same dimensions`);r&&n?this.attachments.push({attachmentPoint:i.DEPTH_STENCIL_ATTACHMENT,internalFormat:i.DEPTH_STENCIL}):r?this.attachments.push({attachmentPoint:i.DEPTH_ATTACHMENT,internalFormat:i.DEPTH_COMPONENT16}):n&&this.attachments.push({attachmentPoint:i.STENCIL_ATTACHMENT,internalFormat:i.STENCIL_INDEX8})}this.renderTexture=null,this.attachments[0]&&(this.renderTexture=this.attachments[0].texture),this.createResource()},createResource:function(){if(!this.useCanvas){var e=this.renderer,t=e.glWrapper,n=e.gl;if(this.webGLFramebuffer){n.deleteFramebuffer(this.webGLFramebuffer);for(var r=0;r<this.attachments.length;r++){var a=this.attachments[r];a.texture||n.deleteRenderbuffer(a.renderbuffer)}}var o=n.createFramebuffer();for(this.webGLFramebuffer=o,t.updateBindingsFramebuffer({bindings:{framebuffer:this}},!0),r=0;r<this.attachments.length;r++){a=this.attachments[r];var s=a.attachmentPoint,c=a.texture;if(c)c.isRenderTexture=!0,n.framebufferTexture2D(n.FRAMEBUFFER,s,n.TEXTURE_2D,c.webGLTexture,0);else{var l=n.checkFramebufferStatus(n.FRAMEBUFFER);if(l!==n.FRAMEBUFFER_COMPLETE)throw Error(`Framebuffer status: `+(i[l]||l));var u=n.createRenderbuffer();t.updateBindingsRenderbuffer({bindings:{renderbuffer:u}}),n.renderbufferStorage(n.RENDERBUFFER,a.internalFormat,this.width,this.height),n.framebufferRenderbuffer(n.FRAMEBUFFER,s,n.RENDERBUFFER,u),a.renderbuffer=u}}}},resize:function(e,t){this.useCanvas||(this.width=e,this.height=t,this.renderTexture.resize(e,t),this.createResource())},destroy:function(){if(this.renderer!==null){for(var e=this.renderer,t=e.gl,n=0;n<this.attachments.length;n++){var r=this.attachments[n];r.texture?(e.glWrapper.updateBindingsFramebuffer({bindings:{framebuffer:this}}),t.framebufferTexture2D(t.FRAMEBUFFER,r.attachmentPoint,t.TEXTURE_2D,null,0),e.deleteTexture(r.texture)):t.deleteRenderbuffer(r.renderbuffer)}t.deleteFramebuffer(this.webGLFramebuffer),e.glWrapper.updateBindingsFramebuffer({bindings:{framebuffer:null,renderbuffer:null}}),this.attachments.length=0,this.renderTexture=null,this.webGLFramebuffer=null,this.renderer=null}}})},37959(e,t,n){var r=n(83419),i=n(53314);e.exports=new r({initialize:function(e){this.renderer=e,this.state=i.getDefault(e)},update:function(e,t,n){if(e===void 0){if(!t)return;e=this.state}t===void 0&&(t=!1),n===void 0&&(n=!1),e.vao!==void 0&&!n&&this.updateVAO(e,t),e.bindings!==void 0&&this.updateBindings(e,t),e.blend!==void 0&&this.updateBlend(e,t),e.colorClearValue!==void 0&&this.updateColorClearValue(e,t),e.colorWritemask!==void 0&&this.updateColorWritemask(e,t),e.cullFace!==void 0&&this.updateCullFace(e,t),e.depthTest!==void 0&&this.updateDepthTest(e,t),e.scissor!==void 0&&this.updateScissor(e,t),e.stencil!==void 0&&this.updateStencil(e,t),e.texturing!==void 0&&this.updateTexturing(e,t),e.viewport!==void 0&&this.updateViewport(e,t),e.vao!==void 0&&n&&this.updateVAO(e,t)},updateBindings:function(e,t){var n=e.bindings;n.activeTexture!==void 0&&this.updateBindingsActiveTexture(e,t),n.arrayBuffer!==void 0&&this.updateBindingsArrayBuffer(e,t),n.elementArrayBuffer!==void 0&&this.updateBindingsElementArrayBuffer(e,t),n.framebuffer!==void 0&&this.updateBindingsFramebuffer(e,t),n.program!==void 0&&this.updateBindingsProgram(e,t),n.renderbuffer!==void 0&&this.updateBindingsRenderbuffer(e,t)},updateBindingsActiveTexture:function(e,t){var n=e.bindings.activeTexture,r=n!==this.state.bindings.activeTexture;if(r&&(this.state.bindings.activeTexture=n),r||t){var i=this.renderer.gl;i.activeTexture(i.TEXTURE0+n)}},updateBindingsArrayBuffer:function(e,t){var n=e.bindings.arrayBuffer,r=this.renderer.gl;if(n!==null&&n.bufferType!==r.ARRAY_BUFFER)throw Error(`Invalid buffer type for ARRAY_BUFFER`);var i=n!==this.state.bindings.arrayBuffer;if(i&&(this.state.bindings.arrayBuffer=n),i||t){var a=n?n.webGLBuffer:null;r.bindBuffer(r.ARRAY_BUFFER,a)}},updateBindingsElementArrayBuffer:function(e,t){var n=e.bindings.elementArrayBuffer,r=this.renderer.gl;if(n!==null&&n.bufferType!==r.ELEMENT_ARRAY_BUFFER)throw Error(`Invalid buffer type for ELEMENT_ARRAY_BUFFER`);var i=n!==this.state.bindings.elementArrayBuffer;if(i&&(this.state.bindings.elementArrayBuffer=n),i||t){var a=n?n.webGLBuffer:null;r.bindBuffer(r.ELEMENT_ARRAY_BUFFER,a)}},updateBindingsFramebuffer:function(e,t){var n=e.bindings.framebuffer,r=n!==this.state.bindings.framebuffer;if(r&&(this.state.bindings.framebuffer=n),r||t){var i=this.renderer.gl,a=n?n.webGLFramebuffer:null;i.bindFramebuffer(i.FRAMEBUFFER,a)}},updateBindingsProgram:function(e,t){var n=e.bindings.program,r=n!==this.state.bindings.program;if(r&&(this.state.bindings.program=n),r||t){var i=n?n.webGLProgram:null;this.renderer.gl.useProgram(i)}},updateBindingsRenderbuffer:function(e,t){var n=e.bindings.renderbuffer,r=n!==this.state.bindings.renderbuffer;if(r&&(this.state.bindings.renderbuffer=n),r||t){var i=this.renderer.gl,a=n||null;i.bindRenderbuffer(i.RENDERBUFFER,a)}},updateBlend:function(e,t){var n=e.blend;n.enabled!==void 0&&this.updateBlendEnabled(e,t),n.color!==void 0&&this.updateBlendColor(e,t),n.equation!==void 0&&this.updateBlendEquation(e,t),n.func!==void 0&&this.updateBlendFunc(e,t)},updateBlendColor:function(e,t){var n=e.blend.color,r=n[0],i=n[1],a=n[2],o=n[3],s=r!==this.state.blend.color[0]||i!==this.state.blend.color[1]||a!==this.state.blend.color[2]||o!==this.state.blend.color[3];s&&(this.state.blend.color=[r,i,a,o]),(s||t)&&this.renderer.gl.blendColor(r,i,a,o)},updateBlendEnabled:function(e,t){var n=e.blend.enabled,r=n!==this.state.blend.enabled;if(r&&(this.state.blend.enabled=n),r||t){var i=this.renderer.gl;n?i.enable(i.BLEND):i.disable(i.BLEND)}},updateBlendEquation:function(e,t){var n=e.blend.equation,r=n[0]!==this.state.blend.equation[0]||n[1]!==this.state.blend.equation[1];r&&(this.state.blend.equation=[n[0],n[1]]),(r||t)&&this.renderer.gl.blendEquationSeparate(n[0],n[1])},updateBlendFunc:function(e,t){var n=e.blend.func,r=n[0]!==this.state.blend.func[0]||n[1]!==this.state.blend.func[1]||n[2]!==this.state.blend.func[2]||n[3]!==this.state.blend.func[3];r&&(this.state.blend.func=[n[0],n[1],n[2],n[3]]),(r||t)&&this.renderer.gl.blendFuncSeparate(n[0],n[1],n[2],n[3])},updateColorClearValue:function(e,t){var n=e.colorClearValue,r=n[0],i=n[1],a=n[2],o=n[3],s=r!==this.state.colorClearValue[0]||i!==this.state.colorClearValue[1]||a!==this.state.colorClearValue[2]||o!==this.state.colorClearValue[3];s&&(this.state.colorClearValue=[r,i,a,o]),(s||t)&&this.renderer.gl.clearColor(r,i,a,o)},updateColorWritemask:function(e,t){var n=e.colorWritemask,r=n[0],i=n[1],a=n[2],o=n[3],s=r!==this.state.colorWritemask[0]||i!==this.state.colorWritemask[1]||a!==this.state.colorWritemask[2]||o!==this.state.colorWritemask[3];s&&(this.state.colorWritemask=[r,i,a,o]),(s||t)&&this.renderer.gl.colorMask(r,i,a,o)},updateCullFace:function(e,t){var n=!!e.cullFace,r=n!==this.state.cullFace;if(r&&(this.state.cullFace=n),r||t){var i=this.renderer.gl;n?i.enable(i.CULL_FACE):i.disable(i.CULL_FACE)}},updateDepthTest:function(e,t){var n=!!e.depthTest,r=n!==this.state.depthTest;if(r&&(this.state.depthTest=n),r||t){var i=this.renderer.gl;n?i.enable(i.DEPTH_TEST):i.disable(i.DEPTH_TEST)}},updateScissor:function(e,t){var n=e.scissor;n.enable!==void 0&&this.updateScissorEnabled(e,t),n.box!==void 0&&this.updateScissorBox(e,t)},updateScissorEnabled:function(e,t){var n=e.scissor.enable,r=n!==this.state.scissor.enable;if(r&&(this.state.scissor.enable=n),r||t){var i=this.renderer.gl;n?i.enable(i.SCISSOR_TEST):i.disable(i.SCISSOR_TEST)}},updateScissorBox:function(e,t){var n=e.scissor.box,r=n[0],i=n[1],a=n[2],o=n[3],s=r!==this.state.scissor.box[0]||i!==this.state.scissor.box[1]||a!==this.state.scissor.box[2]||o!==this.state.scissor.box[3];s&&(this.state.scissor.box=[r,i,a,o]),(s||t)&&this.renderer.gl.scissor(r,i,a,o)},updateStencil:function(e,t){var n=e.stencil;n.clear!==void 0&&this.updateStencilClear(e,t),n.enabled!==void 0&&this.updateStencilEnabled(e,t),n.func!==void 0&&this.updateStencilFunc(e,t),n.op!==void 0&&this.updateStencilOp(e,t)},updateStencilClear:function(e,t){var n=e.stencil.clear,r=n!==this.state.stencil.clear;r&&(this.state.stencil.clear=n),(r||t)&&this.renderer.gl.clearStencil(n)},updateStencilEnabled:function(e,t){var n=e.stencil.enabled,r=n!==this.state.stencil.enabled;if(r&&(this.state.stencil.enabled=n),r||t){var i=this.renderer.gl;n?i.enable(i.STENCIL_TEST):i.disable(i.STENCIL_TEST)}},updateStencilFunc:function(e,t){var n=e.stencil.func,r=n.func!==this.state.stencil.func.func||n.ref!==this.state.stencil.func.ref||n.mask!==this.state.stencil.func.mask;r&&(this.state.stencil.func={func:n.func,ref:n.ref,mask:n.mask}),(r||t)&&this.renderer.gl.stencilFunc(n.func,n.ref,n.mask)},updateStencilOp:function(e,t){var n=e.stencil.op,r=n.fail!==this.state.stencil.op.fail||n.zfail!==this.state.stencil.op.zfail||n.zpass!==this.state.stencil.op.zpass;r&&(this.state.stencil.op={fail:n.fail,zfail:n.zfail,zpass:n.zpass}),(r||t)&&this.renderer.gl.stencilOp(n.fail,n.zfail,n.zpass)},updateTexturing:function(e,t){var n=e.texturing;n.flipY!==void 0&&this.updateTexturingFlipY(e,t),n.premultiplyAlpha!==void 0&&this.updateTexturingPremultiplyAlpha(e,t)},updateTexturingFlipY:function(e,t){var n=e.texturing.flipY,r=n!==this.state.texturing.flipY;if(r&&(this.state.texturing.flipY=n),r||t){var i=this.renderer.gl;i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,n)}},updateTexturingPremultiplyAlpha:function(e,t){var n=e.texturing.premultiplyAlpha,r=n!==this.state.texturing.premultiplyAlpha;if(r&&(this.state.texturing.premultiplyAlpha=n),r||t){var i=this.renderer.gl;i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,n)}},updateVAO:function(e,t){var n=e.vao,r=n!==this.state.vao;if(r&&(this.state.vao=n),r||t){var i=this.renderer.gl;n?i.bindVertexArray(n.vertexArrayObject):i.bindVertexArray(null)}},updateViewport:function(e,t){var n=e.viewport,r=n[0],i=n[1],a=n[2],o=n[3],s=r!==this.state.viewport[0]||i!==this.state.viewport[1]||a!==this.state.viewport[2]||o!==this.state.viewport[3];s&&(this.state.viewport=[r,i,a,o]),(s||t)&&this.renderer.gl.viewport(r,i,a,o)}})},1482(e,t,n){var r=n(90330),i=n(83419);function a(e,t){return!(e===t||(Number.isNaN(e)||e===void 0)&&(Number.isNaN(t)||t===void 0))}e.exports=new i({initialize:function(e,t,n){this.renderer=e,this.webGLProgram=null,this.compiling=!1,this._compileStartTime=0,this.compileTimeMs=0,this.glState={bindings:{program:this}},this.vertexSource=t,this.fragmentSource=n,this._vertexShader=null,this._fragmentShader=null,this.glAttributes=[],this.glAttributeNames=new r,this.glAttributeBuffer=null,this.glUniforms=new r,this.uniformRequests=new r,this.createResource()},createResource:function(){var e=this.renderer,t=e.gl;if(this.glAttributeBuffer=null,!t.isContextLost()){this.compiling=!0,this._compileStartTime=performance.now(),e.glWrapper.state.bindings.program===this&&e.glWrapper.updateBindingsProgram({bindings:{program:null}});var n=t.createProgram();this.webGLProgram=n;var r=t.createShader(t.VERTEX_SHADER),i=t.createShader(t.FRAGMENT_SHADER);this._vertexShader=r,this._fragmentShader=i,t.shaderSource(r,this.vertexSource),t.shaderSource(i,this.fragmentSource),t.compileShader(r),t.compileShader(i),t.attachShader(n,r),t.attachShader(n,i),t.linkProgram(n),e.game.config.skipUnreadyShaders||this._completeProgram()}},checkParallelCompile:function(){var e=this.renderer,t=e.gl,n=e.parallelShaderCompileExtension;!n||!t.getProgramParameter(this.webGLProgram,n.COMPLETION_STATUS_KHR)||this._completeProgram()},_completeProgram:function(){var e=this.webGLProgram,t=this.renderer.gl,n=this._vertexShader,r=this._fragmentShader,i=`Shader failed:
96
+ `;if(!t.getProgramParameter(e,t.LINK_STATUS))throw t.getShaderParameter(n,t.COMPILE_STATUS)?t.getShaderParameter(r,t.COMPILE_STATUS)?(console.log(this.vertexSource,this.fragmentSource),Error(`Link Shader failed:`+t.getProgramInfoLog(e))):(console.log(this.fragmentSource),Error(`Fragment `+i+t.getShaderInfoLog(r))):(console.log(this.vertexSource),Error(`Vertex `+i+t.getShaderInfoLog(n)));this._setupAttributesAndUniforms(),this.compileTimeMs=performance.now()-this._compileStartTime,this.compiling=!1},_setupAttributesAndUniforms:function(){var e=this.webGLProgram,t=this.renderer,n=t.gl,r=this;this.glAttributeNames.clear(),this.glAttributes.length=0;for(var i=n.getProgramParameter(e,n.ACTIVE_ATTRIBUTES),a=0;a<i;a++){var o=n.getActiveAttrib(e,a),s=n.getAttribLocation(e,o.name);this.glAttributeNames.set(o.name,a),this.glAttributes[a]={location:s,name:o.name,size:o.size,type:o.type}}this.glUniforms.each(function(e,t){r.uniformRequests.has(e)||r.uniformRequests.set(e,t.value)}),this.glUniforms.clear();var c=n.getProgramParameter(e,n.ACTIVE_UNIFORMS);for(a=0;a<c;a++){var l=n.getActiveUniform(e,a),u=t.shaderSetters.constants[l.type],d=0,f=l.size*u.size;f>1&&(d=u.baseType===n.FLOAT?new Float32Array(f):new Int32Array(f)),this.glUniforms.set(l.name,{location:n.getUniformLocation(e,l.name),size:l.size,type:l.type,value:d})}},setUniform:function(e,t){this.uniformRequests.set(e,t)},bind:function(){this.renderer.glWrapper.updateBindingsProgram(this.glState),this.uniformRequests.each(this._processUniformRequest.bind(this)),this.uniformRequests.clear()},_processUniformRequest:function(e,t){var n=this.renderer,r=n.gl,i=this.glUniforms.get(e);if(i){var o=i.value;if(o.length){for(var s=!1,c=0;c<o.length;c++)a(o[c],t[c])&&(s=!0,o[c]=t[c]);if(!s)return}else{if(!a(o,t))return;o=t,i.value=t}var l=i.location,u=i.type,d=i.size,f=n.shaderSetters.constants[u];if(f.isMatrix)f.set.call(r,l,!1,o);else if(d>1)f.setV.call(r,l,o);else switch(f.size){case 1:f.set.call(r,l,t);break;case 2:f.set.call(r,l,t[0],t[1]);break;case 3:f.set.call(r,l,t[0],t[1],t[2]);break;case 4:f.set.call(r,l,t[0],t[1],t[2],t[3]);break}}},destroy:function(){if(this.webGLProgram){var e=this.renderer.gl;if(!e.isContextLost()){this._vertexShader&&e.deleteShader(this._vertexShader),this._fragmentShader&&e.deleteShader(this._fragmentShader),e.deleteProgram(this.webGLProgram);for(var t=0;t<this.glAttributes.length;t++)e.disableVertexAttribArray(this.glAttributes[t].location);this.glAttributes.length=0,this.glUniforms.clear()}this.glAttributeBuffer=null,this.glAttributeNames.clear(),this.uniformRequests.clear(),this._vertexShader=null,this._fragmentShader=null,this.webGLProgram=null,this.renderer=null}}})},86272(e,t,n){e.exports=new(n(83419))({initialize:function(e){var t=e.gl;this.constants={5124:{constant:t.INT,baseType:t.INT,size:1,bytes:4,set:t.uniform1i,setV:t.uniform1iv,isMatrix:!1},35667:{constant:t.INT_VEC2,baseType:t.INT,size:2,bytes:4,set:t.uniform2i,setV:t.uniform2iv,isMatrix:!1},35668:{constant:t.INT_VEC3,baseType:t.INT,size:3,bytes:4,set:t.uniform3i,setV:t.uniform3iv,isMatrix:!1},35669:{constant:t.INT_VEC4,baseType:t.INT,size:4,bytes:4,set:t.uniform4i,setV:t.uniform4iv,isMatrix:!1},5126:{constant:t.FLOAT,baseType:t.FLOAT,size:1,bytes:4,set:t.uniform1f,setV:t.uniform1fv,isMatrix:!1},35664:{constant:t.FLOAT_VEC2,baseType:t.FLOAT,size:2,bytes:4,set:t.uniform2f,setV:t.uniform2fv,isMatrix:!1},35665:{constant:t.FLOAT_VEC3,baseType:t.FLOAT,size:3,bytes:4,set:t.uniform3f,setV:t.uniform3fv,isMatrix:!1},35666:{constant:t.FLOAT_VEC4,baseType:t.FLOAT,size:4,bytes:4,set:t.uniform4f,setV:t.uniform4fv,isMatrix:!1},5125:{constant:t.UNSIGNED_INT,baseType:t.UNSIGNED_INT,size:1,bytes:4,set:t.uniform1i,setV:t.uniform1iv,isMatrix:!1},5120:{constant:t.BYTE,baseType:t.BYTE,size:1,bytes:1,set:t.uniform1i,setV:t.uniform1iv,isMatrix:!1},5121:{constant:t.UNSIGNED_BYTE,baseType:t.UNSIGNED_BYTE,size:1,bytes:1,set:t.uniform1i,setV:t.uniform1iv,isMatrix:!1},5122:{constant:t.SHORT,baseType:t.SHORT,size:1,bytes:2,set:t.uniform1i,setV:t.uniform1iv,isMatrix:!1},5123:{constant:t.UNSIGNED_SHORT,baseType:t.UNSIGNED_SHORT,size:1,bytes:2,set:t.uniform1i,setV:t.uniform1iv,isMatrix:!1},35670:{constant:t.BOOL,baseType:t.BOOL,size:1,bytes:4,set:t.uniform1i,setV:t.uniform1iv,isMatrix:!1},35671:{constant:t.BOOL_VEC2,baseType:t.BOOL,size:2,bytes:4,set:t.uniform2i,setV:t.uniform2iv,isMatrix:!1},35672:{constant:t.BOOL_VEC3,baseType:t.BOOL,size:3,bytes:4,set:t.uniform3i,setV:t.uniform3iv,isMatrix:!1},35673:{constant:t.BOOL_VEC4,baseType:t.BOOL,size:4,bytes:4,set:t.uniform4i,setV:t.uniform4iv,isMatrix:!1},35674:{constant:t.FLOAT_MAT2,baseType:t.FLOAT,size:4,bytes:4,set:t.uniformMatrix2fv,setV:t.uniformMatrix2fv,isMatrix:!0},35675:{constant:t.FLOAT_MAT3,baseType:t.FLOAT,size:9,bytes:4,set:t.uniformMatrix3fv,setV:t.uniformMatrix3fv,isMatrix:!0},35676:{constant:t.FLOAT_MAT4,baseType:t.FLOAT,size:16,bytes:4,set:t.uniformMatrix4fv,setV:t.uniformMatrix4fv,isMatrix:!0},35678:{constant:t.SAMPLER_2D,baseType:t.INT,size:1,bytes:4,set:t.uniform1i,setV:t.uniform1iv,isMatrix:!1},35680:{constant:t.SAMPLER_CUBE,baseType:t.INT,size:1,bytes:4,set:t.uniform1i,setV:t.uniform1iv,isMatrix:!1}}}})},13760(e,t,n){e.exports=new(n(83419))({initialize:function(e){this.renderer=e,this.units=[],this.unitIndices=[],this.init()},init:function(){var e=this.renderer.gl;this.units.length=0,this.unitIndices.length=0;for(var t=e.createTexture(),n=this.renderer.maxTextures-1;n>=0;n--)this.units[n]=void 0,this.renderer.glWrapper.updateBindingsActiveTexture({bindings:{activeTexture:n}}),e.bindTexture(e.TEXTURE_2D,t),this.unitIndices[n]=n;e.texImage2D(e.TEXTURE_2D,0,e.RGBA,1,1,0,e.RGBA,e.UNSIGNED_BYTE,new Uint8Array([0,0,255,255]))},bind:function(e,t,n,r){var i=this.units[t]!==e;if((n||r!==!1||i)&&this.renderer.glWrapper.updateBindingsActiveTexture({bindings:{activeTexture:t}},n),!(!i&&!n)){this.units[t]=e;var a=e?e.webGLTexture:null,o=this.renderer.gl;o.bindTexture(o.TEXTURE_2D,a)}},bindUnits:function(e,t){for(var n=Math.min(e.length,this.renderer.maxTextures)-1;n>=0;n--)e[n]!==void 0&&this.bind(e[n],n,t,!1)},unbindTexture:function(e){for(var t=this.units.length-1;t>=0;t--)this.units[t]===e&&this.bind(null,t,!0,!1)},unbindAllUnits:function(){for(var e=this.units.length-1;e>=0;e--)this.bind(null,e,!0,!1)}})},82751(e,t,n){var r=n(83419),i=n(50030),a=new r({initialize:function(e,t,n,r,i,a,o,s,c,l,u,d,f){f===void 0&&(f=!0),this.renderer=e,this.webGLTexture=null,this.isRenderTexture=!1,this.mipLevel=t,this.minFilter=n,this.magFilter=r,this.wrapT=i,this.wrapS=a,this.format=o,this.pixels=s,this.width=c,this.height=l,this.pma=u??!0,this.forceSize=!!d,this.flipY=!!f,this.__SPECTOR_Metadata={},this.batchUnit=-1,this.createResource()},createResource:function(){var e=this.renderer.gl;if(!e.isContextLost()){if(this.pixels instanceof a){this.webGLTexture=this.pixels.webGLTexture;return}var t=e.createTexture();t.__SPECTOR_Metadata=this.__SPECTOR_Metadata,this.webGLTexture=t,this._processTexture()}},resize:function(e,t){if(!(this.width===e&&this.height===t)){this.width=e,this.height=t;var n=this.renderer.gl;i(e,t)?(this.wrapS=n.REPEAT,this.wrapT=n.REPEAT):(this.wrapS=n.CLAMP_TO_EDGE,this.wrapT=n.CLAMP_TO_EDGE),this._processTexture()}},update:function(e,t,n,r,i,a,o,s,c){t===0||n===0||(this.pixels=e,this.width=t,this.height=n,this.flipY=r,this.wrapS=i,this.wrapT=a,this.minFilter=o,this.magFilter=s,this.format=c,this._processTexture())},_processTexture:function(){var e=this.renderer.gl;this.renderer.glTextureUnits.bind(this,0),this.renderer.glWrapper.updateTexturing({texturing:{flipY:this.flipY,premultiplyAlpha:this.pma}}),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,this.minFilter),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,this.magFilter),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,this.wrapS),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,this.wrapT);var t=this.pixels,n=this.mipLevel,r=this.width,a=this.height,o=this.format,s=!1;if(t==null)e.texImage2D(e.TEXTURE_2D,n,o,r,a,0,o,e.UNSIGNED_BYTE,null),s=i(r,a);else if(t.compressed){r=t.width,a=t.height,s=t.generateMipmap;for(var c=0;c<t.mipmaps.length;c++)e.compressedTexImage2D(e.TEXTURE_2D,c,t.internalFormat,t.mipmaps[c].width,t.mipmaps[c].height,0,t.mipmaps[c].data)}else t instanceof Uint8Array?(e.texImage2D(e.TEXTURE_2D,n,o,r,a,0,o,e.UNSIGNED_BYTE,t),s=i(r,a)):(this.forceSize||(r=t.width,a=t.height),e.texImage2D(e.TEXTURE_2D,n,o,o,e.UNSIGNED_BYTE,t),s=i(r,a));s&&e.generateMipmap(e.TEXTURE_2D)},spectorMetadata:{get:function(){return this.__SPECTOR_Metadata},set:function(e){this.__SPECTOR_Metadata=e,this.webGLTexture.__SPECTOR_Metadata=e}},destroy:function(){this.webGLTexture!==null&&(this.pixels instanceof a||this.renderer.gl.deleteTexture(this.webGLTexture),this.pixels=null,this.webGLTexture=null,this.renderer=null)}});e.exports=a},85788(e,t,n){e.exports=new(n(83419))({initialize:function(e,t,n,r){this.renderer=e,this.program=t,this.vertexArrayObject=null,this.indexBuffer=n,this.attributeBufferLayouts=r,this.glState={vao:this},this.createResource()},createResource:function(){var e=this.renderer.gl;this.vertexArrayObject=e.createVertexArray(),this.bind(),this.indexBuffer&&this.indexBuffer.bind();for(var t=this.program,n=t.glAttributes,r=t.glAttributeNames,i=0;i<this.attributeBufferLayouts.length;i++){var a=this.attributeBufferLayouts[i];a.buffer.bind();for(var o=a.layout.stride,s=a.layout.instanceDivisor,c=0;c<a.layout.layout.length;c++){var l=a.layout.layout[c],u=r.get(l.name);if(u!==void 0){l.location=n[u].location;for(var d=l.location,f=l.bytes||4,p=l.columns||1,m=l.normalized,h=l.offset,g=l.size,_=l.type,v=0;v<p;v++)e.enableVertexAttribArray(d+v),e.vertexAttribPointer(d+v,g,_,m,o,h+f*v*g),isNaN(s)||e.vertexAttribDivisor(d+v,s)}}}this.renderer.glWrapper.updateVAO({vao:null}),this.renderer.glWrapper.updateBindings({bindings:{arrayBuffer:null,elementArrayBuffer:null}})},bind:function(){this.renderer.glWrapper.updateVAO(this.glState)},destroy:function(){var e=this.renderer.gl;this.vertexArrayObject&&=(e.deleteVertexArray(this.vertexArrayObject),null),this.indexBuffer=null,this.attributeBufferLayouts=null,this.glState=null,this.renderer=null}})},40952(e,t,n){e.exports=new(n(83419))({initialize:function(e,t,n){this.renderer=e,this.layout=t,this.completeLayout(t);var r=t.stride*t.count;if(n&&n.byteLength<r)throw Error(`Buffer too small for layout`);this.buffer=n||e.createVertexBuffer(new ArrayBuffer(r),t.usage)},completeLayout:function(e){var t=this.renderer.gl,n=e.layout,r=this.renderer.shaderSetters.constants;typeof e.usage==`string`&&(e.usage=t[e.usage]);for(var i=0,a=0;a<n.length;a++){var o=n[a],s=o.size,c=o.columns||1;o.offset=i,typeof o.type==`string`&&(o.type=t[o.type]);var l=r[o.type],u=l.size,d=l.bytes;o.bytes=d,i+=s*c*d*u}e.stride=i}})},31884(e,t,n){e.exports={WebGLGlobalWrapper:n(37959),WebGLBufferWrapper:n(26128),WebGLProgramWrapper:n(1482),WebGLShaderSetterWrapper:n(86272),WebGLTextureWrapper:n(82751),WebGLTextureUnitsWrapper:n(13760),WebGLFramebufferWrapper:n(84387),WebGLVAOWrapper:n(85788),WebGLVertexBufferLayoutWrapper:n(40952)}},76531(e,t,n){var r=n(13560),i=n(83419),a=n(45319),o=n(50792),s=n(97480),c=n(8443),l=n(57811),u=n(74403),d=n(45818),f=n(29747),p=n(87841),m=n(86555),h=n(56583),g=n(26099),_=n(38058);e.exports=new i({Extends:o,initialize:function(e){o.call(this),this.game=e,this.canvas,this.canvasBounds=new p,this.parent=null,this.parentIsWindow=!1,this.parentSize=new m,this.gameSize=new m,this.baseSize=new m,this.displaySize=new m,this.scaleMode=r.SCALE_MODE.NONE,this.zoom=1,this._resetZoom=!1,this.displayScale=new g(1,1),this.autoRound=!1,this.autoCenter=r.CENTER.NO_CENTER,this.orientation=r.ORIENTATION.LANDSCAPE,this.fullscreen,this.fullscreenTarget=null,this._createdFullscreenTarget=!1,this.dirty=!1,this.resizeInterval=500,this._lastCheck=0,this._checkOrientation=!1,this.domlisteners={orientationChange:f,windowResize:f,fullScreenChange:f,fullScreenError:f}},preBoot:function(){this.parseConfig(this.game.config),this.game.events.once(c.BOOT,this.boot,this)},boot:function(){var e=this.game;this.canvas=e.canvas,this.fullscreen=e.device.fullscreen;var t=this.scaleMode;t!==r.SCALE_MODE.RESIZE&&t!==r.SCALE_MODE.EXPAND&&this.displaySize.setAspectMode(t),t===r.SCALE_MODE.NONE?this.resize(this.width,this.height):(this.getParentBounds(),this.parentSize.width>0&&this.parentSize.height>0&&this.displaySize.setParent(this.parentSize),this.refresh()),e.events.on(c.PRE_STEP,this.step,this),e.events.once(c.READY,this.refresh,this),e.events.once(c.DESTROY,this.destroy,this),this.startListeners()},parseConfig:function(e){this.getParent(e),this.getParentBounds();var t=e.width,n=e.height,i=e.scaleMode,a=e.zoom,o=e.autoRound;if(typeof t==`string`)if(t.substr(-1)!==`%`)t=parseInt(t,10);else{var s=this.parentSize.width;s===0&&(s=window.innerWidth);var c=parseInt(t,10)/100;t=Math.floor(s*c)}if(typeof n==`string`)if(n.substr(-1)!==`%`)n=parseInt(n,10);else{var l=this.parentSize.height;l===0&&(l=window.innerHeight);var u=parseInt(n,10)/100;n=Math.floor(l*u)}this.scaleMode=i,this.autoRound=o,this.autoCenter=e.autoCenter,this.resizeInterval=e.resizeInterval,o&&(t=Math.floor(t),n=Math.floor(n)),this.gameSize.setSize(t,n),a===r.ZOOM.MAX_ZOOM&&(a=this.getMaxZoom()),this.zoom=a,a!==1&&(this._resetZoom=!0),this.baseSize.setSize(t,n),o&&(this.baseSize.width=Math.floor(this.baseSize.width),this.baseSize.height=Math.floor(this.baseSize.height)),e.minWidth>0&&this.displaySize.setMin(e.minWidth*a,e.minHeight*a),e.maxWidth>0&&this.displaySize.setMax(e.maxWidth*a,e.maxHeight*a),this.displaySize.setSize(t,n),(e.snapWidth>0||e.snapHeight>0)&&this.displaySize.setSnap(e.snapWidth,e.snapHeight),this.orientation=d(t,n)},getParent:function(e){var t=e.parent;if(t!==null){if(this.parent=u(t),this.parentIsWindow=this.parent===document.body,e.expandParent&&e.scaleMode!==r.SCALE_MODE.NONE){var n=this.parent.getBoundingClientRect();(this.parentIsWindow||n.height===0)&&(document.documentElement.style.height=`100%`,document.body.style.height=`100%`,n=this.parent.getBoundingClientRect(),!this.parentIsWindow&&n.height===0&&(this.parent.style.overflow=`hidden`,this.parent.style.width=`100%`,this.parent.style.height=`100%`))}e.fullscreenTarget&&!this.fullscreenTarget&&(this.fullscreenTarget=u(e.fullscreenTarget))}},getParentBounds:function(){if(!this.parent)return!1;var e=this.parentSize,t=this.parent.getBoundingClientRect();this.parentIsWindow&&this.game.device.os.iOS&&(t.height=l(!0));var n=t.width,r=t.height;if(e.width!==n||e.height!==r)return e.setSize(n,r),!0;if(this.canvas){var i=this.canvasBounds,a=this.canvas.getBoundingClientRect();if(a.x!==i.x||a.y!==i.y)return!0}return!1},lockOrientation:function(e){var t=screen.lockOrientation||screen.mozLockOrientation||screen.msLockOrientation;return t?t.call(screen,e):!1},setParentSize:function(e,t){return this.parentSize.setSize(e,t),this.refresh()},setGameSize:function(e,t){var n=this.autoRound;n&&(e=Math.floor(e),t=Math.floor(t));var r=this.width,i=this.height;return this.gameSize.resize(e,t),this.baseSize.resize(e,t),n&&(this.baseSize.width=Math.floor(this.baseSize.width),this.baseSize.height=Math.floor(this.baseSize.height)),this.displaySize.setAspectRatio(e/t),this.canvas.width=this.baseSize.width,this.canvas.height=this.baseSize.height,this.refresh(r,i)},resize:function(e,t){var n=this.zoom,r=this.autoRound;r&&(e=Math.floor(e),t=Math.floor(t));var i=this.width,a=this.height;this.gameSize.resize(e,t),this.baseSize.resize(e,t),r&&(this.baseSize.width=Math.floor(this.baseSize.width),this.baseSize.height=Math.floor(this.baseSize.height)),this.displaySize.setSize(e*n,t*n),this.canvas.width=this.baseSize.width,this.canvas.height=this.baseSize.height;var o=this.canvas.style,s=e*n,c=t*n;return r&&(s=Math.floor(s),c=Math.floor(c)),(s!==e||c!==t)&&(o.width=s+`px`,o.height=c+`px`),this.refresh(i,a)},setZoom:function(e){return this.zoom=e,this._resetZoom=!0,this.refresh()},setMaxZoom:function(){return this.zoom=this.getMaxZoom(),this._resetZoom=!0,this.refresh()},setSnap:function(e,t){return e===void 0&&(e=0),t===void 0&&(t=e),this.displaySize.setSnap(e,t),this.refresh()},refresh:function(e,t){e===void 0&&(e=this.width),t===void 0&&(t=this.height),this.updateScale(),this.updateBounds(),this.updateOrientation(),this.displayScale.set(this.baseSize.width/this.canvasBounds.width,this.baseSize.height/this.canvasBounds.height);var n=this.game.domContainer;if(n){this.baseSize.setCSS(n);var r=this.canvas.style,i=n.style;i.transform=`scale(`+this.displaySize.width/this.baseSize.width+`,`+this.displaySize.height/this.baseSize.height+`)`,i.marginLeft=r.marginLeft,i.marginTop=r.marginTop}return this.emit(s.RESIZE,this.gameSize,this.baseSize,this.displaySize,e,t),this},updateOrientation:function(){if(this._checkOrientation){this._checkOrientation=!1;var e=d(this.width,this.height);e!==this.orientation&&(this.orientation=e,this.emit(s.ORIENTATION_CHANGE,e))}},updateScale:function(){var e=this.canvas.style,t=this.gameSize.width,n=this.gameSize.height,i,o,s=this.zoom,c=this.autoRound;if(this.scaleMode===r.SCALE_MODE.NONE)this.displaySize.setSize(t*s,n*s),i=this.displaySize.width,o=this.displaySize.height,c&&(i=Math.floor(i),o=Math.floor(o)),this._resetZoom&&=(e.width=i+`px`,e.height=o+`px`,!1);else if(this.scaleMode===r.SCALE_MODE.RESIZE)this.displaySize.setSize(this.parentSize.width,this.parentSize.height),this.gameSize.setSize(this.displaySize.width,this.displaySize.height),this.baseSize.setSize(this.displaySize.width,this.displaySize.height),i=this.displaySize.width,o=this.displaySize.height,c&&(i=Math.floor(i),o=Math.floor(o)),this.canvas.width=i,this.canvas.height=o;else if(this.scaleMode===r.SCALE_MODE.EXPAND){var l=this.game.config.width,u=this.game.config.height,d=this.parentSize.width,f=this.parentSize.height,p=d/l,m=f/u,h,g;p<m?(h=l,g=p===0?u:f/p):(h=m===0?l:d/m,g=u);var _=a(h,this.displaySize.minWidth,this.displaySize.maxWidth),v=a(g,this.displaySize.minHeight,this.displaySize.maxHeight);this.baseSize.setSize(_,v),this.gameSize.setSize(_,v),c&&(_=Math.floor(_),v=Math.floor(v)),this.canvas.width=_,this.canvas.height=v;var y=_/h*d,b=v/g*f;this.displaySize.setSize(y,b),i=this.displaySize.width,o=this.displaySize.height,c&&(i=Math.floor(i),o=Math.floor(o)),e.width=i+`px`,e.height=o+`px`}else this.displaySize.setSize(this.parentSize.width,this.parentSize.height),i=this.displaySize.width,o=this.displaySize.height,c&&(i=Math.floor(i),o=Math.floor(o)),e.width=i+`px`,e.height=o+`px`;this.getParentBounds(),this.updateCenter()},getMaxZoom:function(){var e=h(this.parentSize.width,this.gameSize.width,0,!0),t=h(this.parentSize.height,this.gameSize.height,0,!0);return Math.max(Math.min(e,t),1)},updateCenter:function(){var e=this.autoCenter;if(e!==r.CENTER.NO_CENTER){var t=this.canvas,n=t.style,i=t.getBoundingClientRect(),a=i.width,o=i.height,s=Math.floor((this.parentSize.width-a)/2),c=Math.floor((this.parentSize.height-o)/2);e===r.CENTER.CENTER_HORIZONTALLY?c=0:e===r.CENTER.CENTER_VERTICALLY&&(s=0),n.marginLeft=s+`px`,n.marginTop=c+`px`}},updateBounds:function(){var e=this.canvasBounds,t=this.canvas.getBoundingClientRect();e.x=t.left+(window.pageXOffset||0)-(document.documentElement.clientLeft||0),e.y=t.top+(window.pageYOffset||0)-(document.documentElement.clientTop||0),e.width=t.width,e.height=t.height},transformX:function(e){return(e-this.canvasBounds.left)*this.displayScale.x},transformY:function(e){return(e-this.canvasBounds.top)*this.displayScale.y},startFullscreen:function(e){e===void 0&&(e={navigationUI:`hide`});var t=this.fullscreen;if(!t.available){this.emit(s.FULLSCREEN_UNSUPPORTED);return}if(!t.active){var n=this.getFullscreenTarget();t.keyboard?n[t.request](Element.ALLOW_KEYBOARD_INPUT):n[t.request](e)}},fullscreenSuccessHandler:function(){this.getParentBounds(),this.refresh(),this.emit(s.ENTER_FULLSCREEN)},fullscreenErrorHandler:function(e){this.removeFullscreenTarget(),this.emit(s.FULLSCREEN_FAILED,e)},getFullscreenTarget:function(){if(!this.fullscreenTarget){var e=document.createElement(`div`);e.style.margin=`0`,e.style.padding=`0`,e.style.width=`100%`,e.style.height=`100%`,this.fullscreenTarget=e,this._createdFullscreenTarget=!0}return this._createdFullscreenTarget&&(this.canvas.parentNode.insertBefore(this.fullscreenTarget,this.canvas),this.fullscreenTarget.appendChild(this.canvas)),this.fullscreenTarget},removeFullscreenTarget:function(){if(this._createdFullscreenTarget){var e=this.fullscreenTarget;if(e&&e.parentNode){var t=e.parentNode;t.insertBefore(this.canvas,e),t.removeChild(e)}}},stopFullscreen:function(){var e=this.fullscreen;if(!e.available)return this.emit(s.FULLSCREEN_UNSUPPORTED),!1;e.active&&document[e.cancel](),this.removeFullscreenTarget()},leaveFullScreenSuccessHandler:function(){this.getParentBounds(),this.emit(s.LEAVE_FULLSCREEN),this.refresh()},toggleFullscreen:function(e){this.fullscreen.active?this.stopFullscreen():this.startFullscreen(e)},startListeners:function(){var e=this,t=this.domlisteners;t.orientationChange=function(){e.updateBounds(),e._checkOrientation=!0,e.dirty=!0,e.refresh()},t.windowResize=function(){e.updateBounds(),e.dirty=!0},screen.orientation&&screen.orientation.addEventListener?screen.orientation.addEventListener(`change`,t.orientationChange,!1):window.addEventListener(`orientationchange`,t.orientationChange,!1),window.addEventListener(`resize`,t.windowResize,!1),this.fullscreen.available&&(t.fullScreenChange=function(t){return e.onFullScreenChange(t)},t.fullScreenError=function(t){return e.onFullScreenError(t)},[`webkit`,`moz`,``].forEach(function(e){document.addEventListener(e+`fullscreenchange`,t.fullScreenChange,!1),document.addEventListener(e+`fullscreenerror`,t.fullScreenError,!1)}),document.addEventListener(`MSFullscreenChange`,t.fullScreenChange,!1),document.addEventListener(`MSFullscreenError`,t.fullScreenError,!1))},onFullScreenChange:function(){document.fullscreenElement||document.webkitFullscreenElement||document.msFullscreenElement||document.mozFullScreenElement?this.fullscreenSuccessHandler():(this.stopFullscreen(),this.leaveFullScreenSuccessHandler())},onFullScreenError:function(){this.removeFullscreenTarget()},getViewPort:function(e,t){e instanceof _||(t=e,e=void 0),t===void 0&&(t=new p);var n=this.baseSize,r=this.parentSize,i=this.canvasBounds,a=this.displayScale,o=i.x>=0?0:-(i.x*a.x),s=i.y>=0?0:-(i.y*a.y),c=r.width>=i.width?n.width:n.width-(i.width-r.width)*a.x,l=r.height>=i.height?n.height:n.height-(i.height-r.height)*a.y;return t.setTo(o,s,c,l),e&&(t.width/=e.zoomX,t.height/=e.zoomY,t.centerX=e.centerX+e.scrollX,t.centerY=e.centerY+e.scrollY),t},step:function(e,t){this.parent&&(this._lastCheck+=t,(this.dirty||this._lastCheck>this.resizeInterval)&&(this.getParentBounds()&&this.refresh(),this.dirty=!1,this._lastCheck=0))},stopListeners:function(){var e=this.domlisteners;screen.orientation&&screen.orientation.addEventListener?screen.orientation.removeEventListener(`change`,e.orientationChange,!1):window.removeEventListener(`orientationchange`,e.orientationChange,!1),window.removeEventListener(`resize`,e.windowResize,!1),[`webkit`,`moz`,``].forEach(function(t){document.removeEventListener(t+`fullscreenchange`,e.fullScreenChange,!1),document.removeEventListener(t+`fullscreenerror`,e.fullScreenError,!1)}),document.removeEventListener(`MSFullscreenChange`,e.fullScreenChange,!1),document.removeEventListener(`MSFullscreenError`,e.fullScreenError,!1)},destroy:function(){this.removeAllListeners(),this.stopListeners(),this.game=null,this.canvas=null,this.canvasBounds=null,this.parent=null,this.fullscreenTarget=null,this.parentSize.destroy(),this.gameSize.destroy(),this.baseSize.destroy(),this.displaySize.destroy()},isFullscreen:{get:function(){return this.fullscreen.active}},width:{get:function(){return this.gameSize.width}},height:{get:function(){return this.gameSize.height}},isPortrait:{get:function(){return this.orientation===r.ORIENTATION.PORTRAIT}},isLandscape:{get:function(){return this.orientation===r.ORIENTATION.LANDSCAPE}},isGamePortrait:{get:function(){return this.height>this.width}},isGameLandscape:{get:function(){return this.width>this.height}}})},64743(e){e.exports={NO_CENTER:0,CENTER_BOTH:1,CENTER_HORIZONTALLY:2,CENTER_VERTICALLY:3}},39218(e){e.exports={LANDSCAPE:`landscape-primary`,LANDSCAPE_SECONDARY:`landscape-secondary`,PORTRAIT:`portrait-primary`,PORTRAIT_SECONDARY:`portrait-secondary`}},81050(e){e.exports={NONE:0,WIDTH_CONTROLS_HEIGHT:1,HEIGHT_CONTROLS_WIDTH:2,FIT:3,ENVELOP:4,RESIZE:5,EXPAND:6}},80805(e){e.exports={NO_ZOOM:1,ZOOM_2X:2,ZOOM_4X:4,MAX_ZOOM:-1}},13560(e,t,n){e.exports={CENTER:n(64743),ORIENTATION:n(39218),SCALE_MODE:n(81050),ZOOM:n(80805)}},56139(e){e.exports=`enterfullscreen`},2336(e){e.exports=`fullscreenfailed`},47412(e){e.exports=`fullscreenunsupported`},51452(e){e.exports=`leavefullscreen`},20666(e){e.exports=`orientationchange`},47945(e){e.exports=`resize`},97480(e,t,n){e.exports={ENTER_FULLSCREEN:n(56139),FULLSCREEN_FAILED:n(2336),FULLSCREEN_UNSUPPORTED:n(47412),LEAVE_FULLSCREEN:n(51452),ORIENTATION_CHANGE:n(20666),RESIZE:n(47945)}},93364(e,t,n){var r=n(79291),i=n(13560),a={Center:n(64743),Events:n(97480),Orientation:n(39218),ScaleManager:n(76531),ScaleModes:n(81050),Zoom:n(80805)};a=r(!1,a,i.CENTER),a=r(!1,a,i.ORIENTATION),a=r(!1,a,i.SCALE_MODE),a=r(!1,a,i.ZOOM),e.exports=a},27397(e,t,n){var r=n(95540),i=n(35355);e.exports=function(e){var t=e.game.config.defaultPhysicsSystem,n=r(e.settings,`physics`,!1);if(!(!t&&!n)){var a=[];if(t&&a.push(i(t+`Physics`)),n)for(var o in n)o=i(o.concat(`Physics`)),a.indexOf(o)===-1&&a.push(o);return a}}},52106(e,t,n){var r=n(95540);e.exports=function(e){var t=e.plugins.getDefaultScenePlugins(),n=r(e.settings,`plugins`,!1);return Array.isArray(n)?n:t||[]}},87033(e){e.exports={game:`game`,renderer:`renderer`,anims:`anims`,cache:`cache`,plugins:`plugins`,registry:`registry`,scale:`scale`,sound:`sound`,textures:`textures`,events:`events`,cameras:`cameras`,add:`add`,make:`make`,scenePlugin:`scene`,displayList:`children`,lights:`lights`,data:`data`,input:`input`,load:`load`,time:`time`,tweens:`tweens`,arcadePhysics:`physics`,matterPhysics:`matter`}},97482(e,t,n){var r=n(83419),i=n(2368);e.exports=new r({initialize:function(e){this.sys=new i(this,e),this.game,this.anims,this.cache,this.registry,this.sound,this.textures,this.events,this.cameras,this.add,this.make,this.scene,this.children,this.lights,this.data,this.input,this.load,this.time,this.tweens,this.physics,this.matter,this.scale,this.plugins,this.renderer},update:function(){}})},60903(e,t,n){var r=n(83419),i=n(89993),a=n(44594),o=n(8443),s=n(35154),c=n(54899),l=n(29747),u=n(97482),d=n(2368);e.exports=new r({initialize:function(e,t){if(this.game=e,this.keys={},this.scenes=[],this._pending=[],this._start=[],this._queue=[],this._data={},this.isProcessing=!1,this.isBooted=!1,this.customViewports=0,this.systemScene,t){Array.isArray(t)||(t=[t]);for(var n=0;n<t.length;n++)this._pending.push({key:`default`,scene:t[n],autoStart:n===0,data:{}})}e.events.once(o.READY,this.bootQueue,this)},bootQueue:function(){if(!this.isBooted){this.systemScene=this.createSceneFromInstance(`__SYSTEM`,new u),this.game.events.emit(o.SYSTEM_READY,this.systemScene,this);var e,t,n,r;for(e=0;e<this._pending.length;e++){t=this._pending[e],n=t.key,r=t.scene;var i;r instanceof u?i=this.createSceneFromInstance(n,r):typeof r==`object`?i=this.createSceneFromObject(n,r):typeof r==`function`&&(i=this.createSceneFromFunction(n,r)),n=i.sys.settings.key,this.keys[n]=i,this.scenes.push(i),this._data[n]&&(i.sys.settings.data=this._data[n].data,this._data[n].autoStart&&(t.autoStart=!0)),(t.autoStart||i.sys.settings.active)&&this._start.push(n)}for(this._pending.length=0,this._data={},this.isBooted=!0,e=0;e<this._start.length;e++)t=this._start[e],this.start(t);this._start.length=0}},processQueue:function(){var e=this._pending.length,t=this._queue.length;if(!(e===0&&t===0)){var n,r;if(e){for(n=0;n<e;n++)r=this._pending[n],this.add(r.key,r.scene,r.autoStart,r.data);for(n=0;n<this._start.length;n++)r=this._start[n],this.start(r);this._start.length=0,this._pending.length=0}for(n=0;n<this._queue.length;n++)r=this._queue[n],this[r.op](r.keyA,r.keyB,r.data);this._queue.length=0}},add:function(e,t,n,r){if(n===void 0&&(n=!1),r===void 0&&(r={}),this.isProcessing||!this.isBooted)return this._pending.push({key:e,scene:t,autoStart:n,data:r}),this.isBooted||(this._data[e]={data:r}),null;e=this.getKey(e,t);var i;return t instanceof u?i=this.createSceneFromInstance(e,t):typeof t==`object`?(t.key=e,i=this.createSceneFromObject(e,t)):typeof t==`function`&&(i=this.createSceneFromFunction(e,t)),i.sys.settings.data=r,e=i.sys.settings.key,this.keys[e]=i,this.scenes.push(i),(n||i.sys.settings.active)&&(this._pending.length?this._start.push(e):this.start(e)),i},remove:function(e){if(this.isProcessing)return this.queueOp(`remove`,e);var t=this.getScene(e);if(!t||t.sys.isTransitioning())return this;var n=this.scenes.indexOf(t),r=t.sys.settings.key;return n>-1&&(delete this.keys[r],this.scenes.splice(n,1),this._start.indexOf(r)>-1&&(n=this._start.indexOf(r),this._start.splice(n,1)),t.sys.destroy()),this},bootScene:function(e){var t=e.sys,n=t.settings;t.sceneUpdate=l,e.init&&(e.init.call(e,n.data),n.status=i.INIT,n.isTransition&&t.events.emit(a.TRANSITION_INIT,n.transitionFrom,n.transitionDuration));var r;t.load&&(r=t.load,r.reset()),r&&e.preload?(e.preload.call(e),n.status=i.LOADING,r.once(c.COMPLETE,this.loadComplete,this),r.start()):this.create(e)},loadComplete:function(e){this.create(e.scene)},payloadComplete:function(e){this.bootScene(e.scene)},update:function(e,t){this.processQueue(),this.isProcessing=!0;for(var n=this.scenes.length-1;n>=0;n--){var r=this.scenes[n].sys;r.settings.status>i.START&&r.settings.status<=i.RUNNING&&r.step(e,t),r.scenePlugin&&r.scenePlugin._target&&r.scenePlugin.step(e,t)}},render:function(e){for(var t=0;t<this.scenes.length;t++){var n=this.scenes[t].sys;n.settings.visible&&n.settings.status>=i.LOADING&&n.settings.status<i.SLEEPING&&n.render(e)}this.isProcessing=!1},create:function(e){var t=e.sys,n=t.settings;e.create&&(n.status=i.CREATING,e.create.call(e,n.data),n.status===i.DESTROYED)||(n.isTransition&&t.events.emit(a.TRANSITION_START,n.transitionFrom,n.transitionDuration),e.update&&(t.sceneUpdate=e.update),n.status=i.RUNNING,t.events.emit(a.CREATE,e))},createSceneFromFunction:function(e,t){var n=new t;if(n instanceof u){var r=n.sys.settings.key;if(r!==``&&(e=r),this.keys.hasOwnProperty(e))throw Error(`Cannot add Scene with duplicate key: `+e);return this.createSceneFromInstance(e,n)}else return n.sys=new d(n),n.sys.settings.key=e,n.sys.init(this.game),n},createSceneFromInstance:function(e,t){return t.sys.settings.key===``&&(t.sys.settings.key=e),t.sys.init(this.game),t},createSceneFromObject:function(e,t){var n=new u(t),r=n.sys.settings.key;r===``?n.sys.settings.key=e:e=r,n.sys.init(this.game);for(var i=[`init`,`preload`,`create`,`update`,`render`],a=0;a<i.length;a++){var o=s(t,i[a],null);o&&(n[i[a]]=o)}if(t.hasOwnProperty(`extend`)){for(var c in t.extend)if(t.extend.hasOwnProperty(c)){var l=t.extend[c];c===`data`&&n.hasOwnProperty(`data`)&&typeof l==`object`?n.data.merge(l):c!==`sys`&&(n[c]=l)}}return n},getKey:function(e,t){if(e||=`default`,typeof t==`function`)return e;if(t instanceof u?e=t.sys.settings.key:typeof t==`object`&&t.hasOwnProperty(`key`)&&(e=t.key),this.keys.hasOwnProperty(e))throw Error(`Cannot add Scene with duplicate key: `+e);return e},getScenes:function(e,t){e===void 0&&(e=!0),t===void 0&&(t=!1);for(var n=[],r=this.scenes,i=0;i<r.length;i++){var a=r[i];a&&(!e||e&&a.sys.isActive())&&n.push(a)}return t?n.reverse():n},getScene:function(e){if(typeof e==`string`){if(this.keys[e])return this.keys[e]}else for(var t=0;t<this.scenes.length;t++)if(e===this.scenes[t])return e;return null},isActive:function(e){var t=this.getScene(e);return t?t.sys.isActive():null},isPaused:function(e){var t=this.getScene(e);return t?t.sys.isPaused():null},isVisible:function(e){var t=this.getScene(e);return t?t.sys.isVisible():null},isSleeping:function(e){var t=this.getScene(e);return t?t.sys.isSleeping():null},pause:function(e,t){var n=this.getScene(e);return n&&n.sys.pause(t),this},resume:function(e,t){var n=this.getScene(e);return n&&n.sys.resume(t),this},sleep:function(e,t){var n=this.getScene(e);return n&&!n.sys.isTransitioning()&&n.sys.sleep(t),this},wake:function(e,t){var n=this.getScene(e);return n&&n.sys.wake(t),this},run:function(e,t){var n=this.getScene(e);if(!n){for(var r=0;r<this._pending.length;r++)if(this._pending[r].key===e){this.queueOp(`start`,e,t);break}return this}n.sys.isSleeping()?n.sys.wake(t):n.sys.isPaused()?n.sys.resume(t):this.start(e,t)},start:function(e,t){if(!this.isBooted)return this._data[e]={autoStart:!0,data:t},this;var n=this.getScene(e);if(!n)return console.warn(`Scene key not found: `+e),this;var r=n.sys,a=r.settings.status;if(a>=i.START&&a<=i.CREATING)return this;if(a>=i.RUNNING&&a<=i.SLEEPING)r.shutdown(),r.sceneUpdate=l,r.start(t);else{r.sceneUpdate=l,r.start(t);var o;if(r.load&&(o=r.load),o&&r.settings.hasOwnProperty(`pack`)&&(o.reset(),o.addPack({payload:r.settings.pack})))return r.settings.status=i.LOADING,o.once(c.COMPLETE,this.payloadComplete,this),o.start(),this}return this.bootScene(n),this},stop:function(e,t){var n=this.getScene(e);if(n&&!n.sys.isTransitioning()&&n.sys.settings.status!==i.SHUTDOWN){var r=n.sys.load;r&&(r.off(c.COMPLETE,this.loadComplete,this),r.off(c.COMPLETE,this.payloadComplete,this)),n.sys.shutdown(t)}return this},switch:function(e,t,n){var r=this.getScene(e),i=this.getScene(t);return r&&i&&r!==i&&(this.sleep(e),this.isSleeping(t)?this.wake(t,n):this.start(t,n)),this},getAt:function(e){return this.scenes[e]},getIndex:function(e){var t=this.getScene(e);return this.scenes.indexOf(t)},bringToTop:function(e){if(this.isProcessing)return this.queueOp(`bringToTop`,e);var t=this.getIndex(e),n=this.scenes;if(t!==-1&&t<n.length){var r=this.getScene(e);n.splice(t,1),n.push(r)}return this},sendToBack:function(e){if(this.isProcessing)return this.queueOp(`sendToBack`,e);var t=this.getIndex(e);if(t!==-1&&t>0){var n=this.getScene(e);this.scenes.splice(t,1),this.scenes.unshift(n)}return this},moveDown:function(e){if(this.isProcessing)return this.queueOp(`moveDown`,e);var t=this.getIndex(e);if(t>0){var n=t-1,r=this.getScene(e),i=this.getAt(n);this.scenes[t]=i,this.scenes[n]=r}return this},moveUp:function(e){if(this.isProcessing)return this.queueOp(`moveUp`,e);var t=this.getIndex(e);if(t<this.scenes.length-1){var n=t+1,r=this.getScene(e),i=this.getAt(n);this.scenes[t]=i,this.scenes[n]=r}return this},moveAbove:function(e,t){if(e===t)return this;if(this.isProcessing)return this.queueOp(`moveAbove`,e,t);var n=this.getIndex(e),r=this.getIndex(t);if(n!==-1&&r!==-1&&r<n){var i=this.getAt(r);this.scenes.splice(r,1),this.scenes.splice(n+(r>n),0,i)}return this},moveBelow:function(e,t){if(e===t)return this;if(this.isProcessing)return this.queueOp(`moveBelow`,e,t);var n=this.getIndex(e),r=this.getIndex(t);if(n!==-1&&r!==-1&&r>n){var i=this.getAt(r);this.scenes.splice(r,1),n===0?this.scenes.unshift(i):this.scenes.splice(n-(r<n),0,i)}return this},queueOp:function(e,t,n,r){return this._queue.push({op:e,keyA:t,keyB:n,data:r}),this},swapPosition:function(e,t){if(e===t)return this;if(this.isProcessing)return this.queueOp(`swapPosition`,e,t);var n=this.getIndex(e),r=this.getIndex(t);if(n!==r&&n!==-1&&r!==-1){var i=this.getAt(n);this.scenes[n]=this.scenes[r],this.scenes[r]=i}return this},dump:function(){for(var e=[],t=[`pending`,`init`,`start`,`loading`,`creating`,`running`,`paused`,`sleeping`,`shutdown`,`destroyed`],n=0;n<this.scenes.length;n++){var r=this.scenes[n].sys,a=r.settings.visible&&(r.settings.status===i.RUNNING||r.settings.status===i.PAUSED)?`[*] `:`[-] `;a+=r.settings.key+` (`+t[r.settings.status]+`)`,e.push(a)}console.log(e.join(`
97
+ `))},destroy:function(){for(var e=0;e<this.scenes.length;e++)this.scenes[e].sys.destroy();this.systemScene.sys.destroy(),this.update=l,this.scenes=[],this._pending=[],this._start=[],this._queue=[],this.game=null,this.systemScene=null}})},52209(e,t,n){var r=n(45319),i=n(83419),a=n(44594),o=n(95540),s=n(37277),c=new i({initialize:function(e){this.scene=e,this.systems=e.sys,this.settings=e.sys.settings,this.key=e.sys.settings.key,this.manager=e.sys.game.scene,this.transitionProgress=0,this._elapsed=0,this._target=null,this._duration=0,this._onUpdate,this._onUpdateScope,this._willSleep=!1,this._willRemove=!1,e.sys.events.once(a.BOOT,this.boot,this),e.sys.events.on(a.START,this.pluginStart,this)},boot:function(){this.systems.events.once(a.DESTROY,this.destroy,this)},pluginStart:function(){this._target=null,this.systems.events.once(a.SHUTDOWN,this.shutdown,this)},start:function(e,t){return e===void 0&&(e=this.key),this.manager.queueOp(`stop`,this.key),this.manager.queueOp(`start`,e,t),this},restart:function(e){var t=this.key;return this.manager.queueOp(`stop`,t),this.manager.queueOp(`start`,t,e),this},transition:function(e){e===void 0&&(e={});var t=o(e,`target`,!1),n=this.manager.getScene(t);if(!t||!this.checkValidTransition(n))return!1;var r=o(e,`duration`,1e3);this._elapsed=0,this._target=n,this._duration=r,this._willSleep=o(e,`sleep`,!1),this._willRemove=o(e,`remove`,!1);var i=o(e,`onUpdate`,null);i&&(this._onUpdate=i,this._onUpdateScope=o(e,`onUpdateScope`,this.scene));var s=o(e,`allowInput`,!1);this.settings.transitionAllowInput=s;var c=n.sys.settings;c.isTransition=!0,c.transitionFrom=this.scene,c.transitionDuration=r,c.transitionAllowInput=s,o(e,`moveAbove`,!1)?this.manager.moveAbove(this.key,t):o(e,`moveBelow`,!1)&&this.manager.moveBelow(this.key,t),n.sys.isSleeping()?n.sys.wake(o(e,`data`)):this.manager.start(t,o(e,`data`));var l=o(e,`onStart`,null),u=o(e,`onStartScope`,this.scene);return l&&l.call(u,this.scene,n,r),this.systems.events.emit(a.TRANSITION_OUT,n,r),!0},checkValidTransition:function(e){return!(!e||e.sys.isActive()||e.sys.isTransitioning()||e===this.scene||this.systems.isTransitioning())},step:function(e,t){this._elapsed+=t,this.transitionProgress=r(this._elapsed/this._duration,0,1),this._onUpdate&&this._onUpdate.call(this._onUpdateScope,this.transitionProgress),this._elapsed>=this._duration&&this.transitionComplete()},transitionComplete:function(){var e=this._target.sys,t=this._target.sys.settings;e.events.emit(a.TRANSITION_COMPLETE,this.scene),t.isTransition=!1,t.transitionFrom=null,this._duration=0,this._target=null,this._onUpdate=null,this._onUpdateScope=null,this._willRemove?this.manager.remove(this.key):this._willSleep?this.systems.sleep():this.manager.stop(this.key)},add:function(e,t,n,r){return this.manager.add(e,t,n,r)},launch:function(e,t){return e&&e!==this.key&&this.manager.queueOp(`start`,e,t),this},run:function(e,t){return e&&e!==this.key&&this.manager.queueOp(`run`,e,t),this},pause:function(e,t){return e===void 0&&(e=this.key),this.manager.queueOp(`pause`,e,t),this},resume:function(e,t){return e===void 0&&(e=this.key),this.manager.queueOp(`resume`,e,t),this},sleep:function(e,t){return e===void 0&&(e=this.key),this.manager.queueOp(`sleep`,e,t),this},wake:function(e,t){return e===void 0&&(e=this.key),this.manager.queueOp(`wake`,e,t),this},switch:function(e,t){return e!==this.key&&this.manager.queueOp(`switch`,this.key,e,t),this},stop:function(e,t){return e===void 0&&(e=this.key),this.manager.queueOp(`stop`,e,t),this},setActive:function(e,t,n){t===void 0&&(t=this.key);var r=this.manager.getScene(t);return r&&r.sys.setActive(e,n),this},setVisible:function(e,t){t===void 0&&(t=this.key);var n=this.manager.getScene(t);return n&&n.sys.setVisible(e),this},isSleeping:function(e){return e===void 0&&(e=this.key),this.manager.isSleeping(e)},isActive:function(e){return e===void 0&&(e=this.key),this.manager.isActive(e)},isPaused:function(e){return e===void 0&&(e=this.key),this.manager.isPaused(e)},isVisible:function(e){return e===void 0&&(e=this.key),this.manager.isVisible(e)},swapPosition:function(e,t){return t===void 0&&(t=this.key),e!==t&&this.manager.swapPosition(e,t),this},moveAbove:function(e,t){return t===void 0&&(t=this.key),e!==t&&this.manager.moveAbove(e,t),this},moveBelow:function(e,t){return t===void 0&&(t=this.key),e!==t&&this.manager.moveBelow(e,t),this},remove:function(e){return e===void 0&&(e=this.key),this.manager.remove(e),this},moveUp:function(e){return e===void 0&&(e=this.key),this.manager.moveUp(e),this},moveDown:function(e){return e===void 0&&(e=this.key),this.manager.moveDown(e),this},bringToTop:function(e){return e===void 0&&(e=this.key),this.manager.bringToTop(e),this},sendToBack:function(e){return e===void 0&&(e=this.key),this.manager.sendToBack(e),this},get:function(e){return this.manager.getScene(e)},getStatus:function(e){var t=this.manager.getScene(e);if(t)return t.sys.getStatus()},getIndex:function(e){return e===void 0&&(e=this.key),this.manager.getIndex(e)},shutdown:function(){var e=this.systems.events;e.off(a.SHUTDOWN,this.shutdown,this),e.off(a.TRANSITION_OUT)},destroy:function(){this.shutdown(),this.scene.sys.events.off(a.START,this.start,this),this.scene=null,this.systems=null,this.settings=null,this.manager=null}});s.register(`ScenePlugin`,c,`scenePlugin`),e.exports=c},55681(e,t,n){var r=n(89993),i=n(35154),a=n(46975),o=n(87033);e.exports={create:function(e){return typeof e==`string`?e={key:e}:e===void 0&&(e={}),{status:r.PENDING,key:i(e,`key`,``),active:i(e,`active`,!1),visible:i(e,`visible`,!0),isBooted:!1,isTransition:!1,transitionFrom:null,transitionDuration:0,transitionAllowInput:!0,data:{},pack:i(e,`pack`,!1),cameras:i(e,`cameras`,null),map:i(e,`map`,a(o,i(e,`mapAdd`,{}))),physics:i(e,`physics`,{}),loader:i(e,`loader`,{}),plugins:i(e,`plugins`,!1),input:i(e,`input`,{})}}}},2368(e,t,n){var r=n(83419),i=n(89993),a=n(42363),o=n(44594),s=n(27397),c=n(52106),l=n(29747),u=n(55681);e.exports=new r({initialize:function(e,t){this.scene=e,this.game,this.renderer,this.config=t,this.settings=u.create(t),this.canvas,this.context,this.anims,this.cache,this.plugins,this.registry,this.scale,this.sound,this.textures,this.add,this.cameras,this.displayList,this.events,this.make,this.scenePlugin,this.updateList,this.sceneUpdate=l},init:function(e){this.settings.status=i.INIT,this.sceneUpdate=l,this.game=e,this.renderer=e.renderer,this.canvas=e.canvas,this.context=e.context;var t=e.plugins;this.plugins=t,t.addToScene(this,a.Global,[a.CoreScene,c(this),s(this)]),this.events.emit(o.BOOT,this),this.settings.isBooted=!0},step:function(e,t){var n=this.events;n.emit(o.PRE_UPDATE,e,t),n.emit(o.UPDATE,e,t),this.sceneUpdate.call(this.scene,e,t),n.emit(o.POST_UPDATE,e,t)},render:function(e){var t=this.displayList;t.depthSort(),this.events.emit(o.PRE_RENDER,e),this.cameras.render(e,t),this.events.emit(o.RENDER,e)},queueDepthSort:function(){this.displayList.queueDepthSort()},depthSort:function(){this.displayList.depthSort()},pause:function(e){var t=this.settings,n=this.getStatus();return n!==i.CREATING&&n!==i.RUNNING?console.warn(`Cannot pause non-running Scene`,t.key):this.settings.active&&(t.status=i.PAUSED,t.active=!1,this.events.emit(o.PAUSE,this,e)),this},resume:function(e){var t=this.events,n=this.settings;return this.settings.active||(n.status=i.RUNNING,n.active=!0,t.emit(o.RESUME,this,e)),this},sleep:function(e){var t=this.settings,n=this.getStatus();return n!==i.CREATING&&n!==i.RUNNING?console.warn(`Cannot sleep non-running Scene`,t.key):(t.status=i.SLEEPING,t.active=!1,t.visible=!1,this.events.emit(o.SLEEP,this,e)),this},wake:function(e){var t=this.events,n=this.settings;return n.status=i.RUNNING,n.active=!0,n.visible=!0,t.emit(o.WAKE,this,e),n.isTransition&&t.emit(o.TRANSITION_WAKE,n.transitionFrom,n.transitionDuration),this},getData:function(){return this.settings.data},getStatus:function(){return this.settings.status},canInput:function(){var e=this.settings.status;return e>i.PENDING&&e<=i.RUNNING},isSleeping:function(){return this.settings.status===i.SLEEPING},isActive:function(){return this.settings.status===i.RUNNING},isPaused:function(){return this.settings.status===i.PAUSED},isTransitioning:function(){return this.settings.isTransition||this.scenePlugin._target!==null},isTransitionOut:function(){return this.scenePlugin._target!==null&&this.scenePlugin._duration>0},isTransitionIn:function(){return this.settings.isTransition},isVisible:function(){return this.settings.visible},setVisible:function(e){return this.settings.visible=e,this},setActive:function(e,t){return e?this.resume(t):this.pause(t)},start:function(e){var t=this.events,n=this.settings;e&&(n.data=e),n.status=i.START,n.active=!0,n.visible=!0,t.emit(o.START,this),t.emit(o.READY,this,e)},shutdown:function(e){var t=this.events,n=this.settings;t.off(o.TRANSITION_INIT),t.off(o.TRANSITION_START),t.off(o.TRANSITION_COMPLETE),t.off(o.TRANSITION_OUT),n.status=i.SHUTDOWN,n.active=!1,n.visible=!1,t.emit(o.SHUTDOWN,this,e)},destroy:function(){var e=this.events,t=this.settings;t.status=i.DESTROYED,t.active=!1,t.visible=!1,e.emit(o.DESTROY,this),e.removeAllListeners();for(var n=[`scene`,`game`,`anims`,`cache`,`plugins`,`registry`,`sound`,`textures`,`add`,`cameras`,`displayList`,`events`,`make`,`scenePlugin`,`updateList`],r=0;r<n.length;r++)this[n[r]]=null}})},89993(e){e.exports={PENDING:0,INIT:1,START:2,LOADING:3,CREATING:4,RUNNING:5,PAUSED:6,SLEEPING:7,SHUTDOWN:8,DESTROYED:9}},69830(e){e.exports=`addedtoscene`},7919(e){e.exports=`boot`},46763(e){e.exports=`create`},11763(e){e.exports=`destroy`},71555(e){e.exports=`pause`},36735(e){e.exports=`postupdate`},3809(e){e.exports=`prerender`},90716(e){e.exports=`preupdate`},58262(e){e.exports=`ready`},91633(e){e.exports=`removedfromscene`},10319(e){e.exports=`render`},87132(e){e.exports=`resume`},81961(e){e.exports=`shutdown`},90194(e){e.exports=`sleep`},6265(e){e.exports=`start`},33178(e){e.exports=`transitioncomplete`},43063(e){e.exports=`transitioninit`},11259(e){e.exports=`transitionout`},61611(e){e.exports=`transitionstart`},45209(e){e.exports=`transitionwake`},22966(e){e.exports=`update`},21747(e){e.exports=`wake`},44594(e,t,n){e.exports={ADDED_TO_SCENE:n(69830),BOOT:n(7919),CREATE:n(46763),DESTROY:n(11763),PAUSE:n(71555),POST_UPDATE:n(36735),PRE_RENDER:n(3809),PRE_UPDATE:n(90716),READY:n(58262),REMOVED_FROM_SCENE:n(91633),RENDER:n(10319),RESUME:n(87132),SHUTDOWN:n(81961),SLEEP:n(90194),START:n(6265),TRANSITION_COMPLETE:n(33178),TRANSITION_INIT:n(43063),TRANSITION_OUT:n(11259),TRANSITION_START:n(61611),TRANSITION_WAKE:n(45209),UPDATE:n(22966),WAKE:n(21747)}},62194(e,t,n){var r=n(89993),i=n(79291),a={Events:n(44594),GetPhysicsPlugins:n(27397),GetScenePlugins:n(52106),SceneManager:n(60903),ScenePlugin:n(52209),Settings:n(55681),Systems:n(2368)};a=i(!1,a,r),e.exports=a},30341(e,t,n){var r=n(83419),i=n(50792),a=n(14463),o=n(79291);e.exports=new r({Extends:i,initialize:function(e,t,n){i.call(this),this.manager=e,this.key=t,this.isPlaying=!1,this.isPaused=!1,this.totalRate=1,this.duration=this.duration||0,this.totalDuration=this.totalDuration||0,this.config={mute:!1,volume:1,rate:1,detune:0,seek:0,loop:!1,delay:0,pan:0},this.currentConfig=this.config,this.config=o(this.config,n),this.markers={},this.currentMarker=null,this.pendingRemove=!1},addMarker:function(e){return!e||!e.name||typeof e.name!=`string`?!1:this.markers[e.name]?(console.error(`addMarker `+e.name+` already exists in Sound`),!1):(e=o(!0,{name:``,start:0,duration:this.totalDuration-(e.start||0),config:{mute:!1,volume:1,rate:1,detune:0,seek:0,loop:!1,delay:0,pan:0}},e),this.markers[e.name]=e,!0)},updateMarker:function(e){return!e||!e.name||typeof e.name!=`string`?!1:this.markers[e.name]?(this.markers[e.name]=o(!0,this.markers[e.name],e),!0):(console.warn(`Audio Marker: `+e.name+` missing in Sound: `+this.key),!1)},removeMarker:function(e){var t=this.markers[e];return t?(this.markers[e]=null,t):null},play:function(e,t){if(e===void 0&&(e=``),typeof e==`object`&&(t=e,e=``),typeof e!=`string`)return!1;if(!e)this.currentMarker=null,this.currentConfig=this.config,this.duration=this.totalDuration;else{if(!this.markers[e])return console.warn(`Marker: `+e+` missing in Sound: `+this.key),!1;this.currentMarker=this.markers[e],this.currentConfig=this.currentMarker.config,this.duration=this.currentMarker.duration}return this.resetConfig(),this.currentConfig=o(this.currentConfig,t),this.isPlaying=!0,this.isPaused=!1,!0},pause:function(){return this.isPaused||!this.isPlaying?!1:(this.isPlaying=!1,this.isPaused=!0,!0)},resume:function(){return!this.isPaused||this.isPlaying?!1:(this.isPlaying=!0,this.isPaused=!1,!0)},stop:function(){return!this.isPaused&&!this.isPlaying?!1:(this.isPlaying=!1,this.isPaused=!1,this.resetConfig(),!0)},applyConfig:function(){this.mute=this.currentConfig.mute,this.volume=this.currentConfig.volume,this.rate=this.currentConfig.rate,this.detune=this.currentConfig.detune,this.loop=this.currentConfig.loop,this.pan=this.currentConfig.pan},resetConfig:function(){this.currentConfig.seek=0,this.currentConfig.delay=0},update:n(29747),calculateRate:function(){var e=1.0005777895065548**(this.currentConfig.detune+this.manager.detune);this.totalRate=this.currentConfig.rate*this.manager.rate*e},destroy:function(){this.pendingRemove||(this.stop(),this.emit(a.DESTROY,this),this.removeAllListeners(),this.pendingRemove=!0,this.manager=null,this.config=null,this.currentConfig=null,this.markers=null,this.currentMarker=null)}})},85034(e,t,n){var r=n(83419),i=n(41786),a=n(50792),o=n(14463),s=n(8443),c=n(46710),l=n(58731),u=n(29747),d=n(26099);e.exports=new r({Extends:a,initialize:function(e){a.call(this),this.game=e,this.jsonCache=e.cache.json,this.sounds=[],this.mute=!1,this.volume=1,this.pauseOnBlur=!0,this._rate=1,this._detune=0,this.locked=this.locked||!1,this.unlocked=!1,this.gameLostFocus=!1,this.listenerPosition=new d;var t=e.events;t.on(s.BLUR,this.onGameBlur,this),t.on(s.FOCUS,this.onGameFocus,this),t.on(s.PRE_STEP,this.update,this),t.once(s.DESTROY,this.destroy,this)},add:u,addAudioSprite:function(e,t){t===void 0&&(t={});var n=this.add(e,t);for(var r in n.spritemap=this.jsonCache.get(e).spritemap,n.spritemap)if(n.spritemap.hasOwnProperty(r)){var a=i(t),o=n.spritemap[r];a.loop=o.hasOwnProperty(`loop`)?o.loop:!1,n.addMarker({name:r,start:o.start,duration:o.end-o.start,config:a})}return n},get:function(e){return l(this.sounds,`key`,e)},getAll:function(e){return e?c(this.sounds,`key`,e):c(this.sounds)},getAllPlaying:function(){return c(this.sounds,`isPlaying`,!0)},play:function(e,t){var n=this.add(e);return n.once(o.COMPLETE,n.destroy,n),t?t.name?(n.addMarker(t),n.play(t.name)):n.play(t):n.play()},playAudioSprite:function(e,t,n){var r=this.addAudioSprite(e);return r.once(o.COMPLETE,r.destroy,r),r.play(t,n)},remove:function(e){var t=this.sounds.indexOf(e);return t===-1?!1:(e.destroy(),this.sounds.splice(t,1),!0)},removeAll:function(){this.sounds.forEach(function(e){e.destroy()}),this.sounds.length=0},removeByKey:function(e){for(var t=0,n=this.sounds.length-1;n>=0;n--){var r=this.sounds[n];r.key===e&&(r.destroy(),this.sounds.splice(n,1),t++)}return t},pauseAll:function(){this.forEachActiveSound(function(e){e.pause()}),this.emit(o.PAUSE_ALL,this)},resumeAll:function(){this.forEachActiveSound(function(e){e.resume()}),this.emit(o.RESUME_ALL,this)},setListenerPosition:u,stopAll:function(){this.forEachActiveSound(function(e){e.stop()}),this.emit(o.STOP_ALL,this)},stopByKey:function(e){var t=0;return this.getAll(e).forEach(function(e){e.stop()&&t++}),t},isPlaying:function(e){var t=this.sounds.length-1,n;if(e===void 0){for(;t>=0;t--)if(n=this.sounds[t],n.isPlaying)return!0}else for(;t>=0;t--)if(n=this.sounds[t],n.key===e&&n.isPlaying)return!0;return!1},unlock:u,onBlur:u,onFocus:u,onGameBlur:function(){this.gameLostFocus=!0,this.pauseOnBlur&&this.onBlur()},onGameFocus:function(){this.gameLostFocus=!1,this.pauseOnBlur&&this.onFocus()},update:function(e,t){this.unlocked&&(this.unlocked=!1,this.locked=!1,this.emit(o.UNLOCKED,this));for(var n=this.sounds.length-1;n>=0;n--)this.sounds[n].pendingRemove&&this.sounds.splice(n,1);this.sounds.forEach(function(n){n.update(e,t)})},destroy:function(){this.game.events.off(s.BLUR,this.onGameBlur,this),this.game.events.off(s.FOCUS,this.onGameFocus,this),this.game.events.off(s.PRE_STEP,this.update,this),this.removeAllListeners(),this.removeAll(),this.sounds.length=0,this.sounds=null,this.listenerPosition=null,this.game=null},forEachActiveSound:function(e,t){var n=this;this.sounds.forEach(function(r,i){r&&!r.pendingRemove&&e.call(t||n,r,i,n.sounds)})},setRate:function(e){return this.rate=e,this},rate:{get:function(){return this._rate},set:function(e){this._rate=e,this.forEachActiveSound(function(e){e.calculateRate()}),this.emit(o.GLOBAL_RATE,this,e)}},setDetune:function(e){return this.detune=e,this},detune:{get:function(){return this._detune},set:function(e){this._detune=e,this.forEachActiveSound(function(e){e.calculateRate()}),this.emit(o.GLOBAL_DETUNE,this,e)}}})},14747(e,t,n){var r=n(33684),i=n(25960),a=n(57490);e.exports={create:function(e){var t=e.config.audio,n=e.device.audio;return t.noAudio||!n.webAudio&&!n.audioData?new i(e):n.webAudio&&!t.disableWebAudio?new a(e):new r(e)}}},19723(e){e.exports=`complete`},98882(e){e.exports=`decodedall`},57506(e){e.exports=`decoded`},73146(e){e.exports=`destroy`},11305(e){e.exports=`detune`},40577(e){e.exports=`detune`},30333(e){e.exports=`mute`},20394(e){e.exports=`rate`},21802(e){e.exports=`volume`},1299(e){e.exports=`looped`},99190(e){e.exports=`loop`},97125(e){e.exports=`mute`},89259(e){e.exports=`pan`},79986(e){e.exports=`pauseall`},17586(e){e.exports=`pause`},19618(e){e.exports=`play`},42306(e){e.exports=`rate`},10387(e){e.exports=`resumeall`},48959(e){e.exports=`resume`},9960(e){e.exports=`seek`},19180(e){e.exports=`stopall`},98328(e){e.exports=`stop`},50401(e){e.exports=`unlocked`},52498(e){e.exports=`volume`},14463(e,t,n){e.exports={COMPLETE:n(19723),DECODED:n(57506),DECODED_ALL:n(98882),DESTROY:n(73146),DETUNE:n(11305),GLOBAL_DETUNE:n(40577),GLOBAL_MUTE:n(30333),GLOBAL_RATE:n(20394),GLOBAL_VOLUME:n(21802),LOOP:n(99190),LOOPED:n(1299),MUTE:n(97125),PAN:n(89259),PAUSE_ALL:n(79986),PAUSE:n(17586),PLAY:n(19618),RATE:n(42306),RESUME_ALL:n(10387),RESUME:n(48959),SEEK:n(9960),STOP_ALL:n(19180),STOP:n(98328),UNLOCKED:n(50401),VOLUME:n(52498)}},64895(e,t,n){var r=n(30341),i=n(83419),a=n(14463),o=n(45319);e.exports=new i({Extends:r,initialize:function(e,t,n){if(n===void 0&&(n={}),this.tags=e.game.cache.audio.get(t),!this.tags)throw Error(`No cached audio asset with key "`+t);this.audio=null,this.startTime=0,this.previousTime=0,this.duration=this.tags[0].duration,this.totalDuration=this.tags[0].duration,r.call(this,e,t,n)},play:function(e,t){return this.manager.isLocked(this,`play`,[e,t])||!r.prototype.play.call(this,e,t)||!this.pickAndPlayAudioTag()?!1:(this.emit(a.PLAY,this),!0)},pause:function(){return this.manager.isLocked(this,`pause`)||this.startTime>0||!r.prototype.pause.call(this)?!1:(this.currentConfig.seek=this.audio.currentTime-(this.currentMarker?this.currentMarker.start:0),this.stopAndReleaseAudioTag(),this.emit(a.PAUSE,this),!0)},resume:function(){return this.manager.isLocked(this,`resume`)||this.startTime>0||!r.prototype.resume.call(this)||!this.pickAndPlayAudioTag()?!1:(this.emit(a.RESUME,this),!0)},stop:function(){return this.manager.isLocked(this,`stop`)||!r.prototype.stop.call(this)?!1:(this.stopAndReleaseAudioTag(),this.emit(a.STOP,this),!0)},pickAndPlayAudioTag:function(){if(!this.pickAudioTag())return this.reset(),!1;var e=this.currentConfig.seek,t=this.currentConfig.delay,n=(this.currentMarker?this.currentMarker.start:0)+e;return this.previousTime=n,this.audio.currentTime=n,this.applyConfig(),t===0?(this.startTime=0,this.audio.paused&&this.playCatchPromise()):(this.startTime=window.performance.now()+t*1e3,this.audio.paused||this.audio.pause()),this.resetConfig(),!0},pickAudioTag:function(){if(this.audio)return!0;for(var e=0;e<this.tags.length;e++){var t=this.tags[e];if(t.dataset.used===`false`)return t.dataset.used=`true`,this.audio=t,!0}if(!this.manager.override)return!1;var n=[];this.manager.forEachActiveSound(function(e){e.key===this.key&&e.audio&&n.push(e)},this),n.sort(function(e,t){return e.loop===t.loop?t.seek/t.duration-e.seek/e.duration:e.loop?1:-1});var r=n[0];return this.audio=r.audio,r.reset(),r.audio=null,r.startTime=0,r.previousTime=0,!0},playCatchPromise:function(){var e=this.audio.play();e&&e.catch(function(e){console.warn(e)})},stopAndReleaseAudioTag:function(){this.startTime=0,this.previousTime=0,this.audio&&=(this.audio.pause(),this.audio.dataset.used=`false`,null)},reset:function(){r.prototype.stop.call(this)},onBlur:function(){this.isPlaying=!1,this.isPaused=!0,this.currentConfig.seek=this.audio.currentTime-(this.currentMarker?this.currentMarker.start:0),this.currentConfig.delay=Math.max(0,(this.startTime-window.performance.now())/1e3),this.stopAndReleaseAudioTag()},onFocus:function(){this.isPlaying=!0,this.isPaused=!1,this.pickAndPlayAudioTag()},update:function(e){if(this.isPlaying){if(this.startTime>0){this.startTime<e-this.manager.audioPlayDelay&&(this.audio.currentTime+=Math.max(0,e-this.startTime)/1e3,this.startTime=0,this.previousTime=this.audio.currentTime,this.playCatchPromise());return}var t=this.currentMarker?this.currentMarker.start:0,n=t+this.duration,r=this.audio.currentTime;if(this.currentConfig.loop)r>=n-this.manager.loopEndOffset?(this.audio.currentTime=t+Math.max(0,r-n),r=this.audio.currentTime):r<t&&(this.audio.currentTime+=t,r=this.audio.currentTime),r<this.previousTime&&this.emit(a.LOOPED,this);else if(r>=n){this.reset(),this.stopAndReleaseAudioTag(),this.emit(a.COMPLETE,this);return}this.previousTime=r}},destroy:function(){r.prototype.destroy.call(this),this.tags=null,this.audio&&this.stopAndReleaseAudioTag()},updateMute:function(){this.audio&&(this.audio.muted=this.currentConfig.mute||this.manager.mute)},updateVolume:function(){this.audio&&(this.audio.volume=o(this.currentConfig.volume*this.manager.volume,0,1))},calculateRate:function(){r.prototype.calculateRate.call(this),this.audio&&(this.audio.playbackRate=this.totalRate)},mute:{get:function(){return this.currentConfig.mute},set:function(e){this.currentConfig.mute=e,!this.manager.isLocked(this,`mute`,e)&&(this.updateMute(),this.emit(a.MUTE,this,e))}},setMute:function(e){return this.mute=e,this},volume:{get:function(){return this.currentConfig.volume},set:function(e){this.currentConfig.volume=e,!this.manager.isLocked(this,`volume`,e)&&(this.updateVolume(),this.emit(a.VOLUME,this,e))}},setVolume:function(e){return this.volume=e,this},rate:{get:function(){return this.currentConfig.rate},set:function(e){this.currentConfig.rate=e,!this.manager.isLocked(this,a.RATE,e)&&(this.calculateRate(),this.emit(a.RATE,this,e))}},setRate:function(e){return this.rate=e,this},detune:{get:function(){return this.currentConfig.detune},set:function(e){this.currentConfig.detune=e,!this.manager.isLocked(this,a.DETUNE,e)&&(this.calculateRate(),this.emit(a.DETUNE,this,e))}},setDetune:function(e){return this.detune=e,this},seek:{get:function(){return this.isPlaying?this.audio.currentTime-(this.currentMarker?this.currentMarker.start:0):this.isPaused?this.currentConfig.seek:0},set:function(e){this.manager.isLocked(this,`seek`,e)||this.startTime>0||(this.isPlaying||this.isPaused)&&(e=Math.min(Math.max(0,e),this.duration),this.isPlaying?(this.previousTime=e,this.audio.currentTime=e):this.isPaused&&(this.currentConfig.seek=e),this.emit(a.SEEK,this,e))}},setSeek:function(e){return this.seek=e,this},loop:{get:function(){return this.currentConfig.loop},set:function(e){this.currentConfig.loop=e,!this.manager.isLocked(this,`loop`,e)&&(this.audio&&(this.audio.loop=e),this.emit(a.LOOP,this,e))}},setLoop:function(e){return this.loop=e,this},pan:{get:function(){return this.currentConfig.pan},set:function(e){this.currentConfig.pan=e,this.emit(a.PAN,this,e)}},setPan:function(e){return this.pan=e,this}})},33684(e,t,n){var r=n(85034),i=n(83419),a=n(14463),o=n(64895);e.exports=new i({Extends:r,initialize:function(e){this.override=!0,this.audioPlayDelay=.1,this.loopEndOffset=.05,this.onBlurPausedSounds=[],this.locked=`ontouchstart`in window,this.lockedActionsQueue=this.locked?[]:null,this._mute=!1,this._volume=1,r.call(this,e)},add:function(e,t){var n=new o(this,e,t);return this.sounds.push(n),n},unlock:function(){this.locked=!1;var e=this;if(this.game.cache.audio.entries.each(function(t,n){for(var r=0;r<n.length;r++)if(n[r].dataset.locked===`true`)return e.locked=!0,!1;return!0}),this.locked){var t=!1,n=function(){t=!0},r=function(){if(t){t=!1;return}document.body.removeEventListener(`touchmove`,n),document.body.removeEventListener(`touchend`,r);var i=[];if(e.game.cache.audio.entries.each(function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.dataset.locked===`true`&&i.push(r)}return!0}),i.length!==0){var a=i[i.length-1];a.oncanplaythrough=function(){a.oncanplaythrough=null,i.forEach(function(e){e.dataset.locked=`false`}),e.unlocked=!0},i.forEach(function(e){e.load()})}};this.once(a.UNLOCKED,function(){for(this.forEachActiveSound(function(e){e.currentMarker===null&&e.duration===0&&(e.duration=e.tags[0].duration),e.totalDuration=e.tags[0].duration});this.lockedActionsQueue.length;){var e=this.lockedActionsQueue.shift();e.sound[e.prop].apply?e.sound[e.prop].apply(e.sound,e.value||[]):e.sound[e.prop]=e.value}},this),document.body.addEventListener(`touchmove`,n,!1),document.body.addEventListener(`touchend`,r,!1)}},onBlur:function(){this.forEachActiveSound(function(e){e.isPlaying&&(this.onBlurPausedSounds.push(e),e.onBlur())})},onFocus:function(){this.onBlurPausedSounds.forEach(function(e){e.onFocus()}),this.onBlurPausedSounds.length=0},destroy:function(){r.prototype.destroy.call(this),this.onBlurPausedSounds.length=0,this.onBlurPausedSounds=null},isLocked:function(e,t,n){return e.tags[0].dataset.locked===`true`?(this.lockedActionsQueue.push({sound:e,prop:t,value:n}),!0):!1},setMute:function(e){return this.mute=e,this},mute:{get:function(){return this._mute},set:function(e){this._mute=e,this.forEachActiveSound(function(e){e.updateMute()}),this.emit(a.GLOBAL_MUTE,this,e)}},setVolume:function(e){return this.volume=e,this},volume:{get:function(){return this._volume},set:function(e){this._volume=e,this.forEachActiveSound(function(e){e.updateVolume()}),this.emit(a.GLOBAL_VOLUME,this,e)}}})},23717(e,t,n){e.exports={SoundManagerCreator:n(14747),Events:n(14463),BaseSound:n(30341),BaseSoundManager:n(85034),WebAudioSound:n(71741),WebAudioSoundManager:n(57490),HTML5AudioSound:n(64895),HTML5AudioSoundManager:n(33684),NoAudioSound:n(4603),NoAudioSoundManager:n(25960)}},4603(e,t,n){var r=n(30341),i=n(83419),a=n(50792),o=n(79291),s=n(29747),c=function(){return!1},l=function(){return null},u=function(){return this};e.exports=new i({Extends:a,initialize:function(e,t,n){n===void 0&&(n={}),a.call(this),this.manager=e,this.key=t,this.isPlaying=!1,this.isPaused=!1,this.totalRate=1,this.duration=0,this.totalDuration=0,this.config=o({mute:!1,volume:1,rate:1,detune:0,seek:0,loop:!1,delay:0,pan:0},n),this.currentConfig=this.config,this.mute=!1,this.volume=1,this.rate=1,this.detune=0,this.seek=0,this.loop=!1,this.pan=0,this.markers={},this.currentMarker=null,this.pendingRemove=!1},addMarker:c,updateMarker:c,removeMarker:l,play:c,pause:c,resume:c,stop:c,setMute:u,setVolume:u,setRate:u,setDetune:u,setSeek:u,setLoop:u,setPan:u,applyConfig:l,resetConfig:l,update:s,calculateRate:l,destroy:function(){r.prototype.destroy.call(this)}})},25960(e,t,n){var r=n(85034),i=n(83419),a=n(50792),o=n(4603),s=n(29747);e.exports=new i({Extends:a,initialize:function(e){a.call(this),this.game=e,this.sounds=[],this.mute=!1,this.volume=1,this.rate=1,this.detune=0,this.pauseOnBlur=!0,this.locked=!1},add:function(e,t){var n=new o(this,e,t);return this.sounds.push(n),n},addAudioSprite:function(e,t){var n=this.add(e,t);return n.spritemap={},n},get:function(e){return r.prototype.get.call(this,e)},getAll:function(e){return r.prototype.getAll.call(this,e)},play:function(e,t){return!1},playAudioSprite:function(e,t,n){return!1},remove:function(e){return r.prototype.remove.call(this,e)},removeAll:function(){return r.prototype.removeAll.call(this)},removeByKey:function(e){return r.prototype.removeByKey.call(this,e)},stopByKey:function(e){return r.prototype.stopByKey.call(this,e)},onBlur:s,onFocus:s,onGameBlur:s,onGameFocus:s,pauseAll:s,resumeAll:s,stopAll:s,update:s,setRate:s,setDetune:s,setMute:s,setVolume:s,unlock:s,forEachActiveSound:function(e,t){r.prototype.forEachActiveSound.call(this,e,t)},destroy:function(){r.prototype.destroy.call(this)}})},71741(e,t,n){var r=n(30341),i=n(83419),a=n(14463),o=n(95540);e.exports=new i({Extends:r,initialize:function(e,t,n){if(n===void 0&&(n={}),this.audioBuffer=e.game.cache.audio.get(t),!this.audioBuffer)throw Error(`Audio key "`+t+`" not found in cache`);this.source=null,this.loopSource=null,this.muteNode=e.context.createGain(),this.volumeNode=e.context.createGain(),this.pannerNode=null,this.spatialNode=null,this.spatialSource=null,this.playTime=0,this.startTime=0,this.loopTime=0,this.rateUpdates=[],this.hasEnded=!1,this.hasLooped=!1,this.muteNode.connect(this.volumeNode),e.context.createPanner&&(this.spatialNode=e.context.createPanner(),this.volumeNode.connect(this.spatialNode)),e.context.createStereoPanner?(this.pannerNode=e.context.createStereoPanner(),e.context.createPanner?this.spatialNode.connect(this.pannerNode):this.volumeNode.connect(this.pannerNode),this.pannerNode.connect(e.destination)):e.context.createPanner?this.spatialNode.connect(e.destination):this.volumeNode.connect(e.destination),this.duration=this.audioBuffer.duration,this.totalDuration=this.audioBuffer.duration,r.call(this,e,t,n)},play:function(e,t){return r.prototype.play.call(this,e,t)?(this.stopAndRemoveBufferSource(),this.createAndStartBufferSource(),this.emit(a.PLAY,this),!0):!1},pause:function(){return this.manager.context.currentTime<this.startTime||!r.prototype.pause.call(this)?!1:(this.currentConfig.seek=this.getCurrentTime(),this.stopAndRemoveBufferSource(),this.emit(a.PAUSE,this),!0)},resume:function(){return this.manager.context.currentTime<this.startTime||!r.prototype.resume.call(this)?!1:(this.createAndStartBufferSource(),this.emit(a.RESUME,this),!0)},stop:function(){return r.prototype.stop.call(this)?(this.stopAndRemoveBufferSource(),this.emit(a.STOP,this),!0):!1},createAndStartBufferSource:function(){var e=this.currentConfig.seek,t=this.currentConfig.delay,n=this.manager.context.currentTime+t,r=(this.currentMarker?this.currentMarker.start:0)+e,i=this.duration-e;this.playTime=n-e,this.startTime=n,this.source=this.createBufferSource(),this.applyConfig(),this.source.start(Math.max(0,n),Math.max(0,r),Math.max(0,i)),this.resetConfig()},createAndStartLoopBufferSource:function(){var e=this.getLoopTime(),t=this.currentMarker?this.currentMarker.start:0,n=this.duration;this.loopTime=e,this.loopSource=this.createBufferSource(),this.loopSource.playbackRate.setValueAtTime(this.totalRate,0),this.loopSource.start(Math.max(0,e),Math.max(0,t),Math.max(0,n))},createBufferSource:function(){var e=this,t=this.manager.context.createBufferSource();return t.buffer=this.audioBuffer,t.connect(this.muteNode),t.onended=function(t){var n=t.target;(n===e.source||n===e.loopSource)&&(e.currentConfig.loop?e.hasLooped=!0:e.hasEnded=!0)},t},stopAndRemoveBufferSource:function(){if(this.source){var e=this.source;this.source=null,e.stop(),e.disconnect()}this.playTime=0,this.startTime=0,this.hasEnded=!1,this.stopAndRemoveLoopBufferSource()},stopAndRemoveLoopBufferSource:function(){this.loopSource&&=(this.loopSource.stop(),this.loopSource.disconnect(),null),this.loopTime=0},applyConfig:function(){this.rateUpdates.length=0,this.rateUpdates.push({time:0,rate:1});var e=this.currentConfig.source;if(e&&this.manager.context.createPanner){var t=this.spatialNode;t.panningModel=o(e,`panningModel`,`equalpower`),t.distanceModel=o(e,`distanceModel`,`inverse`),t.orientationX.value=o(e,`orientationX`,0),t.orientationY.value=o(e,`orientationY`,0),t.orientationZ.value=o(e,`orientationZ`,-1),t.refDistance=o(e,`refDistance`,1),t.maxDistance=o(e,`maxDistance`,1e4),t.rolloffFactor=o(e,`rolloffFactor`,1),t.coneInnerAngle=o(e,`coneInnerAngle`,360),t.coneOuterAngle=o(e,`coneOuterAngle`,0),t.coneOuterGain=o(e,`coneOuterGain`,0),this.spatialSource=o(e,`follow`,null),this.spatialSource||(t.positionX.value=o(e,`x`,0),t.positionY.value=o(e,`y`,0),t.positionZ.value=o(e,`z`,0))}r.prototype.applyConfig.call(this)},x:{get:function(){return this.spatialNode?this.spatialNode.positionX:0},set:function(e){this.spatialNode&&(this.spatialNode.positionX.value=e)}},y:{get:function(){return this.spatialNode?this.spatialNode.positionY:0},set:function(e){this.spatialNode&&(this.spatialNode.positionY.value=e)}},update:function(){if(this.isPlaying&&this.spatialSource){var e=o(this.spatialSource,`x`,null),t=o(this.spatialSource,`y`,null);e&&e!==this._spatialx&&(this._spatialx=this.spatialNode.positionX.value=e),t&&t!==this._spatialy&&(this._spatialy=this.spatialNode.positionY.value=t)}this.hasEnded?(r.prototype.stop.call(this),this.stopAndRemoveBufferSource(),this.emit(a.COMPLETE,this)):this.hasLooped&&(this.hasLooped=!1,this.source=this.loopSource,this.loopSource=null,this.playTime=this.startTime=this.loopTime,this.rateUpdates.length=0,this.rateUpdates.push({time:0,rate:this.totalRate}),this.createAndStartLoopBufferSource(),this.emit(a.LOOPED,this))},destroy:function(){this.pendingRemove||(r.prototype.destroy.call(this),this.audioBuffer=null,this.stopAndRemoveBufferSource(),this.muteNode.disconnect(),this.muteNode=null,this.volumeNode.disconnect(),this.volumeNode=null,this.pannerNode&&=(this.pannerNode.disconnect(),null),this.spatialNode&&(this.spatialNode.disconnect(),this.spatialNode=null,this.spatialSource=null),this.rateUpdates.length=0,this.rateUpdates=null)},calculateRate:function(){r.prototype.calculateRate.call(this);var e=this.manager.context.currentTime;this.source&&typeof this.totalRate==`number`&&this.source.playbackRate.setValueAtTime(this.totalRate,e),this.isPlaying&&(this.rateUpdates.push({time:Math.max(this.startTime,e)-this.playTime,rate:this.totalRate}),this.loopSource&&(this.stopAndRemoveLoopBufferSource(),this.createAndStartLoopBufferSource()))},getCurrentTime:function(){for(var e=0,t=0;t<this.rateUpdates.length;t++){var n=0;n=t<this.rateUpdates.length-1?this.rateUpdates[t+1].time:this.manager.context.currentTime-this.playTime,e+=(n-this.rateUpdates[t].time)*this.rateUpdates[t].rate}return e},getLoopTime:function(){for(var e=0,t=0;t<this.rateUpdates.length-1;t++)e+=(this.rateUpdates[t+1].time-this.rateUpdates[t].time)*this.rateUpdates[t].rate;var n=this.rateUpdates[this.rateUpdates.length-1];return this.playTime+n.time+(this.duration-e)/n.rate},rate:{get:function(){return this.currentConfig.rate},set:function(e){this.currentConfig.rate=e,this.calculateRate(),this.emit(a.RATE,this,e)}},setRate:function(e){return this.rate=e,this},detune:{get:function(){return this.currentConfig.detune},set:function(e){this.currentConfig.detune=e,this.calculateRate(),this.emit(a.DETUNE,this,e)}},setDetune:function(e){return this.detune=e,this},mute:{get:function(){return this.muteNode.gain.value===0},set:function(e){this.currentConfig.mute=e,this.muteNode.gain.setValueAtTime(+!e,0),this.emit(a.MUTE,this,e)}},setMute:function(e){return this.mute=e,this},volume:{get:function(){return this.volumeNode.gain.value},set:function(e){this.currentConfig.volume=e,this.volumeNode.gain.setValueAtTime(e,0),this.emit(a.VOLUME,this,e)}},setVolume:function(e){return this.volume=e,this},seek:{get:function(){return this.isPlaying?this.manager.context.currentTime<this.startTime?this.startTime-this.playTime:this.getCurrentTime():this.isPaused?this.currentConfig.seek:0},set:function(e){this.manager.context.currentTime<this.startTime||(this.isPlaying||this.isPaused)&&(e=Math.min(Math.max(0,e),this.duration),this.currentConfig.seek=e,this.isPlaying&&(this.stopAndRemoveBufferSource(),this.createAndStartBufferSource()),this.emit(a.SEEK,this,e))}},setSeek:function(e){return this.seek=e,this},loop:{get:function(){return this.currentConfig.loop},set:function(e){this.currentConfig.loop=e,this.isPlaying&&(this.stopAndRemoveLoopBufferSource(),e&&this.createAndStartLoopBufferSource()),this.emit(a.LOOP,this,e)}},setLoop:function(e){return this.loop=e,this},pan:{get:function(){return this.pannerNode?this.pannerNode.pan.value:0},set:function(e){this.currentConfig.pan=e,this.pannerNode&&this.pannerNode.pan.setValueAtTime(e,this.manager.context.currentTime),this.emit(a.PAN,this,e)}},setPan:function(e){return this.pan=e,this}})},57490(e,t,n){var r=n(53134),i=n(85034),a=n(83419),o=n(14463),s=n(8443),c=n(71741),l=n(95540);e.exports=new a({Extends:i,initialize:function(e){this.context=this.createAudioContext(e),this.masterMuteNode=this.context.createGain(),this.masterVolumeNode=this.context.createGain(),this.masterMuteNode.connect(this.masterVolumeNode),this.masterVolumeNode.connect(this.context.destination),this.destination=this.masterMuteNode,this.locked=this.context.state===`suspended`,i.call(this,e),this.locked&&(e.isBooted?this.unlock():e.events.once(s.BOOT,this.unlock,this)),e.events.on(s.VISIBLE,this.onGameVisible,this)},onGameVisible:function(){var e=this.context;window.setTimeout(function(){e&&(e.suspend(),e.resume())},100)},createAudioContext:function(e){var t=e.config.audio;if(t.context)return t.context.resume(),t.context;if(window.hasOwnProperty(`AudioContext`))return new AudioContext;if(window.hasOwnProperty(`webkitAudioContext`))return new window.webkitAudioContext},setAudioContext:function(e){return this.context&&this.context.close(),this.masterMuteNode&&this.masterMuteNode.disconnect(),this.masterVolumeNode&&this.masterVolumeNode.disconnect(),this.context=e,this.masterMuteNode=e.createGain(),this.masterVolumeNode=e.createGain(),this.masterMuteNode.connect(this.masterVolumeNode),this.masterVolumeNode.connect(e.destination),this.destination=this.masterMuteNode,this},add:function(e,t){var n=new c(this,e,t);return this.sounds.push(n),n},decodeAudio:function(e,t){for(var n=Array.isArray(e)?e:[{key:e,data:t}],i=this.game.cache.audio,a=n.length,s=0;s<n.length;s++){var c=n[s],l=c.key,u=c.data;typeof u==`string`&&(u=r(u));var d=function(e,t){i.add(e,t),this.emit(o.DECODED,e),a--,a===0&&this.emit(o.DECODED_ALL)}.bind(this,l),f=function(e,t){console.error(`Error decoding audio: `+e+` - `,t?t.message:``),a--,a===0&&this.emit(o.DECODED_ALL)}.bind(this,l);this.context.decodeAudioData(u,d,f)}},setListenerPosition:function(e,t){return e===void 0&&(e=this.game.scale.width/2),t===void 0&&(t=this.game.scale.height/2),this.listenerPosition.set(e,t),this},unlock:function(){var e=this,t=document.body,n=function n(){if(e.context&&t){var r=t.removeEventListener.bind(t);e.context.resume().then(function(){r(`touchstart`,n),r(`touchend`,n),r(`mousedown`,n),r(`mouseup`,n),r(`keydown`,n),e.unlocked=!0},function(){r(`touchstart`,n),r(`touchend`,n),r(`mousedown`,n),r(`mouseup`,n),r(`keydown`,n)})}};t&&(t.addEventListener(`touchstart`,n,!1),t.addEventListener(`touchend`,n,!1),t.addEventListener(`mousedown`,n,!1),t.addEventListener(`mouseup`,n,!1),t.addEventListener(`keydown`,n,!1))},onBlur:function(){this.locked||this.context.suspend()},onFocus:function(){var e=this.context;e&&!this.locked&&(e.state===`suspended`||e.state===`interrupted`)&&e.resume()},update:function(e,t){var n=this.context.listener,r=l(this.listenerPosition,`x`,null),a=l(this.listenerPosition,`y`,null);if(n&&n.positionX!==void 0)r&&r!==this._spatialx&&(this._spatialx=n.positionX.value=r),a&&a!==this._spatialy&&(this._spatialy=n.positionY.value=a);else if(n){r&&r!==this._spatialx&&(this._spatialx=r),a&&a!==this._spatialy&&(this._spatialy=a);var o=l(n,`z`,0);n.setPosition(this._spatialx||0,this._spatialy||0,o)}i.prototype.update.call(this,e,t),this.gameLostFocus||this.onFocus()},destroy:function(){if(this.destination=null,this.masterVolumeNode.disconnect(),this.masterVolumeNode=null,this.masterMuteNode.disconnect(),this.masterMuteNode=null,this.game.config.audio.context)this.context.suspend();else{var e=this;this.context.close().then(function(){e.context=null})}this.game.events.off(s.VISIBLE,this.onGameVisible,this),i.prototype.destroy.call(this)},setMute:function(e){return this.mute=e,this},mute:{get:function(){return this.masterMuteNode.gain.value===0},set:function(e){this.masterMuteNode.gain.setValueAtTime(+!e,0),this.emit(o.GLOBAL_MUTE,this,e)}},setVolume:function(e){return this.volume=e,this},volume:{get:function(){return this.masterVolumeNode.gain.value},set:function(e){this.masterVolumeNode.gain.setValueAtTime(e,0),this.emit(o.GLOBAL_VOLUME,this,e)}}})},73162(e,t,n){var r=n(37105),i=n(83419),a=n(29747),o=n(19186);e.exports=new i({initialize:function(e){this.parent=e,this.list=[],this.position=0,this.addCallback=a,this.removeCallback=a,this._sortKey=``},add:function(e,t){return t?r.Add(this.list,e):r.Add(this.list,e,0,this.addCallback,this)},addAt:function(e,t,n){return n?r.AddAt(this.list,e,t):r.AddAt(this.list,e,t,0,this.addCallback,this)},getAt:function(e){return this.list[e]},getIndex:function(e){return this.list.indexOf(e)},sort:function(e,t){return e?(t===void 0&&(t=function(t,n){return t[e]-n[e]}),o(this.list,t),this):this},getByName:function(e){return r.GetFirst(this.list,`name`,e)},getRandom:function(e,t){return r.GetRandom(this.list,e,t)},getFirst:function(e,t,n,i){return r.GetFirst(this.list,e,t,n,i)},getAll:function(e,t,n,i){return r.GetAll(this.list,e,t,n,i)},count:function(e,t){return r.CountAllMatching(this.list,e,t)},swap:function(e,t){r.Swap(this.list,e,t)},moveTo:function(e,t){return r.MoveTo(this.list,e,t)},moveAbove:function(e,t){return r.MoveAbove(this.list,e,t)},moveBelow:function(e,t){return r.MoveBelow(this.list,e,t)},remove:function(e,t){return t?r.Remove(this.list,e):r.Remove(this.list,e,this.removeCallback,this)},removeAt:function(e,t){return t?r.RemoveAt(this.list,e):r.RemoveAt(this.list,e,this.removeCallback,this)},removeBetween:function(e,t,n){return n?r.RemoveBetween(this.list,e,t):r.RemoveBetween(this.list,e,t,this.removeCallback,this)},removeAll:function(e){for(var t=this.list.length;t--;)this.remove(this.list[t],e);return this},bringToTop:function(e){return r.BringToTop(this.list,e)},sendToBack:function(e){return r.SendToBack(this.list,e)},moveUp:function(e){return r.MoveUp(this.list,e),e},moveDown:function(e){return r.MoveDown(this.list,e),e},reverse:function(){return this.list.reverse(),this},shuffle:function(){return r.Shuffle(this.list),this},replace:function(e,t){return r.Replace(this.list,e,t)},exists:function(e){return this.list.indexOf(e)>-1},setAll:function(e,t,n,i){return r.SetAll(this.list,e,t,n,i),this},each:function(e,t){for(var n=[null],r=2;r<arguments.length;r++)n.push(arguments[r]);for(r=0;r<this.list.length;r++)n[0]=this.list[r],e.apply(t,n)},shutdown:function(){this.removeAll(),this.list=[]},destroy:function(){this.removeAll(),this.parent=null,this.addCallback=null,this.removeCallback=null},length:{get:function(){return this.list.length}},first:{get:function(){return this.position=0,this.list.length>0?this.list[0]:null}},last:{get:function(){return this.list.length>0?(this.position=this.list.length-1,this.list[this.position]):null}},next:{get:function(){return this.position<this.list.length?(this.position++,this.list[this.position]):null}},previous:{get:function(){return this.position>0?(this.position--,this.list[this.position]):null}}})},90330(e,t,n){e.exports=new(n(83419))({initialize:function(e){this.entries={},this.size=0,this.setAll(e)},setAll:function(e){if(Array.isArray(e))for(var t=0;t<e.length;t++)this.set(e[t][0],e[t][1]);return this},set:function(e,t){return this.has(e)||this.size++,this.entries[e]=t,this},get:function(e){if(this.has(e))return this.entries[e]},getArray:function(){var e=[],t=this.entries;for(var n in t)e.push(t[n]);return e},has:function(e){return this.entries.hasOwnProperty(e)},delete:function(e){return this.has(e)&&(delete this.entries[e],this.size--),this},clear:function(){return Object.keys(this.entries).forEach(function(e){delete this.entries[e]},this),this.size=0,this},keys:function(){return Object.keys(this.entries)},values:function(){var e=[],t=this.entries;for(var n in t)e.push(t[n]);return e},dump:function(){var e=this.entries;for(var t in console.group(`Map`),e)console.log(t,e[t]);console.groupEnd()},each:function(e){var t=this.entries;for(var n in t)if(e(n,t[n])===!1)break;return this},contains:function(e){var t=this.entries;for(var n in t)if(t[n]===e)return!0;return!1},merge:function(e,t){t===void 0&&(t=!1);var n=this.entries,r=e.entries;for(var i in r)n.hasOwnProperty(i)&&t?n[i]=r[i]:this.set(i,r[i]);return this}})},25774(e,t,n){var r=n(83419),i=n(50792),a=n(82348);e.exports=new r({Extends:i,initialize:function(){i.call(this),this._pending=[],this._active=[],this._destroy=[],this._toProcess=0,this.checkQueue=!1},isActive:function(e){return this._active.indexOf(e)>-1},isPending:function(e){return this._toProcess>0&&this._pending.indexOf(e)>-1},isDestroying:function(e){return this._destroy.indexOf(e)>-1},add:function(e){return this.checkQueue&&this.isActive(e)&&!this.isDestroying(e)||this.isPending(e)?e:(this._pending.push(e),this._toProcess++,e)},remove:function(e){if(this.isPending(e)){var t=this._pending,n=t.indexOf(e);n!==-1&&t.splice(n,1)}else this.isActive(e)&&(this._destroy.push(e),this._toProcess++);return e},removeAll:function(){for(var e=this._active,t=this._destroy,n=e.length;n--;)t.push(e[n]),this._toProcess++;return this},update:function(){if(this._toProcess===0)return this._active;var e=this._destroy,t=this._active,n,r;for(n=0;n<e.length;n++){r=e[n];var i=t.indexOf(r);i!==-1&&(t.splice(i,1),this.emit(a.PROCESS_QUEUE_REMOVE,r))}for(e.length=0,e=this._pending,n=0;n<e.length;n++)r=e[n],(!this.checkQueue||this.checkQueue&&t.indexOf(r)===-1)&&(t.push(r),this.emit(a.PROCESS_QUEUE_ADD,r));return e.length=0,this._toProcess=0,t},getActive:function(){return this._active},length:{get:function(){return this._active.length}},destroy:function(){this._toProcess=0,this._pending=[],this._active=[],this._destroy=[]}})},59542(e,t,n){var r=n(43886);function i(e){var t=[`.left`,`.top`,`.right`,`.bottom`];if(!(this instanceof i))return new i(e,t);this._maxEntries=Math.max(4,e||9),this._minEntries=Math.max(2,Math.ceil(this._maxEntries*.4)),this.clear()}i.prototype={all:function(){return this._all(this.data,[])},search:function(e){var t=this.data,n=[],r=this.toBBox;if(!g(e,t))return n;for(var i=[],a,o,s,c;t;){for(a=0,o=t.children.length;a<o;a++)s=t.children[a],c=t.leaf?r(s):s,g(e,c)&&(t.leaf?n.push(s):h(e,c)?this._all(s,n):i.push(s));t=i.pop()}return n},collides:function(e){var t=this.data,n=this.toBBox;if(!g(e,t))return!1;for(var r=[],i,a,o,s;t;){for(i=0,a=t.children.length;i<a;i++)if(o=t.children[i],s=t.leaf?n(o):o,g(e,s)){if(t.leaf||h(e,s))return!0;r.push(o)}t=r.pop()}return!1},load:function(e){if(!(e&&e.length))return this;if(e.length<this._minEntries){for(var t=0,n=e.length;t<n;t++)this.insert(e[t]);return this}var r=this._build(e.slice(),0,e.length-1,0);if(!this.data.children.length)this.data=r;else if(this.data.height===r.height)this._splitRoot(this.data,r);else{if(this.data.height<r.height){var i=this.data;this.data=r,r=i}this._insert(r,this.data.height-r.height-1,!0)}return this},insert:function(e){return e&&this._insert(e,this.data.height-1),this},clear:function(){return this.data=_([]),this},remove:function(e,t){if(!e)return this;for(var n=this.data,r=this.toBBox(e),i=[],o=[],s,c,l,u;n||i.length;){if(n||(n=i.pop(),c=i[i.length-1],s=o.pop(),u=!0),n.leaf&&(l=a(e,n.children,t),l!==-1))return n.children.splice(l,1),i.push(n),this._condense(i),this;!u&&!n.leaf&&h(n,r)?(i.push(n),o.push(s),s=0,c=n,n=n.children[0]):c?(s++,n=c.children[s],u=!1):n=null}return this},toBBox:function(e){return e},compareMinX:l,compareMinY:u,toJSON:function(){return this.data},fromJSON:function(e){return this.data=e,this},_all:function(e,t){for(var n=[];e;)e.leaf?t.push.apply(t,e.children):n.push.apply(n,e.children),e=n.pop();return t},_build:function(e,t,n,r){var i=n-t+1,a=this._maxEntries,s;if(i<=a)return s=_(e.slice(t,n+1)),o(s,this.toBBox),s;r||(r=Math.ceil(Math.log(i)/Math.log(a)),a=Math.ceil(i/a**(r-1))),s=_([]),s.leaf=!1,s.height=r;var c=Math.ceil(i/a),l=c*Math.ceil(Math.sqrt(a)),u,d,f,p;for(v(e,t,n,l,this.compareMinX),u=t;u<=n;u+=l)for(f=Math.min(u+l-1,n),v(e,u,f,c,this.compareMinY),d=u;d<=f;d+=c)p=Math.min(d+c-1,f),s.children.push(this._build(e,d,p,r-1));return o(s,this.toBBox),s},_chooseSubtree:function(e,t,n,r){for(var i,a,o,s,c,l,u,f;r.push(t),!(t.leaf||r.length-1===n);){for(u=f=1/0,i=0,a=t.children.length;i<a;i++)o=t.children[i],c=d(o),l=p(e,o)-c,l<f?(f=l,u=c<u?c:u,s=o):l===f&&c<u&&(u=c,s=o);t=s||t.children[0]}return t},_insert:function(e,t,n){var r=this.toBBox,i=n?e:r(e),a=[],o=this._chooseSubtree(i,this.data,t,a);for(o.children.push(e),c(o,i);t>=0&&a[t].children.length>this._maxEntries;)this._split(a,t),t--;this._adjustParentBBoxes(i,a,t)},_split:function(e,t){var n=e[t],r=n.children.length,i=this._minEntries;this._chooseSplitAxis(n,i,r);var a=this._chooseSplitIndex(n,i,r),s=_(n.children.splice(a,n.children.length-a));s.height=n.height,s.leaf=n.leaf,o(n,this.toBBox),o(s,this.toBBox),t?e[t-1].children.push(s):this._splitRoot(n,s)},_splitRoot:function(e,t){this.data=_([e,t]),this.data.height=e.height+1,this.data.leaf=!1,o(this.data,this.toBBox)},_chooseSplitIndex:function(e,t,n){var r,i,a,o,c,l=u=1/0,u,f;for(r=t;r<=n-t;r++)i=s(e,0,r,this.toBBox),a=s(e,r,n,this.toBBox),o=m(i,a),c=d(i)+d(a),o<l?(l=o,f=r,u=c<u?c:u):o===l&&c<u&&(u=c,f=r);return f},_chooseSplitAxis:function(e,t,n){var r=e.leaf?this.compareMinX:l,i=e.leaf?this.compareMinY:u;this._allDistMargin(e,t,n,r)<this._allDistMargin(e,t,n,i)&&e.children.sort(r)},_allDistMargin:function(e,t,n,r){e.children.sort(r);var i=this.toBBox,a=s(e,0,t,i),o=s(e,n-t,n,i),l=f(a)+f(o),u,d;for(u=t;u<n-t;u++)d=e.children[u],c(a,e.leaf?i(d):d),l+=f(a);for(u=n-t-1;u>=t;u--)d=e.children[u],c(o,e.leaf?i(d):d),l+=f(o);return l},_adjustParentBBoxes:function(e,t,n){for(var r=n;r>=0;r--)c(t[r],e)},_condense:function(e){for(var t=e.length-1,n;t>=0;t--)e[t].children.length===0?t>0?(n=e[t-1].children,n.splice(n.indexOf(e[t]),1)):this.clear():o(e[t],this.toBBox)},compareMinX:function(e,t){return e.left-t.left},compareMinY:function(e,t){return e.top-t.top},toBBox:function(e){return{minX:e.left,minY:e.top,maxX:e.right,maxY:e.bottom}}};function a(e,t,n){if(!n)return t.indexOf(e);for(var r=0;r<t.length;r++)if(n(e,t[r]))return r;return-1}function o(e,t){s(e,0,e.children.length,t,e)}function s(e,t,n,r,i){i||=_(null),i.minX=1/0,i.minY=1/0,i.maxX=-1/0,i.maxY=-1/0;for(var a=t,o;a<n;a++)o=e.children[a],c(i,e.leaf?r(o):o);return i}function c(e,t){return e.minX=Math.min(e.minX,t.minX),e.minY=Math.min(e.minY,t.minY),e.maxX=Math.max(e.maxX,t.maxX),e.maxY=Math.max(e.maxY,t.maxY),e}function l(e,t){return e.minX-t.minX}function u(e,t){return e.minY-t.minY}function d(e){return(e.maxX-e.minX)*(e.maxY-e.minY)}function f(e){return e.maxX-e.minX+(e.maxY-e.minY)}function p(e,t){return(Math.max(t.maxX,e.maxX)-Math.min(t.minX,e.minX))*(Math.max(t.maxY,e.maxY)-Math.min(t.minY,e.minY))}function m(e,t){var n=Math.max(e.minX,t.minX),r=Math.max(e.minY,t.minY),i=Math.min(e.maxX,t.maxX),a=Math.min(e.maxY,t.maxY);return Math.max(0,i-n)*Math.max(0,a-r)}function h(e,t){return e.minX<=t.minX&&e.minY<=t.minY&&t.maxX<=e.maxX&&t.maxY<=e.maxY}function g(e,t){return t.minX<=e.maxX&&t.minY<=e.maxY&&t.maxX>=e.minX&&t.maxY>=e.minY}function _(e){return{children:e,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function v(e,t,n,i,a){for(var o=[t,n],s;o.length;)n=o.pop(),t=o.pop(),!(n-t<=i)&&(s=t+Math.ceil((n-t)/i/2)*i,r(e,s,t,n,a),o.push(t,s,s,n))}e.exports=i},86555(e,t,n){var r=n(45319),i=n(83419),a=n(56583),o=n(26099),s=new i({initialize:function(e,t,n,r){e===void 0&&(e=0),t===void 0&&(t=e),n===void 0&&(n=0),r===void 0&&(r=null),this._width=e,this._height=t,this._parent=r,this.aspectMode=n,this.aspectRatio=t===0?1:e/t,this.minWidth=0,this.minHeight=0,this.maxWidth=Number.MAX_VALUE,this.maxHeight=Number.MAX_VALUE,this.snapTo=new o},setAspectMode:function(e){return e===void 0&&(e=0),this.aspectMode=e,this.setSize(this._width,this._height)},setSnap:function(e,t){return e===void 0&&(e=0),t===void 0&&(t=e),this.snapTo.set(e,t),this.setSize(this._width,this._height)},setParent:function(e){return this._parent=e,this.setSize(this._width,this._height)},setMin:function(e,t){return e===void 0&&(e=0),t===void 0&&(t=e),this.minWidth=r(e,0,this.maxWidth),this.minHeight=r(t,0,this.maxHeight),this.setSize(this._width,this._height)},setMax:function(e,t){return e===void 0&&(e=Number.MAX_VALUE),t===void 0&&(t=e),this.maxWidth=r(e,this.minWidth,Number.MAX_VALUE),this.maxHeight=r(t,this.minHeight,Number.MAX_VALUE),this.setSize(this._width,this._height)},setSize:function(e,t){switch(e===void 0&&(e=0),t===void 0&&(t=e),this.aspectMode){case s.NONE:this._width=this.getNewWidth(a(e,this.snapTo.x)),this._height=this.getNewHeight(a(t,this.snapTo.y)),this.aspectRatio=this._height===0?1:this._width/this._height;break;case s.WIDTH_CONTROLS_HEIGHT:this._width=this.getNewWidth(a(e,this.snapTo.x)),this._height=this.getNewHeight(this._width*(1/this.aspectRatio),!1);break;case s.HEIGHT_CONTROLS_WIDTH:this._height=this.getNewHeight(a(t,this.snapTo.y)),this._width=this.getNewWidth(this._height*this.aspectRatio,!1);break;case s.FIT:this.constrain(e,t,!0);break;case s.ENVELOP:this.constrain(e,t,!1);break}return this},setAspectRatio:function(e){return this.aspectRatio=e,this.setSize(this._width,this._height)},resize:function(e,t){return this._width=this.getNewWidth(a(e,this.snapTo.x)),this._height=this.getNewHeight(a(t,this.snapTo.y)),this.aspectRatio=this._height===0?1:this._width/this._height,this},getNewWidth:function(e,t){return t===void 0&&(t=!0),e=r(e,this.minWidth,this.maxWidth),t&&this._parent&&e>this._parent.width&&(e=Math.max(this.minWidth,this._parent.width)),e},getNewHeight:function(e,t){return t===void 0&&(t=!0),e=r(e,this.minHeight,this.maxHeight),t&&this._parent&&e>this._parent.height&&(e=Math.max(this.minHeight,this._parent.height)),e},constrain:function(e,t,n){e===void 0&&(e=0),t===void 0&&(t=e),n===void 0&&(n=!0),e=this.getNewWidth(e),t=this.getNewHeight(t);var r=this.snapTo,i=t===0?1:e/t;return n&&this.aspectRatio>i||!n&&this.aspectRatio<i?(e=a(e,r.x),t=e/this.aspectRatio,r.y>0&&(t=a(t,r.y),e=t*this.aspectRatio)):(n&&this.aspectRatio<i||!n&&this.aspectRatio>i)&&(t=a(t,r.y),e=t*this.aspectRatio,r.x>0&&(e=a(e,r.x),t=e*(1/this.aspectRatio))),this._width=e,this._height=t,this},fitTo:function(e,t){return this.constrain(e,t,!0)},envelop:function(e,t){return this.constrain(e,t,!1)},setWidth:function(e){return this.setSize(e,this._height)},setHeight:function(e){return this.setSize(this._width,e)},toString:function(){return`[{ Size (width=`+this._width+` height=`+this._height+` aspectRatio=`+this.aspectRatio+` aspectMode=`+this.aspectMode+`) }]`},setCSS:function(e){e&&e.style&&(e.style.width=this._width+`px`,e.style.height=this._height+`px`)},copy:function(e){return e.setAspectMode(this.aspectMode),e.aspectRatio=this.aspectRatio,e.setSize(this.width,this.height)},destroy:function(){this._parent=null,this.snapTo=null},width:{get:function(){return this._width},set:function(e){this.setSize(e,this._height)}},height:{get:function(){return this._height},set:function(e){this.setSize(this._width,e)}}});s.NONE=0,s.WIDTH_CONTROLS_HEIGHT=1,s.HEIGHT_CONTROLS_WIDTH=2,s.FIT=3,s.ENVELOP=4,e.exports=s},15238(e){e.exports=`add`},56187(e){e.exports=`remove`},82348(e,t,n){e.exports={PROCESS_QUEUE_ADD:n(15238),PROCESS_QUEUE_REMOVE:n(56187)}},41392(e,t,n){e.exports={Events:n(82348),List:n(73162),Map:n(90330),ProcessQueue:n(25774),RTree:n(59542),Size:n(86555)}},57382(e,t,n){var r=n(83419),i=n(45319),a=n(40987),o=n(8054),s=n(50030),c=n(79237);e.exports=new r({Extends:c,initialize:function(e,t,n,r,i){c.call(this,e,t,n,r,i),this.add(`__BASE`,0,0,0,r,i),this._source=this.frames.__BASE.source,this.canvas=this._source.image,this.context=this.canvas.getContext(`2d`,{willReadFrequently:!0}),this.width=r,this.height=i,this.imageData=this.context.getImageData(0,0,r,i),this.data=null,this.imageData&&(this.data=this.imageData.data),this.pixels=null,this.buffer,this.data&&(this.imageData.data.buffer?(this.buffer=this.imageData.data.buffer,this.pixels=new Uint32Array(this.buffer)):window.ArrayBuffer?(this.buffer=new ArrayBuffer(this.imageData.data.length),this.pixels=new Uint32Array(this.buffer)):this.pixels=this.imageData.data)},update:function(){return this.imageData=this.context.getImageData(0,0,this.width,this.height),this.data=this.imageData.data,this.imageData.data.buffer?(this.buffer=this.imageData.data.buffer,this.pixels=new Uint32Array(this.buffer)):window.ArrayBuffer?(this.buffer=new ArrayBuffer(this.imageData.data.length),this.pixels=new Uint32Array(this.buffer)):this.pixels=this.imageData.data,this.manager.game.config.renderType===o.WEBGL&&this.refresh(),this},draw:function(e,t,n,r){return r===void 0&&(r=!0),this.context.drawImage(n,e,t),r&&this.update(),this},drawFrame:function(e,t,n,r,i){n===void 0&&(n=0),r===void 0&&(r=0),i===void 0&&(i=!0);var a=this.manager.getFrame(e,t);if(a){var o=a.canvasData,s=a.cutWidth,c=a.cutHeight,l=a.source.resolution;this.context.drawImage(a.source.image,o.x,o.y,s,c,n,r,s/l,c/l),i&&this.update()}return this},setPixel:function(e,t,n,r,i,a){if(a===void 0&&(a=255),e=Math.abs(Math.floor(e)),t=Math.abs(Math.floor(t)),this.getIndex(e,t)>-1){var o=this.context.getImageData(e,t,1,1);o.data[0]=n,o.data[1]=r,o.data[2]=i,o.data[3]=a,this.context.putImageData(o,e,t)}return this},putData:function(e,t,n,r,i,a,o){return r===void 0&&(r=0),i===void 0&&(i=0),a===void 0&&(a=e.width),o===void 0&&(o=e.height),this.context.putImageData(e,t,n,r,i,a,o),this},getData:function(e,t,n,r){return e=i(Math.floor(e),0,this.width-1),t=i(Math.floor(t),0,this.height-1),n=i(n,1,this.width-e),r=i(r,1,this.height-t),this.context.getImageData(e,t,n,r)},getPixel:function(e,t,n){n||=new a;var r=this.getIndex(e,t);if(r>-1){var i=this.data,o=i[r+0],s=i[r+1],c=i[r+2],l=i[r+3];n.setTo(o,s,c,l)}return n},getPixels:function(e,t,n,r){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=this.width),r===void 0&&(r=n),e=Math.abs(Math.round(e)),t=Math.abs(Math.round(t));for(var o=i(e,0,this.width),s=i(e+n,0,this.width),c=i(t,0,this.height),l=i(t+r,0,this.height),u=new a,d=[],f=c;f<l;f++){for(var p=[],m=o;m<s;m++)u=this.getPixel(m,f,u),p.push({x:m,y:f,color:u.color,alpha:u.alphaGL});d.push(p)}return d},getIndex:function(e,t){return e=Math.abs(Math.round(e)),t=Math.abs(Math.round(t)),e<this.width&&t<this.height?(e+t*this.width)*4:-1},refresh:function(){return this._source.update(),this},getCanvas:function(){return this.canvas},getContext:function(){return this.context},clear:function(e,t,n,r,i){return e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=this.width),r===void 0&&(r=this.height),i===void 0&&(i=!0),this.context.clearRect(e,t,n,r),i&&this.update(),this},setSize:function(e,t){return t===void 0&&(t=e),(e!==this.width||t!==this.height)&&(this.canvas.width=e,this.canvas.height=t,this._source.width=e,this._source.height=t,this._source.isPowerOf2=s(e,t),this.frames.__BASE.setSize(e,t,0,0),this.width=e,this.height=t,this.refresh()),this},destroy:function(){c.prototype.destroy.call(this),this._source=null,this.canvas=null,this.context=null,this.imageData=null,this.data=null,this.pixels=null,this.buffer=null}})},81320(e,t,n){var r=n(10312),i=n(38058),a=n(27919),o=n(83419),s=n(8054),c=n(87774),l=n(4327),u=n(95540),d=n(79237),f=n(70554),p=n(42538),m=n(61340);e.exports=new o({Extends:d,initialize:function(e,t,n,r,o){n===void 0&&(n=256),r===void 0&&(r=256),o===void 0&&(o=!0),this.type=`DynamicTexture`;var l=e.game.renderer,u=l&&l.type===s.CANVAS,f=u?a.create2D(this,n,r):[this];if(d.call(this,e,t,f,n,r),this.add(`__BASE`,0,0,0,n,r),this.renderer=l,this.width=-1,this.height=-1,this.commandBuffer=[],this.canvas=u?f:null,this.context=u?f.getContext(`2d`,{willReadFrequently:!0}):null,this.camera=new i(0,0,n,r).setScene(e.game.scene.systemScene,!1),this.drawingContext=u?null:new c(l,{width:n,height:r,camera:this.camera,autoClear:!1}),!u){var p=this.get();p.source.glTexture=this.drawingContext.texture}this.setSize(n,r,o)},setSize:function(e,t,n){t===void 0&&(t=e),n===void 0&&(n=!0),n&&(e=Math.floor(e),t=Math.floor(t),e%2!=0&&e++,t%2!=0&&t++);var r=this.get(),i=r.source;if(e!==this.width||t!==this.height){this.canvas&&(this.canvas.width=e,this.canvas.height=t);var a=this.drawingContext;a&&(a.width!==e||a.height!==t)&&a.resize(e,t),this.camera.setSize(e,t),i.updateSize(e,t),r.setSize(e,t),this.width=e,this.height=t}else{var o=this.getSourceImage();r.cutX+e>o.width&&(e=o.width-r.cutX),r.cutY+t>o.height&&(t=o.height-r.cutY),r.setSize(e,t,r.cutX,r.cutY)}return this},render:function(){if(this.commandBuffer.length!==0)return this.camera.preRender(),this.renderer.type===s.WEBGL&&this._renderWebGL(),this.renderer.type===s.CANVAS&&this._renderCanvas(),this},_renderWebGL:function(){this.renderer.renderNodes.getNode(`DynamicTextureHandler`).run(this)},_renderCanvas:function(){var e=this.camera,t=this.context,n=this.renderer,i=this.manager;n.setContext(t);for(var a,o,s,c,l,u,d,f,m,h,g,_,v,y,b,x=this.commandBuffer,S=x.length,C=!1,w=!1,T=0;T<S;T++)switch(x[T]){case p.CLEAR:y=x[++T],b=x[++T],v=x[++T],l=x[++T],y!==void 0&&b!==void 0&&v!==void 0&&l!==void 0?t.clearRect(y,b,v,l):(t.save(),t.setTransform(1,0,0,1,0,0),t.clearRect(0,0,this.width,this.height),t.restore());break;case p.FILL:var E=x[++T];y=x[++T],b=x[++T],v=x[++T],l=x[++T],a=(E>>24&255)/255;var D=E>>16&255,O=E>>8&255,k=E&255;t.save(),t.globalCompositeOperation=`source-over`,t.fillStyle=`rgba(`+D+`,`+O+`,`+k+`,`+a+`)`,t.fillRect(y,b,v,l),t.restore();break;case p.STAMP:u=x[++T],c=x[++T],y=x[++T],b=x[++T],a=x[++T],_=x[++T],m=x[++T],h=x[++T],g=x[++T],d=x[++T],f=x[++T],o=x[++T],w&&(o=r.ERASE);var A=i.resetStamp(a,_);A.setPosition(y,b).setRotation(m).setScale(h,g).setTexture(u,c).setOrigin(d,f).setBlendMode(o),A.renderCanvas(n,A,e,null);break;case p.REPEAT:u=x[++T],c=x[++T],y=x[++T],b=x[++T],a=x[++T],_=x[++T],m=x[++T],h=x[++T],g=x[++T],d=x[++T],f=x[++T],o=x[++T],v=x[++T],l=x[++T];var j=x[++T],M=x[++T],N=x[++T],P=x[++T],F=x[++T];w&&(o=r.ERASE);var I=i.resetTileSprite(a,_);I.setPosition(y,b).setRotation(m).setScale(h,g).setTexture(u,c).setSize(v,l).setOrigin(d,f).setBlendMode(o).setTilePosition(j,M).setTileRotation(N).setTileScale(P,F),I.renderCanvas(n,I,e,null);break;case p.DRAW:var L=x[++T];if(y=x[++T],b=x[++T],y!==void 0){var R=L.x;L.x=y}if(b!==void 0){var z=L.y;L.y=b}w&&(s=L.blendMode,L.blendMode=r.ERASE),L.renderCanvas(n,L,e,null),y!==void 0&&(L.x=R),b!==void 0&&(L.y=z),w&&(L.blendMode=s);break;case p.SET_ERASE:w=!!x[++T];break;case p.PRESERVE:C=x[++T];break;case p.CALLBACK:var B=x[++T];B();break;case p.CAPTURE:L=x[++T];var V=x[++T],H=this.startCapture(L,V);L.renderCanvas(n,L,V.camera||e,H.transform),this.finishCapture(L,H);break}C||(x.length=0),n.setContext()},fill:function(e,t,n,r,i,a){t===void 0&&(t=1),n===void 0&&(n=0),r===void 0&&(r=0),i===void 0&&(i=this.width),a===void 0&&(a=this.height);var o=e>>16&255,s=e>>8&255,c=e&255,l=f.getTintFromFloats(o/255,s/255,c/255,t);return this.commandBuffer.push(p.FILL,l,n,r,i,a),this},clear:function(e,t,n,r){return e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=this.width),r===void 0&&(r=this.height),this.commandBuffer.push(p.CLEAR,e,t,n,r),this},stamp:function(e,t,n,r,i){n===void 0&&(n=0),r===void 0&&(r=0);var a=u(i,`alpha`,1),o=u(i,`tint`,16777215),s=u(i,`angle`,0),c=u(i,`rotation`,0),l=u(i,`scale`,1),d=u(i,`scaleX`,l),f=u(i,`scaleY`,l),m=u(i,`originX`,.5),h=u(i,`originY`,.5),g=u(i,`blendMode`,0);return s!==0&&(c=s*Math.PI/180),this.commandBuffer.push(p.STAMP,e,t,n,r,a,o,c,d,f,m,h,g),this},erase:function(e,t,n,r,i){var a=this.commandBuffer,o=a.length;return a[o-2]===p.SET_ERASE&&!a[o-1]?a.length-=2:a.push(p.SET_ERASE,!0),this.draw(e,t,n,r,i),a.push(p.SET_ERASE,!1),this},draw:function(e,t,n,r,i){Array.isArray(e)||(e=[e]);for(var a=e.length,o=0;o<a;o++){var s=e[o];if(!(!s||s===this))if(s.renderWebGL||s.renderCanvas)this.commandBuffer.push(p.DRAW,s,t,n);else if(s.isParent||s.list)for(var c=s.getChildren(),u=0;u<c.length;u++){var d=c[u];d.willRender(this.camera)&&this.draw(d,t,n)}else typeof s==`string`?this.stamp(s,null,t,n,{alpha:r,tint:i}):s instanceof l?this.stamp(s.texture.key,s,t,n,{alpha:r,tint:i}):Array.isArray(s)&&this.draw(s,t,n,r,i)}return this},capture:function(e,t){return t||={},this.commandBuffer.push(p.CAPTURE,e,t),this},startCapture:function(e,t){var n={},r=void 0;return t.transform instanceof m?r=t.transform:t.transform===`world`&&e.parentContainer&&(r=e.parentContainer.getWorldTransformMatrix()),r&&(n.transform=r),t.camera&&(r||=new m,t.camera.matrixExternal.multiply(r,r)),t.x!==void 0&&(n.x=e.x,e.x=t.x),t.y!==void 0&&(n.y=e.y,e.y=t.y),t.rotation===void 0?t.angle!==void 0&&(n.rotation=e.rotation,e.angle=t.angle):(n.rotation=e.rotation,e.rotation=t.rotation),t.scaleX!==void 0&&(n.scaleX=e.scaleX,e.scaleX=t.scaleX),t.scaleY!==void 0&&(n.scaleY=e.scaleY,e.scaleY=t.scaleY),t.originX!==void 0&&(n.originX=e.originX,e.originX=t.originX),t.originY!==void 0&&(n.originY=e.originY,e.originY=t.originY),t.alpha!==void 0&&(n.alpha=e.alpha,e.alpha=t.alpha),t.tint!==void 0&&(n.tint=e.tint,e.tint=t.tint),t.blendMode!==void 0&&(n.blendMode=e.blendMode,e.blendMode=t.blendMode),n},finishCapture:function(e,t){t.x!==void 0&&(e.x=t.x),t.y!==void 0&&(e.y=t.y),t.rotation!==void 0&&(e.rotation=t.rotation),t.scaleX!==void 0&&(e.scaleX=t.scaleX),t.scaleY!==void 0&&(e.scaleY=t.scaleY),t.originX!==void 0&&(e.originX=t.originX),t.originY!==void 0&&(e.originY=t.originY),t.alpha!==void 0&&(e.alpha=t.alpha),t.tint!==void 0&&(e.tint=t.tint),t.blendMode!==void 0&&(e.blendMode=t.blendMode)},repeat:function(e,t,n,r,i,a,o){n===void 0&&(n=0),r===void 0&&(r=0),i===void 0&&(i=this.width),a===void 0&&(a=this.height);var s=u(o,`alpha`,1),c=u(o,`tint`,16777215),l=u(o,`angle`,0),d=u(o,`rotation`,0),f=u(o,`scale`,1),m=u(o,`scaleX`,f),h=u(o,`scaleY`,f),g=u(o,`originX`,0),_=u(o,`originY`,0),v=u(o,`blendMode`,0);l!==0&&(d=l*Math.PI/180);var y=u(o,`tilePositionX`,0),b=u(o,`tilePositionY`,0),x=u(o,`tileRotation`,0),S=u(o,`tileScaleX`,1),C=u(o,`tileScaleY`,1);return this.commandBuffer.push(p.REPEAT,e,t,n,r,s,c,d,m,h,g,_,v,i,a,y,b,x,S,C),this},preserve:function(e){return this.commandBuffer.push(p.PRESERVE,e),this},callback:function(e){return this.commandBuffer.push(p.CALLBACK,e),this},snapshotArea:function(e,t,n,r,i,a,o){return this.drawingContext?this.renderer.snapshotFramebuffer(this.drawingContext.framebuffer,this.width,this.height,i,!1,e,t,n,r,a,o):this.renderer.snapshotCanvas(this.canvas,i,!1,e,t,n,r,a,o),this},snapshot:function(e,t,n){return this.snapshotArea(0,0,this.width,this.height,e,t,n)},snapshotPixel:function(e,t,n){return this.snapshotArea(e,t,1,1,n,`pixel`)},getWebGLTexture:function(){if(this.drawingContext)return this.drawingContext.texture},renderWebGL:function(e,t,n,r){var i=this.manager.resetStamp();i.setTexture(this),i.setOrigin(0),i.renderWebGLStep(e,i,n,r)},renderCanvas:function(){},destroy:function(){var e=this.manager.stamp;e&&e.texture===this&&this.manager.resetStamp(),d.prototype.destroy.call(this),a.remove(this.canvas),this.drawingContext&&this.drawingContext.destroy(),this.camera.destroy(),this.canvas=null,this.context=null,this.renderer=null}})},42538(e){e.exports={CLEAR:0,FILL:1,STAMP:2,REPEAT:3,DRAW:4,SET_ERASE:5,PRESERVE:6,CALLBACK:7,CAPTURE:8}},4327(e,t,n){var r=n(83419),i=n(45319),a=n(79291),o=new r({initialize:function(e,t,n,r,i,a,o){this.texture=e,this.name=t,this.source=e.source[n],this.sourceIndex=n,this.cutX,this.cutY,this.cutWidth,this.cutHeight,this.x=0,this.y=0,this.width,this.height,this.halfWidth,this.halfHeight,this.centerX,this.centerY,this.pivotX=0,this.pivotY=0,this.customPivot=!1,this.rotated=!1,this.autoRound=-1,this.customData={},this.u0=0,this.v0=0,this.u1=0,this.v1=0,this.data={cut:{x:0,y:0,w:0,h:0,r:0,b:0},trim:!1,sourceSize:{w:0,h:0},spriteSourceSize:{x:0,y:0,w:0,h:0,r:0,b:0},radius:0,drawImage:{x:0,y:0,width:0,height:0},is3Slice:!1,scale9:!1,scale9Borders:{x:0,y:0,w:0,h:0}},this.setSize(a,o,r,i)},setCutPosition:function(e,t){return e===void 0&&(e=0),t===void 0&&(t=0),this.cutX=e,this.cutY=t,this.updateUVs()},setCutSize:function(e,t){return this.cutWidth=e,this.cutHeight=t,this.updateUVs()},setSize:function(e,t,n,r){n===void 0&&(n=0),r===void 0&&(r=0),this.setCutPosition(n,r),this.setCutSize(e,t),this.width=e,this.height=t,this.halfWidth=Math.floor(e*.5),this.halfHeight=Math.floor(t*.5),this.centerX=Math.floor(e/2),this.centerY=Math.floor(t/2);var i=this.data,a=i.cut;a.x=n,a.y=r,a.w=e,a.h=t,a.r=n+e,a.b=r+t,i.sourceSize.w=e,i.sourceSize.h=t,i.spriteSourceSize.w=e,i.spriteSourceSize.h=t,i.radius=.5*Math.sqrt(e*e+t*t);var o=i.drawImage;return o.x=n,o.y=r,o.width=e,o.height=t,this.updateUVs()},setTrim:function(e,t,n,r,i,a){var o=this.data,s=o.spriteSourceSize;return o.trim=!0,o.sourceSize.w=e,o.sourceSize.h=t,s.x=n,s.y=r,s.w=i,s.h=a,s.r=n+i,s.b=r+a,this.x=n,this.y=r,this.width=i,this.height=a,this.halfWidth=i*.5,this.halfHeight=a*.5,this.centerX=Math.floor(i/2),this.centerY=Math.floor(a/2),this.updateUVs()},setScale9:function(e,t,n,r){var i=this.data;return i.scale9=!0,i.is3Slice=t===0&&r===this.height,i.scale9Borders.x=e,i.scale9Borders.y=t,i.scale9Borders.w=n,i.scale9Borders.h=r,this},setCropUVs:function(e,t,n,r,a,o,s){var c=this.cutX,l=this.cutY,u=this.cutWidth,d=this.cutHeight,f=this.realWidth,p=this.realHeight;t=i(t,0,f),n=i(n,0,p),r=i(r,0,f-t),a=i(a,0,p-n);var m=c+t,h=l+n,g=r,_=a,v=this.data;if(v.trim){var y=v.spriteSourceSize;r=i(r,0,y.x+u-t),a=i(a,0,y.y+d-n);var b=t+r,x=n+a;if(y.r<t||y.b<n||y.x>b||y.y>x)m=0,h=0,g=0,_=0;else{var S=Math.max(y.x,t),C=Math.max(y.y,n),w=Math.min(y.r,b)-S,T=Math.min(y.b,x)-C;g=w,_=T,m=o?c+(u-(S-y.x)-w):c+(S-y.x),h=s?l+(d-(C-y.y)-T):l+(C-y.y),t=S,n=C,r=w,a=T}}else o&&(m=c+(u-t-r)),s&&(h=l+(d-n-a));var E=this.source.width,D=this.source.height;return e.u0=Math.max(0,m/E),e.v0=1-Math.max(0,h/D),e.u1=Math.min(1,(m+g)/E),e.v1=1-Math.min(1,(h+_)/D),e.x=t,e.y=n,e.cx=m,e.cy=h,e.cw=g,e.ch=_,e.width=r,e.height=a,e.flipX=o,e.flipY=s,e},updateCropUVs:function(e,t,n){return this.setCropUVs(e,e.x,e.y,e.width,e.height,t,n)},setUVs:function(e,t,n,r,i,a){var o=this.data.drawImage;return o.width=e,o.height=t,this.u0=n,this.v0=r,this.u1=i,this.v1=a,this},updateUVs:function(){var e=this.cutX,t=this.cutY,n=this.cutWidth,r=this.cutHeight,i=this.data.drawImage;i.width=n,i.height=r;var a=this.source.width,o=this.source.height;return this.u0=e/a,this.v0=1-t/o,this.u1=(e+n)/a,this.v1=1-(t+r)/o,this},updateUVsInverted:function(){var e=this.source.width,t=this.source.height;return this.u0=(this.cutX+this.cutHeight)/e,this.v0=1-this.cutY/t,this.u1=this.cutX/e,this.v1=1-(this.cutY+this.cutWidth)/t,this},clone:function(){var e=new o(this.texture,this.name,this.sourceIndex);return e.cutX=this.cutX,e.cutY=this.cutY,e.cutWidth=this.cutWidth,e.cutHeight=this.cutHeight,e.x=this.x,e.y=this.y,e.width=this.width,e.height=this.height,e.halfWidth=this.halfWidth,e.halfHeight=this.halfHeight,e.centerX=this.centerX,e.centerY=this.centerY,e.rotated=this.rotated,e.data=a(!0,e.data,this.data),e.updateUVs(),e},destroy:function(){this.texture=null,this.source=null,this.customData=null,this.data=null},glTexture:{get:function(){return this.source.glTexture}},realWidth:{get:function(){return this.data.sourceSize.w}},realHeight:{get:function(){return this.data.sourceSize.h}},radius:{get:function(){return this.data.radius}},trimmed:{get:function(){return this.data.trim}},scale9:{get:function(){return this.data.scale9}},is3Slice:{get:function(){return this.data.is3Slice}},canvasData:{get:function(){return this.data.drawImage}}});e.exports=o},79237(e,t,n){var r=n(83419),i=n(4327),a=n(11876),o=`Texture "%s" has no frame "%s"`;e.exports=new r({initialize:function(e,t,n,r,i){Array.isArray(n)||(n=[n]),this.manager=e,this.key=t,this.source=[],this.dataSource=[],this.frames={},this.customData={},this.firstFrame=`__BASE`,this.frameTotal=0,this.smoothPixelArt=null;for(var o=0;o<n.length;o++)this.source.push(new a(this,n[o],r,i))},add:function(e,t,n,r,a,o){if(this.has(e))return null;var s=new i(this,e,t,n,r,a,o);return this.frames[e]=s,this.firstFrame===`__BASE`&&(this.firstFrame=e),this.frameTotal++,s},remove:function(e){return this.has(e)?(this.get(e).destroy(),delete this.frames[e],!0):!1},has:function(e){return this.frames.hasOwnProperty(e)},get:function(e){e||=this.firstFrame;var t=this.frames[e];return t||=(console.warn(o,this.key,e),this.frames[this.firstFrame]),t},getTextureSourceIndex:function(e){for(var t=0;t<this.source.length;t++)if(this.source[t]===e)return t;return-1},getFramesFromTextureSource:function(e,t){t===void 0&&(t=!1);var n=[];for(var r in this.frames)if(!(r===`__BASE`&&!t)){var i=this.frames[r];i.sourceIndex===e&&n.push(i)}return n},getFrameBounds:function(e){e===void 0&&(e=0);for(var t=this.getFramesFromTextureSource(e,!0),n=t[0],r=n.cutX,i=n.cutY,a=n.cutX+n.cutWidth,o=n.cutY+n.cutHeight,s=1;s<t.length-1;s++){var c=t[s];c.cutX<r&&(r=c.cutX),c.cutY<i&&(i=c.cutY),c.cutX+c.cutWidth>a&&(a=c.cutX+c.cutWidth),c.cutY+c.cutHeight>o&&(o=c.cutY+c.cutHeight)}return{x:r,y:i,width:a-r,height:o-i}},getFrameNames:function(e){e===void 0&&(e=!1);var t=Object.keys(this.frames);if(!e){var n=t.indexOf(`__BASE`);n!==-1&&t.splice(n,1)}return t},getSourceImage:function(e){(e==null||this.frameTotal===1)&&(e=`__BASE`);var t=this.frames[e];return t?t.source.image:(console.warn(o,this.key,e),this.frames.__BASE.source.image)},getDataSourceImage:function(e){(e==null||this.frameTotal===1)&&(e=`__BASE`);var t=this.frames[e],n;return t?n=t.sourceIndex:(console.warn(o,this.key,e),n=this.frames.__BASE.sourceIndex),this.dataSource[n].image},setSource:function(e,t,n,r,i){t===void 0&&(t=0),n===void 0&&(n=!1),Array.isArray(e)||(e=[e]);for(var o=0;o<e.length;o++){var s=o+t,c=e[o];c instanceof a&&(c=c.source);var l=this.source[s],u=c.naturalWidth||c.videoWidth||c.width||l.width||r||0,d=c.naturalHeight||c.videoHeight||c.height||l.height||i||0;if(l){if(!n){l.updateSource(c);continue}l.destroy()}this.source[s]=new a(this,c,u,d)}},setDataSource:function(e,t,n,r,i){t===void 0&&(t=0),n===void 0&&(n=!1),Array.isArray(e)||(e=[e]);for(var o=0;o<e.length;o++){var s=o+t,c=e[o],l=this.dataSource[s],u=c.naturalWidth||c.videoWidth||c.width||l.width||r||0,d=c.naturalHeight||c.videoHeight||c.height||l.height||i||0;if(l){if(!n){l.updateSource(c);continue}l.destroy()}this.dataSource[s]=new a(this,c,u,d)}},setFilter:function(e){var t;for(t=0;t<this.source.length;t++)this.source[t].setFilter(e);for(t=0;t<this.dataSource.length;t++)this.dataSource[t].setFilter(e)},setSmoothPixelArt:function(e){this.smoothPixelArt=e,e&&this.setFilter(Phaser.Textures.FilterMode.LINEAR)},setWrap:function(e,t){t===void 0&&(t=e);for(var n=0;n<this.source.length;n++)this.source[n].setWrap(e,t);for(n=0;n<this.dataSource.length;n++)this.dataSource[n].setWrap(e,t)},destroy:function(){var e,t=this.source,n=this.dataSource;for(e=0;e<t.length;e++)t[e]&&t[e].destroy();for(e=0;e<n.length;e++)n[e]&&n[e].destroy();for(var r in this.frames){var i=this.frames[r];i&&i.destroy()}this.source=[],this.dataSource=[],this.frames={},this.manager.removeKey(this.key),this.manager=null}})},17130(e,t,n){var r=n(27919),i=n(57382),a=n(83419),o=n(40987),s=n(8054),c=n(81320),l=n(50792),u=n(69442),d=n(4327),f=n(8443),p=n(35154),m=n(88571),h=n(30100),g=n(41212),_=n(61309),v=n(87841),y=n(79237),b=n(20839);e.exports=new a({Extends:l,initialize:function(e){l.call(this),this.game=e,this.name=`TextureManager`,this.list={},this._tempCanvas=r.create2D(this),this._tempContext=this._tempCanvas.getContext(`2d`,{willReadFrequently:!0}),this._pending=0,this.stamp,this.stampCrop=new v,this.tileSprite,this.silentWarnings=!1,e.events.once(f.BOOT,this.boot,this)},boot:function(){this._pending=3,this.on(u.LOAD,this.updatePending,this),this.on(u.ERROR,this.updatePending,this);var e=this.game.config;e.defaultImage!==null&&this.addBase64(`__DEFAULT`,e.defaultImage),e.missingImage!==null&&this.addBase64(`__MISSING`,e.missingImage),e.whiteImage!==null&&this.addBase64(`__WHITE`,e.whiteImage),this.game.renderer&&this.game.renderer.gl&&this.addUint8Array(`__NORMAL`,new Uint8Array([127,127,255,255]),1,1),this.game.events.once(f.DESTROY,this.destroy,this),this.game.events.once(f.SYSTEM_READY,function(e){this.stamp=new m(e).setOrigin(0),this.tileSprite=new b(e,0,0,256,256,`__WHITE`).setOrigin(0)},this)},updatePending:function(){this._pending--,this._pending===0&&(this.off(u.LOAD),this.off(u.ERROR),this.emit(u.READY))},checkKey:function(e){return!e||typeof e!=`string`||this.exists(e)?(this.silentWarnings||console.error(`Texture key already in use: `+e),!1):!0},remove:function(e){if(typeof e==`string`)if(this.exists(e))e=this.get(e);else return this.silentWarnings||console.warn(`No texture found matching key: `+e),this;var t=e.key;return this.list.hasOwnProperty(t)&&(e.destroy(),this.emit(u.REMOVE,t),this.emit(u.REMOVE_KEY+t)),this},removeKey:function(e){return this.list.hasOwnProperty(e)&&delete this.list[e],this},addBase64:function(e,t){if(this.checkKey(e)){var n=this,r=new Image;r.onerror=function(){n.emit(u.ERROR,e)},r.onload=function(){var t=n.create(e,r);t&&(_.Image(t,0),n.emit(u.ADD,e,t),n.emit(u.ADD_KEY+e,t),n.emit(u.LOAD,e,t))},r.src=t}return this},getBase64:function(e,t,n,i){n===void 0&&(n=`image/png`),i===void 0&&(i=.92);var a=``,o=this.getFrame(e,t);if(o&&(o.source.isRenderTexture||o.source.isGLTexture))this.silentWarnings||console.warn(`Cannot getBase64 from WebGL Texture`);else if(o){var s=o.canvasData,c=r.create2D(this,s.width,s.height),l=c.getContext(`2d`,{willReadFrequently:!0});s.width>0&&s.height>0&&l.drawImage(o.source.image,s.x,s.y,s.width,s.height,0,0,s.width,s.height),a=c.toDataURL(n,i),r.remove(c)}return a},addImage:function(e,t,n){var r=null;return this.checkKey(e)&&(r=this.create(e,t),_.Image(r,0),n&&r.setDataSource(n),this.emit(u.ADD,e,r),this.emit(u.ADD_KEY+e,r)),r},addGLTexture:function(e,t){var n=null;if(this.checkKey(e)){var r=t.width,i=t.height;n=this.create(e,t,r,i),n.add(`__BASE`,0,0,0,r,i),this.emit(u.ADD,e,n),this.emit(u.ADD_KEY+e,n)}return n},addCompressedTexture:function(e,t,n){var r=null;if(this.checkKey(e)){if(r=this.create(e,t),r.add(`__BASE`,0,0,0,t.width,t.height),n){var i=function(e,t,n){Array.isArray(n.textures)||Array.isArray(n.frames)?_.JSONArray(e,t,n):_.JSONHash(e,t,n)};if(Array.isArray(n))for(var a=0;a<n.length;a++)i(r,a,n[a]);else i(r,0,n)}this.emit(u.ADD,e,r),this.emit(u.ADD_KEY+e,r)}return r},addRenderTexture:function(e,t){var n=null;return this.checkKey(e)&&(n=this.create(e,t),n.add(`__BASE`,0,0,0,t.width,t.height),this.emit(u.ADD,e,n),this.emit(u.ADD_KEY+e,n)),n},createCanvas:function(e,t,n){if(t===void 0&&(t=256),n===void 0&&(n=256),this.checkKey(e)){var i=r.create(this,t,n,s.CANVAS,!0);return this.addCanvas(e,i)}return null},addCanvas:function(e,t,n){n===void 0&&(n=!1);var r=null;return n?r=new i(this,e,t,t.width,t.height):this.checkKey(e)&&(r=new i(this,e,t,t.width,t.height),this.list[e]=r,this.emit(u.ADD,e,r),this.emit(u.ADD_KEY+e,r)),r},addDynamicTexture:function(e,t,n,r){var i=null;return typeof e==`string`&&!this.exists(e)?(r===void 0&&(r=!0),i=new c(this,e,t,n,r)):(i=e,e=i.key),this.checkKey(e)?(this.list[e]=i,this.emit(u.ADD,e,i),this.emit(u.ADD_KEY+e,i)):i=null,i},addAtlas:function(e,t,n,r){return n&&!Array.isArray(n)&&Array.isArray(n.pages)&&n.frames&&!Array.isArray(n.frames)?this.addAtlasPCT(e,t,n,r):Array.isArray(n.textures)||Array.isArray(n.frames)?this.addAtlasJSONArray(e,t,n,r):this.addAtlasJSONHash(e,t,n,r)},addAtlasJSONArray:function(e,t,n,r){var i=null;if(t instanceof y?(e=t.key,i=t):this.checkKey(e)&&(i=this.create(e,t)),i){if(Array.isArray(n))for(var a=n.length===1,o=0;o<i.source.length;o++){var s=a?n[0]:n[o];_.JSONArray(i,o,s)}else _.JSONArray(i,0,n);r&&i.setDataSource(r),this.emit(u.ADD,e,i),this.emit(u.ADD_KEY+e,i)}return i},addAtlasJSONHash:function(e,t,n,r){var i=null;if(t instanceof y?(e=t.key,i=t):this.checkKey(e)&&(i=this.create(e,t)),i){if(Array.isArray(n))for(var a=0;a<n.length;a++)_.JSONHash(i,a,n[a]);else _.JSONHash(i,0,n);r&&i.setDataSource(r),this.emit(u.ADD,e,i),this.emit(u.ADD_KEY+e,i)}return i},addAtlasPCT:function(e,t,n,r){var i=null;return t instanceof y?(e=t.key,i=t):this.checkKey(e)&&(i=this.create(e,t)),i&&(_.PCT(i,n),r&&i.setDataSource(r),this.emit(u.ADD,e,i),this.emit(u.ADD_KEY+e,i)),i},addAtlasXML:function(e,t,n,r){var i=null;return t instanceof y?(e=t.key,i=t):this.checkKey(e)&&(i=this.create(e,t)),i&&(_.AtlasXML(i,0,n),r&&i.setDataSource(r),this.emit(u.ADD,e,i),this.emit(u.ADD_KEY+e,i)),i},addUnityAtlas:function(e,t,n,r){var i=null;return t instanceof y?(e=t.key,i=t):this.checkKey(e)&&(i=this.create(e,t)),i&&(_.UnityYAML(i,0,n),r&&i.setDataSource(r),this.emit(u.ADD,e,i),this.emit(u.ADD_KEY+e,i)),i},addSpriteSheet:function(e,t,n,r){var i=null;if(t instanceof y?(e=t.key,i=t):this.checkKey(e)&&(i=this.create(e,t)),i){var a=i.source[0].width,o=i.source[0].height;_.SpriteSheet(i,0,0,0,a,o,n),r&&i.setDataSource(r),this.emit(u.ADD,e,i),this.emit(u.ADD_KEY+e,i)}return i},addSpriteSheetFromAtlas:function(e,t){if(!this.checkKey(e))return null;var n=p(t,`atlas`,null),r=p(t,`frame`,null);if(!(!n||!r)){var i=this.get(n).get(r);if(i){var a=i.source.image;a||=i.source.glTexture;var o=this.create(e,a);return i.trimmed?_.SpriteSheetFromAtlas(o,i,t):_.SpriteSheet(o,0,i.cutX,i.cutY,i.cutWidth,i.cutHeight,t),this.emit(u.ADD,e,o),this.emit(u.ADD_KEY+e,o),o}}},addUint8Array:function(e,t,n,r){if(!this.checkKey(e)||t.length/4!==n*r)return null;var i=this.create(e,t,n,r);return i.add(`__BASE`,0,0,0,n,r),this.emit(u.ADD,e,i),this.emit(u.ADD_KEY+e,i),i},addFlatColor:function(e,t,n,r,i){if(!this.checkKey(e)||t<=0||n<=0)return null;r===void 0&&(r=0),i===void 0&&(i=0);for(var a=h(r),o=a.red,s=a.green,c=a.blue,l=new Uint8Array(t*n*4),u=0;u<t*n;u++)l[u*4]=o,l[u*4+1]=s,l[u*4+2]=c,l[u*4+3]=i*255;return this.addUint8Array(e,l,t,n)},create:function(e,t,n,r){var i=null;return this.checkKey(e)&&(i=new y(this,e,t,n,r),this.list[e]=i),i},exists:function(e){return this.list.hasOwnProperty(e)},get:function(e){return e===void 0&&(e=`__DEFAULT`),this.list[e]?this.list[e]:e instanceof y?e:e instanceof d?e.texture:this.list.__MISSING},cloneFrame:function(e,t){if(this.list[e])return this.list[e].get(t).clone()},getFrame:function(e,t){if(this.list[e])return this.list[e].get(t)},parseFrame:function(e){if(e){if(typeof e==`string`)return this.getFrame(e);if(Array.isArray(e)&&e.length===2)return this.getFrame(e[0],e[1]);if(g(e))return this.getFrame(e.key,e.frame);if(e instanceof y)return e.get();if(e instanceof d)return e}},getTextureKeys:function(){var e=[];for(var t in this.list)t!==`__DEFAULT`&&t!==`__MISSING`&&t!==`__WHITE`&&t!==`__NORMAL`&&e.push(t);return e},getPixel:function(e,t,n,r){var i=this.getFrame(n,r);if(i){var a=i.source,s=a.image;if(!(a.isCanvas||a.isVideo||s instanceof HTMLImageElement))return console.warn(`TextureManager.getPixelAlpha: The texture source must be Image, Canvas, or Video`),null;e-=i.x,t-=i.y;var c=i.data.cut;if(e+=c.x,t+=c.y,e>=c.x&&e<c.r&&t>=c.y&&t<c.b){var l=this._tempContext;l.clearRect(0,0,1,1),l.drawImage(s,e,t,1,1,0,0,1,1);var u=l.getImageData(0,0,1,1);return new o(u.data[0],u.data[1],u.data[2],u.data[3])}}return null},getPixelAlpha:function(e,t,n,r){var i=this.getFrame(n,r);if(i){var a=i.source,o=a.image;if(!(a.isCanvas||a.isVideo||o instanceof HTMLImageElement))return console.warn(`TextureManager.getPixelAlpha: The texture source must be Image, Canvas, or Video`),null;e-=i.x,t-=i.y;var s=i.data.cut;if(e+=s.x,t+=s.y,e>=s.x&&e<s.r&&t>=s.y&&t<s.b){var c=this._tempContext;return c.clearRect(0,0,1,1),c.drawImage(o,e,t,1,1,0,0,1,1),c.getImageData(0,0,1,1).data[3]}}return null},setTexture:function(e,t,n){return this.list[t]&&(e.texture=this.list[t],e.frame=e.texture.get(n)),e},renameTexture:function(e,t){var n=this.get(e);return n&&e!==t?(n.key=t,this.list[t]=n,delete this.list[e],!0):!1},each:function(e,t){for(var n=[null],r=1;r<arguments.length;r++)n.push(arguments[r]);for(var i in this.list)n[0]=this.list[i],e.apply(t,n)},resetStamp:function(e,t){e===void 0&&(e=1),t===void 0&&(t=16777215);var n=this.stamp;return n.setCrop(),n.setPosition(0),n.setAngle(0),n.setScale(1),n.setAlpha(e),n.setTint(t),n.setTexture(`__WHITE`),n},resetTileSprite:function(e,t){e===void 0&&(e=1),t===void 0&&(t=16777215);var n=this.tileSprite;return n.setPosition(0),n.setAngle(0),n.setScale(1),n.setAlpha(e),n.setTint(t),n.setTexture(`__WHITE`),n},destroy:function(){for(var e in this.list)this.list[e].destroy();this.list={},this.stamp.destroy(),this.game=null,this.stamp=null,r.remove(this._tempCanvas)}})},11876(e,t,n){var r=n(27919),i=n(83419),a=n(50030),o=n(29795),s=n(82751);e.exports=new i({initialize:function(e,t,n,r,i){i===void 0&&(i=!0);var c=e.manager.game;this.renderer=c.renderer,this.texture=e,this.source=t,this.image=t.compressed?null:t,this.compressionAlgorithm=t.compressed?t.format:null,this.resolution=1,this.width=n||t.naturalWidth||t.videoWidth||t.width||0,this.height=r||t.naturalHeight||t.videoHeight||t.height||0,this.scaleMode=o.DEFAULT,this.isCanvas=t instanceof HTMLCanvasElement,this.isVideo=window.hasOwnProperty(`HTMLVideoElement`)&&t instanceof HTMLVideoElement,this.isRenderTexture=t.type===`RenderTexture`||t.type===`DynamicTexture`,this.isGLTexture=t instanceof s,this.isPowerOf2=a(this.width,this.height),this.glTexture=null,this.flipY=i,this.init(c)},init:function(e){var t=this.renderer;if(t){var n=this.source;if(t.gl){var r=this.image,i=this.flipY,a=this.width,o=this.height,s=this.scaleMode;this.isCanvas?this.glTexture=t.createCanvasTexture(r,!1,i):this.isVideo?this.glTexture=t.createVideoTexture(r,!1,i):this.isRenderTexture?this.glTexture=t.createTextureFromSource(null,a,o,s,void 0,i):this.isGLTexture?this.glTexture=n:this.compressionAlgorithm?this.glTexture=t.createTextureFromSource(n,void 0,void 0,s,void 0,i):n instanceof Uint8Array?this.glTexture=t.createUint8ArrayTexture(n,a,o,void 0,i):this.glTexture=t.createTextureFromSource(r,a,o,s,void 0,i)}else this.isRenderTexture&&(this.image=n.canvas)}e.config.antialias||this.setFilter(1)},setFilter:function(e){this.renderer&&this.renderer.gl&&this.renderer.setTextureFilter(this.glTexture,e),this.scaleMode=e},setFlipY:function(e){return e===void 0&&(e=!0),e===this.flipY?this:(this.flipY=e,this.update(),this)},setWrap:function(e,t){return this.renderer&&this.renderer.gl&&this.renderer.setTextureWrap(this.glTexture,e,t),this},update:function(){var e=this.renderer,t=this.image,n=this.flipY;if(e.gl){var r=this.glTexture;this.isCanvas?e.updateCanvasTexture(t,r,n):this.isVideo?e.updateVideoTexture(t,r,n):r.update(this.source,this.width,this.height,n,r.wrapS,r.wrapT,r.magFilter,r.minFilter,r.format)}},updateSize:function(e,t){this.width===e&&this.height===t||(this.width=e,this.height=t,this.isPowerOf2=a(e,t))},updateSource:function(e){this.isCanvas&&e!==this.image&&!(e instanceof HTMLCanvasElement)&&r.remove(this.image),this.source=e,this.image=e.compressed?null:e,this.compressionAlgorithm=e.compressed?e.format:null,this.width=e.naturalWidth||e.videoWidth||e.width||0,this.height=e.naturalHeight||e.videoHeight||e.height||0,this.isPowerOf2=a(this.width,this.height),this.isCanvas=e instanceof HTMLCanvasElement,this.isVideo=window.hasOwnProperty(`HTMLVideoElement`)&&e instanceof HTMLVideoElement,this.isRenderTexture=e.type===`RenderTexture`||e.type===`DynamicTexture`,this.isGLTexture=e instanceof s,this.update()},destroy:function(){this.glTexture&&this.renderer.deleteTexture(this.glTexture),this.isCanvas&&r.remove(this.image),this.renderer=null,this.texture=null,this.source=null,this.image=null,this.glTexture=null}})},43378(e){e.exports={CLAMP_TO_EDGE:33071,REPEAT:10497,MIRRORED_REPEAT:33648}},19673(e){e.exports={LINEAR:0,NEAREST:1}},44538(e){e.exports=`addtexture`},63486(e){e.exports=`addtexture-`},94851(e){e.exports=`onerror`},29099(e){e.exports=`onload`},8678(e){e.exports=`ready`},86415(e){e.exports=`removetexture`},30879(e){e.exports=`removetexture-`},69442(e,t,n){e.exports={ADD:n(44538),ADD_KEY:n(63486),ERROR:n(94851),LOAD:n(29099),READY:n(8678),REMOVE:n(86415),REMOVE_KEY:n(30879)}},27458(e,t,n){var r=n(79291),i=n(19673),a=n(43378),o={CanvasTexture:n(57382),DynamicTexture:n(81320),Events:n(69442),FilterMode:i,Frame:n(4327),Parsers:n(61309),Texture:n(79237),TextureManager:n(17130),TextureSource:n(11876),WrapMode:a};o=r(!1,o,i),o=r(!1,o,a),e.exports=o},89905(e){e.exports=function(e,t,n){if(!n.getElementsByTagName(`TextureAtlas`)){console.warn(`Invalid Texture Atlas XML given`);return}var r=e.source[t];e.add(`__BASE`,t,0,0,r.width,r.height);for(var i=n.getElementsByTagName(`SubTexture`),a,o=0;o<i.length;o++){var s=i[o].attributes,c=s.name.value,l=parseInt(s.x.value,10),u=parseInt(s.y.value,10),d=parseInt(s.width.value,10),f=parseInt(s.height.value,10);if(a=e.add(c,t,l,u,d,f),s.frameX){var p=Math.abs(parseInt(s.frameX.value,10)),m=Math.abs(parseInt(s.frameY.value,10)),h=parseInt(s.frameWidth.value,10),g=parseInt(s.frameHeight.value,10);a.setTrim(h,g,p,m,d,f)}}return e}},72893(e){e.exports=function(e,t){var n=e.source[t];return e.add(`__BASE`,t,0,0,n.width,n.height),e}},4832(e){e.exports=function(e,t){var n=e.source[t];return e.add(`__BASE`,t,0,0,n.width,n.height),e}},78566(e,t,n){var r=n(41786);e.exports=function(e,t,n){if(!n.frames&&!n.textures){console.warn(`Invalid Texture Atlas JSON Array`);return}var i=e.source[t];e.add(`__BASE`,t,0,0,i.width,i.height);for(var a=Array.isArray(n.textures)?n.textures[t].frames:n.frames,o,s=0;s<a.length;s++){var c=a[s];if(o=e.add(c.filename,t,c.frame.x,c.frame.y,c.frame.w,c.frame.h),!o){console.warn(`Invalid atlas json, frame already exists: `+c.filename);continue}c.trimmed&&o.setTrim(c.sourceSize.w,c.sourceSize.h,c.spriteSourceSize.x,c.spriteSourceSize.y,c.spriteSourceSize.w,c.spriteSourceSize.h),c.rotated&&(o.rotated=!0,o.updateUVsInverted());var l=c.anchor||c.pivot;l&&(o.customPivot=!0,o.pivotX=l.x,o.pivotY=l.y),c.scale9Borders&&o.setScale9(c.scale9Borders.x,c.scale9Borders.y,c.scale9Borders.w,c.scale9Borders.h),o.customData=r(c)}for(var u in n)u!==`frames`&&(Array.isArray(n[u])?e.customData[u]=n[u].slice(0):e.customData[u]=n[u]);return e}},39711(e,t,n){var r=n(41786);e.exports=function(e,t,n){if(!n.frames){console.warn(`Invalid Texture Atlas JSON Hash given, missing 'frames' Object`);return}var i=e.source[t];e.add(`__BASE`,t,0,0,i.width,i.height);var a=n.frames,o;for(var s in a)if(a.hasOwnProperty(s)){var c=a[s];if(o=e.add(s,t,c.frame.x,c.frame.y,c.frame.w,c.frame.h),!o){console.warn(`Invalid atlas json, frame already exists: `+s);continue}c.trimmed&&o.setTrim(c.sourceSize.w,c.sourceSize.h,c.spriteSourceSize.x,c.spriteSourceSize.y,c.spriteSourceSize.w,c.spriteSourceSize.h),c.rotated&&(o.rotated=!0,o.updateUVsInverted());var l=c.anchor||c.pivot;l&&(o.customPivot=!0,o.pivotX=l.x,o.pivotY=l.y),c.scale9Borders&&o.setScale9(c.scale9Borders.x,c.scale9Borders.y,c.scale9Borders.w,c.scale9Borders.h),o.customData=r(c)}for(var u in n)u!==`frames`&&(Array.isArray(n[u])?e.customData[u]=n[u].slice(0):e.customData[u]=n[u]);return e}},31403(e){e.exports=function(e){var t=[171,75,84,88,32,49,49,187,13,10,26,10],n,r=new Uint8Array(e,0,12);for(n=0;n<r.length;n++)if(r[n]!==t[n]){console.warn(`KTXParser - Invalid file format`);return}var i=Uint32Array.BYTES_PER_ELEMENT,a=new DataView(e,12,13*i),o=a.getUint32(0,!0)===67305985;if(a.getUint32(1*i,o)!==0){console.warn(`KTXParser - Only compressed formats supported`);return}var s=a.getUint32(4*i,o),c=a.getUint32(6*i,o),l=a.getUint32(7*i,o),u=Math.max(1,a.getUint32(11*i,o)),d=a.getUint32(12*i,o),f=Array(u),p=64+d,m=c,h=l;for(n=0;n<u;n++){var g=new Int32Array(e,p,1)[0];p+=4,f[n]={data:new Uint8Array(e,p,g),width:m,height:h},m=Math.max(1,m>>1),h=Math.max(1,h>>1),p+=g}return{mipmaps:f,width:c,height:l,internalFormat:s,compressed:!0,generateMipmap:!1}}},41942(e){e.exports=function(e,t){if(!t||!t.frames||!t.pages){console.warn(`Invalid PCT atlas data given`);return}var n=e.source[0];e.add(`__BASE`,0,0,0,n.width,n.height);var r=t.frames;for(var i in r)if(r.hasOwnProperty(i)){var a=r[i],o=a.page|0;if(o>=e.source.length){console.warn(`PCT atlas frame "`+i+`" references missing page `+o);continue}var s=e.add(a.key||i,o,a.x,a.y,a.w,a.h);if(!s){console.warn(`Invalid PCT atlas, frame already exists: `+i);continue}a.trimmed&&s.setTrim(a.sourceW,a.sourceH,a.trimX,a.trimY,a.w,a.h),a.rotated&&(s.rotated=!0,s.updateUVsInverted())}return e.customData.pct={pages:t.pages,folders:t.folders},e}},39620(e){var t={1:`.png`,2:`.webp`,3:`.jpg`,4:`.jpeg`,5:`.gif`},n=function(e){if(e.length===0)return!1;for(var t=0;t<e.length;t++){var n=e.charCodeAt(t);if(n<48||n>57)return!1}return!0},r=function(e,t){for(var n=String(e);n.length<t;)n=`0`+n;return n},i=function(e,r,i){var a=e,o=``,s=a.indexOf(`/`);s>0&&n(a.substring(0,s))&&(o=r[parseInt(a.substring(0,s),10)],a=a.substring(s+1));var c=/~([1-5])$/.exec(a);if(c){var l=t[parseInt(c[1],10)];a=a.substring(0,a.length-2)+l}else i&&(a+=i);return o?o+`/`+a:a},a=function(e,n){var a=``,o=/~([1-5])$/.exec(e);o&&(a=t[parseInt(o[1],10)],e=e.substring(0,e.length-2));for(var s=[],c=e.split(`,`),l=0;l<c.length;l++){var u=c[l],d=u.indexOf(`#`);if(d>=0)for(var f=u.substring(0,d),p=u.substring(d+1),m=p.indexOf(`-`),h=p.substring(0,m),g=p.substring(m+1),_=parseInt(h,10),v=parseInt(g,10),y=h.length>1&&h.charAt(0)===`0`?h.length:0,b=_;b<=v;b++){var x=y>0?r(b,y):String(b);s.push(i(f+x,n,a))}else s.push(i(u,n,a))}return s};e.exports=function(e){if(typeof e!=`string`||e.length===0)return console.warn(`Invalid PCT file: empty or not a string`),null;var t=e.split(`
98
+ `),n=t[0];if(n.charCodeAt(n.length-1)===13&&(n=n.substring(0,n.length-1)),!n||n.indexOf(`PCT:`)!==0)return console.warn(`Not a PCT file: missing PCT: header`),null;var r=n.substring(4),o=r.split(`.`),s=parseInt(o[0],10);if(isNaN(s)||s>1)return console.warn(`Unsupported PCT version: `+r),null;for(var c=[],l=[],u={},d=0,f=null,p=1;p<t.length;p++){var m=t[p];if(m&&!(m.charCodeAt(m.length-1)===13&&(m=m.substring(0,m.length-1),!m))){if(f!==null){var h=f;f=null;for(var g=c[h.page].padding,_=h.frameW+g*2,v=h.frameH+g*2,y=a(m,l),b=0;b<y.length;b++){var x=b%h.cols,S=Math.floor(b/h.cols),C=y[b],w={key:C,page:h.page,x:h.x+x*_+g,y:h.y+S*v+g,w:h.frameW,h:h.frameH,trimmed:h.trimmed,rotated:!1};h.trimmed?(w.sourceW=h.sourceW,w.sourceH=h.sourceH,w.trimX=h.trimX,w.trimY=h.trimY):(w.sourceW=h.frameW,w.sourceH=h.frameH,w.trimX=0,w.trimY=0),u[C]=w}continue}var T=m.substring(0,2);if(T===`P:`){var E=m.substring(2).split(`,`);c.push({filename:E[0],format:E[1],width:parseInt(E[2],10),height:parseInt(E[3],10),padding:parseInt(E[4],10)})}else if(T===`F:`)l.push(m.substring(2));else if(m.charAt(0)===`#`)d=parseInt(m.substring(1),10);else if(T===`B:`){var D=m.substring(2).split(`|`),O=D[0].split(`,`),k={page:d,x:parseInt(O[0],10),y:parseInt(O[1],10),cols:parseInt(O[2],10),frameW:parseInt(O[3],10),frameH:parseInt(O[4],10),trimmed:D.length>1};if(k.trimmed){var A=D[1].split(`,`);k.sourceW=parseInt(A[0],10),k.sourceH=parseInt(A[1],10),k.trimX=parseInt(A[2],10),k.trimY=parseInt(A[3],10)}f=k}else if(T===`A:`){var j=m.indexOf(`=`,2);if(j===-1)continue;var M=i(m.substring(2,j),l,``),N=a(m.substring(j+1),l),P=u[M];if(P)for(var F=0;F<N.length;F++){var I=N[F],L={};for(var R in P)L[R]=P[R];L.key=I,u[I]=L}}else{var z=m.split(`|`);if(z.length<3)continue;var B=i(z[0],l,``),V=parseInt(z[1],10),H=(V&2)!=0,U=z[2].split(`,`),W={key:B,page:d,x:parseInt(U[0],10),y:parseInt(U[1],10),w:parseInt(U[2],10),h:parseInt(U[3],10),trimmed:H,rotated:(V&1)!=0};if(H){var G=z[3].split(`,`);W.sourceW=parseInt(G[0],10),W.sourceH=parseInt(G[1],10),W.trimX=parseInt(G[2],10),W.trimY=parseInt(G[3],10)}else W.sourceW=W.w,W.sourceH=W.h,W.trimX=0,W.trimY=0;u[B]=W}}}return{pages:c,folders:l,frames:u}}},82038(e){function t(e,t,n,r,i,a,o){return o===void 0&&(o=16),Math.floor((e+n)/i)*Math.floor((t+r)/a)*o}function n(e,t){return e=Math.max(e,16),t=Math.max(t,8),e*t/4}function r(e,t){return e=Math.max(e,8),t=Math.max(t,8),e*t/2}function i(e,t){return Math.ceil(e/4)*Math.ceil(t/4)*16}function a(e,n){return t(e,n,3,3,4,4,8)}function o(e,n){return t(e,n,3,3,4,4)}function s(e,n){return t(e,n,4,3,5,4)}function c(e,n){return t(e,n,4,4,5,5)}function l(e,n){return t(e,n,5,4,6,5)}function u(e,n){return t(e,n,5,5,6,6)}function d(e,n){return t(e,n,7,4,8,5)}function f(e,n){return t(e,n,7,5,8,6)}function p(e,n){return t(e,n,7,7,8,8)}function m(e,n){return t(e,n,9,4,10,5)}function h(e,n){return t(e,n,9,5,10,6)}function g(e,n){return t(e,n,9,7,10,8)}function _(e,n){return t(e,n,9,9,10,10)}function v(e,n){return t(e,n,11,9,12,10)}function y(e,n){return t(e,n,11,11,12,12)}var b={0:{sizeFunc:n,glFormat:[35841]},1:{sizeFunc:n,glFormat:[35843]},2:{sizeFunc:r,glFormat:[35840]},3:{sizeFunc:r,glFormat:[35842]},6:{sizeFunc:a,glFormat:[36196]},7:{sizeFunc:a,glFormat:[33776,35916]},8:{sizeFunc:o,glFormat:[33777,35917]},9:{sizeFunc:o,glFormat:[33778,35918]},11:{sizeFunc:o,glFormat:[33779,35919]},14:{sizeFunc:i,glFormat:[36494,36495]},15:{sizeFunc:i,glFormat:[36492,36493]},22:{sizeFunc:a,glFormat:[37492,37493]},23:{sizeFunc:o,glFormat:[37496,37497]},24:{sizeFunc:a,glFormat:[37494,37495]},25:{sizeFunc:a,glFormat:[37488]},26:{sizeFunc:o,glFormat:[37490]},27:{sizeFunc:o,glFormat:[37808,37840]},28:{sizeFunc:s,glFormat:[37809,37841]},29:{sizeFunc:c,glFormat:[37810,37842]},30:{sizeFunc:l,glFormat:[37811,37843]},31:{sizeFunc:u,glFormat:[37812,37844]},32:{sizeFunc:d,glFormat:[37813,37845]},33:{sizeFunc:f,glFormat:[37814,37846]},34:{sizeFunc:p,glFormat:[37815,37847]},35:{sizeFunc:m,glFormat:[37816,37848]},36:{sizeFunc:h,glFormat:[37817,37849]},37:{sizeFunc:g,glFormat:[37818,37850]},38:{sizeFunc:_,glFormat:[37819,37851]},39:{sizeFunc:v,glFormat:[37820,37852]},40:{sizeFunc:y,glFormat:[37821,37853]}};e.exports=function(e){for(var t=new Uint32Array(e,0,13),n=t[0]===55727696?t[2]:t[3],r=t[4],i=b[n].glFormat[r],a=b[n].sizeFunc,o=t[11],s=t[7],c=t[6],l=52+t[12],u=new Uint8Array(e,l),d=Array(o),f=0,p=s,m=c,h=0;h<o;h++){var g=a(p,m);d[h]={data:new Uint8Array(u.buffer,u.byteOffset+f,g),width:p,height:m},p=Math.max(1,p>>1),m=Math.max(1,m>>1),f+=g}return{mipmaps:d,width:s,height:c,internalFormat:i,compressed:!0,generateMipmap:!1}}},75549(e,t,n){var r=n(95540);e.exports=function(e,t,n,i,a,o,s){var c=r(s,`frameWidth`,null),l=r(s,`frameHeight`,c);if(c===null)throw Error(`TextureManager.SpriteSheet: Invalid frameWidth given.`);var u=e.source[t];e.add(`__BASE`,t,0,0,u.width,u.height);var d=r(s,`startFrame`,0),f=r(s,`endFrame`,-1),p=r(s,`margin`,0),m=r(s,`spacing`,0),h=Math.floor((a-p+m)/(c+m))*Math.floor((o-p+m)/(l+m));h===0&&console.warn(`SpriteSheet frame dimensions will result in zero frames for texture:`,e.key),(d>h||d<-h)&&(d=0),d<0&&(d=h+d),(f===-1||f>h||f<d)&&(f=h);for(var g=p,_=p,v=0,y=0,b=0,x=0;x<h;x++){v=0,y=0;var S=g+c,C=_+l;S>a&&(v=S-a),C>o&&(y=C-o),x>=d&&x<=f&&(e.add(b,t,n+g,i+_,c-v,l-y),b++),g+=c+m,g+c>a&&(g=p,_+=l+m)}return e}},47534(e,t,n){var r=n(95540);e.exports=function(e,t,n){var i=r(n,`frameWidth`,null),a=r(n,`frameHeight`,i);if(!i)throw Error(`TextureManager.SpriteSheetFromAtlas: Invalid frameWidth given.`);var o=e.source[0];e.add(`__BASE`,0,0,0,o.width,o.height);var s=r(n,`startFrame`,0),c=r(n,`endFrame`,-1),l=r(n,`margin`,0),u=r(n,`spacing`,0),d=t.cutX,f=t.cutY,p=t.cutWidth,m=t.cutHeight,h=t.realWidth,g=t.realHeight,_=Math.floor((h-l+u)/(i+u)),v=Math.floor((g-l+u)/(a+u)),y=_*v,b=t.x,x=i-b,S=i-(h-p-b),C=t.y,w=a-C,T=a-(g-m-C);(s>y||s<-y)&&(s=0),s<0&&(s=y+s),c!==-1&&(y=s+(c+1));for(var E,D=l,O=l,k=0,A=0,j=0;j<v;j++){for(var M=j===0,N=j===v-1,P=0;P<_;P++){var F=P===0,I=P===_-1;if(E=e.add(k,A,d+D,f+O,i,a),F||M||I||N){var L=F?b:0,R=M?C:0,z=0,B=0;F&&(z+=i-x),I&&(z+=i-S),M&&(B+=a-w),N&&(B+=a-T);var V=i-z,H=a-B;E.cutWidth=V,E.cutHeight=H,E.setTrim(i,a,L,R,V,H)}D+=u,F?D+=x:I?D+=S:D+=i,k++}D=l,O+=u,M?O+=w:N?O+=T:O+=a}return e}},86147(e){var t=0,n=function(e,n,r,i){var a=t-i.y-i.height;e.add(r,n,i.x,a,i.width,i.height)};e.exports=function(e,r,i){var a=e.source[r];e.add(`__BASE`,r,0,0,a.width,a.height),t=a.height;for(var o=i.split(`
99
+ `),s=/^[ ]*(- )*(\w+)+[: ]+(.*)/,c=``,l=``,u={x:0,y:0,width:0,height:0},d=0;d<o.length;d++){var f=o[d].match(s);if(f){var p=f[1]===`- `,m=f[2],h=f[3];if(p&&(l!==c&&(n(e,r,l,u),c=l),u={x:0,y:0,width:0,height:0}),m===`name`){l=h;continue}switch(m){case`x`:case`y`:case`width`:case`height`:u[m]=parseInt(h,10);break}}}return l!==c&&n(e,r,l,u),e}},55222(e,t,n){var r=n(50030),i=function(e){for(var t=e.mipmaps,n=1;n<t.length;n++){var i=t[n].width,a=t[n].height;if(!r(i,a))return console.warn(`Mip level `+n+` is not a power-of-two size: `+i+`x`+a),!1}var o=l[e.internalFormat];return o?o(e):(console.warn(`No format checker found for internal format `+e.internalFormat+`. Assuming valid.`),!0)};function a(e){for(var t=e.mipmaps,n=0;n<t.length;n++){var r=t[n].width,i=t[n].height;if((r<<n)%4!=0||(i<<n)%4!=0)return console.warn(`BPTC, RGTC, and S3TC dimensions must be a multiple of 4 pixels, and each successive mip level must be half the size of the previous level, rounded down. Mip level `+n+` is `+r+`x`+i),!1}return!0}function o(){return!0}function s(e){var t=e.mipmaps[0];return r(t.width,t.height)?!0:(console.warn(`PVRTC base dimensions must be power of two. Base level is `+t.width+`x`+t.height),!1)}function c(e){var t=e.mipmaps[0];return t.width%4!=0||t.height%4!=0?(console.warn(`S3TC SRGB base dimensions must be a multiple of 4 pixels. Base level is `+t.width+`x`+t.height+` pixels`),!1):!0}var l={37488:o,37489:o,37490:o,37491:o,37492:o,37493:o,37494:o,37495:o,37496:o,37497:o,36196:o,37808:o,37809:o,37810:o,37811:o,37812:o,37813:o,37814:o,37815:o,37816:o,37817:o,37818:o,37819:o,37820:o,37821:o,37840:o,37841:o,37842:o,37843:o,37844:o,37845:o,37846:o,37847:o,37848:o,37849:o,37850:o,37851:o,37852:o,37853:o,36492:a,36493:a,36494:a,36495:a,36283:a,36284:a,36285:a,36286:a,35840:s,35841:s,35842:s,35843:s,33776:a,33777:a,33778:a,33779:a,35916:c,35917:c,35918:c,35919:c};e.exports=i},61309(e,t,n){e.exports={AtlasXML:n(89905),Canvas:n(72893),Image:n(4832),JSONArray:n(78566),JSONHash:n(39711),KTXParser:n(31403),PCT:n(41942),PCTDecode:n(39620),PVRParser:n(82038),SpriteSheet:n(75549),SpriteSheetFromAtlas:n(47534),UnityYAML:n(86147)}},80341(e){e.exports={CSV:0,TILED_JSON:1,ARRAY_2D:2,WELTMEISTER:3}},16536(e,t,n){e.exports=new(n(83419))({initialize:function(e,t,n,r,i,a,o){(n===void 0||n<=0)&&(n=32),(r===void 0||r<=0)&&(r=32),i===void 0&&(i=0),a===void 0&&(a=0),this.name=e,this.firstgid=t|0,this.imageWidth=n|0,this.imageHeight=r|0,this.imageMargin=i|0,this.imageSpacing=a|0,this.properties=o||{},this.images=[],this.total=0},containsImageIndex:function(e){return e>=this.firstgid&&e<this.firstgid+this.total},addImage:function(e,t,n,r){return this.images.push({gid:e,image:t,width:n,height:r}),this.total++,this}})},27462(e,t,n){e.exports=new(n(83419))({initialize:function(e){if(this.gids=[],e!==void 0)for(var t=0;t<e.length;++t)for(var n=e[t],r=0;r<n.total;++r)this.gids[n.firstgid+r]=n;this._gids=this.gids},enabled:{get:function(){return!!this.gids},set:function(e){this.gids=e?this._gids:void 0}},getTypeIncludingTile:function(e){if(e.type!==void 0&&e.type!==``)return e.type;if(!(!this.gids||e.gid===void 0)){var t=this.gids[e.gid];if(t){var n=t.getTileData(e.gid);if(n)return n.type}}},setTextureAndFrame:function(e,t,n,r){if(t===null&&this.gids&&r.gid!==void 0){var i=this.gids[r.gid];i&&(t===null&&i.image!==void 0&&(t=i.image.key),n===null&&(n=r.gid-i.firstgid),e.scene.textures.getFrame(t,n)||(t=null,n=null))}e.setTexture(t,n)},setPropertiesFromTiledObject:function(e,t){if(this.gids!==void 0&&t.gid!==void 0){var n=this.gids[t.gid];n!==void 0&&this.setFromJSON(e,n.getTileProperties(t.gid))}this.setFromJSON(e,t.properties)},setFromJSON:function(e,t){if(t){if(Array.isArray(t)){for(var n=0;n<t.length;n++){var r=t[n];e[r.name]===void 0?e.setData(r.name,r.value):e[r.name]=r.value}return}for(var i in t)e[i]===void 0?e.setData(i,t[i]):e[i]=t[i]}}})},31989(e,t,n){var r=n(80341),i=n(87010),a=n(46177),o=n(49075);e.exports=function(e,t,n,s,c,l,u,d){n===void 0&&(n=32),s===void 0&&(s=32),c===void 0&&(c=10),l===void 0&&(l=10),d===void 0&&(d=!1);var f=null;if(Array.isArray(u))f=a(t===void 0?`map`:t,r.ARRAY_2D,u,n,s,d);else if(t!==void 0){var p=e.cache.tilemap.get(t);p?f=a(t,p.format,p.data,n,s,d):console.warn(`No map data found for key `+t)}return f===null&&(f=new i({tileWidth:n,tileHeight:s,width:c,height:l})),new o(e,f)}},23029(e,t,n){var r=n(83419),i=n(31401),a=n(91907),o=n(62644),s=n(93232),c=n(84322);e.exports=new r({Mixins:[i.AlphaSingle,i.Flip,i.Visible],initialize:function(e,t,n,r,i,a,o,s){this.layer=e,this.index=t,this.x=n,this.y=r,this.width=i,this.height=a,this.right,this.bottom,this.baseWidth=o===void 0?i:o,this.baseHeight=s===void 0?a:s,this.pixelX=0,this.pixelY=0,this.updatePixelXY(),this.properties={},this.rotation=0,this.collideLeft=!1,this.collideRight=!1,this.collideUp=!1,this.collideDown=!1,this.faceLeft=!1,this.faceRight=!1,this.faceTop=!1,this.faceBottom=!1,this.collisionCallback=void 0,this.collisionCallbackContext=this,this.tint=16777215,this.tintMode=c.MULTIPLY,this.physics={}},containsPoint:function(e,t){return!(e<this.pixelX||t<this.pixelY||e>this.right||t>this.bottom)},copy:function(e){return this.index=e.index,this.alpha=e.alpha,this.properties=o(e.properties),this.visible=e.visible,this.setFlip(e.flipX,e.flipY),this.tint=e.tint,this.rotation=e.rotation,this.collideUp=e.collideUp,this.collideDown=e.collideDown,this.collideLeft=e.collideLeft,this.collideRight=e.collideRight,this.collisionCallback=e.collisionCallback,this.collisionCallbackContext=e.collisionCallbackContext,this},getCollisionGroup:function(){return this.tileset?this.tileset.getTileCollisionGroup(this.index):null},getTileData:function(){return this.tileset?this.tileset.getTileData(this.index):null},getLeft:function(e){var t=this.tilemapLayer;return t?t.tileToWorldXY(this.x,this.y,void 0,e).x:this.x*this.baseWidth},getRight:function(e){var t=this.tilemapLayer;return t?this.getLeft(e)+this.width*t.scaleX:this.getLeft(e)+this.width},getTop:function(e){var t=this.tilemapLayer;return t?t.tileToWorldXY(this.x,this.y,void 0,e).y:this.y*this.baseWidth-(this.height-this.baseHeight)},getBottom:function(e){var t=this.tilemapLayer;return t?this.getTop(e)+this.height*t.scaleY:this.getTop(e)+this.height},getBounds:function(e,t){return t===void 0&&(t=new s),t.x=this.getLeft(e),t.y=this.getTop(e),t.width=this.getRight(e)-t.x,t.height=this.getBottom(e)-t.y,t},getCenterX:function(e){return(this.getLeft(e)+this.getRight(e))/2},getCenterY:function(e){return(this.getTop(e)+this.getBottom(e))/2},intersects:function(e,t,n,r){return!(n<=this.pixelX||r<=this.pixelY||e>=this.right||t>=this.bottom)},isInteresting:function(e,t){return e&&t?this.canCollide||this.hasInterestingFace:e?this.collides:t?this.hasInterestingFace:!1},resetCollision:function(e){return e===void 0&&(e=!0),this.collideLeft=!1,this.collideRight=!1,this.collideUp=!1,this.collideDown=!1,this.faceTop=!1,this.faceBottom=!1,this.faceLeft=!1,this.faceRight=!1,e&&this.tilemapLayer&&this.tilemapLayer.calculateFacesAt(this.x,this.y),this},resetFaces:function(){return this.faceTop=!1,this.faceBottom=!1,this.faceLeft=!1,this.faceRight=!1,this},setCollision:function(e,t,n,r,i){return t===void 0&&(t=e),n===void 0&&(n=e),r===void 0&&(r=e),i===void 0&&(i=!0),this.collideLeft=e,this.collideRight=t,this.collideUp=n,this.collideDown=r,this.faceLeft=e,this.faceRight=t,this.faceTop=n,this.faceBottom=r,i&&this.tilemapLayer&&this.tilemapLayer.calculateFacesAt(this.x,this.y),this},setCollisionCallback:function(e,t){return e===null?(this.collisionCallback=void 0,this.collisionCallbackContext=void 0):(this.collisionCallback=e,this.collisionCallbackContext=t),this},setSize:function(e,t,n,r){return e!==void 0&&(this.width=e),t!==void 0&&(this.height=t),n!==void 0&&(this.baseWidth=n),r!==void 0&&(this.baseHeight=r),this.updatePixelXY(),this},updatePixelXY:function(){var e=this.layer.orientation;if(e===a.ORTHOGONAL)this.pixelX=this.x*this.baseWidth,this.pixelY=this.y*this.baseHeight;else if(e===a.ISOMETRIC)this.pixelX=(this.x-this.y)*this.baseWidth*.5,this.pixelY=(this.x+this.y)*this.baseHeight*.5;else if(e===a.STAGGERED)this.pixelX=this.x*this.baseWidth+this.y%2*(this.baseWidth/2),this.pixelY=this.y*(this.baseHeight/2);else if(e===a.HEXAGONAL){var t=this.layer.staggerAxis,n=this.layer.staggerIndex,r=this.layer.hexSideLength,i,o;t===`y`?(o=(this.baseHeight-r)/2+r,n===`odd`?this.pixelX=this.x*this.baseWidth+this.y%2*(this.baseWidth/2):this.pixelX=this.x*this.baseWidth-this.y%2*(this.baseWidth/2),this.pixelY=this.y*o):t===`x`&&(i=(this.baseWidth-r)/2+r,this.pixelX=this.x*i,n===`odd`?this.pixelY=this.y*this.baseHeight+this.x%2*(this.baseHeight/2):this.pixelY=this.y*this.baseHeight-this.x%2*(this.baseHeight/2))}return this.right=this.pixelX+this.baseWidth,this.bottom=this.pixelY+this.baseHeight,this},destroy:function(){this.collisionCallback=void 0,this.collisionCallbackContext=void 0,this.properties=void 0},canCollide:{get:function(){return this.collideLeft||this.collideRight||this.collideUp||this.collideDown||this.collisionCallback!==void 0}},collides:{get:function(){return this.collideLeft||this.collideRight||this.collideUp||this.collideDown}},hasInterestingFace:{get:function(){return this.faceTop||this.faceBottom||this.faceLeft||this.faceRight}},tileset:{get:function(){var e=this.layer.tilemapLayer;if(e){var t=e.gidMap[this.index];if(t)return t}return null}},tilemapLayer:{get:function(){return this.layer.tilemapLayer}},tilemap:{get:function(){var e=this.tilemapLayer;return e?e.tilemap:null}}})},49075(e,t,n){var r=n(84101),i=n(83419),a=n(39506),o=n(80341),s=n(95540),c=n(14977),l=n(27462),u=n(91907),d=n(36305),f=n(19133),p=n(68287),m=n(23029),h=n(81086),g=n(44731),_=n(53180),v=n(20442),y=n(33629);e.exports=new i({initialize:function(e,t){this.scene=e,this.tileWidth=t.tileWidth,this.tileHeight=t.tileHeight,this.width=t.width,this.height=t.height,this.orientation=t.orientation,this.renderOrder=t.renderOrder,this.format=t.format,this.version=t.version,this.properties=t.properties,this.widthInPixels=t.widthInPixels,this.heightInPixels=t.heightInPixels,this.imageCollections=t.imageCollections,this.images=t.images,this.layers=t.layers,this.tiles=t.tiles,this.tilesets=t.tilesets,this.objects=t.objects,this.currentLayerIndex=0,this.hexSideLength=t.hexSideLength;var n=this.orientation;this._convert={WorldToTileXY:h.GetWorldToTileXYFunction(n),WorldToTileX:h.GetWorldToTileXFunction(n),WorldToTileY:h.GetWorldToTileYFunction(n),TileToWorldXY:h.GetTileToWorldXYFunction(n),TileToWorldX:h.GetTileToWorldXFunction(n),TileToWorldY:h.GetTileToWorldYFunction(n),GetTileCorners:h.GetTileCornersFunction(n)}},setRenderOrder:function(e){var t=[`right-down`,`left-down`,`right-up`,`left-up`];return typeof e==`number`&&(e=t[e]),t.indexOf(e)>-1&&(this.renderOrder=e),this},addTilesetImage:function(e,t,n,i,a,s,c,l){if(e===void 0)return null;t??=e;var u=this.scene.sys.textures;if(!u.exists(t))return console.warn(`Texture key "%s" not found`,t),null;var d=u.get(t),f=this.getTilesetIndex(e);if(f===null&&this.format===o.TILED_JSON)return console.warn(`Tilemap has no tileset "%s". Its tilesets are %o`,e,this.tilesets),null;var p=this.tilesets[f];return p?((n||i)&&p.setTileSize(n,i),(a||s)&&p.setSpacing(a,s),p.setImage(d),p):(n===void 0&&(n=this.tileWidth),i===void 0&&(i=this.tileHeight),a===void 0&&(a=0),s===void 0&&(s=0),c===void 0&&(c=0),l===void 0&&(l={x:0,y:0}),p=new y(e,c,n,i,a,s,void 0,void 0,l),p.setImage(d),this.tilesets.push(p),this.tiles=r(this),p)},copy:function(e,t,n,r,i,a,o,s){return s=this.getLayer(s),s===null?null:(h.Copy(e,t,n,r,i,a,o,s),this)},createBlankLayer:function(e,t,n,r,i,a,o,s){if(n===void 0&&(n=0),r===void 0&&(r=0),i===void 0&&(i=this.width),a===void 0&&(a=this.height),o===void 0&&(o=this.tileWidth),s===void 0&&(s=this.tileHeight),this.getLayerIndex(e)!==null)return console.warn(`Invalid Tilemap Layer ID: `+e),null;for(var l=new c({name:e,tileWidth:o,tileHeight:s,width:i,height:a,orientation:this.orientation,hexSideLength:this.hexSideLength}),u,d=0;d<a;d++){u=[];for(var f=0;f<i;f++)u.push(new m(l,-1,f,d,o,s,this.tileWidth,this.tileHeight));l.data.push(u)}this.layers.push(l),this.currentLayerIndex=this.layers.length-1;var p=new v(this.scene,this,this.currentLayerIndex,t,n,r);return p.setRenderOrder(this.renderOrder),this.scene.sys.displayList.add(p),p},createLayer:function(e,t,n,r,i){var a=this.getLayerIndex(e);if(a===null)return console.warn(`Invalid Tilemap Layer ID: `+e),typeof e==`string`&&console.warn(`Valid tilelayer names: %o`,this.getTileLayerNames()),null;var o=this.layers[a];if(o.tilemapLayer)return console.warn(`Tilemap Layer ID already exists:`+e),null;this.currentLayerIndex=a,n===void 0&&(n=o.x),r===void 0&&(r=o.y);var s;return i?(Array.isArray(t)&&(t.length>1&&console.warn(`TilemapGPULayer can only use one tileset. Using the first item given.`),t=t[0]),s=new _(this.scene,this,a,t,n,r)):(s=new v(this.scene,this,a,t,n,r),s.setRenderOrder(this.renderOrder)),this.scene.sys.displayList.add(s),s},createFromObjects:function(e,t,n){n===void 0&&(n=!0);var r=[],i=this.getObjectLayer(e);if(!i)return console.warn(`createFromObjects: Invalid objectLayerName given: `+e),r;var o=new l(n?this.tilesets:void 0);Array.isArray(t)||(t=[t]);var c=i.objects;t.sortByY&&c.sort(function(e,t){return e.y>t.y?1:-1});for(var f=0;f<t.length;f++){var m=t[f],h=s(m,`id`,null),g=s(m,`gid`,null),_=s(m,`name`,null),v=s(m,`type`,null);o.enabled=!s(m,`ignoreTileset`,null);for(var y,b=[],x=0;x<c.length;x++)y=c[x],(h===null&&g===null&&_===null&&v===null||h!==null&&y.id===h||g!==null&&y.gid===g||_!==null&&y.name===_||v!==null&&o.getTypeIncludingTile(y)===v)&&b.push(y);for(var S=s(m,`classType`,p),C=s(m,`scene`,this.scene),w=s(m,`container`,null),T=s(m,`key`,null),E=s(m,`frame`,null),D=0;D<b.length;D++){y=b[D];var O=new S(C);if(O.setName(y.name),O.setPosition(y.x,y.y),o.setTextureAndFrame(O,T,E,y),y.width&&(O.displayWidth=y.width),y.height&&(O.displayHeight=y.height),this.orientation===u.ISOMETRIC){var k=this.tileWidth/this.tileHeight,A={x:O.x-O.y,y:(O.x+O.y)/k};O.x=A.x,O.y=A.y}var j={x:O.originX*y.width,y:(O.originY-+!!y.gid)*y.height};if(y.rotation){var M=a(y.rotation);d(j,M),O.rotation=M}O.x+=j.x,O.y+=j.y,(y.flippedHorizontal!==void 0||y.flippedVertical!==void 0)&&O.setFlip(y.flippedHorizontal,y.flippedVertical),y.visible||(O.visible=!1),o.setPropertiesFromTiledObject(O,y),w?w.add(O):C.add.existing(O),r.push(O)}}return r},createFromTiles:function(e,t,n,r,i,a){return a=this.getLayer(a),a===null?null:h.CreateFromTiles(e,t,n,r,i,a)},fill:function(e,t,n,r,i,a,o){return a===void 0&&(a=!0),o=this.getLayer(o),o===null?null:(h.Fill(e,t,n,r,i,a,o),this)},filterObjects:function(e,t,n){if(typeof e==`string`){var r=e;if(e=this.getObjectLayer(e),!e)return console.warn(`No object layer found with the name: `+r),null}return e.objects.filter(t,n)},filterTiles:function(e,t,n,r,i,a,o,s){return s=this.getLayer(s),s===null?null:h.FilterTiles(e,t,n,r,i,a,o,s)},findByIndex:function(e,t,n,r){return r=this.getLayer(r),r===null?null:h.FindByIndex(e,t,n,r)},findObject:function(e,t,n){if(typeof e==`string`){var r=e;if(e=this.getObjectLayer(e),!e)return console.warn(`No object layer found with the name: `+r),null}return e.objects.find(t,n)||null},findTile:function(e,t,n,r,i,a,o,s){return s=this.getLayer(s),s===null?null:h.FindTile(e,t,n,r,i,a,o,s)},forEachTile:function(e,t,n,r,i,a,o,s){return s=this.getLayer(s),s===null?null:(h.ForEachTile(e,t,n,r,i,a,o,s),this)},getImageIndex:function(e){return this.getIndex(this.images,e)},getImageLayerNames:function(){return!this.images||!Array.isArray(this.images)?[]:this.images.map(function(e){return e.name})},getIndex:function(e,t){for(var n=0;n<e.length;n++)if(e[n].name===t)return n;return null},getLayer:function(e){var t=this.getLayerIndex(e);return t===null?null:this.layers[t]},getObjectLayer:function(e){var t=this.getIndex(this.objects,e);return t===null?null:this.objects[t]},getObjectLayerNames:function(){return!this.objects||!Array.isArray(this.objects)?[]:this.objects.map(function(e){return e.name})},getLayerIndex:function(e){return e===void 0?this.currentLayerIndex:typeof e==`string`?this.getLayerIndexByName(e):typeof e==`number`&&e<this.layers.length?e:e instanceof g&&e.tilemap===this?e.layerIndex:null},getLayerIndexByName:function(e){return this.getIndex(this.layers,e)},getTileAt:function(e,t,n,r){return r=this.getLayer(r),r===null?null:h.GetTileAt(e,t,n,r)},getTileAtWorldXY:function(e,t,n,r,i){return i=this.getLayer(i),i===null?null:h.GetTileAtWorldXY(e,t,n,r,i)},getTileLayerNames:function(){return!this.layers||!Array.isArray(this.layers)?[]:this.layers.map(function(e){return e.name})},getTilesWithin:function(e,t,n,r,i,a){return a=this.getLayer(a),a===null?null:h.GetTilesWithin(e,t,n,r,i,a)},getTilesWithinShape:function(e,t,n,r){return r=this.getLayer(r),r===null?null:h.GetTilesWithinShape(e,t,n,r)},getTilesWithinWorldXY:function(e,t,n,r,i,a,o){return o=this.getLayer(o),o===null?null:h.GetTilesWithinWorldXY(e,t,n,r,i,a,o)},getTileset:function(e){var t=this.getIndex(this.tilesets,e);return t===null?null:this.tilesets[t]},getTilesetIndex:function(e){return this.getIndex(this.tilesets,e)},hasTileAt:function(e,t,n){return n=this.getLayer(n),n===null?null:h.HasTileAt(e,t,n)},hasTileAtWorldXY:function(e,t,n,r){return r=this.getLayer(r),r===null?null:h.HasTileAtWorldXY(e,t,n,r)},layer:{get:function(){return this.layers[this.currentLayerIndex]},set:function(e){this.setLayer(e)}},putTileAt:function(e,t,n,r,i){return r===void 0&&(r=!0),i=this.getLayer(i),i===null?null:h.PutTileAt(e,t,n,r,i)},putTileAtWorldXY:function(e,t,n,r,i,a){return r===void 0&&(r=!0),a=this.getLayer(a),a===null?null:h.PutTileAtWorldXY(e,t,n,r,i,a)},putTilesAt:function(e,t,n,r,i){return r===void 0&&(r=!0),i=this.getLayer(i),i===null?null:(h.PutTilesAt(e,t,n,r,i),this)},randomize:function(e,t,n,r,i,a){return a=this.getLayer(a),a===null?null:(h.Randomize(e,t,n,r,i,a),this)},calculateFacesAt:function(e,t,n){return n=this.getLayer(n),n===null?null:(h.CalculateFacesAt(e,t,n),this)},calculateFacesWithin:function(e,t,n,r,i){return i=this.getLayer(i),i===null?null:(h.CalculateFacesWithin(e,t,n,r,i),this)},removeLayer:function(e){var t=this.getLayerIndex(e);if(t!==null){f(this.layers,t);for(var n=t;n<this.layers.length;n++)this.layers[n].tilemapLayer&&this.layers[n].tilemapLayer.layerIndex--;return this.currentLayerIndex===t&&(this.currentLayerIndex=0),this}else return null},destroyLayer:function(e){var t=this.getLayerIndex(e);return t===null?null:(e=this.layers[t],e.tilemapLayer.destroy(),f(this.layers,t),this.currentLayerIndex===t&&(this.currentLayerIndex=0),this)},removeAllLayers:function(){for(var e=this.layers,t=0;t<e.length;t++)e[t].tilemapLayer&&e[t].tilemapLayer.destroy(!1);return e.length=0,this.currentLayerIndex=0,this},removeTile:function(e,t,n){t===void 0&&(t=-1),n===void 0&&(n=!0);var r=[];Array.isArray(e)||(e=[e]);for(var i=0;i<e.length;i++){var a=e[i];r.push(this.removeTileAt(a.x,a.y,!0,n,a.tilemapLayer)),t>-1&&this.putTileAt(t,a.x,a.y,n,a.tilemapLayer)}return r},removeTileAt:function(e,t,n,r,i){return n===void 0&&(n=!0),r===void 0&&(r=!0),i=this.getLayer(i),i===null?null:h.RemoveTileAt(e,t,n,r,i)},removeTileAtWorldXY:function(e,t,n,r,i,a){return n===void 0&&(n=!0),r===void 0&&(r=!0),a=this.getLayer(a),a===null?null:h.RemoveTileAtWorldXY(e,t,n,r,i,a)},renderDebug:function(e,t,n){return n=this.getLayer(n),n===null?null:(this.orientation===u.ORTHOGONAL&&h.RenderDebug(e,t,n),this)},renderDebugFull:function(e,t){for(var n=this.layers,r=0;r<n.length;r++)h.RenderDebug(e,t,n[r]);return this},replaceByIndex:function(e,t,n,r,i,a,o){return o=this.getLayer(o),o===null?null:(h.ReplaceByIndex(e,t,n,r,i,a,o),this)},setCollision:function(e,t,n,r,i){return t===void 0&&(t=!0),n===void 0&&(n=!0),i===void 0&&(i=!0),r=this.getLayer(r),r===null?null:(h.SetCollision(e,t,n,r,i),this)},setCollisionBetween:function(e,t,n,r,i){return n===void 0&&(n=!0),r===void 0&&(r=!0),i=this.getLayer(i),i===null?null:(h.SetCollisionBetween(e,t,n,r,i),this)},setCollisionByProperty:function(e,t,n,r){return t===void 0&&(t=!0),n===void 0&&(n=!0),r=this.getLayer(r),r===null?null:(h.SetCollisionByProperty(e,t,n,r),this)},setCollisionByExclusion:function(e,t,n,r){return t===void 0&&(t=!0),n===void 0&&(n=!0),r=this.getLayer(r),r===null?null:(h.SetCollisionByExclusion(e,t,n,r),this)},setCollisionFromCollisionGroup:function(e,t,n){return e===void 0&&(e=!0),t===void 0&&(t=!0),n=this.getLayer(n),n===null?null:(h.SetCollisionFromCollisionGroup(e,t,n),this)},setTileIndexCallback:function(e,t,n,r){return r=this.getLayer(r),r===null?null:(h.SetTileIndexCallback(e,t,n,r),this)},setTileLocationCallback:function(e,t,n,r,i,a,o){return o=this.getLayer(o),o===null?null:(h.SetTileLocationCallback(e,t,n,r,i,a,o),this)},setLayer:function(e){var t=this.getLayerIndex(e);return t!==null&&(this.currentLayerIndex=t),this},setBaseTileSize:function(e,t){this.tileWidth=e,this.tileHeight=t,this.widthInPixels=this.width*e,this.heightInPixels=this.height*t;for(var n=0;n<this.layers.length;n++){this.layers[n].baseTileWidth=e,this.layers[n].baseTileHeight=t;for(var r=this.layers[n].data,i=this.layers[n].width,a=this.layers[n].height,o=0;o<a;o++)for(var s=0;s<i;s++){var c=r[o][s];c!==null&&c.setSize(void 0,void 0,e,t)}}return this},setLayerTileSize:function(e,t,n){if(n=this.getLayer(n),n===null)return this;n.tileWidth=e,n.tileHeight=t;for(var r=n.data,i=n.width,a=n.height,o=0;o<a;o++)for(var s=0;s<i;s++){var c=r[o][s];c!==null&&c.setSize(e,t)}return this},shuffle:function(e,t,n,r,i){return i=this.getLayer(i),i===null?null:(h.Shuffle(e,t,n,r,i),this)},swapByIndex:function(e,t,n,r,i,a,o){return o=this.getLayer(o),o===null?null:(h.SwapByIndex(e,t,n,r,i,a,o),this)},tileToWorldX:function(e,t,n){return n=this.getLayer(n),n===null?null:this._convert.TileToWorldX(e,t,n)},tileToWorldY:function(e,t,n){return n=this.getLayer(n),n===null?null:this._convert.TileToWorldY(e,t,n)},tileToWorldXY:function(e,t,n,r,i){return i=this.getLayer(i),i===null?null:this._convert.TileToWorldXY(e,t,n,r,i)},getTileCorners:function(e,t,n,r){return r=this.getLayer(r),r===null?null:this._convert.GetTileCorners(e,t,n,r)},weightedRandomize:function(e,t,n,r,i,a){return a=this.getLayer(a),a===null?null:(h.WeightedRandomize(t,n,r,i,e,a),this)},worldToTileX:function(e,t,n,r){return r=this.getLayer(r),r===null?null:this._convert.WorldToTileX(e,t,n,r)},worldToTileY:function(e,t,n,r){return r=this.getLayer(r),r===null?null:this._convert.WorldToTileY(e,t,n,r)},worldToTileXY:function(e,t,n,r,i,a){return a=this.getLayer(a),a===null?null:this._convert.WorldToTileXY(e,t,n,r,i,a)},destroy:function(){this.removeAllLayers(),this.tiles.length=0,this.tilesets.length=0,this.objects.length=0,this.scene=null}})},45939(e,t,n){var r=n(44603),i=n(31989);r.register(`tilemap`,function(e){var t=e===void 0?{}:e;return i(this.scene,t.key,t.tileWidth,t.tileHeight,t.width,t.height,t.data,t.insertNull)})},46029(e,t,n){var r=n(39429),i=n(31989);r.register(`tilemap`,function(e,t,n,r,a,o,s){return e===null&&(e=void 0),t===null&&(t=void 0),n===null&&(n=void 0),r===null&&(r=void 0),a===null&&(a=void 0),i(this.scene,e,t,n,r,a,o,s)})},53180(e,t,n){var r=n(67743),i=n(83419),a=n(44731);e.exports=new i({Extends:a,Mixins:[n(57912)],initialize:function(e,t,n,r,i,o){a.call(this,`TilemapGPULayer`,e,t,n,i,o),this.tileset=null,this.layerDataTexture=null,this.setTileset(r),this.initRenderNodes(this._defaultRenderNodesMap)},_defaultRenderNodesMap:{get:function(){return r}},setTileset:function(e){typeof e==`string`&&(e=this.tilemap.getTileset(e)),this.tileset=e,this.generateLayerDataTexture()},generateLayerDataTexture:function(){for(var e=this.layer,t=this.tileset,n=t.firstgid,r=this.scene.renderer,i=t.getAnimationDataIndexMap(r),a=new Uint32Array(e.width*e.height),o=0;o<e.height;o++)for(var s=0;s<e.width;s++){var c=e.data[o][s],l=c.index-n,u=c.flipX,d=c.flipY,f=!1;i.has(l)&&(l=i.get(l),f=!0),u&&(l|=2147483648),d&&(l|=1073741824),f&&(l|=536870912),c.index===-1&&(l=268435456),a[o*e.width+s]=l}this.layerDataTexture&&this.layerDataTexture.destroy();var p=new Uint8Array(a.buffer);this.layerDataTexture=r.createUint8ArrayTexture(p,e.width,e.height,!1,!0)}})},57912(e,t,n){var r=n(29747),i=r,a=r;i=n(6736),e.exports={renderWebGL:i,renderCanvas:a}},6736(e){e.exports=function(e,t,n,r){(t.customRenderNodes.Submitter||t.defaultRenderNodes.Submitter).run(n,t,r)}},20442(e,t,n){var r=n(79317),i=n(83419),a=n(81086),o=n(19218),s=n(44731),c=n(84322);e.exports=new i({Extends:s,Mixins:[o],initialize:function(e,t,n,r,i,o){s.call(this,`TilemapLayer`,e,t,n,i,o),this.tileset=[],this.tilesDrawn=0,this.tilesTotal=this.layer.width*this.layer.height,this.culledTiles=[],this.skipCull=!1,this.cullPaddingX=1,this.cullPaddingY=1,this.cullCallback=a.GetCullTilesFunction(this.layer.orientation),this._renderOrder=0,this.setTilesets(r),this.initRenderNodes(this._defaultRenderNodesMap)},_defaultRenderNodesMap:{get:function(){return r}},setTilesets:function(e){var t=[],n=[],r=this.tilemap;Array.isArray(e)||(e=[e]);for(var i=0;i<e.length;i++){var a=e[i];if(typeof a==`string`&&(a=r.getTileset(a)),a){n.push(a);for(var o=a.firstgid,s=0;s<a.total;s++)t[o+s]=a}}this.gidMap=t,this.tileset=n},setRenderOrder:function(e){return typeof e==`string`&&(e=[`right-down`,`left-down`,`right-up`,`left-up`].indexOf(e)),e>=0&&e<4&&(this._renderOrder=e),this},cull:function(e){return this.cullCallback(this.layer,e,this.culledTiles,this._renderOrder)},setSkipCull:function(e){return e===void 0&&(e=!0),this.skipCull=e,this},setCullPadding:function(e,t){return e===void 0&&(e=1),t===void 0&&(t=1),this.cullPaddingX=e,this.cullPaddingY=t,this},setTint:function(e,t,n,r,i,a){return e===void 0&&(e=16777215),this.forEachTile(function(t){t.tint=e},this,t,n,r,i,a)},setTintMode:function(e,t,n,r,i,a){return e===void 0&&(e=c.MULTIPLY),this.forEachTile(function(t){t.tintMode=e},this,t,n,r,i,a)},destroy:function(e){this.culledTiles.length=0,this.cullCallback=null,s.prototype.destroy.call(this,e)}})},44731(e,t,n){var r=n(83419),i=n(78389),a=n(31401),o=n(95643),s=n(81086),c=n(26099);e.exports=new r({Extends:o,Mixins:[a.Alpha,a.BlendMode,a.ComputedSize,a.Depth,a.ElapseTimer,a.Flip,a.GetBounds,a.Lighting,a.Mask,a.Origin,a.RenderNodes,a.Transform,a.Visible,a.ScrollFactor,i],initialize:function(e,t,n,r,i,a){o.call(this,t,e),this.isTilemap=!0,this.tilemap=n,this.layerIndex=r,this.layer=n.layers[r],this.layer.tilemapLayer=this,this.gidMap=[],this.tempVec=new c,this.collisionCategory=1,this.collisionMask=1,this.setAlpha(this.layer.alpha),this.setPosition(i,a),this.setOrigin(0,0),this.setSize(n.tileWidth*this.layer.width,n.tileHeight*this.layer.height)},addedToScene:function(){this.scene.sys.updateList.add(this)},removedFromScene:function(){this.scene.sys.updateList.remove(this)},preUpdate:function(e,t){this.updateTimer(e,t)},calculateFacesAt:function(e,t){return s.CalculateFacesAt(e,t,this.layer),this},calculateFacesWithin:function(e,t,n,r){return s.CalculateFacesWithin(e,t,n,r,this.layer),this},createFromTiles:function(e,t,n,r,i){return s.CreateFromTiles(e,t,n,r,i,this.layer)},copy:function(e,t,n,r,i,a,o){return s.Copy(e,t,n,r,i,a,o,this.layer),this},fill:function(e,t,n,r,i,a){return s.Fill(e,t,n,r,i,a,this.layer),this},filterTiles:function(e,t,n,r,i,a,o){return s.FilterTiles(e,t,n,r,i,a,o,this.layer)},findByIndex:function(e,t,n){return s.FindByIndex(e,t,n,this.layer)},findTile:function(e,t,n,r,i,a,o){return s.FindTile(e,t,n,r,i,a,o,this.layer)},forEachTile:function(e,t,n,r,i,a,o){return s.ForEachTile(e,t,n,r,i,a,o,this.layer),this},getTileAt:function(e,t,n){return s.GetTileAt(e,t,n,this.layer)},getTileAtWorldXY:function(e,t,n,r){return s.GetTileAtWorldXY(e,t,n,r,this.layer)},getIsoTileAtWorldXY:function(e,t,n,r,i){n===void 0&&(n=!0);var a=this.tempVec;return s.IsometricWorldToTileXY(e,t,!0,a,i,this.layer,n),this.getTileAt(a.x,a.y,r)},getTilesWithin:function(e,t,n,r,i){return s.GetTilesWithin(e,t,n,r,i,this.layer)},getTilesWithinShape:function(e,t,n){return s.GetTilesWithinShape(e,t,n,this.layer)},getTilesWithinWorldXY:function(e,t,n,r,i,a){return s.GetTilesWithinWorldXY(e,t,n,r,i,a,this.layer)},hasTileAt:function(e,t){return s.HasTileAt(e,t,this.layer)},hasTileAtWorldXY:function(e,t,n){return s.HasTileAtWorldXY(e,t,n,this.layer)},putTileAt:function(e,t,n,r){return s.PutTileAt(e,t,n,r,this.layer)},putTileAtWorldXY:function(e,t,n,r,i){return s.PutTileAtWorldXY(e,t,n,r,i,this.layer)},putTilesAt:function(e,t,n,r){return s.PutTilesAt(e,t,n,r,this.layer),this},randomize:function(e,t,n,r,i){return s.Randomize(e,t,n,r,i,this.layer),this},removeTileAt:function(e,t,n,r){return s.RemoveTileAt(e,t,n,r,this.layer)},removeTileAtWorldXY:function(e,t,n,r,i){return s.RemoveTileAtWorldXY(e,t,n,r,i,this.layer)},renderDebug:function(e,t){return s.RenderDebug(e,t,this.layer),this},replaceByIndex:function(e,t,n,r,i,a){return s.ReplaceByIndex(e,t,n,r,i,a,this.layer),this},setCollision:function(e,t,n,r){return s.SetCollision(e,t,n,this.layer,r),this},setCollisionBetween:function(e,t,n,r){return s.SetCollisionBetween(e,t,n,r,this.layer),this},setCollisionByProperty:function(e,t,n){return s.SetCollisionByProperty(e,t,n,this.layer),this},setCollisionByExclusion:function(e,t,n){return s.SetCollisionByExclusion(e,t,n,this.layer),this},setCollisionFromCollisionGroup:function(e,t){return s.SetCollisionFromCollisionGroup(e,t,this.layer),this},setTileIndexCallback:function(e,t,n){return s.SetTileIndexCallback(e,t,n,this.layer),this},setTileLocationCallback:function(e,t,n,r,i,a){return s.SetTileLocationCallback(e,t,n,r,i,a,this.layer),this},shuffle:function(e,t,n,r){return s.Shuffle(e,t,n,r,this.layer),this},swapByIndex:function(e,t,n,r,i,a){return s.SwapByIndex(e,t,n,r,i,a,this.layer),this},tileToWorldX:function(e,t){return this.tilemap.tileToWorldX(e,t,this)},tileToWorldY:function(e,t){return this.tilemap.tileToWorldY(e,t,this)},tileToWorldXY:function(e,t,n,r){return this.tilemap.tileToWorldXY(e,t,n,r,this)},getTileCorners:function(e,t,n){return this.tilemap.getTileCorners(e,t,n,this)},weightedRandomize:function(e,t,n,r,i){return s.WeightedRandomize(t,n,r,i,e,this.layer),this},worldToTileX:function(e,t,n){return this.tilemap.worldToTileX(e,t,n,this)},worldToTileY:function(e,t,n){return this.tilemap.worldToTileY(e,t,n,this)},worldToTileXY:function(e,t,n,r,i){return this.tilemap.worldToTileXY(e,t,n,r,i,this)},destroy:function(e){e===void 0&&(e=!0),this.tilemap&&(this.layer.tilemapLayer===this&&(this.layer.tilemapLayer=void 0),e&&this.tilemap.removeLayer(this),this.tilemap=void 0,this.layer=void 0,this.gidMap=[],this.tileset=[],o.prototype.destroy.call(this))}})},16153(e,t,n){var r=n(61340),i=new r,a=new r,o=new r;e.exports=function(e,t,n,r){var s=t.cull(n),c=s.length,l=n.alpha*t.alpha;if(!(c===0||l<=0)){a.applyITRS(t.x,t.y,t.rotation,t.scaleX,t.scaleY);var u=e.currentContext,d=t.gidMap;u.save(),i.copyWithScrollFactorFrom(n.matrixCombined,n.scrollX,n.scrollY,t.scrollFactorX,t.scrollFactorY),r&&i.multiply(r),i.multiply(a,o),o.setToContext(u),(!e.antialias||t.scaleX>1||t.scaleY>1)&&(u.imageSmoothingEnabled=!1);for(var f=0;f<c;f++){var p=s[f],m=d[p.index];if(m){var h=m.image.getSourceImage(),g=m.getTileTextureCoordinates(p.index),_=m.tileWidth,v=m.tileHeight;if(!(g===null||_===0||v===0)){var y=_*.5,b=v*.5;g.x+=m.tileOffset.x,g.y+=m.tileOffset.y,u.save(),u.translate(p.pixelX+y,p.pixelY+b),p.rotation!==0&&u.rotate(p.rotation),(p.flipX||p.flipY)&&u.scale(p.flipX?-1:1,p.flipY?-1:1),u.globalAlpha=l*p.alpha,u.drawImage(h,g.x,g.y,_,v,-y,-b,_,v),u.restore()}}}u.restore()}}},19218(e,t,n){var r=n(29747),i=r,a=r;i=n(99558),a=n(16153),e.exports={renderWebGL:i,renderCanvas:a}},99558(e,t,n){var r=n(84322),i=n(70554).getTintAppendFloatAlpha,a={frame:{source:{glTexture:null}},uvSource:{u0:0,v0:0,u1:1,v1:1},frameWidth:0,frameHeight:0},o={tintEffect:r.MULTIPLY,tintTopLeft:0,tintTopRight:0,tintBottomLeft:0,tintBottomRight:0};e.exports=function(e,t,n,r){var s=n.camera,c=t.cull(s),l=c.length,u=t.alpha;if(!(l===0||u<=0))for(var d=t.gidMap,f=t.customRenderNodes.Submitter||t.defaultRenderNodes.Submitter,p=t.customRenderNodes.Transformer||t.defaultRenderNodes.Transformer,m=t.timeElapsed,h=0;h<l;h++){var g=c[h],_=d[g.index];if(_){var v=_.getAnimatedTileId(g.index,m);if(v!==null){var y=_.getTileTextureCoordinates(v),b=_.tileWidth,x=_.tileHeight;if(!(!y||b===0||x===0)){var S=_.glTexture,C=b,w=x,T=y.x,E=y.y,D=i(g.tint,u*g.alpha);a.frame.source.glTexture=_.glTexture,a.frameWidth=C,a.frameHeight=w,a.uvSource.u0=T/S.width,a.uvSource.v0=1-(E+w)/S.height,a.uvSource.u1=(T+C)/S.width,a.uvSource.v1=1-E/S.height,o.tintEffect=g.tintMode,o.tintTopLeft=D,o.tintTopRight=D,o.tintBottomLeft=D,o.tintBottomRight=D,f.run(n,t,r,g,a,p,o)}}}}}},33629(e,t,n){var r=n(83419),i=n(26099);e.exports=new r({initialize:function(e,t,n,r,a,o,s,c,l){(n===void 0||n<=0)&&(n=32),(r===void 0||r<=0)&&(r=32),a===void 0&&(a=0),o===void 0&&(o=0),s===void 0&&(s={}),c===void 0&&(c={}),this.name=e,this.firstgid=t,this.tileWidth=n,this.tileHeight=r,this.tileMargin=a,this.tileSpacing=o,this.tileProperties=s,this.tileData=c,this.tileOffset=new i,l!==void 0&&this.tileOffset.set(l.x,l.y),this.image=null,this.glTexture=null,this.rows=0,this.columns=0,this.total=0,this.texCoordinates=[],this.animationSearchThreshold=64,this.maxAnimationLength=0,this._animationDataTexture=null,this._animationDataIndexMap=null},getTileProperties:function(e){return this.containsTileIndex(e)?this.tileProperties[e-this.firstgid]:null},getTileData:function(e){return this.containsTileIndex(e)?this.tileData[e-this.firstgid]:null},getTileCollisionGroup:function(e){var t=this.getTileData(e);return t&&t.objectgroup?t.objectgroup:null},containsTileIndex:function(e){return e>=this.firstgid&&e<this.firstgid+this.total},getAnimatedTileId:function(e,t){if(!this.containsTileIndex(e))return null;var n=this.getTileData(e);if(!(n&&n.animation))return e;t%=n.animationDuration;for(var r=n.animation,i=null,a=0,o=r.length-1,s=0,c=0;a<=o;){if(s=a+o>>>1,i=r[s],c=i.startTime,c<=t&&c+i.duration>t)return i.tileid+this.firstgid;c<t?a=s+1:o=s-1}return null},getTileTextureCoordinates:function(e){return this.containsTileIndex(e)?this.texCoordinates[e-this.firstgid]:null},setImage:function(e){this.image=e;var t=e.get(),n=e.getFrameBounds();return this.glTexture=t.source.glTexture,t.width>n.width||t.height>n.height?this.updateTileData(t.width,t.height):this.updateTileData(n.width,n.height,n.x,n.y),this},setTileSize:function(e,t){return e!==void 0&&(this.tileWidth=e),t!==void 0&&(this.tileHeight=t),this.image&&this.updateTileData(this.image.source[0].width,this.image.source[0].height),this},setSpacing:function(e,t){return e!==void 0&&(this.tileMargin=e),t!==void 0&&(this.tileSpacing=t),this.image&&this.updateTileData(this.image.source[0].width,this.image.source[0].height),this},updateTileData:function(e,t,n,r){n===void 0&&(n=0),r===void 0&&(r=0);var i=(t-this.tileMargin*2+this.tileSpacing)/(this.tileHeight+this.tileSpacing),a=(e-this.tileMargin*2+this.tileSpacing)/(this.tileWidth+this.tileSpacing);(i%1!=0||a%1!=0)&&console.warn(`Image tile area not tile size multiple in: `+this.name),i=Math.floor(i),a=Math.floor(a),this.rows=i,this.columns=a,this.total=i*a,this.texCoordinates.length=0;for(var o=this.tileMargin+n,s=this.tileMargin+r,c=0;c<this.rows;c++){for(var l=0;l<this.columns;l++)this.texCoordinates.push({x:o,y:s}),o+=this.tileWidth+this.tileSpacing;o=this.tileMargin+n,s+=this.tileHeight+this.tileSpacing}return this._animationDataTexture&&this.createAnimationDataTexture(),this},getAnimationDataTexture:function(e){return this._animationDataTexture||this.createAnimationDataTexture(e),this._animationDataTexture},getAnimationDataIndexMap:function(e){return this._animationDataIndexMap||this.createAnimationDataTexture(e),this._animationDataIndexMap},createAnimationDataTexture:function(e){for(var t=this.tileData,n=this.total,r=[],i=[],a=new Map,o=0,s=0;s<n;s++){var c=t[s];if(c&&c.animation){var l=c.animation,u=c.animationDuration;a.set(s,r.length),r.push([u,i.length]);for(var d=0;d<l.length;d++){var f=l[d];i.push([f.duration,f.tileid])}o=Math.max(o,l.length)}}var p=r.length+i.length;if(p>4096*4096/2)throw Error(`Tileset._animationDataTexture: too many animations - total number of animations plus animation frames is max 8388608, got `+p);var m=p*2,h=Math.min(m,4096),g=Math.ceil(m/4096),_=new Uint32Array(h*g),v=0,y=r.length;for(s=0;s<y;s++){l=r[s];var b=l[0],x=l[1];_[v++]=b,_[v++]=(x+y)*2}for(s=0;s<i.length;s++){f=i[s];var S=f[0],C=f[1];_[v++]=S,_[v++]=C}this._animationDataTexture&&this._animationDataTexture.destroy();var w=new Uint8Array(_.buffer);this._animationDataTexture=e.createUint8ArrayTexture(w,h,g,!1,!0),this._animationDataIndexMap=a,this.maxAnimationLength=o}})},72023(e,t,n){var r=n(7423);e.exports=function(e,t,n){var i=r(e,t,!0,n),a=r(e,t-1,!0,n),o=r(e,t+1,!0,n),s=r(e-1,t,!0,n),c=r(e+1,t,!0,n),l=i&&i.collides;return l&&(i.faceTop=!0,i.faceBottom=!0,i.faceLeft=!0,i.faceRight=!0),a&&a.collides&&(l&&(i.faceTop=!1),a.faceBottom=!l),o&&o.collides&&(l&&(i.faceBottom=!1),o.faceTop=!l),s&&s.collides&&(l&&(i.faceLeft=!1),s.faceRight=!l),c&&c.collides&&(l&&(i.faceRight=!1),c.faceLeft=!l),i&&!i.collides&&i.resetFaces(),i}},42573(e,t,n){var r=n(7423),i=n(7386);e.exports=function(e,t,n,a,o){for(var s=null,c=null,l=null,u=null,d=i(e,t,n,a,null,o),f=0;f<d.length;f++){var p=d[f];p&&(p.collides?(s=r(p.x,p.y-1,!0,o),c=r(p.x,p.y+1,!0,o),l=r(p.x-1,p.y,!0,o),u=r(p.x+1,p.y,!0,o),p.faceTop=!(s&&s.collides),p.faceBottom=!(c&&c.collides),p.faceLeft=!(l&&l.collides),p.faceRight=!(u&&u.collides)):p.resetFaces())}}},33528(e,t,n){var r=new(n(26099));e.exports=function(e,t,n,i){var a=n.tilemapLayer,o=a.cullPaddingX,s=a.cullPaddingY,c=a.tilemap.tileToWorldXY(e,t,r,i,a);return c.x>i.worldView.x+a.scaleX*n.tileWidth*(-o-.5)&&c.x<i.worldView.right+a.scaleX*n.tileWidth*(o-.5)&&c.y>i.worldView.y+a.scaleY*n.tileHeight*(-s-1)&&c.y<i.worldView.bottom+a.scaleY*n.tileHeight*(s-.5)}},1785(e,t,n){var r=n(42573),i=n(7386),a=n(62991),o=n(23029);e.exports=function(e,t,n,s,c,l,u,d){u===void 0&&(u=!0);var f=i(e,t,n,s,null,d),p=[];f.forEach(function(e){var t=new o(e.layer,e.index,e.x,e.y,e.width,e.height,e.baseWidth,e.baseHeight);t.copy(e),p.push(t)});for(var m=c-e,h=l-t,g=0;g<p.length;g++){var _=p[g],v=_.x+m,y=_.y+h;a(v,y,d)&&d.data[y][v]&&(_.x=v,_.y=y,_.updatePixelXY(),d.data[y][v]=_)}u&&r(c-1,l-1,n+2,s+2,d),f.length=0,p.length=0}},78419(e,t,n){var r=n(62644),i=n(7386),a=n(27987);e.exports=function(e,t,n,o,s,c){n||={},Array.isArray(e)||(e=[e]);var l=c.tilemapLayer;o||=l.scene,s||=o.cameras.main;var u=c.width,d=c.height,f=i(0,0,u,d,null,c),p=[],m,h=function(e,t,n){for(var r=0;r<n.length;r++){var i=n[r];e.hasOwnProperty(i)||(e[i]=t[i])}};for(m=0;m<f.length;m++){var g=f[m],_=r(n);if(e.indexOf(g.index)!==-1){var v=l.tileToWorldXY(g.x,g.y,void 0,s,c);_.x=v.x,_.y=v.y,h(_,g,[`rotation`,`flipX`,`flipY`,`alpha`,`visible`,`tint`]),_.hasOwnProperty(`origin`)||(_.x+=g.width*.5,_.y+=g.height*.5),_.hasOwnProperty(`useSpriteSheet`)&&(_.key=g.tileset.image,_.frame=g.index-g.tileset.firstgid),p.push(o.make.sprite(_))}}if(Array.isArray(t))for(m=0;m<e.length;m++)a(e[m],t[m],0,0,u,d,c);else if(t!==null)for(m=0;m<e.length;m++)a(e[m],t,0,0,u,d,c);return p}},19545(e,t,n){var r=n(87841),i=n(63448),a=n(56583),o=new r;e.exports=function(e,t){var n=e.tilemapLayer.tilemap,r=e.tilemapLayer,s=Math.floor(n.tileWidth*r.scaleX),c=Math.floor(n.tileHeight*r.scaleY),l=a(t.worldView.x-r.x,s,0,!0)-r.cullPaddingX,u=i(t.worldView.right-r.x,s,0,!0)+r.cullPaddingX,d=a(t.worldView.y-r.y,c,0,!0)-r.cullPaddingY,f=i(t.worldView.bottom-r.y,c,0,!0)+r.cullPaddingY;return o.setTo(l,d,u-l,f-d)}},30003(e,t,n){var r=n(19545),i=n(32483);e.exports=function(e,t,n,a){n===void 0&&(n=[]),a===void 0&&(a=0),n.length=0;var o=e.tilemapLayer,s=r(e,t);return(o.skipCull||o.scrollFactorX!==1||o.scrollFactorY!==1)&&(s.left=0,s.right=e.width,s.top=0,s.bottom=e.height),i(e,s,a,n),n}},35137(e,t,n){var r=n(7386),i=n(42573),a=n(20576);e.exports=function(e,t,n,o,s,c,l){for(var u=l.collideIndexes.indexOf(e)!==-1,d=r(t,n,o,s,null,l),f=0;f<d.length;f++)d[f].index=e,a(d[f],u);c&&i(t-1,n-1,o+2,s+2,l)}},40253(e,t,n){var r=n(7386);e.exports=function(e,t,n,i,a,o,s,c){return r(n,i,a,o,s,c).filter(e,t)}},52692(e){e.exports=function(e,t,n,r){t===void 0&&(t=0),n===void 0&&(n=!1);var i=0,a,o,s;if(n){for(o=r.height-1;o>=0;o--)for(a=r.width-1;a>=0;a--)if(s=r.data[o][a],s&&s.index===e){if(i===t)return s;i+=1}}else for(o=0;o<r.height;o++)for(a=0;a<r.width;a++)if(s=r.data[o][a],s&&s.index===e){if(i===t)return s;i+=1}return null}},66151(e,t,n){var r=n(7386);e.exports=function(e,t,n,i,a,o,s,c){return r(n,i,a,o,s,c).find(e,t)||null}},97560(e,t,n){var r=n(7386);e.exports=function(e,t,n,i,a,o,s,c){r(n,i,a,o,s,c).forEach(e,t)}},43305(e,t,n){var r=n(91907),i=n(30003),a=n(9474),o=n(14018),s=n(29747),c=n(54503);e.exports=function(e){return e===r.ORTHOGONAL?i:e===r.HEXAGONAL?a:e===r.STAGGERED?c:e===r.ISOMETRIC?o:s}},7423(e,t,n){var r=n(62991);e.exports=function(e,t,n,i){if(r(e,t,i)){var a=i.data[t][e]||null;return a?a.index===-1?n?a:null:a:null}else return null}},60540(e,t,n){var r=n(7423),i=new(n(26099));e.exports=function(e,t,n,a,o){return o.tilemapLayer.worldToTileXY(e,t,!0,i,a),r(i.x,i.y,n,o)}},55826(e,t,n){var r=n(26099);e.exports=function(e,t,n,i){var a=i.baseTileWidth,o=i.baseTileHeight,s=i.tilemapLayer,c=0,l=0;s&&(n||=s.scene.cameras.main,c=s.x+n.scrollX*(1-s.scrollFactorX),l=s.y+n.scrollY*(1-s.scrollFactorY),a*=s.scaleX,o*=s.scaleY);var u=c+e*a,d=l+t*o;return[new r(u,d),new r(u+a,d),new r(u+a,d+o),new r(u,d+o)]}},11758(e,t,n){var r=n(91907),i=n(27229),a=n(29747),o=n(55826);e.exports=function(e){return e===r.ORTHOGONAL?o:e===r.ISOMETRIC?a:e===r.HEXAGONAL?i:(r.STAGGERED,a)}},39167(e,t,n){var r=n(91907),i=n(29747),a=n(97281);e.exports=function(e){return e===r.ORTHOGONAL?a:i}},62e3(e,t,n){var r=n(91907),i=n(19951),a=n(14127),o=n(29747),s=n(97202),c=n(70326);e.exports=function(e){return e===r.ORTHOGONAL?c:e===r.ISOMETRIC?a:e===r.HEXAGONAL?i:e===r.STAGGERED?s:o}},5984(e,t,n){var r=n(91907),i=n(29747),a=n(28054),o=n(29650);e.exports=function(e){return e===r.ORTHOGONAL?o:e===r.STAGGERED?a:i}},7386(e,t,n){var r=n(95540);e.exports=function(e,t,n,i,a,o){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=o.width),i===void 0&&(i=o.height),a||={};var s=r(a,`isNotEmpty`,!1),c=r(a,`isColliding`,!1),l=r(a,`hasInterestingFace`,!1);e<0&&(n+=e,e=0),t<0&&(i+=t,t=0),e+n>o.width&&(n=Math.max(o.width-e,0)),t+i>o.height&&(i=Math.max(o.height-t,0));for(var u=[],d=t;d<t+i;d++)for(var f=e;f<e+n;f++){var p=o.data[d][f];if(p!==null){if(s&&p.index===-1||c&&!p.collides||l&&!p.hasInterestingFace)continue;u.push(p)}}return u}},91141(e,t,n){var r=n(55738),i=n(7386),a=n(91865),o=n(29747),s=n(26099),c=n(91907),l=function(e,t){return a.RectangleToTriangle(t,e)},u=new s,d=new s,f=new s;e.exports=function(e,t,n,s){if(s.orientation!==c.ORTHOGONAL)return console.warn(`GetTilesWithinShape only works with orthogonal tilemaps`),[];if(e===void 0)return[];var p=o;e instanceof r.Circle?p=a.CircleToRectangle:e instanceof r.Rectangle?p=a.RectangleToRectangle:e instanceof r.Triangle?p=l:e instanceof r.Line&&(p=a.LineToRectangle),s.tilemapLayer.worldToTileXY(e.left,e.top,!0,d,n);var m=d.x,h=d.y;s.tilemapLayer.worldToTileXY(e.right,e.bottom,!1,f,n);var g=Math.ceil(f.x),_=Math.ceil(f.y),v=i(m,h,Math.max(g-m,1),Math.max(_-h,1),t,s),y=s.tileWidth,b=s.tileHeight;s.tilemapLayer&&(y*=s.tilemapLayer.scaleX,b*=s.tilemapLayer.scaleY);for(var x=[],S=new r.Rectangle(0,0,y,b),C=0;C<v.length;C++){var w=v[C];s.tilemapLayer.tileToWorldXY(w.x,w.y,u,n),S.x=u.x,S.y=u.y,p(e,S)&&x.push(w)}return x}},96523(e,t,n){var r=n(7386),i=n(26099),a=new i,o=new i;e.exports=function(e,t,n,i,s,c,l){var u=l.tilemapLayer.tilemap._convert.WorldToTileXY;u(e,t,!0,a,c,l);var d=a.x,f=a.y;u(e+n,t+i,!1,o,c,l);var p=Math.ceil(o.x),m=Math.ceil(o.y);return r(d,f,p-d,m-f,s,l)}},96113(e,t,n){var r=n(91907),i=n(20242),a=n(10095);e.exports=function(e){return e===r.ORTHOGONAL?a:i}},16926(e,t,n){var r=n(91907),i=n(86625),a=n(96897),o=n(29747),s=n(15108),c=n(85896);e.exports=function(e){return e===r.ORTHOGONAL?c:e===r.ISOMETRIC?a:e===r.HEXAGONAL?i:e===r.STAGGERED?s:o}},55762(e,t,n){var r=n(91907),i=n(20242),a=n(51900),o=n(63288);e.exports=function(e){return e===r.ORTHOGONAL?o:e===r.STAGGERED?a:i}},45091(e,t,n){var r=n(62991);e.exports=function(e,t,n){if(r(e,t,n)){var i=n.data[t][e];return i!==null&&i.index>-1}else return!1}},24152(e,t,n){var r=n(45091),i=new(n(26099));e.exports=function(e,t,n,a){a.tilemapLayer.worldToTileXY(e,t,!0,i,n);var o=i.x,s=i.y;return r(o,s,a)}},90454(e,t,n){var r=n(63448),i=n(56583);e.exports=function(e,t){var n=e.tilemapLayer.tilemap,a=e.tilemapLayer,o=Math.floor(n.tileWidth*a.scaleX),s=Math.floor(n.tileHeight*a.scaleY),c=e.hexSideLength,l,u,d,f;if(e.staggerAxis===`y`){var p=(s-c)/2+c;l=i(t.worldView.x-a.x,o,0,!0)-a.cullPaddingX,u=r(t.worldView.right-a.x,o,0,!0)+a.cullPaddingX,d=i(t.worldView.y-a.y,p,0,!0)-a.cullPaddingY,f=r(t.worldView.bottom-a.y,p,0,!0)+a.cullPaddingY}else{var m=(o-c)/2+c;l=i(t.worldView.x-a.x,m,0,!0)-a.cullPaddingX,u=r(t.worldView.right-a.x,m,0,!0)+a.cullPaddingX,d=i(t.worldView.y-a.y,s,0,!0)-a.cullPaddingY,f=r(t.worldView.bottom-a.y,s,0,!0)+a.cullPaddingY}return{left:l,right:u,top:d,bottom:f}}},9474(e,t,n){var r=n(90454),i=n(32483);e.exports=function(e,t,n,a){n===void 0&&(n=[]),a===void 0&&(a=0),n.length=0;var o=e.tilemapLayer,s=r(e,t);return o.skipCull&&o.scrollFactorX===1&&o.scrollFactorY===1&&(s.left=0,s.right=e.width,s.top=0,s.bottom=e.height),i(e,s,a,n),n}},27229(e,t,n){var r=n(19951),i=n(26099),a=new i;e.exports=function(e,t,n,o){var s=o.baseTileWidth,c=o.baseTileHeight,l=o.tilemapLayer;l&&(s*=l.scaleX,c*=l.scaleY);var u=r(e,t,a,n,o),d=[],f=.5773502691896257,p,m;o.staggerAxis===`y`?(p=f*s,m=c/2):(p=s/2,m=f*c);for(var h=0;h<6;h++){var g=2*Math.PI*(.5-h)/6;d.push(new i(u.x+p*Math.cos(g),u.y+m*Math.sin(g)))}return d}},19951(e,t,n){var r=n(26099);e.exports=function(e,t,n,i,a){n||=new r;var o=a.baseTileWidth,s=a.baseTileHeight,c=a.tilemapLayer,l=0,u=0;c&&(i||=c.scene.cameras.main,l=c.x+i.scrollX*(1-c.scrollFactorX),u=c.y+i.scrollY*(1-c.scrollFactorY),o*=c.scaleX,s*=c.scaleY);var d=o/2,f=s/2,p,m,h=a.staggerAxis,g=a.staggerIndex;return h===`y`?(p=l+o*e+o,m=u+1.5*t*f+f,t%2==0&&(g===`odd`?p-=d:p+=d)):h===`x`&&g===`odd`&&(p=l+1.5*e*d+d,m=u+s*e+s,e%2==0&&(g===`odd`?m-=f:m+=f)),n.set(p,m)}},86625(e,t,n){var r=n(26099);e.exports=function(e,t,n,i,a,o){i||=new r;var s=o.baseTileWidth,c=o.baseTileHeight,l=o.tilemapLayer;l&&(a||=l.scene.cameras.main,e-=l.x+a.scrollX*(1-l.scrollFactorX),t-=l.y+a.scrollY*(1-l.scrollFactorY),s*=l.scaleX,c*=l.scaleY);var u=.5773502691896257,d=-.3333333333333333,f=0,p=.6666666666666666,m=s/2,h=c/2,g,_,v,y,b;o.staggerAxis===`y`?(g=(e-m)/(u*s),_=(t-h)/h,v=u*g+d*_,y=f*g+p*_):(g=(e-m)/m,_=(t-h)/(u*c),v=d*g+u*_,y=p*g+f*_),b=-v-y;var x=Math.round(v),S=Math.round(y),C=Math.round(b),w=Math.abs(x-v),T=Math.abs(S-y),E=Math.abs(C-b);w>T&&w>E?x=-S-C:T>E&&(S=-x-C);var D,O=S;return D=o.staggerIndex===`odd`?O%2==0?S/2+x:S/2+x-.5:O%2==0?S/2+x:S/2+x+.5,i.set(D,O)}},62991(e){e.exports=function(e,t,n){return e>=0&&e<n.width&&t>=0&&t<n.height}},14018(e,t,n){var r=n(33528);e.exports=function(e,t,n,i){n===void 0&&(n=[]),i===void 0&&(i=0),n.length=0;var a=e.tilemapLayer,o=e.data,s=e.width,c=e.height,l=a.skipCull,u=0,d=s,f=0,p=c,m,h,g;if(i===0)for(h=f;h<p;h++)for(m=u;m<d;m++)g=o[h][m],!(!g||g.index===-1||!g.visible||g.alpha===0)&&(!l&&!r(m,h,e,t)||n.push(g));else if(i===1)for(h=f;h<p;h++)for(m=d;m>=u;m--)g=o[h][m],!(!g||g.index===-1||!g.visible||g.alpha===0)&&(!l&&!r(m,h,e,t)||n.push(g));else if(i===2)for(h=p;h>=f;h--)for(m=u;m<d;m++)g=o[h][m],!(!g||g.index===-1||!g.visible||g.alpha===0)&&(!l&&!r(m,h,e,t)||n.push(g));else if(i===3)for(h=p;h>=f;h--)for(m=d;m>=u;m--)g=o[h][m],!(!g||g.index===-1||!g.visible||g.alpha===0)&&(!l&&!r(m,h,e,t)||n.push(g));return a.tilesDrawn=n.length,a.tilesTotal=s*c,n}},14127(e,t,n){var r=n(26099);e.exports=function(e,t,n,i,a){n||=new r;var o=a.baseTileWidth,s=a.baseTileHeight,c=a.tilemapLayer,l=0,u=0;c&&(i||=c.scene.cameras.main,l=c.x+i.scrollX*(1-c.scrollFactorX),o*=c.scaleX,u=c.y+i.scrollY*(1-c.scrollFactorY),s*=c.scaleY);var d=l+(e-t)*(o/2),f=u+(e+t)*(s/2);return n.set(d,f)}},96897(e,t,n){var r=n(26099);e.exports=function(e,t,n,i,a,o,s){i||=new r;var c=o.baseTileWidth,l=o.baseTileHeight,u=o.tilemapLayer;u&&(a||=u.scene.cameras.main,t-=u.y+a.scrollY*(1-u.scrollFactorY),l*=u.scaleY,e-=u.x+a.scrollX*(1-u.scrollFactorX),c*=u.scaleX);var d=c/2,f=l/2;e-=d,s||(t-=l);var p=.5*(e/d+t/f),m=.5*(-e/d+t/f);return n&&(p=Math.floor(p),m=Math.floor(m)),i.set(p,m)}},71558(e,t,n){var r=n(23029),i=n(62991),a=n(72023),o=n(20576);e.exports=function(e,t,n,s,c){if(s===void 0&&(s=!0),!i(t,n,c))return null;var l,u=c.data[n][t],d=u&&u.collides;e instanceof r?(c.data[n][t]===null&&(c.data[n][t]=new r(c,e.index,t,n,c.tileWidth,c.tileHeight)),c.data[n][t].copy(e)):(l=e,c.data[n][t]===null?c.data[n][t]=new r(c,l,t,n,c.tileWidth,c.tileHeight):c.data[n][t].index=l);var f=c.data[n][t],p=c.collideIndexes.indexOf(f.index)!==-1;if(l=e instanceof r?e.index:e,l===-1)f.width=c.tileWidth,f.height=c.tileHeight;else{var m=c.tilemapLayer.tilemap,h=m.tiles[l][2],g=m.tilesets[h];f.width=g.tileWidth,f.height=g.tileHeight}return o(f,p),s&&d!==f.collides&&a(t,n,c),f}},26303(e,t,n){var r=n(71558),i=new(n(26099));e.exports=function(e,t,n,a,o,s){return s.tilemapLayer.worldToTileXY(t,n,!0,i,o,s),r(e,i.x,i.y,a,s)}},14051(e,t,n){var r=n(42573),i=n(71558);e.exports=function(e,t,n,a,o){if(a===void 0&&(a=!0),!Array.isArray(e))return null;Array.isArray(e[0])||(e=[e]);for(var s=e.length,c=e[0].length,l=0;l<s;l++)for(var u=0;u<c;u++){var d=e[l][u];i(d,t+u,n+l,!1,o)}a&&r(t-1,n-1,c+2,s+2,o)}},77389(e,t,n){var r=n(7386),i=n(26546);e.exports=function(e,t,n,a,o,s){var c,l=r(e,t,n,a,{},s);if(!o)for(o=[],c=0;c<l.length;c++)o.indexOf(l[c].index)===-1&&o.push(l[c].index);for(c=0;c<l.length;c++)l[c].index=i(o)}},63557(e,t,n){var r=n(23029),i=n(62991),a=n(72023);e.exports=function(e,t,n,o,s){if(n===void 0&&(n=!0),o===void 0&&(o=!0),!i(e,t,s))return null;var c=s.data[t][e];if(c)s.data[t][e]=n?null:new r(s,-1,e,t,s.tileWidth,s.tileHeight);else return null;return o&&c&&c.collides&&a(e,t,s),c}},94178(e,t,n){var r=n(63557),i=new(n(26099));e.exports=function(e,t,n,a,o,s){return s.tilemapLayer.worldToTileXY(e,t,!0,i,o,s),r(i.x,i.y,n,a,s)}},15533(e,t,n){var r=n(7386),i=n(3956),a=new i(105,210,231,150),o=new i(243,134,48,200),s=new i(40,39,37,150);e.exports=function(e,t,n){t===void 0&&(t={});var i=t.tileColor===void 0?a:t.tileColor,c=t.collidingTileColor===void 0?o:t.collidingTileColor,l=t.faceColor===void 0?s:t.faceColor,u=r(0,0,n.width,n.height,null,n);e.translateCanvas(n.tilemapLayer.x,n.tilemapLayer.y),e.scaleCanvas(n.tilemapLayer.scaleX,n.tilemapLayer.scaleY);for(var d=0;d<u.length;d++){var f=u[d],p=f.tileset?f.tileset.tileOffset:{x:0,y:0},m=f.width,h=f.height,g=f.pixelX-p.x,_=f.pixelY-p.y,v=f.collides?c:i;v!==null&&(e.fillStyle(v.color,v.alpha/255),e.fillRect(g,_,m,h)),g+=1,_+=1,m-=2,h-=2,l!==null&&(e.lineStyle(1,l.color,l.alpha/255),f.faceTop&&e.lineBetween(g,_,g+m,_),f.faceRight&&e.lineBetween(g+m,_,g+m,_+h),f.faceBottom&&e.lineBetween(g,_+h,g+m,_+h),f.faceLeft&&e.lineBetween(g,_,g,_+h))}}},27987(e,t,n){var r=n(7386);e.exports=function(e,t,n,i,a,o,s){for(var c=r(n,i,a,o,null,s),l=0;l<c.length;l++)c[l]&&c[l].index===e&&(c[l].index=t)}},32483(e){e.exports=function(e,t,n,r){var i=e.data,a=e.width,o=e.height,s=e.tilemapLayer,c=Math.max(0,t.left),l=Math.min(a,t.right),u=Math.max(0,t.top),d=Math.min(o,t.bottom),f,p,m;if(n===0)for(p=u;p<d;p++)for(f=c;i[p]&&f<l;f++)m=i[p][f],!(!m||m.index===-1||!m.visible||m.alpha===0)&&r.push(m);else if(n===1)for(p=u;p<d;p++)for(f=l;i[p]&&f>=c;f--)m=i[p][f],!(!m||m.index===-1||!m.visible||m.alpha===0)&&r.push(m);else if(n===2)for(p=d;p>=u;p--)for(f=c;i[p]&&f<l;f++)m=i[p][f],!(!m||m.index===-1||!m.visible||m.alpha===0)&&r.push(m);else if(n===3)for(p=d;p>=u;p--)for(f=l;i[p]&&f>=c;f--)m=i[p][f],!(!m||m.index===-1||!m.visible||m.alpha===0)&&r.push(m);return s.tilesDrawn=r.length,s.tilesTotal=a*o,r}},57068(e,t,n){var r=n(20576),i=n(42573),a=n(9589);e.exports=function(e,t,n,o,s){t===void 0&&(t=!0),n===void 0&&(n=!0),s===void 0&&(s=!0),Array.isArray(e)||(e=[e]);for(var c=0;c<e.length;c++)a(e[c],t,o);if(s)for(var l=0;l<o.height;l++)for(var u=0;u<o.width;u++){var d=o.data[l][u];d&&e.indexOf(d.index)!==-1&&r(d,t)}n&&i(0,0,o.width,o.height,o)}},37266(e,t,n){var r=n(20576),i=n(42573),a=n(9589);e.exports=function(e,t,n,o,s,c){if(n===void 0&&(n=!0),o===void 0&&(o=!0),c===void 0&&(c=!0),!(e>t)){for(var l=e;l<=t;l++)a(l,n,s);if(c)for(var u=0;u<s.height;u++)for(var d=0;d<s.width;d++){var f=s.data[u][d];f&&f.index>=e&&f.index<=t&&r(f,n)}o&&i(0,0,s.width,s.height,s)}}},75661(e,t,n){var r=n(20576),i=n(42573),a=n(9589);e.exports=function(e,t,n,o){t===void 0&&(t=!0),n===void 0&&(n=!0),Array.isArray(e)||(e=[e]);for(var s=0;s<o.height;s++)for(var c=0;c<o.width;c++){var l=o.data[s][c];l&&e.indexOf(l.index)===-1&&(r(l,t),a(l.index,t,o))}n&&i(0,0,o.width,o.height,o)}},64740(e,t,n){var r=n(20576),i=n(42573),a=n(97022);e.exports=function(e,t,n,o){t===void 0&&(t=!0),n===void 0&&(n=!0);for(var s=0;s<o.height;s++)for(var c=0;c<o.width;c++){var l=o.data[s][c];if(l){for(var u in e)if(a(l.properties,u)){var d=e[u];Array.isArray(d)||(d=[d]);for(var f=0;f<d.length;f++)l.properties[u]===d[f]&&r(l,t)}}}n&&i(0,0,o.width,o.height,o)}},63307(e,t,n){var r=n(20576),i=n(42573);e.exports=function(e,t,n){e===void 0&&(e=!0),t===void 0&&(t=!0);for(var a=0;a<n.height;a++)for(var o=0;o<n.width;o++){var s=n.data[a][o];if(s){var c=s.getCollisionGroup();c&&c.objects&&c.objects.length>0&&r(s,e)}}t&&i(0,0,n.width,n.height,n)}},9589(e){e.exports=function(e,t,n){var r=n.collideIndexes.indexOf(e);t&&r===-1?n.collideIndexes.push(e):!t&&r!==-1&&n.collideIndexes.splice(r,1)}},20576(e){e.exports=function(e,t){t?e.setCollision(!0,!0,!0,!0,!1):e.resetCollision(!1)}},79583(e){e.exports=function(e,t,n,r){if(typeof e==`number`)r.callbacks[e]=t===null?void 0:{callback:t,callbackContext:n};else for(var i=0,a=e.length;i<a;i++)r.callbacks[e[i]]=t===null?void 0:{callback:t,callbackContext:n}}},93254(e,t,n){var r=n(7386);e.exports=function(e,t,n,i,a,o,s){for(var c=r(e,t,n,i,null,s),l=0;l<c.length;l++)c[l].setCollisionCallback(a,o)}},32903(e,t,n){var r=n(7386),i=n(33680);e.exports=function(e,t,n,a,o){var s=r(e,t,n,a,null,o),c=s.map(function(e){return e.index});i(c);for(var l=0;l<s.length;l++)s[l].index=c[l]}},61325(e,t,n){var r=n(63448),i=n(56583);e.exports=function(e,t){var n=e.tilemapLayer.tilemap,a=e.tilemapLayer,o=Math.floor(n.tileWidth*a.scaleX),s=Math.floor(n.tileHeight*a.scaleY);return{left:i(t.worldView.x-a.x,o,0,!0)-a.cullPaddingX,right:r(t.worldView.right-a.x,o,0,!0)+a.cullPaddingX,top:i(t.worldView.y-a.y,s/2,0,!0)-a.cullPaddingY,bottom:r(t.worldView.bottom-a.y,s/2,0,!0)+a.cullPaddingY}}},54503(e,t,n){var r=n(61325),i=n(32483);e.exports=function(e,t,n,a){n===void 0&&(n=[]),a===void 0&&(a=0),n.length=0;var o=e.tilemapLayer,s=r(e,t);return o.skipCull&&o.scrollFactorX===1&&o.scrollFactorY===1&&(s.left=0,s.right=e.width,s.top=0,s.bottom=e.height),i(e,s,a,n),n}},97202(e,t,n){var r=n(26099);e.exports=function(e,t,n,i,a){n||=new r;var o=a.baseTileWidth,s=a.baseTileHeight,c=a.tilemapLayer,l=0,u=0;c&&(i||=c.scene.cameras.main,l=c.x+i.scrollX*(1-c.scrollFactorX),o*=c.scaleX,u=c.y+i.scrollY*(1-c.scrollFactorY),s*=c.scaleY);var d=l+e*o+t%2*(o/2),f=u+s/2*t;return n.set(d,f)}},28054(e){e.exports=function(e,t,n){var r=n.baseTileHeight,i=n.tilemapLayer,a=0;return i&&(t===void 0&&(t=i.scene.cameras.main),a=i.y+t.scrollY*(1-i.scrollFactorY),r*=i.scaleY),a+r/2*e+r}},15108(e,t,n){var r=n(26099);e.exports=function(e,t,n,i,a,o){i||=new r;var s=o.baseTileWidth,c=o.baseTileHeight,l=o.tilemapLayer;l&&(a||=l.scene.cameras.main,t-=l.y+a.scrollY*(1-l.scrollFactorY),c*=l.scaleY,e-=l.x+a.scrollX*(1-l.scrollFactorX),s*=l.scaleX);var u=n?Math.floor(t/(c/2)):t/(c/2),d=n?Math.floor((e+u%2*.5*s)/s):(e+u%2*.5*s)/s;return i.set(d,u)}},51900(e){e.exports=function(e,t,n,r){var i=r.baseTileHeight,a=r.tilemapLayer;return a&&(n||=a.scene.cameras.main,e-=a.y+n.scrollY*(1-a.scrollFactorY),i*=a.scaleY),t?Math.floor(e/(i/2)):e/(i/2)}},86560(e,t,n){var r=n(7386);e.exports=function(e,t,n,i,a,o,s){for(var c=r(n,i,a,o,null,s),l=0;l<c.length;l++)c[l]&&(c[l].index===e?c[l].index=t:c[l].index===t&&(c[l].index=e))}},97281(e){e.exports=function(e,t,n){var r=n.baseTileWidth,i=n.tilemapLayer,a=0;return i&&(t||=i.scene.cameras.main,a=i.x+t.scrollX*(1-i.scrollFactorX),r*=i.scaleX),a+e*r}},70326(e,t,n){var r=n(97281),i=n(29650),a=n(26099);e.exports=function(e,t,n,o,s){return n||=new a(0,0),n.x=r(e,o,s),n.y=i(t,o,s),n}},29650(e){e.exports=function(e,t,n){var r=n.baseTileHeight,i=n.tilemapLayer,a=0;return i&&(t||=i.scene.cameras.main,a=i.y+t.scrollY*(1-i.scrollFactorY),r*=i.scaleY),a+e*r}},77366(e,t,n){var r=n(7386),i=n(75508);e.exports=function(e,t,n,a,o,s){if(o){var c,l=r(e,t,n,a,null,s),u=0;for(c=0;c<o.length;c++)u+=o[c].weight;if(!(u<=0))for(c=0;c<l.length;c++){for(var d=i.RND.frac()*u,f=0,p=-1,m=0;m<o.length;m++)if(f+=o[m].weight,d<=f){var h=o[m].index;p=Array.isArray(h)?h[Math.floor(i.RND.frac()*h.length)]:h;break}l[c].index=p}}}},10095(e,t,n){var r=n(85896),i=new(n(26099));e.exports=function(e,t,n,a){return r(e,0,t,i,n,a),i.x}},85896(e,t,n){var r=n(26099);e.exports=function(e,t,n,i,a,o){n===void 0&&(n=!0),i||=new r;var s=o.baseTileWidth,c=o.baseTileHeight,l=o.tilemapLayer;l&&(a||=l.scene.cameras.main,e-=l.x+a.scrollX*(1-l.scrollFactorX),t-=l.y+a.scrollY*(1-l.scrollFactorY),s*=l.scaleX,c*=l.scaleY);var u=e/s,d=t/c;return n&&(u=Math.floor(u),d=Math.floor(d)),i.set(u,d)}},63288(e,t,n){var r=n(85896),i=new(n(26099));e.exports=function(e,t,n,a){return r(0,e,t,i,n,a),i.y}},81086(e,t,n){e.exports={CalculateFacesAt:n(72023),CalculateFacesWithin:n(42573),CheckIsoBounds:n(33528),Copy:n(1785),CreateFromTiles:n(78419),CullBounds:n(19545),CullTiles:n(30003),Fill:n(35137),FilterTiles:n(40253),FindByIndex:n(52692),FindTile:n(66151),ForEachTile:n(97560),GetCullTilesFunction:n(43305),GetTileAt:n(7423),GetTileAtWorldXY:n(60540),GetTileCorners:n(55826),GetTileCornersFunction:n(11758),GetTilesWithin:n(7386),GetTilesWithinShape:n(91141),GetTilesWithinWorldXY:n(96523),GetTileToWorldXFunction:n(39167),GetTileToWorldXYFunction:n(62e3),GetTileToWorldYFunction:n(5984),GetWorldToTileXFunction:n(96113),GetWorldToTileXYFunction:n(16926),GetWorldToTileYFunction:n(55762),HasTileAt:n(45091),HasTileAtWorldXY:n(24152),HexagonalCullBounds:n(90454),HexagonalCullTiles:n(9474),HexagonalGetTileCorners:n(27229),HexagonalTileToWorldXY:n(19951),HexagonalWorldToTileXY:n(86625),IsInLayerBounds:n(62991),IsometricCullTiles:n(14018),IsometricTileToWorldXY:n(14127),IsometricWorldToTileXY:n(96897),PutTileAt:n(71558),PutTileAtWorldXY:n(26303),PutTilesAt:n(14051),Randomize:n(77389),RemoveTileAt:n(63557),RemoveTileAtWorldXY:n(94178),RenderDebug:n(15533),ReplaceByIndex:n(27987),RunCull:n(32483),SetCollision:n(57068),SetCollisionBetween:n(37266),SetCollisionByExclusion:n(75661),SetCollisionByProperty:n(64740),SetCollisionFromCollisionGroup:n(63307),SetLayerCollisionIndex:n(9589),SetTileCollision:n(20576),SetTileIndexCallback:n(79583),SetTileLocationCallback:n(93254),Shuffle:n(32903),StaggeredCullBounds:n(61325),StaggeredCullTiles:n(54503),StaggeredTileToWorldXY:n(97202),StaggeredTileToWorldY:n(28054),StaggeredWorldToTileXY:n(15108),StaggeredWorldToTileY:n(51900),SwapByIndex:n(86560),TileToWorldX:n(97281),TileToWorldXY:n(70326),TileToWorldY:n(29650),WeightedRandomize:n(77366),WorldToTileX:n(10095),WorldToTileXY:n(85896),WorldToTileY:n(63288)}},91907(e){e.exports={ORTHOGONAL:0,ISOMETRIC:1,STAGGERED:2,HEXAGONAL:3}},21829(e,t,n){e.exports={ORIENTATION:n(91907)}},62501(e,t,n){var r=n(79291),i=n(21829),a={Components:n(81086),Parsers:n(57442),Formats:n(80341),ImageCollection:n(16536),ParseToTilemap:n(31989),Tile:n(23029),Tilemap:n(49075),TilemapCreator:n(45939),TilemapFactory:n(46029),Tileset:n(33629),TilemapLayerBase:n(44731),TilemapLayer:n(20442),TilemapGPULayer:n(53180),Orientation:n(91907),LayerData:n(14977),MapData:n(87010),ObjectLayer:n(48700)};a=r(!1,a,i.ORIENTATION),e.exports=a},14977(e,t,n){var r=n(83419),i=n(91907),a=n(95540);e.exports=new r({initialize:function(e){e===void 0&&(e={}),this.name=a(e,`name`,`layer`),this.id=a(e,`id`,0),this.x=a(e,`x`,0),this.y=a(e,`y`,0),this.width=a(e,`width`,0),this.height=a(e,`height`,0),this.tileWidth=a(e,`tileWidth`,0),this.tileHeight=a(e,`tileHeight`,0),this.baseTileWidth=a(e,`baseTileWidth`,this.tileWidth),this.baseTileHeight=a(e,`baseTileHeight`,this.tileHeight),this.orientation=a(e,`orientation`,i.ORTHOGONAL),this.widthInPixels=a(e,`widthInPixels`,this.width*this.baseTileWidth),this.heightInPixels=a(e,`heightInPixels`,this.height*this.baseTileHeight),this.alpha=a(e,`alpha`,1),this.visible=a(e,`visible`,!0),this.properties=a(e,`properties`,[]),this.indexes=a(e,`indexes`,[]),this.collideIndexes=a(e,`collideIndexes`,[]),this.callbacks=a(e,`callbacks`,[]),this.bodies=a(e,`bodies`,[]),this.data=a(e,`data`,[]),this.tilemapLayer=a(e,`tilemapLayer`,null),this.hexSideLength=a(e,`hexSideLength`,0),this.staggerAxis=a(e,`staggerAxis`,`y`),this.staggerIndex=a(e,`staggerIndex`,`odd`)}})},87010(e,t,n){var r=n(83419),i=n(91907),a=n(95540);e.exports=new r({initialize:function(e){e===void 0&&(e={}),this.name=a(e,`name`,`map`),this.width=a(e,`width`,0),this.height=a(e,`height`,0),this.infinite=a(e,`infinite`,!1),this.tileWidth=a(e,`tileWidth`,0),this.tileHeight=a(e,`tileHeight`,0),this.widthInPixels=a(e,`widthInPixels`,this.width*this.tileWidth),this.heightInPixels=a(e,`heightInPixels`,this.height*this.tileHeight),this.format=a(e,`format`,null),this.orientation=a(e,`orientation`,i.ORTHOGONAL),this.renderOrder=a(e,`renderOrder`,`right-down`),this.version=a(e,`version`,`1`),this.properties=a(e,`properties`,{}),this.layers=a(e,`layers`,[]),this.images=a(e,`images`,[]),this.objects=a(e,`objects`,[]),Array.isArray(this.objects)||(this.objects=[]),this.collision=a(e,`collision`,{}),this.tilesets=a(e,`tilesets`,[]),this.imageCollections=a(e,`imageCollections`,[]),this.tiles=a(e,`tiles`,[]),this.hexSideLength=a(e,`hexSideLength`,0),this.staggerAxis=a(e,`staggerAxis`,`y`),this.staggerIndex=a(e,`staggerIndex`,`odd`)}})},48700(e,t,n){var r=n(83419),i=n(95540);e.exports=new r({initialize:function(e){e===void 0&&(e={}),this.name=i(e,`name`,`object layer`),this.id=i(e,`id`,0),this.opacity=i(e,`opacity`,1),this.properties=i(e,`properties`,{}),this.propertyTypes=i(e,`propertytypes`,{}),this.type=i(e,`type`,`objectgroup`),this.visible=i(e,`visible`,!0),this.objects=i(e,`objects`,[]),Array.isArray(this.objects)||(this.objects=[])}})},6641(e,t,n){var r=n(91907);e.exports=function(e){return e=e.toLowerCase(),e===`isometric`?r.ISOMETRIC:e===`staggered`?r.STAGGERED:e===`hexagonal`?r.HEXAGONAL:r.ORTHOGONAL}},46177(e,t,n){var r=n(80341),i=n(2342),a=n(82593),o=n(46594),s=n(87021);e.exports=function(e,t,n,c,l,u){var d;switch(t){case r.ARRAY_2D:d=i(e,n,c,l,u);break;case r.CSV:d=a(e,n,c,l,u);break;case r.TILED_JSON:d=o(e,n,u);break;case r.WELTMEISTER:d=s(e,n,u);break;default:console.warn(`Unrecognized tilemap data format: `+t),d=null}return d}},2342(e,t,n){var r=n(80341),i=n(14977),a=n(87010),o=n(23029);e.exports=function(e,t,n,s,c){for(var l=new i({tileWidth:n,tileHeight:s}),u=new a({name:e,tileWidth:n,tileHeight:s,format:r.ARRAY_2D,layers:[l]}),d=[],f=t.length,p=0,m=0;m<t.length;m++){d[m]=[];for(var h=t[m],g=0;g<h.length;g++){var _=parseInt(h[g],10);isNaN(_)||_===-1?d[m][g]=c?null:new o(l,-1,g,m,n,s):d[m][g]=new o(l,_,g,m,n,s)}p===0&&(p=h.length)}return u.width=l.width=p,u.height=l.height=f,u.widthInPixels=l.widthInPixels=p*n,u.heightInPixels=l.heightInPixels=f*s,l.data=d,u}},82593(e,t,n){var r=n(80341),i=n(2342);e.exports=function(e,t,n,a,o){var s=i(e,t.trim().split(`
100
+ `).map(function(e){return e.split(`,`)}),n,a,o);return s.format=r.CSV,s}},6656(e,t,n){var r=n(14977),i=n(23029);e.exports=function(e,t){for(var n=[],a=0;a<e.layer.length;a++){for(var o=e.layer[a],s=new r({name:o.name,width:o.width,height:o.height,tileWidth:o.tilesize,tileHeight:o.tilesize,visible:o.visible===1}),c=[],l=[],u=0;u<o.data.length;u++){for(var d=0;d<o.data[u].length;d++){var f=o.data[u][d]-1,p=f>-1?new i(s,f,d,u,o.tilesize,o.tilesize):t?null:new i(s,-1,d,u,o.tilesize,o.tilesize);c.push(p)}l.push(c),c=[]}s.data=l,n.push(s)}return n}},96483(e,t,n){var r=n(33629);e.exports=function(e){for(var t=[],n=[],i=0;i<e.layer.length;i++){var a=e.layer[i],o=a.tilesetName;o!==``&&n.indexOf(o)===-1&&(n.push(o),t.push(new r(o,0,a.tilesize,a.tilesize,0,0)))}return t}},87021(e,t,n){var r=n(80341),i=n(87010),a=n(6656),o=n(96483);e.exports=function(e,t,n){if(t.layer.length===0)return console.warn(`No layers found in the Weltmeister map: `+e),null;for(var s=0,c=0,l=0;l<t.layer.length;l++)t.layer[l].width>s&&(s=t.layer[l].width),t.layer[l].height>c&&(c=t.layer[l].height);var u=new i({width:s,height:c,name:e,tileWidth:t.layer[0].tilesize,tileHeight:t.layer[0].tilesize,format:r.WELTMEISTER});return u.layers=a(t,n),u.tilesets=o(t),u}},52833(e,t,n){e.exports={ParseTileLayers:n(6656),ParseTilesets:n(96483),ParseWeltmeister:n(87021)}},57442(e,t,n){e.exports={FromOrientationString:n(6641),Parse:n(46177),Parse2DArray:n(2342),ParseCSV:n(82593),Impact:n(52833),Tiled:n(96761)}},51233(e,t,n){var r=n(79291);e.exports=function(e){for(var t,n,i,a,o,s=0;s<e.layers.length;s++){t=e.layers[s],a=null;for(var c=0;c<t.data.length;c++){o=t.data[c];for(var l=0;l<o.length;l++)n=o[l],!(n===null||n.index<0)&&(i=e.tiles[n.index][2],a=e.tilesets[i],n.width=a.tileWidth,n.height=a.tileHeight,a.tileProperties&&a.tileProperties[n.index-a.firstgid]&&(n.properties=r(n.properties,a.tileProperties[n.index-a.firstgid])))}}}},41868(e){e.exports=function(e){for(var t=window.atob(e),n=t.length,r=Array(n/4),i=0;i<n;i+=4)r[i/4]=(t.charCodeAt(i)|t.charCodeAt(i+1)<<8|t.charCodeAt(i+2)<<16|t.charCodeAt(i+3)<<24)>>>0;return r}},84101(e,t,n){var r=n(33629);e.exports=function(e){var t,n,i=[];for(t=0;t<e.imageCollections.length;t++)for(var a=e.imageCollections[t].images,o=0;o<a.length;o++){var s=a[o],c={x:0,y:s.height-e.tileHeight};n=new r(s.image,s.gid,s.width,s.height,0,0,void 0,void 0,c),n.updateTileData(s.width,s.height),e.tilesets.push(n)}for(t=0;t<e.tilesets.length;t++){n=e.tilesets[t];for(var l=n.tileMargin,u=n.tileMargin,d=0,f=0,p=0,m=n.firstgid;m<n.firstgid+n.total&&(i[m]=[l,u,t],l+=n.tileWidth+n.tileSpacing,d++,!(d===n.total||(f++,f===n.columns&&(l=n.tileMargin,u+=n.tileHeight+n.tileSpacing,f=0,p++,p===n.rows))));m++);}return i}},79677(e,t,n){var r=n(95540);e.exports=function(e,t,n){if(!t)return{i:0,layers:e.layers,name:``,opacity:1,visible:!0,x:0,y:0};var i=t.x+r(t,`startx`,0)*e.tilewidth+r(t,`offsetx`,0),a=t.y+r(t,`starty`,0)*e.tileheight+r(t,`offsety`,0);return{i:0,layers:t.layers,name:n.name+t.name+`/`,opacity:n.opacity*t.opacity,visible:n.visible&&t.visible,x:n.x+i,y:n.y+a}}},29920(e){var t=2147483648,n=1073741824,r=536870912;e.exports=function(e){var i=!!(e&t),a=!!(e&n),o=!!(e&r);e&=~(t|n|r);var s=0,c=!1;return i&&a&&o?(s=Math.PI/2,c=!0):i&&a&&!o?(s=Math.PI,c=!1):i&&!a&&o?(s=Math.PI/2,c=!1):i&&!a&&!o?(s=0,c=!0):!i&&a&&o?(s=3*Math.PI/2,c=!1):!i&&a&&!o?(s=Math.PI,c=!0):!i&&!a&&o?(s=3*Math.PI/2,c=!0):!i&&!a&&!o&&(s=0,c=!1),{gid:e,flippedHorizontal:i,flippedVertical:a,flippedAntiDiagonal:o,rotation:s,flipped:c}}},12635(e,t,n){var r=n(95540),i=n(79677);e.exports=function(e){for(var t=[],n=[],a=i(e);a.i<a.layers.length||n.length>0;){if(a.i>=a.layers.length){if(n.length<1){console.warn(`TilemapParser.parseTiledJSON - Invalid layer group hierarchy`);break}a=n.pop();continue}var o=a.layers[a.i];if(a.i++,o.type!==`imagelayer`){if(o.type===`group`){var s=i(e,o,a);n.push(a),a=s}continue}var c=r(o,`offsetx`,0)+r(o,`startx`,0),l=r(o,`offsety`,0)+r(o,`starty`,0);t.push({name:a.name+o.name,image:o.image,x:a.x+c+o.x,y:a.y+l+o.y,alpha:a.opacity*o.opacity,visible:a.visible&&o.visible,properties:r(o,`properties`,{})})}return t}},46594(e,t,n){var r=n(51233),i=n(84101),a=n(91907),o=n(62644),s=n(80341),c=n(6641),l=n(87010),u=n(12635),d=n(22611),f=n(28200),p=n(24619);e.exports=function(e,t,n){var m=o(t),h=new l({width:m.width,height:m.height,name:e,tileWidth:m.tilewidth,tileHeight:m.tileheight,orientation:c(m.orientation),format:s.TILED_JSON,version:m.version,properties:m.properties,renderOrder:m.renderorder,infinite:m.infinite});if(h.orientation===a.HEXAGONAL)if(h.hexSideLength=m.hexsidelength,h.staggerAxis=m.staggeraxis,h.staggerIndex=m.staggerindex,h.staggerAxis===`y`){var g=(h.tileHeight-h.hexSideLength)/2;h.widthInPixels=h.tileWidth*(h.width+.5),h.heightInPixels=h.height*(h.hexSideLength+g)+g}else{var _=(h.tileWidth-h.hexSideLength)/2;h.widthInPixels=h.width*(h.hexSideLength+_)+_,h.heightInPixels=h.tileHeight*(h.height+.5)}h.layers=f(m,n),h.images=u(m);var v=p(m);return h.tilesets=v.tilesets,h.imageCollections=v.imageCollections,h.objects=d(m),h.tiles=i(h),r(h),h}},52205(e,t,n){var r=n(18254),i=n(29920),a=function(e){return{x:e.x,y:e.y}},o=[`id`,`name`,`type`,`rotation`,`properties`,`visible`,`x`,`y`,`width`,`height`];e.exports=function(e,t,n){t===void 0&&(t=0),n===void 0&&(n=0);var s=r(e,o);if(s.x+=t,s.y+=n,e.gid){var c=i(e.gid);s.gid=c.gid,s.flippedHorizontal=c.flippedHorizontal,s.flippedVertical=c.flippedVertical,s.flippedAntiDiagonal=c.flippedAntiDiagonal}else e.polyline?s.polyline=e.polyline.map(a):e.polygon?s.polygon=e.polygon.map(a):e.ellipse?s.ellipse=e.ellipse:e.text?s.text=e.text:e.point?s.point=!0:s.rectangle=!0;return s}},22611(e,t,n){var r=n(95540),i=n(52205),a=n(48700),o=n(79677);e.exports=function(e){for(var t=[],n=[],s=o(e);s.i<s.layers.length||n.length>0;){if(s.i>=s.layers.length){if(n.length<1){console.warn(`TilemapParser.parseTiledJSON - Invalid layer group hierarchy`);break}s=n.pop();continue}var c=s.layers[s.i];if(s.i++,c.opacity*=s.opacity,c.visible=s.visible&&c.visible,c.type!==`objectgroup`){if(c.type===`group`){var l=o(e,c,s);n.push(s),s=l}continue}c.name=s.name+c.name;for(var u=s.x+r(c,`startx`,0)+r(c,`offsetx`,0),d=s.y+r(c,`starty`,0)+r(c,`offsety`,0),f=[],p=0;p<c.objects.length;p++){var m=i(c.objects[p],u,d);f.push(m)}var h=new a(c);h.objects=f,t.push(h)}return t}},28200(e,t,n){var r=n(41868),i=n(91907),a=n(79677),o=n(6641),s=n(95540),c=n(14977),l=n(29920),u=n(23029);e.exports=function(e,t){for(var n=s(e,`infinite`,!1),d=[],f=[],p=a(e);p.i<p.layers.length||f.length>0;){if(p.i>=p.layers.length){if(f.length<1){console.warn(`TilemapParser.parseTiledJSON - Invalid layer group hierarchy`);break}p=f.pop();continue}var m=p.layers[p.i];if(p.i++,m.type!==`tilelayer`){if(m.type===`group`){var h=a(e,m,p);f.push(p),p=h}continue}if(m.compression){console.warn(`TilemapParser.parseTiledJSON - Layer compression is unsupported, skipping layer '`+m.name+`'`);continue}else if(m.encoding&&m.encoding===`base64`){if(m.chunks)for(var g=0;g<m.chunks.length;g++)m.chunks[g].data=r(m.chunks[g].data);m.data&&=r(m.data),delete m.encoding}var _,v,y,b,x,S,C=[],w=0;if(n){var T=s(m,`startx`,0)+m.x,E=s(m,`starty`,0)+m.y;_=new c({name:p.name+m.name,id:m.id,x:p.x+s(m,`offsetx`,0)+T*e.tilewidth,y:p.y+s(m,`offsety`,0)+E*e.tileheight,width:m.width,height:m.height,tileWidth:e.tilewidth,tileHeight:e.tileheight,alpha:p.opacity*m.opacity,visible:p.visible&&m.visible,properties:s(m,`properties`,[]),orientation:o(e.orientation)}),_.orientation===i.HEXAGONAL&&(_.hexSideLength=e.hexsidelength,_.staggerAxis=e.staggeraxis,_.staggerIndex=e.staggerindex,_.staggerAxis===`y`?(x=(_.tileHeight-_.hexSideLength)/2,_.widthInPixels=_.tileWidth*(_.width+.5),_.heightInPixels=_.height*(_.hexSideLength+x)+x):(S=(_.tileWidth-_.hexSideLength)/2,_.widthInPixels=_.width*(_.hexSideLength+S)+S,_.heightInPixels=_.tileHeight*(_.height+.5)));for(var D=0;D<m.height;D++){C[D]=[null];for(var O=0;O<m.width;O++)C[D][O]=null}for(D=0,z=m.chunks.length;D<z;D++)for(var k=m.chunks[D],A=k.x-T,j=k.y-E,M=0,N=0,P=k.data.length;N<P;N++){var F=w+A,I=M+j;v=l(k.data[N]),v.gid>0?(y=new u(_,v.gid,F,I,e.tilewidth,e.tileheight),y.rotation=v.rotation,y.flipX=v.flipped,C[I][F]=y):(b=t?null:new u(_,-1,F,I,e.tilewidth,e.tileheight),C[I][F]=b),w++,w===k.width&&(M++,w=0)}}else{_=new c({name:p.name+m.name,id:m.id,x:p.x+s(m,`offsetx`,0)+m.x,y:p.y+s(m,`offsety`,0)+m.y,width:m.width,height:m.height,tileWidth:e.tilewidth,tileHeight:e.tileheight,alpha:p.opacity*m.opacity,visible:p.visible&&m.visible,properties:s(m,`properties`,[]),orientation:o(e.orientation)}),_.orientation===i.HEXAGONAL&&(_.hexSideLength=e.hexsidelength,_.staggerAxis=e.staggeraxis,_.staggerIndex=e.staggerindex,_.staggerAxis===`y`?(x=(_.tileHeight-_.hexSideLength)/2,_.widthInPixels=_.tileWidth*(_.width+.5),_.heightInPixels=_.height*(_.hexSideLength+x)+x):(S=(_.tileWidth-_.hexSideLength)/2,_.widthInPixels=_.width*(_.hexSideLength+S)+S,_.heightInPixels=_.tileHeight*(_.height+.5)));for(var L=[],R=0,z=m.data.length;R<z;R++)v=l(m.data[R]),v.gid>0?(y=new u(_,v.gid,w,C.length,e.tilewidth,e.tileheight),y.rotation=v.rotation,y.flipX=v.flipped,L.push(y)):(b=t?null:new u(_,-1,w,C.length,e.tilewidth,e.tileheight),L.push(b)),w++,w===m.width&&(C.push(L),w=0,L=[])}_.data=C,d.push(_)}return d}},24619(e,t,n){var r=n(33629),i=n(16536),a=n(52205),o=n(57880);e.exports=function(e){for(var t=[],n=[],s=null,c,l=0;l<e.tilesets.length;l++){var u=e.tilesets[l];if(u.source)console.warn(`External tilesets unsupported. Use Embed Tileset and re-export`);else if(u.image){var d=new r(u.name,u.firstgid,u.tilewidth,u.tileheight,u.margin,u.spacing,void 0,void 0,u.tileoffset);if(e.version>1){var f=void 0,p=void 0;if(Array.isArray(u.tiles)){f||={},p||={};for(var m=0;m<u.tiles.length;m++){var h=u.tiles[m];if(h.properties){var g={};h.properties.forEach(function(e){g[e.name]=e.value}),p[h.id]=g}if(h.objectgroup&&((f[h.id]||(f[h.id]={})).objectgroup=h.objectgroup,h.objectgroup.objects)){var _=h.objectgroup.objects.map(function(e){return a(e)});f[h.id].objectgroup.objects=_}h.animation&&((f[h.id]||(f[h.id]={})).animation=h.animation),h.type&&((f[h.id]||(f[h.id]={})).type=h.type)}for(var v in f){var y=f[v].animation;if(y){for(var b=0,x=0;x<y.length;x++)y[x].startTime=b,b+=y[x].duration;f[v].animationDuration=b}}}Array.isArray(u.wangsets)&&(f||={},p||={},o(u.wangsets,f)),f&&(d.tileData=f,d.tileProperties=p)}else if(u.tileproperties&&(d.tileProperties=u.tileproperties),u.tiles)for(c in d.tileData=u.tiles,d.tileData){var S=d.tileData[c].objectgroup;if(S&&S.objects){var C=S.objects.map(function(e){return a(e)});d.tileData[c].objectgroup.objects=C}}d.updateTileData(u.imagewidth,u.imageheight),t.push(d)}else{var w=new i(u.name,u.firstgid,u.tilewidth,u.tileheight,u.margin,u.spacing,u.properties),T=0;for(m=0;m<u.tiles.length;m++){h=u.tiles[m];var E=h.image,D=parseInt(h.id,10),O=u.firstgid+D,k=h.imagewidth,A=h.imageheight;w.addImage(O,E,k,A),T=Math.max(D,T)}w.maxId=T,n.push(w)}s&&(s.lastgid=u.firstgid-1),s=u}return{tilesets:t,imageCollections:n}}},57880(e){e.exports=function(e,t){for(var n=0;n<e.length;n++){var r=e[n],i=n;if(r.name&&r.name!==``&&(i=r.name),Array.isArray(r.wangtiles)&&r.wangtiles.length>0){var a={},o={},s,c,l;if(Array.isArray(r.edgecolors))for(s=0;s<r.edgecolors.length;s++)l=1+s,c=r.edgecolors[s],c.name!==``&&(a[l]=c.name);if(Array.isArray(r.cornercolors))for(s=0;s<r.cornercolors.length;s++)l=1+s,c=r.cornercolors[s],c.name!==``&&(o[l]=c.name);if(Array.isArray(r.colors))for(s=0;s<r.colors.length;s++)c=r.colors[s],l=1+s,c.name!==``&&(a[l]=o[l]=c.name);for(var u=[a,o,a,o,a,o,a,o],d=0;d<r.wangtiles.length;d++){var f=r.wangtiles[d],p=t[f.tileid]||(t[f.tileid]={});p=p.wangid||={};for(var m=[],h=0;h<Math.min(u.length,f.wangid.length);h++){if(c=f.wangid[h],c===0){m.push(void 0);continue}var g=u[h][c];if(g!==void 0){m.push(g);continue}m.push(c)}p[i]=m}}}}},96761(e,t,n){e.exports={AssignTileProperties:n(51233),Base64Decode:n(41868),BuildTilesetIndex:n(84101),CreateGroupLayer:n(79677),ParseGID:n(29920),ParseImageLayers:n(12635),ParseJSONTiled:n(46594),ParseObject:n(52205),ParseObjectLayers:n(22611),ParseTileLayers:n(28200),ParseTilesets:n(24619)}},33385(e,t,n){var r=n(83419),i=n(37277),a=n(44594),o=n(94880),s=n(72905),c=new r({initialize:function(e){this.scene=e,this.systems=e.sys,this.now=0,this.startTime=0,this.timeScale=1,this.paused=!1,this._active=[],this._pendingInsertion=[],this._pendingRemoval=[],e.sys.events.once(a.BOOT,this.boot,this),e.sys.events.on(a.START,this.start,this)},boot:function(){this.now=this.systems.game.loop.time,this.systems.events.once(a.DESTROY,this.destroy,this)},start:function(){this.startTime=this.systems.game.loop.time;var e=this.systems.events;e.on(a.PRE_UPDATE,this.preUpdate,this),e.on(a.UPDATE,this.update,this),e.once(a.SHUTDOWN,this.shutdown,this)},addEvent:function(e){var t;if(e instanceof o){if(t=e,this.removeEvent(t),t.elapsed=t.startAt,t.hasDispatched=!1,t.repeatCount=t.repeat===-1||t.loop?999999999999:t.repeat,t.delay<=0&&t.repeatCount>0)throw Error(`TimerEvent infinite loop created via zero delay`)}else t=new o(e);return this._pendingInsertion.push(t),t},delayedCall:function(e,t,n,r){return this.addEvent({delay:e,callback:t,args:n,callbackScope:r})},clearPendingEvents:function(){return this._pendingInsertion=[],this},removeEvent:function(e){Array.isArray(e)||(e=[e]);for(var t=0;t<e.length;t++){var n=e[t];s(this._pendingRemoval,n),s(this._pendingInsertion,n),s(this._active,n)}return this},removeAllEvents:function(){return this._pendingRemoval=this._pendingRemoval.concat(this._active),this},preUpdate:function(){var e=this._pendingRemoval.length,t=this._pendingInsertion.length;if(!(e===0&&t===0)){var n,r;for(n=0;n<e;n++){r=this._pendingRemoval[n];var i=this._active.indexOf(r);i>-1&&this._active.splice(i,1),r.destroy()}for(n=0;n<t;n++)r=this._pendingInsertion[n],this._active.push(r);this._pendingRemoval.length=0,this._pendingInsertion.length=0}},update:function(e,t){if(this.now=e,!this.paused){t*=this.timeScale;for(var n=0;n<this._active.length;n++){var r=this._active[n];if(!r.paused&&(r.elapsed+=t*r.timeScale,r.elapsed>=r.delay)){var i=r.elapsed-r.delay;if(r.elapsed=r.delay,!r.hasDispatched&&r.callback&&(r.hasDispatched=!0,r.callback.apply(r.callbackScope,r.args)),r.repeatCount>0){if(r.repeatCount--,i>=r.delay)for(;i>=r.delay&&r.repeatCount>0;)r.callback&&r.callback.apply(r.callbackScope,r.args),i-=r.delay,r.repeatCount--;r.elapsed=i,r.hasDispatched=!1}else r.hasDispatched&&this._pendingRemoval.push(r)}}}},shutdown:function(){var e;for(e=0;e<this._pendingInsertion.length;e++)this._pendingInsertion[e].destroy();for(e=0;e<this._active.length;e++)this._active[e].destroy();for(e=0;e<this._pendingRemoval.length;e++)this._pendingRemoval[e].destroy();this._active.length=0,this._pendingRemoval.length=0,this._pendingInsertion.length=0;var t=this.systems.events;t.off(a.PRE_UPDATE,this.preUpdate,this),t.off(a.UPDATE,this.update,this),t.off(a.SHUTDOWN,this.shutdown,this)},destroy:function(){this.shutdown(),this.scene.sys.events.off(a.START,this.start,this),this.scene=null,this.systems=null}});i.register(`Clock`,c,`time`),e.exports=c},96120(e,t,n){var r=n(83419),i=n(50792),a=n(39429),o=n(95540),s=n(44594),c=n(89809),l=new r({Extends:i,initialize:function(e,t){i.call(this),this.scene=e,this.systems=e.sys,this.elapsed=0,this.timeScale=1,this.paused=!0,this.complete=!1,this.totalComplete=0,this.loop=0,this.iteration=0,this.events=[];var n=this.systems.events;n.on(s.PRE_UPDATE,this.preUpdate,this),n.on(s.UPDATE,this.update,this),n.once(s.SHUTDOWN,this.destroy,this),t&&this.add(t)},preUpdate:function(e,t){this.paused||(this.elapsed+=t*this.timeScale)},update:function(){if(!(this.paused||this.complete)){var e,t=this.events,n=!1,r=this.systems,i;for(e=0;e<t.length;e++){var a=t[e];if(!a.complete&&a.time<=this.elapsed){if(a.complete=!0,this.totalComplete++,i=a.target?a.target:this,a.if&&!a.if.call(i,a))continue;if(a.once&&(n=!0),a.set&&a.target)for(var o in a.set)a.target[o]=a.set[o];this.iteration&&a.repeat++,a.loop&&a.repeat&&a.loop.call(i),a.tween&&(a.tweenInstance=r.tweens.add(a.tween)),a.sound&&(typeof a.sound==`string`?r.sound.play(a.sound):r.sound.play(a.sound.key,a.sound.config)),a.event&&this.emit(a.event,i),a.run&&a.run.call(i),a.stop&&this.stop()}}if(n)for(e=0;e<t.length;e++)t[e].complete&&t[e].once&&(t.splice(e,1),e--);var s=0;for(e=0;e<t.length;e++)t[e].complete||s++;s===0&&(t.length>0||this.totalComplete>0)&&(this.loop!==0&&(this.loop===-1||this.loop>this.iteration)?(this.iteration++,this.reset(!0)):this.complete=!0),this.complete&&this.emit(c.COMPLETE,this)}},play:function(e){return e===void 0&&(e=!0),this.paused=!1,this.complete=!1,this.totalComplete=0,e&&this.reset(),this},pause:function(){this.paused=!0;for(var e=this.events,t=0;t<e.length;t++){var n=e[t];n.tweenInstance&&(n.tweenInstance.paused=!0)}return this},repeat:function(e){return(e===void 0||e===!0)&&(e=-1),e===!1&&(e=0),this.loop=e,this},resume:function(){this.paused=!1;for(var e=this.events,t=0;t<e.length;t++){var n=e[t];n.tweenInstance&&(n.tweenInstance.paused=!1)}return this},stop:function(){return this.paused=!0,this.complete=!0,this},reset:function(e){e===void 0&&(e=!1),this.elapsed=0,e||(this.iteration=0);for(var t=this.events,n=0;n<t.length;n++){var r=t[n];r.complete=!1,e||(r.repeat=0),r.tweenInstance&&r.tweenInstance.stop()}return this.play(!1)},add:function(e){Array.isArray(e)||(e=[e]);var t=this.events,n=0;t.length>0&&(n=t[t.length-1].time);for(var r=0;r<e.length;r++){var i=e[r],a=o(i,`at`,0),s=o(i,`in`,null);s!==null&&(a=this.elapsed+s);var c=o(i,`from`,null);c!==null&&(a=n+c),t.push({complete:!1,time:a,repeat:0,if:o(i,`if`,null),run:o(i,`run`,null),loop:o(i,`loop`,null),event:o(i,`event`,null),target:o(i,`target`,null),set:o(i,`set`,null),tween:o(i,`tween`,null),sound:o(i,`sound`,null),once:o(i,`once`,!1),stop:o(i,`stop`,!1)}),n=a}return this.complete=!1,this},clear:function(){for(var e=this.events,t=0;t<e.length;t++){var n=e[t];n.tweenInstance&&n.tweenInstance.stop()}return e.length=0,this.elapsed=0,this.paused=!0,this},isPlaying:function(){return!this.paused&&!this.complete},getProgress:function(){return Math.min(this.totalComplete,this.events.length)/this.events.length},destroy:function(){var e=this.systems.events;e.off(s.PRE_UPDATE,this.preUpdate,this),e.off(s.UPDATE,this.update,this),e.off(s.SHUTDOWN,this.destroy,this),this.clear(),this.scene=null,this.systems=null}});a.register(`timeline`,function(e){return new l(this.scene,e)}),e.exports=l},94880(e,t,n){var r=n(83419),i=n(95540);e.exports=new r({initialize:function(e){this.delay=0,this.repeat=0,this.repeatCount=0,this.loop=!1,this.callback,this.callbackScope,this.args,this.timeScale=1,this.startAt=0,this.elapsed=0,this.paused=!1,this.hasDispatched=!1,this.reset(e)},reset:function(e){if(this.delay=i(e,`delay`,0),this.repeat=i(e,`repeat`,0),this.loop=i(e,`loop`,!1),this.callback=i(e,`callback`,void 0),this.callbackScope=i(e,`callbackScope`,this),this.args=i(e,`args`,[]),this.timeScale=i(e,`timeScale`,1),this.startAt=i(e,`startAt`,0),this.paused=i(e,`paused`,!1),this.elapsed=this.startAt,this.hasDispatched=!1,this.repeatCount=this.repeat===-1||this.loop?999999999999:this.repeat,this.delay<=0&&this.repeatCount>0)throw Error(`TimerEvent infinite loop created via zero delay`);return this},getProgress:function(){return this.elapsed/this.delay},getOverallProgress:function(){if(this.repeat>0){var e=this.delay+this.delay*this.repeat;return(this.elapsed+this.delay*(this.repeat-this.repeatCount))/e}else return this.getProgress()},getRepeatCount:function(){return this.repeatCount},getElapsed:function(){return this.elapsed},getElapsedSeconds:function(){return this.elapsed*.001},getRemaining:function(){return this.delay-this.elapsed},getRemainingSeconds:function(){return this.getRemaining()*.001},getOverallRemaining:function(){return this.delay*(1+this.repeatCount)-this.elapsed},getOverallRemainingSeconds:function(){return this.getOverallRemaining()*.001},remove:function(e){e===void 0&&(e=!1),this.elapsed=this.delay,this.hasDispatched=!e,this.repeatCount=0},destroy:function(){this.callback=void 0,this.callbackScope=void 0,this.args=[]}})},35945(e){e.exports=`complete`},89809(e,t,n){e.exports={COMPLETE:n(35945)}},90291(e,t,n){e.exports={Clock:n(33385),Events:n(89809),Timeline:n(96120),TimerEvent:n(94880)}},40382(e,t,n){var r=n(72905),i=n(83419),a=n(43491),o=n(88032),s=n(37277),c=n(44594),l=n(93109),u=n(8462),d=n(8357),f=n(43960),p=n(26012),m=new i({initialize:function(e){this.scene=e,this.events=e.sys.events,this.timeScale=1,this.paused=!1,this.processing=!1,this.tweens=[],this.time=0,this.startTime=0,this.nextTime=0,this.prevTime=0,this.maxLag=500,this.lagSkip=33,this.gap=1e3/240,this.events.once(c.BOOT,this.boot,this),this.events.on(c.START,this.start,this)},boot:function(){this.events.once(c.DESTROY,this.destroy,this)},start:function(){this.timeScale=1,this.paused=!1,this.startTime=Date.now(),this.prevTime=this.startTime,this.nextTime=this.gap,this.events.on(c.UPDATE,this.update,this),this.events.once(c.SHUTDOWN,this.shutdown,this)},create:function(e){Array.isArray(e)||(e=[e]);for(var t=[],n=0;n<e.length;n++){var r=e[n];r instanceof u||r instanceof f?t.push(r):Array.isArray(r.tweens)?t.push(p(this,r)):t.push(d(this,r))}return t.length===1?t[0]:t},add:function(e){var t=e,n=this.tweens;return t instanceof u||t instanceof f||(t=Array.isArray(t.tweens)?p(this,t):d(this,t)),n.push(t.reset()),t},addMultiple:function(e){for(var t,n=[],r=this.tweens,i=0;i<e.length;i++)t=e[i],t instanceof u||t instanceof f||(t=Array.isArray(t.tweens)?p(this,t):d(this,t)),r.push(t.reset()),n.push(t);return n},chain:function(e){var t=p(this,e);return this.tweens.push(t.init()),t},getChainedTweens:function(e){return e.getChainedTweens()},has:function(e){return this.tweens.indexOf(e)>-1},existing:function(e){return this.has(e)||this.tweens.push(e.reset()),this},addCounter:function(e){var t=o(this,e);return this.tweens.push(t.reset()),t},stagger:function(e,t){return l(e,t)},setLagSmooth:function(e,t){return e===void 0&&(e=1/1e-8),t===void 0&&(t=0),this.maxLag=e,this.lagSkip=Math.min(t,this.maxLag),this},setFps:function(e){return e===void 0&&(e=240),this.gap=1e3/e,this.nextTime=this.time*1e3+this.gap,this},getDelta:function(e){var t=Date.now()-this.prevTime;t>this.maxLag&&(this.startTime+=t-this.lagSkip),this.prevTime+=t;var n=this.prevTime-this.startTime,r=n-this.nextTime,i=n-this.time*1e3;return r>0||e?(n/=1e3,this.time=n,this.nextTime+=r+(r>=this.gap?4:this.gap-r)):i=0,i},tick:function(){return this.step(!0),this},update:function(){this.paused||this.step(!1)},step:function(e){e===void 0&&(e=!1);var t=this.getDelta(e);if(!(t<=0)){this.processing=!0;var n,r,i=[],a=this.tweens;for(n=0;n<a.length;n++)r=a[n],r.update(t)&&i.push(r);var o=i.length;if(o&&a.length>0){for(n=0;n<o;n++){r=i[n];var s=a.indexOf(r);s>-1&&(r.isPendingRemove()||r.isDestroyed())&&(a.splice(s,1),r.destroy())}i.length=0}this.processing=!1}},remove:function(e){return this.processing?e.setPendingRemoveState():(r(this.tweens,e),e.setRemovedState()),this},reset:function(e){return this.existing(e),e.seek(),e.setActiveState(),this},makeActive:function(e){return this.existing(e),e.setActiveState(),this},each:function(e,t){var n,r=[null];for(n=1;n<arguments.length;n++)r.push(arguments[n]);return this.tweens.forEach(function(n){r[0]=n,e.apply(t,r)}),this},getTweens:function(){return this.tweens.slice()},getTweensOf:function(e){var t=[],n=this.tweens;e=Array.isArray(e)?a(e):[e];for(var r=e.length,i=0;i<n.length;i++)for(var o=n[i],s=0;s<r;s++)!o.isDestroyed()&&o.hasTarget(e[s])&&t.push(o);return t},getGlobalTimeScale:function(){return this.timeScale},setGlobalTimeScale:function(e){return this.timeScale=e,this},isTweening:function(e){for(var t=this.tweens,n,r=0;r<t.length;r++)if(n=t[r],n.isPlaying()&&n.hasTarget(e))return!0;return!1},killAll:function(){for(var e=this.processing?this.getTweens():this.tweens,t=0;t<e.length;t++)e[t].destroy();return this.processing||(e.length=0),this},killTweensOf:function(e){for(var t=this.getTweensOf(e),n=0;n<t.length;n++)t[n].destroy();return this},pauseAll:function(){return this.paused=!0,this},resumeAll:function(){return this.paused=!1,this},shutdown:function(){this.killAll(),this.tweens=[],this.events.off(c.UPDATE,this.update,this),this.events.off(c.SHUTDOWN,this.shutdown,this)},destroy:function(){this.shutdown(),this.events.off(c.START,this.start,this),this.scene=null,this.events=null}});s.register(`TweenManager`,m,`tweens`),e.exports=m},57355(e){e.exports=function(e,t,n){return e&&e.hasOwnProperty(t)?e[t]:n}},6113(e,t,n){var r=n(62640),i=n(35355);e.exports=function(e,t){var n=r.Power0;if(typeof e==`string`)if(r.hasOwnProperty(e))n=r[e];else{var a=``;if(e.indexOf(`.`)){a=e.substring(e.indexOf(`.`)+1);var o=a.toLowerCase();o===`in`?a=`easeIn`:o===`out`?a=`easeOut`:o===`inout`&&(a=`easeInOut`)}e=i(e.substring(0,e.indexOf(`.`)+1)+a),r.hasOwnProperty(e)&&(n=r[e])}else typeof e==`function`&&(n=e);if(!t)return n;var s=t.slice(0);return s.unshift(0),function(e){return s[0]=e,n.apply(this,s)}}},91389(e,t,n){var r=n(89318),i=n(77259),a={bezier:r,catmull:i,catmullrom:i,linear:n(28392)};e.exports=function(e){if(e===null)return null;var t=a.linear;return typeof e==`string`?a.hasOwnProperty(e)&&(t=a[e]):typeof e==`function`&&(t=e),t}},55292(e){e.exports=function(e,t,n){return e.hasOwnProperty(t)?typeof e[t]==`function`?function(n,r,i,a,o,s){return e[t](n,r,i,a,o,s)}:function(){return e[t]}:typeof n==`function`?n:function(){return n}}},82985(e,t,n){var r=n(81076);e.exports=function(e){var t,n=[];if(e.hasOwnProperty(`props`))for(t in e.props)t.substring(0,1)!==`_`&&n.push({key:t,value:e.props[t]});else for(t in e)r.indexOf(t)===-1&&t.substring(0,1)!==`_`&&n.push({key:t,value:e[t]});return n}},62329(e,t,n){var r=n(35154);e.exports=function(e){var t=r(e,`targets`,null);return t===null?t:(typeof t==`function`&&(t=t.call()),Array.isArray(t)||(t=[t]),t)}},17777(e,t,n){var r=n(30976),i=n(99472);function a(e){return!!e.getActive&&typeof e.getActive==`function`}function o(e){return!!e.getStart&&typeof e.getStart==`function`}function s(e){return!!e.getEnd&&typeof e.getEnd==`function`}function c(e){return o(e)||s(e)||a(e)}var l=function(e,t){var n,u=function(e,t,n){return n},d=function(e,t,n){return n},f=null,p=typeof t;if(p===`number`)u=function(){return t};else if(Array.isArray(t))d=function(){return t[0]},u=function(){return t[t.length-1]};else if(p===`string`){var m=t.toLowerCase(),h=m.substring(0,6)===`random`,g=m.substring(0,3)===`int`;if(h||g){var _=m.indexOf(`(`),v=m.indexOf(`)`),y=m.indexOf(`,`);if(_&&v&&y){var b=parseFloat(m.substring(_+1,y)),x=parseFloat(m.substring(y+1,v));u=h?function(){return i(b,x)}:function(){return r(b,x)}}else throw Error(`invalid random() format`)}else{m=m[0];var S=parseFloat(t.substr(2));switch(m){case`+`:u=function(e,t,n){return n+S};break;case`-`:u=function(e,t,n){return n-S};break;case`*`:u=function(e,t,n){return n*S};break;case`/`:u=function(e,t,n){return n/S};break;default:u=function(){return parseFloat(t)}}}}else if(p===`function`)u=t;else if(p===`object`)if(c(t))a(t)&&(f=t.getActive),s(t)&&(u=t.getEnd),o(t)&&(d=t.getStart);else if(t.hasOwnProperty(`value`))n=l(e,t.value);else{var C=t.hasOwnProperty(`to`),w=t.hasOwnProperty(`from`),T=t.hasOwnProperty(`start`);if(C&&(w||T)){if(n=l(e,t.to),T){var E=l(e,t.start);n.getActive=E.getEnd}if(w){var D=l(e,t.from);n.getStart=D.getEnd}}}return n||={getActive:f,getEnd:u,getStart:d},n};e.exports=l},88032(e,t,n){var r=n(70402),i=n(69902),a=n(23568),o=n(57355),s=n(6113),c=n(95540),l=n(55292),u=n(35154),d=n(17777),f=n(269),p=n(8462);e.exports=function(e,t,n){if(t instanceof p)return t.parent=e,t;n=n===void 0?i:f(i,n);var m=c(t,`from`,0),h=c(t,`to`,1),g=[{value:m}],_=c(t,`delay`,n.delay),v=c(t,`easeParams`,n.easeParams),y=c(t,`ease`,n.ease),b=d(`value`,h),x=new p(e,g),S=x.add(0,`value`,b.getEnd,b.getStart,b.getActive,s(c(t,`ease`,y),c(t,`easeParams`,v)),l(t,`delay`,_),c(t,`duration`,n.duration),o(t,`yoyo`,n.yoyo),c(t,`hold`,n.hold),c(t,`repeat`,n.repeat),c(t,`repeatDelay`,n.repeatDelay),!1,!1);S.start=m,S.current=m,x.completeDelay=a(t,`completeDelay`,0),x.loop=Math.round(a(t,`loop`,0)),x.loopDelay=Math.round(a(t,`loopDelay`,0)),x.paused=o(t,`paused`,!1),x.persist=o(t,`persist`,!1),x.isNumberTween=!0,x.callbackScope=u(t,`callbackScope`,x);for(var C=r.TYPES,w=0;w<C.length;w++){var T=C[w],E=u(t,T,!1);if(E){var D=u(t,T+`Params`,[]);x.setCallback(T,E,D)}}return x}},93109(e,t,n){var r=n(6113),i=n(35154),a=n(36383);e.exports=function(e,t){t===void 0&&(t={});var n,o=i(t,`start`,0),s=i(t,`ease`,null),c=i(t,`grid`,null),l=i(t,`from`,0),u=l===`first`,d=l===`center`,f=l===`last`,p=typeof l==`number`,m=Array.isArray(e),h=parseFloat(m?e[0]:e),g=m?parseFloat(e[1]):0,_=Math.max(h,g);if(m&&(o+=h),c){var v=c[0],y=c[1],b=0,x=0,S=0,C=0,w=[];f?(b=v-1,x=y-1):p?(b=l%v,x=Math.floor(l/v)):d&&(b=(v-1)/2,x=(y-1)/2);for(var T=a.MIN_SAFE_INTEGER,E=0;E<y;E++){w[E]=[];for(var D=0;D<v;D++){S=b-D,C=x-E;var O=Math.sqrt(S*S+C*C);O>T&&(T=O),w[E][D]=O}}}var k=s?r(s):null;return n=c?function(e,t,n,r){var i=0,a=r%v,s=Math.floor(r/v);a>=0&&a<v&&s>=0&&s<y&&(i=w[s][a]);var c;if(m){var l=g-h;c=k?i/T*l*k(i/T):i/T*l}else c=k?i*h*k(i/T):i*h;return c+o}:function(e,t,n,r,i){i--;var a;u?a=r:d?a=Math.abs(i/2-r):f?a=i-r:p&&(a=Math.abs(l-r));var s;if(m){var c=d?(g-h)/i*(a*2):(g-h)/i*a;s=k?c*k(a/i):c}else s=k?i*_*k(a/i):a*h;return s+o},n}},8357(e,t,n){var r=n(70402),i=n(69902),a=n(23568),o=n(57355),s=n(6113),c=n(95540),l=n(91389),u=n(55292),d=n(82985),f=n(62329),p=n(35154),m=n(17777),h=n(269),g=n(8462);e.exports=function(e,t,n){if(t instanceof g)return t.parent=e,t;n=n===void 0?i:h(i,n);var _=f(t);!_&&n.targets&&(_=n.targets);for(var v=d(t),y=c(t,`delay`,n.delay),b=c(t,`duration`,n.duration),x=c(t,`easeParams`,n.easeParams),S=c(t,`ease`,n.ease),C=c(t,`hold`,n.hold),w=c(t,`repeat`,n.repeat),T=c(t,`repeatDelay`,n.repeatDelay),E=o(t,`yoyo`,n.yoyo),D=o(t,`flipX`,n.flipX),O=o(t,`flipY`,n.flipY),k=c(t,`interpolation`,n.interpolation),A=function(e,t,n,r){if(n===`texture`){var i=r,a=void 0;Array.isArray(r)?(i=r[0],a=r[1]):r.hasOwnProperty(`value`)?(i=r.value,Array.isArray(r.value)?(i=r.value[0],a=r.value[1]):typeof r.value==`string`&&(i=r.value)):typeof r==`string`&&(i=r),e.addFrame(t,i,a,u(r,`delay`,y),c(r,`duration`,b),c(r,`hold`,C),c(r,`repeat`,w),c(r,`repeatDelay`,T),o(r,`flipX`,D),o(r,`flipY`,O))}else{var d=m(n,r),f=l(c(r,`interpolation`,k));e.add(t,n,d.getEnd,d.getStart,d.getActive,s(c(r,`ease`,S),c(r,`easeParams`,x)),u(r,`delay`,y),c(r,`duration`,b),o(r,`yoyo`,E),c(r,`hold`,C),c(r,`repeat`,w),c(r,`repeatDelay`,T),o(r,`flipX`,D),o(r,`flipY`,O),f,f?r:null)}},j=new g(e,_),M=0;M<v.length;M++)for(var N=v[M].key,P=v[M].value,F=0;F<_.length;F++)_[F]&&(N===`scale`&&!_[F].hasOwnProperty(`scale`)?(A(j,F,`scaleX`,P),A(j,F,`scaleY`,P)):A(j,F,N,P));j.completeDelay=a(t,`completeDelay`,0),j.loop=Math.round(a(t,`loop`,0)),j.loopDelay=Math.round(a(t,`loopDelay`,0)),j.paused=o(t,`paused`,!1),j.persist=o(t,`persist`,!1),j.callbackScope=c(t,`callbackScope`,j);for(var I=r.TYPES,L=0;L<I.length;L++){var R=I[L],z=p(t,R,!1);if(z){var B=p(t,R+`Params`,[]);j.setCallback(R,z,B)}}return j}},26012(e,t,n){var r=n(70402),i=n(23568),a=n(57355),o=n(62329),s=n(35154),c=n(8357),l=n(43960);e.exports=function(e,t){if(t instanceof l)return t.parent=e,t;var n=new l(e);n.startDelay=s(t,`delay`,0),n.completeDelay=i(t,`completeDelay`,0),n.loop=Math.round(i(t,`loop`,s(t,`repeat`,0))),n.loopDelay=Math.round(i(t,`loopDelay`,s(t,`repeatDelay`,0))),n.paused=a(t,`paused`,!1),n.persist=a(t,`persist`,!1),n.callbackScope=s(t,`callbackScope`,n);var u,d=r.TYPES;for(u=0;u<d.length;u++){var f=d[u],p=s(t,f,!1);if(p){var m=s(t,f+`Params`,[]);n.setCallback(f,p,m)}}var h=s(t,`tweens`,null);if(Array.isArray(h)){var g=[],_=o(t),v=void 0;for(_&&(v={targets:_}),u=0;u<h.length;u++)g.push(c(n,h[u],v));n.add(g)}return n}},30231(e,t,n){e.exports={GetBoolean:n(57355),GetEaseFunction:n(6113),GetInterpolationFunction:n(91389),GetNewValue:n(55292),GetProps:n(82985),GetTargets:n(62329),GetValueOp:n(17777),NumberTweenBuilder:n(88032),StaggerBuilder:n(93109),TweenBuilder:n(8357)}},73685(e){e.exports=`active`},98540(e){e.exports=`complete`},67233(e){e.exports=`loop`},2859(e){e.exports=`pause`},98336(e){e.exports=`repeat`},25764(e){e.exports=`resume`},32193(e){e.exports=`start`},84371(e){e.exports=`stop`},70766(e){e.exports=`update`},55659(e){e.exports=`yoyo`},842(e,t,n){e.exports={TWEEN_ACTIVE:n(73685),TWEEN_COMPLETE:n(98540),TWEEN_LOOP:n(67233),TWEEN_PAUSE:n(2859),TWEEN_RESUME:n(25764),TWEEN_REPEAT:n(98336),TWEEN_START:n(32193),TWEEN_STOP:n(84371),TWEEN_UPDATE:n(70766),TWEEN_YOYO:n(55659)}},43066(e,t,n){e.exports={States:n(86353),Builders:n(30231),Events:n(842),TweenManager:n(40382),Tween:n(8462),TweenData:n(48177),TweenFrameData:n(42220),BaseTween:n(70402),TweenChain:n(43960)}},70402(e,t,n){var r=n(83419),i=n(50792),a=n(842),o=n(86353),s=new r({Extends:i,initialize:function(e){i.call(this),this.parent=e,this.data=[],this.totalData=0,this.startDelay=0,this.hasStarted=!1,this.timeScale=1,this.loop=0,this.loopDelay=0,this.loopCounter=0,this.completeDelay=0,this.countdown=0,this.state=o.PENDING,this.paused=!1,this.callbacks={onActive:null,onComplete:null,onLoop:null,onPause:null,onRepeat:null,onResume:null,onStart:null,onStop:null,onUpdate:null,onYoyo:null},this.callbackScope,this.persist=!1},setTimeScale:function(e){return this.timeScale=e,this},getTimeScale:function(){return this.timeScale},isPlaying:function(){return!this.paused&&this.isActive()},isPaused:function(){return this.paused},pause:function(){return this.paused||(this.paused=!0,this.dispatchEvent(a.TWEEN_PAUSE,`onPause`)),this},resume:function(){return this.paused&&(this.paused=!1,this.dispatchEvent(a.TWEEN_RESUME,`onResume`)),this},makeActive:function(){this.parent.makeActive(this),this.dispatchEvent(a.TWEEN_ACTIVE,`onActive`)},onCompleteHandler:function(){this.setPendingRemoveState(),this.dispatchEvent(a.TWEEN_COMPLETE,`onComplete`)},complete:function(e){return e===void 0&&(e=0),e?(this.setCompleteDelayState(),this.countdown=e):this.onCompleteHandler(),this},completeAfterLoop:function(e){return e===void 0&&(e=0),this.loopCounter>e&&(this.loopCounter=e),this},remove:function(){return this.parent&&this.parent.remove(this),this},stop:function(){return this.parent&&!this.isRemoved()&&!this.isPendingRemove()&&!this.isDestroyed()&&(this.dispatchEvent(a.TWEEN_STOP,`onStop`),this.setPendingRemoveState()),this},updateLoopCountdown:function(e){this.countdown-=e,this.countdown<=0&&(this.setActiveState(),this.dispatchEvent(a.TWEEN_LOOP,`onLoop`))},updateStartCountdown:function(e){return this.countdown-=e,this.countdown<=0&&(this.hasStarted=!0,this.setActiveState(),this.dispatchEvent(a.TWEEN_START,`onStart`),e=0),e},updateCompleteDelay:function(e){this.countdown-=e,this.countdown<=0&&this.onCompleteHandler()},setCallback:function(e,t,n){return n===void 0&&(n=[]),this.callbacks.hasOwnProperty(e)&&(this.callbacks[e]={func:t,params:n}),this},setPendingState:function(){this.state=o.PENDING},setActiveState:function(){this.state=o.ACTIVE,this.hasStarted=!1},setLoopDelayState:function(){this.state=o.LOOP_DELAY},setCompleteDelayState:function(){this.state=o.COMPLETE_DELAY},setStartDelayState:function(){this.state=o.START_DELAY,this.countdown=this.startDelay,this.hasStarted=!1},setPendingRemoveState:function(){this.state=o.PENDING_REMOVE},setRemovedState:function(){this.state=o.REMOVED},setFinishedState:function(){this.state=o.FINISHED},setDestroyedState:function(){this.state=o.DESTROYED},isPending:function(){return this.state===o.PENDING},isActive:function(){return this.state===o.ACTIVE},isLoopDelayed:function(){return this.state===o.LOOP_DELAY},isCompleteDelayed:function(){return this.state===o.COMPLETE_DELAY},isStartDelayed:function(){return this.state===o.START_DELAY},isPendingRemove:function(){return this.state===o.PENDING_REMOVE},isRemoved:function(){return this.state===o.REMOVED},isFinished:function(){return this.state===o.FINISHED},isDestroyed:function(){return this.state===o.DESTROYED},destroy:function(){this.data&&this.data.forEach(function(e){e.destroy()}),this.removeAllListeners(),this.callbacks=null,this.data=null,this.parent=null,this.setDestroyedState()}});s.TYPES=[`onActive`,`onComplete`,`onLoop`,`onPause`,`onRepeat`,`onResume`,`onStart`,`onStop`,`onUpdate`,`onYoyo`],e.exports=s},95042(e,t,n){var r=n(83419),i=n(842),a=n(86353);e.exports=new r({initialize:function(e,t,n,r,i,a,o,s,c,l){this.tween=e,this.targetIndex=t,this.duration=r<=0?.01:r,this.totalDuration=0,this.delay=0,this.getDelay=n,this.yoyo=i,this.hold=a,this.repeat=o,this.repeatDelay=s,this.repeatCounter=0,this.flipX=c,this.flipY=l,this.progress=0,this.elapsed=0,this.state=0,this.isCountdown=!1},getTarget:function(){return this.tween.targets[this.targetIndex]},setTargetValue:function(e){e===void 0&&(e=this.current),this.tween.targets[this.targetIndex][this.key]=e},setCreatedState:function(){this.state=a.CREATED,this.isCountdown=!1},setDelayState:function(){this.state=a.DELAY,this.isCountdown=!0},setPendingRenderState:function(){this.state=a.PENDING_RENDER,this.isCountdown=!1},setPlayingForwardState:function(){this.state=a.PLAYING_FORWARD,this.isCountdown=!1},setPlayingBackwardState:function(){this.state=a.PLAYING_BACKWARD,this.isCountdown=!1},setHoldState:function(){this.state=a.HOLD_DELAY,this.isCountdown=!0},setRepeatState:function(){this.state=a.REPEAT_DELAY,this.isCountdown=!0},setCompleteState:function(){this.state=a.COMPLETE,this.isCountdown=!1},isCreated:function(){return this.state===a.CREATED},isDelayed:function(){return this.state===a.DELAY},isPendingRender:function(){return this.state===a.PENDING_RENDER},isPlayingForward:function(){return this.state===a.PLAYING_FORWARD},isPlayingBackward:function(){return this.state===a.PLAYING_BACKWARD},isHolding:function(){return this.state===a.HOLD_DELAY},isRepeating:function(){return this.state===a.REPEAT_DELAY},isComplete:function(){return this.state===a.COMPLETE},setStateFromEnd:function(e){this.yoyo?this.onRepeat(e,!0,!0):this.repeatCounter>0?this.onRepeat(e,!0,!1):this.setCompleteState()},setStateFromStart:function(e){this.repeatCounter>0?this.onRepeat(e,!1):this.setCompleteState()},reset:function(){var e=this.tween,t=e.totalTargets,n=this.targetIndex,r=e.targets[n],i=this.key;this.progress=0,this.elapsed=0,this.delay=this.getDelay(r,i,0,n,t,e),this.repeatCounter=this.repeat===-1?a.MAX:this.repeat,this.setPendingRenderState();var o=this.duration+this.hold;this.yoyo&&(o+=this.duration);var s=o+this.repeatDelay;this.totalDuration=this.delay+o,this.repeat===-1?(this.totalDuration+=s*a.MAX,e.isInfinite=!0):this.repeat>0&&(this.totalDuration+=s*this.repeat),this.totalDuration>e.duration&&(e.duration=this.totalDuration),this.delay<e.startDelay&&(e.startDelay=this.delay),this.delay>0&&(this.elapsed=this.delay,this.setDelayState())},onRepeat:function(e,t,n){var r=this.tween,a=r.totalTargets,o=this.targetIndex,s=r.targets[o],c=this.key,l=c!==`texture`;if(this.elapsed=e,this.progress=e/this.duration,this.flipX&&s.toggleFlipX(),this.flipY&&s.toggleFlipY(),l&&(t||n)&&(this.start=this.getStartValue(s,c,this.start,o,a,r)),n){this.setPlayingBackwardState(),this.dispatchEvent(i.TWEEN_YOYO,`onYoyo`);return}this.repeatCounter--,l&&(this.end=this.getEndValue(s,c,this.start,o,a,r)),this.repeatDelay>0?(this.elapsed=this.repeatDelay-e,l&&(this.current=this.start,s[c]=this.current),this.setRepeatState()):(this.setPlayingForwardState(),this.dispatchEvent(i.TWEEN_REPEAT,`onRepeat`))},destroy:function(){this.tween=null,this.getDelay=null,this.setCompleteState()}})},69902(e){e.exports={targets:null,delay:0,duration:1e3,ease:`Power0`,easeParams:null,hold:0,repeat:0,repeatDelay:0,yoyo:!1,flipX:!1,flipY:!1,persist:!1,interpolation:null}},81076(e){e.exports=`callbackScope.completeDelay.delay.duration.ease.easeParams.flipX.flipY.hold.interpolation.loop.loopDelay.onActive.onActiveParams.onComplete.onCompleteParams.onLoop.onLoopParams.onPause.onPauseParams.onRepeat.onRepeatParams.onResume.onResumeParams.onStart.onStartParams.onStop.onStopParams.onUpdate.onUpdateParams.onYoyo.onYoyoParams.paused.persist.props.repeat.repeatDelay.targets.yoyo`.split(`.`)},8462(e,t,n){var r=n(70402),i=n(83419),a=n(842),o=n(44603),s=n(39429),c=n(36383),l=n(86353),u=n(48177),d=n(42220),f=new i({Extends:r,initialize:function(e,t){r.call(this,e),this.targets=t,this.totalTargets=t.length,this.isSeeking=!1,this.isInfinite=!1,this.elapsed=0,this.totalElapsed=0,this.duration=0,this.progress=0,this.totalDuration=0,this.totalProgress=0,this.isNumberTween=!1},add:function(e,t,n,r,i,a,o,s,c,l,d,f,p,m,h,g){var _=new u(this,e,t,n,r,i,a,o,s,c,l,d,f,p,m,h,g);return this.totalData=this.data.push(_),_},addFrame:function(e,t,n,r,i,a,o,s,c,l){var u=new d(this,e,t,n,r,i,a,o,s,c,l);return this.totalData=this.data.push(u),u},getValue:function(e){e===void 0&&(e=0);var t=null;return this.data&&(t=this.data[e].current),t},hasTarget:function(e){return this.targets&&this.targets.indexOf(e)!==-1},updateTo:function(e,t,n){if(n===void 0&&(n=!1),e!==`texture`)for(var r=0;r<this.totalData;r++){var i=this.data[r];i.key===e&&(i.isPlayingForward()||i.isPlayingBackward())&&(i.end=t,n&&(i.start=i.current))}return this},restart:function(){switch(this.state){case l.REMOVED:case l.FINISHED:this.seek(),this.parent.makeActive(this);break;case l.PENDING:case l.PENDING_REMOVE:this.parent.reset(this);break;case l.DESTROYED:console.warn(`Cannot restart destroyed Tween`,this);break;default:this.seek();break}return this.paused=!1,this.hasStarted=!1,this},nextState:function(){if(this.loopCounter>0)this.elapsed=0,this.progress=0,this.loopCounter--,this.initTweenData(!0),this.loopDelay>0?(this.countdown=this.loopDelay,this.setLoopDelayState()):(this.setActiveState(),this.dispatchEvent(a.TWEEN_LOOP,`onLoop`));else if(this.completeDelay>0)this.countdown=this.completeDelay,this.setCompleteDelayState();else return this.onCompleteHandler(),!0;return!1},onCompleteHandler:function(){this.progress=1,this.totalProgress=1,r.prototype.onCompleteHandler.call(this)},play:function(){return this.isDestroyed()?(console.warn(`Cannot play destroyed Tween`,this),this):((this.isPendingRemove()||this.isFinished())&&this.seek(),this.paused=!1,this.setActiveState(),this)},seek:function(e,t,n){if(e===void 0&&(e=0),t===void 0&&(t=16.6),n===void 0&&(n=!1),this.isDestroyed())return console.warn(`Cannot seek destroyed Tween`,this),this;n||(this.isSeeking=!0),this.reset(!0),this.initTweenData(!0),this.setActiveState(),this.dispatchEvent(a.TWEEN_ACTIVE,`onActive`);var r=this.paused;if(this.paused=!1,e>0){for(var i=Math.floor(e/t),o=e-i*t,s=0;s<i;s++)this.update(t);o>0&&this.update(o)}return this.paused=r,this.isSeeking=!1,this},initTweenData:function(e){e===void 0&&(e=!1),this.duration=0,this.startDelay=c.MAX_SAFE_INTEGER;for(var t=this.data,n=0;n<this.totalData;n++)t[n].reset(e);this.duration=Math.max(this.duration,.01);var r=this.duration,i=this.completeDelay,a=this.loopCounter,o=this.loopDelay;a>0?this.totalDuration=r+i+(r+o)*a:this.totalDuration=r+i},reset:function(e){return e===void 0&&(e=!1),this.elapsed=0,this.totalElapsed=0,this.progress=0,this.totalProgress=0,this.loopCounter=this.loop,this.loop===-1&&(this.isInfinite=!0,this.loopCounter=l.MAX),e||(this.initTweenData(),this.setActiveState(),this.dispatchEvent(a.TWEEN_ACTIVE,`onActive`)),this},update:function(e){if(this.isPendingRemove()||this.isDestroyed())return this.persist?(this.setFinishedState(),!1):!0;if(this.paused||this.isFinished())return!1;if(e*=this.timeScale*this.parent.timeScale,this.isLoopDelayed())return this.updateLoopCountdown(e),!1;if(this.isCompleteDelayed())return this.updateCompleteDelay(e),!1;this.hasStarted||(this.startDelay-=e,this.startDelay<=0&&(this.hasStarted=!0,this.dispatchEvent(a.TWEEN_START,`onStart`),e=0));var t=!1;if(this.isActive())for(var n=this.data,r=0;r<this.totalData;r++)n[r].update(e)&&(t=!0);this.elapsed+=e,this.progress=Math.min(this.elapsed/this.duration,1),this.totalElapsed+=e,this.totalProgress=Math.min(this.totalElapsed/this.totalDuration,1),t||this.nextState();var i=this.isPendingRemove();return i&&this.persist&&(this.setFinishedState(),i=!1),i},forward:function(e){return this.update(e),this},rewind:function(e){return this.update(-e),this},dispatchEvent:function(e,t){if(!this.isSeeking){if(this.emit(e,this,this.targets),!this.callbacks)return;var n=this.callbacks[t];n&&n.func.apply(this.callbackScope,[this,this.targets].concat(n.params))}},destroy:function(){r.prototype.destroy.call(this),this.targets=null}});s.register(`tween`,function(e){return this.scene.sys.tweens.add(e)}),o.register(`tween`,function(e){return this.scene.sys.tweens.create(e)}),e.exports=f},43960(e,t,n){var r=n(72905),i=n(70402),a=n(83419),o=n(842),s=n(44603),c=n(39429),l=n(86353),u=new a({Extends:i,initialize:function(e){i.call(this,e),this.currentTween=null,this.currentIndex=0},init:function(){return this.loopCounter=this.loop===-1?l.MAX:this.loop,this.setCurrentTween(0),this.startDelay>0&&!this.isStartDelayed()?this.setStartDelayState():this.setActiveState(),this},add:function(e){var t=this.parent.create(e);Array.isArray(t)||(t=[t]);for(var n=this.data,r=0;r<t.length;r++){var i=t[r];i.parent=this,n.push(i.reset())}return this.totalData=n.length,this},remove:function(e){return r(this.data,e),e.setRemovedState(),e===this.currentTween&&this.nextTween(),this.totalData=this.data.length,this},hasTarget:function(e){for(var t=this.data,n=0;n<this.totalData;n++)if(t[n].hasTarget(e))return!0;return!1},restart:function(){return this.isDestroyed()?(console.warn(`Cannot restart destroyed TweenChain`,this),this):(this.isRemoved()&&this.parent.makeActive(this),this.resetTweens(),this.paused=!1,this.init())},reset:function(e){return e.seek(),e.setActiveState(),this},makeActive:function(e){return e.reset(),e.setActiveState(),this},nextState:function(){if(this.loopCounter>0)this.loopCounter--,this.resetTweens(),this.loopDelay>0?(this.countdown=this.loopDelay,this.setLoopDelayState()):(this.setActiveState(),this.dispatchEvent(o.TWEEN_LOOP,`onLoop`));else if(this.completeDelay>0)this.countdown=this.completeDelay,this.setCompleteDelayState();else return this.onCompleteHandler(),!0;return!1},play:function(){return this.isDestroyed()?(console.warn(`Cannot play destroyed TweenChain`,this),this):((this.isPendingRemove()||this.isPending())&&this.resetTweens(),this.paused=!1,this.startDelay>0&&!this.isStartDelayed()?this.setStartDelayState():this.setActiveState(),this)},resetTweens:function(){for(var e=this.data,t=this.totalData,n=0;n<t;n++)e[n].reset(!1);this.setCurrentTween(0)},update:function(e){if(this.isPendingRemove()||this.isDestroyed())return this.persist?(this.setFinishedState(),!1):!0;if(this.isFinished()||this.paused)return!1;if(e*=this.parent.timeScale,this.isLoopDelayed())return this.updateLoopCountdown(e),!1;if(this.isCompleteDelayed())return this.updateCompleteDelay(e),!1;this.hasStarted||(this.startDelay-=e,this.startDelay<=0&&(this.hasStarted=!0,this.dispatchEvent(o.TWEEN_START,`onStart`),e=0));var t=!1;return this.isActive()&&this.currentTween&&(this.currentTween.update(e)&&this.nextTween()&&this.nextState(),t=this.isPendingRemove(),t&&this.persist&&(this.setFinishedState(),t=!1)),t},nextTween:function(){return this.currentIndex++,this.currentIndex===this.totalData?!0:(this.setCurrentTween(this.currentIndex),!1)},setCurrentTween:function(e){this.currentIndex=e,this.currentTween=this.data[e],this.currentTween.setActiveState()},dispatchEvent:function(e,t){this.emit(e,this);var n=this.callbacks[t];n&&n.func.apply(this.callbackScope,[this].concat(n.params))},destroy:function(){i.prototype.destroy.call(this),this.currentTween=null}});c.register(`tweenchain`,function(e){return this.scene.sys.tweens.chain(e)}),s.register(`tweenchain`,function(e){return this.scene.sys.tweens.create(e)}),e.exports=u},48177(e,t,n){var r=n(95042),i=n(45319),a=n(83419),o=n(842);e.exports=new a({Extends:r,initialize:function(e,t,n,i,a,o,s,c,l,u,d,f,p,m,h,g,_){r.call(this,e,t,c,l,u,d,f,p,m,h),this.key=n,this.getActiveValue=o,this.getEndValue=i,this.getStartValue=a,this.ease=s,this.start=0,this.previous=0,this.current=0,this.end=0,this.interpolation=g,this.interpolationData=_},reset:function(e){r.prototype.reset.call(this);var t=this.tween.targets[this.targetIndex],n=this.key;e&&(t[n]=this.start),this.start=0,this.previous=0,this.current=0,this.end=0,this.getActiveValue&&(t[n]=this.getActiveValue(t,n,0))},update:function(e){var t=this.tween,n=t.totalTargets,r=this.targetIndex,a=t.targets[r],s=this.key;if(!a||a.isDestroyed)return this.setCompleteState(),!1;if(this.isCountdown&&(this.elapsed-=e,this.elapsed<=0&&(this.elapsed=0,e=0,this.isDelayed()?this.setPendingRenderState():this.isRepeating()?(this.setPlayingForwardState(),this.dispatchEvent(o.TWEEN_REPEAT,`onRepeat`)):this.isHolding()&&this.setStateFromEnd(0))),this.isPendingRender())return this.start=this.getStartValue(a,s,a[s],r,n,t),this.end=this.getEndValue(a,s,this.start,r,n,t),this.current=this.start,a[s]=this.start,this.setPlayingForwardState(),!0;var c=this.isPlayingForward(),l=this.isPlayingBackward();if(c||l){var u=this.elapsed,d=this.duration,f=0,p=!1;u+=e,u>=d?(f=u-d,u=d,p=!0):u<0&&(u=0);var m=i(u/d,0,1);this.elapsed=u,this.progress=m,this.previous=this.current,c||(m=1-m);var h=this.ease(m);this.interpolation?this.current=this.interpolation(this.interpolationData,h):this.current=this.start+(this.end-this.start)*h,a[s]=this.current,p&&(c?(t.isNumberTween&&(this.current=this.end,a[s]=this.current),this.hold>0?(this.elapsed=this.hold,this.setHoldState()):this.setStateFromEnd(f)):(t.isNumberTween&&(this.current=this.start,a[s]=this.current),this.setStateFromStart(f))),this.dispatchEvent(o.TWEEN_UPDATE,`onUpdate`)}return!this.isComplete()},dispatchEvent:function(e,t){var n=this.tween;if(!n.isSeeking){var r=n.targets[this.targetIndex],i=this.key,a=this.current,o=this.previous;n.emit(e,n,i,r,a,o);var s=n.callbacks[t];s&&s.func.apply(n.callbackScope,[n,r,i,a,o].concat(s.params))}},destroy:function(){r.prototype.destroy.call(this),this.getActiveValue=null,this.getEndValue=null,this.getStartValue=null,this.ease=null}})},42220(e,t,n){var r=n(95042),i=n(45319),a=n(83419),o=n(842);e.exports=new a({Extends:r,initialize:function(e,t,n,i,a,o,s,c,l,u,d){r.call(this,e,t,a,o,!1,s,c,l,u,d),this.key=`texture`,this.startTexture=null,this.endTexture=n,this.startFrame=null,this.endFrame=i,this.yoyo=c!==0},reset:function(e){r.prototype.reset.call(this);var t=this.tween.targets[this.targetIndex];this.startTexture||(this.startTexture=t.texture.key,this.startFrame=t.frame.name),e&&t.setTexture(this.startTexture,this.startFrame)},update:function(e){var t=this.tween,n=this.targetIndex,r=t.targets[n];if(!r)return this.setCompleteState(),!1;if(this.isCountdown&&(this.elapsed-=e,this.elapsed<=0&&(this.elapsed=0,e=0,this.isDelayed()?this.setPendingRenderState():this.isRepeating()?(this.setPlayingForwardState(),this.dispatchEvent(o.TWEEN_REPEAT,`onRepeat`)):this.isHolding()&&this.setStateFromEnd(0))),this.isPendingRender())return this.startTexture&&r.setTexture(this.startTexture,this.startFrame),this.setPlayingForwardState(),!0;var a=this.isPlayingForward(),s=this.isPlayingBackward();if(a||s){var c=this.elapsed,l=this.duration,u=0,d=!1;c+=e,c>=l?(u=c-l,c=l,d=!0):c<0&&(c=0);var f=i(c/l,0,1);this.elapsed=c,this.progress=f,d&&(a?(r.setTexture(this.endTexture,this.endFrame),this.hold>0?(this.elapsed=this.hold,this.setHoldState()):this.setStateFromEnd(u)):(r.setTexture(this.startTexture,this.startFrame),this.setStateFromStart(u))),this.dispatchEvent(o.TWEEN_UPDATE,`onUpdate`)}return!this.isComplete()},dispatchEvent:function(e,t){var n=this.tween;if(!n.isSeeking){var r=n.targets[this.targetIndex],i=this.key;n.emit(e,n,i,r);var a=n.callbacks[t];a&&a.func.apply(n.callbackScope,[n,r,i].concat(a.params))}},destroy:function(){r.prototype.destroy.call(this),this.startTexture=null,this.endTexture=null,this.startFrame=null,this.endFrame=null}})},86353(e){e.exports={CREATED:0,DELAY:2,PENDING_RENDER:4,PLAYING_FORWARD:5,PLAYING_BACKWARD:6,HOLD_DELAY:7,REPEAT_DELAY:8,COMPLETE:9,PENDING:20,ACTIVE:21,LOOP_DELAY:22,COMPLETE_DELAY:23,START_DELAY:24,PENDING_REMOVE:25,REMOVED:26,FINISHED:27,DESTROYED:28,MAX:999999999999}},83419(e){function t(e){return!!e.get&&typeof e.get==`function`||!!e.set&&typeof e.set==`function`}function n(e,n,r){var i=r?e[n]:Object.getOwnPropertyDescriptor(e,n);return!r&&i.value&&typeof i.value==`object`&&(i=i.value),i&&t(i)?(i.enumerable===void 0&&(i.enumerable=!0),i.configurable===void 0&&(i.configurable=!0),i):!1}function r(e,t){var n=Object.getOwnPropertyDescriptor(e,t);return n?(n.value&&typeof n.value==`object`&&(n=n.value),n.configurable===!1):!1}function i(e,t,i,a){for(var s in t)if(t.hasOwnProperty(s)){var c=n(t,s,i);if(c!==!1){if(r((a||e).prototype,s)){if(o.ignoreFinals)continue;throw Error(`cannot override final property '`+s+`', set Class.ignoreFinals = true to skip`)}Object.defineProperty(e.prototype,s,c)}else e.prototype[s]=t[s]}}function a(e,t){if(t){Array.isArray(t)||(t=[t]);for(var n=0;n<t.length;n++)i(e,t[n].prototype||t[n])}}function o(e){e||={};var t,n;if(e.initialize){if(typeof e.initialize!=`function`)throw Error(`initialize must be a function`);t=e.initialize,delete e.initialize}else if(e.Extends){var r=e.Extends;t=function(){r.apply(this,arguments)}}else t=function(){};e.Extends?(t.prototype=Object.create(e.Extends.prototype),t.prototype.constructor=t,n=e.Extends,delete e.Extends):t.prototype.constructor=t;var o=null;return e.Mixins&&(o=e.Mixins,delete e.Mixins),a(t,o),i(t,e,!0,n),t}o.extend=i,o.mixin=a,o.ignoreFinals=!1,e.exports=o},29747(e){e.exports=function(){}},20242(e){e.exports=function(){return null}},71146(e){e.exports=function(e,t,n,r,i){if(i===void 0&&(i=e),n>0){var a=n-e.length;if(a<=0)return null}if(!Array.isArray(t))return e.indexOf(t)===-1?(e.push(t),r&&r.call(i,t),t):null;for(var o=t.length-1;o>=0;)e.indexOf(t[o])!==-1&&t.splice(o,1),o--;if(o=t.length,o===0)return null;n>0&&o>a&&(t.splice(a),o=a);for(var s=0;s<o;s++){var c=t[s];e.push(c),r&&r.call(i,c)}return t}},51067(e){e.exports=function(e,t,n,r,i,a){if(n===void 0&&(n=0),a===void 0&&(a=e),r>0){var o=r-e.length;if(o<=0)return null}if(!Array.isArray(t))return e.indexOf(t)===-1?(e.splice(n,0,t),i&&i.call(a,t),t):null;for(var s=t.length-1;s>=0;)e.indexOf(t[s])!==-1&&t.pop(),s--;if(s=t.length,s===0)return null;r>0&&s>o&&(t.splice(o),s=o);for(var c=s-1;c>=0;c--){var l=t[c];e.splice(n,0,l),i&&i.call(a,l)}return t}},66905(e){e.exports=function(e,t){var n=e.indexOf(t);return n!==-1&&n<e.length&&(e.splice(n,1),e.push(t)),t}},21612(e,t,n){var r=n(82011);e.exports=function(e,t,n,i,a){i===void 0&&(i=0),a===void 0&&(a=e.length);var o=0;if(r(e,i,a))for(var s=i;s<a;s++)e[s][t]===n&&o++;return o}},95428(e){e.exports=function(e,t,n){var r,i=[null];for(r=3;r<arguments.length;r++)i.push(arguments[r]);for(r=0;r<e.length;r++)i[0]=e[r],t.apply(n,i);return e}},36914(e,t,n){var r=n(82011);e.exports=function(e,t,n,i,a){if(i===void 0&&(i=0),a===void 0&&(a=e.length),r(e,i,a)){var o,s=[null];for(o=5;o<arguments.length;o++)s.push(arguments[o]);for(o=i;o<a;o++)s[0]=e[o],t.apply(n,s)}return e}},81957(e){e.exports=function(e,t,n){if(!t.length)return NaN;if(t.length===1)return t[0];var r=1,i,a;if(n){if(e<t[0][n])return t[0];for(;t[r][n]<e;)r++}else for(;t[r]<e;)r++;return r>t.length&&(r=t.length),n?(i=t[r-1][n],a=t[r][n],a-e<=e-i?t[r]:t[r-1]):(i=t[r-1],a=t[r],a-e<=e-i?a:i)}},43491(e){var t=function(e,n){n===void 0&&(n=[]);for(var r=0;r<e.length;r++)Array.isArray(e[r])?t(e[r],n):n.push(e[r]);return n};e.exports=t},46710(e,t,n){var r=n(82011);e.exports=function(e,t,n,i,a){i===void 0&&(i=0),a===void 0&&(a=e.length);var o=[];if(r(e,i,a))for(var s=i;s<a;s++){var c=e[s];(!t||t&&n===void 0&&c.hasOwnProperty(t)||t&&n!==void 0&&c[t]===n)&&o.push(c)}return o}},58731(e,t,n){var r=n(82011);e.exports=function(e,t,n,i,a){i===void 0&&(i=0),a===void 0&&(a=e.length);var o,s;if(i!==-1){if(r(e,i,a)){for(o=i;o<a;o++)if(s=e[o],!t||t&&n===void 0&&s.hasOwnProperty(t)||t&&n!==void 0&&s[t]===n)return s}}else if(r(e,0,a)){for(o=a;o>=0;o--)if(s=e[o],!t||t&&n===void 0&&s.hasOwnProperty(t)||t&&n!==void 0&&s[t]===n)return s}return null}},26546(e){e.exports=function(e,t,n){t===void 0&&(t=0),n===void 0&&(n=e.length);var r=t+Math.floor(Math.random()*n);return e[r]===void 0?null:e[r]}},85835(e){e.exports=function(e,t,n){if(t===n)return e;var r=e.indexOf(t),i=e.indexOf(n);if(r<0||i<0)throw Error(`Supplied items must be elements of the same array`);return r>i?e:(e.splice(r,1),i=e.indexOf(n),e.splice(i+1,0,t),e)}},83371(e){e.exports=function(e,t,n){if(t===n)return e;var r=e.indexOf(t),i=e.indexOf(n);if(r<0||i<0)throw Error(`Supplied items must be elements of the same array`);return r<i?e:(e.splice(r,1),i===0?e.unshift(t):e.splice(i,0,t),e)}},70864(e){e.exports=function(e,t){var n=e.indexOf(t);if(n>0){var r=e[n-1],i=e.indexOf(r);e[n]=r,e[i]=t}return e}},69693(e){e.exports=function(e,t,n){var r=e.indexOf(t);if(r===-1||n<0||n>=e.length)throw Error(`Supplied index out of bounds`);return r!==n&&(e.splice(r,1),e.splice(n,0,t)),t}},40853(e){e.exports=function(e,t){var n=e.indexOf(t);if(n!==-1&&n<e.length-1){var r=e[n+1],i=e.indexOf(r);e[n]=r,e[i]=t}return e}},20283(e){e.exports=function(e,t,n,r){var i=[],a,o=!1;if((n||r)&&(o=!0,n||=``,r||=``),t<e)for(a=e;a>=t;a--)o?i.push(n+a.toString()+r):i.push(a);else for(a=e;a<=t;a++)o?i.push(n+a.toString()+r):i.push(a);return i}},593(e,t,n){var r=n(2284);e.exports=function(e,t,n){e===void 0&&(e=0),t===void 0&&(t=null),n===void 0&&(n=1),t===null&&(t=e,e=0);for(var i=[],a=Math.max(r((t-e)/(n||1)),0),o=0;o<a;o++)i.push(e),e+=n;return i}},43886(e){function t(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function n(e,t){return e<t?-1:+(e>t)}var r=function(e,i,a,o,s){for(a===void 0&&(a=0),o===void 0&&(o=e.length-1),s===void 0&&(s=n);o>a;){if(o-a>600){var c=o-a+1,l=i-a+1,u=Math.log(c),d=.5*Math.exp(2*u/3),f=.5*Math.sqrt(u*d*(c-d)/c)*(l-c/2<0?-1:1);r(e,i,Math.max(a,Math.floor(i-l*d/c+f)),Math.min(o,Math.floor(i+(c-l)*d/c+f)),s)}var p=e[i],m=a,h=o;for(t(e,a,i),s(e[o],p)>0&&t(e,a,o);m<h;){for(t(e,m,h),m++,h--;s(e[m],p)<0;)m++;for(;s(e[h],p)>0;)h--}s(e[a],p)===0?t(e,a,h):(h++,t(e,h,o)),h<=i&&(a=h+1),i<=h&&(o=h-1)}};e.exports=r},88492(e,t,n){var r=n(35154),i=n(33680),a=function(e,t,n){for(var r=[],i=0;i<e.length;i++)for(var a=0;a<t.length;a++)for(var o=0;o<n;o++)r.push({a:e[i],b:t[a]});return r};e.exports=function(e,t,n){var o=r(n,`max`,0),s=r(n,`qty`,1),c=r(n,`random`,!1),l=r(n,`randomB`,!1),u=r(n,`repeat`,0),d=r(n,`yoyo`,!1),f=[];if(l&&i(t),u===-1)if(o===0)u=0;else{var p=e.length*t.length*s;d&&(p*=2),u=Math.ceil(o/p)}for(var m=0;m<=u;m++){var h=a(e,t,s);c&&i(h),f=f.concat(h),d&&(h.reverse(),f=f.concat(h))}return o&&f.splice(o),f}},72905(e,t,n){var r=n(19133);e.exports=function(e,t,n,i){i===void 0&&(i=e);var a;if(!Array.isArray(t))return a=e.indexOf(t),a===-1?null:(r(e,a),n&&n.call(i,t),t);for(var o=t.length-1,s=[];o>=0;){var c=t[o];a=e.indexOf(c),a!==-1&&(r(e,a),s.push(c),n&&n.call(i,c)),o--}return s}},60248(e,t,n){var r=n(19133);e.exports=function(e,t,n,i){if(i===void 0&&(i=e),t<0||t>e.length-1)throw Error(`Index out of bounds`);var a=r(e,t);return n&&n.call(i,a),a}},81409(e,t,n){var r=n(82011);e.exports=function(e,t,n,i,a){if(t===void 0&&(t=0),n===void 0&&(n=e.length),a===void 0&&(a=e),r(e,t,n)){var o=n-t,s=e.splice(t,o);if(i)for(var c=0;c<s.length;c++){var l=s[c];i.call(a,l)}return s}else return[]}},31856(e,t,n){var r=n(19133);e.exports=function(e,t,n){return t===void 0&&(t=0),n===void 0&&(n=e.length),r(e,t+Math.floor(Math.random()*n))}},42169(e){e.exports=function(e,t,n){var r=e.indexOf(t),i=e.indexOf(n);return r!==-1&&i===-1?(e[r]=n,!0):!1}},86003(e){e.exports=function(e,t){t===void 0&&(t=1);for(var n=null,r=0;r<t;r++)n=e.shift(),e.push(n);return n}},49498(e){e.exports=function(e,t){t===void 0&&(t=1);for(var n=null,r=0;r<t;r++)n=e.pop(),e.unshift(n);return n}},82011(e){e.exports=function(e,t,n,r){var i=e.length;if(t<0||t>=i||t>=n||n>i){if(r)throw Error(`Range Error: Values outside acceptable range`);return!1}else return!0}},89545(e){e.exports=function(e,t){var n=e.indexOf(t);return n!==-1&&n>0&&(e.splice(n,1),e.unshift(t)),t}},17810(e,t,n){var r=n(82011);e.exports=function(e,t,n,i,a){if(i===void 0&&(i=0),a===void 0&&(a=e.length),r(e,i,a))for(var o=i;o<a;o++){var s=e[o];s.hasOwnProperty(t)&&(s[t]=n)}return e}},33680(e){e.exports=function(e){for(var t=e.length-1;t>0;t--){var n=Math.floor(Math.random()*(t+1)),r=e[t];e[t]=e[n],e[n]=r}return e}},90126(e){e.exports=function(e){var t=/\D/g;return e.sort(function(e,n){return parseInt(e.replace(t,``),10)-parseInt(n.replace(t,``),10)}),e}},19133(e){e.exports=function(e,t){if(!(t>=e.length)){for(var n=e.length-1,r=e[t],i=t;i<n;i++)e[i]=e[i+1];return e.length=n,r}}},19186(e,t,n){var r=n(82264);function i(e,t){return String(e).localeCompare(t)}function a(e,t){var n=e.length;if(n<=1)return e;for(var r=Array(n),i=1;i<n;i*=2){o(e,t,i,r);var a=e;e=r,r=a}return e}function o(e,t,n,r){var i=e.length,a=0,o=n*2,s,c,l,u,d;for(s=0;s<i;s+=o)for(c=s+n,l=c+n,c>i&&(c=i),l>i&&(l=i),u=s,d=c;;)if(u<c&&d<l)t(e[u],e[d])<=0?r[a++]=e[u++]:r[a++]=e[d++];else if(u<c)r[a++]=e[u++];else if(d<l)r[a++]=e[d++];else break}e.exports=function(e,t){if(t===void 0&&(t=i),!e||e.length<2)return e;if(r.features.stableSort)return e.sort(t);var n=a(e,t);return n!==e&&o(n,null,e.length,e),e}},25630(e){e.exports=function(e,t,n){if(t===n)return e;var r=e.indexOf(t),i=e.indexOf(n);if(r<0||i<0)throw Error(`Supplied items must be elements of the same array`);return e[r]=n,e[i]=t,e}},37105(e,t,n){e.exports={Matrix:n(54915),Add:n(71146),AddAt:n(51067),BringToTop:n(66905),CountAllMatching:n(21612),Each:n(95428),EachInRange:n(36914),FindClosestInSorted:n(81957),Flatten:n(43491),GetAll:n(46710),GetFirst:n(58731),GetRandom:n(26546),MoveDown:n(70864),MoveTo:n(69693),MoveUp:n(40853),MoveAbove:n(85835),MoveBelow:n(83371),NumberArray:n(20283),NumberArrayStep:n(593),QuickSelect:n(43886),Range:n(88492),Remove:n(72905),RemoveAt:n(60248),RemoveBetween:n(81409),RemoveRandomElement:n(31856),Replace:n(42169),RotateLeft:n(86003),RotateRight:n(49498),SafeRange:n(82011),SendToBack:n(89545),SetAll:n(17810),Shuffle:n(33680),SortByDigits:n(90126),SpliceOne:n(19133),StableSort:n(19186),Swap:n(25630)}},86922(e){e.exports=function(e){if(!Array.isArray(e)||!Array.isArray(e[0]))return!1;for(var t=e[0].length,n=1;n<e.length;n++)if(e[n].length!==t)return!1;return!0}},63362(e,t,n){var r=n(41836),i=n(86922);e.exports=function(e){var t=``;if(!i(e))return t;for(var n=0;n<e.length;n++){for(var a=0;a<e[n].length;a++){var o=e[n][a].toString();o===`undefined`?t+=`?`:t+=r(o,2),a<e[n].length-1&&(t+=` |`)}if(n<e.length-1){t+=`
101
+ `;for(var s=0;s<e[n].length;s++)t+=`---`,s<e[n].length-1&&(t+=`+`);t+=`
102
+ `}}return t}},92598(e){e.exports=function(e){return e.reverse()}},21224(e){e.exports=function(e){for(var t=0;t<e.length;t++)e[t].reverse();return e}},98717(e,t,n){var r=n(37829);e.exports=function(e){return r(e,180)}},44657(e,t,n){var r=n(37829);e.exports=function(e,t){t===void 0&&(t=1);for(var n=0;n<t;n++)e=r(e,90);return e}},37829(e,t,n){var r=n(86922),i=n(2429);e.exports=function(e,t){if(t===void 0&&(t=90),!r(e))return null;if(typeof t!=`string`&&(t=(t%360+360)%360),t===90||t===-270||t===`rotateLeft`)e=i(e),e.reverse();else if(t===-90||t===270||t===`rotateRight`)e.reverse(),e=i(e);else if(Math.abs(t)===180||t===`rotate180`){for(var n=0;n<e.length;n++)e[n].reverse();e.reverse()}return e}},92632(e,t,n){var r=n(37829);e.exports=function(e,t){t===void 0&&(t=1);for(var n=0;n<t;n++)e=r(e,-90);return e}},69512(e,t,n){var r=n(86003),i=n(49498);e.exports=function(e,t,n){if(t===void 0&&(t=0),n===void 0&&(n=0),n!==0&&(n<0?r(e,Math.abs(n)):i(e,n)),t!==0)for(var a=0;a<e.length;a++){var o=e[a];t<0?r(o,Math.abs(t)):i(o,t)}return e}},2429(e){e.exports=function(e){for(var t=e.length,n=e[0].length,r=Array(n),i=0;i<n;i++){r[i]=Array(t);for(var a=t-1;a>-1;a--)r[i][a]=e[a][i]}return r}},54915(e,t,n){e.exports={CheckMatrix:n(86922),MatrixToString:n(63362),ReverseColumns:n(92598),ReverseRows:n(21224),Rotate180:n(98717),RotateLeft:n(44657),RotateMatrix:n(37829),RotateRight:n(92632),Translate:n(69512),TransposeMatrix:n(2429)}},71334(e){var t=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`;e.exports=function(e,n){for(var r=new Uint8Array(e),i=r.length,a=n?`data:`+n+`;base64,`:``,o=0;o<i;o+=3)a+=t[r[o]>>2],a+=t[(r[o]&3)<<4|r[o+1]>>4],a+=t[(r[o+1]&15)<<2|r[o+2]>>6],a+=t[r[o+2]&63];return i%3==2?a=a.substring(0,a.length-1)+`=`:i%3==1&&(a=a.substring(0,a.length-2)+`==`),a}},53134(e){for(var t=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,n=new Uint8Array(256),r=0;r<t.length;r++)n[t.charCodeAt(r)]=r;e.exports=function(e){e=e.substr(e.indexOf(`,`)+1);var t=e.length,r=t*.75,i=0,a,o,s,c;e[t-1]===`=`&&(r--,e[t-2]===`=`&&r--);for(var l=new ArrayBuffer(r),u=new Uint8Array(l),d=0;d<t;d+=4)a=n[e.charCodeAt(d)],o=n[e.charCodeAt(d+1)],s=n[e.charCodeAt(d+2)],c=n[e.charCodeAt(d+3)],u[i++]=a<<2|o>>4,u[i++]=(o&15)<<4|s>>2,u[i++]=(s&3)<<6|c&63;return l}},65839(e,t,n){e.exports={ArrayBufferToBase64:n(71334),Base64ToArrayBuffer:n(53134)}},91799(e,t,n){e.exports={Array:n(37105),Base64:n(65839),Objects:n(1183),String:n(31749),NOOP:n(29747),NULL:n(20242)}},41786(e){e.exports=function(e){var t={};for(var n in e)Array.isArray(e[n])?t[n]=e[n].slice(0):t[n]=e[n];return t}},62644(e){var t=function(e){var n,r,i;if(typeof e!=`object`||!e)return e;for(i in n=Array.isArray(e)?[]:{},e)r=e[i],n[i]=t(r);return n};e.exports=t},79291(e,t,n){var r=n(41212),i=function(){var e,t,n,a,o,s,c=arguments[0]||{},l=1,u=arguments.length,d=!1;for(typeof c==`boolean`&&(d=c,c=arguments[1]||{},l=2),u===l&&(c=this,--l);l<u;l++)if((e=arguments[l])!=null)for(t in e)n=c[t],a=e[t],c!==a&&(d&&a&&(r(a)||(o=Array.isArray(a)))?(o?(o=!1,s=n&&Array.isArray(n)?n:[]):s=n&&r(n)?n:{},c[t]=i(d,s,a)):a!==void 0&&(c[t]=a));return c};e.exports=i},23568(e,t,n){var r=n(75508),i=n(35154);e.exports=function(e,t,n){var a=i(e,t,null);if(a===null)return n;if(Array.isArray(a))return r.RND.pick(a);if(typeof a==`object`){if(a.hasOwnProperty(`randInt`))return r.RND.integerInRange(a.randInt[0],a.randInt[1]);if(a.hasOwnProperty(`randFloat`))return r.RND.realInRange(a.randFloat[0],a.randFloat[1])}else if(typeof a==`function`)return a(t);return a}},95540(e){e.exports=function(e,t,n){var r=typeof e;return!e||r===`number`||r===`string`?n:e.hasOwnProperty(t)&&e[t]!==void 0?e[t]:n}},82840(e,t,n){var r=n(35154),i=n(45319);e.exports=function(e,t,n,a,o){return o===void 0&&(o=n),i(r(e,t,o),n,a)}},35154(e){e.exports=function(e,t,n,r){if(!e&&!r||typeof e==`number`)return n;if(e&&e.hasOwnProperty(t))return e[t];if(r&&r.hasOwnProperty(t))return r[t];if(t.indexOf(`.`)!==-1){for(var i=t.split(`.`),a=e,o=r,s=n,c=n,l=!0,u=!0,d=0;d<i.length;d++)a&&a.hasOwnProperty(i[d])?(s=a[i[d]],a=a[i[d]]):l=!1,o&&o.hasOwnProperty(i[d])?(c=o[i[d]],o=o[i[d]]):u=!1;return l?s:u?c:n}else return n}},69036(e){e.exports=function(e,t){for(var n=0;n<t.length;n++)if(!e.hasOwnProperty(t[n]))return!1;return!0}},1985(e){e.exports=function(e,t){for(var n=0;n<t.length;n++)if(e.hasOwnProperty(t[n]))return!0;return!1}},97022(e){e.exports=function(e,t){return e.hasOwnProperty(t)}},41212(e){e.exports=function(e){if(!e||typeof e!=`object`||e.nodeType||e===e.window)return!1;try{if(e.constructor&&!{}.hasOwnProperty.call(e.constructor.prototype,`isPrototypeOf`))return!1}catch{return!1}return!0}},46975(e,t,n){var r=n(41786);e.exports=function(e,t){var n=r(e);for(var i in t)n.hasOwnProperty(i)||(n[i]=t[i]);return n}},269(e,t,n){var r=n(41786);e.exports=function(e,t){var n=r(e);for(var i in t)n.hasOwnProperty(i)&&(n[i]=t[i]);return n}},18254(e,t,n){var r=n(97022);e.exports=function(e,t){for(var n={},i=0;i<t.length;i++){var a=t[i];r(e,a)&&(n[a]=e[a])}return n}},61622(e){e.exports=function(e,t,n){if(!e||typeof e==`number`)return!1;if(e.hasOwnProperty(t))return e[t]=n,!0;if(t.indexOf(`.`)!==-1){for(var r=t.split(`.`),i=e,a=e,o=0;o<r.length;o++)if(i.hasOwnProperty(r[o]))a=i,i=i[r[o]];else return!1;return a[r[r.length-1]]=n,!0}return!1}},1183(e,t,n){e.exports={Clone:n(41786),DeepCopy:n(62644),Extend:n(79291),GetAdvancedValue:n(23568),GetFastValue:n(95540),GetMinMaxValue:n(82840),GetValue:n(35154),HasAll:n(69036),HasAny:n(1985),HasValue:n(97022),IsPlainObject:n(41212),Merge:n(46975),MergeRight:n(269),Pick:n(18254),SetValue:n(61622)}},27902(e){e.exports=function(e,t){return e.replace(/%([0-9]+)/g,function(e,n){return t[Number(n)-1]})}},41836(e){e.exports=function(e,t,n,r){t===void 0&&(t=0),n===void 0&&(n=` `),r===void 0&&(r=3),e=e.toString();var i=0;if(t+1>=e.length)switch(r){case 1:e=Array(t+1-e.length).join(n)+e;break;case 3:var a=Math.ceil((i=t-e.length)/2),o=i-a;e=Array(o+1).join(n)+e+Array(a+1).join(n);break;default:e+=Array(t+1-e.length).join(n);break}return e}},33628(e){e.exports=function(e,t){return t===0?e.slice(1):e.slice(0,t)+e.slice(t+1)}},27671(e){e.exports=function(e){return e.split(``).reverse().join(``)}},45650(e){e.exports=function(){return`xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx`.replace(/[xy]/g,function(e){var t=Math.random()*16|0;return(e===`x`?t:t&3|8).toString(16)})}},35355(e){e.exports=function(e){return e&&e[0].toUpperCase()+e.slice(1)}},31749(e,t,n){e.exports={Format:n(27902),Pad:n(41836),RemoveAt:n(33628),Reverse:n(27671),UppercaseFirst:n(35355),UUID:n(45650)}}},t={};function n(r){var i=t[r];if(i!==void 0)return i.exports;var a=t[r]={exports:{}};return e[r](a,a.exports,n),a.exports}n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.g=(function(){if(typeof globalThis==`object`)return globalThis;try{return this||Function(`return this`)()}catch{if(typeof window==`object`)return window}})(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var r={};n.d(r,{A4:()=>T,AB:()=>j,AQ:()=>C,Aq:()=>L,B_:()=>f,CB:()=>V,Cu:()=>g,D7:()=>M,Dh:()=>y,En:()=>a,FE:()=>E,Fu:()=>I,M3:()=>G,NS:()=>ee,O1:()=>N,PX:()=>q,Q8:()=>z,Qw:()=>o,SY:()=>U,Tm:()=>l,UP:()=>K,XT:()=>d,Z5:()=>O,Zt:()=>_,_k:()=>k,aH:()=>x,dv:()=>m,gX:()=>P,gd:()=>s,ho:()=>A,iJ:()=>u,j$:()=>B,l2:()=>c,nl:()=>p,pd:()=>b,qt:()=>H,ry:()=>w,sV:()=>h,sx:()=>F,x3:()=>W,xS:()=>v,xv:()=>R,zA:()=>D,zU:()=>S}),n(63595);var i=n(8054),a=n(61061),o=n(60421),s=n(10312),c=n(83388),l=n(26638),u=n(42857),d=n(25410),f=n(44965),p=n(27460),m=n(84902),h=n(93055),g=n(11889),_=n(50127),v=n(77856),y=n(55738),b=n(14350),x=n(57777),S=n(75508),C=n(44563),w=n(18922),T=n(36909),E=n(93364),D=n(29795),O=n(97482),k=n(62194),A=n(41392),j=n(23717),M=n(27458),N=n(62501),P=n(90291),F=n(84322),I=n(43066),L=n(91799),R=i.VERSION,z=i.AUTO,B=i.CANVAS,V=i.WEBGL,H=i.HEADLESS,U=i.FOREVER,W=i.NONE,G=i.LEFT,ee=i.RIGHT,K=i.UP,q=i.DOWN,J=r.Q8;r.En,r.Qw;var Y=r.gd;r.j$,r.l2,r.Tm,r.iJ,r.XT,r.dv,r.PX,r.B_,r.nl,r.sV,r.SY,r.Cu;var te=r.Zt;r.xS,r.Dh,r.qt;var X=r.pd;r.M3,r.aH;var Z=r.zU;r.x3,r.AQ,r.ry,r.NS,r.A4;var Q=r.FE;r.zA;var ne=r.Z5;r._k,r.AB,r.ho,r.D7,r.O1,r.gX;var $=r.sx;r.Fu,r.UP;var re=r.Aq;r.xv,r.CB;var ie={green:{label:`Green`,value:1,key:`gem-green`,frames:9,framePath:`./assets/generated/gems/green/frame_00.png`,tint:7602063},blue:{label:`Blue`,value:3,key:`gem-blue`,frames:9,framePath:`./assets/generated/gems/blue/frame_00.png`,tint:6609151},yellow:{label:`Yellow`,value:5,key:`gem-yellow`,frames:9,framePath:`./assets/generated/gems/yellow/frame_00.png`,tint:16773483},pink:{label:`Pink`,value:10,key:`gem-pink`,frames:9,framePath:`./assets/generated/gems/pink/frame_00.png`,tint:16745455},silver:{label:`Silver`,value:25,key:`gem-silver`,frames:9,framePath:`./assets/generated/gems/silver/frame_00.png`,tint:15135743}},ae={generic:{key:`body-spin-blue`,frames:3,framePath:`./assets/generated/body-spins/blue/frame_00.png`},"body-acid":{key:`body-spin-acid`,frames:3,framePath:`./assets/generated/body-spins/acid/frame_00.png`},"body-aqua":{key:`body-spin-aqua`,frames:3,framePath:`./assets/generated/body-spins/aqua/frame_00.png`},"body-blue":{key:`body-spin-blue`,frames:3,framePath:`./assets/generated/body-spins/blue/frame_00.png`},"body-bubblegum":{key:`body-spin-bubblegum`,frames:3,framePath:`./assets/generated/body-spins/bubblegum/frame_00.png`},"body-camo":{key:`body-spin-camo`,frames:3,framePath:`./assets/generated/body-spins/camo/frame_00.png`},"body-cardbon":{key:`body-spin-cardbon`,frames:3,framePath:`./assets/generated/body-spins/cardbon/frame_00.png`},"body-charcoal":{key:`body-spin-charcoal`,frames:3,framePath:`./assets/generated/body-spins/charcoal/frame_00.png`},"body-cottoncandy":{key:`body-spin-cottoncandy`,frames:3,framePath:`./assets/generated/body-spins/cottoncandy/frame_00.png`},"body-creamsicle":{key:`body-spin-creamsicle`,frames:3,framePath:`./assets/generated/body-spins/creamsicle/frame_00.png`},"halloween-holloween1":{key:`halloween-spin-holloween1`,frames:1,framePath:`./assets/generated/halloween-body-spins/halloween-holloween1/frame_00.png`},"halloween-holloween2":{key:`halloween-spin-holloween2`,frames:1,framePath:`./assets/generated/halloween-body-spins/halloween-holloween2/frame_00.png`},"halloween-holloween3":{key:`halloween-spin-holloween3`,frames:1,framePath:`./assets/generated/halloween-body-spins/halloween-holloween3/frame_00.png`},"halloween-holloween4":{key:`halloween-spin-holloween4`,frames:1,framePath:`./assets/generated/halloween-body-spins/halloween-holloween4/frame_00.png`},"body-deathbot":{key:`body-spin-deathbot`,frames:3,framePath:`./assets/generated/body-spins/deathbot/frame_00.png`},"body-dirt":{key:`body-spin-dirt`,frames:3,framePath:`./assets/generated/body-spins/dirt/frame_00.png`},"body-fuchsia":{key:`body-spin-fuchsia`,frames:3,framePath:`./assets/generated/body-spins/fuchsia/frame_00.png`},"body-gold":{key:`body-spin-gold`,frames:3,framePath:`./assets/generated/body-spins/gold/frame_00.png`},"body-grape":{key:`body-spin-grape`,frames:3,framePath:`./assets/generated/body-spins/grape/frame_00.png`},"body-gray":{key:`body-spin-gray`,frames:3,framePath:`./assets/generated/body-spins/gray/frame_00.png`},"body-lime":{key:`body-spin-lime`,frames:3,framePath:`./assets/generated/body-spins/lime/frame_00.png`},"body-magma":{key:`body-spin-magma`,frames:3,framePath:`./assets/generated/body-spins/magma/frame_00.png`},"body-metal":{key:`body-spin-metal`,frames:3,framePath:`./assets/generated/body-spins/metal/frame_00.png`},"body-midnight":{key:`body-spin-midnight`,frames:3,framePath:`./assets/generated/body-spins/midnight/frame_00.png`},"body-octopi":{key:`body-spin-octopi`,frames:3,framePath:`./assets/generated/body-spins/octopi/frame_00.png`},"body-orange":{key:`body-spin-orange`,frames:3,framePath:`./assets/generated/body-spins/orange/frame_00.png`},"body-pepe":{key:`body-spin-pepe`,frames:3,framePath:`./assets/generated/body-spins/pepe/frame_00.png`},"body-rainbow":{key:`body-spin-rainbow`,frames:3,framePath:`./assets/generated/body-spins/rainbow/frame_00.png`},"body-red":{key:`body-spin-red`,frames:3,framePath:`./assets/generated/body-spins/red/frame_00.png`},"body-sushi":{key:`body-spin-sushi`,frames:3,framePath:`./assets/generated/body-spins/sushi/frame_00.png`},"body-tan":{key:`body-spin-tan`,frames:3,framePath:`./assets/generated/body-spins/tan/frame_00.png`},"body-teal":{key:`body-spin-teal`,frames:3,framePath:`./assets/generated/body-spins/teal/frame_00.png`},"body-white":{key:`body-spin-white`,frames:3,framePath:`./assets/generated/body-spins/white/frame_00.png`},"body-yellow":{key:`body-spin-yellow`,frames:3,framePath:`./assets/generated/body-spins/yellow/frame_00.png`},"body-zombie":{key:`body-spin-zombie`,frames:3,framePath:`./assets/generated/body-spins/zombie/frame_00.png`}},oe={key:`enemy-death-halloween`,frames:9,framePath:`./assets/generated/enemy-death/halloween/frame_00.png`},se=[{key:`tank-mine-blue`,frames:15,framePath:`./assets/generated/tank-mines/tank-mine-blue/frame_00.png`},{key:`tank-mine-green`,frames:5,framePath:`./assets/generated/tank-mines/tank-mine-green/frame_00.png`}],ce={body:`body-blue`,eyes:`eyes-regular`,hat:null,clothes:null,boost:null},le=[{id:`body-acid`,name:`Acid`,slot:`body`,rarity:`uncommon`,price:530,stats:`Toxic ink: poison shots + contagion burst`,statMods:{damage:.1,magnetRange:-.03,idleEfficiency:.02},huntMods:{poison:1,contagion:1,spiral:1},key:`body-acid`,frames:16,framePath:`./assets/generated/bodies/acid/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Acid.gif`},{id:`body-aqua`,name:`Aqua`,slot:`body`,rarity:`common`,price:415,stats:`Swift swimmer: wake trail + speed`,statMods:{swimSpeed:.08,magnetRange:.04},huntMods:{wakeTrail:1,swimSpeed:1.06,presetFamilyCurrent:1},key:`body-aqua`,frames:16,framePath:`./assets/generated/bodies/aqua/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Aqua.gif`},{id:`body-blue`,name:`Blue`,slot:`body`,rarity:`starter`,price:0,stats:`Balanced starter`,statMods:{},key:`body-blue`,frames:16,framePath:`./assets/generated/bodies/blue/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Blue.gif`},{id:`body-bubblegum`,name:`Bubblegum`,slot:`body`,rarity:`common`,price:370,stats:`Sticky luck: bounce shots + gem boost`,statMods:{luck:.05,gemValue:.03},huntMods:{bounce:1,wiggle:1,presetFamilyChaos:1},key:`body-bubblegum`,frames:16,framePath:`./assets/generated/bodies/bubblegum/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Bubblegum.gif`},{id:`body-camo`,name:`Camo`,slot:`body`,rarity:`common`,price:270,stats:`Stealth tank: armor + fear shots`,statMods:{armor:.3,magnetRange:.03},huntMods:{fear:1,guardianCharges:1},key:`body-camo`,frames:16,framePath:`./assets/generated/bodies/camo/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Camo.gif`},{id:`body-cardbon`,name:`Cardbon`,slot:`body`,rarity:`common`,price:305,stats:`Efficient miner: gem pulse + idle`,statMods:{gemValue:.06,idleEfficiency:.02},huntMods:{gemPulse:1,magnetRange:1.06},key:`body-cardbon`,frames:16,framePath:`./assets/generated/bodies/cardbon/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Cardbon.gif`},{id:`body-charcoal`,name:`Charcoal`,slot:`body`,rarity:`common`,price:450,stats:`Heavy armor: guardian charges + slow`,statMods:{armor:.7,swimSpeed:-.03,damage:.03},huntMods:{guardianCharges:1,spinPower:1,maxHp:1,presetFamilyShell:1},key:`body-charcoal`,frames:16,framePath:`./assets/generated/bodies/charcoal/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Charcoal.gif`},{id:`body-cottoncandy`,name:`Cottoncandy`,slot:`body`,rarity:`common`,price:370,stats:`Sweet dodge: homing shots + luck`,statMods:{luck:.06,swimSpeed:.02},huntMods:{homing:1,critChance:.03},key:`body-cottoncandy`,frames:16,framePath:`./assets/generated/bodies/cottoncandy/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Cottoncandy.gif`},{id:`body-creamsicle`,name:`Creamsicle`,slot:`body`,rarity:`common`,price:270,stats:`Smooth operator: shot speed + backblast`,statMods:{damage:.04,swimSpeed:.03},huntMods:{backblast:1,shotSpeed:1.06},key:`body-creamsicle`,frames:16,framePath:`./assets/generated/bodies/creamsicle/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Creamsicle.gif`},{id:`body-deathbot`,name:`Deathbot`,slot:`body`,rarity:`rare`,price:990,stats:`War machine: broadside + chain + ink mines`,statMods:{damage:.12,armor:.6,luck:-.04},huntMods:{broadside:1,chain:1,inkMines:1,damageBonus:1},key:`body-deathbot`,frames:16,framePath:`./assets/generated/bodies/deathbot/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Deathbot.gif`},{id:`body-dirt`,name:`Dirt`,slot:`body`,rarity:`common`,price:335,stats:`Earthen: ink mines + armor`,statMods:{armor:.4,gemValue:.03},huntMods:{inkMines:1,spinPower:1},key:`body-dirt`,frames:16,framePath:`./assets/generated/bodies/dirt/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Dirt.gif`},{id:`body-fuchsia`,name:`Fuchsia`,slot:`body`,rarity:`common`,price:370,stats:`Flashy crits: crit chance + prism fork`,statMods:{damage:.04,luck:.04},huntMods:{critChance:.06,prismFork:1},key:`body-fuchsia`,frames:16,framePath:`./assets/generated/bodies/fuchsia/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Fuchsia.gif`},{id:`body-gold`,name:`Gold`,slot:`body`,rarity:`rare`,price:1360,stats:`Treasure hunter: gem pulse + crit + prism fork`,statMods:{gemValue:.16,luck:.1,swimSpeed:-.03},huntMods:{critChance:.1,gemPulse:1,prismFork:1,presetFamilyTreasure:1},key:`body-gold`,frames:16,framePath:`./assets/generated/bodies/gold/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Gold.gif`},{id:`body-grape`,name:`Grape`,slot:`body`,rarity:`common`,price:305,stats:`Juicy magnet: wider pickup + homing`,statMods:{magnetRange:.06,luck:.02},huntMods:{homing:1,magnetRange:1.08},key:`body-grape`,frames:16,framePath:`./assets/generated/bodies/grape/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Grape.gif`},{id:`body-gray`,name:`Gray`,slot:`body`,rarity:`common`,price:335,stats:`Stoic: guardian + idle boost`,statMods:{armor:.3,idleEfficiency:.03},huntMods:{guardianCharges:1,freeze:1,presetFamilyShell:1},key:`body-gray`,frames:16,framePath:`./assets/generated/bodies/gray/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Gray.gif`},{id:`body-lime`,name:`Lime`,slot:`body`,rarity:`common`,price:480,stats:`Zippy: speed + bounce shots`,statMods:{swimSpeed:.07,gemValue:.04},huntMods:{bounce:1,swimSpeed:1.06,shotSpeed:1.04,presetFamilyCurrent:1},key:`body-lime`,frames:16,framePath:`./assets/generated/bodies/lime/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Lime.gif`},{id:`body-magma`,name:`Magma`,slot:`body`,rarity:`uncommon`,price:670,stats:`Volcanic: lump of coal + broadside`,statMods:{damage:.12,armor:-.2,swimSpeed:-.02},huntMods:{lumpOfCoal:1,broadside:1,damageBonus:1,presetFamilyInkstorm:1},key:`body-magma`,frames:16,framePath:`./assets/generated/bodies/magma/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Magma.gif`},{id:`body-metal`,name:`Metal`,slot:`body`,rarity:`rare`,price:1215,stats:`Iron fortress: max HP + guardian + spin`,statMods:{armor:1.1,damage:.04,swimSpeed:-.07},huntMods:{maxHp:2,guardianCharges:2,spinPower:1,presetFamilyShell:1},key:`body-metal`,frames:16,framePath:`./assets/generated/bodies/metal/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Metal.gif`},{id:`body-midnight`,name:`Midnight`,slot:`body`,rarity:`uncommon`,price:590,stats:`Shadow: fear + spectral shots`,statMods:{luck:.06,damage:.05,magnetRange:-.03},huntMods:{fear:1,spectral:1,critChance:.04},key:`body-midnight`,frames:16,framePath:`./assets/generated/bodies/midnight/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Midnight.gif`},{id:`body-octopi`,name:`Octopi`,slot:`body`,rarity:`common`,price:370,stats:`Collector: magnet + idle + orbit`,statMods:{magnetRange:.04,idleEfficiency:.04},huntMods:{orbit:1,magnetRange:1.08},key:`body-octopi`,frames:16,framePath:`./assets/generated/bodies/octopi/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Octopi.gif`},{id:`body-orange`,name:`Orange`,slot:`body`,rarity:`common`,price:270,stats:`Zesty: fire rate + extra projectile`,statMods:{damage:.05,gemValue:.03},huntMods:{fireDelay:.94,extraProjectiles:1,presetFamilyInkstorm:1},key:`body-orange`,frames:16,framePath:`./assets/generated/bodies/orange/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Orange.gif`},{id:`body-pepe`,name:`Pepe`,slot:`body`,rarity:`uncommon`,price:560,stats:`Rare meme: luck + boomerang shots`,statMods:{luck:.09,idleEfficiency:.03},huntMods:{boomerang:1,luckBonus:.08,wiggle:1,presetFamilyChaos:1},key:`body-pepe`,frames:16,framePath:`./assets/generated/bodies/pepe/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Pepe.gif`},{id:`body-rainbow`,name:`Rainbow`,slot:`body`,rarity:`rare`,price:1120,stats:`Prismatic: crit + prism fork + chain`,statMods:{luck:.12,gemValue:.08,magnetRange:.04},huntMods:{critChance:.12,prismFork:1,chain:1,gemPulse:1,presetFamilyPrism:1},key:`body-rainbow`,frames:16,framePath:`./assets/generated/bodies/rainbow/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Rainbow.gif`},{id:`body-red`,name:`Red`,slot:`body`,rarity:`common`,price:430,stats:`Berserker: damage + broadside`,statMods:{damage:.08,swimSpeed:-.04},huntMods:{broadside:1,damageBonus:1,presetFamilyInkstorm:1},key:`body-red`,frames:16,framePath:`./assets/generated/bodies/red/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Red.gif`},{id:`body-sushi`,name:`Sushi`,slot:`body`,rarity:`common`,price:270,stats:`Nourishing: idle + heal on level-up`,statMods:{idleEfficiency:.06,armor:.2},huntMods:{maxHp:1,magnetRange:1.04,nextXpMult:.95},key:`body-sushi`,frames:16,framePath:`./assets/generated/bodies/sushi/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Sushi.gif`},{id:`body-tan`,name:`Tan`,slot:`body`,rarity:`common`,price:305,stats:`All-rounder: small boosts everywhere`,statMods:{swimSpeed:.03,armor:.2,idleEfficiency:.02},huntMods:{guardianCharges:1,shotSpeed:1.03},key:`body-tan`,frames:16,framePath:`./assets/generated/bodies/tan/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Tan.gif`},{id:`body-teal`,name:`Teal`,slot:`body`,rarity:`common`,price:450,stats:`Current rider: speed + homing`,statMods:{swimSpeed:.06,magnetRange:.06},huntMods:{homing:1,wakeTrail:1,swimSpeed:1.04,presetFamilyCurrent:1},key:`body-teal`,frames:16,framePath:`./assets/generated/bodies/teal/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Teal.gif`},{id:`body-white`,name:`White`,slot:`body`,rarity:`common`,price:370,stats:`Pure: spectral shots + magnet`,statMods:{magnetRange:.05,luck:.03},huntMods:{spectral:1,homing:1},key:`body-white`,frames:16,framePath:`./assets/generated/bodies/white/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/White.gif`},{id:`body-yellow`,name:`Yellow`,slot:`body`,rarity:`common`,price:270,stats:`Gem magnet: gem pulse + magnet range`,statMods:{magnetRange:.07,gemValue:.04},huntMods:{gemPulse:1,magnetRange:1.06,presetFamilyTreasure:1},key:`body-yellow`,frames:16,framePath:`./assets/generated/bodies/yellow/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/Yellow.gif`},{id:`body-zombie`,name:`Zombie`,slot:`body`,rarity:`uncommon`,price:560,stats:`Undead: poison + fear + contagion`,statMods:{damage:.08,armor:.4,idleEfficiency:-.03},huntMods:{poison:1,fear:1,contagion:1},key:`body-zombie`,frames:16,framePath:`./assets/generated/bodies/zombie/frame_00.png`,path:`./assets/raw/octos player assets/Bodies/zombie.gif`}],ue=[{id:`eyes-3d-glasses`,name:`3d Glasses`,slot:`eyes`,rarity:`common`,price:190,stats:`Depth perception: pierce + slight homing`,statMods:{magnetRange:.04},huntMods:{pierce:1,homing:1},key:`eyes-3d-glasses`,frames:16,framePath:`./assets/generated/eyes/3d-glasses/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/3d glasses.gif`},{id:`eyes-4-eyes`,name:`4 Eyes`,slot:`eyes`,rarity:`common`,price:225,stats:`Multi-track targeting: homing + crit`,statMods:{magnetRange:.05,luck:.03},huntMods:{homing:1,critChance:.03},key:`eyes-4-eyes`,frames:16,framePath:`./assets/generated/eyes/4-eyes/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/4 eyes.gif`},{id:`eyes-all-seeing`,name:`All Seeing`,slot:`eyes`,rarity:`rare`,price:830,stats:`Omniscience: strong homing + crit + prism fork`,statMods:{magnetRange:.16,luck:.08},huntMods:{homing:2,critChance:.12,prismFork:1,presetFamilyPrism:1},key:`eyes-all-seeing`,frames:16,framePath:`./assets/generated/eyes/all-seeing/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/All seeing.gif`},{id:`eyes-angry`,name:`Angry`,slot:`eyes`,rarity:`common`,price:385,stats:`Rage focus: damage + broadside`,statMods:{magnetRange:.04,damage:.06},huntMods:{damageBonus:1,broadside:1,presetFamilyInkstorm:1},key:`eyes-angry`,frames:16,framePath:`./assets/generated/eyes/angry/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Angry.gif`},{id:`eyes-boingg`,name:`Boingg`,slot:`eyes`,rarity:`common`,price:190,stats:`Springy sight: bounce shots`,statMods:{magnetRange:.04},huntMods:{bounce:1,presetFamilyCurrent:1},key:`eyes-boingg`,frames:16,framePath:`./assets/generated/eyes/boingg/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Boingg.gif`},{id:`eyes-cool-shades`,name:`Cool Shades`,slot:`eyes`,rarity:`common`,price:225,stats:`Cool crits: crit chance up`,statMods:{magnetRange:.04},huntMods:{critChance:.05,luckBonus:.03},key:`eyes-cool-shades`,frames:16,framePath:`./assets/generated/eyes/cool-shades/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Cool shades.gif`},{id:`eyes-crazy-eyes`,name:`Crazy Eyes`,slot:`eyes`,rarity:`common`,price:255,stats:`Chaotic aim: wiggle + split`,statMods:{magnetRange:.04},huntMods:{wiggle:1,split:1,presetFamilyChaos:1},key:`eyes-crazy-eyes`,frames:16,framePath:`./assets/generated/eyes/crazy-eyes/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Crazy eyes.gif`},{id:`eyes-cute`,name:`Cute`,slot:`eyes`,rarity:`common`,price:370,stats:`Charm magnet: strong magnet + gem pulse`,statMods:{magnetRange:.1},huntMods:{magnetRange:1.1,gemPulse:1,presetFamilyTreasure:1},key:`eyes-cute`,frames:16,framePath:`./assets/generated/eyes/cute/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Cute.gif`},{id:`eyes-cyclops`,name:`Cyclops`,slot:`eyes`,rarity:`common`,price:190,stats:`Focused beam: lump of coal`,statMods:{magnetRange:.04},huntMods:{lumpOfCoal:1},key:`eyes-cyclops`,frames:16,framePath:`./assets/generated/eyes/cyclops/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Cyclops.gif`},{id:`eyes-durr-eyes`,name:`Durr Eyes`,slot:`eyes`,rarity:`common`,price:225,stats:`Confused spray: extra projectile + wiggle`,statMods:{magnetRange:.04},huntMods:{extraProjectiles:1,wiggle:1},key:`eyes-durr-eyes`,frames:16,framePath:`./assets/generated/eyes/durr-eyes/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Durr eyes.gif`},{id:`eyes-evil`,name:`Evil`,slot:`eyes`,rarity:`common`,price:350,stats:`Malice: fear + poison`,statMods:{magnetRange:.04,damage:.06},huntMods:{fear:1,poison:1},key:`eyes-evil`,frames:16,framePath:`./assets/generated/eyes/evil/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Evil.gif`},{id:`eyes-eye-patch`,name:`Eye Patch`,slot:`eyes`,rarity:`common`,price:290,stats:`Pirate precision: crit + pierce`,statMods:{magnetRange:.04},huntMods:{critChance:.06,pierce:1},key:`eyes-eye-patch`,frames:16,framePath:`./assets/generated/eyes/eye-patch/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Eye patch.gif`},{id:`eyes-hmm`,name:`Hmm`,slot:`eyes`,rarity:`common`,price:190,stats:`Thoughtful: homing + freeze`,statMods:{magnetRange:.04},huntMods:{homing:1,freeze:1},key:`eyes-hmm`,frames:16,framePath:`./assets/generated/eyes/hmm/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Hmm.gif`},{id:`eyes-monocle`,name:`Monocle`,slot:`eyes`,rarity:`uncommon`,price:370,stats:`Precision: strong crit + prism fork`,statMods:{luck:.08,damage:.04},huntMods:{critChance:.1,prismFork:1},key:`eyes-monocle`,frames:16,framePath:`./assets/generated/eyes/monocle/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Monocle.gif`},{id:`eyes-nouns-glasses`,name:`Nouns Glasses`,slot:`eyes`,rarity:`common`,price:255,stats:`Block vision: chain + gem pulse`,statMods:{magnetRange:.04},huntMods:{chain:1,gemPulse:1},key:`eyes-nouns-glasses`,frames:16,framePath:`./assets/generated/eyes/nouns-glasses/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Nouns glasses.gif`},{id:`eyes-regular`,name:`Regular`,slot:`eyes`,rarity:`starter`,price:0,stats:`No modifier`,statMods:{},key:`eyes-regular`,frames:16,framePath:`./assets/generated/eyes/regular/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Regular.gif`},{id:`eyes-sad`,name:`Sad`,slot:`eyes`,rarity:`common`,price:190,stats:`Sympathy: boomerang + homing`,statMods:{magnetRange:.04},huntMods:{boomerang:1,homing:1},key:`eyes-sad`,frames:16,framePath:`./assets/generated/eyes/sad/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Sad.gif`},{id:`eyes-scar`,name:`Scar`,slot:`eyes`,rarity:`common`,price:225,stats:`Battle-hardened: damage + pierce`,statMods:{magnetRange:.04},huntMods:{damageBonus:1,pierce:1},key:`eyes-scar`,frames:16,framePath:`./assets/generated/eyes/scar/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Scar.gif`},{id:`eyes-shy`,name:`Shy`,slot:`eyes`,rarity:`common`,price:255,stats:`Evasive: freeze + guardian charges`,statMods:{magnetRange:.04},huntMods:{freeze:1,guardianCharges:1},key:`eyes-shy`,frames:16,framePath:`./assets/generated/eyes/shy/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Shy.gif`},{id:`eyes-sleeping`,name:`Sleeping`,slot:`eyes`,rarity:`common`,price:290,stats:`Dream state: spectral + homing`,statMods:{magnetRange:.04},huntMods:{spectral:1,homing:1},key:`eyes-sleeping`,frames:16,framePath:`./assets/generated/eyes/sleeping/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Sleeping.gif`},{id:`eyes-smart`,name:`Smart`,slot:`eyes`,rarity:`common`,price:190,stats:`Calculated: faster leveling + homing`,statMods:{magnetRange:.04},huntMods:{homing:1,nextXpMult:.94},key:`eyes-smart`,frames:16,framePath:`./assets/generated/eyes/smart/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Smart.gif`},{id:`eyes-spy-glass`,name:`Spy Glass`,slot:`eyes`,rarity:`common`,price:225,stats:`Long range: shot speed + lump of coal`,statMods:{magnetRange:.04},huntMods:{shotSpeed:1.08,lumpOfCoal:1},key:`eyes-spy-glass`,frames:16,framePath:`./assets/generated/eyes/spy-glass/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Spy glass.gif`},{id:`eyes-squint`,name:`Squint`,slot:`eyes`,rarity:`common`,price:255,stats:`Focused fire: fire rate + damage`,statMods:{magnetRange:.04},huntMods:{fireDelay:.94,damageBonus:1},key:`eyes-squint`,frames:16,framePath:`./assets/generated/eyes/squint/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Squint.gif`},{id:`eyes-tri-eyes`,name:`Tri Eyes`,slot:`eyes`,rarity:`common`,price:290,stats:`Triple vision: extra projectile + split`,statMods:{magnetRange:.04},huntMods:{extraProjectiles:1,split:1},key:`eyes-tri-eyes`,frames:16,framePath:`./assets/generated/eyes/tri-eyes/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Tri eyes.gif`},{id:`eyes-vr-goggles`,name:`Vr Goggles`,slot:`eyes`,rarity:`uncommon`,price:335,stats:`Smart targeting: strong homing + shot speed`,statMods:{magnetRange:.08,swimSpeed:.03},huntMods:{homing:2,shotSpeed:1.08},key:`eyes-vr-goggles`,frames:16,framePath:`./assets/generated/eyes/vr-goggles/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Vr goggles.gif`},{id:`eyes-white-shades`,name:`White Shades`,slot:`eyes`,rarity:`common`,price:225,stats:`Cool & collected: crit + freeze`,statMods:{magnetRange:.04},huntMods:{critChance:.04,freeze:1},key:`eyes-white-shades`,frames:16,framePath:`./assets/generated/eyes/white-shades/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/White shades.gif`},{id:`eyes-wide-eyes`,name:`Wide Eyes`,slot:`eyes`,rarity:`common`,price:255,stats:`Awareness: magnet range + orbit`,statMods:{magnetRange:.04},huntMods:{magnetRange:1.08,orbit:1},key:`eyes-wide-eyes`,frames:16,framePath:`./assets/generated/eyes/wide-eyes/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Wide eyes.gif`},{id:`eyes-worried`,name:`Worried`,slot:`eyes`,rarity:`common`,price:290,stats:`Anxious dodger: speed + backblast`,statMods:{magnetRange:.04},huntMods:{swimSpeed:1.06,backblast:1},key:`eyes-worried`,frames:16,framePath:`./assets/generated/eyes/worried/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/Worried.gif`},{id:`eyes-x`,name:`X`,slot:`eyes`,rarity:`common`,price:190,stats:`Dead aim: damage + chain on kill`,statMods:{magnetRange:.04},huntMods:{damageBonus:1,chain:1},key:`eyes-x`,frames:16,framePath:`./assets/generated/eyes/x/frame_00.png`,path:`./assets/raw/octos player assets/Eyes/X.gif`}],de=[{id:`hat-admral-hat`,name:`Admral Hat`,slot:`hat`,rarity:`common`,price:240,stats:`Naval command: broadside + shot speed`,statMods:{luck:.03},huntMods:{broadside:1,shotSpeed:1.04},key:`hat-admral-hat`,frames:16,framePath:`./assets/generated/hats/admral-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Admral hat.gif`},{id:`hat-alien-antenna`,name:`Alien Antenna`,slot:`hat`,rarity:`uncommon`,price:610,stats:`Signal boost: strong homing + chain`,statMods:{luck:.03,magnetRange:.09},huntMods:{homing:2,chain:1,magnetRange:1.06},key:`hat-alien-antenna`,frames:16,framePath:`./assets/generated/hats/alien-antenna/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Alien antenna.gif`},{id:`hat-arrow-hat`,name:`Arrow Hat`,slot:`hat`,rarity:`common`,price:305,stats:`Arrow flight: pierce + shot speed`,statMods:{luck:.03},huntMods:{pierce:1,shotSpeed:1.06},key:`hat-arrow-hat`,frames:16,framePath:`./assets/generated/hats/arrow-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Arrow hat.gif`},{id:`hat-backwards-hat`,name:`Backwards Hat`,slot:`hat`,rarity:`common`,price:335,stats:`Rear guard: backblast + bounce`,statMods:{luck:.03},huntMods:{backblast:1,bounce:1},key:`hat-backwards-hat`,frames:16,framePath:`./assets/generated/hats/backwards-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Backwards hat.gif`},{id:`hat-banana`,name:`Banana`,slot:`hat`,rarity:`common`,price:320,stats:`Slippery chaos: bounce + wiggle`,statMods:{luck:.09,swimSpeed:.03},huntMods:{bounce:1,wiggle:1},key:`hat-banana`,frames:16,framePath:`./assets/generated/hats/banana/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Banana.gif`},{id:`hat-bandit-mask`,name:`Bandit Mask`,slot:`hat`,rarity:`common`,price:270,stats:`Outlaw: crit + gem steal`,statMods:{luck:.03},huntMods:{critChance:.04,gemPulse:1},key:`hat-bandit-mask`,frames:16,framePath:`./assets/generated/hats/bandit-mask/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Bandit mask.gif`},{id:`hat-beer-cap`,name:`Beer Cap`,slot:`hat`,rarity:`common`,price:305,stats:`Tipsy: wiggle + damage`,statMods:{luck:.03},huntMods:{wiggle:1,damageBonus:1},key:`hat-beer-cap`,frames:16,framePath:`./assets/generated/hats/beer-cap/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Beer cap.gif`},{id:`hat-binary-tiara`,name:`Binary Tiara`,slot:`hat`,rarity:`common`,price:335,stats:`Digital grace: split shots`,statMods:{luck:.03},huntMods:{split:1,homing:1},key:`hat-binary-tiara`,frames:16,framePath:`./assets/generated/hats/binary-tiara/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Binary tiara.gif`},{id:`hat-black-bandana`,name:`Black Bandana`,slot:`hat`,rarity:`common`,price:240,stats:`Stealth: fear + speed`,statMods:{luck:.03},huntMods:{fear:1,swimSpeed:1.04},key:`hat-black-bandana`,frames:16,framePath:`./assets/generated/hats/black-bandana/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Black bandana.gif`},{id:`hat-black-bucket-hat`,name:`Black Bucket Hat`,slot:`hat`,rarity:`common`,price:270,stats:`Shield: guardian charges`,statMods:{luck:.03},huntMods:{guardianCharges:1,maxHp:1},key:`hat-black-bucket-hat`,frames:16,framePath:`./assets/generated/hats/black-bucket-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Black bucket hat.gif`},{id:`hat-black-miner-hard-hat`,name:`Black Miner Hard Hat`,slot:`hat`,rarity:`common`,price:305,stats:`Miner: ink mines + gem value`,statMods:{luck:.03},huntMods:{inkMines:1,gemPulse:1},key:`hat-black-miner-hard-hat`,frames:16,framePath:`./assets/generated/hats/black-miner-hard-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Black Miner hard hat.gif`},{id:`hat-blond-anime-hair`,name:`Blond Anime Hair`,slot:`hat`,rarity:`common`,price:335,stats:`Power up: extra projectile + speed`,statMods:{luck:.03},huntMods:{extraProjectiles:1,swimSpeed:1.04},key:`hat-blond-anime-hair`,frames:16,framePath:`./assets/generated/hats/blond-anime-hair/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Blond anime hair.gif`},{id:`hat-blue-bandana`,name:`Blue Bandana`,slot:`hat`,rarity:`common`,price:240,stats:`Water shield: freeze + guardian`,statMods:{luck:.03},huntMods:{freeze:1,guardianCharges:1},key:`hat-blue-bandana`,frames:16,framePath:`./assets/generated/hats/blue-bandana/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Blue Bandana.gif`},{id:`hat-blue-lazer-eyes`,name:`Blue Lazer Eyes`,slot:`hat`,rarity:`rare`,price:850,stats:`Laser pressure: damage + fire rate + shot speed`,statMods:{damage:.12,luck:.04},huntMods:{damageBonus:1,fireDelay:.88,shotSpeed:1.12,lumpOfCoal:1},key:`hat-blue-lazer-eyes`,frames:16,framePath:`./assets/generated/hats/blue-lazer-eyes/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Blue lazer eyes.gif`},{id:`hat-bonk`,name:`Bonk`,slot:`hat`,rarity:`common`,price:305,stats:`Bonk: spin power + fear`,statMods:{luck:.03},huntMods:{spinPower:1,fear:1},key:`hat-bonk`,frames:16,framePath:`./assets/generated/hats/bonk/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Bonk.gif`},{id:`hat-box-head`,name:`Box Head`,slot:`hat`,rarity:`common`,price:335,stats:`Armored box: guardian + ink mines`,statMods:{luck:.03},huntMods:{guardianCharges:1,inkMines:1},key:`hat-box-head`,frames:16,framePath:`./assets/generated/hats/box-head/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Box head.gif`},{id:`hat-brown-bucket-hat`,name:`Brown Bucket Hat`,slot:`hat`,rarity:`common`,price:240,stats:`Explorer: magnet + idle`,statMods:{luck:.03},huntMods:{magnetRange:1.06,nextXpMult:.96},key:`hat-brown-bucket-hat`,frames:16,framePath:`./assets/generated/hats/brown-bucket-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Brown bucket hat.gif`},{id:`hat-bunny-ears`,name:`Bunny Ears`,slot:`hat`,rarity:`common`,price:270,stats:`Quick hop: speed + bounce`,statMods:{luck:.03},huntMods:{swimSpeed:1.06,bounce:1},key:`hat-bunny-ears`,frames:16,framePath:`./assets/generated/hats/bunny-ears/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Bunny ears.gif`},{id:`hat-cat-ears`,name:`Cat Ears`,slot:`hat`,rarity:`common`,price:305,stats:`Nine lives: guardian + homing`,statMods:{luck:.03},huntMods:{guardianCharges:1,homing:1},key:`hat-cat-ears`,frames:16,framePath:`./assets/generated/hats/cat-ears/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Cat ears.gif`},{id:`hat-chef-hat`,name:`Chef Hat`,slot:`hat`,rarity:`common`,price:335,stats:`Chef special: poison + split`,statMods:{luck:.03},huntMods:{poison:1,split:1},key:`hat-chef-hat`,frames:16,framePath:`./assets/generated/hats/chef-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Chef hat.gif`},{id:`hat-circuit-board-crown`,name:`Circuit Board Crown`,slot:`hat`,rarity:`rare`,price:990,stats:`Tech royal: chain + gem pulse + homing`,statMods:{luck:.15,magnetRange:.08},huntMods:{chain:1,gemPulse:1,homing:1},key:`hat-circuit-board-crown`,frames:16,framePath:`./assets/generated/hats/circuit-board-crown/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Circuit board crown.gif`},{id:`hat-clown-hair`,name:`Clown Hair`,slot:`hat`,rarity:`common`,price:270,stats:`Chaos: wiggle + split + bounce`,statMods:{luck:.03},huntMods:{wiggle:1,split:1,bounce:1},key:`hat-clown-hair`,frames:16,framePath:`./assets/generated/hats/clown-hair/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Clown hair.gif`},{id:`hat-cowboy-hat`,name:`Cowboy Hat`,slot:`hat`,rarity:`common`,price:305,stats:`Quick draw: fire rate + crit`,statMods:{luck:.03},huntMods:{fireDelay:.94,critChance:.04},key:`hat-cowboy-hat`,frames:16,framePath:`./assets/generated/hats/cowboy-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Cowboy hat.gif`},{id:`hat-crown`,name:`Crown`,slot:`hat`,rarity:`rare`,price:1090,stats:`Royal crits: strong crit + prism fork`,statMods:{luck:.18,gemValue:.08},huntMods:{critChance:.16,prismFork:1,gemPulse:1},key:`hat-crown`,frames:16,framePath:`./assets/generated/hats/crown/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Crown.gif`},{id:`hat-crypto-crown`,name:`Crypto Crown`,slot:`hat`,rarity:`rare`,price:1200,stats:`Crypto king: gem pulse + chain + crit`,statMods:{luck:.15,gemValue:.12},huntMods:{gemPulse:1,chain:1,critChance:.08},key:`hat-crypto-crown`,frames:16,framePath:`./assets/generated/hats/crypto-crown/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Crypto crown.gif`},{id:`hat-crypto-helmet`,name:`Crypto Helmet`,slot:`hat`,rarity:`rare`,price:1280,stats:`Armored vault: guardian + ink mines + gem pulse`,statMods:{luck:.03,armor:1,gemValue:.12},huntMods:{guardianCharges:2,inkMines:1,gemPulse:1},key:`hat-crypto-helmet`,frames:16,framePath:`./assets/generated/hats/crypto-helmet/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Crypto helmet.gif`},{id:`hat-cup-head`,name:`Cup Head`,slot:`hat`,rarity:`common`,price:305,stats:`Don't deal: extra projectile + bounce`,statMods:{luck:.03},huntMods:{extraProjectiles:1,bounce:1},key:`hat-cup-head`,frames:16,framePath:`./assets/generated/hats/cup-head/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Cup head.gif`},{id:`hat-devil-horns`,name:`Devil Horns`,slot:`hat`,rarity:`uncommon`,price:690,stats:`Demonic: damage + fear + contagion`,statMods:{luck:.03,damage:.09},huntMods:{damageBonus:1,fear:1,contagion:1},key:`hat-devil-horns`,frames:16,framePath:`./assets/generated/hats/devil-horns/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Devil horns.gif`},{id:`hat-digital-keys`,name:`Digital Keys`,slot:`hat`,rarity:`common`,price:240,stats:`Unlock: faster leveling + gem value`,statMods:{luck:.03},huntMods:{nextXpMult:.92,gemPulse:1},key:`hat-digital-keys`,frames:16,framePath:`./assets/generated/hats/digital-keys/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Digital keys.gif`},{id:`hat-digital-top-hat`,name:`Digital Top Hat`,slot:`hat`,rarity:`common`,price:270,stats:`Dapper code: homing + chain`,statMods:{luck:.03},huntMods:{homing:1,chain:1},key:`hat-digital-top-hat`,frames:16,framePath:`./assets/generated/hats/digital-top-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Digital top hat.gif`},{id:`hat-encryption-hair`,name:`Encryption Hair`,slot:`hat`,rarity:`common`,price:305,stats:`Encrypted: spectral + homing`,statMods:{luck:.03},huntMods:{spectral:1,homing:1},key:`hat-encryption-hair`,frames:16,framePath:`./assets/generated/hats/encryption-hair/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Encryption hair.gif`},{id:`hat-fedora`,name:`Fedora`,slot:`hat`,rarity:`common`,price:335,stats:`Classy: crit + lump of coal`,statMods:{luck:.03},huntMods:{critChance:.04,lumpOfCoal:1},key:`hat-fedora`,frames:16,framePath:`./assets/generated/hats/fedora/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Fedora.gif`},{id:`hat-fez`,name:`Fez`,slot:`hat`,rarity:`common`,price:240,stats:`Time warp: boomerang + orbit`,statMods:{luck:.03},huntMods:{boomerang:1,orbit:1},key:`hat-fez`,frames:16,framePath:`./assets/generated/hats/fez/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Fez.gif`},{id:`hat-fish-bowl`,name:`Fish Bowl`,slot:`hat`,rarity:`common`,price:270,stats:`Fish friend: orbit + magnet`,statMods:{luck:.03},huntMods:{orbit:1,magnetRange:1.06},key:`hat-fish-bowl`,frames:16,framePath:`./assets/generated/hats/fish-bowl/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Fish bowl.gif`},{id:`hat-frog-hat`,name:`Frog Hat`,slot:`hat`,rarity:`common`,price:305,stats:`Tongue lash: chain + poison`,statMods:{luck:.03},huntMods:{chain:1,poison:1},key:`hat-frog-hat`,frames:16,framePath:`./assets/generated/hats/frog-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Frog hat.gif`},{id:`hat-frumpy-hair`,name:`Frumpy Hair`,slot:`hat`,rarity:`common`,price:335,stats:`Bedhead: split + wiggle`,statMods:{luck:.03},huntMods:{split:1,wiggle:1},key:`hat-frumpy-hair`,frames:16,framePath:`./assets/generated/hats/frumpy-hair/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Frumpy hair.gif`},{id:`hat-halo`,name:`Halo`,slot:`hat`,rarity:`uncommon`,price:450,stats:`Divine: guardian charges + heal + orbit`,statMods:{luck:.03},huntMods:{guardianCharges:2,maxHp:1,orbit:1},key:`hat-halo`,frames:16,framePath:`./assets/generated/hats/halo/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Halo.gif`},{id:`hat-headphones`,name:`Headphones`,slot:`hat`,rarity:`common`,price:270,stats:`Focus zone: fire rate + homing`,statMods:{luck:.03},huntMods:{fireDelay:.94,homing:1},key:`hat-headphones`,frames:16,framePath:`./assets/generated/hats/headphones/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Headphones.gif`},{id:`hat-memepool-top-hat`,name:`Memepool Top Hat`,slot:`hat`,rarity:`common`,price:305,stats:`Meme magic: luck + wiggle + boomerang`,statMods:{luck:.03},huntMods:{luckBonus:.05,wiggle:1,boomerang:1},key:`hat-memepool-top-hat`,frames:16,framePath:`./assets/generated/hats/memepool-top-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Memepool top hat.gif`},{id:`hat-messy-hair`,name:`Messy Hair`,slot:`hat`,rarity:`common`,price:335,stats:`Chaotic spray: extra projectile + wiggle`,statMods:{luck:.03},huntMods:{extraProjectiles:1,wiggle:1},key:`hat-messy-hair`,frames:16,framePath:`./assets/generated/hats/messy-hair/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Messy hair.gif`},{id:`hat-military-helmet`,name:`Military Helmet`,slot:`hat`,rarity:`uncommon`,price:610,stats:`Fortified: armor + guardian + broadside`,statMods:{luck:.03,armor:.72},huntMods:{guardianCharges:1,broadside:1,maxHp:1},key:`hat-military-helmet`,frames:16,framePath:`./assets/generated/hats/military-helmet/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Military helmet.gif`},{id:`hat-mohawk-thin`,name:`Mohawk Thin`,slot:`hat`,rarity:`common`,price:270,stats:`Punk pierce: pierce + speed`,statMods:{luck:.03},huntMods:{pierce:1,swimSpeed:1.04},key:`hat-mohawk-thin`,frames:16,framePath:`./assets/generated/hats/mohawk-thin/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Mohawk thin.gif`},{id:`hat-mohawk`,name:`Mohawk`,slot:`hat`,rarity:`common`,price:305,stats:`Punk rock: damage + fire rate`,statMods:{luck:.03},huntMods:{damageBonus:1,fireDelay:.94},key:`hat-mohawk`,frames:16,framePath:`./assets/generated/hats/mohawk/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Mohawk.gif`},{id:`hat-nerd-glasses`,name:`Nerd Glasses`,slot:`hat`,rarity:`common`,price:335,stats:`Big brain: faster leveling + split`,statMods:{luck:.03},huntMods:{nextXpMult:.92,split:1},key:`hat-nerd-glasses`,frames:16,framePath:`./assets/generated/hats/nerd-glasses/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Nerd glasses.gif`},{id:`hat-night-vision-goggles`,name:`Night Vision Goggles`,slot:`hat`,rarity:`common`,price:240,stats:`Night stalker: homing + spectral`,statMods:{luck:.03},huntMods:{homing:1,spectral:1},key:`hat-night-vision-goggles`,frames:16,framePath:`./assets/generated/hats/night-vision-goggles/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Night vision goggles.gif`},{id:`hat-node-crown`,name:`Node Crown`,slot:`hat`,rarity:`rare`,price:1025,stats:`Network king: chain + prism fork + gem pulse`,statMods:{luck:.15},huntMods:{chain:2,prismFork:1,gemPulse:1},key:`hat-node-crown`,frames:16,framePath:`./assets/generated/hats/node-crown/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Node crown.gif`},{id:`hat-orange-beanie`,name:`Orange Beanie`,slot:`hat`,rarity:`common`,price:305,stats:`Warm head: fire rate + orbit`,statMods:{luck:.03},huntMods:{fireDelay:.94,orbit:1},key:`hat-orange-beanie`,frames:16,framePath:`./assets/generated/hats/orange-beanie/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Orange beanie.gif`},{id:`hat-orange-miner-hard-hat`,name:`Orange Miner Hard Hat`,slot:`hat`,rarity:`common`,price:335,stats:`Deep miner: ink mines + gem pulse`,statMods:{luck:.03},huntMods:{inkMines:1,gemPulse:1},key:`hat-orange-miner-hard-hat`,frames:16,framePath:`./assets/generated/hats/orange-miner-hard-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Orange Miner hard hat.gif`},{id:`hat-party-hat`,name:`Party Hat`,slot:`hat`,rarity:`common`,price:320,stats:`Party: confetti shots + bounce`,statMods:{luck:.09},huntMods:{split:1,bounce:1,wiggle:1},key:`hat-party-hat`,frames:16,framePath:`./assets/generated/hats/party-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Party hat.gif`},{id:`hat-pigtails`,name:`Pigtails`,slot:`hat`,rarity:`common`,price:270,stats:`Double trouble: split + homing`,statMods:{luck:.03},huntMods:{split:1,homing:1},key:`hat-pigtails`,frames:16,framePath:`./assets/generated/hats/pigtails/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Pigtails.gif`},{id:`hat-pink-hair`,name:`Pink Hair`,slot:`hat`,rarity:`common`,price:305,stats:`Pop star: crit + extra projectile`,statMods:{luck:.03},huntMods:{critChance:.04,extraProjectiles:1},key:`hat-pink-hair`,frames:16,framePath:`./assets/generated/hats/pink-hair/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Pink hair.gif`},{id:`hat-pirate-hat`,name:`Pirate Hat`,slot:`hat`,rarity:`uncommon`,price:670,stats:`Plunder: gem pulse + split + pierce`,statMods:{luck:.1,gemValue:.08},huntMods:{gemPulse:1,split:1,pierce:1},key:`hat-pirate-hat`,frames:16,framePath:`./assets/generated/hats/pirate-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Pirate hat.gif`},{id:`hat-pizza-hat`,name:`Pizza Hat`,slot:`hat`,rarity:`common`,price:240,stats:`Hot slice: fire rate + poison`,statMods:{luck:.03},huntMods:{fireDelay:.94,poison:1},key:`hat-pizza-hat`,frames:16,framePath:`./assets/generated/hats/pizza-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Pizza hat.gif`},{id:`hat-plunger-head`,name:`Plunger Head`,slot:`hat`,rarity:`common`,price:270,stats:`Suction: homing + magnet`,statMods:{luck:.03},huntMods:{homing:1,magnetRange:1.08},key:`hat-plunger-head`,frames:16,framePath:`./assets/generated/hats/plunger-head/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Plunger head.gif`},{id:`hat-police-hat`,name:`Police Hat`,slot:`hat`,rarity:`common`,price:305,stats:`Law & order: fear + freeze`,statMods:{luck:.03},huntMods:{fear:1,freeze:1},key:`hat-police-hat`,frames:16,framePath:`./assets/generated/hats/police-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Police hat.gif`},{id:`hat-powder-wig`,name:`Powder Wig`,slot:`hat`,rarity:`common`,price:335,stats:`Aristocrat: crit + gem pulse`,statMods:{luck:.03},huntMods:{critChance:.04,gemPulse:1},key:`hat-powder-wig`,frames:16,framePath:`./assets/generated/hats/powder-wig/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Powder wig.gif`},{id:`hat-press-hat`,name:`Press Hat`,slot:`hat`,rarity:`common`,price:240,stats:`Reporter: faster leveling + chain`,statMods:{luck:.03},huntMods:{nextXpMult:.94,chain:1},key:`hat-press-hat`,frames:16,framePath:`./assets/generated/hats/press-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Press hat.gif`},{id:`hat-propeller-hat`,name:`Propeller Hat`,slot:`hat`,rarity:`common`,price:370,stats:`Current wake: wake trail + backblast + speed`,statMods:{swimSpeed:.08,luck:.03},huntMods:{wakeTrail:1,backblast:1,swimSpeed:1.06},key:`hat-propeller-hat`,frames:16,framePath:`./assets/generated/hats/propeller-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Propeller hat.gif`},{id:`hat-puffy-hair`,name:`Puffy Hair`,slot:`hat`,rarity:`common`,price:305,stats:`Cloud cover: spectral + orbit`,statMods:{luck:.03},huntMods:{spectral:1,orbit:1},key:`hat-puffy-hair`,frames:16,framePath:`./assets/generated/hats/puffy-hair/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Puffy hair.gif`},{id:`hat-purple-bandana`,name:`Purple Bandana`,slot:`hat`,rarity:`common`,price:335,stats:`Mystic: poison + contagion`,statMods:{luck:.03},huntMods:{poison:1,contagion:1},key:`hat-purple-bandana`,frames:16,framePath:`./assets/generated/hats/purple-bandana/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Purple Bandana.gif`},{id:`hat-purple-beanie`,name:`Purple Beanie`,slot:`hat`,rarity:`common`,price:240,stats:`Cozy: freeze + homing`,statMods:{luck:.03},huntMods:{freeze:1,homing:1},key:`hat-purple-beanie`,frames:16,framePath:`./assets/generated/hats/purple-beanie/frame_00.png`,path:`./assets/raw/octos player assets/Hats/purple beanie.gif`},{id:`hat-red-bandana`,name:`Red Bandana`,slot:`hat`,rarity:`common`,price:370,stats:`Rage: damage + broadside`,statMods:{luck:.03,damage:.06},huntMods:{damageBonus:1,broadside:1},key:`hat-red-bandana`,frames:16,framePath:`./assets/generated/hats/red-bandana/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Red Bandana.gif`},{id:`hat-red-cap`,name:`Red Cap`,slot:`hat`,rarity:`common`,price:400,stats:`Trucker rage: fire rate + damage`,statMods:{luck:.03,damage:.06},huntMods:{fireDelay:.92,damageBonus:1},key:`hat-red-cap`,frames:16,framePath:`./assets/generated/hats/red-cap/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Red cap.gif`},{id:`hat-red-crazy-hair`,name:`Red Crazy Hair`,slot:`hat`,rarity:`common`,price:430,stats:`Wild fire: spiral + wiggle + damage`,statMods:{luck:.03,damage:.06},huntMods:{spiral:1,wiggle:1,damageBonus:1},key:`hat-red-crazy-hair`,frames:16,framePath:`./assets/generated/hats/red-crazy-hair/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Red crazy hair.gif`},{id:`hat-red-d-mushroom`,name:`Red D Mushroom`,slot:`hat`,rarity:`common`,price:335,stats:`Power-up: bullet scale + damage`,statMods:{luck:.03,damage:.06},huntMods:{bulletScale:.15,damageBonus:1},key:`hat-red-d-mushroom`,frames:16,framePath:`./assets/generated/hats/red-d-mushroom/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Red D mushroom.gif`},{id:`hat-red-lazer-eyes`,name:`Red Lazer Eyes`,slot:`hat`,rarity:`rare`,price:1040,stats:`Death beam: damage + lump of coal + pierce`,statMods:{luck:.03,damage:.12},huntMods:{lumpOfCoal:2,pierce:1,damageBonus:2},key:`hat-red-lazer-eyes`,frames:16,framePath:`./assets/generated/hats/red-lazer-eyes/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Red lazer eyes.gif`},{id:`hat-red-miner-hard-hat`,name:`Red Miner Hard Hat`,slot:`hat`,rarity:`common`,price:400,stats:`Explosive miner: ink mines + damage`,statMods:{luck:.03,damage:.06},huntMods:{inkMines:1,damageBonus:1},key:`hat-red-miner-hard-hat`,frames:16,framePath:`./assets/generated/hats/red-miner-hard-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Red Miner hard hat.gif`},{id:`hat-ribbon`,name:`Ribbon`,slot:`hat`,rarity:`common`,price:335,stats:`Graceful: homing + speed`,statMods:{luck:.03},huntMods:{homing:1,swimSpeed:1.04},key:`hat-ribbon`,frames:16,framePath:`./assets/generated/hats/ribbon/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Ribbon.gif`},{id:`hat-robin-hood`,name:`Robin Hood`,slot:`hat`,rarity:`common`,price:240,stats:`Outlaw: pierce + gem steal`,statMods:{luck:.03},huntMods:{pierce:1,gemPulse:1},key:`hat-robin-hood`,frames:16,framePath:`./assets/generated/hats/robin-hood/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Robin hood.gif`},{id:`hat-scuba-helmet`,name:`Scuba Helmet`,slot:`hat`,rarity:`uncommon`,price:740,stats:`Deep dive: guardian + magnet + idle`,statMods:{luck:.03,armor:.62},huntMods:{guardianCharges:2,magnetRange:1.1,maxHp:1},key:`hat-scuba-helmet`,frames:16,framePath:`./assets/generated/hats/scuba-helmet/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Scuba helmet.gif`},{id:`hat-straw-hat`,name:`Straw Hat`,slot:`hat`,rarity:`common`,price:305,stats:`One Piece: pierce + orbit + speed`,statMods:{luck:.03},huntMods:{pierce:1,orbit:1,swimSpeed:1.04},key:`hat-straw-hat`,frames:16,framePath:`./assets/generated/hats/straw-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Straw hat.gif`},{id:`hat-top-hat`,name:`Top Hat`,slot:`hat`,rarity:`uncommon`,price:560,stats:`Gentleman: crit + lump of coal + chain`,statMods:{luck:.03},huntMods:{critChance:.06,lumpOfCoal:1,chain:1},key:`hat-top-hat`,frames:16,framePath:`./assets/generated/hats/top-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Top hat.gif`},{id:`hat-trucker-cap`,name:`Trucker Cap`,slot:`hat`,rarity:`common`,price:270,stats:`Road warrior: backblast + shot speed`,statMods:{luck:.03},huntMods:{backblast:1,shotSpeed:1.06},key:`hat-trucker-cap`,frames:16,framePath:`./assets/generated/hats/trucker-cap/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Trucker cap.gif`},{id:`hat-visor`,name:`Visor`,slot:`hat`,rarity:`common`,price:305,stats:`Sun shield: homing + guardian`,statMods:{luck:.03},huntMods:{homing:1,guardianCharges:1},key:`hat-visor`,frames:16,framePath:`./assets/generated/hats/visor/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Visor.gif`},{id:`hat-white-anime-hair`,name:`White Anime Hair`,slot:`hat`,rarity:`common`,price:335,stats:`Final form: spectral + prism fork`,statMods:{luck:.03},huntMods:{spectral:1,prismFork:1},key:`hat-white-anime-hair`,frames:16,framePath:`./assets/generated/hats/white-anime-hair/frame_00.png`,path:`./assets/raw/octos player assets/Hats/White anime hair.gif`},{id:`hat-white-bucket-hat`,name:`White Bucket Hat`,slot:`hat`,rarity:`common`,price:240,stats:`Clean bucket: freeze + orbit`,statMods:{luck:.03},huntMods:{freeze:1,orbit:1},key:`hat-white-bucket-hat`,frames:16,framePath:`./assets/generated/hats/white-bucket-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/White bucket hat.gif`},{id:`hat-white-v-mushroom`,name:`White V Mushroom`,slot:`hat`,rarity:`common`,price:270,stats:`Growth: extra HP + bullet scale`,statMods:{luck:.03},huntMods:{maxHp:1,bulletScale:.12},key:`hat-white-v-mushroom`,frames:16,framePath:`./assets/generated/hats/white-v-mushroom/frame_00.png`,path:`./assets/raw/octos player assets/Hats/White V mushroom.gif`},{id:`hat-wild-hair`,name:`Wild Hair`,slot:`hat`,rarity:`common`,price:305,stats:`Untamed: spiral + split + extra projectile`,statMods:{luck:.03},huntMods:{spiral:1,split:1,extraProjectiles:1},key:`hat-wild-hair`,frames:16,framePath:`./assets/generated/hats/wild-hair/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Wild hair.gif`},{id:`hat-wizard-hat`,name:`Wizard Hat`,slot:`hat`,rarity:`rare`,price:910,stats:`Arcane power: spectral + prism fork + chain + homing`,statMods:{luck:.03},huntMods:{spectral:1,prismFork:1,chain:1,homing:1},key:`hat-wizard-hat`,frames:16,framePath:`./assets/generated/hats/wizard-hat/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Wizard hat.gif`},{id:`hat-yellow-beanie`,name:`Yellow Beanie`,slot:`hat`,rarity:`common`,price:240,stats:`Sunny: gem pulse + orbit`,statMods:{luck:.03},huntMods:{gemPulse:1,orbit:1},key:`hat-yellow-beanie`,frames:16,framePath:`./assets/generated/hats/yellow-beanie/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Yellow beanie.gif`},{id:`hat-yellow-e-mushroom`,name:`Yellow E Mushroom`,slot:`hat`,rarity:`common`,price:270,stats:`Electric shroom: chain + fire rate`,statMods:{luck:.03},huntMods:{chain:1,fireDelay:.94},key:`hat-yellow-e-mushroom`,frames:16,framePath:`./assets/generated/hats/yellow-e-mushroom/frame_00.png`,path:`./assets/raw/octos player assets/Hats/Yellow E mushroom.gif`}],fe=[{id:`clothes-astro-suit`,name:`Astro Suit`,slot:`clothes`,rarity:`common`,price:385,stats:`Space walk: spectral + speed + guardian`,statMods:{armor:.3,swimSpeed:.06},huntMods:{spectral:1,swimSpeed:1.04,guardianCharges:1},key:`clothes-astro-suit`,frames:16,framePath:`./assets/generated/clothes/astro-suit/frame_00.png`,path:`./assets/raw/octos player assets/clothes/Astro Suit.gif`},{id:`clothes-black-kimono`,name:`Black Kimono`,slot:`clothes`,rarity:`common`,price:320,stats:`Shadow arts: fear + speed + crit`,statMods:{armor:.3},huntMods:{fear:1,swimSpeed:1.04,critChance:.04},key:`clothes-black-kimono`,frames:16,framePath:`./assets/generated/clothes/black-kimono/frame_00.png`,path:`./assets/raw/octos player assets/clothes/Black kimono.gif`},{id:`clothes-chef-jacket`,name:`Chef Jacket`,slot:`clothes`,rarity:`common`,price:350,stats:`Kitchen fire: poison + fire rate`,statMods:{armor:.3},huntMods:{poison:1,fireDelay:.94},key:`clothes-chef-jacket`,frames:16,framePath:`./assets/generated/clothes/chef-jacket/frame_00.png`,path:`./assets/raw/octos player assets/clothes/Chef jacket.gif`},{id:`clothes-dark-hoody`,name:`Dark Hoody`,slot:`clothes`,rarity:`common`,price:385,stats:`Stealth armor: fear + guardian + ink mines`,statMods:{armor:.3},huntMods:{fear:1,guardianCharges:1,inkMines:1},key:`clothes-dark-hoody`,frames:16,framePath:`./assets/generated/clothes/dark-hoody/frame_00.png`,path:`./assets/raw/octos player assets/clothes/Dark hoody.gif`},{id:`clothes-green-hoody`,name:`Green Hoody`,slot:`clothes`,rarity:`common`,price:290,stats:`Nature shield: poison + orbit`,statMods:{armor:.3},huntMods:{poison:1,orbit:1},key:`clothes-green-hoody`,frames:16,framePath:`./assets/generated/clothes/green-hoody/frame_00.png`,path:`./assets/raw/octos player assets/clothes/Green hoody.gif`},{id:`clothes-hazmat-outfit`,name:`Hazmat Outfit`,slot:`clothes`,rarity:`uncommon`,price:720,stats:`Toxic tank: heavy armor + contagion + poison`,statMods:{armor:1.02},huntMods:{contagion:1,poison:1,maxHp:1,guardianCharges:1},key:`clothes-hazmat-outfit`,frames:16,framePath:`./assets/generated/clothes/hazmat-outfit/frame_00.png`,path:`./assets/raw/octos player assets/clothes/Hazmat outfit.gif`},{id:`clothes-jail-outfit`,name:`Jail Outfit`,slot:`clothes`,rarity:`common`,price:465,stats:`Hardened: high armor + spin power + fear`,statMods:{armor:.8},huntMods:{spinPower:1,fear:1,maxHp:1},key:`clothes-jail-outfit`,frames:16,framePath:`./assets/generated/clothes/jail-outfit/frame_00.png`,path:`./assets/raw/octos player assets/clothes/Jail outfit.gif`},{id:`clothes-mad-scientist`,name:`Mad Scientist`,slot:`clothes`,rarity:`uncommon`,price:625,stats:`Experiment: chain + split + contagion`,statMods:{armor:.3},huntMods:{chain:1,split:1,contagion:1},key:`clothes-mad-scientist`,frames:16,framePath:`./assets/generated/clothes/mad-scientist/frame_00.png`,path:`./assets/raw/octos player assets/clothes/Mad scientist.gif`},{id:`clothes-mage-robe`,name:`Mage Robe`,slot:`clothes`,rarity:`uncommon`,price:530,stats:`Arcane: spectral + prism fork + homing`,statMods:{armor:.3},huntMods:{spectral:1,prismFork:1,homing:1},key:`clothes-mage-robe`,frames:16,framePath:`./assets/generated/clothes/mage-robe/frame_00.png`,path:`./assets/raw/octos player assets/clothes/Mage robe.gif`},{id:`clothes-pirate-outfit`,name:`Pirate Outfit`,slot:`clothes`,rarity:`uncommon`,price:690,stats:`Sea dog: gem pulse + pierce + broadside`,statMods:{armor:.3,luck:.09},huntMods:{gemPulse:1,pierce:1,broadside:1},key:`clothes-pirate-outfit`,frames:16,framePath:`./assets/generated/clothes/pirate-outfit/frame_00.png`,path:`./assets/raw/octos player assets/clothes/Pirate outfit.gif`},{id:`clothes-poncho`,name:`Poncho`,slot:`clothes`,rarity:`common`,price:350,stats:`Drifter: bounce + boomerang + speed`,statMods:{armor:.3},huntMods:{bounce:1,boomerang:1,swimSpeed:1.04},key:`clothes-poncho`,frames:16,framePath:`./assets/generated/clothes/poncho/frame_00.png`,path:`./assets/raw/octos player assets/clothes/Poncho.gif`},{id:`clothes-rain-coat`,name:`Rain Coat`,slot:`clothes`,rarity:`common`,price:385,stats:`Weatherproof: freeze + guardian + orbit`,statMods:{armor:.3},huntMods:{freeze:1,guardianCharges:1,orbit:1},key:`clothes-rain-coat`,frames:16,framePath:`./assets/generated/clothes/rain-coat/frame_00.png`,path:`./assets/raw/octos player assets/clothes/Rain coat.gif`},{id:`clothes-trench-coat`,name:`Trench Coat`,slot:`clothes`,rarity:`common`,price:400,stats:`Heavy coat: high armor + ink mines + guardian`,statMods:{armor:.8},huntMods:{inkMines:1,guardianCharges:1,maxHp:1},key:`clothes-trench-coat`,frames:16,framePath:`./assets/generated/clothes/trench-coat/frame_00.png`,path:`./assets/raw/octos player assets/clothes/Trench coat.gif`},{id:`clothes-white-kimono`,name:`White Kimono`,slot:`clothes`,rarity:`common`,price:320,stats:`Pure arts: homing + freeze + crit`,statMods:{armor:.3},huntMods:{homing:1,freeze:1,critChance:.04},key:`clothes-white-kimono`,frames:16,framePath:`./assets/generated/clothes/white-kimono/frame_00.png`,path:`./assets/raw/octos player assets/clothes/White kimono.gif`}],pe=[{id:`boost-bottle`,name:`Bottle`,slot:`boost`,rarity:`common`,price:270,stats:`Throw: split + bounce`,statMods:{gemValue:.04},huntMods:{split:1,bounce:1},key:`boost-bottle`,path:`./assets/raw/octos player assets/Throwables/Bottle.png`},{id:`boost-btc-bag`,name:`Btc Bag`,slot:`boost`,rarity:`uncommon`,price:690,stats:`Crypto gains: gem pulse + chain + magnet`,statMods:{gemValue:.13},huntMods:{gemPulse:1,chain:1,magnetRange:1.08},key:`boost-btc-bag`,path:`./assets/raw/octos player assets/Throwables/BTC bag.png`},{id:`boost-btc-earring`,name:`Btc Earring`,slot:`boost`,rarity:`uncommon`,price:720,stats:`Signal boost: chain + gem pulse + crit`,statMods:{gemValue:.13},huntMods:{chain:1,gemPulse:1,critChance:.06},key:`boost-btc-earring`,path:`./assets/raw/octos player assets/Throwables/BTC earring.png`},{id:`boost-bubble-gum`,name:`Bubble Gum`,slot:`boost`,rarity:`common`,price:370,stats:`Sticky: bounce + homing`,statMods:{gemValue:.04},huntMods:{bounce:1,homing:1},key:`boost-bubble-gum`,path:`./assets/raw/octos player assets/Throwables/Bubble gum.png`},{id:`boost-burger`,name:`Burger`,slot:`boost`,rarity:`common`,price:270,stats:`Power meal: maxHP + damage`,statMods:{gemValue:.04},huntMods:{maxHp:1,damageBonus:1},key:`boost-burger`,path:`./assets/raw/octos player assets/Throwables/Burger.png`},{id:`boost-cigar`,name:`Cigar`,slot:`boost`,rarity:`common`,price:305,stats:`Smoke screen: fear + lump of coal`,statMods:{gemValue:.04},huntMods:{fear:1,lumpOfCoal:1},key:`boost-cigar`,path:`./assets/raw/octos player assets/Throwables/Cigar.png`},{id:`boost-cigarette`,name:`Cigarette`,slot:`boost`,rarity:`common`,price:335,stats:`Toxic cloud: poison + contagion`,statMods:{gemValue:.04},huntMods:{poison:1,contagion:1},key:`boost-cigarette`,path:`./assets/raw/octos player assets/Throwables/Cigarette.png`},{id:`boost-coffee`,name:`Coffee`,slot:`boost`,rarity:`common`,price:465,stats:`Caffeinated: fire rate + speed + backblast`,statMods:{swimSpeed:.08,idleEfficiency:-.02},huntMods:{fireDelay:.88,swimSpeed:1.08,backblast:1},key:`boost-coffee`,path:`./assets/raw/octos player assets/Throwables/Coffee.png`},{id:`boost-dimond-earring`,name:`Dimond Earring`,slot:`boost`,rarity:`rare`,price:1090,stats:`Prismatic: prism fork + crit + gem pulse`,statMods:{gemValue:.16},huntMods:{prismFork:1,critChance:.08,gemPulse:1},key:`boost-dimond-earring`,path:`./assets/raw/octos player assets/Throwables/Dimond earring.png`},{id:`boost-gold-earring`,name:`Gold Earring`,slot:`boost`,rarity:`rare`,price:1295,stats:`Treasure: gem pulse + chain + magnet + crit`,statMods:{gemValue:.16,luck:.12},huntMods:{gemPulse:1,chain:1,magnetRange:1.1,critChance:.06},key:`boost-gold-earring`,path:`./assets/raw/octos player assets/Throwables/Gold earring.png`},{id:`boost-hook`,name:`Hook`,slot:`boost`,rarity:`common`,price:415,stats:`Grapple: homing + pierce + magnet`,statMods:{gemValue:.04,magnetRange:.06},huntMods:{homing:1,pierce:1,magnetRange:1.06},key:`boost-hook`,path:`./assets/raw/octos player assets/Throwables/Hook.png`},{id:`boost-ink-drink`,name:`Ink Drink`,slot:`boost`,rarity:`common`,price:370,stats:`Ink surge: extra projectile + spiral`,statMods:{gemValue:.04},huntMods:{extraProjectiles:1,spiral:1},key:`boost-ink-drink`,path:`./assets/raw/octos player assets/Throwables/Ink drink.png`},{id:`boost-juice-box`,name:`Juice Box`,slot:`boost`,rarity:`common`,price:270,stats:`Energy: fire rate + speed`,statMods:{gemValue:.04},huntMods:{fireDelay:.94,swimSpeed:1.04},key:`boost-juice-box`,path:`./assets/raw/octos player assets/Throwables/Juice box.png`},{id:`boost-katana`,name:`Katana`,slot:`boost`,rarity:`rare`,price:1105,stats:`Sharp ink: pierce + damage + lump of coal`,statMods:{damage:.16,gemValue:.04},huntMods:{pierce:2,damageBonus:1,lumpOfCoal:1},key:`boost-katana`,path:`./assets/raw/octos player assets/Throwables/Katana.png`},{id:`boost-lipstick`,name:`Lipstick`,slot:`boost`,rarity:`common`,price:335,stats:`Charm: homing + freeze`,statMods:{gemValue:.04},huntMods:{homing:1,freeze:1},key:`boost-lipstick`,path:`./assets/raw/octos player assets/Throwables/Lipstick.png`},{id:`boost-martini`,name:`Martini`,slot:`boost`,rarity:`common`,price:370,stats:`Shaken: wiggle + crit + bounce`,statMods:{gemValue:.04},huntMods:{wiggle:1,critChance:.04,bounce:1},key:`boost-martini`,path:`./assets/raw/octos player assets/Throwables/Martini.png`},{id:`boost-mustache`,name:`Mustache`,slot:`boost`,rarity:`common`,price:270,stats:`Distinguished: lump of coal + shot speed`,statMods:{gemValue:.04},huntMods:{lumpOfCoal:1,shotSpeed:1.06},key:`boost-mustache`,path:`./assets/raw/octos player assets/Throwables/Mustache.png`},{id:`boost-nunchucks`,name:`Nunchucks`,slot:`boost`,rarity:`rare`,price:1105,stats:`Whirling ink: orbit + bounce + spin + broadside`,statMods:{damage:.12,swimSpeed:.04},huntMods:{orbit:1,bounce:1,spinPower:1,broadside:1},key:`boost-nunchucks`,path:`./assets/raw/octos player assets/Throwables/Nunchucks.png`},{id:`boost-old-watch`,name:`Old Watch`,slot:`boost`,rarity:`common`,price:335,stats:`Time slow: freeze + boomerang`,statMods:{gemValue:.04},huntMods:{freeze:1,boomerang:1},key:`boost-old-watch`,path:`./assets/raw/octos player assets/Throwables/Old watch.png`},{id:`boost-pipe`,name:`Pipe`,slot:`boost`,rarity:`common`,price:370,stats:`Smoke signals: fear + spectral`,statMods:{gemValue:.04},huntMods:{fear:1,spectral:1},key:`boost-pipe`,path:`./assets/raw/octos player assets/Throwables/Pipe.png`},{id:`boost-pizza-earring`,name:`Pizza Earring`,slot:`boost`,rarity:`common`,price:385,stats:`Hot delivery: fire rate + split`,statMods:{gemValue:.1},huntMods:{fireDelay:.94,split:1},key:`boost-pizza-earring`,path:`./assets/raw/octos player assets/Throwables/Pizza earring.png`},{id:`boost-shell-earring`,name:`Shell Earring`,slot:`boost`,rarity:`common`,price:495,stats:`Shell defense: guardian + orbit + magnet`,statMods:{gemValue:.1,magnetRange:.06},huntMods:{guardianCharges:1,orbit:1,magnetRange:1.06},key:`boost-shell-earring`,path:`./assets/raw/octos player assets/Throwables/Shell earring.png`},{id:`boost-sword`,name:`Sword`,slot:`boost`,rarity:`common`,price:335,stats:`Slash: pierce + damage + spin`,statMods:{gemValue:.04},huntMods:{pierce:1,damageBonus:1,spinPower:1},key:`boost-sword`,path:`./assets/raw/octos player assets/Throwables/Sword.png`},{id:`boost-trident`,name:`Trident`,slot:`boost`,rarity:`common`,price:370,stats:`Trident throw: split + pierce + chain`,statMods:{gemValue:.04},huntMods:{split:1,pierce:1,chain:1},key:`boost-trident`,path:`./assets/raw/octos player assets/Throwables/Trident.png`}],me=[{id:`legendary-1`,name:`Blitz`,slot:`legendary`,rarity:`legendary`,price:4530,stats:`Current Blitz: Speed +0.26x, Magnet +0.10x, rapid backblast`,statMods:{swimSpeed:.26,magnetRange:.1,damage:.08,armor:.4,idleEfficiency:.1},huntMods:{family:`current`,swimSpeed:1.22,fireDelay:.88,backblast:2,wakeTrail:2,bounce:1},key:`legendary-1`,frames:15,framePath:`./assets/generated/legendaries/1/frame_00.png`,path:`./assets/raw/octos player assets/legendaries /1.gif`},{id:`legendary-10`,name:`OctoGlyphs`,slot:`legendary`,rarity:`legendary`,price:4560,stats:`OctoGlyphs: balanced stats, every family gets a spark`,statMods:{swimSpeed:.12,magnetRange:.12,gemValue:.12,luck:.12,damage:.12,armor:1,idleEfficiency:.12},huntMods:{family:`tide`,extraProjectiles:1,orbit:1,poison:1,gemPulse:1,guardianCharges:1,critChance:.08},key:`legendary-10`,frames:15,framePath:`./assets/generated/legendaries/10/frame_00.png`,path:`./assets/raw/octos player assets/legendaries /10.gif`},{id:`legendary-2`,name:`Juggernaut`,slot:`legendary`,rarity:`legendary`,price:4590,stats:`Juggernaut: Armor +2.0, Damage +0.12x, slower swim`,statMods:{armor:2,damage:.12,swimSpeed:-.05,idleEfficiency:.08},huntMods:{family:`shell`,maxHp:3,guardianCharges:2,spinPower:2,inkMines:1},key:`legendary-2`,frames:15,framePath:`./assets/generated/legendaries/2/frame_00.png`,path:`./assets/raw/octos player assets/legendaries /2.gif`},{id:`legendary-3`,name:`Black Hole`,slot:`legendary`,rarity:`legendary`,price:4625,stats:`Black Hole: Magnet +0.32x, Gem Value +0.10x, vacuum pulses`,statMods:{magnetRange:.32,gemValue:.1,luck:.08,armor:.6},huntMods:{family:`abyss`,magnetRange:1.35,gemPulse:2,contagion:1,poison:1},key:`legendary-3`,frames:15,framePath:`./assets/generated/legendaries/3/frame_00.png`,path:`./assets/raw/octos player assets/legendaries /3.gif`},{id:`legendary-4`,name:`Chain Storm`,slot:`legendary`,rarity:`legendary`,price:4530,stats:`Chain Storm: Luck +0.16x, chain lightning kills`,statMods:{luck:.16,damage:.08,magnetRange:.1,idleEfficiency:.1},huntMods:{family:`prism`,chain:2,prismFork:1,critChance:.12,gemPulse:1},key:`legendary-4`,frames:15,framePath:`./assets/generated/legendaries/4/frame_00.png`,path:`./assets/raw/octos player assets/legendaries /4.gif`},{id:`legendary-5`,name:`Fortress`,slot:`legendary`,rarity:`legendary`,price:4560,stats:`Fortress: Armor +1.6, mines and guardian orbit`,statMods:{armor:1.6,damage:.06,gemValue:.08,swimSpeed:-.03},huntMods:{family:`shell`,maxHp:2,inkMines:2,orbit:1,freeze:1},key:`legendary-5`,frames:15,framePath:`./assets/generated/legendaries/5/frame_00.png`,path:`./assets/raw/octos player assets/legendaries /5.gif`},{id:`legendary-6`,name:`Evolver`,slot:`legendary`,rarity:`legendary`,price:4590,stats:`Evolver: Idle +0.25x, Luck +0.12x, faster leveling`,statMods:{idleEfficiency:.25,luck:.12,gemValue:.1,magnetRange:.08},huntMods:{family:`prism`,nextXpMult:.8,gemPulse:1,homing:1,luckBonus:.15},key:`legendary-6`,frames:15,framePath:`./assets/generated/legendaries/6/frame_00.png`,path:`./assets/raw/octos player assets/legendaries /6.gif`},{id:`legendary-7`,name:`Glass Cannon`,slot:`legendary`,rarity:`legendary`,price:4625,stats:`Glass Cannon: Damage +0.30x, Speed +0.10x, Armor -0.4`,statMods:{damage:.3,swimSpeed:.1,armor:-.4,luck:.06},huntMods:{family:`inkstorm`,damageBonus:3,fireDelay:.82,broadside:2,maxHp:-1},key:`legendary-7`,frames:15,framePath:`./assets/generated/legendaries/7/frame_00.png`,path:`./assets/raw/octos player assets/legendaries /7.gif`},{id:`legendary-8`,name:`Jackpot`,slot:`legendary`,rarity:`legendary`,price:4530,stats:`Jackpot: Gem Value +0.30x, Luck +0.18x, prism crit economy`,statMods:{gemValue:.3,luck:.18,magnetRange:.12,idleEfficiency:.08},huntMods:{family:`prism`,critChance:.18,gemPulse:2,prismFork:1,nextXpMult:.88},key:`legendary-8`,frames:15,framePath:`./assets/generated/legendaries/8/frame_00.png`,path:`./assets/raw/octos player assets/legendaries /8.gif`},{id:`legendary-9`,name:`Bullet Hell`,slot:`legendary`,rarity:`legendary`,price:4560,stats:`Bullet Hell: Damage +0.14x, many shots, faster firing`,statMods:{damage:.14,swimSpeed:.06,luck:.08,armor:.5},huntMods:{family:`inkstorm`,extraProjectiles:2,broadside:2,fireDelay:.84,shotSpeed:1.12},key:`legendary-9`,frames:15,framePath:`./assets/generated/legendaries/9/frame_00.png`,path:`./assets/raw/octos player assets/legendaries /9.gif`}],he=[{id:`halloween-holloween1`,name:`Holloween1`,slot:`halloween`,rarity:`event`,price:1890,stats:`Spooky: fear + contagion + poison`,statMods:{damage:.1,luck:.08},huntMods:{fear:1,contagion:1,poison:1},key:`halloween-holloween1`,frames:8,framePath:`./assets/generated/halloween-bodies/holloween1/frame_00.png`,path:`./assets/raw/Halloween assets/halloween bodies/Holloween1.gif`},{id:`halloween-holloween2`,name:`Holloween2`,slot:`halloween`,rarity:`event`,price:1920,stats:`Ghostly: spectral + homing + fear`,statMods:{damage:.1,luck:.08},huntMods:{spectral:1,homing:1,fear:1},key:`halloween-holloween2`,frames:8,framePath:`./assets/generated/halloween-bodies/holloween2/frame_00.png`,path:`./assets/raw/Halloween assets/halloween bodies/Holloween2.gif`},{id:`halloween-holloween3`,name:`Holloween3`,slot:`halloween`,rarity:`event`,price:1950,stats:`Cursed: chain + freeze + spiral`,statMods:{damage:.1,luck:.08},huntMods:{chain:1,freeze:1,spiral:1},key:`halloween-holloween3`,frames:8,framePath:`./assets/generated/halloween-bodies/holloween3/frame_00.png`,path:`./assets/raw/Halloween assets/halloween bodies/Holloween3.gif`},{id:`halloween-holloween4`,name:`Holloween4`,slot:`halloween`,rarity:`event`,price:1985,stats:`Nightmare: lump of coal + contagion + broadside`,statMods:{damage:.1,luck:.08},huntMods:{lumpOfCoal:1,contagion:1,broadside:1},key:`halloween-holloween4`,frames:8,framePath:`./assets/generated/halloween-bodies/holloween4/frame_00.png`,path:`./assets/raw/Halloween assets/halloween bodies/Holloween4.gif`}],ge=[...le,...ue,...de,...fe,...pe],_e=[...me,...he],ve=[...ge,..._e],ye=[`body-blue`,`eyes-regular`],be=ge.filter(e=>e.price>0&&e.rarity!==`starter`);function xe(e){return ve.find(t=>t.id===e)||null}function Se(e,t){return e.replace(`frame_00.png`,`frame_${String(t).padStart(2,`0`)}.png`)}function Ce(e){for(let t of Object.values(ie)){for(let n=0;n<t.frames;n+=1)e.load.image(`${t.key}-${n}`,Se(t.framePath,n));e.load.image(t.key,t.framePath)}let t=new Set;for(let n of Object.values(ae))if(!t.has(n.key)){t.add(n.key);for(let t=0;t<n.frames;t+=1)e.load.image(`${n.key}-${t}`,Se(n.framePath,t))}for(let t=0;t<oe.frames;t+=1)e.load.image(`${oe.key}-${t}`,Se(oe.framePath,t));for(let t of se){for(let n=0;n<t.frames;n+=1)e.load.image(`${t.key}-${n}`,Se(t.framePath,n));e.load.image(t.key,t.framePath)}for(let t of ve){if(t.frames&&t.framePath)for(let n=0;n<t.frames;n+=1)e.load.image(`${t.key}-${n}`,Se(t.framePath,n));e.load.image(t.key,t.framePath||t.path)}e.load.image(`tank-bg`,`./assets/raw/Backgrounds/shallow1.webp`),e.load.image(`ocean-bg`,`./assets/raw/Backgrounds/deep1.webp`);for(let t of[{key:`tank-enemy-jelly`,frames:4,framePath:`./assets/generated/tank-enemies/tank-enemy-jelly/frame_00.png`},{key:`tank-enemy-eel`,frames:12,framePath:`./assets/generated/tank-enemies/tank-enemy-eel/frame_00.png`},{key:`tank-enemy-fish`,frames:8,framePath:`./assets/generated/tank-enemies/tank-enemy-fish/frame_00.png`},{key:`tank-enemy-enemi1`,frames:8,framePath:`./assets/generated/tank-enemies/tank-enemy-enemi1/frame_00.png`},{key:`tank-enemy-enemi2`,frames:8,framePath:`./assets/generated/tank-enemies/tank-enemy-enemi2/frame_00.png`},{key:`tank-enemy-enemi3`,frames:8,framePath:`./assets/generated/tank-enemies/tank-enemy-enemi3/frame_00.png`},{key:`tank-enemy-enemi4`,frames:8,framePath:`./assets/generated/tank-enemies/tank-enemy-enemi4/frame_00.png`},{key:`tank-enemy-enemi5`,frames:8,framePath:`./assets/generated/tank-enemies/tank-enemy-enemi5/frame_00.png`},{key:`tank-enemy-enemi1112`,frames:3,framePath:`./assets/generated/tank-enemies/tank-enemy-enemi1112/frame_00.png`},{key:`tank-enemy-enemi112`,frames:8,framePath:`./assets/generated/tank-enemies/tank-enemy-enemi112/frame_00.png`},{key:`tank-enemy-enemi1132`,frames:8,framePath:`./assets/generated/tank-enemies/tank-enemy-enemi1132/frame_00.png`},{key:`tank-enemy-enemi1142`,frames:8,framePath:`./assets/generated/tank-enemies/tank-enemy-enemi1142/frame_00.png`},{key:`tank-enemy-narval`,frames:5,framePath:`./assets/generated/tank-enemies/tank-boss-enemynarval/frame_00.png`},{key:`tank-enemy-shark`,frames:4,framePath:`./assets/generated/tank-enemies/tank-boss-enemyshark/frame_00.png`},{key:`tank-enemy-whale`,frames:5,framePath:`./assets/generated/tank-enemies/tank-boss-enemywhale/frame_00.png`},{key:`tank-boss-blue-shark`,frames:4,framePath:`./assets/generated/tank-enemies/tank-boss-blue-shark/frame_00.png`},{key:`tank-boss-red-shark`,frames:12,framePath:`./assets/generated/tank-enemies/tank-boss-red-shark/frame_00.png`},{key:`tank-boss-mummy-shark`,frames:13,framePath:`./assets/generated/tank-enemies/tank-boss-mummy-shark/frame_00.png`},{key:`tank-boss-halloween-small-1`,frames:20,framePath:`./assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_00.png`},{key:`tank-boss-halloween-small-2`,frames:16,framePath:`./assets/generated/tank-enemies/tank-boss-halloween-small-2/frame_00.png`}]){for(let n=0;n<t.frames;n+=1)e.load.image(`${t.key}-${n}`,Se(t.framePath,n));e.load.image(t.key,t.framePath)}e.load.image(`tank-bullet`,`./assets/raw/Bullets/normal.gif`),e.load.image(`tank-bullet-toxic`,`./assets/raw/Bullets/toxic.gif`),e.load.image(`tank-bullet-fire`,`./assets/raw/Bullets/fire.gif`),e.load.image(`tank-bullet-ice`,`./assets/raw/Bullets/iceink.gif`),e.load.image(`tank-bullet-electric`,`./assets/raw/Bullets/electric.gif`),e.load.image(`tank-bullet-ink`,`./assets/raw/Bullets/inkbullet (1).gif`)}var we=[{key:`bg-shallow-1`,file:`shallow1.webp`,depth:`shallow`},{key:`bg-deep-1`,file:`deep1.webp`,depth:`deep`}],Te=[{key:`music-octosong-1`,file:`octosong1.ogg`},{key:`music-octosong-5`,file:`octosong5.ogg`}];function Ee(e){return`./assets/raw/Backgrounds/${e}`}function De(e){return`./assets/raw/music/${e}`}function Oe(e=0){return we[Math.min(Math.max(0,e||0),we.length-1)]||we[0]}var ke=class extends ne{constructor(){super(`BootScene`)}preload(){Ce(this);for(let e of we)this.load.image(e.key,Ee(e.file));for(let e of Te)this.load.audio(e.key,De(e.file));this.load.image(`audio-icon-mute`,`./assets/raw/music/mute.png`),this.load.image(`audio-icon-unmute`,`./assets/raw/music/unmute.png`)}create(){this.scene.start(`IncubationScene`),this.scene.launch(`UIScene`)}},Ae=[{id:`pirate-king`,name:`⚓ Pirate King`,items:[`hat-pirate-hat`,`clothes-pirate-outfit`,`eyes-eye-patch`],bonus:{gemPulse:1,broadside:1,critChance:.06},statBonus:{gemValue:.12,luck:.06},desc:`Full pirate set: every gem haul feeds broadside plunder volleys`,color:`#ffcc00`},{id:`full-metal`,name:`🛡️ Full Metal`,items:[`body-metal`,`hat-military-helmet`,`clothes-trench-coat`],bonus:{maxHp:2,guardianCharges:1,spinPower:1},statBonus:{armor:.55},desc:`Iron wall: starts tougher and retaliates when enemies get close`,color:`#8899aa`},{id:`speed-demon`,name:`⚡ Speed Demon`,items:[`body-aqua`,`hat-propeller-hat`,`boost-coffee`],bonus:{swimSpeed:1.18,wakeTrail:1,fireDelay:.92},statBonus:{swimSpeed:.1},desc:`Blazing speed: wake damage scales from constant motion`,color:`#44ddff`},{id:`tech-lord`,name:`🔧 Tech Lord`,items:[`hat-circuit-board-crown`,`eyes-vr-goggles`,`body-deathbot`],bonus:{chain:1,homing:1,inkMines:1},statBonus:{damage:.08,magnetRange:.06},desc:`Machine mind: periodic smart chain shots and mine support`,color:`#00ff88`},{id:`ninja`,name:`🥷 Ninja`,items:[`clothes-black-kimono`,`hat-black-bandana`,`boost-katana`],bonus:{pierce:1,fear:1,critChance:.1,swimSpeed:1.08},statBonus:{damage:.08,swimSpeed:.06},desc:`Silent killer: fast piercing crits that make enemies panic`,color:`#333333`},{id:`berserker`,name:`🔥 Berserker`,items:[`body-magma`,`hat-red-lazer-eyes`,`boost-nunchucks`],bonus:{damageBonus:2,lumpOfCoal:1,orbit:1},statBonus:{damage:.1},desc:`Volcanic rage: growing bullets and close-range whirling damage`,color:`#ff4422`},{id:`clown-fiesta`,name:`🤡 Clown Fiesta`,items:[`hat-clown-hair`,`eyes-crazy-eyes`,`boost-martini`],bonus:{wiggle:1,bounce:1,split:1,extraProjectiles:1},statBonus:{luck:.08},desc:`Pure chaos: unreliable shots wiggle, bounce, and split`,color:`#ff88dd`},{id:`wizard`,name:`🧙 Archmage`,items:[`hat-wizard-hat`,`clothes-mage-robe`,`eyes-all-seeing`],bonus:{spectral:1,prismFork:1,chain:1},statBonus:{luck:.08,magnetRange:.06},desc:`Arcane mastery: critical shots fork into spectral chain shards`,color:`#9944ff`},{id:`scientist`,name:`🧪 Mad Science`,items:[`clothes-mad-scientist`,`body-acid`,`eyes-evil`],bonus:{contagion:1,poison:1,spiral:1},statBonus:{damage:.06},desc:`Toxic lab: poison spreads through controlled contagion spirals`,color:`#78ff69`},{id:`crypto-whale`,name:`🐳 Crypto Whale`,items:[`hat-crypto-crown`,`boost-btc-bag`,`body-gold`],bonus:{gemPulse:1,chain:1,critChance:.08,magnetRange:1.12},statBonus:{gemValue:.15,luck:.1},desc:`Diamond hands: economy build with gem pulses and crit chains`,color:`#ffd700`},{id:`zombie-apocalypse`,name:`🧟 Zombie Apocalypse`,items:[`body-zombie`,`hat-devil-horns`,`eyes-evil`],bonus:{poison:1,fear:1,contagion:1,spectral:1},statBonus:{damage:.08},desc:`Undead army: poison spreads while frightened enemies scatter`,color:`#44aa33`},{id:`fortune-teller`,name:`🔮 Fortune Teller`,items:[`eyes-all-seeing`,`hat-halo`,`boost-old-watch`],bonus:{homing:1,boomerang:1,freeze:1,nextXpMult:.9},statBonus:{luck:.08},desc:`See the future: returning shots bend toward targets and chill them`,color:`#cc88ff`},{id:`bullet-storm`,name:`🌀 Bullet Storm`,items:[`body-orange`,`hat-wild-hair`,`boost-ink-drink`],bonus:{extraProjectiles:1,spiral:1,fireDelay:.92},statBonus:{damage:.06},desc:`Wall of ink: denser fire pattern without full endgame spam`,color:`#ff8844`},{id:`ice-fortress`,name:`❄️ Ice Fortress`,items:[`body-gray`,`hat-blue-bandana`,`clothes-rain-coat`],bonus:{freeze:1,guardianCharges:2,maxHp:1},statBonus:{armor:.55},desc:`Frozen defense: frost shield and guardian charges buy survival time`,color:`#88ccff`},{id:`shadow-assassin`,name:`🌙 Shadow Assassin`,items:[`body-midnight`,`hat-encryption-hair`,`eyes-sleeping`],bonus:{spectral:1,fear:1,critChance:.1,homing:1},statBonus:{damage:.08,swimSpeed:.05},desc:`Phantom strikes: spectral crit shots bend from the shadows`,color:`#6633aa`}],je=[{id:`theme-toxic`,name:`☣️ Venom Brewer`,themeKeys:[`poison`,`contagion`],threshold:3,bonus:{poison:1,contagion:1,damageBonus:1},statBonus:{damage:.04},desc:`Stack toxic traits to make poison spread harder`,color:`#78ff69`},{id:`theme-smart-shot`,name:`🎯 Smart Shot`,themeKeys:[`homing`,`chain`,`prismFork`],threshold:3,bonus:{homing:1,chain:1,shotSpeed:1.06},statBonus:{magnetRange:.04},desc:`Guided shots learn to chain through crowds`,color:`#66ccff`},{id:`theme-fortress`,name:`🏰 Reef Fortress`,themeKeys:[`guardianCharges`,`maxHp`,`freeze`,`spinPower`],threshold:3,bonus:{guardianCharges:1,maxHp:1,freeze:1},statBonus:{armor:.35},desc:`Defensive traits harden into a survival shell`,color:`#88ccff`},{id:`theme-treasure`,name:`💎 Gem Resonance`,themeKeys:[`gemPulse`,`magnetRange`,`luckBonus`],threshold:3,bonus:{gemPulse:1,magnetRange:1.12,critChance:.03},statBonus:{gemValue:.08,luck:.04},desc:`Collector traits make gems pull harder and pay better`,color:`#ffd700`},{id:`theme-ghost`,name:`👻 Ghost Current`,themeKeys:[`spectral`,`fear`,`boomerang`],threshold:3,bonus:{spectral:1,fear:1,boomerang:1},statBonus:{swimSpeed:.04},desc:`Spooky traits make ink return from impossible angles`,color:`#aa77ff`},{id:`theme-chaos`,name:`🎪 Chaos Ink`,themeKeys:[`bounce`,`split`,`wiggle`,`extraProjectiles`,`spiral`],threshold:3,bonus:{bounce:1,split:1,wiggle:1},statBonus:{luck:.05},desc:`Unstable traits turn shots into a messy carnival`,color:`#ff88dd`},{id:`theme-artillery`,name:`🚀 Broadside Battery`,themeKeys:[`broadside`,`damageBonus`,`lumpOfCoal`,`inkMines`,`backblast`],threshold:3,bonus:{broadside:1,damageBonus:1,inkMines:1},statBonus:{damage:.06},desc:`Heavy traits add side volleys, mines, and harder hits`,color:`#ff8844`}],Me=[...Ae,...je],Ne=[{id:`toxic-ricochet`,name:`Toxic Ricochet`,keys:[`poison`,`bounce`],bullet:{poisonPuddleOnBounce:!0},desc:`Poison shots leave venom puddles when they bounce`},{id:`venom-lock`,name:`Venom Lock-On`,keys:[`poison`,`homing`],bullet:{venomLockOn:!0},desc:`Poisoned enemies pull guided shots toward them`},{id:`spore-split`,name:`Spore Split`,keys:[`poison`,`split`],bullet:{sporeSplit:!0},desc:`Split shots become smaller poison spores`},{id:`plague-chain`,name:`Plague Chain`,keys:[`poison`,`contagion`],run:{plagueChain:!0},desc:`Poison kills spread plague harder`},{id:`frost-lance`,name:`Frost Lance`,keys:[`freeze`,`pierce`],bullet:{frostLance:!0},desc:`Piercing frost bullets leave a slowing wake`},{id:`ice-ring`,name:`Ice Ring`,keys:[`freeze`,`orbit`],run:{iceRing:!0},desc:`Orbiters chill nearby enemies`},{id:`haunted-return`,name:`Haunted Return`,keys:[`fear`,`boomerang`],bullet:{hauntedReturn:!0},desc:`Returning shots bite through fleeing enemies`},{id:`smart-chain`,name:`Smart Chain`,keys:[`homing`,`chain`],bullet:{smartChain:!0},desc:`Chain jumps acquire smarter targets`},{id:`seeker-prism`,name:`Seeker Prism`,keys:[`homing`,`prismFork`],bullet:{seekerPrism:!0},desc:`Prism fork shards seek independently`},{id:`coal-cannon`,name:`Coal Cannon`,keys:[`broadside`,`lumpOfCoal`],bullet:{coalCannon:!0},desc:`Broadside cannons grow stronger with distance`},{id:`mine-broadside`,name:`Mine Broadside`,keys:[`broadside`,`inkMines`],bullet:{mineBroadside:!0},desc:`Side volleys drop delayed mines`},{id:`golden-prism`,name:`Golden Prism`,keys:[`gemPulse`,`prismFork`],run:{goldenPrism:!0},desc:`Gem pulses fling golden prism shards`},{id:`collector-beam`,name:`Collector Beam`,keys:[`gemPulse`,`magnetRange`],bullet:{collectorBeam:!0},desc:`Bullets vacuum rewards as they travel`},{id:`chaos-shrapnel`,name:`Chaos Shrapnel`,keys:[`bounce`,`split`,`wiggle`],bullet:{chaosShrapnel:!0},desc:`Bouncing split shots become wild shrapnel`},{id:`spectral-chain`,name:`Spectral Chain`,keys:[`spectral`,`chain`],bullet:{spectralChain:!0},desc:`Chain shots phase through crowds`},{id:`black-ice`,name:`Black Ice`,keys:[`freeze`,`fear`],bullet:{blackIce:!0},desc:`Frozen enemies panic after thawing`}],Pe=new Map(ve.map(e=>[e.id,e]));function Fe(e,t){let n=new Set(e.themeKeys||[]);return n.size===0?[]:t.filter(Boolean).filter(e=>{let t=Pe.get(e);return t?.huntMods?Object.keys(t.huntMods).some(e=>n.has(e)):!1})}function Ie(e){let t=e.filter(Boolean),n=new Set(t),r=[],i=[];for(let e of Me){if(e.items){let t=e.items.filter(e=>n.has(e));t.length===e.items.length?r.push(e):t.length>0&&i.push({synergy:e,have:t.length,need:e.items.length});continue}let a=Fe(e,t),o=e.threshold||3;a.length>=o?r.push(e):a.length>0&&i.push({synergy:e,have:a.length,need:o})}return{active:r,partial:i}}function Le(e){let t={};for(let n of e)for(let[e,r]of Object.entries(n.bonus))e!==`family`&&([`swimSpeed`,`magnetRange`,`fireDelay`,`shotSpeed`,`shotLifetime`,`nextXpMult`].includes(e)?t[e]=(t[e]||1)*r:t[e]=(t[e]||0)+r);return t}function Re(e){let t={};for(let n of e)if(n.statBonus)for(let[e,r]of Object.entries(n.statBonus))t[e]=(t[e]||0)+r;return t}function ze(e){let t={};for(let n of e.filter(Boolean)){let e=Pe.get(n);if(e?.huntMods)for(let[n,r]of Object.entries(e.huntMods))n===`family`||!r||(t[n]=(t[n]||0)+1)}return t}function Be(e){return Ne.filter(t=>t.keys.every(t=>(e[t]||0)>0))}var Ve={swimSpeed:1,magnetRange:1,gemValue:1,luck:1,damage:1,armor:0,idleEfficiency:1},He={swimSpeed:`Swim Speed`,magnetRange:`Magnet`,gemValue:`Gem Value`,luck:`Luck`,damage:`Damage`,armor:`Armor`,idleEfficiency:`Idle Efficiency`},Ue=[`swimSpeed`,`magnetRange`,`gemValue`,`luck`,`damage`,`armor`,`idleEfficiency`];function We(e){let t={...Ve};for(let n of e)if(n?.statMods)for(let[e,r]of Object.entries(n.statMods))t[e]=Number((t[e]||0)+Number(r||0));return t.swimSpeed=Math.max(.55,t.swimSpeed),t.magnetRange=Math.max(.5,t.magnetRange),t.gemValue=Math.max(.5,t.gemValue),t.luck=Math.max(.5,t.luck),t.damage=Math.max(.5,t.damage),t.armor=Math.max(0,t.armor),t.idleEfficiency=Math.max(.5,t.idleEfficiency),t}function Ge(e,t){let n=[];for(let r of Ue){let i=Number(e?.[r]||0),a=Number(t?.[r]||0),o=Number((a-i).toFixed(2));if(!o)continue;let s=He[r]||r,c=o>0?`+`:``,l=r===`armor`?``:`x`;n.push({key:r,label:s,delta:o,direction:o>0?`up`:`down`,text:`${s} ${c}${o.toFixed(r===`armor`?1:2)}${l}`})}return n}function Ke(e){return[`Speed ${e.swimSpeed.toFixed(2)}x`,`Magnet ${e.magnetRange.toFixed(2)}x`,`Gem ${e.gemValue.toFixed(2)}x`,`Luck ${e.luck.toFixed(2)}x`,`Idle ${e.idleEfficiency.toFixed(2)}x`,`Armor ${e.armor.toFixed(1)}`].join(` · `)}var qe=`octoglyphs.save.v1`,Je=[`primordial.save.v1`];function Ye(){return{wallet:{green:0,blue:0,yellow:0,pink:0,silver:0},unlocked:[...ye],discovered:[...ye],loadout:{...ce,legendary:null},lifetime:{prompts:0,chunks:0,tokens:0,manualTraitsCollected:0,tankHuntCharges:5,commits:0},ftue:{welcome:!1,firstGem:!1,firstTrait:!1,firstShopOpen:!1,firstBuy:!1,firstLoadout:!1,firstHuntStart:!1,firstHuntDeath:!1,firstEvolve:!1,allDone:!1}}}function Xe(){try{let e=localStorage.getItem(qe)||Je.map(e=>localStorage.getItem(e)).find(Boolean),t=JSON.parse(e||`null`),n=Ye();return!t||typeof t!=`object`?n:{wallet:{...n.wallet,...t.wallet||{}},unlocked:Array.from(new Set([...t.unlocked||[],...ye])),discovered:Array.from(new Set([...t.discovered||t.unlocked||[],...ye])),loadout:{...n.loadout,...t.loadout||{}},lifetime:{...n.lifetime,...t.lifetime||{}},ftue:{...n.ftue,...t.ftue||{}}}}catch{return Ye()}}function Ze(e){localStorage.setItem(qe,JSON.stringify(e))}function Qe(e){return Object.values(e.wallet).reduce((e,t)=>e+Number(t||0),0)}function $e(e,t){return Qe(e)>=t}function et(e,t){let n=t;for(let t of[`silver`,`pink`,`yellow`,`blue`,`green`]){let r=Number(e.wallet[t]||0),i=Math.min(r,n);if(e.wallet[t]=r-i,n-=i,n<=0)return!0}return!1}function tt(e,t,n){e.wallet[t]=Number(e.wallet[t]||0)+n}function nt(e,t){e.discovered||=[],e.discovered.includes(t)||e.discovered.push(t)}function rt(e,t){nt(e,t),e.unlocked.includes(t)||e.unlocked.push(t)}function it(e,t){return e.unlocked.includes(t)}function at(e,t){let n=xe(t);return!n||!it(e,t)?!1:(e.loadout[n.slot]=t,!0)}function ot(e,t){return!e?.loadout||!(t in e.loadout)||t===`body`||t===`eyes`||!e.loadout[t]?!1:(e.loadout[t]=null,!0)}function st(e,t){let n=ge.find(e=>e.id===t);return n?it(e,t)?{success:!1,message:`Already unlocked.`}:e.discovered?.includes(t)?$e(e,n.price)?(et(e,n.price),rt(e,t),at(e,t),{success:!0,message:`${n.name} unlocked and equipped.`}):{success:!1,message:`Need more Data Gems.`}:{success:!1,message:`Discover this trait in the tank first.`}:{success:!1,message:`Unknown asset.`}}function ct(e,t){return ve.filter(n=>n.slot===t&&it(e,n.id)).sort((e,t)=>e.name.localeCompare(t.name))}function lt(e,t){let n=xe(t);return dt(n?{...e,loadout:{...e.loadout,[n.slot]:n.id}}:e)}function ut(e){return Object.values(e.loadout).filter(Boolean).map(xe).filter(Boolean)}function dt(e){let t=ut(e),n=We(t),{active:r}=Ie(t.map(e=>e.id));if(r.length>0){let e=Re(r);for(let[t,r]of Object.entries(e))n[t]=(n[t]||0)+r}return n}var ft=[`common`,`uncommon`,`rare`,`legendary`],pt={common:50,uncommon:150,rare:400},mt={eyes:[`hat`,`boost`],clothes:[`hat`,`body`],boost:[`hat`,`body`]};function ht(e,t,n=!1){return e===`legendary`?`legendary forms`:n?e+` traits from compatible slots`:e+` `+t+` traits`}function gt(e,t,n){if(n===`legendary`)return{pool:_e.filter(t=>!e.unlocked.includes(t.id)),fallbackUsed:!1};let r=ge.filter(r=>r.slot===t&&r.rarity===n&&!e.unlocked.includes(r.id));if(r.length>0)return{pool:r,fallbackUsed:!1};let i=mt[t]||[],a=ge.filter(t=>i.includes(t.slot)&&t.rarity===n&&!e.unlocked.includes(t.id));return{pool:a,fallbackUsed:a.length>0}}function _t(e){let t=new Set(Object.values(e.loadout).filter(Boolean));return e.unlocked.map(xe).filter(Boolean).filter(e=>!t.has(e.id)&&ft.indexOf(e.rarity)>=0&&ft.indexOf(e.rarity)<ft.length-1)}function vt(e,t){if(t.length!==3)return{success:!1,message:`Select exactly 3 traits.`};let n=t.map(xe).filter(Boolean);if(n.length!==3)return{success:!1,message:`Invalid trait selection.`};let r=n[0].rarity;if(!n.every(e=>e.rarity===r))return{success:!1,message:`All 3 traits must be the same rarity.`};let i=n[0].slot;if(!n.every(e=>e.slot===i))return{success:!1,message:`All 3 traits must be from the same slot.`};let a=ft.indexOf(r);if(a<0||a>=ft.length-1)return{success:!1,message:`Cannot evolve this rarity.`};let o=new Set(Object.values(e.loadout).filter(Boolean));if(t.some(e=>o.has(e)))return{success:!1,message:`Cannot fuse equipped traits. Unequip first.`};let s=pt[r]||50;if(Qe(e)<s)return{success:!1,message:`Need `+s+` gems to fuse `+r+` traits.`};let c=ft[a+1],{pool:l,fallbackUsed:u}=gt(e,i,c);if(l.length===0)return{success:!1,message:`No unowned `+ht(c,i)+` available to evolve into.`};et(e,s);for(let n of t){let t=e.unlocked.indexOf(n);t>=0&&e.unlocked.splice(t,1)}let d=l[Math.floor(Math.random()*l.length)];rt(e,d.id);let f=c===`legendary`?`legendary form`:ht(c,i,u),p=u?` Your original slot pool was complete, so evolution used a compatible reward pool.`:``;return{success:!0,message:`Evolved into `+d.name+` (`+f+`)!`+p,result:d}}var yt={welcome:{title:`Welcome to OctoGlyphs`,body:`Your octopus feeds on your work. Every prompt you send generates Data Gems in the tank. Collect them to grow stronger.`,anchor:`game-root`,position:`center`,delay:800},firstGem:{title:`Data Gem!`,body:`You collected your first gem! Gems are currency — spend them in the Shop to unlock new traits, or save up for rare evolutions.`,anchor:`wallet-readout`,position:`above`,delay:300},firstTrait:{title:`Rare Trait Found!`,body:`Traits spawn during heavy work bursts. Your autopilot ignores them — you must manually guide your octo to collect rare drops before they despawn!`,anchor:`game-root`,position:`center`,delay:200},firstShopOpen:{title:`The Evolution Shop`,body:`Browse discovered traits here. Buy them with Data Gems to add them to your collection. Each trait has stats that affect your octo's abilities.`,anchor:`shop-panel`,position:`left`,delay:100},firstBuy:{title:`Trait Unlocked!`,body:`Nice! Purchased traits go straight to your loadout. Open Loadout to swap gear between slots and build your perfect octo.`,anchor:`loadout-toggle`,position:`below`,delay:300},firstLoadout:{title:`Build Your Octo`,body:`Equip traits to change your stats. Body sets your identity, eyes affect perception, hats grant abilities, clothes boost survivability.`,anchor:`loadout-panel`,position:`left`,delay:100},firstHuntStart:{title:`Tank Hunt!`,body:`Enemies incoming! Survive wave after wave. Your octo auto-fires at the nearest enemy. Collect XP to level up and choose mutations. Press SPACE for emergency ink burst.`,anchor:`game-root`,position:`center`,delay:500},firstHuntDeath:{title:`Welcome to the Loop`,body:`Death fuels growth. Your hunt gems are banked. Spend them in the Shop, upgrade your loadout, then hunt again — stronger each time.`,anchor:`wallet-readout`,position:`above`,delay:800},firstEvolve:{title:`Trait Evolution`,body:`Sacrifice 3 traits of the same rarity to create 1 trait of the next tier. Common → Uncommon → Rare → Legendary. Chase the rarest builds!`,anchor:`evolve-panel`,position:`left`,delay:100}},bt=null,xt=null;function St(){let e=document.getElementById(`ftue-tooltip`);return e||(e=document.createElement(`div`),e.id=`ftue-tooltip`,e.className=`ftue-tooltip`,e.innerHTML=`
103
+ <div class="ftue-tooltip-inner">
104
+ <h3 class="ftue-title"></h3>
105
+ <p class="ftue-body"></p>
106
+ <button class="ftue-dismiss">Got it</button>
107
+ </div>
108
+ `,document.getElementById(`panel-root`).appendChild(e),e.querySelector(`.ftue-dismiss`).addEventListener(`click`,()=>Tt()),e.addEventListener(`click`,t=>{t.target===e&&Tt()}),e)}function Ct(e,t){let n=document.getElementById(t.anchor);if(e.className=`ftue-tooltip ftue-pos-`+t.position,t.position===`center`||!n){e.style.top=``,e.style.left=``,e.style.right=``,e.style.bottom=``;return}let r=n.getBoundingClientRect();t.position===`above`?(e.style.left=r.left+`px`,e.style.top=r.top-10+`px`):t.position===`below`?(e.style.left=r.left+`px`,e.style.top=r.bottom+10+`px`):t.position===`left`&&(e.style.left=Math.max(10,r.left-320)+`px`,e.style.top=r.top+`px`)}function wt(e){let t=yt[e];if(!t)return;let n=St();n.querySelector(`.ftue-title`).textContent=t.title,n.querySelector(`.ftue-body`).textContent=t.body,Ct(n,t),n.classList.add(`ftue-visible`),bt=e}function Tt(){let e=document.getElementById(`ftue-tooltip`);e&&e.classList.remove(`ftue-visible`),clearTimeout(xt),bt=null}function Et(e,t){let n=t||Xe();if(n.ftue||={},n.ftue[e]||n.ftue.allDone)return;n.ftue[e]=!0,Object.keys(yt).every(e=>n.ftue[e])&&(n.ftue.allDone=!0),Ze(n);let r=yt[e];r&&(bt&&Tt(),setTimeout(()=>wt(e),r.delay))}var Dt=[[`green`,58],[`blue`,24],[`yellow`,12],[`pink`,5],[`silver`,1]],Ot=[{key:`tank-enemy-jelly`,hp:2,speed:82,scale:1.18,minWave:1,behavior:`wanderer`,facingOffset:-90,flipX:!1,frames:4,framePath:`./tank-enemy-jelly/frame_00.png`},{key:`tank-enemy-fish`,hp:3,speed:124,scale:1.28,minWave:2,behavior:`pouncer`,facingOffset:-90,flipX:!1,frames:8,framePath:`./tank-enemy-fish/frame_00.png`},{key:`tank-enemy-eel`,hp:4,speed:116,scale:1.2,minWave:3,behavior:`zigzag`,facingOffset:-90,flipX:!1,frames:12,framePath:`./tank-enemy-eel/frame_00.png`},{key:`tank-enemy-enemi1`,hp:3,speed:96,scale:.85,minWave:1,behavior:`drifter`,facingOffset:-90,flipX:!1,frames:8,framePath:`./tank-enemy-enemi1/frame_00.png`},{key:`tank-enemy-enemi2`,hp:4,speed:88,scale:.72,minWave:2,behavior:`herder`,facingOffset:-90,flipX:!1,frames:8,framePath:`./tank-enemy-enemi2/frame_00.png`},{key:`tank-enemy-enemi3`,hp:2,speed:134,scale:1,minWave:3,behavior:`pouncer`,facingOffset:-90,flipX:!1,frames:8,framePath:`./tank-enemy-enemi3/frame_00.png`},{key:`tank-enemy-enemi4`,hp:5,speed:72,scale:.92,minWave:4,behavior:`blocker`,facingOffset:-90,flipX:!1,frames:8,framePath:`./tank-enemy-enemi4/frame_00.png`},{key:`tank-enemy-enemi5`,hp:3,speed:110,scale:.82,minWave:2,behavior:`charger`,facingOffset:-90,flipX:!1,frames:8,framePath:`./tank-enemy-enemi5/frame_00.png`},{key:`tank-enemy-enemi1112`,hp:2,speed:140,scale:1.1,minWave:1,behavior:`dart`,facingOffset:-90,flipX:!1,frames:3,framePath:`./tank-enemy-enemi1112/frame_00.png`},{key:`tank-enemy-enemi112`,hp:3,speed:98,scale:1.1,minWave:2,behavior:`drifter`,facingOffset:-90,flipX:!1,frames:8,framePath:`./tank-enemy-enemi112/frame_00.png`},{key:`tank-enemy-enemi1132`,hp:3,speed:105,scale:1.1,minWave:3,behavior:`spiraler`,facingOffset:-90,flipX:!1,frames:8,framePath:`./tank-enemy-enemi1132/frame_00.png`},{key:`tank-enemy-enemi1142`,hp:4,speed:78,scale:1.1,minWave:4,behavior:`drifter`,facingOffset:-90,flipX:!1,frames:8,framePath:`./tank-enemy-enemi1142/frame_00.png`},{key:`tank-enemy-narval`,hp:6,speed:68,scale:.72,minWave:5,behavior:`sniper`,fixedRotation:!0,flipWithDirection:!1,flipX:!1,frames:5,framePath:`./tank-boss-enemynarval/frame_00.png`},{key:`tank-enemy-shark`,hp:5,speed:130,scale:.65,minWave:4,behavior:`charger`,fixedRotation:!0,flipWithDirection:!1,flipX:!1,frames:4,framePath:`./tank-boss-enemyshark/frame_00.png`},{key:`tank-enemy-whale`,hp:8,speed:56,scale:.78,minWave:6,behavior:`blocker`,fixedRotation:!0,flipWithDirection:!1,flipX:!1,frames:5,framePath:`./tank-boss-enemywhale/frame_00.png`}],kt=[{key:`tank-boss-blue-shark`,hp:38,speed:78,scale:2.25,gems:9,behavior:`boss`,facingOffset:-90,flipX:!1,frames:4,framePath:`./assets/generated/tank-enemies/tank-boss-blue-shark/frame_00.png`},{key:`tank-boss-red-shark`,hp:42,speed:86,scale:2.35,gems:10,behavior:`boss`,facingOffset:-90,flipX:!1,frames:12,framePath:`./assets/generated/tank-enemies/tank-boss-red-shark/frame_00.png`},{key:`tank-boss-mummy-shark`,hp:48,speed:70,scale:2.45,gems:11,behavior:`boss`,facingOffset:-90,flipX:!1,frames:13,framePath:`./assets/generated/tank-enemies/tank-boss-mummy-shark/frame_00.png`},{key:`tank-boss-halloween-small-1`,hp:44,speed:92,scale:2.15,gems:10,behavior:`boss`,facingOffset:-90,flipX:!1,frames:20,framePath:`./assets/generated/tank-enemies/tank-boss-halloween-small-1/frame_00.png`},{key:`tank-boss-halloween-small-2`,hp:50,speed:98,scale:2.22,gems:11,behavior:`boss`,facingOffset:-90,flipX:!1,frames:16,framePath:`./assets/generated/tank-enemies/tank-boss-halloween-small-2/frame_00.png`},{key:`halloween-holloween1`,hp:52,speed:82,scale:1.58,gems:12,behavior:`boss`,facingOffset:0,flipX:!1,frames:8,fixedRotation:!0},{key:`halloween-holloween2`,hp:56,speed:88,scale:1.62,gems:12,behavior:`boss`,facingOffset:0,flipX:!1,frames:8,fixedRotation:!0},{key:`halloween-holloween3`,hp:60,speed:78,scale:1.66,gems:13,behavior:`boss`,facingOffset:0,flipX:!1,frames:8,fixedRotation:!0},{key:`halloween-holloween4`,hp:64,speed:74,scale:1.7,gems:13,behavior:`boss`,facingOffset:0,flipX:!1,frames:8,fixedRotation:!0}],At=5,jt=5,Mt=15,Nt=62,Pt=26e3,Ft=42e3,It=2400,Lt=.72,Rt=34,zt={current:{label:`Speed Demon`,routeFamily:`current`,tint:7534335,mods:{shotSpeed:1.16,swimSpeed:1.08,wakeTrail:1,bounce:1,homing:1}},inkstorm:{label:`Heavy Hitter`,routeFamily:`inkstorm`,tint:16748358,mods:{damageBonus:1,broadside:1,lumpOfCoal:1,fireDelay:.92}},shell:{label:`Fortress`,routeFamily:`shell`,tint:12053759,mods:{maxHp:1,guardianCharges:1,orbit:1,freeze:1}},prism:{label:`Lucky Prism`,routeFamily:`prism`,tint:16754687,mods:{critChance:.08,prismFork:1,chain:1,gemPulse:1}},treasure:{label:`Gem Greed`,routeFamily:`prism`,tint:16766720,mods:{gemPulse:2,hungryGems:1,magnetRange:1.14,luckBonus:.08}},chaos:{label:`Magnet Chaos`,routeFamily:`tide`,tint:16746700,mods:{split:1,wiggle:1,bounce:1,boomerang:1,magnetRange:1.12}}},Bt=new Set([`fireDelay`,`shotSpeed`,`swimSpeed`,`magnetRange`]),Vt=[{id:`swarm`,label:`Swarm`,enemies:[`tank-enemy-jelly`,`tank-enemy-jelly`,`tank-enemy-enemi1`,`tank-enemy-enemi112`,`tank-enemy-enemi1112`],countMult:1.5,speedMult:.85,intervalMult:.7,minWave:1},{id:`charger_rush`,label:`Charger Rush`,enemies:[`tank-enemy-fish`,`tank-enemy-enemi3`,`tank-enemy-enemi5`,`tank-enemy-enemi1112`],countMult:.8,speedMult:1.3,intervalMult:1.1,minWave:2},{id:`flanker_ambush`,label:`Flanker Ambush`,enemies:[`tank-enemy-eel`,`tank-enemy-enemi4`,`tank-enemy-enemi1132`,`tank-enemy-narval`],countMult:.9,speedMult:1.15,intervalMult:1,minWave:3},{id:`tank_wall`,label:`Tank Wall`,enemies:[`tank-enemy-whale`,`tank-enemy-enemi2`,`tank-enemy-enemi1142`,`tank-enemy-narval`],countMult:.7,speedMult:.7,intervalMult:1.3,hpMult:2.2,minWave:4},{id:`mixed_assault`,label:`Mixed Assault`,enemies:[`tank-enemy-jelly`,`tank-enemy-fish`,`tank-enemy-eel`,`tank-enemy-enemi1`,`tank-enemy-enemi3`,`tank-enemy-enemi5`],countMult:1,speedMult:1,intervalMult:1,minWave:1},{id:`blitz`,label:`Blitz`,enemies:[`tank-enemy-fish`,`tank-enemy-enemi3`,`tank-enemy-shark`,`tank-enemy-enemi1112`,`tank-enemy-enemi5`],countMult:1.2,speedMult:1.5,intervalMult:.6,minWave:5},{id:`siege`,label:`Siege`,enemies:[`tank-enemy-whale`,`tank-enemy-narval`,`tank-enemy-enemi4`,`tank-enemy-enemi1142`],countMult:.65,speedMult:.6,intervalMult:1.5,hpMult:3,minWave:6},{id:`deep_swarm`,label:`Deep Swarm`,enemies:[`tank-enemy-enemi112`,`tank-enemy-enemi1132`,`tank-enemy-enemi1142`,`tank-enemy-enemi2`],countMult:1.4,speedMult:.9,intervalMult:.75,minWave:3},{id:`predator_pack`,label:`Predator Pack`,enemies:[`tank-enemy-shark`,`tank-enemy-narval`,`tank-enemy-enemi3`,`tank-enemy-fish`],countMult:.75,speedMult:1.35,intervalMult:1,hpMult:1.5,minWave:5},{id:`boss_prep`,label:`Boss Prep`,enemies:[`tank-enemy-jelly`,`tank-enemy-enemi1`,`tank-enemy-enemi112`],countMult:.6,speedMult:.9,intervalMult:1.2,minWave:1}];function Ht(e,t=`tide`){if(e%At===At-1)return Vt.find(e=>e.id===`boss_prep`);let n=Vt.filter(t=>t.minWave<=e&&t.id!==`boss_prep`),r=Xt[t]||Xt.tide,i=n.filter(e=>r.recipes.includes(e.id));return i.length>0&&Z.Between(1,100)<=68?re.Array.GetRandom(i):re.Array.GetRandom(n)}var Ut=[{id:`deep_pressure`,label:`DEEP PRESSURE`,triggerWaves:[3,13,23],duration:12e3,color:`#9933ff`,tint:2228292,eliteChanceMult:2,speedMult:1.15,spawnMult:1,gemDropMult:1},{id:`the_current`,label:`THE CURRENT`,triggerWaves:[7,17,27],duration:12e3,color:`#33ccff`,tint:4403,eliteChanceMult:1,speedMult:1.4,spawnMult:1,gemDropMult:1},{id:`feeding_frenzy`,label:`FEEDING FRENZY`,triggerWaves:[10,20,30],duration:15e3,color:`#ffcc00`,tint:3351040,eliteChanceMult:1,speedMult:1.1,spawnMult:2,gemDropMult:2}];function Wt(e){return Ut.find(t=>t.triggerWaves.includes(e))||null}var Gt={green:1,blue:3,yellow:5,pink:8,silver:12},Kt=[10,16,24,35,50,70,95,125,160,200,245,295,350,410,475],qt=900,Jt={swim_speed:`mobility`,cooldown:`offense`,damage:`offense`,shot_speed:`offense`,magnet:`utility`,projectile:`offense`,area:`offense`,heart:`defense`,pierce:`offense`,split:`offense`,orbit:`defense`,poison:`offense`,bounce:`offense`,spin:`defense`,wake_trail:`mobility`,smart_ink:`utility`,contagion:`offense`,gem_pulse:`utility`,critical_eye:`offense`,guardian_orbit:`defense`,broadside:`offense`,backblast:`defense`,ink_mine:`defense`,spiral:`offense`,prism_fork:`offense`,wiggle:`utility`,boomerang:`utility`,lump_of_coal:`offense`,chain:`offense`,fear:`control`,freeze:`control`,spectral:`utility`,anchor_shot:`control`,glass_cannon:`offense`,vampire_siphon:`defense`,black_hole_pearl:`control`,tiny_octo:`mobility`,cursed_fork:`offense`,hungry_gems:`utility`,boss_magnet:`utility`},Yt={inkstorm:{label:`Inkstorm`,bulletKey:`tank-bullet-fire`,tint:16748358},abyss:{label:`Abyss`,bulletKey:`tank-bullet-toxic`,tint:7929705},current:{label:`Current`,bulletKey:`tank-bullet-electric`,tint:7534335},shell:{label:`Shell`,bulletKey:`tank-bullet-ice`,tint:12053759},prism:{label:`Prism`,bulletKey:`tank-bullet-ink`,tint:16754687},tide:{label:`Tide`,bulletKey:`tank-bullet`,tint:11466751}},Xt={inkstorm:{routeLabel:`Boiling Reef`,recipes:[`swarm`,`blitz`,`mixed_assault`],countMult:1.14,intervalMult:.9,eliteBonus:8,mutationBias:[`offense`,`offense`,`mobility`],bossHpMult:1.08},abyss:{routeLabel:`Abyss Trench`,recipes:[`deep_swarm`,`flanker_ambush`,`siege`],countMult:.92,intervalMult:1.08,eliteBonus:4,mutationBias:[`control`,`offense`,`utility`],bossHpMult:1.16},current:{routeLabel:`Riptide Run`,recipes:[`charger_rush`,`blitz`,`flanker_ambush`],countMult:.96,intervalMult:.86,eliteBonus:6,mutationBias:[`mobility`,`offense`,`utility`],bossHpMult:1.04},shell:{routeLabel:`Fortress Glass`,recipes:[`tank_wall`,`siege`,`mixed_assault`],countMult:.82,intervalMult:1.18,eliteBonus:10,mutationBias:[`defense`,`control`,`offense`],bossHpMult:1.24},prism:{routeLabel:`Treasure Bloom`,recipes:[`mixed_assault`,`flanker_ambush`,`predator_pack`],countMult:1.02,intervalMult:1,eliteBonus:5,mutationBias:[`utility`,`offense`,`utility`],bossHpMult:1,gemDropBonus:.14},tide:{routeLabel:`Open Tide`,recipes:[`swarm`,`mixed_assault`,`deep_swarm`,`charger_rush`],countMult:1,intervalMult:1,eliteBonus:0,mutationBias:[`offense`,`defense`,`utility`],bossHpMult:1}},Zt=.92,Qt=.68,$t=Z.DegToRad(90),en=260,tn=620,nn=1900,rn=5,an=.055,on={maxHp:6,fireDelay:150,extraProjectiles:1,broadside:1,backblast:1,spiral:1,pierce:2,split:1,bounce:1,chain:1,homing:1,orbit:2,poison:1,fear:1,freeze:1,contagion:1,prismFork:1,guardianCharges:2,inkMines:1,wakeTrail:1,gemPulse:1,wiggle:1,boomerang:1,lumpOfCoal:1,spinPower:1,spectral:1,critChance:.22,damageBonus:3,bulletScale:1.35,swimSpeed:1.45,magnetRange:1.65,shotSpeed:780,shotLifetime:2300,nextXpMult:.85},sn=54,cn=[{id:`swim_speed`,title:`Streamlined`,family:`current`,rarity:`common`,maxRank:5,desc:e=>`Swim speed +${18*e}%${e>=2?` and stronger wake trail`:``}`,apply:e=>{e.tankRunStats.swimSpeed*=1.18,e.tankRunStats.mutationRanks.swim_speed>=2&&(e.tankRunStats.wakeTrail+=1)}},{id:`cooldown`,title:`Rapid Ink`,family:`inkstorm`,rarity:`common`,maxRank:5,desc:e=>`Fire cooldown -${15*e}%${e>=3?` and rear burst`:``}`,apply:e=>{e.tankRunStats.fireDelay*=.85,e.tankRunStats.mutationRanks.cooldown>=3&&(e.tankRunStats.backblast+=1),e.configureAutoFireTimer()}},{id:`damage`,title:`Heavy Ink`,family:`inkstorm`,rarity:`common`,maxRank:6,desc:e=>`Projectile damage +${e}${e>=3?` and growing shots`:``}`,apply:e=>{e.tankRunStats.damageBonus+=1,e.tankRunStats.mutationRanks.damage>=3&&(e.tankRunStats.lumpOfCoal+=1)}},{id:`shot_speed`,title:`Pressure Jet`,family:`current`,rarity:`common`,maxRank:4,desc:e=>`Bullet speed and range +${18*e}%${e>=2?` with light homing`:``}`,apply:e=>{e.tankRunStats.shotSpeed*=1.18,e.tankRunStats.shotLifetime*=1.12,e.tankRunStats.mutationRanks.shot_speed>=2&&(e.tankRunStats.homing+=1)}},{id:`magnet`,title:`Data Magnet`,family:`prism`,rarity:`common`,maxRank:5,desc:e=>`Gem pickup range +${30*e}%${e>=2?` and gem shock pulse`:``}`,apply:e=>{e.tankRunStats.magnetRange*=1.3,e.tankRunStats.mutationRanks.magnet>=2&&(e.tankRunStats.gemPulse+=1)}},{id:`projectile`,title:`Twin Jet`,family:`inkstorm`,rarity:`uncommon`,maxRank:3,desc:e=>`${e+1} shots per burst`,apply:e=>{e.tankRunStats.extraProjectiles+=1}},{id:`area`,title:`Thick Drop`,family:`tide`,rarity:`common`,maxRank:5,desc:e=>`Bullet size +${20*e}%${e>=2?` and extra pierce`:``}`,apply:e=>{e.tankRunStats.bulletScale*=1.2,e.tankRunStats.mutationRanks.area>=2&&(e.tankRunStats.pierce+=1)}},{id:`heart`,title:`Soft Shell`,family:`shell`,rarity:`common`,maxRank:4,desc:e=>`Max hearts +${e} and heal${e>=2?`, plus guardian charge`:``}`,apply:e=>{e.tankRunStats.maxHp+=1,e.tankRunStats.hp=e.tankRunStats.maxHp,e.tankRunStats.mutationRanks.heart>=2&&(e.tankRunStats.guardianCharges+=1,e.tankRunStats.orbit+=1,e.refreshTankOrbiters())}},{id:`pierce`,title:`Piercing Drop`,family:`tide`,rarity:`uncommon`,maxRank:4,desc:e=>`Bullets pass through ${e} target${e===1?``:`s`}${e>=2?` and fork wider`:``}`,apply:e=>{e.tankRunStats.pierce+=1,e.tankRunStats.mutationRanks.pierce>=2&&(e.tankRunStats.broadside+=1)}},{id:`split`,title:`Bubble Split`,family:`inkstorm`,rarity:`uncommon`,maxRank:3,desc:e=>`Hits split into ${e+1} smaller drops`,apply:e=>{e.tankRunStats.split+=1}},{id:`orbit`,title:`Tide Orbit`,family:`tide`,rarity:`uncommon`,maxRank:4,desc:e=>`${e} orbiting ink drop${e===1?``:`s`}`,apply:e=>{e.tankRunStats.orbit+=1,e.refreshTankOrbiters()}},{id:`poison`,title:`Venom Ink`,family:`abyss`,rarity:`uncommon`,maxRank:4,desc:e=>`Shots deal ${e} poison tick${e===1?``:`s`}${e>=2?` and spread on kills`:``}`,apply:e=>{e.tankRunStats.poison+=1,e.tankRunStats.mutationRanks.poison>=2&&(e.tankRunStats.contagion+=1)}},{id:`bounce`,title:`Ricochet Ink`,family:`current`,rarity:`rare`,maxRank:3,desc:e=>`Bullets bounce ${e} time${e===1?``:`s`} off glass`,apply:e=>{e.tankRunStats.bounce+=1}},{id:`spin`,title:`Retaliation Bloom`,family:`shell`,rarity:`rare`,maxRank:3,desc:e=>`Damage spin radius and power rank ${e}`,apply:e=>{e.tankRunStats.spinPower+=1}},{id:`wake_trail`,title:`Wake Trail`,family:`current`,rarity:`uncommon`,maxRank:4,desc:e=>`Swimming leaves ${e} damaging current pulse${e===1?``:`s`}`,apply:e=>{e.tankRunStats.wakeTrail+=1}},{id:`smart_ink`,title:`Smart Ink`,family:`prism`,rarity:`rare`,maxRank:3,desc:e=>`Shots home toward prey at rank ${e}`,apply:e=>{e.tankRunStats.homing+=1}},{id:`contagion`,title:`Contagion`,family:`abyss`,rarity:`rare`,maxRank:3,desc:e=>`Poisoned kills burst for ${e+1} toxic hit${e===1?``:`s`}`,apply:e=>{e.tankRunStats.contagion+=1}},{id:`gem_pulse`,title:`Gem Pulse`,family:`prism`,rarity:`uncommon`,maxRank:4,desc:e=>`Collecting gems shocks nearby enemies at rank ${e}`,apply:e=>{e.tankRunStats.gemPulse+=1}},{id:`critical_eye`,title:`Critical Eye`,family:`prism`,rarity:`uncommon`,maxRank:4,desc:e=>`${10+e*7}% chance for double damage${e>=2?` and prism forks`:``}`,apply:e=>{e.tankRunStats.critChance+=.07,e.tankRunStats.mutationRanks.critical_eye>=2&&(e.tankRunStats.prismFork+=1)}},{id:`guardian_orbit`,title:`Guardian Orbit`,family:`shell`,rarity:`rare`,maxRank:3,desc:e=>`${e} orbiting guard charge${e===1?``:`s`} can block hits`,apply:e=>{e.tankRunStats.guardianCharges+=1,e.tankRunStats.orbit+=1,e.refreshTankOrbiters()}},{id:`broadside`,title:`Broadside Bloom`,family:`tide`,rarity:`uncommon`,maxRank:3,desc:e=>`Adds ${e*2} side shots to each burst`,apply:e=>{e.tankRunStats.broadside+=1}},{id:`backblast`,title:`Backblast`,family:`current`,rarity:`uncommon`,maxRank:3,desc:e=>`Fires ${e} rear guard shot${e===1?``:`s`}`,apply:e=>{e.tankRunStats.backblast+=1}},{id:`ink_mine`,title:`Ink Mines`,family:`shell`,rarity:`uncommon`,maxRank:4,desc:e=>`Drops slow explosive mine pulses at rank ${e}`,apply:e=>{e.tankRunStats.inkMines+=1}},{id:`spiral`,title:`Spiral Siphon`,family:`abyss`,rarity:`rare`,maxRank:3,desc:e=>`Adds rotating venom spiral shots at rank ${e}`,apply:e=>{e.tankRunStats.spiral+=1}},{id:`prism_fork`,title:`Prism Fork`,family:`prism`,rarity:`rare`,maxRank:3,desc:e=>`Critical hits fork into ${e+1} rainbow shards`,apply:e=>{e.tankRunStats.prismFork+=1}},{id:`wiggle`,title:`Wiggle Worm`,family:`tide`,rarity:`uncommon`,maxRank:3,desc:e=>`Bullets sine-wave at amplitude ${e}`,apply:e=>{e.tankRunStats.wiggle+=1}},{id:`boomerang`,title:`Boomerang Ink`,family:`current`,rarity:`rare`,maxRank:2,desc:e=>`Bullets curve back after traveling outward (rank ${e})`,apply:e=>{e.tankRunStats.boomerang+=1}},{id:`lump_of_coal`,title:`Lump of Coal`,family:`inkstorm`,rarity:`uncommon`,maxRank:3,desc:e=>`Bullets accelerate and grow over distance (+${e*30}%)`,apply:e=>{e.tankRunStats.lumpOfCoal+=1}},{id:`chain`,title:`Chain Lightning`,family:`prism`,rarity:`rare`,maxRank:3,desc:e=>`Kills jump up to ${Math.min(3,e+1)} times with weaker arcs`,apply:e=>{e.tankRunStats.chain+=1}},{id:`fear`,title:`Fear Shot`,family:`abyss`,rarity:`uncommon`,maxRank:3,desc:e=>`Hit enemies flee for ${.4+e*.3}s`,apply:e=>{e.tankRunStats.fear+=1}},{id:`freeze`,title:`Frost Ink`,family:`shell`,rarity:`uncommon`,maxRank:3,desc:e=>`Hit enemies slow to ${Math.round(100-e*20)}% speed for ${1+e*.5}s`,apply:e=>{e.tankRunStats.freeze+=1}},{id:`spectral`,title:`Spectral Ink`,family:`abyss`,rarity:`rare`,maxRank:1,desc:()=>`Bullets ignore walls and travel forever`,apply:e=>{e.tankRunStats.spectral=1}},{id:`anchor_shot`,title:`Anchor Shot`,family:`shell`,rarity:`rare`,maxRank:2,desc:e=>`Slower heavy shots: size, pierce, and knockback rank ${e}`,apply:e=>{e.tankRunStats.anchorShot+=1,e.tankRunStats.shotSpeed*=.86,e.tankRunStats.bulletScale*=1.16,e.tankRunStats.pierce+=1}},{id:`glass_cannon`,title:`Glass Cannon`,family:`inkstorm`,rarity:`rare`,maxRank:1,desc:()=>`Huge damage and fire rate, but max hearts -1`,apply:e=>{e.tankRunStats.damageBonus+=3,e.tankRunStats.fireDelay*=.78,e.tankRunStats.maxHp=Math.max(2,e.tankRunStats.maxHp-1),e.tankRunStats.hp=Math.min(e.tankRunStats.hp,e.tankRunStats.maxHp),e.configureAutoFireTimer()}},{id:`vampire_siphon`,title:`Vampire Siphon`,family:`abyss`,rarity:`rare`,maxRank:2,desc:e=>`Every ${Math.max(12,24-e*5)} kills can restore one heart`,apply:e=>{e.tankRunStats.vampireSiphon+=1}},{id:`black_hole_pearl`,title:`Black-Hole Pearl`,family:`prism`,rarity:`rare`,maxRank:2,desc:e=>`Every ${Math.max(5,10-e*2)}th shot pulls enemies inward`,apply:e=>{e.tankRunStats.blackHolePearl+=1,e.tankRunStats.magnetRange*=1.08}},{id:`tiny_octo`,title:`Tiny Octo`,family:`current`,rarity:`uncommon`,maxRank:1,desc:()=>`Smaller hitbox, faster swim, lower maximum hearts`,apply:e=>{e.tankRunStats.tinyOcto=1,e.tankRunStats.swimSpeed*=1.22,e.tankRunStats.maxHp=Math.max(2,e.tankRunStats.maxHp-1),e.tankRunStats.hp=Math.min(e.tankRunStats.hp,e.tankRunStats.maxHp),e.octo?.body?.setCircle?.(18,-18,-18)}},{id:`cursed_fork`,title:`Cursed Fork`,family:`prism`,rarity:`rare`,maxRank:2,desc:e=>`More forks and splits, but future waves get sharper`,apply:e=>{e.tankRunStats.prismFork+=1,e.tankRunStats.split+=1,e.tankRunStats.routeEliteBonus+=4*rank}},{id:`hungry_gems`,title:`Hungry Gems`,family:`prism`,rarity:`uncommon`,maxRank:3,desc:e=>`Gem pickups lash nearby enemies at rank ${e}`,apply:e=>{e.tankRunStats.hungryGems+=1,e.tankRunStats.gemPulse+=1}},{id:`boss_magnet`,title:`Boss Magnet`,family:`tide`,rarity:`rare`,maxRank:1,desc:()=>`Bosses arrive meaner but drop richer signals`,apply:e=>{e.tankRunStats.bossMagnet=1,e.tankRunStats.bossPressure+=1,e.tankRunStats.luckBonus+=.22}}],ln={common:64,uncommon:28,rare:8},un=[{id:`abyssal_cache`,title:`Abyssal Cache`,family:`prism`,rarity:`boss`,desc:()=>`Bank 18 blue gems now. Magnet range +20% for this hunt.`,apply:e=>{tt(e.save,`blue`,18),e.addTankHuntGemSource(`bossRewards`,18),e.tankRunStats.magnetRange*=1.2,Ze(e.save),e.emitState()}},{id:`predator_heart`,title:`Predator Heart`,family:`shell`,rarity:`boss`,desc:()=>`Max hearts +1, fully heal, and gain one Guardian Orbit charge.`,apply:e=>{e.tankRunStats.maxHp+=1,e.tankRunStats.hp=e.tankRunStats.maxHp,e.tankRunStats.guardianCharges+=1,e.refreshTankOrbiters()}},{id:`ink_overclock`,title:`Ink Overclock`,family:`inkstorm`,rarity:`boss`,desc:()=>`Fire 12% faster and gain +1 projectile damage.`,apply:e=>{e.tankRunStats.fireDelay*=.88,e.tankRunStats.damageBonus+=1,e.configureAutoFireTimer()}},{id:`current_surge`,title:`Current Surge`,family:`current`,rarity:`boss`,desc:()=>`Swim speed +14%. Bullets gain speed and range.`,apply:e=>{e.tankRunStats.swimSpeed*=1.14,e.tankRunStats.shotSpeed*=1.12,e.tankRunStats.shotLifetime*=1.1}},{id:`boss_bane`,title:`Boss Bane`,family:`tide`,rarity:`boss`,desc:()=>`Gain +1 pierce and +1 orbiting ink drop.`,apply:e=>{e.tankRunStats.pierce+=1,e.tankRunStats.orbit+=1,e.refreshTankOrbiters()}},{id:`frozen_eye`,title:`Frozen Eye`,family:`shell`,rarity:`boss`,desc:()=>`Shots can slow enemies harder. Gain freeze rank and crit chance.`,apply:e=>{e.tankRunStats.freeze+=1,e.tankRunStats.critChance+=.06}},{id:`venom_crown`,title:`Venom Crown`,family:`abyss`,rarity:`boss`,desc:()=>`Poison rank +1 and kills can chain toxic bursts.`,apply:e=>{e.tankRunStats.poison+=1,e.tankRunStats.contagion+=1}},{id:`prism_tithe`,title:`Prism Tithe`,family:`prism`,rarity:`boss`,desc:()=>`Next levels need 10% less XP. Gain +1 luck signal.`,apply:e=>{e.tankRunStats.xpBreakpoints=(e.tankRunStats.xpBreakpoints||Kt).map(e=>Math.max(6,Math.floor(e*.9))),e.tankRunStats.nextXp=Math.max(e.tankRunStats.xp+1,e.getTankXpForNextLevel()),e.tankRunStats.luckBonus+=.18}},{id:`blood_moon`,title:`Blood Moon`,family:`inkstorm`,rarity:`boss`,desc:()=>`Future waves spawn more elites. Boss rewards and rare odds improve.`,apply:e=>{e.tankRunStats.routeEliteBonus+=12,e.tankRunStats.luckBonus+=.28,e.tankRunStats.bossRewardGemBonus+=6}},{id:`treasure_trench`,title:`Treasure Trench`,family:`prism`,rarity:`boss`,desc:()=>`Enemies drop more gems, but pressure-breakers appear more often.`,apply:e=>{e.tankRunStats.gemDropBonus+=.22,e.tankRunStats.pressureBreakerBonus+=1,e.tankRunStats.luckBonus+=.12}},{id:`kraken_pact`,title:`Kraken Pact`,family:`abyss`,rarity:`boss`,desc:()=>`Gain heavy damage now. Later bosses become tougher and richer.`,apply:e=>{e.tankRunStats.damageBonus+=2,e.tankRunStats.bossPressure+=1,e.tankRunStats.bossRewardGemBonus+=8}},{id:`deep_current`,title:`Deep Current`,family:`current`,rarity:`boss`,desc:()=>`Waves arrive faster. Gain speed, bounce, and range.`,apply:e=>{e.tankRunStats.waveIntervalMult*=.88,e.tankRunStats.swimSpeed*=1.12,e.tankRunStats.bounce+=1,e.tankRunStats.shotLifetime*=1.1}},{id:`octo_echo`,title:`Octo Echo`,family:`tide`,rarity:`boss`,desc:()=>`A delayed echo adds rear pressure to your shots.`,apply:e=>{e.tankRunStats.echoShot+=1,e.tankRunStats.backblast+=1,e.tankRunStats.homing+=1}}],dn=class extends ne{constructor(){super(`IncubationScene`),this.gems=null,this.traits=null,this.octo=null,this.target=null,this.save=null,this.bodyLayer=null,this.clothesLayer=null,this.eyesLayer=null,this.hatLayer=null,this.boostLayer=null,this.lastPointerTime=0,this.mass=1,this.worldWidth=3200,this.worldHeight=2200,this.wanderTarget=null,this.frameTimer=0,this.swimFrame=0,this.swimTime=0,this.viewZoom=Zt,this.visualScaleCompensation=1.15/this.viewZoom,this.stats=null,this.keys=null,this.keyboardManualUntil=0,this.activeTraitMarker=null,this.activeTraitArrow=null,this.centerTraitText=null,this.enemies=null,this.bullets=null,this.enemySpawnTimer=null,this.tankWaveTimer=null,this.autoFireTimer=null,this.tankHuntActive=!1,this.tankHuntKills=0,this.tankHuntGoal=0,this.tankHuntWave=0,this.tankHuntTotalKills=0,this.tankHuntBossKills=0,this.tankHuntGemsCollected=0,this.tankHuntGemSources={},this.tankHuntDamageTaken=0,this.tankHuntStartedAt=0,this.tankBoss=null,this.tankHuntEnding=!1,this.tankHuntEndTimer=null,this.tankRunStats=this.createTankRunStats(),this.tankUpgradeChoiceActive=!1,this.tankUpgradeContainer=null,this.tankContinueChoiceActive=!1,this.tankContinueContainer=null,this.tankInvincibleUntil=0,this.tankSpinUntil=0,this.tankSpinStartedAt=0,this.tankSpinFrame=0,this.tankWasSpinning=!1,this.tankSpinHitEnemies=new Set,this.tankHud=null,this.tankHudHearts=null,this.tankHudXpFill=null,this.tankHudText=null,this.tankOrbiters=[],this.toroidalGhosts=[],this.tankBackgroundTiles=[],this.tankBackgroundTileWidth=1,this.tankBackgroundTileHeight=1,this.activeBackgroundKey=null,this.pendingBackgroundKey=null,this.tankBackgroundDepthIndex=0,this.tankWakeTimer=0,this.tankMineTimer=0,this.tankSpiralAngle=0,this.tankDamageNumbers=[],this.tankInkBurstCooldown=0,this.tankManualMineCooldown=0,this.gemArrow=null,this.tankWaveResolving=!1,this.tankWaveToken=0,this.tankActiveEvent=null,this.tankEventOverlay=null,this.tankContinueWave=null,this.tankContinueChoicePending=!1,this.tankSpecificWaveTimer=null,this.tankSpecificWavePending=null,this.autopilotCollectTarget=null,this.autopilotLastPosition=null,this.autopilotLastProgressAt=0,this.autopilotStuckCount=0,this.wanderTargetCreatedAt=0,this.tankNextLevelAllowedAt=0,this.lastTankMutationRoles=[],this.tankBossRewardChoiceActive=!1,this.tankBossRewardContainer=null,this.backgroundCollectedGems=0,this.backgroundCollectedValue=0,this.backgroundCollectedByType={},this.backgroundGemLedger=[],this.backgroundLedgerOcto=null,this.backgroundLedgerAvailableAt=0,this.isPageHidden=typeof document<`u`&&document.visibilityState===`hidden`,this.isWindowFocused=typeof document>`u`||typeof document.hasFocus!=`function`||document.hasFocus(),this.visibilityPauseStartedAt=0,this.lastEventReceivedAt=0}create(){this.save=Xe(),this.mass=1+Math.min(.65,this.save.lifetime.tokens/16e4),this.physics.world.setBounds(-1e6,-1e6,2e6,2e6),this.cameras.main.setZoom(this.viewZoom),this.cameras.main.setBackgroundColor(`#04131d`),this.buildTiledBackground(),this.tankGlassHint=this.add.rectangle(this.worldWidth/2,this.worldHeight/2,this.worldWidth,this.worldHeight,7986687,.018).setDepth(1),this.tankGlassHint.setVisible(!1),this.gems=this.physics.add.group(),this.traits=this.physics.add.group(),this.enemies=this.physics.add.group(),this.bullets=this.physics.add.group(),this.enemyBullets=this.physics.add.group(),this.playerMines=this.physics.add.group(),this.octo=this.add.container(this.worldWidth/2,this.worldHeight/2),this.octo.setDepth(20),this.createOctoLayers(),this.applyLoadoutSprites(),this.createToroidalGhosts(),this.physics.add.existing(this.octo),this.octo.body.setCircle(24,-24,-24),this.octo.body.setCollideWorldBounds(!1),this.octo.body.setDamping(!0),this.octo.body.setDrag(.92),this.refreshStats(),this.octo.body.setMaxVelocity(155*this.stats.swimSpeed),this.cameras.main.startFollow(this.octo,!0,.055,.055),this.input.on(`pointermove`,e=>{let t=this.cameras.main.getWorldPoint(e.x,e.y);this.target=t,this.lastPointerTime=this.time.now,this.game.events.emit(`octoglyphs:mode`,`Manual`)}),this.input.on(`pointerout`,()=>this.releaseManualControl()),this.keys=this.input.keyboard?.addKeys(`W,A,S,D,UP,DOWN,LEFT,RIGHT,SPACE`),this.physics.add.overlap(this.octo,this.gems,(e,t)=>this.collectGem(t),(e,t)=>this.canCollectGem(t)),this.physics.add.overlap(this.octo,this.traits,(e,t)=>this.collectTrait(t),(e,t)=>this.canOverlapToroidal(this.octo,t,52)),this.physics.add.overlap(this.bullets,this.enemies,(e,t)=>this.hitEnemy(e,t),(e,t)=>this.canOverlapToroidal(e,t,t.getData(`boss`)?62:42)),this.physics.add.overlap(this.playerMines,this.enemies,(e,t)=>this.triggerPlayerMine(e,t),(e,t)=>!e.getData(`armed`)&&this.canOverlapToroidal(e,t,t.getData(`boss`)?76:54)),this.physics.add.overlap(this.octo,this.enemies,(e,t)=>this.hitPlayer(t),(e,t)=>this.canOverlapToroidal(this.octo,t,t.getData(`boss`)?70:48)),this.game.events.on(`octoglyphs:event`,e=>this.onOctoGlyphsEvent(e)),this.game.events.on(`octoglyphs:spawn-trait`,()=>this.spawnTraitDiscovery(!0)),this.game.events.on(`octoglyphs:start-tank-hunt`,()=>this.startTankHunt()),this.game.events.on(`octoglyphs:query-hunt-charge`,()=>this.emitTankHuntCharge()),this.game.events.on(`octoglyphs:equip`,e=>this.equipPersistent(e)),this.game.events.on(`octoglyphs:quick-preset`,e=>this.applyLiveQuickPreset(e)),this.game.events.on(`octoglyphs:save-changed`,()=>this.refreshSave()),typeof document<`u`&&(this.handleVisibilityChange=()=>this.onVisibilityChanged(),document.addEventListener(`visibilitychange`,this.handleVisibilityChange),window.addEventListener(`blur`,this.handleVisibilityChange),window.addEventListener(`focus`,this.handleVisibilityChange)),this.emitVisibilityDiagnostics(),this.time.addEvent({delay:320,loop:!0,callback:()=>this.autopilot()}),this.time.addEvent({delay:45,loop:!0,callback:()=>this.animateGems()}),this.time.addEvent({delay:80,loop:!0,callback:()=>this.animateTraits()}),this.createGemArrow(),this.configureAutoFireTimer(),this.emitState(),this.emitTankHuntCharge(),Et(`welcome`,this.save)}update(e,t){if(this.octo){if(this.tankUpgradeChoiceActive||this.tankBossRewardChoiceActive||this.tankContinueChoiceActive){this.target=null,this.keyboardManualUntil=0,this.octo.body.setVelocity(0,0),this.updateTraitMarker(),this.updateGemArrow(),this.updateTankEnemies(),this.animateOcto(t/1e3);return}this.applyKeyboardMovement()?this.target=null:this.target?(this.moveBodyTowardToroidal(this.octo,this.target,this.getTankPlayerSpeed(160)),this.toroidalDistance(this.octo.x,this.octo.y,this.target.x,this.target.y)<18&&this.octo.body.setVelocity(0,0),this.time.now-this.lastPointerTime>2500&&this.releaseManualControl()):this.keyboardManualUntil>0&&this.time.now>this.keyboardManualUntil&&(this.releaseManualControl(),this.keyboardManualUntil=0),this.updateTiledBackground(),this.wrapTankActors(),this.applyWakeTrail(t),this.applyInkMines(t),this.applyMagnetPull(),this.updateTraitMarker(),this.updateTankEnemies(),this.updateTankBullets(),this.updateTankOrbiters(),this.updateEnemyBullets(),this.updateGemArrow(),this.checkInkBurstInput(),this.checkManualMineInput(),this.animatePlayerMines(),this.animateOcto(t/1e3)}}applyKeyboardMovement(){if(!this.keys||this.tankUpgradeChoiceActive||this.tankContinueChoiceActive)return!1;let e=this.keys.A.isDown||this.keys.LEFT.isDown,t=this.keys.D.isDown||this.keys.RIGHT.isDown,n=this.keys.W.isDown||this.keys.UP.isDown,r=this.keys.S.isDown||this.keys.DOWN.isDown,i=Number(t)-Number(e),a=Number(r)-Number(n);if(i===0&&a===0)return!1;let o=new Z.Vector2(i,a).normalize().scale(this.getTankPlayerSpeed(165));return this.octo.body.setVelocity(o.x,o.y),this.lastPointerTime=this.time.now,this.keyboardManualUntil=this.time.now+900,this.game.events.emit(`octoglyphs:mode`,`Manual`),!0}buildTiledBackground(){this.add.rectangle(-1e6,-1e6,2e6,2e6,267037,1).setOrigin(0,0).setDepth(-2),this.setTankBackground(Oe(0))}setTankBackground(e){let t=e||we[0];if(!t||this.activeBackgroundKey===t.key)return;this.activeBackgroundKey=t.key;let n=this.textures.get(t.key).getSourceImage(),r=n?.width||1672,i=n?.height||941,a=.72;if(this.tankBackgroundTileWidth=r*a,this.tankBackgroundTileHeight=i*a,!this.tankBackgroundTiles.length)for(let e=0;e<7;e+=1)for(let e=0;e<7;e+=1){let e=this.add.image(0,0,t.key);e.setOrigin(.5,.5),e.setDepth(-1),e.setAlpha(.92),this.tankBackgroundTiles.push(e)}for(let e of this.tankBackgroundTiles)e.setTexture(t.key),e.setDisplaySize(this.tankBackgroundTileWidth+4,this.tankBackgroundTileHeight+4);this.updateTiledBackground(),this.game.events.emit(`octoglyphs:background`,{name:t.file.replace(`.png`,``),depth:t.depth})}updateTiledBackground(){if(!this.tankBackgroundTiles?.length)return;let e=this.cameras.main,t=this.tankBackgroundTileWidth,n=this.tankBackgroundTileHeight,r=e.worldView.centerX,i=e.worldView.centerY,a=Math.floor(r/t),o=Math.floor(i/n);for(let e=0;e<this.tankBackgroundTiles.length;e+=1){let r=e%7,i=Math.floor(e/7),s=a+r-3,c=o+i-3,l=s*t+t/2,u=c*n+n/2,d=this.tankBackgroundTiles[e];d.setPosition(l,u),d.setFlipX(Math.abs(s)%2==1),d.setFlipY(Math.abs(c)%2==1)}}createOctoLayers(){this.bodyLayer=this.addOutlinedImage(0,0,`body-blue`,.16),this.clothesLayer=this.addOutlinedImage(0,-1,`clothes-astro`,.18).setVisible(!1),this.eyesLayer=this.addOutlinedImage(0,0,`eyes-regular`,.14),this.hatLayer=this.addOutlinedImage(0,-2,`hat-alien-antenna`,.18).setVisible(!1),this.boostLayer=this.addOutlinedImage(38,14,`boost-shell-earring`,.18).setVisible(!1).setScale(.65),this.legendaryLayer=this.addOutlinedImage(0,0,`legendary-1`,.16).setVisible(!1),this.octo.add([this.bodyLayer,this.clothesLayer,this.eyesLayer,this.hatLayer,this.boostLayer,this.legendaryLayer])}addOutlinedImage(e,t,n,r=.18){let i=this.add.image(e,t,n);return this.applyGameplayOutline(i,r),i}applyGameplayOutline(e,t=.2){return e?.postFX?.addShadow?(e.postFX.addShadow(0,0,.22,4.2,0,10,1),e.postFX.addShadow(3,3,t,2.6,0,8,1),e.postFX.addShadow(-3,-3,t*.75,2.2,0,7,1),e):e}addGameplayHalo(e,t=16777215,n=.36,r=7){return e?.postFX?.addGlow&&e.postFX.addGlow(t,n,0,!1,r,12),e}improveGameplayReadability(e,t={}){return this.applyGameplayOutline(e,t.outlineAlpha??.28),t.haloColor&&this.addGameplayHalo(e,t.haloColor,t.haloAlpha??.32,t.haloBlur??6),e}applyLoadoutSprites(){let e=this.save.loadout,t=xe(e.body)||xe(`body-blue`),n=xe(e.eyes)||xe(`eyes-regular`),r=xe(e.hat),i=xe(e.clothes),a=xe(e.boost),o=xe(e.legendary),s=.68*this.mass*this.visualScaleCompensation;if(this.currentLegendary=o,this.currentBody=t,this.currentEyes=n,this.currentHat=r,this.currentClothes=i,o){this.legendaryLayer.setTexture(this.pickFrameKey(o,this.swimFrame)).setScale(s).setVisible(!0),this.bodyLayer.setVisible(!1),this.eyesLayer.setVisible(!1),this.clothesLayer.setVisible(!1),this.hatLayer.setVisible(!1),this.boostLayer.setVisible(!1);return}this.legendaryLayer.setVisible(!1),this.bodyLayer.setTexture(this.pickFrameKey(t,this.swimFrame)).setScale(s).setVisible(!0),this.eyesLayer.setTexture(this.pickFrameKey(n,this.swimFrame)).setScale(s).setVisible(!0),this.clothesLayer.setVisible(!!i),this.hatLayer.setVisible(!!r),this.boostLayer.setVisible(!!a),i&&this.clothesLayer.setTexture(this.pickFrameKey(i,this.swimFrame)).setScale(s),r&&this.hatLayer.setTexture(this.pickFrameKey(r,this.swimFrame)).setScale(s),a&&this.boostLayer.setTexture(a.key).setScale(.28*this.mass*this.visualScaleCompensation)}pickFrameKey(e,t=0){return!e||!e.frames?e?.key||`body-blue`:`${e.key}-${t%e.frames}`}pickSpinFrameKey(e,t=0){let n=ae[e?.id]||ae.generic;return`${n.key}-${t%n.frames}`}animateOcto(e){let t=this.octo.body.velocity,n=Math.abs(t.x)>4||Math.abs(t.y)>4,r=n?1:.35;for(this.swimTime+=e*(n?6.5:3.2),this.frameTimer+=e;this.frameTimer>=.055;){this.frameTimer-=.055,this.swimFrame=(this.swimFrame+1)%16,this.tankSpinFrame=(this.tankSpinFrame+1)%16;let e=this.time.now<this.tankSpinUntil;this.currentLegendary?this.legendaryLayer.setTexture(this.pickFrameKey(this.currentLegendary,this.swimFrame)):(this.bodyLayer.setTexture(e?this.pickSpinFrameKey(this.currentBody,this.tankSpinFrame):this.pickFrameKey(this.currentBody,this.swimFrame)),this.eyesLayer.setVisible(!e).setTexture(this.pickFrameKey(this.currentEyes,this.swimFrame)),this.clothesLayer.setVisible(!!this.currentClothes&&!e),this.hatLayer.setVisible(!!this.currentHat&&!e),this.clothesLayer.visible&&this.clothesLayer.setTexture(this.pickFrameKey(this.currentClothes,this.swimFrame)),this.hatLayer.visible&&this.hatLayer.setTexture(this.pickFrameKey(this.currentHat,this.swimFrame)))}t.x>18&&this.octo.setScale(1,1),t.x<-18&&this.octo.setScale(-1,1);let i=Math.sin(this.swimTime),a=1+i*.018*r,o=1-i*.014*r,s=.68*this.mass*this.visualScaleCompensation,c=this.time.now<this.tankSpinUntil;if(c&&this.damageEnemiesTouchedBySpin(),!c&&this.tankWasSpinning&&(this.tankWasSpinning=!1,this.tankSpinHitEnemies.clear(),this.bodyLayer.setTexture(this.pickFrameKey(this.currentBody,this.swimFrame))),c&&(this.tankWasSpinning=!0),this.currentLegendary){this.legendaryLayer.setVisible(!0).setScale(s*a,s*o),this.bodyLayer.setVisible(!1),this.eyesLayer.setVisible(!1),this.clothesLayer.setVisible(!1),this.hatLayer.setVisible(!1),this.boostLayer.setVisible(!1),this.octo.rotation=Math.sin(this.swimTime*.72)*Z.DegToRad(1.35)*r;return}this.legendaryLayer.setVisible(!1);let l=c?s*.56:s;if(this.bodyLayer.setScale(l*a,l*o),this.eyesLayer.setScale(s*a,s*o),this.clothesLayer.visible&&this.clothesLayer.setScale(s*a,s*o),this.hatLayer.visible&&this.hatLayer.setScale(s*a,s*o),this.boostLayer.visible&&this.boostLayer.setScale(.28*this.mass*this.visualScaleCompensation),this.time.now<this.tankSpinUntil){this.octo.rotation=Math.sin(this.swimTime*3.5)*Z.DegToRad(4);return}this.eyesLayer.setVisible(!0),this.clothesLayer.setVisible(!!this.currentClothes),this.hatLayer.setVisible(!!this.currentHat),this.octo.rotation=Math.sin(this.swimTime*.72)*Z.DegToRad(1.35)*r}onOctoGlyphsEvent(e){if(e?.type){if(this.lastEventReceivedAt=this.time?.now||Date.now(),e.type===`prompt.sent`){this.onPromptSent(e);return}if(e.type===`response.chunk`){this.onChunk(e);return}if(e.type===`response.completed`){this.onResponseCompleted(e);return}if(e.type===`tool.used`){this.onToolUsed(e);return}if(e.type===`build.finished`){this.onBuildFinished(e);return}e.type===`commit.created`&&this.onCommitCreated(e)}}onPromptSent(e){let t=Number(e.prompt_chars||0),n=Number(e.prompt_tokens||Math.ceil(t/4)||0),r=Math.max(n,Math.ceil(t/4)),i=Z.Clamp(Math.ceil(r/70),3,16),a=r>900?`silver`:`green`;this.save.lifetime.prompts+=1,this.save.lifetime.tankHuntCharges=Number(this.save.lifetime.tankHuntCharges||0)+1,this.save.lifetime.tokens+=n,this.awardOrSpawnGems(i,a),this.mass=1+Math.min(.65,this.save.lifetime.tokens/16e4),this.applyLoadoutSprites(),this.emitState(),this.emitTankHuntCharge(),Ze(this.save)}onChunk(){this.save.lifetime.chunks+=1,this.awardOrSpawnGems(1,`green`),this.emitState(),Ze(this.save)}onResponseCompleted(e){let t=Number(e.completion_tokens||0),n=Number(e.chunk_count||0),r=Number(e.duration_ms||0),i=Z.Clamp(Math.floor((t+r/25)/220),3,18),a=t>1400?`pink`:this.pickGemType(0,t);this.save.lifetime.tokens+=t,this.awardOrSpawnGems(i,a),!this.isBackgroundCollectMode()&&(t>=900||n>=32||r>=18e3||Z.Between(1,100)<=12*this.stats.luck)&&this.spawnTraitDiscovery(),this.mass=1+Math.min(.65,this.save.lifetime.tokens/16e4),this.applyLoadoutSprites(),this.emitState(),Ze(this.save)}onToolUsed(e){let t={file_read:`blue`,file_write:`silver`,shell:`yellow`,web:`blue`,build:`yellow`,test:`yellow`,git:`pink`,search:`blue`,memory:`silver`,other:`green`}[e.tool_kind]||`green`,n=e.success===!1?1:2;this.awardOrSpawnGems(n,t),this.emitState()}onBuildFinished(e){this.awardOrSpawnGems(e.success?5:2,e.success?`yellow`:`green`),!this.isBackgroundCollectMode()&&e.success&&Number(e.duration_ms||0)>1e4&&this.spawnTraitDiscovery(),this.emitState()}onCommitCreated(e){let t=Number(e.files_changed_count||0),n=Z.Clamp(3+t,4,14);this.awardOrSpawnGems(n,`pink`),this.save.lifetime.commits=Number(this.save.lifetime.commits||0)+1,this.save.lifetime.commits%5==0&&this.spawnTraitDiscovery(!0),this.emitState(),Ze(this.save)}pickGemType(e,t){if(t>1400)return`pink`;if(e>1e3)return`silver`;let n=Z.Between(1,100),r=0;for(let[e,t]of Dt)if(r+=t,n<=r)return e;return`green`}awardOrSpawnGems(e,t=`green`){if(this.isBackgroundCollectMode()){this.enqueueBackgroundGems(e,t);return}this.spawnGem(e,t)}enqueueBackgroundGems(e,t=`green`){let n=Math.max(0,Math.floor(e||0));if(n<=0)return;let r=ie[t]||ie.green,i=ie[t]?t:`green`,a=Math.max(1,Math.round((r.value||1)*this.stats.gemValue)),o=this.backgroundLedgerOcto||{x:this.octo?.x||this.worldWidth/2,y:this.octo?.y||this.worldHeight/2};for(let e=0;e<n;e+=1){let t=this.pickGemSpawnPosition(),n={id:`${Date.now()}-${this.backgroundGemLedger.length}-${e}`,type:i,value:a,x:this.wrapValue(t.x,this.worldWidth),y:this.wrapValue(t.y,this.worldHeight),spawnedAt:this.getBackgroundLedgerNow()};this.backgroundGemLedger.push(n),o={x:n.x,y:n.y}}this.backgroundLedgerOcto=o,this.backgroundLedgerAvailableAt=0}reconcileBackgroundGemLedger(){if(!this.backgroundGemLedger?.length)return;let e=this.getBackgroundLedgerNow(),t=[],n=0,r=0,i=null;for(let a of this.backgroundGemLedger){if(a.collectAt<=e){tt(this.save,a.type,a.value),n+=1,r+=a.value,this.backgroundCollectedByType[a.type]=(this.backgroundCollectedByType[a.type]||0)+a.value,i=a;continue}t.push(a)}this.backgroundGemLedger=t,i&&(this.backgroundLedgerOcto={x:i.x,y:i.y},this.octo?.active&&(this.octo.setPosition(i.x,i.y),this.octo.body?.setVelocity(0,0))),n>0&&(this.backgroundCollectedGems+=n,this.backgroundCollectedValue+=r,Ze(this.save),Et(`firstGem`,this.save))}materializeBackgroundGemLedger(){if(!this.backgroundGemLedger?.length)return 0;let e=this.backgroundGemLedger;this.backgroundGemLedger=[],this.backgroundLedgerOcto=null,this.backgroundLedgerAvailableAt=0;for(let t of e)this.spawnGemAt(t.x,t.y,t.type,{value:t.value});return this.autopilotCollectTarget=null,e.length}flushBackgroundCollectedGems(){let e=this.materializeBackgroundGemLedger();!this.backgroundCollectedGems&&!e||(this.backgroundCollectedGems=0,this.backgroundCollectedValue=0,this.backgroundCollectedByType={},e>0&&this.game.events.emit(`octoglyphs:notice`,`${e} activity gem${e===1?``:`s`} are waiting in the tank.`),this.emitState())}getBackgroundLedgerNow(){return Date.now()}getBackgroundCollectSpeed(){return Math.max(72,112*(this.stats?.swimSpeed||1)*(this.stats?.idleEfficiency||1))}spawnGem(e,t=`green`){for(let n=0;n<e;n+=1){let e=this.pickGemSpawnPosition();this.spawnGemAt(e.x,e.y,t)}}pickGemSpawnPosition(){let e=this.cameras.main.worldView;if(!this.octo?.active)return{x:Z.Between(90,this.worldWidth-90),y:Z.Between(110,this.worldHeight-90)};if(!this.tankHuntActive){let e=this.octo.rotation+Math.PI+Z.FloatBetween(-.45,.45),t=Z.Between(92,212);return{x:this.octo.x+Math.cos(e)*t,y:this.octo.y+Math.sin(e)*t}}return{x:this.wrapValue(Z.Between(e.x-70,e.right+70),this.worldWidth),y:this.wrapValue(Z.Between(e.y-70,e.bottom+70),this.worldHeight)}}onVisibilityChanged(){let e=this.isBackgroundCollectMode(),t=typeof document<`u`&&(!!document.hidden||document.visibilityState===`hidden`),n=typeof document>`u`||typeof document.hasFocus!=`function`||document.hasFocus(),r=this.isPageHidden;if(this.isPageHidden=t,this.isWindowFocused=n,this.emitVisibilityDiagnostics(),t&&!r){this.visibilityPauseStartedAt=this.time?.now||0,this.tankHuntActive&&(this.pauseTankHuntForVisibility(),this.game.events.emit(`octoglyphs:notice`,`Tank Hunt paused while the tank is out of view.`));return}!t&&r&&this.tankHuntActive&&(this.resumeTankHuntFromVisibility(),this.game.events.emit(`octoglyphs:notice`,`Tank Hunt resumed.`)),e&&!this.isBackgroundCollectMode()&&this.flushBackgroundCollectedGems()}emitVisibilityDiagnostics(){let e=typeof document>`u`?`visible`:document.visibilityState||(this.isPageHidden?`hidden`:`visible`),t=this.isWindowFocused?`focused`:`unfocused`,n=this.isBackgroundCollectMode()?`background ledger`:this.tankHuntActive&&this.isPageHidden?`hunt paused`:`live swim`,r=this.backgroundGemLedger?.length||0,i=r?` · ledger ${r}`:``;this.game.events.emit(`octoglyphs:visibility`,`${e} · ${t} · ${n}${i}`)}pauseTankHuntForVisibility(){this.physics.world.pause();let e=[this.tankWaveTimer,this.autoFireTimer,this.tankHuntEndTimer,this.tankSpecificWaveTimer];for(let t of e)t&&(t.paused=!0)}resumeTankHuntFromVisibility(){this.physics.world.resume();let e=[this.tankWaveTimer,this.autoFireTimer,this.tankHuntEndTimer,this.tankSpecificWaveTimer];for(let t of e)t&&(t.paused=!1)}isBackgroundCollectMode(){return this.tankHuntActive?!1:this.isPageHidden}startTankHunt(){if(this.tankHuntActive){this.requestTankHuntEnd();return}this.consumeTankHuntCharge()&&(this.clearTankHuntActors(),this.clearTankHuntGems(),this.tankHuntActive=!0,this.tankHuntEnding=!1,this.tankHuntKills=0,this.tankHuntGoal=0,this.tankHuntWave=0,this.tankHuntTotalKills=0,this.tankHuntBossKills=0,this.tankHuntGemsCollected=0,this.tankHuntGemSources={},this.tankHuntDamageTaken=0,this.tankHuntStartedAt=this.time.now,this.tankBoss=null,this.tankWaveResolving=!1,this.tankWaveToken=0,this.tankActiveEvent=null,this.tankEventOverlay&&=(this.tankEventOverlay.destroy(),null),this.tankContinueWave=null,this.tankContinueChoicePending=!1,this.tankSpecificWaveTimer?.remove(!1),this.tankSpecificWaveTimer=null,this.tankSpecificWavePending=null,this.tankRunStats=this.createTankRunStats(),this.tankNextLevelAllowedAt=0,this.lastTankMutationRoles=[],this.tankBossRewardChoiceActive=!1,this.tankBossRewardContainer=null,this.applyPersistentHuntLoadout(),this.refreshStats(),this.tankInvincibleUntil=0,this.tankSpinUntil=0,this.tankSpinStartedAt=0,this.tankSpinFrame=0,this.createTankHud(),this.configureAutoFireTimer(),this.zoomForTankHunt(!0),this.tankBackgroundDepthIndex=0,this.setTankBackground(Oe(this.tankBackgroundDepthIndex)),this.game.events.emit(`octoglyphs:notice`,`${this.getTankArchetypeLabel()} Hunt: ${this.getTankRouteRules().routeLabel}. Clear waves, stack mutations, then decide whether to continue.`),this.startNextTankWave(),this.isPageHidden&&this.pauseTankHuntForVisibility(),Et(`firstHuntStart`,this.save))}getTankHuntChargeState(){let e=Math.max(0,Number(this.save?.lifetime?.tankHuntCharges||0));return{prompts:e,cost:jt,ready:e>=jt,huntsReady:Math.floor(e/jt),remaining:Math.max(0,jt-e)}}emitTankHuntCharge(){this.game.events.emit(`octoglyphs:hunt-charge`,this.getTankHuntChargeState())}consumeTankHuntCharge(){let e=this.getTankHuntChargeState();return e.ready?(this.save.lifetime.tankHuntCharges=Number(this.save.lifetime.tankHuntCharges||0)-jt,Ze(this.save),this.emitTankHuntCharge(),!0):(this.game.events.emit(`octoglyphs:notice`,`Tank Hunt charges in ${e.remaining} prompt${e.remaining===1?``:`s`}.`),this.emitTankHuntCharge(),!1)}applyPersistentHuntLoadout(){let e=ut(this.save).filter(Boolean);for(let t of e){let e=t.statMods||{};e.swimSpeed&&(this.tankRunStats.swimSpeed*=Math.max(.75,1+e.swimSpeed)),e.magnetRange&&(this.tankRunStats.magnetRange*=Math.max(.75,1+e.magnetRange)),e.damage&&(this.tankRunStats.damageBonus+=Math.max(0,Math.round(e.damage*5))),e.armor&&(this.tankRunStats.maxHp+=Math.floor(e.armor)),e.gemValue&&this.addTankFamilyRank(`prism`,1),e.luck&&(this.tankRunStats.luckBonus=(this.tankRunStats.luckBonus||0)+e.luck),this.applyAssetHuntMods(t),this.seedAssetHuntFamily(t)}let t=e.map(e=>e.id),{active:n,partial:r}=Ie(t),i=ze(t),a=Be(i);if(this.activeSynergies=n,this.partialSynergies=r,this.activeTraitInteractions=a,this.tankRunStats.activeSynergyIds=n.map(e=>e.id),this.tankRunStats.traitFlagCounts=i,this.tankRunStats.activeInteractionIds=a.map(e=>e.id),this.tankRunStats.activeInteractionFlags=a.reduce((e,t)=>Object.assign(e,t.bullet||{},t.run||{}),{}),n.length>0){let e=Le(n);this.applyAssetHuntMods({huntMods:e});let t=Re(n);t.swimSpeed&&(this.tankRunStats.swimSpeed*=Math.max(.75,1+t.swimSpeed)),t.magnetRange&&(this.tankRunStats.magnetRange*=Math.max(.75,1+t.magnetRange)),t.damage&&(this.tankRunStats.damageBonus+=Math.max(0,Math.round(t.damage*5))),t.armor&&(this.tankRunStats.maxHp+=Math.floor(t.armor)),t.luck&&(this.tankRunStats.luckBonus=(this.tankRunStats.luckBonus||0)+t.luck),t.gemValue&&this.addTankFamilyRank(`prism`,2)}this.seedStartingArchetypeIdentity(),this.finalizePersistentHuntLoadout()}finalizePersistentHuntLoadout(){this.clampStartingTankPower(),this.tankRunStats.maxHp=Math.max(1,this.tankRunStats.maxHp),this.tankRunStats.hp=this.tankRunStats.maxHp,this.tankRunStats.xpBreakpoints=Kt.map(e=>Math.max(6,Math.ceil(e*this.tankRunStats.nextXpMult))),this.tankRunStats.nextXp=this.getTankXpForNextLevel(),this.refreshTankOrbiters(),this.configureAutoFireTimer(),activeSynergies.length>0&&this.time.delayedCall(600,()=>{for(let e of activeSynergies)this.showCenterTraitText(`${e.name} ACTIVATED!`),this.game.events.emit(`octoglyphs:notice`,`${e.name}: ${e.desc}`)})}applyAssetHuntMods(e){let t=e.huntMods||{};if(!(!t||Object.keys(t).length===0)){t.family&&this.addTankFamilyRank(t.family,4),t.swimSpeed&&(this.tankRunStats.swimSpeed*=t.swimSpeed),t.magnetRange&&(this.tankRunStats.magnetRange*=t.magnetRange),t.fireDelay&&(this.tankRunStats.fireDelay*=t.fireDelay),t.shotSpeed&&(this.tankRunStats.shotSpeed*=t.shotSpeed),t.shotLifetime&&(this.tankRunStats.shotLifetime*=t.shotLifetime),t.nextXpMult&&(this.tankRunStats.nextXpMult*=t.nextXpMult);for(let e of`damageBonus.maxHp.extraProjectiles.bulletScale.pierce.split.orbit.poison.bounce.spinPower.homing.contagion.gemPulse.wakeTrail.guardianCharges.broadside.backblast.inkMines.spiral.prismFork.critChance.luckBonus.wiggle.boomerang.lumpOfCoal.chain.fear.freeze.spectral.anchorShot.vampireSiphon.blackHolePearl.tinyOcto.hungryGems.bossPressure.routeEliteBonus.gemDropBonus.pressureBreakerBonus.echoShot`.split(`.`))t[e]&&(this.tankRunStats[e]=(this.tankRunStats[e]||0)+t[e]);this.applyPresetFamilyRule(t)}}applyPresetFamilyRule(e){let t=Object.keys(zt).find(t=>e[`presetFamily${t.charAt(0).toUpperCase()}${t.slice(1)}`]);t&&this.applyPresetIdentity(t)}applyPresetIdentity(e){let t=zt[e];if(!t)return;let n=this.tankRunStats;this.removePresetIdentity(),n.presetFamily=e,n.presetTint=t.tint,n.presetLabel=t.label,n.primaryFamily=t.routeFamily,this.addTankFamilyRank(t.routeFamily,12);for(let[e,r]of Object.entries(t.mods))Bt.has(e)?n[e]*=r:n[e]=(n[e]||0)+r;n.appliedPresetMods={...t.mods}}removePresetIdentity(){let e=this.tankRunStats,t=e.appliedPresetMods;if(t){for(let[n,r]of Object.entries(t))Bt.has(n)?r!==0&&(e[n]/=r):e[n]=(e[n]||0)-r;e.appliedPresetMods=null}}rebuildLiveHuntLoadout(e=null){if(!this.tankHuntActive||!this.tankRunStats)return;let t=this.tankRunStats,n=this.captureLiveHuntRunState(t);this.tankRunStats=this.createTankRunStats(),this.applyPersistentHuntLoadout(),e&&zt[e]&&this.applyPresetIdentity(e),this.restoreLiveHuntRunState(n),this.configureAutoFireTimer(),this.refreshTankOrbiters(),this.updateTankHud()}captureLiveHuntRunState(e){return{level:e.level,xp:e.xp,nextXp:e.nextXp,hp:e.hp,mutationRanks:{...e.mutationRanks||{}},mutationChoices:[...e.mutationChoices||[]],bossRewards:[...e.bossRewards||[]],bossRewardChoices:[...e.bossRewardChoices||[]],lastTankMutationRoles:[...this.lastTankMutationRoles||[]],shotCounter:e.shotCounter||0,nextGemResonanceAt:e.nextGemResonanceAt||0,nextGoldenPrismAt:e.nextGoldenPrismAt||0,shotPatternIndex:e.shotPatternIndex||0}}restoreLiveHuntRunState(e){let t=this.tankRunStats;t.level=Math.max(1,e.level||1),t.xp=Math.max(0,e.xp||0),t.mutationRanks={...e.mutationRanks||{}},t.mutationChoices=[...e.mutationChoices||[]],t.bossRewards=[...e.bossRewards||[]],t.bossRewardChoices=[...e.bossRewardChoices||[]],t.shotCounter=e.shotCounter||0,t.nextGemResonanceAt=e.nextGemResonanceAt||0,t.nextGoldenPrismAt=e.nextGoldenPrismAt||0,t.shotPatternIndex=e.shotPatternIndex||0,this.lastTankMutationRoles=[...e.lastTankMutationRoles||[]];for(let[e,n]of Object.entries(t.mutationRanks)){let r=cn.find(t=>t.id===e);if(r)for(let i=0;i<n;i+=1)t.mutationRanks[e]=i+1,t.familyRanks[r.family]=(t.familyRanks[r.family]||0)+1,r.apply(this),this.applyTankFamilyEvolutions(r.family)}for(let e of t.bossRewards){let n=un.find(t=>t.id===e);n&&(t.familyRanks[n.family]=(t.familyRanks[n.family]||0)+1,n.apply(this))}t.maxHp=Math.max(1,t.maxHp),t.hp=Z.Clamp(e.hp||t.maxHp,1,t.maxHp),t.nextXp=Math.max(t.xp+1,this.getTankXpForNextLevel(t.level))}seedAssetHuntFamily(e){let t=e.id||``,n=`${e.name||``} ${t}`.toLowerCase(),r=e.statMods||{},i=e.huntMods?.family;i&&this.addTankFamilyRank(i,4),r.swimSpeed>0&&this.addTankFamilyRank(`current`,1),r.damage>0&&this.addTankFamilyRank(`inkstorm`,1),r.armor>0&&this.addTankFamilyRank(`shell`,1),(r.luck>0||r.gemValue>0)&&this.addTankFamilyRank(`prism`,1),e.slot===`eyes`&&this.addTankFamilyRank(`prism`,1),e.slot===`hat`&&this.addTankFamilyRank(`shell`,1),(n.includes(`acid`)||n.includes(`toxic`)||n.includes(`zombie`)||n.includes(`evil`)||n.includes(`devil`)||n.includes(`midnight`))&&this.addTankFamilyRank(`abyss`,1),(n.includes(`magma`)||n.includes(`fire`)||n.includes(`laser`)||n.includes(`red`)||n.includes(`angry`))&&this.addTankFamilyRank(`inkstorm`,1),(n.includes(`aqua`)||n.includes(`teal`)||n.includes(`lime`)||n.includes(`propeller`)||n.includes(`wing`)||n.includes(`rocket`))&&this.addTankFamilyRank(`current`,1),(n.includes(`metal`)||n.includes(`charcoal`)||n.includes(`helmet`)||n.includes(`armor`)||n.includes(`shell`))&&this.addTankFamilyRank(`shell`,1),(n.includes(`gold`)||n.includes(`crown`)||n.includes(`crypto`)||n.includes(`rainbow`)||n.includes(`diamond`)||n.includes(`gem`))&&this.addTankFamilyRank(`prism`,1)}addTankFamilyRank(e,t=1){this.tankRunStats.familyRanks[e]=(this.tankRunStats.familyRanks[e]||0)+t}seedStartingArchetypeIdentity(){if(this.tankRunStats.presetFamily&&zt[this.tankRunStats.presetFamily]){this.tankRunStats.primaryFamily=zt[this.tankRunStats.presetFamily].routeFamily;return}this.tankRunStats.primaryFamily=this.getDominantTankFamily()}clampStartingTankPower(){let e=this.tankRunStats;for(let[t,n]of Object.entries(on))typeof e[t]==`number`&&(t===`fireDelay`||t===`nextXpMult`?e[t]=Math.max(n,e[t]):e[t]=Math.min(n,e[t]));e.bulletScale=Math.max(.75,e.bulletScale),e.swimSpeed=Math.max(.75,e.swimSpeed),e.magnetRange=Math.max(.75,e.magnetRange),e.shotSpeed=Math.max(360,e.shotSpeed),e.shotLifetime=Math.max(1100,e.shotLifetime),e.startingPowerScore=this.calculateStartingPowerScore()}calculateStartingPowerScore(){let e=this.tankRunStats,t=[`extraProjectiles`,`broadside`,`backblast`,`spiral`,`split`,`chain`,`homing`,`orbit`,`freeze`,`fear`,`poison`,`prismFork`,`guardianCharges`,`inkMines`].reduce((t,n)=>t+Math.max(0,e[n]||0),0),n=Math.max(0,(en-e.fireDelay)/35),r=Math.max(0,e.damageBonus||0)*.75,i=Math.max(0,(e.maxHp||rn)-rn)*.8;return Math.round(t+n+r+i)}getDominantTankFamily(){let e=Object.entries(this.tankRunStats.familyRanks||{});return e.length===0?`tide`:(e.sort((e,t)=>t[1]-e[1]),e[0][0])}getTankArchetypeLabel(){return Yt[this.tankRunStats.primaryFamily||this.getDominantTankFamily()]?.label||`Tank`}requestTankHuntEnd(){!this.tankHuntActive||this.tankHuntEnding||(this.tankHuntEnding=!0,this.tankWaveTimer?.remove(!1),this.tankWaveTimer=null,this.tankHuntGoal=this.tankHuntKills+this.enemies.countActive(!0),this.game.events.emit(`octoglyphs:notice`,`Ending Tank Hunt. Survive final cleanup.`),this.game.events.emit(`octoglyphs:hunt-state`,this.getTankHuntState()),this.tankHuntEndTimer=this.time.delayedCall(8e3,()=>this.endTankHunt(!1)))}startNextTankWave(){if(!this.tankHuntActive||this.tankBoss||this.tankUpgradeChoiceActive||this.tankContinueChoiceActive||this.tankWaveResolving)return;this.tankWaveTimer?.remove(!1),this.tankWaveTimer=null,this.tankWaveResolving=!1,this.tankHuntWave+=1,this.tankWaveToken+=1;let e=this.tankHuntWave,t=this.tankWaveToken;(!this.activeBackgroundKey||e===1)&&this.setTankBackground(Oe(this.tankBackgroundDepthIndex||0)),this.tankHuntGoal=9+e*7,this.tankHuntKills=0,this.tankBurstCount=0,this.currentWaveRecipe=Ht(e,this.tankRunStats.primaryFamily||this.getDominantTankFamily());let n=this.currentWaveRecipe;this.checkTriggerDifficultyEvent(e);let r=this.getTankWaveInterval(e,n);this.game.events.emit(`octoglyphs:hunt-state`,this.getTankHuntState()),this.spawnTankWaveBurst(e,t),this.tankWaveTimer=this.time.addEvent({delay:r,loop:!0,callback:()=>this.spawnTankWaveBurst(e,t)})}checkTriggerDifficultyEvent(e){let t=Wt(e);if(!t)return;let n=this.tankRunStats?.startingPowerScore||0,r=1+Math.min(.25,n*.015),i=Math.round(t.duration*r);this.tankActiveEvent={def:t,endsAt:this.time.now+i},this.showDifficultyEventBanner(t,i),this.time.delayedCall(i,()=>{this.endDifficultyEvent()})}showDifficultyEventBanner(e,t){this.tankEventOverlay&&=(this.tankEventOverlay.destroy(),null),this.tankEventOverlay=this.add.rectangle(this.cameras.main.width/2,this.cameras.main.height/2,this.cameras.main.width,this.cameras.main.height,e.tint,.18).setDepth(998).setScrollFactor(0).setAlpha(0),this.tweens.add({targets:this.tankEventOverlay,alpha:.18,duration:400,yoyo:!1});let n=this.add.text(this.cameras.main.width/2,this.cameras.main.height*.28,e.label,{fontFamily:`"Press Start 2P", monospace`,fontSize:`22px`,color:e.color,align:`center`,stroke:`#000000`,strokeThickness:6}).setOrigin(.5).setDepth(1001).setScrollFactor(0).setAlpha(0);this.tweens.add({targets:n,alpha:1,duration:300,yoyo:!0,hold:2200,onComplete:()=>{n?.active&&n.destroy()}}),this.time.delayedCall(t-500,()=>{this.tankEventOverlay?.active&&this.tweens.add({targets:this.tankEventOverlay,alpha:0,duration:500,onComplete:()=>{this.tankEventOverlay&&=(this.tankEventOverlay.destroy(),null)}})})}endDifficultyEvent(){this.tankActiveEvent=null,this.tankEventOverlay?.active&&(this.tankEventOverlay.destroy(),this.tankEventOverlay=null),this.tankHuntActive&&this.showCenterTraitText(`PRESSURE EASED`)}getTankRouteRules(){return Xt[this.tankRunStats?.primaryFamily||this.getDominantTankFamily?.()||`tide`]||Xt.tide}getLiveProjectilePressure(){let e=this.tankRunStats||{},t=this.bullets?.countActive(!0)||0,n=this.playerMines?.countActive(!0)||0,r=this.tankOrbiters?.filter(e=>e.active).length||0,i=Math.max(0,(en-(e.fireDelay||en))/24),a=t*.18,o=n*.38,s=r*.95,c=(e.homing||0)*1.25+(e.chain||0)*1.45+(e.pierce||0)*1.15+(e.bounce||0)*1.05+(e.split||0)*1.65+(e.broadside||0)*1.45+(e.spiral||0)*1.2+(e.prismFork||0)*1.25,l=Math.max(0,e.damageBonus||0)*.62,u=Math.max(0,(e.bulletScale||1)-1)*3.8,d=(e.activeSynergyIds||[]).length*1.4+(e.activeInteractionIds||[]).length*.9;return Z.Clamp(Math.round(i+a+o+s+c+l+u+d),0,36)}getTankPlayerMaxSpeed(){return 190*(this.stats?.swimSpeed||1)*(this.tankRunStats?.swimSpeed||1)}getFairEnemyCruiseSpeed(e,t){let n=this.getTankPlayerMaxSpeed(),r=e.getData(`behavior`)||`chaser`,i=!!e.getData(`boss`),a=!!e.getData(`pressureBreaker`),o=.82;return i?o=.78:r===`sniper`||r===`herder`||r===`blocker`?o=.72:r===`dart`||r===`pouncer`||r===`charger`?o=.94:(r===`flanker`||r===`zigzag`||r===`spiraler`)&&(o=.88),a&&(o=Math.min(.96,o+.08)),Math.min(t,n*o)}getFairEnemyDashSpeed(e,t,n=1.35,r=0){let i=this.getTankPlayerMaxSpeed();return Math.min(Math.max(t,r),i*n)}getTankDifficultyPressure(){let e=this.tankRunStats?.startingPowerScore||0,t=Z.Clamp(Math.floor(e/3),0,12),n=this.getLiveProjectilePressure();return Z.Clamp(Math.max(t,Math.floor(n/2)),0,20)}getProjectilePressureTier(){let e=this.getTankDifficultyPressure();return e>=15?3:e>=10?2:+(e>=6)}getTankWaveInterval(e,t=this.currentWaveRecipe){let n=this.getTankDifficultyPressure(),r=Math.max(220,680-e*45),i=this.tankActiveEvent&&this.time.now<this.tankActiveEvent.endsAt&&this.tankActiveEvent.def.spawnMult||1,a=1+Math.min(.45,n*.04),o=this.getTankRouteRules();return Math.max(150,Math.round(r*(t?.intervalMult||1)*(o.intervalMult||1)*(this.tankRunStats.waveIntervalMult||1)/(i*a)))}spawnTankWaveBurst(e,t=this.tankWaveToken){if(!this.tankHuntActive||this.tankBoss||this.tankUpgradeChoiceActive||this.tankContinueChoiceActive||this.tankWaveResolving||e!==this.tankHuntWave||t!==this.tankWaveToken||this.tankHuntKills>=this.tankHuntGoal)return;this.tankBurstCount=(this.tankBurstCount||0)+1;let n=this.getProjectilePressureTier(),r=n>=3?8:n>=2?6:3+Math.floor(e/4);if(this.tankBurstCount>=r){this.tankBurstCount=0,(n>=2||(this.tankRunStats.pressureBreakerBonus||0)>0)&&this.spawnPressureBreakerEnemy(e,this.currentWaveRecipe||null);return}let i=this.currentWaveRecipe||Vt.find(e=>e.id===`mixed_assault`),a=this.getTankRouteRules(),o=this.getTankDifficultyPressure(),s=2+Math.floor(e/2)+Math.floor(o/5),c=n>=3?1.28:n>=2?1.16:1,l=Math.max(1,Math.round(s*(i.countMult||1)*(a.countMult||1)*c)),u=this.pickFormationPositions(l,i);for(let t=0;t<l;t+=1)this.spawnTankEnemy(!1,e,i,u[t]||null)}spawnPressureBreakerEnemy(e,t=null){if(!this.tankHuntActive||!this.octo?.active||this.enemies.countActive(!0)>28+e*4)return;let n=this.getProjectilePressureTier(),r=this.pickPressureSpawnPosition(),i=t||{enemies:[`tank-enemy-enemi4`,`tank-enemy-enemi5`,`tank-enemy-enemi1112`,`tank-enemy-narval`]},a=this.spawnTankEnemy(!1,e,i,r);a?.active&&(a.setData(`pressureBreaker`,!0),a.setData(`entryArmorUntil`,this.time.now+(n>=3?1150:850)),a.setData(`entryArmorMult`,n>=3?.2:.35),a.setData(`speed`,(a.getData(`speed`)||90)*(n>=3?1.1:1.04)),a.setTint(8978380),this.spawnPulseVisual(a.x,a.y,54,8978380))}spawnTankEnemy(e=!1,t=this.tankHuntWave||1,n=null,r=null){if(!this.tankHuntActive&&!e)return;let i=16+Math.min(26,t*5);if(!e&&this.enemies.countActive(!0)>=i)return;let a=r||this.pickTankSpawnPosition(),o;if(e){let e=re.Array.GetRandom(kt);o={...e,hp:Math.round(((e.hp||42)*1.9+t*22)*(this.getTankRouteRules().bossHpMult||1)*(1+(this.tankRunStats.bossPressure||0)*.18))}}else if(n&&n.enemies&&n.enemies.length>0){let e=re.Array.GetRandom(n.enemies);o=Ot.find(t=>t.key===e)||re.Array.GetRandom(Ot)}else{let e=Ot.filter(e=>e.minWave<=t);o=re.Array.GetRandom(e.length>0?e:Ot)}let s=this.getTankEnemyTextureKey(o),c=this.enemies.create(a.x,a.y,s),l=this.getTankDifficultyPressure(),u=this.tankActiveEvent&&this.time.now<this.tankActiveEvent.endsAt&&this.tankActiveEvent.def.eliteChanceMult||1,d=Math.min(76,Math.round((12+l*2.2+(this.getTankRouteRules().eliteBonus||0)+(this.tankRunStats.routeEliteBonus||0))*u)),f=!e&&t>=(l>=8?2:l>=4?3:4)&&Z.Between(1,100)<=d,p=f?this.pickEliteModifier():null,m=p?.hpMult||1,h=p?.speedMult||1,g=!e&&n?.hpMult?n.hpMult:1,_=!e&&n?.speedMult?n.speedMult:1,v=e?1+Math.min(3.2,l*.18):1+Math.min(1.45,l*.095),y=Math.round((o.hp+Math.max(0,t-1)*.55)*m*v*g);c.setData(`hp`,y),c.setData(`maxHp`,y);let b=!e&&l>=10?1+Math.min(.28,(l-9)*.025):1;c.setData(`speed`,(o.speed+Math.max(0,t-1)*6.5)*h*_*b);let x=`boss`;if(e){let e=o.key||``;x=e.includes(`red-shark`)?`boss_red_charger`:e.includes(`shark`)&&!e.includes(`mummy`)?`boss_charger`:e.includes(`mummy`)?`boss_phaser`:`boss_summoner`}c.setData(`behavior`,e?x:o.behavior||`chaser`),c.setData(`phase`,Z.FloatBetween(0,Math.PI*2)),c.setData(`strafe`,Z.RND.sign()),c.setData(`chargeUntil`,0),c.setData(`behaviorTimer`,this.time.now+Z.Between(700,1500)),c.setData(`dashDirX`,0),c.setData(`dashDirY`,0),c.setData(`dashUntil`,0),c.setData(`burstUntil`,0),c.setData(`wanderAngle`,Z.FloatBetween(0,Math.PI*2)),c.setData(`shotPattern`,Z.Between(0,2)),e&&(c.setData(`bossChargeState`,`stalk`),c.setData(`bossChargeTimer`,this.time.now+Z.Between(900,1600)),c.setData(`bossSummonCooldown`,this.time.now+Z.Between(2600,3800)),c.setData(`bossLungeCooldown`,this.time.now+Z.Between(1200,2200)),c.setData(`bossLungeUntil`,0),c.setData(`bossPhaseState`,`vulnerable`),c.setData(`bossPhaseTimer`,this.time.now+Z.Between(2800,4200)),c.setData(`bossMinimumLifeUntil`,this.time.now+(l>=12?3600:2200)),c.setData(`bossArmorMult`,l>=12?.42:.7));let S=this.tankActiveEvent&&this.time.now<this.tankActiveEvent.endsAt&&this.tankActiveEvent.def.gemDropMult||1,C=(this.getTankRouteRules().gemDropBonus||0)+(this.tankRunStats.gemDropBonus||0),w=Math.min(64,Math.round((Mt+Math.floor(t*.6)+Math.round((this.tankRunStats.luckBonus||0)*5)+C*100)*S)),T=Math.min(96,Math.round((Nt+Math.round((this.tankRunStats.luckBonus||0)*6)+C*55)*S)),E=Z.Between(1,100)<=w,D=Z.Between(1,100)<=T;c.setData(`gemType`,e||f?`blue`:this.pickTankEnemyGemType(t)),c.setData(`gems`,e?o.gems:f?+!!D:+!!E),c.setData(`boss`,e),c.setData(`elite`,f),c.setData(`eliteType`,p?.type||null),c.setData(`eliteTint`,p?.tint||null),c.setData(`facingOffset`,o.facingOffset??-90),c.setData(`flipX`,!!o.flipX),c.setData(`spawnedAt`,this.time.now),c.setData(`shootCooldown`,0),c.setData(`animFrames`,o.frames||0),c.setData(`animKey`,o.key),c.setData(`fixedRotation`,!!o.fixedRotation),c.setData(`flipWithDirection`,!!o.flipWithDirection),c.setScale(o.scale*(f?1.18:1)),c.setDepth(e?17:15),this.improveGameplayReadability(c,{outlineAlpha:e?.46:.4,haloColor:e?16732047:f?16769902:16777215,haloAlpha:e?.36:.22,haloBlur:e?10:7});let O=e?42:26,k=c.frame?.realWidth||c.width||O*2,A=c.frame?.realHeight||c.height||O*2;c.body.setCircle(O,k*.5-O,A*.5-O),c.body.setDamping(!0),c.body.setDrag(e?.94:.86),c.body.setMaxVelocity((o.speed+Math.max(0,t-1)*7)*h*_*(e?1.25:1.45));let j=this.toroidalDelta(c.x,c.y,this.octo.x,this.octo.y);return this.faceTankEnemy(c,j.dx,j.dy),e&&(this.tankBoss=c,this.tankWaveResolving=!0),c}pickEliteModifier(){return re.Array.GetRandom([{type:`armored`,hpMult:2,speedMult:.82,tint:8947865},{type:`swift`,hpMult:1,speedMult:1.35,tint:5636095},{type:`splitter`,hpMult:1.15,speedMult:.95,tint:16746564},{type:`shooter`,hpMult:1.25,speedMult:.82,tint:16729190}])}pickTankEnemyGemType(e){let t=Z.Between(1,100);return e>=5&&t<=5?`yellow`:e>=3&&t<=26?`blue`:`green`}pickTankSpawnPosition(){if(this.tankHuntActive&&this.octo?.active){let e=this.cameras.main.worldView,t=e.width*.5+60,n=e.height*.5+60,r=Z.Between(0,3);return r===0?{x:this.octo.x-t,y:this.octo.y+Z.Between(-n,n)}:r===1?{x:this.octo.x+t,y:this.octo.y+Z.Between(-n,n)}:r===2?{x:this.octo.x+Z.Between(-t,t),y:this.octo.y-n}:{x:this.octo.x+Z.Between(-t,t),y:this.octo.y+n}}let e=Z.Between(0,3);return e===0?{x:70,y:Z.Between(100,this.worldHeight-100)}:e===1?{x:this.worldWidth-70,y:Z.Between(100,this.worldHeight-100)}:e===2?{x:Z.Between(90,this.worldWidth-90),y:70}:{x:Z.Between(90,this.worldWidth-90),y:this.worldHeight-70}}pickPressureSpawnPosition(){if(!this.octo?.active)return this.pickTankSpawnPosition();let e=this.cameras.main.worldView,t=Math.min(e.width,e.height)*.22,n=Math.min(e.width,e.height)*.42,r=Z.FloatBetween(0,Math.PI*2),i=Z.Between(Math.round(t),Math.round(n));return{x:this.octo.x+Math.cos(r)*i,y:this.octo.y+Math.sin(r)*i}}pickFormationPositions(e,t){if(!this.octo?.active){let t=[];for(let n=0;n<e;n++)t.push(this.pickTankSpawnPosition());return t}let n=[`scatter`,`line`,`ring`,`cluster`],r=`scatter`;t&&(r=t.id===`swarm`?re.Array.GetRandom([`ring`,`cluster`]):t.id===`charger_rush`||t.id===`blitz`||t.id===`flanker_ambush`||t.id===`tank_wall`||t.id===`siege`?`line`:t.id===`mixed_assault`?re.Array.GetRandom(n):`scatter`);let i=this.cameras.main.worldView,a=Math.max(i.width,i.height)*.5+80,o=this.octo.x,s=this.octo.y,c=[];if(r===`line`){let t=Z.FloatBetween(0,Math.PI*2),n=o+Math.cos(t)*a,r=s+Math.sin(t)*a,i=-Math.sin(t),l=Math.cos(t),u=-(e-1)*48*.5;for(let t=0;t<e;t++)c.push({x:n+i*(u+t*48),y:r+l*(u+t*48)})}else if(r===`ring`){let t=a,n=Z.FloatBetween(0,Math.PI*2),r=Z.Between(0,e-1),i=e+1;for(let a=0;a<i;a++){if(a===r)continue;let l=n+Math.PI*2/i*a;if(c.push({x:o+Math.cos(l)*t,y:s+Math.sin(l)*t}),c.length>=e)break}}else if(r===`cluster`){let t=Z.FloatBetween(0,Math.PI*2),n=o+Math.cos(t)*a,r=s+Math.sin(t)*a;for(let t=0;t<e;t++)c.push({x:n+Z.Between(-40,40),y:r+Z.Between(-40,40)})}else for(let t=0;t<e;t++)c.push(this.pickTankSpawnPosition());return c}updateTankEnemies(){if(this.enemies)for(let e of this.enemies.getChildren()){if(!e.active||!e.body||!this.octo?.active)continue;let{dx:t,dy:n}=this.toroidalDelta(e.x,e.y,this.octo.x,this.octo.y),r=Math.max(.001,Math.hypot(t,n));if(this.tankUpgradeChoiceActive||this.tankBossRewardChoiceActive||this.tankContinueChoiceActive){e.body.setVelocity(0,0);continue}let i=e.getData(`speed`)||50,a=1;this.tankActiveEvent&&this.time.now<this.tankActiveEvent.endsAt&&(a=1+((this.tankActiveEvent.def.speedMult||1)-1)*.72);let o=this.getFairEnemyCruiseSpeed(e,i*a),s=e.getData(`behavior`)||`chaser`,c=e.getData(`phase`)||0,l=Math.max(0,this.time.now-(e.getData(`spawnedAt`)||this.time.now));if((e.getData(`eliteType`)===`shooter`||e.getData(`boss`)&&s!==`boss_summoner`)&&s!==`sniper`&&r<480){let i=e.getData(`shootCooldown`)||0;if(this.time.now>i){let i=e.getData(`boss`)?1800:2400;e.setData(`shootCooldown`,this.time.now+i),this.spawnEnemyProjectile(e,t/r,n/r)}}let u=t/r*o,d=n/r*o;if(s===`drifter`){let e=Math.sin(this.time.now*.003+c)*o*.55;u+=-n/r*e,d+=t/r*e}else if(s===`wanderer`){let i=e.getData(`behaviorTimer`)||0;if(this.time.now>i){let r=Math.atan2(n,t)+Z.FloatBetween(-1.25,1.25);e.setData(`wanderAngle`,r),e.setData(`behaviorTimer`,this.time.now+Z.Between(900,1800))}let a=e.getData(`wanderAngle`)||Math.atan2(n,t),s=Z.Clamp((r-180)/360,.15,.75);u=Math.cos(a)*o*.72+t/r*o*s,d=Math.sin(a)*o*.72+n/r*o*s}else if(s===`flanker`){let i=e.getData(`strafe`)||1,a=Z.Clamp((260-r)/260,0,1);u=t/r*o*(.55+a*.25)+-n/r*o*.78*i,d=n/r*o*(.55+a*.25)+t/r*o*.78*i,l>900&&Z.Between(0,1e3)<3&&e.setData(`strafe`,-i)}else if(s===`herder`){let i=e.getData(`strafe`)||1,a=Z.Clamp((r-250)/250,-.55,.75);u=t/r*o*a+-n/r*o*.92*i,d=n/r*o*a+t/r*o*.92*i,l>900&&Z.Between(0,1e3)<5&&e.setData(`strafe`,-i)}else if(s===`zigzag`){let e=Math.sin(this.time.now*.01+c)*o*1.1;u=t/r*o*.86+-n/r*e,d=n/r*o*.86+t/r*e}else if(s===`spiraler`){let i=e.getData(`strafe`)||1,a=Z.Clamp(r/420,.45,1.05);u=t/r*o*.42+-n/r*o*a*i,d=n/r*o*.42+t/r*o*a*i,(r<130||r>540)&&e.setData(`strafe`,-i)}else if(s===`blocker`){let e=Z.Clamp((r-155)/155,-.35,.8),i=Math.sin(this.time.now*.0025+c)*o*.42;u=t/r*o*e+-n/r*i,d=n/r*o*e+t/r*i}else if(s===`dart`){let i=e.getData(`dashUntil`)||0;if(this.time.now>i&&this.time.now>(e.getData(`behaviorTimer`)||0)&&r<640&&(e.setData(`dashDirX`,t/r),e.setData(`dashDirY`,n/r),e.setData(`dashUntil`,this.time.now+Z.Between(260,420)),e.setData(`behaviorTimer`,this.time.now+Z.Between(1200,2100))),this.time.now<(e.getData(`dashUntil`)||0)){let i=this.getFairEnemyDashSpeed(e,o*2.45,1.34,o*1.15);u=(e.getData(`dashDirX`)||t/r)*i,d=(e.getData(`dashDirY`)||n/r)*i,e.setData(`instantVelocity`,!0)}else{let e=Math.sin(this.time.now*.004+c)*o*.5;u=t/r*o*.52+-n/r*e,d=n/r*o*.52+t/r*e}}else if(s===`pouncer`){let i=e.getData(`chargeUntil`)||0;if(this.time.now>i&&r<560&&Z.Between(0,1e3)<12&&e.setData(`chargeUntil`,this.time.now+520),this.time.now<(e.getData(`chargeUntil`)||0)){let i=this.getFairEnemyDashSpeed(e,o*1.9,1.24,o*1.08);u=t/r*i,d=n/r*i}else{let e=Math.sin(this.time.now*.004+c)*o*.45;u=t/r*o*.68+-n/r*e,d=n/r*o*.68+t/r*e}}else if(s===`sniper`){let i=this.time.now>(e.getData(`shootCooldown`)||0),a=Z.Clamp((r-360)/360,-.65,.65),s=e.getData(`strafe`)||1;u=t/r*o*a+-n/r*o*.62*s,d=n/r*o*a+t/r*o*.62*s,i&&r<620&&(e.setData(`shootCooldown`,this.time.now+Z.Between(1500,2300)),this.spawnEnemyProjectile(e,t/r,n/r,{speed:210,scale:.46,tint:6741503,lifetime:3600})),l>900&&Z.Between(0,1e3)<4&&e.setData(`strafe`,-s)}else if(s===`boss_red_charger`){190*(this.stats?.swimSpeed||1)*(this.tankRunStats?.swimSpeed||1);let i=e.getData(`hp`)||1,a=e.getData(`maxHp`)||i,s=Z.Clamp(i/Math.max(1,a),0,1),l=s<.35?1.35:s<.65?1.18:1,f=e.getData(`bossChargeState`)||`stalk`,p=e.getData(`bossChargeTimer`)||0,m=this.time.now;if(f===`stalk`){e.clearTint();let i=o*.58*l,a=Math.sign(t||1),s=Z.Clamp(n/Math.max(1,Math.abs(n)),-1,1)*i*.38;u=a*i*.72,d=s+Math.sin(m*.0022+c)*i*.28,m>p&&r<620&&(e.setData(`bossChargeState`,`winding`),e.setData(`bossChargeTimer`,m+Math.round(520/l)),e.setData(`chargeDirX`,t/r),e.setData(`chargeDirY`,n/r))}else if(f===`winding`){let i=Math.floor(m/80)%2==0;e.setTint(i?16720418:16746564),u=-(t/r)*o*.18,d=-(n/r)*o*.18,m>p&&(e.clearTint(),e.setData(`bossChargeState`,`charging`),e.setData(`bossChargeTimer`,m+Math.round(760*l)))}else if(f===`charging`){e.setTint(16724753);let i=this.getFairEnemyDashSpeed(e,o*4.4*l,1.82*l,440),a=e.getData(`chargeDirX`)||t/r,s=e.getData(`chargeDirY`)||n/r;u=a*i,d=s*i,e.setData(`instantVelocity`,!0),m>p&&(e.clearTint(),e.setData(`bossChargeState`,`recovering`),e.setData(`bossChargeTimer`,m+Z.Between(520,820)))}else f===`recovering`&&(u=t/r*o*.18,d=n/r*o*.18,m>p&&(e.setData(`bossChargeState`,`stalk`),e.setData(`bossChargeTimer`,m+Z.Between(Math.round(620/l),Math.round(1100/l)))))}else if(s===`boss_charger`){let i=e.getData(`bossChargeState`)||`stalk`,a=e.getData(`bossChargeTimer`)||0,s=this.time.now;if(i===`stalk`){let i=o*.72,l=Math.sin(s*.0018+c)*i*.55;u=t/r*i+-n/r*l,d=n/r*i+t/r*l,s>a&&(e.setData(`bossChargeState`,`winding`),e.setData(`bossChargeTimer`,s+480),e.setData(`chargeDirX`,t/r),e.setData(`chargeDirY`,n/r))}else if(i===`winding`)u=-(t/r)*o*.28,d=-(n/r)*o*.28,Math.floor(s/100)%2==0?e.setTint(16737860):e.clearTint(),s>a&&(e.clearTint(),e.setData(`bossChargeState`,`charging`),e.setData(`bossChargeTimer`,s+820));else if(i===`charging`){let i=this.getFairEnemyDashSpeed(e,o*2.8,1.55,o*1.25),c=e.getData(`chargeDirX`)||t/r,l=e.getData(`chargeDirY`)||n/r;u=c*i,d=l*i,s>a&&(e.setData(`bossChargeState`,`recovering`),e.setData(`bossChargeTimer`,s+Z.Between(900,1400)))}else i===`recovering`&&(u=t/r*o*.32,d=n/r*o*.32,s>a&&(e.setData(`bossChargeState`,`stalk`),e.setData(`bossChargeTimer`,s+Z.Between(1e3,1800))))}else if(s===`boss_summoner`){let i=this.time.now,a=e.getData(`bossLungeUntil`)||0,s=e.getData(`bossLungeCooldown`)||0;if(i<a){let i=this.getFairEnemyDashSpeed(e,o*1.85,1.22,o*1.08),a=e.getData(`bossLungeDirX`)||t/r,s=e.getData(`bossLungeDirY`)||n/r;u=a*i,d=s*i}else{let a=o*.82,l=Math.sin(i*.002+c)*a*.48;u=t/r*a+-n/r*l,d=n/r*a+t/r*l,i>s&&r<560&&(e.setData(`bossLungeDirX`,t/r),e.setData(`bossLungeDirY`,n/r),e.setData(`bossLungeUntil`,i+520),e.setData(`bossLungeCooldown`,i+Z.Between(2400,3600)),e.setTint(16747224),this.time.delayedCall(260,()=>{e.active&&e.clearTint()}))}if(i>(e.getData(`bossSummonCooldown`)||0)){let t=Z.Between(2,4);for(let n=0;n<t;n++){let r=Math.PI*2/t*n+Z.FloatBetween(-.3,.3),i=Z.Between(40,70),a=e.x+Math.cos(r)*i,o=e.y+Math.sin(r)*i;this.spawnTankEnemy(!1,this.tankHuntWave||1,null,{x:a,y:o})}e.setTint(11158783),this.time.delayedCall(300,()=>{e.active&&e.clearTint()});let n=Math.max(2600,4600-(this.tankHuntWave||1)*120);e.setData(`bossSummonCooldown`,i+Z.Between(n,n+1200))}i>(e.getData(`shootCooldown`)||0)&&r<680&&(e.setData(`shootCooldown`,i+Z.Between(2600,3600)),this.fireOctoBossShotPattern(e,Math.atan2(n,t)))}else if(s===`boss_phaser`){let i=e.getData(`bossPhaseState`)||`vulnerable`,a=e.getData(`bossPhaseTimer`)||0,s=this.time.now;if(i===`vulnerable`){let i=o*.7;u=t/r*i,d=n/r*i,e.setAlpha(1),s>a&&(e.setData(`bossPhaseState`,`invulnerable`),e.setData(`bossPhaseTimer`,s+Z.Between(1700,2500)))}else{let i=this.getFairEnemyDashSpeed(e,o*2.25,1.34,o*1.16);u=t/r*i,d=n/r*i,e.setAlpha(.52),e.setTint(8978380),s>a&&(e.setData(`bossPhaseState`,`vulnerable`),e.setData(`bossPhaseTimer`,s+Z.Between(2600,4200)),e.setAlpha(1),e.clearTint())}}else if(s===`boss`){let e=Math.sin(this.time.now*.002+c)*o*.35;u+=-n/r*e,d+=t/r*e}else s===`fleeing`&&(u=-t/r*o,d=-n/r*o);this.tankRunStats.activeSynergyIds?.includes(`theme-ghost`)&&r<180&&!e.getData(`boss`)&&(u*=.76,d*=.76,e.getData(`ghostCurrentTint`)||(e.setData(`ghostCurrentTint`,!0),e.setTint(11171839),this.time.delayedCall(120,()=>{e.active&&e.getData(`ghostCurrentTint`)&&(e.setData(`ghostCurrentTint`,!1),!e.getData(`frozen`)&&!e.getData(`feared`)&&!e.getData(`elite`)&&e.clearTint())}))),e.getData(`instantVelocity`)?(e.setData(`instantVelocity`,!1),e.body.velocity.x=u,e.body.velocity.y=d):(e.body.velocity.x=Z.Linear(e.body.velocity.x,u,.16),e.body.velocity.y=Z.Linear(e.body.velocity.y,d,.16)),this.animateTankEnemy(e),this.faceTankEnemy(e,e.body.velocity.x,e.body.velocity.y)}}getTankEnemyTextureKey(e,t=0){let n=e?.frames||0,r=e?.key;return r?n>0&&this.textures.exists(`${r}-${t%n}`)?`${r}-${t%n}`:this.textures.exists(r)?r:this.textures.exists(`tank-enemy-jelly-0`)?`tank-enemy-jelly-0`:`__MISSING`:`tank-enemy-jelly-0`}animateTankEnemy(e){let t=e.getData(`animFrames`)||0,n=e.getData(`animKey`);if(!t||!n)return;let r=`${n}-${Math.floor(this.time.now/82)%t}`;e.texture?.key!==r&&this.textures.exists(r)&&e.setTexture(r)}faceTankEnemy(e,t,n){if(Math.abs(t)<.01&&Math.abs(n)<.01)return;if(e.getData(`fixedRotation`)){e.rotation=0,e.getData(`flipWithDirection`)?e.setFlipX(t<0):e.setFlipX(!!e.getData(`flipX`)),e.setFlipY(!1);return}let r=Z.DegToRad(e.getData(`facingOffset`)??-90),i=Z.Angle.Between(0,0,t,n)+r;e.rotation=Z.Angle.RotateTo(e.rotation||0,i,.18),e.setFlipX(!!e.getData(`flipX`)),e.setFlipY(!1)}autoFireTankShot(){if(!this.tankHuntActive||this.tankUpgradeChoiceActive||this.tankContinueChoiceActive||!this.octo||this.enemies.countActive(!0)===0)return;let e=this.findNearest(this.enemies.getChildren());if(!e)return;let t=this.toroidalDelta(this.octo.x,this.octo.y,e.x,e.y),n=Math.atan2(t.dy,t.dx);this.fireTankShotPattern(n)}fireTankShotPattern(e){this.tankRunStats.shotCounter=(this.tankRunStats.shotCounter||0)+1;let t=this.tankRunStats.activeSynergyIds||[];t.includes(`theme-chaos`)?this.fireChaosInkPattern(e):t.includes(`theme-fortress`)?this.fireReefFortressPattern(e):t.includes(`theme-smart-shot`)?this.fireSmartShotPattern(e):t.includes(`theme-toxic`)?this.fireVenomBrewerPattern(e):t.includes(`theme-treasure`)?this.fireGemResonancePattern(e):t.includes(`theme-ghost`)?this.fireGhostCurrentPattern(e):this.fireDominantTraitPattern(e),this.applyWeirdShotAftercast(e)}applyWeirdShotAftercast(e){if((this.tankRunStats.echoShot||0)>0){let t=e+Math.PI+Z.FloatBetween(-.18,.18);this.time.delayedCall(95,()=>{if(!this.tankHuntActive)return;let e=this.createTankBullet(t,.52,.58);e?.setAlpha(.68),e?.setData(`homing`,Math.max(e.getData(`homing`)||0,1))})}let t=this.tankRunStats.blackHolePearl||0;if(t>0){let n=Math.max(5,10-t*2);(this.tankRunStats.shotCounter||0)%n===0&&this.spawnBlackHolePull(this.octo.x+Math.cos(e)*170,this.octo.y+Math.sin(e)*170,150+t*32,.34+t*.12)}}fireDominantTraitPattern(e){let t=this.tankRunStats.traitFlagCounts||{},n=Object.entries(t).sort((e,t)=>t[1]-e[1])[0]?.[0]||null;if(n===`poison`||n===`contagion`){this.fireVenomBrewerPattern(e);return}if(n===`homing`||n===`chain`||n===`prismFork`){this.fireSmartShotPattern(e);return}if(n===`freeze`||n===`guardianCharges`||n===`maxHp`||n===`spinPower`){this.fireReefFortressPattern(e);return}if(n===`gemPulse`||n===`magnetRange`||n===`luckBonus`){this.fireGemResonancePattern(e);return}if(n===`spectral`||n===`fear`||n===`boomerang`){this.fireGhostCurrentPattern(e);return}if(n===`bounce`||n===`split`||n===`wiggle`||n===`extraProjectiles`||n===`spiral`){this.fireChaosInkPattern(e);return}this.fireDefaultTankShotPattern(e)}fireDefaultTankShotPattern(e){let t=this.getTankShotCount(),n=Z.DegToRad(10+Math.min(18,this.tankRunStats.broadside*4));for(let r=0;r<t;r+=1){let i=e+(t===1?0:-n/2+n/(t-1)*r);this.createTankBullet(i,1,1)}for(let t=1;t<=this.tankRunStats.broadside;t+=1){let n=Z.DegToRad(60+t*12);this.createTankBullet(e+n,.72,.82),this.createTankBullet(e-n,.72,.82)}for(let t=0;t<this.tankRunStats.backblast;t+=1){let n=this.tankRunStats.backblast===1?0:Z.DegToRad(-12+24/Math.max(1,this.tankRunStats.backblast-1)*t);this.createTankBullet(e+Math.PI+n,.64,.74)}if(this.tankRunStats.spiral>0){this.tankSpiralAngle+=Z.DegToRad(28+this.tankRunStats.spiral*10);for(let e=0;e<this.tankRunStats.spiral;e+=1){let t=this.tankSpiralAngle+Math.PI*2*e/Math.max(1,this.tankRunStats.spiral);this.createTankBullet(t,.58,.68)}}}fireVenomBrewerPattern(e){this.fireDefaultTankShotPattern(e);let t=Math.sin((this.tankRunStats.shotPatternIndex||0)*.9)*Z.DegToRad(18),n=this.createTankBullet(e+t,.44,1.28);n?.setData(`poisonCloud`,!0),n?.setData(`poison`,Math.max(n.getData(`poison`)||0,1)),n?.setData(`homing`,Math.max(n.getData(`homing`)||0,.45)),n?.body?.velocity?.scale(.58),this.tankRunStats.shotPatternIndex+=1}fireSmartShotPattern(e){let t=Math.max(1,this.getTankShotCount()),n=Z.DegToRad(7);for(let r=0;r<t;r+=1){let i=e+(t===1?0:-n/2+n/(t-1)*r),a=this.createTankBullet(i,.92,.86);a?.setData(`smartNeedle`,!0),a?.setData(`homing`,Math.max(a.getData(`homing`)||0,2)),a?.setData(`chain`,Math.max(a.getData(`chain`)||0,1)),a?.body?.velocity?.scale(1.18)}}fireReefFortressPattern(e){let t=this.createTankBullet(e,1.16,1.22);t?.setData(`fortressShell`,!0),t?.setData(`pierceLeft`,Math.max(t.getData(`pierceLeft`)||0,2)),t?.setData(`freeze`,Math.max(t.getData(`freeze`)||0,1)),t?.body?.velocity?.scale(.78),(this.tankRunStats.shotPatternIndex||0)%2==0&&(this.createTankBullet(e+Z.DegToRad(18),.62,.72),this.createTankBullet(e-Z.DegToRad(18),.62,.72)),this.tankRunStats.shotPatternIndex+=1}fireGemResonancePattern(e){this.createTankBullet(e,.9,.98)?.setData(`gemLure`,!0);let t=e+Math.PI/2*((this.tankRunStats.shotPatternIndex||0)%2==0?1:-1),n=this.createTankBullet(t,.42,.55);n?.setData(`gemLure`,!0),n?.setData(`boomerang`,Math.max(n.getData(`boomerang`)||0,1)),this.tankRunStats.shotPatternIndex+=1}fireGhostCurrentPattern(e){let t=this.createTankBullet(e+Z.DegToRad(24),.72,.82),n=this.createTankBullet(e-Z.DegToRad(24),.72,.82);for(let e of[t,n])e?.setData(`ghostDrift`,!0),e?.setData(`spectral`,Math.max(e.getData(`spectral`)||0,1)),e?.setData(`boomerang`,Math.max(e.getData(`boomerang`)||0,1)),e?.setAlpha(.72)}fireChaosInkPattern(e){let t=this.tankRunStats.shotPatternIndex||0,n=[[0],[-18,18],[-34,0,34],[-68,-24,24,68]],r=n[t%n.length];for(let t of r){let n=Z.DegToRad(t+Z.Between(-7,7)),r=this.createTankBullet(e+n,.68,Z.FloatBetween(.68,1.08));r?.setData(`wiggle`,Math.max(r.getData(`wiggle`)||0,1)),Z.Between(1,100)<=45&&r?.setData(`bounceLeft`,Math.max(r.getData(`bounceLeft`)||0,1)),Z.Between(1,100)<=28&&r?.setData(`splitLeft`,Math.max(r.getData(`splitLeft`)||0,1))}this.tankRunStats.shotPatternIndex=t+1}createTankBullet(e,t=1,n=1){return this.createTankBulletAt(this.octo.x+Math.cos(e)*30,this.octo.y+Math.sin(e)*30,e,t,n)}createTankBulletAt(e,t,n,r=1,i=1){if((this.bullets?.countActive(!0)||0)>=sn)return null;let a=this.bullets.create(e,t,this.getTankBulletTextureKey());return this.configureTankBullet(a,n,r,i),a}configureTankBullet(e,t,n=1,r=1){let i=Math.max(1,Math.round((this.stats.damage+this.tankRunStats.damageBonus)*n));(this.tankRunStats.anchorShot||0)>0&&(i+=this.tankRunStats.anchorShot);let a=this.tankRunStats.critChance||0;a>0&&Math.random()<a&&(i*=2,e.setData(`critical`,!0)),e.setData(`damage`,i),e.setData(`pierceLeft`,this.tankRunStats.pierce),e.setData(`splitLeft`,this.tankRunStats.split),e.setData(`poison`,this.tankRunStats.poison),e.setData(`bounceLeft`,this.tankRunStats.bounce),e.setData(`homing`,this.tankRunStats.homing),e.setData(`fear`,this.tankRunStats.fear),e.setData(`freeze`,this.tankRunStats.freeze),e.setData(`chain`,this.tankRunStats.chain),e.setData(`wiggle`,this.tankRunStats.wiggle),e.setData(`boomerang`,this.tankRunStats.boomerang),e.setData(`lumpOfCoal`,this.tankRunStats.lumpOfCoal),e.setData(`spectral`,this.tankRunStats.spectral),e.setData(`synergyIds`,[...this.tankRunStats.activeSynergyIds||[]]),e.setData(`interactionIds`,[...this.tankRunStats.activeInteractionIds||[]]),e.setData(`interactionFlags`,{...this.tankRunStats.activeInteractionFlags||{}}),e.setData(`anchorShot`,this.tankRunStats.anchorShot||0),e.setData(`spawnedAt`,this.time.now),e.setData(`baseAngle`,t),e.setData(`baseSpeed`,this.tankRunStats.shotSpeed),e.setData(`hitEnemies`,new Set),e.setScale((e.getData(`critical`)?1.72:1.45)*this.tankRunStats.bulletScale*r),e.setData(`baseScale`,e.scaleX),e.setDepth(18),e.setTint(this.getTankBulletTint()),this.improveGameplayReadability(e,{outlineAlpha:.36,haloColor:this.getTankBulletTint(),haloAlpha:.28,haloBlur:7}),e.body.setCircle(11*this.tankRunStats.bulletScale*r,0,0);let o=(this.tankRunStats.anchorShot||0)>0?.82:1;e.body.setVelocity(Math.cos(t)*this.tankRunStats.shotSpeed*o,Math.sin(t)*this.tankRunStats.shotSpeed*o),e.rotation=t+$t;let s=this.tankRunStats.spectral>0?this.tankRunStats.shotLifetime*3:this.tankRunStats.shotLifetime;this.time.delayedCall(s,()=>{e.active&&e.destroy()})}getTankBulletTextureKey(){return Yt[this.tankRunStats.primaryFamily||this.getDominantTankFamily()]?.bulletKey||Yt.tide.bulletKey}getTankBulletTint(){let e=this.tankRunStats.activeSynergyIds||[];return this.tankRunStats.presetTint?this.tankRunStats.presetTint:e.includes(`theme-toxic`)?Z.RND.pick([7929705,11992906,3529047]):e.includes(`theme-smart-shot`)?Z.RND.pick([6737151,16772693,16777215]):e.includes(`theme-fortress`)?Z.RND.pick([6737151,14219519,16777215]):e.includes(`theme-treasure`)?Z.RND.pick([16766720,16754687,10420223]):e.includes(`theme-ghost`)?Z.RND.pick([11171839,14518527,8978346]):e.includes(`theme-chaos`)?Z.RND.pick([16746700,16770947,8978346]):e.includes(`theme-artillery`)?Z.RND.pick([16746564,16772693,16729122]):this.tankRunStats.critChance>0&&this.tankRunStats.primaryFamily===`prism`?Z.RND.pick([16754687,10420223,16773770,16777215]):this.tankRunStats.freeze>0?6737151:this.tankRunStats.fear>0?11158783:this.tankRunStats.poison>0?7929705:this.tankRunStats.spectral>0?14518527:this.tankRunStats.chain>0?16772693:this.tankRunStats.wiggle>0?16746700:this.tankRunStats.lumpOfCoal>0?16737826:this.tankRunStats.homing>0?16754687:this.tankRunStats.pierce>0?11466751:this.tankRunStats.bounce>0?16770947:this.tankRunStats.boomerang>0?8978346:Yt[this.tankRunStats.primaryFamily||this.getDominantTankFamily()]?.tint||16777215}applyTankBulletHoming(e){let t=e.getData(`homing`)||0;if(t<=0||!this.enemies||this.enemies.countActive(!0)===0)return;let n=this.enemies.getChildren();this.bulletHasInteraction?.(e,`venom-lock`)&&n.some(e=>e.active&&(e.getData(`poisoned`)||0)>0)&&(n=n.filter(e=>e.active&&(e.getData(`poisoned`)||0)>0));let r=this.findNearestFrom(e,n);if(!r)return;let i=this.toroidalDelta(e.x,e.y,r.x,r.y),a=Math.atan2(i.dy,i.dx),o=Math.max(80,Math.hypot(e.body.velocity.x,e.body.velocity.y)),s=Math.atan2(e.body.velocity.y,e.body.velocity.x),c=Z.Angle.RotateTo(s,a,an*t);e.body.setVelocity(Math.cos(c)*o,Math.sin(c)*o),e.rotation=c+$t}updateTankBullets(){if(this.bullets)for(let e of this.bullets.getChildren()){if(!e.active||!e.body)continue;let t=Math.max(0,this.time.now-(e.getData(`spawnedAt`)||this.time.now)),n=e.getData(`baseAngle`)||0,r=e.getData(`baseSpeed`)||tn,i=e.getData(`wiggle`)||0;if(i>0){let r=.012+i*.003,a=140+i*80,o=n+Math.PI/2,s=Math.sin(t*r)*a-Math.sin((t-16)*r)*a;e.body.velocity.x+=Math.cos(o)*s,e.body.velocity.y+=Math.sin(o)*s}let a=e.getData(`boomerang`)||0;if(a>0&&this.octo?.active){let n=this.tankRunStats.shotLifetime||nn;if(Z.Clamp(t/n,0,1)>.35){let t=.04+a*.025,n=this.toroidalDelta(e.x,e.y,this.octo.x,this.octo.y),r=Math.atan2(n.dy,n.dx),i=Math.atan2(e.body.velocity.y,e.body.velocity.x),o=Z.Angle.RotateTo(i,r,t),s=Math.hypot(e.body.velocity.x,e.body.velocity.y);e.body.setVelocity(Math.cos(o)*s,Math.sin(o)*s)}}let o=e.getData(`lumpOfCoal`)||0;if(o>0){let n=1+t*4e-4*o,i=Math.min(n,1+o*.9),a=Math.hypot(e.body.velocity.x,e.body.velocity.y),s=r*i;if(a>0&&s>a){let t=s/a;e.body.velocity.x*=t,e.body.velocity.y*=t}let c=1+t*15e-5*o,l=Math.min(c,1+o*.6),u=e.getData(`baseScale`)||e.scaleX;e.getData(`baseScale`)||e.setData(`baseScale`,e.scaleX),e.setScale(u*l);let d=e.getData(`baseDamage`)||e.getData(`damage`)||1;e.getData(`baseDamage`)||e.setData(`baseDamage`,d),e.setData(`damage`,Math.round(d*i))}this.applyTankBulletHoming(e);let s=e.getData(`spectral`)||0,c=e.getData(`bounceLeft`)||0;if(c>0){let t=!1;(e.x<64&&e.body.velocity.x<0||e.x>this.worldWidth-64&&e.body.velocity.x>0)&&(e.body.velocity.x*=-1,t=!0),(e.y<74&&e.body.velocity.y<0||e.y>this.worldHeight-74&&e.body.velocity.y>0)&&(e.body.velocity.y*=-1,t=!0),t&&(e.setData(`bounceLeft`,c-1),this.bulletHasInteraction(e,`toxic-ricochet`)&&this.spawnToxicPuddle(e.x,e.y,e.getData(`poison`)||1))}else s||this.wrapTankActor(e);this.applyThemeSynergyBulletBehavior(e,t,n,r),e.rotation=Math.atan2(e.body.velocity.y,e.body.velocity.x)+$t}}bulletHasSynergy(e,t){return(e.getData(`synergyIds`)||[]).includes(t)}bulletHasInteraction(e,t){return(e.getData(`interactionIds`)||[]).includes(t)}bulletInteractionFlags(e){return e.getData(`interactionFlags`)||{}}applyThemeSynergyBulletBehavior(e,t,n,r){if(!(!e?.active||!e.body)){if(this.bulletHasSynergy(e,`theme-smart-shot`)){let t=Math.max(r*.88,Math.hypot(e.body.velocity.x,e.body.velocity.y)),n=e.getData(`hitEnemies`),i=this.findNearestFrom(e,this.enemies.getChildren().filter(e=>!n?.has(e)));if(i){let n=this.toroidalDelta(e.x,e.y,i.x,i.y),r=Math.atan2(n.dy,n.dx),a=Math.atan2(e.body.velocity.y,e.body.velocity.x),o=e.getData(`smartNeedle`)?.038:.018,s=Z.Angle.RotateTo(a,r,o);e.body.setVelocity(Math.cos(s)*t,Math.sin(s)*t)}}if(e.getData(`poisonCloud`)){let n=Math.sin(t*.011)*.012,r=Math.atan2(e.body.velocity.y,e.body.velocity.x)+n,i=Math.max(130,Math.hypot(e.body.velocity.x,e.body.velocity.y)*.998);e.body.setVelocity(Math.cos(r)*i,Math.sin(r)*i),t>260&&t%180<20&&this.spawnPulseVisual(e.x,e.y,42,7929705)}if(e.getData(`ghostDrift`)){let i=Math.sin(t*.007+n)*.024,a=Math.atan2(e.body.velocity.y,e.body.velocity.x)+i,o=Math.max(r*.52,Math.hypot(e.body.velocity.x,e.body.velocity.y));e.body.setVelocity(Math.cos(a)*o,Math.sin(a)*o)}if(e.getData(`gemLure`)&&t>160&&t%160<20&&this.pullGemsTowardPoint(e.x,e.y,92,145),this.bulletHasSynergy(e,`theme-fortress`)&&(t>260&&!e.getData(`reefFortressArmed`)&&(e.setData(`reefFortressArmed`,!0),e.setData(`pierceLeft`,Math.max(e.getData(`pierceLeft`)||0,1))),t>360&&!e.getData(`reefFortressWakeDone`))){e.setData(`reefFortressWakeDone`,!0);for(let t of this.enemies.getChildren())!t.active||t.getData(`boss`)||this.toroidalDistance(e.x,e.y,t.x,t.y)>66||this.applyFreezeToEnemy(t,1);this.spawnPulseVisual(e.x,e.y,66,8965375)}if(this.bulletHasSynergy(e,`theme-treasure`)){let n=1+Math.sin(t*.026)*.08;e.setAlpha(.78+Math.sin(t*.018)*.18);let r=e.getData(`baseScale`)||e.scaleX;e.setScale(r*n),t>520&&!e.getData(`gemResonancePingDone`)&&(e.setData(`gemResonancePingDone`,!0),this.pullGemsTowardPoint(e.x,e.y,148,180),this.spawnPulseVisual(e.x,e.y,148,16766720))}if(this.bulletHasSynergy(e,`theme-chaos`)){let n=1+Math.sin(t*.018)*.12,r=e.getData(`baseScale`)||e.scaleX;e.setScale(r*n)}if(this.bulletHasInteraction(e,`collector-beam`)&&t>140&&t%130<20&&this.pullGemsTowardPoint(e.x,e.y,118,185),this.bulletHasInteraction(e,`frost-lance`)&&t>180&&t%170<20){for(let t of this.enemies.getChildren())!t.active||t.getData(`boss`)||this.toroidalDistance(e.x,e.y,t.x,t.y)<=48&&this.applyFreezeToEnemy(t,1);this.spawnPulseVisual(e.x,e.y,48,8965375)}if(this.bulletHasInteraction(e,`coal-cannon`)){let n=e.getData(`baseDamage`)||e.getData(`damage`)||1;e.getData(`baseDamage`)||e.setData(`baseDamage`,n),e.setData(`damage`,Math.max(e.getData(`damage`)||1,Math.round(n*(1+Math.min(.9,t*32e-5)))))}if(this.bulletHasInteraction(e,`mine-broadside`)&&t>360&&!e.getData(`mineBroadsideDone`)&&(e.setData(`mineBroadsideDone`,!0),this.dropPlayerMineAt(e.x,e.y,!1)),this.bulletHasInteraction(e,`chaos-shrapnel`)){let n=1+Math.sin(t*.031)*.14,r=e.getData(`baseScale`)||e.scaleX;e.setScale(r*n)}if(this.bulletHasSynergy(e,`theme-artillery`)&&t>420&&!e.getData(`artilleryBurstDone`)){e.setData(`artilleryBurstDone`,!0);let t=Math.atan2(e.body.velocity.y,e.body.velocity.x),n=this.createTankBulletAt(e.x,e.y,t+Z.DegToRad(90),.34,.42),r=this.createTankBulletAt(e.x,e.y,t-Z.DegToRad(90),.34,.42);for(let e of[n,r])e&&(e.setTint(16746564),e.setData(`artilleryBurstDone`,!0))}}}refreshTankOrbiters(){if(!this.octo)return;for(let e of this.tankOrbiters||[])e.active&&e.destroy();this.tankOrbiters=[];let e=Math.min(6,this.tankRunStats?.orbit||0);for(let t=0;t<e;t+=1){let e=this.physics.add.sprite(this.octo.x,this.octo.y,`tank-bullet`);e.setData(`orbiter`,!0),e.setData(`index`,t),e.setData(`hitEnemies`,new Set),e.setTint(this.tankRunStats.poison>0?7929705:8583167),e.setScale(1.05),e.setDepth(19),this.improveGameplayReadability(e,{outlineAlpha:.34,haloColor:8583167,haloAlpha:.28,haloBlur:7}),e.body.setCircle(10,0,0),this.tankOrbiters.push(e)}}updateTankOrbiters(){if(!this.tankHuntActive||!this.octo||!this.tankOrbiters)return;let e=this.tankOrbiters.length;e!==Math.min(6,this.tankRunStats.orbit||0)&&this.refreshTankOrbiters();let t=58+Math.min(28,e*5);for(let n of this.tankOrbiters){if(!n.active)continue;let r=n.getData(`index`)||0,i=this.time.now*.004+Math.PI*2*r/Math.max(1,e);n.setPosition(this.octo.x+Math.cos(i)*t,this.octo.y+Math.sin(i)*t),n.rotation=i+$t;let a=n.getData(`hitEnemies`);for(let e of this.enemies.getChildren()){if(!e.active||a?.has(e))continue;let t=e.getData(`boss`)?46:30;this.toroidalDistance(n.x,n.y,e.x,e.y)>t+16||(a?.add(e),this.damageTankEnemy(e,Math.max(1,Math.round(1+this.tankRunStats.damageBonus*.45))),this.tankRunStats.poison>0&&e.active&&this.applyPoisonToEnemy(e,this.tankRunStats.poison),this.tankRunStats.activeInteractionFlags?.iceRing&&e.active&&!e.getData(`boss`)&&this.applyFreezeToEnemy(e,1),this.time.delayedCall(420,()=>a?.delete(e)))}}}getTankShotCount(){return 1+this.tankRunStats.extraProjectiles}spawnEnemyDeath(e,t,n=1){let r=this.add.sprite(e,t,`${oe.key}-0`);r.setDepth(16),r.setScale(Math.max(.48,Math.abs(n)*.45)),r.setRotation(Z.DegToRad(Z.RND.pick([0,90,180,270]))),r.setAlpha(.95);let i=0,a=this.time.addEvent({delay:58,repeat:oe.frames-2,callback:()=>{i+=1,r.active&&r.setTexture(`${oe.key}-${i}`)}});this.time.delayedCall(oe.frames*58+40,()=>{a.remove(!1),r.active&&r.destroy()})}hitEnemy(e,t){if(!t.active||!e.active)return;let n=e.getData(`hitEnemies`);if(n?.has(t))return;n?.add(t);let r=e.getData(`damage`)||1,i=t.x,a=t.y,o=t.active;this.damageTankEnemy(t,r);let s=o&&!t.active;(e.getData(`poison`)||0)>0&&t.active&&this.applyPoisonToEnemy(t,e.getData(`poison`)),this.bulletHasSynergy(e,`theme-toxic`)&&t.active&&this.applyVenomBrewerSplash(t,e),this.bulletHasInteraction(e,`black-ice`)&&t.active&&this.applyFearToEnemy(t,1),(e.getData(`splitLeft`)||0)>0&&this.splitTankBullet(e,t),e.getData(`critical`)&&this.tankRunStats.prismFork>0&&this.forkPrismBullet(e,t);let c=e.getData(`fear`)||0;c>0&&t.active&&this.applyFearToEnemy(t,c);let l=e.getData(`freeze`)||0;l>0&&t.active&&this.applyFreezeToEnemy(t,l);let u=e.getData(`chain`)||0;if(u>0&&s){let t=e.getData(`chainJumpsLeft`)??Math.min(4,Math.max(2,u+ +!!this.bulletHasInteraction(e,`smart-chain`)));t>0&&this.chainBulletToNext({x:i,y:a,active:!0},t,e.getData(`chainDamageScale`)||(this.bulletHasInteraction(e,`smart-chain`)?.72:.62))}let d=e.getData(`pierceLeft`)||0;if(d>0&&t.active){e.setData(`pierceLeft`,d-1);return}e.destroy()}forkPrismBullet(e,t){if(!e?.active||!t?.active)return;let n=Z.Clamp(this.tankRunStats.prismFork+1,2,4),r=Math.atan2(e.body.velocity.y,e.body.velocity.x);for(let i=0;i<n;i+=1){let a=r+Z.DegToRad(-34+68/Math.max(1,n-1)*i),o=this.createTankBulletAt(t.x,t.y,a,.48,.54);if(!o)return;o.setData(`critical`,!1),o.setData(`prismForked`,!0),this.bulletHasInteraction(e,`seeker-prism`)&&o.setData(`homing`,Math.max(o.getData(`homing`)||0,1.5))}}applyContagionBurst(e,t){let n=+!!this.tankRunStats.activeInteractionFlags?.plagueChain,r=92+this.tankRunStats.contagion*28+n*34,i=Math.max(1,this.tankRunStats.contagion+n);for(let a of this.enemies.getChildren())a.active&&(this.toroidalDistance(e,t,a.x,a.y)>r||(this.applyPoisonToEnemy(a,this.tankRunStats.contagion+n),this.damageTankEnemy(a,i)));this.spawnPulseVisual(e,t,r,7929705)}applyPoisonToEnemy(e,t){e.setData(`poisoned`,Math.max(e.getData(`poisoned`)||0,t));let n=Math.min(5,t);for(let t=1;t<=n;t+=1)this.time.delayedCall(t*320,()=>{e.active&&this.damageTankEnemy(e,1)})}spawnToxicPuddle(e,t,n=1){this.spawnPulseVisual(e,t,58,7929705),this.time.delayedCall(120,()=>{for(let r of this.enemies.getChildren())r.active&&this.toroidalDistance(e,t,r.x,r.y)<=58&&this.applyPoisonToEnemy(r,n)})}applyVenomBrewerSplash(e,t){if(t.getData(`venomSplashAt`)===this.time.now)return;t.setData(`venomSplashAt`,this.time.now);let n=0;for(let t of this.enemies.getChildren())if(!(!t.active||t===e)&&!(this.toroidalDistance(e.x,e.y,t.x,t.y)>76)&&(this.applyPoisonToEnemy(t,1),n+=1,n>=2))break;if(n>0&&this.spawnPulseVisual(e.x,e.y,76,7929705),this.bulletHasInteraction(t,`spore-split`)&&!t.getData(`sporeSplitDone`)){t.setData(`sporeSplitDone`,!0);for(let n of[-24,24]){let r=Math.atan2(t.body.velocity.y,t.body.velocity.x)+Z.DegToRad(n),i=this.createTankBulletAt(e.x,e.y,r,.28,.38);i.setData(`poison`,Math.max(i.getData(`poison`)||0,1)),i.setData(`splitLeft`,0)}}}spawnBlackHolePull(e,t,n=160,r=.42){if(!(!this.tankHuntActive||!this.enemies)){this.spawnPulseVisual(e,t,n,10178047);for(let i of this.enemies.getChildren()){if(!i.active||!i.body||this.toroidalDistance(e,t,i.x,i.y)>n)continue;let a=this.toroidalDelta(i.x,i.y,e,t);i.body.velocity.x+=a.dx*r,i.body.velocity.y+=a.dy*r,i.getData(`boss`)||i.setTint(10178047)}}}applyFearToEnemy(e,t){if(!e?.active||e.getData(`feared`))return;e.setData(`feared`,!0);let n=e.getData(`speed`)||80,r=e.getData(`behavior`)||`chaser`;e.setData(`behavior`,`fleeing`),e.setData(`speed`,n*1.6),e.setTint(11158783);let i=Math.round((.4+t*.3)*1e3);this.time.delayedCall(i,()=>{e.active&&(e.setData(`feared`,!1),e.setData(`behavior`,r),e.setData(`speed`,n),e.clearTint())})}applyFreezeToEnemy(e,t){if(!e?.active)return;let n=e.getData(`frozen`),r=n?e.getData(`origSpeed`)||e.getData(`speed`)||80:e.getData(`speed`)||80;n||e.setData(`origSpeed`,r),e.setData(`frozen`,!0);let i=Math.max(.15,1-t*.2);e.setData(`speed`,r*i),e.setTint(6737151);let a=Math.round((1+t*.5)*1e3),o=e.getData(`unfreezeTimer`);o&&o.remove(!1);let s=this.time.delayedCall(a,()=>{e.active&&(e.setData(`frozen`,!1),e.setData(`speed`,r),e.clearTint())});e.setData(`unfreezeTimer`,s)}chainBulletToNext(e,t,n=.62){if(t<=0)return;let r=this.findNearestFrom(e,this.enemies.getChildren());if(!r)return;let i=this.toroidalDelta(e.x,e.y,r.x,r.y),a=Math.atan2(i.dy,i.dx),o=this.createTankBulletAt(e.x,e.y,a,n,.74);o&&(o.setData(`chain`,1),o.setData(`chainJumpsLeft`,t-1),o.setData(`chainDamageScale`,Math.max(.38,n*.72)),o.setData(`pierceLeft`,0),o.setData(`splitLeft`,0),o.setTint(16772693))}splitTankBullet(e,t){e.setData(`splitLeft`,0);let n=Z.Clamp(1+this.tankRunStats.split,2,4),r=this.toroidalDelta(this.octo.x,this.octo.y,t.x,t.y),i=Math.atan2(r.dy,r.dx);for(let e=0;e<n;e+=1){let r=i+Z.DegToRad(-36+72/Math.max(1,n-1)*e),a=this.createTankBulletAt(t.x,t.y,r,.55,.62);if(!a)return;a.setData(`splitLeft`,0),a.setData(`pierceLeft`,Math.max(0,this.tankRunStats.pierce-1))}}damageTankEnemy(e,t){if(!e?.active)return;if(e.getData(`bossPhaseState`)===`invulnerable`){this.spawnDamageNumber(e.x,e.y-18,0,!1,`IMMUNE`);return}let n=t;if(this.time.now<(e.getData(`entryArmorUntil`)||0)&&(n=Math.max(1,Math.ceil(n*(e.getData(`entryArmorMult`)||.35))),Z.Between(1,100)<=35&&this.spawnDamageNumber(e.x,e.y-28,0,!1,`ARMOR`)),e.getData(`boss`)&&this.time.now<(e.getData(`bossMinimumLifeUntil`)||0)&&(n=Math.max(1,Math.ceil(n*(e.getData(`bossArmorMult`)||.7)))),e.setData(`hp`,(e.getData(`hp`)||1)-n),e.setTint(16777215).setTintMode($.FILL),this.time.delayedCall(60,()=>{e.active&&(e.setTintMode($.MULTIPLY),e.getData(`frozen`)?e.setTint(6737151):e.getData(`feared`)?e.setTint(11158783):this.time.now<(e.getData(`entryArmorUntil`)||0)?e.setTint(8978380):e.getData(`elite`)?e.setTint(e.getData(`eliteTint`)||16729156):e.clearTint())}),this.spawnDamageNumber(e.x,e.y-18,n,n>=4),(e.getData(`hp`)||0)>0)return;let r=!!e.getData(`boss`),i=!!e.getData(`elite`),a=e.getData(`eliteType`),o=(e.getData(`gems`)??0)+(r&&this.tankRunStats.bossRewardGemBonus||0),s=e.getData(`gemType`)||`green`,c=e.x,l=e.y,u=e.scaleX||1,d=(e.getData(`poisoned`)||0)>0;if(this.spawnEnemyDeath(c,l,u),e.destroy(),i&&a===`splitter`)for(let e=0;e<2;e+=1){let e=this.enemies.create(c+Z.Between(-28,28),l+Z.Between(-28,28),`tank-enemy-jelly`);e.setData(`hp`,1),e.setData(`speed`,130),e.setData(`behavior`,`chaser`),e.setData(`phase`,Z.FloatBetween(0,Math.PI*2)),e.setData(`strafe`,Z.RND.sign()),e.setData(`chargeUntil`,0),e.setData(`gemType`,`green`),e.setData(`gems`,+(Z.Between(1,100)<=25)),e.setData(`boss`,!1),e.setData(`elite`,!1),e.setData(`facingOffset`,-90),e.setData(`flipX`,!1),e.setData(`spawnedAt`,this.time.now),e.setData(`shootCooldown`,0),e.setScale(.72),e.setDepth(15),this.improveGameplayReadability(e,{outlineAlpha:.36,haloColor:16777215,haloAlpha:.2,haloBlur:6}),e.body.setCircle(18,0,0),e.body.setDamping(!0),e.body.setDrag(.86),e.body.setMaxVelocity(190)}(i||r)&&this.cameras.main.shake(120,r?.008:.005),d&&this.tankRunStats.contagion>0&&this.applyContagionBurst(c,l),r&&(this.tankBoss=null,this.tankWaveResolving=!0,this.tankContinueChoicePending=!0,this.tankWaveToken+=1,this.tankWaveTimer?.remove(!1),this.tankWaveTimer=null);for(let e=0;e<o;e+=1){let t=r?e%4==0?`yellow`:`blue`:s,n=r?0:t===`green`?Pt:Ft,i,a;if(r){let t=Math.PI*2/o*e,n=36+o*4;i=c+Math.cos(t)*n,a=l+Math.sin(t)*n}else i=c+Z.Between(-18,18),a=l+Z.Between(-18,18);this.spawnGemAt(i,a,t,{lifetime:n})}if(r){this.tankHuntBossKills+=1,this.game.events.emit(`octoglyphs:hunt-state`,this.getTankHuntState()),this.spawnTraitDiscovery(!0),this.showCenterTraitText(`BOSS DEFEATED. SIGNAL RELEASED`),this.showTankBossRewardChoices();return}this.tankHuntKills+=1,this.tankHuntTotalKills+=1,this.applyVampireSiphonReward(),this.game.events.emit(`octoglyphs:hunt-state`,this.getTankHuntState()),!(this.tankHuntKills<this.tankHuntGoal||this.tankBoss||this.tankWaveResolving)&&this.resolveTankWaveClear()}applyVampireSiphonReward(){let e=this.tankRunStats?.vampireSiphon||0;if(!e)return;let t=Math.max(12,24-e*5);(this.tankHuntTotalKills||0)%t===0&&(this.tankRunStats.hp>=this.tankRunStats.maxHp||(this.tankRunStats.hp=Math.min(this.tankRunStats.maxHp,this.tankRunStats.hp+1),this.showCenterTraitText(`VAMPIRE SIPHON +1 HEART`),this.updateTankHud()))}resolveTankWaveClear(){if(!(!this.tankHuntActive||this.tankBoss||this.tankWaveResolving)){if(this.tankWaveResolving=!0,this.tankWaveToken+=1,this.tankWaveTimer?.remove(!1),this.tankWaveTimer=null,this.tankHuntWave%At!==0){let e=this.tankWaveToken;this.time.delayedCall(650,()=>{!this.tankHuntActive||this.tankBoss||this.tankContinueChoiceActive||this.tankUpgradeChoiceActive||e!==this.tankWaveToken||(this.tankWaveResolving=!1,this.startNextTankWave())});return}this.showCenterTraitText(`BOSS ENTERED THE TANK`),this.spawnTankEnemy(!0,this.tankHuntWave)}}spawnDamageNumber(e,t,n,r=!1,i=null){if(!this.tankHuntActive)return;let a=i||`${n}`,o=i===`IMMUNE`,s=this.add.text(e+Z.Between(-12,12),t,a,{fontFamily:`"Press Start 2P", monospace`,fontSize:o?`11px`:r?`18px`:`13px`,color:o?`#88ffcc`:r?`#ffe040`:`#ffffff`,stroke:`#000000`,strokeThickness:r?5:3}).setOrigin(.5).setDepth(200);r&&s.setScale(1.3),this.tweens.add({targets:s,y:t-42-Z.Between(0,18),alpha:0,scale:r?.7:.5,duration:620,ease:`Cubic.easeOut`,onComplete:()=>s.destroy()})}endTankHunt(e){if(!this.tankHuntActive)return;let t={wave:this.tankHuntWave,totalKills:this.tankHuntTotalKills,bossKills:this.tankHuntBossKills,level:this.tankRunStats.level,mutations:[...this.tankRunStats.mutationChoices||[]],bossRewards:[...this.tankRunStats.bossRewardChoices||[]],gemsEarned:this.tankHuntGemsCollected,gemSources:{...this.tankHuntGemSources||{}},damageTaken:this.tankHuntDamageTaken,family:this.getTankArchetypeLabel(),synergies:[...this.tankRunStats.activeSynergyIds||[]],interactions:[...this.tankRunStats.activeInteractionIds||[]],survived:Math.round((this.time.now-this.tankHuntStartedAt)/1e3),won:e};this.tankHuntActive=!1,this.tankHuntEnding=!1,this.tankActiveEvent=null,this.tankEventOverlay&&=(this.tankEventOverlay.destroy(),null),this.enemySpawnTimer?.remove(!1),this.enemySpawnTimer=null,this.tankWaveTimer?.remove(!1),this.tankWaveTimer=null,this.tankHuntEndTimer?.remove(!1),this.tankHuntEndTimer=null,this.tankBoss=null,this.tankWaveResolving=!1,this.tankWaveToken+=1,this.tankContinueWave=null,this.tankContinueChoicePending=!1,this.tankSpecificWaveTimer?.remove(!1),this.tankSpecificWaveTimer=null,this.tankSpecificWavePending=null,this.clearTankUpgradeChoices(),this.clearTankBossRewardChoices(),this.tankRunStats=this.createTankRunStats(),this.tankUpgradeChoiceActive=!1,this.clearTankContinueChoices(),this.tankHuntGemsCollected=0,this.tankHuntBossKills=0,this.tankHuntGemSources={},this.tankHuntDamageTaken=0,this.pendingBackgroundKey=null,this.tankBackgroundDepthIndex=0,this.tankInvincibleUntil=0,this.tankSpinUntil=0,this.tankSpinStartedAt=0,this.tankSpinFrame=0,this.tankWasSpinning=!1,this.tankSpinHitEnemies.clear(),this.tankInkBurstCooldown=0,this.tankManualMineCooldown=0,this.tankManualMineCooldown=0,this.destroyTankHud(),this.clearTankHuntActors(),this.zoomForTankHunt(!1),this.game.events.emit(`octoglyphs:hunt-state`,null),this.emitTankHuntCharge(),this.showRunSummary(t),e||Et(`firstHuntDeath`,this.save)}clearTankHuntActors(){this.enemies&&this.enemies.clear(!0,!0),this.bullets&&this.bullets.clear(!0,!0),this.enemyBullets&&this.enemyBullets.clear(!0,!0),this.playerMines&&this.playerMines.clear(!0,!0);for(let e of this.tankOrbiters||[])e.active&&e.destroy();this.tankOrbiters=[],this.autopilotCollectTarget=null,this.updateToroidalGhosts()}clearTankHuntGems(){if(this.gems)for(let e of[...this.gems.getChildren()])this.destroyGem(e)}zoomForTankHunt(e){let t=e?Qt:Zt;this.viewZoom=t,this.tweens.add({targets:this.cameras.main,zoom:t,duration:420,ease:`Sine.easeInOut`})}createTankHud(){this.destroyTankHud(),this.tankHud=document.createElement(`div`),this.tankHud.className=`tank-hunt-hud`,this.tankHud.innerHTML=`
109
+ <div class="tank-hunt-hearts"></div>
110
+ <div class="tank-hunt-xp-wrap">
111
+ <div class="tank-hunt-xp-label">Lv 1 · 0/8 gems</div>
112
+ <div class="tank-hunt-xp-bar"><div class="tank-hunt-xp-fill"></div></div>
113
+ </div>
114
+ `,document.getElementById(`tank-hunt-hud-root`)?.appendChild(this.tankHud),this.tankHudHearts=this.tankHud.querySelector(`.tank-hunt-hearts`),this.tankHudXpFill=this.tankHud.querySelector(`.tank-hunt-xp-fill`),this.tankHudText=this.tankHud.querySelector(`.tank-hunt-xp-label`),this.updateTankHud()}destroyTankHud(){this.tankHud?.remove(),this.tankHud=null,this.tankHudHearts=null,this.tankHudXpFill=null,this.tankHudText=null}updateTankHud(){if(!this.tankHud||!this.tankRunStats)return;let e=Math.max(0,Math.ceil(this.tankRunStats.hp)),t=Math.max(1,Math.ceil(this.tankRunStats.maxHp));if(this.tankHudHearts){this.tankHudHearts.innerHTML=``;for(let n=0;n<t;n+=1){let t=document.createElement(`span`);t.className=`tank-hunt-heart ${n<e?`is-full`:`is-empty`}`,t.textContent=`♥`,this.tankHudHearts.appendChild(t)}}let n=Z.Clamp(this.tankRunStats.xp/Math.max(1,this.tankRunStats.nextXp),0,1);this.tankHudXpFill&&(this.tankHudXpFill.style.width=`${Math.round(n*100)}%`),this.tankHudText&&(this.tankHudText.textContent=`Lv ${this.tankRunStats.level} · ${this.tankRunStats.xp}/${this.tankRunStats.nextXp} gems · Speed ${this.getTankSpeedMultiplier().toFixed(2)}x`)}getTankHuntState(){return this.tankHuntActive?{wave:this.tankHuntWave,kills:this.tankHuntKills,goal:this.tankHuntGoal,totalKills:this.tankHuntTotalKills,bossKills:this.tankHuntBossKills,bossActive:!!this.tankBoss?.active,ending:this.tankHuntEnding,choosingUpgrade:this.tankUpgradeChoiceActive,awaitingContinue:this.tankContinueChoiceActive||this.tankContinueChoicePending,level:this.tankRunStats.level,xp:this.tankRunStats.xp,nextXp:this.tankRunStats.nextXp,hp:this.tankRunStats.hp,maxHp:this.tankRunStats.maxHp,debug:{primaryFamily:this.tankRunStats.primaryFamily,route:this.getTankRouteRules().routeLabel,projectilePressure:this.getLiveProjectilePressure(),difficultyPressure:this.getTankDifficultyPressure(),pressureTier:this.getProjectilePressureTier(),activeBullets:this.bullets?.countActive(!0)||0,activeSynergies:[...this.tankRunStats.activeSynergyIds||[]],activeInteractions:[...this.tankRunStats.activeInteractionIds||[]],topFlags:Object.entries(this.tankRunStats.traitFlagCounts||{}).sort((e,t)=>t[1]-e[1]).slice(0,8)}}:null}createTankRunStats(){return{level:1,xp:0,nextXp:10,hp:rn,maxHp:rn,swimSpeed:1,fireDelay:en,shotSpeed:tn,shotLifetime:nn,damageBonus:0,magnetRange:1,extraProjectiles:0,bulletScale:1,pierce:0,split:0,orbit:0,poison:0,bounce:0,spinPower:0,homing:0,contagion:0,gemPulse:0,wakeTrail:0,guardianCharges:0,broadside:0,backblast:0,inkMines:0,spiral:0,prismFork:0,critChance:0,luckBonus:0,wiggle:0,boomerang:0,lumpOfCoal:0,chain:0,fear:0,freeze:0,spectral:0,nextXpMult:1,xpBreakpoints:[...Kt],primaryFamily:`tide`,activeSynergyIds:[],activeInteractionIds:[],activeInteractionFlags:{},traitFlagCounts:{},mutationRanks:{},familyRanks:{},bossRewards:[],mutationChoices:[],bossRewardChoices:[],anchorShot:0,vampireSiphon:0,blackHolePearl:0,tinyOcto:0,hungryGems:0,bossMagnet:0,bossPressure:0,bossRewardGemBonus:0,routeEliteBonus:0,gemDropBonus:0,pressureBreakerBonus:0,waveIntervalMult:1,echoShot:0,presetFamily:null,presetTint:null,presetLabel:null,appliedPresetMods:null,shotCounter:0,nextGemResonanceAt:0,nextGoldenPrismAt:0,shotPatternIndex:0}}configureAutoFireTimer(){this.autoFireTimer?.remove(!1),this.autoFireTimer=this.time.addEvent({delay:Math.max(90,Math.round(this.tankRunStats.fireDelay)),loop:!0,callback:()=>this.autoFireTankShot()})}getTankXpForNextLevel(e=this.tankRunStats?.level||1){let t=this.tankRunStats?.xpBreakpoints||Kt,n=Math.max(0,e-1);if(n<t.length)return t[n];let r=n-t.length+1;return Math.ceil(t[t.length-1]+r*75+r*r*10)}applyHungryGemPulse(e,t){let n=this.tankRunStats?.hungryGems||0;if(!n||!this.enemies)return;let r=84+n*28,i=1+n,a=0;for(let o of this.enemies.getChildren())if(o.active&&!(this.toroidalDistance(e,t,o.x,o.y)>r)&&(this.damageTankEnemy(o,i),a+=1,a>=4+n))break;a>0&&this.spawnPulseVisual(e,t,r,16766720)}addTankHuntXp(e){!this.tankHuntActive||this.tankUpgradeChoiceActive||this.tankBossRewardChoiceActive||this.tankContinueChoiceActive||this.tankContinueChoicePending||(this.tankRunStats.xp+=e,this.updateTankHud(),this.game.events.emit(`octoglyphs:hunt-state`,this.getTankHuntState()),!(this.tankRunStats.xp<this.tankRunStats.nextXp)&&(this.time.now<this.tankNextLevelAllowedAt||(this.tankRunStats.xp=0,this.tankRunStats.level+=1,this.tankRunStats.nextXp=this.getTankXpForNextLevel(this.tankRunStats.level),this.tankNextLevelAllowedAt=this.time.now+qt,this.updateTankHud(),this.vacuumGemsOnLevelUp(),this.showCenterTraitText(`LEVEL ${this.tankRunStats.level}`),this.cameras.main.flash(180,255,255,180,!0),this.showTankUpgradeChoices())))}showTankUpgradeChoices(){if(this.tankUpgradeChoiceActive)return;this.tankUpgradeChoiceActive=!0,this.tankWaveTimer?.remove(!1),this.tankWaveTimer=null,this.target=null,this.keyboardManualUntil=0,this.octo.body.setVelocity(0,0);let e=document.createElement(`div`);e.className=`hunt-upgrade-overlay is-open`,e.innerHTML=`
115
+ <div class="hunt-upgrade-card">
116
+ <h2>LEVEL ${this.tankRunStats.level}</h2>
117
+ <p>Choose one temporary hunt mutation</p>
118
+ <div class="hunt-upgrade-options"></div>
119
+ </div>
120
+ `;let t=e.querySelector(`.hunt-upgrade-options`),n=this.pickTankMutationChoices();for(let e of n){let n=(this.tankRunStats.mutationRanks[e.id]||0)+1,r=document.createElement(`button`);r.className=`hunt-upgrade-option hunt-family-${e.family}`,r.type=`button`,r.innerHTML=`<strong>${e.title} <em>R${n}</em></strong><span>${e.desc(n)}</span><small>${e.family.toUpperCase()} · ${e.rarity.toUpperCase()}</small>`,r.addEventListener(`click`,t=>{t.preventDefault(),t.stopPropagation(),this.applyTankUpgrade(e)}),t.appendChild(r)}document.getElementById(`panel-root`)?.appendChild(e),this.tankUpgradeContainer=e,this.game.events.emit(`octoglyphs:hunt-state`,this.getTankHuntState())}pickTankMutationChoices(){let e=this.tankRunStats.mutationRanks||{},t=cn.filter(t=>(e[t.id]||0)<t.maxRank),n=[],r=this.getRequiredTankMutationRoles(),i=new Set;for(let e of r){let r=t.filter(t=>this.getTankMutationRole(t)===e&&!n.includes(t));if(r.length===0)continue;let a=this.weightedTankMutationPick(r,i);n.push(a),i.add(e)}let a=t.filter(e=>!n.includes(e));for(;n.length<3&&a.length>0;){let e=this.weightedTankMutationPick(a,i);n.push(e),i.add(this.getTankMutationRole(e)),a.splice(a.indexOf(e),1)}return n}getTankMutationRole(e){return Jt[e.id]||`utility`}getRequiredTankMutationRoles(){let e=[],t=this.tankRunStats||{},n=[...this.getTankRouteRules().mutationBias||[]];for(let t of n){if(e.length>=1)break;!e.includes(t)&&Z.Between(1,100)<=55&&e.push(t)}let r=Math.max(0,(en-t.fireDelay)/45)+Math.max(0,t.damageBonus||0)*.6+Math.max(0,t.extraProjectiles||0)*1.4+Math.max(0,t.pierce||0)*.6+Math.max(0,t.split||0)*.9+Math.max(0,t.chain||0)*1.1+Math.max(0,t.orbit||0)*.7,i=Math.max(0,(t.maxHp||rn)-rn)+Math.max(0,t.guardianCharges||0)*1.4+Math.max(0,t.freeze||0)*.9+Math.max(0,t.fear||0)*.8+Math.max(0,t.inkMines||0)*.8+Math.max(0,t.spinPower||0)*.6;return(t.level||1)<=3&&r<2.8&&e.push(`offense`),(t.level||1)>=3&&i<1.8&&e.push(`defense`),(t.swimSpeed||1)<1.08&&!e.includes(`mobility`)&&e.push(`mobility`),e.length===0&&(t.magnetRange||1)<1.25&&e.push(`utility`),e.slice(0,2)}weightedTankMutationPick(e,t=new Set){let n=this.tankRunStats.familyRanks||{},r=this.tankRunStats.luckBonus||0,i=this.tankRunStats.primaryFamily||this.getDominantTankFamily(),a=e.map(e=>{let a=this.getTankMutationRole(e),o=ln[e.rarity]||10;return o+=(n[e.family]||0)*14,e.family===i&&(o+=10),t.has(a)&&(o=Math.round(o*.42)),this.lastTankMutationRoles.includes(a)&&(o=Math.round(o*.7)),e.rarity!==`common`&&(o+=r*25),{upgrade:e,weight:Math.max(1,Math.round(o))}}),o=a.reduce((e,t)=>e+t.weight,0),s=Z.Between(1,Math.max(1,o));for(let e of a)if(s-=e.weight,s<=0)return e.upgrade;return re.Array.GetRandom(e)}applyTankUpgrade(e){if(!this.tankUpgradeChoiceActive)return;this.tankRunStats.mutationRanks[e.id]=(this.tankRunStats.mutationRanks[e.id]||0)+1;let t=this.tankRunStats.mutationRanks[e.id];this.tankRunStats.mutationChoices.push({title:e.title,rank:t,family:e.family,role:this.getTankMutationRole(e),desc:e.desc(t)}),this.tankRunStats.familyRanks[e.family]=(this.tankRunStats.familyRanks[e.family]||0)+1,this.lastTankMutationRoles=[this.getTankMutationRole(e),...this.lastTankMutationRoles||[]].slice(0,3),e.apply(this),this.applyTankFamilyEvolutions(e.family),this.clearTankUpgradeChoices(),this.tankUpgradeChoiceActive=!1,this.refreshStats(),this.updateTankHud();let n=this.tankRunStats.mutationRanks[e.id]||1;if(this.game.events.emit(`octoglyphs:notice`,`${e.title} R${n}: ${e.desc(n)}`),this.game.events.emit(`octoglyphs:hunt-state`,this.getTankHuntState()),this.tankHuntActive&&this.tankContinueChoicePending){this.showTankContinueChoices();return}if(this.tankHuntActive&&!this.tankBoss&&!this.tankContinueChoiceActive&&!this.tankContinueChoicePending&&this.tankWaveResolving&&this.tankHuntKills>=this.tankHuntGoal){this.tankWaveToken+=1,this.tankWaveTimer?.remove(!1),this.tankWaveTimer=null,this.tankHuntWave%At===0?(this.showCenterTraitText(`BOSS ENTERED THE TANK`),this.spawnTankEnemy(!0,this.tankHuntWave)):(this.tankWaveResolving=!1,this.startNextTankWave());return}if(this.tankHuntActive&&!this.tankBoss&&!this.tankContinueChoiceActive&&!this.tankContinueChoicePending&&!this.tankWaveResolving&&!this.tankWaveTimer&&this.tankHuntKills<this.tankHuntGoal){let e=this.tankHuntWave,t=this.tankWaveToken,n=this.currentWaveRecipe||Vt.find(e=>e.id===`mixed_assault`),r=this.getTankWaveInterval(e,n);this.tankWaveTimer=this.time.addEvent({delay:r,loop:!0,callback:()=>this.spawnTankWaveBurst(e,t)})}}applyTankFamilyEvolutions(e){(this.tankRunStats.familyRanks[e]||0)===3&&(e===`inkstorm`?(this.tankRunStats.extraProjectiles+=1,this.tankRunStats.fireDelay*=.9,this.configureAutoFireTimer(),this.showCenterTraitText(`INKSTORM FORM AWAKENED`)):e===`tide`?(this.tankRunStats.orbit+=1,this.tankRunStats.pierce+=1,this.refreshTankOrbiters(),this.showCenterTraitText(`TIDE FORM AWAKENED`)):e===`abyss`?(this.tankRunStats.poison+=1,this.tankRunStats.split+=1,this.showCenterTraitText(`ABYSS FORM AWAKENED`)):e===`shell`?(this.tankRunStats.maxHp+=1,this.tankRunStats.hp=Math.min(this.tankRunStats.maxHp,this.tankRunStats.hp+2),this.tankRunStats.spinPower+=1,this.showCenterTraitText(`SHELL FORM AWAKENED`)):e===`prism`?(this.tankRunStats.magnetRange*=1.25,this.tankRunStats.xpBreakpoints=(this.tankRunStats.xpBreakpoints||Kt).map(e=>Math.max(6,Math.floor(e*.92))),this.tankRunStats.nextXp=Math.max(this.tankRunStats.xp+1,this.getTankXpForNextLevel()),this.showCenterTraitText(`PRISM FORM AWAKENED`)):e===`current`&&(this.tankRunStats.swimSpeed*=1.12,this.tankRunStats.bounce+=1,this.showCenterTraitText(`CURRENT FORM AWAKENED`)))}clearTankUpgradeChoices(){this.tankUpgradeContainer&&(this.tankUpgradeContainer.remove(),this.tankUpgradeContainer=null,this.tankUpgradeChoiceActive=!1)}pickTankBossRewardChoices(){let e=new Set(this.tankRunStats.bossRewards||[]),t=un.filter(t=>!e.has(t.id)),n=t.length>=3?t:un,r=[],i=new Set;for(;r.length<3&&r.length<n.length;){let e=n.filter(e=>!r.includes(e)&&!i.has(e.family));e.length===0&&(e=n.filter(e=>!r.includes(e)));let t=re.Array.GetRandom(e);r.push(t),i.add(t.family)}return r}showTankBossRewardChoices(){if(!this.tankHuntActive||this.tankBossRewardChoiceActive||this.tankBossRewardContainer?.isConnected)return;this.clearTankUpgradeChoices(),this.clearTankBossRewardChoices(),this.tankBossRewardChoiceActive=!0,this.tankContinueChoicePending=!0,this.tankWaveResolving=!0,this.tankWaveTimer?.remove(!1),this.tankWaveTimer=null,this.target=null,this.keyboardManualUntil=0,this.octo.body.setVelocity(0,0);let e=document.createElement(`div`);e.className=`hunt-upgrade-overlay is-open`,e.dataset.huntBossRewardOverlay=`true`,e.innerHTML=`
121
+ <div class="hunt-upgrade-card hunt-boss-reward-card">
122
+ <h2>BOSS REWARD</h2>
123
+ <p>Choose one boss signal before deciding whether to continue.</p>
124
+ <div class="hunt-upgrade-options"></div>
125
+ </div>
126
+ `;let t=e.querySelector(`.hunt-upgrade-options`),n=this.pickTankBossRewardChoices();for(let e of n){let n=document.createElement(`button`);n.className=`hunt-upgrade-option hunt-boss-reward-option hunt-family-${e.family}`,n.type=`button`,n.innerHTML=`<strong>${e.title}</strong><span>${e.desc()}</span><small>BOSS SIGNAL · ${e.family.toUpperCase()}</small>`,n.addEventListener(`click`,t=>{t.preventDefault(),t.stopPropagation(),this.applyTankBossReward(e)}),t.appendChild(n)}document.getElementById(`panel-root`)?.appendChild(e),this.tankBossRewardContainer=e,this.game.events.emit(`octoglyphs:hunt-state`,this.getTankHuntState())}applyTankBossReward(e){this.tankBossRewardChoiceActive&&(this.tankRunStats.bossRewards=this.tankRunStats.bossRewards||[],this.tankRunStats.bossRewards.push(e.id),this.tankRunStats.bossRewardChoices.push({title:e.title,family:e.family,desc:e.desc()}),this.tankRunStats.familyRanks[e.family]=(this.tankRunStats.familyRanks[e.family]||0)+1,e.apply(this),this.clearTankBossRewardChoices(),this.tankBossRewardChoiceActive=!1,this.refreshStats(),this.updateTankHud(),this.game.events.emit(`octoglyphs:notice`,`${e.title}: ${e.desc()}`),this.game.events.emit(`octoglyphs:hunt-state`,this.getTankHuntState()),this.showTankContinueChoices())}clearTankBossRewardChoices(){document.querySelectorAll(`[data-hunt-boss-reward-overlay='true']`).forEach(e=>e.remove()),this.tankBossRewardContainer?.isConnected&&this.tankBossRewardContainer.remove(),this.tankBossRewardContainer=null,this.tankBossRewardChoiceActive=!1}showTankContinueChoices(){if(!this.tankHuntActive||this.tankContinueChoiceActive||this.tankContinueContainer?.isConnected||this.tankUpgradeChoiceActive)return;this.clearTankUpgradeChoices(),this.clearTankBossRewardChoices(),this.clearTankContinueChoices(),this.tankContinueChoicePending=!1,this.tankContinueChoiceActive=!0,this.tankWaveResolving=!0,this.tankContinueWave=this.tankHuntWave+1,this.tankWaveTimer?.remove(!1),this.tankWaveTimer=null,this.target=null,this.keyboardManualUntil=0,this.octo.body.setVelocity(0,0),this.updateTankHud();let e=this.tankContinueWave||this.tankHuntWave+1,t=document.createElement(`div`);t.className=`hunt-upgrade-overlay is-open`,t.dataset.huntContinueOverlay=`true`,t.innerHTML=`
127
+ <div class="hunt-upgrade-card hunt-continue-card">
128
+ <h2>BOSS CLEARED</h2>
129
+ <p>Bank current rewards now, or continue with same mutations into tougher waves.</p>
130
+ <div class="hunt-continue-recap">
131
+ <div><strong>${this.tankHuntWave}</strong><span>Wave</span></div>
132
+ <div><strong>${this.tankHuntTotalKills}</strong><span>Kills</span></div>
133
+ <div><strong>${this.tankHuntBossKills}</strong><span>Bosses</span></div>
134
+ <div><strong>${this.tankHuntGemsCollected}</strong><span>Gem Value</span></div>
135
+ </div>
136
+ <div class="hunt-upgrade-options">
137
+ <button class="hunt-upgrade-option hunt-continue-option" type="button">
138
+ <strong>CONTINUE TO WAVE ${e}</strong>
139
+ <span>Enemies get faster and tougher. Current mutations and boss rewards stay active.</span>
140
+ <small>RISK MORE</small>
141
+ </button>
142
+ <button class="hunt-upgrade-option hunt-end-option" type="button">
143
+ <strong>END HUNT</strong>
144
+ <span>Show recap, bank rewards, and return to the tank.</span>
145
+ <small>SAFE EXIT</small>
146
+ </button>
147
+ </div>
148
+ </div>
149
+ `;let[n,r]=t.querySelectorAll(`button`);n?.addEventListener(`click`,e=>{e.preventDefault(),e.stopPropagation(),this.continueTankHuntAfterBoss()}),r?.addEventListener(`click`,e=>{e.preventDefault(),e.stopPropagation(),this.endTankHunt(!0)}),document.getElementById(`panel-root`)?.appendChild(t),this.tankContinueContainer=t,this.game.events.emit(`octoglyphs:hunt-state`,this.getTankHuntState())}continueTankHuntAfterBoss(){if(!this.tankHuntActive||!this.tankContinueChoiceActive)return;let e=this.tankContinueWave||this.tankHuntWave+1,t=this.tankWaveToken+1;this.tankHuntEndTimer?.remove(!1),this.tankHuntEndTimer=null,this.tankSpecificWaveTimer?.remove(!1),this.tankSpecificWaveTimer=null,this.tankSpecificWavePending=null,this.clearTankContinueChoices(),this.tankContinueChoiceActive=!1,this.tankWaveResolving=!1,this.tankWaveToken=t,this.tankRunStats.hp=Math.min(this.tankRunStats.maxHp,this.tankRunStats.hp+1),this.tankInvincibleUntil=this.time.now+900,this.updateTankHud(),this.tankBackgroundDepthIndex=Math.min((this.tankBackgroundDepthIndex||0)+1,we.length-1),this.pendingBackgroundKey=Oe(this.tankBackgroundDepthIndex)?.key||null,this.applyPendingTankBackground(),this.game.events.emit(`octoglyphs:notice`,`Wave ${e} begins. The tank gets meaner.`),this.game.events.emit(`octoglyphs:hunt-state`,this.getTankHuntState()),this.time.delayedCall(450,()=>{!this.tankHuntActive||this.tankContinueChoiceActive||t!==this.tankWaveToken||this.startSpecificTankWave(e)})}startSpecificTankWave(e){if(!(!this.tankHuntActive||this.tankBoss||this.tankContinueChoiceActive)&&!(this.tankHuntWave===e&&this.tankWaveTimer&&!this.tankWaveResolving)){if(this.tankUpgradeChoiceActive){if(this.tankSpecificWavePending===e&&this.tankSpecificWaveTimer)return;this.tankSpecificWavePending=e,this.tankSpecificWaveTimer?.remove(!1),this.tankSpecificWaveTimer=this.time.delayedCall(180,()=>{this.tankSpecificWaveTimer=null;let t=this.tankSpecificWavePending;this.tankSpecificWavePending=null,this.startSpecificTankWave(t||e)});return}this.tankSpecificWaveTimer?.remove(!1),this.tankSpecificWaveTimer=null,this.tankSpecificWavePending=null,this.tankWaveResolving=!1,this.tankWaveTimer?.remove(!1),this.tankWaveTimer=null,this.tankHuntWave=Math.max(0,e-1),this.startNextTankWave()}}applyPendingTankBackground(){if(!this.pendingBackgroundKey)return;let e=we.find(e=>e.key===this.pendingBackgroundKey);this.pendingBackgroundKey=null,!(!e||this.activeBackgroundKey===e.key)&&(this.cameras.main.fadeOut(170,2,12,18),this.time.delayedCall(170,()=>{this.setTankBackground(e),this.cameras.main.fadeIn(220,2,12,18)}))}clearTankContinueChoices(){document.querySelectorAll(`[data-hunt-continue-overlay='true']`).forEach(e=>e.remove()),this.tankContinueContainer?.isConnected&&this.tankContinueContainer.remove(),this.tankContinueContainer=null,this.tankContinueChoiceActive=!1,this.tankContinueChoicePending=!1,this.tankContinueWave=null}hitPlayer(e){if(!this.tankHuntActive||this.tankUpgradeChoiceActive||this.tankContinueChoiceActive||!e?.active||this.time.now<this.tankInvincibleUntil)return;if(!e.getData(`boss`)&&this.tankRunStats.guardianCharges>0){--this.tankRunStats.guardianCharges,this.tankInvincibleUntil=this.time.now+520,this.spawnPulseVisual(this.octo.x,this.octo.y,92,12053759),this.spawnEnemyDeath(e.x,e.y,e.scaleX||1),e.destroy(),this.updateTankHud(),this.game.events.emit(`octoglyphs:notice`,`Guardian Orbit blocked a hit. ${this.tankRunStats.guardianCharges} charge${this.tankRunStats.guardianCharges===1?``:`s`} left.`);return}let t=e.getData(`boss`)?2:1;this.tankRunStats.hp=Math.max(0,this.tankRunStats.hp-t),this.tankHuntDamageTaken+=t,this.tankInvincibleUntil=this.time.now+1200,this.tankSpinStartedAt=this.time.now,this.tankSpinFrame=0,this.tankWasSpinning=!0,this.tankSpinHitEnemies.clear(),this.tankSpinUntil=this.time.now+640,this.cameras.main.shake(130,.006),this.tweens.add({targets:this.octo,alpha:.32,duration:80,yoyo:!0,repeat:5});let n=this.toroidalDelta(e.x,e.y,this.octo.x,this.octo.y),r=new Z.Vector2(n.dx,n.dy).normalize().scale(260);this.octo.body.setVelocity(r.x,r.y),e.getData(`boss`)||(this.spawnEnemyDeath(e.x,e.y,e.scaleX||1),e.destroy()),this.updateTankHud(),this.game.events.emit(`octoglyphs:hunt-state`,this.getTankHuntState()),this.tankRunStats.hp<=0&&(this.game.events.emit(`octoglyphs:notice`,`Octo got overwhelmed. Tank Hunt ended.`),this.endTankHunt(!1))}damageEnemiesTouchedBySpin(){if(!this.tankHuntActive||!this.enemies||!this.octo)return;let e=(58+this.tankRunStats.spinPower*12)*this.mass*this.visualScaleCompensation,t=Math.max(2,Math.round(2+this.tankRunStats.damageBonus+this.tankRunStats.spinPower));for(let n of this.enemies.getChildren()){if(!n.active||this.tankSpinHitEnemies.has(n))continue;let r=n.getData(`boss`)?46:30;this.toroidalDistance(this.octo.x,this.octo.y,n.x,n.y)>e+r||(this.tankSpinHitEnemies.add(n),this.damageTankEnemy(n,t))}}applyWakeTrail(e){if(!this.tankHuntActive||!this.octo||this.tankRunStats.wakeTrail<=0)return;this.tankWakeTimer-=e;let t=Math.hypot(this.octo.body.velocity.x,this.octo.body.velocity.y);if(t<95||this.tankWakeTimer>0)return;this.tankWakeTimer=Math.max(90,240-this.tankRunStats.wakeTrail*28);let n=42+this.tankRunStats.wakeTrail*12,r=Math.max(1,Math.round(this.tankRunStats.wakeTrail+t/260)),i=Math.atan2(-this.octo.body.velocity.y,-this.octo.body.velocity.x),a=this.octo.x+Math.cos(i)*34,o=this.octo.y+Math.sin(i)*34;this.damageEnemiesInRadius(a,o,n,r),this.spawnPulseVisual(a,o,n,7534335)}checkManualMineInput(){!this.tankHuntActive||!this.octo||!this.keys?.SPACE||X.Keyboard.JustDown(this.keys.SPACE)&&this.dropPlayerMine(!0)}dropPlayerMine(e=!1){if(!this.tankHuntActive||!this.octo)return null;let t=e?700:520;if(this.time.now<this.tankManualMineCooldown)return null;this.tankManualMineCooldown=this.time.now+t;let n=this.dropPlayerMineAt(this.octo.x,this.octo.y,e);return e&&n&&this.game.events.emit(`octoglyphs:notice`,`Panic mine dropped.`),n}dropPlayerMineAt(e,t,n=!1){if(!this.tankHuntActive)return null;let r=n?se[0]:se[1]||se[0],i=this.playerMines.create(e,t,`${r.key}-0`);return i.setData(`manual`,n),i.setData(`armed`,!0),i.setData(`spawnedAt`,this.time.now),i.setData(`animKey`,r.key),i.setData(`animFrames`,r.frames),i.setData(`damage`,n?Math.max(3,2+this.tankRunStats.damageBonus):Math.max(2,1+this.tankRunStats.inkMines)),i.setData(`radius`,n?112:72+this.tankRunStats.inkMines*16),i.setScale(n?.72:.58),i.setDepth(13),i.body.setCircle(28,0,0),this.improveGameplayReadability(i,{outlineAlpha:.38,haloColor:n?8388607:9437055,haloAlpha:.34,haloBlur:8}),this.time.delayedCall(n?180:420,()=>{i.active&&i.setData(`armed`,!1)}),this.time.delayedCall(n?3200:1900,()=>{i.active&&this.detonatePlayerMine(i)}),i}animatePlayerMines(){if(this.playerMines)for(let e of this.playerMines.getChildren()){if(!e.active)continue;let t=e.getData(`animFrames`)||0,n=e.getData(`animKey`);if(!t||!n)continue;let r=Math.floor(this.time.now/76)%t;e.setTexture(`${n}-${r}`)}}triggerPlayerMine(e){this.detonatePlayerMine(e)}detonatePlayerMine(e){if(!e?.active)return;let t=e.getData(`radius`)||96,n=e.getData(`damage`)||3,r=e.getData(`manual`)?8388607:9437055;this.damageEnemiesInRadius(e.x,e.y,t,n),this.spawnPulseVisual(e.x,e.y,t,r),e.destroy()}applyInkMines(e){!this.tankHuntActive||!this.octo||this.tankRunStats.inkMines<=0||(this.tankMineTimer-=e,!(this.tankMineTimer>0)&&(this.tankMineTimer=Math.max(520,1450-this.tankRunStats.inkMines*190),this.dropPlayerMine(!1)))}applyGemPulse(e,t){let n=88+this.tankRunStats.gemPulse*22,r=Math.max(1,this.tankRunStats.gemPulse);this.damageEnemiesInRadius(e,t,n,r),this.spawnPulseVisual(e,t,n,16754687)}damageEnemiesInRadius(e,t,n,r){for(let i of this.enemies.getChildren()){if(!i.active)continue;let a=i.getData(`boss`)?46:30;this.toroidalDistance(e,t,i.x,i.y)>n+a||this.damageTankEnemy(i,r)}}spawnPulseVisual(e,t,n,r){let i=this.add.circle(e,t,n,r,.13).setDepth(14);i.setStrokeStyle(3,r,.58),this.tweens.add({targets:i,alpha:0,scale:1.35,duration:260,onComplete:()=>i.destroy()})}spawnGemAt(e,t,n=`green`,r={}){let i=ie[n]||ie.green,a={x:e,y:t},o=this.gems.create(a.x,a.y,`${i.key}-0`);if(!o){console.warn(`[GEM] gems.create returned null/undefined at`,a.x,a.y);return}let s=r.collectionGraceMs??0,c=Math.min(It,Math.max(s,220));o.setData(`gemType`,n),o.setData(`value`,r.value||i.value),o.setData(`frame`,Z.Between(0,i.frames-1)),o.setData(`spawnedAt`,this.time.now),o.setData(`collectibleAt`,this.time.now+s),o.setScale(n===`silver`?.86:.96),o.setDepth(20),o.setAlpha(1),o.clearTint(),this.addGemGlowOnly(o,i,n,c),o.body.setCircle(14,7,7),r.lifetime>0&&(o.setData(`expiresAt`,this.time.now+r.lifetime),this.time.delayedCall(Math.max(1,r.lifetime-4500),()=>{if(!o.active)return;let e=o.getData(`glowVisuals`)||[];this.tweens.add({targets:[o,...e],alpha:.24,duration:520,yoyo:!0,repeat:4})}),this.time.delayedCall(r.lifetime,()=>{o.active&&this.destroyGem(o)}))}addGemPrimitiveVisuals(e,t,n,r){let i=t.tint||16777215,a=n===`silver`?1.45:n===`pink`?1.28:n===`yellow`?1.16:n===`blue`?1.08:1,o=Z.Between(0,9999),s=this.add.ellipse(e.x,e.y,52*a,40*a,i,.12).setDepth(Rt-.2);s.setBlendMode(Y.ADD);let c=this.add.star(e.x,e.y,6,8*a,18*a,i,.92).setDepth(Rt+.4);c.setStrokeStyle(2.5,16777215,.85);let l=this.add.star(e.x,e.y,6,4*a,10*a,16777215,.6).setDepth(Rt+.5),u=this.add.circle(e.x,e.y,22*a,0,0).setDepth(Rt+.1);u.setStrokeStyle(2.5,i,.65);let d=this.add.circle(e.x,e.y,38*a,i,.2).setDepth(Rt-.1);d.setStrokeStyle(2,16777215,.7);let f=[s,u,c,l,d];f.forEach(e=>e.setData(`gemPrimitive`,!0)),e.setData(`glowVisuals`,f);let p=n===`silver`?4:n===`pink`||n===`yellow`?3:n===`blue`?2:1;for(let t=0;t<p;t+=1){let n=Math.PI*2/p*t+Z.FloatBetween(-.8,.8),r=Z.FloatBetween(16,28)*a,i=Z.FloatBetween(12,22)*a,o=this.add.star(e.x+Math.cos(n)*r,e.y+Math.sin(n)*i,4,1.2,3.2,16777215,0).setDepth(Rt+.6);o.setBlendMode(Y.ADD),o.setData(`gemPrimitive`,!0),o.setData(`offsetX`,Math.cos(n)*r),o.setData(`offsetY`,Math.sin(n)*i),f.push(o),this.tweens.add({targets:o,alpha:{from:0,to:Z.FloatBetween(.5,.85)},scale:{from:.3,to:Z.FloatBetween(.85,1.3)},angle:180,duration:Z.Between(450,900),delay:Z.Between(0,1200),hold:Z.Between(80,200),repeatDelay:Z.Between(300,1200),yoyo:!0,repeat:-1,ease:`Sine.easeInOut`})}this.tweens.add({targets:[c,l],scale:{from:.88,to:1.14},duration:620+o%200,yoyo:!0,repeat:-1,ease:`Sine.easeInOut`}),this.tweens.add({targets:s,alpha:{from:.06,to:.2},scaleX:{from:.85,to:1.2},scaleY:{from:.8,to:1.1},duration:900+o%300,yoyo:!0,repeat:-1,ease:`Sine.easeInOut`}),this.tweens.add({targets:u,scale:{from:.9,to:1.18},alpha:{from:.5,to:.85},duration:700+o%250,delay:200,yoyo:!0,repeat:-1,ease:`Sine.easeInOut`}),this.tweens.add({targets:d,alpha:{from:.28,to:0},scale:{from:.6,to:1.6},duration:Math.max(700,r),ease:`Sine.easeOut`,onComplete:()=>{d.active&&d.setVisible(!1)}})}addGemGlowOnly(e,t,n,r){let i=t.tint||16777215,a=n===`silver`?1.45:n===`pink`?1.28:n===`yellow`?1.16:n===`blue`?1.08:1,o=this.add.circle(e.x,e.y,24*a,i,.18).setDepth(e.depth-.5);o.setBlendMode(Y.ADD),o.setData(`gemPrimitive`,!0),this.tweens.add({targets:o,alpha:{from:.12,to:.3},scale:{from:.9,to:1.2},duration:800+Z.Between(0,300),yoyo:!0,repeat:-1,ease:`Sine.easeInOut`});let s=this.add.circle(e.x,e.y,36*a,i,.22).setDepth(e.depth-.6);s.setStrokeStyle(2,16777215,.6),s.setData(`gemPrimitive`,!0),this.tweens.add({targets:s,alpha:0,scale:1.8,duration:Math.max(600,r),ease:`Sine.easeOut`,onComplete:()=>{s.active&&s.destroy()}}),e.setData(`glowVisuals`,[o,s])}addGemSpawnReveal(e,t,n){let r=t.tint||16777215,i=this.add.circle(e.x,e.y,34,r,.28).setDepth(19.4);i.setStrokeStyle(3,16777215,.72),i.setData(`gemReveal`,!0);let a=e.getData(`glowVisuals`)||[];e.setData(`glowVisuals`,[...a,i]),this.tweens.add({targets:i,alpha:{from:.34,to:.08},scale:{from:.64,to:1.42},duration:520,yoyo:!0,repeat:Math.max(1,Math.ceil(n/1040)),ease:`Sine.easeInOut`}),this.tweens.add({targets:e,alpha:{from:Lt,to:1},scale:{from:e.scaleX*1.18,to:e.scaleX},duration:Math.max(220,n),ease:`Sine.easeOut`})}addGemGlowVisuals(e,t,n){let r=t.tint||16777215,i=n===`silver`?1.45:n===`pink`?1.28:n===`yellow`?1.16:n===`blue`?1.08:1,a=Z.Between(0,9999),o=`${t.key}-${e.getData(`frame`)||0}`,s=this.add.image(e.x,e.y,o).setDepth(18),c=this.add.ellipse(e.x,e.y,54*i,42*i,r,.16).setDepth(17.9),l=this.add.image(e.x,e.y,o).setDepth(18.2);s.setData(`syncGemFrame`,!0),l.setData(`syncGemFrame`,!0);let u=[c,s,l];c.setBlendMode(Y.ADD),s.setBlendMode(Y.ADD),l.setBlendMode(Y.ADD),s.setTint(r),l.setTint(16777215),s.setAlpha(.24).setScale(e.scaleX*2.35*i,e.scaleY*2.35*i),l.setAlpha(.28).setScale(e.scaleX*1.48*i,e.scaleY*1.48*i),c.postFX?.addGlow&&c.postFX.addGlow(r,.75,0,!1,16,18),s.postFX?.addGlow&&s.postFX.addGlow(r,.95,0,!1,18,18),l.postFX?.addGlow&&l.postFX.addGlow(16777215,.55,0,!1,8,10),this.tweens.add({targets:c,alpha:{from:.08,to:.22},scaleX:{from:.88,to:1.18},scaleY:{from:.82,to:1.08},duration:820+a%260,delay:a%300,yoyo:!0,repeat:-1,ease:`Sine.easeInOut`}),this.tweens.add({targets:s,alpha:{from:.14,to:.34},scale:{from:e.scaleX*2*i,to:e.scaleX*2.65*i},duration:700+a%240,delay:a*3%320,yoyo:!0,repeat:-1,ease:`Sine.easeInOut`}),this.tweens.add({targets:l,alpha:{from:.16,to:.42},scale:{from:e.scaleX*1.22*i,to:e.scaleX*1.7*i},duration:440+a%180,delay:a*5%260,yoyo:!0,repeat:-1,ease:`Sine.easeInOut`});let d=n===`silver`?4:n===`pink`||n===`yellow`?3:n===`blue`?2:1;for(let t=0;t<d;t+=1){let r=Math.PI*2/d*t+Z.FloatBetween(-.9,.9),a=Z.FloatBetween(17,30)*i,o=Z.FloatBetween(12,23)*i,s=this.add.star(e.x+Math.cos(r)*a,e.y+Math.sin(r)*o,4,1.1,n===`green`?2.8:3.8,16777215,0).setDepth(19.5);s.setBlendMode(Y.ADD),s.setData(`offsetX`,Math.cos(r)*a),s.setData(`offsetY`,Math.sin(r)*o),u.push(s),this.tweens.add({targets:s,alpha:{from:0,to:Z.FloatBetween(.42,.78)},scale:{from:.35,to:Z.FloatBetween(.9,1.35)},angle:180,duration:Z.Between(420,980),delay:Z.Between(0,1500),hold:Z.Between(60,260),repeatDelay:Z.Between(300,1400),yoyo:!0,repeat:-1,ease:`Sine.easeInOut`})}e.setData(`glowVisuals`,u)}updateGemGlowVisuals(e){let t=e.getData(`glowVisuals`)||[],n=ie[e.getData(`gemType`)||`green`]||ie.green,r=e.getData(`frame`)||0,i=`${n.key}-${r}`;for(let n of t)n?.active&&(n.getData(`syncGemFrame`)&&n.setTexture(i),n.setPosition(e.x+(n.getData(`offsetX`)||0),e.y+(n.getData(`offsetY`)||0)))}addTraitGlowVisuals(e,t){let n=this.getTraitGlowColor(t),r=t.rarity===`legendary`?1.34:t.rarity===`rare`?1.18:1.06,i=Z.Between(0,9999),a=this.getTraitFrameKey(e,t),o=this.add.image(e.x,e.y,a).setDepth(14.8),s=this.add.ellipse(e.x,e.y,70*r,52*r,n,.14).setDepth(14.6),c=this.add.image(e.x,e.y,a).setDepth(15.1);o.setData(`syncTraitFrame`,!0),c.setData(`syncTraitFrame`,!0);let l=[s,o,c];s.setBlendMode(Y.ADD),o.setBlendMode(Y.ADD),c.setBlendMode(Y.ADD),o.setTint(n).setAlpha(.22).setScale(e.scaleX*2.25*r,e.scaleY*2.25*r),c.setTint(16777215).setAlpha(.3).setScale(e.scaleX*1.42*r,e.scaleY*1.42*r),s.postFX?.addGlow&&s.postFX.addGlow(n,.75,0,!1,16,18),o.postFX?.addGlow&&o.postFX.addGlow(n,.95,0,!1,18,18),c.postFX?.addGlow&&c.postFX.addGlow(16777215,.55,0,!1,8,10),this.tweens.add({targets:s,alpha:{from:.08,to:.22},scaleX:{from:.9,to:1.2},scaleY:{from:.84,to:1.1},duration:880+i%260,delay:i%300,yoyo:!0,repeat:-1,ease:`Sine.easeInOut`}),this.tweens.add({targets:o,alpha:{from:.14,to:.34},scale:{from:e.scaleX*1.92*r,to:e.scaleX*2.55*r},duration:760+i%240,delay:i*3%320,yoyo:!0,repeat:-1,ease:`Sine.easeInOut`}),this.tweens.add({targets:c,alpha:{from:.16,to:.42},scale:{from:e.scaleX*1.18*r,to:e.scaleX*1.62*r},duration:500+i%180,delay:i*5%260,yoyo:!0,repeat:-1,ease:`Sine.easeInOut`});let u=t.rarity===`legendary`?4:t.rarity===`rare`?3:2;for(let t=0;t<u;t+=1){let n=Math.PI*2/u*t+Z.FloatBetween(-.8,.8),i=Z.FloatBetween(22,36)*r,a=Z.FloatBetween(16,28)*r,o=this.add.star(e.x+Math.cos(n)*i,e.y+Math.sin(n)*a,4,1.1,4,16777215,0).setDepth(17.5);o.setBlendMode(Y.ADD),o.setData(`offsetX`,Math.cos(n)*i),o.setData(`offsetY`,Math.sin(n)*a),l.push(o),this.tweens.add({targets:o,alpha:{from:0,to:Z.FloatBetween(.45,.82)},scale:{from:.35,to:Z.FloatBetween(.9,1.35)},angle:180,duration:Z.Between(440,1040),delay:Z.Between(0,1600),hold:Z.Between(60,260),repeatDelay:Z.Between(320,1500),yoyo:!0,repeat:-1,ease:`Sine.easeInOut`})}e.setData(`glowVisuals`,l)}updateTraitGlowVisuals(e){let t=e.getData(`glowVisuals`)||[],n=xe(e.getData(`assetId`)),r=this.getTraitFrameKey(e,n);for(let n of t)n?.active&&(n.getData(`syncTraitFrame`)&&n.setTexture(r),n.setPosition(e.x+(n.getData(`offsetX`)||0),e.y+(n.getData(`offsetY`)||0)))}getTraitFrameKey(e,t){if(!t)return e.texture?.key||`body-blue`;let n=e.getData(`frame`)||0;return t.frames&&t.frames>1?`${t.key}-${n}`:t.key}getTraitGlowColor(e){return e?.rarity===`legendary`?16765805:e?.rarity===`rare`?10414335:e?.rarity===`event`?14060799:e?.slot===`eyes`?9109503:e?.slot===`hat`?16770442:e?.slot===`clothes`?16751573:e?.slot===`boost`?11009930:16777215}destroyTraitPickup(e){if(!e)return;let t=e.getData(`glowVisuals`)||[];for(let e of t)e?.active&&(this.tweens.killTweensOf(e),e.destroy());this.tweens.killTweensOf(e),e.destroy()}destroyGem(e){if(!e)return;let t=e.getData(`glowVisuals`)||[];for(let e of t)e?.active&&(this.tweens.killTweensOf(e),e.destroy());e.destroy()}spawnTraitDiscovery(e=!1){if(this.traits.countActive(!0)>=2&&!e)return;let t=be.filter(e=>!this.save.discovered?.includes(e.id)&&!it(this.save,e.id)),n=t.length>0?t:be.filter(e=>!it(this.save,e.id));if(n.length===0){this.game.events.emit(`octoglyphs:notice`,`No undiscovered trait signals remain in current pool.`);return}let r=this.pickDiscoveryTrait(n),i=this.pickTraitSpawnPosition(),a=this.traits.create(i.x,i.y,r.key);a.setData(`assetId`,r.id),a.setData(`isTrait`,!0),a.setData(`collecting`,!1),a.setData(`frame`,Z.Between(0,Math.max(1,r.frames||1)-1)),r.frames&&r.frames>1&&a.setTexture(`${r.key}-${a.getData(`frame`)}`),a.setScale(r.slot===`boost`?.65:.8),a.setDepth(16),a.body.setCircle(24,0,0),this.addTraitGlowVisuals(a,r),this.tweens.add({targets:a,alpha:.48,duration:520,yoyo:!0,repeat:-1,ease:`Sine.easeInOut`}),this.addTraitMarker(a),this.showCenterTraitText(`${r.name} HAS JUST SPAWNED IN THE TANK`),this.time.delayedCall(22e3,()=>{a.active&&this.destroyTraitPickup(a),this.clearTraitMarker(a)})}addTraitMarker(e){this.clearTraitMarker();let t=this.add.container(this.octo.x,this.octo.y).setDepth(31),n=this.add.text(0,0,`>`,{fontFamily:`"Press Start 2P", monospace`,fontSize:`55px`,color:`#fff08a`,stroke:`#2b1700`,strokeThickness:12}).setOrigin(.5);t.add(n),t.setData(`trait`,e),this.activeTraitMarker=t,this.activeTraitArrow=n,this.tweens.add({targets:n,scale:1.08,duration:520,yoyo:!0,repeat:-1,ease:`Sine.easeInOut`})}clearTraitMarker(e=null){this.activeTraitMarker&&(e&&this.activeTraitMarker.getData(`trait`)!==e||(this.tweens.killTweensOf(this.activeTraitMarker.list),this.activeTraitMarker.destroy(),this.activeTraitMarker=null,this.activeTraitArrow=null))}createGemArrow(){this.gemArrow||=this.add.text(0,0,`➤`,{fontFamily:`"Press Start 2P", monospace`,fontSize:`22px`,color:`#7fffff`,stroke:`#061827`,strokeThickness:7}).setOrigin(.5).setDepth(1001).setScrollFactor(0).setVisible(!1)}updateGemArrow(){if(!this.gemArrow||!this.octo)return;let e=this.findNearestOffscreenGem();if(!e){this.gemArrow.setVisible(!1);return}let t=this.cameras.main,n=t.worldView,r=this.toroidalDelta(this.octo.x,this.octo.y,e.x,e.y),i=Math.atan2(r.dy,r.dx),a=Z.Clamp(e.x-n.x,34,t.width-34),o=Z.Clamp(e.y-n.y,74,t.height-34);this.gemArrow.setPosition(a,o),this.gemArrow.setRotation(i),this.gemArrow.setVisible(!0)}findNearestOffscreenGem(){if(!this.gems||this.gems.countActive(!0)===0)return null;let e=this.cameras.main.worldView,t=null,n=1/0;for(let r of this.gems.getChildren()){if(!r.active||e.contains(r.x,r.y))continue;let i=this.toroidalDistance(this.octo.x,this.octo.y,r.x,r.y);i<24||i>=n||(t=r,n=i)}return t}updateTraitMarker(){if(!this.activeTraitMarker)return;let e=this.activeTraitMarker.getData(`trait`);if(!e?.active){this.clearTraitMarker(e);return}let t=this.toroidalDelta(this.octo.x,this.octo.y,e.x,e.y),n=Math.atan2(t.dy,t.dx);this.activeTraitMarker.setPosition(this.octo.x+Math.cos(n)*76,this.octo.y+Math.sin(n)*76),this.activeTraitMarker.setRotation(n)}showCenterTraitText(e){this.centerTraitText&&(this.tweens.killTweensOf(this.centerTraitText),this.centerTraitText.destroy()),this.centerTraitText=this.add.text(this.cameras.main.width/2,this.cameras.main.height*.32,e.toUpperCase(),{fontFamily:`"Press Start 2P", monospace`,fontSize:`24px`,color:`#fff8c9`,align:`center`,stroke:`#061827`,strokeThickness:7,wordWrap:{width:Math.min(820,this.cameras.main.width-44)}}).setOrigin(.5).setDepth(1e3).setScrollFactor(0),this.tweens.add({targets:this.centerTraitText,alpha:0,y:this.centerTraitText.y-18,delay:2600,duration:480,onComplete:()=>{this.centerTraitText&&=(this.centerTraitText.destroy(),null)}})}pickDiscoveryTrait(e){let t={common:68,uncommon:23,rare:8,legendary:1,event:1},n=e.map(e=>({asset:e,weight:t[e.rarity]||20})),r=n.reduce((e,t)=>e+t.weight,0),i=Z.Between(1,Math.max(1,r));for(let e of n)if(i-=e.weight,i<=0)return e.asset;return re.Array.GetRandom(e)}pickTraitSpawnPosition(){if(this.octo?.active){let e=this.cameras.main.worldView,t=this.tankHuntActive?Math.min(e.width,e.height)*.32:Math.min(e.width,e.height)*.38,n=Z.FloatBetween(0,Math.PI*2);return{x:this.octo.x+Math.cos(n)*t,y:this.octo.y+Math.sin(n)*t}}return{x:Z.Between(120,this.worldWidth-120),y:Z.Between(130,this.worldHeight-130)}}animateGems(){for(let e of this.gems.getChildren()){if(!e?.active)continue;let t=ie[e.getData(`gemType`)||`green`]||ie.green,n=((e.getData(`frame`)||0)+1)%t.frames;e.setData(`frame`,n),e.setTexture(`${t.key}-${n}`),this.updateGemGlowVisuals(e)}}animateTraits(){for(let e of this.traits.getChildren()){if(!e?.active)continue;let t=xe(e.getData(`assetId`));if(t?.frames&&t.frames>1){let n=((e.getData(`frame`)||0)+1)%t.frames;e.setData(`frame`,n),e.setTexture(`${t.key}-${n}`)}this.updateTraitGlowVisuals(e)}}getTankSpeedMultiplier(){return this.stats.swimSpeed*(this.tankHuntActive?this.tankRunStats.swimSpeed:1)}getTankPlayerSpeed(e){return e*this.getTankSpeedMultiplier()}wrapValue(e,t){return(e%t+t)%t}toroidalDelta(e,t,n,r){let i=n-e,a=r-t;return Math.abs(i)>this.worldWidth/2&&(i-=Math.sign(i)*this.worldWidth),Math.abs(a)>this.worldHeight/2&&(a-=Math.sign(a)*this.worldHeight),{dx:i,dy:a}}toroidalDistance(e,t,n,r){let{dx:i,dy:a}=this.toroidalDelta(e,t,n,r);return Math.hypot(i,a)}canOverlapToroidal(e,t,n){return this.tankHuntActive?!e?.active||!t?.active?!1:this.toroidalDistance(e.x,e.y,t.x,t.y)<=n:!0}moveBodyTowardToroidal(e,t,n){if(!e?.body||!t)return;let{dx:r,dy:i}=this.toroidalDelta(e.x,e.y,t.x,t.y),a=Math.max(.001,Math.hypot(r,i));e.body.setVelocity(r/a*n,i/a*n)}unwrapPointNearPlayer(e,t){if(!this.octo?.active)return{x:e,y:t};let n=e,r=t;for(;n-this.octo.x>this.worldWidth/2;)n-=this.worldWidth;for(;n-this.octo.x<-this.worldWidth/2;)n+=this.worldWidth;for(;r-this.octo.y>this.worldHeight/2;)r-=this.worldHeight;for(;r-this.octo.y<-this.worldHeight/2;)r+=this.worldHeight;return{x:n,y:r}}wrapTankActorNearPlayer(e){if(!e?.active||!this.octo?.active)return;let t=e.x,n=e.y;for(;t-this.octo.x>this.worldWidth/2;)t-=this.worldWidth;for(;t-this.octo.x<-this.worldWidth/2;)t+=this.worldWidth;for(;n-this.octo.y>this.worldHeight/2;)n-=this.worldHeight;for(;n-this.octo.y<-this.worldHeight/2;)n+=this.worldHeight;(t!==e.x||n!==e.y)&&e.setPosition(t,n)}wrapTankActor(e){this.wrapTankActorNearPlayer(e)}wrapTankActors(){if(!(!this.tankHuntActive||!this.octo)){for(let e of this.enemies.getChildren())this.wrapTankActorNearPlayer(e);for(let e of this.bullets.getChildren())this.wrapTankActorNearPlayer(e);for(let e of this.gems.getChildren())this.wrapTankActorNearPlayer(e);for(let e of this.traits.getChildren())this.wrapTankActorNearPlayer(e);this.updateToroidalGhosts()}}createToroidalGhosts(){if(!this.octo||this.toroidalGhosts.length>0)return;let e=[[-1,0],[1,0],[0,-1],[0,1],[-1,-1],[1,-1],[-1,1],[1,1]];this.toroidalGhosts=e.map(([e,t])=>{let n=this.add.container(this.octo.x,this.octo.y).setDepth(19).setAlpha(.78).setVisible(!1),r=this.add.image(0,0,`body-blue`),i=this.add.image(0,-1,`clothes-astro`).setVisible(!1),a=this.add.image(0,0,`eyes-regular`),o=this.add.image(0,-2,`hat-alien-antenna`).setVisible(!1),s=this.add.image(38,14,`boost-shell-earring`).setVisible(!1);return n.add([r,i,a,o,s]),{ghost:n,body:r,clothes:i,eyes:a,hat:o,boost:s,ox:e,oy:t}})}updateToroidalGhosts(){if(!this.octo||!this.toroidalGhosts?.length)return;let e=this.cameras.main,t=this.octo.x<e.worldView.x+180,n=this.octo.x>e.worldView.right-180,r=this.octo.y<e.worldView.y+180,i=this.octo.y>e.worldView.bottom-180;for(let e of this.toroidalGhosts){let a=e.ox<0&&n||e.ox>0&&t||e.ox===0,o=e.oy<0&&i||e.oy>0&&r||e.oy===0,s=this.tankHuntActive&&a&&o&&(e.ox!==0||e.oy!==0);e.ghost.setVisible(s),s&&(e.ghost.setPosition(this.octo.x+e.ox*this.worldWidth,this.octo.y+e.oy*this.worldHeight),e.ghost.setScale(this.octo.scaleX,this.octo.scaleY),e.ghost.setRotation(this.octo.rotation),e.body.setTexture(this.bodyLayer.texture.key).setScale(this.bodyLayer.scaleX,this.bodyLayer.scaleY).setVisible(this.bodyLayer.visible),e.eyes.setTexture(this.eyesLayer.texture.key).setScale(this.eyesLayer.scaleX,this.eyesLayer.scaleY).setVisible(this.eyesLayer.visible),e.clothes.setTexture(this.clothesLayer.texture.key).setScale(this.clothesLayer.scaleX,this.clothesLayer.scaleY).setVisible(this.clothesLayer.visible),e.hat.setTexture(this.hatLayer.texture.key).setScale(this.hatLayer.scaleX,this.hatLayer.scaleY).setVisible(this.hatLayer.visible),e.boost.setTexture(this.boostLayer.texture.key).setScale(this.boostLayer.scaleX,this.boostLayer.scaleY).setVisible(this.boostLayer.visible))}}applyMagnetPull(){let e=this.tankHuntActive?this.tankRunStats.magnetRange:1;this.pullCollectibles(this.gems.getChildren(),135*this.stats.magnetRange*e,235*this.stats.magnetRange*e),this.target&&this.pullCollectibles(this.traits.getChildren(),105*this.stats.magnetRange,190*this.stats.magnetRange)}pullCollectibles(e,t,n){for(let r of e){if(!r.active||!r.body)continue;let e=this.toroidalDistance(this.octo.x,this.octo.y,r.x,r.y);if(e>t){r.body.setVelocity(0,0),r.setData(`collecting`,!1);continue}let i=r.getData(`isTrait`)?60:46;if(e<=i&&this.canCollectMagnetItem(r)){if(r.getData(`isTrait`)){r.setData(`collecting`,!0),r.body.setVelocity(0,0),r.setPosition(this.octo.x,this.octo.y);continue}this.collectGem(r);continue}if(e<=i){r.body.setVelocity(0,0),r.setData(`collecting`,!1);continue}r.setData(`collecting`,!1);let a=Z.Clamp(1-e/t,.25,1);this.moveBodyTowardToroidal(r,this.octo,n*a)}}pullGemsTowardPoint(e,t,n,r){if(this.gems)for(let i of this.gems.getChildren()){if(!i.active||!i.body||this.time.now<(i.getData(`collectibleAt`)||0))continue;let a=this.toroidalDistance(e,t,i.x,i.y);if(a>n)continue;let o=Z.Clamp(1-a/n,.2,1);this.moveBodyTowardToroidal(i,{x:e,y:t},r*o)}}applyGemResonanceReward(e,t,n){if(this.time.now<(this.tankRunStats.nextGemResonanceAt||0))return;let r=n===`green`?18:34;if(!(Z.Between(1,100)>r)){this.tankRunStats.nextGemResonanceAt=this.time.now+700;for(let n of this.enemies.getChildren())n.active&&(this.toroidalDistance(e,t,n.x,n.y)>120||this.damageTankEnemy(n,1));this.pullGemsTowardPoint(e,t,170,220),this.spawnPulseVisual(e,t,120,16766720)}}fireGoldenPrismReward(e,t){if(!(this.time.now<(this.tankRunStats.nextGoldenPrismAt||0))){this.tankRunStats.nextGoldenPrismAt=this.time.now+620;for(let n of[-32,0,32]){let r=Z.DegToRad(n)+Z.FloatBetween(0,Math.PI*2),i=this.createTankBulletAt(e,t,r,.34,.44);if(!i)return;i.setTint(16766720),i.setData(`homing`,Math.max(i.getData(`homing`)||0,1)),i.setData(`pierceLeft`,0)}}}canCollectGem(e){return!e?.active||this.time.now<(e.getData(`collectibleAt`)||0)?!1:this.canOverlapToroidal(this.octo,e,38)}canCollectMagnetItem(e){return!(!e?.active||!e.getData(`isTrait`)&&this.time.now<(e.getData(`collectibleAt`)||0))}collectGem(e){let t=e.getData(`gemType`)||`green`,n=Math.max(1,Math.round((e.getData(`value`)||1)*this.stats.gemValue));this.time.now-(e.getData(`spawnedAt`)||this.time.now),tt(this.save,t,n);let r=e.x,i=e.y;this.destroyGem(e),this.tankHuntActive&&this.addTankHuntGemSource(t,n),this.tankHuntActive&&this.tankRunStats.gemPulse>0&&this.applyGemPulse(r,i),this.tankHuntActive&&this.tankRunStats.activeInteractionFlags?.goldenPrism&&this.fireGoldenPrismReward(r,i),this.tankHuntActive&&this.tankRunStats.activeSynergyIds?.includes(`theme-treasure`)&&this.applyGemResonanceReward(r,i,t),this.tankHuntActive&&this.applyHungryGemPulse(r,i),this.tankHuntActive&&this.addTankHuntXp(Gt[t]||1),this.emitState(),Ze(this.save),Et(`firstGem`,this.save)}addTankHuntGemSource(e,t){if(!this.tankHuntActive)return;let n=Math.max(0,Math.round(t||0));n<=0||(this.tankHuntGemsCollected+=n,this.tankHuntGemSources[e]=(this.tankHuntGemSources[e]||0)+n)}collectTrait(e){if(!this.target&&!e.getData(`collecting`))return;let t=e.getData(`assetId`),n=xe(t);if(this.clearTraitMarker(e),this.destroyTraitPickup(e),!n)return;let r=it(this.save,t),i=`${n.name} discovered. Purchase it from the Shop.`,a=!1,o=xe(this.save.loadout?.[n.slot]||null);r?(rt(this.save,t),a=at(this.save,t),i=a?`${n.name} equipped${o&&o.id!==n.id?` over ${o.name}`:``}.`:`${n.name} signal reinforced.`):(rt(this.save,t),a=at(this.save,t),i=a?`${n.name} discovered, unlocked, and equipped${o&&o.id!==n.id?` over ${o.name}`:``}.`:`${n.name} discovered and unlocked.`),this.save.lifetime.manualTraitsCollected+=1,this.refreshStats(),this.applyLoadoutSprites(),a&&this.applyLiveTraitPickup(n,o),this.emitState(),Ze(this.save),this.showCenterTraitText(i),this.game.events.emit(`octoglyphs:inventory-changed`),Et(`firstTrait`,this.save)}equipPersistent(e){this.save=Xe();let t=xe(e),n=xe(this.save.loadout?.[t?.slot]);at(this.save,e)&&(Ze(this.save),this.refreshStats(),this.applyLoadoutSprites(),this.applyLiveTraitPickup(t,n),this.emitState())}applyLiveQuickPreset(e){if(!this.tankHuntActive||!zt[e])return;let t=this.tankRunStats.presetFamily;this.rebuildLiveHuntLoadout(e),t!==this.tankRunStats.presetFamily&&(this.tankRunStats.shotPatternIndex=0),this.game.events.emit(`octoglyphs:notice`,`${this.tankRunStats.presetLabel} style active. Loadout rebuilt cleanly; hunt mutations stayed active.`),this.game.events.emit(`octoglyphs:hunt-state`,this.getTankHuntState())}applyLiveTraitPickup(e,t=null){if(!e||!this.tankHuntActive)return;let n=this.tankRunStats.presetFamily;this.rebuildLiveHuntLoadout(n),n!==this.tankRunStats.presetFamily&&(this.tankRunStats.shotPatternIndex=0);let r=t&&t.id!==e.id?` over ${t.name}`:``,i=this.tankRunStats.presetLabel?` ${this.tankRunStats.presetLabel} style active.`:``;this.game.events.emit(`octoglyphs:notice`,`${e.name} live trait applied${r}.${i} Loadout rebuilt cleanly; hunt mutations stayed active.`),this.game.events.emit(`octoglyphs:hunt-state`,this.getTankHuntState())}refreshSave(){this.save=Xe(),this.refreshStats(),this.applyLoadoutSprites(),this.emitState()}releaseManualControl(){this.target=null,this.autopilotCollectTarget=null,this.game.events.emit(`octoglyphs:mode`,`Autopilot`)}autopilot(){if(this.target||!this.octo||this.tankUpgradeChoiceActive||this.tankContinueChoiceActive)return;this.updateAutopilotStuckState();let e=this.pickAutopilotGemTarget();if(e){let t=this.toroidalDistance(this.octo.x,this.octo.y,e.x,e.y),n=this.tankHuntActive?126*this.tankRunStats.swimSpeed:112,r=this.getAutopilotSpeed(n*this.stats.swimSpeed*this.stats.idleEfficiency,t,this.tankHuntActive?52:28);this.moveBodyTowardToroidal(this.octo,e,r);return}this.needsNewWanderTarget()&&this.pickNewWanderTarget();let t=this.toroidalDistance(this.octo.x,this.octo.y,this.wanderTarget.x,this.wanderTarget.y),n=this.tankHuntActive?126:76,r=this.tankHuntActive?this.tankRunStats.swimSpeed:1,i=this.getAutopilotSpeed(n*this.stats.swimSpeed*this.stats.idleEfficiency*r,t,this.tankHuntActive?140:82);this.moveBodyTowardToroidal(this.octo,this.wanderTarget,i)}pickAutopilotGemTarget(){return this.autopilotCollectTarget?.active&&this.toroidalDistance(this.octo.x,this.octo.y,this.autopilotCollectTarget.x,this.autopilotCollectTarget.y)>34||(this.autopilotCollectTarget=this.findNearest(this.gems.getChildren())),this.autopilotCollectTarget}needsNewWanderTarget(){return!this.wanderTarget||this.autopilotStuckCount>=2||this.time.now-this.wanderTargetCreatedAt>5200?!0:this.toroidalDistance(this.octo.x,this.octo.y,this.wanderTarget.x,this.wanderTarget.y)<(this.tankHuntActive?140:82)}pickNewWanderTarget(){let e=this.tankHuntActive?420:260,t=this.tankHuntActive?760:520,n=Math.atan2(this.octo.body.velocity.y||1,this.octo.body.velocity.x||1),r=this.tankHuntActive?Z.FloatBetween(.34,.68):Z.FloatBetween(.2,.55),i=Math.PI*r*Z.RND.sign(),a=this.autopilotStuckCount>=2?n+Math.PI+i:n+i,o=Z.FloatBetween(e,t);this.wanderTarget={x:this.wrapValue(this.octo.x+Math.cos(a)*o,this.worldWidth),y:this.wrapValue(this.octo.y+Math.sin(a)*o,this.worldHeight)},this.wanderTargetCreatedAt=this.time.now,this.autopilotStuckCount=0}getAutopilotSpeed(e,t,n){return e*Z.Clamp(t/n,.35,1)}updateAutopilotStuckState(){if(!this.autopilotLastPosition||this.time.now-this.autopilotLastProgressAt>640){if(this.autopilotLastPosition){let e=this.toroidalDistance(this.autopilotLastPosition.x,this.autopilotLastPosition.y,this.octo.x,this.octo.y);this.autopilotStuckCount=e<30?this.autopilotStuckCount+1:0}this.autopilotLastPosition={x:this.octo.x,y:this.octo.y},this.autopilotLastProgressAt=this.time.now}}findNearest(e){return this.findNearestFrom(this.octo,e)}findNearestFrom(e,t){let n=null,r=2**53-1;for(let i of t){if(!i?.active||!i.body||i===e)continue;let t=this.toroidalDistance(e.x,e.y,i.x,i.y);t<r&&(n=i,r=t)}return n}refreshStats(){this.stats=dt(this.save),this.octo?.body&&this.octo.body.setMaxVelocity(190*this.stats.swimSpeed*(this.tankHuntActive?this.tankRunStats.swimSpeed:1))}spawnEnemyProjectile(e,t,n,r={}){if(!this.tankHuntActive||!this.octo)return;let i=r.speed||140,a=r.x??e.x+t*32,o=r.y??e.y+n*32,s=r.textureKey||`tank-enemy-jelly`,c=this.enemyBullets.create(a,o,s);c.setScale(r.scale||.35),c.setTint(r.tint||16720452),c.setDepth(r.depth||16),this.improveGameplayReadability(c,{outlineAlpha:.38,haloColor:r.tint||16720452,haloAlpha:.26,haloBlur:7}),c.setAlpha(r.alpha||.9),c.body.setCircle(r.radius||8,0,0),c.body.setVelocity(t*i,n*i),c.rotation=Math.atan2(n,t)+$t,c.setData(`spawnedAt`,this.time.now),c.setData(`lifetime`,r.lifetime||3200),c.setData(`damage`,r.damage||(e.getData(`boss`)?2:1))}fireOctoBossShotPattern(e,t){if(!e?.active||!this.tankHuntActive)return;let n=this.tankHuntWave||1,r=e.getData(`shotPattern`)||0,i=Math.min(250,150+n*5),a=r===0?16743135:r===1?16757575:10354683,o=r===0?[-18,0,18]:r===1?[-36,-12,12,36]:[-52,-26,0,26,52];e.setTint(a),this.time.delayedCall(180,()=>{e.active&&e.clearTint()});for(let n of o){let r=t+Z.DegToRad(n);this.spawnEnemyProjectile(e,Math.cos(r),Math.sin(r),{speed:i,scale:.42,radius:9,tint:a,lifetime:3400,damage:1,textureKey:`tank-bullet-toxic`,x:e.x+Math.cos(r)*42,y:e.y+Math.sin(r)*42})}e.setData(`shotPattern`,(r+1)%3)}updateEnemyBullets(){if(!this.tankHuntActive||!this.enemyBullets||!this.octo)return;let e=this.time.now;for(let t of this.enemyBullets.getChildren())if(t?.active){if(e-(t.getData(`spawnedAt`)||e)>(t.getData(`lifetime`)||3200)){t.destroy();continue}t.x<0?t.x+=this.worldWidth:t.x>this.worldWidth&&(t.x-=this.worldWidth),t.y<0?t.y+=this.worldHeight:t.y>this.worldHeight&&(t.y-=this.worldHeight),this.toroidalDistance(t.x,t.y,this.octo.x,this.octo.y)<36&&(this.hitPlayerByProjectile(t),t.destroy())}}hitPlayerByProjectile(e){if(!this.tankHuntActive||this.tankUpgradeChoiceActive||this.tankBossRewardChoiceActive||this.tankContinueChoiceActive||this.tankContinueChoicePending||this.time.now<this.tankInvincibleUntil)return;let t=e.getData(`damage`)||1;this.tankRunStats.hp=Math.max(0,this.tankRunStats.hp-t),this.tankInvincibleUntil=this.time.now+1e3,this.cameras.main.shake(100,.005),this.tweens.add({targets:this.octo,alpha:.32,duration:80,yoyo:!0,repeat:4}),this.spawnDamageNumber(this.octo.x,this.octo.y-24,t,!1),this.updateTankHud(),this.game.events.emit(`octoglyphs:hunt-state`,this.getTankHuntState()),this.tankRunStats.hp<=0&&(this.game.events.emit(`octoglyphs:notice`,`Octo got overwhelmed. Tank Hunt ended.`),this.endTankHunt(!1))}vacuumGemsOnLevelUp(){if(!(!this.gems||!this.octo))for(let e of this.gems.getChildren()){if(!e?.active)continue;let t=this.toroidalDelta(e.x,e.y,this.octo.x,this.octo.y);this.tweens.add({targets:e,x:e.x+t.dx,y:e.y+t.dy,duration:340,ease:`Sine.easeIn`})}}checkInkBurstInput(){!this.tankHuntActive||!this.keys||this.keys.SPACE.isDown&&this.time.now>this.tankInkBurstCooldown&&this.fireInkBurst()}fireInkBurst(){if(!(!this.tankHuntActive||!this.octo)){this.tankInkBurstCooldown=this.time.now+8e3,this.cameras.main.flash(100,120,60,200,!0),this.spawnPulseVisual(this.octo.x,this.octo.y,160,7816396);for(let e of this.enemies?.getChildren()||[])if(e?.active&&!(this.toroidalDistance(this.octo.x,this.octo.y,e.x,e.y)>180)&&(this.damageTankEnemy(e,2),e.active)){let t=this.toroidalDelta(this.octo.x,this.octo.y,e.x,e.y),n=new Z.Vector2(t.dx,t.dy).normalize().scale(340);e.body.setVelocity(n.x,n.y)}for(let e of this.enemyBullets?.getChildren()||[])e?.active&&this.toroidalDistance(this.octo.x,this.octo.y,e.x,e.y)<180&&e.destroy();this.game.events.emit(`octoglyphs:notice`,`INK BURST!`)}}showRunSummary(e){let t=`${Math.floor(e.survived/60)}:${(e.survived%60).toString().padStart(2,`0`)}`,n=e.won?`HUNT BANKED`:`HUNT ENDED`,r=e.won?`hunt-summary-won`:`hunt-summary-lost`,i=e.mutations.length>0?e.mutations.map(e=>`<li><strong>${e.title} R${e.rank}</strong><span>${e.family.toUpperCase()} · ${e.role.toUpperCase()}</span></li>`).join(``):`<li><strong>No mutations chosen</strong><span>Level up to add temporary hunt powers.</span></li>`,a=e.bossRewards.length>0?e.bossRewards.map(e=>`<li><strong>${e.title}</strong><span>${e.family.toUpperCase()}</span></li>`).join(``):`<li><strong>No boss rewards chosen</strong><span>Defeat bosses on wave 5, 10, 15...</span></li>`,o=Object.entries(e.gemSources||{}).length>0?Object.entries(e.gemSources).map(([e,t])=>`<div class="hunt-summary-row hunt-summary-subrow"><span>${this.formatTankGemSource(e)}</span><span>${t}</span></div>`).join(``):`<div class="hunt-summary-row hunt-summary-subrow"><span>Collected</span><span>0</span></div>`,s=[...e.synergies||[],...e.interactions||[]].slice(0,10).join(`, `)||`none`,c=document.createElement(`div`);c.className=`hunt-summary-overlay ${r}`,c.innerHTML=`
150
+ <div class="hunt-summary-card hunt-summary-card-wide">
151
+ <h2>${n}</h2>
152
+ <p class="hunt-summary-subtitle">Real hunt recap only. No placeholder progression shown.</p>
153
+ <div class="hunt-summary-stats hunt-summary-grid">
154
+ <div class="hunt-summary-row"><span>Wave Reached</span><span>${e.wave}</span></div>
155
+ <div class="hunt-summary-row"><span>Enemies Defeated</span><span>${e.totalKills}</span></div>
156
+ <div class="hunt-summary-row"><span>Bosses Defeated</span><span>${e.bossKills}</span></div>
157
+ <div class="hunt-summary-row"><span>Level Reached</span><span>${e.level}</span></div>
158
+ <div class="hunt-summary-row"><span>Damage Taken</span><span>${e.damageTaken}</span></div>
159
+ <div class="hunt-summary-row"><span>Survived</span><span>${t}</span></div>
160
+ <div class="hunt-summary-row"><span>Archetype</span><span>${e.family}</span></div>
161
+ <div class="hunt-summary-row"><span>Active Rules</span><span>${s}</span></div>
162
+ <div class="hunt-summary-row"><span>Blue-Gem Value Earned</span><span>${e.gemsEarned}</span></div>
163
+ </div>
164
+ <div class="hunt-summary-section">
165
+ <h3>Reward Sources</h3>
166
+ ${o}
167
+ </div>
168
+ <div class="hunt-summary-section hunt-summary-columns">
169
+ <div>
170
+ <h3>Mutations Chosen</h3>
171
+ <ul>${i}</ul>
172
+ </div>
173
+ <div>
174
+ <h3>Boss Rewards</h3>
175
+ <ul>${a}</ul>
176
+ </div>
177
+ </div>
178
+ <button class="hunt-summary-dismiss">RETURN TO TANK</button>
179
+ </div>
180
+ `,document.body.appendChild(c),requestAnimationFrame(()=>c.classList.add(`is-open`)),c.querySelector(`.hunt-summary-dismiss`).addEventListener(`click`,()=>{c.classList.remove(`is-open`),setTimeout(()=>c.remove(),300)})}formatTankGemSource(e){return{green:`Green gems`,blue:`Blue gems`,yellow:`Yellow gems`,pink:`Pink gems`,silver:`Silver gems`,bossRewards:`Boss rewards`}[e]||e}emitState(){this.game.events.emit(`octoglyphs:state`,{wallet:this.save.wallet,totalGems:Object.values(this.save.wallet).reduce((e,t)=>e+Number(t||0),0),loadout:ut(this.save),lifetime:this.save.lifetime,stats:this.stats||dt(this.save),tankRun:this.tankHuntActive?this.tankRunStats:null})}},fn=[{id:`body`,label:`Bodies`},{id:`eyes`,label:`Eyes`},{id:`hat`,label:`Hats`},{id:`clothes`,label:`Clothes`},{id:`boost`,label:`Boosts`},{id:`special`,label:`Special`}],pn=[{id:`body`,label:`Body`},{id:`legendary`,label:`Legendary`},{id:`eyes`,label:`Eyes`},{id:`hat`,label:`Hat`},{id:`clothes`,label:`Clothes`},{id:`boost`,label:`Boost`}],mn=[{id:`all`,label:`All`},{id:`owned`,label:`Owned`},{id:`affordable`,label:`Affordable`},{id:`locked`,label:`Locked`}],hn=[{id:`default`,label:`Smart`,stat:null},{id:`swimSpeed`,label:`Speed`,stat:`swimSpeed`},{id:`luck`,label:`Luck`,stat:`luck`},{id:`damage`,label:`Damage`,stat:`damage`},{id:`armor`,label:`Armor`,stat:`armor`},{id:`gemValue`,label:`Gems`,stat:`gemValue`},{id:`magnetRange`,label:`Magnet`,stat:`magnetRange`},{id:`idleEfficiency`,label:`Idle`,stat:`idleEfficiency`},{id:`rarity`,label:`Rarity`,stat:null},{id:`price`,label:`Price`,stat:null}],gn=[{id:`speed-demon`,label:`Speed Demon`,stat:`swimSpeed`,family:`current`,hint:`fast + bounce/wake shots`,style:{swimSpeed:10,family:18,presetFamilyCurrent:30,shotSpeed:7,bounce:10,wakeTrail:10,homing:7,backblast:5,fireDelay:4}},{id:`heavy-hitter`,label:`Heavy Hitter`,stat:`damage`,family:`inkstorm`,hint:`damage + broadside pressure`,style:{damageBonus:10,family:18,presetFamilyInkstorm:30,broadside:10,lumpOfCoal:9,fireDelay:7,extraProjectiles:7,backblast:5,shotSpeed:4}},{id:`fortress`,label:`Fortress`,stat:`armor`,family:`shell`,hint:`armor + orbit/guardian control`,style:{maxHp:10,family:18,presetFamilyShell:30,guardianCharges:10,orbit:9,freeze:8,spinPower:7,inkMines:7,armor:8}},{id:`lucky-prism`,label:`Lucky Prism`,stat:`luck`,family:`prism`,hint:`luck + fork/chain crits`,style:{critChance:10,family:18,presetFamilyPrism:30,prismFork:10,chain:9,homing:6,spectral:5,luckBonus:8,gemPulse:4}},{id:`gem-greed`,label:`Gem Greed`,stat:`gemValue`,family:`prism`,hint:`gems + pickup damage economy`,style:{gemPulse:11,family:14,presetFamilyTreasure:30,magnetRange:8,luckBonus:5,critChance:4,prismFork:5,nextXpMult:6,hungryGems:10}},{id:`magnet-chaos`,label:`Magnet Chaos`,stat:`magnetRange`,family:`tide`,hint:`magnet + split/wiggle chaos`,style:{magnetRange:9,family:12,presetFamilyChaos:30,split:11,wiggle:11,bounce:8,boomerang:8,extraProjectiles:7,homing:4}}],_n=[`body`,`eyes`,`hat`,`clothes`,`boost`],vn={starter:0,common:1,uncommon:2,rare:3,legendary:4,event:5},yn=class extends ne{constructor(){super(`UIScene`),this.save=null,this.activeCategory=`body`,this.activeFilter=`all`,this.activeLoadoutSlot=`body`,this.activeShopSort=`default`,this.activeLoadoutSort=`default`,this.activeEvolveRarity=`common`,this.evolveSelected=[],this.huntCharge=null,this.quickPresetHotkeysBound=!1}create(){this.save=Xe(),this.bindButtons(),this.renderShopControls(),this.renderShop(),this.renderInventory(),this.renderLoadout(),this.renderEvolution(),this.renderState({wallet:this.save.wallet,totalGems:Qe(this.save),loadout:ut(this.save),lifetime:this.save.lifetime,stats:dt(this.save),tankRun:null}),this.game.events.on(`octoglyphs:state`,e=>this.renderState(e)),this.game.events.on(`octoglyphs:notice`,e=>this.setNotice(e)),this.game.events.on(`octoglyphs:hunt-state`,e=>this.renderHuntState(e)),this.game.events.on(`octoglyphs:hunt-charge`,e=>this.renderHuntCharge(e)),this.game.events.on(`octoglyphs:visibility`,e=>this.renderVisibilityState(e)),this.game.events.on(`octoglyphs:inventory-changed`,()=>{this.save=Xe(),this.renderShop(),this.renderInventory(),this.renderLoadout(),this.renderEvolution()})}bindButtons(){document.getElementById(`shop-toggle`)?.addEventListener(`click`,()=>{document.getElementById(`shop-panel`)?.classList.toggle(`is-open`),document.getElementById(`loadout-panel`)?.classList.remove(`is-open`),document.getElementById(`evolve-panel`)?.classList.remove(`is-open`),Et(`firstShopOpen`)}),document.getElementById(`loadout-toggle`)?.addEventListener(`click`,()=>{document.getElementById(`loadout-panel`)?.classList.toggle(`is-open`),document.getElementById(`shop-panel`)?.classList.remove(`is-open`),document.getElementById(`evolve-panel`)?.classList.remove(`is-open`),this.renderLoadout(),Et(`firstLoadout`)}),document.getElementById(`evolve-toggle`)?.addEventListener(`click`,()=>{document.getElementById(`evolve-panel`)?.classList.toggle(`is-open`),document.getElementById(`shop-panel`)?.classList.remove(`is-open`),document.getElementById(`loadout-panel`)?.classList.remove(`is-open`),this.renderEvolution()}),document.querySelectorAll(`[data-close-panel]`).forEach(e=>{e.addEventListener(`click`,()=>{document.getElementById(e.dataset.closePanel)?.classList.remove(`is-open`)})}),document.addEventListener(`keydown`,e=>{if(e.key===`Escape`){document.getElementById(`shop-panel`)?.classList.remove(`is-open`),document.getElementById(`loadout-panel`)?.classList.remove(`is-open`),document.getElementById(`evolve-panel`)?.classList.remove(`is-open`);return}this.handleQuickPresetHotkey(e)})}renderState(e){let t=document.getElementById(`wallet-readout`),n=document.getElementById(`lifetime-readout`),r=document.getElementById(`loadout-readout`),i=document.getElementById(`stats-readout`);t&&(t.textContent=`Gems ${e.totalGems} · G ${e.wallet.green||0} · B ${e.wallet.blue||0} · Y ${e.wallet.yellow||0} · P ${e.wallet.pink||0} · S ${e.wallet.silver||0}`),n&&(n.textContent=`Prompts ${e.lifetime.prompts||0} · Tokens ${e.lifetime.tokens||0} · Traits ${e.lifetime.manualTraitsCollected||0}`),r&&(r.textContent=e.loadout.map(e=>e.name).join(` + `)),i&&(i.textContent=`Stats ${Ke(e.stats||dt(this.save))}`),this.renderVisibilityState(this.visibilityState||`visible · focused · live swim`),this.save=Xe()}renderVisibilityState(e){this.visibilityState=e;let t=document.getElementById(`mode-readout`);t&&(t.textContent=`Autopilot · ${e}`)}renderHuntCharge(e,t=!1){this.huntCharge=e;let n=document.getElementById(`tank-hunt-button`);if(n&&!(!t&&(n.textContent===`End Hunt`||n.textContent===`Ending...`))){if(!e?.ready){let t=Math.max(0,e?.remaining||0);n.textContent=`Tank Hunt in ${t} prompt${t===1?``:`s`}`,n.disabled=!0;return}n.textContent=e.huntsReady>1?`Tank Hunt x${e.huntsReady}`:`Tank Hunt Ready`,n.disabled=!1}}renderHuntState(e){let t=document.getElementById(`mode-readout`),n=document.getElementById(`tank-hunt-button`);if(!e){t&&(t.textContent=`Autopilot`),n&&this.renderHuntCharge(this.huntCharge,!0);return}if(n&&(n.textContent=e.ending?`Ending...`:`End Hunt`,n.disabled=!!e.ending),!t)return;let r=e.bossActive?` · Boss`:``,i=e.ending?` · Ending`:``,a=e.choosingUpgrade?` · Upgrade`:``,o=e.awaitingContinue?` · Continue?`:``;t.textContent=`Tank Hunt · HP ${e.hp}/${e.maxHp} · Lv ${e.level} ${e.xp}/${e.nextXp} XP · Wave ${e.wave} · ${e.kills}/${e.goal} kills${r}${a}${o}${i}`}renderShopControls(){let e=document.getElementById(`shop-category-tabs`),t=document.getElementById(`shop-filter-tabs`),n=document.getElementById(`shop-sort-tabs`);if(e){e.innerHTML=``;for(let t of fn){let n=document.createElement(`button`);n.className=`shop-tab ${this.activeCategory===t.id?`is-active`:``}`,n.textContent=t.label,n.addEventListener(`click`,()=>{this.activeCategory=t.id,this.renderShopControls(),this.renderShop(),this.scrollListToTop(`shop-list`)}),e.appendChild(n)}}if(t){t.innerHTML=``;for(let e of mn){let n=document.createElement(`button`);n.className=`shop-tab shop-tab-small ${this.activeFilter===e.id?`is-active`:``}`,n.textContent=e.label,n.addEventListener(`click`,()=>{this.activeFilter=e.id,this.renderShopControls(),this.renderShop(),this.scrollListToTop(`shop-list`)}),t.appendChild(n)}}n&&this.renderSortTabs(n,this.activeShopSort,e=>{this.activeShopSort=e,this.renderShopControls(),this.renderShop(),this.scrollListToTop(`shop-list`)})}renderSortTabs(e,t,n){e.innerHTML=``;for(let r of hn){let i=document.createElement(`button`);i.className=`shop-tab shop-tab-small sort-tab ${t===r.id?`is-active`:``}`,i.textContent=r.label,i.addEventListener(`click`,()=>n(r.id)),e.appendChild(i)}}renderShop(){let e=document.getElementById(`shop-list`);if(!e)return;this.save=Xe(),e.innerHTML=``;let t=Qe(this.save),n=this.getVisibleAssets(t),r=document.getElementById(`shop-count-readout`);if(r&&(r.textContent=`${n.length} shown`),n.length===0){let t=document.createElement(`div`);t.className=`shop-empty`,t.textContent=`Nothing in this filter yet.`,e.appendChild(t);return}let i=dt(this.save);for(let r of n){let n=document.createElement(`button`),a=it(this.save,r.id),o=this.isDiscovered(r),s=this.save.loadout[r.slot]===r.id,c=!a&&o&&t>=r.price,l=r.slot===`legendary`||r.slot===`halloween`,u=this.shopDeltaHtml(r,o,l,s,i);n.className=`shop-item rarity-${r.rarity||`common`} ${s?`is-equipped`:``} ${o?``:`is-undiscovered`}`,n.disabled=l||!o||!a&&!c,n.innerHTML=`
181
+ <span class="trait-thumb-wrap"><img src="${r.framePath||r.path}" alt="" /></span>
182
+ <span class="shop-copy">
183
+ <strong>${o?r.name:`Undiscovered Trait`}</strong>
184
+ <small>${this.shopTraitMeta(r,o)}</small>
185
+ <small>${this.statusText(r,a,s,c,o)}</small>
186
+ ${u}
187
+ <span class="trait-action-copy">${this.shopActionText(r,a,s,c,o)}</span>
188
+ </span>
189
+ `,n.addEventListener(`click`,()=>this.onShopClick(r.id)),e.appendChild(n)}}getVisibleAssets(e){return(this.activeCategory===`special`?_e:ge.filter(e=>e.slot===this.activeCategory)).filter(t=>this.matchesFilter(t,e)).sort((t,n)=>this.sortAsset(t,n,e,this.activeShopSort))}matchesFilter(e,t){let n=it(this.save,e.id),r=this.isDiscovered(e),i=e.slot===`legendary`||e.slot===`halloween`,a=r&&!i&&!n&&t>=e.price,o=r&&!n&&!a;return this.activeFilter===`owned`?n:this.activeFilter===`affordable`?a:this.activeFilter===`locked`?o:!0}sortAsset(e,t,n,r=`default`){let i=this.assetStateRank(e,n),a=this.assetStateRank(t,n);if(i!==a)return i-a;let o=this.compareAssetsForSort(e,t,r,!1);if(o!==0)return o;let s=vn[e.rarity]??9,c=vn[t.rarity]??9;return s===c?e.price===t.price?e.name.localeCompare(t.name):e.price-t.price:s-c}compareAssetsForSort(e,t,n=`default`,r=!0){if(r){let n=+(this.save?.loadout?.[e.slot]===e.id),r=+(this.save?.loadout?.[t.slot]===t.id);if(n!==r)return r-n}if(n===`rarity`){let n=vn[e.rarity]??0,r=vn[t.rarity]??0;if(n!==r)return r-n}else if(n===`price`){if((e.price||0)!==(t.price||0))return(t.price||0)-(e.price||0)}else if(n!==`default`){let r=this.assetSortScore(e,n),i=this.assetSortScore(t,n);if(r!==i)return i-r}let i=vn[e.rarity]??9,a=vn[t.rarity]??9;return i===a?e.name.localeCompare(t.name):a-i}assetSortScore(e,t){if(!e||!t)return 0;let n=Number(e.statMods?.[t]||0),r=e.huntMods||{},i={swimSpeed:Number(r.swimSpeed||1)-1,magnetRange:Number(r.magnetRange||1)-1,gemValue:Number(r.gemPulse||0)*.05+Number(r.luckBonus||0)*.02,luck:Number(r.luckBonus||0)*.08+Number(r.critChance||0)*.04+Number(r.prismFork||0)*.03,damage:Number(r.damageBonus||0)*.08+Number(r.pierce||0)*.04+Number(r.chain||0)*.05+Number(r.extraProjectiles||0)*.05,armor:Number(r.maxHp||0)*.25+Number(r.guardianCharges||0)*.15+Number(r.freeze||0)*.05,idleEfficiency:Number(r.nextXpMult&&r.nextXpMult<1?1-r.nextXpMult:0)};return n+Number(i[t]||0)}quickPresetScore(e,t){if(!e||!t)return 0;let n=this.assetSortScore(e,t.stat)*100,r=this.quickPresetStyleScore(e,t.style),i=this.quickPresetFamilyScore(e,t),a=(vn[e.rarity]||0)*.05;return n+r+i+a}quickPresetStyleScore(e,t={}){if(!e||!t)return 0;let n=e.statMods||{},r=e.huntMods||{},i=0;for(let[e,a]of Object.entries(t)){if(e===`family`||e.startsWith(`presetFamily`))continue;let t=r[e],o=n[e];typeof t==`number`?[`fireDelay`,`nextXpMult`].includes(e)?i+=Math.max(0,1-t)*a:[`swimSpeed`,`shotSpeed`,`magnetRange`,`shotLifetime`].includes(e)?i+=Math.max(0,t-1)*a:i+=Math.max(0,t)*a:t&&(i+=a),typeof o==`number`&&(i+=Math.max(0,o)*a)}return i}quickPresetFamilyScore(e,t){let n=t?.family;if(!e||!n)return 0;let r=e.huntMods||{},i=e.statMods||{},a=`${e.name||``} ${e.id||``}`.toLowerCase(),o=r.family===n?24:0;return n===`current`?((i.swimSpeed||0)>0&&(o+=5),(r.wakeTrail||r.bounce||r.homing||r.shotSpeed||r.boomerang)&&(o+=8),(a.includes(`aqua`)||a.includes(`teal`)||a.includes(`lime`)||a.includes(`propeller`)||a.includes(`rocket`)||a.includes(`wing`))&&(o+=8)):n===`inkstorm`?((i.damage||0)>0&&(o+=5),(r.broadside||r.lumpOfCoal||r.extraProjectiles||r.fireDelay||r.backblast)&&(o+=8),(a.includes(`magma`)||a.includes(`red`)||a.includes(`orange`)||a.includes(`laser`)||a.includes(`angry`)||a.includes(`nunchuck`)||a.includes(`trident`))&&(o+=8)):n===`shell`?((i.armor||0)>0&&(o+=5),(r.maxHp||r.guardianCharges||r.orbit||r.freeze||r.spinPower||r.inkMines)&&(o+=8),(a.includes(`metal`)||a.includes(`charcoal`)||a.includes(`gray`)||a.includes(`helmet`)||a.includes(`armor`)||a.includes(`shell`))&&(o+=8)):n===`prism`?(((i.luck||0)>0||(i.gemValue||0)>0)&&(o+=5),(r.critChance||r.prismFork||r.chain||r.gemPulse||r.hungryGems||r.luckBonus)&&(o+=8),(a.includes(`gold`)||a.includes(`rainbow`)||a.includes(`crown`)||a.includes(`crypto`)||a.includes(`diamond`)||a.includes(`all seeing`))&&(o+=8)):n===`tide`&&((r.split||r.wiggle||r.bounce||r.boomerang||r.extraProjectiles||r.orbit||r.pierce)&&(o+=8),(a.includes(`bubble`)||a.includes(`pepe`)||a.includes(`clown`)||a.includes(`crazy`)||a.includes(`martini`)||a.includes(`sushi`))&&(o+=8)),o}assetStateRank(e,t){return it(this.save,e.id)?0:this.isDiscovered(e)?e.slot!==`legendary`&&e.slot!==`halloween`&&t>=e.price?1:2:3}isDiscovered(e){return it(this.save,e.id)||!!this.save.discovered?.includes(e.id)}shopTraitMeta(e,t){return t?`${this.labelForSlot(e.slot)} · ${this.rarityTagHtml(e.rarity||`common`)} · ${e.stats}`:`${this.labelForSlot(e.slot)} · ??? · find in tank`}statusText(e,t,n,r,i=!0){return i?n?`Equipped`:t?`Owned · equip in Loadout`:e.slot===`halloween`?`Event form · Halloween pool`:r?`${e.price} gems · tap to buy`:`${e.price} gems`:`Unknown · discover through manual pickup`}shopActionText(e,t,n,r,i=!0){return i?n?`Currently equipped`:t?`Owned — switch in Loadout`:e.slot===`halloween`?`Preview only for now`:r?`Tap to buy and equip`:`Earn more gems to unlock`:`Find this trait signal in tank first`}rarityTagHtml(e){let t=e||`common`;return`<span class="rarity-word rarity-word-${t}">${t}</span>`}labelForSlot(e){return e===`body`?`Body`:e===`eyes`?`Eyes`:e===`hat`?`Hat`:e===`clothes`?`Clothes`:e===`boost`?`Boost`:e===`legendary`?`Legendary`:e===`halloween`?`Halloween`:e}renderHuntModTags(e){if(!e||Object.keys(e).length===0)return``;let t={pierce:`Pierce`,homing:`Homing`,bounce:`Bounce`,split:`Split`,chain:`Chain`,orbit:`Orbit`,poison:`Poison`,fear:`Fear`,freeze:`Freeze`,spectral:`Spectral`,wiggle:`Wiggle`,boomerang:`Boomerang`,lumpOfCoal:`Growing`,contagion:`Contagion`,prismFork:`Prism Fork`,critChance:`Crit`,broadside:`Broadside`,backblast:`Backblast`,inkMines:`Mines`,spiral:`Spiral`,wakeTrail:`Wake Trail`,guardianCharges:`Guardian`,spinPower:`Spin`,extraProjectiles:`+Shots`,gemPulse:`Gem Pulse`,damageBonus:`+Dmg`,bulletScale:`+Size`,maxHp:`+HP`,luckBonus:`+Luck`},n=[];for(let[r,i]of Object.entries(e)){if(!i||r===`family`)continue;if([`swimSpeed`,`magnetRange`,`fireDelay`,`shotSpeed`,`shotLifetime`,`nextXpMult`].includes(r)){r===`fireDelay`&&i<1?n.push(`Fast Fire`):r===`shotSpeed`&&i>1?n.push(`Fast Shots`):r===`swimSpeed`&&i>1?n.push(`Speed`):r===`magnetRange`&&i>1?n.push(`Magnet`):r===`nextXpMult`&&i<1&&n.push(`Fast Level`);continue}let e=t[r]||r;typeof i==`number`&&i>1?n.push(`${e}×${i}`):n.push(e)}return n.map(e=>`<span class="hunt-tag">${e}</span>`).join(``)}renderInventory(){let e=document.getElementById(`inventory-readout`);e&&(this.save=Xe(),e.textContent=`Unlocked ${this.save.unlocked.length}/${ge.length}`)}renderLoadout(){let e=document.getElementById(`loadout-slot-tabs`),t=document.getElementById(`loadout-list`),n=document.getElementById(`loadout-stats-readout`),r=document.getElementById(`loadout-summary`),i=document.getElementById(`loadout-sort-tabs`),a=document.getElementById(`loadout-presets`);if(!e||!t)return;this.save=Xe(),e.innerHTML=``,t.innerHTML=``,this.renderLoadoutSummary(r),this.renderLoadoutPresets(a),i&&this.renderSortTabs(i,this.activeLoadoutSort,e=>{this.activeLoadoutSort=e,this.renderLoadout(),this.scrollListToTop(`loadout-list`)});for(let t of pn){let n=this.assetForSlot(t.id),r=document.createElement(`button`);r.className=`shop-tab loadout-slot-tab ${this.activeLoadoutSlot===t.id?`is-active`:``}`,r.innerHTML=`<span>${t.label}</span><small>${n?.name||`Empty`}</small>`,r.addEventListener(`click`,()=>{this.activeLoadoutSlot=t.id,this.renderLoadout(),this.scrollListToTop(`loadout-list`)}),e.appendChild(r)}let o=dt(this.save);n&&(n.textContent=`Current ${Ke(o)}`);let s=document.getElementById(`loadout-synergy-readout`);if(this.renderSynergyReadout(s),this.activeLoadoutSlot===`legendary`&&this.save.loadout.legendary){let e=this.assetForSlot(`legendary`),n=this.statsWithSlotUnequipped(`legendary`),r=document.createElement(`button`);r.className=`shop-item loadout-item loadout-unequip-item`,r.innerHTML=`
190
+ <span class="trait-thumb-wrap unequip-thumb">×</span>
191
+ <span class="shop-copy">
192
+ <strong>Unequip Legendary</strong>
193
+ <small>Return to normal layered body loadout.</small>
194
+ <small>${e?`Removes `+e.name:`Clears legendary form`}</small>
195
+ <span class="stat-delta-row">${this.renderDeltaHtml(o,n)}</span>
196
+ <span class="trait-action-copy">Tap to remove special form</span>
197
+ </span>
198
+ `,r.addEventListener(`click`,()=>this.onUnequipSlot(`legendary`)),t.appendChild(r)}let c=ct(this.save,this.activeLoadoutSlot).sort((e,t)=>this.compareAssetsForSort(e,t,this.activeLoadoutSort));if(c.length===0){let e=document.createElement(`div`);e.className=`shop-empty`,e.textContent=`No owned traits in this slot yet. Discover traits in tank, then buy them in Shop.`,t.appendChild(e);return}for(let e of c){let n=this.save.loadout[e.slot]===e.id,r=lt(this.save,e.id),i=this.renderDeltaHtml(o,r),a=this.renderHuntModTags(e.huntMods),s=document.createElement(`button`);s.className=`shop-item loadout-item rarity-${e.rarity||`common`} ${n?`is-equipped`:``}`,s.innerHTML=`
199
+ <span class="trait-thumb-wrap"><img src="${e.framePath||e.path}" alt="" /></span>
200
+ <span class="shop-copy">
201
+ <strong>${e.name}${n?` · Equipped`:``}</strong>
202
+ <small>${this.labelForSlot(e.slot)} · ${this.rarityTagHtml(e.rarity||`common`)}</small>
203
+ <small>${e.stats}</small>
204
+ ${a?`<span class="hunt-mod-tags">${a}</span>`:``}
205
+ <span class="stat-delta-row">${n?`Current slot trait`:i}</span>
206
+ <span class="trait-action-copy">${n?`Active in current build`:`Tap to equip`}</span>
207
+ </span>
208
+ `,s.addEventListener(`click`,()=>this.onLoadoutClick(e.id)),t.appendChild(s)}}renderLoadoutPresets(e){if(!e)return;e.innerHTML=``;let t=document.createElement(`div`);t.className=`preset-title`,t.textContent=`Quick builds`,e.appendChild(t);for(let[t,n]of gn.entries()){let r=document.createElement(`button`);r.className=`preset-button`,r.innerHTML=`<strong>${t+1}. ${n.label}</strong><small>${n.hint}</small>`,r.addEventListener(`click`,()=>this.applyQuickPreset(n)),e.appendChild(r)}}handleQuickPresetHotkey(e){if(e.defaultPrevented||e.ctrlKey||e.metaKey||e.altKey||e.target?.closest?.(`input, textarea, select, [contenteditable='true']`))return;let t=Number(e.key)-1;!Number.isInteger(t)||t<0||t>=gn.length||(e.preventDefault(),this.applyQuickPreset(gn[t]))}applyQuickPreset(e){this.save=Xe();let t=!1;for(let n of _n){let r=ct(this.save,n);if(r.length===0)continue;r.sort((t,n)=>{let r=this.quickPresetScore(t,e),i=this.quickPresetScore(n,e);return r===i?this.compareAssetsForSort(t,n,e.stat,!1):i-r});let i=r[0];i&&this.save.loadout[n]!==i.id&&(this.save.loadout[n]=i.id,t=!0)}if(this.save.loadout.legendary&&(this.save.loadout.legendary=null,t=!0),!t){this.setNotice(`${e.label} preset already active.`);return}Ze(this.save),this.setNotice(`${e.label} preset equipped.`),this.renderShop(),this.renderInventory(),this.renderLoadout(),this.refreshStatsReadout(),this.game.events.emit(`octoglyphs:quick-preset`,this.getQuickPresetFamilyKey(e)),this.game.events.emit(`octoglyphs:save-changed`)}getQuickPresetFamilyKey(e){if(!e?.style)return null;let t=Object.keys(e.style).find(e=>e.startsWith(`presetFamily`));if(!t)return null;let n=t.replace(`presetFamily`,``);return n.charAt(0).toLowerCase()+n.slice(1)}renderLoadoutSummary(e){if(e){e.innerHTML=``;for(let t of pn){let n=this.assetForSlot(t.id),r=document.createElement(`button`);r.className=`loadout-summary-tile ${this.activeLoadoutSlot===t.id?`is-active`:``} ${n?``:`is-empty`}`,r.innerHTML=`
209
+ <span class="summary-thumb">${n?`<img src="${n.framePath||n.path}" alt="" />`:`?`}</span>
210
+ <span><strong>${t.label}</strong><small>${n?.name||`Empty`}</small></span>
211
+ `,r.addEventListener(`click`,()=>{this.activeLoadoutSlot=t.id,this.renderLoadout(),this.scrollListToTop(`loadout-list`)}),e.appendChild(r)}}}renderSynergyReadout(e){if(!e)return;e.innerHTML=``;let{active:t,partial:n}=Ie(ut(this.save).map(e=>e.id));if(t.length===0&&n.length===0)return;let r=document.createElement(`div`);r.className=`synergy-readout`;for(let e of t){let t=document.createElement(`div`);t.className=`synergy-row synergy-active`,t.style.borderColor=e.color,t.innerHTML=`<strong>${e.name}</strong> <span class="synergy-desc">${e.desc}</span>`,r.appendChild(t)}for(let{synergy:e,have:t,need:i}of n){let n=document.createElement(`div`);n.className=`synergy-row synergy-partial`,n.innerHTML=`<strong>${e.name}</strong> <span class="synergy-progress">${t}/${i} items</span> <span class="synergy-desc">${e.desc}</span>`,r.appendChild(n)}e.appendChild(r)}assetForSlot(e){let t=this.save?.loadout?.[e];return xe(t)}scrollListToTop(e){let t=document.getElementById(e);t&&(t.scrollTop=0)}shopDeltaHtml(e,t,n,r,i){if(!t||n)return``;if(r)return`<span class="stat-delta-row"><span class="stat-delta-neutral">Current loadout</span></span>`;let a=lt(this.save,e.id);return`<span class="stat-delta-row">${this.renderDeltaHtml(i,a)}</span>`}renderDeltaHtml(e,t){let n=Ge(e,t);return n.length===0?`<span class="stat-delta-neutral">No stat change</span>`:n.map(n=>{let r=e?.[n.key],i=t?.[n.key],a=n.key===`armor`?``:`x`,o=n.key===`armor`?1:2,s=Number(i||0).toFixed(o),c=Number(r||0).toFixed(o);return`<span class="stat-delta-${n.direction}">${n.text} · total ${s}${a} from ${c}${a}</span>`}).join(``)}onShopClick(e){if(this.save=Xe(),it(this.save,e))this.setNotice(`Already owned. Use Loadout to equip traits.`);else{let t=st(this.save,e);Ze(this.save),this.setNotice(t.message),t.success&&Et(`firstBuy`)}this.renderShop(),this.renderInventory(),this.renderLoadout(),this.refreshStatsReadout(),this.game.events.emit(`octoglyphs:equip`,e),this.game.events.emit(`octoglyphs:save-changed`)}onLoadoutClick(e){this.save=Xe(),at(this.save,e)&&(Ze(this.save),this.setNotice(`Loadout updated.`),this.renderShop(),this.renderInventory(),this.renderLoadout(),this.refreshStatsReadout(),this.game.events.emit(`octoglyphs:equip`,e),this.game.events.emit(`octoglyphs:save-changed`))}onUnequipSlot(e){this.save=Xe(),ot(this.save,e)&&(Ze(this.save),this.setNotice(`${this.labelForSlot(e)} unequipped.`),this.renderShop(),this.renderInventory(),this.renderLoadout(),this.refreshStatsReadout(),this.game.events.emit(`octoglyphs:equip`,null),this.game.events.emit(`octoglyphs:save-changed`))}statsWithSlotUnequipped(e){return dt({...this.save,loadout:{...this.save.loadout,[e]:null}})}refreshStatsReadout(){let e=document.getElementById(`stats-readout`);e&&(this.save=Xe(),e.textContent=`Stats ${Ke(dt(this.save))}`)}setNotice(e){let t=document.getElementById(`notice-readout`);t&&(t.textContent=e)}renderEvolution(){let e=[`common`,`uncommon`,`rare`],t={common:50,uncommon:150,rare:400},n={common:`uncommon`,uncommon:`rare`,rare:`legendary`},r=document.getElementById(`evolve-rarity-tabs`),i=document.getElementById(`evolve-list`),a=document.getElementById(`evolve-selection-readout`),o=document.getElementById(`evolve-action`),s=document.getElementById(`evolve-status-readout`);if(!r||!i)return;this.save=Xe(),new Set(Object.values(this.save.loadout).filter(Boolean)),r.innerHTML=``;for(let t of e){let e=document.createElement(`button`);e.className=`shop-tab`+(this.activeEvolveRarity===t?` is-active`:``),e.textContent=t.charAt(0).toUpperCase()+t.slice(1),e.addEventListener(`click`,()=>{this.activeEvolveRarity=t,this.evolveSelected=[],this.renderEvolution()}),r.appendChild(e)}let c=_t(this.save).filter(e=>e.rarity===this.activeEvolveRarity),l=t[this.activeEvolveRarity]||50,u=n[this.activeEvolveRarity]||`???`;if(s){let e=this.activeEvolveRarity===`rare`?`legendary form`:u;s.textContent=c.length+` `+this.activeEvolveRarity+` unequipped traits available · `+l+` gems to fuse · result: `+e}if(i.innerHTML=``,c.length===0){let e=document.createElement(`div`);e.className=`shop-empty`,e.textContent=`No unequipped `+this.activeEvolveRarity+` traits to evolve.`,i.appendChild(e)}else for(let e of c){let t=this.evolveSelected.includes(e.id),n=document.createElement(`button`);n.className=`shop-item rarity-`+e.rarity+(t?` is-evolve-selected`:``),n.innerHTML=`<span class="trait-thumb-wrap"><img src="`+(e.framePath||e.path)+`" alt="" /></span><span class="shop-copy"><strong>`+e.name+`</strong><small>`+this.labelForSlot(e.slot)+` · `+this.rarityTagHtml(e.rarity)+` · `+e.stats+`</small>`+(t?`<small class="evolve-tag">Selected for fusion</small>`:``)+`</span>`,n.addEventListener(`click`,()=>{if(t)this.evolveSelected=this.evolveSelected.filter(t=>t!==e.id);else if(this.evolveSelected.length<3){let t=this.evolveSelected.map(xe).filter(Boolean)[0]?.slot;t&&t!==e.slot?this.setNotice(`Fuse traits from one slot at a time.`):this.evolveSelected.push(e.id)}this.renderEvolution()}),i.appendChild(n)}let d=this.evolveSelected.map(xe).filter(Boolean),f=d[0]?.slot||null,p=d.length>1&&d.some(e=>e.slot!==f),m=this.activeEvolveRarity===`rare`?`Legendary Form`:u,h=this.evolveSelected.length===3&&!p;if(a)if(this.evolveSelected.length===0)a.textContent=`Tap 3 unequipped traits from the same slot to fuse.`;else{let e=this.evolveSelected.map(e=>{let t=xe(e);return t?t.name:e}),t=f?` · `+this.labelForSlot(f):``;a.textContent=`Selected (`+this.evolveSelected.length+`/3`+t+`): `+e.join(`, `)}if(o)if(o.innerHTML=``,h){let e=document.createElement(`button`);e.className=`evolve-fuse-btn`,e.textContent=`Fuse for `+l+` gems → `+m,e.addEventListener(`click`,()=>{let e=vt(this.save,this.evolveSelected);e.success?(Ze(this.save),this.setNotice(e.message),this.showFusionReward(e.result,e.message),Et(`firstEvolve`,this.save),this.evolveSelected=[],this.save=Xe(),this.renderEvolution(),this.renderShop(),this.renderInventory(),this.renderLoadout(),this.refreshStatsReadout(),this.game.events.emit(`octoglyphs:save-changed`)):this.setNotice(e.message)}),o.appendChild(e)}else{let e=document.createElement(`div`);if(e.className=`evolve-action-hint`,p)e.textContent=`Selected traits must all be from same slot.`;else if(this.evolveSelected.length>0){let t=3-this.evolveSelected.length,n=f?this.labelForSlot(f).toLowerCase():`trait`;e.textContent=`Select `+t+` more `+this.activeEvolveRarity+` `+n+(t===1?``:`s`)+`.`}else e.textContent=`Fuse button appears after selecting 3 matching traits.`;o.appendChild(e)}}showFusionReward(e,t){if(!e)return;document.querySelector(`.fusion-reward-modal`)?.remove();let n=document.createElement(`div`);n.className=`fusion-reward-modal`,n.innerHTML=`
212
+ <div class="fusion-reward-card rarity-${e.rarity||`common`}">
213
+ <button class="fusion-reward-close" type="button">×</button>
214
+ <small class="fusion-reward-kicker">Evolution complete</small>
215
+ <h2>Unlocked ${e.name}</h2>
216
+ <div class="fusion-reward-thumb-wrap">
217
+ <img src="${e.framePath||e.path}" alt="" />
218
+ </div>
219
+ <p>${this.labelForSlot(e.slot)} · ${this.rarityTagHtml(e.rarity||`common`)}</p>
220
+ <p>${e.stats||`New trait unlocked.`}</p>
221
+ <small>${t}</small>
222
+ <div class="fusion-reward-actions">
223
+ <button class="fusion-reward-equip" type="button">Equip Now</button>
224
+ <button class="fusion-reward-keep" type="button">Keep Current</button>
225
+ </div>
226
+ </div>
227
+ `;let r=()=>n.remove();n.addEventListener(`click`,e=>{e.target===n&&r()}),n.querySelector(`.fusion-reward-close`)?.addEventListener(`click`,r),n.querySelector(`.fusion-reward-keep`)?.addEventListener(`click`,r),n.querySelector(`.fusion-reward-equip`)?.addEventListener(`click`,()=>{this.save=Xe(),at(this.save,e.id)&&(Ze(this.save),this.setNotice(e.name+` equipped.`),this.renderShop(),this.renderInventory(),this.renderLoadout(),this.refreshStatsReadout(),this.game.events.emit(`octoglyphs:equip`,e.id),this.game.events.emit(`octoglyphs:save-changed`)),r()}),document.body.appendChild(n)}};function bn({onEvent:e,onStatus:t,privacy:n}){let r=null,i=0;function a(e){t?.(e)}function o(t){let r=n?.sanitizeEvent?n.sanitizeEvent(t):t;return r?(a({state:`event`,eventType:r.type,timestamp:Date.now()}),e?.(r),!0):!1}function s(){if(typeof EventSource!=`function`)return a({state:`unsupported`,timestamp:Date.now()}),null;let e=new EventSource(`/octoglyphs/stream`);return a({state:`connecting`,timestamp:Date.now()}),e.addEventListener(`open`,()=>{a({state:`connected`,timestamp:Date.now()})}),e.addEventListener(`error`,()=>{a({state:`error`,timestamp:Date.now()})}),e.addEventListener(`octoglyphs`,e=>{try{let t=JSON.parse(e.data);if(!t||t.protocol!==`octoglyphs.events.v1`)return;o(t.event)}catch{a({state:`malformed`,timestamp:Date.now()})}}),e}return{start(){this.companionStream=s()},stop(){clearInterval(r),this.companionStream?.close?.()},simulatePrompt(){let e=0;clearInterval(r),i=Date.now(),o({type:`prompt.sent`,timestamp:i,prompt_chars:1800,prompt_tokens:420}),o({type:`response.started`,timestamp:Date.now()}),r=setInterval(()=>{e+=1,o({type:`response.chunk`,timestamp:Date.now(),chunk_index:e}),e===5&&o({type:`tool.used`,timestamp:Date.now(),tool_kind:`file_write`,duration_ms:240,success:!0}),e>=18&&(clearInterval(r),o({type:`response.completed`,timestamp:Date.now(),duration_ms:Date.now()-i,completion_tokens:900,chunk_count:e,tool_call_count:1}),o({type:`tool.used`,timestamp:Date.now(),tool_kind:`other`,duration_ms:0,success:!0,usage:{prompt_tokens:420,completion_tokens:900,total_tokens:1320}}))},90)}}}var xn={"session.started":[`type`,`timestamp`],"session.ended":[`type`,`timestamp`,`duration_ms`],"prompt.sent":[`type`,`timestamp`,`prompt_chars`,`prompt_tokens`],"response.started":[`type`,`timestamp`],"response.chunk":[`type`,`timestamp`,`chunk_index`],"response.completed":[`type`,`timestamp`,`duration_ms`,`completion_tokens`,`chunk_count`,`tool_call_count`],"tool.used":[`type`,`timestamp`,`tool_kind`,`duration_ms`,`success`],"build.finished":[`type`,`timestamp`,`kind`,`duration_ms`,`success`],"commit.created":[`type`,`timestamp`,`files_changed_count`,`insertions_count`,`deletions_count`]},Sn=new Set([`timestamp`,`duration_ms`,`prompt_chars`,`prompt_tokens`,`chunk_index`,`completion_tokens`,`chunk_count`,`tool_call_count`,`files_changed_count`,`insertions_count`,`deletions_count`]),Cn=new Set([`success`]),wn=new Set([`file_read`,`file_write`,`shell`,`web`,`build`,`test`,`git`,`search`,`memory`,`other`]),Tn=new Set([`build`,`test`,`lint`,`typecheck`,`unknown`]);function En(e,t=0){let n=Number(e);return Number.isFinite(n)?Math.max(0,Math.floor(n)):t}function Dn(e){return!!e}function On(e){let t=String(e||`other`).toLowerCase();return wn.has(t)?t:t.includes(`write`)?`file_write`:t.includes(`read`)?`file_read`:t.includes(`shell`)||t.includes(`bash`)||t.includes(`terminal`)?`shell`:t.includes(`web`)||t.includes(`browser`)?`web`:t.includes(`build`)?`build`:t.includes(`test`)?`test`:t.includes(`git`)||t.includes(`commit`)?`git`:t.includes(`search`)||t.includes(`grep`)?`search`:t.includes(`memory`)||t.includes(`recall`)?`memory`:`other`}function kn(e){let t=String(e||`unknown`).toLowerCase();return Tn.has(t)?t:`unknown`}function An(e,t,n){if(n===`type`){e.type=t.type;return}if(n===`timestamp`){e.timestamp=En(t.timestamp,Date.now());return}if(n===`tool_kind`){e.tool_kind=On(t.tool_kind||t.toolName||t.category||t.name);return}if(n===`kind`){e.kind=kn(t.kind);return}if(Sn.has(n)&&t[n]!==void 0){e[n]=En(t[n]);return}Cn.has(n)&&t[n]!==void 0&&(e[n]=Dn(t[n]))}function jn(e){if(!e||typeof e!=`object`)return null;let t=String(e.type||``),n=xn[t];if(!n)return null;let r={};for(let t of n)An(r,e,t);return r.timestamp||=Date.now(),t===`tool.used`&&!r.tool_kind&&(r.tool_kind=`other`),t===`build.finished`&&!r.kind&&(r.kind=`unknown`),r}function Mn(){return{sanitizeEvent(e){return jn(e)},extractUsageOnly(e){let t=e?.usage;return t?{promptTokens:En(t.prompt_tokens),completionTokens:En(t.completion_tokens),totalTokens:En(t.total_tokens)}:null},extractToolCategoryOnly(e){return{category:On(e?.toolName||e?.category||e?.tool_kind||e?.name)}}}}async function Nn(){document.fonts&&(await document.fonts.load(`16px "Press Start 2P"`),await document.fonts.ready)}var Pn=1280,Fn=720;function In(){let e=document.getElementById(`panel-root`),t=document.getElementById(`app-viewport`);if(!e||!t)return;let n=t.getBoundingClientRect(),r=Math.min(n.width/Pn,n.height/Fn);e.style.setProperty(`--octoglyphs-app-scale`,String(r))}In(),window.addEventListener(`resize`,In),await Nn();var Ln=window.__OCTOGLYPHS_GAME=new te({type:J,parent:`game-root`,width:Pn,height:Fn-126,backgroundColor:`#061827`,pixelArt:!0,roundPixels:!0,autoFocus:!1,pauseOnBlur:!1,physics:{default:`arcade`,arcade:{debug:!1}},scale:{mode:Q.NONE,width:Pn,height:Fn-126},scene:[ke,dn,yn]});bn({privacy:Mn(),onStatus(e){let t=document.getElementById(`plugin-status-readout`);if(!(!t||!e?.state)){if(e.state===`connecting`){t.textContent=`Connecting to OctoGlyphs stream...`;return}if(e.state===`connected`){t.textContent=`OctoGlyphs stream connected`;return}if(e.state===`event`){t.textContent=`Last OctoGlyphs event: ${e.eventType}`;return}if(e.state===`error`){t.textContent=`OctoGlyphs stream disconnected or unavailable`;return}e.state===`unsupported`&&(t.textContent=`OctoGlyphs stream unsupported in this browser`)}},onEvent(e){Ln.events.emit(`octoglyphs:event`,e)}}).start();var Rn=new URLSearchParams(window.location.search);(Rn.get(`plugin`)===`1`||Rn.get(`mode`)===`plugin`)&&(document.body.classList.add(`plugin-mode`),document.getElementById(`plugin-status-readout`).textContent=`OpenClaw companion mode`,document.title=`OctoGlyphs Companion`),document.getElementById(`tank-hunt-button`)?.addEventListener(`click`,()=>{Ln.events.emit(`octoglyphs:start-tank-hunt`)});var zn=null,Bn=[...Te].sort(()=>Math.random()-.5),Vn=0,Hn=localStorage.getItem(`octoglyphs.musicMuted`)===`true`,Un=document.getElementById(`music-toggle`),Wn=Un?.querySelector(`img`),Gn=Un?.querySelector(`span`);function Kn(){Wn&&(Wn.src=Hn?`./assets/raw/music/mute.png`:`./assets/raw/music/unmute.png`),Gn&&(Gn.textContent=Hn?`Muted`:`Music`),Un?.classList.toggle(`is-muted`,Hn)}function qn(){if(!(Hn||Bn.length===0))for(let e=0;e<Bn.length;e+=1){let e=Bn[Vn%Bn.length];if(Vn+=1,Ln.cache.audio.exists(e.key)){zn=Ln.sound.add(e.key,{volume:.42}),zn.once(`complete`,()=>{zn=null,qn()}),zn.play();return}}}function Jn(){zn&&=(zn.stop(),zn.destroy(),null)}function Yn(){Hn||zn||qn()}Un?.addEventListener(`click`,()=>{Hn=!Hn,localStorage.setItem(`octoglyphs.musicMuted`,String(Hn)),Hn&&Jn(),Kn(),Yn()}),window.addEventListener(`pointerdown`,Yn,{once:!0}),window.addEventListener(`keydown`,Yn,{once:!0}),Kn();