dsh-pet-live2d-viola 1.0.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 (363) hide show
  1. package/LICENSE +44 -0
  2. package/README.md +98 -0
  3. package/assets/characters/miyako/Expressions/exp_amazed01.exp3.json +1 -0
  4. package/assets/characters/miyako/Expressions/exp_angry01.exp3.json +1 -0
  5. package/assets/characters/miyako/Expressions/exp_angry02.exp3.json +1 -0
  6. package/assets/characters/miyako/Expressions/exp_angry03.exp3.json +1 -0
  7. package/assets/characters/miyako/Expressions/exp_angry04.exp3.json +1 -0
  8. package/assets/characters/miyako/Expressions/exp_angry05.exp3.json +1 -0
  9. package/assets/characters/miyako/Expressions/exp_anxiety01.exp3.json +1 -0
  10. package/assets/characters/miyako/Expressions/exp_bsmile01.exp3.json +1 -0
  11. package/assets/characters/miyako/Expressions/exp_bsmile02.exp3.json +1 -0
  12. package/assets/characters/miyako/Expressions/exp_cry01.exp3.json +1 -0
  13. package/assets/characters/miyako/Expressions/exp_cry02.exp3.json +1 -0
  14. package/assets/characters/miyako/Expressions/exp_cry03.exp3.json +1 -0
  15. package/assets/characters/miyako/Expressions/exp_cry04.exp3.json +1 -0
  16. package/assets/characters/miyako/Expressions/exp_heart01.exp3.json +1 -0
  17. package/assets/characters/miyako/Expressions/exp_idle01.exp3.json +1 -0
  18. package/assets/characters/miyako/Expressions/exp_idle02.exp3.json +1 -0
  19. package/assets/characters/miyako/Expressions/exp_idle03.exp3.json +1 -0
  20. package/assets/characters/miyako/Expressions/exp_jitome01.exp3.json +1 -0
  21. package/assets/characters/miyako/Expressions/exp_kime01.exp3.json +1 -0
  22. package/assets/characters/miyako/Expressions/exp_kirakira01.exp3.json +1 -0
  23. package/assets/characters/miyako/Expressions/exp_mal_angry01.exp3.json +1 -0
  24. package/assets/characters/miyako/Expressions/exp_mal_angry02.exp3.json +1 -0
  25. package/assets/characters/miyako/Expressions/exp_mal_idle01.exp3.json +1 -0
  26. package/assets/characters/miyako/Expressions/exp_mal_idle02.exp3.json +1 -0
  27. package/assets/characters/miyako/Expressions/exp_mal_idle03.exp3.json +1 -0
  28. package/assets/characters/miyako/Expressions/exp_mal_kime01.exp3.json +1 -0
  29. package/assets/characters/miyako/Expressions/exp_mal_kime02.exp3.json +1 -0
  30. package/assets/characters/miyako/Expressions/exp_mal_pale01.exp3.json +1 -0
  31. package/assets/characters/miyako/Expressions/exp_mal_pale02.exp3.json +1 -0
  32. package/assets/characters/miyako/Expressions/exp_mal_sad01.exp3.json +1 -0
  33. package/assets/characters/miyako/Expressions/exp_mal_shy01.exp3.json +1 -0
  34. package/assets/characters/miyako/Expressions/exp_mal_smile01.exp3.json +1 -0
  35. package/assets/characters/miyako/Expressions/exp_pair_angry1_maru_angry1.exp3.json +637 -0
  36. package/assets/characters/miyako/Expressions/exp_pair_angry2_maru_angry2.exp3.json +637 -0
  37. package/assets/characters/miyako/Expressions/exp_pair_bsmile1_maru_smile.exp3.json +637 -0
  38. package/assets/characters/miyako/Expressions/exp_pair_idle_maru_idle.exp3.json +602 -0
  39. package/assets/characters/miyako/Expressions/exp_pair_jitome_maru_kime1.exp3.json +637 -0
  40. package/assets/characters/miyako/Expressions/exp_pair_kime_maru_kime.exp3.json +637 -0
  41. package/assets/characters/miyako/Expressions/exp_pair_serious1_maru_idle3.exp3.json +637 -0
  42. package/assets/characters/miyako/Expressions/exp_pair_serious_maru_idle.exp3.json +637 -0
  43. package/assets/characters/miyako/Expressions/exp_pair_serious_maru_sad.exp3.json +637 -0
  44. package/assets/characters/miyako/Expressions/exp_pair_smile2_maru_kime2.exp3.json +637 -0
  45. package/assets/characters/miyako/Expressions/exp_pair_smile3_maru_kime1.exp3.json +637 -0
  46. package/assets/characters/miyako/Expressions/exp_pair_smile_maru_smile.exp3.json +637 -0
  47. package/assets/characters/miyako/Expressions/exp_pair_surprised2_maru_shy.exp3.json +637 -0
  48. package/assets/characters/miyako/Expressions/exp_pale01.exp3.json +1 -0
  49. package/assets/characters/miyako/Expressions/exp_pale02.exp3.json +1 -0
  50. package/assets/characters/miyako/Expressions/exp_panic01.exp3.json +1 -0
  51. package/assets/characters/miyako/Expressions/exp_puzzled01.exp3.json +1 -0
  52. package/assets/characters/miyako/Expressions/exp_sad01.exp3.json +1 -0
  53. package/assets/characters/miyako/Expressions/exp_sad02.exp3.json +1 -0
  54. package/assets/characters/miyako/Expressions/exp_sad03.exp3.json +1 -0
  55. package/assets/characters/miyako/Expressions/exp_salk01.exp3.json +1 -0
  56. package/assets/characters/miyako/Expressions/exp_serious01.exp3.json +1 -0
  57. package/assets/characters/miyako/Expressions/exp_serious02.exp3.json +1 -0
  58. package/assets/characters/miyako/Expressions/exp_shadow01.exp3.json +1 -0
  59. package/assets/characters/miyako/Expressions/exp_shock01.exp3.json +1 -0
  60. package/assets/characters/miyako/Expressions/exp_shy01.exp3.json +1 -0
  61. package/assets/characters/miyako/Expressions/exp_shy02.exp3.json +1 -0
  62. package/assets/characters/miyako/Expressions/exp_smile01.exp3.json +1 -0
  63. package/assets/characters/miyako/Expressions/exp_smile02.exp3.json +1 -0
  64. package/assets/characters/miyako/Expressions/exp_smile03.exp3.json +1 -0
  65. package/assets/characters/miyako/Expressions/exp_smile04.exp3.json +1 -0
  66. package/assets/characters/miyako/Expressions/exp_spin01.exp3.json +1 -0
  67. package/assets/characters/miyako/Expressions/exp_surprised01.exp3.json +1 -0
  68. package/assets/characters/miyako/Expressions/exp_surprised02.exp3.json +1 -0
  69. package/assets/characters/miyako/Expressions/exp_surprised03.exp3.json +1 -0
  70. package/assets/characters/miyako/Expressions/exp_thinking01.exp3.json +1 -0
  71. package/assets/characters/miyako/Expressions/exp_tired01.exp3.json +1 -0
  72. package/assets/characters/miyako/Expressions/exp_tired02.exp3.json +1 -0
  73. package/assets/characters/miyako/Motions/mtn_angry01_C.motion3.json +1 -0
  74. package/assets/characters/miyako/Motions/mtn_angry01_L.motion3.json +1 -0
  75. package/assets/characters/miyako/Motions/mtn_angry01_R.motion3.json +1 -0
  76. package/assets/characters/miyako/Motions/mtn_angry02_C.motion3.json +1 -0
  77. package/assets/characters/miyako/Motions/mtn_angry02_L.motion3.json +1 -0
  78. package/assets/characters/miyako/Motions/mtn_angry02_R.motion3.json +1 -0
  79. package/assets/characters/miyako/Motions/mtn_bye01_C.motion3.json +1 -0
  80. package/assets/characters/miyako/Motions/mtn_bye01_L.motion3.json +1 -0
  81. package/assets/characters/miyako/Motions/mtn_bye01_R.motion3.json +1 -0
  82. package/assets/characters/miyako/Motions/mtn_check01_C.motion3.json +1 -0
  83. package/assets/characters/miyako/Motions/mtn_check01_L.motion3.json +1 -0
  84. package/assets/characters/miyako/Motions/mtn_check01_R.motion3.json +1 -0
  85. package/assets/characters/miyako/Motions/mtn_cry01_C.motion3.json +1 -0
  86. package/assets/characters/miyako/Motions/mtn_cry01_L.motion3.json +1 -0
  87. package/assets/characters/miyako/Motions/mtn_cry01_R.motion3.json +1 -0
  88. package/assets/characters/miyako/Motions/mtn_denial01_C.motion3.json +1 -0
  89. package/assets/characters/miyako/Motions/mtn_denial01_L.motion3.json +1 -0
  90. package/assets/characters/miyako/Motions/mtn_denial01_R.motion3.json +1 -0
  91. package/assets/characters/miyako/Motions/mtn_idle01_C.motion3.json +1 -0
  92. package/assets/characters/miyako/Motions/mtn_idle01_L.motion3.json +1 -0
  93. package/assets/characters/miyako/Motions/mtn_idle01_R.motion3.json +1 -0
  94. package/assets/characters/miyako/Motions/mtn_idle02_C.motion3.json +1 -0
  95. package/assets/characters/miyako/Motions/mtn_idle02_L.motion3.json +1 -0
  96. package/assets/characters/miyako/Motions/mtn_idle02_R.motion3.json +1 -0
  97. package/assets/characters/miyako/Motions/mtn_kime01_C.motion3.json +1 -0
  98. package/assets/characters/miyako/Motions/mtn_kime01_L.motion3.json +1 -0
  99. package/assets/characters/miyako/Motions/mtn_kime01_R.motion3.json +1 -0
  100. package/assets/characters/miyako/Motions/mtn_look01_C.motion3.json +1 -0
  101. package/assets/characters/miyako/Motions/mtn_look01_L.motion3.json +1 -0
  102. package/assets/characters/miyako/Motions/mtn_look01_R.motion3.json +1 -0
  103. package/assets/characters/miyako/Motions/mtn_look02_C.motion3.json +1 -0
  104. package/assets/characters/miyako/Motions/mtn_look02_L.motion3.json +1 -0
  105. package/assets/characters/miyako/Motions/mtn_look02_R.motion3.json +1 -0
  106. package/assets/characters/miyako/Motions/mtn_mal_angry01_C.motion3.json +1 -0
  107. package/assets/characters/miyako/Motions/mtn_mal_angry01_L.motion3.json +1 -0
  108. package/assets/characters/miyako/Motions/mtn_mal_angry01_R.motion3.json +1 -0
  109. package/assets/characters/miyako/Motions/mtn_mal_bye01_C.motion3.json +1 -0
  110. package/assets/characters/miyako/Motions/mtn_mal_bye01_L.motion3.json +1 -0
  111. package/assets/characters/miyako/Motions/mtn_mal_bye01_R.motion3.json +1 -0
  112. package/assets/characters/miyako/Motions/mtn_mal_cry01_C.motion3.json +1 -0
  113. package/assets/characters/miyako/Motions/mtn_mal_cry01_L.motion3.json +1 -0
  114. package/assets/characters/miyako/Motions/mtn_mal_cry01_R.motion3.json +1 -0
  115. package/assets/characters/miyako/Motions/mtn_mal_happy01_C.motion3.json +1 -0
  116. package/assets/characters/miyako/Motions/mtn_mal_happy01_L.motion3.json +1 -0
  117. package/assets/characters/miyako/Motions/mtn_mal_happy01_R.motion3.json +1 -0
  118. package/assets/characters/miyako/Motions/mtn_mal_rampage01_C.motion3.json +1 -0
  119. package/assets/characters/miyako/Motions/mtn_mal_rampage01_L.motion3.json +1 -0
  120. package/assets/characters/miyako/Motions/mtn_mal_rampage01_R.motion3.json +1 -0
  121. package/assets/characters/miyako/Motions/mtn_mal_smile01_C.motion3.json +1 -0
  122. package/assets/characters/miyako/Motions/mtn_mal_smile01_L.motion3.json +1 -0
  123. package/assets/characters/miyako/Motions/mtn_mal_smile01_R.motion3.json +1 -0
  124. package/assets/characters/miyako/Motions/mtn_nod01_C.motion3.json +1 -0
  125. package/assets/characters/miyako/Motions/mtn_nod01_L.motion3.json +1 -0
  126. package/assets/characters/miyako/Motions/mtn_nod01_R.motion3.json +1 -0
  127. package/assets/characters/miyako/Motions/mtn_nod02_C.motion3.json +1 -0
  128. package/assets/characters/miyako/Motions/mtn_nod02_L.motion3.json +1 -0
  129. package/assets/characters/miyako/Motions/mtn_nod02_R.motion3.json +1 -0
  130. package/assets/characters/miyako/Motions/mtn_nod03_C.motion3.json +1 -0
  131. package/assets/characters/miyako/Motions/mtn_nod03_L.motion3.json +1 -0
  132. package/assets/characters/miyako/Motions/mtn_nod03_R.motion3.json +1 -0
  133. package/assets/characters/miyako/Motions/mtn_question01_C.motion3.json +1 -0
  134. package/assets/characters/miyako/Motions/mtn_question01_L.motion3.json +1 -0
  135. package/assets/characters/miyako/Motions/mtn_question01_R.motion3.json +1 -0
  136. package/assets/characters/miyako/Motions/mtn_sad01_C.motion3.json +1 -0
  137. package/assets/characters/miyako/Motions/mtn_sad01_L.motion3.json +1 -0
  138. package/assets/characters/miyako/Motions/mtn_sad01_R.motion3.json +1 -0
  139. package/assets/characters/miyako/Motions/mtn_serious01_C.motion3.json +1 -0
  140. package/assets/characters/miyako/Motions/mtn_serious01_L.motion3.json +1 -0
  141. package/assets/characters/miyako/Motions/mtn_serious01_R.motion3.json +1 -0
  142. package/assets/characters/miyako/Motions/mtn_smile01_C.motion3.json +1 -0
  143. package/assets/characters/miyako/Motions/mtn_smile01_L.motion3.json +1 -0
  144. package/assets/characters/miyako/Motions/mtn_smile01_R.motion3.json +1 -0
  145. package/assets/characters/miyako/Motions/mtn_smile02_C.motion3.json +1 -0
  146. package/assets/characters/miyako/Motions/mtn_smile02_L.motion3.json +1 -0
  147. package/assets/characters/miyako/Motions/mtn_smile02_R.motion3.json +1 -0
  148. package/assets/characters/miyako/Motions/mtn_surprised01_C.motion3.json +1 -0
  149. package/assets/characters/miyako/Motions/mtn_surprised01_L.motion3.json +1 -0
  150. package/assets/characters/miyako/Motions/mtn_surprised01_R.motion3.json +1 -0
  151. package/assets/characters/miyako/Motions/mtn_thinking01_C.motion3.json +1 -0
  152. package/assets/characters/miyako/Motions/mtn_thinking01_L.motion3.json +1 -0
  153. package/assets/characters/miyako/Motions/mtn_thinking01_R.motion3.json +1 -0
  154. package/assets/characters/miyako/Textures/texture_00.webp +0 -0
  155. package/assets/characters/miyako/Textures/texture_01.webp +0 -0
  156. package/assets/characters/miyako/Textures/texture_02.webp +0 -0
  157. package/assets/characters/miyako/adv_live2d_miyako_014_casual_spring_01_marukun.moc3 +0 -0
  158. package/assets/characters/miyako/adv_live2d_miyako_014_casual_spring_01_marukun.model3.json +1 -0
  159. package/assets/characters/miyako/adv_live2d_miyako_014_casual_spring_01_marukun.model3.json.bak +1 -0
  160. package/assets/characters/miyako/adv_live2d_miyako_014_casual_spring_01_marukun.physics3.json +1 -0
  161. package/assets/characters/miyako/model.json +23 -0
  162. package/assets/characters/viola/Expressions/exp_angry01.exp3.json +1 -0
  163. package/assets/characters/viola/Expressions/exp_bsmile01.exp3.json +1 -0
  164. package/assets/characters/viola/Expressions/exp_bsmile02.exp3.json +1 -0
  165. package/assets/characters/viola/Expressions/exp_cry01.exp3.json +1 -0
  166. package/assets/characters/viola/Expressions/exp_cry02.exp3.json +1 -0
  167. package/assets/characters/viola/Expressions/exp_idle01.exp3.json +1 -0
  168. package/assets/characters/viola/Expressions/exp_idle02.exp3.json +1 -0
  169. package/assets/characters/viola/Expressions/exp_idle03.exp3.json +1 -0
  170. package/assets/characters/viola/Expressions/exp_idle04.exp3.json +1 -0
  171. package/assets/characters/viola/Expressions/exp_kime01.exp3.json +1 -0
  172. package/assets/characters/viola/Expressions/exp_pale01.exp3.json +1 -0
  173. package/assets/characters/viola/Expressions/exp_pale02.exp3.json +1 -0
  174. package/assets/characters/viola/Expressions/exp_sad01.exp3.json +1 -0
  175. package/assets/characters/viola/Expressions/exp_sad02.exp3.json +1 -0
  176. package/assets/characters/viola/Expressions/exp_serious01.exp3.json +1 -0
  177. package/assets/characters/viola/Expressions/exp_serious02.exp3.json +1 -0
  178. package/assets/characters/viola/Expressions/exp_shadow01.exp3.json +1 -0
  179. package/assets/characters/viola/Expressions/exp_smile01.exp3.json +1 -0
  180. package/assets/characters/viola/Expressions/exp_smile02.exp3.json +1 -0
  181. package/assets/characters/viola/Expressions/exp_smile02_nomouth.exp3.json +330 -0
  182. package/assets/characters/viola/Expressions/exp_smile03.exp3.json +1 -0
  183. package/assets/characters/viola/Expressions/exp_surprised01.exp3.json +1 -0
  184. package/assets/characters/viola/Expressions/exp_surprised01_nomouth.exp3.json +330 -0
  185. package/assets/characters/viola/Expressions/exp_thinking01.exp3.json +1 -0
  186. package/assets/characters/viola/Expressions/exp_thinking01_nomouth.exp3.json +330 -0
  187. package/assets/characters/viola/Motions/mtn_angry01_C.motion3.json +1 -0
  188. package/assets/characters/viola/Motions/mtn_angry01_L.motion3.json +1 -0
  189. package/assets/characters/viola/Motions/mtn_angry01_R.motion3.json +1 -0
  190. package/assets/characters/viola/Motions/mtn_bye01_C.motion3.json +1 -0
  191. package/assets/characters/viola/Motions/mtn_bye01_L.motion3.json +1 -0
  192. package/assets/characters/viola/Motions/mtn_bye01_R.motion3.json +1 -0
  193. package/assets/characters/viola/Motions/mtn_check01_C.motion3.json +1 -0
  194. package/assets/characters/viola/Motions/mtn_check01_L.motion3.json +1 -0
  195. package/assets/characters/viola/Motions/mtn_check01_R.motion3.json +1 -0
  196. package/assets/characters/viola/Motions/mtn_cry01_C.motion3.json +1 -0
  197. package/assets/characters/viola/Motions/mtn_cry01_L.motion3.json +1 -0
  198. package/assets/characters/viola/Motions/mtn_cry01_R.motion3.json +1 -0
  199. package/assets/characters/viola/Motions/mtn_denial01_C.motion3.json +1 -0
  200. package/assets/characters/viola/Motions/mtn_denial01_L.motion3.json +1 -0
  201. package/assets/characters/viola/Motions/mtn_denial01_R.motion3.json +1 -0
  202. package/assets/characters/viola/Motions/mtn_idle01_C.motion3.json +1 -0
  203. package/assets/characters/viola/Motions/mtn_idle01_L.motion3.json +1 -0
  204. package/assets/characters/viola/Motions/mtn_idle01_R.motion3.json +1 -0
  205. package/assets/characters/viola/Motions/mtn_kime01_C.motion3.json +1 -0
  206. package/assets/characters/viola/Motions/mtn_kime01_L.motion3.json +1 -0
  207. package/assets/characters/viola/Motions/mtn_kime01_R.motion3.json +1 -0
  208. package/assets/characters/viola/Motions/mtn_look01_C.motion3.json +1 -0
  209. package/assets/characters/viola/Motions/mtn_look01_L.motion3.json +1 -0
  210. package/assets/characters/viola/Motions/mtn_look01_R.motion3.json +1 -0
  211. package/assets/characters/viola/Motions/mtn_nod01_C.motion3.json +1 -0
  212. package/assets/characters/viola/Motions/mtn_nod01_L.motion3.json +1 -0
  213. package/assets/characters/viola/Motions/mtn_nod01_R.motion3.json +1 -0
  214. package/assets/characters/viola/Motions/mtn_nod02_C.motion3.json +1 -0
  215. package/assets/characters/viola/Motions/mtn_nod02_L.motion3.json +1 -0
  216. package/assets/characters/viola/Motions/mtn_nod02_R.motion3.json +1 -0
  217. package/assets/characters/viola/Motions/mtn_question01_C.motion3.json +1 -0
  218. package/assets/characters/viola/Motions/mtn_question01_L.motion3.json +1 -0
  219. package/assets/characters/viola/Motions/mtn_question01_R.motion3.json +1 -0
  220. package/assets/characters/viola/Motions/mtn_sad01_C.motion3.json +1 -0
  221. package/assets/characters/viola/Motions/mtn_sad01_L.motion3.json +1 -0
  222. package/assets/characters/viola/Motions/mtn_sad01_R.motion3.json +1 -0
  223. package/assets/characters/viola/Motions/mtn_serious01_C.motion3.json +1 -0
  224. package/assets/characters/viola/Motions/mtn_serious01_L.motion3.json +1 -0
  225. package/assets/characters/viola/Motions/mtn_serious01_R.motion3.json +1 -0
  226. package/assets/characters/viola/Motions/mtn_smile01_C.motion3.json +1 -0
  227. package/assets/characters/viola/Motions/mtn_smile01_L.motion3.json +1 -0
  228. package/assets/characters/viola/Motions/mtn_smile01_R.motion3.json +1 -0
  229. package/assets/characters/viola/Motions/mtn_smile02_C.motion3.json +1 -0
  230. package/assets/characters/viola/Motions/mtn_smile02_L.motion3.json +1 -0
  231. package/assets/characters/viola/Motions/mtn_smile02_R.motion3.json +1 -0
  232. package/assets/characters/viola/Motions/mtn_surprised01_C.motion3.json +1 -0
  233. package/assets/characters/viola/Motions/mtn_surprised01_L.motion3.json +1 -0
  234. package/assets/characters/viola/Motions/mtn_surprised01_R.motion3.json +1 -0
  235. package/assets/characters/viola/Motions/mtn_thinking01_C.motion3.json +1 -0
  236. package/assets/characters/viola/Motions/mtn_thinking01_L.motion3.json +1 -0
  237. package/assets/characters/viola/Motions/mtn_thinking01_R.motion3.json +1 -0
  238. package/assets/characters/viola/Textures/texture_00.webp +0 -0
  239. package/assets/characters/viola/Textures/texture_01.webp +0 -0
  240. package/assets/characters/viola/adv_live2d_sub_viola_casual_spring_01.moc3 +0 -0
  241. package/assets/characters/viola/adv_live2d_sub_viola_casual_spring_01.model3.json +388 -0
  242. package/assets/characters/viola/adv_live2d_sub_viola_casual_spring_01.physics3.json +1 -0
  243. package/assets/characters/viola_school/Expressions/exp_angry01.exp3.json +1 -0
  244. package/assets/characters/viola_school/Expressions/exp_bsmile01.exp3.json +1 -0
  245. package/assets/characters/viola_school/Expressions/exp_bsmile02.exp3.json +1 -0
  246. package/assets/characters/viola_school/Expressions/exp_cry01.exp3.json +1 -0
  247. package/assets/characters/viola_school/Expressions/exp_cry02.exp3.json +1 -0
  248. package/assets/characters/viola_school/Expressions/exp_idle01.exp3.json +1 -0
  249. package/assets/characters/viola_school/Expressions/exp_idle02.exp3.json +1 -0
  250. package/assets/characters/viola_school/Expressions/exp_idle03.exp3.json +1 -0
  251. package/assets/characters/viola_school/Expressions/exp_idle04.exp3.json +1 -0
  252. package/assets/characters/viola_school/Expressions/exp_kime01.exp3.json +1 -0
  253. package/assets/characters/viola_school/Expressions/exp_pale01.exp3.json +1 -0
  254. package/assets/characters/viola_school/Expressions/exp_pale02.exp3.json +1 -0
  255. package/assets/characters/viola_school/Expressions/exp_sad01.exp3.json +1 -0
  256. package/assets/characters/viola_school/Expressions/exp_sad02.exp3.json +1 -0
  257. package/assets/characters/viola_school/Expressions/exp_serious01.exp3.json +1 -0
  258. package/assets/characters/viola_school/Expressions/exp_serious02.exp3.json +1 -0
  259. package/assets/characters/viola_school/Expressions/exp_shadow01.exp3.json +1 -0
  260. package/assets/characters/viola_school/Expressions/exp_smile01.exp3.json +1 -0
  261. package/assets/characters/viola_school/Expressions/exp_smile02.exp3.json +1 -0
  262. package/assets/characters/viola_school/Expressions/exp_smile02_nomouth.exp3.json +330 -0
  263. package/assets/characters/viola_school/Expressions/exp_smile03.exp3.json +1 -0
  264. package/assets/characters/viola_school/Expressions/exp_surprised01.exp3.json +1 -0
  265. package/assets/characters/viola_school/Expressions/exp_surprised01_nomouth.exp3.json +330 -0
  266. package/assets/characters/viola_school/Expressions/exp_thinking01.exp3.json +1 -0
  267. package/assets/characters/viola_school/Expressions/exp_thinking01_nomouth.exp3.json +330 -0
  268. package/assets/characters/viola_school/Motions/mtn_angry01_C.motion3.json +1 -0
  269. package/assets/characters/viola_school/Motions/mtn_angry01_L.motion3.json +1 -0
  270. package/assets/characters/viola_school/Motions/mtn_angry01_R.motion3.json +1 -0
  271. package/assets/characters/viola_school/Motions/mtn_bye01_C.motion3.json +1 -0
  272. package/assets/characters/viola_school/Motions/mtn_bye01_L.motion3.json +1 -0
  273. package/assets/characters/viola_school/Motions/mtn_bye01_R.motion3.json +1 -0
  274. package/assets/characters/viola_school/Motions/mtn_check01_C.motion3.json +1 -0
  275. package/assets/characters/viola_school/Motions/mtn_check01_L.motion3.json +1 -0
  276. package/assets/characters/viola_school/Motions/mtn_check01_R.motion3.json +1 -0
  277. package/assets/characters/viola_school/Motions/mtn_cry01_C.motion3.json +1 -0
  278. package/assets/characters/viola_school/Motions/mtn_cry01_L.motion3.json +1 -0
  279. package/assets/characters/viola_school/Motions/mtn_cry01_R.motion3.json +1 -0
  280. package/assets/characters/viola_school/Motions/mtn_denial01_C.motion3.json +1 -0
  281. package/assets/characters/viola_school/Motions/mtn_denial01_L.motion3.json +1 -0
  282. package/assets/characters/viola_school/Motions/mtn_denial01_R.motion3.json +1 -0
  283. package/assets/characters/viola_school/Motions/mtn_idle01_C.motion3.json +1 -0
  284. package/assets/characters/viola_school/Motions/mtn_idle01_L.motion3.json +1 -0
  285. package/assets/characters/viola_school/Motions/mtn_idle01_R.motion3.json +1 -0
  286. package/assets/characters/viola_school/Motions/mtn_kime01_C.motion3.json +1 -0
  287. package/assets/characters/viola_school/Motions/mtn_kime01_L.motion3.json +1 -0
  288. package/assets/characters/viola_school/Motions/mtn_kime01_R.motion3.json +1 -0
  289. package/assets/characters/viola_school/Motions/mtn_look01_C.motion3.json +1 -0
  290. package/assets/characters/viola_school/Motions/mtn_look01_L.motion3.json +1 -0
  291. package/assets/characters/viola_school/Motions/mtn_look01_R.motion3.json +1 -0
  292. package/assets/characters/viola_school/Motions/mtn_nod01_C.motion3.json +1 -0
  293. package/assets/characters/viola_school/Motions/mtn_nod01_L.motion3.json +1 -0
  294. package/assets/characters/viola_school/Motions/mtn_nod01_R.motion3.json +1 -0
  295. package/assets/characters/viola_school/Motions/mtn_nod02_C.motion3.json +1 -0
  296. package/assets/characters/viola_school/Motions/mtn_nod02_L.motion3.json +1 -0
  297. package/assets/characters/viola_school/Motions/mtn_nod02_R.motion3.json +1 -0
  298. package/assets/characters/viola_school/Motions/mtn_question01_C.motion3.json +1 -0
  299. package/assets/characters/viola_school/Motions/mtn_question01_L.motion3.json +1 -0
  300. package/assets/characters/viola_school/Motions/mtn_question01_R.motion3.json +1 -0
  301. package/assets/characters/viola_school/Motions/mtn_sad01_C.motion3.json +1 -0
  302. package/assets/characters/viola_school/Motions/mtn_sad01_L.motion3.json +1 -0
  303. package/assets/characters/viola_school/Motions/mtn_sad01_R.motion3.json +1 -0
  304. package/assets/characters/viola_school/Motions/mtn_serious01_C.motion3.json +1 -0
  305. package/assets/characters/viola_school/Motions/mtn_serious01_L.motion3.json +1 -0
  306. package/assets/characters/viola_school/Motions/mtn_serious01_R.motion3.json +1 -0
  307. package/assets/characters/viola_school/Motions/mtn_smile01_C.motion3.json +1 -0
  308. package/assets/characters/viola_school/Motions/mtn_smile01_L.motion3.json +1 -0
  309. package/assets/characters/viola_school/Motions/mtn_smile01_R.motion3.json +1 -0
  310. package/assets/characters/viola_school/Motions/mtn_smile02_C.motion3.json +1 -0
  311. package/assets/characters/viola_school/Motions/mtn_smile02_L.motion3.json +1 -0
  312. package/assets/characters/viola_school/Motions/mtn_smile02_R.motion3.json +1 -0
  313. package/assets/characters/viola_school/Motions/mtn_surprised01_C.motion3.json +1 -0
  314. package/assets/characters/viola_school/Motions/mtn_surprised01_L.motion3.json +1 -0
  315. package/assets/characters/viola_school/Motions/mtn_surprised01_R.motion3.json +1 -0
  316. package/assets/characters/viola_school/Motions/mtn_thinking01_C.motion3.json +1 -0
  317. package/assets/characters/viola_school/Motions/mtn_thinking01_L.motion3.json +1 -0
  318. package/assets/characters/viola_school/Motions/mtn_thinking01_R.motion3.json +1 -0
  319. package/assets/characters/viola_school/Textures/texture_00.webp +0 -0
  320. package/assets/characters/viola_school/Textures/texture_01.webp +0 -0
  321. package/assets/characters/viola_school/adv_live2d_sub_viola_school_winter_hs.moc3 +0 -0
  322. package/assets/characters/viola_school/adv_live2d_sub_viola_school_winter_hs.model3.json +388 -0
  323. package/assets/characters/viola_school/adv_live2d_sub_viola_school_winter_hs.physics3.json +1 -0
  324. package/assets/click/click.mp3 +0 -0
  325. package/assets/voice/README.txt +139 -0
  326. package/assets/voice/done-fc.opus +0 -0
  327. package/assets/voice/done-score.opus +0 -0
  328. package/assets/voice/idle-common02.opus +0 -0
  329. package/assets/voice/idle-levelup.opus +0 -0
  330. package/assets/voice/idle-marukun.opus +0 -0
  331. package/assets/voice/listening.opus +0 -0
  332. package/assets/voice/miyako-farewell.opus +0 -0
  333. package/assets/voice/thinking-comon.opus +0 -0
  334. package/assets/voice/thinking-gekisou.opus +0 -0
  335. package/assets/voice/viola-click1.opus +0 -0
  336. package/assets/voice/viola-click2.opus +0 -0
  337. package/assets/voice/viola-done1.opus +0 -0
  338. package/assets/voice/viola-done2.opus +0 -0
  339. package/assets/voice/viola-done3.opus +0 -0
  340. package/assets/voice/viola-farewell.opus +0 -0
  341. package/assets/voice/viola-idle1.opus +0 -0
  342. package/assets/voice/viola-idle2.opus +0 -0
  343. package/assets/voice/viola-idle3.opus +0 -0
  344. package/assets/voice/viola-idle4.opus +0 -0
  345. package/assets/voice/viola-listening.opus +0 -0
  346. package/assets/voice/viola-thinking1.opus +0 -0
  347. package/assets/voice/viola-thinking2.opus +0 -0
  348. package/assets/voice/viola-thinking3.opus +0 -0
  349. package/assets/voice/viola-working1.opus +0 -0
  350. package/assets/voice/viola-working2.opus +0 -0
  351. package/assets/voice/viola-working3.opus +0 -0
  352. package/assets/voice/working-combo.opus +0 -0
  353. package/assets/voice/working-skill.opus +0 -0
  354. package/assets/voice/working-training.opus +0 -0
  355. package/cordis.patch.yml +18 -0
  356. package/lib/client.js +5514 -0
  357. package/lib/client.live2d.js +67 -0
  358. package/lib/framing.js +284 -0
  359. package/lib/index.js +591 -0
  360. package/lib/machine.js +279 -0
  361. package/lib/persist.js +183 -0
  362. package/lib/routes.js +206 -0
  363. package/package.json +57 -0
@@ -0,0 +1,67 @@
1
+ /*
2
+ * dsh-pet-live2d-viola runtime chunk (generated - do not edit by hand).
3
+ * Bundles PIXI 6.5.10 (MIT License), pixi-live2d-display cubism4 (MIT License)
4
+ * and the Live2D Cubism 5.0 Core (Live2D Proprietary Software License
5
+ * Agreement; redistribution permitted for the files named in its
6
+ * RedistributableFiles.txt).
7
+ * Rebuild with vendor/build-vendor.mjs.
8
+ */
9
+ window.__ModuleLoader__.load({
10
+ id: "dsh-pet-live2d-viola/client.live2d.js",
11
+ factory: (require) => {
12
+ const SOURCES = [
13
+ /* 1/3 PIXI (UMD, mirrors itself onto globalThis.PIXI) */
14
+ "/*!\n * pixi.js - v6.5.10\n * Compiled Thu, 06 Jul 2023 15:25:11 UTC\n *\n * pixi.js is licensed under the MIT License.\n * http://www.opensource.org/licenses/mit-license\n */\nvar PIXI=function(t){\"use strict\";var e=setTimeout;function r(t){return Boolean(t&&void 0!==t.length)}function i(){}function n(t){if(!(this instanceof n))throw new TypeError(\"Promises must be constructed via new\");if(\"function\"!=typeof t)throw new TypeError(\"not a function\");this._state=0,this._handled=!1,this._value=void 0,this._deferreds=[],l(t,this)}function o(t,e){for(;3===t._state;)t=t._value;0!==t._state?(t._handled=!0,n._immediateFn((function(){var r=1===t._state?e.onFulfilled:e.onRejected;if(null!==r){var i;try{i=r(t._value)}catch(t){return void a(e.promise,t)}s(e.promise,i)}else(1===t._state?s:a)(e.promise,t._value)}))):t._deferreds.push(e)}function s(t,e){try{if(e===t)throw new TypeError(\"A promise cannot be resolved with itself.\");if(e&&(\"object\"==typeof e||\"function\"==typeof e)){var r=e.then;if(e instanceof n)return t._state=3,t._value=e,void h(t);if(\"function\"==typeof r)return void l((i=r,o=e,function(){i.apply(o,arguments)}),t)}t._state=1,t._value=e,h(t)}catch(e){a(t,e)}var i,o}function a(t,e){t._state=2,t._value=e,h(t)}function h(t){2===t._state&&0===t._deferreds.length&&n._immediateFn((function(){t._handled||n._unhandledRejectionFn(t._value)}));for(var e=0,r=t._deferreds.length;e<r;e++)o(t,t._deferreds[e]);t._deferreds=null}function u(t,e,r){this.onFulfilled=\"function\"==typeof t?t:null,this.onRejected=\"function\"==typeof e?e:null,this.promise=r}function l(t,e){var r=!1;try{t((function(t){r||(r=!0,s(e,t))}),(function(t){r||(r=!0,a(e,t))}))}catch(t){if(r)return;r=!0,a(e,t)}}n.prototype.catch=function(t){return this.then(null,t)},n.prototype.then=function(t,e){var r=new this.constructor(i);return o(this,new u(t,e,r)),r},n.prototype.finally=function(t){var e=this.constructor;return this.then((function(r){return e.resolve(t()).then((function(){return r}))}),(function(r){return e.resolve(t()).then((function(){return e.reject(r)}))}))},n.all=function(t){return new n((function(e,i){if(!r(t))return i(new TypeError(\"Promise.all accepts an array\"));var n=Array.prototype.slice.call(t);if(0===n.length)return e([]);var o=n.length;function s(t,r){try{if(r&&(\"object\"==typeof r||\"function\"==typeof r)){var a=r.then;if(\"function\"==typeof a)return void a.call(r,(function(e){s(t,e)}),i)}n[t]=r,0==--o&&e(n)}catch(t){i(t)}}for(var a=0;a<n.length;a++)s(a,n[a])}))},n.allSettled=function(t){return new this((function(e,r){if(!t||void 0===t.length)return r(new TypeError(typeof t+\" \"+t+\" is not iterable(cannot read property Symbol(Symbol.iterator))\"));var i=Array.prototype.slice.call(t);if(0===i.length)return e([]);var n=i.length;function o(t,r){if(r&&(\"object\"==typeof r||\"function\"==typeof r)){var s=r.then;if(\"function\"==typeof s)return void s.call(r,(function(e){o(t,e)}),(function(r){i[t]={status:\"rejected\",reason:r},0==--n&&e(i)}))}i[t]={status:\"fulfilled\",value:r},0==--n&&e(i)}for(var s=0;s<i.length;s++)o(s,i[s])}))},n.resolve=function(t){return t&&\"object\"==typeof t&&t.constructor===n?t:new n((function(e){e(t)}))},n.reject=function(t){return new n((function(e,r){r(t)}))},n.race=function(t){return new n((function(e,i){if(!r(t))return i(new TypeError(\"Promise.race accepts an array\"));for(var o=0,s=t.length;o<s;o++)n.resolve(t[o]).then(e,i)}))},n._immediateFn=\"function\"==typeof setImmediate&&function(t){setImmediate(t)}||function(t){e(t,0)},n._unhandledRejectionFn=function(t){\"undefined\"!=typeof console&&console&&console.warn(\"Possible Unhandled Promise Rejection:\",t)};var c=Object.getOwnPropertySymbols,d=Object.prototype.hasOwnProperty,f=Object.prototype.propertyIsEnumerable;function p(t){if(null==t)throw new TypeError(\"Object.assign cannot be called with null or undefined\");return Object(t)}var _=function(){try{if(!Object.assign)return!1;var t=new String(\"abc\");if(t[5]=\"de\",\"5\"===Object.getOwnPropertyNames(t)[0])return!1;for(var e={},r=0;r<10;r++)e[\"_\"+String.fromCharCode(r)]=r;var i=Object.getOwnPropertyNames(e).map((function(t){return e[t]}));if(\"0123456789\"!==i.join(\"\"))return!1;var n={};return\"abcdefghijklmnopqrst\".split(\"\").forEach((function(t){n[t]=t})),\"abcdefghijklmnopqrst\"===Object.keys(Object.assign({},n)).join(\"\")}catch(t){return!1}}()?Object.assign:function(t,e){for(var r,i,n=arguments,o=p(t),s=1;s<arguments.length;s++){for(var a in r=Object(n[s]))d.call(r,a)&&(o[a]=r[a]);if(c){i=c(r);for(var h=0;h<i.length;h++)f.call(r,i[h])&&(o[i[h]]=r[i[h]])}}return o};if(\"undefined\"==typeof globalThis&&(\"undefined\"!=typeof self?self.globalThis=self:\"undefined\"!=typeof global&&(global.globalThis=global)),globalThis.Promise||(globalThis.Promise=n),Object.assign||(Object.assign=_),Date.now&&Date.prototype.getTime||(Date.now=function(){return(new Date).getTime()}),!globalThis.performance||!globalThis.performance.now){var v=Date.now();globalThis.performance||(globalThis.performance={}),globalThis.performance.now=function(){return Date.now()-v}}for(var m=Date.now(),y=[\"ms\",\"moz\",\"webkit\",\"o\"],g=0;g<y.length&&!globalThis.requestAnimationFrame;++g){var T=y[g];globalThis.requestAnimationFrame=globalThis[T+\"RequestAnimationFrame\"],globalThis.cancelAnimationFrame=globalThis[T+\"CancelAnimationFrame\"]||globalThis[T+\"CancelRequestAnimationFrame\"]}globalThis.requestAnimationFrame||(globalThis.requestAnimationFrame=function(t){if(\"function\"!=typeof t)throw new TypeError(t+\"is not a function\");var e=Date.now(),r=16+m-e;return r<0&&(r=0),m=e,globalThis.self.setTimeout((function(){m=Date.now(),t(performance.now())}),r)}),globalThis.cancelAnimationFrame||(globalThis.cancelAnimationFrame=function(t){return clearTimeout(t)}),Math.sign||(Math.sign=function(t){return 0===(t=Number(t))||isNaN(t)?t:t>0?1:-1}),Number.isInteger||(Number.isInteger=function(t){return\"number\"==typeof t&&isFinite(t)&&Math.floor(t)===t}),globalThis.ArrayBuffer||(globalThis.ArrayBuffer=Array),globalThis.Float32Array||(globalThis.Float32Array=Array),globalThis.Uint32Array||(globalThis.Uint32Array=Array),globalThis.Uint16Array||(globalThis.Uint16Array=Array),globalThis.Uint8Array||(globalThis.Uint8Array=Array),globalThis.Int32Array||(globalThis.Int32Array=Array),t.ENV=void 0,t.RENDERER_TYPE=void 0,t.BUFFER_BITS=void 0,t.BLEND_MODES=void 0,t.DRAW_MODES=void 0,t.FORMATS=void 0,t.TARGETS=void 0,t.TYPES=void 0,t.SAMPLER_TYPES=void 0,t.SCALE_MODES=void 0,t.WRAP_MODES=void 0,t.MIPMAP_MODES=void 0,t.ALPHA_MODES=void 0,t.CLEAR_MODES=void 0,t.GC_MODES=void 0,t.PRECISION=void 0,t.MASK_TYPES=void 0,t.COLOR_MASK_BITS=void 0,t.MSAA_QUALITY=void 0,t.BUFFER_TYPE=void 0,function(t){t[t.WEBGL_LEGACY=0]=\"WEBGL_LEGACY\",t[t.WEBGL=1]=\"WEBGL\",t[t.WEBGL2=2]=\"WEBGL2\"}(t.ENV||(t.ENV={})),function(t){t[t.UNKNOWN=0]=\"UNKNOWN\",t[t.WEBGL=1]=\"WEBGL\",t[t.CANVAS=2]=\"CANVAS\"}(t.RENDERER_TYPE||(t.RENDERER_TYPE={})),function(t){t[t.COLOR=16384]=\"COLOR\",t[t.DEPTH=256]=\"DEPTH\",t[t.STENCIL=1024]=\"STENCIL\"}(t.BUFFER_BITS||(t.BUFFER_BITS={})),function(t){t[t.NORMAL=0]=\"NORMAL\",t[t.ADD=1]=\"ADD\",t[t.MULTIPLY=2]=\"MULTIPLY\",t[t.SCREEN=3]=\"SCREEN\",t[t.OVERLAY=4]=\"OVERLAY\",t[t.DARKEN=5]=\"DARKEN\",t[t.LIGHTEN=6]=\"LIGHTEN\",t[t.COLOR_DODGE=7]=\"COLOR_DODGE\",t[t.COLOR_BURN=8]=\"COLOR_BURN\",t[t.HARD_LIGHT=9]=\"HARD_LIGHT\",t[t.SOFT_LIGHT=10]=\"SOFT_LIGHT\",t[t.DIFFERENCE=11]=\"DIFFERENCE\",t[t.EXCLUSION=12]=\"EXCLUSION\",t[t.HUE=13]=\"HUE\",t[t.SATURATION=14]=\"SATURATION\",t[t.COLOR=15]=\"COLOR\",t[t.LUMINOSITY=16]=\"LUMINOSITY\",t[t.NORMAL_NPM=17]=\"NORMAL_NPM\",t[t.ADD_NPM=18]=\"ADD_NPM\",t[t.SCREEN_NPM=19]=\"SCREEN_NPM\",t[t.NONE=20]=\"NONE\",t[t.SRC_OVER=0]=\"SRC_OVER\",t[t.SRC_IN=21]=\"SRC_IN\",t[t.SRC_OUT=22]=\"SRC_OUT\",t[t.SRC_ATOP=23]=\"SRC_ATOP\",t[t.DST_OVER=24]=\"DST_OVER\",t[t.DST_IN=25]=\"DST_IN\",t[t.DST_OUT=26]=\"DST_OUT\",t[t.DST_ATOP=27]=\"DST_ATOP\",t[t.ERASE=26]=\"ERASE\",t[t.SUBTRACT=28]=\"SUBTRACT\",t[t.XOR=29]=\"XOR\"}(t.BLEND_MODES||(t.BLEND_MODES={})),function(t){t[t.POINTS=0]=\"POINTS\",t[t.LINES=1]=\"LINES\",t[t.LINE_LOOP=2]=\"LINE_LOOP\",t[t.LINE_STRIP=3]=\"LINE_STRIP\",t[t.TRIANGLES=4]=\"TRIANGLES\",t[t.TRIANGLE_STRIP=5]=\"TRIANGLE_STRIP\",t[t.TRIANGLE_FAN=6]=\"TRIANGLE_FAN\"}(t.DRAW_MODES||(t.DRAW_MODES={})),function(t){t[t.RGBA=6408]=\"RGBA\",t[t.RGB=6407]=\"RGB\",t[t.RG=33319]=\"RG\",t[t.RED=6403]=\"RED\",t[t.RGBA_INTEGER=36249]=\"RGBA_INTEGER\",t[t.RGB_INTEGER=36248]=\"RGB_INTEGER\",t[t.RG_INTEGER=33320]=\"RG_INTEGER\",t[t.RED_INTEGER=36244]=\"RED_INTEGER\",t[t.ALPHA=6406]=\"ALPHA\",t[t.LUMINANCE=6409]=\"LUMINANCE\",t[t.LUMINANCE_ALPHA=6410]=\"LUMINANCE_ALPHA\",t[t.DEPTH_COMPONENT=6402]=\"DEPTH_COMPONENT\",t[t.DEPTH_STENCIL=34041]=\"DEPTH_STENCIL\"}(t.FORMATS||(t.FORMATS={})),function(t){t[t.TEXTURE_2D=3553]=\"TEXTURE_2D\",t[t.TEXTURE_CUBE_MAP=34067]=\"TEXTURE_CUBE_MAP\",t[t.TEXTURE_2D_ARRAY=35866]=\"TEXTURE_2D_ARRAY\",t[t.TEXTURE_CUBE_MAP_POSITIVE_X=34069]=\"TEXTURE_CUBE_MAP_POSITIVE_X\",t[t.TEXTURE_CUBE_MAP_NEGATIVE_X=34070]=\"TEXTURE_CUBE_MAP_NEGATIVE_X\",t[t.TEXTURE_CUBE_MAP_POSITIVE_Y=34071]=\"TEXTURE_CUBE_MAP_POSITIVE_Y\",t[t.TEXTURE_CUBE_MAP_NEGATIVE_Y=34072]=\"TEXTURE_CUBE_MAP_NEGATIVE_Y\",t[t.TEXTURE_CUBE_MAP_POSITIVE_Z=34073]=\"TEXTURE_CUBE_MAP_POSITIVE_Z\",t[t.TEXTURE_CUBE_MAP_NEGATIVE_Z=34074]=\"TEXTURE_CUBE_MAP_NEGATIVE_Z\"}(t.TARGETS||(t.TARGETS={})),function(t){t[t.UNSIGNED_BYTE=5121]=\"UNSIGNED_BYTE\",t[t.UNSIGNED_SHORT=5123]=\"UNSIGNED_SHORT\",t[t.UNSIGNED_SHORT_5_6_5=33635]=\"UNSIGNED_SHORT_5_6_5\",t[t.UNSIGNED_SHORT_4_4_4_4=32819]=\"UNSIGNED_SHORT_4_4_4_4\",t[t.UNSIGNED_SHORT_5_5_5_1=32820]=\"UNSIGNED_SHORT_5_5_5_1\",t[t.UNSIGNED_INT=5125]=\"UNSIGNED_INT\",t[t.UNSIGNED_INT_10F_11F_11F_REV=35899]=\"UNSIGNED_INT_10F_11F_11F_REV\",t[t.UNSIGNED_INT_2_10_10_10_REV=33640]=\"UNSIGNED_INT_2_10_10_10_REV\",t[t.UNSIGNED_INT_24_8=34042]=\"UNSIGNED_INT_24_8\",t[t.UNSIGNED_INT_5_9_9_9_REV=35902]=\"UNSIGNED_INT_5_9_9_9_REV\",t[t.BYTE=5120]=\"BYTE\",t[t.SHORT=5122]=\"SHORT\",t[t.INT=5124]=\"INT\",t[t.FLOAT=5126]=\"FLOAT\",t[t.FLOAT_32_UNSIGNED_INT_24_8_REV=36269]=\"FLOAT_32_UNSIGNED_INT_24_8_REV\",t[t.HALF_FLOAT=36193]=\"HALF_FLOAT\"}(t.TYPES||(t.TYPES={})),function(t){t[t.FLOAT=0]=\"FLOAT\",t[t.INT=1]=\"INT\",t[t.UINT=2]=\"UINT\"}(t.SAMPLER_TYPES||(t.SAMPLER_TYPES={})),function(t){t[t.NEAREST=0]=\"NEAREST\",t[t.LINEAR=1]=\"LINEAR\"}(t.SCALE_MODES||(t.SCALE_MODES={})),function(t){t[t.CLAMP=33071]=\"CLAMP\",t[t.REPEAT=10497]=\"REPEAT\",t[t.MIRRORED_REPEAT=33648]=\"MIRRORED_REPEAT\"}(t.WRAP_MODES||(t.WRAP_MODES={})),function(t){t[t.OFF=0]=\"OFF\",t[t.POW2=1]=\"POW2\",t[t.ON=2]=\"ON\",t[t.ON_MANUAL=3]=\"ON_MANUAL\"}(t.MIPMAP_MODES||(t.MIPMAP_MODES={})),function(t){t[t.NPM=0]=\"NPM\",t[t.UNPACK=1]=\"UNPACK\",t[t.PMA=2]=\"PMA\",t[t.NO_PREMULTIPLIED_ALPHA=0]=\"NO_PREMULTIPLIED_ALPHA\",t[t.PREMULTIPLY_ON_UPLOAD=1]=\"PREMULTIPLY_ON_UPLOAD\",t[t.PREMULTIPLY_ALPHA=2]=\"PREMULTIPLY_ALPHA\",t[t.PREMULTIPLIED_ALPHA=2]=\"PREMULTIPLIED_ALPHA\"}(t.ALPHA_MODES||(t.ALPHA_MODES={})),function(t){t[t.NO=0]=\"NO\",t[t.YES=1]=\"YES\",t[t.AUTO=2]=\"AUTO\",t[t.BLEND=0]=\"BLEND\",t[t.CLEAR=1]=\"CLEAR\",t[t.BLIT=2]=\"BLIT\"}(t.CLEAR_MODES||(t.CLEAR_MODES={})),function(t){t[t.AUTO=0]=\"AUTO\",t[t.MANUAL=1]=\"MANUAL\"}(t.GC_MODES||(t.GC_MODES={})),function(t){t.LOW=\"lowp\",t.MEDIUM=\"mediump\",t.HIGH=\"highp\"}(t.PRECISION||(t.PRECISION={})),function(t){t[t.NONE=0]=\"NONE\",t[t.SCISSOR=1]=\"SCISSOR\",t[t.STENCIL=2]=\"STENCIL\",t[t.SPRITE=3]=\"SPRITE\",t[t.COLOR=4]=\"COLOR\"}(t.MASK_TYPES||(t.MASK_TYPES={})),function(t){t[t.RED=1]=\"RED\",t[t.GREEN=2]=\"GREEN\",t[t.BLUE=4]=\"BLUE\",t[t.ALPHA=8]=\"ALPHA\"}(t.COLOR_MASK_BITS||(t.COLOR_MASK_BITS={})),function(t){t[t.NONE=0]=\"NONE\",t[t.LOW=2]=\"LOW\",t[t.MEDIUM=4]=\"MEDIUM\",t[t.HIGH=8]=\"HIGH\"}(t.MSAA_QUALITY||(t.MSAA_QUALITY={})),function(t){t[t.ELEMENT_ARRAY_BUFFER=34963]=\"ELEMENT_ARRAY_BUFFER\",t[t.ARRAY_BUFFER=34962]=\"ARRAY_BUFFER\",t[t.UNIFORM_BUFFER=35345]=\"UNIFORM_BUFFER\"}(t.BUFFER_TYPE||(t.BUFFER_TYPE={}));var E={createCanvas:function(t,e){var r=document.createElement(\"canvas\");return r.width=t,r.height=e,r},getWebGLRenderingContext:function(){return WebGLRenderingContext},getNavigator:function(){return navigator},getBaseUrl:function(){var t;return null!==(t=document.baseURI)&&void 0!==t?t:window.location.href},fetch:function(t,e){return fetch(t,e)}},b=/iPhone/i,x=/iPod/i,A=/iPad/i,S=/\\biOS-universal(?:.+)Mac\\b/i,R=/\\bAndroid(?:.+)Mobile\\b/i,O=/Android/i,M=/(?:SD4930UR|\\bSilk(?:.+)Mobile\\b)/i,P=/Silk/i,I=/Windows Phone/i,D=/\\bWindows(?:.+)ARM\\b/i,w=/BlackBerry/i,C=/BB10/i,N=/Opera Mini/i,F=/\\b(CriOS|Chrome)(?:.+)Mobile/i,L=/Mobile(?:.+)Firefox\\b/i,B=function(t){return void 0!==t&&\"MacIntel\"===t.platform&&\"number\"==typeof t.maxTouchPoints&&t.maxTouchPoints>1&&\"undefined\"==typeof MSStream},G=function(t){var e={userAgent:\"\",platform:\"\",maxTouchPoints:0};t||\"undefined\"==typeof navigator?\"string\"==typeof t?e.userAgent=t:t&&t.userAgent&&(e={userAgent:t.userAgent,platform:t.platform,maxTouchPoints:t.maxTouchPoints||0}):e={userAgent:navigator.userAgent,platform:navigator.platform,maxTouchPoints:navigator.maxTouchPoints||0};var r=e.userAgent,i=r.split(\"[FBAN\");void 0!==i[1]&&(r=i[0]),void 0!==(i=r.split(\"Twitter\"))[1]&&(r=i[0]);var n=function(t){return function(e){return e.test(t)}}(r),o={apple:{phone:n(b)&&!n(I),ipod:n(x),tablet:!n(b)&&(n(A)||B(e))&&!n(I),universal:n(S),device:(n(b)||n(x)||n(A)||n(S)||B(e))&&!n(I)},amazon:{phone:n(M),tablet:!n(M)&&n(P),device:n(M)||n(P)},android:{phone:!n(I)&&n(M)||!n(I)&&n(R),tablet:!n(I)&&!n(M)&&!n(R)&&(n(P)||n(O)),device:!n(I)&&(n(M)||n(P)||n(R)||n(O))||n(/\\bokhttp\\b/i)},windows:{phone:n(I),tablet:n(D),device:n(I)||n(D)},other:{blackberry:n(w),blackberry10:n(C),opera:n(N),firefox:n(L),chrome:n(F),device:n(w)||n(C)||n(N)||n(L)||n(F)},any:!1,phone:!1,tablet:!1};return o.any=o.apple.device||o.android.device||o.windows.device||o.other.device,o.phone=o.apple.phone||o.android.phone||o.windows.phone,o.tablet=o.apple.tablet||o.android.tablet||o.windows.tablet,o}(globalThis.navigator),U={ADAPTER:E,MIPMAP_TEXTURES:t.MIPMAP_MODES.POW2,ANISOTROPIC_LEVEL:0,RESOLUTION:1,FILTER_RESOLUTION:1,FILTER_MULTISAMPLE:t.MSAA_QUALITY.NONE,SPRITE_MAX_TEXTURES:function(t){var e,r=!0;(G.tablet||G.phone)&&(G.apple.device&&(e=navigator.userAgent.match(/OS (\\d+)_(\\d+)?/))&&parseInt(e[1],10)<11&&(r=!1),G.android.device&&(e=navigator.userAgent.match(/Android\\s([0-9.]*)/))&&parseInt(e[1],10)<7&&(r=!1));return r?32:4}(),SPRITE_BATCH_SIZE:4096,RENDER_OPTIONS:{view:null,width:800,height:600,autoDensity:!1,backgroundColor:0,backgroundAlpha:1,useContextAlpha:!0,clearBeforeRender:!0,antialias:!1,preserveDrawingBuffer:!1},GC_MODE:t.GC_MODES.AUTO,GC_MAX_IDLE:3600,GC_MAX_CHECK_COUNT:600,WRAP_MODE:t.WRAP_MODES.CLAMP,SCALE_MODE:t.SCALE_MODES.LINEAR,PRECISION_VERTEX:t.PRECISION.HIGH,PRECISION_FRAGMENT:G.apple.device?t.PRECISION.HIGH:t.PRECISION.MEDIUM,CAN_UPLOAD_SAME_BUFFER:!G.apple.device,CREATE_IMAGE_BITMAP:!1,ROUND_PIXELS:!1},k=\"undefined\"!=typeof globalThis?globalThis:\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:{};function X(t,e,r){return t(r={path:e,exports:{},require:function(t,e){return function(){throw new Error(\"Dynamic requires are not currently supported by @rollup/plugin-commonjs\")}(null==e&&r.path)}},r.exports),r.exports}var j=X((function(t){var e=Object.prototype.hasOwnProperty,r=\"~\";function i(){}function n(t,e,r){this.fn=t,this.context=e,this.once=r||!1}function o(t,e,i,o,s){if(\"function\"!=typeof i)throw new TypeError(\"The listener must be a function\");var a=new n(i,o||t,s),h=r?r+e:e;return t._events[h]?t._events[h].fn?t._events[h]=[t._events[h],a]:t._events[h].push(a):(t._events[h]=a,t._eventsCount++),t}function s(t,e){0==--t._eventsCount?t._events=new i:delete t._events[e]}function a(){this._events=new i,this._eventsCount=0}Object.create&&(i.prototype=Object.create(null),(new i).__proto__||(r=!1)),a.prototype.eventNames=function(){var t,i,n=[];if(0===this._eventsCount)return n;for(i in t=this._events)e.call(t,i)&&n.push(r?i.slice(1):i);return Object.getOwnPropertySymbols?n.concat(Object.getOwnPropertySymbols(t)):n},a.prototype.listeners=function(t){var e=r?r+t:t,i=this._events[e];if(!i)return[];if(i.fn)return[i.fn];for(var n=0,o=i.length,s=new Array(o);n<o;n++)s[n]=i[n].fn;return s},a.prototype.listenerCount=function(t){var e=r?r+t:t,i=this._events[e];return i?i.fn?1:i.length:0},a.prototype.emit=function(t,e,i,n,o,s){var a=arguments,h=r?r+t:t;if(!this._events[h])return!1;var u,l,c=this._events[h],d=arguments.length;if(c.fn){switch(c.once&&this.removeListener(t,c.fn,void 0,!0),d){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,e),!0;case 3:return c.fn.call(c.context,e,i),!0;case 4:return c.fn.call(c.context,e,i,n),!0;case 5:return c.fn.call(c.context,e,i,n,o),!0;case 6:return c.fn.call(c.context,e,i,n,o,s),!0}for(l=1,u=new Array(d-1);l<d;l++)u[l-1]=a[l];c.fn.apply(c.context,u)}else{var f,p=c.length;for(l=0;l<p;l++)switch(c[l].once&&this.removeListener(t,c[l].fn,void 0,!0),d){case 1:c[l].fn.call(c[l].context);break;case 2:c[l].fn.call(c[l].context,e);break;case 3:c[l].fn.call(c[l].context,e,i);break;case 4:c[l].fn.call(c[l].context,e,i,n);break;default:if(!u)for(f=1,u=new Array(d-1);f<d;f++)u[f-1]=a[f];c[l].fn.apply(c[l].context,u)}}return!0},a.prototype.on=function(t,e,r){return o(this,t,e,r,!1)},a.prototype.once=function(t,e,r){return o(this,t,e,r,!0)},a.prototype.removeListener=function(t,e,i,n){var o=r?r+t:t;if(!this._events[o])return this;if(!e)return s(this,o),this;var a=this._events[o];if(a.fn)a.fn!==e||n&&!a.once||i&&a.context!==i||s(this,o);else{for(var h=0,u=[],l=a.length;h<l;h++)(a[h].fn!==e||n&&!a[h].once||i&&a[h].context!==i)&&u.push(a[h]);u.length?this._events[o]=1===u.length?u[0]:u:s(this,o)}return this},a.prototype.removeAllListeners=function(t){var e;return t?(e=r?r+t:t,this._events[e]&&s(this,e)):(this._events=new i,this._eventsCount=0),this},a.prototype.off=a.prototype.removeListener,a.prototype.addListener=a.prototype.on,a.prefixed=r,a.EventEmitter=a,t.exports=a})),H=V,Y=V;function V(t,e,r){r=r||2;var i,n,o,s,a,h,u,l=e&&e.length,c=l?e[0]*r:t.length,d=z(t,0,c,r,!0),f=[];if(!d||d.next===d.prev)return f;if(l&&(d=function(t,e,r,i){var n,o,s,a=[];for(n=0,o=e.length;n<o;n++)(s=z(t,e[n]*i,n<o-1?e[n+1]*i:t.length,i,!1))===s.next&&(s.steiner=!0),a.push(it(s));for(a.sort($),n=0;n<a.length;n++)r=tt(a[n],r);return r}(t,e,d,r)),t.length>80*r){i=o=t[0],n=s=t[1];for(var p=r;p<c;p+=r)(a=t[p])<i&&(i=a),(h=t[p+1])<n&&(n=h),a>o&&(o=a),h>s&&(s=h);u=0!==(u=Math.max(o-i,s-n))?32767/u:0}return q(d,f,r,i,n,u,0),f}function z(t,e,r,i,n){var o,s;if(n===vt(t,e,r,i)>0)for(o=e;o<r;o+=i)s=ft(o,t[o],t[o+1],s);else for(o=r-i;o>=e;o-=i)s=ft(o,t[o],t[o+1],s);return s&&at(s,s.next)&&(pt(s),s=s.next),s}function W(t,e){if(!t)return t;e||(e=t);var r,i=t;do{if(r=!1,i.steiner||!at(i,i.next)&&0!==st(i.prev,i,i.next))i=i.next;else{if(pt(i),(i=e=i.prev)===i.next)break;r=!0}}while(r||i!==e);return e}function q(t,e,r,i,n,o,s){if(t){!s&&o&&function(t,e,r,i){var n=t;do{0===n.z&&(n.z=rt(n.x,n.y,e,r,i)),n.prevZ=n.prev,n.nextZ=n.next,n=n.next}while(n!==t);n.prevZ.nextZ=null,n.prevZ=null,function(t){var e,r,i,n,o,s,a,h,u=1;do{for(r=t,t=null,o=null,s=0;r;){for(s++,i=r,a=0,e=0;e<u&&(a++,i=i.nextZ);e++);for(h=u;a>0||h>0&&i;)0!==a&&(0===h||!i||r.z<=i.z)?(n=r,r=r.nextZ,a--):(n=i,i=i.nextZ,h--),o?o.nextZ=n:t=n,n.prevZ=o,o=n;r=i}o.nextZ=null,u*=2}while(s>1)}(n)}(t,i,n,o);for(var a,h,u=t;t.prev!==t.next;)if(a=t.prev,h=t.next,o?Z(t,i,n,o):K(t))e.push(a.i/r|0),e.push(t.i/r|0),e.push(h.i/r|0),pt(t),t=h.next,u=h.next;else if((t=h)===u){s?1===s?q(t=Q(W(t),e,r),e,r,i,n,o,2):2===s&&J(t,e,r,i,n,o):q(W(t),e,r,i,n,o,1);break}}}function K(t){var e=t.prev,r=t,i=t.next;if(st(e,r,i)>=0)return!1;for(var n=e.x,o=r.x,s=i.x,a=e.y,h=r.y,u=i.y,l=n<o?n<s?n:s:o<s?o:s,c=a<h?a<u?a:u:h<u?h:u,d=n>o?n>s?n:s:o>s?o:s,f=a>h?a>u?a:u:h>u?h:u,p=i.next;p!==e;){if(p.x>=l&&p.x<=d&&p.y>=c&&p.y<=f&&nt(n,a,o,h,s,u,p.x,p.y)&&st(p.prev,p,p.next)>=0)return!1;p=p.next}return!0}function Z(t,e,r,i){var n=t.prev,o=t,s=t.next;if(st(n,o,s)>=0)return!1;for(var a=n.x,h=o.x,u=s.x,l=n.y,c=o.y,d=s.y,f=a<h?a<u?a:u:h<u?h:u,p=l<c?l<d?l:d:c<d?c:d,_=a>h?a>u?a:u:h>u?h:u,v=l>c?l>d?l:d:c>d?c:d,m=rt(f,p,e,r,i),y=rt(_,v,e,r,i),g=t.prevZ,T=t.nextZ;g&&g.z>=m&&T&&T.z<=y;){if(g.x>=f&&g.x<=_&&g.y>=p&&g.y<=v&&g!==n&&g!==s&&nt(a,l,h,c,u,d,g.x,g.y)&&st(g.prev,g,g.next)>=0)return!1;if(g=g.prevZ,T.x>=f&&T.x<=_&&T.y>=p&&T.y<=v&&T!==n&&T!==s&&nt(a,l,h,c,u,d,T.x,T.y)&&st(T.prev,T,T.next)>=0)return!1;T=T.nextZ}for(;g&&g.z>=m;){if(g.x>=f&&g.x<=_&&g.y>=p&&g.y<=v&&g!==n&&g!==s&&nt(a,l,h,c,u,d,g.x,g.y)&&st(g.prev,g,g.next)>=0)return!1;g=g.prevZ}for(;T&&T.z<=y;){if(T.x>=f&&T.x<=_&&T.y>=p&&T.y<=v&&T!==n&&T!==s&&nt(a,l,h,c,u,d,T.x,T.y)&&st(T.prev,T,T.next)>=0)return!1;T=T.nextZ}return!0}function Q(t,e,r){var i=t;do{var n=i.prev,o=i.next.next;!at(n,o)&&ht(n,i,i.next,o)&&ct(n,o)&&ct(o,n)&&(e.push(n.i/r|0),e.push(i.i/r|0),e.push(o.i/r|0),pt(i),pt(i.next),i=t=o),i=i.next}while(i!==t);return W(i)}function J(t,e,r,i,n,o){var s=t;do{for(var a=s.next.next;a!==s.prev;){if(s.i!==a.i&&ot(s,a)){var h=dt(s,a);return s=W(s,s.next),h=W(h,h.next),q(s,e,r,i,n,o,0),void q(h,e,r,i,n,o,0)}a=a.next}s=s.next}while(s!==t)}function $(t,e){return t.x-e.x}function tt(t,e){var r=function(t,e){var r,i=e,n=t.x,o=t.y,s=-1/0;do{if(o<=i.y&&o>=i.next.y&&i.next.y!==i.y){var a=i.x+(o-i.y)*(i.next.x-i.x)/(i.next.y-i.y);if(a<=n&&a>s&&(s=a,r=i.x<i.next.x?i:i.next,a===n))return r}i=i.next}while(i!==e);if(!r)return null;var h,u=r,l=r.x,c=r.y,d=1/0;i=r;do{n>=i.x&&i.x>=l&&n!==i.x&&nt(o<c?n:s,o,l,c,o<c?s:n,o,i.x,i.y)&&(h=Math.abs(o-i.y)/(n-i.x),ct(i,t)&&(h<d||h===d&&(i.x>r.x||i.x===r.x&&et(r,i)))&&(r=i,d=h)),i=i.next}while(i!==u);return r}(t,e);if(!r)return e;var i=dt(r,t);return W(i,i.next),W(r,r.next)}function et(t,e){return st(t.prev,t,e.prev)<0&&st(e.next,t,t.next)<0}function rt(t,e,r,i,n){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=(t-r)*n|0)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=(e-i)*n|0)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function it(t){var e=t,r=t;do{(e.x<r.x||e.x===r.x&&e.y<r.y)&&(r=e),e=e.next}while(e!==t);return r}function nt(t,e,r,i,n,o,s,a){return(n-s)*(e-a)>=(t-s)*(o-a)&&(t-s)*(i-a)>=(r-s)*(e-a)&&(r-s)*(o-a)>=(n-s)*(i-a)}function ot(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){var r=t;do{if(r.i!==t.i&&r.next.i!==t.i&&r.i!==e.i&&r.next.i!==e.i&&ht(r,r.next,t,e))return!0;r=r.next}while(r!==t);return!1}(t,e)&&(ct(t,e)&&ct(e,t)&&function(t,e){var r=t,i=!1,n=(t.x+e.x)/2,o=(t.y+e.y)/2;do{r.y>o!=r.next.y>o&&r.next.y!==r.y&&n<(r.next.x-r.x)*(o-r.y)/(r.next.y-r.y)+r.x&&(i=!i),r=r.next}while(r!==t);return i}(t,e)&&(st(t.prev,t,e.prev)||st(t,e.prev,e))||at(t,e)&&st(t.prev,t,t.next)>0&&st(e.prev,e,e.next)>0)}function st(t,e,r){return(e.y-t.y)*(r.x-e.x)-(e.x-t.x)*(r.y-e.y)}function at(t,e){return t.x===e.x&&t.y===e.y}function ht(t,e,r,i){var n=lt(st(t,e,r)),o=lt(st(t,e,i)),s=lt(st(r,i,t)),a=lt(st(r,i,e));return n!==o&&s!==a||(!(0!==n||!ut(t,r,e))||(!(0!==o||!ut(t,i,e))||(!(0!==s||!ut(r,t,i))||!(0!==a||!ut(r,e,i)))))}function ut(t,e,r){return e.x<=Math.max(t.x,r.x)&&e.x>=Math.min(t.x,r.x)&&e.y<=Math.max(t.y,r.y)&&e.y>=Math.min(t.y,r.y)}function lt(t){return t>0?1:t<0?-1:0}function ct(t,e){return st(t.prev,t,t.next)<0?st(t,e,t.next)>=0&&st(t,t.prev,e)>=0:st(t,e,t.prev)<0||st(t,t.next,e)<0}function dt(t,e){var r=new _t(t.i,t.x,t.y),i=new _t(e.i,e.x,e.y),n=t.next,o=e.prev;return t.next=e,e.prev=t,r.next=n,n.prev=r,i.next=r,r.prev=i,o.next=i,i.prev=o,i}function ft(t,e,r,i){var n=new _t(t,e,r);return i?(n.next=i.next,n.prev=i,i.next.prev=n,i.next=n):(n.prev=n,n.next=n),n}function pt(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function _t(t,e,r){this.i=t,this.x=e,this.y=r,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}function vt(t,e,r,i){for(var n=0,o=e,s=r-i;o<r;o+=i)n+=(t[s]-t[o])*(t[o+1]+t[s+1]),s=o;return n}V.deviation=function(t,e,r,i){var n=e&&e.length,o=n?e[0]*r:t.length,s=Math.abs(vt(t,0,o,r));if(n)for(var a=0,h=e.length;a<h;a++){var u=e[a]*r,l=a<h-1?e[a+1]*r:t.length;s-=Math.abs(vt(t,u,l,r))}var c=0;for(a=0;a<i.length;a+=3){var d=i[a]*r,f=i[a+1]*r,p=i[a+2]*r;c+=Math.abs((t[d]-t[p])*(t[f+1]-t[d+1])-(t[d]-t[f])*(t[p+1]-t[d+1]))}return 0===s&&0===c?0:Math.abs((c-s)/s)},V.flatten=function(t){for(var e=t[0][0].length,r={vertices:[],holes:[],dimensions:e},i=0,n=0;n<t.length;n++){for(var o=0;o<t[n].length;o++)for(var s=0;s<e;s++)r.vertices.push(t[n][o][s]);n>0&&(i+=t[n-1].length,r.holes.push(i))}return r},H.default=Y;var mt=X((function(t,e){!function(r){var i=e&&!e.nodeType&&e,n=t&&!t.nodeType&&t,o=\"object\"==typeof k&&k;o.global!==o&&o.window!==o&&o.self!==o||(r=o);var s,a,h=2147483647,u=36,l=/^xn--/,c=/[^\\x20-\\x7E]/,d=/[\\x2E\\u3002\\uFF0E\\uFF61]/g,f={overflow:\"Overflow: input needs wider integers to process\",\"not-basic\":\"Illegal input >= 0x80 (not a basic code point)\",\"invalid-input\":\"Invalid input\"},p=Math.floor,_=String.fromCharCode;function v(t){throw RangeError(f[t])}function m(t,e){for(var r=t.length,i=[];r--;)i[r]=e(t[r]);return i}function y(t,e){var r=t.split(\"@\"),i=\"\";return r.length>1&&(i=r[0]+\"@\",t=r[1]),i+m((t=t.replace(d,\".\")).split(\".\"),e).join(\".\")}function g(t){for(var e,r,i=[],n=0,o=t.length;n<o;)(e=t.charCodeAt(n++))>=55296&&e<=56319&&n<o?56320==(64512&(r=t.charCodeAt(n++)))?i.push(((1023&e)<<10)+(1023&r)+65536):(i.push(e),n--):i.push(e);return i}function T(t){return m(t,(function(t){var e=\"\";return t>65535&&(e+=_((t-=65536)>>>10&1023|55296),t=56320|1023&t),e+=_(t)})).join(\"\")}function E(t,e){return t+22+75*(t<26)-((0!=e)<<5)}function b(t,e,r){var i=0;for(t=r?p(t/700):t>>1,t+=p(t/e);t>455;i+=u)t=p(t/35);return p(i+36*t/(t+38))}function x(t){var e,r,i,n,o,s,a,l,c,d,f,_=[],m=t.length,y=0,g=128,E=72;for((r=t.lastIndexOf(\"-\"))<0&&(r=0),i=0;i<r;++i)t.charCodeAt(i)>=128&&v(\"not-basic\"),_.push(t.charCodeAt(i));for(n=r>0?r+1:0;n<m;){for(o=y,s=1,a=u;n>=m&&v(\"invalid-input\"),((l=(f=t.charCodeAt(n++))-48<10?f-22:f-65<26?f-65:f-97<26?f-97:u)>=u||l>p((h-y)/s))&&v(\"overflow\"),y+=l*s,!(l<(c=a<=E?1:a>=E+26?26:a-E));a+=u)s>p(h/(d=u-c))&&v(\"overflow\"),s*=d;E=b(y-o,e=_.length+1,0==o),p(y/e)>h-g&&v(\"overflow\"),g+=p(y/e),y%=e,_.splice(y++,0,g)}return T(_)}function A(t){var e,r,i,n,o,s,a,l,c,d,f,m,y,T,x,A=[];for(m=(t=g(t)).length,e=128,r=0,o=72,s=0;s<m;++s)(f=t[s])<128&&A.push(_(f));for(i=n=A.length,n&&A.push(\"-\");i<m;){for(a=h,s=0;s<m;++s)(f=t[s])>=e&&f<a&&(a=f);for(a-e>p((h-r)/(y=i+1))&&v(\"overflow\"),r+=(a-e)*y,e=a,s=0;s<m;++s)if((f=t[s])<e&&++r>h&&v(\"overflow\"),f==e){for(l=r,c=u;!(l<(d=c<=o?1:c>=o+26?26:c-o));c+=u)x=l-d,T=u-d,A.push(_(E(d+x%T,0))),l=p(x/T);A.push(_(E(l,0))),o=b(r,y,i==n),r=0,++i}++r,++e}return A.join(\"\")}if(s={version:\"1.3.2\",ucs2:{decode:g,encode:T},decode:x,encode:A,toASCII:function(t){return y(t,(function(t){return c.test(t)?\"xn--\"+A(t):t}))},toUnicode:function(t){return y(t,(function(t){return l.test(t)?x(t.slice(4).toLowerCase()):t}))}},i&&n)if(t.exports==i)n.exports=s;else for(a in s)s.hasOwnProperty(a)&&(i[a]=s[a]);else r.punycode=s}(k)})),yt=function(t){return\"string\"==typeof t},gt=function(t){return\"object\"==typeof t&&null!==t},Tt=function(t){return null===t},Et=function(t){return null==t};function bt(t,e){return Object.prototype.hasOwnProperty.call(t,e)}var xt=function(t,e,r,i){e=e||\"&\",r=r||\"=\";var n={};if(\"string\"!=typeof t||0===t.length)return n;var o=/\\+/g;t=t.split(e);var s=1e3;i&&\"number\"==typeof i.maxKeys&&(s=i.maxKeys);var a=t.length;s>0&&a>s&&(a=s);for(var h=0;h<a;++h){var u,l,c,d,f=t[h].replace(o,\"%20\"),p=f.indexOf(r);p>=0?(u=f.substr(0,p),l=f.substr(p+1)):(u=f,l=\"\"),c=decodeURIComponent(u),d=decodeURIComponent(l),bt(n,c)?Array.isArray(n[c])?n[c].push(d):n[c]=[n[c],d]:n[c]=d}return n},At=function(t){switch(typeof t){case\"string\":return t;case\"boolean\":return t?\"true\":\"false\";case\"number\":return isFinite(t)?t:\"\";default:return\"\"}},St=function(t,e,r,i){return e=e||\"&\",r=r||\"=\",null===t&&(t=void 0),\"object\"==typeof t?Object.keys(t).map((function(i){var n=encodeURIComponent(At(i))+r;return Array.isArray(t[i])?t[i].map((function(t){return n+encodeURIComponent(At(t))})).join(e):n+encodeURIComponent(At(t[i]))})).join(e):i?encodeURIComponent(At(i))+r+encodeURIComponent(At(t)):\"\"},Rt=X((function(t,e){e.decode=e.parse=xt,e.encode=e.stringify=St})),Ot=Ht,Mt=function(t,e){return Ht(t,!1,!0).resolve(e)},Pt=function(t){yt(t)&&(t=Ht(t));if(!(t instanceof It))return It.prototype.format.call(t);return t.format()};function It(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}var Dt=/^([a-z0-9.+-]+:)/i,wt=/:[0-9]*$/,Ct=/^(\\/\\/?(?!\\/)[^\\?\\s]*)(\\?[^\\s]*)?$/,Nt=[\"{\",\"}\",\"|\",\"\\\\\",\"^\",\"`\"].concat([\"<\",\">\",'\"',\"`\",\" \",\"\\r\",\"\\n\",\"\\t\"]),Ft=[\"'\"].concat(Nt),Lt=[\"%\",\"/\",\"?\",\";\",\"#\"].concat(Ft),Bt=[\"/\",\"?\",\"#\"],Gt=/^[+a-z0-9A-Z_-]{0,63}$/,Ut=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,kt={javascript:!0,\"javascript:\":!0},Xt={javascript:!0,\"javascript:\":!0},jt={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,\"http:\":!0,\"https:\":!0,\"ftp:\":!0,\"gopher:\":!0,\"file:\":!0};function Ht(t,e,r){if(t&&gt(t)&&t instanceof It)return t;var i=new It;return i.parse(t,e,r),i}It.prototype.parse=function(t,e,r){if(!yt(t))throw new TypeError(\"Parameter 'url' must be a string, not \"+typeof t);var i=t.indexOf(\"?\"),n=-1!==i&&i<t.indexOf(\"#\")?\"?\":\"#\",o=t.split(n);o[0]=o[0].replace(/\\\\/g,\"/\");var s=t=o.join(n);if(s=s.trim(),!r&&1===t.split(\"#\").length){var a=Ct.exec(s);if(a)return this.path=s,this.href=s,this.pathname=a[1],a[2]?(this.search=a[2],this.query=e?Rt.parse(this.search.substr(1)):this.search.substr(1)):e&&(this.search=\"\",this.query={}),this}var h=Dt.exec(s);if(h){var u=(h=h[0]).toLowerCase();this.protocol=u,s=s.substr(h.length)}if(r||h||s.match(/^\\/\\/[^@\\/]+@[^@\\/]+/)){var l=\"//\"===s.substr(0,2);!l||h&&Xt[h]||(s=s.substr(2),this.slashes=!0)}if(!Xt[h]&&(l||h&&!jt[h])){for(var c,d,f=-1,p=0;p<Bt.length;p++){-1!==(_=s.indexOf(Bt[p]))&&(-1===f||_<f)&&(f=_)}-1!==(d=-1===f?s.lastIndexOf(\"@\"):s.lastIndexOf(\"@\",f))&&(c=s.slice(0,d),s=s.slice(d+1),this.auth=decodeURIComponent(c)),f=-1;for(p=0;p<Lt.length;p++){var _;-1!==(_=s.indexOf(Lt[p]))&&(-1===f||_<f)&&(f=_)}-1===f&&(f=s.length),this.host=s.slice(0,f),s=s.slice(f),this.parseHost(),this.hostname=this.hostname||\"\";var v=\"[\"===this.hostname[0]&&\"]\"===this.hostname[this.hostname.length-1];if(!v)for(var m=this.hostname.split(/\\./),y=(p=0,m.length);p<y;p++){var g=m[p];if(g&&!g.match(Gt)){for(var T=\"\",E=0,b=g.length;E<b;E++)g.charCodeAt(E)>127?T+=\"x\":T+=g[E];if(!T.match(Gt)){var x=m.slice(0,p),A=m.slice(p+1),S=g.match(Ut);S&&(x.push(S[1]),A.unshift(S[2])),A.length&&(s=\"/\"+A.join(\".\")+s),this.hostname=x.join(\".\");break}}}this.hostname.length>255?this.hostname=\"\":this.hostname=this.hostname.toLowerCase(),v||(this.hostname=mt.toASCII(this.hostname));var R=this.port?\":\"+this.port:\"\",O=this.hostname||\"\";this.host=O+R,this.href+=this.host,v&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),\"/\"!==s[0]&&(s=\"/\"+s))}if(!kt[u])for(p=0,y=Ft.length;p<y;p++){var M=Ft[p];if(-1!==s.indexOf(M)){var P=encodeURIComponent(M);P===M&&(P=escape(M)),s=s.split(M).join(P)}}var I=s.indexOf(\"#\");-1!==I&&(this.hash=s.substr(I),s=s.slice(0,I));var D=s.indexOf(\"?\");if(-1!==D?(this.search=s.substr(D),this.query=s.substr(D+1),e&&(this.query=Rt.parse(this.query)),s=s.slice(0,D)):e&&(this.search=\"\",this.query={}),s&&(this.pathname=s),jt[u]&&this.hostname&&!this.pathname&&(this.pathname=\"/\"),this.pathname||this.search){R=this.pathname||\"\";var w=this.search||\"\";this.path=R+w}return this.href=this.format(),this},It.prototype.format=function(){var t=this.auth||\"\";t&&(t=(t=encodeURIComponent(t)).replace(/%3A/i,\":\"),t+=\"@\");var e=this.protocol||\"\",r=this.pathname||\"\",i=this.hash||\"\",n=!1,o=\"\";this.host?n=t+this.host:this.hostname&&(n=t+(-1===this.hostname.indexOf(\":\")?this.hostname:\"[\"+this.hostname+\"]\"),this.port&&(n+=\":\"+this.port)),this.query&&gt(this.query)&&Object.keys(this.query).length&&(o=Rt.stringify(this.query));var s=this.search||o&&\"?\"+o||\"\";return e&&\":\"!==e.substr(-1)&&(e+=\":\"),this.slashes||(!e||jt[e])&&!1!==n?(n=\"//\"+(n||\"\"),r&&\"/\"!==r.charAt(0)&&(r=\"/\"+r)):n||(n=\"\"),i&&\"#\"!==i.charAt(0)&&(i=\"#\"+i),s&&\"?\"!==s.charAt(0)&&(s=\"?\"+s),e+n+(r=r.replace(/[?#]/g,(function(t){return encodeURIComponent(t)})))+(s=s.replace(\"#\",\"%23\"))+i},It.prototype.resolve=function(t){return this.resolveObject(Ht(t,!1,!0)).format()},It.prototype.resolveObject=function(t){if(yt(t)){var e=new It;e.parse(t,!1,!0),t=e}for(var r=new It,i=Object.keys(this),n=0;n<i.length;n++){var o=i[n];r[o]=this[o]}if(r.hash=t.hash,\"\"===t.href)return r.href=r.format(),r;if(t.slashes&&!t.protocol){for(var s=Object.keys(t),a=0;a<s.length;a++){var h=s[a];\"protocol\"!==h&&(r[h]=t[h])}return jt[r.protocol]&&r.hostname&&!r.pathname&&(r.path=r.pathname=\"/\"),r.href=r.format(),r}if(t.protocol&&t.protocol!==r.protocol){if(!jt[t.protocol]){for(var u=Object.keys(t),l=0;l<u.length;l++){var c=u[l];r[c]=t[c]}return r.href=r.format(),r}if(r.protocol=t.protocol,t.host||Xt[t.protocol])r.pathname=t.pathname;else{for(var d=(t.pathname||\"\").split(\"/\");d.length&&!(t.host=d.shift()););t.host||(t.host=\"\"),t.hostname||(t.hostname=\"\"),\"\"!==d[0]&&d.unshift(\"\"),d.length<2&&d.unshift(\"\"),r.pathname=d.join(\"/\")}if(r.search=t.search,r.query=t.query,r.host=t.host||\"\",r.auth=t.auth,r.hostname=t.hostname||t.host,r.port=t.port,r.pathname||r.search){var f=r.pathname||\"\",p=r.search||\"\";r.path=f+p}return r.slashes=r.slashes||t.slashes,r.href=r.format(),r}var _=r.pathname&&\"/\"===r.pathname.charAt(0),v=t.host||t.pathname&&\"/\"===t.pathname.charAt(0),m=v||_||r.host&&t.pathname,y=m,g=r.pathname&&r.pathname.split(\"/\")||[],T=(d=t.pathname&&t.pathname.split(\"/\")||[],r.protocol&&!jt[r.protocol]);if(T&&(r.hostname=\"\",r.port=null,r.host&&(\"\"===g[0]?g[0]=r.host:g.unshift(r.host)),r.host=\"\",t.protocol&&(t.hostname=null,t.port=null,t.host&&(\"\"===d[0]?d[0]=t.host:d.unshift(t.host)),t.host=null),m=m&&(\"\"===d[0]||\"\"===g[0])),v)r.host=t.host||\"\"===t.host?t.host:r.host,r.hostname=t.hostname||\"\"===t.hostname?t.hostname:r.hostname,r.search=t.search,r.query=t.query,g=d;else if(d.length)g||(g=[]),g.pop(),g=g.concat(d),r.search=t.search,r.query=t.query;else if(!Et(t.search)){if(T)r.hostname=r.host=g.shift(),(S=!!(r.host&&r.host.indexOf(\"@\")>0)&&r.host.split(\"@\"))&&(r.auth=S.shift(),r.host=r.hostname=S.shift());return r.search=t.search,r.query=t.query,Tt(r.pathname)&&Tt(r.search)||(r.path=(r.pathname?r.pathname:\"\")+(r.search?r.search:\"\")),r.href=r.format(),r}if(!g.length)return r.pathname=null,r.search?r.path=\"/\"+r.search:r.path=null,r.href=r.format(),r;for(var E=g.slice(-1)[0],b=(r.host||t.host||g.length>1)&&(\".\"===E||\"..\"===E)||\"\"===E,x=0,A=g.length;A>=0;A--)\".\"===(E=g[A])?g.splice(A,1):\"..\"===E?(g.splice(A,1),x++):x&&(g.splice(A,1),x--);if(!m&&!y)for(;x--;x)g.unshift(\"..\");!m||\"\"===g[0]||g[0]&&\"/\"===g[0].charAt(0)||g.unshift(\"\"),b&&\"/\"!==g.join(\"/\").substr(-1)&&g.push(\"\");var S,R=\"\"===g[0]||g[0]&&\"/\"===g[0].charAt(0);T&&(r.hostname=r.host=R?\"\":g.length?g.shift():\"\",(S=!!(r.host&&r.host.indexOf(\"@\")>0)&&r.host.split(\"@\"))&&(r.auth=S.shift(),r.host=r.hostname=S.shift()));return(m=m||r.host&&g.length)&&!R&&g.unshift(\"\"),g.length?r.pathname=g.join(\"/\"):(r.pathname=null,r.path=null),Tt(r.pathname)&&Tt(r.search)||(r.path=(r.pathname?r.pathname:\"\")+(r.search?r.search:\"\")),r.auth=t.auth||r.auth,r.slashes=r.slashes||t.slashes,r.href=r.format(),r},It.prototype.parseHost=function(){var t=this.host,e=wt.exec(t);e&&(\":\"!==(e=e[0])&&(this.port=e.substr(1)),t=t.substr(0,t.length-e.length)),t&&(this.hostname=t)};var Yt={parse:Ot,format:Pt,resolve:Mt};function Vt(t){if(\"string\"!=typeof t)throw new TypeError(\"Path must be a string. Received \"+JSON.stringify(t))}function zt(t){return t.split(\"?\")[0].split(\"#\")[0]}var Wt={toPosix:function(t){return\"\\\\\",\"/\",t.replace(new RegExp(\"\\\\\".replace(/[.*+?^${}()|[\\]\\\\]/g,\"\\\\$&\"),\"g\"),\"/\")},isUrl:function(t){return/^https?:/.test(this.toPosix(t))},isDataUrl:function(t){return/^data:([a-z]+\\/[a-z0-9-+.]+(;[a-z0-9-.!#$%*+.{}|~`]+=[a-z0-9-.!#$%*+.{}()_|~`]+)*)?(;base64)?,([a-z0-9!$&',()*+;=\\-._~:@\\/?%\\s<>]*?)$/i.test(t)},hasProtocol:function(t){return/^[^/:]+:\\//.test(this.toPosix(t))},getProtocol:function(t){Vt(t),t=this.toPosix(t);var e=\"\",r=/^file:\\/\\/\\//.exec(t),i=/^[^/:]+:\\/\\//.exec(t),n=/^[^/:]+:\\//.exec(t);if(r||i||n){var o=(null==r?void 0:r[0])||(null==i?void 0:i[0])||(null==n?void 0:n[0]);e=o,t=t.slice(o.length)}return e},toAbsolute:function(t,e,r){if(this.isDataUrl(t))return t;var i=zt(this.toPosix(null!=e?e:U.ADAPTER.getBaseUrl())),n=zt(this.toPosix(null!=r?r:this.rootname(i)));return Vt(t),(t=this.toPosix(t)).startsWith(\"/\")?Wt.join(n,t.slice(1)):this.isAbsolute(t)?t:this.join(i,t)},normalize:function(t){if(Vt(t=this.toPosix(t)),0===t.length)return\".\";var e=\"\",r=t.startsWith(\"/\");this.hasProtocol(t)&&(e=this.rootname(t),t=t.slice(e.length));var i=t.endsWith(\"/\");return(t=function(t,e){for(var r,i=\"\",n=0,o=-1,s=0,a=0;a<=t.length;++a){if(a<t.length)r=t.charCodeAt(a);else{if(47===r)break;r=47}if(47===r){if(o===a-1||1===s);else if(o!==a-1&&2===s){if(i.length<2||2!==n||46!==i.charCodeAt(i.length-1)||46!==i.charCodeAt(i.length-2))if(i.length>2){var h=i.lastIndexOf(\"/\");if(h!==i.length-1){-1===h?(i=\"\",n=0):n=(i=i.slice(0,h)).length-1-i.lastIndexOf(\"/\"),o=a,s=0;continue}}else if(2===i.length||1===i.length){i=\"\",n=0,o=a,s=0;continue}}else i.length>0?i+=\"/\"+t.slice(o+1,a):i=t.slice(o+1,a),n=a-o-1;o=a,s=0}else 46===r&&-1!==s?++s:s=-1}return i}(t)).length>0&&i&&(t+=\"/\"),r?\"/\"+t:e+t},isAbsolute:function(t){return Vt(t),t=this.toPosix(t),!!this.hasProtocol(t)||t.startsWith(\"/\")},join:function(){for(var t,e,r=arguments,i=[],n=0;n<arguments.length;n++)i[n]=r[n];if(0===i.length)return\".\";for(var o=0;o<i.length;++o){var s=i[o];if(Vt(s),s.length>0)if(void 0===e)e=s;else{var a=null!==(t=i[o-1])&&void 0!==t?t:\"\";this.extname(a)?e+=\"/../\"+s:e+=\"/\"+s}}return void 0===e?\".\":this.normalize(e)},dirname:function(t){if(Vt(t),0===t.length)return\".\";for(var e=(t=this.toPosix(t)).charCodeAt(0),r=47===e,i=-1,n=!0,o=this.getProtocol(t),s=t,a=(t=t.slice(o.length)).length-1;a>=1;--a)if(47===(e=t.charCodeAt(a))){if(!n){i=a;break}}else n=!1;return-1===i?r?\"/\":this.isUrl(s)?o+t:o:r&&1===i?\"//\":o+t.slice(0,i)},rootname:function(t){Vt(t);var e=\"\";if(e=(t=this.toPosix(t)).startsWith(\"/\")?\"/\":this.getProtocol(t),this.isUrl(t)){var r=t.indexOf(\"/\",e.length);(e=-1!==r?t.slice(0,r):t).endsWith(\"/\")||(e+=\"/\")}return e},basename:function(t,e){Vt(t),e&&Vt(e),t=this.toPosix(t);var r,i=0,n=-1,o=!0;if(void 0!==e&&e.length>0&&e.length<=t.length){if(e.length===t.length&&e===t)return\"\";var s=e.length-1,a=-1;for(r=t.length-1;r>=0;--r){var h=t.charCodeAt(r);if(47===h){if(!o){i=r+1;break}}else-1===a&&(o=!1,a=r+1),s>=0&&(h===e.charCodeAt(s)?-1==--s&&(n=r):(s=-1,n=a))}return i===n?n=a:-1===n&&(n=t.length),t.slice(i,n)}for(r=t.length-1;r>=0;--r)if(47===t.charCodeAt(r)){if(!o){i=r+1;break}}else-1===n&&(o=!1,n=r+1);return-1===n?\"\":t.slice(i,n)},extname:function(t){Vt(t);for(var e=-1,r=0,i=-1,n=!0,o=0,s=(t=this.toPosix(t)).length-1;s>=0;--s){var a=t.charCodeAt(s);if(47!==a)-1===i&&(n=!1,i=s+1),46===a?-1===e?e=s:1!==o&&(o=1):-1!==e&&(o=-1);else if(!n){r=s+1;break}}return-1===e||-1===i||0===o||1===o&&e===i-1&&e===r+1?\"\":t.slice(e,i)},parse:function(t){Vt(t);var e={root:\"\",dir:\"\",base:\"\",ext:\"\",name:\"\"};if(0===t.length)return e;var r,i=(t=this.toPosix(t)).charCodeAt(0),n=this.isAbsolute(t);e.root=this.rootname(t),r=n||this.hasProtocol(t)?1:0;for(var o=-1,s=0,a=-1,h=!0,u=t.length-1,l=0;u>=r;--u)if(47!==(i=t.charCodeAt(u)))-1===a&&(h=!1,a=u+1),46===i?-1===o?o=u:1!==l&&(l=1):-1!==o&&(l=-1);else if(!h){s=u+1;break}return-1===o||-1===a||0===l||1===l&&o===a-1&&o===s+1?-1!==a&&(e.base=e.name=0===s&&n?t.slice(1,a):t.slice(s,a)):(0===s&&n?(e.name=t.slice(1,o),e.base=t.slice(1,a)):(e.name=t.slice(s,o),e.base=t.slice(s,a)),e.ext=t.slice(o,a)),e.dir=this.dirname(t),e},sep:\"/\",delimiter:\":\"};U.RETINA_PREFIX=/@([0-9\\.]+)x/,U.FAIL_IF_MAJOR_PERFORMANCE_CAVEAT=!1;var qt,Kt=!1;function Zt(t){var e;if(!Kt){if(U.ADAPTER.getNavigator().userAgent.toLowerCase().indexOf(\"chrome\")>-1){var r=[\"\\n %c %c %c PixiJS 6.5.10 - ✰ \"+t+\" ✰ %c %c http://www.pixijs.com/ %c %c ♥%c♥%c♥ \\n\\n\",\"background: #ff66a5; padding:5px 0;\",\"background: #ff66a5; padding:5px 0;\",\"color: #ff66a5; background: #030307; padding:5px 0;\",\"background: #ff66a5; padding:5px 0;\",\"background: #ffc3dc; padding:5px 0;\",\"background: #ff66a5; padding:5px 0;\",\"color: #ff2424; background: #fff; padding:5px 0;\",\"color: #ff2424; background: #fff; padding:5px 0;\",\"color: #ff2424; background: #fff; padding:5px 0;\"];(e=globalThis.console).log.apply(e,r)}else globalThis.console&&globalThis.console.log(\"PixiJS 6.5.10 - \"+t+\" - http://www.pixijs.com/\");Kt=!0}}function Qt(){return void 0===qt&&(qt=function(){var t={stencil:!0,failIfMajorPerformanceCaveat:U.FAIL_IF_MAJOR_PERFORMANCE_CAVEAT};try{if(!U.ADAPTER.getWebGLRenderingContext())return!1;var e=U.ADAPTER.createCanvas(),r=e.getContext(\"webgl\",t)||e.getContext(\"experimental-webgl\",t),i=!(!r||!r.getContextAttributes().stencil);if(r){var n=r.getExtension(\"WEBGL_lose_context\");n&&n.loseContext()}return r=null,i}catch(t){return!1}}()),qt}var Jt={aliceblue:\"#f0f8ff\",antiquewhite:\"#faebd7\",aqua:\"#00ffff\",aquamarine:\"#7fffd4\",azure:\"#f0ffff\",beige:\"#f5f5dc\",bisque:\"#ffe4c4\",black:\"#000000\",blanchedalmond:\"#ffebcd\",blue:\"#0000ff\",blueviolet:\"#8a2be2\",brown:\"#a52a2a\",burlywood:\"#deb887\",cadetblue:\"#5f9ea0\",chartreuse:\"#7fff00\",chocolate:\"#d2691e\",coral:\"#ff7f50\",cornflowerblue:\"#6495ed\",cornsilk:\"#fff8dc\",crimson:\"#dc143c\",cyan:\"#00ffff\",darkblue:\"#00008b\",darkcyan:\"#008b8b\",darkgoldenrod:\"#b8860b\",darkgray:\"#a9a9a9\",darkgreen:\"#006400\",darkgrey:\"#a9a9a9\",darkkhaki:\"#bdb76b\",darkmagenta:\"#8b008b\",darkolivegreen:\"#556b2f\",darkorange:\"#ff8c00\",darkorchid:\"#9932cc\",darkred:\"#8b0000\",darksalmon:\"#e9967a\",darkseagreen:\"#8fbc8f\",darkslateblue:\"#483d8b\",darkslategray:\"#2f4f4f\",darkslategrey:\"#2f4f4f\",darkturquoise:\"#00ced1\",darkviolet:\"#9400d3\",deeppink:\"#ff1493\",deepskyblue:\"#00bfff\",dimgray:\"#696969\",dimgrey:\"#696969\",dodgerblue:\"#1e90ff\",firebrick:\"#b22222\",floralwhite:\"#fffaf0\",forestgreen:\"#228b22\",fuchsia:\"#ff00ff\",gainsboro:\"#dcdcdc\",ghostwhite:\"#f8f8ff\",goldenrod:\"#daa520\",gold:\"#ffd700\",gray:\"#808080\",green:\"#008000\",greenyellow:\"#adff2f\",grey:\"#808080\",honeydew:\"#f0fff0\",hotpink:\"#ff69b4\",indianred:\"#cd5c5c\",indigo:\"#4b0082\",ivory:\"#fffff0\",khaki:\"#f0e68c\",lavenderblush:\"#fff0f5\",lavender:\"#e6e6fa\",lawngreen:\"#7cfc00\",lemonchiffon:\"#fffacd\",lightblue:\"#add8e6\",lightcoral:\"#f08080\",lightcyan:\"#e0ffff\",lightgoldenrodyellow:\"#fafad2\",lightgray:\"#d3d3d3\",lightgreen:\"#90ee90\",lightgrey:\"#d3d3d3\",lightpink:\"#ffb6c1\",lightsalmon:\"#ffa07a\",lightseagreen:\"#20b2aa\",lightskyblue:\"#87cefa\",lightslategray:\"#778899\",lightslategrey:\"#778899\",lightsteelblue:\"#b0c4de\",lightyellow:\"#ffffe0\",lime:\"#00ff00\",limegreen:\"#32cd32\",linen:\"#faf0e6\",magenta:\"#ff00ff\",maroon:\"#800000\",mediumaquamarine:\"#66cdaa\",mediumblue:\"#0000cd\",mediumorchid:\"#ba55d3\",mediumpurple:\"#9370db\",mediumseagreen:\"#3cb371\",mediumslateblue:\"#7b68ee\",mediumspringgreen:\"#00fa9a\",mediumturquoise:\"#48d1cc\",mediumvioletred:\"#c71585\",midnightblue:\"#191970\",mintcream:\"#f5fffa\",mistyrose:\"#ffe4e1\",moccasin:\"#ffe4b5\",navajowhite:\"#ffdead\",navy:\"#000080\",oldlace:\"#fdf5e6\",olive:\"#808000\",olivedrab:\"#6b8e23\",orange:\"#ffa500\",orangered:\"#ff4500\",orchid:\"#da70d6\",palegoldenrod:\"#eee8aa\",palegreen:\"#98fb98\",paleturquoise:\"#afeeee\",palevioletred:\"#db7093\",papayawhip:\"#ffefd5\",peachpuff:\"#ffdab9\",peru:\"#cd853f\",pink:\"#ffc0cb\",plum:\"#dda0dd\",powderblue:\"#b0e0e6\",purple:\"#800080\",rebeccapurple:\"#663399\",red:\"#ff0000\",rosybrown:\"#bc8f8f\",royalblue:\"#4169e1\",saddlebrown:\"#8b4513\",salmon:\"#fa8072\",sandybrown:\"#f4a460\",seagreen:\"#2e8b57\",seashell:\"#fff5ee\",sienna:\"#a0522d\",silver:\"#c0c0c0\",skyblue:\"#87ceeb\",slateblue:\"#6a5acd\",slategray:\"#708090\",slategrey:\"#708090\",snow:\"#fffafa\",springgreen:\"#00ff7f\",steelblue:\"#4682b4\",tan:\"#d2b48c\",teal:\"#008080\",thistle:\"#d8bfd8\",tomato:\"#ff6347\",turquoise:\"#40e0d0\",violet:\"#ee82ee\",wheat:\"#f5deb3\",white:\"#ffffff\",whitesmoke:\"#f5f5f5\",yellow:\"#ffff00\",yellowgreen:\"#9acd32\"};function $t(t,e){return void 0===e&&(e=[]),e[0]=(t>>16&255)/255,e[1]=(t>>8&255)/255,e[2]=(255&t)/255,e}function te(t){var e=t.toString(16);return\"#\"+(\"000000\".substring(0,6-e.length)+e)}function ee(t){return\"string\"==typeof t&&\"#\"===(t=Jt[t.toLowerCase()]||t)[0]&&(t=t.slice(1)),parseInt(t,16)}var re=function(){for(var e=[],r=[],i=0;i<32;i++)e[i]=i,r[i]=i;e[t.BLEND_MODES.NORMAL_NPM]=t.BLEND_MODES.NORMAL,e[t.BLEND_MODES.ADD_NPM]=t.BLEND_MODES.ADD,e[t.BLEND_MODES.SCREEN_NPM]=t.BLEND_MODES.SCREEN,r[t.BLEND_MODES.NORMAL]=t.BLEND_MODES.NORMAL_NPM,r[t.BLEND_MODES.ADD]=t.BLEND_MODES.ADD_NPM,r[t.BLEND_MODES.SCREEN]=t.BLEND_MODES.SCREEN_NPM;var n=[];return n.push(r),n.push(e),n}();function ie(t,e){return re[e?1:0][t]}function ne(t,e,r,i){return r=r||new Float32Array(4),i||void 0===i?(r[0]=t[0]*e,r[1]=t[1]*e,r[2]=t[2]*e):(r[0]=t[0],r[1]=t[1],r[2]=t[2]),r[3]=e,r}function oe(t,e){if(1===e)return(255*e<<24)+t;if(0===e)return 0;var r=t>>16&255,i=t>>8&255,n=255&t;return(255*e<<24)+((r=r*e+.5|0)<<16)+((i=i*e+.5|0)<<8)+(n*e+.5|0)}function se(t,e,r,i){return(r=r||new Float32Array(4))[0]=(t>>16&255)/255,r[1]=(t>>8&255)/255,r[2]=(255&t)/255,(i||void 0===i)&&(r[0]*=e,r[1]*=e,r[2]*=e),r[3]=e,r}function ae(t,e){void 0===e&&(e=null);var r=6*t;if((e=e||new Uint16Array(r)).length!==r)throw new Error(\"Out buffer length is incorrect, got \"+e.length+\" and expected \"+r);for(var i=0,n=0;i<r;i+=6,n+=4)e[i+0]=n+0,e[i+1]=n+1,e[i+2]=n+2,e[i+3]=n+0,e[i+4]=n+2,e[i+5]=n+3;return e}function he(t){if(4===t.BYTES_PER_ELEMENT)return t instanceof Float32Array?\"Float32Array\":t instanceof Uint32Array?\"Uint32Array\":\"Int32Array\";if(2===t.BYTES_PER_ELEMENT){if(t instanceof Uint16Array)return\"Uint16Array\"}else if(1===t.BYTES_PER_ELEMENT&&t instanceof Uint8Array)return\"Uint8Array\";return null}var ue={Float32Array:Float32Array,Uint32Array:Uint32Array,Int32Array:Int32Array,Uint8Array:Uint8Array};function le(t){return t+=0===t?1:0,--t,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,1+(t|=t>>>16)}function ce(t){return!(t&t-1||!t)}function de(t){var e=(t>65535?1:0)<<4,r=((t>>>=e)>255?1:0)<<3;return e|=r,e|=r=((t>>>=r)>15?1:0)<<2,(e|=r=((t>>>=r)>3?1:0)<<1)|(t>>>=r)>>1}function fe(t,e,r){var i,n=t.length;if(!(e>=n||0===r)){var o=n-(r=e+r>n?n-e:r);for(i=e;i<o;++i)t[i]=t[i+r];t.length=o}}function pe(t){return 0===t?0:t<0?-1:1}var _e=0;function ve(){return++_e}var me={};var ye={},ge=Object.create(null),Te=Object.create(null);var Ee=function(){function t(t,e,r){this.canvas=U.ADAPTER.createCanvas(),this.context=this.canvas.getContext(\"2d\"),this.resolution=r||U.RESOLUTION,this.resize(t,e)}return t.prototype.clear=function(){this.context.setTransform(1,0,0,1,0,0),this.context.clearRect(0,0,this.canvas.width,this.canvas.height)},t.prototype.resize=function(t,e){this.canvas.width=Math.round(t*this.resolution),this.canvas.height=Math.round(e*this.resolution)},t.prototype.destroy=function(){this.context=null,this.canvas=null},Object.defineProperty(t.prototype,\"width\",{get:function(){return this.canvas.width},set:function(t){this.canvas.width=Math.round(t)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"height\",{get:function(){return this.canvas.height},set:function(t){this.canvas.height=Math.round(t)},enumerable:!1,configurable:!0}),t}();function be(t){var e,r,i,n=t.width,o=t.height,s=t.getContext(\"2d\",{willReadFrequently:!0}),a=s.getImageData(0,0,n,o).data,h=a.length,u={top:null,left:null,right:null,bottom:null},l=null;for(e=0;e<h;e+=4)0!==a[e+3]&&(r=e/4%n,i=~~(e/4/n),null===u.top&&(u.top=i),(null===u.left||r<u.left)&&(u.left=r),(null===u.right||u.right<r)&&(u.right=r+1),(null===u.bottom||u.bottom<i)&&(u.bottom=i));return null!==u.top&&(n=u.right-u.left,o=u.bottom-u.top+1,l=s.getImageData(u.left,u.top,n,o)),{height:o,width:n,data:l}}var xe,Ae=/^\\s*data:(?:([\\w-]+)\\/([\\w+.-]+))?(?:;charset=([\\w-]+))?(?:;(base64))?,(.*)/i;function Se(t,e){if(void 0===e&&(e=globalThis.location),0===t.indexOf(\"data:\"))return\"\";e=e||globalThis.location,xe||(xe=document.createElement(\"a\")),xe.href=t;var r=Yt.parse(xe.href),i=!r.port&&\"\"===e.port||r.port===e.port;return r.hostname===e.hostname&&i&&r.protocol===e.protocol?\"\":\"anonymous\"}function Re(t,e){var r=U.RETINA_PREFIX.exec(t);return r?parseFloat(r[1]):void 0!==e?e:1}var Oe={__proto__:null,BaseTextureCache:Te,CanvasRenderTarget:Ee,DATA_URI:Ae,ProgramCache:ye,TextureCache:ge,clearTextureCache:function(){var t;for(t in ge)delete ge[t];for(t in Te)delete Te[t]},correctBlendMode:ie,createIndicesForQuads:ae,decomposeDataUri:function(t){var e=Ae.exec(t);if(e)return{mediaType:e[1]?e[1].toLowerCase():void 0,subType:e[2]?e[2].toLowerCase():void 0,charset:e[3]?e[3].toLowerCase():void 0,encoding:e[4]?e[4].toLowerCase():void 0,data:e[5]}},deprecation:function(t,e,r){if(void 0===r&&(r=3),!me[e]){var i=(new Error).stack;void 0===i?console.warn(\"PixiJS Deprecation Warning: \",e+\"\\nDeprecated since v\"+t):(i=i.split(\"\\n\").splice(r).join(\"\\n\"),console.groupCollapsed?(console.groupCollapsed(\"%cPixiJS Deprecation Warning: %c%s\",\"color:#614108;background:#fffbe6\",\"font-weight:normal;color:#614108;background:#fffbe6\",e+\"\\nDeprecated since v\"+t),console.warn(i),console.groupEnd()):(console.warn(\"PixiJS Deprecation Warning: \",e+\"\\nDeprecated since v\"+t),console.warn(i))),me[e]=!0}},destroyTextureCache:function(){var t;for(t in ge)ge[t].destroy();for(t in Te)Te[t].destroy()},determineCrossOrigin:Se,getBufferType:he,getResolutionOfUrl:Re,hex2rgb:$t,hex2string:te,interleaveTypedArrays:function(t,e){for(var r=0,i=0,n={},o=0;o<t.length;o++)i+=e[o],r+=t[o].length;var s=new ArrayBuffer(4*r),a=null,h=0;for(o=0;o<t.length;o++){var u=e[o],l=t[o],c=he(l);n[c]||(n[c]=new ue[c](s)),a=n[c];for(var d=0;d<l.length;d++)a[(d/u|0)*i+h+d%u]=l[d];h+=u}return new Float32Array(s)},isPow2:ce,isWebGLSupported:Qt,log2:de,nextPow2:le,path:Wt,premultiplyBlendMode:re,premultiplyRgba:ne,premultiplyTint:oe,premultiplyTintToRgba:se,removeItems:fe,rgb2hex:function(t){return(255*t[0]<<16)+(255*t[1]<<8)+(255*t[2]|0)},sayHello:Zt,sign:pe,skipHello:function(){Kt=!0},string2hex:ee,trimCanvas:be,uid:ve,url:Yt,isMobile:G,EventEmitter:j,earcut:H};t.SHAPES=void 0;var Me=2*Math.PI,Pe=180/Math.PI,Ie=Math.PI/180;!function(t){t[t.POLY=0]=\"POLY\",t[t.RECT=1]=\"RECT\",t[t.CIRC=2]=\"CIRC\",t[t.ELIP=3]=\"ELIP\",t[t.RREC=4]=\"RREC\"}(t.SHAPES||(t.SHAPES={}));var De=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=0),this.x=0,this.y=0,this.x=t,this.y=e}return t.prototype.clone=function(){return new t(this.x,this.y)},t.prototype.copyFrom=function(t){return this.set(t.x,t.y),this},t.prototype.copyTo=function(t){return t.set(this.x,this.y),t},t.prototype.equals=function(t){return t.x===this.x&&t.y===this.y},t.prototype.set=function(t,e){return void 0===t&&(t=0),void 0===e&&(e=t),this.x=t,this.y=e,this},t}(),we=[new De,new De,new De,new De],Ce=function(){function e(e,r,i,n){void 0===e&&(e=0),void 0===r&&(r=0),void 0===i&&(i=0),void 0===n&&(n=0),this.x=Number(e),this.y=Number(r),this.width=Number(i),this.height=Number(n),this.type=t.SHAPES.RECT}return Object.defineProperty(e.prototype,\"left\",{get:function(){return this.x},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"right\",{get:function(){return this.x+this.width},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"top\",{get:function(){return this.y},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"bottom\",{get:function(){return this.y+this.height},enumerable:!1,configurable:!0}),Object.defineProperty(e,\"EMPTY\",{get:function(){return new e(0,0,0,0)},enumerable:!1,configurable:!0}),e.prototype.clone=function(){return new e(this.x,this.y,this.width,this.height)},e.prototype.copyFrom=function(t){return this.x=t.x,this.y=t.y,this.width=t.width,this.height=t.height,this},e.prototype.copyTo=function(t){return t.x=this.x,t.y=this.y,t.width=this.width,t.height=this.height,t},e.prototype.contains=function(t,e){return!(this.width<=0||this.height<=0)&&t>=this.x&&t<this.x+this.width&&e>=this.y&&e<this.y+this.height},e.prototype.intersects=function(t,e){if(!e){var r=this.x<t.x?t.x:this.x;if((this.right>t.right?t.right:this.right)<=r)return!1;var i=this.y<t.y?t.y:this.y;return(this.bottom>t.bottom?t.bottom:this.bottom)>i}var n=this.left,o=this.right,s=this.top,a=this.bottom;if(o<=n||a<=s)return!1;var h=we[0].set(t.left,t.top),u=we[1].set(t.left,t.bottom),l=we[2].set(t.right,t.top),c=we[3].set(t.right,t.bottom);if(l.x<=h.x||u.y<=h.y)return!1;var d=Math.sign(e.a*e.d-e.b*e.c);if(0===d)return!1;if(e.apply(h,h),e.apply(u,u),e.apply(l,l),e.apply(c,c),Math.max(h.x,u.x,l.x,c.x)<=n||Math.min(h.x,u.x,l.x,c.x)>=o||Math.max(h.y,u.y,l.y,c.y)<=s||Math.min(h.y,u.y,l.y,c.y)>=a)return!1;var f=d*(u.y-h.y),p=d*(h.x-u.x),_=f*n+p*s,v=f*o+p*s,m=f*n+p*a,y=f*o+p*a;if(Math.max(_,v,m,y)<=f*h.x+p*h.y||Math.min(_,v,m,y)>=f*c.x+p*c.y)return!1;var g=d*(h.y-l.y),T=d*(l.x-h.x),E=g*n+T*s,b=g*o+T*s,x=g*n+T*a,A=g*o+T*a;return!(Math.max(E,b,x,A)<=g*h.x+T*h.y||Math.min(E,b,x,A)>=g*c.x+T*c.y)},e.prototype.pad=function(t,e){return void 0===t&&(t=0),void 0===e&&(e=t),this.x-=t,this.y-=e,this.width+=2*t,this.height+=2*e,this},e.prototype.fit=function(t){var e=Math.max(this.x,t.x),r=Math.min(this.x+this.width,t.x+t.width),i=Math.max(this.y,t.y),n=Math.min(this.y+this.height,t.y+t.height);return this.x=e,this.width=Math.max(r-e,0),this.y=i,this.height=Math.max(n-i,0),this},e.prototype.ceil=function(t,e){void 0===t&&(t=1),void 0===e&&(e=.001);var r=Math.ceil((this.x+this.width-e)*t)/t,i=Math.ceil((this.y+this.height-e)*t)/t;return this.x=Math.floor((this.x+e)*t)/t,this.y=Math.floor((this.y+e)*t)/t,this.width=r-this.x,this.height=i-this.y,this},e.prototype.enlarge=function(t){var e=Math.min(this.x,t.x),r=Math.max(this.x+this.width,t.x+t.width),i=Math.min(this.y,t.y),n=Math.max(this.y+this.height,t.y+t.height);return this.x=e,this.width=r-e,this.y=i,this.height=n-i,this},e}(),Ne=function(){function e(e,r,i){void 0===e&&(e=0),void 0===r&&(r=0),void 0===i&&(i=0),this.x=e,this.y=r,this.radius=i,this.type=t.SHAPES.CIRC}return e.prototype.clone=function(){return new e(this.x,this.y,this.radius)},e.prototype.contains=function(t,e){if(this.radius<=0)return!1;var r=this.radius*this.radius,i=this.x-t,n=this.y-e;return(i*=i)+(n*=n)<=r},e.prototype.getBounds=function(){return new Ce(this.x-this.radius,this.y-this.radius,2*this.radius,2*this.radius)},e}(),Fe=function(){function e(e,r,i,n){void 0===e&&(e=0),void 0===r&&(r=0),void 0===i&&(i=0),void 0===n&&(n=0),this.x=e,this.y=r,this.width=i,this.height=n,this.type=t.SHAPES.ELIP}return e.prototype.clone=function(){return new e(this.x,this.y,this.width,this.height)},e.prototype.contains=function(t,e){if(this.width<=0||this.height<=0)return!1;var r=(t-this.x)/this.width,i=(e-this.y)/this.height;return(r*=r)+(i*=i)<=1},e.prototype.getBounds=function(){return new Ce(this.x-this.width,this.y-this.height,this.width,this.height)},e}(),Le=function(){function e(){for(var e=arguments,r=[],i=0;i<arguments.length;i++)r[i]=e[i];var n=Array.isArray(r[0])?r[0]:r;if(\"number\"!=typeof n[0]){for(var o=[],s=0,a=n.length;s<a;s++)o.push(n[s].x,n[s].y);n=o}this.points=n,this.type=t.SHAPES.POLY,this.closeStroke=!0}return e.prototype.clone=function(){var t=new e(this.points.slice());return t.closeStroke=this.closeStroke,t},e.prototype.contains=function(t,e){for(var r=!1,i=this.points.length/2,n=0,o=i-1;n<i;o=n++){var s=this.points[2*n],a=this.points[2*n+1],h=this.points[2*o],u=this.points[2*o+1];a>e!=u>e&&t<(e-a)/(u-a)*(h-s)+s&&(r=!r)}return r},e}(),Be=function(){function e(e,r,i,n,o){void 0===e&&(e=0),void 0===r&&(r=0),void 0===i&&(i=0),void 0===n&&(n=0),void 0===o&&(o=20),this.x=e,this.y=r,this.width=i,this.height=n,this.radius=o,this.type=t.SHAPES.RREC}return e.prototype.clone=function(){return new e(this.x,this.y,this.width,this.height,this.radius)},e.prototype.contains=function(t,e){if(this.width<=0||this.height<=0)return!1;if(t>=this.x&&t<=this.x+this.width&&e>=this.y&&e<=this.y+this.height){var r=Math.max(0,Math.min(this.radius,Math.min(this.width,this.height)/2));if(e>=this.y+r&&e<=this.y+this.height-r||t>=this.x+r&&t<=this.x+this.width-r)return!0;var i=t-(this.x+r),n=e-(this.y+r),o=r*r;if(i*i+n*n<=o)return!0;if((i=t-(this.x+this.width-r))*i+n*n<=o)return!0;if(i*i+(n=e-(this.y+this.height-r))*n<=o)return!0;if((i=t-(this.x+r))*i+n*n<=o)return!0}return!1},e}(),Ge=function(){function t(t,e,r,i){void 0===r&&(r=0),void 0===i&&(i=0),this._x=r,this._y=i,this.cb=t,this.scope=e}return t.prototype.clone=function(e,r){return void 0===e&&(e=this.cb),void 0===r&&(r=this.scope),new t(e,r,this._x,this._y)},t.prototype.set=function(t,e){return void 0===t&&(t=0),void 0===e&&(e=t),this._x===t&&this._y===e||(this._x=t,this._y=e,this.cb.call(this.scope)),this},t.prototype.copyFrom=function(t){return this._x===t.x&&this._y===t.y||(this._x=t.x,this._y=t.y,this.cb.call(this.scope)),this},t.prototype.copyTo=function(t){return t.set(this._x,this._y),t},t.prototype.equals=function(t){return t.x===this._x&&t.y===this._y},Object.defineProperty(t.prototype,\"x\",{get:function(){return this._x},set:function(t){this._x!==t&&(this._x=t,this.cb.call(this.scope))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y\",{get:function(){return this._y},set:function(t){this._y!==t&&(this._y=t,this.cb.call(this.scope))},enumerable:!1,configurable:!0}),t}(),Ue=function(){function t(t,e,r,i,n,o){void 0===t&&(t=1),void 0===e&&(e=0),void 0===r&&(r=0),void 0===i&&(i=1),void 0===n&&(n=0),void 0===o&&(o=0),this.array=null,this.a=t,this.b=e,this.c=r,this.d=i,this.tx=n,this.ty=o}return t.prototype.fromArray=function(t){this.a=t[0],this.b=t[1],this.c=t[3],this.d=t[4],this.tx=t[2],this.ty=t[5]},t.prototype.set=function(t,e,r,i,n,o){return this.a=t,this.b=e,this.c=r,this.d=i,this.tx=n,this.ty=o,this},t.prototype.toArray=function(t,e){this.array||(this.array=new Float32Array(9));var r=e||this.array;return t?(r[0]=this.a,r[1]=this.b,r[2]=0,r[3]=this.c,r[4]=this.d,r[5]=0,r[6]=this.tx,r[7]=this.ty,r[8]=1):(r[0]=this.a,r[1]=this.c,r[2]=this.tx,r[3]=this.b,r[4]=this.d,r[5]=this.ty,r[6]=0,r[7]=0,r[8]=1),r},t.prototype.apply=function(t,e){e=e||new De;var r=t.x,i=t.y;return e.x=this.a*r+this.c*i+this.tx,e.y=this.b*r+this.d*i+this.ty,e},t.prototype.applyInverse=function(t,e){e=e||new De;var r=1/(this.a*this.d+this.c*-this.b),i=t.x,n=t.y;return e.x=this.d*r*i+-this.c*r*n+(this.ty*this.c-this.tx*this.d)*r,e.y=this.a*r*n+-this.b*r*i+(-this.ty*this.a+this.tx*this.b)*r,e},t.prototype.translate=function(t,e){return this.tx+=t,this.ty+=e,this},t.prototype.scale=function(t,e){return this.a*=t,this.d*=e,this.c*=t,this.b*=e,this.tx*=t,this.ty*=e,this},t.prototype.rotate=function(t){var e=Math.cos(t),r=Math.sin(t),i=this.a,n=this.c,o=this.tx;return this.a=i*e-this.b*r,this.b=i*r+this.b*e,this.c=n*e-this.d*r,this.d=n*r+this.d*e,this.tx=o*e-this.ty*r,this.ty=o*r+this.ty*e,this},t.prototype.append=function(t){var e=this.a,r=this.b,i=this.c,n=this.d;return this.a=t.a*e+t.b*i,this.b=t.a*r+t.b*n,this.c=t.c*e+t.d*i,this.d=t.c*r+t.d*n,this.tx=t.tx*e+t.ty*i+this.tx,this.ty=t.tx*r+t.ty*n+this.ty,this},t.prototype.setTransform=function(t,e,r,i,n,o,s,a,h){return this.a=Math.cos(s+h)*n,this.b=Math.sin(s+h)*n,this.c=-Math.sin(s-a)*o,this.d=Math.cos(s-a)*o,this.tx=t-(r*this.a+i*this.c),this.ty=e-(r*this.b+i*this.d),this},t.prototype.prepend=function(t){var e=this.tx;if(1!==t.a||0!==t.b||0!==t.c||1!==t.d){var r=this.a,i=this.c;this.a=r*t.a+this.b*t.c,this.b=r*t.b+this.b*t.d,this.c=i*t.a+this.d*t.c,this.d=i*t.b+this.d*t.d}return this.tx=e*t.a+this.ty*t.c+t.tx,this.ty=e*t.b+this.ty*t.d+t.ty,this},t.prototype.decompose=function(t){var e=this.a,r=this.b,i=this.c,n=this.d,o=t.pivot,s=-Math.atan2(-i,n),a=Math.atan2(r,e),h=Math.abs(s+a);return h<1e-5||Math.abs(Me-h)<1e-5?(t.rotation=a,t.skew.x=t.skew.y=0):(t.rotation=0,t.skew.x=s,t.skew.y=a),t.scale.x=Math.sqrt(e*e+r*r),t.scale.y=Math.sqrt(i*i+n*n),t.position.x=this.tx+(o.x*e+o.y*i),t.position.y=this.ty+(o.x*r+o.y*n),t},t.prototype.invert=function(){var t=this.a,e=this.b,r=this.c,i=this.d,n=this.tx,o=t*i-e*r;return this.a=i/o,this.b=-e/o,this.c=-r/o,this.d=t/o,this.tx=(r*this.ty-i*n)/o,this.ty=-(t*this.ty-e*n)/o,this},t.prototype.identity=function(){return this.a=1,this.b=0,this.c=0,this.d=1,this.tx=0,this.ty=0,this},t.prototype.clone=function(){var e=new t;return e.a=this.a,e.b=this.b,e.c=this.c,e.d=this.d,e.tx=this.tx,e.ty=this.ty,e},t.prototype.copyTo=function(t){return t.a=this.a,t.b=this.b,t.c=this.c,t.d=this.d,t.tx=this.tx,t.ty=this.ty,t},t.prototype.copyFrom=function(t){return this.a=t.a,this.b=t.b,this.c=t.c,this.d=t.d,this.tx=t.tx,this.ty=t.ty,this},Object.defineProperty(t,\"IDENTITY\",{get:function(){return new t},enumerable:!1,configurable:!0}),Object.defineProperty(t,\"TEMP_MATRIX\",{get:function(){return new t},enumerable:!1,configurable:!0}),t}(),ke=[1,1,0,-1,-1,-1,0,1,1,1,0,-1,-1,-1,0,1],Xe=[0,1,1,1,0,-1,-1,-1,0,1,1,1,0,-1,-1,-1],je=[0,-1,-1,-1,0,1,1,1,0,1,1,1,0,-1,-1,-1],He=[1,1,0,-1,-1,-1,0,1,-1,-1,0,1,1,1,0,-1],Ye=[],Ve=[],ze=Math.sign;!function(){for(var t=0;t<16;t++){var e=[];Ye.push(e);for(var r=0;r<16;r++)for(var i=ze(ke[t]*ke[r]+je[t]*Xe[r]),n=ze(Xe[t]*ke[r]+He[t]*Xe[r]),o=ze(ke[t]*je[r]+je[t]*He[r]),s=ze(Xe[t]*je[r]+He[t]*He[r]),a=0;a<16;a++)if(ke[a]===i&&Xe[a]===n&&je[a]===o&&He[a]===s){e.push(a);break}}for(t=0;t<16;t++){var h=new Ue;h.set(ke[t],Xe[t],je[t],He[t],0,0),Ve.push(h)}}();var We={E:0,SE:1,S:2,SW:3,W:4,NW:5,N:6,NE:7,MIRROR_VERTICAL:8,MAIN_DIAGONAL:10,MIRROR_HORIZONTAL:12,REVERSE_DIAGONAL:14,uX:function(t){return ke[t]},uY:function(t){return Xe[t]},vX:function(t){return je[t]},vY:function(t){return He[t]},inv:function(t){return 8&t?15&t:7&-t},add:function(t,e){return Ye[t][e]},sub:function(t,e){return Ye[t][We.inv(e)]},rotate180:function(t){return 4^t},isVertical:function(t){return 2==(3&t)},byDirection:function(t,e){return 2*Math.abs(t)<=Math.abs(e)?e>=0?We.S:We.N:2*Math.abs(e)<=Math.abs(t)?t>0?We.E:We.W:e>0?t>0?We.SE:We.SW:t>0?We.NE:We.NW},matrixAppendRotationInv:function(t,e,r,i){void 0===r&&(r=0),void 0===i&&(i=0);var n=Ve[We.inv(e)];n.tx=r,n.ty=i,t.append(n)}},qe=function(){function t(){this.worldTransform=new Ue,this.localTransform=new Ue,this.position=new Ge(this.onChange,this,0,0),this.scale=new Ge(this.onChange,this,1,1),this.pivot=new Ge(this.onChange,this,0,0),this.skew=new Ge(this.updateSkew,this,0,0),this._rotation=0,this._cx=1,this._sx=0,this._cy=0,this._sy=1,this._localID=0,this._currentLocalID=0,this._worldID=0,this._parentID=0}return t.prototype.onChange=function(){this._localID++},t.prototype.updateSkew=function(){this._cx=Math.cos(this._rotation+this.skew.y),this._sx=Math.sin(this._rotation+this.skew.y),this._cy=-Math.sin(this._rotation-this.skew.x),this._sy=Math.cos(this._rotation-this.skew.x),this._localID++},t.prototype.updateLocalTransform=function(){var t=this.localTransform;this._localID!==this._currentLocalID&&(t.a=this._cx*this.scale.x,t.b=this._sx*this.scale.x,t.c=this._cy*this.scale.y,t.d=this._sy*this.scale.y,t.tx=this.position.x-(this.pivot.x*t.a+this.pivot.y*t.c),t.ty=this.position.y-(this.pivot.x*t.b+this.pivot.y*t.d),this._currentLocalID=this._localID,this._parentID=-1)},t.prototype.updateTransform=function(t){var e=this.localTransform;if(this._localID!==this._currentLocalID&&(e.a=this._cx*this.scale.x,e.b=this._sx*this.scale.x,e.c=this._cy*this.scale.y,e.d=this._sy*this.scale.y,e.tx=this.position.x-(this.pivot.x*e.a+this.pivot.y*e.c),e.ty=this.position.y-(this.pivot.x*e.b+this.pivot.y*e.d),this._currentLocalID=this._localID,this._parentID=-1),this._parentID!==t._worldID){var r=t.worldTransform,i=this.worldTransform;i.a=e.a*r.a+e.b*r.c,i.b=e.a*r.b+e.b*r.d,i.c=e.c*r.a+e.d*r.c,i.d=e.c*r.b+e.d*r.d,i.tx=e.tx*r.a+e.ty*r.c+r.tx,i.ty=e.tx*r.b+e.ty*r.d+r.ty,this._parentID=t._worldID,this._worldID++}},t.prototype.setFromMatrix=function(t){t.decompose(this),this._localID++},Object.defineProperty(t.prototype,\"rotation\",{get:function(){return this._rotation},set:function(t){this._rotation!==t&&(this._rotation=t,this.updateSkew())},enumerable:!1,configurable:!0}),t.IDENTITY=new t,t}();U.SORTABLE_CHILDREN=!1;var Ke=function(){function t(){this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0,this.rect=null,this.updateID=-1}return t.prototype.isEmpty=function(){return this.minX>this.maxX||this.minY>this.maxY},t.prototype.clear=function(){this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0},t.prototype.getRectangle=function(t){return this.minX>this.maxX||this.minY>this.maxY?Ce.EMPTY:((t=t||new Ce(0,0,1,1)).x=this.minX,t.y=this.minY,t.width=this.maxX-this.minX,t.height=this.maxY-this.minY,t)},t.prototype.addPoint=function(t){this.minX=Math.min(this.minX,t.x),this.maxX=Math.max(this.maxX,t.x),this.minY=Math.min(this.minY,t.y),this.maxY=Math.max(this.maxY,t.y)},t.prototype.addPointMatrix=function(t,e){var r=t.a,i=t.b,n=t.c,o=t.d,s=t.tx,a=t.ty,h=r*e.x+n*e.y+s,u=i*e.x+o*e.y+a;this.minX=Math.min(this.minX,h),this.maxX=Math.max(this.maxX,h),this.minY=Math.min(this.minY,u),this.maxY=Math.max(this.maxY,u)},t.prototype.addQuad=function(t){var e=this.minX,r=this.minY,i=this.maxX,n=this.maxY,o=t[0],s=t[1];e=o<e?o:e,r=s<r?s:r,i=o>i?o:i,n=s>n?s:n,e=(o=t[2])<e?o:e,r=(s=t[3])<r?s:r,i=o>i?o:i,n=s>n?s:n,e=(o=t[4])<e?o:e,r=(s=t[5])<r?s:r,i=o>i?o:i,n=s>n?s:n,e=(o=t[6])<e?o:e,r=(s=t[7])<r?s:r,i=o>i?o:i,n=s>n?s:n,this.minX=e,this.minY=r,this.maxX=i,this.maxY=n},t.prototype.addFrame=function(t,e,r,i,n){this.addFrameMatrix(t.worldTransform,e,r,i,n)},t.prototype.addFrameMatrix=function(t,e,r,i,n){var o=t.a,s=t.b,a=t.c,h=t.d,u=t.tx,l=t.ty,c=this.minX,d=this.minY,f=this.maxX,p=this.maxY,_=o*e+a*r+u,v=s*e+h*r+l;c=_<c?_:c,d=v<d?v:d,f=_>f?_:f,p=v>p?v:p,c=(_=o*i+a*r+u)<c?_:c,d=(v=s*i+h*r+l)<d?v:d,f=_>f?_:f,p=v>p?v:p,c=(_=o*e+a*n+u)<c?_:c,d=(v=s*e+h*n+l)<d?v:d,f=_>f?_:f,p=v>p?v:p,c=(_=o*i+a*n+u)<c?_:c,d=(v=s*i+h*n+l)<d?v:d,f=_>f?_:f,p=v>p?v:p,this.minX=c,this.minY=d,this.maxX=f,this.maxY=p},t.prototype.addVertexData=function(t,e,r){for(var i=this.minX,n=this.minY,o=this.maxX,s=this.maxY,a=e;a<r;a+=2){var h=t[a],u=t[a+1];i=h<i?h:i,n=u<n?u:n,o=h>o?h:o,s=u>s?u:s}this.minX=i,this.minY=n,this.maxX=o,this.maxY=s},t.prototype.addVertices=function(t,e,r,i){this.addVerticesMatrix(t.worldTransform,e,r,i)},t.prototype.addVerticesMatrix=function(t,e,r,i,n,o){void 0===n&&(n=0),void 0===o&&(o=n);for(var s=t.a,a=t.b,h=t.c,u=t.d,l=t.tx,c=t.ty,d=this.minX,f=this.minY,p=this.maxX,_=this.maxY,v=r;v<i;v+=2){var m=e[v],y=e[v+1],g=s*m+h*y+l,T=u*y+a*m+c;d=Math.min(d,g-n),p=Math.max(p,g+n),f=Math.min(f,T-o),_=Math.max(_,T+o)}this.minX=d,this.minY=f,this.maxX=p,this.maxY=_},t.prototype.addBounds=function(t){var e=this.minX,r=this.minY,i=this.maxX,n=this.maxY;this.minX=t.minX<e?t.minX:e,this.minY=t.minY<r?t.minY:r,this.maxX=t.maxX>i?t.maxX:i,this.maxY=t.maxY>n?t.maxY:n},t.prototype.addBoundsMask=function(t,e){var r=t.minX>e.minX?t.minX:e.minX,i=t.minY>e.minY?t.minY:e.minY,n=t.maxX<e.maxX?t.maxX:e.maxX,o=t.maxY<e.maxY?t.maxY:e.maxY;if(r<=n&&i<=o){var s=this.minX,a=this.minY,h=this.maxX,u=this.maxY;this.minX=r<s?r:s,this.minY=i<a?i:a,this.maxX=n>h?n:h,this.maxY=o>u?o:u}},t.prototype.addBoundsMatrix=function(t,e){this.addFrameMatrix(e,t.minX,t.minY,t.maxX,t.maxY)},t.prototype.addBoundsArea=function(t,e){var r=t.minX>e.x?t.minX:e.x,i=t.minY>e.y?t.minY:e.y,n=t.maxX<e.x+e.width?t.maxX:e.x+e.width,o=t.maxY<e.y+e.height?t.maxY:e.y+e.height;if(r<=n&&i<=o){var s=this.minX,a=this.minY,h=this.maxX,u=this.maxY;this.minX=r<s?r:s,this.minY=i<a?i:a,this.maxX=n>h?n:h,this.maxY=o>u?o:u}},t.prototype.pad=function(t,e){void 0===t&&(t=0),void 0===e&&(e=t),this.isEmpty()||(this.minX-=t,this.maxX+=t,this.minY-=e,this.maxY+=e)},t.prototype.addFramePad=function(t,e,r,i,n,o){t-=n,e-=o,r+=n,i+=o,this.minX=this.minX<t?this.minX:t,this.maxX=this.maxX>r?this.maxX:r,this.minY=this.minY<e?this.minY:e,this.maxY=this.maxY>i?this.maxY:i},t}(),Ze=function(t,e){return Ze=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},Ze(t,e)};function Qe(t,e){function r(){this.constructor=t}Ze(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}var Je=function(t){function e(){var e=t.call(this)||this;return e.tempDisplayObjectParent=null,e.transform=new qe,e.alpha=1,e.visible=!0,e.renderable=!0,e.cullable=!1,e.cullArea=null,e.parent=null,e.worldAlpha=1,e._lastSortedIndex=0,e._zIndex=0,e.filterArea=null,e.filters=null,e._enabledFilters=null,e._bounds=new Ke,e._localBounds=null,e._boundsID=0,e._boundsRect=null,e._localBoundsRect=null,e._mask=null,e._maskRefCount=0,e._destroyed=!1,e.isSprite=!1,e.isMask=!1,e}return Qe(e,t),e.mixin=function(t){for(var r=Object.keys(t),i=0;i<r.length;++i){var n=r[i];Object.defineProperty(e.prototype,n,Object.getOwnPropertyDescriptor(t,n))}},Object.defineProperty(e.prototype,\"destroyed\",{get:function(){return this._destroyed},enumerable:!1,configurable:!0}),e.prototype._recursivePostUpdateTransform=function(){this.parent?(this.parent._recursivePostUpdateTransform(),this.transform.updateTransform(this.parent.transform)):this.transform.updateTransform(this._tempDisplayObjectParent.transform)},e.prototype.updateTransform=function(){this._boundsID++,this.transform.updateTransform(this.parent.transform),this.worldAlpha=this.alpha*this.parent.worldAlpha},e.prototype.getBounds=function(t,e){return t||(this.parent?(this._recursivePostUpdateTransform(),this.updateTransform()):(this.parent=this._tempDisplayObjectParent,this.updateTransform(),this.parent=null)),this._bounds.updateID!==this._boundsID&&(this.calculateBounds(),this._bounds.updateID=this._boundsID),e||(this._boundsRect||(this._boundsRect=new Ce),e=this._boundsRect),this._bounds.getRectangle(e)},e.prototype.getLocalBounds=function(t){t||(this._localBoundsRect||(this._localBoundsRect=new Ce),t=this._localBoundsRect),this._localBounds||(this._localBounds=new Ke);var e=this.transform,r=this.parent;this.parent=null,this.transform=this._tempDisplayObjectParent.transform;var i=this._bounds,n=this._boundsID;this._bounds=this._localBounds;var o=this.getBounds(!1,t);return this.parent=r,this.transform=e,this._bounds=i,this._bounds.updateID+=this._boundsID-n,o},e.prototype.toGlobal=function(t,e,r){return void 0===r&&(r=!1),r||(this._recursivePostUpdateTransform(),this.parent?this.displayObjectUpdateTransform():(this.parent=this._tempDisplayObjectParent,this.displayObjectUpdateTransform(),this.parent=null)),this.worldTransform.apply(t,e)},e.prototype.toLocal=function(t,e,r,i){return e&&(t=e.toGlobal(t,r,i)),i||(this._recursivePostUpdateTransform(),this.parent?this.displayObjectUpdateTransform():(this.parent=this._tempDisplayObjectParent,this.displayObjectUpdateTransform(),this.parent=null)),this.worldTransform.applyInverse(t,r)},e.prototype.setParent=function(t){if(!t||!t.addChild)throw new Error(\"setParent: Argument must be a Container\");return t.addChild(this),t},e.prototype.setTransform=function(t,e,r,i,n,o,s,a,h){return void 0===t&&(t=0),void 0===e&&(e=0),void 0===r&&(r=1),void 0===i&&(i=1),void 0===n&&(n=0),void 0===o&&(o=0),void 0===s&&(s=0),void 0===a&&(a=0),void 0===h&&(h=0),this.position.x=t,this.position.y=e,this.scale.x=r||1,this.scale.y=i||1,this.rotation=n,this.skew.x=o,this.skew.y=s,this.pivot.x=a,this.pivot.y=h,this},e.prototype.destroy=function(t){this.parent&&this.parent.removeChild(this),this._destroyed=!0,this.transform=null,this.parent=null,this._bounds=null,this.mask=null,this.cullArea=null,this.filters=null,this.filterArea=null,this.hitArea=null,this.interactive=!1,this.interactiveChildren=!1,this.emit(\"destroyed\"),this.removeAllListeners()},Object.defineProperty(e.prototype,\"_tempDisplayObjectParent\",{get:function(){return null===this.tempDisplayObjectParent&&(this.tempDisplayObjectParent=new $e),this.tempDisplayObjectParent},enumerable:!1,configurable:!0}),e.prototype.enableTempParent=function(){var t=this.parent;return this.parent=this._tempDisplayObjectParent,t},e.prototype.disableTempParent=function(t){this.parent=t},Object.defineProperty(e.prototype,\"x\",{get:function(){return this.position.x},set:function(t){this.transform.position.x=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"y\",{get:function(){return this.position.y},set:function(t){this.transform.position.y=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"worldTransform\",{get:function(){return this.transform.worldTransform},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"localTransform\",{get:function(){return this.transform.localTransform},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"position\",{get:function(){return this.transform.position},set:function(t){this.transform.position.copyFrom(t)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"scale\",{get:function(){return this.transform.scale},set:function(t){this.transform.scale.copyFrom(t)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"pivot\",{get:function(){return this.transform.pivot},set:function(t){this.transform.pivot.copyFrom(t)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"skew\",{get:function(){return this.transform.skew},set:function(t){this.transform.skew.copyFrom(t)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"rotation\",{get:function(){return this.transform.rotation},set:function(t){this.transform.rotation=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"angle\",{get:function(){return this.transform.rotation*Pe},set:function(t){this.transform.rotation=t*Ie},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"zIndex\",{get:function(){return this._zIndex},set:function(t){this._zIndex=t,this.parent&&(this.parent.sortDirty=!0)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"worldVisible\",{get:function(){var t=this;do{if(!t.visible)return!1;t=t.parent}while(t);return!0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"mask\",{get:function(){return this._mask},set:function(t){var e;this._mask!==t&&(this._mask&&(e=this._mask.isMaskData?this._mask.maskObject:this._mask)&&(e._maskRefCount--,0===e._maskRefCount&&(e.renderable=!0,e.isMask=!1)),this._mask=t,this._mask&&(e=this._mask.isMaskData?this._mask.maskObject:this._mask)&&(0===e._maskRefCount&&(e.renderable=!1,e.isMask=!0),e._maskRefCount++))},enumerable:!1,configurable:!0}),e}(j),$e=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.sortDirty=null,e}return Qe(e,t),e}(Je);function tr(t,e){return t.zIndex===e.zIndex?t._lastSortedIndex-e._lastSortedIndex:t.zIndex-e.zIndex}Je.prototype.displayObjectUpdateTransform=Je.prototype.updateTransform;var er=function(e){function r(){var t=e.call(this)||this;return t.children=[],t.sortableChildren=U.SORTABLE_CHILDREN,t.sortDirty=!1,t}return Qe(r,e),r.prototype.onChildrenChange=function(t){},r.prototype.addChild=function(){for(var t=arguments,e=[],r=0;r<arguments.length;r++)e[r]=t[r];if(e.length>1)for(var i=0;i<e.length;i++)this.addChild(e[i]);else{var n=e[0];n.parent&&n.parent.removeChild(n),n.parent=this,this.sortDirty=!0,n.transform._parentID=-1,this.children.push(n),this._boundsID++,this.onChildrenChange(this.children.length-1),this.emit(\"childAdded\",n,this,this.children.length-1),n.emit(\"added\",this)}return e[0]},r.prototype.addChildAt=function(t,e){if(e<0||e>this.children.length)throw new Error(t+\"addChildAt: The index \"+e+\" supplied is out of bounds \"+this.children.length);return t.parent&&t.parent.removeChild(t),t.parent=this,this.sortDirty=!0,t.transform._parentID=-1,this.children.splice(e,0,t),this._boundsID++,this.onChildrenChange(e),t.emit(\"added\",this),this.emit(\"childAdded\",t,this,e),t},r.prototype.swapChildren=function(t,e){if(t!==e){var r=this.getChildIndex(t),i=this.getChildIndex(e);this.children[r]=e,this.children[i]=t,this.onChildrenChange(r<i?r:i)}},r.prototype.getChildIndex=function(t){var e=this.children.indexOf(t);if(-1===e)throw new Error(\"The supplied DisplayObject must be a child of the caller\");return e},r.prototype.setChildIndex=function(t,e){if(e<0||e>=this.children.length)throw new Error(\"The index \"+e+\" supplied is out of bounds \"+this.children.length);var r=this.getChildIndex(t);fe(this.children,r,1),this.children.splice(e,0,t),this.onChildrenChange(e)},r.prototype.getChildAt=function(t){if(t<0||t>=this.children.length)throw new Error(\"getChildAt: Index (\"+t+\") does not exist.\");return this.children[t]},r.prototype.removeChild=function(){for(var t=arguments,e=[],r=0;r<arguments.length;r++)e[r]=t[r];if(e.length>1)for(var i=0;i<e.length;i++)this.removeChild(e[i]);else{var n=e[0],o=this.children.indexOf(n);if(-1===o)return null;n.parent=null,n.transform._parentID=-1,fe(this.children,o,1),this._boundsID++,this.onChildrenChange(o),n.emit(\"removed\",this),this.emit(\"childRemoved\",n,this,o)}return e[0]},r.prototype.removeChildAt=function(t){var e=this.getChildAt(t);return e.parent=null,e.transform._parentID=-1,fe(this.children,t,1),this._boundsID++,this.onChildrenChange(t),e.emit(\"removed\",this),this.emit(\"childRemoved\",e,this,t),e},r.prototype.removeChildren=function(t,e){void 0===t&&(t=0),void 0===e&&(e=this.children.length);var r,i=t,n=e-i;if(n>0&&n<=e){r=this.children.splice(i,n);for(var o=0;o<r.length;++o)r[o].parent=null,r[o].transform&&(r[o].transform._parentID=-1);for(this._boundsID++,this.onChildrenChange(t),o=0;o<r.length;++o)r[o].emit(\"removed\",this),this.emit(\"childRemoved\",r[o],this,o);return r}if(0===n&&0===this.children.length)return[];throw new RangeError(\"removeChildren: numeric values are outside the acceptable range.\")},r.prototype.sortChildren=function(){for(var t=!1,e=0,r=this.children.length;e<r;++e){var i=this.children[e];i._lastSortedIndex=e,t||0===i.zIndex||(t=!0)}t&&this.children.length>1&&this.children.sort(tr),this.sortDirty=!1},r.prototype.updateTransform=function(){this.sortableChildren&&this.sortDirty&&this.sortChildren(),this._boundsID++,this.transform.updateTransform(this.parent.transform),this.worldAlpha=this.alpha*this.parent.worldAlpha;for(var t=0,e=this.children.length;t<e;++t){var r=this.children[t];r.visible&&r.updateTransform()}},r.prototype.calculateBounds=function(){this._bounds.clear(),this._calculateBounds();for(var t=0;t<this.children.length;t++){var e=this.children[t];if(e.visible&&e.renderable)if(e.calculateBounds(),e._mask){var r=e._mask.isMaskData?e._mask.maskObject:e._mask;r?(r.calculateBounds(),this._bounds.addBoundsMask(e._bounds,r._bounds)):this._bounds.addBounds(e._bounds)}else e.filterArea?this._bounds.addBoundsArea(e._bounds,e.filterArea):this._bounds.addBounds(e._bounds)}this._bounds.updateID=this._boundsID},r.prototype.getLocalBounds=function(t,r){void 0===r&&(r=!1);var i=e.prototype.getLocalBounds.call(this,t);if(!r)for(var n=0,o=this.children.length;n<o;++n){var s=this.children[n];s.visible&&s.updateTransform()}return i},r.prototype._calculateBounds=function(){},r.prototype._renderWithCulling=function(t){var e=t.renderTexture.sourceFrame;if(e.width>0&&e.height>0){var i,n;if(this.cullArea?(i=this.cullArea,n=this.worldTransform):this._render!==r.prototype._render&&(i=this.getBounds(!0)),i&&e.intersects(i,n))this._render(t);else if(this.cullArea)return;for(var o=0,s=this.children.length;o<s;++o){var a=this.children[o],h=a.cullable;a.cullable=h||!this.cullArea,a.render(t),a.cullable=h}}},r.prototype.render=function(t){if(this.visible&&!(this.worldAlpha<=0)&&this.renderable)if(this._mask||this.filters&&this.filters.length)this.renderAdvanced(t);else if(this.cullable)this._renderWithCulling(t);else{this._render(t);for(var e=0,r=this.children.length;e<r;++e)this.children[e].render(t)}},r.prototype.renderAdvanced=function(e){var r=this.filters,i=this._mask;if(r){this._enabledFilters||(this._enabledFilters=[]),this._enabledFilters.length=0;for(var n=0;n<r.length;n++)r[n].enabled&&this._enabledFilters.push(r[n])}var o=r&&this._enabledFilters&&this._enabledFilters.length||i&&(!i.isMaskData||i.enabled&&(i.autoDetect||i.type!==t.MASK_TYPES.NONE));if(o&&e.batch.flush(),r&&this._enabledFilters&&this._enabledFilters.length&&e.filter.push(this,this._enabledFilters),i&&e.mask.push(this,this._mask),this.cullable)this._renderWithCulling(e);else{this._render(e),n=0;for(var s=this.children.length;n<s;++n)this.children[n].render(e)}o&&e.batch.flush(),i&&e.mask.pop(this),r&&this._enabledFilters&&this._enabledFilters.length&&e.filter.pop()},r.prototype._render=function(t){},r.prototype.destroy=function(t){e.prototype.destroy.call(this),this.sortDirty=!1;var r=\"boolean\"==typeof t?t:t&&t.children,i=this.removeChildren(0,this.children.length);if(r)for(var n=0;n<i.length;++n)i[n].destroy(t)},Object.defineProperty(r.prototype,\"width\",{get:function(){return this.scale.x*this.getLocalBounds().width},set:function(t){var e=this.getLocalBounds().width;this.scale.x=0!==e?t/e:1,this._width=t},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"height\",{get:function(){return this.scale.y*this.getLocalBounds().height},set:function(t){var e=this.getLocalBounds().height;this.scale.y=0!==e?t/e:1,this._height=t},enumerable:!1,configurable:!0}),r}(Je);er.prototype.containerUpdateTransform=er.prototype.updateTransform,t.ExtensionType=void 0;var rr=function(){return rr=Object.assign||function(t){for(var e,r=arguments,i=1,n=arguments.length;i<n;i++)for(var o in e=r[i])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},rr.apply(this,arguments)};!function(t){t.Application=\"application\",t.RendererPlugin=\"renderer-webgl-plugin\",t.CanvasRendererPlugin=\"renderer-canvas-plugin\",t.Loader=\"loader\",t.LoadParser=\"load-parser\",t.ResolveParser=\"resolve-parser\",t.CacheParser=\"cache-parser\",t.DetectionParser=\"detection-parser\"}(t.ExtensionType||(t.ExtensionType={}));var ir=function(t){if(\"function\"==typeof t||\"object\"==typeof t&&t.extension){var e=\"object\"!=typeof t.extension?{type:t.extension}:t.extension;t=rr(rr({},e),{ref:t})}if(\"object\"!=typeof t)throw new Error(\"Invalid extension type\");return\"string\"==typeof(t=rr({},t)).type&&(t.type=[t.type]),t},nr={_addHandlers:null,_removeHandlers:null,_queue:{},remove:function(){for(var t=arguments,e=this,r=[],i=0;i<arguments.length;i++)r[i]=t[i];return r.map(ir).forEach((function(t){t.type.forEach((function(r){var i,n;return null===(n=(i=e._removeHandlers)[r])||void 0===n?void 0:n.call(i,t)}))})),this},add:function(){for(var t=arguments,e=this,r=[],i=0;i<arguments.length;i++)r[i]=t[i];return r.map(ir).forEach((function(t){t.type.forEach((function(r){var i=e._addHandlers,n=e._queue;i[r]?i[r](t):(n[r]=n[r]||[],n[r].push(t))}))})),this},handle:function(t,e,r){var i=this._addHandlers=this._addHandlers||{},n=this._removeHandlers=this._removeHandlers||{};i[t]=e,n[t]=r;var o=this._queue;return o[t]&&(o[t].forEach((function(t){return e(t)})),delete o[t]),this},handleByMap:function(t,e){return this.handle(t,(function(t){e[t.name]=t.ref}),(function(t){delete e[t.name]}))},handleByList:function(e,r){return this.handle(e,(function(i){var n,o;r.includes(i.ref)||(r.push(i.ref),e===t.ExtensionType.Loader&&(null===(o=(n=i.ref).add)||void 0===o||o.call(n)))}),(function(t){var e=r.indexOf(t.ref);-1!==e&&r.splice(e,1)}))}},or=function(){function t(t){this.items=[],this._name=t,this._aliasCount=0}return t.prototype.emit=function(t,e,r,i,n,o,s,a){if(arguments.length>8)throw new Error(\"max arguments reached\");var h=this,u=h.name,l=h.items;this._aliasCount++;for(var c=0,d=l.length;c<d;c++)l[c][u](t,e,r,i,n,o,s,a);return l===this.items&&this._aliasCount--,this},t.prototype.ensureNonAliasedItems=function(){this._aliasCount>0&&this.items.length>1&&(this._aliasCount=0,this.items=this.items.slice(0))},t.prototype.add=function(t){return t[this._name]&&(this.ensureNonAliasedItems(),this.remove(t),this.items.push(t)),this},t.prototype.remove=function(t){var e=this.items.indexOf(t);return-1!==e&&(this.ensureNonAliasedItems(),this.items.splice(e,1)),this},t.prototype.contains=function(t){return-1!==this.items.indexOf(t)},t.prototype.removeAll=function(){return this.ensureNonAliasedItems(),this.items.length=0,this},t.prototype.destroy=function(){this.removeAll(),this.items=null,this._name=null},Object.defineProperty(t.prototype,\"empty\",{get:function(){return 0===this.items.length},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"name\",{get:function(){return this._name},enumerable:!1,configurable:!0}),t}();Object.defineProperties(or.prototype,{dispatch:{value:or.prototype.emit},run:{value:or.prototype.emit}}),t.UPDATE_PRIORITY=void 0,U.TARGET_FPMS=.06,function(t){t[t.INTERACTION=50]=\"INTERACTION\",t[t.HIGH=25]=\"HIGH\",t[t.NORMAL=0]=\"NORMAL\",t[t.LOW=-25]=\"LOW\",t[t.UTILITY=-50]=\"UTILITY\"}(t.UPDATE_PRIORITY||(t.UPDATE_PRIORITY={}));var sr=function(){function t(t,e,r,i){void 0===e&&(e=null),void 0===r&&(r=0),void 0===i&&(i=!1),this.next=null,this.previous=null,this._destroyed=!1,this.fn=t,this.context=e,this.priority=r,this.once=i}return t.prototype.match=function(t,e){return void 0===e&&(e=null),this.fn===t&&this.context===e},t.prototype.emit=function(t){this.fn&&(this.context?this.fn.call(this.context,t):this.fn(t));var e=this.next;return this.once&&this.destroy(!0),this._destroyed&&(this.next=null),e},t.prototype.connect=function(t){this.previous=t,t.next&&(t.next.previous=this),this.next=t.next,t.next=this},t.prototype.destroy=function(t){void 0===t&&(t=!1),this._destroyed=!0,this.fn=null,this.context=null,this.previous&&(this.previous.next=this.next),this.next&&(this.next.previous=this.previous);var e=this.next;return this.next=t?null:e,this.previous=null,e},t}(),ar=function(){function e(){var t=this;this.autoStart=!1,this.deltaTime=1,this.lastTime=-1,this.speed=1,this.started=!1,this._requestId=null,this._maxElapsedMS=100,this._minElapsedMS=0,this._protected=!1,this._lastFrame=-1,this._head=new sr(null,null,1/0),this.deltaMS=1/U.TARGET_FPMS,this.elapsedMS=1/U.TARGET_FPMS,this._tick=function(e){t._requestId=null,t.started&&(t.update(e),t.started&&null===t._requestId&&t._head.next&&(t._requestId=requestAnimationFrame(t._tick)))}}return e.prototype._requestIfNeeded=function(){null===this._requestId&&this._head.next&&(this.lastTime=performance.now(),this._lastFrame=this.lastTime,this._requestId=requestAnimationFrame(this._tick))},e.prototype._cancelIfNeeded=function(){null!==this._requestId&&(cancelAnimationFrame(this._requestId),this._requestId=null)},e.prototype._startIfPossible=function(){this.started?this._requestIfNeeded():this.autoStart&&this.start()},e.prototype.add=function(e,r,i){return void 0===i&&(i=t.UPDATE_PRIORITY.NORMAL),this._addListener(new sr(e,r,i))},e.prototype.addOnce=function(e,r,i){return void 0===i&&(i=t.UPDATE_PRIORITY.NORMAL),this._addListener(new sr(e,r,i,!0))},e.prototype._addListener=function(t){var e=this._head.next,r=this._head;if(e){for(;e;){if(t.priority>e.priority){t.connect(r);break}r=e,e=e.next}t.previous||t.connect(r)}else t.connect(r);return this._startIfPossible(),this},e.prototype.remove=function(t,e){for(var r=this._head.next;r;)r=r.match(t,e)?r.destroy():r.next;return this._head.next||this._cancelIfNeeded(),this},Object.defineProperty(e.prototype,\"count\",{get:function(){if(!this._head)return 0;for(var t=0,e=this._head;e=e.next;)t++;return t},enumerable:!1,configurable:!0}),e.prototype.start=function(){this.started||(this.started=!0,this._requestIfNeeded())},e.prototype.stop=function(){this.started&&(this.started=!1,this._cancelIfNeeded())},e.prototype.destroy=function(){if(!this._protected){this.stop();for(var t=this._head.next;t;)t=t.destroy(!0);this._head.destroy(),this._head=null}},e.prototype.update=function(t){var e;if(void 0===t&&(t=performance.now()),t>this.lastTime){if((e=this.elapsedMS=t-this.lastTime)>this._maxElapsedMS&&(e=this._maxElapsedMS),e*=this.speed,this._minElapsedMS){var r=t-this._lastFrame|0;if(r<this._minElapsedMS)return;this._lastFrame=t-r%this._minElapsedMS}this.deltaMS=e,this.deltaTime=this.deltaMS*U.TARGET_FPMS;for(var i=this._head,n=i.next;n;)n=n.emit(this.deltaTime);i.next||this._cancelIfNeeded()}else this.deltaTime=this.deltaMS=this.elapsedMS=0;this.lastTime=t},Object.defineProperty(e.prototype,\"FPS\",{get:function(){return 1e3/this.elapsedMS},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"minFPS\",{get:function(){return 1e3/this._maxElapsedMS},set:function(t){var e=Math.min(this.maxFPS,t),r=Math.min(Math.max(0,e)/1e3,U.TARGET_FPMS);this._maxElapsedMS=1/r},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"maxFPS\",{get:function(){return this._minElapsedMS?Math.round(1e3/this._minElapsedMS):0},set:function(t){if(0===t)this._minElapsedMS=0;else{var e=Math.max(this.minFPS,t);this._minElapsedMS=1/(e/1e3)}},enumerable:!1,configurable:!0}),Object.defineProperty(e,\"shared\",{get:function(){if(!e._shared){var t=e._shared=new e;t.autoStart=!0,t._protected=!0}return e._shared},enumerable:!1,configurable:!0}),Object.defineProperty(e,\"system\",{get:function(){if(!e._system){var t=e._system=new e;t.autoStart=!0,t._protected=!0}return e._system},enumerable:!1,configurable:!0}),e}(),hr=function(){function e(){}return e.init=function(e){var r=this;e=Object.assign({autoStart:!0,sharedTicker:!1},e),Object.defineProperty(this,\"ticker\",{set:function(e){this._ticker&&this._ticker.remove(this.render,this),this._ticker=e,e&&e.add(this.render,this,t.UPDATE_PRIORITY.LOW)},get:function(){return this._ticker}}),this.stop=function(){r._ticker.stop()},this.start=function(){r._ticker.start()},this._ticker=null,this.ticker=e.sharedTicker?ar.shared:new ar,e.autoStart&&this.start()},e.destroy=function(){if(this._ticker){var t=this._ticker;this.ticker=null,t.destroy()}},e.extension=t.ExtensionType.Application,e}();U.PREFER_ENV=G.any?t.ENV.WEBGL:t.ENV.WEBGL2,U.STRICT_TEXTURE_CACHE=!1;var ur=[];function lr(t,e){if(!t)return null;var r=\"\";if(\"string\"==typeof t){var i=/\\.(\\w{3,4})(?:$|\\?|#)/i.exec(t);i&&(r=i[1].toLowerCase())}for(var n=ur.length-1;n>=0;--n){var o=ur[n];if(o.test&&o.test(t,r))return new o(t,e)}throw new Error(\"Unrecognized source type to auto-detect Resource\")}var cr=function(t,e){return cr=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},cr(t,e)};function dr(t,e){function r(){this.constructor=t}cr(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}var fr=function(){return fr=Object.assign||function(t){for(var e,r=arguments,i=1,n=arguments.length;i<n;i++)for(var o in e=r[i])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},fr.apply(this,arguments)},pr=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=0),this._width=t,this._height=e,this.destroyed=!1,this.internal=!1,this.onResize=new or(\"setRealSize\"),this.onUpdate=new or(\"update\"),this.onError=new or(\"onError\")}return t.prototype.bind=function(t){this.onResize.add(t),this.onUpdate.add(t),this.onError.add(t),(this._width||this._height)&&this.onResize.emit(this._width,this._height)},t.prototype.unbind=function(t){this.onResize.remove(t),this.onUpdate.remove(t),this.onError.remove(t)},t.prototype.resize=function(t,e){t===this._width&&e===this._height||(this._width=t,this._height=e,this.onResize.emit(t,e))},Object.defineProperty(t.prototype,\"valid\",{get:function(){return!!this._width&&!!this._height},enumerable:!1,configurable:!0}),t.prototype.update=function(){this.destroyed||this.onUpdate.emit()},t.prototype.load=function(){return Promise.resolve(this)},Object.defineProperty(t.prototype,\"width\",{get:function(){return this._width},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"height\",{get:function(){return this._height},enumerable:!1,configurable:!0}),t.prototype.style=function(t,e,r){return!1},t.prototype.dispose=function(){},t.prototype.destroy=function(){this.destroyed||(this.destroyed=!0,this.dispose(),this.onError.removeAll(),this.onError=null,this.onResize.removeAll(),this.onResize=null,this.onUpdate.removeAll(),this.onUpdate=null)},t.test=function(t,e){return!1},t}(),_r=function(e){function r(t,r){var i=this,n=r||{},o=n.width,s=n.height;if(!o||!s)throw new Error(\"BufferResource width or height invalid\");return(i=e.call(this,o,s)||this).data=t,i}return dr(r,e),r.prototype.upload=function(e,r,i){var n=e.gl;n.pixelStorei(n.UNPACK_PREMULTIPLY_ALPHA_WEBGL,r.alphaMode===t.ALPHA_MODES.UNPACK);var o=r.realWidth,s=r.realHeight;return i.width===o&&i.height===s?n.texSubImage2D(r.target,0,0,0,o,s,r.format,i.type,this.data):(i.width=o,i.height=s,n.texImage2D(r.target,0,i.internalFormat,o,s,0,r.format,i.type,this.data)),!0},r.prototype.dispose=function(){this.data=null},r.test=function(t){return t instanceof Float32Array||t instanceof Uint8Array||t instanceof Uint32Array},r}(pr),vr={scaleMode:t.SCALE_MODES.NEAREST,format:t.FORMATS.RGBA,alphaMode:t.ALPHA_MODES.NPM},mr=function(e){function r(r,i){void 0===r&&(r=null),void 0===i&&(i=null);var n=e.call(this)||this,o=(i=i||{}).alphaMode,s=i.mipmap,a=i.anisotropicLevel,h=i.scaleMode,u=i.width,l=i.height,c=i.wrapMode,d=i.format,f=i.type,p=i.target,_=i.resolution,v=i.resourceOptions;return!r||r instanceof pr||((r=lr(r,v)).internal=!0),n.resolution=_||U.RESOLUTION,n.width=Math.round((u||0)*n.resolution)/n.resolution,n.height=Math.round((l||0)*n.resolution)/n.resolution,n._mipmap=void 0!==s?s:U.MIPMAP_TEXTURES,n.anisotropicLevel=void 0!==a?a:U.ANISOTROPIC_LEVEL,n._wrapMode=c||U.WRAP_MODE,n._scaleMode=void 0!==h?h:U.SCALE_MODE,n.format=d||t.FORMATS.RGBA,n.type=f||t.TYPES.UNSIGNED_BYTE,n.target=p||t.TARGETS.TEXTURE_2D,n.alphaMode=void 0!==o?o:t.ALPHA_MODES.UNPACK,n.uid=ve(),n.touched=0,n.isPowerOfTwo=!1,n._refreshPOT(),n._glTextures={},n.dirtyId=0,n.dirtyStyleId=0,n.cacheId=null,n.valid=u>0&&l>0,n.textureCacheIds=[],n.destroyed=!1,n.resource=null,n._batchEnabled=0,n._batchLocation=0,n.parentTextureArray=null,n.setResource(r),n}return dr(r,e),Object.defineProperty(r.prototype,\"realWidth\",{get:function(){return Math.round(this.width*this.resolution)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"realHeight\",{get:function(){return Math.round(this.height*this.resolution)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"mipmap\",{get:function(){return this._mipmap},set:function(t){this._mipmap!==t&&(this._mipmap=t,this.dirtyStyleId++)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"scaleMode\",{get:function(){return this._scaleMode},set:function(t){this._scaleMode!==t&&(this._scaleMode=t,this.dirtyStyleId++)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"wrapMode\",{get:function(){return this._wrapMode},set:function(t){this._wrapMode!==t&&(this._wrapMode=t,this.dirtyStyleId++)},enumerable:!1,configurable:!0}),r.prototype.setStyle=function(t,e){var r;return void 0!==t&&t!==this.scaleMode&&(this.scaleMode=t,r=!0),void 0!==e&&e!==this.mipmap&&(this.mipmap=e,r=!0),r&&this.dirtyStyleId++,this},r.prototype.setSize=function(t,e,r){return r=r||this.resolution,this.setRealSize(t*r,e*r,r)},r.prototype.setRealSize=function(t,e,r){return this.resolution=r||this.resolution,this.width=Math.round(t)/this.resolution,this.height=Math.round(e)/this.resolution,this._refreshPOT(),this.update(),this},r.prototype._refreshPOT=function(){this.isPowerOfTwo=ce(this.realWidth)&&ce(this.realHeight)},r.prototype.setResolution=function(t){var e=this.resolution;return e===t||(this.resolution=t,this.valid&&(this.width=Math.round(this.width*e)/t,this.height=Math.round(this.height*e)/t,this.emit(\"update\",this)),this._refreshPOT()),this},r.prototype.setResource=function(t){if(this.resource===t)return this;if(this.resource)throw new Error(\"Resource can be set only once\");return t.bind(this),this.resource=t,this},r.prototype.update=function(){this.valid?(this.dirtyId++,this.dirtyStyleId++,this.emit(\"update\",this)):this.width>0&&this.height>0&&(this.valid=!0,this.emit(\"loaded\",this),this.emit(\"update\",this))},r.prototype.onError=function(t){this.emit(\"error\",this,t)},r.prototype.destroy=function(){this.resource&&(this.resource.unbind(this),this.resource.internal&&this.resource.destroy(),this.resource=null),this.cacheId&&(delete Te[this.cacheId],delete ge[this.cacheId],this.cacheId=null),this.dispose(),r.removeFromCache(this),this.textureCacheIds=null,this.destroyed=!0},r.prototype.dispose=function(){this.emit(\"dispose\",this)},r.prototype.castToBaseTexture=function(){return this},r.from=function(t,e,i){void 0===i&&(i=U.STRICT_TEXTURE_CACHE);var n=\"string\"==typeof t,o=null;if(n)o=t;else{if(!t._pixiId){var s=e&&e.pixiIdPrefix||\"pixiid\";t._pixiId=s+\"_\"+ve()}o=t._pixiId}var a=Te[o];if(n&&i&&!a)throw new Error('The cacheId \"'+o+'\" does not exist in BaseTextureCache.');return a||((a=new r(t,e)).cacheId=o,r.addToCache(a,o)),a},r.fromBuffer=function(e,i,n,o){e=e||new Float32Array(i*n*4);var s=new _r(e,{width:i,height:n}),a=e instanceof Float32Array?t.TYPES.FLOAT:t.TYPES.UNSIGNED_BYTE;return new r(s,Object.assign({},vr,o||{width:i,height:n,type:a}))},r.addToCache=function(t,e){e&&(-1===t.textureCacheIds.indexOf(e)&&t.textureCacheIds.push(e),Te[e]&&console.warn(\"BaseTexture added to the cache with an id [\"+e+\"] that already had an entry\"),Te[e]=t)},r.removeFromCache=function(t){if(\"string\"==typeof t){var e=Te[t];if(e){var r=e.textureCacheIds.indexOf(t);return r>-1&&e.textureCacheIds.splice(r,1),delete Te[t],e}}else if(t&&t.textureCacheIds){for(var i=0;i<t.textureCacheIds.length;++i)delete Te[t.textureCacheIds[i]];return t.textureCacheIds.length=0,t}return null},r._globalBatch=0,r}(j),yr=function(t){function e(e,r){var i=this,n=r||{},o=n.width,s=n.height;(i=t.call(this,o,s)||this).items=[],i.itemDirtyIds=[];for(var a=0;a<e;a++){var h=new mr;i.items.push(h),i.itemDirtyIds.push(-2)}return i.length=e,i._load=null,i.baseTexture=null,i}return dr(e,t),e.prototype.initFromArray=function(t,e){for(var r=0;r<this.length;r++)t[r]&&(t[r].castToBaseTexture?this.addBaseTextureAt(t[r].castToBaseTexture(),r):t[r]instanceof pr?this.addResourceAt(t[r],r):this.addResourceAt(lr(t[r],e),r))},e.prototype.dispose=function(){for(var t=0,e=this.length;t<e;t++)this.items[t].destroy();this.items=null,this.itemDirtyIds=null,this._load=null},e.prototype.addResourceAt=function(t,e){if(!this.items[e])throw new Error(\"Index \"+e+\" is out of bounds\");return t.valid&&!this.valid&&this.resize(t.width,t.height),this.items[e].setResource(t),this},e.prototype.bind=function(e){if(null!==this.baseTexture)throw new Error(\"Only one base texture per TextureArray is allowed\");t.prototype.bind.call(this,e);for(var r=0;r<this.length;r++)this.items[r].parentTextureArray=e,this.items[r].on(\"update\",e.update,e)},e.prototype.unbind=function(e){t.prototype.unbind.call(this,e);for(var r=0;r<this.length;r++)this.items[r].parentTextureArray=null,this.items[r].off(\"update\",e.update,e)},e.prototype.load=function(){var t=this;if(this._load)return this._load;var e=this.items.map((function(t){return t.resource})).filter((function(t){return t})).map((function(t){return t.load()}));return this._load=Promise.all(e).then((function(){var e=t.items[0],r=e.realWidth,i=e.realHeight;return t.resize(r,i),Promise.resolve(t)})),this._load},e}(pr),gr=function(e){function r(t,r){var i,n,o=this,s=r||{},a=s.width,h=s.height;return Array.isArray(t)?(i=t,n=t.length):n=t,o=e.call(this,n,{width:a,height:h})||this,i&&o.initFromArray(i,r),o}return dr(r,e),r.prototype.addBaseTextureAt=function(t,e){if(!t.resource)throw new Error(\"ArrayResource does not support RenderTexture\");return this.addResourceAt(t.resource,e),this},r.prototype.bind=function(r){e.prototype.bind.call(this,r),r.target=t.TARGETS.TEXTURE_2D_ARRAY},r.prototype.upload=function(t,e,r){var i=this,n=i.length,o=i.itemDirtyIds,s=i.items,a=t.gl;r.dirtyId<0&&a.texImage3D(a.TEXTURE_2D_ARRAY,0,r.internalFormat,this._width,this._height,n,0,e.format,r.type,null);for(var h=0;h<n;h++){var u=s[h];o[h]<u.dirtyId&&(o[h]=u.dirtyId,u.valid&&a.texSubImage3D(a.TEXTURE_2D_ARRAY,0,0,0,h,u.resource.width,u.resource.height,1,e.format,r.type,u.resource.source))}return!0},r}(yr),Tr=function(e){function r(t){var r=this,i=t,n=i.naturalWidth||i.videoWidth||i.width,o=i.naturalHeight||i.videoHeight||i.height;return(r=e.call(this,n,o)||this).source=t,r.noSubImage=!1,r}return dr(r,e),r.crossOrigin=function(t,e,r){void 0===r&&0!==e.indexOf(\"data:\")?t.crossOrigin=Se(e):!1!==r&&(t.crossOrigin=\"string\"==typeof r?r:\"anonymous\")},r.prototype.upload=function(e,r,i,n){var o=e.gl,s=r.realWidth,a=r.realHeight;if((n=n||this.source)instanceof HTMLImageElement){if(!n.complete||0===n.naturalWidth)return!1}else if(n instanceof HTMLVideoElement&&n.readyState<=1)return!1;return o.pixelStorei(o.UNPACK_PREMULTIPLY_ALPHA_WEBGL,r.alphaMode===t.ALPHA_MODES.UNPACK),this.noSubImage||r.target!==o.TEXTURE_2D||i.width!==s||i.height!==a?(i.width=s,i.height=a,o.texImage2D(r.target,0,i.internalFormat,r.format,i.type,n)):o.texSubImage2D(o.TEXTURE_2D,0,0,0,r.format,i.type,n),!0},r.prototype.update=function(){if(!this.destroyed){var t=this.source,r=t.naturalWidth||t.videoWidth||t.width,i=t.naturalHeight||t.videoHeight||t.height;this.resize(r,i),e.prototype.update.call(this)}},r.prototype.dispose=function(){this.source=null},r}(pr),Er=function(t){function e(e){return t.call(this,e)||this}return dr(e,t),e.test=function(t){var e=globalThis.OffscreenCanvas;return!!(e&&t instanceof e)||globalThis.HTMLCanvasElement&&t instanceof HTMLCanvasElement},e}(Tr),br=function(e){function r(i,n){var o=this,s=n||{},a=s.width,h=s.height,u=s.autoLoad,l=s.linkBaseTexture;if(i&&i.length!==r.SIDES)throw new Error(\"Invalid length. Got \"+i.length+\", expected 6\");o=e.call(this,6,{width:a,height:h})||this;for(var c=0;c<r.SIDES;c++)o.items[c].target=t.TARGETS.TEXTURE_CUBE_MAP_POSITIVE_X+c;return o.linkBaseTexture=!1!==l,i&&o.initFromArray(i,n),!1!==u&&o.load(),o}return dr(r,e),r.prototype.bind=function(r){e.prototype.bind.call(this,r),r.target=t.TARGETS.TEXTURE_CUBE_MAP},r.prototype.addBaseTextureAt=function(e,r,i){if(!this.items[r])throw new Error(\"Index \"+r+\" is out of bounds\");if(!this.linkBaseTexture||e.parentTextureArray||Object.keys(e._glTextures).length>0){if(!e.resource)throw new Error(\"CubeResource does not support copying of renderTexture.\");this.addResourceAt(e.resource,r)}else e.target=t.TARGETS.TEXTURE_CUBE_MAP_POSITIVE_X+r,e.parentTextureArray=this.baseTexture,this.items[r]=e;return e.valid&&!this.valid&&this.resize(e.realWidth,e.realHeight),this.items[r]=e,this},r.prototype.upload=function(t,e,i){for(var n=this.itemDirtyIds,o=0;o<r.SIDES;o++){var s=this.items[o];(n[o]<s.dirtyId||i.dirtyId<e.dirtyId)&&(s.valid&&s.resource?(s.resource.upload(t,s,i),n[o]=s.dirtyId):n[o]<-1&&(t.gl.texImage2D(s.target,0,i.internalFormat,e.realWidth,e.realHeight,0,e.format,i.type,null),n[o]=-1))}return!0},r.test=function(t){return Array.isArray(t)&&t.length===r.SIDES},r.SIDES=6,r}(yr),xr=function(e){function r(t,r){var i=this;if(r=r||{},!(t instanceof HTMLImageElement)){var n=new Image;Tr.crossOrigin(n,t,r.crossorigin),n.src=t,t=n}return i=e.call(this,t)||this,!t.complete&&i._width&&i._height&&(i._width=0,i._height=0),i.url=t.src,i._process=null,i.preserveBitmap=!1,i.createBitmap=(void 0!==r.createBitmap?r.createBitmap:U.CREATE_IMAGE_BITMAP)&&!!globalThis.createImageBitmap,i.alphaMode=\"number\"==typeof r.alphaMode?r.alphaMode:null,i.bitmap=null,i._load=null,!1!==r.autoLoad&&i.load(),i}return dr(r,e),r.prototype.load=function(t){var e=this;return this._load||(void 0!==t&&(this.createBitmap=t),this._load=new Promise((function(t,r){var i=e.source;e.url=i.src;var n=function(){e.destroyed||(i.onload=null,i.onerror=null,e.resize(i.width,i.height),e._load=null,e.createBitmap?t(e.process()):t(e))};i.complete&&i.src?n():(i.onload=n,i.onerror=function(t){r(t),e.onError.emit(t)})}))),this._load},r.prototype.process=function(){var e=this,r=this.source;if(null!==this._process)return this._process;if(null!==this.bitmap||!globalThis.createImageBitmap)return Promise.resolve(this);var i=globalThis.createImageBitmap,n=!r.crossOrigin||\"anonymous\"===r.crossOrigin;return this._process=fetch(r.src,{mode:n?\"cors\":\"no-cors\"}).then((function(t){return t.blob()})).then((function(n){return i(n,0,0,r.width,r.height,{premultiplyAlpha:null===e.alphaMode||e.alphaMode===t.ALPHA_MODES.UNPACK?\"premultiply\":\"none\"})})).then((function(t){return e.destroyed?Promise.reject():(e.bitmap=t,e.update(),e._process=null,Promise.resolve(e))})),this._process},r.prototype.upload=function(t,r,i){if(\"number\"==typeof this.alphaMode&&(r.alphaMode=this.alphaMode),!this.createBitmap)return e.prototype.upload.call(this,t,r,i);if(!this.bitmap&&(this.process(),!this.bitmap))return!1;if(e.prototype.upload.call(this,t,r,i,this.bitmap),!this.preserveBitmap){var n=!0,o=r._glTextures;for(var s in o){var a=o[s];if(a!==i&&a.dirtyId!==r.dirtyId){n=!1;break}}n&&(this.bitmap.close&&this.bitmap.close(),this.bitmap=null)}return!0},r.prototype.dispose=function(){this.source.onload=null,this.source.onerror=null,e.prototype.dispose.call(this),this.bitmap&&(this.bitmap.close(),this.bitmap=null),this._process=null,this._load=null},r.test=function(t){return\"string\"==typeof t||t instanceof HTMLImageElement},r}(Tr),Ar=function(t){function e(e,r){var i=this;return r=r||{},(i=t.call(this,U.ADAPTER.createCanvas())||this)._width=0,i._height=0,i.svg=e,i.scale=r.scale||1,i._overrideWidth=r.width,i._overrideHeight=r.height,i._resolve=null,i._crossorigin=r.crossorigin,i._load=null,!1!==r.autoLoad&&i.load(),i}return dr(e,t),e.prototype.load=function(){var t=this;return this._load||(this._load=new Promise((function(r){if(t._resolve=function(){t.resize(t.source.width,t.source.height),r(t)},e.SVG_XML.test(t.svg.trim())){if(!btoa)throw new Error(\"Your browser doesn't support base64 conversions.\");t.svg=\"data:image/svg+xml;base64,\"+btoa(unescape(encodeURIComponent(t.svg)))}t._loadSvg()}))),this._load},e.prototype._loadSvg=function(){var t=this,e=new Image;Tr.crossOrigin(e,this.svg,this._crossorigin),e.src=this.svg,e.onerror=function(r){t._resolve&&(e.onerror=null,t.onError.emit(r))},e.onload=function(){if(t._resolve){var r=e.width,i=e.height;if(!r||!i)throw new Error(\"The SVG image must have width and height defined (in pixels), canvas API needs them.\");var n=r*t.scale,o=i*t.scale;(t._overrideWidth||t._overrideHeight)&&(n=t._overrideWidth||t._overrideHeight/i*r,o=t._overrideHeight||t._overrideWidth/r*i),n=Math.round(n),o=Math.round(o);var s=t.source;s.width=n,s.height=o,s._pixiId=\"canvas_\"+ve(),s.getContext(\"2d\").drawImage(e,0,0,r,i,0,0,n,o),t._resolve(),t._resolve=null}}},e.getSize=function(t){var r=e.SVG_SIZE.exec(t),i={};return r&&(i[r[1]]=Math.round(parseFloat(r[3])),i[r[5]]=Math.round(parseFloat(r[7]))),i},e.prototype.dispose=function(){t.prototype.dispose.call(this),this._resolve=null,this._crossorigin=null},e.test=function(t,r){return\"svg\"===r||\"string\"==typeof t&&t.startsWith(\"data:image/svg+xml\")||\"string\"==typeof t&&e.SVG_XML.test(t)},e.SVG_XML=/^(<\\?xml[^?]+\\?>)?\\s*(<!--[^(-->)]*-->)?\\s*\\<svg/m,e.SVG_SIZE=/<svg[^>]*(?:\\s(width|height)=('|\")(\\d*(?:\\.\\d+)?)(?:px)?('|\"))[^>]*(?:\\s(width|height)=('|\")(\\d*(?:\\.\\d+)?)(?:px)?('|\"))[^>]*>/i,e}(Tr),Sr=function(t){function e(r,i){var n=this;if(i=i||{},!(r instanceof HTMLVideoElement)){var o=document.createElement(\"video\");o.setAttribute(\"preload\",\"auto\"),o.setAttribute(\"webkit-playsinline\",\"\"),o.setAttribute(\"playsinline\",\"\"),\"string\"==typeof r&&(r=[r]);var s=r[0].src||r[0];Tr.crossOrigin(o,s,i.crossorigin);for(var a=0;a<r.length;++a){var h=document.createElement(\"source\"),u=r[a],l=u.src,c=u.mime,d=(l=l||r[a]).split(\"?\").shift().toLowerCase(),f=d.slice(d.lastIndexOf(\".\")+1);c=c||e.MIME_TYPES[f]||\"video/\"+f,h.src=l,h.type=c,o.appendChild(h)}r=o}return(n=t.call(this,r)||this).noSubImage=!0,n._autoUpdate=!0,n._isConnectedToTicker=!1,n._updateFPS=i.updateFPS||0,n._msToNextUpdate=0,n.autoPlay=!1!==i.autoPlay,n._load=null,n._resolve=null,n._onCanPlay=n._onCanPlay.bind(n),n._onError=n._onError.bind(n),!1!==i.autoLoad&&n.load(),n}return dr(e,t),e.prototype.update=function(e){if(!this.destroyed){var r=ar.shared.elapsedMS*this.source.playbackRate;this._msToNextUpdate=Math.floor(this._msToNextUpdate-r),(!this._updateFPS||this._msToNextUpdate<=0)&&(t.prototype.update.call(this),this._msToNextUpdate=this._updateFPS?Math.floor(1e3/this._updateFPS):0)}},e.prototype.load=function(){var t=this;if(this._load)return this._load;var e=this.source;return(e.readyState===e.HAVE_ENOUGH_DATA||e.readyState===e.HAVE_FUTURE_DATA)&&e.width&&e.height&&(e.complete=!0),e.addEventListener(\"play\",this._onPlayStart.bind(this)),e.addEventListener(\"pause\",this._onPlayStop.bind(this)),this._isSourceReady()?this._onCanPlay():(e.addEventListener(\"canplay\",this._onCanPlay),e.addEventListener(\"canplaythrough\",this._onCanPlay),e.addEventListener(\"error\",this._onError,!0)),this._load=new Promise((function(r){t.valid?r(t):(t._resolve=r,e.load())})),this._load},e.prototype._onError=function(t){this.source.removeEventListener(\"error\",this._onError,!0),this.onError.emit(t)},e.prototype._isSourcePlaying=function(){var t=this.source;return!t.paused&&!t.ended&&this._isSourceReady()},e.prototype._isSourceReady=function(){return this.source.readyState>2},e.prototype._onPlayStart=function(){this.valid||this._onCanPlay(),this.autoUpdate&&!this._isConnectedToTicker&&(ar.shared.add(this.update,this),this._isConnectedToTicker=!0)},e.prototype._onPlayStop=function(){this._isConnectedToTicker&&(ar.shared.remove(this.update,this),this._isConnectedToTicker=!1)},e.prototype._onCanPlay=function(){var t=this.source;t.removeEventListener(\"canplay\",this._onCanPlay),t.removeEventListener(\"canplaythrough\",this._onCanPlay);var e=this.valid;this.resize(t.videoWidth,t.videoHeight),!e&&this._resolve&&(this._resolve(this),this._resolve=null),this._isSourcePlaying()?this._onPlayStart():this.autoPlay&&t.play()},e.prototype.dispose=function(){this._isConnectedToTicker&&(ar.shared.remove(this.update,this),this._isConnectedToTicker=!1);var e=this.source;e&&(e.removeEventListener(\"error\",this._onError,!0),e.pause(),e.src=\"\",e.load()),t.prototype.dispose.call(this)},Object.defineProperty(e.prototype,\"autoUpdate\",{get:function(){return this._autoUpdate},set:function(t){t!==this._autoUpdate&&(this._autoUpdate=t,!this._autoUpdate&&this._isConnectedToTicker?(ar.shared.remove(this.update,this),this._isConnectedToTicker=!1):this._autoUpdate&&!this._isConnectedToTicker&&this._isSourcePlaying()&&(ar.shared.add(this.update,this),this._isConnectedToTicker=!0))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"updateFPS\",{get:function(){return this._updateFPS},set:function(t){t!==this._updateFPS&&(this._updateFPS=t)},enumerable:!1,configurable:!0}),e.test=function(t,r){return globalThis.HTMLVideoElement&&t instanceof HTMLVideoElement||e.TYPES.indexOf(r)>-1},e.TYPES=[\"mp4\",\"m4v\",\"webm\",\"ogg\",\"ogv\",\"h264\",\"avi\",\"mov\"],e.MIME_TYPES={ogv:\"video/ogg\",mov:\"video/quicktime\",m4v:\"video/mp4\"},e}(Tr),Rr=function(t){function e(e){return t.call(this,e)||this}return dr(e,t),e.test=function(t){return!!globalThis.createImageBitmap&&\"undefined\"!=typeof ImageBitmap&&t instanceof ImageBitmap},e}(Tr);ur.push(xr,Rr,Er,Sr,Ar,_r,br,gr);var Or={__proto__:null,Resource:pr,BaseImageResource:Tr,INSTALLED:ur,autoDetectResource:lr,AbstractMultiResource:yr,ArrayResource:gr,BufferResource:_r,CanvasResource:Er,CubeResource:br,ImageResource:xr,SVGResource:Ar,VideoResource:Sr,ImageBitmapResource:Rr},Mr=function(e){function r(){return null!==e&&e.apply(this,arguments)||this}return dr(r,e),r.prototype.upload=function(e,r,i){var n=e.gl;n.pixelStorei(n.UNPACK_PREMULTIPLY_ALPHA_WEBGL,r.alphaMode===t.ALPHA_MODES.UNPACK);var o=r.realWidth,s=r.realHeight;return i.width===o&&i.height===s?n.texSubImage2D(r.target,0,0,0,o,s,r.format,i.type,this.data):(i.width=o,i.height=s,n.texImage2D(r.target,0,i.internalFormat,o,s,0,r.format,i.type,this.data)),!0},r}(_r),Pr=function(){function e(e,r){this.width=Math.round(e||100),this.height=Math.round(r||100),this.stencil=!1,this.depth=!1,this.dirtyId=0,this.dirtyFormat=0,this.dirtySize=0,this.depthTexture=null,this.colorTextures=[],this.glFramebuffers={},this.disposeRunner=new or(\"disposeFramebuffer\"),this.multisample=t.MSAA_QUALITY.NONE}return Object.defineProperty(e.prototype,\"colorTexture\",{get:function(){return this.colorTextures[0]},enumerable:!1,configurable:!0}),e.prototype.addColorTexture=function(e,r){return void 0===e&&(e=0),this.colorTextures[e]=r||new mr(null,{scaleMode:t.SCALE_MODES.NEAREST,resolution:1,mipmap:t.MIPMAP_MODES.OFF,width:this.width,height:this.height}),this.dirtyId++,this.dirtyFormat++,this},e.prototype.addDepthTexture=function(e){return this.depthTexture=e||new mr(new Mr(null,{width:this.width,height:this.height}),{scaleMode:t.SCALE_MODES.NEAREST,resolution:1,width:this.width,height:this.height,mipmap:t.MIPMAP_MODES.OFF,format:t.FORMATS.DEPTH_COMPONENT,type:t.TYPES.UNSIGNED_SHORT}),this.dirtyId++,this.dirtyFormat++,this},e.prototype.enableDepth=function(){return this.depth=!0,this.dirtyId++,this.dirtyFormat++,this},e.prototype.enableStencil=function(){return this.stencil=!0,this.dirtyId++,this.dirtyFormat++,this},e.prototype.resize=function(t,e){if(t=Math.round(t),e=Math.round(e),t!==this.width||e!==this.height){this.width=t,this.height=e,this.dirtyId++,this.dirtySize++;for(var r=0;r<this.colorTextures.length;r++){var i=this.colorTextures[r],n=i.resolution;i.setSize(t/n,e/n)}this.depthTexture&&(n=this.depthTexture.resolution,this.depthTexture.setSize(t/n,e/n))}},e.prototype.dispose=function(){this.disposeRunner.emit(this,!1)},e.prototype.destroyDepthTexture=function(){this.depthTexture&&(this.depthTexture.destroy(),this.depthTexture=null,++this.dirtyId,++this.dirtyFormat)},e}(),Ir=function(e){function r(r){void 0===r&&(r={});var i=this;if(\"number\"==typeof r){var n=arguments[0],o=arguments[1],s=arguments[2],a=arguments[3];r={width:n,height:o,scaleMode:s,resolution:a}}return r.width=r.width||100,r.height=r.height||100,r.multisample=void 0!==r.multisample?r.multisample:t.MSAA_QUALITY.NONE,(i=e.call(this,null,r)||this).mipmap=t.MIPMAP_MODES.OFF,i.valid=!0,i.clearColor=[0,0,0,0],i.framebuffer=new Pr(i.realWidth,i.realHeight).addColorTexture(0,i),i.framebuffer.multisample=r.multisample,i.maskStack=[],i.filterStack=[{}],i}return dr(r,e),r.prototype.resize=function(t,e){this.framebuffer.resize(t*this.resolution,e*this.resolution),this.setRealSize(this.framebuffer.width,this.framebuffer.height)},r.prototype.dispose=function(){this.framebuffer.dispose(),e.prototype.dispose.call(this)},r.prototype.destroy=function(){e.prototype.destroy.call(this),this.framebuffer.destroyDepthTexture(),this.framebuffer=null},r}(mr),Dr=function(){function t(){this.x0=0,this.y0=0,this.x1=1,this.y1=0,this.x2=1,this.y2=1,this.x3=0,this.y3=1,this.uvsFloat32=new Float32Array(8)}return t.prototype.set=function(t,e,r){var i=e.width,n=e.height;if(r){var o=t.width/2/i,s=t.height/2/n,a=t.x/i+o,h=t.y/n+s;r=We.add(r,We.NW),this.x0=a+o*We.uX(r),this.y0=h+s*We.uY(r),r=We.add(r,2),this.x1=a+o*We.uX(r),this.y1=h+s*We.uY(r),r=We.add(r,2),this.x2=a+o*We.uX(r),this.y2=h+s*We.uY(r),r=We.add(r,2),this.x3=a+o*We.uX(r),this.y3=h+s*We.uY(r)}else this.x0=t.x/i,this.y0=t.y/n,this.x1=(t.x+t.width)/i,this.y1=t.y/n,this.x2=(t.x+t.width)/i,this.y2=(t.y+t.height)/n,this.x3=t.x/i,this.y3=(t.y+t.height)/n;this.uvsFloat32[0]=this.x0,this.uvsFloat32[1]=this.y0,this.uvsFloat32[2]=this.x1,this.uvsFloat32[3]=this.y1,this.uvsFloat32[4]=this.x2,this.uvsFloat32[5]=this.y2,this.uvsFloat32[6]=this.x3,this.uvsFloat32[7]=this.y3},t}(),wr=new Dr;function Cr(t){t.destroy=function(){},t.on=function(){},t.once=function(){},t.emit=function(){}}var Nr=function(t){function e(r,i,n,o,s,a){var h=t.call(this)||this;if(h.noFrame=!1,i||(h.noFrame=!0,i=new Ce(0,0,1,1)),r instanceof e&&(r=r.baseTexture),h.baseTexture=r,h._frame=i,h.trim=o,h.valid=!1,h._uvs=wr,h.uvMatrix=null,h.orig=n||i,h._rotate=Number(s||0),!0===s)h._rotate=2;else if(h._rotate%2!=0)throw new Error(\"attempt to use diamond-shaped UVs. If you are sure, set rotation manually\");return h.defaultAnchor=a?new De(a.x,a.y):new De(0,0),h._updateID=0,h.textureCacheIds=[],r.valid?h.noFrame?r.valid&&h.onBaseTextureUpdated(r):h.frame=i:r.once(\"loaded\",h.onBaseTextureUpdated,h),h.noFrame&&r.on(\"update\",h.onBaseTextureUpdated,h),h}return dr(e,t),e.prototype.update=function(){this.baseTexture.resource&&this.baseTexture.resource.update()},e.prototype.onBaseTextureUpdated=function(t){if(this.noFrame){if(!this.baseTexture.valid)return;this._frame.width=t.width,this._frame.height=t.height,this.valid=!0,this.updateUvs()}else this.frame=this._frame;this.emit(\"update\",this)},e.prototype.destroy=function(t){if(this.baseTexture){if(t){var r=this.baseTexture.resource;r&&r.url&&ge[r.url]&&e.removeFromCache(r.url),this.baseTexture.destroy()}this.baseTexture.off(\"loaded\",this.onBaseTextureUpdated,this),this.baseTexture.off(\"update\",this.onBaseTextureUpdated,this),this.baseTexture=null}this._frame=null,this._uvs=null,this.trim=null,this.orig=null,this.valid=!1,e.removeFromCache(this),this.textureCacheIds=null},e.prototype.clone=function(){var t=this._frame.clone(),r=this._frame===this.orig?t:this.orig.clone(),i=new e(this.baseTexture,!this.noFrame&&t,r,this.trim&&this.trim.clone(),this.rotate,this.defaultAnchor);return this.noFrame&&(i._frame=t),i},e.prototype.updateUvs=function(){this._uvs===wr&&(this._uvs=new Dr),this._uvs.set(this._frame,this.baseTexture,this.rotate),this._updateID++},e.from=function(t,r,i){void 0===r&&(r={}),void 0===i&&(i=U.STRICT_TEXTURE_CACHE);var n=\"string\"==typeof t,o=null;if(n)o=t;else if(t instanceof mr){if(!t.cacheId){var s=r&&r.pixiIdPrefix||\"pixiid\";t.cacheId=s+\"-\"+ve(),mr.addToCache(t,t.cacheId)}o=t.cacheId}else t._pixiId||(s=r&&r.pixiIdPrefix||\"pixiid\",t._pixiId=s+\"_\"+ve()),o=t._pixiId;var a=ge[o];if(n&&i&&!a)throw new Error('The cacheId \"'+o+'\" does not exist in TextureCache.');return a||t instanceof mr?!a&&t instanceof mr&&(a=new e(t),e.addToCache(a,o)):(r.resolution||(r.resolution=Re(t)),(a=new e(new mr(t,r))).baseTexture.cacheId=o,mr.addToCache(a.baseTexture,o),e.addToCache(a,o)),a},e.fromURL=function(t,r){var i=Object.assign({autoLoad:!1},null==r?void 0:r.resourceOptions),n=e.from(t,Object.assign({resourceOptions:i},r),!1),o=n.baseTexture.resource;return n.baseTexture.valid?Promise.resolve(n):o.load().then((function(){return Promise.resolve(n)}))},e.fromBuffer=function(t,r,i,n){return new e(mr.fromBuffer(t,r,i,n))},e.fromLoader=function(t,r,i,n){var o=new mr(t,Object.assign({scaleMode:U.SCALE_MODE,resolution:Re(r)},n)),s=o.resource;s instanceof xr&&(s.url=r);var a=new e(o);return i||(i=r),mr.addToCache(a.baseTexture,i),e.addToCache(a,i),i!==r&&(mr.addToCache(a.baseTexture,r),e.addToCache(a,r)),a.baseTexture.valid?Promise.resolve(a):new Promise((function(t){a.baseTexture.once(\"loaded\",(function(){return t(a)}))}))},e.addToCache=function(t,e){e&&(-1===t.textureCacheIds.indexOf(e)&&t.textureCacheIds.push(e),ge[e]&&console.warn(\"Texture added to the cache with an id [\"+e+\"] that already had an entry\"),ge[e]=t)},e.removeFromCache=function(t){if(\"string\"==typeof t){var e=ge[t];if(e){var r=e.textureCacheIds.indexOf(t);return r>-1&&e.textureCacheIds.splice(r,1),delete ge[t],e}}else if(t&&t.textureCacheIds){for(var i=0;i<t.textureCacheIds.length;++i)ge[t.textureCacheIds[i]]===t&&delete ge[t.textureCacheIds[i]];return t.textureCacheIds.length=0,t}return null},Object.defineProperty(e.prototype,\"resolution\",{get:function(){return this.baseTexture.resolution},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"frame\",{get:function(){return this._frame},set:function(t){this._frame=t,this.noFrame=!1;var e=t.x,r=t.y,i=t.width,n=t.height,o=e+i>this.baseTexture.width,s=r+n>this.baseTexture.height;if(o||s){var a=o&&s?\"and\":\"or\",h=\"X: \"+e+\" + \"+i+\" = \"+(e+i)+\" > \"+this.baseTexture.width,u=\"Y: \"+r+\" + \"+n+\" = \"+(r+n)+\" > \"+this.baseTexture.height;throw new Error(\"Texture Error: frame does not fit inside the base Texture dimensions: \"+h+\" \"+a+\" \"+u)}this.valid=i&&n&&this.baseTexture.valid,this.trim||this.rotate||(this.orig=t),this.valid&&this.updateUvs()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"rotate\",{get:function(){return this._rotate},set:function(t){this._rotate=t,this.valid&&this.updateUvs()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"width\",{get:function(){return this.orig.width},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"height\",{get:function(){return this.orig.height},enumerable:!1,configurable:!0}),e.prototype.castToBaseTexture=function(){return this.baseTexture},Object.defineProperty(e,\"EMPTY\",{get:function(){return e._EMPTY||(e._EMPTY=new e(new mr),Cr(e._EMPTY),Cr(e._EMPTY.baseTexture)),e._EMPTY},enumerable:!1,configurable:!0}),Object.defineProperty(e,\"WHITE\",{get:function(){if(!e._WHITE){var t=U.ADAPTER.createCanvas(16,16),r=t.getContext(\"2d\");t.width=16,t.height=16,r.fillStyle=\"white\",r.fillRect(0,0,16,16),e._WHITE=new e(mr.from(t)),Cr(e._WHITE),Cr(e._WHITE.baseTexture)}return e._WHITE},enumerable:!1,configurable:!0}),e}(j),Fr=function(t){function e(e,r){var i=t.call(this,e,r)||this;return i.valid=!0,i.filterFrame=null,i.filterPoolKey=null,i.updateUvs(),i}return dr(e,t),Object.defineProperty(e.prototype,\"framebuffer\",{get:function(){return this.baseTexture.framebuffer},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"multisample\",{get:function(){return this.framebuffer.multisample},set:function(t){this.framebuffer.multisample=t},enumerable:!1,configurable:!0}),e.prototype.resize=function(t,e,r){void 0===r&&(r=!0);var i=this.baseTexture.resolution,n=Math.round(t*i)/i,o=Math.round(e*i)/i;this.valid=n>0&&o>0,this._frame.width=this.orig.width=n,this._frame.height=this.orig.height=o,r&&this.baseTexture.resize(n,o),this.updateUvs()},e.prototype.setResolution=function(t){var e=this.baseTexture;e.resolution!==t&&(e.setResolution(t),this.resize(e.width,e.height,!1))},e.create=function(t){for(var r=arguments,i=[],n=1;n<arguments.length;n++)i[n-1]=r[n];return\"number\"==typeof t&&(t={width:t,height:i[0],scaleMode:i[1],resolution:i[2]}),new e(new Ir(t))},e}(Nr),Lr=function(){function e(t){this.texturePool={},this.textureOptions=t||{},this.enableFullScreen=!1,this._pixelsWidth=0,this._pixelsHeight=0}return e.prototype.createTexture=function(e,r,i){void 0===i&&(i=t.MSAA_QUALITY.NONE);var n=new Ir(Object.assign({width:e,height:r,resolution:1,multisample:i},this.textureOptions));return new Fr(n)},e.prototype.getOptimalTexture=function(e,r,i,n){var o;void 0===i&&(i=1),void 0===n&&(n=t.MSAA_QUALITY.NONE),e=Math.ceil(e*i-1e-6),r=Math.ceil(r*i-1e-6),this.enableFullScreen&&e===this._pixelsWidth&&r===this._pixelsHeight?o=n>1?-n:-1:(o=((65535&(e=le(e)))<<16|65535&(r=le(r)))>>>0,n>1&&(o+=4294967296*n)),this.texturePool[o]||(this.texturePool[o]=[]);var s=this.texturePool[o].pop();return s||(s=this.createTexture(e,r,n)),s.filterPoolKey=o,s.setResolution(i),s},e.prototype.getFilterTexture=function(e,r,i){var n=this.getOptimalTexture(e.width,e.height,r||e.resolution,i||t.MSAA_QUALITY.NONE);return n.filterFrame=e.filterFrame,n},e.prototype.returnTexture=function(t){var e=t.filterPoolKey;t.filterFrame=null,this.texturePool[e].push(t)},e.prototype.returnFilterTexture=function(t){this.returnTexture(t)},e.prototype.clear=function(t){if(t=!1!==t)for(var e in this.texturePool){var r=this.texturePool[e];if(r)for(var i=0;i<r.length;i++)r[i].destroy(!0)}this.texturePool={}},e.prototype.setScreenSize=function(t){if(t.width!==this._pixelsWidth||t.height!==this._pixelsHeight){for(var e in this.enableFullScreen=t.width>0&&t.height>0,this.texturePool)if(Number(e)<0){var r=this.texturePool[e];if(r)for(var i=0;i<r.length;i++)r[i].destroy(!0);this.texturePool[e]=[]}this._pixelsWidth=t.width,this._pixelsHeight=t.height}},e.SCREEN_KEY=-1,e}(),Br=function(){function e(e,r,i,n,o,s,a){void 0===r&&(r=0),void 0===i&&(i=!1),void 0===n&&(n=t.TYPES.FLOAT),this.buffer=e,this.size=r,this.normalized=i,this.type=n,this.stride=o,this.start=s,this.instance=a}return e.prototype.destroy=function(){this.buffer=null},e.from=function(t,r,i,n,o){return new e(t,r,i,n,o)},e}(),Gr=0,Ur=function(){function e(t,e,r){void 0===e&&(e=!0),void 0===r&&(r=!1),this.data=t||new Float32Array(1),this._glBuffers={},this._updateID=0,this.index=r,this.static=e,this.id=Gr++,this.disposeRunner=new or(\"disposeBuffer\")}return e.prototype.update=function(t){t instanceof Array&&(t=new Float32Array(t)),this.data=t||this.data,this._updateID++},e.prototype.dispose=function(){this.disposeRunner.emit(this,!1)},e.prototype.destroy=function(){this.dispose(),this.data=null},Object.defineProperty(e.prototype,\"index\",{get:function(){return this.type===t.BUFFER_TYPE.ELEMENT_ARRAY_BUFFER},set:function(e){this.type=e?t.BUFFER_TYPE.ELEMENT_ARRAY_BUFFER:t.BUFFER_TYPE.ARRAY_BUFFER},enumerable:!1,configurable:!0}),e.from=function(t){return t instanceof Array&&(t=new Float32Array(t)),new e(t)},e}(),kr={Float32Array:Float32Array,Uint32Array:Uint32Array,Int32Array:Int32Array,Uint8Array:Uint8Array},Xr={5126:4,5123:2,5121:1},jr=0,Hr={Float32Array:Float32Array,Uint32Array:Uint32Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array},Yr=function(){function e(t,e){void 0===t&&(t=[]),void 0===e&&(e={}),this.buffers=t,this.indexBuffer=null,this.attributes=e,this.glVertexArrayObjects={},this.id=jr++,this.instanced=!1,this.instanceCount=1,this.disposeRunner=new or(\"disposeGeometry\"),this.refCount=0}return e.prototype.addAttribute=function(t,e,r,i,n,o,s,a){if(void 0===r&&(r=0),void 0===i&&(i=!1),void 0===a&&(a=!1),!e)throw new Error(\"You must pass a buffer when creating an attribute\");e instanceof Ur||(e instanceof Array&&(e=new Float32Array(e)),e=new Ur(e));var h=t.split(\"|\");if(h.length>1){for(var u=0;u<h.length;u++)this.addAttribute(h[u],e,r,i,n);return this}var l=this.buffers.indexOf(e);return-1===l&&(this.buffers.push(e),l=this.buffers.length-1),this.attributes[t]=new Br(l,r,i,n,o,s,a),this.instanced=this.instanced||a,this},e.prototype.getAttribute=function(t){return this.attributes[t]},e.prototype.getBuffer=function(t){return this.buffers[this.getAttribute(t).buffer]},e.prototype.addIndex=function(e){return e instanceof Ur||(e instanceof Array&&(e=new Uint16Array(e)),e=new Ur(e)),e.type=t.BUFFER_TYPE.ELEMENT_ARRAY_BUFFER,this.indexBuffer=e,-1===this.buffers.indexOf(e)&&this.buffers.push(e),this},e.prototype.getIndex=function(){return this.indexBuffer},e.prototype.interleave=function(){if(1===this.buffers.length||2===this.buffers.length&&this.indexBuffer)return this;var t,e=[],r=[],i=new Ur;for(t in this.attributes){var n=this.attributes[t],o=this.buffers[n.buffer];e.push(o.data),r.push(n.size*Xr[n.type]/4),n.buffer=0}for(i.data=function(t,e){for(var r=0,i=0,n={},o=0;o<t.length;o++)i+=e[o],r+=t[o].length;var s=new ArrayBuffer(4*r),a=null,h=0;for(o=0;o<t.length;o++){var u=e[o],l=t[o],c=he(l);n[c]||(n[c]=new kr[c](s)),a=n[c];for(var d=0;d<l.length;d++)a[(d/u|0)*i+h+d%u]=l[d];h+=u}return new Float32Array(s)}(e,r),t=0;t<this.buffers.length;t++)this.buffers[t]!==this.indexBuffer&&this.buffers[t].destroy();return this.buffers=[i],this.indexBuffer&&this.buffers.push(this.indexBuffer),this},e.prototype.getSize=function(){for(var t in this.attributes){var e=this.attributes[t];return this.buffers[e.buffer].data.length/(e.stride/4||e.size)}return 0},e.prototype.dispose=function(){this.disposeRunner.emit(this,!1)},e.prototype.destroy=function(){this.dispose(),this.buffers=null,this.indexBuffer=null,this.attributes=null},e.prototype.clone=function(){for(var r=new e,i=0;i<this.buffers.length;i++)r.buffers[i]=new Ur(this.buffers[i].data.slice(0));for(var i in this.attributes){var n=this.attributes[i];r.attributes[i]=new Br(n.buffer,n.size,n.normalized,n.type,n.stride,n.start,n.instance)}return this.indexBuffer&&(r.indexBuffer=r.buffers[this.buffers.indexOf(this.indexBuffer)],r.indexBuffer.type=t.BUFFER_TYPE.ELEMENT_ARRAY_BUFFER),r},e.merge=function(r){for(var i,n=new e,o=[],s=[],a=[],h=0;h<r.length;h++){i=r[h];for(var u=0;u<i.buffers.length;u++)s[u]=s[u]||0,s[u]+=i.buffers[u].data.length,a[u]=0}for(h=0;h<i.buffers.length;h++)o[h]=new(Hr[he(i.buffers[h].data)])(s[h]),n.buffers[h]=new Ur(o[h]);for(h=0;h<r.length;h++)for(i=r[h],u=0;u<i.buffers.length;u++)o[u].set(i.buffers[u].data,a[u]),a[u]+=i.buffers[u].data.length;if(n.attributes=i.attributes,i.indexBuffer){n.indexBuffer=n.buffers[i.buffers.indexOf(i.indexBuffer)],n.indexBuffer.type=t.BUFFER_TYPE.ELEMENT_ARRAY_BUFFER;var l=0,c=0,d=0,f=0;for(h=0;h<i.buffers.length;h++)if(i.buffers[h]!==i.indexBuffer){f=h;break}for(var h in i.attributes){var p=i.attributes[h];(0|p.buffer)===f&&(c+=p.size*Xr[p.type]/4)}for(h=0;h<r.length;h++){var _=r[h].indexBuffer.data;for(u=0;u<_.length;u++)n.indexBuffer.data[u+d]+=l;l+=r[h].buffers[f].data.length/c,d+=_.length}}return n},e}(),Vr=function(t){function e(){var e=t.call(this)||this;return e.addAttribute(\"aVertexPosition\",new Float32Array([0,0,1,0,1,1,0,1])).addIndex([0,1,3,2]),e}return dr(e,t),e}(Yr),zr=function(t){function e(){var e=t.call(this)||this;return e.vertices=new Float32Array([-1,-1,1,-1,1,1,-1,1]),e.uvs=new Float32Array([0,0,1,0,1,1,0,1]),e.vertexBuffer=new Ur(e.vertices),e.uvBuffer=new Ur(e.uvs),e.addAttribute(\"aVertexPosition\",e.vertexBuffer).addAttribute(\"aTextureCoord\",e.uvBuffer).addIndex([0,1,2,0,2,3]),e}return dr(e,t),e.prototype.map=function(t,e){var r=0,i=0;return this.uvs[0]=r,this.uvs[1]=i,this.uvs[2]=r+e.width/t.width,this.uvs[3]=i,this.uvs[4]=r+e.width/t.width,this.uvs[5]=i+e.height/t.height,this.uvs[6]=r,this.uvs[7]=i+e.height/t.height,r=e.x,i=e.y,this.vertices[0]=r,this.vertices[1]=i,this.vertices[2]=r+e.width,this.vertices[3]=i,this.vertices[4]=r+e.width,this.vertices[5]=i+e.height,this.vertices[6]=r,this.vertices[7]=i+e.height,this.invalidate(),this},e.prototype.invalidate=function(){return this.vertexBuffer._updateID++,this.uvBuffer._updateID++,this},e}(Yr),Wr=0,qr=function(){function e(e,r,i){this.group=!0,this.syncUniforms={},this.dirtyId=0,this.id=Wr++,this.static=!!r,this.ubo=!!i,e instanceof Ur?(this.buffer=e,this.buffer.type=t.BUFFER_TYPE.UNIFORM_BUFFER,this.autoManage=!1,this.ubo=!0):(this.uniforms=e,this.ubo&&(this.buffer=new Ur(new Float32Array(1)),this.buffer.type=t.BUFFER_TYPE.UNIFORM_BUFFER,this.autoManage=!0))}return e.prototype.update=function(){this.dirtyId++,!this.autoManage&&this.buffer&&this.buffer.update()},e.prototype.add=function(t,r,i){if(this.ubo)throw new Error(\"[UniformGroup] uniform groups in ubo mode cannot be modified, or have uniform groups nested in them\");this.uniforms[t]=new e(r,i)},e.from=function(t,r,i){return new e(t,r,i)},e.uboFrom=function(t,r){return new e(t,null==r||r,!0)},e}(),Kr=function(){function e(){this.renderTexture=null,this.target=null,this.legacy=!1,this.resolution=1,this.multisample=t.MSAA_QUALITY.NONE,this.sourceFrame=new Ce,this.destinationFrame=new Ce,this.bindingSourceFrame=new Ce,this.bindingDestinationFrame=new Ce,this.filters=[],this.transform=null}return e.prototype.clear=function(){this.target=null,this.filters=null,this.renderTexture=null},e}(),Zr=[new De,new De,new De,new De],Qr=new Ue,Jr=function(){function e(t){this.renderer=t,this.defaultFilterStack=[{}],this.texturePool=new Lr,this.texturePool.setScreenSize(t.view),this.statePool=[],this.quad=new Vr,this.quadUv=new zr,this.tempRect=new Ce,this.activeState={},this.globalUniforms=new qr({outputFrame:new Ce,inputSize:new Float32Array(4),inputPixel:new Float32Array(4),inputClamp:new Float32Array(4),resolution:1,filterArea:new Float32Array(4),filterClamp:new Float32Array(4)},!0),this.forceClear=!1,this.useMaxPadding=!1}return e.prototype.push=function(t,e){for(var r,i,n=this.renderer,o=this.defaultFilterStack,s=this.statePool.pop()||new Kr,a=this.renderer.renderTexture,h=e[0].resolution,u=e[0].multisample,l=e[0].padding,c=e[0].autoFit,d=null===(r=e[0].legacy)||void 0===r||r,f=1;f<e.length;f++){var p=e[f];h=Math.min(h,p.resolution),u=Math.min(u,p.multisample),l=this.useMaxPadding?Math.max(l,p.padding):l+p.padding,c=c&&p.autoFit,d=d||null===(i=p.legacy)||void 0===i||i}1===o.length&&(this.defaultFilterStack[0].renderTexture=a.current),o.push(s),s.resolution=h,s.multisample=u,s.legacy=d,s.target=t,s.sourceFrame.copyFrom(t.filterArea||t.getBounds(!0)),s.sourceFrame.pad(l);var _=this.tempRect.copyFrom(a.sourceFrame);n.projection.transform&&this.transformAABB(Qr.copyFrom(n.projection.transform).invert(),_),c?(s.sourceFrame.fit(_),(s.sourceFrame.width<=0||s.sourceFrame.height<=0)&&(s.sourceFrame.width=0,s.sourceFrame.height=0)):s.sourceFrame.intersects(_)||(s.sourceFrame.width=0,s.sourceFrame.height=0),this.roundFrame(s.sourceFrame,a.current?a.current.resolution:n.resolution,a.sourceFrame,a.destinationFrame,n.projection.transform),s.renderTexture=this.getOptimalFilterTexture(s.sourceFrame.width,s.sourceFrame.height,h,u),s.filters=e,s.destinationFrame.width=s.renderTexture.width,s.destinationFrame.height=s.renderTexture.height;var v=this.tempRect;v.x=0,v.y=0,v.width=s.sourceFrame.width,v.height=s.sourceFrame.height,s.renderTexture.filterFrame=s.sourceFrame,s.bindingSourceFrame.copyFrom(a.sourceFrame),s.bindingDestinationFrame.copyFrom(a.destinationFrame),s.transform=n.projection.transform,n.projection.transform=null,a.bind(s.renderTexture,s.sourceFrame,v),n.framebuffer.clear(0,0,0,0)},e.prototype.pop=function(){var e=this.defaultFilterStack,r=e.pop(),i=r.filters;this.activeState=r;var n=this.globalUniforms.uniforms;n.outputFrame=r.sourceFrame,n.resolution=r.resolution;var o=n.inputSize,s=n.inputPixel,a=n.inputClamp;if(o[0]=r.destinationFrame.width,o[1]=r.destinationFrame.height,o[2]=1/o[0],o[3]=1/o[1],s[0]=Math.round(o[0]*r.resolution),s[1]=Math.round(o[1]*r.resolution),s[2]=1/s[0],s[3]=1/s[1],a[0]=.5*s[2],a[1]=.5*s[3],a[2]=r.sourceFrame.width*o[2]-.5*s[2],a[3]=r.sourceFrame.height*o[3]-.5*s[3],r.legacy){var h=n.filterArea;h[0]=r.destinationFrame.width,h[1]=r.destinationFrame.height,h[2]=r.sourceFrame.x,h[3]=r.sourceFrame.y,n.filterClamp=n.inputClamp}this.globalUniforms.update();var u=e[e.length-1];if(this.renderer.framebuffer.blit(),1===i.length)i[0].apply(this,r.renderTexture,u.renderTexture,t.CLEAR_MODES.BLEND,r),this.returnFilterTexture(r.renderTexture);else{var l=r.renderTexture,c=this.getOptimalFilterTexture(l.width,l.height,r.resolution);c.filterFrame=l.filterFrame;var d=0;for(d=0;d<i.length-1;++d){1===d&&r.multisample>1&&((c=this.getOptimalFilterTexture(l.width,l.height,r.resolution)).filterFrame=l.filterFrame),i[d].apply(this,l,c,t.CLEAR_MODES.CLEAR,r);var f=l;l=c,c=f}i[d].apply(this,l,u.renderTexture,t.CLEAR_MODES.BLEND,r),d>1&&r.multisample>1&&this.returnFilterTexture(r.renderTexture),this.returnFilterTexture(l),this.returnFilterTexture(c)}r.clear(),this.statePool.push(r)},e.prototype.bindAndClear=function(e,r){void 0===r&&(r=t.CLEAR_MODES.CLEAR);var i=this.renderer,n=i.renderTexture,o=i.state;if(e===this.defaultFilterStack[this.defaultFilterStack.length-1].renderTexture?this.renderer.projection.transform=this.activeState.transform:this.renderer.projection.transform=null,e&&e.filterFrame){var s=this.tempRect;s.x=0,s.y=0,s.width=e.filterFrame.width,s.height=e.filterFrame.height,n.bind(e,e.filterFrame,s)}else e!==this.defaultFilterStack[this.defaultFilterStack.length-1].renderTexture?n.bind(e):this.renderer.renderTexture.bind(e,this.activeState.bindingSourceFrame,this.activeState.bindingDestinationFrame);var a=1&o.stateId||this.forceClear;(r===t.CLEAR_MODES.CLEAR||r===t.CLEAR_MODES.BLIT&&a)&&this.renderer.framebuffer.clear(0,0,0,0)},e.prototype.applyFilter=function(e,r,i,n){var o=this.renderer;o.state.set(e.state),this.bindAndClear(i,n),e.uniforms.uSampler=r,e.uniforms.filterGlobals=this.globalUniforms,o.shader.bind(e),e.legacy=!!e.program.attributeData.aTextureCoord,e.legacy?(this.quadUv.map(r._frame,r.filterFrame),o.geometry.bind(this.quadUv),o.geometry.draw(t.DRAW_MODES.TRIANGLES)):(o.geometry.bind(this.quad),o.geometry.draw(t.DRAW_MODES.TRIANGLE_STRIP))},e.prototype.calculateSpriteMatrix=function(t,e){var r=this.activeState,i=r.sourceFrame,n=r.destinationFrame,o=e._texture.orig,s=t.set(n.width,0,0,n.height,i.x,i.y),a=e.worldTransform.copyTo(Ue.TEMP_MATRIX);return a.invert(),s.prepend(a),s.scale(1/o.width,1/o.height),s.translate(e.anchor.x,e.anchor.y),s},e.prototype.destroy=function(){this.renderer=null,this.texturePool.clear(!1)},e.prototype.getOptimalFilterTexture=function(e,r,i,n){return void 0===i&&(i=1),void 0===n&&(n=t.MSAA_QUALITY.NONE),this.texturePool.getOptimalTexture(e,r,i,n)},e.prototype.getFilterTexture=function(e,r,i){if(\"number\"==typeof e){var n=e;e=r,r=n}e=e||this.activeState.renderTexture;var o=this.texturePool.getOptimalTexture(e.width,e.height,r||e.resolution,i||t.MSAA_QUALITY.NONE);return o.filterFrame=e.filterFrame,o},e.prototype.returnFilterTexture=function(t){this.texturePool.returnTexture(t)},e.prototype.emptyPool=function(){this.texturePool.clear(!0)},e.prototype.resize=function(){this.texturePool.setScreenSize(this.renderer.view)},e.prototype.transformAABB=function(t,e){var r=Zr[0],i=Zr[1],n=Zr[2],o=Zr[3];r.set(e.left,e.top),i.set(e.left,e.bottom),n.set(e.right,e.top),o.set(e.right,e.bottom),t.apply(r,r),t.apply(i,i),t.apply(n,n),t.apply(o,o);var s=Math.min(r.x,i.x,n.x,o.x),a=Math.min(r.y,i.y,n.y,o.y),h=Math.max(r.x,i.x,n.x,o.x),u=Math.max(r.y,i.y,n.y,o.y);e.x=s,e.y=a,e.width=h-s,e.height=u-a},e.prototype.roundFrame=function(t,e,r,i,n){if(!(t.width<=0||t.height<=0||r.width<=0||r.height<=0)){if(n){var o=n.a,s=n.b,a=n.c,h=n.d;if((Math.abs(s)>1e-4||Math.abs(a)>1e-4)&&(Math.abs(o)>1e-4||Math.abs(h)>1e-4))return}(n=n?Qr.copyFrom(n):Qr.identity()).translate(-r.x,-r.y).scale(i.width/r.width,i.height/r.height).translate(i.x,i.y),this.transformAABB(n,t),t.ceil(e),this.transformAABB(n.invert(),t)}},e}(),$r=function(){function t(t){this.renderer=t}return t.prototype.flush=function(){},t.prototype.destroy=function(){this.renderer=null},t.prototype.start=function(){},t.prototype.stop=function(){this.flush()},t.prototype.render=function(t){},t}(),ti=function(){function t(t){this.renderer=t,this.emptyRenderer=new $r(t),this.currentRenderer=this.emptyRenderer}return t.prototype.setObjectRenderer=function(t){this.currentRenderer!==t&&(this.currentRenderer.stop(),this.currentRenderer=t,this.currentRenderer.start())},t.prototype.flush=function(){this.setObjectRenderer(this.emptyRenderer)},t.prototype.reset=function(){this.setObjectRenderer(this.emptyRenderer)},t.prototype.copyBoundTextures=function(t,e){for(var r=this.renderer.texture.boundTextures,i=e-1;i>=0;--i)t[i]=r[i]||null,t[i]&&(t[i]._batchLocation=i)},t.prototype.boundArray=function(t,e,r,i){for(var n=t.elements,o=t.ids,s=t.count,a=0,h=0;h<s;h++){var u=n[h],l=u._batchLocation;if(l>=0&&l<i&&e[l]===u)o[h]=l;else for(;a<i;){var c=e[a];if(!c||c._batchEnabled!==r||c._batchLocation!==a){o[h]=a,u._batchLocation=a,e[a]=u;break}a++}}},t.prototype.destroy=function(){this.renderer=null},t}(),ei=0,ri=function(){function e(t){this.renderer=t,this.webGLVersion=1,this.extensions={},this.supports={uint32Indices:!1},this.handleContextLost=this.handleContextLost.bind(this),this.handleContextRestored=this.handleContextRestored.bind(this),t.view.addEventListener(\"webglcontextlost\",this.handleContextLost,!1),t.view.addEventListener(\"webglcontextrestored\",this.handleContextRestored,!1)}return Object.defineProperty(e.prototype,\"isLost\",{get:function(){return!this.gl||this.gl.isContextLost()},enumerable:!1,configurable:!0}),e.prototype.contextChange=function(t){this.gl=t,this.renderer.gl=t,this.renderer.CONTEXT_UID=ei++},e.prototype.initFromContext=function(t){this.gl=t,this.validateContext(t),this.renderer.gl=t,this.renderer.CONTEXT_UID=ei++,this.renderer.runners.contextChange.emit(t)},e.prototype.initFromOptions=function(t){var e=this.createContext(this.renderer.view,t);this.initFromContext(e)},e.prototype.createContext=function(e,r){var i;if(U.PREFER_ENV>=t.ENV.WEBGL2&&(i=e.getContext(\"webgl2\",r)),i)this.webGLVersion=2;else if(this.webGLVersion=1,!(i=e.getContext(\"webgl\",r)||e.getContext(\"experimental-webgl\",r)))throw new Error(\"This browser does not support WebGL. Try using the canvas renderer\");return this.gl=i,this.getExtensions(),this.gl},e.prototype.getExtensions=function(){var t=this.gl,e={loseContext:t.getExtension(\"WEBGL_lose_context\"),anisotropicFiltering:t.getExtension(\"EXT_texture_filter_anisotropic\"),floatTextureLinear:t.getExtension(\"OES_texture_float_linear\"),s3tc:t.getExtension(\"WEBGL_compressed_texture_s3tc\"),s3tc_sRGB:t.getExtension(\"WEBGL_compressed_texture_s3tc_srgb\"),etc:t.getExtension(\"WEBGL_compressed_texture_etc\"),etc1:t.getExtension(\"WEBGL_compressed_texture_etc1\"),pvrtc:t.getExtension(\"WEBGL_compressed_texture_pvrtc\")||t.getExtension(\"WEBKIT_WEBGL_compressed_texture_pvrtc\"),atc:t.getExtension(\"WEBGL_compressed_texture_atc\"),astc:t.getExtension(\"WEBGL_compressed_texture_astc\")};1===this.webGLVersion?Object.assign(this.extensions,e,{drawBuffers:t.getExtension(\"WEBGL_draw_buffers\"),depthTexture:t.getExtension(\"WEBGL_depth_texture\"),vertexArrayObject:t.getExtension(\"OES_vertex_array_object\")||t.getExtension(\"MOZ_OES_vertex_array_object\")||t.getExtension(\"WEBKIT_OES_vertex_array_object\"),uint32ElementIndex:t.getExtension(\"OES_element_index_uint\"),floatTexture:t.getExtension(\"OES_texture_float\"),floatTextureLinear:t.getExtension(\"OES_texture_float_linear\"),textureHalfFloat:t.getExtension(\"OES_texture_half_float\"),textureHalfFloatLinear:t.getExtension(\"OES_texture_half_float_linear\")}):2===this.webGLVersion&&Object.assign(this.extensions,e,{colorBufferFloat:t.getExtension(\"EXT_color_buffer_float\")})},e.prototype.handleContextLost=function(t){var e=this;t.preventDefault(),setTimeout((function(){e.gl.isContextLost()&&e.extensions.loseContext&&e.extensions.loseContext.restoreContext()}),0)},e.prototype.handleContextRestored=function(){this.renderer.runners.contextChange.emit(this.gl)},e.prototype.destroy=function(){var t=this.renderer.view;this.renderer=null,t.removeEventListener(\"webglcontextlost\",this.handleContextLost),t.removeEventListener(\"webglcontextrestored\",this.handleContextRestored),this.gl.useProgram(null),this.extensions.loseContext&&this.extensions.loseContext.loseContext()},e.prototype.postrender=function(){this.renderer.renderingToScreen&&this.gl.flush()},e.prototype.validateContext=function(t){var e=t.getContextAttributes(),r=\"WebGL2RenderingContext\"in globalThis&&t instanceof globalThis.WebGL2RenderingContext;r&&(this.webGLVersion=2),e&&!e.stencil&&console.warn(\"Provided WebGL context does not have a stencil buffer, masks may not render correctly\");var i=r||!!t.getExtension(\"OES_element_index_uint\");this.supports.uint32Indices=i,i||console.warn(\"Provided WebGL context does not support 32 index buffer, complex graphics may not render correctly\")},e}(),ii=function(e){this.framebuffer=e,this.stencil=null,this.dirtyId=-1,this.dirtyFormat=-1,this.dirtySize=-1,this.multisample=t.MSAA_QUALITY.NONE,this.msaaBuffer=null,this.blitFramebuffer=null,this.mipLevel=0},ni=new Ce,oi=function(){function e(t){this.renderer=t,this.managedFramebuffers=[],this.unknownFramebuffer=new Pr(10,10),this.msaaSamples=null}return e.prototype.contextChange=function(){this.disposeAll(!0);var e=this.gl=this.renderer.gl;if(this.CONTEXT_UID=this.renderer.CONTEXT_UID,this.current=this.unknownFramebuffer,this.viewport=new Ce,this.hasMRT=!0,this.writeDepthTexture=!0,1===this.renderer.context.webGLVersion){var r=this.renderer.context.extensions.drawBuffers,i=this.renderer.context.extensions.depthTexture;U.PREFER_ENV===t.ENV.WEBGL_LEGACY&&(r=null,i=null),r?e.drawBuffers=function(t){return r.drawBuffersWEBGL(t)}:(this.hasMRT=!1,e.drawBuffers=function(){}),i||(this.writeDepthTexture=!1)}else this.msaaSamples=e.getInternalformatParameter(e.RENDERBUFFER,e.RGBA8,e.SAMPLES)},e.prototype.bind=function(t,e,r){void 0===r&&(r=0);var i=this.gl;if(t){var n=t.glFramebuffers[this.CONTEXT_UID]||this.initFramebuffer(t);this.current!==t&&(this.current=t,i.bindFramebuffer(i.FRAMEBUFFER,n.framebuffer)),n.mipLevel!==r&&(t.dirtyId++,t.dirtyFormat++,n.mipLevel=r),n.dirtyId!==t.dirtyId&&(n.dirtyId=t.dirtyId,n.dirtyFormat!==t.dirtyFormat?(n.dirtyFormat=t.dirtyFormat,n.dirtySize=t.dirtySize,this.updateFramebuffer(t,r)):n.dirtySize!==t.dirtySize&&(n.dirtySize=t.dirtySize,this.resizeFramebuffer(t)));for(var o=0;o<t.colorTextures.length;o++){var s=t.colorTextures[o];this.renderer.texture.unbind(s.parentTextureArray||s)}if(t.depthTexture&&this.renderer.texture.unbind(t.depthTexture),e){var a=e.width>>r,h=e.height>>r,u=a/e.width;this.setViewport(e.x*u,e.y*u,a,h)}else a=t.width>>r,h=t.height>>r,this.setViewport(0,0,a,h)}else this.current&&(this.current=null,i.bindFramebuffer(i.FRAMEBUFFER,null)),e?this.setViewport(e.x,e.y,e.width,e.height):this.setViewport(0,0,this.renderer.width,this.renderer.height)},e.prototype.setViewport=function(t,e,r,i){var n=this.viewport;t=Math.round(t),e=Math.round(e),r=Math.round(r),i=Math.round(i),n.width===r&&n.height===i&&n.x===t&&n.y===e||(n.x=t,n.y=e,n.width=r,n.height=i,this.gl.viewport(t,e,r,i))},Object.defineProperty(e.prototype,\"size\",{get:function(){return this.current?{x:0,y:0,width:this.current.width,height:this.current.height}:{x:0,y:0,width:this.renderer.width,height:this.renderer.height}},enumerable:!1,configurable:!0}),e.prototype.clear=function(e,r,i,n,o){void 0===o&&(o=t.BUFFER_BITS.COLOR|t.BUFFER_BITS.DEPTH);var s=this.gl;s.clearColor(e,r,i,n),s.clear(o)},e.prototype.initFramebuffer=function(t){var e=this.gl,r=new ii(e.createFramebuffer());return r.multisample=this.detectSamples(t.multisample),t.glFramebuffers[this.CONTEXT_UID]=r,this.managedFramebuffers.push(t),t.disposeRunner.add(this),r},e.prototype.resizeFramebuffer=function(t){var e=this.gl,r=t.glFramebuffers[this.CONTEXT_UID];r.msaaBuffer&&(e.bindRenderbuffer(e.RENDERBUFFER,r.msaaBuffer),e.renderbufferStorageMultisample(e.RENDERBUFFER,r.multisample,e.RGBA8,t.width,t.height)),r.stencil&&(e.bindRenderbuffer(e.RENDERBUFFER,r.stencil),r.msaaBuffer?e.renderbufferStorageMultisample(e.RENDERBUFFER,r.multisample,e.DEPTH24_STENCIL8,t.width,t.height):e.renderbufferStorage(e.RENDERBUFFER,e.DEPTH_STENCIL,t.width,t.height));var i=t.colorTextures,n=i.length;e.drawBuffers||(n=Math.min(n,1));for(var o=0;o<n;o++){var s=i[o],a=s.parentTextureArray||s;this.renderer.texture.bind(a,0)}t.depthTexture&&this.writeDepthTexture&&this.renderer.texture.bind(t.depthTexture,0)},e.prototype.updateFramebuffer=function(t,e){var r=this.gl,i=t.glFramebuffers[this.CONTEXT_UID],n=t.colorTextures,o=n.length;r.drawBuffers||(o=Math.min(o,1)),i.multisample>1&&this.canMultisampleFramebuffer(t)?(i.msaaBuffer=i.msaaBuffer||r.createRenderbuffer(),r.bindRenderbuffer(r.RENDERBUFFER,i.msaaBuffer),r.renderbufferStorageMultisample(r.RENDERBUFFER,i.multisample,r.RGBA8,t.width,t.height),r.framebufferRenderbuffer(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0,r.RENDERBUFFER,i.msaaBuffer)):i.msaaBuffer&&(r.deleteRenderbuffer(i.msaaBuffer),i.msaaBuffer=null,i.blitFramebuffer&&(i.blitFramebuffer.dispose(),i.blitFramebuffer=null));for(var s=[],a=0;a<o;a++){var h=n[a],u=h.parentTextureArray||h;this.renderer.texture.bind(u,0),0===a&&i.msaaBuffer||(r.framebufferTexture2D(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0+a,h.target,u._glTextures[this.CONTEXT_UID].texture,e),s.push(r.COLOR_ATTACHMENT0+a))}if(s.length>1&&r.drawBuffers(s),t.depthTexture&&this.writeDepthTexture){var l=t.depthTexture;this.renderer.texture.bind(l,0),r.framebufferTexture2D(r.FRAMEBUFFER,r.DEPTH_ATTACHMENT,r.TEXTURE_2D,l._glTextures[this.CONTEXT_UID].texture,e)}!t.stencil&&!t.depth||t.depthTexture&&this.writeDepthTexture?i.stencil&&(r.deleteRenderbuffer(i.stencil),i.stencil=null):(i.stencil=i.stencil||r.createRenderbuffer(),r.bindRenderbuffer(r.RENDERBUFFER,i.stencil),i.msaaBuffer?r.renderbufferStorageMultisample(r.RENDERBUFFER,i.multisample,r.DEPTH24_STENCIL8,t.width,t.height):r.renderbufferStorage(r.RENDERBUFFER,r.DEPTH_STENCIL,t.width,t.height),r.framebufferRenderbuffer(r.FRAMEBUFFER,r.DEPTH_STENCIL_ATTACHMENT,r.RENDERBUFFER,i.stencil))},e.prototype.canMultisampleFramebuffer=function(t){return 1!==this.renderer.context.webGLVersion&&t.colorTextures.length<=1&&!t.depthTexture},e.prototype.detectSamples=function(e){var r=this.msaaSamples,i=t.MSAA_QUALITY.NONE;if(e<=1||null===r)return i;for(var n=0;n<r.length;n++)if(r[n]<=e){i=r[n];break}return 1===i&&(i=t.MSAA_QUALITY.NONE),i},e.prototype.blit=function(t,e,r){var i=this,n=i.current,o=i.renderer,s=i.gl,a=i.CONTEXT_UID;if(2===o.context.webGLVersion&&n){var h=n.glFramebuffers[a];if(h){if(!t){if(!h.msaaBuffer)return;var u=n.colorTextures[0];if(!u)return;h.blitFramebuffer||(h.blitFramebuffer=new Pr(n.width,n.height),h.blitFramebuffer.addColorTexture(0,u)),(t=h.blitFramebuffer).colorTextures[0]!==u&&(t.colorTextures[0]=u,t.dirtyId++,t.dirtyFormat++),t.width===n.width&&t.height===n.height||(t.width=n.width,t.height=n.height,t.dirtyId++,t.dirtySize++)}e||((e=ni).width=n.width,e.height=n.height),r||(r=e);var l=e.width===r.width&&e.height===r.height;this.bind(t),s.bindFramebuffer(s.READ_FRAMEBUFFER,h.framebuffer),s.blitFramebuffer(e.left,e.top,e.right,e.bottom,r.left,r.top,r.right,r.bottom,s.COLOR_BUFFER_BIT,l?s.NEAREST:s.LINEAR)}}},e.prototype.disposeFramebuffer=function(t,e){var r=t.glFramebuffers[this.CONTEXT_UID],i=this.gl;if(r){delete t.glFramebuffers[this.CONTEXT_UID];var n=this.managedFramebuffers.indexOf(t);n>=0&&this.managedFramebuffers.splice(n,1),t.disposeRunner.remove(this),e||(i.deleteFramebuffer(r.framebuffer),r.msaaBuffer&&i.deleteRenderbuffer(r.msaaBuffer),r.stencil&&i.deleteRenderbuffer(r.stencil)),r.blitFramebuffer&&r.blitFramebuffer.dispose()}},e.prototype.disposeAll=function(t){var e=this.managedFramebuffers;this.managedFramebuffers=[];for(var r=0;r<e.length;r++)this.disposeFramebuffer(e[r],t)},e.prototype.forceStencil=function(){var t=this.current;if(t){var e=t.glFramebuffers[this.CONTEXT_UID];if(e&&!e.stencil){t.stencil=!0;var r=t.width,i=t.height,n=this.gl,o=n.createRenderbuffer();n.bindRenderbuffer(n.RENDERBUFFER,o),e.msaaBuffer?n.renderbufferStorageMultisample(n.RENDERBUFFER,e.multisample,n.DEPTH24_STENCIL8,r,i):n.renderbufferStorage(n.RENDERBUFFER,n.DEPTH_STENCIL,r,i),e.stencil=o,n.framebufferRenderbuffer(n.FRAMEBUFFER,n.DEPTH_STENCIL_ATTACHMENT,n.RENDERBUFFER,o)}}},e.prototype.reset=function(){this.current=this.unknownFramebuffer,this.viewport=new Ce},e.prototype.destroy=function(){this.renderer=null},e}(),si={5126:4,5123:2,5121:1},ai=function(){function e(t){this.renderer=t,this._activeGeometry=null,this._activeVao=null,this.hasVao=!0,this.hasInstance=!0,this.canUseUInt32ElementIndex=!1,this.managedGeometries={}}return e.prototype.contextChange=function(){this.disposeAll(!0);var e=this.gl=this.renderer.gl,r=this.renderer.context;if(this.CONTEXT_UID=this.renderer.CONTEXT_UID,2!==r.webGLVersion){var i=this.renderer.context.extensions.vertexArrayObject;U.PREFER_ENV===t.ENV.WEBGL_LEGACY&&(i=null),i?(e.createVertexArray=function(){return i.createVertexArrayOES()},e.bindVertexArray=function(t){return i.bindVertexArrayOES(t)},e.deleteVertexArray=function(t){return i.deleteVertexArrayOES(t)}):(this.hasVao=!1,e.createVertexArray=function(){return null},e.bindVertexArray=function(){return null},e.deleteVertexArray=function(){return null})}if(2!==r.webGLVersion){var n=e.getExtension(\"ANGLE_instanced_arrays\");n?(e.vertexAttribDivisor=function(t,e){return n.vertexAttribDivisorANGLE(t,e)},e.drawElementsInstanced=function(t,e,r,i,o){return n.drawElementsInstancedANGLE(t,e,r,i,o)},e.drawArraysInstanced=function(t,e,r,i){return n.drawArraysInstancedANGLE(t,e,r,i)}):this.hasInstance=!1}this.canUseUInt32ElementIndex=2===r.webGLVersion||!!r.extensions.uint32ElementIndex},e.prototype.bind=function(t,e){e=e||this.renderer.shader.shader;var r=this.gl,i=t.glVertexArrayObjects[this.CONTEXT_UID],n=!1;i||(this.managedGeometries[t.id]=t,t.disposeRunner.add(this),t.glVertexArrayObjects[this.CONTEXT_UID]=i={},n=!0);var o=i[e.program.id]||this.initGeometryVao(t,e,n);this._activeGeometry=t,this._activeVao!==o&&(this._activeVao=o,this.hasVao?r.bindVertexArray(o):this.activateVao(t,e.program)),this.updateBuffers()},e.prototype.reset=function(){this.unbind()},e.prototype.updateBuffers=function(){for(var t=this._activeGeometry,e=this.renderer.buffer,r=0;r<t.buffers.length;r++){var i=t.buffers[r];e.update(i)}},e.prototype.checkCompatibility=function(t,e){var r=t.attributes,i=e.attributeData;for(var n in i)if(!r[n])throw new Error('shader and geometry incompatible, geometry missing the \"'+n+'\" attribute')},e.prototype.getSignature=function(t,e){var r=t.attributes,i=e.attributeData,n=[\"g\",t.id];for(var o in r)i[o]&&n.push(o,i[o].location);return n.join(\"-\")},e.prototype.initGeometryVao=function(t,e,r){void 0===r&&(r=!0);var i=this.gl,n=this.CONTEXT_UID,o=this.renderer.buffer,s=e.program;s.glPrograms[n]||this.renderer.shader.generateProgram(e),this.checkCompatibility(t,s);var a=this.getSignature(t,s),h=t.glVertexArrayObjects[this.CONTEXT_UID],u=h[a];if(u)return h[s.id]=u,u;var l=t.buffers,c=t.attributes,d={},f={};for(var p in l)d[p]=0,f[p]=0;for(var p in c)!c[p].size&&s.attributeData[p]?c[p].size=s.attributeData[p].size:c[p].size||console.warn(\"PIXI Geometry attribute '\"+p+\"' size cannot be determined (likely the bound shader does not have the attribute)\"),d[c[p].buffer]+=c[p].size*si[c[p].type];for(var p in c){var _=c[p],v=_.size;void 0===_.stride&&(d[_.buffer]===v*si[_.type]?_.stride=0:_.stride=d[_.buffer]),void 0===_.start&&(_.start=f[_.buffer],f[_.buffer]+=v*si[_.type])}u=i.createVertexArray(),i.bindVertexArray(u);for(var m=0;m<l.length;m++){var y=l[m];o.bind(y),r&&y._glBuffers[n].refCount++}return this.activateVao(t,s),this._activeVao=u,h[s.id]=u,h[a]=u,u},e.prototype.disposeGeometry=function(t,e){var r;if(this.managedGeometries[t.id]){delete this.managedGeometries[t.id];var i=t.glVertexArrayObjects[this.CONTEXT_UID],n=this.gl,o=t.buffers,s=null===(r=this.renderer)||void 0===r?void 0:r.buffer;if(t.disposeRunner.remove(this),i){if(s)for(var a=0;a<o.length;a++){var h=o[a]._glBuffers[this.CONTEXT_UID];h&&(h.refCount--,0!==h.refCount||e||s.dispose(o[a],e))}if(!e)for(var u in i)if(\"g\"===u[0]){var l=i[u];this._activeVao===l&&this.unbind(),n.deleteVertexArray(l)}delete t.glVertexArrayObjects[this.CONTEXT_UID]}}},e.prototype.disposeAll=function(t){for(var e=Object.keys(this.managedGeometries),r=0;r<e.length;r++)this.disposeGeometry(this.managedGeometries[e[r]],t)},e.prototype.activateVao=function(t,e){var r=this.gl,i=this.CONTEXT_UID,n=this.renderer.buffer,o=t.buffers,s=t.attributes;t.indexBuffer&&n.bind(t.indexBuffer);var a=null;for(var h in s){var u=s[h],l=o[u.buffer],c=l._glBuffers[i];if(e.attributeData[h]){a!==c&&(n.bind(l),a=c);var d=e.attributeData[h].location;if(r.enableVertexAttribArray(d),r.vertexAttribPointer(d,u.size,u.type||r.FLOAT,u.normalized,u.stride,u.start),u.instance){if(!this.hasInstance)throw new Error(\"geometry error, GPU Instancing is not supported on this device\");r.vertexAttribDivisor(d,1)}}}},e.prototype.draw=function(t,e,r,i){var n=this.gl,o=this._activeGeometry;if(o.indexBuffer){var s=o.indexBuffer.data.BYTES_PER_ELEMENT,a=2===s?n.UNSIGNED_SHORT:n.UNSIGNED_INT;2===s||4===s&&this.canUseUInt32ElementIndex?o.instanced?n.drawElementsInstanced(t,e||o.indexBuffer.data.length,a,(r||0)*s,i||1):n.drawElements(t,e||o.indexBuffer.data.length,a,(r||0)*s):console.warn(\"unsupported index buffer type: uint32\")}else o.instanced?n.drawArraysInstanced(t,r,e||o.getSize(),i||1):n.drawArrays(t,r,e||o.getSize());return this},e.prototype.unbind=function(){this.gl.bindVertexArray(null),this._activeVao=null,this._activeGeometry=null},e.prototype.destroy=function(){this.renderer=null},e}(),hi=function(){function e(e){void 0===e&&(e=null),this.type=t.MASK_TYPES.NONE,this.autoDetect=!0,this.maskObject=e||null,this.pooled=!1,this.isMaskData=!0,this.resolution=null,this.multisample=U.FILTER_MULTISAMPLE,this.enabled=!0,this.colorMask=15,this._filters=null,this._stencilCounter=0,this._scissorCounter=0,this._scissorRect=null,this._scissorRectLocal=null,this._colorMask=15,this._target=null}return Object.defineProperty(e.prototype,\"filter\",{get:function(){return this._filters?this._filters[0]:null},set:function(t){t?this._filters?this._filters[0]=t:this._filters=[t]:this._filters=null},enumerable:!1,configurable:!0}),e.prototype.reset=function(){this.pooled&&(this.maskObject=null,this.type=t.MASK_TYPES.NONE,this.autoDetect=!0),this._target=null,this._scissorRectLocal=null},e.prototype.copyCountersOrReset=function(t){t?(this._stencilCounter=t._stencilCounter,this._scissorCounter=t._scissorCounter,this._scissorRect=t._scissorRect):(this._stencilCounter=0,this._scissorCounter=0,this._scissorRect=null)},e}();function ui(t,e,r){var i=t.createShader(e);return t.shaderSource(i,r),t.compileShader(i),i}function li(t,e){var r=t.getShaderSource(e).split(\"\\n\").map((function(t,e){return e+\": \"+t})),i=t.getShaderInfoLog(e),n=i.split(\"\\n\"),o={},s=n.map((function(t){return parseFloat(t.replace(/^ERROR\\: 0\\:([\\d]+)\\:.*$/,\"$1\"))})).filter((function(t){return!(!t||o[t]||(o[t]=!0,0))})),a=[\"\"];s.forEach((function(t){r[t-1]=\"%c\"+r[t-1]+\"%c\",a.push(\"background: #FF0000; color:#FFFFFF; font-size: 10px\",\"font-size: 10px\")}));var h=r.join(\"\\n\");a[0]=h,console.error(i),console.groupCollapsed(\"click to view full shader code\"),console.warn.apply(console,a),console.groupEnd()}function ci(t){for(var e=new Array(t),r=0;r<e.length;r++)e[r]=!1;return e}function di(t,e){switch(t){case\"float\":case\"int\":case\"uint\":case\"sampler2D\":case\"sampler2DArray\":return 0;case\"vec2\":return new Float32Array(2*e);case\"vec3\":return new Float32Array(3*e);case\"vec4\":return new Float32Array(4*e);case\"ivec2\":return new Int32Array(2*e);case\"ivec3\":return new Int32Array(3*e);case\"ivec4\":return new Int32Array(4*e);case\"uvec2\":return new Uint32Array(2*e);case\"uvec3\":return new Uint32Array(3*e);case\"uvec4\":return new Uint32Array(4*e);case\"bool\":return!1;case\"bvec2\":return ci(2*e);case\"bvec3\":return ci(3*e);case\"bvec4\":return ci(4*e);case\"mat2\":return new Float32Array([1,0,0,1]);case\"mat3\":return new Float32Array([1,0,0,0,1,0,0,0,1]);case\"mat4\":return new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])}return null}var fi,pi={},_i=pi;function vi(){if(_i===pi||_i&&_i.isContextLost()){var e=U.ADAPTER.createCanvas(),r=void 0;U.PREFER_ENV>=t.ENV.WEBGL2&&(r=e.getContext(\"webgl2\",{})),r||((r=e.getContext(\"webgl\",{})||e.getContext(\"experimental-webgl\",{}))?r.getExtension(\"WEBGL_draw_buffers\"):r=null),_i=r}return _i}function mi(e,r,i){if(\"precision\"!==e.substring(0,9)){var n=r;return r===t.PRECISION.HIGH&&i!==t.PRECISION.HIGH&&(n=t.PRECISION.MEDIUM),\"precision \"+n+\" float;\\n\"+e}return i!==t.PRECISION.HIGH&&\"precision highp\"===e.substring(0,15)?e.replace(\"precision highp\",\"precision mediump\"):e}var yi={float:1,vec2:2,vec3:3,vec4:4,int:1,ivec2:2,ivec3:3,ivec4:4,uint:1,uvec2:2,uvec3:3,uvec4:4,bool:1,bvec2:2,bvec3:3,bvec4:4,mat2:4,mat3:9,mat4:16,sampler2D:1};function gi(t){return yi[t]}var Ti=null,Ei={FLOAT:\"float\",FLOAT_VEC2:\"vec2\",FLOAT_VEC3:\"vec3\",FLOAT_VEC4:\"vec4\",INT:\"int\",INT_VEC2:\"ivec2\",INT_VEC3:\"ivec3\",INT_VEC4:\"ivec4\",UNSIGNED_INT:\"uint\",UNSIGNED_INT_VEC2:\"uvec2\",UNSIGNED_INT_VEC3:\"uvec3\",UNSIGNED_INT_VEC4:\"uvec4\",BOOL:\"bool\",BOOL_VEC2:\"bvec2\",BOOL_VEC3:\"bvec3\",BOOL_VEC4:\"bvec4\",FLOAT_MAT2:\"mat2\",FLOAT_MAT3:\"mat3\",FLOAT_MAT4:\"mat4\",SAMPLER_2D:\"sampler2D\",INT_SAMPLER_2D:\"sampler2D\",UNSIGNED_INT_SAMPLER_2D:\"sampler2D\",SAMPLER_CUBE:\"samplerCube\",INT_SAMPLER_CUBE:\"samplerCube\",UNSIGNED_INT_SAMPLER_CUBE:\"samplerCube\",SAMPLER_2D_ARRAY:\"sampler2DArray\",INT_SAMPLER_2D_ARRAY:\"sampler2DArray\",UNSIGNED_INT_SAMPLER_2D_ARRAY:\"sampler2DArray\"};function bi(t,e){if(!Ti){var r=Object.keys(Ei);Ti={};for(var i=0;i<r.length;++i){var n=r[i];Ti[t[n]]=Ei[n]}}return Ti[e]}var xi,Ai=[{test:function(t){return\"float\"===t.type&&1===t.size&&!t.isArray},code:function(t){return'\\n if(uv[\"'+t+'\"] !== ud[\"'+t+'\"].value)\\n {\\n ud[\"'+t+'\"].value = uv[\"'+t+'\"]\\n gl.uniform1f(ud[\"'+t+'\"].location, uv[\"'+t+'\"])\\n }\\n '}},{test:function(t,e){return!(\"sampler2D\"!==t.type&&\"samplerCube\"!==t.type&&\"sampler2DArray\"!==t.type||1!==t.size||t.isArray||null!=e&&void 0===e.castToBaseTexture)},code:function(t){return't = syncData.textureCount++;\\n\\n renderer.texture.bind(uv[\"'+t+'\"], t);\\n\\n if(ud[\"'+t+'\"].value !== t)\\n {\\n ud[\"'+t+'\"].value = t;\\n gl.uniform1i(ud[\"'+t+'\"].location, t);\\n; // eslint-disable-line max-len\\n }'}},{test:function(t,e){return\"mat3\"===t.type&&1===t.size&&!t.isArray&&void 0!==e.a},code:function(t){return'\\n gl.uniformMatrix3fv(ud[\"'+t+'\"].location, false, uv[\"'+t+'\"].toArray(true));\\n '},codeUbo:function(t){return\"\\n var \"+t+\"_matrix = uv.\"+t+\".toArray(true);\\n\\n data[offset] = \"+t+\"_matrix[0];\\n data[offset+1] = \"+t+\"_matrix[1];\\n data[offset+2] = \"+t+\"_matrix[2];\\n \\n data[offset + 4] = \"+t+\"_matrix[3];\\n data[offset + 5] = \"+t+\"_matrix[4];\\n data[offset + 6] = \"+t+\"_matrix[5];\\n \\n data[offset + 8] = \"+t+\"_matrix[6];\\n data[offset + 9] = \"+t+\"_matrix[7];\\n data[offset + 10] = \"+t+\"_matrix[8];\\n \"}},{test:function(t,e){return\"vec2\"===t.type&&1===t.size&&!t.isArray&&void 0!==e.x},code:function(t){return'\\n cv = ud[\"'+t+'\"].value;\\n v = uv[\"'+t+'\"];\\n\\n if(cv[0] !== v.x || cv[1] !== v.y)\\n {\\n cv[0] = v.x;\\n cv[1] = v.y;\\n gl.uniform2f(ud[\"'+t+'\"].location, v.x, v.y);\\n }'},codeUbo:function(t){return\"\\n v = uv.\"+t+\";\\n\\n data[offset] = v.x;\\n data[offset+1] = v.y;\\n \"}},{test:function(t){return\"vec2\"===t.type&&1===t.size&&!t.isArray},code:function(t){return'\\n cv = ud[\"'+t+'\"].value;\\n v = uv[\"'+t+'\"];\\n\\n if(cv[0] !== v[0] || cv[1] !== v[1])\\n {\\n cv[0] = v[0];\\n cv[1] = v[1];\\n gl.uniform2f(ud[\"'+t+'\"].location, v[0], v[1]);\\n }\\n '}},{test:function(t,e){return\"vec4\"===t.type&&1===t.size&&!t.isArray&&void 0!==e.width},code:function(t){return'\\n cv = ud[\"'+t+'\"].value;\\n v = uv[\"'+t+'\"];\\n\\n if(cv[0] !== v.x || cv[1] !== v.y || cv[2] !== v.width || cv[3] !== v.height)\\n {\\n cv[0] = v.x;\\n cv[1] = v.y;\\n cv[2] = v.width;\\n cv[3] = v.height;\\n gl.uniform4f(ud[\"'+t+'\"].location, v.x, v.y, v.width, v.height)\\n }'},codeUbo:function(t){return\"\\n v = uv.\"+t+\";\\n\\n data[offset] = v.x;\\n data[offset+1] = v.y;\\n data[offset+2] = v.width;\\n data[offset+3] = v.height;\\n \"}},{test:function(t){return\"vec4\"===t.type&&1===t.size&&!t.isArray},code:function(t){return'\\n cv = ud[\"'+t+'\"].value;\\n v = uv[\"'+t+'\"];\\n\\n if(cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2] || cv[3] !== v[3])\\n {\\n cv[0] = v[0];\\n cv[1] = v[1];\\n cv[2] = v[2];\\n cv[3] = v[3];\\n\\n gl.uniform4f(ud[\"'+t+'\"].location, v[0], v[1], v[2], v[3])\\n }'}}],Si={float:\"\\n if (cv !== v)\\n {\\n cu.value = v;\\n gl.uniform1f(location, v);\\n }\",vec2:\"\\n if (cv[0] !== v[0] || cv[1] !== v[1])\\n {\\n cv[0] = v[0];\\n cv[1] = v[1];\\n\\n gl.uniform2f(location, v[0], v[1])\\n }\",vec3:\"\\n if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2])\\n {\\n cv[0] = v[0];\\n cv[1] = v[1];\\n cv[2] = v[2];\\n\\n gl.uniform3f(location, v[0], v[1], v[2])\\n }\",vec4:\"\\n if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2] || cv[3] !== v[3])\\n {\\n cv[0] = v[0];\\n cv[1] = v[1];\\n cv[2] = v[2];\\n cv[3] = v[3];\\n\\n gl.uniform4f(location, v[0], v[1], v[2], v[3]);\\n }\",int:\"\\n if (cv !== v)\\n {\\n cu.value = v;\\n\\n gl.uniform1i(location, v);\\n }\",ivec2:\"\\n if (cv[0] !== v[0] || cv[1] !== v[1])\\n {\\n cv[0] = v[0];\\n cv[1] = v[1];\\n\\n gl.uniform2i(location, v[0], v[1]);\\n }\",ivec3:\"\\n if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2])\\n {\\n cv[0] = v[0];\\n cv[1] = v[1];\\n cv[2] = v[2];\\n\\n gl.uniform3i(location, v[0], v[1], v[2]);\\n }\",ivec4:\"\\n if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2] || cv[3] !== v[3])\\n {\\n cv[0] = v[0];\\n cv[1] = v[1];\\n cv[2] = v[2];\\n cv[3] = v[3];\\n\\n gl.uniform4i(location, v[0], v[1], v[2], v[3]);\\n }\",uint:\"\\n if (cv !== v)\\n {\\n cu.value = v;\\n\\n gl.uniform1ui(location, v);\\n }\",uvec2:\"\\n if (cv[0] !== v[0] || cv[1] !== v[1])\\n {\\n cv[0] = v[0];\\n cv[1] = v[1];\\n\\n gl.uniform2ui(location, v[0], v[1]);\\n }\",uvec3:\"\\n if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2])\\n {\\n cv[0] = v[0];\\n cv[1] = v[1];\\n cv[2] = v[2];\\n\\n gl.uniform3ui(location, v[0], v[1], v[2]);\\n }\",uvec4:\"\\n if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2] || cv[3] !== v[3])\\n {\\n cv[0] = v[0];\\n cv[1] = v[1];\\n cv[2] = v[2];\\n cv[3] = v[3];\\n\\n gl.uniform4ui(location, v[0], v[1], v[2], v[3]);\\n }\",bool:\"\\n if (cv !== v)\\n {\\n cu.value = v;\\n gl.uniform1i(location, v);\\n }\",bvec2:\"\\n if (cv[0] != v[0] || cv[1] != v[1])\\n {\\n cv[0] = v[0];\\n cv[1] = v[1];\\n\\n gl.uniform2i(location, v[0], v[1]);\\n }\",bvec3:\"\\n if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2])\\n {\\n cv[0] = v[0];\\n cv[1] = v[1];\\n cv[2] = v[2];\\n\\n gl.uniform3i(location, v[0], v[1], v[2]);\\n }\",bvec4:\"\\n if (cv[0] !== v[0] || cv[1] !== v[1] || cv[2] !== v[2] || cv[3] !== v[3])\\n {\\n cv[0] = v[0];\\n cv[1] = v[1];\\n cv[2] = v[2];\\n cv[3] = v[3];\\n\\n gl.uniform4i(location, v[0], v[1], v[2], v[3]);\\n }\",mat2:\"gl.uniformMatrix2fv(location, false, v)\",mat3:\"gl.uniformMatrix3fv(location, false, v)\",mat4:\"gl.uniformMatrix4fv(location, false, v)\",sampler2D:\"\\n if (cv !== v)\\n {\\n cu.value = v;\\n\\n gl.uniform1i(location, v);\\n }\",samplerCube:\"\\n if (cv !== v)\\n {\\n cu.value = v;\\n\\n gl.uniform1i(location, v);\\n }\",sampler2DArray:\"\\n if (cv !== v)\\n {\\n cu.value = v;\\n\\n gl.uniform1i(location, v);\\n }\"},Ri={float:\"gl.uniform1fv(location, v)\",vec2:\"gl.uniform2fv(location, v)\",vec3:\"gl.uniform3fv(location, v)\",vec4:\"gl.uniform4fv(location, v)\",mat4:\"gl.uniformMatrix4fv(location, false, v)\",mat3:\"gl.uniformMatrix3fv(location, false, v)\",mat2:\"gl.uniformMatrix2fv(location, false, v)\",int:\"gl.uniform1iv(location, v)\",ivec2:\"gl.uniform2iv(location, v)\",ivec3:\"gl.uniform3iv(location, v)\",ivec4:\"gl.uniform4iv(location, v)\",uint:\"gl.uniform1uiv(location, v)\",uvec2:\"gl.uniform2uiv(location, v)\",uvec3:\"gl.uniform3uiv(location, v)\",uvec4:\"gl.uniform4uiv(location, v)\",bool:\"gl.uniform1iv(location, v)\",bvec2:\"gl.uniform2iv(location, v)\",bvec3:\"gl.uniform3iv(location, v)\",bvec4:\"gl.uniform4iv(location, v)\",sampler2D:\"gl.uniform1iv(location, v)\",samplerCube:\"gl.uniform1iv(location, v)\",sampler2DArray:\"gl.uniform1iv(location, v)\"},Oi=[\"precision mediump float;\",\"void main(void){\",\"float test = 0.1;\",\"%forloop%\",\"gl_FragColor = vec4(0.0);\",\"}\"].join(\"\\n\");function Mi(t){for(var e=\"\",r=0;r<t;++r)r>0&&(e+=\"\\nelse \"),r<t-1&&(e+=\"if(test == \"+r+\".0){}\");return e}function Pi(t,e){if(0===t)throw new Error(\"Invalid value of `0` passed to `checkMaxIfStatementsInShader`\");for(var r=e.createShader(e.FRAGMENT_SHADER);;){var i=Oi.replace(/%forloop%/gi,Mi(t));if(e.shaderSource(r,i),e.compileShader(r),e.getShaderParameter(r,e.COMPILE_STATUS))break;t=t/2|0}return t}var Ii=0,Di={},wi=function(){function e(r,i,n){void 0===n&&(n=\"pixi-shader\"),this.id=Ii++,this.vertexSrc=r||e.defaultVertexSrc,this.fragmentSrc=i||e.defaultFragmentSrc,this.vertexSrc=this.vertexSrc.trim(),this.fragmentSrc=this.fragmentSrc.trim(),\"#version\"!==this.vertexSrc.substring(0,8)&&(n=n.replace(/\\s+/g,\"-\"),Di[n]?(Di[n]++,n+=\"-\"+Di[n]):Di[n]=1,this.vertexSrc=\"#define SHADER_NAME \"+n+\"\\n\"+this.vertexSrc,this.fragmentSrc=\"#define SHADER_NAME \"+n+\"\\n\"+this.fragmentSrc,this.vertexSrc=mi(this.vertexSrc,U.PRECISION_VERTEX,t.PRECISION.HIGH),this.fragmentSrc=mi(this.fragmentSrc,U.PRECISION_FRAGMENT,function(){if(!fi){fi=t.PRECISION.MEDIUM;var e=vi();if(e&&e.getShaderPrecisionFormat){var r=e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.HIGH_FLOAT);fi=r.precision?t.PRECISION.HIGH:t.PRECISION.MEDIUM}}return fi}())),this.glPrograms={},this.syncUniforms=null}return Object.defineProperty(e,\"defaultVertexSrc\",{get:function(){return\"attribute vec2 aVertexPosition;\\nattribute vec2 aTextureCoord;\\n\\nuniform mat3 projectionMatrix;\\n\\nvarying vec2 vTextureCoord;\\n\\nvoid main(void){\\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\\n vTextureCoord = aTextureCoord;\\n}\\n\"},enumerable:!1,configurable:!0}),Object.defineProperty(e,\"defaultFragmentSrc\",{get:function(){return\"varying vec2 vTextureCoord;\\n\\nuniform sampler2D uSampler;\\n\\nvoid main(void){\\n gl_FragColor *= texture2D(uSampler, vTextureCoord);\\n}\"},enumerable:!1,configurable:!0}),e.from=function(t,r,i){var n=t+r,o=ye[n];return o||(ye[n]=o=new e(t,r,i)),o},e}(),Ci=function(){function t(t,e){this.uniformBindCount=0,this.program=t,this.uniformGroup=e?e instanceof qr?e:new qr(e):new qr({}),this.disposeRunner=new or(\"disposeShader\")}return t.prototype.checkUniformExists=function(t,e){if(e.uniforms[t])return!0;for(var r in e.uniforms){var i=e.uniforms[r];if(i.group&&this.checkUniformExists(t,i))return!0}return!1},t.prototype.destroy=function(){this.uniformGroup=null,this.disposeRunner.emit(this),this.disposeRunner.destroy()},Object.defineProperty(t.prototype,\"uniforms\",{get:function(){return this.uniformGroup.uniforms},enumerable:!1,configurable:!0}),t.from=function(e,r,i){return new t(wi.from(e,r),i)},t}(),Ni=function(){function e(){this.data=0,this.blendMode=t.BLEND_MODES.NORMAL,this.polygonOffset=0,this.blend=!0,this.depthMask=!0}return Object.defineProperty(e.prototype,\"blend\",{get:function(){return!!(1&this.data)},set:function(t){!!(1&this.data)!==t&&(this.data^=1)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"offsets\",{get:function(){return!!(2&this.data)},set:function(t){!!(2&this.data)!==t&&(this.data^=2)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"culling\",{get:function(){return!!(4&this.data)},set:function(t){!!(4&this.data)!==t&&(this.data^=4)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"depthTest\",{get:function(){return!!(8&this.data)},set:function(t){!!(8&this.data)!==t&&(this.data^=8)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"depthMask\",{get:function(){return!!(32&this.data)},set:function(t){!!(32&this.data)!==t&&(this.data^=32)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"clockwiseFrontFace\",{get:function(){return!!(16&this.data)},set:function(t){!!(16&this.data)!==t&&(this.data^=16)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"blendMode\",{get:function(){return this._blendMode},set:function(e){this.blend=e!==t.BLEND_MODES.NONE,this._blendMode=e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"polygonOffset\",{get:function(){return this._polygonOffset},set:function(t){this.offsets=!!t,this._polygonOffset=t},enumerable:!1,configurable:!0}),e.for2d=function(){var t=new e;return t.depthTest=!1,t.blend=!0,t},e}(),Fi=function(t){function e(r,i,n){var o=this,s=wi.from(r||e.defaultVertexSrc,i||e.defaultFragmentSrc);return(o=t.call(this,s,n)||this).padding=0,o.resolution=U.FILTER_RESOLUTION,o.multisample=U.FILTER_MULTISAMPLE,o.enabled=!0,o.autoFit=!0,o.state=new Ni,o}return dr(e,t),e.prototype.apply=function(t,e,r,i,n){t.applyFilter(this,e,r,i)},Object.defineProperty(e.prototype,\"blendMode\",{get:function(){return this.state.blendMode},set:function(t){this.state.blendMode=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"resolution\",{get:function(){return this._resolution},set:function(t){this._resolution=t},enumerable:!1,configurable:!0}),Object.defineProperty(e,\"defaultVertexSrc\",{get:function(){return\"attribute vec2 aVertexPosition;\\n\\nuniform mat3 projectionMatrix;\\n\\nvarying vec2 vTextureCoord;\\n\\nuniform vec4 inputSize;\\nuniform vec4 outputFrame;\\n\\nvec4 filterVertexPosition( void )\\n{\\n vec2 position = aVertexPosition * max(outputFrame.zw, vec2(0.)) + outputFrame.xy;\\n\\n return vec4((projectionMatrix * vec3(position, 1.0)).xy, 0.0, 1.0);\\n}\\n\\nvec2 filterTextureCoord( void )\\n{\\n return aVertexPosition * (outputFrame.zw * inputSize.zw);\\n}\\n\\nvoid main(void)\\n{\\n gl_Position = filterVertexPosition();\\n vTextureCoord = filterTextureCoord();\\n}\\n\"},enumerable:!1,configurable:!0}),Object.defineProperty(e,\"defaultFragmentSrc\",{get:function(){return\"varying vec2 vTextureCoord;\\n\\nuniform sampler2D uSampler;\\n\\nvoid main(void){\\n gl_FragColor = texture2D(uSampler, vTextureCoord);\\n}\\n\"},enumerable:!1,configurable:!0}),e}(Ci),Li=new Ue,Bi=function(){function t(t,e){this._texture=t,this.mapCoord=new Ue,this.uClampFrame=new Float32Array(4),this.uClampOffset=new Float32Array(2),this._textureID=-1,this._updateID=0,this.clampOffset=0,this.clampMargin=void 0===e?.5:e,this.isSimple=!1}return Object.defineProperty(t.prototype,\"texture\",{get:function(){return this._texture},set:function(t){this._texture=t,this._textureID=-1},enumerable:!1,configurable:!0}),t.prototype.multiplyUvs=function(t,e){void 0===e&&(e=t);for(var r=this.mapCoord,i=0;i<t.length;i+=2){var n=t[i],o=t[i+1];e[i]=n*r.a+o*r.c+r.tx,e[i+1]=n*r.b+o*r.d+r.ty}return e},t.prototype.update=function(t){var e=this._texture;if(!e||!e.valid)return!1;if(!t&&this._textureID===e._updateID)return!1;this._textureID=e._updateID,this._updateID++;var r=e._uvs;this.mapCoord.set(r.x1-r.x0,r.y1-r.y0,r.x3-r.x0,r.y3-r.y0,r.x0,r.y0);var i=e.orig,n=e.trim;n&&(Li.set(i.width/n.width,0,0,i.height/n.height,-n.x/n.width,-n.y/n.height),this.mapCoord.append(Li));var o=e.baseTexture,s=this.uClampFrame,a=this.clampMargin/o.resolution,h=this.clampOffset;return s[0]=(e._frame.x+a+h)/o.width,s[1]=(e._frame.y+a+h)/o.height,s[2]=(e._frame.x+e._frame.width-a+h)/o.width,s[3]=(e._frame.y+e._frame.height-a+h)/o.height,this.uClampOffset[0]=h/o.realWidth,this.uClampOffset[1]=h/o.realHeight,this.isSimple=e._frame.width===o.width&&e._frame.height===o.height&&0===e.rotate,!0},t}(),Gi=function(t){function e(e,r,i){var n=this,o=null;return\"string\"!=typeof e&&void 0===r&&void 0===i&&(o=e,e=void 0,r=void 0,i=void 0),(n=t.call(this,e||\"attribute vec2 aVertexPosition;\\nattribute vec2 aTextureCoord;\\n\\nuniform mat3 projectionMatrix;\\nuniform mat3 otherMatrix;\\n\\nvarying vec2 vMaskCoord;\\nvarying vec2 vTextureCoord;\\n\\nvoid main(void)\\n{\\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\\n\\n vTextureCoord = aTextureCoord;\\n vMaskCoord = ( otherMatrix * vec3( aTextureCoord, 1.0) ).xy;\\n}\\n\",r||\"varying vec2 vMaskCoord;\\nvarying vec2 vTextureCoord;\\n\\nuniform sampler2D uSampler;\\nuniform sampler2D mask;\\nuniform float alpha;\\nuniform float npmAlpha;\\nuniform vec4 maskClamp;\\n\\nvoid main(void)\\n{\\n float clip = step(3.5,\\n step(maskClamp.x, vMaskCoord.x) +\\n step(maskClamp.y, vMaskCoord.y) +\\n step(vMaskCoord.x, maskClamp.z) +\\n step(vMaskCoord.y, maskClamp.w));\\n\\n vec4 original = texture2D(uSampler, vTextureCoord);\\n vec4 masky = texture2D(mask, vMaskCoord);\\n float alphaMul = 1.0 - npmAlpha * (1.0 - masky.a);\\n\\n original *= (alphaMul * masky.r * alpha * clip);\\n\\n gl_FragColor = original;\\n}\\n\",i)||this).maskSprite=o,n.maskMatrix=new Ue,n}return dr(e,t),Object.defineProperty(e.prototype,\"maskSprite\",{get:function(){return this._maskSprite},set:function(t){this._maskSprite=t,this._maskSprite&&(this._maskSprite.renderable=!1)},enumerable:!1,configurable:!0}),e.prototype.apply=function(t,e,r,i){var n=this._maskSprite,o=n._texture;o.valid&&(o.uvMatrix||(o.uvMatrix=new Bi(o,0)),o.uvMatrix.update(),this.uniforms.npmAlpha=o.baseTexture.alphaMode?0:1,this.uniforms.mask=o,this.uniforms.otherMatrix=t.calculateSpriteMatrix(this.maskMatrix,n).prepend(o.uvMatrix.mapCoord),this.uniforms.alpha=n.worldAlpha,this.uniforms.maskClamp=o.uvMatrix.uClampFrame,t.applyFilter(this,e,r,i))},e}(Fi),Ui=function(){function e(t){this.renderer=t,this.enableScissor=!0,this.alphaMaskPool=[],this.maskDataPool=[],this.maskStack=[],this.alphaMaskIndex=0}return e.prototype.setMaskStack=function(t){this.maskStack=t,this.renderer.scissor.setMaskStack(t),this.renderer.stencil.setMaskStack(t)},e.prototype.push=function(e,r){var i=r;if(!i.isMaskData){var n=this.maskDataPool.pop()||new hi;n.pooled=!0,n.maskObject=r,i=n}var o=0!==this.maskStack.length?this.maskStack[this.maskStack.length-1]:null;if(i.copyCountersOrReset(o),i._colorMask=o?o._colorMask:15,i.autoDetect&&this.detect(i),i._target=e,i.type!==t.MASK_TYPES.SPRITE&&this.maskStack.push(i),i.enabled)switch(i.type){case t.MASK_TYPES.SCISSOR:this.renderer.scissor.push(i);break;case t.MASK_TYPES.STENCIL:this.renderer.stencil.push(i);break;case t.MASK_TYPES.SPRITE:i.copyCountersOrReset(null),this.pushSpriteMask(i);break;case t.MASK_TYPES.COLOR:this.pushColorMask(i)}i.type===t.MASK_TYPES.SPRITE&&this.maskStack.push(i)},e.prototype.pop=function(e){var r=this.maskStack.pop();if(r&&r._target===e){if(r.enabled)switch(r.type){case t.MASK_TYPES.SCISSOR:this.renderer.scissor.pop(r);break;case t.MASK_TYPES.STENCIL:this.renderer.stencil.pop(r.maskObject);break;case t.MASK_TYPES.SPRITE:this.popSpriteMask(r);break;case t.MASK_TYPES.COLOR:this.popColorMask(r)}if(r.reset(),r.pooled&&this.maskDataPool.push(r),0!==this.maskStack.length){var i=this.maskStack[this.maskStack.length-1];i.type===t.MASK_TYPES.SPRITE&&i._filters&&(i._filters[0].maskSprite=i.maskObject)}}},e.prototype.detect=function(e){var r=e.maskObject;r?r.isSprite?e.type=t.MASK_TYPES.SPRITE:this.enableScissor&&this.renderer.scissor.testScissor(e)?e.type=t.MASK_TYPES.SCISSOR:e.type=t.MASK_TYPES.STENCIL:e.type=t.MASK_TYPES.COLOR},e.prototype.pushSpriteMask=function(t){var e,r,i=t.maskObject,n=t._target,o=t._filters;o||(o=this.alphaMaskPool[this.alphaMaskIndex])||(o=this.alphaMaskPool[this.alphaMaskIndex]=[new Gi]);var s,a,h=this.renderer,u=h.renderTexture;if(u.current){var l=u.current;s=t.resolution||l.resolution,a=null!==(e=t.multisample)&&void 0!==e?e:l.multisample}else s=t.resolution||h.resolution,a=null!==(r=t.multisample)&&void 0!==r?r:h.multisample;o[0].resolution=s,o[0].multisample=a,o[0].maskSprite=i;var c=n.filterArea;n.filterArea=i.getBounds(!0),h.filter.push(n,o),n.filterArea=c,t._filters||this.alphaMaskIndex++},e.prototype.popSpriteMask=function(t){this.renderer.filter.pop(),t._filters?t._filters[0].maskSprite=null:(this.alphaMaskIndex--,this.alphaMaskPool[this.alphaMaskIndex][0].maskSprite=null)},e.prototype.pushColorMask=function(t){var e=t._colorMask,r=t._colorMask=e&t.colorMask;r!==e&&this.renderer.gl.colorMask(0!=(1&r),0!=(2&r),0!=(4&r),0!=(8&r))},e.prototype.popColorMask=function(t){var e=t._colorMask,r=this.maskStack.length>0?this.maskStack[this.maskStack.length-1]._colorMask:15;r!==e&&this.renderer.gl.colorMask(0!=(1&r),0!=(2&r),0!=(4&r),0!=(8&r))},e.prototype.destroy=function(){this.renderer=null},e}(),ki=function(){function t(t){this.renderer=t,this.maskStack=[],this.glConst=0}return t.prototype.getStackLength=function(){return this.maskStack.length},t.prototype.setMaskStack=function(t){var e=this.renderer.gl,r=this.getStackLength();this.maskStack=t;var i=this.getStackLength();i!==r&&(0===i?e.disable(this.glConst):(e.enable(this.glConst),this._useCurrent()))},t.prototype._useCurrent=function(){},t.prototype.destroy=function(){this.renderer=null,this.maskStack=null},t}(),Xi=new Ue,ji=[],Hi=function(t){function e(e){var r=t.call(this,e)||this;return r.glConst=U.ADAPTER.getWebGLRenderingContext().SCISSOR_TEST,r}return dr(e,t),e.prototype.getStackLength=function(){var t=this.maskStack[this.maskStack.length-1];return t?t._scissorCounter:0},e.prototype.calcScissorRect=function(t){var e;if(!t._scissorRectLocal){var r=t._scissorRect,i=t.maskObject,n=this.renderer,o=n.renderTexture,s=i.getBounds(!0,null!==(e=ji.pop())&&void 0!==e?e:new Ce);this.roundFrameToPixels(s,o.current?o.current.resolution:n.resolution,o.sourceFrame,o.destinationFrame,n.projection.transform),r&&s.fit(r),t._scissorRectLocal=s}},e.isMatrixRotated=function(t){if(!t)return!1;var e=t.a,r=t.b,i=t.c,n=t.d;return(Math.abs(r)>1e-4||Math.abs(i)>1e-4)&&(Math.abs(e)>1e-4||Math.abs(n)>1e-4)},e.prototype.testScissor=function(t){var r=t.maskObject;if(!r.isFastRect||!r.isFastRect())return!1;if(e.isMatrixRotated(r.worldTransform))return!1;if(e.isMatrixRotated(this.renderer.projection.transform))return!1;this.calcScissorRect(t);var i=t._scissorRectLocal;return i.width>0&&i.height>0},e.prototype.roundFrameToPixels=function(t,r,i,n,o){e.isMatrixRotated(o)||((o=o?Xi.copyFrom(o):Xi.identity()).translate(-i.x,-i.y).scale(n.width/i.width,n.height/i.height).translate(n.x,n.y),this.renderer.filter.transformAABB(o,t),t.fit(n),t.x=Math.round(t.x*r),t.y=Math.round(t.y*r),t.width=Math.round(t.width*r),t.height=Math.round(t.height*r))},e.prototype.push=function(t){t._scissorRectLocal||this.calcScissorRect(t);var e=this.renderer.gl;t._scissorRect||e.enable(e.SCISSOR_TEST),t._scissorCounter++,t._scissorRect=t._scissorRectLocal,this._useCurrent()},e.prototype.pop=function(t){var e=this.renderer.gl;t&&ji.push(t._scissorRectLocal),this.getStackLength()>0?this._useCurrent():e.disable(e.SCISSOR_TEST)},e.prototype._useCurrent=function(){var t,e=this.maskStack[this.maskStack.length-1]._scissorRect;t=this.renderer.renderTexture.current?e.y:this.renderer.height-e.height-e.y,this.renderer.gl.scissor(e.x,t,e.width,e.height)},e}(ki),Yi=function(t){function e(e){var r=t.call(this,e)||this;return r.glConst=U.ADAPTER.getWebGLRenderingContext().STENCIL_TEST,r}return dr(e,t),e.prototype.getStackLength=function(){var t=this.maskStack[this.maskStack.length-1];return t?t._stencilCounter:0},e.prototype.push=function(t){var e=t.maskObject,r=this.renderer.gl,i=t._stencilCounter;0===i&&(this.renderer.framebuffer.forceStencil(),r.clearStencil(0),r.clear(r.STENCIL_BUFFER_BIT),r.enable(r.STENCIL_TEST)),t._stencilCounter++;var n=t._colorMask;0!==n&&(t._colorMask=0,r.colorMask(!1,!1,!1,!1)),r.stencilFunc(r.EQUAL,i,4294967295),r.stencilOp(r.KEEP,r.KEEP,r.INCR),e.renderable=!0,e.render(this.renderer),this.renderer.batch.flush(),e.renderable=!1,0!==n&&(t._colorMask=n,r.colorMask(0!=(1&n),0!=(2&n),0!=(4&n),0!=(8&n))),this._useCurrent()},e.prototype.pop=function(t){var e=this.renderer.gl;if(0===this.getStackLength())e.disable(e.STENCIL_TEST);else{var r=0!==this.maskStack.length?this.maskStack[this.maskStack.length-1]:null,i=r?r._colorMask:15;0!==i&&(r._colorMask=0,e.colorMask(!1,!1,!1,!1)),e.stencilOp(e.KEEP,e.KEEP,e.DECR),t.renderable=!0,t.render(this.renderer),this.renderer.batch.flush(),t.renderable=!1,0!==i&&(r._colorMask=i,e.colorMask(0!=(1&i),0!=(2&i),0!=(4&i),0!=(8&i))),this._useCurrent()}},e.prototype._useCurrent=function(){var t=this.renderer.gl;t.stencilFunc(t.EQUAL,this.getStackLength(),4294967295),t.stencilOp(t.KEEP,t.KEEP,t.KEEP)},e}(ki),Vi=function(){function t(t){this.renderer=t,this.destinationFrame=null,this.sourceFrame=null,this.defaultFrame=null,this.projectionMatrix=new Ue,this.transform=null}return t.prototype.update=function(t,e,r,i){this.destinationFrame=t||this.destinationFrame||this.defaultFrame,this.sourceFrame=e||this.sourceFrame||t,this.calculateProjection(this.destinationFrame,this.sourceFrame,r,i),this.transform&&this.projectionMatrix.append(this.transform);var n=this.renderer;n.globalUniforms.uniforms.projectionMatrix=this.projectionMatrix,n.globalUniforms.update(),n.shader.shader&&n.shader.syncUniformGroup(n.shader.shader.uniforms.globals)},t.prototype.calculateProjection=function(t,e,r,i){var n=this.projectionMatrix,o=i?-1:1;n.identity(),n.a=1/e.width*2,n.d=o*(1/e.height*2),n.tx=-1-e.x*n.a,n.ty=-o-e.y*n.d},t.prototype.setTransform=function(t){},t.prototype.destroy=function(){this.renderer=null},t}(),zi=new Ce,Wi=new Ce,qi=function(){function t(t){this.renderer=t,this.clearColor=t._backgroundColorRgba,this.defaultMaskStack=[],this.current=null,this.sourceFrame=new Ce,this.destinationFrame=new Ce,this.viewportFrame=new Ce}return t.prototype.bind=function(t,e,r){void 0===t&&(t=null);var i,n,o,s=this.renderer;this.current=t,t?(o=(i=t.baseTexture).resolution,e||(zi.width=t.frame.width,zi.height=t.frame.height,e=zi),r||(Wi.x=t.frame.x,Wi.y=t.frame.y,Wi.width=e.width,Wi.height=e.height,r=Wi),n=i.framebuffer):(o=s.resolution,e||(zi.width=s.screen.width,zi.height=s.screen.height,e=zi),r||((r=zi).width=e.width,r.height=e.height));var a=this.viewportFrame;a.x=r.x*o,a.y=r.y*o,a.width=r.width*o,a.height=r.height*o,t||(a.y=s.view.height-(a.y+a.height)),a.ceil(),this.renderer.framebuffer.bind(n,a),this.renderer.projection.update(r,e,o,!n),t?this.renderer.mask.setMaskStack(i.maskStack):this.renderer.mask.setMaskStack(this.defaultMaskStack),this.sourceFrame.copyFrom(e),this.destinationFrame.copyFrom(r)},t.prototype.clear=function(t,e){t=this.current?t||this.current.baseTexture.clearColor:t||this.clearColor;var r=this.destinationFrame,i=this.current?this.current.baseTexture:this.renderer.screen,n=r.width!==i.width||r.height!==i.height;if(n){var o=this.viewportFrame,s=o.x,a=o.y,h=o.width,u=o.height;s=Math.round(s),a=Math.round(a),h=Math.round(h),u=Math.round(u),this.renderer.gl.enable(this.renderer.gl.SCISSOR_TEST),this.renderer.gl.scissor(s,a,h,u)}this.renderer.framebuffer.clear(t[0],t[1],t[2],t[3],e),n&&this.renderer.scissor.pop()},t.prototype.resize=function(){this.bind(null)},t.prototype.reset=function(){this.bind(null)},t.prototype.destroy=function(){this.renderer=null},t}();function Ki(t,e,r,i,n){r.buffer.update(n)}var Zi={float:\"\\n data[offset] = v;\\n \",vec2:\"\\n data[offset] = v[0];\\n data[offset+1] = v[1];\\n \",vec3:\"\\n data[offset] = v[0];\\n data[offset+1] = v[1];\\n data[offset+2] = v[2];\\n\\n \",vec4:\"\\n data[offset] = v[0];\\n data[offset+1] = v[1];\\n data[offset+2] = v[2];\\n data[offset+3] = v[3];\\n \",mat2:\"\\n data[offset] = v[0];\\n data[offset+1] = v[1];\\n\\n data[offset+4] = v[2];\\n data[offset+5] = v[3];\\n \",mat3:\"\\n data[offset] = v[0];\\n data[offset+1] = v[1];\\n data[offset+2] = v[2];\\n\\n data[offset + 4] = v[3];\\n data[offset + 5] = v[4];\\n data[offset + 6] = v[5];\\n\\n data[offset + 8] = v[6];\\n data[offset + 9] = v[7];\\n data[offset + 10] = v[8];\\n \",mat4:\"\\n for(var i = 0; i < 16; i++)\\n {\\n data[offset + i] = v[i];\\n }\\n \"},Qi={float:4,vec2:8,vec3:12,vec4:16,int:4,ivec2:8,ivec3:12,ivec4:16,uint:4,uvec2:8,uvec3:12,uvec4:16,bool:4,bvec2:8,bvec3:12,bvec4:16,mat2:32,mat3:48,mat4:64};function Ji(t){for(var e=t.map((function(t){return{data:t,offset:0,dataLen:0,dirty:0}})),r=0,i=0,n=0,o=0;o<e.length;o++){var s=e[o];if(r=Qi[s.data.type],s.data.size>1&&(r=Math.max(r,16)*s.data.size),s.dataLen=r,i%r!=0&&i<16){var a=i%r%16;i+=a,n+=a}i+r>16?(n=16*Math.ceil(n/16),s.offset=n,n+=r,i=r):(s.offset=n,i+=r,n+=r)}return{uboElements:e,size:n=16*Math.ceil(n/16)}}function $i(t,e){var r=[];for(var i in t)e[i]&&r.push(e[i]);return r.sort((function(t,e){return t.index-e.index})),r}function tn(t,e){if(!t.autoManage)return{size:0,syncFunc:Ki};for(var r=Ji($i(t.uniforms,e)),i=r.uboElements,n=r.size,o=[\"\\n var v = null;\\n var v2 = null;\\n var cv = null;\\n var t = 0;\\n var gl = renderer.gl\\n var index = 0;\\n var data = buffer.data;\\n \"],s=0;s<i.length;s++){for(var a=i[s],h=t.uniforms[a.data.name],u=a.data.name,l=!1,c=0;c<Ai.length;c++){var d=Ai[c];if(d.codeUbo&&d.test(a.data,h)){o.push(\"offset = \"+a.offset/4+\";\",Ai[c].codeUbo(a.data.name,h)),l=!0;break}}if(!l)if(a.data.size>1){var f=gi(a.data.type),p=Math.max(Qi[a.data.type]/16,1),_=f/p,v=(4-_%4)%4;o.push(\"\\n cv = ud.\"+u+\".value;\\n v = uv.\"+u+\";\\n offset = \"+a.offset/4+\";\\n\\n t = 0;\\n\\n for(var i=0; i < \"+a.data.size*p+\"; i++)\\n {\\n for(var j = 0; j < \"+_+\"; j++)\\n {\\n data[offset++] = v[t++];\\n }\\n offset += \"+v+\";\\n }\\n\\n \")}else{var m=Zi[a.data.type];o.push(\"\\n cv = ud.\"+u+\".value;\\n v = uv.\"+u+\";\\n offset = \"+a.offset/4+\";\\n \"+m+\";\\n \")}}return o.push(\"\\n renderer.buffer.update(buffer);\\n \"),{size:n,syncFunc:new Function(\"ud\",\"uv\",\"renderer\",\"syncData\",\"buffer\",o.join(\"\\n\"))}}var en=function(){function t(t,e){this.program=t,this.uniformData=e,this.uniformGroups={},this.uniformDirtyGroups={},this.uniformBufferBindings={}}return t.prototype.destroy=function(){this.uniformData=null,this.uniformGroups=null,this.uniformDirtyGroups=null,this.uniformBufferBindings=null,this.program=null},t}();function rn(t,e){var r=ui(t,t.VERTEX_SHADER,e.vertexSrc),i=ui(t,t.FRAGMENT_SHADER,e.fragmentSrc),n=t.createProgram();if(t.attachShader(n,r),t.attachShader(n,i),t.linkProgram(n),t.getProgramParameter(n,t.LINK_STATUS)||function(t,e,r,i){t.getProgramParameter(e,t.LINK_STATUS)||(t.getShaderParameter(r,t.COMPILE_STATUS)||li(t,r),t.getShaderParameter(i,t.COMPILE_STATUS)||li(t,i),console.error(\"PixiJS Error: Could not initialize shader.\"),\"\"!==t.getProgramInfoLog(e)&&console.warn(\"PixiJS Warning: gl.getProgramInfoLog()\",t.getProgramInfoLog(e)))}(t,n,r,i),e.attributeData=function(t,e){for(var r={},i=e.getProgramParameter(t,e.ACTIVE_ATTRIBUTES),n=0;n<i;n++){var o=e.getActiveAttrib(t,n);if(0!==o.name.indexOf(\"gl_\")){var s=bi(e,o.type),a={type:s,name:o.name,size:gi(s),location:e.getAttribLocation(t,o.name)};r[o.name]=a}}return r}(n,t),e.uniformData=function(t,e){for(var r={},i=e.getProgramParameter(t,e.ACTIVE_UNIFORMS),n=0;n<i;n++){var o=e.getActiveUniform(t,n),s=o.name.replace(/\\[.*?\\]$/,\"\"),a=!!o.name.match(/\\[.*?\\]$/),h=bi(e,o.type);r[s]={name:s,index:n,type:h,size:o.size,isArray:a,value:di(h,o.size)}}return r}(n,t),!/^[ \\t]*#[ \\t]*version[ \\t]+300[ \\t]+es[ \\t]*$/m.test(e.vertexSrc)){var o=Object.keys(e.attributeData);o.sort((function(t,e){return t>e?1:-1}));for(var s=0;s<o.length;s++)e.attributeData[o[s]].location=s,t.bindAttribLocation(n,s,o[s]);t.linkProgram(n)}t.deleteShader(r),t.deleteShader(i);var a={};for(var s in e.uniformData){var h=e.uniformData[s];a[s]={location:t.getUniformLocation(n,s),value:di(h.type,h.size)}}return new en(n,a)}var nn=0,on={textureCount:0,uboCount:0},sn=function(){function t(t){this.destroyed=!1,this.renderer=t,this.systemCheck(),this.gl=null,this.shader=null,this.program=null,this.cache={},this._uboCache={},this.id=nn++}return t.prototype.systemCheck=function(){if(!function(){if(\"boolean\"==typeof xi)return xi;try{var t=new Function(\"param1\",\"param2\",\"param3\",\"return param1[param2] === param3;\");xi=!0===t({a:\"b\"},\"a\",\"b\")}catch(t){xi=!1}return xi}())throw new Error(\"Current environment does not allow unsafe-eval, please use @pixi/unsafe-eval module to enable support.\")},t.prototype.contextChange=function(t){this.gl=t,this.reset()},t.prototype.bind=function(t,e){t.disposeRunner.add(this),t.uniforms.globals=this.renderer.globalUniforms;var r=t.program,i=r.glPrograms[this.renderer.CONTEXT_UID]||this.generateProgram(t);return this.shader=t,this.program!==r&&(this.program=r,this.gl.useProgram(i.program)),e||(on.textureCount=0,on.uboCount=0,this.syncUniformGroup(t.uniformGroup,on)),i},t.prototype.setUniforms=function(t){var e=this.shader.program,r=e.glPrograms[this.renderer.CONTEXT_UID];e.syncUniforms(r.uniformData,t,this.renderer)},t.prototype.syncUniformGroup=function(t,e){var r=this.getGlProgram();t.static&&t.dirtyId===r.uniformDirtyGroups[t.id]||(r.uniformDirtyGroups[t.id]=t.dirtyId,this.syncUniforms(t,r,e))},t.prototype.syncUniforms=function(t,e,r){(t.syncUniforms[this.shader.program.id]||this.createSyncGroups(t))(e.uniformData,t.uniforms,this.renderer,r)},t.prototype.createSyncGroups=function(t){var e=this.getSignature(t,this.shader.program.uniformData,\"u\");return this.cache[e]||(this.cache[e]=function(t,e){var r,i=[\"\\n var v = null;\\n var cv = null;\\n var cu = null;\\n var t = 0;\\n var gl = renderer.gl;\\n \"];for(var n in t.uniforms){var o=e[n];if(o){for(var s=t.uniforms[n],a=!1,h=0;h<Ai.length;h++)if(Ai[h].test(o,s)){i.push(Ai[h].code(n,s)),a=!0;break}if(!a){var u=(1!==o.size||o.isArray?Ri:Si)[o.type].replace(\"location\",'ud[\"'+n+'\"].location');i.push('\\n cu = ud[\"'+n+'\"];\\n cv = cu.value;\\n v = uv[\"'+n+'\"];\\n '+u+\";\")}}else(null===(r=t.uniforms[n])||void 0===r?void 0:r.group)&&(t.uniforms[n].ubo?i.push(\"\\n renderer.shader.syncUniformBufferGroup(uv.\"+n+\", '\"+n+\"');\\n \"):i.push(\"\\n renderer.shader.syncUniformGroup(uv.\"+n+\", syncData);\\n \"))}return new Function(\"ud\",\"uv\",\"renderer\",\"syncData\",i.join(\"\\n\"))}(t,this.shader.program.uniformData)),t.syncUniforms[this.shader.program.id]=this.cache[e],t.syncUniforms[this.shader.program.id]},t.prototype.syncUniformBufferGroup=function(t,e){var r=this.getGlProgram();if(!t.static||0!==t.dirtyId||!r.uniformGroups[t.id]){t.dirtyId=0;var i=r.uniformGroups[t.id]||this.createSyncBufferGroup(t,r,e);t.buffer.update(),i(r.uniformData,t.uniforms,this.renderer,on,t.buffer)}this.renderer.buffer.bindBufferBase(t.buffer,r.uniformBufferBindings[e])},t.prototype.createSyncBufferGroup=function(t,e,r){var i=this.renderer.gl;this.renderer.buffer.bind(t.buffer);var n=this.gl.getUniformBlockIndex(e.program,r);e.uniformBufferBindings[r]=this.shader.uniformBindCount,i.uniformBlockBinding(e.program,n,this.shader.uniformBindCount),this.shader.uniformBindCount++;var o=this.getSignature(t,this.shader.program.uniformData,\"ubo\"),s=this._uboCache[o];if(s||(s=this._uboCache[o]=tn(t,this.shader.program.uniformData)),t.autoManage){var a=new Float32Array(s.size/4);t.buffer.update(a)}return e.uniformGroups[t.id]=s.syncFunc,e.uniformGroups[t.id]},t.prototype.getSignature=function(t,e,r){var i=t.uniforms,n=[r+\"-\"];for(var o in i)n.push(o),e[o]&&n.push(e[o].type);return n.join(\"-\")},t.prototype.getGlProgram=function(){return this.shader?this.shader.program.glPrograms[this.renderer.CONTEXT_UID]:null},t.prototype.generateProgram=function(t){var e=this.gl,r=t.program,i=rn(e,r);return r.glPrograms[this.renderer.CONTEXT_UID]=i,i},t.prototype.reset=function(){this.program=null,this.shader=null},t.prototype.disposeShader=function(t){this.shader===t&&(this.shader=null)},t.prototype.destroy=function(){this.renderer=null,this.destroyed=!0},t}(),an=function(){function e(){this.gl=null,this.stateId=0,this.polygonOffset=0,this.blendMode=t.BLEND_MODES.NONE,this._blendEq=!1,this.map=[],this.map[0]=this.setBlend,this.map[1]=this.setOffset,this.map[2]=this.setCullFace,this.map[3]=this.setDepthTest,this.map[4]=this.setFrontFace,this.map[5]=this.setDepthMask,this.checks=[],this.defaultState=new Ni,this.defaultState.blend=!0}return e.prototype.contextChange=function(e){this.gl=e,this.blendModes=function(e,r){return void 0===r&&(r=[]),r[t.BLEND_MODES.NORMAL]=[e.ONE,e.ONE_MINUS_SRC_ALPHA],r[t.BLEND_MODES.ADD]=[e.ONE,e.ONE],r[t.BLEND_MODES.MULTIPLY]=[e.DST_COLOR,e.ONE_MINUS_SRC_ALPHA,e.ONE,e.ONE_MINUS_SRC_ALPHA],r[t.BLEND_MODES.SCREEN]=[e.ONE,e.ONE_MINUS_SRC_COLOR,e.ONE,e.ONE_MINUS_SRC_ALPHA],r[t.BLEND_MODES.OVERLAY]=[e.ONE,e.ONE_MINUS_SRC_ALPHA],r[t.BLEND_MODES.DARKEN]=[e.ONE,e.ONE_MINUS_SRC_ALPHA],r[t.BLEND_MODES.LIGHTEN]=[e.ONE,e.ONE_MINUS_SRC_ALPHA],r[t.BLEND_MODES.COLOR_DODGE]=[e.ONE,e.ONE_MINUS_SRC_ALPHA],r[t.BLEND_MODES.COLOR_BURN]=[e.ONE,e.ONE_MINUS_SRC_ALPHA],r[t.BLEND_MODES.HARD_LIGHT]=[e.ONE,e.ONE_MINUS_SRC_ALPHA],r[t.BLEND_MODES.SOFT_LIGHT]=[e.ONE,e.ONE_MINUS_SRC_ALPHA],r[t.BLEND_MODES.DIFFERENCE]=[e.ONE,e.ONE_MINUS_SRC_ALPHA],r[t.BLEND_MODES.EXCLUSION]=[e.ONE,e.ONE_MINUS_SRC_ALPHA],r[t.BLEND_MODES.HUE]=[e.ONE,e.ONE_MINUS_SRC_ALPHA],r[t.BLEND_MODES.SATURATION]=[e.ONE,e.ONE_MINUS_SRC_ALPHA],r[t.BLEND_MODES.COLOR]=[e.ONE,e.ONE_MINUS_SRC_ALPHA],r[t.BLEND_MODES.LUMINOSITY]=[e.ONE,e.ONE_MINUS_SRC_ALPHA],r[t.BLEND_MODES.NONE]=[0,0],r[t.BLEND_MODES.NORMAL_NPM]=[e.SRC_ALPHA,e.ONE_MINUS_SRC_ALPHA,e.ONE,e.ONE_MINUS_SRC_ALPHA],r[t.BLEND_MODES.ADD_NPM]=[e.SRC_ALPHA,e.ONE,e.ONE,e.ONE],r[t.BLEND_MODES.SCREEN_NPM]=[e.SRC_ALPHA,e.ONE_MINUS_SRC_COLOR,e.ONE,e.ONE_MINUS_SRC_ALPHA],r[t.BLEND_MODES.SRC_IN]=[e.DST_ALPHA,e.ZERO],r[t.BLEND_MODES.SRC_OUT]=[e.ONE_MINUS_DST_ALPHA,e.ZERO],r[t.BLEND_MODES.SRC_ATOP]=[e.DST_ALPHA,e.ONE_MINUS_SRC_ALPHA],r[t.BLEND_MODES.DST_OVER]=[e.ONE_MINUS_DST_ALPHA,e.ONE],r[t.BLEND_MODES.DST_IN]=[e.ZERO,e.SRC_ALPHA],r[t.BLEND_MODES.DST_OUT]=[e.ZERO,e.ONE_MINUS_SRC_ALPHA],r[t.BLEND_MODES.DST_ATOP]=[e.ONE_MINUS_DST_ALPHA,e.SRC_ALPHA],r[t.BLEND_MODES.XOR]=[e.ONE_MINUS_DST_ALPHA,e.ONE_MINUS_SRC_ALPHA],r[t.BLEND_MODES.SUBTRACT]=[e.ONE,e.ONE,e.ONE,e.ONE,e.FUNC_REVERSE_SUBTRACT,e.FUNC_ADD],r}(e),this.set(this.defaultState),this.reset()},e.prototype.set=function(t){if(t=t||this.defaultState,this.stateId!==t.data){for(var e=this.stateId^t.data,r=0;e;)1&e&&this.map[r].call(this,!!(t.data&1<<r)),e>>=1,r++;this.stateId=t.data}for(r=0;r<this.checks.length;r++)this.checks[r](this,t)},e.prototype.forceState=function(t){t=t||this.defaultState;for(var e=0;e<this.map.length;e++)this.map[e].call(this,!!(t.data&1<<e));for(e=0;e<this.checks.length;e++)this.checks[e](this,t);this.stateId=t.data},e.prototype.setBlend=function(t){this.updateCheck(e.checkBlendMode,t),this.gl[t?\"enable\":\"disable\"](this.gl.BLEND)},e.prototype.setOffset=function(t){this.updateCheck(e.checkPolygonOffset,t),this.gl[t?\"enable\":\"disable\"](this.gl.POLYGON_OFFSET_FILL)},e.prototype.setDepthTest=function(t){this.gl[t?\"enable\":\"disable\"](this.gl.DEPTH_TEST)},e.prototype.setDepthMask=function(t){this.gl.depthMask(t)},e.prototype.setCullFace=function(t){this.gl[t?\"enable\":\"disable\"](this.gl.CULL_FACE)},e.prototype.setFrontFace=function(t){this.gl.frontFace(this.gl[t?\"CW\":\"CCW\"])},e.prototype.setBlendMode=function(t){if(t!==this.blendMode){this.blendMode=t;var e=this.blendModes[t],r=this.gl;2===e.length?r.blendFunc(e[0],e[1]):r.blendFuncSeparate(e[0],e[1],e[2],e[3]),6===e.length?(this._blendEq=!0,r.blendEquationSeparate(e[4],e[5])):this._blendEq&&(this._blendEq=!1,r.blendEquationSeparate(r.FUNC_ADD,r.FUNC_ADD))}},e.prototype.setPolygonOffset=function(t,e){this.gl.polygonOffset(t,e)},e.prototype.reset=function(){this.gl.pixelStorei(this.gl.UNPACK_FLIP_Y_WEBGL,!1),this.forceState(this.defaultState),this._blendEq=!0,this.blendMode=-1,this.setBlendMode(0)},e.prototype.updateCheck=function(t,e){var r=this.checks.indexOf(t);e&&-1===r?this.checks.push(t):e||-1===r||this.checks.splice(r,1)},e.checkBlendMode=function(t,e){t.setBlendMode(e.blendMode)},e.checkPolygonOffset=function(t,e){t.setPolygonOffset(1,e.polygonOffset)},e.prototype.destroy=function(){this.gl=null},e}(),hn=function(){function e(t){this.renderer=t,this.count=0,this.checkCount=0,this.maxIdle=U.GC_MAX_IDLE,this.checkCountMax=U.GC_MAX_CHECK_COUNT,this.mode=U.GC_MODE}return e.prototype.postrender=function(){this.renderer.renderingToScreen&&(this.count++,this.mode!==t.GC_MODES.MANUAL&&(this.checkCount++,this.checkCount>this.checkCountMax&&(this.checkCount=0,this.run())))},e.prototype.run=function(){for(var t=this.renderer.texture,e=t.managedTextures,r=!1,i=0;i<e.length;i++){var n=e[i];!n.framebuffer&&this.count-n.touched>this.maxIdle&&(t.destroyTexture(n,!0),e[i]=null,r=!0)}if(r){var o=0;for(i=0;i<e.length;i++)null!==e[i]&&(e[o++]=e[i]);e.length=o}},e.prototype.unload=function(t){var e=this.renderer.texture,r=t._texture;r&&!r.framebuffer&&e.destroyTexture(r);for(var i=t.children.length-1;i>=0;i--)this.unload(t.children[i])},e.prototype.destroy=function(){this.renderer=null},e}(),un=function(e){this.texture=e,this.width=-1,this.height=-1,this.dirtyId=-1,this.dirtyStyleId=-1,this.mipmap=!1,this.wrapMode=33071,this.type=t.TYPES.UNSIGNED_BYTE,this.internalFormat=t.FORMATS.RGBA,this.samplerType=0},ln=function(){function e(t){this.renderer=t,this.boundTextures=[],this.currentLocation=-1,this.managedTextures=[],this._unknownBoundTextures=!1,this.unknownTexture=new mr,this.hasIntegerTextures=!1}return e.prototype.contextChange=function(){var e=this.gl=this.renderer.gl;this.CONTEXT_UID=this.renderer.CONTEXT_UID,this.webGLVersion=this.renderer.context.webGLVersion,this.internalFormats=function(e){var r,i,n,o,s,a,h,u,l,c,d,f,p,_,v,m,y,g,T,E,b,x,A;return\"WebGL2RenderingContext\"in globalThis&&e instanceof globalThis.WebGL2RenderingContext?((r={})[t.TYPES.UNSIGNED_BYTE]=((i={})[t.FORMATS.RGBA]=e.RGBA8,i[t.FORMATS.RGB]=e.RGB8,i[t.FORMATS.RG]=e.RG8,i[t.FORMATS.RED]=e.R8,i[t.FORMATS.RGBA_INTEGER]=e.RGBA8UI,i[t.FORMATS.RGB_INTEGER]=e.RGB8UI,i[t.FORMATS.RG_INTEGER]=e.RG8UI,i[t.FORMATS.RED_INTEGER]=e.R8UI,i[t.FORMATS.ALPHA]=e.ALPHA,i[t.FORMATS.LUMINANCE]=e.LUMINANCE,i[t.FORMATS.LUMINANCE_ALPHA]=e.LUMINANCE_ALPHA,i),r[t.TYPES.BYTE]=((n={})[t.FORMATS.RGBA]=e.RGBA8_SNORM,n[t.FORMATS.RGB]=e.RGB8_SNORM,n[t.FORMATS.RG]=e.RG8_SNORM,n[t.FORMATS.RED]=e.R8_SNORM,n[t.FORMATS.RGBA_INTEGER]=e.RGBA8I,n[t.FORMATS.RGB_INTEGER]=e.RGB8I,n[t.FORMATS.RG_INTEGER]=e.RG8I,n[t.FORMATS.RED_INTEGER]=e.R8I,n),r[t.TYPES.UNSIGNED_SHORT]=((o={})[t.FORMATS.RGBA_INTEGER]=e.RGBA16UI,o[t.FORMATS.RGB_INTEGER]=e.RGB16UI,o[t.FORMATS.RG_INTEGER]=e.RG16UI,o[t.FORMATS.RED_INTEGER]=e.R16UI,o[t.FORMATS.DEPTH_COMPONENT]=e.DEPTH_COMPONENT16,o),r[t.TYPES.SHORT]=((s={})[t.FORMATS.RGBA_INTEGER]=e.RGBA16I,s[t.FORMATS.RGB_INTEGER]=e.RGB16I,s[t.FORMATS.RG_INTEGER]=e.RG16I,s[t.FORMATS.RED_INTEGER]=e.R16I,s),r[t.TYPES.UNSIGNED_INT]=((a={})[t.FORMATS.RGBA_INTEGER]=e.RGBA32UI,a[t.FORMATS.RGB_INTEGER]=e.RGB32UI,a[t.FORMATS.RG_INTEGER]=e.RG32UI,a[t.FORMATS.RED_INTEGER]=e.R32UI,a[t.FORMATS.DEPTH_COMPONENT]=e.DEPTH_COMPONENT24,a),r[t.TYPES.INT]=((h={})[t.FORMATS.RGBA_INTEGER]=e.RGBA32I,h[t.FORMATS.RGB_INTEGER]=e.RGB32I,h[t.FORMATS.RG_INTEGER]=e.RG32I,h[t.FORMATS.RED_INTEGER]=e.R32I,h),r[t.TYPES.FLOAT]=((u={})[t.FORMATS.RGBA]=e.RGBA32F,u[t.FORMATS.RGB]=e.RGB32F,u[t.FORMATS.RG]=e.RG32F,u[t.FORMATS.RED]=e.R32F,u[t.FORMATS.DEPTH_COMPONENT]=e.DEPTH_COMPONENT32F,u),r[t.TYPES.HALF_FLOAT]=((l={})[t.FORMATS.RGBA]=e.RGBA16F,l[t.FORMATS.RGB]=e.RGB16F,l[t.FORMATS.RG]=e.RG16F,l[t.FORMATS.RED]=e.R16F,l),r[t.TYPES.UNSIGNED_SHORT_5_6_5]=((c={})[t.FORMATS.RGB]=e.RGB565,c),r[t.TYPES.UNSIGNED_SHORT_4_4_4_4]=((d={})[t.FORMATS.RGBA]=e.RGBA4,d),r[t.TYPES.UNSIGNED_SHORT_5_5_5_1]=((f={})[t.FORMATS.RGBA]=e.RGB5_A1,f),r[t.TYPES.UNSIGNED_INT_2_10_10_10_REV]=((p={})[t.FORMATS.RGBA]=e.RGB10_A2,p[t.FORMATS.RGBA_INTEGER]=e.RGB10_A2UI,p),r[t.TYPES.UNSIGNED_INT_10F_11F_11F_REV]=((_={})[t.FORMATS.RGB]=e.R11F_G11F_B10F,_),r[t.TYPES.UNSIGNED_INT_5_9_9_9_REV]=((v={})[t.FORMATS.RGB]=e.RGB9_E5,v),r[t.TYPES.UNSIGNED_INT_24_8]=((m={})[t.FORMATS.DEPTH_STENCIL]=e.DEPTH24_STENCIL8,m),r[t.TYPES.FLOAT_32_UNSIGNED_INT_24_8_REV]=((y={})[t.FORMATS.DEPTH_STENCIL]=e.DEPTH32F_STENCIL8,y),A=r):((g={})[t.TYPES.UNSIGNED_BYTE]=((T={})[t.FORMATS.RGBA]=e.RGBA,T[t.FORMATS.RGB]=e.RGB,T[t.FORMATS.ALPHA]=e.ALPHA,T[t.FORMATS.LUMINANCE]=e.LUMINANCE,T[t.FORMATS.LUMINANCE_ALPHA]=e.LUMINANCE_ALPHA,T),g[t.TYPES.UNSIGNED_SHORT_5_6_5]=((E={})[t.FORMATS.RGB]=e.RGB,E),g[t.TYPES.UNSIGNED_SHORT_4_4_4_4]=((b={})[t.FORMATS.RGBA]=e.RGBA,b),g[t.TYPES.UNSIGNED_SHORT_5_5_5_1]=((x={})[t.FORMATS.RGBA]=e.RGBA,x),A=g),A}(e);var r=e.getParameter(e.MAX_TEXTURE_IMAGE_UNITS);this.boundTextures.length=r;for(var i=0;i<r;i++)this.boundTextures[i]=null;this.emptyTextures={};var n=new un(e.createTexture());for(e.bindTexture(e.TEXTURE_2D,n.texture),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,1,1,0,e.RGBA,e.UNSIGNED_BYTE,new Uint8Array(4)),this.emptyTextures[e.TEXTURE_2D]=n,this.emptyTextures[e.TEXTURE_CUBE_MAP]=new un(e.createTexture()),e.bindTexture(e.TEXTURE_CUBE_MAP,this.emptyTextures[e.TEXTURE_CUBE_MAP].texture),i=0;i<6;i++)e.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+i,0,e.RGBA,1,1,0,e.RGBA,e.UNSIGNED_BYTE,null);for(e.texParameteri(e.TEXTURE_CUBE_MAP,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_CUBE_MAP,e.TEXTURE_MIN_FILTER,e.LINEAR),i=0;i<this.boundTextures.length;i++)this.bind(null,i)},e.prototype.bind=function(t,e){void 0===e&&(e=0);var r=this.gl;if((t=null==t?void 0:t.castToBaseTexture())&&t.valid&&!t.parentTextureArray){t.touched=this.renderer.textureGC.count;var i=t._glTextures[this.CONTEXT_UID]||this.initTexture(t);this.boundTextures[e]!==t&&(this.currentLocation!==e&&(this.currentLocation=e,r.activeTexture(r.TEXTURE0+e)),r.bindTexture(t.target,i.texture)),i.dirtyId!==t.dirtyId?(this.currentLocation!==e&&(this.currentLocation=e,r.activeTexture(r.TEXTURE0+e)),this.updateTexture(t)):i.dirtyStyleId!==t.dirtyStyleId&&this.updateTextureStyle(t),this.boundTextures[e]=t}else this.currentLocation!==e&&(this.currentLocation=e,r.activeTexture(r.TEXTURE0+e)),r.bindTexture(r.TEXTURE_2D,this.emptyTextures[r.TEXTURE_2D].texture),this.boundTextures[e]=null},e.prototype.reset=function(){this._unknownBoundTextures=!0,this.hasIntegerTextures=!1,this.currentLocation=-1;for(var t=0;t<this.boundTextures.length;t++)this.boundTextures[t]=this.unknownTexture},e.prototype.unbind=function(t){var e=this.gl,r=this.boundTextures;if(this._unknownBoundTextures){this._unknownBoundTextures=!1;for(var i=0;i<r.length;i++)r[i]===this.unknownTexture&&this.bind(null,i)}for(i=0;i<r.length;i++)r[i]===t&&(this.currentLocation!==i&&(e.activeTexture(e.TEXTURE0+i),this.currentLocation=i),e.bindTexture(t.target,this.emptyTextures[t.target].texture),r[i]=null)},e.prototype.ensureSamplerType=function(e){var r=this,i=r.boundTextures,n=r.hasIntegerTextures,o=r.CONTEXT_UID;if(n)for(var s=e-1;s>=0;--s){var a=i[s];a&&a._glTextures[o].samplerType!==t.SAMPLER_TYPES.FLOAT&&this.renderer.texture.unbind(a)}},e.prototype.initTexture=function(t){var e=new un(this.gl.createTexture());return e.dirtyId=-1,t._glTextures[this.CONTEXT_UID]=e,this.managedTextures.push(t),t.on(\"dispose\",this.destroyTexture,this),e},e.prototype.initTextureType=function(e,r){var i,n;r.internalFormat=null!==(n=null===(i=this.internalFormats[e.type])||void 0===i?void 0:i[e.format])&&void 0!==n?n:e.format,2===this.webGLVersion&&e.type===t.TYPES.HALF_FLOAT?r.type=this.gl.HALF_FLOAT:r.type=e.type},e.prototype.updateTexture=function(e){var r=e._glTextures[this.CONTEXT_UID];if(r){var i=this.renderer;if(this.initTextureType(e,r),e.resource&&e.resource.upload(i,e,r))r.samplerType!==t.SAMPLER_TYPES.FLOAT&&(this.hasIntegerTextures=!0);else{var n=e.realWidth,o=e.realHeight,s=i.gl;(r.width!==n||r.height!==o||r.dirtyId<0)&&(r.width=n,r.height=o,s.texImage2D(e.target,0,r.internalFormat,n,o,0,e.format,r.type,null))}e.dirtyStyleId!==r.dirtyStyleId&&this.updateTextureStyle(e),r.dirtyId=e.dirtyId}},e.prototype.destroyTexture=function(t,e){var r=this.gl;if((t=t.castToBaseTexture())._glTextures[this.CONTEXT_UID]&&(this.unbind(t),r.deleteTexture(t._glTextures[this.CONTEXT_UID].texture),t.off(\"dispose\",this.destroyTexture,this),delete t._glTextures[this.CONTEXT_UID],!e)){var i=this.managedTextures.indexOf(t);-1!==i&&fe(this.managedTextures,i,1)}},e.prototype.updateTextureStyle=function(e){var r=e._glTextures[this.CONTEXT_UID];r&&(e.mipmap!==t.MIPMAP_MODES.POW2&&2===this.webGLVersion||e.isPowerOfTwo?r.mipmap=e.mipmap>=1:r.mipmap=!1,2===this.webGLVersion||e.isPowerOfTwo?r.wrapMode=e.wrapMode:r.wrapMode=t.WRAP_MODES.CLAMP,e.resource&&e.resource.style(this.renderer,e,r)||this.setStyle(e,r),r.dirtyStyleId=e.dirtyStyleId)},e.prototype.setStyle=function(e,r){var i=this.gl;if(r.mipmap&&e.mipmap!==t.MIPMAP_MODES.ON_MANUAL&&i.generateMipmap(e.target),i.texParameteri(e.target,i.TEXTURE_WRAP_S,r.wrapMode),i.texParameteri(e.target,i.TEXTURE_WRAP_T,r.wrapMode),r.mipmap){i.texParameteri(e.target,i.TEXTURE_MIN_FILTER,e.scaleMode===t.SCALE_MODES.LINEAR?i.LINEAR_MIPMAP_LINEAR:i.NEAREST_MIPMAP_NEAREST);var n=this.renderer.context.extensions.anisotropicFiltering;if(n&&e.anisotropicLevel>0&&e.scaleMode===t.SCALE_MODES.LINEAR){var o=Math.min(e.anisotropicLevel,i.getParameter(n.MAX_TEXTURE_MAX_ANISOTROPY_EXT));i.texParameterf(e.target,n.TEXTURE_MAX_ANISOTROPY_EXT,o)}}else i.texParameteri(e.target,i.TEXTURE_MIN_FILTER,e.scaleMode===t.SCALE_MODES.LINEAR?i.LINEAR:i.NEAREST);i.texParameteri(e.target,i.TEXTURE_MAG_FILTER,e.scaleMode===t.SCALE_MODES.LINEAR?i.LINEAR:i.NEAREST)},e.prototype.destroy=function(){this.renderer=null},e}(),cn={__proto__:null,FilterSystem:Jr,BatchSystem:ti,ContextSystem:ri,FramebufferSystem:oi,GeometrySystem:ai,MaskSystem:Ui,ScissorSystem:Hi,StencilSystem:Yi,ProjectionSystem:Vi,RenderTextureSystem:qi,ShaderSystem:sn,StateSystem:an,TextureGCSystem:hn,TextureSystem:ln},dn=new Ue,fn=function(e){function r(r,i){void 0===r&&(r=t.RENDERER_TYPE.UNKNOWN);var n=e.call(this)||this;return i=Object.assign({},U.RENDER_OPTIONS,i),n.options=i,n.type=r,n.screen=new Ce(0,0,i.width,i.height),n.view=i.view||U.ADAPTER.createCanvas(),n.resolution=i.resolution||U.RESOLUTION,n.useContextAlpha=i.useContextAlpha,n.autoDensity=!!i.autoDensity,n.preserveDrawingBuffer=i.preserveDrawingBuffer,n.clearBeforeRender=i.clearBeforeRender,n._backgroundColor=0,n._backgroundColorRgba=[0,0,0,1],n._backgroundColorString=\"#000000\",n.backgroundColor=i.backgroundColor||n._backgroundColor,n.backgroundAlpha=i.backgroundAlpha,void 0!==i.transparent&&(n.useContextAlpha=i.transparent,n.backgroundAlpha=i.transparent?0:1),n._lastObjectRendered=null,n.plugins={},n}return dr(r,e),r.prototype.initPlugins=function(t){for(var e in t)this.plugins[e]=new t[e](this)},Object.defineProperty(r.prototype,\"width\",{get:function(){return this.view.width},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"height\",{get:function(){return this.view.height},enumerable:!1,configurable:!0}),r.prototype.resize=function(t,e){this.view.width=Math.round(t*this.resolution),this.view.height=Math.round(e*this.resolution);var r=this.view.width/this.resolution,i=this.view.height/this.resolution;this.screen.width=r,this.screen.height=i,this.autoDensity&&(this.view.style.width=r+\"px\",this.view.style.height=i+\"px\"),this.emit(\"resize\",r,i)},r.prototype.generateTexture=function(t,e,r,i){void 0===e&&(e={}),\"number\"==typeof e&&(e={scaleMode:e,resolution:r,region:i});var n=e.region,o=function(t,e){var r={};for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&e.indexOf(i)<0&&(r[i]=t[i]);if(null!=t&&\"function\"==typeof Object.getOwnPropertySymbols){var n=0;for(i=Object.getOwnPropertySymbols(t);n<i.length;n++)e.indexOf(i[n])<0&&Object.prototype.propertyIsEnumerable.call(t,i[n])&&(r[i[n]]=t[i[n]])}return r}(e,[\"region\"]);0===(i=n||t.getLocalBounds(null,!0)).width&&(i.width=1),0===i.height&&(i.height=1);var s=Fr.create(fr({width:i.width,height:i.height},o));return dn.tx=-i.x,dn.ty=-i.y,this.render(t,{renderTexture:s,clear:!1,transform:dn,skipUpdateTransform:!!t.parent}),s},r.prototype.destroy=function(e){for(var r in this.plugins)this.plugins[r].destroy(),this.plugins[r]=null;e&&this.view.parentNode&&this.view.parentNode.removeChild(this.view);var i=this;i.plugins=null,i.type=t.RENDERER_TYPE.UNKNOWN,i.view=null,i.screen=null,i._tempDisplayObjectParent=null,i.options=null,this._backgroundColorRgba=null,this._backgroundColorString=null,this._lastObjectRendered=null},Object.defineProperty(r.prototype,\"backgroundColor\",{get:function(){return this._backgroundColor},set:function(t){this._backgroundColor=t,this._backgroundColorString=te(t),$t(t,this._backgroundColorRgba)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"backgroundAlpha\",{get:function(){return this._backgroundColorRgba[3]},set:function(t){this._backgroundColorRgba[3]=t},enumerable:!1,configurable:!0}),r}(j),pn=function(t){this.buffer=t||null,this.updateID=-1,this.byteLength=-1,this.refCount=0},_n=function(){function t(t){this.renderer=t,this.managedBuffers={},this.boundBufferBases={}}return t.prototype.destroy=function(){this.renderer=null},t.prototype.contextChange=function(){this.disposeAll(!0),this.gl=this.renderer.gl,this.CONTEXT_UID=this.renderer.CONTEXT_UID},t.prototype.bind=function(t){var e=this.gl,r=this.CONTEXT_UID,i=t._glBuffers[r]||this.createGLBuffer(t);e.bindBuffer(t.type,i.buffer)},t.prototype.bindBufferBase=function(t,e){var r=this.gl,i=this.CONTEXT_UID;if(this.boundBufferBases[e]!==t){var n=t._glBuffers[i]||this.createGLBuffer(t);this.boundBufferBases[e]=t,r.bindBufferBase(r.UNIFORM_BUFFER,e,n.buffer)}},t.prototype.bindBufferRange=function(t,e,r){var i=this.gl,n=this.CONTEXT_UID;r=r||0;var o=t._glBuffers[n]||this.createGLBuffer(t);i.bindBufferRange(i.UNIFORM_BUFFER,e||0,o.buffer,256*r,256)},t.prototype.update=function(t){var e=this.gl,r=this.CONTEXT_UID,i=t._glBuffers[r];if(t._updateID!==i.updateID)if(i.updateID=t._updateID,e.bindBuffer(t.type,i.buffer),i.byteLength>=t.data.byteLength)e.bufferSubData(t.type,0,t.data);else{var n=t.static?e.STATIC_DRAW:e.DYNAMIC_DRAW;i.byteLength=t.data.byteLength,e.bufferData(t.type,t.data,n)}},t.prototype.dispose=function(t,e){if(this.managedBuffers[t.id]){delete this.managedBuffers[t.id];var r=t._glBuffers[this.CONTEXT_UID],i=this.gl;t.disposeRunner.remove(this),r&&(e||i.deleteBuffer(r.buffer),delete t._glBuffers[this.CONTEXT_UID])}},t.prototype.disposeAll=function(t){for(var e=Object.keys(this.managedBuffers),r=0;r<e.length;r++)this.dispose(this.managedBuffers[e[r]],t)},t.prototype.createGLBuffer=function(t){var e=this.CONTEXT_UID,r=this.gl;return t._glBuffers[e]=new pn(r.createBuffer()),this.managedBuffers[t.id]=t,t.disposeRunner.add(this),t._glBuffers[e]},t}(),vn=function(e){function r(i){var n=e.call(this,t.RENDERER_TYPE.WEBGL,i)||this;return i=n.options,n.gl=null,n.CONTEXT_UID=0,n.runners={destroy:new or(\"destroy\"),contextChange:new or(\"contextChange\"),reset:new or(\"reset\"),update:new or(\"update\"),postrender:new or(\"postrender\"),prerender:new or(\"prerender\"),resize:new or(\"resize\")},n.runners.contextChange.add(n),n.globalUniforms=new qr({projectionMatrix:new Ue},!0),n.addSystem(Ui,\"mask\").addSystem(ri,\"context\").addSystem(an,\"state\").addSystem(sn,\"shader\").addSystem(ln,\"texture\").addSystem(_n,\"buffer\").addSystem(ai,\"geometry\").addSystem(oi,\"framebuffer\").addSystem(Hi,\"scissor\").addSystem(Yi,\"stencil\").addSystem(Vi,\"projection\").addSystem(hn,\"textureGC\").addSystem(Jr,\"filter\").addSystem(qi,\"renderTexture\").addSystem(ti,\"batch\"),n.initPlugins(r.__plugins),n.multisample=void 0,i.context?n.context.initFromContext(i.context):n.context.initFromOptions({alpha:!!n.useContextAlpha,antialias:i.antialias,premultipliedAlpha:n.useContextAlpha&&\"notMultiplied\"!==n.useContextAlpha,stencil:!0,preserveDrawingBuffer:i.preserveDrawingBuffer,powerPreference:n.options.powerPreference}),n.renderingToScreen=!0,Zt(2===n.context.webGLVersion?\"WebGL 2\":\"WebGL 1\"),n.resize(n.options.width,n.options.height),n}return dr(r,e),r.create=function(t){if(Qt())return new r(t);throw new Error('WebGL unsupported in this browser, use \"pixi.js-legacy\" for fallback canvas2d support.')},r.prototype.contextChange=function(){var e,r=this.gl;if(1===this.context.webGLVersion){var i=r.getParameter(r.FRAMEBUFFER_BINDING);r.bindFramebuffer(r.FRAMEBUFFER,null),e=r.getParameter(r.SAMPLES),r.bindFramebuffer(r.FRAMEBUFFER,i)}else i=r.getParameter(r.DRAW_FRAMEBUFFER_BINDING),r.bindFramebuffer(r.DRAW_FRAMEBUFFER,null),e=r.getParameter(r.SAMPLES),r.bindFramebuffer(r.DRAW_FRAMEBUFFER,i);e>=t.MSAA_QUALITY.HIGH?this.multisample=t.MSAA_QUALITY.HIGH:e>=t.MSAA_QUALITY.MEDIUM?this.multisample=t.MSAA_QUALITY.MEDIUM:e>=t.MSAA_QUALITY.LOW?this.multisample=t.MSAA_QUALITY.LOW:this.multisample=t.MSAA_QUALITY.NONE},r.prototype.addSystem=function(t,e){var r=new t(this);if(this[e])throw new Error('Whoops! The name \"'+e+'\" is already in use');for(var i in this[e]=r,this.runners)this.runners[i].add(r);return this},r.prototype.render=function(t,e){var r,i,n,o;if(e&&(e instanceof Fr?(r=e,i=arguments[2],n=arguments[3],o=arguments[4]):(r=e.renderTexture,i=e.clear,n=e.transform,o=e.skipUpdateTransform)),this.renderingToScreen=!r,this.runners.prerender.emit(),this.emit(\"prerender\"),this.projection.transform=n,!this.context.isLost){if(r||(this._lastObjectRendered=t),!o){var s=t.enableTempParent();t.updateTransform(),t.disableTempParent(s)}this.renderTexture.bind(r),this.batch.currentRenderer.start(),(void 0!==i?i:this.clearBeforeRender)&&this.renderTexture.clear(),t.render(this),this.batch.currentRenderer.flush(),r&&r.baseTexture.update(),this.runners.postrender.emit(),this.projection.transform=null,this.emit(\"postrender\")}},r.prototype.generateTexture=function(t,r,i,n){void 0===r&&(r={});var o=e.prototype.generateTexture.call(this,t,r,i,n);return this.framebuffer.blit(),o},r.prototype.resize=function(t,r){e.prototype.resize.call(this,t,r),this.runners.resize.emit(this.screen.height,this.screen.width)},r.prototype.reset=function(){return this.runners.reset.emit(),this},r.prototype.clear=function(){this.renderTexture.bind(),this.renderTexture.clear()},r.prototype.destroy=function(t){for(var r in this.runners.destroy.emit(),this.runners)this.runners[r].destroy();e.prototype.destroy.call(this,t),this.gl=null},Object.defineProperty(r.prototype,\"extract\",{get:function(){return this.plugins.extract},enumerable:!1,configurable:!0}),r.registerPlugin=function(e,r){nr.add({name:e,type:t.ExtensionType.RendererPlugin,ref:r})},r.__plugins={},r}(fn);function mn(t){return vn.create(t)}nr.handleByMap(t.ExtensionType.RendererPlugin,vn.__plugins);var yn=\"attribute vec2 aVertexPosition;\\nattribute vec2 aTextureCoord;\\n\\nuniform mat3 projectionMatrix;\\n\\nvarying vec2 vTextureCoord;\\n\\nvoid main(void)\\n{\\n gl_Position = vec4((projectionMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\\n vTextureCoord = aTextureCoord;\\n}\",gn=\"attribute vec2 aVertexPosition;\\n\\nuniform mat3 projectionMatrix;\\n\\nvarying vec2 vTextureCoord;\\n\\nuniform vec4 inputSize;\\nuniform vec4 outputFrame;\\n\\nvec4 filterVertexPosition( void )\\n{\\n vec2 position = aVertexPosition * max(outputFrame.zw, vec2(0.)) + outputFrame.xy;\\n\\n return vec4((projectionMatrix * vec3(position, 1.0)).xy, 0.0, 1.0);\\n}\\n\\nvec2 filterTextureCoord( void )\\n{\\n return aVertexPosition * (outputFrame.zw * inputSize.zw);\\n}\\n\\nvoid main(void)\\n{\\n gl_Position = filterVertexPosition();\\n vTextureCoord = filterTextureCoord();\\n}\\n\",Tn=function(){function t(t){this.renderer=t}return t.prototype.destroy=function(){this.renderer=null},t}(),En=function(){this.texArray=null,this.blend=0,this.type=t.DRAW_MODES.TRIANGLES,this.start=0,this.size=0,this.data=null},bn=function(){function t(){this.elements=[],this.ids=[],this.count=0}return t.prototype.clear=function(){for(var t=0;t<this.count;t++)this.elements[t]=null;this.count=0},t}(),xn=function(){function t(t){\"number\"==typeof t?this.rawBinaryData=new ArrayBuffer(t):t instanceof Uint8Array?this.rawBinaryData=t.buffer:this.rawBinaryData=t,this.uint32View=new Uint32Array(this.rawBinaryData),this.float32View=new Float32Array(this.rawBinaryData)}return Object.defineProperty(t.prototype,\"int8View\",{get:function(){return this._int8View||(this._int8View=new Int8Array(this.rawBinaryData)),this._int8View},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"uint8View\",{get:function(){return this._uint8View||(this._uint8View=new Uint8Array(this.rawBinaryData)),this._uint8View},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"int16View\",{get:function(){return this._int16View||(this._int16View=new Int16Array(this.rawBinaryData)),this._int16View},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"uint16View\",{get:function(){return this._uint16View||(this._uint16View=new Uint16Array(this.rawBinaryData)),this._uint16View},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"int32View\",{get:function(){return this._int32View||(this._int32View=new Int32Array(this.rawBinaryData)),this._int32View},enumerable:!1,configurable:!0}),t.prototype.view=function(t){return this[t+\"View\"]},t.prototype.destroy=function(){this.rawBinaryData=null,this._int8View=null,this._uint8View=null,this._int16View=null,this._uint16View=null,this._int32View=null,this.uint32View=null,this.float32View=null},t.sizeOf=function(t){switch(t){case\"int8\":case\"uint8\":return 1;case\"int16\":case\"uint16\":return 2;case\"int32\":case\"uint32\":case\"float32\":return 4;default:throw new Error(t+\" isn't a valid view type\")}},t}(),An=function(e){function r(t){var r=e.call(this,t)||this;return r.shaderGenerator=null,r.geometryClass=null,r.vertexSize=null,r.state=Ni.for2d(),r.size=4*U.SPRITE_BATCH_SIZE,r._vertexCount=0,r._indexCount=0,r._bufferedElements=[],r._bufferedTextures=[],r._bufferSize=0,r._shader=null,r._packedGeometries=[],r._packedGeometryPoolSize=2,r._flushId=0,r._aBuffers={},r._iBuffers={},r.MAX_TEXTURES=1,r.renderer.on(\"prerender\",r.onPrerender,r),t.runners.contextChange.add(r),r._dcIndex=0,r._aIndex=0,r._iIndex=0,r._attributeBuffer=null,r._indexBuffer=null,r._tempBoundTextures=[],r}return dr(r,e),r.prototype.contextChange=function(){var e=this.renderer.gl;U.PREFER_ENV===t.ENV.WEBGL_LEGACY?this.MAX_TEXTURES=1:(this.MAX_TEXTURES=Math.min(e.getParameter(e.MAX_TEXTURE_IMAGE_UNITS),U.SPRITE_MAX_TEXTURES),this.MAX_TEXTURES=Pi(this.MAX_TEXTURES,e)),this._shader=this.shaderGenerator.generateShader(this.MAX_TEXTURES);for(var r=0;r<this._packedGeometryPoolSize;r++)this._packedGeometries[r]=new this.geometryClass;this.initFlushBuffers()},r.prototype.initFlushBuffers=function(){for(var t=r._drawCallPool,e=r._textureArrayPool,i=this.size/4,n=Math.floor(i/this.MAX_TEXTURES)+1;t.length<i;)t.push(new En);for(;e.length<n;)e.push(new bn);for(var o=0;o<this.MAX_TEXTURES;o++)this._tempBoundTextures[o]=null},r.prototype.onPrerender=function(){this._flushId=0},r.prototype.render=function(t){t._texture.valid&&(this._vertexCount+t.vertexData.length/2>this.size&&this.flush(),this._vertexCount+=t.vertexData.length/2,this._indexCount+=t.indices.length,this._bufferedTextures[this._bufferSize]=t._texture.baseTexture,this._bufferedElements[this._bufferSize++]=t)},r.prototype.buildTexturesAndDrawCalls=function(){var t=this._bufferedTextures,e=this.MAX_TEXTURES,i=r._textureArrayPool,n=this.renderer.batch,o=this._tempBoundTextures,s=this.renderer.textureGC.count,a=++mr._globalBatch,h=0,u=i[0],l=0;n.copyBoundTextures(o,e);for(var c=0;c<this._bufferSize;++c){var d=t[c];t[c]=null,d._batchEnabled!==a&&(u.count>=e&&(n.boundArray(u,o,a,e),this.buildDrawCalls(u,l,c),l=c,u=i[++h],++a),d._batchEnabled=a,d.touched=s,u.elements[u.count++]=d)}for(u.count>0&&(n.boundArray(u,o,a,e),this.buildDrawCalls(u,l,this._bufferSize),++h,++a),c=0;c<o.length;c++)o[c]=null;mr._globalBatch=a},r.prototype.buildDrawCalls=function(t,e,i){var n=this,o=n._bufferedElements,s=n._attributeBuffer,a=n._indexBuffer,h=n.vertexSize,u=r._drawCallPool,l=this._dcIndex,c=this._aIndex,d=this._iIndex,f=u[l];f.start=this._iIndex,f.texArray=t;for(var p=e;p<i;++p){var _=o[p],v=_._texture.baseTexture,m=re[v.alphaMode?1:0][_.blendMode];o[p]=null,e<p&&f.blend!==m&&(f.size=d-f.start,e=p,(f=u[++l]).texArray=t,f.start=d),this.packInterleavedGeometry(_,s,a,c,d),c+=_.vertexData.length/2*h,d+=_.indices.length,f.blend=m}e<i&&(f.size=d-f.start,++l),this._dcIndex=l,this._aIndex=c,this._iIndex=d},r.prototype.bindAndClearTexArray=function(t){for(var e=this.renderer.texture,r=0;r<t.count;r++)e.bind(t.elements[r],t.ids[r]),t.elements[r]=null;t.count=0},r.prototype.updateGeometry=function(){var t=this,e=t._packedGeometries,r=t._attributeBuffer,i=t._indexBuffer;U.CAN_UPLOAD_SAME_BUFFER?(e[this._flushId]._buffer.update(r.rawBinaryData),e[this._flushId]._indexBuffer.update(i),this.renderer.geometry.updateBuffers()):(this._packedGeometryPoolSize<=this._flushId&&(this._packedGeometryPoolSize++,e[this._flushId]=new this.geometryClass),e[this._flushId]._buffer.update(r.rawBinaryData),e[this._flushId]._indexBuffer.update(i),this.renderer.geometry.bind(e[this._flushId]),this.renderer.geometry.updateBuffers(),this._flushId++)},r.prototype.drawBatches=function(){for(var t=this._dcIndex,e=this.renderer,i=e.gl,n=e.state,o=r._drawCallPool,s=null,a=0;a<t;a++){var h=o[a],u=h.texArray,l=h.type,c=h.size,d=h.start,f=h.blend;s!==u&&(s=u,this.bindAndClearTexArray(u)),this.state.blendMode=f,n.set(this.state),i.drawElements(l,c,i.UNSIGNED_SHORT,2*d)}},r.prototype.flush=function(){0!==this._vertexCount&&(this._attributeBuffer=this.getAttributeBuffer(this._vertexCount),this._indexBuffer=this.getIndexBuffer(this._indexCount),this._aIndex=0,this._iIndex=0,this._dcIndex=0,this.buildTexturesAndDrawCalls(),this.updateGeometry(),this.drawBatches(),this._bufferSize=0,this._vertexCount=0,this._indexCount=0)},r.prototype.start=function(){this.renderer.state.set(this.state),this.renderer.texture.ensureSamplerType(this.MAX_TEXTURES),this.renderer.shader.bind(this._shader),U.CAN_UPLOAD_SAME_BUFFER&&this.renderer.geometry.bind(this._packedGeometries[this._flushId])},r.prototype.stop=function(){this.flush()},r.prototype.destroy=function(){for(var t=0;t<this._packedGeometryPoolSize;t++)this._packedGeometries[t]&&this._packedGeometries[t].destroy();this.renderer.off(\"prerender\",this.onPrerender,this),this._aBuffers=null,this._iBuffers=null,this._packedGeometries=null,this._attributeBuffer=null,this._indexBuffer=null,this._shader&&(this._shader.destroy(),this._shader=null),e.prototype.destroy.call(this)},r.prototype.getAttributeBuffer=function(t){var e=le(Math.ceil(t/8)),r=de(e),i=8*e;this._aBuffers.length<=r&&(this._iBuffers.length=r+1);var n=this._aBuffers[i];return n||(this._aBuffers[i]=n=new xn(i*this.vertexSize*4)),n},r.prototype.getIndexBuffer=function(t){var e=le(Math.ceil(t/12)),r=de(e),i=12*e;this._iBuffers.length<=r&&(this._iBuffers.length=r+1);var n=this._iBuffers[r];return n||(this._iBuffers[r]=n=new Uint16Array(i)),n},r.prototype.packInterleavedGeometry=function(t,e,r,i,n){for(var o=e.uint32View,s=e.float32View,a=i/this.vertexSize,h=t.uvs,u=t.indices,l=t.vertexData,c=t._texture.baseTexture._batchLocation,d=Math.min(t.worldAlpha,1),f=d<1&&t._texture.baseTexture.alphaMode?oe(t._tintRGB,d):t._tintRGB+(255*d<<24),p=0;p<l.length;p+=2)s[i++]=l[p],s[i++]=l[p+1],s[i++]=h[p],s[i++]=h[p+1],o[i++]=f,s[i++]=c;for(p=0;p<u.length;p++)r[n++]=a+u[p]},r._drawCallPool=[],r._textureArrayPool=[],r}($r),Sn=function(){function t(t,e){if(this.vertexSrc=t,this.fragTemplate=e,this.programCache={},this.defaultGroupCache={},e.indexOf(\"%count%\")<0)throw new Error('Fragment template must contain \"%count%\".');if(e.indexOf(\"%forloop%\")<0)throw new Error('Fragment template must contain \"%forloop%\".')}return t.prototype.generateShader=function(t){if(!this.programCache[t]){for(var e=new Int32Array(t),r=0;r<t;r++)e[r]=r;this.defaultGroupCache[t]=qr.from({uSamplers:e},!0);var i=this.fragTemplate;i=(i=i.replace(/%count%/gi,\"\"+t)).replace(/%forloop%/gi,this.generateSampleSrc(t)),this.programCache[t]=new wi(this.vertexSrc,i)}var n={tint:new Float32Array([1,1,1,1]),translationMatrix:new Ue,default:this.defaultGroupCache[t]};return new Ci(this.programCache[t],n)},t.prototype.generateSampleSrc=function(t){var e=\"\";e+=\"\\n\",e+=\"\\n\";for(var r=0;r<t;r++)r>0&&(e+=\"\\nelse \"),r<t-1&&(e+=\"if(vTextureId < \"+r+\".5)\"),e+=\"\\n{\",e+=\"\\n\\tcolor = texture2D(uSamplers[\"+r+\"], vTextureCoord);\",e+=\"\\n}\";return(e+=\"\\n\")+\"\\n\"},t}(),Rn=function(e){function r(r){void 0===r&&(r=!1);var i=e.call(this)||this;return i._buffer=new Ur(null,r,!1),i._indexBuffer=new Ur(null,r,!0),i.addAttribute(\"aVertexPosition\",i._buffer,2,!1,t.TYPES.FLOAT).addAttribute(\"aTextureCoord\",i._buffer,2,!1,t.TYPES.FLOAT).addAttribute(\"aColor\",i._buffer,4,!0,t.TYPES.UNSIGNED_BYTE).addAttribute(\"aTextureId\",i._buffer,1,!0,t.TYPES.FLOAT).addIndex(i._indexBuffer),i}return dr(r,e),r}(Yr),On=\"precision highp float;\\nattribute vec2 aVertexPosition;\\nattribute vec2 aTextureCoord;\\nattribute vec4 aColor;\\nattribute float aTextureId;\\n\\nuniform mat3 projectionMatrix;\\nuniform mat3 translationMatrix;\\nuniform vec4 tint;\\n\\nvarying vec2 vTextureCoord;\\nvarying vec4 vColor;\\nvarying float vTextureId;\\n\\nvoid main(void){\\n gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\\n\\n vTextureCoord = aTextureCoord;\\n vTextureId = aTextureId;\\n vColor = aColor * tint;\\n}\\n\",Mn=\"varying vec2 vTextureCoord;\\nvarying vec4 vColor;\\nvarying float vTextureId;\\nuniform sampler2D uSamplers[%count%];\\n\\nvoid main(void){\\n vec4 color;\\n %forloop%\\n gl_FragColor = color * vColor;\\n}\\n\",Pn=function(){function t(){}return t.create=function(t){var e=Object.assign({vertex:On,fragment:Mn,geometryClass:Rn,vertexSize:6},t),r=e.vertex,i=e.fragment,n=e.vertexSize,o=e.geometryClass;return function(t){function e(e){var s=t.call(this,e)||this;return s.shaderGenerator=new Sn(r,i),s.geometryClass=o,s.vertexSize=n,s}return dr(e,t),e}(An)},Object.defineProperty(t,\"defaultVertexSrc\",{get:function(){return On},enumerable:!1,configurable:!0}),Object.defineProperty(t,\"defaultFragmentTemplate\",{get:function(){return Mn},enumerable:!1,configurable:!0}),t}(),In=Pn.create();Object.assign(In,{extension:{name:\"batch\",type:t.ExtensionType.RendererPlugin}});var Dn={},wn=function(t){Object.defineProperty(Dn,t,{get:function(){return Or[t]}})};for(var Cn in Or)wn(Cn);var Nn={},Fn=function(t){Object.defineProperty(Nn,t,{get:function(){return cn[t]}})};for(var Cn in cn)Fn(Cn);var Ln={accessible:!1,accessibleTitle:null,accessibleHint:null,tabIndex:0,_accessibleActive:!1,_accessibleDiv:null,accessibleType:\"button\",accessiblePointerEvents:\"auto\",accessibleChildren:!0,renderId:-1};Je.mixin(Ln);var Bn=function(){function e(t){this.debug=!1,this._isActive=!1,this._isMobileAccessibility=!1,this.pool=[],this.renderId=0,this.children=[],this.androidUpdateCount=0,this.androidUpdateFrequency=500,this._hookDiv=null,(G.tablet||G.phone)&&this.createTouchHook();var e=document.createElement(\"div\");e.style.width=\"100px\",e.style.height=\"100px\",e.style.position=\"absolute\",e.style.top=\"0px\",e.style.left=\"0px\",e.style.zIndex=2..toString(),this.div=e,this.renderer=t,this._onKeyDown=this._onKeyDown.bind(this),this._onMouseMove=this._onMouseMove.bind(this),globalThis.addEventListener(\"keydown\",this._onKeyDown,!1)}return Object.defineProperty(e.prototype,\"isActive\",{get:function(){return this._isActive},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"isMobileAccessibility\",{get:function(){return this._isMobileAccessibility},enumerable:!1,configurable:!0}),e.prototype.createTouchHook=function(){var t=this,e=document.createElement(\"button\");e.style.width=\"1px\",e.style.height=\"1px\",e.style.position=\"absolute\",e.style.top=\"-1000px\",e.style.left=\"-1000px\",e.style.zIndex=2..toString(),e.style.backgroundColor=\"#FF0000\",e.title=\"select to enable accessibility for this content\",e.addEventListener(\"focus\",(function(){t._isMobileAccessibility=!0,t.activate(),t.destroyTouchHook()})),document.body.appendChild(e),this._hookDiv=e},e.prototype.destroyTouchHook=function(){this._hookDiv&&(document.body.removeChild(this._hookDiv),this._hookDiv=null)},e.prototype.activate=function(){var t;this._isActive||(this._isActive=!0,globalThis.document.addEventListener(\"mousemove\",this._onMouseMove,!0),globalThis.removeEventListener(\"keydown\",this._onKeyDown,!1),this.renderer.on(\"postrender\",this.update,this),null===(t=this.renderer.view.parentNode)||void 0===t||t.appendChild(this.div))},e.prototype.deactivate=function(){var t;this._isActive&&!this._isMobileAccessibility&&(this._isActive=!1,globalThis.document.removeEventListener(\"mousemove\",this._onMouseMove,!0),globalThis.addEventListener(\"keydown\",this._onKeyDown,!1),this.renderer.off(\"postrender\",this.update),null===(t=this.div.parentNode)||void 0===t||t.removeChild(this.div))},e.prototype.updateAccessibleObjects=function(t){if(t.visible&&t.accessibleChildren){t.accessible&&t.interactive&&(t._accessibleActive||this.addChild(t),t.renderId=this.renderId);var e=t.children;if(e)for(var r=0;r<e.length;r++)this.updateAccessibleObjects(e[r])}},e.prototype.update=function(){var t=performance.now();if(!(G.android.device&&t<this.androidUpdateCount)&&(this.androidUpdateCount=t+this.androidUpdateFrequency,this.renderer.renderingToScreen)){this.renderer._lastObjectRendered&&this.updateAccessibleObjects(this.renderer._lastObjectRendered);var e=this.renderer.view.getBoundingClientRect(),r=e.left,i=e.top,n=e.width,o=e.height,s=this.renderer,a=s.width,h=s.height,u=s.resolution,l=n/a*u,c=o/h*u,d=this.div;d.style.left=r+\"px\",d.style.top=i+\"px\",d.style.width=a+\"px\",d.style.height=h+\"px\";for(var f=0;f<this.children.length;f++){var p=this.children[f];if(p.renderId!==this.renderId)p._accessibleActive=!1,fe(this.children,f,1),this.div.removeChild(p._accessibleDiv),this.pool.push(p._accessibleDiv),p._accessibleDiv=null,f--;else{d=p._accessibleDiv;var _=p.hitArea,v=p.worldTransform;p.hitArea?(d.style.left=(v.tx+_.x*v.a)*l+\"px\",d.style.top=(v.ty+_.y*v.d)*c+\"px\",d.style.width=_.width*v.a*l+\"px\",d.style.height=_.height*v.d*c+\"px\"):(_=p.getBounds(),this.capHitArea(_),d.style.left=_.x*l+\"px\",d.style.top=_.y*c+\"px\",d.style.width=_.width*l+\"px\",d.style.height=_.height*c+\"px\",d.title!==p.accessibleTitle&&null!==p.accessibleTitle&&(d.title=p.accessibleTitle),d.getAttribute(\"aria-label\")!==p.accessibleHint&&null!==p.accessibleHint&&d.setAttribute(\"aria-label\",p.accessibleHint)),p.accessibleTitle===d.title&&p.tabIndex===d.tabIndex||(d.title=p.accessibleTitle,d.tabIndex=p.tabIndex,this.debug&&this.updateDebugHTML(d))}}this.renderId++}},e.prototype.updateDebugHTML=function(t){t.innerHTML=\"type: \"+t.type+\"</br> title : \"+t.title+\"</br> tabIndex: \"+t.tabIndex},e.prototype.capHitArea=function(t){t.x<0&&(t.width+=t.x,t.x=0),t.y<0&&(t.height+=t.y,t.y=0);var e=this.renderer,r=e.width,i=e.height;t.x+t.width>r&&(t.width=r-t.x),t.y+t.height>i&&(t.height=i-t.y)},e.prototype.addChild=function(t){var e=this.pool.pop();e||((e=document.createElement(\"button\")).style.width=\"100px\",e.style.height=\"100px\",e.style.backgroundColor=this.debug?\"rgba(255,255,255,0.5)\":\"transparent\",e.style.position=\"absolute\",e.style.zIndex=2..toString(),e.style.borderStyle=\"none\",navigator.userAgent.toLowerCase().indexOf(\"chrome\")>-1?e.setAttribute(\"aria-live\",\"off\"):e.setAttribute(\"aria-live\",\"polite\"),navigator.userAgent.match(/rv:.*Gecko\\//)?e.setAttribute(\"aria-relevant\",\"additions\"):e.setAttribute(\"aria-relevant\",\"text\"),e.addEventListener(\"click\",this._onClick.bind(this)),e.addEventListener(\"focus\",this._onFocus.bind(this)),e.addEventListener(\"focusout\",this._onFocusOut.bind(this))),e.style.pointerEvents=t.accessiblePointerEvents,e.type=t.accessibleType,t.accessibleTitle&&null!==t.accessibleTitle?e.title=t.accessibleTitle:t.accessibleHint&&null!==t.accessibleHint||(e.title=\"displayObject \"+t.tabIndex),t.accessibleHint&&null!==t.accessibleHint&&e.setAttribute(\"aria-label\",t.accessibleHint),this.debug&&this.updateDebugHTML(e),t._accessibleActive=!0,t._accessibleDiv=e,e.displayObject=t,this.children.push(t),this.div.appendChild(t._accessibleDiv),t._accessibleDiv.tabIndex=t.tabIndex},e.prototype._onClick=function(t){var e=this.renderer.plugins.interaction,r=t.target.displayObject,i=e.eventData;e.dispatchEvent(r,\"click\",i),e.dispatchEvent(r,\"pointertap\",i),e.dispatchEvent(r,\"tap\",i)},e.prototype._onFocus=function(t){t.target.getAttribute(\"aria-live\")||t.target.setAttribute(\"aria-live\",\"assertive\");var e=this.renderer.plugins.interaction,r=t.target.displayObject,i=e.eventData;e.dispatchEvent(r,\"mouseover\",i)},e.prototype._onFocusOut=function(t){t.target.getAttribute(\"aria-live\")||t.target.setAttribute(\"aria-live\",\"polite\");var e=this.renderer.plugins.interaction,r=t.target.displayObject,i=e.eventData;e.dispatchEvent(r,\"mouseout\",i)},e.prototype._onKeyDown=function(t){9===t.keyCode&&this.activate()},e.prototype._onMouseMove=function(t){0===t.movementX&&0===t.movementY||this.deactivate()},e.prototype.destroy=function(){this.destroyTouchHook(),this.div=null,globalThis.document.removeEventListener(\"mousemove\",this._onMouseMove,!0),globalThis.removeEventListener(\"keydown\",this._onKeyDown),this.pool=null,this.children=null,this.renderer=null},e.extension={name:\"accessibility\",type:[t.ExtensionType.RendererPlugin,t.ExtensionType.CanvasRendererPlugin]},e}(),Gn=function(){function t(){this.pressure=0,this.rotationAngle=0,this.twist=0,this.tangentialPressure=0,this.global=new De,this.target=null,this.originalEvent=null,this.identifier=null,this.isPrimary=!1,this.button=0,this.buttons=0,this.width=0,this.height=0,this.tiltX=0,this.tiltY=0,this.pointerType=null,this.pressure=0,this.rotationAngle=0,this.twist=0,this.tangentialPressure=0}return Object.defineProperty(t.prototype,\"pointerId\",{get:function(){return this.identifier},enumerable:!1,configurable:!0}),t.prototype.getLocalPosition=function(t,e,r){return t.worldTransform.applyInverse(r||this.global,e)},t.prototype.copyEvent=function(t){\"isPrimary\"in t&&t.isPrimary&&(this.isPrimary=!0),this.button=\"button\"in t&&t.button;var e=\"buttons\"in t&&t.buttons;this.buttons=Number.isInteger(e)?e:\"which\"in t&&t.which,this.width=\"width\"in t&&t.width,this.height=\"height\"in t&&t.height,this.tiltX=\"tiltX\"in t&&t.tiltX,this.tiltY=\"tiltY\"in t&&t.tiltY,this.pointerType=\"pointerType\"in t&&t.pointerType,this.pressure=\"pressure\"in t&&t.pressure,this.rotationAngle=\"rotationAngle\"in t&&t.rotationAngle,this.twist=\"twist\"in t&&t.twist||0,this.tangentialPressure=\"tangentialPressure\"in t&&t.tangentialPressure||0},t.prototype.reset=function(){this.isPrimary=!1},t}(),Un=function(t,e){return Un=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},Un(t,e)},kn=function(){function t(){this.stopped=!1,this.stopsPropagatingAt=null,this.stopPropagationHint=!1,this.target=null,this.currentTarget=null,this.type=null,this.data=null}return t.prototype.stopPropagation=function(){this.stopped=!0,this.stopPropagationHint=!0,this.stopsPropagatingAt=this.currentTarget},t.prototype.reset=function(){this.stopped=!1,this.stopsPropagatingAt=null,this.stopPropagationHint=!1,this.currentTarget=null,this.target=null},t}(),Xn=function(){function t(e){this._pointerId=e,this._flags=t.FLAGS.NONE}return t.prototype._doSet=function(t,e){this._flags=e?this._flags|t:this._flags&~t},Object.defineProperty(t.prototype,\"pointerId\",{get:function(){return this._pointerId},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"flags\",{get:function(){return this._flags},set:function(t){this._flags=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"none\",{get:function(){return this._flags===t.FLAGS.NONE},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"over\",{get:function(){return 0!=(this._flags&t.FLAGS.OVER)},set:function(e){this._doSet(t.FLAGS.OVER,e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rightDown\",{get:function(){return 0!=(this._flags&t.FLAGS.RIGHT_DOWN)},set:function(e){this._doSet(t.FLAGS.RIGHT_DOWN,e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"leftDown\",{get:function(){return 0!=(this._flags&t.FLAGS.LEFT_DOWN)},set:function(e){this._doSet(t.FLAGS.LEFT_DOWN,e)},enumerable:!1,configurable:!0}),t.FLAGS=Object.freeze({NONE:0,OVER:1,LEFT_DOWN:2,RIGHT_DOWN:4}),t}(),jn=function(){function t(){this._tempPoint=new De}return t.prototype.recursiveFindHit=function(t,e,r,i,n){var o;if(!e||!e.visible)return!1;var s=t.data.global,a=!1,h=n=e.interactive||n,u=!0;if(e.hitArea)i&&(e.worldTransform.applyInverse(s,this._tempPoint),e.hitArea.contains(this._tempPoint.x,this._tempPoint.y)?a=!0:(i=!1,u=!1)),h=!1;else if(e._mask&&i){var l=e._mask.isMaskData?e._mask.maskObject:e._mask;l&&!(null===(o=l.containsPoint)||void 0===o?void 0:o.call(l,s))&&(i=!1)}if(u&&e.interactiveChildren&&e.children)for(var c=e.children,d=c.length-1;d>=0;d--){var f=c[d],p=this.recursiveFindHit(t,f,r,i,h);if(p){if(!f.parent)continue;h=!1,p&&(t.target&&(i=!1),a=!0)}}return n&&(i&&!t.target&&!e.hitArea&&e.containsPoint&&e.containsPoint(s)&&(a=!0),e.interactive&&(a&&!t.target&&(t.target=e),r&&r(t,e,!!a))),a},t.prototype.findHit=function(t,e,r,i){this.recursiveFindHit(t,e,r,i,!1)},t}(),Hn={interactive:!1,interactiveChildren:!0,hitArea:null,get buttonMode(){return\"pointer\"===this.cursor},set buttonMode(t){t?this.cursor=\"pointer\":\"pointer\"===this.cursor&&(this.cursor=null)},cursor:null,get trackedPointers(){return void 0===this._trackedPointers&&(this._trackedPointers={}),this._trackedPointers},_trackedPointers:void 0};Je.mixin(Hn);var Yn={target:null,data:{global:null}},Vn=function(e){function r(t,r){var i=e.call(this)||this;return r=r||{},i.renderer=t,i.autoPreventDefault=void 0===r.autoPreventDefault||r.autoPreventDefault,i.interactionFrequency=r.interactionFrequency||10,i.mouse=new Gn,i.mouse.identifier=1,i.mouse.global.set(-999999),i.activeInteractionData={},i.activeInteractionData[1]=i.mouse,i.interactionDataPool=[],i.eventData=new kn,i.interactionDOMElement=null,i.moveWhenInside=!1,i.eventsAdded=!1,i.tickerAdded=!1,i.mouseOverRenderer=!(\"PointerEvent\"in globalThis),i.supportsTouchEvents=\"ontouchstart\"in globalThis,i.supportsPointerEvents=!!globalThis.PointerEvent,i.onPointerUp=i.onPointerUp.bind(i),i.processPointerUp=i.processPointerUp.bind(i),i.onPointerCancel=i.onPointerCancel.bind(i),i.processPointerCancel=i.processPointerCancel.bind(i),i.onPointerDown=i.onPointerDown.bind(i),i.processPointerDown=i.processPointerDown.bind(i),i.onPointerMove=i.onPointerMove.bind(i),i.processPointerMove=i.processPointerMove.bind(i),i.onPointerOut=i.onPointerOut.bind(i),i.processPointerOverOut=i.processPointerOverOut.bind(i),i.onPointerOver=i.onPointerOver.bind(i),i.cursorStyles={default:\"inherit\",pointer:\"pointer\"},i.currentCursorMode=null,i.cursor=null,i.resolution=1,i.delayedEvents=[],i.search=new jn,i._tempDisplayObject=new $e,i._eventListenerOptions={capture:!0,passive:!1},i._useSystemTicker=void 0===r.useSystemTicker||r.useSystemTicker,i.setTargetElement(i.renderer.view,i.renderer.resolution),i}return function(t,e){function r(){this.constructor=t}Un(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}(r,e),Object.defineProperty(r.prototype,\"useSystemTicker\",{get:function(){return this._useSystemTicker},set:function(t){this._useSystemTicker=t,t?this.addTickerListener():this.removeTickerListener()},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"lastObjectRendered\",{get:function(){return this.renderer._lastObjectRendered||this._tempDisplayObject},enumerable:!1,configurable:!0}),r.prototype.hitTest=function(t,e){return Yn.target=null,Yn.data.global=t,e||(e=this.lastObjectRendered),this.processInteractive(Yn,e,null,!0),Yn.target},r.prototype.setTargetElement=function(t,e){void 0===e&&(e=1),this.removeTickerListener(),this.removeEvents(),this.interactionDOMElement=t,this.resolution=e,this.addEvents(),this.addTickerListener()},r.prototype.addTickerListener=function(){!this.tickerAdded&&this.interactionDOMElement&&this._useSystemTicker&&(ar.system.add(this.tickerUpdate,this,t.UPDATE_PRIORITY.INTERACTION),this.tickerAdded=!0)},r.prototype.removeTickerListener=function(){this.tickerAdded&&(ar.system.remove(this.tickerUpdate,this),this.tickerAdded=!1)},r.prototype.addEvents=function(){if(!this.eventsAdded&&this.interactionDOMElement){var t=this.interactionDOMElement.style;globalThis.navigator.msPointerEnabled?(t.msContentZooming=\"none\",t.msTouchAction=\"none\"):this.supportsPointerEvents&&(t.touchAction=\"none\"),this.supportsPointerEvents?(globalThis.document.addEventListener(\"pointermove\",this.onPointerMove,this._eventListenerOptions),this.interactionDOMElement.addEventListener(\"pointerdown\",this.onPointerDown,this._eventListenerOptions),this.interactionDOMElement.addEventListener(\"pointerleave\",this.onPointerOut,this._eventListenerOptions),this.interactionDOMElement.addEventListener(\"pointerover\",this.onPointerOver,this._eventListenerOptions),globalThis.addEventListener(\"pointercancel\",this.onPointerCancel,this._eventListenerOptions),globalThis.addEventListener(\"pointerup\",this.onPointerUp,this._eventListenerOptions)):(globalThis.document.addEventListener(\"mousemove\",this.onPointerMove,this._eventListenerOptions),this.interactionDOMElement.addEventListener(\"mousedown\",this.onPointerDown,this._eventListenerOptions),this.interactionDOMElement.addEventListener(\"mouseout\",this.onPointerOut,this._eventListenerOptions),this.interactionDOMElement.addEventListener(\"mouseover\",this.onPointerOver,this._eventListenerOptions),globalThis.addEventListener(\"mouseup\",this.onPointerUp,this._eventListenerOptions)),this.supportsTouchEvents&&(this.interactionDOMElement.addEventListener(\"touchstart\",this.onPointerDown,this._eventListenerOptions),this.interactionDOMElement.addEventListener(\"touchcancel\",this.onPointerCancel,this._eventListenerOptions),this.interactionDOMElement.addEventListener(\"touchend\",this.onPointerUp,this._eventListenerOptions),this.interactionDOMElement.addEventListener(\"touchmove\",this.onPointerMove,this._eventListenerOptions)),this.eventsAdded=!0}},r.prototype.removeEvents=function(){if(this.eventsAdded&&this.interactionDOMElement){var t=this.interactionDOMElement.style;globalThis.navigator.msPointerEnabled?(t.msContentZooming=\"\",t.msTouchAction=\"\"):this.supportsPointerEvents&&(t.touchAction=\"\"),this.supportsPointerEvents?(globalThis.document.removeEventListener(\"pointermove\",this.onPointerMove,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(\"pointerdown\",this.onPointerDown,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(\"pointerleave\",this.onPointerOut,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(\"pointerover\",this.onPointerOver,this._eventListenerOptions),globalThis.removeEventListener(\"pointercancel\",this.onPointerCancel,this._eventListenerOptions),globalThis.removeEventListener(\"pointerup\",this.onPointerUp,this._eventListenerOptions)):(globalThis.document.removeEventListener(\"mousemove\",this.onPointerMove,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(\"mousedown\",this.onPointerDown,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(\"mouseout\",this.onPointerOut,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(\"mouseover\",this.onPointerOver,this._eventListenerOptions),globalThis.removeEventListener(\"mouseup\",this.onPointerUp,this._eventListenerOptions)),this.supportsTouchEvents&&(this.interactionDOMElement.removeEventListener(\"touchstart\",this.onPointerDown,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(\"touchcancel\",this.onPointerCancel,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(\"touchend\",this.onPointerUp,this._eventListenerOptions),this.interactionDOMElement.removeEventListener(\"touchmove\",this.onPointerMove,this._eventListenerOptions)),this.interactionDOMElement=null,this.eventsAdded=!1}},r.prototype.tickerUpdate=function(t){this._deltaTime+=t,this._deltaTime<this.interactionFrequency||(this._deltaTime=0,this.update())},r.prototype.update=function(){if(this.interactionDOMElement)if(this._didMove)this._didMove=!1;else{for(var t in this.cursor=null,this.activeInteractionData)if(this.activeInteractionData.hasOwnProperty(t)){var e=this.activeInteractionData[t];if(e.originalEvent&&\"touch\"!==e.pointerType){var r=this.configureInteractionEventForDOMEvent(this.eventData,e.originalEvent,e);this.processInteractive(r,this.lastObjectRendered,this.processPointerOverOut,!0)}}this.setCursorMode(this.cursor)}},r.prototype.setCursorMode=function(t){t=t||\"default\";var e=!0;if(globalThis.OffscreenCanvas&&this.interactionDOMElement instanceof OffscreenCanvas&&(e=!1),this.currentCursorMode!==t){this.currentCursorMode=t;var r=this.cursorStyles[t];if(r)switch(typeof r){case\"string\":e&&(this.interactionDOMElement.style.cursor=r);break;case\"function\":r(t);break;case\"object\":e&&Object.assign(this.interactionDOMElement.style,r)}else e&&\"string\"==typeof t&&!Object.prototype.hasOwnProperty.call(this.cursorStyles,t)&&(this.interactionDOMElement.style.cursor=t)}},r.prototype.dispatchEvent=function(t,e,r){r.stopPropagationHint&&t!==r.stopsPropagatingAt||(r.currentTarget=t,r.type=e,t.emit(e,r),t[e]&&t[e](r))},r.prototype.delayDispatchEvent=function(t,e,r){this.delayedEvents.push({displayObject:t,eventString:e,eventData:r})},r.prototype.mapPositionToPoint=function(t,e,r){var i;i=this.interactionDOMElement.parentElement?this.interactionDOMElement.getBoundingClientRect():{x:0,y:0,width:this.interactionDOMElement.width,height:this.interactionDOMElement.height,left:0,top:0};var n=1/this.resolution;t.x=(e-i.left)*(this.interactionDOMElement.width/i.width)*n,t.y=(r-i.top)*(this.interactionDOMElement.height/i.height)*n},r.prototype.processInteractive=function(t,e,r,i){var n=this.search.findHit(t,e,r,i),o=this.delayedEvents;if(!o.length)return n;t.stopPropagationHint=!1;var s=o.length;this.delayedEvents=[];for(var a=0;a<s;a++){var h=o[a],u=h.displayObject,l=h.eventString,c=h.eventData;c.stopsPropagatingAt===u&&(c.stopPropagationHint=!0),this.dispatchEvent(u,l,c)}return n},r.prototype.onPointerDown=function(t){if(!this.supportsTouchEvents||\"touch\"!==t.pointerType){var e=this.normalizeToPointerData(t);this.autoPreventDefault&&e[0].isNormalized&&(t.cancelable||!(\"cancelable\"in t))&&t.preventDefault();for(var r=e.length,i=0;i<r;i++){var n=e[i],o=this.getInteractionDataForPointerId(n),s=this.configureInteractionEventForDOMEvent(this.eventData,n,o);if(s.data.originalEvent=t,this.processInteractive(s,this.lastObjectRendered,this.processPointerDown,!0),this.emit(\"pointerdown\",s),\"touch\"===n.pointerType)this.emit(\"touchstart\",s);else if(\"mouse\"===n.pointerType||\"pen\"===n.pointerType){var a=2===n.button;this.emit(a?\"rightdown\":\"mousedown\",this.eventData)}}}},r.prototype.processPointerDown=function(t,e,r){var i=t.data,n=t.data.identifier;if(r)if(e.trackedPointers[n]||(e.trackedPointers[n]=new Xn(n)),this.dispatchEvent(e,\"pointerdown\",t),\"touch\"===i.pointerType)this.dispatchEvent(e,\"touchstart\",t);else if(\"mouse\"===i.pointerType||\"pen\"===i.pointerType){var o=2===i.button;o?e.trackedPointers[n].rightDown=!0:e.trackedPointers[n].leftDown=!0,this.dispatchEvent(e,o?\"rightdown\":\"mousedown\",t)}},r.prototype.onPointerComplete=function(t,e,r){var i=this.normalizeToPointerData(t),n=i.length,o=t.target;t.composedPath&&t.composedPath().length>0&&(o=t.composedPath()[0]);for(var s=o!==this.interactionDOMElement?\"outside\":\"\",a=0;a<n;a++){var h=i[a],u=this.getInteractionDataForPointerId(h),l=this.configureInteractionEventForDOMEvent(this.eventData,h,u);if(l.data.originalEvent=t,this.processInteractive(l,this.lastObjectRendered,r,e||!s),this.emit(e?\"pointercancel\":\"pointerup\"+s,l),\"mouse\"===h.pointerType||\"pen\"===h.pointerType){var c=2===h.button;this.emit(c?\"rightup\"+s:\"mouseup\"+s,l)}else\"touch\"===h.pointerType&&(this.emit(e?\"touchcancel\":\"touchend\"+s,l),this.releaseInteractionDataForPointerId(h.pointerId))}},r.prototype.onPointerCancel=function(t){this.supportsTouchEvents&&\"touch\"===t.pointerType||this.onPointerComplete(t,!0,this.processPointerCancel)},r.prototype.processPointerCancel=function(t,e){var r=t.data,i=t.data.identifier;void 0!==e.trackedPointers[i]&&(delete e.trackedPointers[i],this.dispatchEvent(e,\"pointercancel\",t),\"touch\"===r.pointerType&&this.dispatchEvent(e,\"touchcancel\",t))},r.prototype.onPointerUp=function(t){this.supportsTouchEvents&&\"touch\"===t.pointerType||this.onPointerComplete(t,!1,this.processPointerUp)},r.prototype.processPointerUp=function(t,e,r){var i=t.data,n=t.data.identifier,o=e.trackedPointers[n],s=\"touch\"===i.pointerType,a=\"mouse\"===i.pointerType||\"pen\"===i.pointerType,h=!1;if(a){var u=2===i.button,l=Xn.FLAGS,c=u?l.RIGHT_DOWN:l.LEFT_DOWN,d=void 0!==o&&o.flags&c;r?(this.dispatchEvent(e,u?\"rightup\":\"mouseup\",t),d&&(this.dispatchEvent(e,u?\"rightclick\":\"click\",t),h=!0)):d&&this.dispatchEvent(e,u?\"rightupoutside\":\"mouseupoutside\",t),o&&(u?o.rightDown=!1:o.leftDown=!1)}r?(this.dispatchEvent(e,\"pointerup\",t),s&&this.dispatchEvent(e,\"touchend\",t),o&&(a&&!h||this.dispatchEvent(e,\"pointertap\",t),s&&(this.dispatchEvent(e,\"tap\",t),o.over=!1))):o&&(this.dispatchEvent(e,\"pointerupoutside\",t),s&&this.dispatchEvent(e,\"touchendoutside\",t)),o&&o.none&&delete e.trackedPointers[n]},r.prototype.onPointerMove=function(t){if(!this.supportsTouchEvents||\"touch\"!==t.pointerType){var e=this.normalizeToPointerData(t);\"mouse\"!==e[0].pointerType&&\"pen\"!==e[0].pointerType||(this._didMove=!0,this.cursor=null);for(var r=e.length,i=0;i<r;i++){var n=e[i],o=this.getInteractionDataForPointerId(n),s=this.configureInteractionEventForDOMEvent(this.eventData,n,o);s.data.originalEvent=t,this.processInteractive(s,this.lastObjectRendered,this.processPointerMove,!0),this.emit(\"pointermove\",s),\"touch\"===n.pointerType&&this.emit(\"touchmove\",s),\"mouse\"!==n.pointerType&&\"pen\"!==n.pointerType||this.emit(\"mousemove\",s)}\"mouse\"===e[0].pointerType&&this.setCursorMode(this.cursor)}},r.prototype.processPointerMove=function(t,e,r){var i=t.data,n=\"touch\"===i.pointerType,o=\"mouse\"===i.pointerType||\"pen\"===i.pointerType;o&&this.processPointerOverOut(t,e,r),this.moveWhenInside&&!r||(this.dispatchEvent(e,\"pointermove\",t),n&&this.dispatchEvent(e,\"touchmove\",t),o&&this.dispatchEvent(e,\"mousemove\",t))},r.prototype.onPointerOut=function(t){if(!this.supportsTouchEvents||\"touch\"!==t.pointerType){var e=this.normalizeToPointerData(t)[0];\"mouse\"===e.pointerType&&(this.mouseOverRenderer=!1,this.setCursorMode(null));var r=this.getInteractionDataForPointerId(e),i=this.configureInteractionEventForDOMEvent(this.eventData,e,r);i.data.originalEvent=e,this.processInteractive(i,this.lastObjectRendered,this.processPointerOverOut,!1),this.emit(\"pointerout\",i),\"mouse\"===e.pointerType||\"pen\"===e.pointerType?this.emit(\"mouseout\",i):this.releaseInteractionDataForPointerId(r.identifier)}},r.prototype.processPointerOverOut=function(t,e,r){var i=t.data,n=t.data.identifier,o=\"mouse\"===i.pointerType||\"pen\"===i.pointerType,s=e.trackedPointers[n];r&&!s&&(s=e.trackedPointers[n]=new Xn(n)),void 0!==s&&(r&&this.mouseOverRenderer?(s.over||(s.over=!0,this.delayDispatchEvent(e,\"pointerover\",t),o&&this.delayDispatchEvent(e,\"mouseover\",t)),o&&null===this.cursor&&(this.cursor=e.cursor)):s.over&&(s.over=!1,this.dispatchEvent(e,\"pointerout\",this.eventData),o&&this.dispatchEvent(e,\"mouseout\",t),s.none&&delete e.trackedPointers[n]))},r.prototype.onPointerOver=function(t){if(!this.supportsTouchEvents||\"touch\"!==t.pointerType){var e=this.normalizeToPointerData(t)[0],r=this.getInteractionDataForPointerId(e),i=this.configureInteractionEventForDOMEvent(this.eventData,e,r);i.data.originalEvent=e,\"mouse\"===e.pointerType&&(this.mouseOverRenderer=!0),this.emit(\"pointerover\",i),\"mouse\"!==e.pointerType&&\"pen\"!==e.pointerType||this.emit(\"mouseover\",i)}},r.prototype.getInteractionDataForPointerId=function(t){var e,r=t.pointerId;return 1===r||\"mouse\"===t.pointerType?e=this.mouse:this.activeInteractionData[r]?e=this.activeInteractionData[r]:((e=this.interactionDataPool.pop()||new Gn).identifier=r,this.activeInteractionData[r]=e),e.copyEvent(t),e},r.prototype.releaseInteractionDataForPointerId=function(t){var e=this.activeInteractionData[t];e&&(delete this.activeInteractionData[t],e.reset(),this.interactionDataPool.push(e))},r.prototype.configureInteractionEventForDOMEvent=function(t,e,r){return t.data=r,this.mapPositionToPoint(r.global,e.clientX,e.clientY),\"touch\"===e.pointerType&&(e.globalX=r.global.x,e.globalY=r.global.y),r.originalEvent=e,t.reset(),t},r.prototype.normalizeToPointerData=function(t){var e=[];if(this.supportsTouchEvents&&t instanceof TouchEvent)for(var r=0,i=t.changedTouches.length;r<i;r++){var n=t.changedTouches[r];void 0===n.button&&(n.button=t.touches.length?1:0),void 0===n.buttons&&(n.buttons=t.touches.length?1:0),void 0===n.isPrimary&&(n.isPrimary=1===t.touches.length&&\"touchstart\"===t.type),void 0===n.width&&(n.width=n.radiusX||1),void 0===n.height&&(n.height=n.radiusY||1),void 0===n.tiltX&&(n.tiltX=0),void 0===n.tiltY&&(n.tiltY=0),void 0===n.pointerType&&(n.pointerType=\"touch\"),void 0===n.pointerId&&(n.pointerId=n.identifier||0),void 0===n.pressure&&(n.pressure=n.force||.5),void 0===n.twist&&(n.twist=0),void 0===n.tangentialPressure&&(n.tangentialPressure=0),void 0===n.layerX&&(n.layerX=n.offsetX=n.clientX),void 0===n.layerY&&(n.layerY=n.offsetY=n.clientY),n.isNormalized=!0,e.push(n)}else if(!globalThis.MouseEvent||t instanceof MouseEvent&&!(this.supportsPointerEvents&&t instanceof globalThis.PointerEvent)){var o=t;void 0===o.isPrimary&&(o.isPrimary=!0),void 0===o.width&&(o.width=1),void 0===o.height&&(o.height=1),void 0===o.tiltX&&(o.tiltX=0),void 0===o.tiltY&&(o.tiltY=0),void 0===o.pointerType&&(o.pointerType=\"mouse\"),void 0===o.pointerId&&(o.pointerId=1),void 0===o.pressure&&(o.pressure=.5),void 0===o.twist&&(o.twist=0),void 0===o.tangentialPressure&&(o.tangentialPressure=0),o.isNormalized=!0,e.push(o)}else e.push(t);return e},r.prototype.destroy=function(){this.removeEvents(),this.removeTickerListener(),this.removeAllListeners(),this.renderer=null,this.mouse=null,this.eventData=null,this.interactionDOMElement=null,this.onPointerDown=null,this.processPointerDown=null,this.onPointerUp=null,this.processPointerUp=null,this.onPointerCancel=null,this.processPointerCancel=null,this.onPointerMove=null,this.processPointerMove=null,this.onPointerOut=null,this.processPointerOverOut=null,this.onPointerOver=null,this.search=null},r.extension={name:\"interaction\",type:[t.ExtensionType.RendererPlugin,t.ExtensionType.CanvasRendererPlugin]},r}(j),zn=new Ce,Wn=function(){function e(t){this.renderer=t}return e.prototype.image=function(t,e,r){var i=new Image;return i.src=this.base64(t,e,r),i},e.prototype.base64=function(t,e,r){return this.canvas(t).toDataURL(e,r)},e.prototype.canvas=function(t,r){var i=this._rawPixels(t,r),n=i.pixels,o=i.width,s=i.height,a=i.flipY,h=new Ee(o,s,1),u=h.context.getImageData(0,0,o,s);if(e.arrayPostDivide(n,u.data),h.context.putImageData(u,0,0),a){var l=new Ee(h.width,h.height,1);l.context.scale(1,-1),l.context.drawImage(h.canvas,0,-s),h.destroy(),h=l}return h.canvas},e.prototype.pixels=function(t,r){var i=this._rawPixels(t,r).pixels;return e.arrayPostDivide(i,i),i},e.prototype._rawPixels=function(e,r){var i,n,o=this.renderer,s=!1,a=!1;if(e)if(e instanceof Fr)n=e;else{var h=o.context.webGLVersion>=2?o.multisample:t.MSAA_QUALITY.NONE;if(n=this.renderer.generateTexture(e,{multisample:h}),h!==t.MSAA_QUALITY.NONE){var u=Fr.create({width:n.width,height:n.height});o.framebuffer.bind(n.framebuffer),o.framebuffer.blit(u.framebuffer),o.framebuffer.bind(null),n.destroy(!0),n=u}a=!0}n?(i=n.baseTexture.resolution,r=null!=r?r:n.frame,s=!1,o.renderTexture.bind(n)):(i=o.resolution,r||((r=zn).width=o.width,r.height=o.height),s=!0,o.renderTexture.bind(null));var l=Math.round(r.width*i),c=Math.round(r.height*i),d=new Uint8Array(4*l*c),f=o.gl;return f.readPixels(Math.round(r.x*i),Math.round(r.y*i),l,c,f.RGBA,f.UNSIGNED_BYTE,d),a&&n.destroy(!0),{pixels:d,width:l,height:c,flipY:s}},e.prototype.destroy=function(){this.renderer=null},e.arrayPostDivide=function(t,e){for(var r=0;r<t.length;r+=4){var i=e[r+3]=t[r+3];0!==i?(e[r]=Math.round(Math.min(255*t[r]/i,255)),e[r+1]=Math.round(Math.min(255*t[r+1]/i,255)),e[r+2]=Math.round(Math.min(255*t[r+2]/i,255))):(e[r]=t[r],e[r+1]=t[r+1],e[r+2]=t[r+2])}},e.extension={name:\"extract\",type:t.ExtensionType.RendererPlugin},e}(),qn=function(){function t(t,e,r){void 0===e&&(e=!1),this._fn=t,this._once=e,this._thisArg=r,this._next=this._prev=this._owner=null}return t.prototype.detach=function(){return null!==this._owner&&(this._owner.detach(this),!0)},t}();function Kn(t,e){return t._head?(t._tail._next=e,e._prev=t._tail,t._tail=e):(t._head=e,t._tail=e),e._owner=t,e}var Zn,Qn=function(){function t(){this._head=this._tail=void 0}return t.prototype.handlers=function(t){void 0===t&&(t=!1);var e=this._head;if(t)return!!e;for(var r=[];e;)r.push(e),e=e._next;return r},t.prototype.has=function(t){if(!(t instanceof qn))throw new Error(\"MiniSignal#has(): First arg must be a SignalBinding object.\");return t._owner===this},t.prototype.dispatch=function(){for(var t=arguments,e=[],r=0;r<arguments.length;r++)e[r]=t[r];var i=this._head;if(!i)return!1;for(;i;)i._once&&this.detach(i),i._fn.apply(i._thisArg,e),i=i._next;return!0},t.prototype.add=function(t,e){if(void 0===e&&(e=null),\"function\"!=typeof t)throw new Error(\"MiniSignal#add(): First arg must be a Function.\");return Kn(this,new qn(t,!1,e))},t.prototype.once=function(t,e){if(void 0===e&&(e=null),\"function\"!=typeof t)throw new Error(\"MiniSignal#once(): First arg must be a Function.\");return Kn(this,new qn(t,!0,e))},t.prototype.detach=function(t){if(!(t instanceof qn))throw new Error(\"MiniSignal#detach(): First arg must be a SignalBinding object.\");return t._owner!==this||(t._prev&&(t._prev._next=t._next),t._next&&(t._next._prev=t._prev),t===this._head?(this._head=t._next,null===t._next&&(this._tail=null)):t===this._tail&&(this._tail=t._prev,this._tail._next=null),t._owner=null),this},t.prototype.detachAll=function(){var t=this._head;if(!t)return this;for(this._head=this._tail=null;t;)t._owner=null,t=t._next;return this},t}();function Jn(t,e){e=e||{};for(var r={key:[\"source\",\"protocol\",\"authority\",\"userInfo\",\"user\",\"password\",\"host\",\"port\",\"relative\",\"path\",\"directory\",\"file\",\"query\",\"anchor\"],q:{name:\"queryKey\",parser:/(?:^|&)([^&=]*)=?([^&]*)/g},parser:{strict:/^(?:([^:\\/?#]+):)?(?:\\/\\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\\/?#]*)(?::(\\d*))?))?((((?:[^?#\\/]*\\/)*)([^?#]*))(?:\\?([^#]*))?(?:#(.*))?)/,loose:/^(?:(?![^:@]+:[^:@\\/]*@)([^:\\/?#.]+):)?(?:\\/\\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\\/?#]*)(?::(\\d*))?)(((\\/(?:[^?#](?![^?#\\/]*\\.[^?#\\/.]+(?:[?#]|$)))*\\/?)?([^?#\\/]*))(?:\\?([^#]*))?(?:#(.*))?)/}},i=r.parser[e.strictMode?\"strict\":\"loose\"].exec(t),n={},o=14;o--;)n[r.key[o]]=i[o]||\"\";return n[r.q.name]={},n[r.key[12]].replace(r.q.parser,(function(t,e,i){e&&(n[r.q.name][e]=i)})),n}var $n=null;function to(){}function eo(t,e,r){e&&0===e.indexOf(\".\")&&(e=e.substring(1)),e&&(t[e]=r)}function ro(t){return t.toString().replace(\"object \",\"\")}function io(){}function no(t){return function(){for(var e=arguments,r=[],i=0;i<arguments.length;i++)r[i]=e[i];if(null===t)throw new Error(\"Callback was already called.\");var n=t;t=null,n.apply(this,r)}}t.LoaderResource=function(){function t(e,r,i){if(this._dequeue=to,this._onLoadBinding=null,this._elementTimer=0,this._boundComplete=null,this._boundOnError=null,this._boundOnProgress=null,this._boundOnTimeout=null,this._boundXhrOnError=null,this._boundXhrOnTimeout=null,this._boundXhrOnAbort=null,this._boundXhrOnLoad=null,\"string\"!=typeof e||\"string\"!=typeof r)throw new Error(\"Both name and url are required for constructing a resource.\");i=i||{},this._flags=0,this._setFlag(t.STATUS_FLAGS.DATA_URL,0===r.indexOf(\"data:\")),this.name=e,this.url=r,this.extension=this._getExtension(),this.data=null,this.crossOrigin=!0===i.crossOrigin?\"anonymous\":i.crossOrigin,this.timeout=i.timeout||0,this.loadType=i.loadType||this._determineLoadType(),this.xhrType=i.xhrType,this.metadata=i.metadata||{},this.error=null,this.xhr=null,this.children=[],this.type=t.TYPE.UNKNOWN,this.progressChunk=0,this._dequeue=to,this._onLoadBinding=null,this._elementTimer=0,this._boundComplete=this.complete.bind(this),this._boundOnError=this._onError.bind(this),this._boundOnProgress=this._onProgress.bind(this),this._boundOnTimeout=this._onTimeout.bind(this),this._boundXhrOnError=this._xhrOnError.bind(this),this._boundXhrOnTimeout=this._xhrOnTimeout.bind(this),this._boundXhrOnAbort=this._xhrOnAbort.bind(this),this._boundXhrOnLoad=this._xhrOnLoad.bind(this),this.onStart=new Qn,this.onProgress=new Qn,this.onComplete=new Qn,this.onAfterMiddleware=new Qn}return t.setExtensionLoadType=function(e,r){eo(t._loadTypeMap,e,r)},t.setExtensionXhrType=function(e,r){eo(t._xhrTypeMap,e,r)},Object.defineProperty(t.prototype,\"isDataUrl\",{get:function(){return this._hasFlag(t.STATUS_FLAGS.DATA_URL)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"isComplete\",{get:function(){return this._hasFlag(t.STATUS_FLAGS.COMPLETE)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"isLoading\",{get:function(){return this._hasFlag(t.STATUS_FLAGS.LOADING)},enumerable:!1,configurable:!0}),t.prototype.complete=function(){this._clearEvents(),this._finish()},t.prototype.abort=function(e){if(!this.error){if(this.error=new Error(e),this._clearEvents(),this.xhr)this.xhr.abort();else if(this.xdr)this.xdr.abort();else if(this.data)if(this.data.src)this.data.src=t.EMPTY_GIF;else for(;this.data.firstChild;)this.data.removeChild(this.data.firstChild);this._finish()}},t.prototype.load=function(e){var r=this;if(!this.isLoading)if(this.isComplete)e&&setTimeout((function(){return e(r)}),1);else switch(e&&this.onComplete.once(e),this._setFlag(t.STATUS_FLAGS.LOADING,!0),this.onStart.dispatch(this),!1!==this.crossOrigin&&\"string\"==typeof this.crossOrigin||(this.crossOrigin=this._determineCrossOrigin(this.url)),this.loadType){case t.LOAD_TYPE.IMAGE:this.type=t.TYPE.IMAGE,this._loadElement(\"image\");break;case t.LOAD_TYPE.AUDIO:this.type=t.TYPE.AUDIO,this._loadSourceElement(\"audio\");break;case t.LOAD_TYPE.VIDEO:this.type=t.TYPE.VIDEO,this._loadSourceElement(\"video\");break;case t.LOAD_TYPE.XHR:default:void 0===Zn&&(Zn=!(!globalThis.XDomainRequest||\"withCredentials\"in new XMLHttpRequest)),Zn&&this.crossOrigin?this._loadXdr():this._loadXhr()}},t.prototype._hasFlag=function(t){return 0!=(this._flags&t)},t.prototype._setFlag=function(t,e){this._flags=e?this._flags|t:this._flags&~t},t.prototype._clearEvents=function(){clearTimeout(this._elementTimer),this.data&&this.data.removeEventListener&&(this.data.removeEventListener(\"error\",this._boundOnError,!1),this.data.removeEventListener(\"load\",this._boundComplete,!1),this.data.removeEventListener(\"progress\",this._boundOnProgress,!1),this.data.removeEventListener(\"canplaythrough\",this._boundComplete,!1)),this.xhr&&(this.xhr.removeEventListener?(this.xhr.removeEventListener(\"error\",this._boundXhrOnError,!1),this.xhr.removeEventListener(\"timeout\",this._boundXhrOnTimeout,!1),this.xhr.removeEventListener(\"abort\",this._boundXhrOnAbort,!1),this.xhr.removeEventListener(\"progress\",this._boundOnProgress,!1),this.xhr.removeEventListener(\"load\",this._boundXhrOnLoad,!1)):(this.xhr.onerror=null,this.xhr.ontimeout=null,this.xhr.onprogress=null,this.xhr.onload=null))},t.prototype._finish=function(){if(this.isComplete)throw new Error(\"Complete called again for an already completed resource.\");this._setFlag(t.STATUS_FLAGS.COMPLETE,!0),this._setFlag(t.STATUS_FLAGS.LOADING,!1),this.onComplete.dispatch(this)},t.prototype._loadElement=function(t){this.metadata.loadElement?this.data=this.metadata.loadElement:\"image\"===t&&void 0!==globalThis.Image?this.data=new Image:this.data=document.createElement(t),this.crossOrigin&&(this.data.crossOrigin=this.crossOrigin),this.metadata.skipSource||(this.data.src=this.url),this.data.addEventListener(\"error\",this._boundOnError,!1),this.data.addEventListener(\"load\",this._boundComplete,!1),this.data.addEventListener(\"progress\",this._boundOnProgress,!1),this.timeout&&(this._elementTimer=setTimeout(this._boundOnTimeout,this.timeout))},t.prototype._loadSourceElement=function(t){if(this.metadata.loadElement?this.data=this.metadata.loadElement:\"audio\"===t&&void 0!==globalThis.Audio?this.data=new Audio:this.data=document.createElement(t),null!==this.data){if(this.crossOrigin&&(this.data.crossOrigin=this.crossOrigin),!this.metadata.skipSource)if(navigator.isCocoonJS)this.data.src=Array.isArray(this.url)?this.url[0]:this.url;else if(Array.isArray(this.url))for(var e=this.metadata.mimeType,r=0;r<this.url.length;++r)this.data.appendChild(this._createSource(t,this.url[r],Array.isArray(e)?e[r]:e));else e=this.metadata.mimeType,this.data.appendChild(this._createSource(t,this.url,Array.isArray(e)?e[0]:e));this.data.addEventListener(\"error\",this._boundOnError,!1),this.data.addEventListener(\"load\",this._boundComplete,!1),this.data.addEventListener(\"progress\",this._boundOnProgress,!1),this.data.addEventListener(\"canplaythrough\",this._boundComplete,!1),this.data.load(),this.timeout&&(this._elementTimer=setTimeout(this._boundOnTimeout,this.timeout))}else this.abort(\"Unsupported element: \"+t)},t.prototype._loadXhr=function(){\"string\"!=typeof this.xhrType&&(this.xhrType=this._determineXhrType());var e=this.xhr=new XMLHttpRequest;\"use-credentials\"===this.crossOrigin&&(e.withCredentials=!0),e.open(\"GET\",this.url,!0),e.timeout=this.timeout,this.xhrType===t.XHR_RESPONSE_TYPE.JSON||this.xhrType===t.XHR_RESPONSE_TYPE.DOCUMENT?e.responseType=t.XHR_RESPONSE_TYPE.TEXT:e.responseType=this.xhrType,e.addEventListener(\"error\",this._boundXhrOnError,!1),e.addEventListener(\"timeout\",this._boundXhrOnTimeout,!1),e.addEventListener(\"abort\",this._boundXhrOnAbort,!1),e.addEventListener(\"progress\",this._boundOnProgress,!1),e.addEventListener(\"load\",this._boundXhrOnLoad,!1),e.send()},t.prototype._loadXdr=function(){\"string\"!=typeof this.xhrType&&(this.xhrType=this._determineXhrType());var t=this.xhr=new globalThis.XDomainRequest;t.timeout=this.timeout||5e3,t.onerror=this._boundXhrOnError,t.ontimeout=this._boundXhrOnTimeout,t.onprogress=this._boundOnProgress,t.onload=this._boundXhrOnLoad,t.open(\"GET\",this.url,!0),setTimeout((function(){return t.send()}),1)},t.prototype._createSource=function(t,e,r){r||(r=t+\"/\"+this._getExtension(e));var i=document.createElement(\"source\");return i.src=e,i.type=r,i},t.prototype._onError=function(t){this.abort(\"Failed to load element using: \"+t.target.nodeName)},t.prototype._onProgress=function(t){t&&t.lengthComputable&&this.onProgress.dispatch(this,t.loaded/t.total)},t.prototype._onTimeout=function(){this.abort(\"Load timed out.\")},t.prototype._xhrOnError=function(){var t=this.xhr;this.abort(ro(t)+\" Request failed. Status: \"+t.status+', text: \"'+t.statusText+'\"')},t.prototype._xhrOnTimeout=function(){var t=this.xhr;this.abort(ro(t)+\" Request timed out.\")},t.prototype._xhrOnAbort=function(){var t=this.xhr;this.abort(ro(t)+\" Request was aborted by the user.\")},t.prototype._xhrOnLoad=function(){var e=this.xhr,r=\"\",i=void 0===e.status?200:e.status;if(\"\"!==e.responseType&&\"text\"!==e.responseType&&void 0!==e.responseType||(r=e.responseText),0===i&&(r.length>0||e.responseType===t.XHR_RESPONSE_TYPE.BUFFER)?i=200:1223===i&&(i=204),2==(i/100|0)){if(this.xhrType===t.XHR_RESPONSE_TYPE.TEXT)this.data=r,this.type=t.TYPE.TEXT;else if(this.xhrType===t.XHR_RESPONSE_TYPE.JSON)try{this.data=JSON.parse(r),this.type=t.TYPE.JSON}catch(t){return void this.abort(\"Error trying to parse loaded json: \"+t)}else if(this.xhrType===t.XHR_RESPONSE_TYPE.DOCUMENT)try{if(globalThis.DOMParser){var n=new DOMParser;this.data=n.parseFromString(r,\"text/xml\")}else{var o=document.createElement(\"div\");o.innerHTML=r,this.data=o}this.type=t.TYPE.XML}catch(t){return void this.abort(\"Error trying to parse loaded xml: \"+t)}else this.data=e.response||r;this.complete()}else this.abort(\"[\"+e.status+\"] \"+e.statusText+\": \"+e.responseURL)},t.prototype._determineCrossOrigin=function(t,e){if(0===t.indexOf(\"data:\"))return\"\";if(globalThis.origin!==globalThis.location.origin)return\"anonymous\";e=e||globalThis.location,$n||($n=document.createElement(\"a\")),$n.href=t;var r=Jn($n.href,{strictMode:!0}),i=!r.port&&\"\"===e.port||r.port===e.port,n=r.protocol?r.protocol+\":\":\"\";return r.host===e.hostname&&i&&n===e.protocol?\"\":\"anonymous\"},t.prototype._determineXhrType=function(){return t._xhrTypeMap[this.extension]||t.XHR_RESPONSE_TYPE.TEXT},t.prototype._determineLoadType=function(){return t._loadTypeMap[this.extension]||t.LOAD_TYPE.XHR},t.prototype._getExtension=function(t){void 0===t&&(t=this.url);var e=\"\";if(this.isDataUrl){var r=t.indexOf(\"/\");e=t.substring(r+1,t.indexOf(\";\",r))}else{var i=t.indexOf(\"?\"),n=t.indexOf(\"#\"),o=Math.min(i>-1?i:t.length,n>-1?n:t.length);e=(t=t.substring(0,o)).substring(t.lastIndexOf(\".\")+1)}return e.toLowerCase()},t.prototype._getMimeFromXhrType=function(e){switch(e){case t.XHR_RESPONSE_TYPE.BUFFER:return\"application/octet-binary\";case t.XHR_RESPONSE_TYPE.BLOB:return\"application/blob\";case t.XHR_RESPONSE_TYPE.DOCUMENT:return\"application/xml\";case t.XHR_RESPONSE_TYPE.JSON:return\"application/json\";case t.XHR_RESPONSE_TYPE.DEFAULT:case t.XHR_RESPONSE_TYPE.TEXT:default:return\"text/plain\"}},t}(),function(t){var e,r,i,n;(e=t.STATUS_FLAGS||(t.STATUS_FLAGS={}))[e.NONE=0]=\"NONE\",e[e.DATA_URL=1]=\"DATA_URL\",e[e.COMPLETE=2]=\"COMPLETE\",e[e.LOADING=4]=\"LOADING\",(r=t.TYPE||(t.TYPE={}))[r.UNKNOWN=0]=\"UNKNOWN\",r[r.JSON=1]=\"JSON\",r[r.XML=2]=\"XML\",r[r.IMAGE=3]=\"IMAGE\",r[r.AUDIO=4]=\"AUDIO\",r[r.VIDEO=5]=\"VIDEO\",r[r.TEXT=6]=\"TEXT\",(i=t.LOAD_TYPE||(t.LOAD_TYPE={}))[i.XHR=1]=\"XHR\",i[i.IMAGE=2]=\"IMAGE\",i[i.AUDIO=3]=\"AUDIO\",i[i.VIDEO=4]=\"VIDEO\",(n=t.XHR_RESPONSE_TYPE||(t.XHR_RESPONSE_TYPE={})).DEFAULT=\"text\",n.BUFFER=\"arraybuffer\",n.BLOB=\"blob\",n.DOCUMENT=\"document\",n.JSON=\"json\",n.TEXT=\"text\",t._loadTypeMap={gif:t.LOAD_TYPE.IMAGE,png:t.LOAD_TYPE.IMAGE,bmp:t.LOAD_TYPE.IMAGE,jpg:t.LOAD_TYPE.IMAGE,jpeg:t.LOAD_TYPE.IMAGE,tif:t.LOAD_TYPE.IMAGE,tiff:t.LOAD_TYPE.IMAGE,webp:t.LOAD_TYPE.IMAGE,tga:t.LOAD_TYPE.IMAGE,avif:t.LOAD_TYPE.IMAGE,svg:t.LOAD_TYPE.IMAGE,\"svg+xml\":t.LOAD_TYPE.IMAGE,mp3:t.LOAD_TYPE.AUDIO,ogg:t.LOAD_TYPE.AUDIO,wav:t.LOAD_TYPE.AUDIO,mp4:t.LOAD_TYPE.VIDEO,webm:t.LOAD_TYPE.VIDEO},t._xhrTypeMap={xhtml:t.XHR_RESPONSE_TYPE.DOCUMENT,html:t.XHR_RESPONSE_TYPE.DOCUMENT,htm:t.XHR_RESPONSE_TYPE.DOCUMENT,xml:t.XHR_RESPONSE_TYPE.DOCUMENT,tmx:t.XHR_RESPONSE_TYPE.DOCUMENT,svg:t.XHR_RESPONSE_TYPE.DOCUMENT,tsx:t.XHR_RESPONSE_TYPE.DOCUMENT,gif:t.XHR_RESPONSE_TYPE.BLOB,png:t.XHR_RESPONSE_TYPE.BLOB,bmp:t.XHR_RESPONSE_TYPE.BLOB,jpg:t.XHR_RESPONSE_TYPE.BLOB,jpeg:t.XHR_RESPONSE_TYPE.BLOB,tif:t.XHR_RESPONSE_TYPE.BLOB,tiff:t.XHR_RESPONSE_TYPE.BLOB,webp:t.XHR_RESPONSE_TYPE.BLOB,tga:t.XHR_RESPONSE_TYPE.BLOB,avif:t.XHR_RESPONSE_TYPE.BLOB,json:t.XHR_RESPONSE_TYPE.JSON,text:t.XHR_RESPONSE_TYPE.TEXT,txt:t.XHR_RESPONSE_TYPE.TEXT,ttf:t.XHR_RESPONSE_TYPE.BUFFER,otf:t.XHR_RESPONSE_TYPE.BUFFER},t.EMPTY_GIF=\"data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==\"}(t.LoaderResource||(t.LoaderResource={}));var oo=function(t,e){this.data=t,this.callback=e},so=function(){function t(t,e){var r=this;if(void 0===e&&(e=1),this.workers=0,this.saturated=io,this.unsaturated=io,this.empty=io,this.drain=io,this.error=io,this.started=!1,this.paused=!1,this._tasks=[],this._insert=function(t,e,i){if(i&&\"function\"!=typeof i)throw new Error(\"task callback must be a function\");if(r.started=!0,null==t&&r.idle())setTimeout((function(){return r.drain()}),1);else{var n=new oo(t,\"function\"==typeof i?i:io);e?r._tasks.unshift(n):r._tasks.push(n),setTimeout(r.process,1)}},this.process=function(){for(;!r.paused&&r.workers<r.concurrency&&r._tasks.length;){var t=r._tasks.shift();0===r._tasks.length&&r.empty(),r.workers+=1,r.workers===r.concurrency&&r.saturated(),r._worker(t.data,no(r._next(t)))}},this._worker=t,0===e)throw new Error(\"Concurrency must not be zero\");this.concurrency=e,this.buffer=e/4}return t.prototype._next=function(t){var e=this;return function(){for(var r=arguments,i=[],n=0;n<arguments.length;n++)i[n]=r[n];e.workers-=1,t.callback.apply(t,i),null!=i[0]&&e.error(i[0],t.data),e.workers<=e.concurrency-e.buffer&&e.unsaturated(),e.idle()&&e.drain(),e.process()}},t.prototype.push=function(t,e){this._insert(t,!1,e)},t.prototype.kill=function(){this.workers=0,this.drain=io,this.started=!1,this._tasks=[]},t.prototype.unshift=function(t,e){this._insert(t,!0,e)},t.prototype.length=function(){return this._tasks.length},t.prototype.running=function(){return this.workers},t.prototype.idle=function(){return this._tasks.length+this.workers===0},t.prototype.pause=function(){!0!==this.paused&&(this.paused=!0)},t.prototype.resume=function(){if(!1!==this.paused){this.paused=!1;for(var t=1;t<=this.concurrency;t++)this.process()}},t.eachSeries=function(t,e,r,i){var n=0,o=t.length;!function s(a){a||n===o?r&&r(a):i?setTimeout((function(){e(t[n++],s)}),1):e(t[n++],s)}()},t.queue=function(e,r){return new t(e,r)},t}(),ao=/(#[\\w-]+)?$/,ho=function(){function e(t,r){var i=this;void 0===t&&(t=\"\"),void 0===r&&(r=10),this.progress=0,this.loading=!1,this.defaultQueryString=\"\",this._beforeMiddleware=[],this._afterMiddleware=[],this._resourcesParsing=[],this._boundLoadResource=function(t,e){return i._loadResource(t,e)},this.resources={},this.baseUrl=t,this._beforeMiddleware=[],this._afterMiddleware=[],this._resourcesParsing=[],this._boundLoadResource=function(t,e){return i._loadResource(t,e)},this._queue=so.queue(this._boundLoadResource,r),this._queue.pause(),this.resources={},this.onProgress=new Qn,this.onError=new Qn,this.onLoad=new Qn,this.onStart=new Qn,this.onComplete=new Qn;for(var n=0;n<e._plugins.length;++n){var o=e._plugins[n],s=o.pre,a=o.use;s&&this.pre(s),a&&this.use(a)}this._protected=!1}return e.prototype._add=function(e,r,i,n){if(this.loading&&(!i||!i.parentResource))throw new Error(\"Cannot add resources while the loader is running.\");if(this.resources[e])throw new Error('Resource named \"'+e+'\" already exists.');if(r=this._prepareUrl(r),this.resources[e]=new t.LoaderResource(e,r,i),\"function\"==typeof n&&this.resources[e].onAfterMiddleware.once(n),this.loading){for(var o=i.parentResource,s=[],a=0;a<o.children.length;++a)o.children[a].isComplete||s.push(o.children[a]);var h=o.progressChunk*(s.length+1)/(s.length+2);for(o.children.push(this.resources[e]),o.progressChunk=h,a=0;a<s.length;++a)s[a].progressChunk=h;this.resources[e].progressChunk=h}return this._queue.push(this.resources[e]),this},e.prototype.pre=function(t){return this._beforeMiddleware.push(t),this},e.prototype.use=function(t){return this._afterMiddleware.push(t),this},e.prototype.reset=function(){for(var t in this.progress=0,this.loading=!1,this._queue.kill(),this._queue.pause(),this.resources){var e=this.resources[t];e._onLoadBinding&&e._onLoadBinding.detach(),e.isLoading&&e.abort(\"loader reset\")}return this.resources={},this},e.prototype.load=function(t){if(\"function\"==typeof t&&this.onComplete.once(t),this.loading)return this;if(this._queue.idle())this._onStart(),this._onComplete();else{for(var e=100/this._queue._tasks.length,r=0;r<this._queue._tasks.length;++r)this._queue._tasks[r].data.progressChunk=e;this._onStart(),this._queue.resume()}return this},Object.defineProperty(e.prototype,\"concurrency\",{get:function(){return this._queue.concurrency},set:function(t){this._queue.concurrency=t},enumerable:!1,configurable:!0}),e.prototype._prepareUrl=function(t){var e,r=Jn(t,{strictMode:!0});if(e=r.protocol||!r.path||0===t.indexOf(\"//\")?t:this.baseUrl.length&&this.baseUrl.lastIndexOf(\"/\")!==this.baseUrl.length-1&&\"/\"!==t.charAt(0)?this.baseUrl+\"/\"+t:this.baseUrl+t,this.defaultQueryString){var i=ao.exec(e)[0];-1!==(e=e.slice(0,e.length-i.length)).indexOf(\"?\")?e+=\"&\"+this.defaultQueryString:e+=\"?\"+this.defaultQueryString,e+=i}return e},e.prototype._loadResource=function(t,e){var r=this;t._dequeue=e,so.eachSeries(this._beforeMiddleware,(function(e,i){e.call(r,t,(function(){i(t.isComplete?{}:null)}))}),(function(){t.isComplete?r._onLoad(t):(t._onLoadBinding=t.onComplete.once(r._onLoad,r),t.load())}),!0)},e.prototype._onStart=function(){this.progress=0,this.loading=!0,this.onStart.dispatch(this)},e.prototype._onComplete=function(){this.progress=100,this.loading=!1,this.onComplete.dispatch(this,this.resources)},e.prototype._onLoad=function(t){var e=this;t._onLoadBinding=null,this._resourcesParsing.push(t),t._dequeue(),so.eachSeries(this._afterMiddleware,(function(r,i){r.call(e,t,i)}),(function(){t.onAfterMiddleware.dispatch(t),e.progress=Math.min(100,e.progress+t.progressChunk),e.onProgress.dispatch(e,t),t.error?e.onError.dispatch(t.error,e,t):e.onLoad.dispatch(e,t),e._resourcesParsing.splice(e._resourcesParsing.indexOf(t),1),e._queue.idle()&&0===e._resourcesParsing.length&&e._onComplete()}),!0)},e.prototype.destroy=function(){this._protected||this.reset()},Object.defineProperty(e,\"shared\",{get:function(){var t=e._shared;return t||((t=new e)._protected=!0,e._shared=t),t},enumerable:!1,configurable:!0}),e.registerPlugin=function(r){return nr.add({type:t.ExtensionType.Loader,ref:r}),e},e._plugins=[],e}();nr.handleByList(t.ExtensionType.Loader,ho._plugins),ho.prototype.add=function(t,e,r,i){if(Array.isArray(t)){for(var n=0;n<t.length;++n)this.add(t[n]);return this}if(\"object\"==typeof t&&(r=t,i=e||r.callback||r.onComplete,e=r.url,t=r.name||r.key||r.url),\"string\"!=typeof e&&(i=r,r=e,e=t),\"string\"!=typeof e)throw new Error(\"No url passed to add resource to loader.\");return\"function\"==typeof r&&(i=r,r=null),this._add(t,e,r,i)};var uo=function(){function e(){}return e.init=function(t){t=Object.assign({sharedLoader:!1},t),this.loader=t.sharedLoader?ho.shared:new ho},e.destroy=function(){this.loader&&(this.loader.destroy(),this.loader=null)},e.extension=t.ExtensionType.Application,e}(),lo=function(){function e(){}return e.add=function(){t.LoaderResource.setExtensionLoadType(\"svg\",t.LoaderResource.LOAD_TYPE.XHR),t.LoaderResource.setExtensionXhrType(\"svg\",t.LoaderResource.XHR_RESPONSE_TYPE.TEXT)},e.use=function(e,r){if(!e.data||e.type!==t.LoaderResource.TYPE.IMAGE&&\"svg\"!==e.extension)r();else{var i=e.data,n=e.url,o=e.name,s=e.metadata;Nr.fromLoader(i,n,o,s).then((function(t){e.texture=t,r()})).catch(r)}},e.extension=t.ExtensionType.Loader,e}();function co(e,r){if(e.data){if(e.xhr&&e.xhrType===t.LoaderResource.XHR_RESPONSE_TYPE.BLOB)if(self.Blob&&\"string\"!=typeof e.data){if(0===e.data.type.indexOf(\"image\")){var i=globalThis.URL||globalThis.webkitURL,n=i.createObjectURL(e.data);return e.blob=e.data,e.data=new Image,e.data.src=n,e.type=t.LoaderResource.TYPE.IMAGE,void(e.data.onload=function(){i.revokeObjectURL(n),e.data.onload=null,r()})}}else{var o=e.xhr.getResponseHeader(\"content-type\");if(o&&0===o.indexOf(\"image\"))return e.data=new Image,e.data.src=\"data:\"+o+\";base64,\"+function(t){for(var e=\"\",r=0;r<t.length;){for(var i=[0,0,0],n=[0,0,0,0],o=0;o<i.length;++o)r<t.length?i[o]=255&t.charCodeAt(r++):i[o]=0;switch(n[0]=i[0]>>2,n[1]=(3&i[0])<<4|i[1]>>4,n[2]=(15&i[1])<<2|i[2]>>6,n[3]=63&i[2],r-(t.length-1)){case 2:n[3]=64,n[2]=64;break;case 1:n[3]=64}for(o=0;o<n.length;++o)e+=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\".charAt(n[o])}return e}(e.xhr.responseText),e.type=t.LoaderResource.TYPE.IMAGE,void(e.data.onload=function(){e.data.onload=null,r()})}r()}else r()}var fo,po=function(){function e(){}return e.extension=t.ExtensionType.Loader,e.use=co,e}();nr.add(lo,po),t.INTERNAL_FORMATS=void 0,function(t){t[t.COMPRESSED_RGB_S3TC_DXT1_EXT=33776]=\"COMPRESSED_RGB_S3TC_DXT1_EXT\",t[t.COMPRESSED_RGBA_S3TC_DXT1_EXT=33777]=\"COMPRESSED_RGBA_S3TC_DXT1_EXT\",t[t.COMPRESSED_RGBA_S3TC_DXT3_EXT=33778]=\"COMPRESSED_RGBA_S3TC_DXT3_EXT\",t[t.COMPRESSED_RGBA_S3TC_DXT5_EXT=33779]=\"COMPRESSED_RGBA_S3TC_DXT5_EXT\",t[t.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT=35917]=\"COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT\",t[t.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT=35918]=\"COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT\",t[t.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT=35919]=\"COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT\",t[t.COMPRESSED_SRGB_S3TC_DXT1_EXT=35916]=\"COMPRESSED_SRGB_S3TC_DXT1_EXT\",t[t.COMPRESSED_R11_EAC=37488]=\"COMPRESSED_R11_EAC\",t[t.COMPRESSED_SIGNED_R11_EAC=37489]=\"COMPRESSED_SIGNED_R11_EAC\",t[t.COMPRESSED_RG11_EAC=37490]=\"COMPRESSED_RG11_EAC\",t[t.COMPRESSED_SIGNED_RG11_EAC=37491]=\"COMPRESSED_SIGNED_RG11_EAC\",t[t.COMPRESSED_RGB8_ETC2=37492]=\"COMPRESSED_RGB8_ETC2\",t[t.COMPRESSED_RGBA8_ETC2_EAC=37496]=\"COMPRESSED_RGBA8_ETC2_EAC\",t[t.COMPRESSED_SRGB8_ETC2=37493]=\"COMPRESSED_SRGB8_ETC2\",t[t.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC=37497]=\"COMPRESSED_SRGB8_ALPHA8_ETC2_EAC\",t[t.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2=37494]=\"COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2\",t[t.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2=37495]=\"COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2\",t[t.COMPRESSED_RGB_PVRTC_4BPPV1_IMG=35840]=\"COMPRESSED_RGB_PVRTC_4BPPV1_IMG\",t[t.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG=35842]=\"COMPRESSED_RGBA_PVRTC_4BPPV1_IMG\",t[t.COMPRESSED_RGB_PVRTC_2BPPV1_IMG=35841]=\"COMPRESSED_RGB_PVRTC_2BPPV1_IMG\",t[t.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG=35843]=\"COMPRESSED_RGBA_PVRTC_2BPPV1_IMG\",t[t.COMPRESSED_RGB_ETC1_WEBGL=36196]=\"COMPRESSED_RGB_ETC1_WEBGL\",t[t.COMPRESSED_RGB_ATC_WEBGL=35986]=\"COMPRESSED_RGB_ATC_WEBGL\",t[t.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL=35986]=\"COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL\",t[t.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL=34798]=\"COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL\",t[t.COMPRESSED_RGBA_ASTC_4x4_KHR=37808]=\"COMPRESSED_RGBA_ASTC_4x4_KHR\"}(t.INTERNAL_FORMATS||(t.INTERNAL_FORMATS={}));var _o=((fo={})[t.INTERNAL_FORMATS.COMPRESSED_RGB_S3TC_DXT1_EXT]=.5,fo[t.INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT1_EXT]=.5,fo[t.INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT3_EXT]=1,fo[t.INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT5_EXT]=1,fo[t.INTERNAL_FORMATS.COMPRESSED_SRGB_S3TC_DXT1_EXT]=.5,fo[t.INTERNAL_FORMATS.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT]=.5,fo[t.INTERNAL_FORMATS.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT]=1,fo[t.INTERNAL_FORMATS.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT]=1,fo[t.INTERNAL_FORMATS.COMPRESSED_R11_EAC]=.5,fo[t.INTERNAL_FORMATS.COMPRESSED_SIGNED_R11_EAC]=.5,fo[t.INTERNAL_FORMATS.COMPRESSED_RG11_EAC]=1,fo[t.INTERNAL_FORMATS.COMPRESSED_SIGNED_RG11_EAC]=1,fo[t.INTERNAL_FORMATS.COMPRESSED_RGB8_ETC2]=.5,fo[t.INTERNAL_FORMATS.COMPRESSED_RGBA8_ETC2_EAC]=1,fo[t.INTERNAL_FORMATS.COMPRESSED_SRGB8_ETC2]=.5,fo[t.INTERNAL_FORMATS.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC]=1,fo[t.INTERNAL_FORMATS.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2]=.5,fo[t.INTERNAL_FORMATS.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2]=.5,fo[t.INTERNAL_FORMATS.COMPRESSED_RGB_PVRTC_4BPPV1_IMG]=.5,fo[t.INTERNAL_FORMATS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG]=.5,fo[t.INTERNAL_FORMATS.COMPRESSED_RGB_PVRTC_2BPPV1_IMG]=.25,fo[t.INTERNAL_FORMATS.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG]=.25,fo[t.INTERNAL_FORMATS.COMPRESSED_RGB_ETC1_WEBGL]=.5,fo[t.INTERNAL_FORMATS.COMPRESSED_RGB_ATC_WEBGL]=.5,fo[t.INTERNAL_FORMATS.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL]=1,fo[t.INTERNAL_FORMATS.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL]=1,fo[t.INTERNAL_FORMATS.COMPRESSED_RGBA_ASTC_4x4_KHR]=1,fo),vo=function(t,e){return vo=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},vo(t,e)};function mo(t,e){function r(){this.constructor=t}vo(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}var yo,go,To=function(t){function e(e,r){void 0===r&&(r={width:1,height:1,autoLoad:!0});var i,n,o=this;return\"string\"==typeof e?(i=e,n=new Uint8Array):(i=null,n=e),(o=t.call(this,n,r)||this).origin=i,o.buffer=n?new xn(n):null,o.origin&&!1!==r.autoLoad&&o.load(),n&&n.length&&(o.loaded=!0,o.onBlobLoaded(o.buffer.rawBinaryData)),o}return mo(e,t),e.prototype.onBlobLoaded=function(t){},e.prototype.load=function(){return function(t,e,r,i){return new(r||(r=Promise))((function(n,o){function s(t){try{h(i.next(t))}catch(t){o(t)}}function a(t){try{h(i.throw(t))}catch(t){o(t)}}function h(t){var e;t.done?n(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(s,a)}h((i=i.apply(t,e||[])).next())}))}(this,void 0,Promise,(function(){var t;return function(t,e){var r,i,n,o,s={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},\"function\"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(r)throw new TypeError(\"Generator is already executing.\");for(;s;)try{if(r=1,i&&(n=2&o[0]?i.return:o[0]?i.throw||((n=i.return)&&n.call(i),0):i.next)&&!(n=n.call(i,o[1])).done)return n;switch(i=0,n&&(o=[2&o[0],n.value]),o[0]){case 0:case 1:n=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,i=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!((n=(n=s.trys).length>0&&n[n.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!n||o[1]>n[0]&&o[1]<n[3])){s.label=o[1];break}if(6===o[0]&&s.label<n[1]){s.label=n[1],n=o;break}if(n&&s.label<n[2]){s.label=n[2],s.ops.push(o);break}n[2]&&s.ops.pop(),s.trys.pop();continue}o=e.call(t,s)}catch(t){o=[6,t],i=0}finally{r=n=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,a])}}}(this,(function(e){switch(e.label){case 0:return[4,fetch(this.origin)];case 1:return[4,e.sent().blob()];case 2:return[4,e.sent().arrayBuffer()];case 3:return t=e.sent(),this.data=new Uint32Array(t),this.buffer=new xn(t),this.loaded=!0,this.onBlobLoaded(t),this.update(),[2,this]}}))}))},e}(_r),Eo=function(t){function e(r,i){var n=t.call(this,r,i)||this;return n.format=i.format,n.levels=i.levels||1,n._width=i.width,n._height=i.height,n._extension=e._formatToExtension(n.format),(i.levelBuffers||n.buffer)&&(n._levelBuffers=i.levelBuffers||e._createLevelBuffers(r instanceof Uint8Array?r:n.buffer.uint8View,n.format,n.levels,4,4,n.width,n.height)),n}return mo(e,t),e.prototype.upload=function(t,e,r){var i=t.gl;if(!t.context.extensions[this._extension])throw new Error(this._extension+\" textures are not supported on the current machine\");if(!this._levelBuffers)return!1;for(var n=0,o=this.levels;n<o;n++){var s=this._levelBuffers[n],a=s.levelID,h=s.levelWidth,u=s.levelHeight,l=s.levelBuffer;i.compressedTexImage2D(i.TEXTURE_2D,a,this.format,h,u,0,l)}return!0},e.prototype.onBlobLoaded=function(){this._levelBuffers=e._createLevelBuffers(this.buffer.uint8View,this.format,this.levels,4,4,this.width,this.height)},e._formatToExtension=function(t){if(t>=33776&&t<=33779)return\"s3tc\";if(t>=37488&&t<=37497)return\"etc\";if(t>=35840&&t<=35843)return\"pvrtc\";if(t>=36196)return\"etc1\";if(t>=35986&&t<=34798)return\"atc\";throw new Error(\"Invalid (compressed) texture format given!\")},e._createLevelBuffers=function(t,e,r,i,n,o,s){for(var a=new Array(r),h=t.byteOffset,u=o,l=s,c=u+i-1&~(i-1),d=l+n-1&~(n-1),f=c*d*_o[e],p=0;p<r;p++)a[p]={levelID:p,levelWidth:r>1?u:c,levelHeight:r>1?l:d,levelBuffer:new Uint8Array(t.buffer,h,f)},h+=f,f=(c=(u=u>>1||1)+i-1&~(i-1))*(d=(l=l>>1||1)+n-1&~(n-1))*_o[e];return a},e}(To),bo=function(){function e(){}return e.use=function(r,i){var n=r.data;if(r.type===t.LoaderResource.TYPE.JSON&&n&&n.cacheID&&n.textures){for(var o=n.textures,s=void 0,a=void 0,h=0,u=o.length;h<u;h++){var l=o[h],c=l.src,d=l.format;if(d||(a=c),e.textureFormats[d]){s=c;break}}if(!(s=s||a))return void i(new Error(\"Cannot load compressed-textures in \"+r.url+\", make sure you provide a fallback\"));if(s===r.url)return void i(new Error(\"URL of compressed texture cannot be the same as the manifest's URL\"));var f={crossOrigin:r.crossOrigin,metadata:r.metadata.imageMetadata,parentResource:r},p=Yt.resolve(r.url.replace(this.baseUrl,\"\"),s),_=n.cacheID;this.add(_,p,f,(function(t){if(t.error)i(t.error);else{var e=t.texture,n=void 0===e?null:e,o=t.textures,s=void 0===o?{}:o;Object.assign(r,{texture:n,textures:s}),i()}}))}else i()},Object.defineProperty(e,\"textureExtensions\",{get:function(){if(!e._textureExtensions){var t=U.ADAPTER.createCanvas().getContext(\"webgl\");if(!t)return{};var r={s3tc:t.getExtension(\"WEBGL_compressed_texture_s3tc\"),s3tc_sRGB:t.getExtension(\"WEBGL_compressed_texture_s3tc_srgb\"),etc:t.getExtension(\"WEBGL_compressed_texture_etc\"),etc1:t.getExtension(\"WEBGL_compressed_texture_etc1\"),pvrtc:t.getExtension(\"WEBGL_compressed_texture_pvrtc\")||t.getExtension(\"WEBKIT_WEBGL_compressed_texture_pvrtc\"),atc:t.getExtension(\"WEBGL_compressed_texture_atc\"),astc:t.getExtension(\"WEBGL_compressed_texture_astc\")};e._textureExtensions=r}return e._textureExtensions},enumerable:!1,configurable:!0}),Object.defineProperty(e,\"textureFormats\",{get:function(){if(!e._textureFormats){var t=e.textureExtensions;for(var r in e._textureFormats={},t){var i=t[r];i&&Object.assign(e._textureFormats,Object.getPrototypeOf(i))}}return e._textureFormats},enumerable:!1,configurable:!0}),e.extension=t.ExtensionType.Loader,e}();function xo(e,r,i){var n={textures:{},texture:null};return r?(r.map((function(e){return new Nr(new mr(e,Object.assign({mipmap:t.MIPMAP_MODES.OFF,alphaMode:t.ALPHA_MODES.NO_PREMULTIPLIED_ALPHA},i)))})).forEach((function(t,r){var i=t.baseTexture,o=e+\"-\"+(r+1);mr.addToCache(i,o),Nr.addToCache(t,o),0===r&&(mr.addToCache(i,e),Nr.addToCache(t,e),n.texture=t),n.textures[o]=t})),n):n}var Ao,So;!function(t){t[t.DXGI_FORMAT_UNKNOWN=0]=\"DXGI_FORMAT_UNKNOWN\",t[t.DXGI_FORMAT_R32G32B32A32_TYPELESS=1]=\"DXGI_FORMAT_R32G32B32A32_TYPELESS\",t[t.DXGI_FORMAT_R32G32B32A32_FLOAT=2]=\"DXGI_FORMAT_R32G32B32A32_FLOAT\",t[t.DXGI_FORMAT_R32G32B32A32_UINT=3]=\"DXGI_FORMAT_R32G32B32A32_UINT\",t[t.DXGI_FORMAT_R32G32B32A32_SINT=4]=\"DXGI_FORMAT_R32G32B32A32_SINT\",t[t.DXGI_FORMAT_R32G32B32_TYPELESS=5]=\"DXGI_FORMAT_R32G32B32_TYPELESS\",t[t.DXGI_FORMAT_R32G32B32_FLOAT=6]=\"DXGI_FORMAT_R32G32B32_FLOAT\",t[t.DXGI_FORMAT_R32G32B32_UINT=7]=\"DXGI_FORMAT_R32G32B32_UINT\",t[t.DXGI_FORMAT_R32G32B32_SINT=8]=\"DXGI_FORMAT_R32G32B32_SINT\",t[t.DXGI_FORMAT_R16G16B16A16_TYPELESS=9]=\"DXGI_FORMAT_R16G16B16A16_TYPELESS\",t[t.DXGI_FORMAT_R16G16B16A16_FLOAT=10]=\"DXGI_FORMAT_R16G16B16A16_FLOAT\",t[t.DXGI_FORMAT_R16G16B16A16_UNORM=11]=\"DXGI_FORMAT_R16G16B16A16_UNORM\",t[t.DXGI_FORMAT_R16G16B16A16_UINT=12]=\"DXGI_FORMAT_R16G16B16A16_UINT\",t[t.DXGI_FORMAT_R16G16B16A16_SNORM=13]=\"DXGI_FORMAT_R16G16B16A16_SNORM\",t[t.DXGI_FORMAT_R16G16B16A16_SINT=14]=\"DXGI_FORMAT_R16G16B16A16_SINT\",t[t.DXGI_FORMAT_R32G32_TYPELESS=15]=\"DXGI_FORMAT_R32G32_TYPELESS\",t[t.DXGI_FORMAT_R32G32_FLOAT=16]=\"DXGI_FORMAT_R32G32_FLOAT\",t[t.DXGI_FORMAT_R32G32_UINT=17]=\"DXGI_FORMAT_R32G32_UINT\",t[t.DXGI_FORMAT_R32G32_SINT=18]=\"DXGI_FORMAT_R32G32_SINT\",t[t.DXGI_FORMAT_R32G8X24_TYPELESS=19]=\"DXGI_FORMAT_R32G8X24_TYPELESS\",t[t.DXGI_FORMAT_D32_FLOAT_S8X24_UINT=20]=\"DXGI_FORMAT_D32_FLOAT_S8X24_UINT\",t[t.DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS=21]=\"DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS\",t[t.DXGI_FORMAT_X32_TYPELESS_G8X24_UINT=22]=\"DXGI_FORMAT_X32_TYPELESS_G8X24_UINT\",t[t.DXGI_FORMAT_R10G10B10A2_TYPELESS=23]=\"DXGI_FORMAT_R10G10B10A2_TYPELESS\",t[t.DXGI_FORMAT_R10G10B10A2_UNORM=24]=\"DXGI_FORMAT_R10G10B10A2_UNORM\",t[t.DXGI_FORMAT_R10G10B10A2_UINT=25]=\"DXGI_FORMAT_R10G10B10A2_UINT\",t[t.DXGI_FORMAT_R11G11B10_FLOAT=26]=\"DXGI_FORMAT_R11G11B10_FLOAT\",t[t.DXGI_FORMAT_R8G8B8A8_TYPELESS=27]=\"DXGI_FORMAT_R8G8B8A8_TYPELESS\",t[t.DXGI_FORMAT_R8G8B8A8_UNORM=28]=\"DXGI_FORMAT_R8G8B8A8_UNORM\",t[t.DXGI_FORMAT_R8G8B8A8_UNORM_SRGB=29]=\"DXGI_FORMAT_R8G8B8A8_UNORM_SRGB\",t[t.DXGI_FORMAT_R8G8B8A8_UINT=30]=\"DXGI_FORMAT_R8G8B8A8_UINT\",t[t.DXGI_FORMAT_R8G8B8A8_SNORM=31]=\"DXGI_FORMAT_R8G8B8A8_SNORM\",t[t.DXGI_FORMAT_R8G8B8A8_SINT=32]=\"DXGI_FORMAT_R8G8B8A8_SINT\",t[t.DXGI_FORMAT_R16G16_TYPELESS=33]=\"DXGI_FORMAT_R16G16_TYPELESS\",t[t.DXGI_FORMAT_R16G16_FLOAT=34]=\"DXGI_FORMAT_R16G16_FLOAT\",t[t.DXGI_FORMAT_R16G16_UNORM=35]=\"DXGI_FORMAT_R16G16_UNORM\",t[t.DXGI_FORMAT_R16G16_UINT=36]=\"DXGI_FORMAT_R16G16_UINT\",t[t.DXGI_FORMAT_R16G16_SNORM=37]=\"DXGI_FORMAT_R16G16_SNORM\",t[t.DXGI_FORMAT_R16G16_SINT=38]=\"DXGI_FORMAT_R16G16_SINT\",t[t.DXGI_FORMAT_R32_TYPELESS=39]=\"DXGI_FORMAT_R32_TYPELESS\",t[t.DXGI_FORMAT_D32_FLOAT=40]=\"DXGI_FORMAT_D32_FLOAT\",t[t.DXGI_FORMAT_R32_FLOAT=41]=\"DXGI_FORMAT_R32_FLOAT\",t[t.DXGI_FORMAT_R32_UINT=42]=\"DXGI_FORMAT_R32_UINT\",t[t.DXGI_FORMAT_R32_SINT=43]=\"DXGI_FORMAT_R32_SINT\",t[t.DXGI_FORMAT_R24G8_TYPELESS=44]=\"DXGI_FORMAT_R24G8_TYPELESS\",t[t.DXGI_FORMAT_D24_UNORM_S8_UINT=45]=\"DXGI_FORMAT_D24_UNORM_S8_UINT\",t[t.DXGI_FORMAT_R24_UNORM_X8_TYPELESS=46]=\"DXGI_FORMAT_R24_UNORM_X8_TYPELESS\",t[t.DXGI_FORMAT_X24_TYPELESS_G8_UINT=47]=\"DXGI_FORMAT_X24_TYPELESS_G8_UINT\",t[t.DXGI_FORMAT_R8G8_TYPELESS=48]=\"DXGI_FORMAT_R8G8_TYPELESS\",t[t.DXGI_FORMAT_R8G8_UNORM=49]=\"DXGI_FORMAT_R8G8_UNORM\",t[t.DXGI_FORMAT_R8G8_UINT=50]=\"DXGI_FORMAT_R8G8_UINT\",t[t.DXGI_FORMAT_R8G8_SNORM=51]=\"DXGI_FORMAT_R8G8_SNORM\",t[t.DXGI_FORMAT_R8G8_SINT=52]=\"DXGI_FORMAT_R8G8_SINT\",t[t.DXGI_FORMAT_R16_TYPELESS=53]=\"DXGI_FORMAT_R16_TYPELESS\",t[t.DXGI_FORMAT_R16_FLOAT=54]=\"DXGI_FORMAT_R16_FLOAT\",t[t.DXGI_FORMAT_D16_UNORM=55]=\"DXGI_FORMAT_D16_UNORM\",t[t.DXGI_FORMAT_R16_UNORM=56]=\"DXGI_FORMAT_R16_UNORM\",t[t.DXGI_FORMAT_R16_UINT=57]=\"DXGI_FORMAT_R16_UINT\",t[t.DXGI_FORMAT_R16_SNORM=58]=\"DXGI_FORMAT_R16_SNORM\",t[t.DXGI_FORMAT_R16_SINT=59]=\"DXGI_FORMAT_R16_SINT\",t[t.DXGI_FORMAT_R8_TYPELESS=60]=\"DXGI_FORMAT_R8_TYPELESS\",t[t.DXGI_FORMAT_R8_UNORM=61]=\"DXGI_FORMAT_R8_UNORM\",t[t.DXGI_FORMAT_R8_UINT=62]=\"DXGI_FORMAT_R8_UINT\",t[t.DXGI_FORMAT_R8_SNORM=63]=\"DXGI_FORMAT_R8_SNORM\",t[t.DXGI_FORMAT_R8_SINT=64]=\"DXGI_FORMAT_R8_SINT\",t[t.DXGI_FORMAT_A8_UNORM=65]=\"DXGI_FORMAT_A8_UNORM\",t[t.DXGI_FORMAT_R1_UNORM=66]=\"DXGI_FORMAT_R1_UNORM\",t[t.DXGI_FORMAT_R9G9B9E5_SHAREDEXP=67]=\"DXGI_FORMAT_R9G9B9E5_SHAREDEXP\",t[t.DXGI_FORMAT_R8G8_B8G8_UNORM=68]=\"DXGI_FORMAT_R8G8_B8G8_UNORM\",t[t.DXGI_FORMAT_G8R8_G8B8_UNORM=69]=\"DXGI_FORMAT_G8R8_G8B8_UNORM\",t[t.DXGI_FORMAT_BC1_TYPELESS=70]=\"DXGI_FORMAT_BC1_TYPELESS\",t[t.DXGI_FORMAT_BC1_UNORM=71]=\"DXGI_FORMAT_BC1_UNORM\",t[t.DXGI_FORMAT_BC1_UNORM_SRGB=72]=\"DXGI_FORMAT_BC1_UNORM_SRGB\",t[t.DXGI_FORMAT_BC2_TYPELESS=73]=\"DXGI_FORMAT_BC2_TYPELESS\",t[t.DXGI_FORMAT_BC2_UNORM=74]=\"DXGI_FORMAT_BC2_UNORM\",t[t.DXGI_FORMAT_BC2_UNORM_SRGB=75]=\"DXGI_FORMAT_BC2_UNORM_SRGB\",t[t.DXGI_FORMAT_BC3_TYPELESS=76]=\"DXGI_FORMAT_BC3_TYPELESS\",t[t.DXGI_FORMAT_BC3_UNORM=77]=\"DXGI_FORMAT_BC3_UNORM\",t[t.DXGI_FORMAT_BC3_UNORM_SRGB=78]=\"DXGI_FORMAT_BC3_UNORM_SRGB\",t[t.DXGI_FORMAT_BC4_TYPELESS=79]=\"DXGI_FORMAT_BC4_TYPELESS\",t[t.DXGI_FORMAT_BC4_UNORM=80]=\"DXGI_FORMAT_BC4_UNORM\",t[t.DXGI_FORMAT_BC4_SNORM=81]=\"DXGI_FORMAT_BC4_SNORM\",t[t.DXGI_FORMAT_BC5_TYPELESS=82]=\"DXGI_FORMAT_BC5_TYPELESS\",t[t.DXGI_FORMAT_BC5_UNORM=83]=\"DXGI_FORMAT_BC5_UNORM\",t[t.DXGI_FORMAT_BC5_SNORM=84]=\"DXGI_FORMAT_BC5_SNORM\",t[t.DXGI_FORMAT_B5G6R5_UNORM=85]=\"DXGI_FORMAT_B5G6R5_UNORM\",t[t.DXGI_FORMAT_B5G5R5A1_UNORM=86]=\"DXGI_FORMAT_B5G5R5A1_UNORM\",t[t.DXGI_FORMAT_B8G8R8A8_UNORM=87]=\"DXGI_FORMAT_B8G8R8A8_UNORM\",t[t.DXGI_FORMAT_B8G8R8X8_UNORM=88]=\"DXGI_FORMAT_B8G8R8X8_UNORM\",t[t.DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM=89]=\"DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM\",t[t.DXGI_FORMAT_B8G8R8A8_TYPELESS=90]=\"DXGI_FORMAT_B8G8R8A8_TYPELESS\",t[t.DXGI_FORMAT_B8G8R8A8_UNORM_SRGB=91]=\"DXGI_FORMAT_B8G8R8A8_UNORM_SRGB\",t[t.DXGI_FORMAT_B8G8R8X8_TYPELESS=92]=\"DXGI_FORMAT_B8G8R8X8_TYPELESS\",t[t.DXGI_FORMAT_B8G8R8X8_UNORM_SRGB=93]=\"DXGI_FORMAT_B8G8R8X8_UNORM_SRGB\",t[t.DXGI_FORMAT_BC6H_TYPELESS=94]=\"DXGI_FORMAT_BC6H_TYPELESS\",t[t.DXGI_FORMAT_BC6H_UF16=95]=\"DXGI_FORMAT_BC6H_UF16\",t[t.DXGI_FORMAT_BC6H_SF16=96]=\"DXGI_FORMAT_BC6H_SF16\",t[t.DXGI_FORMAT_BC7_TYPELESS=97]=\"DXGI_FORMAT_BC7_TYPELESS\",t[t.DXGI_FORMAT_BC7_UNORM=98]=\"DXGI_FORMAT_BC7_UNORM\",t[t.DXGI_FORMAT_BC7_UNORM_SRGB=99]=\"DXGI_FORMAT_BC7_UNORM_SRGB\",t[t.DXGI_FORMAT_AYUV=100]=\"DXGI_FORMAT_AYUV\",t[t.DXGI_FORMAT_Y410=101]=\"DXGI_FORMAT_Y410\",t[t.DXGI_FORMAT_Y416=102]=\"DXGI_FORMAT_Y416\",t[t.DXGI_FORMAT_NV12=103]=\"DXGI_FORMAT_NV12\",t[t.DXGI_FORMAT_P010=104]=\"DXGI_FORMAT_P010\",t[t.DXGI_FORMAT_P016=105]=\"DXGI_FORMAT_P016\",t[t.DXGI_FORMAT_420_OPAQUE=106]=\"DXGI_FORMAT_420_OPAQUE\",t[t.DXGI_FORMAT_YUY2=107]=\"DXGI_FORMAT_YUY2\",t[t.DXGI_FORMAT_Y210=108]=\"DXGI_FORMAT_Y210\",t[t.DXGI_FORMAT_Y216=109]=\"DXGI_FORMAT_Y216\",t[t.DXGI_FORMAT_NV11=110]=\"DXGI_FORMAT_NV11\",t[t.DXGI_FORMAT_AI44=111]=\"DXGI_FORMAT_AI44\",t[t.DXGI_FORMAT_IA44=112]=\"DXGI_FORMAT_IA44\",t[t.DXGI_FORMAT_P8=113]=\"DXGI_FORMAT_P8\",t[t.DXGI_FORMAT_A8P8=114]=\"DXGI_FORMAT_A8P8\",t[t.DXGI_FORMAT_B4G4R4A4_UNORM=115]=\"DXGI_FORMAT_B4G4R4A4_UNORM\",t[t.DXGI_FORMAT_P208=116]=\"DXGI_FORMAT_P208\",t[t.DXGI_FORMAT_V208=117]=\"DXGI_FORMAT_V208\",t[t.DXGI_FORMAT_V408=118]=\"DXGI_FORMAT_V408\",t[t.DXGI_FORMAT_SAMPLER_FEEDBACK_MIN_MIP_OPAQUE=119]=\"DXGI_FORMAT_SAMPLER_FEEDBACK_MIN_MIP_OPAQUE\",t[t.DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE=120]=\"DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE\",t[t.DXGI_FORMAT_FORCE_UINT=121]=\"DXGI_FORMAT_FORCE_UINT\"}(Ao||(Ao={})),function(t){t[t.DDS_DIMENSION_TEXTURE1D=2]=\"DDS_DIMENSION_TEXTURE1D\",t[t.DDS_DIMENSION_TEXTURE2D=3]=\"DDS_DIMENSION_TEXTURE2D\",t[t.DDS_DIMENSION_TEXTURE3D=6]=\"DDS_DIMENSION_TEXTURE3D\"}(So||(So={}));var Ro,Oo,Mo,Po=((yo={})[827611204]=t.INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT1_EXT,yo[861165636]=t.INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT3_EXT,yo[894720068]=t.INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT5_EXT,yo),Io=((go={})[Ao.DXGI_FORMAT_BC1_TYPELESS]=t.INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT1_EXT,go[Ao.DXGI_FORMAT_BC1_UNORM]=t.INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT1_EXT,go[Ao.DXGI_FORMAT_BC2_TYPELESS]=t.INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT3_EXT,go[Ao.DXGI_FORMAT_BC2_UNORM]=t.INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT3_EXT,go[Ao.DXGI_FORMAT_BC3_TYPELESS]=t.INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT5_EXT,go[Ao.DXGI_FORMAT_BC3_UNORM]=t.INTERNAL_FORMATS.COMPRESSED_RGBA_S3TC_DXT5_EXT,go[Ao.DXGI_FORMAT_BC1_UNORM_SRGB]=t.INTERNAL_FORMATS.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT,go[Ao.DXGI_FORMAT_BC2_UNORM_SRGB]=t.INTERNAL_FORMATS.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT,go[Ao.DXGI_FORMAT_BC3_UNORM_SRGB]=t.INTERNAL_FORMATS.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT,go);function Do(t){var e=new Uint32Array(t);if(542327876!==e[0])throw new Error(\"Invalid DDS file magic word\");var r=new Uint32Array(t,0,124/Uint32Array.BYTES_PER_ELEMENT),i=r[3],n=r[4],o=r[7],s=new Uint32Array(t,19*Uint32Array.BYTES_PER_ELEMENT,32/Uint32Array.BYTES_PER_ELEMENT),a=s[1];if(4&a){var h=s[2];if(808540228!==h){var u=Po[h],l=new Uint8Array(t,128);return[new Eo(l,{format:u,width:n,height:i,levels:o})]}var c=new Uint32Array(e.buffer,128,20/Uint32Array.BYTES_PER_ELEMENT),d=c[0],f=c[1],p=c[2],_=c[3],v=Io[d];if(void 0===v)throw new Error(\"DDSParser cannot parse texture data with DXGI format \"+d);if(4===p)throw new Error(\"DDSParser does not support cubemap textures\");if(f===So.DDS_DIMENSION_TEXTURE3D)throw new Error(\"DDSParser does not supported 3D texture data\");var m=new Array;if(1===_)m.push(new Uint8Array(t,148));else{for(var y=_o[v],g=0,T=n,E=i,b=0;b<o;b++)g+=Math.max(1,T+3&-4)*Math.max(1,E+3&-4)*y,T>>>=1,E>>>=1;var x=148;for(b=0;b<_;b++)m.push(new Uint8Array(t,x,g)),x+=g}return m.map((function(t){return new Eo(t,{format:v,width:n,height:i,levels:o})}))}if(64&a)throw new Error(\"DDSParser does not support uncompressed texture data.\");if(512&a)throw new Error(\"DDSParser does not supported YUV uncompressed texture data.\");if(131072&a)throw new Error(\"DDSParser does not support single-channel (lumninance) texture data!\");if(2&a)throw new Error(\"DDSParser does not support single-channel (alpha) texture data!\");throw new Error(\"DDSParser failed to load a texture file due to an unknown reason!\")}var wo=[171,75,84,88,32,49,49,187,13,10,26,10],Co=((Ro={})[t.TYPES.UNSIGNED_BYTE]=1,Ro[t.TYPES.UNSIGNED_SHORT]=2,Ro[t.TYPES.INT]=4,Ro[t.TYPES.UNSIGNED_INT]=4,Ro[t.TYPES.FLOAT]=4,Ro[t.TYPES.HALF_FLOAT]=8,Ro),No=((Oo={})[t.FORMATS.RGBA]=4,Oo[t.FORMATS.RGB]=3,Oo[t.FORMATS.RG]=2,Oo[t.FORMATS.RED]=1,Oo[t.FORMATS.LUMINANCE]=1,Oo[t.FORMATS.LUMINANCE_ALPHA]=2,Oo[t.FORMATS.ALPHA]=1,Oo),Fo=((Mo={})[t.TYPES.UNSIGNED_SHORT_4_4_4_4]=2,Mo[t.TYPES.UNSIGNED_SHORT_5_5_5_1]=2,Mo[t.TYPES.UNSIGNED_SHORT_5_6_5]=2,Mo);function Lo(e,r,i){void 0===i&&(i=!1);var n=new DataView(r);if(!function(t,e){for(var r=0;r<wo.length;r++)if(e.getUint8(r)!==wo[r])return!1;return!0}(0,n))return null;var o=67305985===n.getUint32(12,!0),s=n.getUint32(16,o),a=n.getUint32(24,o),h=n.getUint32(28,o),u=n.getUint32(36,o),l=n.getUint32(40,o)||1,c=n.getUint32(44,o)||1,d=n.getUint32(48,o)||1,f=n.getUint32(52,o),p=n.getUint32(56,o),_=n.getUint32(60,o);if(0===l||1!==c)throw new Error(\"Only 2D textures are supported\");if(1!==f)throw new Error(\"CubeTextures are not supported by KTXLoader yet!\");if(1!==d)throw new Error(\"WebGL does not support array textures\");var v,m=u+3&-4,y=l+3&-4,g=new Array(d),T=u*l;if(0===s&&(T=m*y),void 0===(v=0!==s?Co[s]?Co[s]*No[a]:Fo[s]:_o[h]))throw new Error(\"Unable to resolve the pixel format stored in the *.ktx file!\");for(var E=i?function(t,e,r){for(var i=new Map,n=0;n<e;){var o=t.getUint32(64+n,r),s=64+n+4,a=3-(o+3)%4;if(0===o||o>e-n){console.error(\"KTXLoader: keyAndValueByteSize out of bounds\");break}for(var h=0;h<o&&0!==t.getUint8(s+h);h++);if(-1===h){console.error(\"KTXLoader: Failed to find null byte terminating kvData key\");break}var u=(new TextDecoder).decode(new Uint8Array(t.buffer,s,h)),l=new DataView(t.buffer,s+h+1,o-h-1);i.set(u,l),n+=4+o+a}return i}(n,_,o):null,b=T*v,x=u,A=l,S=m,R=y,O=64+_,M=0;M<p;M++){for(var P=n.getUint32(O,o),I=O+4,D=0;D<d;D++){var w=g[D];w||(w=g[D]=new Array(p)),w[M]={levelID:M,levelWidth:p>1||0!==s?x:S,levelHeight:p>1||0!==s?A:R,levelBuffer:new Uint8Array(r,I,b)},I+=b}O=(O+=P+4)%4!=0?O+4-O%4:O,b=(S=(x=x>>1||1)+4-1&-4)*(R=(A=A>>1||1)+4-1&-4)*v}return 0!==s?{uncompressed:g.map((function(e){var r=e[0].levelBuffer,i=!1;return s===t.TYPES.FLOAT?r=new Float32Array(e[0].levelBuffer.buffer,e[0].levelBuffer.byteOffset,e[0].levelBuffer.byteLength/4):s===t.TYPES.UNSIGNED_INT?(i=!0,r=new Uint32Array(e[0].levelBuffer.buffer,e[0].levelBuffer.byteOffset,e[0].levelBuffer.byteLength/4)):s===t.TYPES.INT&&(i=!0,r=new Int32Array(e[0].levelBuffer.buffer,e[0].levelBuffer.byteOffset,e[0].levelBuffer.byteLength/4)),{resource:new _r(r,{width:e[0].levelWidth,height:e[0].levelHeight}),type:s,format:i?Bo(a):a}})),kvData:E}:{compressed:g.map((function(t){return new Eo(null,{format:h,width:u,height:l,levels:p,levelBuffers:t})})),kvData:E}}function Bo(e){switch(e){case t.FORMATS.RGBA:return t.FORMATS.RGBA_INTEGER;case t.FORMATS.RGB:return t.FORMATS.RGB_INTEGER;case t.FORMATS.RG:return t.FORMATS.RG_INTEGER;case t.FORMATS.RED:return t.FORMATS.RED_INTEGER;default:return e}}t.LoaderResource.setExtensionXhrType(\"dds\",t.LoaderResource.XHR_RESPONSE_TYPE.BUFFER);var Go=function(){function e(){}return e.use=function(t,e){if(\"dds\"===t.extension&&t.data)try{Object.assign(t,xo(t.name||t.url,Do(t.data),t.metadata))}catch(t){return void e(t)}e()},e.extension=t.ExtensionType.Loader,e}();t.LoaderResource.setExtensionXhrType(\"ktx\",t.LoaderResource.XHR_RESPONSE_TYPE.BUFFER);var Uo=function(){function e(){}return e.use=function(e,r){if(\"ktx\"===e.extension&&e.data)try{var i=e.name||e.url,n=Lo(0,e.data,this.loadKeyValueData),o=n.compressed,s=n.uncompressed,a=n.kvData;if(o){var h=xo(i,o,e.metadata);if(a&&h.textures)for(var u in h.textures)h.textures[u].baseTexture.ktxKeyValueData=a;Object.assign(e,h)}else if(s){var l={};s.forEach((function(e,r){var n=new Nr(new mr(e.resource,{mipmap:t.MIPMAP_MODES.OFF,alphaMode:t.ALPHA_MODES.NO_PREMULTIPLIED_ALPHA,type:e.type,format:e.format})),o=i+\"-\"+(r+1);a&&(n.baseTexture.ktxKeyValueData=a),mr.addToCache(n.baseTexture,o),Nr.addToCache(n,o),0===r&&(l[i]=n,mr.addToCache(n.baseTexture,i),Nr.addToCache(n,i)),l[o]=n})),Object.assign(e,{textures:l})}}catch(t){return void r(t)}r()},e.extension=t.ExtensionType.Loader,e.loadKeyValueData=!1,e}(),ko=function(t,e){return ko=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},ko(t,e)};function Xo(t,e){function r(){this.constructor=t}ko(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}var jo=function(e){function r(r,i,n,o){void 0===r&&(r=1500),void 0===n&&(n=16384),void 0===o&&(o=!1);var s=e.call(this)||this;return n>16384&&(n=16384),s._properties=[!1,!0,!1,!1,!1],s._maxSize=r,s._batchSize=n,s._buffers=null,s._bufferUpdateIDs=[],s._updateID=0,s.interactiveChildren=!1,s.blendMode=t.BLEND_MODES.NORMAL,s.autoResize=o,s.roundPixels=!0,s.baseTexture=null,s.setProperties(i),s._tint=0,s.tintRgb=new Float32Array(4),s.tint=16777215,s}return Xo(r,e),r.prototype.setProperties=function(t){t&&(this._properties[0]=\"vertices\"in t||\"scale\"in t?!!t.vertices||!!t.scale:this._properties[0],this._properties[1]=\"position\"in t?!!t.position:this._properties[1],this._properties[2]=\"rotation\"in t?!!t.rotation:this._properties[2],this._properties[3]=\"uvs\"in t?!!t.uvs:this._properties[3],this._properties[4]=\"tint\"in t||\"alpha\"in t?!!t.tint||!!t.alpha:this._properties[4])},r.prototype.updateTransform=function(){this.displayObjectUpdateTransform()},Object.defineProperty(r.prototype,\"tint\",{get:function(){return this._tint},set:function(t){this._tint=t,$t(t,this.tintRgb)},enumerable:!1,configurable:!0}),r.prototype.render=function(t){var e=this;this.visible&&!(this.worldAlpha<=0)&&this.children.length&&this.renderable&&(this.baseTexture||(this.baseTexture=this.children[0]._texture.baseTexture,this.baseTexture.valid||this.baseTexture.once(\"update\",(function(){return e.onChildrenChange(0)}))),t.batch.setObjectRenderer(t.plugins.particle),t.plugins.particle.render(this))},r.prototype.onChildrenChange=function(t){for(var e=Math.floor(t/this._batchSize);this._bufferUpdateIDs.length<e;)this._bufferUpdateIDs.push(0);this._bufferUpdateIDs[e]=++this._updateID},r.prototype.dispose=function(){if(this._buffers){for(var t=0;t<this._buffers.length;++t)this._buffers[t].destroy();this._buffers=null}},r.prototype.destroy=function(t){e.prototype.destroy.call(this,t),this.dispose(),this._properties=null,this._buffers=null,this._bufferUpdateIDs=null},r}(er),Ho=function(){function e(e,r,i){this.geometry=new Yr,this.indexBuffer=null,this.size=i,this.dynamicProperties=[],this.staticProperties=[];for(var n=0;n<e.length;++n){var o=e[n];o={attributeName:o.attributeName,size:o.size,uploadFunction:o.uploadFunction,type:o.type||t.TYPES.FLOAT,offset:o.offset},r[n]?this.dynamicProperties.push(o):this.staticProperties.push(o)}this.staticStride=0,this.staticBuffer=null,this.staticData=null,this.staticDataUint32=null,this.dynamicStride=0,this.dynamicBuffer=null,this.dynamicData=null,this.dynamicDataUint32=null,this._updateID=0,this.initBuffers()}return e.prototype.initBuffers=function(){var e=this.geometry,r=0;this.indexBuffer=new Ur(ae(this.size),!0,!0),e.addIndex(this.indexBuffer),this.dynamicStride=0;for(var i=0;i<this.dynamicProperties.length;++i)(a=this.dynamicProperties[i]).offset=r,r+=a.size,this.dynamicStride+=a.size;var n=new ArrayBuffer(this.size*this.dynamicStride*4*4);this.dynamicData=new Float32Array(n),this.dynamicDataUint32=new Uint32Array(n),this.dynamicBuffer=new Ur(this.dynamicData,!1,!1);var o=0;for(this.staticStride=0,i=0;i<this.staticProperties.length;++i)(a=this.staticProperties[i]).offset=o,o+=a.size,this.staticStride+=a.size;var s=new ArrayBuffer(this.size*this.staticStride*4*4);for(this.staticData=new Float32Array(s),this.staticDataUint32=new Uint32Array(s),this.staticBuffer=new Ur(this.staticData,!0,!1),i=0;i<this.dynamicProperties.length;++i){var a=this.dynamicProperties[i];e.addAttribute(a.attributeName,this.dynamicBuffer,0,a.type===t.TYPES.UNSIGNED_BYTE,a.type,4*this.dynamicStride,4*a.offset)}for(i=0;i<this.staticProperties.length;++i)a=this.staticProperties[i],e.addAttribute(a.attributeName,this.staticBuffer,0,a.type===t.TYPES.UNSIGNED_BYTE,a.type,4*this.staticStride,4*a.offset)},e.prototype.uploadDynamic=function(e,r,i){for(var n=0;n<this.dynamicProperties.length;n++){var o=this.dynamicProperties[n];o.uploadFunction(e,r,i,o.type===t.TYPES.UNSIGNED_BYTE?this.dynamicDataUint32:this.dynamicData,this.dynamicStride,o.offset)}this.dynamicBuffer._updateID++},e.prototype.uploadStatic=function(e,r,i){for(var n=0;n<this.staticProperties.length;n++){var o=this.staticProperties[n];o.uploadFunction(e,r,i,o.type===t.TYPES.UNSIGNED_BYTE?this.staticDataUint32:this.staticData,this.staticStride,o.offset)}this.staticBuffer._updateID++},e.prototype.destroy=function(){this.indexBuffer=null,this.dynamicProperties=null,this.dynamicBuffer=null,this.dynamicData=null,this.dynamicDataUint32=null,this.staticProperties=null,this.staticBuffer=null,this.staticData=null,this.staticDataUint32=null,this.geometry.destroy()},e}(),Yo=function(e){function r(r){var i=e.call(this,r)||this;return i.shader=null,i.properties=null,i.tempMatrix=new Ue,i.properties=[{attributeName:\"aVertexPosition\",size:2,uploadFunction:i.uploadVertices,offset:0},{attributeName:\"aPositionCoord\",size:2,uploadFunction:i.uploadPosition,offset:0},{attributeName:\"aRotation\",size:1,uploadFunction:i.uploadRotation,offset:0},{attributeName:\"aTextureCoord\",size:2,uploadFunction:i.uploadUvs,offset:0},{attributeName:\"aColor\",size:1,type:t.TYPES.UNSIGNED_BYTE,uploadFunction:i.uploadTint,offset:0}],i.shader=Ci.from(\"attribute vec2 aVertexPosition;\\nattribute vec2 aTextureCoord;\\nattribute vec4 aColor;\\n\\nattribute vec2 aPositionCoord;\\nattribute float aRotation;\\n\\nuniform mat3 translationMatrix;\\nuniform vec4 uColor;\\n\\nvarying vec2 vTextureCoord;\\nvarying vec4 vColor;\\n\\nvoid main(void){\\n float x = (aVertexPosition.x) * cos(aRotation) - (aVertexPosition.y) * sin(aRotation);\\n float y = (aVertexPosition.x) * sin(aRotation) + (aVertexPosition.y) * cos(aRotation);\\n\\n vec2 v = vec2(x, y);\\n v = v + aPositionCoord;\\n\\n gl_Position = vec4((translationMatrix * vec3(v, 1.0)).xy, 0.0, 1.0);\\n\\n vTextureCoord = aTextureCoord;\\n vColor = aColor * uColor;\\n}\\n\",\"varying vec2 vTextureCoord;\\nvarying vec4 vColor;\\n\\nuniform sampler2D uSampler;\\n\\nvoid main(void){\\n vec4 color = texture2D(uSampler, vTextureCoord) * vColor;\\n gl_FragColor = color;\\n}\",{}),i.state=Ni.for2d(),i}return Xo(r,e),r.prototype.render=function(t){var e=t.children,r=t._maxSize,i=t._batchSize,n=this.renderer,o=e.length;if(0!==o){o>r&&!t.autoResize&&(o=r);var s=t._buffers;s||(s=t._buffers=this.generateBuffers(t));var a=e[0]._texture.baseTexture,h=a.alphaMode>0;this.state.blendMode=ie(t.blendMode,h),n.state.set(this.state);var u=n.gl,l=t.worldTransform.copyTo(this.tempMatrix);l.prepend(n.globalUniforms.uniforms.projectionMatrix),this.shader.uniforms.translationMatrix=l.toArray(!0),this.shader.uniforms.uColor=ne(t.tintRgb,t.worldAlpha,this.shader.uniforms.uColor,h),this.shader.uniforms.uSampler=a,this.renderer.shader.bind(this.shader);for(var c=!1,d=0,f=0;d<o;d+=i,f+=1){var p=o-d;p>i&&(p=i),f>=s.length&&s.push(this._generateOneMoreBuffer(t));var _=s[f];_.uploadDynamic(e,d,p);var v=t._bufferUpdateIDs[f]||0;(c=c||_._updateID<v)&&(_._updateID=t._updateID,_.uploadStatic(e,d,p)),n.geometry.bind(_.geometry),u.drawElements(u.TRIANGLES,6*p,u.UNSIGNED_SHORT,0)}}},r.prototype.generateBuffers=function(t){for(var e=[],r=t._maxSize,i=t._batchSize,n=t._properties,o=0;o<r;o+=i)e.push(new Ho(this.properties,n,i));return e},r.prototype._generateOneMoreBuffer=function(t){var e=t._batchSize,r=t._properties;return new Ho(this.properties,r,e)},r.prototype.uploadVertices=function(t,e,r,i,n,o){for(var s=0,a=0,h=0,u=0,l=0;l<r;++l){var c=t[e+l],d=c._texture,f=c.scale.x,p=c.scale.y,_=d.trim,v=d.orig;_?(s=(a=_.x-c.anchor.x*v.width)+_.width,h=(u=_.y-c.anchor.y*v.height)+_.height):(s=v.width*(1-c.anchor.x),a=v.width*-c.anchor.x,h=v.height*(1-c.anchor.y),u=v.height*-c.anchor.y),i[o]=a*f,i[o+1]=u*p,i[o+n]=s*f,i[o+n+1]=u*p,i[o+2*n]=s*f,i[o+2*n+1]=h*p,i[o+3*n]=a*f,i[o+3*n+1]=h*p,o+=4*n}},r.prototype.uploadPosition=function(t,e,r,i,n,o){for(var s=0;s<r;s++){var a=t[e+s].position;i[o]=a.x,i[o+1]=a.y,i[o+n]=a.x,i[o+n+1]=a.y,i[o+2*n]=a.x,i[o+2*n+1]=a.y,i[o+3*n]=a.x,i[o+3*n+1]=a.y,o+=4*n}},r.prototype.uploadRotation=function(t,e,r,i,n,o){for(var s=0;s<r;s++){var a=t[e+s].rotation;i[o]=a,i[o+n]=a,i[o+2*n]=a,i[o+3*n]=a,o+=4*n}},r.prototype.uploadUvs=function(t,e,r,i,n,o){for(var s=0;s<r;++s){var a=t[e+s]._texture._uvs;a?(i[o]=a.x0,i[o+1]=a.y0,i[o+n]=a.x1,i[o+n+1]=a.y1,i[o+2*n]=a.x2,i[o+2*n+1]=a.y2,i[o+3*n]=a.x3,i[o+3*n+1]=a.y3,o+=4*n):(i[o]=0,i[o+1]=0,i[o+n]=0,i[o+n+1]=0,i[o+2*n]=0,i[o+2*n+1]=0,i[o+3*n]=0,i[o+3*n+1]=0,o+=4*n)}},r.prototype.uploadTint=function(t,e,r,i,n,o){for(var s=0;s<r;++s){var a=t[e+s],h=a._texture.baseTexture.alphaMode>0,u=a.alpha,l=u<1&&h?oe(a._tintRGB,u):a._tintRGB+(255*u<<24);i[o]=l,i[o+n]=l,i[o+2*n]=l,i[o+3*n]=l,o+=4*n}},r.prototype.destroy=function(){e.prototype.destroy.call(this),this.shader&&(this.shader.destroy(),this.shader=null),this.tempMatrix=null},r.extension={name:\"particle\",type:t.ExtensionType.RendererPlugin},r}($r);t.LINE_JOIN=void 0,t.LINE_CAP=void 0,function(t){t.MITER=\"miter\",t.BEVEL=\"bevel\",t.ROUND=\"round\"}(t.LINE_JOIN||(t.LINE_JOIN={})),function(t){t.BUTT=\"butt\",t.ROUND=\"round\",t.SQUARE=\"square\"}(t.LINE_CAP||(t.LINE_CAP={}));var Vo={adaptive:!0,maxLength:10,minSegments:8,maxSegments:2048,epsilon:1e-4,_segmentsCount:function(t,e){if(void 0===e&&(e=20),!this.adaptive||!t||isNaN(t))return e;var r=Math.ceil(t/this.maxLength);return r<this.minSegments?r=this.minSegments:r>this.maxSegments&&(r=this.maxSegments),r}},zo=function(){function t(){this.color=16777215,this.alpha=1,this.texture=Nr.WHITE,this.matrix=null,this.visible=!1,this.reset()}return t.prototype.clone=function(){var e=new t;return e.color=this.color,e.alpha=this.alpha,e.texture=this.texture,e.matrix=this.matrix,e.visible=this.visible,e},t.prototype.reset=function(){this.color=16777215,this.alpha=1,this.texture=Nr.WHITE,this.matrix=null,this.visible=!1},t.prototype.destroy=function(){this.texture=null,this.matrix=null},t}(),Wo=function(t,e){return Wo=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},Wo(t,e)};function qo(t,e){function r(){this.constructor=t}Wo(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}function Ko(t,e){var r,i;void 0===e&&(e=!1);var n=t.length;if(!(n<6)){for(var o=0,s=0,a=t[n-2],h=t[n-1];s<n;s+=2){var u=t[s],l=t[s+1];o+=(u-a)*(l+h),a=u,h=l}if(!e&&o>0||e&&o<=0){var c=n/2;for(s=c+c%2;s<n;s+=2){var d=n-s-2,f=n-s-1,p=s,_=s+1;r=[t[p],t[d]],t[d]=r[0],t[p]=r[1],i=[t[_],t[f]],t[f]=i[0],t[_]=i[1]}}}}var Zo={build:function(t){t.points=t.shape.points.slice()},triangulate:function(t,e){var r=t.points,i=t.holes,n=e.points,o=e.indices;if(r.length>=6){Ko(r,!1);for(var s=[],a=0;a<i.length;a++){var h=i[a];Ko(h.points,!0),s.push(r.length/2),r=r.concat(h.points)}var u=H(r,s,2);if(!u)return;var l=n.length/2;for(a=0;a<u.length;a+=3)o.push(u[a]+l),o.push(u[a+1]+l),o.push(u[a+2]+l);for(a=0;a<r.length;a++)n.push(r[a])}}},Qo={build:function(e){var r,i,n,o,s,a,h=e.points;if(e.type===t.SHAPES.CIRC){var u=e.shape;r=u.x,i=u.y,s=a=u.radius,n=o=0}else if(e.type===t.SHAPES.ELIP){var l=e.shape;r=l.x,i=l.y,s=l.width,a=l.height,n=o=0}else{var c=e.shape,d=c.width/2,f=c.height/2;r=c.x+d,i=c.y+f,n=d-(s=a=Math.max(0,Math.min(c.radius,Math.min(d,f)))),o=f-a}if(s>=0&&a>=0&&n>=0&&o>=0){var p=Math.ceil(2.3*Math.sqrt(s+a)),_=8*p+(n?4:0)+(o?4:0);if(h.length=_,0!==_){if(0===p)return h.length=8,h[0]=h[6]=r+n,h[1]=h[3]=i+o,h[2]=h[4]=r-n,void(h[5]=h[7]=i-o);var v,m,y=0,g=4*p+(n?2:0)+2,T=g,E=_,b=r+(v=n+s),x=r-v,A=i+(m=o);if(h[y++]=b,h[y++]=A,h[--g]=A,h[--g]=x,o){var S=i-m;h[T++]=x,h[T++]=S,h[--E]=S,h[--E]=b}for(var R=1;R<p;R++){var O=Math.PI/2*(R/p);b=r+(v=n+Math.cos(O)*s),x=r-v,A=i+(m=o+Math.sin(O)*a),S=i-m,h[y++]=b,h[y++]=A,h[--g]=A,h[--g]=x,h[T++]=x,h[T++]=S,h[--E]=S,h[--E]=b}b=r+(v=n),x=r-v,A=i+(m=o+a),S=i-m,h[y++]=b,h[y++]=A,h[--E]=S,h[--E]=b,n&&(h[y++]=x,h[y++]=A,h[--E]=S,h[--E]=x)}}else h.length=0},triangulate:function(e,r){var i=e.points,n=r.points,o=r.indices;if(0!==i.length){var s,a,h=n.length/2,u=h;if(e.type!==t.SHAPES.RREC){var l=e.shape;s=l.x,a=l.y}else{var c=e.shape;s=c.x+c.width/2,a=c.y+c.height/2}var d=e.matrix;n.push(e.matrix?d.a*s+d.c*a+d.tx:s,e.matrix?d.b*s+d.d*a+d.ty:a),h++,n.push(i[0],i[1]);for(var f=2;f<i.length;f+=2)n.push(i[f],i[f+1]),o.push(h++,u,h);o.push(u+1,u,h)}}},Jo={build:function(t){var e=t.shape,r=e.x,i=e.y,n=e.width,o=e.height,s=t.points;s.length=0,s.push(r,i,r+n,i,r+n,i+o,r,i+o)},triangulate:function(t,e){var r=t.points,i=e.points,n=i.length/2;i.push(r[0],r[1],r[2],r[3],r[6],r[7],r[4],r[5]),e.indices.push(n,n+1,n+2,n+1,n+2,n+3)}};function $o(t,e,r){return t+(e-t)*r}function ts(t,e,r,i,n,o,s){void 0===s&&(s=[]);for(var a=s,h=0,u=0,l=0,c=0,d=0,f=0,p=0,_=0;p<=20;++p)h=$o(t,r,_=p/20),u=$o(e,i,_),l=$o(r,n,_),c=$o(i,o,_),d=$o(h,l,_),f=$o(u,c,_),0===p&&a[a.length-2]===d&&a[a.length-1]===f||a.push(d,f);return a}var es={build:function(t){if(gs.nextRoundedRectBehavior)Qo.build(t);else{var e=t.shape,r=t.points,i=e.x,n=e.y,o=e.width,s=e.height,a=Math.max(0,Math.min(e.radius,Math.min(o,s)/2));r.length=0,a?(ts(i,n+a,i,n,i+a,n,r),ts(i+o-a,n,i+o,n,i+o,n+a,r),ts(i+o,n+s-a,i+o,n+s,i+o-a,n+s,r),ts(i+a,n+s,i,n+s,i,n+s-a,r)):r.push(i,n,i+o,n,i+o,n+s,i,n+s)}},triangulate:function(t,e){if(gs.nextRoundedRectBehavior)Qo.triangulate(t,e);else{for(var r=t.points,i=e.points,n=e.indices,o=i.length/2,s=H(r,null,2),a=0,h=s.length;a<h;a+=3)n.push(s[a]+o),n.push(s[a+1]+o),n.push(s[a+2]+o);for(a=0,h=r.length;a<h;a++)i.push(r[a],r[++a])}}};function rs(t,e,r,i,n,o,s,a){var h,u;s?(h=i,u=-r):(h=-i,u=r);var l=t-r*n+h,c=e-i*n+u,d=t+r*o+h,f=e+i*o+u;return a.push(l,c),a.push(d,f),2}function is(t,e,r,i,n,o,s,a){var h=r-t,u=i-e,l=Math.atan2(h,u),c=Math.atan2(n-t,o-e);a&&l<c?l+=2*Math.PI:!a&&l>c&&(c+=2*Math.PI);var d=l,f=c-l,p=Math.abs(f),_=Math.sqrt(h*h+u*u),v=1+(15*p*Math.sqrt(_)/Math.PI>>0),m=f/v;if(d+=m,a){s.push(t,e),s.push(r,i);for(var y=1,g=d;y<v;y++,g+=m)s.push(t,e),s.push(t+Math.sin(g)*_,e+Math.cos(g)*_);s.push(t,e),s.push(n,o)}else{for(s.push(r,i),s.push(t,e),y=1,g=d;y<v;y++,g+=m)s.push(t+Math.sin(g)*_,e+Math.cos(g)*_),s.push(t,e);s.push(n,o),s.push(t,e)}return 2*v}function ns(e,r){e.lineStyle.native?function(e,r){var i=0,n=e.shape,o=e.points||n.points,s=n.type!==t.SHAPES.POLY||n.closeStroke;if(0!==o.length){var a=r.points,h=r.indices,u=o.length/2,l=a.length/2,c=l;for(a.push(o[0],o[1]),i=1;i<u;i++)a.push(o[2*i],o[2*i+1]),h.push(c,c+1),c++;s&&h.push(c,l)}}(e,r):function(e,r){var i=e.shape,n=e.points||i.points.slice(),o=r.closePointEps;if(0!==n.length){var s=e.lineStyle,a=new De(n[0],n[1]),h=new De(n[n.length-2],n[n.length-1]),u=i.type!==t.SHAPES.POLY||i.closeStroke,l=Math.abs(a.x-h.x)<o&&Math.abs(a.y-h.y)<o;if(u){n=n.slice(),l&&(n.pop(),n.pop(),h.set(n[n.length-2],n[n.length-1]));var c=.5*(a.x+h.x),d=.5*(h.y+a.y);n.unshift(c,d),n.push(c,d)}var f=r.points,p=n.length/2,_=n.length,v=f.length/2,m=s.width/2,y=m*m,g=s.miterLimit*s.miterLimit,T=n[0],E=n[1],b=n[2],x=n[3],A=0,S=0,R=-(E-x),O=T-b,M=0,P=0,I=Math.sqrt(R*R+O*O);R/=I,O/=I,R*=m,O*=m;var D=s.alignment,w=2*(1-D),C=2*D;u||(s.cap===t.LINE_CAP.ROUND?_+=is(T-R*(w-C)*.5,E-O*(w-C)*.5,T-R*w,E-O*w,T+R*C,E+O*C,f,!0)+2:s.cap===t.LINE_CAP.SQUARE&&(_+=rs(T,E,R,O,w,C,!0,f))),f.push(T-R*w,E-O*w),f.push(T+R*C,E+O*C);for(var N=1;N<p-1;++N){T=n[2*(N-1)],E=n[2*(N-1)+1],b=n[2*N],x=n[2*N+1],A=n[2*(N+1)],S=n[2*(N+1)+1],R=-(E-x),O=T-b,R/=I=Math.sqrt(R*R+O*O),O/=I,R*=m,O*=m,M=-(x-S),P=b-A,M/=I=Math.sqrt(M*M+P*P),P/=I,M*=m,P*=m;var F=b-T,L=E-x,B=b-A,G=S-x,U=F*B+L*G,k=L*B-G*F,X=k<0;if(Math.abs(k)<.001*Math.abs(U))f.push(b-R*w,x-O*w),f.push(b+R*C,x+O*C),U>=0&&(s.join===t.LINE_JOIN.ROUND?_+=is(b,x,b-R*w,x-O*w,b-M*w,x-P*w,f,!1)+4:_+=2,f.push(b-M*C,x-P*C),f.push(b+M*w,x+P*w));else{var j=(-R+T)*(-O+x)-(-R+b)*(-O+E),H=(-M+A)*(-P+x)-(-M+b)*(-P+S),Y=(F*H-B*j)/k,V=(G*j-L*H)/k,z=(Y-b)*(Y-b)+(V-x)*(V-x),W=b+(Y-b)*w,q=x+(V-x)*w,K=b-(Y-b)*C,Z=x-(V-x)*C,Q=X?w:C;z<=Math.min(F*F+L*L,B*B+G*G)+Q*Q*y?s.join===t.LINE_JOIN.BEVEL||z/y>g?(X?(f.push(W,q),f.push(b+R*C,x+O*C),f.push(W,q),f.push(b+M*C,x+P*C)):(f.push(b-R*w,x-O*w),f.push(K,Z),f.push(b-M*w,x-P*w),f.push(K,Z)),_+=2):s.join===t.LINE_JOIN.ROUND?X?(f.push(W,q),f.push(b+R*C,x+O*C),_+=is(b,x,b+R*C,x+O*C,b+M*C,x+P*C,f,!0)+4,f.push(W,q),f.push(b+M*C,x+P*C)):(f.push(b-R*w,x-O*w),f.push(K,Z),_+=is(b,x,b-R*w,x-O*w,b-M*w,x-P*w,f,!1)+4,f.push(b-M*w,x-P*w),f.push(K,Z)):(f.push(W,q),f.push(K,Z)):(f.push(b-R*w,x-O*w),f.push(b+R*C,x+O*C),s.join===t.LINE_JOIN.ROUND?_+=X?is(b,x,b+R*C,x+O*C,b+M*C,x+P*C,f,!0)+2:is(b,x,b-R*w,x-O*w,b-M*w,x-P*w,f,!1)+2:s.join===t.LINE_JOIN.MITER&&z/y<=g&&(X?(f.push(K,Z),f.push(K,Z)):(f.push(W,q),f.push(W,q)),_+=2),f.push(b-M*w,x-P*w),f.push(b+M*C,x+P*C),_+=2)}}T=n[2*(p-2)],E=n[2*(p-2)+1],b=n[2*(p-1)],R=-(E-(x=n[2*(p-1)+1])),O=T-b,R/=I=Math.sqrt(R*R+O*O),O/=I,R*=m,O*=m,f.push(b-R*w,x-O*w),f.push(b+R*C,x+O*C),u||(s.cap===t.LINE_CAP.ROUND?_+=is(b-R*(w-C)*.5,x-O*(w-C)*.5,b-R*w,x-O*w,b+R*C,x+O*C,f,!1)+2:s.cap===t.LINE_CAP.SQUARE&&(_+=rs(b,x,R,O,w,C,!1,f)));var J=r.indices,$=Vo.epsilon*Vo.epsilon;for(N=v;N<_+v-2;++N)T=f[2*N],E=f[2*N+1],b=f[2*(N+1)],x=f[2*(N+1)+1],A=f[2*(N+2)],S=f[2*(N+2)+1],Math.abs(T*(x-S)+b*(S-E)+A*(E-x))<$||J.push(N,N+1,N+2)}}(e,r)}var os,ss=function(){function t(){}return t.curveTo=function(t,e,r,i,n,o){var s=o[o.length-2],a=o[o.length-1]-e,h=s-t,u=i-e,l=r-t,c=Math.abs(a*l-h*u);if(c<1e-8||0===n)return o[o.length-2]===t&&o[o.length-1]===e||o.push(t,e),null;var d=a*a+h*h,f=u*u+l*l,p=a*u+h*l,_=n*Math.sqrt(d)/c,v=n*Math.sqrt(f)/c,m=_*p/d,y=v*p/f,g=_*l+v*h,T=_*u+v*a,E=h*(v+m),b=a*(v+m),x=l*(_+y),A=u*(_+y);return{cx:g+t,cy:T+e,radius:n,startAngle:Math.atan2(b-T,E-g),endAngle:Math.atan2(A-T,x-g),anticlockwise:h*u>l*a}},t.arc=function(t,e,r,i,n,o,s,a,h){for(var u=s-o,l=Vo._segmentsCount(Math.abs(u)*n,40*Math.ceil(Math.abs(u)/Me)),c=u/(2*l),d=2*c,f=Math.cos(c),p=Math.sin(c),_=l-1,v=_%1/_,m=0;m<=_;++m){var y=c+o+d*(m+v*m),g=Math.cos(y),T=-Math.sin(y);h.push((f*g+p*T)*n+r,(f*-T+p*g)*n+i)}},t}(),as=function(){function t(){}return t.curveLength=function(t,e,r,i,n,o,s,a){for(var h=0,u=0,l=0,c=0,d=0,f=0,p=0,_=0,v=0,m=0,y=0,g=t,T=e,E=1;E<=10;++E)m=g-(_=(p=(f=(d=1-(u=E/10))*d)*d)*t+3*f*u*r+3*d*(l=u*u)*n+(c=l*u)*s),y=T-(v=p*e+3*f*u*i+3*d*l*o+c*a),g=_,T=v,h+=Math.sqrt(m*m+y*y);return h},t.curveTo=function(e,r,i,n,o,s,a){var h=a[a.length-2],u=a[a.length-1];a.length-=2;var l=Vo._segmentsCount(t.curveLength(h,u,e,r,i,n,o,s)),c=0,d=0,f=0,p=0,_=0;a.push(h,u);for(var v=1,m=0;v<=l;++v)f=(d=(c=1-(m=v/l))*c)*c,_=(p=m*m)*m,a.push(f*h+3*d*m*e+3*c*p*i+_*o,f*u+3*d*m*r+3*c*p*n+_*s)},t}(),hs=function(){function t(){}return t.curveLength=function(t,e,r,i,n,o){var s=t-2*r+n,a=e-2*i+o,h=2*r-2*t,u=2*i-2*e,l=4*(s*s+a*a),c=4*(s*h+a*u),d=h*h+u*u,f=2*Math.sqrt(l+c+d),p=Math.sqrt(l),_=2*l*p,v=2*Math.sqrt(d),m=c/p;return(_*f+p*c*(f-v)+(4*d*l-c*c)*Math.log((2*p+m+f)/(m+v)))/(4*_)},t.curveTo=function(e,r,i,n,o){for(var s=o[o.length-2],a=o[o.length-1],h=Vo._segmentsCount(t.curveLength(s,a,e,r,i,n)),u=0,l=0,c=1;c<=h;++c){var d=c/h;u=s+(e-s)*d,l=a+(r-a)*d,o.push(u+(e+(i-e)*d-u)*d,l+(r+(n-r)*d-l)*d)}},t}(),us=function(){function t(){this.reset()}return t.prototype.begin=function(t,e,r){this.reset(),this.style=t,this.start=e,this.attribStart=r},t.prototype.end=function(t,e){this.attribSize=e-this.attribStart,this.size=t-this.start},t.prototype.reset=function(){this.style=null,this.size=0,this.start=0,this.attribStart=0,this.attribSize=0},t}(),ls=((os={})[t.SHAPES.POLY]=Zo,os[t.SHAPES.CIRC]=Qo,os[t.SHAPES.ELIP]=Qo,os[t.SHAPES.RECT]=Jo,os[t.SHAPES.RREC]=es,os),cs=[],ds=[],fs=function(){function t(t,e,r,i){void 0===e&&(e=null),void 0===r&&(r=null),void 0===i&&(i=null),this.points=[],this.holes=[],this.shape=t,this.lineStyle=r,this.fillStyle=e,this.matrix=i,this.type=t.type}return t.prototype.clone=function(){return new t(this.shape,this.fillStyle,this.lineStyle,this.matrix)},t.prototype.destroy=function(){this.shape=null,this.holes.length=0,this.holes=null,this.points.length=0,this.points=null,this.lineStyle=null,this.fillStyle=null},t}(),ps=new De,_s=function(e){function r(){var t=e.call(this)||this;return t.closePointEps=1e-4,t.boundsPadding=0,t.uvsFloat32=null,t.indicesUint16=null,t.batchable=!1,t.points=[],t.colors=[],t.uvs=[],t.indices=[],t.textureIds=[],t.graphicsData=[],t.drawCalls=[],t.batchDirty=-1,t.batches=[],t.dirty=0,t.cacheDirty=-1,t.clearDirty=0,t.shapeIndex=0,t._bounds=new Ke,t.boundsDirty=-1,t}return qo(r,e),Object.defineProperty(r.prototype,\"bounds\",{get:function(){return this.updateBatches(),this.boundsDirty!==this.dirty&&(this.boundsDirty=this.dirty,this.calculateBounds()),this._bounds},enumerable:!1,configurable:!0}),r.prototype.invalidate=function(){this.boundsDirty=-1,this.dirty++,this.batchDirty++,this.shapeIndex=0,this.points.length=0,this.colors.length=0,this.uvs.length=0,this.indices.length=0,this.textureIds.length=0;for(var t=0;t<this.drawCalls.length;t++)this.drawCalls[t].texArray.clear(),ds.push(this.drawCalls[t]);for(this.drawCalls.length=0,t=0;t<this.batches.length;t++){var e=this.batches[t];e.reset(),cs.push(e)}this.batches.length=0},r.prototype.clear=function(){return this.graphicsData.length>0&&(this.invalidate(),this.clearDirty++,this.graphicsData.length=0),this},r.prototype.drawShape=function(t,e,r,i){void 0===e&&(e=null),void 0===r&&(r=null),void 0===i&&(i=null);var n=new fs(t,e,r,i);return this.graphicsData.push(n),this.dirty++,this},r.prototype.drawHole=function(t,e){if(void 0===e&&(e=null),!this.graphicsData.length)return null;var r=new fs(t,null,null,e),i=this.graphicsData[this.graphicsData.length-1];return r.lineStyle=i.lineStyle,i.holes.push(r),this.dirty++,this},r.prototype.destroy=function(){e.prototype.destroy.call(this);for(var t=0;t<this.graphicsData.length;++t)this.graphicsData[t].destroy();this.points.length=0,this.points=null,this.colors.length=0,this.colors=null,this.uvs.length=0,this.uvs=null,this.indices.length=0,this.indices=null,this.indexBuffer.destroy(),this.indexBuffer=null,this.graphicsData.length=0,this.graphicsData=null,this.drawCalls.length=0,this.drawCalls=null,this.batches.length=0,this.batches=null,this._bounds=null},r.prototype.containsPoint=function(t){for(var e=this.graphicsData,r=0;r<e.length;++r){var i=e[r];if(i.fillStyle.visible&&i.shape&&(i.matrix?i.matrix.applyInverse(t,ps):ps.copyFrom(t),i.shape.contains(ps.x,ps.y))){var n=!1;if(i.holes)for(var o=0;o<i.holes.length;o++)if(i.holes[o].shape.contains(ps.x,ps.y)){n=!0;break}if(!n)return!0}}return!1},r.prototype.updateBatches=function(){if(this.graphicsData.length){if(this.validateBatching()){this.cacheDirty=this.dirty;var e=this.uvs,r=this.graphicsData,i=null,n=null;this.batches.length>0&&(n=(i=this.batches[this.batches.length-1]).style);for(var o=this.shapeIndex;o<r.length;o++){this.shapeIndex++;var s=r[o],a=s.fillStyle,h=s.lineStyle;ls[s.type].build(s),s.matrix&&this.transformPoints(s.points,s.matrix),(a.visible||h.visible)&&this.processHoles(s.holes);for(var u=0;u<2;u++){var l=0===u?a:h;if(l.visible){var c=l.texture.baseTexture,d=this.indices.length,f=this.points.length/2;c.wrapMode=t.WRAP_MODES.REPEAT,0===u?this.processFill(s):this.processLine(s);var p=this.points.length/2-f;0!==p&&(i&&!this._compareStyles(n,l)&&(i.end(d,f),i=null),i||((i=cs.pop()||new us).begin(l,d,f),this.batches.push(i),n=l),this.addUvs(this.points,e,l.texture,f,p,l.matrix))}}}var _=this.indices.length,v=this.points.length/2;if(i&&i.end(_,v),0!==this.batches.length){var m=v>65535;this.indicesUint16&&this.indices.length===this.indicesUint16.length&&m===this.indicesUint16.BYTES_PER_ELEMENT>2?this.indicesUint16.set(this.indices):this.indicesUint16=m?new Uint32Array(this.indices):new Uint16Array(this.indices),this.batchable=this.isBatchable(),this.batchable?this.packBatches():this.buildDrawCalls()}else this.batchable=!0}}else this.batchable=!0},r.prototype._compareStyles=function(t,e){return!(!t||!e)&&t.texture.baseTexture===e.texture.baseTexture&&t.color+t.alpha===e.color+e.alpha&&!!t.native==!!e.native},r.prototype.validateBatching=function(){if(this.dirty===this.cacheDirty||!this.graphicsData.length)return!1;for(var t=0,e=this.graphicsData.length;t<e;t++){var r=this.graphicsData[t],i=r.fillStyle,n=r.lineStyle;if(i&&!i.texture.baseTexture.valid)return!1;if(n&&!n.texture.baseTexture.valid)return!1}return!0},r.prototype.packBatches=function(){this.batchDirty++,this.uvsFloat32=new Float32Array(this.uvs);for(var t=this.batches,e=0,r=t.length;e<r;e++)for(var i=t[e],n=0;n<i.size;n++){var o=i.start+n;this.indicesUint16[o]=this.indicesUint16[o]-i.attribStart}},r.prototype.isBatchable=function(){if(this.points.length>131070)return!1;for(var t=this.batches,e=0;e<t.length;e++)if(t[e].style.native)return!1;return this.points.length<2*r.BATCHABLE_SIZE},r.prototype.buildDrawCalls=function(){for(var e=++mr._globalBatch,r=0;r<this.drawCalls.length;r++)this.drawCalls[r].texArray.clear(),ds.push(this.drawCalls[r]);this.drawCalls.length=0;var i=this.colors,n=this.textureIds,o=ds.pop();o||((o=new En).texArray=new bn),o.texArray.count=0,o.start=0,o.size=0,o.type=t.DRAW_MODES.TRIANGLES;var s=0,a=null,h=0,u=!1,l=t.DRAW_MODES.TRIANGLES,c=0;for(this.drawCalls.push(o),r=0;r<this.batches.length;r++){var d=this.batches[r],f=d.style,p=f.texture.baseTexture;u!==!!f.native&&(l=(u=!!f.native)?t.DRAW_MODES.LINES:t.DRAW_MODES.TRIANGLES,a=null,s=8,e++),a!==p&&(a=p,p._batchEnabled!==e&&(8===s&&(e++,s=0,o.size>0&&((o=ds.pop())||((o=new En).texArray=new bn),this.drawCalls.push(o)),o.start=c,o.size=0,o.texArray.count=0,o.type=l),p.touched=1,p._batchEnabled=e,p._batchLocation=s,p.wrapMode=t.WRAP_MODES.REPEAT,o.texArray.elements[o.texArray.count++]=p,s++)),o.size+=d.size,c+=d.size,h=p._batchLocation,this.addColors(i,f.color,f.alpha,d.attribSize,d.attribStart),this.addTextureIds(n,h,d.attribSize,d.attribStart)}mr._globalBatch=e,this.packAttributes()},r.prototype.packAttributes=function(){for(var t=this.points,e=this.uvs,r=this.colors,i=this.textureIds,n=new ArrayBuffer(3*t.length*4),o=new Float32Array(n),s=new Uint32Array(n),a=0,h=0;h<t.length/2;h++)o[a++]=t[2*h],o[a++]=t[2*h+1],o[a++]=e[2*h],o[a++]=e[2*h+1],s[a++]=r[h],o[a++]=i[h];this._buffer.update(n),this._indexBuffer.update(this.indicesUint16)},r.prototype.processFill=function(t){t.holes.length?Zo.triangulate(t,this):ls[t.type].triangulate(t,this)},r.prototype.processLine=function(t){ns(t,this);for(var e=0;e<t.holes.length;e++)ns(t.holes[e],this)},r.prototype.processHoles=function(t){for(var e=0;e<t.length;e++){var r=t[e];ls[r.type].build(r),r.matrix&&this.transformPoints(r.points,r.matrix)}},r.prototype.calculateBounds=function(){var t=this._bounds;t.clear(),t.addVertexData(this.points,0,this.points.length),t.pad(this.boundsPadding,this.boundsPadding)},r.prototype.transformPoints=function(t,e){for(var r=0;r<t.length/2;r++){var i=t[2*r],n=t[2*r+1];t[2*r]=e.a*i+e.c*n+e.tx,t[2*r+1]=e.b*i+e.d*n+e.ty}},r.prototype.addColors=function(t,e,r,i,n){void 0===n&&(n=0);var o=oe((e>>16)+(65280&e)+((255&e)<<16),r);t.length=Math.max(t.length,n+i);for(var s=0;s<i;s++)t[n+s]=o},r.prototype.addTextureIds=function(t,e,r,i){void 0===i&&(i=0),t.length=Math.max(t.length,i+r);for(var n=0;n<r;n++)t[i+n]=e},r.prototype.addUvs=function(t,e,r,i,n,o){void 0===o&&(o=null);for(var s=0,a=e.length,h=r.frame;s<n;){var u=t[2*(i+s)],l=t[2*(i+s)+1];if(o){var c=o.a*u+o.c*l+o.tx;l=o.b*u+o.d*l+o.ty,u=c}s++,e.push(u/h.width,l/h.height)}var d=r.baseTexture;(h.width<d.width||h.height<d.height)&&this.adjustUvs(e,r,a,n)},r.prototype.adjustUvs=function(t,e,r,i){for(var n=e.baseTexture,o=1e-6,s=r+2*i,a=e.frame,h=a.width/n.width,u=a.height/n.height,l=a.x/a.width,c=a.y/a.height,d=Math.floor(t[r]+o),f=Math.floor(t[r+1]+o),p=r+2;p<s;p+=2)d=Math.min(d,Math.floor(t[p]+o)),f=Math.min(f,Math.floor(t[p+1]+o));for(l-=d,c-=f,p=r;p<s;p+=2)t[p]=(t[p]+l)*h,t[p+1]=(t[p+1]+c)*u},r.BATCHABLE_SIZE=100,r}(Rn),vs=function(e){function r(){var r=null!==e&&e.apply(this,arguments)||this;return r.width=0,r.alignment=.5,r.native=!1,r.cap=t.LINE_CAP.BUTT,r.join=t.LINE_JOIN.MITER,r.miterLimit=10,r}return qo(r,e),r.prototype.clone=function(){var t=new r;return t.color=this.color,t.alpha=this.alpha,t.texture=this.texture,t.matrix=this.matrix,t.visible=this.visible,t.width=this.width,t.alignment=this.alignment,t.native=this.native,t.cap=this.cap,t.join=this.join,t.miterLimit=this.miterLimit,t},r.prototype.reset=function(){e.prototype.reset.call(this),this.color=0,this.alignment=.5,this.width=0,this.native=!1},r}(zo),ms=new Float32Array(3),ys={},gs=function(e){function r(r){void 0===r&&(r=null);var i=e.call(this)||this;return i.shader=null,i.pluginName=\"batch\",i.currentPath=null,i.batches=[],i.batchTint=-1,i.batchDirty=-1,i.vertexData=null,i._fillStyle=new zo,i._lineStyle=new vs,i._matrix=null,i._holeMode=!1,i.state=Ni.for2d(),i._geometry=r||new _s,i._geometry.refCount++,i._transformID=-1,i.tint=16777215,i.blendMode=t.BLEND_MODES.NORMAL,i}return qo(r,e),Object.defineProperty(r.prototype,\"geometry\",{get:function(){return this._geometry},enumerable:!1,configurable:!0}),r.prototype.clone=function(){return this.finishPoly(),new r(this._geometry)},Object.defineProperty(r.prototype,\"blendMode\",{get:function(){return this.state.blendMode},set:function(t){this.state.blendMode=t},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"tint\",{get:function(){return this._tint},set:function(t){this._tint=t},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"fill\",{get:function(){return this._fillStyle},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"line\",{get:function(){return this._lineStyle},enumerable:!1,configurable:!0}),r.prototype.lineStyle=function(t,e,r,i,n){return void 0===t&&(t=null),void 0===e&&(e=0),void 0===r&&(r=1),void 0===i&&(i=.5),void 0===n&&(n=!1),\"number\"==typeof t&&(t={width:t,color:e,alpha:r,alignment:i,native:n}),this.lineTextureStyle(t)},r.prototype.lineTextureStyle=function(e){e=Object.assign({width:0,texture:Nr.WHITE,color:e&&e.texture?16777215:0,alpha:1,matrix:null,alignment:.5,native:!1,cap:t.LINE_CAP.BUTT,join:t.LINE_JOIN.MITER,miterLimit:10},e),this.currentPath&&this.startPoly();var r=e.width>0&&e.alpha>0;return r?(e.matrix&&(e.matrix=e.matrix.clone(),e.matrix.invert()),Object.assign(this._lineStyle,{visible:r},e)):this._lineStyle.reset(),this},r.prototype.startPoly=function(){if(this.currentPath){var t=this.currentPath.points,e=this.currentPath.points.length;e>2&&(this.drawShape(this.currentPath),this.currentPath=new Le,this.currentPath.closeStroke=!1,this.currentPath.points.push(t[e-2],t[e-1]))}else this.currentPath=new Le,this.currentPath.closeStroke=!1},r.prototype.finishPoly=function(){this.currentPath&&(this.currentPath.points.length>2?(this.drawShape(this.currentPath),this.currentPath=null):this.currentPath.points.length=0)},r.prototype.moveTo=function(t,e){return this.startPoly(),this.currentPath.points[0]=t,this.currentPath.points[1]=e,this},r.prototype.lineTo=function(t,e){this.currentPath||this.moveTo(0,0);var r=this.currentPath.points,i=r[r.length-2],n=r[r.length-1];return i===t&&n===e||r.push(t,e),this},r.prototype._initCurve=function(t,e){void 0===t&&(t=0),void 0===e&&(e=0),this.currentPath?0===this.currentPath.points.length&&(this.currentPath.points=[t,e]):this.moveTo(t,e)},r.prototype.quadraticCurveTo=function(t,e,r,i){this._initCurve();var n=this.currentPath.points;return 0===n.length&&this.moveTo(0,0),hs.curveTo(t,e,r,i,n),this},r.prototype.bezierCurveTo=function(t,e,r,i,n,o){return this._initCurve(),as.curveTo(t,e,r,i,n,o,this.currentPath.points),this},r.prototype.arcTo=function(t,e,r,i,n){this._initCurve(t,e);var o=this.currentPath.points,s=ss.curveTo(t,e,r,i,n,o);if(s){var a=s.cx,h=s.cy,u=s.radius,l=s.startAngle,c=s.endAngle,d=s.anticlockwise;this.arc(a,h,u,l,c,d)}return this},r.prototype.arc=function(t,e,r,i,n,o){if(void 0===o&&(o=!1),i===n)return this;if(!o&&n<=i?n+=Me:o&&i<=n&&(i+=Me),0==n-i)return this;var s=t+Math.cos(i)*r,a=e+Math.sin(i)*r,h=this._geometry.closePointEps,u=this.currentPath?this.currentPath.points:null;if(u){var l=Math.abs(u[u.length-2]-s),c=Math.abs(u[u.length-1]-a);l<h&&c<h||u.push(s,a)}else this.moveTo(s,a),u=this.currentPath.points;return ss.arc(s,a,t,e,r,i,n,o,u),this},r.prototype.beginFill=function(t,e){return void 0===t&&(t=0),void 0===e&&(e=1),this.beginTextureFill({texture:Nr.WHITE,color:t,alpha:e})},r.prototype.beginTextureFill=function(t){t=Object.assign({texture:Nr.WHITE,color:16777215,alpha:1,matrix:null},t),this.currentPath&&this.startPoly();var e=t.alpha>0;return e?(t.matrix&&(t.matrix=t.matrix.clone(),t.matrix.invert()),Object.assign(this._fillStyle,{visible:e},t)):this._fillStyle.reset(),this},r.prototype.endFill=function(){return this.finishPoly(),this._fillStyle.reset(),this},r.prototype.drawRect=function(t,e,r,i){return this.drawShape(new Ce(t,e,r,i))},r.prototype.drawRoundedRect=function(t,e,r,i,n){return this.drawShape(new Be(t,e,r,i,n))},r.prototype.drawCircle=function(t,e,r){return this.drawShape(new Ne(t,e,r))},r.prototype.drawEllipse=function(t,e,r,i){return this.drawShape(new Fe(t,e,r,i))},r.prototype.drawPolygon=function(){for(var t,e=arguments,r=[],i=0;i<arguments.length;i++)r[i]=e[i];var n=!0,o=r[0];o.points?(n=o.closeStroke,t=o.points):t=Array.isArray(r[0])?r[0]:r;var s=new Le(t);return s.closeStroke=n,this.drawShape(s),this},r.prototype.drawShape=function(t){return this._holeMode?this._geometry.drawHole(t,this._matrix):this._geometry.drawShape(t,this._fillStyle.clone(),this._lineStyle.clone(),this._matrix),this},r.prototype.clear=function(){return this._geometry.clear(),this._lineStyle.reset(),this._fillStyle.reset(),this._boundsID++,this._matrix=null,this._holeMode=!1,this.currentPath=null,this},r.prototype.isFastRect=function(){var e=this._geometry.graphicsData;return!(1!==e.length||e[0].shape.type!==t.SHAPES.RECT||e[0].matrix||e[0].holes.length||e[0].lineStyle.visible&&e[0].lineStyle.width)},r.prototype._render=function(t){this.finishPoly();var e=this._geometry;e.updateBatches(),e.batchable?(this.batchDirty!==e.batchDirty&&this._populateBatches(),this._renderBatched(t)):(t.batch.flush(),this._renderDirect(t))},r.prototype._populateBatches=function(){var t=this._geometry,e=this.blendMode,r=t.batches.length;this.batchTint=-1,this._transformID=-1,this.batchDirty=t.batchDirty,this.batches.length=r,this.vertexData=new Float32Array(t.points);for(var i=0;i<r;i++){var n=t.batches[i],o=n.style.color,s=new Float32Array(this.vertexData.buffer,4*n.attribStart*2,2*n.attribSize),a=new Float32Array(t.uvsFloat32.buffer,4*n.attribStart*2,2*n.attribSize),h={vertexData:s,blendMode:e,indices:new Uint16Array(t.indicesUint16.buffer,2*n.start,n.size),uvs:a,_batchRGB:$t(o),_tintRGB:o,_texture:n.style.texture,alpha:n.style.alpha,worldAlpha:1};this.batches[i]=h}},r.prototype._renderBatched=function(t){if(this.batches.length){t.batch.setObjectRenderer(t.plugins[this.pluginName]),this.calculateVertices(),this.calculateTints();for(var e=0,r=this.batches.length;e<r;e++){var i=this.batches[e];i.worldAlpha=this.worldAlpha*i.alpha,t.plugins[this.pluginName].render(i)}}},r.prototype._renderDirect=function(t){var e=this._resolveDirectShader(t),r=this._geometry,i=this.tint,n=this.worldAlpha,o=e.uniforms,s=r.drawCalls;o.translationMatrix=this.transform.worldTransform,o.tint[0]=(i>>16&255)/255*n,o.tint[1]=(i>>8&255)/255*n,o.tint[2]=(255&i)/255*n,o.tint[3]=n,t.shader.bind(e),t.geometry.bind(r,e),t.state.set(this.state);for(var a=0,h=s.length;a<h;a++)this._renderDrawCallDirect(t,r.drawCalls[a])},r.prototype._renderDrawCallDirect=function(t,e){for(var r=e.texArray,i=e.type,n=e.size,o=e.start,s=r.count,a=0;a<s;a++)t.texture.bind(r.elements[a],a);t.geometry.draw(i,n,o)},r.prototype._resolveDirectShader=function(t){var e=this.shader,r=this.pluginName;if(!e){if(!ys[r]){for(var i=t.plugins[r].MAX_TEXTURES,n=new Int32Array(i),o=0;o<i;o++)n[o]=o;var s={tint:new Float32Array([1,1,1,1]),translationMatrix:new Ue,default:qr.from({uSamplers:n},!0)},a=t.plugins[r]._shader.program;ys[r]=new Ci(a,s)}e=ys[r]}return e},r.prototype._calculateBounds=function(){this.finishPoly();var t=this._geometry;if(t.graphicsData.length){var e=t.bounds,r=e.minX,i=e.minY,n=e.maxX,o=e.maxY;this._bounds.addFrame(this.transform,r,i,n,o)}},r.prototype.containsPoint=function(t){return this.worldTransform.applyInverse(t,r._TEMP_POINT),this._geometry.containsPoint(r._TEMP_POINT)},r.prototype.calculateTints=function(){if(this.batchTint!==this.tint){this.batchTint=this.tint;for(var t=$t(this.tint,ms),e=0;e<this.batches.length;e++){var r=this.batches[e],i=r._batchRGB,n=(t[0]*i[0]*255<<16)+(t[1]*i[1]*255<<8)+(0|t[2]*i[2]*255);r._tintRGB=(n>>16)+(65280&n)+((255&n)<<16)}}},r.prototype.calculateVertices=function(){var t=this.transform._worldID;if(this._transformID!==t){this._transformID=t;for(var e=this.transform.worldTransform,r=e.a,i=e.b,n=e.c,o=e.d,s=e.tx,a=e.ty,h=this._geometry.points,u=this.vertexData,l=0,c=0;c<h.length;c+=2){var d=h[c],f=h[c+1];u[l++]=r*d+n*f+s,u[l++]=o*f+i*d+a}}},r.prototype.closePath=function(){var t=this.currentPath;return t&&(t.closeStroke=!0,this.finishPoly()),this},r.prototype.setMatrix=function(t){return this._matrix=t,this},r.prototype.beginHole=function(){return this.finishPoly(),this._holeMode=!0,this},r.prototype.endHole=function(){return this.finishPoly(),this._holeMode=!1,this},r.prototype.destroy=function(t){this._geometry.refCount--,0===this._geometry.refCount&&this._geometry.dispose(),this._matrix=null,this.currentPath=null,this._lineStyle.destroy(),this._lineStyle=null,this._fillStyle.destroy(),this._fillStyle=null,this._geometry=null,this.shader=null,this.vertexData=null,this.batches.length=0,this.batches=null,e.prototype.destroy.call(this,t)},r.nextRoundedRectBehavior=!1,r._TEMP_POINT=new De,r}(er),Ts={buildPoly:Zo,buildCircle:Qo,buildRectangle:Jo,buildRoundedRectangle:es,buildLine:ns,ArcUtils:ss,BezierUtils:as,QuadraticUtils:hs,BatchPart:us,FILL_COMMANDS:ls,BATCH_POOL:cs,DRAW_CALL_POOL:ds},Es=function(t,e){return Es=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},Es(t,e)},bs=new De,xs=new Uint16Array([0,1,2,0,2,3]),As=function(e){function r(r){var i=e.call(this)||this;return i._anchor=new Ge(i._onAnchorUpdate,i,r?r.defaultAnchor.x:0,r?r.defaultAnchor.y:0),i._texture=null,i._width=0,i._height=0,i._tint=null,i._tintRGB=null,i.tint=16777215,i.blendMode=t.BLEND_MODES.NORMAL,i._cachedTint=16777215,i.uvs=null,i.texture=r||Nr.EMPTY,i.vertexData=new Float32Array(8),i.vertexTrimmedData=null,i._transformID=-1,i._textureID=-1,i._transformTrimmedID=-1,i._textureTrimmedID=-1,i.indices=xs,i.pluginName=\"batch\",i.isSprite=!0,i._roundPixels=U.ROUND_PIXELS,i}return function(t,e){function r(){this.constructor=t}Es(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}(r,e),r.prototype._onTextureUpdate=function(){this._textureID=-1,this._textureTrimmedID=-1,this._cachedTint=16777215,this._width&&(this.scale.x=pe(this.scale.x)*this._width/this._texture.orig.width),this._height&&(this.scale.y=pe(this.scale.y)*this._height/this._texture.orig.height)},r.prototype._onAnchorUpdate=function(){this._transformID=-1,this._transformTrimmedID=-1},r.prototype.calculateVertices=function(){var t=this._texture;if(this._transformID!==this.transform._worldID||this._textureID!==t._updateID){this._textureID!==t._updateID&&(this.uvs=this._texture._uvs.uvsFloat32),this._transformID=this.transform._worldID,this._textureID=t._updateID;var e=this.transform.worldTransform,r=e.a,i=e.b,n=e.c,o=e.d,s=e.tx,a=e.ty,h=this.vertexData,u=t.trim,l=t.orig,c=this._anchor,d=0,f=0,p=0,_=0;if(u?(d=(f=u.x-c._x*l.width)+u.width,p=(_=u.y-c._y*l.height)+u.height):(d=(f=-c._x*l.width)+l.width,p=(_=-c._y*l.height)+l.height),h[0]=r*f+n*_+s,h[1]=o*_+i*f+a,h[2]=r*d+n*_+s,h[3]=o*_+i*d+a,h[4]=r*d+n*p+s,h[5]=o*p+i*d+a,h[6]=r*f+n*p+s,h[7]=o*p+i*f+a,this._roundPixels)for(var v=U.RESOLUTION,m=0;m<h.length;++m)h[m]=Math.round((h[m]*v|0)/v)}},r.prototype.calculateTrimmedVertices=function(){if(this.vertexTrimmedData){if(this._transformTrimmedID===this.transform._worldID&&this._textureTrimmedID===this._texture._updateID)return}else this.vertexTrimmedData=new Float32Array(8);this._transformTrimmedID=this.transform._worldID,this._textureTrimmedID=this._texture._updateID;var t=this._texture,e=this.vertexTrimmedData,r=t.orig,i=this._anchor,n=this.transform.worldTransform,o=n.a,s=n.b,a=n.c,h=n.d,u=n.tx,l=n.ty,c=-i._x*r.width,d=c+r.width,f=-i._y*r.height,p=f+r.height;e[0]=o*c+a*f+u,e[1]=h*f+s*c+l,e[2]=o*d+a*f+u,e[3]=h*f+s*d+l,e[4]=o*d+a*p+u,e[5]=h*p+s*d+l,e[6]=o*c+a*p+u,e[7]=h*p+s*c+l},r.prototype._render=function(t){this.calculateVertices(),t.batch.setObjectRenderer(t.plugins[this.pluginName]),t.plugins[this.pluginName].render(this)},r.prototype._calculateBounds=function(){var t=this._texture.trim,e=this._texture.orig;!t||t.width===e.width&&t.height===e.height?(this.calculateVertices(),this._bounds.addQuad(this.vertexData)):(this.calculateTrimmedVertices(),this._bounds.addQuad(this.vertexTrimmedData))},r.prototype.getLocalBounds=function(t){return 0===this.children.length?(this._localBounds||(this._localBounds=new Ke),this._localBounds.minX=this._texture.orig.width*-this._anchor._x,this._localBounds.minY=this._texture.orig.height*-this._anchor._y,this._localBounds.maxX=this._texture.orig.width*(1-this._anchor._x),this._localBounds.maxY=this._texture.orig.height*(1-this._anchor._y),t||(this._localBoundsRect||(this._localBoundsRect=new Ce),t=this._localBoundsRect),this._localBounds.getRectangle(t)):e.prototype.getLocalBounds.call(this,t)},r.prototype.containsPoint=function(t){this.worldTransform.applyInverse(t,bs);var e=this._texture.orig.width,r=this._texture.orig.height,i=-e*this.anchor.x,n=0;return bs.x>=i&&bs.x<i+e&&(n=-r*this.anchor.y,bs.y>=n&&bs.y<n+r)},r.prototype.destroy=function(t){if(e.prototype.destroy.call(this,t),this._texture.off(\"update\",this._onTextureUpdate,this),this._anchor=null,\"boolean\"==typeof t?t:t&&t.texture){var r=\"boolean\"==typeof t?t:t&&t.baseTexture;this._texture.destroy(!!r)}this._texture=null},r.from=function(t,e){return new r(t instanceof Nr?t:Nr.from(t,e))},Object.defineProperty(r.prototype,\"roundPixels\",{get:function(){return this._roundPixels},set:function(t){this._roundPixels!==t&&(this._transformID=-1),this._roundPixels=t},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"width\",{get:function(){return Math.abs(this.scale.x)*this._texture.orig.width},set:function(t){var e=pe(this.scale.x)||1;this.scale.x=e*t/this._texture.orig.width,this._width=t},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"height\",{get:function(){return Math.abs(this.scale.y)*this._texture.orig.height},set:function(t){var e=pe(this.scale.y)||1;this.scale.y=e*t/this._texture.orig.height,this._height=t},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"anchor\",{get:function(){return this._anchor},set:function(t){this._anchor.copyFrom(t)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"tint\",{get:function(){return this._tint},set:function(t){this._tint=t,this._tintRGB=(t>>16)+(65280&t)+((255&t)<<16)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"texture\",{get:function(){return this._texture},set:function(t){this._texture!==t&&(this._texture&&this._texture.off(\"update\",this._onTextureUpdate,this),this._texture=t||Nr.EMPTY,this._cachedTint=16777215,this._textureID=-1,this._textureTrimmedID=-1,t&&(t.baseTexture.valid?this._onTextureUpdate():t.once(\"update\",this._onTextureUpdate,this)))},enumerable:!1,configurable:!0}),r}(er);t.TEXT_GRADIENT=void 0;var Ss=function(t,e){return Ss=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},Ss(t,e)};!function(t){t[t.LINEAR_VERTICAL=0]=\"LINEAR_VERTICAL\",t[t.LINEAR_HORIZONTAL=1]=\"LINEAR_HORIZONTAL\"}(t.TEXT_GRADIENT||(t.TEXT_GRADIENT={}));var Rs={align:\"left\",breakWords:!1,dropShadow:!1,dropShadowAlpha:1,dropShadowAngle:Math.PI/6,dropShadowBlur:0,dropShadowColor:\"black\",dropShadowDistance:5,fill:\"black\",fillGradientType:t.TEXT_GRADIENT.LINEAR_VERTICAL,fillGradientStops:[],fontFamily:\"Arial\",fontSize:26,fontStyle:\"normal\",fontVariant:\"normal\",fontWeight:\"normal\",letterSpacing:0,lineHeight:0,lineJoin:\"miter\",miterLimit:10,padding:0,stroke:\"black\",strokeThickness:0,textBaseline:\"alphabetic\",trim:!1,whiteSpace:\"pre\",wordWrap:!1,wordWrapWidth:100,leading:0},Os=[\"serif\",\"sans-serif\",\"monospace\",\"cursive\",\"fantasy\",\"system-ui\"],Ms=function(){function t(t){this.styleID=0,this.reset(),Ds(this,t,t)}return t.prototype.clone=function(){var e={};return Ds(e,this,Rs),new t(e)},t.prototype.reset=function(){Ds(this,Rs,Rs)},Object.defineProperty(t.prototype,\"align\",{get:function(){return this._align},set:function(t){this._align!==t&&(this._align=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"breakWords\",{get:function(){return this._breakWords},set:function(t){this._breakWords!==t&&(this._breakWords=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"dropShadow\",{get:function(){return this._dropShadow},set:function(t){this._dropShadow!==t&&(this._dropShadow=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"dropShadowAlpha\",{get:function(){return this._dropShadowAlpha},set:function(t){this._dropShadowAlpha!==t&&(this._dropShadowAlpha=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"dropShadowAngle\",{get:function(){return this._dropShadowAngle},set:function(t){this._dropShadowAngle!==t&&(this._dropShadowAngle=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"dropShadowBlur\",{get:function(){return this._dropShadowBlur},set:function(t){this._dropShadowBlur!==t&&(this._dropShadowBlur=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"dropShadowColor\",{get:function(){return this._dropShadowColor},set:function(t){var e=Is(t);this._dropShadowColor!==e&&(this._dropShadowColor=e,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"dropShadowDistance\",{get:function(){return this._dropShadowDistance},set:function(t){this._dropShadowDistance!==t&&(this._dropShadowDistance=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"fill\",{get:function(){return this._fill},set:function(t){var e=Is(t);this._fill!==e&&(this._fill=e,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"fillGradientType\",{get:function(){return this._fillGradientType},set:function(t){this._fillGradientType!==t&&(this._fillGradientType=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"fillGradientStops\",{get:function(){return this._fillGradientStops},set:function(t){(function(t,e){if(!Array.isArray(t)||!Array.isArray(e))return!1;if(t.length!==e.length)return!1;for(var r=0;r<t.length;++r)if(t[r]!==e[r])return!1;return!0})(this._fillGradientStops,t)||(this._fillGradientStops=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"fontFamily\",{get:function(){return this._fontFamily},set:function(t){this.fontFamily!==t&&(this._fontFamily=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"fontSize\",{get:function(){return this._fontSize},set:function(t){this._fontSize!==t&&(this._fontSize=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"fontStyle\",{get:function(){return this._fontStyle},set:function(t){this._fontStyle!==t&&(this._fontStyle=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"fontVariant\",{get:function(){return this._fontVariant},set:function(t){this._fontVariant!==t&&(this._fontVariant=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"fontWeight\",{get:function(){return this._fontWeight},set:function(t){this._fontWeight!==t&&(this._fontWeight=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"letterSpacing\",{get:function(){return this._letterSpacing},set:function(t){this._letterSpacing!==t&&(this._letterSpacing=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"lineHeight\",{get:function(){return this._lineHeight},set:function(t){this._lineHeight!==t&&(this._lineHeight=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"leading\",{get:function(){return this._leading},set:function(t){this._leading!==t&&(this._leading=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"lineJoin\",{get:function(){return this._lineJoin},set:function(t){this._lineJoin!==t&&(this._lineJoin=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"miterLimit\",{get:function(){return this._miterLimit},set:function(t){this._miterLimit!==t&&(this._miterLimit=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"padding\",{get:function(){return this._padding},set:function(t){this._padding!==t&&(this._padding=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"stroke\",{get:function(){return this._stroke},set:function(t){var e=Is(t);this._stroke!==e&&(this._stroke=e,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"strokeThickness\",{get:function(){return this._strokeThickness},set:function(t){this._strokeThickness!==t&&(this._strokeThickness=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"textBaseline\",{get:function(){return this._textBaseline},set:function(t){this._textBaseline!==t&&(this._textBaseline=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"trim\",{get:function(){return this._trim},set:function(t){this._trim!==t&&(this._trim=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"whiteSpace\",{get:function(){return this._whiteSpace},set:function(t){this._whiteSpace!==t&&(this._whiteSpace=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"wordWrap\",{get:function(){return this._wordWrap},set:function(t){this._wordWrap!==t&&(this._wordWrap=t,this.styleID++)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"wordWrapWidth\",{get:function(){return this._wordWrapWidth},set:function(t){this._wordWrapWidth!==t&&(this._wordWrapWidth=t,this.styleID++)},enumerable:!1,configurable:!0}),t.prototype.toFontString=function(){var t=\"number\"==typeof this.fontSize?this.fontSize+\"px\":this.fontSize,e=this.fontFamily;Array.isArray(this.fontFamily)||(e=this.fontFamily.split(\",\"));for(var r=e.length-1;r>=0;r--){var i=e[r].trim();!/([\\\"\\'])[^\\'\\\"]+\\1/.test(i)&&Os.indexOf(i)<0&&(i='\"'+i+'\"'),e[r]=i}return this.fontStyle+\" \"+this.fontVariant+\" \"+this.fontWeight+\" \"+t+\" \"+e.join(\",\")},t}();function Ps(t){return\"number\"==typeof t?te(t):(\"string\"==typeof t&&0===t.indexOf(\"0x\")&&(t=t.replace(\"0x\",\"#\")),t)}function Is(t){if(Array.isArray(t)){for(var e=0;e<t.length;++e)t[e]=Ps(t[e]);return t}return Ps(t)}function Ds(t,e,r){for(var i in r)Array.isArray(e[i])?t[i]=e[i].slice():t[i]=e[i]}var ws={willReadFrequently:!0},Cs=function(){function t(t,e,r,i,n,o,s,a,h){this.text=t,this.style=e,this.width=r,this.height=i,this.lines=n,this.lineWidths=o,this.lineHeight=s,this.maxLineWidth=a,this.fontProperties=h}return t.measureText=function(e,r,i,n){void 0===n&&(n=t._canvas),i=null==i?r.wordWrap:i;var o=r.toFontString(),s=t.measureFont(o);0===s.fontSize&&(s.fontSize=r.fontSize,s.ascent=r.fontSize);var a=n.getContext(\"2d\",ws);a.font=o;for(var h=(i?t.wordWrap(e,r,n):e).split(/(?:\\r\\n|\\r|\\n)/),u=new Array(h.length),l=0,c=0;c<h.length;c++){var d=a.measureText(h[c]).width+(h[c].length-1)*r.letterSpacing;u[c]=d,l=Math.max(l,d)}var f=l+r.strokeThickness;r.dropShadow&&(f+=r.dropShadowDistance);var p=r.lineHeight||s.fontSize+r.strokeThickness,_=Math.max(p,s.fontSize+r.strokeThickness)+(h.length-1)*(p+r.leading);return r.dropShadow&&(_+=r.dropShadowDistance),new t(e,r,f,_,h,u,p+r.leading,l,s)},t.wordWrap=function(e,r,i){void 0===i&&(i=t._canvas);for(var n=i.getContext(\"2d\",ws),o=0,s=\"\",a=\"\",h=Object.create(null),u=r.letterSpacing,l=r.whiteSpace,c=t.collapseSpaces(l),d=t.collapseNewlines(l),f=!c,p=r.wordWrapWidth+u,_=t.tokenize(e),v=0;v<_.length;v++){var m=_[v];if(t.isNewline(m)){if(!d){a+=t.addLine(s),f=!c,s=\"\",o=0;continue}m=\" \"}if(c){var y=t.isBreakingSpace(m),g=t.isBreakingSpace(s[s.length-1]);if(y&&g)continue}var T=t.getFromCache(m,u,h,n);if(T>p)if(\"\"!==s&&(a+=t.addLine(s),s=\"\",o=0),t.canBreakWords(m,r.breakWords))for(var E=t.wordWrapSplit(m),b=0;b<E.length;b++){for(var x=E[b],A=1;E[b+A];){var S=E[b+A],R=x[x.length-1];if(t.canBreakChars(R,S,m,b,r.breakWords))break;x+=S,A++}b+=x.length-1;var O=t.getFromCache(x,u,h,n);O+o>p&&(a+=t.addLine(s),f=!1,s=\"\",o=0),s+=x,o+=O}else{s.length>0&&(a+=t.addLine(s),s=\"\",o=0);var M=v===_.length-1;a+=t.addLine(m,!M),f=!1,s=\"\",o=0}else T+o>p&&(f=!1,a+=t.addLine(s),s=\"\",o=0),(s.length>0||!t.isBreakingSpace(m)||f)&&(s+=m,o+=T)}return a+t.addLine(s,!1)},t.addLine=function(e,r){return void 0===r&&(r=!0),e=t.trimRight(e),r?e+\"\\n\":e},t.getFromCache=function(t,e,r,i){var n=r[t];if(\"number\"!=typeof n){var o=t.length*e;n=i.measureText(t).width+o,r[t]=n}return n},t.collapseSpaces=function(t){return\"normal\"===t||\"pre-line\"===t},t.collapseNewlines=function(t){return\"normal\"===t},t.trimRight=function(e){if(\"string\"!=typeof e)return\"\";for(var r=e.length-1;r>=0;r--){var i=e[r];if(!t.isBreakingSpace(i))break;e=e.slice(0,-1)}return e},t.isNewline=function(e){return\"string\"==typeof e&&t._newlines.indexOf(e.charCodeAt(0))>=0},t.isBreakingSpace=function(e,r){return\"string\"==typeof e&&t._breakingSpaces.indexOf(e.charCodeAt(0))>=0},t.tokenize=function(e){var r=[],i=\"\";if(\"string\"!=typeof e)return r;for(var n=0;n<e.length;n++){var o=e[n],s=e[n+1];t.isBreakingSpace(o,s)||t.isNewline(o)?(\"\"!==i&&(r.push(i),i=\"\"),r.push(o)):i+=o}return\"\"!==i&&r.push(i),r},t.canBreakWords=function(t,e){return e},t.canBreakChars=function(t,e,r,i,n){return!0},t.wordWrapSplit=function(t){return t.split(\"\")},t.measureFont=function(e){if(t._fonts[e])return t._fonts[e];var r={ascent:0,descent:0,fontSize:0},i=t._canvas,n=t._context;n.font=e;var o=t.METRICS_STRING+t.BASELINE_SYMBOL,s=Math.ceil(n.measureText(o).width),a=Math.ceil(n.measureText(t.BASELINE_SYMBOL).width),h=Math.ceil(t.HEIGHT_MULTIPLIER*a);a=a*t.BASELINE_MULTIPLIER|0,i.width=s,i.height=h,n.fillStyle=\"#f00\",n.fillRect(0,0,s,h),n.font=e,n.textBaseline=\"alphabetic\",n.fillStyle=\"#000\",n.fillText(o,0,a);var u=n.getImageData(0,0,s,h).data,l=u.length,c=4*s,d=0,f=0,p=!1;for(d=0;d<a;++d){for(var _=0;_<c;_+=4)if(255!==u[f+_]){p=!0;break}if(p)break;f+=c}for(r.ascent=a-d,f=l-c,p=!1,d=h;d>a;--d){for(_=0;_<c;_+=4)if(255!==u[f+_]){p=!0;break}if(p)break;f-=c}return r.descent=d-a,r.fontSize=r.ascent+r.descent,t._fonts[e]=r,r},t.clearMetrics=function(e){void 0===e&&(e=\"\"),e?delete t._fonts[e]:t._fonts={}},Object.defineProperty(t,\"_canvas\",{get:function(){if(!t.__canvas){var e=void 0;try{var r=new OffscreenCanvas(0,0),i=r.getContext(\"2d\",ws);if(i&&i.measureText)return t.__canvas=r,r;e=U.ADAPTER.createCanvas()}catch(t){e=U.ADAPTER.createCanvas()}e.width=e.height=10,t.__canvas=e}return t.__canvas},enumerable:!1,configurable:!0}),Object.defineProperty(t,\"_context\",{get:function(){return t.__context||(t.__context=t._canvas.getContext(\"2d\",ws)),t.__context},enumerable:!1,configurable:!0}),t}();Cs._fonts={},Cs.METRICS_STRING=\"|ÉqÅ\",Cs.BASELINE_SYMBOL=\"M\",Cs.BASELINE_MULTIPLIER=1.4,Cs.HEIGHT_MULTIPLIER=2,Cs._newlines=[10,13],Cs._breakingSpaces=[9,32,8192,8193,8194,8195,8196,8197,8198,8200,8201,8202,8287,12288];var Ns={texture:!0,children:!1,baseTexture:!0},Fs=function(e){function r(t,r,i){var n=this,o=!1;i||(i=U.ADAPTER.createCanvas(),o=!0),i.width=3,i.height=3;var s=Nr.from(i);return s.orig=new Ce,s.trim=new Ce,(n=e.call(this,s)||this)._ownCanvas=o,n.canvas=i,n.context=i.getContext(\"2d\",{willReadFrequently:!0}),n._resolution=U.RESOLUTION,n._autoResolution=!0,n._text=null,n._style=null,n._styleListener=null,n._font=\"\",n.text=t,n.style=r,n.localStyleID=-1,n}return function(t,e){function r(){this.constructor=t}Ss(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}(r,e),r.prototype.updateText=function(t){var e=this._style;if(this.localStyleID!==e.styleID&&(this.dirty=!0,this.localStyleID=e.styleID),this.dirty||!t){this._font=this._style.toFontString();var i,n,o=this.context,s=Cs.measureText(this._text||\" \",this._style,this._style.wordWrap,this.canvas),a=s.width,h=s.height,u=s.lines,l=s.lineHeight,c=s.lineWidths,d=s.maxLineWidth,f=s.fontProperties;this.canvas.width=Math.ceil(Math.ceil(Math.max(1,a)+2*e.padding)*this._resolution),this.canvas.height=Math.ceil(Math.ceil(Math.max(1,h)+2*e.padding)*this._resolution),o.scale(this._resolution,this._resolution),o.clearRect(0,0,this.canvas.width,this.canvas.height),o.font=this._font,o.lineWidth=e.strokeThickness,o.textBaseline=e.textBaseline,o.lineJoin=e.lineJoin,o.miterLimit=e.miterLimit;for(var p=e.dropShadow?2:1,_=0;_<p;++_){var v=e.dropShadow&&0===_,m=v?Math.ceil(Math.max(1,h)+2*e.padding):0,y=m*this._resolution;if(v){o.fillStyle=\"black\",o.strokeStyle=\"black\";var g=e.dropShadowColor,T=$t(\"number\"==typeof g?g:ee(g)),E=e.dropShadowBlur*this._resolution,b=e.dropShadowDistance*this._resolution;o.shadowColor=\"rgba(\"+255*T[0]+\",\"+255*T[1]+\",\"+255*T[2]+\",\"+e.dropShadowAlpha+\")\",o.shadowBlur=E,o.shadowOffsetX=Math.cos(e.dropShadowAngle)*b,o.shadowOffsetY=Math.sin(e.dropShadowAngle)*b+y}else o.fillStyle=this._generateFillStyle(e,u,s),o.strokeStyle=e.stroke,o.shadowColor=\"black\",o.shadowBlur=0,o.shadowOffsetX=0,o.shadowOffsetY=0;var x=(l-f.fontSize)/2;(!r.nextLineHeightBehavior||l-f.fontSize<0)&&(x=0);for(var A=0;A<u.length;A++)i=e.strokeThickness/2,n=e.strokeThickness/2+A*l+f.ascent+x,\"right\"===e.align?i+=d-c[A]:\"center\"===e.align&&(i+=(d-c[A])/2),e.stroke&&e.strokeThickness&&this.drawLetterSpacing(u[A],i+e.padding,n+e.padding-m,!0),e.fill&&this.drawLetterSpacing(u[A],i+e.padding,n+e.padding-m)}this.updateTexture()}},r.prototype.drawLetterSpacing=function(t,e,i,n){void 0===n&&(n=!1);var o=this._style.letterSpacing,s=r.experimentalLetterSpacing&&(\"letterSpacing\"in CanvasRenderingContext2D.prototype||\"textLetterSpacing\"in CanvasRenderingContext2D.prototype);if(0===o||s)return s&&(this.context.letterSpacing=o,this.context.textLetterSpacing=o),void(n?this.context.strokeText(t,e,i):this.context.fillText(t,e,i));for(var a=e,h=Array.from?Array.from(t):t.split(\"\"),u=this.context.measureText(t).width,l=0,c=0;c<h.length;++c){var d=h[c];n?this.context.strokeText(d,a,i):this.context.fillText(d,a,i);for(var f=\"\",p=c+1;p<h.length;++p)f+=h[p];a+=u-(l=this.context.measureText(f).width)+o,u=l}},r.prototype.updateTexture=function(){var t=this.canvas;if(this._style.trim){var e=be(t);e.data&&(t.width=e.width,t.height=e.height,this.context.putImageData(e.data,0,0))}var r=this._texture,i=this._style,n=i.trim?0:i.padding,o=r.baseTexture;r.trim.width=r._frame.width=t.width/this._resolution,r.trim.height=r._frame.height=t.height/this._resolution,r.trim.x=-n,r.trim.y=-n,r.orig.width=r._frame.width-2*n,r.orig.height=r._frame.height-2*n,this._onTextureUpdate(),o.setRealSize(t.width,t.height,this._resolution),r.updateUvs(),this.dirty=!1},r.prototype._render=function(t){this._autoResolution&&this._resolution!==t.resolution&&(this._resolution=t.resolution,this.dirty=!0),this.updateText(!0),e.prototype._render.call(this,t)},r.prototype.updateTransform=function(){this.updateText(!0),e.prototype.updateTransform.call(this)},r.prototype.getBounds=function(t,r){return this.updateText(!0),-1===this._textureID&&(t=!1),e.prototype.getBounds.call(this,t,r)},r.prototype.getLocalBounds=function(t){return this.updateText(!0),e.prototype.getLocalBounds.call(this,t)},r.prototype._calculateBounds=function(){this.calculateVertices(),this._bounds.addQuad(this.vertexData)},r.prototype._generateFillStyle=function(e,r,i){var n,o=e.fill;if(!Array.isArray(o))return o;if(1===o.length)return o[0];var s=e.dropShadow?e.dropShadowDistance:0,a=e.padding||0,h=this.canvas.width/this._resolution-s-2*a,u=this.canvas.height/this._resolution-s-2*a,l=o.slice(),c=e.fillGradientStops.slice();if(!c.length)for(var d=l.length+1,f=1;f<d;++f)c.push(f/d);if(l.unshift(o[0]),c.unshift(0),l.push(o[o.length-1]),c.push(1),e.fillGradientType===t.TEXT_GRADIENT.LINEAR_VERTICAL){n=this.context.createLinearGradient(h/2,a,h/2,u+a);var p=i.fontProperties.fontSize+e.strokeThickness;for(f=0;f<r.length;f++){var _=i.lineHeight*(f-1)+p,v=i.lineHeight*f,m=v;f>0&&_>v&&(m=(v+_)/2);var y=v+p,g=i.lineHeight*(f+1),T=y;f+1<r.length&&g<y&&(T=(y+g)/2);for(var E=(T-m)/u,b=0;b<l.length;b++){var x;x=\"number\"==typeof c[b]?c[b]:b/l.length;var A=Math.min(1,Math.max(0,m/u+x*E));A=Number(A.toFixed(5)),n.addColorStop(A,l[b])}}}else{n=this.context.createLinearGradient(a,u/2,h+a,u/2);var S=l.length+1,R=1;for(f=0;f<l.length;f++){var O;O=\"number\"==typeof c[f]?c[f]:R/S,n.addColorStop(O,l[f]),R++}}return n},r.prototype.destroy=function(t){\"boolean\"==typeof t&&(t={children:t}),t=Object.assign({},Ns,t),e.prototype.destroy.call(this,t),this._ownCanvas&&(this.canvas.height=this.canvas.width=0),this.context=null,this.canvas=null,this._style=null},Object.defineProperty(r.prototype,\"width\",{get:function(){return this.updateText(!0),Math.abs(this.scale.x)*this._texture.orig.width},set:function(t){this.updateText(!0);var e=pe(this.scale.x)||1;this.scale.x=e*t/this._texture.orig.width,this._width=t},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"height\",{get:function(){return this.updateText(!0),Math.abs(this.scale.y)*this._texture.orig.height},set:function(t){this.updateText(!0);var e=pe(this.scale.y)||1;this.scale.y=e*t/this._texture.orig.height,this._height=t},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"style\",{get:function(){return this._style},set:function(t){t=t||{},this._style=t instanceof Ms?t:new Ms(t),this.localStyleID=-1,this.dirty=!0},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"text\",{get:function(){return this._text},set:function(t){t=String(null==t?\"\":t),this._text!==t&&(this._text=t,this.dirty=!0)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"resolution\",{get:function(){return this._resolution},set:function(t){this._autoResolution=!1,this._resolution!==t&&(this._resolution=t,this.dirty=!0)},enumerable:!1,configurable:!0}),r.nextLineHeightBehavior=!1,r.experimentalLetterSpacing=!1,r}(As);U.UPLOADS_PER_FRAME=4;var Ls=function(t,e){return Ls=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},Ls(t,e)},Bs=function(){function t(t){this.maxItemsPerFrame=t,this.itemsLeft=0}return t.prototype.beginFrame=function(){this.itemsLeft=this.maxItemsPerFrame},t.prototype.allowedToUpload=function(){return this.itemsLeft-- >0},t}();function Gs(t,e){var r=!1;if(t&&t._textures&&t._textures.length)for(var i=0;i<t._textures.length;i++)if(t._textures[i]instanceof Nr){var n=t._textures[i].baseTexture;-1===e.indexOf(n)&&(e.push(n),r=!0)}return r}function Us(t,e){if(t.baseTexture instanceof mr){var r=t.baseTexture;return-1===e.indexOf(r)&&e.push(r),!0}return!1}function ks(t,e){if(t._texture&&t._texture instanceof Nr){var r=t._texture.baseTexture;return-1===e.indexOf(r)&&e.push(r),!0}return!1}function Xs(t,e){return e instanceof Fs&&(e.updateText(!0),!0)}function js(t,e){if(e instanceof Ms){var r=e.toFontString();return Cs.measureFont(r),!0}return!1}function Hs(t,e){if(t instanceof Fs){-1===e.indexOf(t.style)&&e.push(t.style),-1===e.indexOf(t)&&e.push(t);var r=t._texture.baseTexture;return-1===e.indexOf(r)&&e.push(r),!0}return!1}function Ys(t,e){return t instanceof Ms&&(-1===e.indexOf(t)&&e.push(t),!0)}var Vs=function(){function e(t){var e=this;this.limiter=new Bs(U.UPLOADS_PER_FRAME),this.renderer=t,this.uploadHookHelper=null,this.queue=[],this.addHooks=[],this.uploadHooks=[],this.completes=[],this.ticking=!1,this.delayedTick=function(){e.queue&&e.prepareItems()},this.registerFindHook(Hs),this.registerFindHook(Ys),this.registerFindHook(Gs),this.registerFindHook(Us),this.registerFindHook(ks),this.registerUploadHook(Xs),this.registerUploadHook(js)}return e.prototype.upload=function(e,r){var i=this;return\"function\"==typeof e&&(r=e,e=null),new Promise((function(n){e&&i.add(e);var o=function(){null==r||r(),n()};i.queue.length?(i.completes.push(o),i.ticking||(i.ticking=!0,ar.system.addOnce(i.tick,i,t.UPDATE_PRIORITY.UTILITY))):o()}))},e.prototype.tick=function(){setTimeout(this.delayedTick,0)},e.prototype.prepareItems=function(){for(this.limiter.beginFrame();this.queue.length&&this.limiter.allowedToUpload();){var e=this.queue[0],r=!1;if(e&&!e._destroyed)for(var i=0,n=this.uploadHooks.length;i<n;i++)if(this.uploadHooks[i](this.uploadHookHelper,e)){this.queue.shift(),r=!0;break}r||this.queue.shift()}if(this.queue.length)ar.system.addOnce(this.tick,this,t.UPDATE_PRIORITY.UTILITY);else{this.ticking=!1;var o=this.completes.slice(0);for(this.completes.length=0,i=0,n=o.length;i<n;i++)o[i]()}},e.prototype.registerFindHook=function(t){return t&&this.addHooks.push(t),this},e.prototype.registerUploadHook=function(t){return t&&this.uploadHooks.push(t),this},e.prototype.add=function(t){for(var e=0,r=this.addHooks.length;e<r&&!this.addHooks[e](t,this.queue);e++);if(t instanceof er)for(e=t.children.length-1;e>=0;e--)this.add(t.children[e]);return this},e.prototype.destroy=function(){this.ticking&&ar.system.remove(this.tick,this),this.ticking=!1,this.addHooks=null,this.uploadHooks=null,this.renderer=null,this.completes=null,this.queue=null,this.limiter=null,this.uploadHookHelper=null},e}();function zs(t,e){return e instanceof mr&&(e._glTextures[t.CONTEXT_UID]||t.texture.bind(e),!0)}function Ws(t,e){if(!(e instanceof gs))return!1;var r=e.geometry;e.finishPoly(),r.updateBatches();for(var i=r.batches,n=0;n<i.length;n++){var o=i[n].style.texture;o&&zs(t,o.baseTexture)}return r.batchable||t.geometry.bind(r,e._resolveDirectShader(t)),!0}function qs(t,e){return t instanceof gs&&(e.push(t),!0)}var Ks=function(e){function r(t){var r=e.call(this,t)||this;return r.uploadHookHelper=r.renderer,r.registerFindHook(qs),r.registerUploadHook(zs),r.registerUploadHook(Ws),r}return function(t,e){function r(){this.constructor=t}Ls(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}(r,e),r.extension={name:\"prepare\",type:t.ExtensionType.RendererPlugin},r}(Vs),Zs=function(){function t(t){this.maxMilliseconds=t,this.frameStart=0}return t.prototype.beginFrame=function(){this.frameStart=Date.now()},t.prototype.allowedToUpload=function(){return Date.now()-this.frameStart<this.maxMilliseconds},t}(),Qs=function(){function t(t,e,r){void 0===r&&(r=null),this.linkedSheets=[],this._texture=t instanceof Nr?t:null,this.baseTexture=t instanceof mr?t:this._texture.baseTexture,this.textures={},this.animations={},this.data=e;var i=this.baseTexture.resource;this.resolution=this._updateResolution(r||(i?i.url:null)),this._frames=this.data.frames,this._frameKeys=Object.keys(this._frames),this._batchIndex=0,this._callback=null}return t.prototype._updateResolution=function(t){void 0===t&&(t=null);var e=this.data.meta.scale,r=Re(t,null);return null===r&&(r=void 0!==e?parseFloat(e):1),1!==r&&this.baseTexture.setResolution(r),r},t.prototype.parse=function(e){var r=this;return new Promise((function(i){r._callback=function(t){null==e||e(t),i(t)},r._batchIndex=0,r._frameKeys.length<=t.BATCH_SIZE?(r._processFrames(0),r._processAnimations(),r._parseComplete()):r._nextBatch()}))},t.prototype._processFrames=function(e){for(var r=e,i=t.BATCH_SIZE;r-e<i&&r<this._frameKeys.length;){var n=this._frameKeys[r],o=this._frames[n],s=o.frame;if(s){var a,h=null,u=!1!==o.trimmed&&o.sourceSize?o.sourceSize:o.frame,l=new Ce(0,0,Math.floor(u.w)/this.resolution,Math.floor(u.h)/this.resolution);a=o.rotated?new Ce(Math.floor(s.x)/this.resolution,Math.floor(s.y)/this.resolution,Math.floor(s.h)/this.resolution,Math.floor(s.w)/this.resolution):new Ce(Math.floor(s.x)/this.resolution,Math.floor(s.y)/this.resolution,Math.floor(s.w)/this.resolution,Math.floor(s.h)/this.resolution),!1!==o.trimmed&&o.spriteSourceSize&&(h=new Ce(Math.floor(o.spriteSourceSize.x)/this.resolution,Math.floor(o.spriteSourceSize.y)/this.resolution,Math.floor(s.w)/this.resolution,Math.floor(s.h)/this.resolution)),this.textures[n]=new Nr(this.baseTexture,a,l,h,o.rotated?2:0,o.anchor),Nr.addToCache(this.textures[n],n)}r++}},t.prototype._processAnimations=function(){var t=this.data.animations||{};for(var e in t){this.animations[e]=[];for(var r=0;r<t[e].length;r++){var i=t[e][r];this.animations[e].push(this.textures[i])}}},t.prototype._parseComplete=function(){var t=this._callback;this._callback=null,this._batchIndex=0,t.call(this,this.textures)},t.prototype._nextBatch=function(){var e=this;this._processFrames(this._batchIndex*t.BATCH_SIZE),this._batchIndex++,setTimeout((function(){e._batchIndex*t.BATCH_SIZE<e._frameKeys.length?e._nextBatch():(e._processAnimations(),e._parseComplete())}),0)},t.prototype.destroy=function(t){var e;for(var r in void 0===t&&(t=!1),this.textures)this.textures[r].destroy();this._frames=null,this._frameKeys=null,this.data=null,this.textures=null,t&&(null===(e=this._texture)||void 0===e||e.destroy(),this.baseTexture.destroy()),this._texture=null,this.baseTexture=null,this.linkedSheets=[]},t.BATCH_SIZE=1e3,t}(),Js=function(){function e(){}return e.use=function(r,i){var n,o,s=this,a=r.name+\"_image\";if(r.data&&r.type===t.LoaderResource.TYPE.JSON&&r.data.frames&&!s.resources[a]){var h=null===(o=null===(n=r.data)||void 0===n?void 0:n.meta)||void 0===o?void 0:o.related_multi_packs;if(Array.isArray(h))for(var u=function(e){if(\"string\"!=typeof e)return\"continue\";var i=e.replace(\".json\",\"\"),n=Yt.resolve(r.url.replace(s.baseUrl,\"\"),e);if(s.resources[i]||Object.values(s.resources).some((function(t){return Yt.format(Yt.parse(t.url))===n})))return\"continue\";var o={crossOrigin:r.crossOrigin,loadType:t.LoaderResource.LOAD_TYPE.XHR,xhrType:t.LoaderResource.XHR_RESPONSE_TYPE.JSON,parentResource:r,metadata:r.metadata};s.add(i,n,o)},l=0,c=h;l<c.length;l++)u(c[l]);var d={crossOrigin:r.crossOrigin,metadata:r.metadata.imageMetadata,parentResource:r},f=e.getResourcePath(r,s.baseUrl);s.add(a,f,d,(function(t){if(t.error)i(t.error);else{var e=new Qs(t.texture,r.data,r.url);e.parse().then((function(){r.spritesheet=e,r.textures=e.textures,i()}))}}))}else i()},e.getResourcePath=function(t,e){return t.isDataUrl?t.data.meta.image:Yt.resolve(t.url.replace(e,\"\"),t.data.meta.image)},e.extension=t.ExtensionType.Loader,e}(),$s=function(t,e){return $s=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},$s(t,e)};function ta(t,e){function r(){this.constructor=t}$s(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}var ea=new De,ra=function(t){function e(e,r,i){void 0===r&&(r=100),void 0===i&&(i=100);var n=t.call(this,e)||this;return n.tileTransform=new qe,n._width=r,n._height=i,n.uvMatrix=n.texture.uvMatrix||new Bi(e),n.pluginName=\"tilingSprite\",n.uvRespectAnchor=!1,n}return ta(e,t),Object.defineProperty(e.prototype,\"clampMargin\",{get:function(){return this.uvMatrix.clampMargin},set:function(t){this.uvMatrix.clampMargin=t,this.uvMatrix.update(!0)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"tileScale\",{get:function(){return this.tileTransform.scale},set:function(t){this.tileTransform.scale.copyFrom(t)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"tilePosition\",{get:function(){return this.tileTransform.position},set:function(t){this.tileTransform.position.copyFrom(t)},enumerable:!1,configurable:!0}),e.prototype._onTextureUpdate=function(){this.uvMatrix&&(this.uvMatrix.texture=this._texture),this._cachedTint=16777215},e.prototype._render=function(t){var e=this._texture;e&&e.valid&&(this.tileTransform.updateLocalTransform(),this.uvMatrix.update(),t.batch.setObjectRenderer(t.plugins[this.pluginName]),t.plugins[this.pluginName].render(this))},e.prototype._calculateBounds=function(){var t=this._width*-this._anchor._x,e=this._height*-this._anchor._y,r=this._width*(1-this._anchor._x),i=this._height*(1-this._anchor._y);this._bounds.addFrame(this.transform,t,e,r,i)},e.prototype.getLocalBounds=function(e){return 0===this.children.length?(this._bounds.minX=this._width*-this._anchor._x,this._bounds.minY=this._height*-this._anchor._y,this._bounds.maxX=this._width*(1-this._anchor._x),this._bounds.maxY=this._height*(1-this._anchor._y),e||(this._localBoundsRect||(this._localBoundsRect=new Ce),e=this._localBoundsRect),this._bounds.getRectangle(e)):t.prototype.getLocalBounds.call(this,e)},e.prototype.containsPoint=function(t){this.worldTransform.applyInverse(t,ea);var e=this._width,r=this._height,i=-e*this.anchor._x;if(ea.x>=i&&ea.x<i+e){var n=-r*this.anchor._y;if(ea.y>=n&&ea.y<n+r)return!0}return!1},e.prototype.destroy=function(e){t.prototype.destroy.call(this,e),this.tileTransform=null,this.uvMatrix=null},e.from=function(t,r){return new e(t instanceof Nr?t:Nr.from(t,r),r.width,r.height)},Object.defineProperty(e.prototype,\"width\",{get:function(){return this._width},set:function(t){this._width=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"height\",{get:function(){return this._height},set:function(t){this._height=t},enumerable:!1,configurable:!0}),e}(As),ia=\"#version 100\\n#define SHADER_NAME Tiling-Sprite-100\\n\\nprecision lowp float;\\n\\nattribute vec2 aVertexPosition;\\nattribute vec2 aTextureCoord;\\n\\nuniform mat3 projectionMatrix;\\nuniform mat3 translationMatrix;\\nuniform mat3 uTransform;\\n\\nvarying vec2 vTextureCoord;\\n\\nvoid main(void)\\n{\\n gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\\n\\n vTextureCoord = (uTransform * vec3(aTextureCoord, 1.0)).xy;\\n}\\n\",na=new Ue,oa=function(e){function r(t){var r=e.call(this,t)||this;return t.runners.contextChange.add(r),r.quad=new zr,r.state=Ni.for2d(),r}return ta(r,e),r.prototype.contextChange=function(){var t=this.renderer,e={globals:t.globalUniforms};this.simpleShader=Ci.from(ia,\"#version 100\\n#define SHADER_NAME Tiling-Sprite-Simple-100\\n\\nprecision lowp float;\\n\\nvarying vec2 vTextureCoord;\\n\\nuniform sampler2D uSampler;\\nuniform vec4 uColor;\\n\\nvoid main(void)\\n{\\n vec4 texSample = texture2D(uSampler, vTextureCoord);\\n gl_FragColor = texSample * uColor;\\n}\\n\",e),this.shader=t.context.webGLVersion>1?Ci.from(\"#version 300 es\\n#define SHADER_NAME Tiling-Sprite-300\\n\\nprecision lowp float;\\n\\nin vec2 aVertexPosition;\\nin vec2 aTextureCoord;\\n\\nuniform mat3 projectionMatrix;\\nuniform mat3 translationMatrix;\\nuniform mat3 uTransform;\\n\\nout vec2 vTextureCoord;\\n\\nvoid main(void)\\n{\\n gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\\n\\n vTextureCoord = (uTransform * vec3(aTextureCoord, 1.0)).xy;\\n}\\n\",\"#version 300 es\\n#define SHADER_NAME Tiling-Sprite-100\\n\\nprecision lowp float;\\n\\nin vec2 vTextureCoord;\\n\\nout vec4 fragmentColor;\\n\\nuniform sampler2D uSampler;\\nuniform vec4 uColor;\\nuniform mat3 uMapCoord;\\nuniform vec4 uClampFrame;\\nuniform vec2 uClampOffset;\\n\\nvoid main(void)\\n{\\n vec2 coord = vTextureCoord + ceil(uClampOffset - vTextureCoord);\\n coord = (uMapCoord * vec3(coord, 1.0)).xy;\\n vec2 unclamped = coord;\\n coord = clamp(coord, uClampFrame.xy, uClampFrame.zw);\\n\\n vec4 texSample = texture(uSampler, coord, unclamped == coord ? 0.0f : -32.0f);// lod-bias very negative to force lod 0\\n\\n fragmentColor = texSample * uColor;\\n}\\n\",e):Ci.from(ia,\"#version 100\\n#ifdef GL_EXT_shader_texture_lod\\n #extension GL_EXT_shader_texture_lod : enable\\n#endif\\n#define SHADER_NAME Tiling-Sprite-100\\n\\nprecision lowp float;\\n\\nvarying vec2 vTextureCoord;\\n\\nuniform sampler2D uSampler;\\nuniform vec4 uColor;\\nuniform mat3 uMapCoord;\\nuniform vec4 uClampFrame;\\nuniform vec2 uClampOffset;\\n\\nvoid main(void)\\n{\\n vec2 coord = vTextureCoord + ceil(uClampOffset - vTextureCoord);\\n coord = (uMapCoord * vec3(coord, 1.0)).xy;\\n vec2 unclamped = coord;\\n coord = clamp(coord, uClampFrame.xy, uClampFrame.zw);\\n\\n #ifdef GL_EXT_shader_texture_lod\\n vec4 texSample = unclamped == coord\\n ? texture2D(uSampler, coord) \\n : texture2DLodEXT(uSampler, coord, 0);\\n #else\\n vec4 texSample = texture2D(uSampler, coord);\\n #endif\\n\\n gl_FragColor = texSample * uColor;\\n}\\n\",e)},r.prototype.render=function(e){var r=this.renderer,i=this.quad,n=i.vertices;n[0]=n[6]=e._width*-e.anchor.x,n[1]=n[3]=e._height*-e.anchor.y,n[2]=n[4]=e._width*(1-e.anchor.x),n[5]=n[7]=e._height*(1-e.anchor.y);var o=e.uvRespectAnchor?e.anchor.x:0,s=e.uvRespectAnchor?e.anchor.y:0;(n=i.uvs)[0]=n[6]=-o,n[1]=n[3]=-s,n[2]=n[4]=1-o,n[5]=n[7]=1-s,i.invalidate();var a=e._texture,h=a.baseTexture,u=h.alphaMode>0,l=e.tileTransform.localTransform,c=e.uvMatrix,d=h.isPowerOfTwo&&a.frame.width===h.width&&a.frame.height===h.height;d&&(h._glTextures[r.CONTEXT_UID]?d=h.wrapMode!==t.WRAP_MODES.CLAMP:h.wrapMode===t.WRAP_MODES.CLAMP&&(h.wrapMode=t.WRAP_MODES.REPEAT));var f=d?this.simpleShader:this.shader,p=a.width,_=a.height,v=e._width,m=e._height;na.set(l.a*p/v,l.b*p/m,l.c*_/v,l.d*_/m,l.tx/v,l.ty/m),na.invert(),d?na.prepend(c.mapCoord):(f.uniforms.uMapCoord=c.mapCoord.toArray(!0),f.uniforms.uClampFrame=c.uClampFrame,f.uniforms.uClampOffset=c.uClampOffset),f.uniforms.uTransform=na.toArray(!0),f.uniforms.uColor=se(e.tint,e.worldAlpha,f.uniforms.uColor,u),f.uniforms.translationMatrix=e.transform.worldTransform.toArray(!0),f.uniforms.uSampler=a,r.shader.bind(f),r.geometry.bind(i),this.state.blendMode=ie(e.blendMode,u),r.state.set(this.state),r.geometry.draw(this.renderer.gl.TRIANGLES,6,0)},r.extension={name:\"tilingSprite\",type:t.ExtensionType.RendererPlugin},r}($r),sa=function(t,e){return sa=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},sa(t,e)};function aa(t,e){function r(){this.constructor=t}sa(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}var ha=function(){function t(t,e){this.uvBuffer=t,this.uvMatrix=e,this.data=null,this._bufferUpdateId=-1,this._textureUpdateId=-1,this._updateID=0}return t.prototype.update=function(t){if(t||this._bufferUpdateId!==this.uvBuffer._updateID||this._textureUpdateId!==this.uvMatrix._updateID){this._bufferUpdateId=this.uvBuffer._updateID,this._textureUpdateId=this.uvMatrix._updateID;var e=this.uvBuffer.data;this.data&&this.data.length===e.length||(this.data=new Float32Array(e.length)),this.uvMatrix.multiplyUvs(e,this.data),this._updateID++}},t}(),ua=new De,la=new Le,ca=function(e){function r(r,i,n,o){void 0===o&&(o=t.DRAW_MODES.TRIANGLES);var s=e.call(this)||this;return s.geometry=r,s.shader=i,s.state=n||Ni.for2d(),s.drawMode=o,s.start=0,s.size=0,s.uvs=null,s.indices=null,s.vertexData=new Float32Array(1),s.vertexDirty=-1,s._transformID=-1,s._roundPixels=U.ROUND_PIXELS,s.batchUvs=null,s}return aa(r,e),Object.defineProperty(r.prototype,\"geometry\",{get:function(){return this._geometry},set:function(t){this._geometry!==t&&(this._geometry&&(this._geometry.refCount--,0===this._geometry.refCount&&this._geometry.dispose()),this._geometry=t,this._geometry&&this._geometry.refCount++,this.vertexDirty=-1)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"uvBuffer\",{get:function(){return this.geometry.buffers[1]},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"verticesBuffer\",{get:function(){return this.geometry.buffers[0]},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"material\",{get:function(){return this.shader},set:function(t){this.shader=t},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"blendMode\",{get:function(){return this.state.blendMode},set:function(t){this.state.blendMode=t},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"roundPixels\",{get:function(){return this._roundPixels},set:function(t){this._roundPixels!==t&&(this._transformID=-1),this._roundPixels=t},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"tint\",{get:function(){return\"tint\"in this.shader?this.shader.tint:null},set:function(t){this.shader.tint=t},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"texture\",{get:function(){return\"texture\"in this.shader?this.shader.texture:null},set:function(t){this.shader.texture=t},enumerable:!1,configurable:!0}),r.prototype._render=function(e){var i=this.geometry.buffers[0].data;this.shader.batchable&&this.drawMode===t.DRAW_MODES.TRIANGLES&&i.length<2*r.BATCHABLE_SIZE?this._renderToBatch(e):this._renderDefault(e)},r.prototype._renderDefault=function(t){var e=this.shader;e.alpha=this.worldAlpha,e.update&&e.update(),t.batch.flush(),e.uniforms.translationMatrix=this.transform.worldTransform.toArray(!0),t.shader.bind(e),t.state.set(this.state),t.geometry.bind(this.geometry,e),t.geometry.draw(this.drawMode,this.size,this.start,this.geometry.instanceCount)},r.prototype._renderToBatch=function(t){var e=this.geometry,r=this.shader;r.uvMatrix&&(r.uvMatrix.update(),this.calculateUvs()),this.calculateVertices(),this.indices=e.indexBuffer.data,this._tintRGB=r._tintRGB,this._texture=r.texture;var i=this.material.pluginName;t.batch.setObjectRenderer(t.plugins[i]),t.plugins[i].render(this)},r.prototype.calculateVertices=function(){var t=this.geometry.buffers[0],e=t.data,r=t._updateID;if(r!==this.vertexDirty||this._transformID!==this.transform._worldID){this._transformID=this.transform._worldID,this.vertexData.length!==e.length&&(this.vertexData=new Float32Array(e.length));for(var i=this.transform.worldTransform,n=i.a,o=i.b,s=i.c,a=i.d,h=i.tx,u=i.ty,l=this.vertexData,c=0;c<l.length/2;c++){var d=e[2*c],f=e[2*c+1];l[2*c]=n*d+s*f+h,l[2*c+1]=o*d+a*f+u}if(this._roundPixels){var p=U.RESOLUTION;for(c=0;c<l.length;++c)l[c]=Math.round((l[c]*p|0)/p)}this.vertexDirty=r}},r.prototype.calculateUvs=function(){var t=this.geometry.buffers[1],e=this.shader;e.uvMatrix.isSimple?this.uvs=t.data:(this.batchUvs||(this.batchUvs=new ha(t,e.uvMatrix)),this.batchUvs.update(),this.uvs=this.batchUvs.data)},r.prototype._calculateBounds=function(){this.calculateVertices(),this._bounds.addVertexData(this.vertexData,0,this.vertexData.length)},r.prototype.containsPoint=function(t){if(!this.getBounds().contains(t.x,t.y))return!1;this.worldTransform.applyInverse(t,ua);for(var e=this.geometry.getBuffer(\"aVertexPosition\").data,r=la.points,i=this.geometry.getIndex().data,n=i.length,o=4===this.drawMode?3:1,s=0;s+2<n;s+=o){var a=2*i[s],h=2*i[s+1],u=2*i[s+2];if(r[0]=e[a],r[1]=e[a+1],r[2]=e[h],r[3]=e[h+1],r[4]=e[u],r[5]=e[u+1],la.contains(ua.x,ua.y))return!0}return!1},r.prototype.destroy=function(t){e.prototype.destroy.call(this,t),this._cachedTexture&&(this._cachedTexture.destroy(),this._cachedTexture=null),this.geometry=null,this.shader=null,this.state=null,this.uvs=null,this.indices=null,this.vertexData=null},r.BATCHABLE_SIZE=100,r}(er),da=function(t){function e(e,r){var i=this,n={uSampler:e,alpha:1,uTextureMatrix:Ue.IDENTITY,uColor:new Float32Array([1,1,1,1])};return(r=Object.assign({tint:16777215,alpha:1,pluginName:\"batch\"},r)).uniforms&&Object.assign(n,r.uniforms),(i=t.call(this,r.program||wi.from(\"attribute vec2 aVertexPosition;\\nattribute vec2 aTextureCoord;\\n\\nuniform mat3 projectionMatrix;\\nuniform mat3 translationMatrix;\\nuniform mat3 uTextureMatrix;\\n\\nvarying vec2 vTextureCoord;\\n\\nvoid main(void)\\n{\\n gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\\n\\n vTextureCoord = (uTextureMatrix * vec3(aTextureCoord, 1.0)).xy;\\n}\\n\",\"varying vec2 vTextureCoord;\\nuniform vec4 uColor;\\n\\nuniform sampler2D uSampler;\\n\\nvoid main(void)\\n{\\n gl_FragColor = texture2D(uSampler, vTextureCoord) * uColor;\\n}\\n\"),n)||this)._colorDirty=!1,i.uvMatrix=new Bi(e),i.batchable=void 0===r.program,i.pluginName=r.pluginName,i.tint=r.tint,i.alpha=r.alpha,i}return aa(e,t),Object.defineProperty(e.prototype,\"texture\",{get:function(){return this.uniforms.uSampler},set:function(t){this.uniforms.uSampler!==t&&(!this.uniforms.uSampler.baseTexture.alphaMode!=!t.baseTexture.alphaMode&&(this._colorDirty=!0),this.uniforms.uSampler=t,this.uvMatrix.texture=t)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"alpha\",{get:function(){return this._alpha},set:function(t){t!==this._alpha&&(this._alpha=t,this._colorDirty=!0)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"tint\",{get:function(){return this._tint},set:function(t){t!==this._tint&&(this._tint=t,this._tintRGB=(t>>16)+(65280&t)+((255&t)<<16),this._colorDirty=!0)},enumerable:!1,configurable:!0}),e.prototype.update=function(){if(this._colorDirty){this._colorDirty=!1;var t=this.texture.baseTexture;se(this._tint,this._alpha,this.uniforms.uColor,t.alphaMode)}this.uvMatrix.update()&&(this.uniforms.uTextureMatrix=this.uvMatrix.mapCoord)},e}(Ci),fa=function(e){function r(r,i,n){var o=e.call(this)||this,s=new Ur(r),a=new Ur(i,!0),h=new Ur(n,!0,!0);return o.addAttribute(\"aVertexPosition\",s,2,!1,t.TYPES.FLOAT).addAttribute(\"aTextureCoord\",a,2,!1,t.TYPES.FLOAT).addIndex(h),o._updateId=-1,o}return aa(r,e),Object.defineProperty(r.prototype,\"vertexDirtyId\",{get:function(){return this.buffers[0]._updateID},enumerable:!1,configurable:!0}),r}(Yr),pa=function(t,e){return pa=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},pa(t,e)},_a=function(){this.info=[],this.common=[],this.page=[],this.char=[],this.kerning=[],this.distanceField=[]},va=function(){function t(){}return t.test=function(t){return\"string\"==typeof t&&0===t.indexOf(\"info face=\")},t.parse=function(t){var e=t.match(/^[a-z]+\\s+.+$/gm),r={info:[],common:[],page:[],char:[],chars:[],kerning:[],kernings:[],distanceField:[]};for(var i in e){var n=e[i].match(/^[a-z]+/gm)[0],o=e[i].match(/[a-zA-Z]+=([^\\s\"']+|\"([^\"]*)\")/gm),s={};for(var a in o){var h=o[a].split(\"=\"),u=h[0],l=h[1].replace(/\"/gm,\"\"),c=parseFloat(l),d=isNaN(c)?l:c;s[u]=d}r[n].push(s)}var f=new _a;return r.info.forEach((function(t){return f.info.push({face:t.face,size:parseInt(t.size,10)})})),r.common.forEach((function(t){return f.common.push({lineHeight:parseInt(t.lineHeight,10)})})),r.page.forEach((function(t){return f.page.push({id:parseInt(t.id,10),file:t.file})})),r.char.forEach((function(t){return f.char.push({id:parseInt(t.id,10),page:parseInt(t.page,10),x:parseInt(t.x,10),y:parseInt(t.y,10),width:parseInt(t.width,10),height:parseInt(t.height,10),xoffset:parseInt(t.xoffset,10),yoffset:parseInt(t.yoffset,10),xadvance:parseInt(t.xadvance,10)})})),r.kerning.forEach((function(t){return f.kerning.push({first:parseInt(t.first,10),second:parseInt(t.second,10),amount:parseInt(t.amount,10)})})),r.distanceField.forEach((function(t){return f.distanceField.push({distanceRange:parseInt(t.distanceRange,10),fieldType:t.fieldType})})),f},t}(),ma=function(){function t(){}return t.test=function(t){return t instanceof XMLDocument&&t.getElementsByTagName(\"page\").length&&null!==t.getElementsByTagName(\"info\")[0].getAttribute(\"face\")},t.parse=function(t){for(var e=new _a,r=t.getElementsByTagName(\"info\"),i=t.getElementsByTagName(\"common\"),n=t.getElementsByTagName(\"page\"),o=t.getElementsByTagName(\"char\"),s=t.getElementsByTagName(\"kerning\"),a=t.getElementsByTagName(\"distanceField\"),h=0;h<r.length;h++)e.info.push({face:r[h].getAttribute(\"face\"),size:parseInt(r[h].getAttribute(\"size\"),10)});for(h=0;h<i.length;h++)e.common.push({lineHeight:parseInt(i[h].getAttribute(\"lineHeight\"),10)});for(h=0;h<n.length;h++)e.page.push({id:parseInt(n[h].getAttribute(\"id\"),10)||0,file:n[h].getAttribute(\"file\")});for(h=0;h<o.length;h++){var u=o[h];e.char.push({id:parseInt(u.getAttribute(\"id\"),10),page:parseInt(u.getAttribute(\"page\"),10)||0,x:parseInt(u.getAttribute(\"x\"),10),y:parseInt(u.getAttribute(\"y\"),10),width:parseInt(u.getAttribute(\"width\"),10),height:parseInt(u.getAttribute(\"height\"),10),xoffset:parseInt(u.getAttribute(\"xoffset\"),10),yoffset:parseInt(u.getAttribute(\"yoffset\"),10),xadvance:parseInt(u.getAttribute(\"xadvance\"),10)})}for(h=0;h<s.length;h++)e.kerning.push({first:parseInt(s[h].getAttribute(\"first\"),10),second:parseInt(s[h].getAttribute(\"second\"),10),amount:parseInt(s[h].getAttribute(\"amount\"),10)});for(h=0;h<a.length;h++)e.distanceField.push({fieldType:a[h].getAttribute(\"fieldType\"),distanceRange:parseInt(a[h].getAttribute(\"distanceRange\"),10)});return e},t}(),ya=function(){function t(){}return t.test=function(t){if(\"string\"==typeof t&&t.indexOf(\"<font>\")>-1){var e=(new globalThis.DOMParser).parseFromString(t,\"text/xml\");return ma.test(e)}return!1},t.parse=function(t){var e=(new globalThis.DOMParser).parseFromString(t,\"text/xml\");return ma.parse(e)},t}(),ga=[va,ma,ya];function Ta(t){for(var e=0;e<ga.length;e++)if(ga[e].test(t))return ga[e];return null}function Ea(e,r,i,n,o,s,a){var h=i.text,u=i.fontProperties;r.translate(n,o),r.scale(s,s);var l=a.strokeThickness/2,c=-a.strokeThickness/2;if(r.font=a.toFontString(),r.lineWidth=a.strokeThickness,r.textBaseline=a.textBaseline,r.lineJoin=a.lineJoin,r.miterLimit=a.miterLimit,r.fillStyle=function(e,r,i,n,o,s){var a,h=i.fill;if(!Array.isArray(h))return h;if(1===h.length)return h[0];var u=i.dropShadow?i.dropShadowDistance:0,l=i.padding||0,c=e.width/n-u-2*l,d=e.height/n-u-2*l,f=h.slice(),p=i.fillGradientStops.slice();if(!p.length)for(var _=f.length+1,v=1;v<_;++v)p.push(v/_);if(f.unshift(h[0]),p.unshift(0),f.push(h[h.length-1]),p.push(1),i.fillGradientType===t.TEXT_GRADIENT.LINEAR_VERTICAL){a=r.createLinearGradient(c/2,l,c/2,d+l);var m=0,y=(s.fontProperties.fontSize+i.strokeThickness)/d;for(v=0;v<o.length;v++)for(var g=s.lineHeight*v,T=0;T<f.length;T++){var E=g/d+(\"number\"==typeof p[T]?p[T]:T/f.length)*y,b=Math.max(m,E);b=Math.min(b,1),a.addColorStop(b,f[T]),m=b}}else{a=r.createLinearGradient(l,d/2,c+l,d/2);var x=f.length+1,A=1;for(v=0;v<f.length;v++){var S;S=\"number\"==typeof p[v]?p[v]:A/x,a.addColorStop(S,f[v]),A++}}return a}(e,r,a,s,[h],i),r.strokeStyle=a.stroke,a.dropShadow){var d=a.dropShadowColor,f=$t(\"number\"==typeof d?d:ee(d)),p=a.dropShadowBlur*s,_=a.dropShadowDistance*s;r.shadowColor=\"rgba(\"+255*f[0]+\",\"+255*f[1]+\",\"+255*f[2]+\",\"+a.dropShadowAlpha+\")\",r.shadowBlur=p,r.shadowOffsetX=Math.cos(a.dropShadowAngle)*_,r.shadowOffsetY=Math.sin(a.dropShadowAngle)*_}else r.shadowColor=\"black\",r.shadowBlur=0,r.shadowOffsetX=0,r.shadowOffsetY=0;a.stroke&&a.strokeThickness&&r.strokeText(h,l,c+i.lineHeight-u.descent),a.fill&&r.fillText(h,l,c+i.lineHeight-u.descent),r.setTransform(1,0,0,1,0,0),r.fillStyle=\"rgba(0, 0, 0, 0)\"}function ba(t){return Array.from?Array.from(t):t.split(\"\")}function xa(t){return t.codePointAt?t.codePointAt(0):t.charCodeAt(0)}var Aa=function(){function e(e,r,i){var n,o,s=e.info[0],a=e.common[0],h=e.page[0],u=e.distanceField[0],l=Re(h.file),c={};this._ownsTextures=i,this.font=s.face,this.size=s.size,this.lineHeight=a.lineHeight/l,this.chars={},this.pageTextures=c;for(var d=0;d<e.page.length;d++){var f=e.page[d],p=f.id,_=f.file;c[p]=r instanceof Array?r[d]:r[_],(null==u?void 0:u.fieldType)&&\"none\"!==u.fieldType&&(c[p].baseTexture.alphaMode=t.ALPHA_MODES.NO_PREMULTIPLIED_ALPHA,c[p].baseTexture.mipmap=t.MIPMAP_MODES.OFF)}for(d=0;d<e.char.length;d++){var v=e.char[d],m=(p=v.id,v.page),y=e.char[d],g=y.x,T=y.y,E=y.width,b=y.height,x=y.xoffset,A=y.yoffset,S=y.xadvance;T/=l,E/=l,b/=l,x/=l,A/=l,S/=l;var R=new Ce((g/=l)+c[m].frame.x/l,T+c[m].frame.y/l,E,b);this.chars[p]={xOffset:x,yOffset:A,xAdvance:S,kerning:{},texture:new Nr(c[m].baseTexture,R),page:m}}for(d=0;d<e.kerning.length;d++){var O=e.kerning[d],M=O.first,P=O.second,I=O.amount;M/=l,P/=l,I/=l,this.chars[P]&&(this.chars[P].kerning[M]=I)}this.distanceFieldRange=null==u?void 0:u.distanceRange,this.distanceFieldType=null!==(o=null===(n=null==u?void 0:u.fieldType)||void 0===n?void 0:n.toLowerCase())&&void 0!==o?o:\"none\"}return e.prototype.destroy=function(){for(var t in this.chars)this.chars[t].texture.destroy(),this.chars[t].texture=null;for(var t in this.pageTextures)this._ownsTextures&&this.pageTextures[t].destroy(!0),this.pageTextures[t]=null;this.chars=null,this.pageTextures=null},e.install=function(t,r,i){var n;if(t instanceof _a)n=t;else{var o=Ta(t);if(!o)throw new Error(\"Unrecognized data format for font.\");n=o.parse(t)}r instanceof Nr&&(r=[r]);var s=new e(n,r,i);return e.available[s.font]=s,s},e.uninstall=function(t){var r=e.available[t];if(!r)throw new Error(\"No font found named '\"+t+\"'\");r.destroy(),delete e.available[t]},e.from=function(t,r,i){if(!t)throw new Error(\"[BitmapFont] Property `name` is required.\");var n=Object.assign({},e.defaultOptions,i),o=n.chars,s=n.padding,a=n.resolution,h=n.textureWidth,u=n.textureHeight,l=function(t){\"string\"==typeof t&&(t=[t]);for(var e=[],r=0,i=t.length;r<i;r++){var n=t[r];if(Array.isArray(n)){if(2!==n.length)throw new Error(\"[BitmapFont]: Invalid character range length, expecting 2 got \"+n.length+\".\");var o=n[0].charCodeAt(0),s=n[1].charCodeAt(0);if(s<o)throw new Error(\"[BitmapFont]: Invalid character range.\");for(var a=o,h=s;a<=h;a++)e.push(String.fromCharCode(a))}else e.push.apply(e,ba(n))}if(0===e.length)throw new Error(\"[BitmapFont]: Empty set when resolving characters.\");return e}(o),c=r instanceof Ms?r:new Ms(r),d=h,f=new _a;f.info[0]={face:c.fontFamily,size:c.fontSize},f.common[0]={lineHeight:c.fontSize};for(var p,_,v,m=0,y=0,g=0,T=[],E=0;E<l.length;E++){p||((p=U.ADAPTER.createCanvas()).width=h,p.height=u,_=p.getContext(\"2d\"),v=new mr(p,{resolution:a}),T.push(new Nr(v)),f.page.push({id:T.length-1,file:\"\"}));var b=l[E],x=Cs.measureText(b,c,!1,p),A=x.width,S=Math.ceil(x.height),R=Math.ceil((\"italic\"===c.fontStyle?2:1)*A);if(y>=u-S*a){if(0===y)throw new Error(\"[BitmapFont] textureHeight \"+u+\"px is too small (fontFamily: '\"+c.fontFamily+\"', fontSize: \"+c.fontSize+\"px, char: '\"+b+\"')\");--E,p=null,_=null,v=null,y=0,m=0,g=0}else if(g=Math.max(S+x.fontProperties.descent,g),R*a+m>=d){if(0===m)throw new Error(\"[BitmapFont] textureWidth \"+h+\"px is too small (fontFamily: '\"+c.fontFamily+\"', fontSize: \"+c.fontSize+\"px, char: '\"+b+\"')\");--E,y+=g*a,y=Math.ceil(y),m=0,g=0}else{Ea(p,_,x,m,y,a,c);var O=xa(x.text);f.char.push({id:O,page:T.length-1,x:m/a,y:y/a,width:R,height:S,xoffset:0,yoffset:0,xadvance:Math.ceil(A-(c.dropShadow?c.dropShadowDistance:0)-(c.stroke?c.strokeThickness:0))}),m+=(R+2*s)*a,m=Math.ceil(m)}}if(!(null==i?void 0:i.skipKerning)){E=0;for(var M=l.length;E<M;E++)for(var P=l[E],I=0;I<M;I++){var D=l[I],w=_.measureText(P).width,C=_.measureText(D).width,N=_.measureText(P+D).width-(w+C);N&&f.kerning.push({first:xa(P),second:xa(D),amount:N})}}var F=new e(f,T,!0);return void 0!==e.available[t]&&e.uninstall(t),e.available[t]=F,F},e.ALPHA=[[\"a\",\"z\"],[\"A\",\"Z\"],\" \"],e.NUMERIC=[[\"0\",\"9\"]],e.ALPHANUMERIC=[[\"a\",\"z\"],[\"A\",\"Z\"],[\"0\",\"9\"],\" \"],e.ASCII=[[\" \",\"~\"]],e.defaultOptions={resolution:1,textureWidth:512,textureHeight:512,padding:4,chars:e.ALPHANUMERIC},e.available={},e}(),Sa=[],Ra=[],Oa=[],Ma=function(e){function r(t,i){void 0===i&&(i={});var n=e.call(this)||this;n._tint=16777215;var o=Object.assign({},r.styleDefaults,i),s=o.align,a=o.tint,h=o.maxWidth,u=o.letterSpacing,l=o.fontName,c=o.fontSize;if(!Aa.available[l])throw new Error('Missing BitmapFont \"'+l+'\"');return n._activePagesMeshData=[],n._textWidth=0,n._textHeight=0,n._align=s,n._tint=a,n._font=void 0,n._fontName=l,n._fontSize=c,n.text=t,n._maxWidth=h,n._maxLineHeight=0,n._letterSpacing=u,n._anchor=new Ge((function(){n.dirty=!0}),n,0,0),n._roundPixels=U.ROUND_PIXELS,n.dirty=!0,n._resolution=U.RESOLUTION,n._autoResolution=!0,n._textureCache={},n}return function(t,e){function r(){this.constructor=t}pa(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}(r,e),r.prototype.updateText=function(){for(var e,r=Aa.available[this._fontName],i=this.fontSize,n=i/r.size,o=new De,s=[],a=[],h=[],u=ba(this._text.replace(/(?:\\r\\n|\\r)/g,\"\\n\")||\" \"),l=this._maxWidth*r.size/i,c=\"none\"===r.distanceFieldType?Sa:Ra,d=null,f=0,p=0,_=0,v=-1,m=0,y=0,g=0,T=0,E=0;E<u.length;E++){var b=xa(j=u[E]);if(/(?:\\s)/.test(j)&&(v=E,m=f,T++),\"\\r\"!==j&&\"\\n\"!==j){var x=r.chars[b];if(x){d&&x.kerning[d]&&(o.x+=x.kerning[d]);var A=Oa.pop()||{texture:Nr.EMPTY,line:0,charCode:0,prevSpaces:0,position:new De};A.texture=x.texture,A.line=_,A.charCode=b,A.position.x=o.x+x.xOffset+this._letterSpacing/2,A.position.y=o.y+x.yOffset,A.prevSpaces=T,s.push(A),f=A.position.x+Math.max(x.xAdvance-x.xOffset,x.texture.orig.width),o.x+=x.xAdvance+this._letterSpacing,g=Math.max(g,x.yOffset+x.texture.height),d=b,-1!==v&&l>0&&o.x>l&&(fe(s,1+v-++y,1+E-v),E=v,v=-1,a.push(m),h.push(s.length>0?s[s.length-1].prevSpaces:0),p=Math.max(p,m),_++,o.x=0,o.y+=r.lineHeight,d=null,T=0)}}else a.push(f),h.push(-1),p=Math.max(p,f),++_,++y,o.x=0,o.y+=r.lineHeight,d=null,T=0}var S=u[u.length-1];\"\\r\"!==S&&\"\\n\"!==S&&(/(?:\\s)/.test(S)&&(f=m),a.push(f),p=Math.max(p,f),h.push(-1));var R=[];for(E=0;E<=_;E++){var O=0;\"right\"===this._align?O=p-a[E]:\"center\"===this._align?O=(p-a[E])/2:\"justify\"===this._align&&(O=h[E]<0?0:(p-a[E])/h[E]),R.push(O)}var M=s.length,P={},I=[],D=this._activePagesMeshData;for(c.push.apply(c,D),E=0;E<M;E++){var w=(Y=s[E].texture).baseTexture.uid;if(!P[w]){if(!(Q=c.pop())){var C=new fa,N=void 0,F=void 0;\"none\"===r.distanceFieldType?(N=new da(Nr.EMPTY),F=t.BLEND_MODES.NORMAL):(N=new da(Nr.EMPTY,{program:wi.from(\"// Mesh material default fragment\\r\\nattribute vec2 aVertexPosition;\\r\\nattribute vec2 aTextureCoord;\\r\\n\\r\\nuniform mat3 projectionMatrix;\\r\\nuniform mat3 translationMatrix;\\r\\nuniform mat3 uTextureMatrix;\\r\\n\\r\\nvarying vec2 vTextureCoord;\\r\\n\\r\\nvoid main(void)\\r\\n{\\r\\n gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);\\r\\n\\r\\n vTextureCoord = (uTextureMatrix * vec3(aTextureCoord, 1.0)).xy;\\r\\n}\\r\\n\",\"// Pixi texture info\\r\\nvarying vec2 vTextureCoord;\\r\\nuniform sampler2D uSampler;\\r\\n\\r\\n// Tint\\r\\nuniform vec4 uColor;\\r\\n\\r\\n// on 2D applications fwidth is screenScale / glyphAtlasScale * distanceFieldRange\\r\\nuniform float uFWidth;\\r\\n\\r\\nvoid main(void) {\\r\\n\\r\\n // To stack MSDF and SDF we need a non-pre-multiplied-alpha texture.\\r\\n vec4 texColor = texture2D(uSampler, vTextureCoord);\\r\\n\\r\\n // MSDF\\r\\n float median = texColor.r + texColor.g + texColor.b -\\r\\n min(texColor.r, min(texColor.g, texColor.b)) -\\r\\n max(texColor.r, max(texColor.g, texColor.b));\\r\\n // SDF\\r\\n median = min(median, texColor.a);\\r\\n\\r\\n float screenPxDistance = uFWidth * (median - 0.5);\\r\\n float alpha = clamp(screenPxDistance + 0.5, 0.0, 1.0);\\r\\n if (median < 0.01) {\\r\\n alpha = 0.0;\\r\\n } else if (median > 0.99) {\\r\\n alpha = 1.0;\\r\\n }\\r\\n\\r\\n // NPM Textures, NPM outputs\\r\\n gl_FragColor = vec4(uColor.rgb, uColor.a * alpha);\\r\\n\\r\\n}\\r\\n\"),uniforms:{uFWidth:0}}),F=t.BLEND_MODES.NORMAL_NPM);var L=new ca(C,N);L.blendMode=F,Q={index:0,indexCount:0,vertexCount:0,uvsCount:0,total:0,mesh:L,vertices:null,uvs:null,indices:null}}Q.index=0,Q.indexCount=0,Q.vertexCount=0,Q.uvsCount=0,Q.total=0;var B=this._textureCache;B[w]=B[w]||new Nr(Y.baseTexture),Q.mesh.texture=B[w],Q.mesh.tint=this._tint,I.push(Q),P[w]=Q}P[w].total++}for(E=0;E<D.length;E++)-1===I.indexOf(D[E])&&this.removeChild(D[E].mesh);for(E=0;E<I.length;E++)I[E].mesh.parent!==this&&this.addChild(I[E].mesh);for(var E in this._activePagesMeshData=I,P){var G=(Q=P[E]).total;if(!((null===(e=Q.indices)||void 0===e?void 0:e.length)>6*G)||Q.vertices.length<2*ca.BATCHABLE_SIZE)Q.vertices=new Float32Array(8*G),Q.uvs=new Float32Array(8*G),Q.indices=new Uint16Array(6*G);else for(var U=Q.total,k=Q.vertices,X=4*U*2;X<k.length;X++)k[X]=0;Q.mesh.size=6*G}for(E=0;E<M;E++){var j,H=(j=s[E]).position.x+R[j.line]*(\"justify\"===this._align?j.prevSpaces:1);this._roundPixels&&(H=Math.round(H));var Y,V=H*n,z=j.position.y*n,W=P[(Y=j.texture).baseTexture.uid],q=Y.frame,K=Y._uvs,Z=W.index++;W.indices[6*Z+0]=0+4*Z,W.indices[6*Z+1]=1+4*Z,W.indices[6*Z+2]=2+4*Z,W.indices[6*Z+3]=0+4*Z,W.indices[6*Z+4]=2+4*Z,W.indices[6*Z+5]=3+4*Z,W.vertices[8*Z+0]=V,W.vertices[8*Z+1]=z,W.vertices[8*Z+2]=V+q.width*n,W.vertices[8*Z+3]=z,W.vertices[8*Z+4]=V+q.width*n,W.vertices[8*Z+5]=z+q.height*n,W.vertices[8*Z+6]=V,W.vertices[8*Z+7]=z+q.height*n,W.uvs[8*Z+0]=K.x0,W.uvs[8*Z+1]=K.y0,W.uvs[8*Z+2]=K.x1,W.uvs[8*Z+3]=K.y1,W.uvs[8*Z+4]=K.x2,W.uvs[8*Z+5]=K.y2,W.uvs[8*Z+6]=K.x3,W.uvs[8*Z+7]=K.y3}for(var E in this._textWidth=p*n,this._textHeight=(o.y+r.lineHeight)*n,P){var Q=P[E];if(0!==this.anchor.x||0!==this.anchor.y)for(var J=0,$=this._textWidth*this.anchor.x,tt=this._textHeight*this.anchor.y,et=0;et<Q.total;et++)Q.vertices[J++]-=$,Q.vertices[J++]-=tt,Q.vertices[J++]-=$,Q.vertices[J++]-=tt,Q.vertices[J++]-=$,Q.vertices[J++]-=tt,Q.vertices[J++]-=$,Q.vertices[J++]-=tt;this._maxLineHeight=g*n;var rt=Q.mesh.geometry.getBuffer(\"aVertexPosition\"),it=Q.mesh.geometry.getBuffer(\"aTextureCoord\"),nt=Q.mesh.geometry.getIndex();rt.data=Q.vertices,it.data=Q.uvs,nt.data=Q.indices,rt.update(),it.update(),nt.update()}for(E=0;E<s.length;E++)Oa.push(s[E]);this._font=r,this.dirty=!1},r.prototype.updateTransform=function(){this.validate(),this.containerUpdateTransform()},r.prototype._render=function(t){this._autoResolution&&this._resolution!==t.resolution&&(this._resolution=t.resolution,this.dirty=!0);var r=Aa.available[this._fontName],i=r.distanceFieldRange,n=r.distanceFieldType,o=r.size;if(\"none\"!==n)for(var s=this.worldTransform,a=s.a,h=s.b,u=s.c,l=s.d,c=Math.sqrt(a*a+h*h),d=Math.sqrt(u*u+l*l),f=(Math.abs(c)+Math.abs(d))/2,p=this.fontSize/o,_=0,v=this._activePagesMeshData;_<v.length;_++)v[_].mesh.shader.uniforms.uFWidth=f*i*p*this._resolution;e.prototype._render.call(this,t)},r.prototype.getLocalBounds=function(){return this.validate(),e.prototype.getLocalBounds.call(this)},r.prototype.validate=function(){var t=Aa.available[this._fontName];if(!t)throw new Error('Missing BitmapFont \"'+this._fontName+'\"');this._font!==t&&(this.dirty=!0),this.dirty&&this.updateText()},Object.defineProperty(r.prototype,\"tint\",{get:function(){return this._tint},set:function(t){if(this._tint!==t){this._tint=t;for(var e=0;e<this._activePagesMeshData.length;e++)this._activePagesMeshData[e].mesh.tint=t}},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"align\",{get:function(){return this._align},set:function(t){this._align!==t&&(this._align=t,this.dirty=!0)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"fontName\",{get:function(){return this._fontName},set:function(t){if(!Aa.available[t])throw new Error('Missing BitmapFont \"'+t+'\"');this._fontName!==t&&(this._fontName=t,this.dirty=!0)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"fontSize\",{get:function(){var t;return null!==(t=this._fontSize)&&void 0!==t?t:Aa.available[this._fontName].size},set:function(t){this._fontSize!==t&&(this._fontSize=t,this.dirty=!0)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"anchor\",{get:function(){return this._anchor},set:function(t){\"number\"==typeof t?this._anchor.set(t):this._anchor.copyFrom(t)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"text\",{get:function(){return this._text},set:function(t){t=String(null==t?\"\":t),this._text!==t&&(this._text=t,this.dirty=!0)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"maxWidth\",{get:function(){return this._maxWidth},set:function(t){this._maxWidth!==t&&(this._maxWidth=t,this.dirty=!0)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"maxLineHeight\",{get:function(){return this.validate(),this._maxLineHeight},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"textWidth\",{get:function(){return this.validate(),this._textWidth},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"letterSpacing\",{get:function(){return this._letterSpacing},set:function(t){this._letterSpacing!==t&&(this._letterSpacing=t,this.dirty=!0)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"roundPixels\",{get:function(){return this._roundPixels},set:function(t){t!==this._roundPixels&&(this._roundPixels=t,this.dirty=!0)},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"textHeight\",{get:function(){return this.validate(),this._textHeight},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"resolution\",{get:function(){return this._resolution},set:function(t){this._autoResolution=!1,this._resolution!==t&&(this._resolution=t,this.dirty=!0)},enumerable:!1,configurable:!0}),r.prototype.destroy=function(t){var r=this._textureCache,i=\"none\"===Aa.available[this._fontName].distanceFieldType?Sa:Ra;i.push.apply(i,this._activePagesMeshData);for(var n=0,o=this._activePagesMeshData;n<o.length;n++){var s=o[n];this.removeChild(s.mesh)}for(var a in this._activePagesMeshData=[],i.filter((function(t){return r[t.mesh.texture.baseTexture.uid]})).forEach((function(t){t.mesh.texture=Nr.EMPTY})),r)r[a].destroy(),delete r[a];this._font=null,this._textureCache=null,e.prototype.destroy.call(this,t)},r.styleDefaults={align:\"left\",tint:16777215,maxWidth:0,letterSpacing:0},r}(er),Pa=function(){function e(){}return e.add=function(){t.LoaderResource.setExtensionXhrType(\"fnt\",t.LoaderResource.XHR_RESPONSE_TYPE.TEXT)},e.use=function(r,i){var n=Ta(r.data);if(n)for(var o=e.getBaseUrl(this,r),s=n.parse(r.data),a={},h=function(t){a[t.metadata.pageFile]=t.texture,Object.keys(a).length===s.page.length&&(r.bitmapFont=Aa.install(s,a,!0),i())},u=0;u<s.page.length;++u){var l=s.page[u].file,c=o+l,d=!1;for(var f in this.resources){var p=this.resources[f];if(p.url===c){p.metadata.pageFile=l,p.texture?h(p):p.onAfterMiddleware.add(h),d=!0;break}}if(!d){var _={crossOrigin:r.crossOrigin,loadType:t.LoaderResource.LOAD_TYPE.IMAGE,metadata:Object.assign({pageFile:l},r.metadata.imageMetadata),parentResource:r};this.add(c,_,h)}}else i()},e.getBaseUrl=function(t,r){var i=r.isDataUrl?\"\":e.dirname(r.url);return r.isDataUrl&&(\".\"===i&&(i=\"\"),t.baseUrl&&i&&\"/\"===t.baseUrl.charAt(t.baseUrl.length-1)&&(i+=\"/\")),(i=i.replace(t.baseUrl,\"\"))&&\"/\"!==i.charAt(i.length-1)&&(i+=\"/\"),i},e.dirname=function(t){var e=t.replace(/\\\\/g,\"/\").replace(/\\/$/,\"\").replace(/\\/[^\\/]*$/,\"\");return e===t?\".\":\"\"===e?\"/\":e},e.extension=t.ExtensionType.Loader,e}(),Ia=function(t,e){return Ia=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},Ia(t,e)},Da=function(t){function e(e){void 0===e&&(e=1);var r=t.call(this,yn,\"varying vec2 vTextureCoord;\\n\\nuniform sampler2D uSampler;\\nuniform float uAlpha;\\n\\nvoid main(void)\\n{\\n gl_FragColor = texture2D(uSampler, vTextureCoord) * uAlpha;\\n}\\n\",{uAlpha:1})||this;return r.alpha=e,r}return function(t,e){function r(){this.constructor=t}Ia(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}(e,t),Object.defineProperty(e.prototype,\"alpha\",{get:function(){return this.uniforms.uAlpha},set:function(t){this.uniforms.uAlpha=t},enumerable:!1,configurable:!0}),e}(Fi),wa=function(t,e){return wa=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},wa(t,e)};function Ca(t,e){function r(){this.constructor=t}wa(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}var Na={5:[.153388,.221461,.250301],7:[.071303,.131514,.189879,.214607],9:[.028532,.067234,.124009,.179044,.20236],11:[.0093,.028002,.065984,.121703,.175713,.198596],13:[.002406,.009255,.027867,.065666,.121117,.174868,.197641],15:[489e-6,.002403,.009246,.02784,.065602,.120999,.174697,.197448]},Fa=[\"varying vec2 vBlurTexCoords[%size%];\",\"uniform sampler2D uSampler;\",\"void main(void)\",\"{\",\" gl_FragColor = vec4(0.0);\",\" %blur%\",\"}\"].join(\"\\n\"),La=function(e){function r(t,r,i,n,o){void 0===r&&(r=8),void 0===i&&(i=4),void 0===n&&(n=U.FILTER_RESOLUTION),void 0===o&&(o=5);var s=this,a=function(t,e){var r,i=Math.ceil(t/2),n=\"\\n attribute vec2 aVertexPosition;\\n\\n uniform mat3 projectionMatrix;\\n\\n uniform float strength;\\n\\n varying vec2 vBlurTexCoords[%size%];\\n\\n uniform vec4 inputSize;\\n uniform vec4 outputFrame;\\n\\n vec4 filterVertexPosition( void )\\n {\\n vec2 position = aVertexPosition * max(outputFrame.zw, vec2(0.)) + outputFrame.xy;\\n\\n return vec4((projectionMatrix * vec3(position, 1.0)).xy, 0.0, 1.0);\\n }\\n\\n vec2 filterTextureCoord( void )\\n {\\n return aVertexPosition * (outputFrame.zw * inputSize.zw);\\n }\\n\\n void main(void)\\n {\\n gl_Position = filterVertexPosition();\\n\\n vec2 textureCoord = filterTextureCoord();\\n %blur%\\n }\",o=\"\";r=e?\"vBlurTexCoords[%index%] = textureCoord + vec2(%sampleIndex% * strength, 0.0);\":\"vBlurTexCoords[%index%] = textureCoord + vec2(0.0, %sampleIndex% * strength);\";for(var s=0;s<t;s++){var a=r.replace(\"%index%\",s.toString());o+=a=a.replace(\"%sampleIndex%\",s-(i-1)+\".0\"),o+=\"\\n\"}return(n=n.replace(\"%blur%\",o)).replace(\"%size%\",t.toString())}(o,t),h=function(t){for(var e,r=Na[t],i=r.length,n=Fa,o=\"\",s=0;s<t;s++){var a=\"gl_FragColor += texture2D(uSampler, vBlurTexCoords[%index%]) * %value%;\".replace(\"%index%\",s.toString());e=s,s>=i&&(e=t-s-1),o+=a=a.replace(\"%value%\",r[e].toString()),o+=\"\\n\"}return(n=n.replace(\"%blur%\",o)).replace(\"%size%\",t.toString())}(o);return(s=e.call(this,a,h)||this).horizontal=t,s.resolution=n,s._quality=0,s.quality=i,s.blur=r,s}return Ca(r,e),r.prototype.apply=function(e,r,i,n){if(i?this.horizontal?this.uniforms.strength=1/i.width*(i.width/r.width):this.uniforms.strength=1/i.height*(i.height/r.height):this.horizontal?this.uniforms.strength=1/e.renderer.width*(e.renderer.width/r.width):this.uniforms.strength=1/e.renderer.height*(e.renderer.height/r.height),this.uniforms.strength*=this.strength,this.uniforms.strength/=this.passes,1===this.passes)e.applyFilter(this,r,i,n);else{var o=e.getFilterTexture(),s=e.renderer,a=r,h=o;this.state.blend=!1,e.applyFilter(this,a,h,t.CLEAR_MODES.CLEAR);for(var u=1;u<this.passes-1;u++){e.bindAndClear(a,t.CLEAR_MODES.BLIT),this.uniforms.uSampler=h;var l=h;h=a,a=l,s.shader.bind(this),s.geometry.draw(5)}this.state.blend=!0,e.applyFilter(this,h,i,n),e.returnFilterTexture(o)}},Object.defineProperty(r.prototype,\"blur\",{get:function(){return this.strength},set:function(t){this.padding=1+2*Math.abs(t),this.strength=t},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"quality\",{get:function(){return this._quality},set:function(t){this._quality=t,this.passes=t},enumerable:!1,configurable:!0}),r}(Fi),Ba=function(e){function r(t,r,i,n){void 0===t&&(t=8),void 0===r&&(r=4),void 0===i&&(i=U.FILTER_RESOLUTION),void 0===n&&(n=5);var o=e.call(this)||this;return o.blurXFilter=new La(!0,t,r,i,n),o.blurYFilter=new La(!1,t,r,i,n),o.resolution=i,o.quality=r,o.blur=t,o.repeatEdgePixels=!1,o}return Ca(r,e),r.prototype.apply=function(e,r,i,n){var o=Math.abs(this.blurXFilter.strength),s=Math.abs(this.blurYFilter.strength);if(o&&s){var a=e.getFilterTexture();this.blurXFilter.apply(e,r,a,t.CLEAR_MODES.CLEAR),this.blurYFilter.apply(e,a,i,n),e.returnFilterTexture(a)}else s?this.blurYFilter.apply(e,r,i,n):this.blurXFilter.apply(e,r,i,n)},r.prototype.updatePadding=function(){this._repeatEdgePixels?this.padding=0:this.padding=2*Math.max(Math.abs(this.blurXFilter.strength),Math.abs(this.blurYFilter.strength))},Object.defineProperty(r.prototype,\"blur\",{get:function(){return this.blurXFilter.blur},set:function(t){this.blurXFilter.blur=this.blurYFilter.blur=t,this.updatePadding()},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"quality\",{get:function(){return this.blurXFilter.quality},set:function(t){this.blurXFilter.quality=this.blurYFilter.quality=t},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"blurX\",{get:function(){return this.blurXFilter.blur},set:function(t){this.blurXFilter.blur=t,this.updatePadding()},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"blurY\",{get:function(){return this.blurYFilter.blur},set:function(t){this.blurYFilter.blur=t,this.updatePadding()},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"blendMode\",{get:function(){return this.blurYFilter.blendMode},set:function(t){this.blurYFilter.blendMode=t},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"repeatEdgePixels\",{get:function(){return this._repeatEdgePixels},set:function(t){this._repeatEdgePixels=t,this.updatePadding()},enumerable:!1,configurable:!0}),r}(Fi),Ga=function(t,e){return Ga=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},Ga(t,e)},Ua=function(t){function e(){var e=this,r={m:new Float32Array([1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0]),uAlpha:1};return(e=t.call(this,gn,\"varying vec2 vTextureCoord;\\nuniform sampler2D uSampler;\\nuniform float m[20];\\nuniform float uAlpha;\\n\\nvoid main(void)\\n{\\n vec4 c = texture2D(uSampler, vTextureCoord);\\n\\n if (uAlpha == 0.0) {\\n gl_FragColor = c;\\n return;\\n }\\n\\n // Un-premultiply alpha before applying the color matrix. See issue #3539.\\n if (c.a > 0.0) {\\n c.rgb /= c.a;\\n }\\n\\n vec4 result;\\n\\n result.r = (m[0] * c.r);\\n result.r += (m[1] * c.g);\\n result.r += (m[2] * c.b);\\n result.r += (m[3] * c.a);\\n result.r += m[4];\\n\\n result.g = (m[5] * c.r);\\n result.g += (m[6] * c.g);\\n result.g += (m[7] * c.b);\\n result.g += (m[8] * c.a);\\n result.g += m[9];\\n\\n result.b = (m[10] * c.r);\\n result.b += (m[11] * c.g);\\n result.b += (m[12] * c.b);\\n result.b += (m[13] * c.a);\\n result.b += m[14];\\n\\n result.a = (m[15] * c.r);\\n result.a += (m[16] * c.g);\\n result.a += (m[17] * c.b);\\n result.a += (m[18] * c.a);\\n result.a += m[19];\\n\\n vec3 rgb = mix(c.rgb, result.rgb, uAlpha);\\n\\n // Premultiply alpha again.\\n rgb *= result.a;\\n\\n gl_FragColor = vec4(rgb, result.a);\\n}\\n\",r)||this).alpha=1,e}return function(t,e){function r(){this.constructor=t}Ga(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}(e,t),e.prototype._loadMatrix=function(t,e){void 0===e&&(e=!1);var r=t;e&&(this._multiply(r,this.uniforms.m,t),r=this._colorMatrix(r)),this.uniforms.m=r},e.prototype._multiply=function(t,e,r){return t[0]=e[0]*r[0]+e[1]*r[5]+e[2]*r[10]+e[3]*r[15],t[1]=e[0]*r[1]+e[1]*r[6]+e[2]*r[11]+e[3]*r[16],t[2]=e[0]*r[2]+e[1]*r[7]+e[2]*r[12]+e[3]*r[17],t[3]=e[0]*r[3]+e[1]*r[8]+e[2]*r[13]+e[3]*r[18],t[4]=e[0]*r[4]+e[1]*r[9]+e[2]*r[14]+e[3]*r[19]+e[4],t[5]=e[5]*r[0]+e[6]*r[5]+e[7]*r[10]+e[8]*r[15],t[6]=e[5]*r[1]+e[6]*r[6]+e[7]*r[11]+e[8]*r[16],t[7]=e[5]*r[2]+e[6]*r[7]+e[7]*r[12]+e[8]*r[17],t[8]=e[5]*r[3]+e[6]*r[8]+e[7]*r[13]+e[8]*r[18],t[9]=e[5]*r[4]+e[6]*r[9]+e[7]*r[14]+e[8]*r[19]+e[9],t[10]=e[10]*r[0]+e[11]*r[5]+e[12]*r[10]+e[13]*r[15],t[11]=e[10]*r[1]+e[11]*r[6]+e[12]*r[11]+e[13]*r[16],t[12]=e[10]*r[2]+e[11]*r[7]+e[12]*r[12]+e[13]*r[17],t[13]=e[10]*r[3]+e[11]*r[8]+e[12]*r[13]+e[13]*r[18],t[14]=e[10]*r[4]+e[11]*r[9]+e[12]*r[14]+e[13]*r[19]+e[14],t[15]=e[15]*r[0]+e[16]*r[5]+e[17]*r[10]+e[18]*r[15],t[16]=e[15]*r[1]+e[16]*r[6]+e[17]*r[11]+e[18]*r[16],t[17]=e[15]*r[2]+e[16]*r[7]+e[17]*r[12]+e[18]*r[17],t[18]=e[15]*r[3]+e[16]*r[8]+e[17]*r[13]+e[18]*r[18],t[19]=e[15]*r[4]+e[16]*r[9]+e[17]*r[14]+e[18]*r[19]+e[19],t},e.prototype._colorMatrix=function(t){var e=new Float32Array(t);return e[4]/=255,e[9]/=255,e[14]/=255,e[19]/=255,e},e.prototype.brightness=function(t,e){var r=[t,0,0,0,0,0,t,0,0,0,0,0,t,0,0,0,0,0,1,0];this._loadMatrix(r,e)},e.prototype.tint=function(t,e){var r=[(t>>16&255)/255,0,0,0,0,0,(t>>8&255)/255,0,0,0,0,0,(255&t)/255,0,0,0,0,0,1,0];this._loadMatrix(r,e)},e.prototype.greyscale=function(t,e){var r=[t,t,t,0,0,t,t,t,0,0,t,t,t,0,0,0,0,0,1,0];this._loadMatrix(r,e)},e.prototype.blackAndWhite=function(t){this._loadMatrix([.3,.6,.1,0,0,.3,.6,.1,0,0,.3,.6,.1,0,0,0,0,0,1,0],t)},e.prototype.hue=function(t,e){t=(t||0)/180*Math.PI;var r=Math.cos(t),i=Math.sin(t),n=1/3,o=(0,Math.sqrt)(n),s=[r+(1-r)*n,n*(1-r)-o*i,n*(1-r)+o*i,0,0,n*(1-r)+o*i,r+n*(1-r),n*(1-r)-o*i,0,0,n*(1-r)-o*i,n*(1-r)+o*i,r+n*(1-r),0,0,0,0,0,1,0];this._loadMatrix(s,e)},e.prototype.contrast=function(t,e){var r=(t||0)+1,i=-.5*(r-1),n=[r,0,0,0,i,0,r,0,0,i,0,0,r,0,i,0,0,0,1,0];this._loadMatrix(n,e)},e.prototype.saturate=function(t,e){void 0===t&&(t=0);var r=2*t/3+1,i=-.5*(r-1),n=[r,i,i,0,0,i,r,i,0,0,i,i,r,0,0,0,0,0,1,0];this._loadMatrix(n,e)},e.prototype.desaturate=function(){this.saturate(-1)},e.prototype.negative=function(t){this._loadMatrix([-1,0,0,1,0,0,-1,0,1,0,0,0,-1,1,0,0,0,0,1,0],t)},e.prototype.sepia=function(t){this._loadMatrix([.393,.7689999,.18899999,0,0,.349,.6859999,.16799999,0,0,.272,.5339999,.13099999,0,0,0,0,0,1,0],t)},e.prototype.technicolor=function(t){this._loadMatrix([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],t)},e.prototype.polaroid=function(t){this._loadMatrix([1.438,-.062,-.062,0,0,-.122,1.378,-.122,0,0,-.016,-.016,1.483,0,0,0,0,0,1,0],t)},e.prototype.toBGR=function(t){this._loadMatrix([0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,1,0],t)},e.prototype.kodachrome=function(t){this._loadMatrix([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],t)},e.prototype.browni=function(t){this._loadMatrix([.5997023498159715,.34553243048391263,-.2708298674538042,0,47.43192855600873,-.037703249837783157,.8609577587992641,.15059552388459913,0,-36.96841498319127,.24113635128153335,-.07441037908422492,.44972182064877153,0,-7.562075277591283,0,0,0,1,0],t)},e.prototype.vintage=function(t){this._loadMatrix([.6279345635605994,.3202183420819367,-.03965408211312453,0,9.651285835294123,.02578397704808868,.6441188644374771,.03259127616149294,0,7.462829176470591,.0466055556782719,-.0851232987247891,.5241648018700465,0,5.159190588235296,0,0,0,1,0],t)},e.prototype.colorTone=function(t,e,r,i,n){var o=((r=r||16770432)>>16&255)/255,s=(r>>8&255)/255,a=(255&r)/255,h=((i=i||3375104)>>16&255)/255,u=(i>>8&255)/255,l=(255&i)/255,c=[.3,.59,.11,0,0,o,s,a,t=t||.2,0,h,u,l,e=e||.15,0,o-h,s-u,a-l,0,0];this._loadMatrix(c,n)},e.prototype.night=function(t,e){var r=[-2*(t=t||.1),-t,0,0,0,-t,0,t,0,0,0,t,2*t,0,0,0,0,0,1,0];this._loadMatrix(r,e)},e.prototype.predator=function(t,e){var r=[11.224130630493164*t,-4.794486999511719*t,-2.8746118545532227*t,0*t,.40342438220977783*t,-3.6330697536468506*t,9.193157196044922*t,-2.951810836791992*t,0*t,-1.316135048866272*t,-3.2184197902679443*t,-4.2375030517578125*t,7.476448059082031*t,0*t,.8044459223747253*t,0,0,0,1,0];this._loadMatrix(r,e)},e.prototype.lsd=function(t){this._loadMatrix([2,-.4,.5,0,0,-.5,2,-.4,0,0,-.4,-.5,3,0,0,0,0,0,1,0],t)},e.prototype.reset=function(){this._loadMatrix([1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0],!1)},Object.defineProperty(e.prototype,\"matrix\",{get:function(){return this.uniforms.m},set:function(t){this.uniforms.m=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"alpha\",{get:function(){return this.uniforms.uAlpha},set:function(t){this.uniforms.uAlpha=t},enumerable:!1,configurable:!0}),e}(Fi);Ua.prototype.grayscale=Ua.prototype.greyscale;var ka=function(t,e){return ka=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},ka(t,e)},Xa=function(t){function e(e,r){var i=this,n=new Ue;return e.renderable=!1,(i=t.call(this,\"attribute vec2 aVertexPosition;\\n\\nuniform mat3 projectionMatrix;\\nuniform mat3 filterMatrix;\\n\\nvarying vec2 vTextureCoord;\\nvarying vec2 vFilterCoord;\\n\\nuniform vec4 inputSize;\\nuniform vec4 outputFrame;\\n\\nvec4 filterVertexPosition( void )\\n{\\n vec2 position = aVertexPosition * max(outputFrame.zw, vec2(0.)) + outputFrame.xy;\\n\\n return vec4((projectionMatrix * vec3(position, 1.0)).xy, 0.0, 1.0);\\n}\\n\\nvec2 filterTextureCoord( void )\\n{\\n return aVertexPosition * (outputFrame.zw * inputSize.zw);\\n}\\n\\nvoid main(void)\\n{\\n\\tgl_Position = filterVertexPosition();\\n\\tvTextureCoord = filterTextureCoord();\\n\\tvFilterCoord = ( filterMatrix * vec3( vTextureCoord, 1.0) ).xy;\\n}\\n\",\"varying vec2 vFilterCoord;\\nvarying vec2 vTextureCoord;\\n\\nuniform vec2 scale;\\nuniform mat2 rotation;\\nuniform sampler2D uSampler;\\nuniform sampler2D mapSampler;\\n\\nuniform highp vec4 inputSize;\\nuniform vec4 inputClamp;\\n\\nvoid main(void)\\n{\\n vec4 map = texture2D(mapSampler, vFilterCoord);\\n\\n map -= 0.5;\\n map.xy = scale * inputSize.zw * (rotation * map.xy);\\n\\n gl_FragColor = texture2D(uSampler, clamp(vec2(vTextureCoord.x + map.x, vTextureCoord.y + map.y), inputClamp.xy, inputClamp.zw));\\n}\\n\",{mapSampler:e._texture,filterMatrix:n,scale:{x:1,y:1},rotation:new Float32Array([1,0,0,1])})||this).maskSprite=e,i.maskMatrix=n,null==r&&(r=20),i.scale=new De(r,r),i}return function(t,e){function r(){this.constructor=t}ka(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}(e,t),e.prototype.apply=function(t,e,r,i){this.uniforms.filterMatrix=t.calculateSpriteMatrix(this.maskMatrix,this.maskSprite),this.uniforms.scale.x=this.scale.x,this.uniforms.scale.y=this.scale.y;var n=this.maskSprite.worldTransform,o=Math.sqrt(n.a*n.a+n.b*n.b),s=Math.sqrt(n.c*n.c+n.d*n.d);0!==o&&0!==s&&(this.uniforms.rotation[0]=n.a/o,this.uniforms.rotation[1]=n.b/o,this.uniforms.rotation[2]=n.c/s,this.uniforms.rotation[3]=n.d/s),t.applyFilter(this,e,r,i)},Object.defineProperty(e.prototype,\"map\",{get:function(){return this.uniforms.mapSampler},set:function(t){this.uniforms.mapSampler=t},enumerable:!1,configurable:!0}),e}(Fi),ja=function(t,e){return ja=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},ja(t,e)},Ha=function(t){function e(){return t.call(this,\"\\nattribute vec2 aVertexPosition;\\n\\nuniform mat3 projectionMatrix;\\n\\nvarying vec2 v_rgbNW;\\nvarying vec2 v_rgbNE;\\nvarying vec2 v_rgbSW;\\nvarying vec2 v_rgbSE;\\nvarying vec2 v_rgbM;\\n\\nvarying vec2 vFragCoord;\\n\\nuniform vec4 inputSize;\\nuniform vec4 outputFrame;\\n\\nvec4 filterVertexPosition( void )\\n{\\n vec2 position = aVertexPosition * max(outputFrame.zw, vec2(0.)) + outputFrame.xy;\\n\\n return vec4((projectionMatrix * vec3(position, 1.0)).xy, 0.0, 1.0);\\n}\\n\\nvoid texcoords(vec2 fragCoord, vec2 inverseVP,\\n out vec2 v_rgbNW, out vec2 v_rgbNE,\\n out vec2 v_rgbSW, out vec2 v_rgbSE,\\n out vec2 v_rgbM) {\\n v_rgbNW = (fragCoord + vec2(-1.0, -1.0)) * inverseVP;\\n v_rgbNE = (fragCoord + vec2(1.0, -1.0)) * inverseVP;\\n v_rgbSW = (fragCoord + vec2(-1.0, 1.0)) * inverseVP;\\n v_rgbSE = (fragCoord + vec2(1.0, 1.0)) * inverseVP;\\n v_rgbM = vec2(fragCoord * inverseVP);\\n}\\n\\nvoid main(void) {\\n\\n gl_Position = filterVertexPosition();\\n\\n vFragCoord = aVertexPosition * outputFrame.zw;\\n\\n texcoords(vFragCoord, inputSize.zw, v_rgbNW, v_rgbNE, v_rgbSW, v_rgbSE, v_rgbM);\\n}\\n\",'varying vec2 v_rgbNW;\\nvarying vec2 v_rgbNE;\\nvarying vec2 v_rgbSW;\\nvarying vec2 v_rgbSE;\\nvarying vec2 v_rgbM;\\n\\nvarying vec2 vFragCoord;\\nuniform sampler2D uSampler;\\nuniform highp vec4 inputSize;\\n\\n\\n/**\\n Basic FXAA implementation based on the code on geeks3d.com with the\\n modification that the texture2DLod stuff was removed since it\\'s\\n unsupported by WebGL.\\n\\n --\\n\\n From:\\n https://github.com/mitsuhiko/webgl-meincraft\\n\\n Copyright (c) 2011 by Armin Ronacher.\\n\\n Some rights reserved.\\n\\n Redistribution and use in source and binary forms, with or without\\n modification, are permitted provided that the following conditions are\\n met:\\n\\n * Redistributions of source code must retain the above copyright\\n notice, this list of conditions and the following disclaimer.\\n\\n * Redistributions in binary form must reproduce the above\\n copyright notice, this list of conditions and the following\\n disclaimer in the documentation and/or other materials provided\\n with the distribution.\\n\\n * The names of the contributors may not be used to endorse or\\n promote products derived from this software without specific\\n prior written permission.\\n\\n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\\n \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\\n LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\\n A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\\n OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\\n SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\\n LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\\n DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\\n THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\\n (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\\n OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\\n */\\n\\n#ifndef FXAA_REDUCE_MIN\\n#define FXAA_REDUCE_MIN (1.0/ 128.0)\\n#endif\\n#ifndef FXAA_REDUCE_MUL\\n#define FXAA_REDUCE_MUL (1.0 / 8.0)\\n#endif\\n#ifndef FXAA_SPAN_MAX\\n#define FXAA_SPAN_MAX 8.0\\n#endif\\n\\n//optimized version for mobile, where dependent\\n//texture reads can be a bottleneck\\nvec4 fxaa(sampler2D tex, vec2 fragCoord, vec2 inverseVP,\\n vec2 v_rgbNW, vec2 v_rgbNE,\\n vec2 v_rgbSW, vec2 v_rgbSE,\\n vec2 v_rgbM) {\\n vec4 color;\\n vec3 rgbNW = texture2D(tex, v_rgbNW).xyz;\\n vec3 rgbNE = texture2D(tex, v_rgbNE).xyz;\\n vec3 rgbSW = texture2D(tex, v_rgbSW).xyz;\\n vec3 rgbSE = texture2D(tex, v_rgbSE).xyz;\\n vec4 texColor = texture2D(tex, v_rgbM);\\n vec3 rgbM = texColor.xyz;\\n vec3 luma = vec3(0.299, 0.587, 0.114);\\n float lumaNW = dot(rgbNW, luma);\\n float lumaNE = dot(rgbNE, luma);\\n float lumaSW = dot(rgbSW, luma);\\n float lumaSE = dot(rgbSE, luma);\\n float lumaM = dot(rgbM, luma);\\n float lumaMin = min(lumaM, min(min(lumaNW, lumaNE), min(lumaSW, lumaSE)));\\n float lumaMax = max(lumaM, max(max(lumaNW, lumaNE), max(lumaSW, lumaSE)));\\n\\n mediump vec2 dir;\\n dir.x = -((lumaNW + lumaNE) - (lumaSW + lumaSE));\\n dir.y = ((lumaNW + lumaSW) - (lumaNE + lumaSE));\\n\\n float dirReduce = max((lumaNW + lumaNE + lumaSW + lumaSE) *\\n (0.25 * FXAA_REDUCE_MUL), FXAA_REDUCE_MIN);\\n\\n float rcpDirMin = 1.0 / (min(abs(dir.x), abs(dir.y)) + dirReduce);\\n dir = min(vec2(FXAA_SPAN_MAX, FXAA_SPAN_MAX),\\n max(vec2(-FXAA_SPAN_MAX, -FXAA_SPAN_MAX),\\n dir * rcpDirMin)) * inverseVP;\\n\\n vec3 rgbA = 0.5 * (\\n texture2D(tex, fragCoord * inverseVP + dir * (1.0 / 3.0 - 0.5)).xyz +\\n texture2D(tex, fragCoord * inverseVP + dir * (2.0 / 3.0 - 0.5)).xyz);\\n vec3 rgbB = rgbA * 0.5 + 0.25 * (\\n texture2D(tex, fragCoord * inverseVP + dir * -0.5).xyz +\\n texture2D(tex, fragCoord * inverseVP + dir * 0.5).xyz);\\n\\n float lumaB = dot(rgbB, luma);\\n if ((lumaB < lumaMin) || (lumaB > lumaMax))\\n color = vec4(rgbA, texColor.a);\\n else\\n color = vec4(rgbB, texColor.a);\\n return color;\\n}\\n\\nvoid main() {\\n\\n vec4 color;\\n\\n color = fxaa(uSampler, vFragCoord, inputSize.zw, v_rgbNW, v_rgbNE, v_rgbSW, v_rgbSE, v_rgbM);\\n\\n gl_FragColor = color;\\n}\\n')||this}return function(t,e){function r(){this.constructor=t}ja(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}(e,t),e}(Fi),Ya=function(t,e){return Ya=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},Ya(t,e)},Va=function(t){function e(e,r){void 0===e&&(e=.5),void 0===r&&(r=Math.random());var i=t.call(this,gn,\"precision highp float;\\n\\nvarying vec2 vTextureCoord;\\nvarying vec4 vColor;\\n\\nuniform float uNoise;\\nuniform float uSeed;\\nuniform sampler2D uSampler;\\n\\nfloat rand(vec2 co)\\n{\\n return fract(sin(dot(co.xy, vec2(12.9898, 78.233))) * 43758.5453);\\n}\\n\\nvoid main()\\n{\\n vec4 color = texture2D(uSampler, vTextureCoord);\\n float randomValue = rand(gl_FragCoord.xy * uSeed);\\n float diff = (randomValue - 0.5) * uNoise;\\n\\n // Un-premultiply alpha before applying the color matrix. See issue #3539.\\n if (color.a > 0.0) {\\n color.rgb /= color.a;\\n }\\n\\n color.r += diff;\\n color.g += diff;\\n color.b += diff;\\n\\n // Premultiply alpha again.\\n color.rgb *= color.a;\\n\\n gl_FragColor = color;\\n}\\n\",{uNoise:0,uSeed:0})||this;return i.noise=e,i.seed=r,i}return function(t,e){function r(){this.constructor=t}Ya(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}(e,t),Object.defineProperty(e.prototype,\"noise\",{get:function(){return this.uniforms.uNoise},set:function(t){this.uniforms.uNoise=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"seed\",{get:function(){return this.uniforms.uSeed},set:function(t){this.uniforms.uSeed=t},enumerable:!1,configurable:!0}),e}(Fi),za=new Ue;Je.prototype._cacheAsBitmap=!1,Je.prototype._cacheData=null,Je.prototype._cacheAsBitmapResolution=null,Je.prototype._cacheAsBitmapMultisample=t.MSAA_QUALITY.NONE;var Wa=function(){this.textureCacheId=null,this.originalRender=null,this.originalRenderCanvas=null,this.originalCalculateBounds=null,this.originalGetLocalBounds=null,this.originalUpdateTransform=null,this.originalDestroy=null,this.originalMask=null,this.originalFilterArea=null,this.originalContainsPoint=null,this.sprite=null};Object.defineProperties(Je.prototype,{cacheAsBitmapResolution:{get:function(){return this._cacheAsBitmapResolution},set:function(t){t!==this._cacheAsBitmapResolution&&(this._cacheAsBitmapResolution=t,this.cacheAsBitmap&&(this.cacheAsBitmap=!1,this.cacheAsBitmap=!0))}},cacheAsBitmapMultisample:{get:function(){return this._cacheAsBitmapMultisample},set:function(t){t!==this._cacheAsBitmapMultisample&&(this._cacheAsBitmapMultisample=t,this.cacheAsBitmap&&(this.cacheAsBitmap=!1,this.cacheAsBitmap=!0))}},cacheAsBitmap:{get:function(){return this._cacheAsBitmap},set:function(t){var e;this._cacheAsBitmap!==t&&(this._cacheAsBitmap=t,t?(this._cacheData||(this._cacheData=new Wa),(e=this._cacheData).originalRender=this.render,e.originalRenderCanvas=this.renderCanvas,e.originalUpdateTransform=this.updateTransform,e.originalCalculateBounds=this.calculateBounds,e.originalGetLocalBounds=this.getLocalBounds,e.originalDestroy=this.destroy,e.originalContainsPoint=this.containsPoint,e.originalMask=this._mask,e.originalFilterArea=this.filterArea,this.render=this._renderCached,this.renderCanvas=this._renderCachedCanvas,this.destroy=this._cacheAsBitmapDestroy):((e=this._cacheData).sprite&&this._destroyCachedDisplayObject(),this.render=e.originalRender,this.renderCanvas=e.originalRenderCanvas,this.calculateBounds=e.originalCalculateBounds,this.getLocalBounds=e.originalGetLocalBounds,this.destroy=e.originalDestroy,this.updateTransform=e.originalUpdateTransform,this.containsPoint=e.originalContainsPoint,this._mask=e.originalMask,this.filterArea=e.originalFilterArea))}}}),Je.prototype._renderCached=function(t){!this.visible||this.worldAlpha<=0||!this.renderable||(this._initCachedDisplayObject(t),this._cacheData.sprite.transform._worldID=this.transform._worldID,this._cacheData.sprite.worldAlpha=this.worldAlpha,this._cacheData.sprite._render(t))},Je.prototype._initCachedDisplayObject=function(t){var e;if(!this._cacheData||!this._cacheData.sprite){var r=this.alpha;this.alpha=1,t.batch.flush();var i=this.getLocalBounds(null,!0).clone();if(this.filters&&this.filters.length){var n=this.filters[0].padding;i.pad(n)}i.ceil(U.RESOLUTION);var o=t.renderTexture.current,s=t.renderTexture.sourceFrame.clone(),a=t.renderTexture.destinationFrame.clone(),h=t.projection.transform,u=Fr.create({width:i.width,height:i.height,resolution:this.cacheAsBitmapResolution||t.resolution,multisample:null!==(e=this.cacheAsBitmapMultisample)&&void 0!==e?e:t.multisample}),l=\"cacheAsBitmap_\"+ve();this._cacheData.textureCacheId=l,mr.addToCache(u.baseTexture,l),Nr.addToCache(u,l);var c=this.transform.localTransform.copyTo(za).invert().translate(-i.x,-i.y);this.render=this._cacheData.originalRender,t.render(this,{renderTexture:u,clear:!0,transform:c,skipUpdateTransform:!1}),t.framebuffer.blit(),t.projection.transform=h,t.renderTexture.bind(o,s,a),this.render=this._renderCached,this.updateTransform=this.displayObjectUpdateTransform,this.calculateBounds=this._calculateCachedBounds,this.getLocalBounds=this._getCachedLocalBounds,this._mask=null,this.filterArea=null,this.alpha=r;var d=new As(u);d.transform.worldTransform=this.transform.worldTransform,d.anchor.x=-i.x/i.width,d.anchor.y=-i.y/i.height,d.alpha=r,d._bounds=this._bounds,this._cacheData.sprite=d,this.transform._parentID=-1,this.parent?this.updateTransform():(this.enableTempParent(),this.updateTransform(),this.disableTempParent(null)),this.containsPoint=d.containsPoint.bind(d)}},Je.prototype._renderCachedCanvas=function(t){!this.visible||this.worldAlpha<=0||!this.renderable||(this._initCachedDisplayObjectCanvas(t),this._cacheData.sprite.worldAlpha=this.worldAlpha,this._cacheData.sprite._renderCanvas(t))},Je.prototype._initCachedDisplayObjectCanvas=function(t){if(!this._cacheData||!this._cacheData.sprite){var e=this.getLocalBounds(null,!0),r=this.alpha;this.alpha=1;var i=t.context,n=t._projTransform;e.ceil(U.RESOLUTION);var o=Fr.create({width:e.width,height:e.height}),s=\"cacheAsBitmap_\"+ve();this._cacheData.textureCacheId=s,mr.addToCache(o.baseTexture,s),Nr.addToCache(o,s);var a=za;this.transform.localTransform.copyTo(a),a.invert(),a.tx-=e.x,a.ty-=e.y,this.renderCanvas=this._cacheData.originalRenderCanvas,t.render(this,{renderTexture:o,clear:!0,transform:a,skipUpdateTransform:!1}),t.context=i,t._projTransform=n,this.renderCanvas=this._renderCachedCanvas,this.updateTransform=this.displayObjectUpdateTransform,this.calculateBounds=this._calculateCachedBounds,this.getLocalBounds=this._getCachedLocalBounds,this._mask=null,this.filterArea=null,this.alpha=r;var h=new As(o);h.transform.worldTransform=this.transform.worldTransform,h.anchor.x=-e.x/e.width,h.anchor.y=-e.y/e.height,h.alpha=r,h._bounds=this._bounds,this._cacheData.sprite=h,this.transform._parentID=-1,this.parent?this.updateTransform():(this.parent=t._tempDisplayObjectParent,this.updateTransform(),this.parent=null),this.containsPoint=h.containsPoint.bind(h)}},Je.prototype._calculateCachedBounds=function(){this._bounds.clear(),this._cacheData.sprite.transform._worldID=this.transform._worldID,this._cacheData.sprite._calculateBounds(),this._bounds.updateID=this._boundsID},Je.prototype._getCachedLocalBounds=function(){return this._cacheData.sprite.getLocalBounds(null)},Je.prototype._destroyCachedDisplayObject=function(){this._cacheData.sprite._texture.destroy(!0),this._cacheData.sprite=null,mr.removeFromCache(this._cacheData.textureCacheId),Nr.removeFromCache(this._cacheData.textureCacheId),this._cacheData.textureCacheId=null},Je.prototype._cacheAsBitmapDestroy=function(t){this.cacheAsBitmap=!1,this.destroy(t)},Je.prototype.name=null,er.prototype.getChildByName=function(t,e){for(var r=0,i=this.children.length;r<i;r++)if(this.children[r].name===t)return this.children[r];if(e)for(r=0,i=this.children.length;r<i;r++){var n=this.children[r];if(n.getChildByName){var o=n.getChildByName(t,!0);if(o)return o}}return null},Je.prototype.getGlobalPosition=function(t,e){return void 0===t&&(t=new De),void 0===e&&(e=!1),this.parent?this.parent.toGlobal(this.position,t,e):(t.x=this.position.x,t.y=this.position.y),t};var qa=function(){function e(){}return e.init=function(t){var e=this;Object.defineProperty(this,\"resizeTo\",{set:function(t){globalThis.removeEventListener(\"resize\",this.queueResize),this._resizeTo=t,t&&(globalThis.addEventListener(\"resize\",this.queueResize),this.resize())},get:function(){return this._resizeTo}}),this.queueResize=function(){e._resizeTo&&(e.cancelResize(),e._resizeId=requestAnimationFrame((function(){return e.resize()})))},this.cancelResize=function(){e._resizeId&&(cancelAnimationFrame(e._resizeId),e._resizeId=null)},this.resize=function(){if(e._resizeTo){var t,r;if(e.cancelResize(),e._resizeTo===globalThis.window)t=globalThis.innerWidth,r=globalThis.innerHeight;else{var i=e._resizeTo;t=i.clientWidth,r=i.clientHeight}e.renderer.resize(t,r)}},this._resizeId=null,this._resizeTo=null,this.resizeTo=t.resizeTo||null},e.destroy=function(){globalThis.removeEventListener(\"resize\",this.queueResize),this.cancelResize(),this.cancelResize=null,this.queueResize=null,this.resizeTo=null,this.resize=null},e.extension=t.ExtensionType.Application,e}(),Ka=function(){function e(t){var r=this;this.stage=new er,t=Object.assign({forceCanvas:!1},t),this.renderer=mn(t),e._plugins.forEach((function(e){e.init.call(r,t)}))}return e.registerPlugin=function(e){nr.add({type:t.ExtensionType.Application,ref:e})},e.prototype.render=function(){this.renderer.render(this.stage)},Object.defineProperty(e.prototype,\"view\",{get:function(){return this.renderer.view},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"screen\",{get:function(){return this.renderer.screen},enumerable:!1,configurable:!0}),e.prototype.destroy=function(t,r){var i=this,n=e._plugins.slice(0);n.reverse(),n.forEach((function(t){t.destroy.call(i)})),this.stage.destroy(r),this.stage=null,this.renderer.destroy(t),this.renderer=null},e._plugins=[],e}();nr.handleByList(t.ExtensionType.Application,Ka._plugins),nr.add(qa);var Za=function(t,e){return Za=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},Za(t,e)};function Qa(t,e){function r(){this.constructor=t}Za(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}var Ja=function(t){function e(e,r,i,n){void 0===e&&(e=100),void 0===r&&(r=100),void 0===i&&(i=10),void 0===n&&(n=10);var o=t.call(this)||this;return o.segWidth=i,o.segHeight=n,o.width=e,o.height=r,o.build(),o}return Qa(e,t),e.prototype.build=function(){for(var t=this.segWidth*this.segHeight,e=[],r=[],i=[],n=this.segWidth-1,o=this.segHeight-1,s=this.width/n,a=this.height/o,h=0;h<t;h++){var u=h%this.segWidth,l=h/this.segWidth|0;e.push(u*s,l*a),r.push(u/n,l/o)}var c=n*o;for(h=0;h<c;h++){var d=h%n,f=h/n|0,p=f*this.segWidth+d,_=f*this.segWidth+d+1,v=(f+1)*this.segWidth+d,m=(f+1)*this.segWidth+d+1;i.push(p,_,v,_,m,v)}this.buffers[0].data=new Float32Array(e),this.buffers[1].data=new Float32Array(r),this.indexBuffer.data=new Uint16Array(i),this.buffers[0].update(),this.buffers[1].update(),this.indexBuffer.update()},e}(fa),$a=function(t){function e(e,r,i){void 0===e&&(e=200),void 0===i&&(i=0);var n=t.call(this,new Float32Array(4*r.length),new Float32Array(4*r.length),new Uint16Array(6*(r.length-1)))||this;return n.points=r,n._width=e,n.textureScale=i,n.build(),n}return Qa(e,t),Object.defineProperty(e.prototype,\"width\",{get:function(){return this._width},enumerable:!1,configurable:!0}),e.prototype.build=function(){var t=this.points;if(t){var e=this.getBuffer(\"aVertexPosition\"),r=this.getBuffer(\"aTextureCoord\"),i=this.getIndex();if(!(t.length<1)){e.data.length/4!==t.length&&(e.data=new Float32Array(4*t.length),r.data=new Float32Array(4*t.length),i.data=new Uint16Array(6*(t.length-1)));var n=r.data,o=i.data;n[0]=0,n[1]=0,n[2]=0,n[3]=1;for(var s=0,a=t[0],h=this._width*this.textureScale,u=t.length,l=0;l<u;l++){var c=4*l;if(this.textureScale>0){var d=a.x-t[l].x,f=a.y-t[l].y,p=Math.sqrt(d*d+f*f);a=t[l],s+=p/h}else s=l/(u-1);n[c]=s,n[c+1]=0,n[c+2]=s,n[c+3]=1}var _=0;for(l=0;l<u-1;l++)c=2*l,o[_++]=c,o[_++]=c+1,o[_++]=c+2,o[_++]=c+2,o[_++]=c+1,o[_++]=c+3;r.update(),i.update(),this.updateVertices()}}},e.prototype.updateVertices=function(){var t=this.points;if(!(t.length<1)){for(var e,r=t[0],i=0,n=0,o=this.buffers[0].data,s=t.length,a=0;a<s;a++){var h=t[a],u=4*a;n=-((e=a<t.length-1?t[a+1]:h).x-r.x),i=e.y-r.y;var l=Math.sqrt(i*i+n*n),c=this.textureScale>0?this.textureScale*this._width/2:this._width/2;i/=l,n/=l,i*=c,n*=c,o[u]=h.x+i,o[u+1]=h.y+n,o[u+2]=h.x-i,o[u+3]=h.y-n,r=h}this.buffers[0].update()}},e.prototype.update=function(){this.textureScale>0?this.build():this.updateVertices()},e}(fa),th=function(e){function r(r,i,n){void 0===n&&(n=0);var o=this,s=new $a(r.height,i,n),a=new da(r);return n>0&&(r.baseTexture.wrapMode=t.WRAP_MODES.REPEAT),(o=e.call(this,s,a)||this).autoUpdate=!0,o}return Qa(r,e),r.prototype._render=function(t){var r=this.geometry;(this.autoUpdate||r._width!==this.shader.texture.height)&&(r._width=this.shader.texture.height,r.update()),e.prototype._render.call(this,t)},r}(ca),eh=function(t){function e(e,r,i){var n=this,o=new Ja(e.width,e.height,r,i),s=new da(Nr.WHITE);return(n=t.call(this,o,s)||this).texture=e,n.autoResize=!0,n}return Qa(e,t),e.prototype.textureUpdated=function(){this._textureID=this.shader.texture._updateID;var t=this.geometry,e=this.shader.texture,r=e.width,i=e.height;!this.autoResize||t.width===r&&t.height===i||(t.width=this.shader.texture.width,t.height=this.shader.texture.height,t.build())},Object.defineProperty(e.prototype,\"texture\",{get:function(){return this.shader.texture},set:function(t){this.shader.texture!==t&&(this.shader.texture=t,this._textureID=-1,t.baseTexture.valid?this.textureUpdated():t.once(\"update\",this.textureUpdated,this))},enumerable:!1,configurable:!0}),e.prototype._render=function(e){this._textureID!==this.shader.texture._updateID&&this.textureUpdated(),t.prototype._render.call(this,e)},e.prototype.destroy=function(e){this.shader.texture.off(\"update\",this.textureUpdated,this),t.prototype.destroy.call(this,e)},e}(ca),rh=function(t){function e(e,r,i,n,o){void 0===e&&(e=Nr.EMPTY);var s=this,a=new fa(r,i,n);a.getBuffer(\"aVertexPosition\").static=!1;var h=new da(e);return(s=t.call(this,a,h,null,o)||this).autoUpdate=!0,s}return Qa(e,t),Object.defineProperty(e.prototype,\"vertices\",{get:function(){return this.geometry.getBuffer(\"aVertexPosition\").data},set:function(t){this.geometry.getBuffer(\"aVertexPosition\").data=t},enumerable:!1,configurable:!0}),e.prototype._render=function(e){this.autoUpdate&&this.geometry.getBuffer(\"aVertexPosition\").update(),t.prototype._render.call(this,e)},e}(ca),ih=function(t){function e(e,r,i,n,o){void 0===r&&(r=10),void 0===i&&(i=10),void 0===n&&(n=10),void 0===o&&(o=10);var s=t.call(this,Nr.WHITE,4,4)||this;return s._origWidth=e.orig.width,s._origHeight=e.orig.height,s._width=s._origWidth,s._height=s._origHeight,s._leftWidth=r,s._rightWidth=n,s._topHeight=i,s._bottomHeight=o,s.texture=e,s}return Qa(e,t),e.prototype.textureUpdated=function(){this._textureID=this.shader.texture._updateID,this._refresh()},Object.defineProperty(e.prototype,\"vertices\",{get:function(){return this.geometry.getBuffer(\"aVertexPosition\").data},set:function(t){this.geometry.getBuffer(\"aVertexPosition\").data=t},enumerable:!1,configurable:!0}),e.prototype.updateHorizontalVertices=function(){var t=this.vertices,e=this._getMinScale();t[9]=t[11]=t[13]=t[15]=this._topHeight*e,t[17]=t[19]=t[21]=t[23]=this._height-this._bottomHeight*e,t[25]=t[27]=t[29]=t[31]=this._height},e.prototype.updateVerticalVertices=function(){var t=this.vertices,e=this._getMinScale();t[2]=t[10]=t[18]=t[26]=this._leftWidth*e,t[4]=t[12]=t[20]=t[28]=this._width-this._rightWidth*e,t[6]=t[14]=t[22]=t[30]=this._width},e.prototype._getMinScale=function(){var t=this._leftWidth+this._rightWidth,e=this._width>t?1:this._width/t,r=this._topHeight+this._bottomHeight,i=this._height>r?1:this._height/r;return Math.min(e,i)},Object.defineProperty(e.prototype,\"width\",{get:function(){return this._width},set:function(t){this._width=t,this._refresh()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"height\",{get:function(){return this._height},set:function(t){this._height=t,this._refresh()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"leftWidth\",{get:function(){return this._leftWidth},set:function(t){this._leftWidth=t,this._refresh()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"rightWidth\",{get:function(){return this._rightWidth},set:function(t){this._rightWidth=t,this._refresh()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"topHeight\",{get:function(){return this._topHeight},set:function(t){this._topHeight=t,this._refresh()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"bottomHeight\",{get:function(){return this._bottomHeight},set:function(t){this._bottomHeight=t,this._refresh()},enumerable:!1,configurable:!0}),e.prototype._refresh=function(){var t=this.texture,e=this.geometry.buffers[1].data;this._origWidth=t.orig.width,this._origHeight=t.orig.height;var r=1/this._origWidth,i=1/this._origHeight;e[0]=e[8]=e[16]=e[24]=0,e[1]=e[3]=e[5]=e[7]=0,e[6]=e[14]=e[22]=e[30]=1,e[25]=e[27]=e[29]=e[31]=1,e[2]=e[10]=e[18]=e[26]=r*this._leftWidth,e[4]=e[12]=e[20]=e[28]=1-r*this._rightWidth,e[9]=e[11]=e[13]=e[15]=i*this._topHeight,e[17]=e[19]=e[21]=e[23]=1-i*this._bottomHeight,this.updateHorizontalVertices(),this.updateVerticalVertices(),this.geometry.buffers[0].update(),this.geometry.buffers[1].update()},e}(eh),nh=function(t,e){return nh=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])},nh(t,e)},oh=function(e){function r(t,r){void 0===r&&(r=!0);var i=e.call(this,t[0]instanceof Nr?t[0]:t[0].texture)||this;return i._textures=null,i._durations=null,i._autoUpdate=r,i._isConnectedToTicker=!1,i.animationSpeed=1,i.loop=!0,i.updateAnchor=!1,i.onComplete=null,i.onFrameChange=null,i.onLoop=null,i._currentTime=0,i._playing=!1,i._previousFrame=null,i.textures=t,i}return function(t,e){function r(){this.constructor=t}nh(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}(r,e),r.prototype.stop=function(){this._playing&&(this._playing=!1,this._autoUpdate&&this._isConnectedToTicker&&(ar.shared.remove(this.update,this),this._isConnectedToTicker=!1))},r.prototype.play=function(){this._playing||(this._playing=!0,this._autoUpdate&&!this._isConnectedToTicker&&(ar.shared.add(this.update,this,t.UPDATE_PRIORITY.HIGH),this._isConnectedToTicker=!0))},r.prototype.gotoAndStop=function(t){this.stop();var e=this.currentFrame;this._currentTime=t,e!==this.currentFrame&&this.updateTexture()},r.prototype.gotoAndPlay=function(t){var e=this.currentFrame;this._currentTime=t,e!==this.currentFrame&&this.updateTexture(),this.play()},r.prototype.update=function(t){if(this._playing){var e=this.animationSpeed*t,r=this.currentFrame;if(null!==this._durations){var i=this._currentTime%1*this._durations[this.currentFrame];for(i+=e/60*1e3;i<0;)this._currentTime--,i+=this._durations[this.currentFrame];var n=Math.sign(this.animationSpeed*t);for(this._currentTime=Math.floor(this._currentTime);i>=this._durations[this.currentFrame];)i-=this._durations[this.currentFrame]*n,this._currentTime+=n;this._currentTime+=i/this._durations[this.currentFrame]}else this._currentTime+=e;this._currentTime<0&&!this.loop?(this.gotoAndStop(0),this.onComplete&&this.onComplete()):this._currentTime>=this._textures.length&&!this.loop?(this.gotoAndStop(this._textures.length-1),this.onComplete&&this.onComplete()):r!==this.currentFrame&&(this.loop&&this.onLoop&&(this.animationSpeed>0&&this.currentFrame<r||this.animationSpeed<0&&this.currentFrame>r)&&this.onLoop(),this.updateTexture())}},r.prototype.updateTexture=function(){var t=this.currentFrame;this._previousFrame!==t&&(this._previousFrame=t,this._texture=this._textures[t],this._textureID=-1,this._textureTrimmedID=-1,this._cachedTint=16777215,this.uvs=this._texture._uvs.uvsFloat32,this.updateAnchor&&this._anchor.copyFrom(this._texture.defaultAnchor),this.onFrameChange&&this.onFrameChange(this.currentFrame))},r.prototype.destroy=function(t){this.stop(),e.prototype.destroy.call(this,t),this.onComplete=null,this.onFrameChange=null,this.onLoop=null},r.fromFrames=function(t){for(var e=[],i=0;i<t.length;++i)e.push(Nr.from(t[i]));return new r(e)},r.fromImages=function(t){for(var e=[],i=0;i<t.length;++i)e.push(Nr.from(t[i]));return new r(e)},Object.defineProperty(r.prototype,\"totalFrames\",{get:function(){return this._textures.length},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"textures\",{get:function(){return this._textures},set:function(t){if(t[0]instanceof Nr)this._textures=t,this._durations=null;else{this._textures=[],this._durations=[];for(var e=0;e<t.length;e++)this._textures.push(t[e].texture),this._durations.push(t[e].time)}this._previousFrame=null,this.gotoAndStop(0),this.updateTexture()},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"currentFrame\",{get:function(){var t=Math.floor(this._currentTime)%this._textures.length;return t<0&&(t+=this._textures.length),t},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"playing\",{get:function(){return this._playing},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"autoUpdate\",{get:function(){return this._autoUpdate},set:function(t){t!==this._autoUpdate&&(this._autoUpdate=t,!this._autoUpdate&&this._isConnectedToTicker?(ar.shared.remove(this.update,this),this._isConnectedToTicker=!1):this._autoUpdate&&!this._isConnectedToTicker&&this._playing&&(ar.shared.add(this.update,this),this._isConnectedToTicker=!0))},enumerable:!1,configurable:!0}),r}(As);nr.add(Bn,Wn,Vn,Yo,Ks,In,oa,Pa,bo,Go,Uo,Js,hr,uo);var sh={AlphaFilter:Da,BlurFilter:Ba,BlurFilterPass:La,ColorMatrixFilter:Ua,DisplacementFilter:Xa,FXAAFilter:Ha,NoiseFilter:Va};return t.AbstractBatchRenderer=An,t.AbstractMultiResource=yr,t.AbstractRenderer=fn,t.AccessibilityManager=Bn,t.AnimatedSprite=oh,t.AppLoaderPlugin=uo,t.Application=Ka,t.ArrayResource=gr,t.Attribute=Br,t.BaseImageResource=Tr,t.BasePrepare=Vs,t.BaseRenderTexture=Ir,t.BaseTexture=mr,t.BatchDrawCall=En,t.BatchGeometry=Rn,t.BatchPluginFactory=Pn,t.BatchRenderer=In,t.BatchShaderGenerator=Sn,t.BatchSystem=ti,t.BatchTextureArray=bn,t.BitmapFont=Aa,t.BitmapFontData=_a,t.BitmapFontLoader=Pa,t.BitmapText=Ma,t.BlobResource=To,t.Bounds=Ke,t.BrowserAdapter=E,t.Buffer=Ur,t.BufferResource=_r,t.CanvasResource=Er,t.Circle=Ne,t.CompressedTextureLoader=bo,t.CompressedTextureResource=Eo,t.Container=er,t.ContextSystem=ri,t.CountLimiter=Bs,t.CubeResource=br,t.DDSLoader=Go,t.DEG_TO_RAD=Ie,t.DisplayObject=Je,t.Ellipse=Fe,t.Extract=Wn,t.FORMATS_TO_COMPONENTS=No,t.FillStyle=zo,t.Filter=Fi,t.FilterState=Kr,t.FilterSystem=Jr,t.Framebuffer=Pr,t.FramebufferSystem=oi,t.GLFramebuffer=ii,t.GLProgram=en,t.GLTexture=un,t.GRAPHICS_CURVES=Vo,t.Geometry=Yr,t.GeometrySystem=ai,t.Graphics=gs,t.GraphicsData=fs,t.GraphicsGeometry=_s,t.IGLUniformData=function(){},t.INSTALLED=ur,t.INTERNAL_FORMAT_TO_BYTES_PER_PIXEL=_o,t.ImageBitmapResource=Rr,t.ImageResource=xr,t.InteractionData=Gn,t.InteractionEvent=kn,t.InteractionManager=Vn,t.InteractionTrackingData=Xn,t.KTXLoader=Uo,t.LineStyle=vs,t.Loader=ho,t.MaskData=hi,t.MaskSystem=Ui,t.Matrix=Ue,t.Mesh=ca,t.MeshBatchUvs=ha,t.MeshGeometry=fa,t.MeshMaterial=da,t.NineSlicePlane=ih,t.ObjectRenderer=$r,t.ObservablePoint=Ge,t.PI_2=Me,t.ParticleContainer=jo,t.ParticleRenderer=Yo,t.PlaneGeometry=Ja,t.Point=De,t.Polygon=Le,t.Prepare=Ks,t.Program=wi,t.ProjectionSystem=Vi,t.Quad=Vr,t.QuadUv=zr,t.RAD_TO_DEG=Pe,t.Rectangle=Ce,t.RenderTexture=Fr,t.RenderTexturePool=Lr,t.RenderTextureSystem=qi,t.Renderer=vn,t.ResizePlugin=qa,t.Resource=pr,t.RopeGeometry=$a,t.RoundedRectangle=Be,t.Runner=or,t.SVGResource=Ar,t.ScissorSystem=Hi,t.Shader=Ci,t.ShaderSystem=sn,t.SimpleMesh=rh,t.SimplePlane=eh,t.SimpleRope=th,t.Sprite=As,t.SpriteMaskFilter=Gi,t.Spritesheet=Qs,t.SpritesheetLoader=Js,t.State=Ni,t.StateSystem=an,t.StencilSystem=Yi,t.System=Tn,t.TYPES_TO_BYTES_PER_COMPONENT=Co,t.TYPES_TO_BYTES_PER_PIXEL=Fo,t.TemporaryDisplayObject=$e,t.Text=Fs,t.TextFormat=va,t.TextMetrics=Cs,t.TextStyle=Ms,t.Texture=Nr,t.TextureGCSystem=hn,t.TextureLoader=lo,t.TextureMatrix=Bi,t.TextureSystem=ln,t.TextureUvs=Dr,t.Ticker=ar,t.TickerPlugin=hr,t.TilingSprite=ra,t.TilingSpriteRenderer=oa,t.TimeLimiter=Zs,t.Transform=qe,t.UniformGroup=qr,t.VERSION=\"6.5.10\",t.VideoResource=Sr,t.ViewableBuffer=xn,t.XMLFormat=ma,t.XMLStringFormat=ya,t.accessibleTarget=Ln,t.autoDetectFormat=Ta,t.autoDetectRenderer=mn,t.autoDetectResource=lr,t.checkMaxIfStatementsInShader=Pi,t.createUBOElements=Ji,t.defaultFilterVertex=gn,t.defaultVertex=yn,t.extensions=nr,t.filters=sh,t.generateProgram=rn,t.generateUniformBufferSync=tn,t.getTestContext=vi,t.getUBOData=$i,t.graphicsUtils=Ts,t.groupD8=We,t.interactiveTarget=Hn,t.isMobile=G,t.parseDDS=Do,t.parseKTX=Lo,t.resources=Dn,t.settings=U,t.systems=Nn,t.uniformParsers=Ai,t.utils=Oe,Object.defineProperty(t,\"__esModule\",{value:!0}),t}({});\n//# sourceMappingURL=pixi.min.js.map\n",
15
+ /* 2/3 Live2D Cubism Core (mirrors itself onto globalThis.Live2DCubismCore) */
16
+ "/**\n * Live2D Cubism Core\n * (C) 2019 Live2D Inc. All rights reserved.\n *\n * This file is licensed pursuant to the license agreement below.\n * This file corresponds to the \"Redistributable Code\" in the agreement.\n * https://www.live2d.com/eula/live2d-proprietary-software-license-agreement_en.html\n */\nvar Live2DCubismCore;!function(Live2DCubismCore){var _scriptDir,_csm=function(){function _csm(){}return _csm.getVersion=function(){return _em.ccall(\"csmGetVersion\",\"number\",[],[])},_csm.getLatestMocVersion=function(){return _em.ccall(\"csmGetLatestMocVersion\",\"number\",[],[])},_csm.getMocVersion=function(moc,mocSize){return _em.ccall(\"csmGetMocVersion\",\"number\",[\"number\",\"number\"],[moc,mocSize])},_csm.getSizeofModel=function(moc){return _em.ccall(\"csmGetSizeofModel\",\"number\",[\"number\"],[moc])},_csm.reviveMocInPlace=function(memory,mocSize){return _em.ccall(\"csmReviveMocInPlace\",\"number\",[\"number\",\"number\"],[memory,mocSize])},_csm.initializeModelInPlace=function(moc,memory,modelSize){return _em.ccall(\"csmInitializeModelInPlace\",\"number\",[\"number\",\"number\",\"number\"],[moc,memory,modelSize])},_csm.hasMocConsistency=function(memory,mocSize){return _em.ccall(\"csmHasMocConsistency\",\"number\",[\"number\",\"number\"],[memory,mocSize])},_csm.getParameterCount=function(model){return _em.ccall(\"csmGetParameterCount\",\"number\",[\"number\"],[model])},_csm.getParameterIds=function(model){return _em.ccall(\"csmGetParameterIds\",\"number\",[\"number\"],[model])},_csm.getParameterMinimumValues=function(model){return _em.ccall(\"csmGetParameterMinimumValues\",\"number\",[\"number\"],[model])},_csm.getParameterTypes=function(model){return _em.ccall(\"csmGetParameterTypes\",\"number\",[\"number\"],[model])},_csm.getParameterMaximumValues=function(model){return _em.ccall(\"csmGetParameterMaximumValues\",\"number\",[\"number\"],[model])},_csm.getParameterDefaultValues=function(model){return _em.ccall(\"csmGetParameterDefaultValues\",\"number\",[\"number\"],[model])},_csm.getParameterValues=function(model){return _em.ccall(\"csmGetParameterValues\",\"number\",[\"number\"],[model])},_csm.getParameterKeyCounts=function(model){return _em.ccall(\"csmGetParameterKeyCounts\",\"number\",[\"number\"],[model])},_csm.getParameterKeyValues=function(model){return _em.ccall(\"csmGetParameterKeyValues\",\"number\",[\"number\"],[model])},_csm.getPartCount=function(model){return _em.ccall(\"csmGetPartCount\",\"number\",[\"number\"],[model])},_csm.getPartIds=function(model){return _em.ccall(\"csmGetPartIds\",\"number\",[\"number\"],[model])},_csm.getPartOpacities=function(model){return _em.ccall(\"csmGetPartOpacities\",\"number\",[\"number\"],[model])},_csm.getPartParentPartIndices=function(model){return _em.ccall(\"csmGetPartParentPartIndices\",\"number\",[\"number\"],[model])},_csm.getDrawableCount=function(model){return _em.ccall(\"csmGetDrawableCount\",\"number\",[\"number\"],[model])},_csm.getDrawableIds=function(model){return _em.ccall(\"csmGetDrawableIds\",\"number\",[\"number\"],[model])},_csm.getDrawableConstantFlags=function(model){return _em.ccall(\"csmGetDrawableConstantFlags\",\"number\",[\"number\"],[model])},_csm.getDrawableDynamicFlags=function(model){return _em.ccall(\"csmGetDrawableDynamicFlags\",\"number\",[\"number\"],[model])},_csm.getDrawableTextureIndices=function(model){return _em.ccall(\"csmGetDrawableTextureIndices\",\"number\",[\"number\"],[model])},_csm.getDrawableDrawOrders=function(model){return _em.ccall(\"csmGetDrawableDrawOrders\",\"number\",[\"number\"],[model])},_csm.getDrawableRenderOrders=function(model){return _em.ccall(\"csmGetDrawableRenderOrders\",\"number\",[\"number\"],[model])},_csm.getDrawableOpacities=function(model){return _em.ccall(\"csmGetDrawableOpacities\",\"number\",[\"number\"],[model])},_csm.getDrawableMaskCounts=function(model){return _em.ccall(\"csmGetDrawableMaskCounts\",\"number\",[\"number\"],[model])},_csm.getDrawableMasks=function(model){return _em.ccall(\"csmGetDrawableMasks\",\"number\",[\"number\"],[model])},_csm.getDrawableVertexCounts=function(model){return _em.ccall(\"csmGetDrawableVertexCounts\",\"number\",[\"number\"],[model])},_csm.getDrawableVertexPositions=function(model){return _em.ccall(\"csmGetDrawableVertexPositions\",\"number\",[\"number\"],[model])},_csm.getDrawableVertexUvs=function(model){return _em.ccall(\"csmGetDrawableVertexUvs\",\"number\",[\"number\"],[model])},_csm.getDrawableIndexCounts=function(model){return _em.ccall(\"csmGetDrawableIndexCounts\",\"number\",[\"number\"],[model])},_csm.getDrawableIndices=function(model){return _em.ccall(\"csmGetDrawableIndices\",\"number\",[\"number\"],[model])},_csm.getDrawableMultiplyColors=function(model){return _em.ccall(\"csmGetDrawableMultiplyColors\",\"number\",[\"number\"],[model])},_csm.getDrawableScreenColors=function(model){return _em.ccall(\"csmGetDrawableScreenColors\",\"number\",[\"number\"],[model])},_csm.getDrawableParentPartIndices=function(model){return _em.ccall(\"csmGetDrawableParentPartIndices\",\"number\",[\"number\"],[model])},_csm.mallocMoc=function(mocSize){return _em.ccall(\"csmMallocMoc\",\"number\",[\"number\"],[mocSize])},_csm.mallocModelAndInitialize=function(moc){return _em.ccall(\"csmMallocModelAndInitialize\",\"number\",[\"number\"],[moc])},_csm.malloc=function(size){return _em.ccall(\"csmMalloc\",\"number\",[\"number\"],[size])},_csm.setLogFunction=function(handler){_em.ccall(\"csmSetLogFunction\",null,[\"number\"],[handler])},_csm.updateModel=function(model){_em.ccall(\"csmUpdateModel\",null,[\"number\"],[model])},_csm.readCanvasInfo=function(model,outSizeInPixels,outOriginInPixels,outPixelsPerUnit){_em.ccall(\"csmReadCanvasInfo\",null,[\"number\",\"number\",\"number\",\"number\"],[model,outSizeInPixels,outOriginInPixels,outPixelsPerUnit])},_csm.resetDrawableDynamicFlags=function(model){_em.ccall(\"csmResetDrawableDynamicFlags\",null,[\"number\"],[model])},_csm.free=function(memory){_em.ccall(\"csmFree\",null,[\"number\"],[memory])},_csm.initializeAmountOfMemory=function(size){_em.ccall(\"csmInitializeAmountOfMemory\",null,[\"number\"],[size])},_csm}(),Version=(Live2DCubismCore.AlignofMoc=64,Live2DCubismCore.AlignofModel=16,Live2DCubismCore.MocVersion_Unknown=0,Live2DCubismCore.MocVersion_30=1,Live2DCubismCore.MocVersion_33=2,Live2DCubismCore.MocVersion_40=3,Live2DCubismCore.MocVersion_42=4,Live2DCubismCore.MocVersion_50=5,Live2DCubismCore.ParameterType_Normal=0,Live2DCubismCore.ParameterType_BlendShape=1,function(){function Version(){}return Version.csmGetVersion=function(){return _csm.getVersion()},Version.csmGetLatestMocVersion=function(){return _csm.getLatestMocVersion()},Version.csmGetMocVersion=function(moc,mocBytes){return _csm.getMocVersion(moc._ptr,mocBytes.byteLength)},Version}()),Version=(Live2DCubismCore.Version=Version,function(){function Logging(){}return Logging.csmSetLogFunction=function(handler){Logging.logFunction=handler;handler=_em.addFunction(Logging.wrapLogFunction,\"vi\");_csm.setLogFunction(handler)},Logging.csmGetLogFunction=function(){return Logging.logFunction},Logging.wrapLogFunction=function(messagePtr){messagePtr=_em.UTF8ToString(messagePtr);Logging.logFunction(messagePtr)},Logging}()),Version=(Live2DCubismCore.Logging=Version,function(){function Moc(mocBytes){var memory=_csm.mallocMoc(mocBytes.byteLength);memory&&(new Uint8Array(_em.HEAPU8.buffer,memory,mocBytes.byteLength).set(new Uint8Array(mocBytes)),this._ptr=_csm.reviveMocInPlace(memory,mocBytes.byteLength),this._ptr||_csm.free(memory))}return Moc.prototype.hasMocConsistency=function(mocBytes){var memory=_csm.mallocMoc(mocBytes.byteLength);if(memory)return new Uint8Array(_em.HEAPU8.buffer,memory,mocBytes.byteLength).set(new Uint8Array(mocBytes)),mocBytes=_csm.hasMocConsistency(memory,mocBytes.byteLength),_csm.free(memory),mocBytes},Moc.fromArrayBuffer=function(buffer){return buffer&&(buffer=new Moc(buffer))._ptr?buffer:null},Moc.prototype._release=function(){_csm.free(this._ptr),this._ptr=0},Moc}()),Version=(Live2DCubismCore.Moc=Version,function(){function Model(moc){this._ptr=_csm.mallocModelAndInitialize(moc._ptr),this._ptr&&(this.parameters=new Parameters(this._ptr),this.parts=new Parts(this._ptr),this.drawables=new Drawables(this._ptr),this.canvasinfo=new CanvasInfo(this._ptr))}return Model.fromMoc=function(moc){moc=new Model(moc);return moc._ptr?moc:null},Model.prototype.update=function(){_csm.updateModel(this._ptr)},Model.prototype.release=function(){_csm.free(this._ptr),this._ptr=0},Model}()),CanvasInfo=(Live2DCubismCore.Model=Version,function(modelPtr){var _canvasSize_data,_canvasSize_dataPtr,_canvasSize_nDataBytes,_canvasOrigin_dataPtr,_canvasOrigin_nDataBytes,_canvasPPU_nDataBytes,_canvasPPU_dataPtr;modelPtr&&(_canvasSize_nDataBytes=(_canvasSize_data=new Float32Array(2)).length*_canvasSize_data.BYTES_PER_ELEMENT,_canvasSize_dataPtr=_csm.malloc(_canvasSize_nDataBytes),(_canvasSize_dataPtr=new Uint8Array(_em.HEAPU8.buffer,_canvasSize_dataPtr,_canvasSize_nDataBytes)).set(new Uint8Array(_canvasSize_data.buffer)),_canvasOrigin_nDataBytes=(_canvasSize_nDataBytes=new Float32Array(2)).length*_canvasSize_nDataBytes.BYTES_PER_ELEMENT,_canvasOrigin_dataPtr=_csm.malloc(_canvasOrigin_nDataBytes),(_canvasOrigin_dataPtr=new Uint8Array(_em.HEAPU8.buffer,_canvasOrigin_dataPtr,_canvasOrigin_nDataBytes)).set(new Uint8Array(_canvasSize_nDataBytes.buffer)),_canvasPPU_nDataBytes=(_canvasOrigin_nDataBytes=new Float32Array(1)).length*_canvasOrigin_nDataBytes.BYTES_PER_ELEMENT,_canvasPPU_dataPtr=_csm.malloc(_canvasPPU_nDataBytes),(_canvasPPU_dataPtr=new Uint8Array(_em.HEAPU8.buffer,_canvasPPU_dataPtr,_canvasPPU_nDataBytes)).set(new Uint8Array(_canvasOrigin_nDataBytes.buffer)),_csm.readCanvasInfo(modelPtr,_canvasSize_dataPtr.byteOffset,_canvasOrigin_dataPtr.byteOffset,_canvasPPU_dataPtr.byteOffset),_canvasSize_data=new Float32Array(_canvasSize_dataPtr.buffer,_canvasSize_dataPtr.byteOffset,_canvasSize_dataPtr.length),_canvasSize_nDataBytes=new Float32Array(_canvasOrigin_dataPtr.buffer,_canvasOrigin_dataPtr.byteOffset,_canvasOrigin_dataPtr.length),_canvasOrigin_nDataBytes=new Float32Array(_canvasPPU_dataPtr.buffer,_canvasPPU_dataPtr.byteOffset,_canvasPPU_dataPtr.length),this.CanvasWidth=_canvasSize_data[0],this.CanvasHeight=_canvasSize_data[1],this.CanvasOriginX=_canvasSize_nDataBytes[0],this.CanvasOriginY=_canvasSize_nDataBytes[1],this.PixelsPerUnit=_canvasOrigin_nDataBytes[0],_csm.free(_canvasSize_dataPtr.byteOffset),_csm.free(_canvasOrigin_dataPtr.byteOffset),_csm.free(_canvasPPU_dataPtr.byteOffset))}),Parameters=(Live2DCubismCore.CanvasInfo=CanvasInfo,function(modelPtr){this.count=_csm.getParameterCount(modelPtr),length=_csm.getParameterCount(modelPtr),this.ids=new Array(length);for(var length,length2,_ids=new Uint32Array(_em.HEAPU32.buffer,_csm.getParameterIds(modelPtr),length),i=0;i<_ids.length;i++)this.ids[i]=_em.UTF8ToString(_ids[i]);length=_csm.getParameterCount(modelPtr),this.minimumValues=new Float32Array(_em.HEAPF32.buffer,_csm.getParameterMinimumValues(modelPtr),length),length=_csm.getParameterCount(modelPtr),this.types=new Int32Array(_em.HEAP32.buffer,_csm.getParameterTypes(modelPtr),length),length=_csm.getParameterCount(modelPtr),this.maximumValues=new Float32Array(_em.HEAPF32.buffer,_csm.getParameterMaximumValues(modelPtr),length),length=_csm.getParameterCount(modelPtr),this.defaultValues=new Float32Array(_em.HEAPF32.buffer,_csm.getParameterDefaultValues(modelPtr),length),length=_csm.getParameterCount(modelPtr),this.values=new Float32Array(_em.HEAPF32.buffer,_csm.getParameterValues(modelPtr),length),length=_csm.getParameterCount(modelPtr),this.keyCounts=new Int32Array(_em.HEAP32.buffer,_csm.getParameterKeyCounts(modelPtr),length),length=_csm.getParameterCount(modelPtr),length2=new Int32Array(_em.HEAP32.buffer,_csm.getParameterKeyCounts(modelPtr),length),this.keyValues=new Array(length);for(var _keyValues=new Uint32Array(_em.HEAPU32.buffer,_csm.getParameterKeyValues(modelPtr),length),i=0;i<_keyValues.length;i++)this.keyValues[i]=new Float32Array(_em.HEAPF32.buffer,_keyValues[i],length2[i])}),Parts=(Live2DCubismCore.Parameters=Parameters,function(modelPtr){this.count=_csm.getPartCount(modelPtr),length=_csm.getPartCount(modelPtr),this.ids=new Array(length);for(var length,_ids=new Uint32Array(_em.HEAPU32.buffer,_csm.getPartIds(modelPtr),length),i=0;i<_ids.length;i++)this.ids[i]=_em.UTF8ToString(_ids[i]);length=_csm.getPartCount(modelPtr),this.opacities=new Float32Array(_em.HEAPF32.buffer,_csm.getPartOpacities(modelPtr),length),length=_csm.getPartCount(modelPtr),this.parentIndices=new Int32Array(_em.HEAP32.buffer,_csm.getPartParentPartIndices(modelPtr),length)}),Drawables=(Live2DCubismCore.Parts=Parts,function(){function Drawables(modelPtr){this._modelPtr=modelPtr;for(var length,length2=null,_ids=(this.count=_csm.getDrawableCount(modelPtr),length=_csm.getDrawableCount(modelPtr),this.ids=new Array(length),new Uint32Array(_em.HEAPU32.buffer,_csm.getDrawableIds(modelPtr),length)),i=0;i<_ids.length;i++)this.ids[i]=_em.UTF8ToString(_ids[i]);length=_csm.getDrawableCount(modelPtr),this.constantFlags=new Uint8Array(_em.HEAPU8.buffer,_csm.getDrawableConstantFlags(modelPtr),length),length=_csm.getDrawableCount(modelPtr),this.dynamicFlags=new Uint8Array(_em.HEAPU8.buffer,_csm.getDrawableDynamicFlags(modelPtr),length),length=_csm.getDrawableCount(modelPtr),this.textureIndices=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableTextureIndices(modelPtr),length),length=_csm.getDrawableCount(modelPtr),this.drawOrders=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableDrawOrders(modelPtr),length),length=_csm.getDrawableCount(modelPtr),this.renderOrders=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableRenderOrders(modelPtr),length),length=_csm.getDrawableCount(modelPtr),this.opacities=new Float32Array(_em.HEAPF32.buffer,_csm.getDrawableOpacities(modelPtr),length),length=_csm.getDrawableCount(modelPtr),this.maskCounts=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableMaskCounts(modelPtr),length),length=_csm.getDrawableCount(modelPtr),this.vertexCounts=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableVertexCounts(modelPtr),length),length=_csm.getDrawableCount(modelPtr),this.indexCounts=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableIndexCounts(modelPtr),length),length=_csm.getDrawableCount(modelPtr),this.multiplyColors=new Float32Array(_em.HEAPF32.buffer,_csm.getDrawableMultiplyColors(modelPtr),4*length),length=_csm.getDrawableCount(modelPtr),this.screenColors=new Float32Array(_em.HEAPF32.buffer,_csm.getDrawableScreenColors(modelPtr),4*length),length=_csm.getDrawableCount(modelPtr),this.parentPartIndices=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableParentPartIndices(modelPtr),length),length=_csm.getDrawableCount(modelPtr),length2=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableMaskCounts(modelPtr),length),this.masks=new Array(length);for(var _masks=new Uint32Array(_em.HEAPU32.buffer,_csm.getDrawableMasks(modelPtr),length),i=0;i<_masks.length;i++)this.masks[i]=new Int32Array(_em.HEAP32.buffer,_masks[i],length2[i]);length=_csm.getDrawableCount(modelPtr),length2=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableVertexCounts(modelPtr),length),this.vertexPositions=new Array(length);for(var _vertexPositions=new Uint32Array(_em.HEAPU32.buffer,_csm.getDrawableVertexPositions(modelPtr),length),i=0;i<_vertexPositions.length;i++)this.vertexPositions[i]=new Float32Array(_em.HEAPF32.buffer,_vertexPositions[i],2*length2[i]);length=_csm.getDrawableCount(modelPtr),length2=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableVertexCounts(modelPtr),length),this.vertexUvs=new Array(length);for(var _vertexUvs=new Uint32Array(_em.HEAPU32.buffer,_csm.getDrawableVertexUvs(modelPtr),length),i=0;i<_vertexUvs.length;i++)this.vertexUvs[i]=new Float32Array(_em.HEAPF32.buffer,_vertexUvs[i],2*length2[i]);length=_csm.getDrawableCount(modelPtr),length2=new Int32Array(_em.HEAP32.buffer,_csm.getDrawableIndexCounts(modelPtr),length),this.indices=new Array(length);for(var _indices=new Uint32Array(_em.HEAPU32.buffer,_csm.getDrawableIndices(modelPtr),length),i=0;i<_indices.length;i++)this.indices[i]=new Uint16Array(_em.HEAPU16.buffer,_indices[i],length2[i])}return Drawables.prototype.resetDynamicFlags=function(){_csm.resetDrawableDynamicFlags(this._modelPtr)},Drawables}()),Version=(Live2DCubismCore.Drawables=Drawables,function(){function Utils(){}return Utils.hasBlendAdditiveBit=function(bitfield){return 1==(1&bitfield)},Utils.hasBlendMultiplicativeBit=function(bitfield){return 2==(2&bitfield)},Utils.hasIsDoubleSidedBit=function(bitfield){return 4==(4&bitfield)},Utils.hasIsInvertedMaskBit=function(bitfield){return 8==(8&bitfield)},Utils.hasIsVisibleBit=function(bitfield){return 1==(1&bitfield)},Utils.hasVisibilityDidChangeBit=function(bitfield){return 2==(2&bitfield)},Utils.hasOpacityDidChangeBit=function(bitfield){return 4==(4&bitfield)},Utils.hasDrawOrderDidChangeBit=function(bitfield){return 8==(8&bitfield)},Utils.hasRenderOrderDidChangeBit=function(bitfield){return 16==(16&bitfield)},Utils.hasVertexPositionsDidChangeBit=function(bitfield){return 32==(32&bitfield)},Utils.hasBlendColorDidChangeBit=function(bitfield){return 64==(64&bitfield)},Utils}()),Version=(Live2DCubismCore.Utils=Version,function(){function Memory(){}return Memory.initializeAmountOfMemory=function(size){16777216<size&&_csm.initializeAmountOfMemory(size)},Memory}()),_em_module=(Live2DCubismCore.Memory=Version,_scriptDir=\"undefined\"!=typeof document&&document.currentScript?document.currentScript.src:void 0,function(_em_module){_em_module=_em_module||{};var b,n,l={};for(n in b=b||(void 0!==_em_module?_em_module:{}))b.hasOwnProperty(n)&&(l[n]=b[n]);var x,y,v,w,r=!1,p=\"object\"==typeof window,q=\"function\"==typeof importScripts,r=\"object\"==typeof process&&\"object\"==typeof process.versions&&\"string\"==typeof process.versions.node&&!p&&!q,t=!p&&!r&&!q,u=\"\",D=(r?(u=__dirname+\"/\",v=function(a,c){var d=z(a);return d||(x=x||require(\"fs\"),a=(y=y||require(\"path\")).normalize(a),d=x.readFileSync(a)),c?d:d.toString()},w=function(a){return assert((a=(a=v(a,!0)).buffer?a:new Uint8Array(a)).buffer),a},1<process.argv.length&&process.argv[1].replace(/\\\\/g,\"/\"),process.argv.slice(2),process.on(\"uncaughtException\",function(a){throw a}),process.on(\"unhandledRejection\",B),b.inspect=function(){return\"[Emscripten Module object]\"}):t?(\"undefined\"!=typeof read&&(v=function(a){var c=z(a);return c?C(c):read(a)}),w=function(a){var c;if(!(c=z(a))){if(\"function\"==typeof readbuffer)return new Uint8Array(readbuffer(a));assert(\"object\"==typeof(c=read(a,\"binary\")))}return c},\"undefined\"!=typeof print&&((console=\"undefined\"==typeof console?{}:console).log=print,console.warn=console.error=\"undefined\"!=typeof printErr?printErr:print)):(p||q)&&(q?u=self.location.href:document.currentScript&&(u=document.currentScript.src),u=0!==(u=_scriptDir||u).indexOf(\"blob:\")?u.substr(0,u.lastIndexOf(\"/\")+1):\"\",v=function(a){try{var c=new XMLHttpRequest;return c.open(\"GET\",a,!1),c.send(null),c.responseText}catch(d){if(a=z(a))return C(a);throw d}},q)&&(w=function(a){try{var c=new XMLHttpRequest;return c.open(\"GET\",a,!1),c.responseType=\"arraybuffer\",c.send(null),new Uint8Array(c.response)}catch(d){if(a=z(a))return a;throw d}}),b.print||console.log.bind(console)),E=b.printErr||console.warn.bind(console);for(n in l)l.hasOwnProperty(n)&&(b[n]=l[n]);function da(){return{exports:function(asmLibraryArg,wasmMemory,wasmTable){var scratchBuffer=new ArrayBuffer(8),b=new Int32Array(scratchBuffer),c=new Float32Array(scratchBuffer),d=new Float64Array(scratchBuffer);function f(index,value){b[index]=value}function g(){return d[0]}function h(value){d[0]=value}function j(value){c[0]=value}function k(){return c[0]}scratchBuffer=wasmMemory.buffer;var U,global,buffer,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,C,H,I,J,K,L,M,U=new Uint8Array(scratchBuffer);return(scratchBuffer=function(offset,s){var V,W;if(\"undefined\"==typeof Buffer)for(V=atob(s),W=0;W<V.length;W++)U[offset+W]=V.charCodeAt(W);else for(V=Buffer.from(s,\"base64\"),W=0;W<V.length;W++)U[offset+W]=V[W]})(1024,\"QW4gZXJyb3Igb2NjdXJyZWQgaW4gdGhlIGludGVycG9sYXRpb24gZm9yIGJsZW5kIHNoYXBlcy4gQ29tYmluYXRpb25Db3VudCBpcyAlZC4ACgBbQ1NNXSBbRV1XYXJwRGVmb3JtZXI6OlRyYW5zZm9ybVRhcmdldCgpIGVycm9yLiBbJWRdIHAwMT0oJS40ZiAsICUuNGYpCgBbQ1NNXSBbRV1Jbml0aWFsaXplRGVmb3JtZXJzKCk6IFVua25vd24gRGVmb3JtZXIgVHlwZS4KAFtDU01dIFtFXWNzbUhhc01vY0NvbnNpc3RlbmN5OiBUaGlzIG1vYzMgc2l6ZSBpcyBpbnZhbGlkLgoAW0NTTV0gW0VdJXM6ICVzCgBbQ1NNXSBbV11Sb3RhdGlvbkRlZm9ybWVyOiBOb3QgZm91bmQgdHJhbnNmb3JtZWQgRGlyZWN0aW9uLgoAW0NTTV0gW0VdVXBkYXRlRGVmb3JtZXJIaWVyYXJjaHkoKTogVW5rbm93biBEZWZvcm1lciBUeXBlLgoAJXMKACAgAE1PQzMAImFkZHJlc3MiIGlzIG51bGwuACUwMlggAFtDU01dIFtFXWNzbUhhc01vY0NvbnNpc3RlbmN5OiBGaWxlVHlwZSBpcyBpbnZhbGlkLgoAImFkZHJlc3MiIGFsaWdubWVudCBpcyBpbnZhbGlkLgBbQ1NNXSBbRV1jc21IYXNNb2NDb25zaXN0ZW5jeTogVGhpcyBtb2MzIHZlciBpcyBpbnZhbGlkIFt2ZXI6JWRdLgoAInNpemUiIGlzIGludmFsaWQuAFtDU01dIFtFXWNzbUhhc01vY0NvbnNpc3RlbmN5OiBUaGUgQ29yZSB1bnN1cHBvcnQgbGF0ZXIgdGhhbiBtb2MzIHZlcjpbJWRdLiBUaGlzIG1vYzMgdmVyIGlzIFslZF0uCgAibW9kZWwiIGlzIGludmFsaWQuAFtDU01dIFtFXWNzbUhhc01vY0NvbnNpc3RlbmN5OiBIZWFkZXIgc2VjdGlvbiBpcyBpbnZhbGlkLgoAIm91dFNpemVJblBpeGVscyIgaXMgbnVsbC4AW0NTTV0gW0VdY3NtSGFzTW9jQ29uc2lzdGVuY3k6IERhdGEgc2VjdGlvbiBpcyBpbnZhbGlkLgoAIm91dE9yaWdpbkluUGl4ZWxzIiBpcyBudWxsLgBbQ1NNXSBbRV1jc21SZXZpdmVNb2NJblBsYWNlIGlzIGZhaWxlZC4gQ29ycnVwdGVkICBtb2MzIGZpbGUuCgAib3V0UGl4ZWxzUGVyVW5pdCIgaXMgbnVsbC4AW0NTTV0gW0VdY3NtUmV2aXZlTW9jSW5QbGFjZSBpcyBmYWlsZWQuIFRoZSBDb3JlIHVuc3VwcG9ydCBsYXRlciB0aGFuIG1vYzMgdmVyOlslZF0uIFRoaXMgbW9jMyB2ZXIgaXMgWyVkXS4KACJtb2MiIGlzIGludmFsaWQuAFtDU01dIFtFXWNzbUdldE1vY1ZlcnNpb24gaXMgZmFpbGVkLiBDb3JydXB0ZWQgbW9jMyBmaWxlLgoAInNpemUiIGlzIGludmFsaWQATGl2ZTJEIEN1YmlzbSBTREsgQ29yZSBWZXJzaW9uICVkLiVkLiVkAGNzbUdldE1vY1ZlcnNpb24AY3NtSGFzTW9jQ29uc2lzdGVuY3kAY3NtUmV2aXZlTW9jSW5QbGFjZQBjc21SZWFkQ2FudmFzSW5mbwBjc21HZXRTaXplb2ZNb2RlbABjc21Jbml0aWFsaXplTW9kZWxJblBsYWNlAGNzbVVwZGF0ZU1vZGVsAGNzbUdldFBhcmFtZXRlckNvdW50AGNzbUdldFBhcmFtZXRlcklkcwBjc21HZXRQYXJhbWV0ZXJUeXBlcwBjc21HZXRQYXJhbWV0ZXJNaW5pbXVtVmFsdWVzAGNzbUdldFBhcmFtZXRlck1heGltdW1WYWx1ZXMAY3NtR2V0UGFyYW1ldGVyRGVmYXVsdFZhbHVlcwBjc21HZXRQYXJhbWV0ZXJWYWx1ZXMAY3NtR2V0UGFydENvdW50AGNzbUdldFBhcnRJZHMAY3NtR2V0UGFydE9wYWNpdGllcwBjc21HZXRQYXJ0UGFyZW50UGFydEluZGljZXMAY3NtR2V0RHJhd2FibGVDb3VudABjc21HZXREcmF3YWJsZUlkcwBjc21HZXREcmF3YWJsZUNvbnN0YW50RmxhZ3MAY3NtR2V0RHJhd2FibGVEeW5hbWljRmxhZ3MAY3NtR2V0RHJhd2FibGVUZXh0dXJlSW5kaWNlcwBjc21HZXREcmF3YWJsZURyYXdPcmRlcnMAY3NtR2V0RHJhd2FibGVSZW5kZXJPcmRlcnMAY3NtR2V0RHJhd2FibGVPcGFjaXRpZXMAY3NtR2V0RHJhd2FibGVNYXNrQ291bnRzAGNzbUdldERyYXdhYmxlTWFza3MAY3NtR2V0RHJhd2FibGVWZXJ0ZXhDb3VudHMAY3NtR2V0RHJhd2FibGVWZXJ0ZXhQb3NpdGlvbnMAY3NtR2V0RHJhd2FibGVWZXJ0ZXhVdnMAY3NtR2V0RHJhd2FibGVJbmRleENvdW50cwBjc21HZXREcmF3YWJsZUluZGljZXMAY3NtR2V0RHJhd2FibGVNdWx0aXBseUNvbG9ycwBjc21HZXREcmF3YWJsZVNjcmVlbkNvbG9ycwBjc21HZXREcmF3YWJsZVBhcmVudFBhcnRJbmRpY2VzAGNzbVJlc2V0RHJhd2FibGVEeW5hbWljRmxhZ3MAY3NtR2V0UGFyYW1ldGVyS2V5Q291bnRzAGNzbUdldFBhcmFtZXRlcktleVZhbHVlcw==\"),scratchBuffer(3228,\"Cg==\"),scratchBuffer(3267,\"//////8=\"),scratchBuffer(3336,\"LSsgICAwWDB4AChudWxsKQ==\"),scratchBuffer(3360,\"EQAKABEREQAAAAAFAAAAAAAACQAAAAAL\"),scratchBuffer(3392,\"EQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERER\"),scratchBuffer(3441,\"Cw==\"),scratchBuffer(3450,\"EQAKChEREQAKAAACAAkLAAAACQALAAAL\"),scratchBuffer(3499,\"DA==\"),scratchBuffer(3511,\"DAAAAAAMAAAAAAkMAAAAAAAMAAAM\"),scratchBuffer(3557,\"Dg==\"),scratchBuffer(3569,\"DQAAAAQNAAAAAAkOAAAAAAAOAAAO\"),scratchBuffer(3615,\"EA==\"),scratchBuffer(3627,\"DwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhIS\"),scratchBuffer(3682,\"EgAAABISEgAAAAAAAAk=\"),scratchBuffer(3731,\"Cw==\"),scratchBuffer(3743,\"CgAAAAAKAAAAAAkLAAAAAAALAAAL\"),scratchBuffer(3789,\"DA==\"),scratchBuffer(3801,\"DAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAwMTIzNDU2Nzg5QUJDREVGLTBYKzBYIDBYLTB4KzB4IDB4AGluZgBJTkYAbmFuAE5BTgAuAAAAAKgaAAAAAAAAAwAAAAQAAAAEAAAABgAAAIP5ogBETm4A/CkVANFXJwDdNPUAYtvAADyZlQBBkEMAY1H+ALveqwC3YcUAOm4kANJNQgBJBuAACeouAByS0QDrHf4AKbEcAOg+pwD1NYIARLsuAJzphAC0JnAAQX5fANaROQBTgzkAnPQ5AItfhAAo+b0A+B87AN7/lwAPmAUAES/vAApaiwBtH20Az342AAnLJwBGT7cAnmY/AC3qXwC6J3UA5evHAD178QD3OQcAklKKAPtr6gAfsV8ACF2NADADVgB7/EYA8KtrACC8zwA29JoA46kdAF5hkQAIG+YAhZllAKAUXwCNQGgAgNj/ACdzTQAGBjEAylYVAMmocwB74mAAa4zAABnERwDNZ8MACejcAFmDKgCLdsQAphyWAESv3QAZV9EApT4FAAUH/wAzfj8AwjLoAJhP3gC7fTIAJj3DAB5r7wCf+F4ANR86AH/yygDxhx0AfJAhAGokfADVbvoAMC13ABU7QwC1FMYAwxmdAK3EwgAsTUEADABdAIZ9RgDjcS0Am8aaADNiAAC00nwAtKeXADdV1QDXPvYAoxAYAE12/ABknSoAcNerAGN8+AB6sFcAFxXnAMBJVgA71tkAp4Q4ACQjywDWincAWlQjAAAfuQDxChsAGc7fAJ8x/wBmHmoAmVdhAKz7RwB+f9gAImW3ADLoiQDmv2AA78TNAGw2CQBdP9QAFt7XAFg73gDem5IA0iIoACiG6ADiWE0AxsoyAAjjFgDgfcsAF8BQAPMdpwAY4FsALhM0AIMSYgCDSAEA9Y5bAK2wfwAe6fIASEpDABBn0wCq3dgArl9CAGphzgAKKKQA05m0AAam8gBcd38Ao8KDAGE8iACKc3gAr4xaAG/XvQAtpmMA9L/LAI2B7wAmwWcAVcpFAMrZNgAoqNIAwmGNABLJdwAEJhQAEkabAMRZxADIxUQATbKRAAAX8wDUQ60AKUnlAP3VEAAAvvwAHpTMAHDO7gATPvUA7PGAALPnwwDH+CgAkwWUAMFxPgAuCbMAC0XzAIgSnACrIHsALrWfAEeSwgB7Mi8ADFVtAHKnkABr5x8AMcuWAHkWSgBBeeIA9N+JAOiUlwDi5oQAmTGXAIjtawBfXzYAu/0OAEiatABnpGwAcXJCAI1dMgCfFbgAvOUJAI0xJQD3dDkAMAUcAA0MAQBLCGgALO5YAEeqkAB05wIAvdYkAPd9pgBuSHIAnxbvAI6UpgC0kfYA0VNRAM8K8gAgmDMA9Ut+ALJjaADdPl8AQF0DAIWJfwBVUikAN2TAAG3YEAAySDIAW0x1AE5x1ABFVG4ACwnBACr1aQAUZtUAJwedAF0EUAC0O9sA6nbFAIf5FwBJa30AHSe6AJZpKQDGzKwArRRUAJDiagCI2YkALHJQAASkvgB3B5QA8zBwAAD8JwDqcagAZsJJAGTgPQCX3YMAoz+XAEOU/QANhowAMUHeAJI5nQDdcIwAF7fnAAjfOwAVNysAXICgAFqAkwAQEZIAD+jYAGyArwDb/0sAOJAPAFkYdgBipRUAYcu7AMeJuQAQQL0A0vIEAEl1JwDrtvYA2yK7AAoUqgCJJi8AZIN2AAk7MwAOlBoAUTqqAB2jwgCv7a4AXCYSAG3CTQAtepwAwFaXAAM/gwAJ8PYAK0CMAG0xmQA5tAcADCAVANjDWwD1ksQAxq1LAE7KpQCnN80A5qk2AKuSlADdQmgAGWPeAHaM7wBoi1IA/Ns3AK6hqwDfFTEAAK6hAAz72gBkTWYA7QW3ACllMABXVr8AR/86AGr5uQB1vvMAKJPfAKuAMABmjPYABMsVAPoiBgDZ5B0APbOkAFcbjwA2zQkATkLpABO+pAAzI7UA8KoaAE9lqADSwaUACz8PAFt4zQAj+XYAe4sEAIkXcgDGplMAb27iAO/rAACbSlgAxNq3AKpmugB2z88A0QIdALHxLQCMmcEAw613AIZI2gD3XaAAxoD0AKzwLwDd7JoAP1y8ANDebQCQxx8AKtu2AKMlOgAAr5oArVOTALZXBAApLbQAS4B+ANoHpwB2qg4Ae1mhABYSKgDcty0A+uX9AInb/gCJvv0A5HZsAAap/AA+gHAAhW4VAP2H/wAoPgcAYWczACoYhgBNveoAs+evAI9tbgCVZzkAMb9bAITXSAAw3xYAxy1DACVhNQDJcM4AMMu4AL9s/QCkAKIABWzkAFrdoAAhb0cAYhLSALlchABwYUkAa1bgAJlSAQBQVTcAHtW3ADPxxAATbl8AXTDkAIUuqQAdssMAoTI2AAi3pADqsdQAFvchAI9p5AAn/3cADAOAAI1ALQBPzaAAIKWZALOi0wAvXQoAtPlCABHaywB9vtAAm9vBAKsXvQDKooEACGpcAC5VFwAnAFUAfxTwAOEHhgAUC2QAlkGNAIe+3gDa/SoAayW2AHuJNAAF8/4Aub+eAGhqTwBKKqgAT8RaAC34vADXWpgA9MeVAA1NjQAgOqYApFdfABQ/sQCAOJUAzCABAHHdhgDJ3rYAv2D1AE1lEQABB2sAjLCsALLA0ABRVUgAHvsOAJVywwCjBjsAwEA1AAbcewDgRcwATin6ANbKyADo80EAfGTeAJtk2ADZvjEApJfDAHdY1ABp48UA8NoTALo6PABGGEYAVXVfANK99QBuksYArC5dAA5E7QAcPkIAYcSHACn96QDn1vMAInzKAG+RNQAI4MUA/9eNAG5q4gCw/cYAkwjBAHxddABrrbIAzW6dAD5yewDGEWoA98+pAClz3wC1yboAtwBRAOKyDQB0uiQA5X1gAHTYigANFSwAgRgMAH5mlAABKRYAn3p2AP39vgBWRe8A2X42AOzZEwCLurkAxJf8ADGoJwDxbsMAlMU2ANioVgC0qLUAz8wOABKJLQBvVzQALFaJAJnO4wDWILkAa16qAD4qnAARX8wA/QtKAOH0+wCOO20A4oYsAOnUhAD8tKkA7+7RAC41yQAvOWEAOCFEABvZyACB/AoA+0pqAC8c2ABTtIQATpmMAFQizAAqVdwAwMbWAAsZlgAacLgAaZVkACZaYAA/Uu4AfxEPAPS1EQD8y/UANLwtADS87gDoXcwA3V5gAGeOmwCSM+8AyRe4AGFYmwDhV7wAUYPGANg+EADdcUgALRzdAK8YoQAhLEYAWfPXANl6mACeVMAAT4b6AFYG/ADlea4AiSI2ADitIgBnk9wAVeiqAIImOADK55sAUQ2kAJkzsQCp1w4AaQVIAGWy8AB/iKcAiEyXAPnRNgAhkrMAe4JKAJjPIQBAn9wA3EdVAOF0OgBn60IA/p3fAF7UXwB7Z6QAuqx6AFX2ogAriCMAQbpVAFluCAAhKoYAOUeDAInj5gDlntQASftAAP9W6QAcD8oAxVmKAJT6KwDTwcUAD8XPANtargBHxYYAhUNiACGGOwAseZQAEGGHACpMewCALBoAQ78SAIgmkAB4PIkAqMTkAOXbewDEOsIAJvTqAPdnigANkr8AZaMrAD2TsQC9fAsApFHcACfdYwBp4d0AmpQZAKgplQBozigACe20AESfIABOmMoAcIJjAH58IwAPuTIAp/WOABRW5wAh8QgAtZ0qAG9+TQClGVEAtfmrAILf1gCW3WEAFjYCAMQ6nwCDoqEAcu1tADmNegCCuKkAazJcAEYnWwAANO0A0gB3APz0VQABWU0A4HGA\"),scratchBuffer(6675,\"QPsh+T8AAAAALUR0PgAAAICYRvg8AAAAYFHMeDsAAACAgxvwOQAAAEAgJXo4AAAAgCKC4zYAAAAAHfNpNThj7T7aD0k/Xph7P9oPyT9pN6wxaCEiM7QPFDNoIaIz2w9JP9sPSb/kyxZA5MsWwAAAAAAAAACA2w9JQNsPScAAAIA/AADAPwAAAADcz9E1AAAAAADAFT8=\"),scratchBuffer(6824,\"BQ==\"),scratchBuffer(6836,\"DQ==\"),scratchBuffer(6860,\"DgAAAA8AAABYHAAAAAQ=\"),scratchBuffer(6884,\"AQ==\"),scratchBuffer(6899,\"Cv////8=\"),scratchBuffer(7156,\"gCA=\"),global={Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,NaN:NaN,Infinity:1/0,Math:Math},buffer=wasmMemory.buffer,m=(scratchBuffer=asmLibraryArg).memory,n=wasmTable,o=new global.Int8Array(buffer),p=new global.Int16Array(buffer),q=new global.Int32Array(buffer),r=new global.Uint8Array(buffer),s=new global.Uint16Array(buffer),t=new global.Uint32Array(buffer),u=new global.Float32Array(buffer),v=new global.Float64Array(buffer),w=global.Math.imul,x=global.Math.fround,y=global.Math.abs,z=global.Math.clz32,A=global.Math.min,global.Math.max,C=global.Math.floor,global.Math.ceil,global.Math.sqrt,scratchBuffer.abort,global.NaN,H=global.Infinity,I=scratchBuffer.a,J=scratchBuffer.b,K=scratchBuffer.c,L=5251744,M=0,n[1]=function(a,Ln,Mn,Nn,On){a|=0,Ln|=0,Mn|=0,Nn|=0,On|=0;var Wn,ko,lo,oo,qo,ro,so,to,uo,vo,wo,xo,yo,zo,Ao,Bo,Co,Do,Eo,Fo,Go,Ho,Io,po,Pn=0,Qn=x(0),Rn=x(0),Sn=0,Tn=x(0),Un=x(0),Vn=x(0),Xn=x(0),Yn=x(0),Zn=x(0),_n=x(0),$n=x(0),ao=x(0),bo=x(0),co=x(0),eo=x(0),fo=x(0),go=x(0),ho=x(0),io=x(0),jo=x(0),mo=x(0),no=x(0),Jo=(x(0),x(0),x(0),x(0),x(0),x(0),x(0),x(0),x(0),0);if(L=po=L-32|0,1<=(0|On))for(Wn=q[16+(q[a+308>>2]+(Ln<<5)|0)>>2],Pn=q[a+60>>2]+w(Wn,24)|0,Ln=(ko=q[Pn+8>>2])+-1|0,xo=(qo=q[Pn+4>>2])+-1|0,yo=uo=(Wn=q[q[a+152>>2]+(Wn<<2)>>2])+(ko<<3)|0,zo=vo=Wn+((to=w(qo,lo=ko+1|0))<<3)|0,Ao=wo=Wn+(ko+to<<3)|0,Io=q[Pn+12>>2],ro=x(0|qo),so=x(0|ko),a=0;Vn=u[4+(Pn=(oo=a<<3)+Mn|0)>>2],Rn=x(Vn*ro),Xn=u[Pn>>2],Qn=x(Xn*so),Pn=Vn>=x(1),Rn=!(Vn<x(0)^1)||Pn|Xn>=x(1)|Xn<x(0)?(Jo||(ao=u[4+Ao>>2],Bo=u[Wn+4>>2],Yn=x(ao-Bo),Co=u[4+yo>>2],Do=u[4+zo>>2],Zn=x(Co-Do),bo=x(x(Yn-Zn)*x(.5)),Eo=u[wo>>2],Fo=u[Wn>>2],_n=x(Eo-Fo),Go=u[uo>>2],Ho=u[vo>>2],$n=x(Go-Ho),co=x(x(_n-$n)*x(.5)),Zn=x(x(Zn+Yn)*x(.5)),$n=x(x($n+_n)*x(.5)),Jo=1,Yn=x(x(x(x(x(Bo+Co)+Do)+ao)*x(.25))-x(Yn*x(.5))),_n=x(x(x(x(x(Fo+Go)+Ho)+Eo)*x(.25))-x(_n*x(.5)))),Vn<x(3)^1|Xn>x(-2)^1|(Xn<x(3)^1|Vn>x(-2)^1)?(u[Nn+oo>>2]=x(Vn*co)+x(x(Xn*$n)+_n),Qn=x(Vn*bo),x(x(Xn*Zn)+Yn)):(Xn<=x(0)?Vn<=x(0)?(Un=x(x(Vn+x(2))*x(.5)),Tn=x(x(Xn+x(2))*x(.5)),Qn=x(bo+bo),mo=x(Yn-Qn),Rn=x(co+co),no=x(_n-Rn),io=x(Yn-x(Zn+Zn)),eo=x(io-Qn),jo=x(_n-x($n+$n)),fo=x(jo-Rn),go=u[Wn+4>>2],ho=u[Wn>>2]):Pn?(Qn=x(bo*x(3)),Rn=x(Yn-x(Zn+Zn)),io=x(Qn+Rn),eo=x(co*x(3)),fo=x(_n-x($n+$n)),jo=x(eo+fo),Un=x(x(Vn+x(-1))*x(.5)),Tn=x(x(Xn+x(2))*x(.5)),go=x(Qn+Yn),ho=x(eo+_n),eo=x(bo+Rn),fo=x(co+fo),mo=u[4+zo>>2],no=u[vo>>2]):(Qn=x(Yn-x(Zn+Zn)),Pn=xo,Sn=x(y(Rn))<x(2147483648)?~~Rn:-2147483648,Un=x(0|(Pn=(0|Sn)==(0|qo)?Pn:Sn)),Tn=x(Un/ro),eo=x(x(Tn*bo)+Qn),ao=x(Tn*co),Tn=x(_n-x($n+$n)),fo=x(ao+Tn),Vn=x(x(0|(Sn=Pn+1|0))/ro),io=x(x(Vn*bo)+Qn),jo=x(x(Vn*co)+Tn),Tn=x(x(Xn+x(2))*x(.5)),Un=x(Rn-Un),Pn=Wn+(w(Pn,lo)<<3)|0,mo=u[Pn+4>>2],no=u[Pn>>2],Pn=Wn+(w(Sn,lo)<<3)|0,go=u[Pn+4>>2],ho=u[Pn>>2]):Xn>=x(1)?Vn<=x(0)?(Un=x(x(Vn+x(2))*x(.5)),Tn=x(x(Xn+x(-1))*x(.5)),Qn=x(bo+bo),eo=x(x(Zn+Yn)-Qn),Rn=x(co+co),fo=x(x($n+_n)-Rn),go=x(x(Zn*x(3))+Yn),mo=x(go-Qn),ho=x(x($n*x(3))+_n),no=x(ho-Rn),io=u[4+yo>>2],jo=u[uo>>2]):Pn?(Qn=x(bo*x(3)),io=x(Qn+x(Zn+Yn)),Rn=x(co*x(3)),jo=x(Rn+x($n+_n)),ao=Qn,Qn=x(x(Zn*x(3))+Yn),go=x(ao+Qn),ao=Rn,Rn=x(x($n*x(3))+_n),ho=x(ao+Rn),Un=x(x(Vn+x(-1))*x(.5)),Tn=x(x(Xn+x(-1))*x(.5)),mo=x(bo+Qn),no=x(co+Rn),eo=u[4+Ao>>2],fo=u[wo>>2]):(Qn=x(x(Zn*x(3))+Yn),Pn=xo,Sn=x(y(Rn))<x(2147483648)?~~Rn:-2147483648,Un=x(0|(Pn=(0|Sn)==(0|qo)?Pn:Sn)),Tn=x(Un/ro),mo=x(x(Tn*bo)+Qn),ao=x(Tn*co),Tn=x(x($n*x(3))+_n),no=x(ao+Tn),Vn=x(x(0|(Sn=Pn+1|0))/ro),go=x(x(Vn*bo)+Qn),ho=x(x(Vn*co)+Tn),Tn=x(x(Xn+x(-1))*x(.5)),Un=x(Rn-Un),Pn=Wn+(w(Pn,lo)+ko<<3)|0,eo=u[Pn+4>>2],fo=u[Pn>>2],Pn=Wn+(w(Sn,lo)+ko<<3)|0,io=u[Pn+4>>2],jo=u[Pn>>2]):Vn<=x(0)?(Un=x(x(Vn+x(2))*x(.5)),Pn=Ln,Sn=x(y(Rn=Qn))<x(2147483648)?~~Qn:-2147483648,Qn=x(0|(Pn=(0|Sn)==(0|ko)?Pn:Sn)),Tn=x(Rn-Qn),Qn=x(Qn/so),Rn=x(bo+bo),eo=x(x(x(Qn*Zn)+Yn)-Rn),ao=x(x(Qn*$n)+_n),Qn=x(co+co),fo=x(ao-Qn),Vn=x(x(0|(Sn=Pn+1|0))/so),mo=x(x(x(Vn*Zn)+Yn)-Rn),no=x(x(x(Vn*$n)+_n)-Qn),io=u[4+(Pn=Wn+(Pn<<3)|0)>>2],jo=u[Pn>>2],go=u[4+(Pn=Wn+(Sn<<3)|0)>>2],ho=u[Pn>>2]):Pn?(ao=Rn=x(bo*x(3)),Pn=Ln,Sn=x(y(Qn))<x(2147483648)?~~Qn:-2147483648,Tn=x(0|(Pn=(0|Sn)==(0|ko)?Pn:Sn)),Un=x(Tn/so),io=x(ao+x(x(Un*Zn)+Yn)),Xn=x(co*x(3)),jo=x(Xn+x(x(Un*$n)+_n)),ao=Rn,Rn=x(x(0|(Sn=Pn+1|0))/so),go=x(ao+x(x(Rn*Zn)+Yn)),ho=x(Xn+x(x(Rn*$n)+_n)),Un=x(x(Vn+x(-1))*x(.5)),Tn=x(Qn-Tn),eo=u[4+(Pn=Wn+(Pn+to<<3)|0)>>2],fo=u[Pn>>2],mo=u[4+(Pn=Wn+(Sn+to<<3)|0)>>2],no=u[Pn>>2]):(v[16+po>>3]=Vn,q[po>>2]=a,v[8+po>>3]=Xn,Y(4,1107,po)),x(Tn+Un)<=x(1)?(u[Nn+oo>>2]=x(fo+x(x(no-fo)*Tn))+x(x(jo-fo)*Un),Qn=x(eo+x(x(mo-eo)*Tn)),x(x(io-eo)*Un)):(Qn=x(x(1)-Tn),Rn=x(x(1)-Un),u[Nn+oo>>2]=x(ho+x(x(jo-ho)*Qn))+x(x(no-ho)*Rn),Qn=x(go+x(x(io-go)*Qn)),x(x(mo-go)*Rn)))):(Pn=x(y(ao=Rn))<x(2147483648)?~~Rn:-2147483648,Un=x(ao-x(0|Pn)),Sn=x(y(Rn=Qn))<x(2147483648)?~~Qn:-2147483648,Tn=x(Rn-x(0|Sn)),Pn=Sn+w(Pn,lo)|0,Io?(Qn=x(x(1)-Un),Rn=x(x(1)-Tn),Sn=Wn+(Pn<<3)|0,Pn=Wn+(Pn+lo<<3)|0,u[Nn+oo>>2]=x(x(x(Qn*x(Rn*u[Sn>>2]))+x(Qn*x(Tn*u[Sn+8>>2])))+x(Un*x(Rn*u[Pn>>2])))+x(Un*x(Tn*u[Pn+8>>2])),Qn=x(x(x(Qn*x(Rn*u[Sn+4>>2]))+x(Qn*x(Tn*u[Sn+12>>2])))+x(Un*x(Rn*u[Pn+4>>2]))),x(Un*x(Tn*u[Pn+12>>2]))):x(Tn+Un)<=x(1)?(Qn=x(x(x(1)-Tn)-Un),Sn=Wn+(Pn<<3)|0,Pn=Wn+(Pn+lo<<3)|0,u[Nn+oo>>2]=x(x(Qn*u[Sn>>2])+x(Tn*u[Sn+8>>2]))+x(Un*u[Pn>>2]),Qn=x(x(Qn*u[Sn+4>>2])+x(Tn*u[Sn+12>>2])),x(Un*u[Pn+4>>2])):(Qn=x(x(Tn+x(-1))+Un),Sn=Wn+(Pn+lo<<3)|0,Rn=x(x(1)-Tn),Vn=x(x(1)-Un),Pn=Wn+(Pn<<3)|0,u[Nn+oo>>2]=x(x(Qn*u[Sn+8>>2])+x(Rn*u[Sn>>2]))+x(Vn*u[Pn+8>>2]),Qn=x(x(Qn*u[Sn+12>>2])+x(Rn*u[Sn+4>>2])),x(Vn*u[Pn+12>>2]))),u[4+(Nn+oo|0)>>2]=Qn+Rn,(0|On)!=(0|(a=a+1|0)););L=32+po|0},n[2]=function(a,mh){a|=0,mh|=0;var Dh=0,Eh=0,Fh=0,Gh=0,Hh=0,Ih=x(0),Jh=0,Kh=0,Mh=(x(0),0),Nh=0,Gh=q[a+320>>2],Dh=q[a+316>>2],Hh=q[a+308>>2];-1==(0|(Eh=q[8+(Fh=Hh+(mh<<5)|0)>>2]))?(q[(Nh=Dh)+(Dh=mh<<2)>>2]=q[q[a+148>>2]+(q[Fh+16>>2]<<2)>>2],q[Dh+Gh>>2]=1065353216):(Jh=q[Fh+16>>2],Kh=q[q[a+152>>2]+(Jh<<2)>>2],n[q[24+(Hh+(Eh<<5)|0)>>2]](a,Eh,Kh,Kh,q[16+(q[a+60>>2]+w(Jh,24)|0)>>2]),Ih=u[q[a+148>>2]+(q[Fh+16>>2]<<2)>>2],Fh=q[Fh+8>>2]<<2,u[(Eh=mh<<2)+Dh>>2]=Ih*u[Fh+Dh>>2],q[Eh+Gh>>2]=q[Fh+Gh>>2]),4<=r[q[a>>2]+4|0]&&(Gh=mh<<2,Dh=q[a+308>>2]+(mh<<5)|0,Eh=q[Dh+16>>2]<<2,Fh=q[a+328>>2],mh=q[a+324>>2],-1==(0|(Hh=q[Dh+8>>2]))?(Hh=q[a+156>>2],q[(Dh=Gh<<2)+mh>>2]=q[Hh+(Eh<<=2)>>2],q[(Jh=4|Dh)+mh>>2]=q[(Kh=4|Eh)+Hh>>2],q[(Mh=8|Dh)+mh>>2]=q[Hh+(Nh=8|Eh)>>2],q[mh+((Gh|=3)<<2)>>2]=1065353216,a=q[a+160>>2],q[Dh+Fh>>2]=q[a+Eh>>2],q[Fh+Jh>>2]=q[a+Kh>>2],q[Fh+Mh>>2]=q[a+Nh>>2]):(Eh=(Kh=Eh<<2)+q[a+156>>2]|0,u[(Dh=(Jh=Gh<<2)+mh|0)>>2]=u[Eh>>2]*u[(Hh=(Mh=Hh<<4)+mh|0)>>2],u[Dh+4>>2]=u[Eh+4>>2]*u[Hh+4>>2],u[Dh+8>>2]=u[Eh+8>>2]*u[Hh+8>>2],q[mh+((Gh|=3)<<2)>>2]=1065353216,a=Kh+q[a+160>>2]|0,Nh=u[a>>2],Ih=u[(Dh=Fh+Mh|0)>>2],u[(mh=Fh+Jh|0)>>2]=x(Nh+Ih)-x(Nh*Ih),Nh=u[a+4>>2],Ih=u[Dh+4>>2],u[mh+4>>2]=x(Nh+Ih)-x(Nh*Ih),Nh=u[a+8>>2],Ih=u[Dh+8>>2],u[mh+8>>2]=x(Nh+Ih)-x(Nh*Ih)),q[Fh+(Gh<<2)>>2]=1065353216)},n[3]=function(a,Sm,un,xn,yn){a|=0,Sm|=0,un|=0,xn|=0,yn|=0;var Dn,En,Fn,Hn,In,zn=0,zn=(x(0),x(0),x(0),x(0),x(0),x(0),x(0),x(0),(Sm=q[16+(q[a+308>>2]+(Sm<<5)|0)>>2])<<2),Bn=function(a){var El,Hl,Fl,Gl,Dl=x(0);L=Fl=L-16|0,j(a);a:if((El=2147483647&(Gl=b[0]))>>>0<=1061752794)Dl=x(1),El>>>0<964689920||(Dl=ba(+a));else if(El>>>0<=1081824209)Hl=+a,Dl=1075235812<=El>>>0?x(-ba(((0|Gl)<0?3.141592653589793:-3.141592653589793)+Hl)):aa((0|Gl)<=-1?1.5707963267948966+Hl:1.5707963267948966-Hl);else if(El>>>0<=1088565717)Dl=1085271520<=El>>>0?ba(+a+((0|Gl)<0?6.283185307179586:-6.283185307179586)):aa((0|Gl)<=-1?-4.71238898038469-+a:+a-4.71238898038469);else if(Dl=x(a-a),!(2139095040<=El>>>0))if((El=3&Da(a,8+Fl|0))>>>0<=2){switch(El-1|0){default:Dl=ba(v[8+Fl>>3]);break a;case 0:Dl=aa(-v[8+Fl>>3]);break a;case 1:}Dl=x(-ba(v[8+Fl>>3]))}else Dl=aa(v[8+Fl>>3]);return L=16+Fl|0,Dl}(An=x(x(x(u[4+(q[a+168>>2]+w(Sm,12)|0)>>2]+u[zn+q[a+284>>2]>>2])*x(3.1415927410125732))/x(180))),Cn=u[zn+q[a+272>>2]>>2],Gn=q[zn+q[a+292>>2]>>2],An=function(a){var Vk,Al,Cl,Bl=0;L=Al=L-16|0,j(a);a:if((Vk=2147483647&(Cl=b[0]))>>>0<=1061752794)Vk>>>0<964689920||(a=aa(+a));else if(Vk>>>0<=1081824209)Bl=+a,a=Vk>>>0<=1075235811?(0|Cl)<=-1?x(-ba(Bl+1.5707963267948966)):ba(Bl+-1.5707963267948966):aa(-(((0|Cl)<0?3.141592653589793:-3.141592653589793)+Bl));else if(Vk>>>0<=1088565717)Bl=+a,a=Vk>>>0<=1085271519?(0|Cl)<=-1?ba(Bl+4.71238898038469):x(-ba(Bl+-4.71238898038469)):aa(((0|Cl)<0?6.283185307179586:-6.283185307179586)+Bl);else if(2139095040<=Vk>>>0)a=x(a-a);else if((Vk=3&Da(a,8+Al|0))>>>0<=2){switch(Vk-1|0){default:a=aa(v[8+Al>>3]);break a;case 0:a=ba(v[8+Al>>3]);break a;case 1:}a=aa(-v[8+Al>>3])}else a=x(-ba(v[8+Al>>3]));return L=16+Al|0,a}(An);if((Sm=0)<(0|yn))for(Bn=x(Cn*Bn),En=x(Gn?-1:1),Hn=x(Bn*En),Dn=q[zn+q[a+288>>2]>>2]?x(-1):x(1),In=x(x(Cn*An)*Dn),Bn=x(Bn*Dn),Cn=x(x(Cn*x(-An))*En),An=u[zn+q[a+280>>2]>>2],En=u[zn+q[a+276>>2]>>2];zn=(a=Sm<<3)+xn|0,Dn=u[(a=a+un|0)>>2],Fn=u[a+4>>2],u[zn+4>>2]=An+x(x(In*Dn)+x(Hn*Fn)),u[zn>>2]=En+x(x(Bn*Dn)+x(Cn*Fn)),(0|yn)!=(0|(Sm=Sm+1|0)););},n[4]=function(a,mh){a|=0,mh|=0;var yh,zh,Ah,Bh,Ch,nh,oh=0,ph=0,qh=0,rh=x(0),sh=0,th=0,uh=x(0),vh=0,wh=0,xh=0;if(x(0),x(0),x(0),x(0),L=nh=L+-64|0,vh=q[a+320>>2],wh=q[a+316>>2],ph=q[a+308>>2],-1==(0|(sh=q[8+(qh=ph+(mh<<5)|0)>>2])))oh=q[qh+16>>2]<<2,q[(ph=mh<<2)+wh>>2]=q[oh+q[a+268>>2]>>2],q[ph+vh>>2]=q[oh+q[a+272>>2]>>2];else{oh=q[qh+16>>2]<<2,xh=q[oh+q[a+276>>2]>>2],q[24+nh>>2]=xh,oh=q[oh+q[a+280>>2]>>2],q[28+nh>>2]=oh,q[16+nh>>2]=0,zh=1==q[12+(th=ph+(sh<<5)|0)>>2]?x(-10):x(-.10000000149011612),u[20+nh>>2]=zh,q[60+nh>>2]=oh,q[56+nh>>2]=xh,n[q[th+24>>2]](a,sh,56+nh|0,48+nh|0,1),rh=x(1),ph=9;b:{for(;;){if(oh=ph,uh=x(rh*x(0)),u[32+nh>>2]=uh+u[56+nh>>2],yh=x(zh*rh),u[36+nh>>2]=yh+u[60+nh>>2],n[q[th+24>>2]](a,sh,32+nh|0,40+nh|0,1),Ah=x(u[44+nh>>2]-u[52+nh>>2]),u[44+nh>>2]=Ah,Bh=x(u[40+nh>>2]-u[48+nh>>2]),u[40+nh>>2]=Bh,Ah!=x(0)||Bh!=x(0)){ph=q[44+nh>>2],q[8+nh>>2]=q[40+nh>>2],q[12+nh>>2]=ph;break b}if(u[32+nh>>2]=u[56+nh>>2]-uh,u[36+nh>>2]=u[60+nh>>2]-yh,n[q[th+24>>2]](a,sh,32+nh|0,40+nh|0,1),uh=x(u[40+nh>>2]-u[48+nh>>2]),u[40+nh>>2]=uh,yh=x(u[44+nh>>2]-u[52+nh>>2]),(u[44+nh>>2]=yh)!=x(0)||uh!=x(0)){u[12+nh>>2]=-yh,u[8+nh>>2]=-uh;break b}if(ph=oh+-1|0,rh=x(rh*x(.10000000149011612)),!oh)break}Y(3,1311,0)}rh=function(a,ji){var ki=x(0);if((ki=x(Ba(u[4+a>>2],u[a>>2])-Ba(u[4+ji>>2],u[ji>>2])))<x(-3.1415927410125732))for(;(ki=x(ki+x(6.2831854820251465)))<x(-3.1415927410125732););if(ki>x(3.1415927410125732))for(;(ki=x(ki+x(-6.2831854820251465)))>x(3.1415927410125732););return ki}(16+nh|0,8+nh|0),n[q[th+24>>2]](a,q[qh+8>>2],24+nh|0,24+nh|0,1),ph=q[qh+16>>2]<<2,q[ph+q[a+276>>2]>>2]=q[24+nh>>2],q[ph+q[a+280>>2]>>2]=q[28+nh>>2],oh=ph+q[a+284>>2]|0,u[oh>>2]=u[oh>>2]+x(x(rh*x(-180))/x(3.1415927410125732)),qh=q[qh+8>>2]<<2,u[(oh=mh<<2)+wh>>2]=u[ph+q[a+268>>2]>>2]*u[qh+wh>>2],ph=ph+q[a+272>>2]|0,rh=x(u[ph>>2]*u[qh+vh>>2]),u[oh+vh>>2]=rh,u[ph>>2]=rh}4<=r[q[a>>2]+4|0]&&(oh=mh<<2,qh=q[a+308>>2]+(mh<<5)|0,sh=q[qh+16>>2]<<2,ph=q[a+328>>2],mh=q[a+324>>2],-1==(0|(th=q[qh+8>>2]))?(th=q[a+296>>2],q[(qh=oh<<2)+mh>>2]=q[th+(sh<<=2)>>2],q[(vh=4|qh)+mh>>2]=q[(wh=4|sh)+th>>2],q[(xh=8|qh)+mh>>2]=q[th+(Ch=8|sh)>>2],q[mh+((oh|=3)<<2)>>2]=1065353216,a=q[a+300>>2],q[ph+qh>>2]=q[a+sh>>2],q[ph+vh>>2]=q[a+wh>>2],q[ph+xh>>2]=q[a+Ch>>2]):(sh=(wh=sh<<2)+q[a+296>>2]|0,u[(qh=(vh=oh<<2)+mh|0)>>2]=u[sh>>2]*u[(th=(xh=th<<4)+mh|0)>>2],u[qh+4>>2]=u[sh+4>>2]*u[th+4>>2],u[qh+8>>2]=u[sh+8>>2]*u[th+8>>2],q[mh+((oh|=3)<<2)>>2]=1065353216,a=wh+q[a+300>>2]|0,rh=u[a>>2],uh=u[(qh=ph+xh|0)>>2],u[(mh=ph+vh|0)>>2]=x(rh+uh)-x(rh*uh),rh=u[a+4>>2],uh=u[qh+4>>2],u[mh+4>>2]=x(rh+uh)-x(rh*uh),rh=u[a+8>>2],uh=u[qh+8>>2],u[mh+8>>2]=x(rh+uh)-x(rh*uh)),q[ph+(oh<<2)>>2]=1065353216),L=64+nh|0},n[5]=function(a,Vk){return a|=0,Vk|=0,x(0),x(0),0|((a=u[a>>2])<(Vk=u[Vk>>2])?-1:Vk<a)},n[6]=function(a,vj,xj,yj){a|=0,vj|=0,xj|=0,yj|=0;var Vj=0,Wj=0,Xj=x(0),Yj=0,Zj=0,_j=0,$j=0,ak=0;if(1<=(0|(Yj=q[a+8>>2])))for(_j=q[a+12>>2],Zj=q[a+20>>2];u[(Wj=Vj<<2)+_j>>2]=u[vj+Wj>>2]*u[Wj+Zj>>2],(0|(Vj=Vj+1|0))<(0|Yj););if(!((0|(Yj=q[a>>2]))<1))if(_j=q[a+4>>2],yj)for(Wj=vj=0;;){if(q[yj>>2]){if((0|(Vj=q[(Zj=vj<<2)+q[a+16>>2]>>2]))<1)Xj=x(0);else for($j=Vj+Wj|0,ak=q[a+12>>2],Xj=x(0),Vj=Wj;Xj=x(Xj+u[ak+(Vj<<2)>>2]),(0|(Vj=Vj+1|0))<(0|$j););u[xj+Zj>>2]=Xj}if(yj=yj+4|0,Wj=q[_j+(vj<<2)>>2]+Wj|0,!((0|(vj=vj+1|0))<(0|Yj)))break}else for(Zj=q[a+16>>2],vj=yj=0;;){if((0|(Vj=q[(Wj=yj<<2)+Zj>>2]))<=0)Xj=x(0);else for($j=vj+Vj|0,ak=q[a+12>>2],Xj=x(0),Vj=vj;Xj=x(Xj+u[ak+(Vj<<2)>>2]),(0|(Vj=Vj+1|0))<(0|$j););if(u[xj+Wj>>2]=Xj,vj=q[Wj+_j>>2]+vj|0,!((0|(yj=yj+1|0))<(0|Yj)))break}},n[7]=function(a,vj,xj,yj){a|=0,vj|=0,xj|=0,yj|=0;var zj=0,Aj=x(0),Qj=0,Rj=0,Sj=0,Tj=0,Uj=0;if(1<=(0|(Tj=q[a+8>>2])))for(Rj=q[a+12>>2],Sj=q[a+20>>2];u[(Qj=zj<<2)+Rj>>2]=u[vj+Qj>>2]*u[Qj+Sj>>2],(0|(zj=zj+1|0))<(0|Tj););if(!((0|(zj=q[a>>2]))<1))if(Tj=q[a+4>>2],yj)for(Qj=vj=0;;){if(q[yj>>2]){if((0|(zj=q[(Rj=vj<<2)+q[a+16>>2]>>2]))<1)Aj=x(0);else for(Sj=zj+Qj|0,Uj=q[a+12>>2],Aj=x(0),zj=Qj;Aj=x(Aj+u[Uj+(zj<<2)>>2]),(0|(zj=zj+1|0))<(0|Sj););zj=xj+Rj|0,Aj=x(Aj+x(.0010000000474974513)),Rj=x(y(Aj))<x(2147483648)?~~Aj:-2147483648,q[zj>>2]=Rj,zj=q[a>>2]}if(yj=yj+4|0,Qj=q[Tj+(vj<<2)>>2]+Qj|0,!((0|(vj=vj+1|0))<(0|zj)))break}else for(Rj=q[a+16>>2],vj=yj=0;;){if((0|(zj=q[(Qj=yj<<2)+Rj>>2]))<=0)Aj=x(0);else for(Sj=vj+zj|0,Uj=q[a+12>>2],Aj=x(0),zj=vj;Aj=x(Aj+u[Uj+(zj<<2)>>2]),(0|(zj=zj+1|0))<(0|Sj););if(zj=xj+Qj|0,Aj=x(Aj+x(.0010000000474974513)),Sj=x(y(Aj))<x(2147483648)?~~Aj:-2147483648,q[zj>>2]=Sj,vj=q[Qj+Tj>>2]+vj|0,!((0|(yj=yj+1|0))<q[a>>2]))break}},n[8]=function(a,vj,xj,yj,zj,Aj){a|=0,vj|=0,xj|=0,yj|=0,zj|=0,Aj|=0;var Oj,Pj,Bj=0,Cj=0,Dj=0,Ej=0,Fj=0,Gj=0,Hj=0,Ij=0,Kj=0,Lj=0,Mj=x(0),Nj=0,Jj=q[a>>2];if(!((0|Jj)<1))if(Oj=zj<<2,Pj=q[a+4>>2],Aj)for(;;){if(q[Aj>>2]&&(Dj=q[(Bj=Ej<<2)+q[a+16>>2]>>2],Hj=q[xj+Bj>>2],Cj=q[yj+Bj>>2],(Bj=(0|(Ij=w(Cj,zj)))<1)||ca(Hj,0,w(Cj,Oj)),!(Bj|(0|Dj)<1)))for(Kj=Dj+Gj|0,Lj=q[a+20>>2],Bj=Gj;;){for(Mj=u[(Cj=Bj<<2)+Lj>>2],Nj=q[vj+Cj>>2],Fj=0;u[(Cj=(Dj=Fj<<2)+Hj|0)>>2]=u[Cj>>2]+x(Mj*u[Dj+Nj>>2]),(0|Ij)!=(0|(Fj=Fj+1|0)););if(!((0|(Bj=Bj+1|0))<(0|Kj)))break}if(Aj=Aj+4|0,Gj=q[(Ej<<2)+Pj>>2]+Gj|0,!((0|(Ej=Ej+1|0))<(0|Jj)))break}else for(Aj=0;;){if(Dj=q[(Ej=Aj<<2)+q[a+16>>2]>>2],Hj=q[xj+Ej>>2],Cj=q[yj+Ej>>2],(Bj=(0|(Ij=w(Cj,zj)))<1)||ca(Hj,0,w(Cj,Oj)),!(Bj|(0|Dj)<=0))for(Kj=Dj+Gj|0,Lj=q[a+20>>2],Bj=Gj;;){for(Mj=u[(Cj=Bj<<2)+Lj>>2],Nj=q[vj+Cj>>2],Fj=0;u[(Cj=(Dj=Fj<<2)+Hj|0)>>2]=u[Cj>>2]+x(Mj*u[Dj+Nj>>2]),(0|Ij)!=(0|(Fj=Fj+1|0)););if(!((0|(Bj=Bj+1|0))<(0|Kj)))break}if(Gj=q[Ej+Pj>>2]+Gj|0,!((0|(Aj=Aj+1|0))<(0|Jj)))break}},n[9]=function(a){var Me,Ne,Oe,Ie=0,Je=0,Ke=0,Le=0;if(!(q[(a|=0)+648>>2]||(0|(Ie=q[a+332>>2]))<1))for(Ne=(Je=q[a+336>>2])+w(Ie,20)|0,Ie=q[a+424>>2],Le=q[a+444>>2];;){if(q[Ie>>2]&&!((0|(Ke=q[Je+16>>2]))<(a=1)))for(Ke<<=1,Oe=q[Le>>2];u[(Me=(a<<2)+Oe|0)>>2]=-u[Me>>2],(0|(a=a+2|0))<(0|Ke););if(Le=Le+4|0,Ie=Ie+4|0,!((Je=Je+20|0)>>>0<Ne>>>0))break}},n[10]=function(a,Sm,un){var wn;return $(wn=q[20+(a|=0)>>2],Sm|=0,Sm=(un|=0)>>>0<(Sm=q[a+16>>2]-wn|0)>>>0?un:Sm),q[a+20>>2]=Sm+q[a+20>>2],0|un},n[11]=function(a,Il,Rm,Sm,Tm,Um){a|=0,Il=+Il,Rm|=0,Sm|=0,Tm|=0,Um|=0;var fn,qn,Zm,kn,Vm=0,Wm=0,Xm=0,Ym=0,_m=0,$m=0,an=0,bn=0,cn=0,dn=0,en=0,gn=0,hn=0,jn=0,mn=0;if(q[44+(L=Zm=L-560|0)>>2]=0,h(+Il),Vm=0|b[1],qn=4294967295<b[0]>>>0?0:1,kn=(0|Vm)<-1||(0|Vm)<=-1&&qn?(h(Il=-Il),Vm=0|b[1],b[0],jn=1,3840):2048&Tm?(jn=1,3843):(jn=1&Tm)?3846:3841,2146435072==(2146435072&Vm))_(a,32,Rm,$m=jn+3|0,-65537&Tm),Z(a,kn,jn),Sm=Um>>>5&1,Z(a,Il!=Il?Sm?3867:3871:Sm?3859:3863,3);else if(Il=function Ja(a,ic){var kc,lc,jc=0;if(h(+a),jc=0|b[1],kc=0|b[0],2047!=(0|(jc=(lc=jc)>>>20&2047))){if(!jc)return jc=ic,ic=0==a?0:(a=Ja(0x10000000000000000*a,ic),q[ic>>2]+-64|0),q[jc>>2]=ic,a;q[ic>>2]=jc+-1022,f(0,0|kc),f(1,-2146435073&lc|1071644672),a=+g()}return a}(Il,44+Zm|0),0!=(Il+=Il)&&(q[44+Zm>>2]=q[44+Zm>>2]+-1),fn=16+Zm|0,97==(0|(qn=32|Um))){if(en=(dn=32&Um)?9+kn|0:kn,!(11<Sm>>>0)&&(Vm=12-Sm|0)){for(gn=8;gn*=16,Vm=Vm+-1|0;);Il=45==r[0|en]?-(gn+(-Il-gn)):Il+gn-gn}for((0|fn)==(0|(Vm=ga((Xm=(Vm=q[44+Zm>>2])>>31)^Vm+Xm,0,fn)))&&(o[15+Zm|0]=48,Vm=15+Zm|0),_m=2|jn,Xm=q[44+Zm>>2],o[0|(cn=Vm+-2|0)]=Um+15,o[Vm+-1|0]=(0|Xm)<0?45:43,Vm=8&Tm,Wm=16+Zm|0;Um=Wm,bn=dn,Xm=y(Il)<2147483648?~~Il:-2147483648,o[0|Wm]=bn|r[Xm+3824|0],1!=((Wm=Um+1|0)-(16+Zm|0)|0)|(0==(Il=16*(Il-(0|Xm)))?!(Vm|0<(0|Sm)):0)||(o[Um+1|0]=46,Wm=Um+2|0),0!=Il;);_(a,32,Rm,$m=(Um=!Sm|(0|Sm)<=((Wm-Zm|0)-18|0)?((fn-(16+Zm|0)|0)-cn|0)+Wm|0:2+((Sm+fn|0)-cn|0)|0)+_m|0,Tm),Z(a,en,_m),_(a,48,Rm,$m,65536^Tm),Z(a,16+Zm|0,Sm=Wm-(16+Zm|0)|0),_(a,48,Um-((Vm=Sm)+(Sm=fn-cn|0)|0)|0,0,0),Z(a,cn,Sm)}else{for(Vm=(0|Sm)<0,0==Il?Ym=q[44+Zm>>2]:(Ym=q[44+Zm>>2]+-28|0,q[44+Zm>>2]=Ym,Il*=268435456),an=Vm?6:Sm,Xm=dn=(0|Ym)<0?48+Zm|0:336+Zm|0;Xm=(Sm=Xm)+4|0,0!=(Il=1e9*(Il-((q[Sm>>2]=Vm=Il<4294967296&0<=Il?~~Il>>>0:0)>>>0))););if((0|Ym)<1)Vm=Xm,Wm=dn;else for(Wm=dn;;){if(cn=(0|Ym)<29?Ym:29,!((Vm=Xm+-4|0)>>>0<Wm>>>0)){for(Sm=cn,bn=0;mn=bn,bn=q[(en=Vm)>>2],_m=31&Sm,_m=32<=(63&Sm)>>>($m=0)?(Ym=bn<<_m,0):(Ym=(1<<_m)-1&bn>>>32-_m,bn<<_m),$m=Ym+$m|0,$m=(bn=mn+_m|0)>>>0<_m>>>0?$m+1|0:$m,mn=en,en=ad(bn=bd(_m=bn,$m,1e9),M,1e9),q[mn>>2]=_m-en,Wm>>>0<=(Vm=Vm+-4|0)>>>0;);(Sm=bn)&&(q[(Wm=Wm+-4|0)>>2]=Sm)}for(;Wm>>>0<(Vm=Xm)>>>0&&!q[(Xm=Vm+-4|0)>>2];);if(Ym=q[44+Zm>>2]-cn|0,Xm=Vm,!(0<(0|(q[44+Zm>>2]=Ym))))break}if((0|Ym)<=-1)for(hn=1+((an+25|0)/9|0)|0,cn=102==(0|qn);;){if(bn=(0|Ym)<-9?9:0-Ym|0,Vm>>>0<=Wm>>>0)Wm=q[Wm>>2]?Wm:Wm+4|0;else{for(en=1e9>>>bn,_m=-1<<bn^-1,Ym=0,Xm=Wm;Sm=q[Xm>>2],q[Xm>>2]=(Sm>>>bn)+Ym,Ym=w(en,Sm&_m),(Xm=Xm+4|0)>>>0<Vm>>>0;);Wm=q[Wm>>2]?Wm:Wm+4|0,Ym&&(q[Vm>>2]=Ym,Vm=Vm+4|0)}if(Ym=bn+q[44+Zm>>2]|0,Vm=(0|hn)<Vm-(Sm=cn?dn:Wm)>>2?Sm+(hn<<2)|0:Vm,!((0|(q[44+Zm>>2]=Ym))<0))break}if(!(Vm>>>(Xm=0)<=Wm>>>0||(Xm=w(dn-Wm>>2,9),(Sm=q[Wm>>2])>>>0<(Ym=10))))for(;Xm=Xm+1|0,(Ym=w(Ym,10))>>>0<=Sm>>>0;);if((0|(Sm=(an-(102==(0|qn)?0:Xm)|0)-(103==(0|qn)&0!=(0|an))|0))<(w(Vm-dn>>2,9)+-9|0)){if($m=(dn+((Sm=(0|(_m=Sm+9216|0))/9|0)<<2)|0)-4092|0,Ym=10,(0|(Sm=1+(_m-w(Sm,9)|0)|0))<=8)for(;Ym=w(Ym,10),9!=(0|(Sm=Sm+1|0)););if(hn=$m+4|0,((cn=(en=q[$m>>2])-w(Ym,_m=(en>>>0)/(Ym>>>0)|0)|0)||(0|hn)!=(0|Vm))&&(gn=cn>>>0<(Sm=Ym>>>1)>>>0?.5:(0|Vm)==(0|hn)&&(0|Sm)==(0|cn)?1:1.5,Il=1&_m?9007199254740994:9007199254740992,!jn|45!=r[0|kn]||(gn=-gn,Il=-Il),q[$m>>2]=Sm=en-cn|0,Il+gn!=Il)){if(1e9<=(q[$m>>2]=Sm=Sm+Ym|0)>>>0)for(;($m=$m+-4|(q[$m>>2]=0))>>>0<Wm>>>0&&(q[(Wm=Wm+-4|0)>>2]=0),Sm=q[$m>>2]+1|0,999999999<(q[$m>>2]=Sm)>>>0;);if(Xm=w(dn-Wm>>2,9),!((Sm=q[Wm>>2])>>>0<(Ym=10)))for(;Xm=Xm+1|0,(Ym=w(Ym,10))>>>0<=Sm>>>0;);}Vm=(Sm=$m+4|0)>>>0<Vm>>>0?Sm:Vm}j:{for(;;){if((cn=Vm)>>>(en=0)<=Wm>>>0)break j;if(q[(Vm=cn+-4|0)>>2])break}en=1}if(103!=(0|qn))_m=8&Tm;else if(an=((Sm=(0|Xm)<(0|(Vm=an||1))&-5<(0|Xm))?-1^Xm:-1)+Vm|0,Um=(Sm?-1:-2)+Um|0,!(_m=8&Tm)){if(Vm=9,en&&(_m=q[cn+-4>>2])&&!((_m>>>(Vm=0))%(Sm=10)))for(;Vm=Vm+1|0,!((_m>>>0)%((Sm=w(Sm,10))>>>0)););Sm=w(cn-dn>>2,9)+-9|0,an=102==(32|Um)?((_m=0)|an)<(0|(Sm=0<(0|(Sm=Sm-Vm|0))?Sm:0))?an:Sm:((_m=0)|an)<(0|(Sm=0<(0|(Sm=(Sm+Xm|0)-Vm|0))?Sm:0))?an:Sm}if($m=0!=(0|(Ym=an|_m)),Sm=a,mn=Rm,Vm=0<(0|Xm)?Xm:0,102!=(0|(bn=32|Um))){if((fn-(Vm=ga((Vm=Xm>>31)+Xm^Vm,0,fn))|0)<=1)for(;o[0|(Vm=Vm+-1|0)]=48,(fn-Vm|0)<2;);o[0|(hn=Vm+-2|0)]=Um,o[Vm+-1|0]=(0|Xm)<0?45:43,Vm=fn-hn|0}if(_(Sm,32,mn,$m=1+(Vm+($m+(an+jn|0)|0)|0)|0,Tm),Z(a,kn,jn),_(a,48,Rm,$m,65536^Tm),102==(0|bn)){for(Sm=16+Zm|8,Xm=16+Zm|9,Wm=Um=dn>>>0<Wm>>>0?dn:Wm;;){if(Vm=ga(q[Wm>>2],0,Xm),(0|Um)!=(0|Wm)){if(!(Vm>>>0<=16+Zm>>>0))for(;o[0|(Vm=Vm+-1|0)]=48,16+Zm>>>0<Vm>>>0;);}else(0|Vm)==(0|Xm)&&(o[24+Zm|0]=48,Vm=Sm);if(Z(a,Vm,Xm-Vm|0),!((Wm=Wm+4|0)>>>0<=dn>>>0))break}Ym&&Z(a,3875,1);p:if(!((0|an)<1|cn>>>0<=Wm>>>0))for(;;){if(16+Zm>>>0<(Vm=ga(q[Wm>>2],0,Xm))>>>0)for(;o[0|(Vm=Vm+-1|0)]=48,16+Zm>>>0<Vm>>>0;);if(Z(a,Vm,(0|an)<9?an:9),an=an+-9|0,cn>>>0<=(Wm=Wm+4|0)>>>0)break p;if(!(0<(0|an)))break}_(a,48,an+9|0,9,0)}else{q:if(!((0|an)<0))for(Um=en?cn:Wm+4|0,Sm=16+Zm|8,dn=16+Zm|9,Xm=Wm;;){if((0|dn)==(0|(Vm=ga(q[Xm>>2],0,dn)))&&(o[24+Zm|0]=48,Vm=Sm),(0|Wm)!=(0|Xm)){if(!(Vm>>>0<=16+Zm>>>0))for(;o[0|(Vm=Vm+-1|0)]=48,16+Zm>>>0<Vm>>>0;);}else Z(a,Vm,1),Vm=Vm+1|0,(0|an)<1&&!_m||Z(a,3875,1);if(Z(a,bn=Vm,(0|(Vm=dn-Vm|0))<(0|an)?Vm:an),an=an-Vm|0,Um>>>0<=(Xm=Xm+4|0)>>>0)break q;if(!(-1<(0|an)))break}_(a,48,an+18|0,18,0),Z(a,hn,fn-hn|0)}}return _(a,32,Rm,$m,8192^Tm),L=560+Zm|0,0|((0|$m)<(0|Rm)?Rm:$m)},n[12]=function(a,Il){a|=0;var tm=Il|=0;Il=q[Il>>2]+15&-16,q[tm>>2]=Il+16,tm=a,a=function(a,Il,Jl,tm){var zm,wm,um=0,vm=0,xm=0,ym=0;return L=wm=L-32|0,um=(ym=um=2147483647&tm)-1006698496|0,vm=um=(zm=vm=xm=Jl)>>>0<0?um+1|0:um,um=ym-1140785152|0,(0|(um=xm>>>0<0?um+1|0:um))==(0|vm)&zm>>>0<xm>>>0|vm>>>0<um>>>0?(um=tm<<4|Jl>>>28,Jl=Jl<<4|Il>>>28,134217728==(0|(xm=Il&=268435455))&1<=a>>>0|134217728<Il>>>0?(um=um+1073741824|0,(a=Jl+1|0)>>>0<1&&(um=um+1|0),vm=a):(um=um-(((vm=Jl)>>>0<0)+-1073741824|0)|0,a|134217728^xm||((a=vm+(1&vm)|0)>>>0<vm>>>0&&(um=um+1|0),vm=a))):(!xm&2147418112==(0|ym)?!(a|Il):2147418112==(0|ym)&xm>>>0<0|ym>>>0<2147418112)?(um=2146435072,1140785151==((vm=0)|ym)&4294967295<xm>>>0|1140785151<ym>>>0||(xm=ym>>>16)>>>(um=0)<15249||(function(a,Il,Jl,tm,Bm,Cm){var Jm,Km,Hm=0,Im=0;64&Cm?(Il=31&(Jl=Cm-64|0),Il=32<=(63&Jl)>>>0?(Jl=0,Bm>>>Il):(Jl=Bm>>>Il,((1<<Il)-1&Bm)<<32-Il|tm>>>Il),Bm=tm=0):Cm&&(Im=Bm,Hm=31&(Km=64-Cm|0),Km=32<=(63&Km)>>>0?(Im=tm<<Hm,0):(Im=(1<<Hm)-1&tm>>>32-Hm|Im<<Hm,tm<<Hm),Jm=Il,Il=31&(Hm=Cm),Il=32<=(63&Hm)>>>0?(Hm=0,Jl>>>Il):(Hm=Jl>>>Il,((1<<Il)-1&Jl)<<32-Il|Jm>>>Il),Il|=Km,Jl=Hm|Im,Hm=tm,tm=31&Cm,tm=32<=(63&Cm)>>>0?(Im=0,Bm>>>tm):(Im=Bm>>>tm,((1<<tm)-1&Bm)<<32-tm|Hm>>>tm),Bm=Im),q[a>>2]=Il,q[4+a>>2]=Jl,q[8+a>>2]=tm,q[12+a>>2]=Bm}(wm,a,Il,Jl,um=65535&tm|65536,15361-xm|0),function(a,Il,Jl,tm,Bm,Cm){var Fm,Dm,Em=0;64&Cm?(tm=Il,Il=31&(Bm=Cm+-64|0),32<=(63&Bm)>>>0?(Bm=tm<<Il,tm=0):(Bm=(1<<Il)-1&tm>>>32-Il|Jl<<Il,tm<<=Il),Jl=Il=0):Cm&&(Dm=tm,tm=31&(Fm=Cm),Dm=32<=(63&Cm)>>>0?(Em=Dm<<tm,0):(Em=(1<<tm)-1&Dm>>>32-tm|Bm<<tm,Dm<<tm),tm=Jl,Bm=31&(Cm=64-Cm|0),32<=(63&Cm)>>>0?(Cm=0,tm>>>=Bm):(Cm=tm>>>Bm,tm=((1<<Bm)-1&tm)<<32-Bm|Il>>>Bm),tm|=Dm,Bm=Cm|Em,Cm=Il,Il=31&Fm,Il=32<=(63&Fm)>>>0?(Em=Cm<<Il,0):(Em=(1<<Il)-1&Cm>>>32-Il|Jl<<Il,Cm<<Il),Jl=Em),q[a>>2]=Il,q[4+a>>2]=Jl,q[8+a>>2]=tm,q[12+a>>2]=Bm}(16+wm|0,a,Il,Jl,um,xm+-15233|0),Jl=q[4+wm>>2],a=q[8+wm>>2],um=q[12+wm>>2]<<4|a>>>28,vm=a<<4|Jl>>>28,134217728==(0|(Jl=a=268435455&Jl))&1<=(Il=q[wm>>2]|(0!=(q[16+wm>>2]|q[24+wm>>2])|0!=(q[20+wm>>2]|q[28+wm>>2])))>>>0|134217728<a>>>0?((a=vm+1|0)>>>0<1&&(um=um+1|0),vm=a):Il|134217728^Jl||((a=vm+(1&vm)|0)>>>0<vm>>>0&&(um=um+1|0),vm=a))):(vm=Jl<<4|Il>>>28,um=524287&(um=tm<<4|Jl>>>28)|2146959360),L=32+wm|0,f(0,0|vm),f(1,-2147483648&tm|um),+g()}(q[Il>>2],q[Il+4>>2],q[Il+8>>2],q[Il+12>>2]),v[tm>>3]=a},n[13]=function(a){return 0},n[14]=function(a,Il,tm){Il|=0,tm|=0;var Om,Cm,Bm=0,Lm=0,Mm=0,Nm=0;for(L=Cm=L-32|0,Bm=q[28+(a|=0)>>2],q[16+Cm>>2]=Bm,Mm=q[a+20>>2],q[28+Cm>>2]=tm,q[24+Cm>>2]=Il,Mm=(q[20+Cm>>2]=Il=Mm-Bm|0)+tm|0,Nm=2,Il=16+Cm|0;;){a:{if((Lm=(Bm=0)|K(q[a+60>>2],0|Il,0|Nm,12+Cm|0))&&(q[2086]=Lm,Bm=-1),(0|(Bm=Bm?q[12+Cm>>2]=-1:q[12+Cm>>2]))==(0|Mm))Il=q[a+44>>2],q[a+28>>2]=Il,q[a+20>>2]=Il,q[a+16>>2]=Il+q[a+48>>2],a=tm;else{if(-1<(0|Bm))break a;q[a+28>>2]=0,q[a+16>>2]=0,q[a+20>>2]=0,q[a>>2]=32|q[a>>2],2!=((a=0)|Nm)&&(a=tm-q[Il+4>>2]|0)}return L=32+Cm|0,0|a}Lm=q[Il+4>>2],q[(Il=(Om=Lm>>>0<Bm>>>0)?Il+8|0:Il)>>2]=(Lm=Bm-(Om?Lm:0)|0)+q[Il>>2],q[Il+4>>2]=q[Il+4>>2]-Lm,Mm=Mm-Bm|0,Nm=Nm-Om|0}},n[15]=function(a,Il,tm,Bm){return M=0},{d:function(){},e:function(){return 83886080},f:function(){return 5},g:function(a,vj){return vj|=0,L=vj=L-16|0,a=(a|=0)?sa(a)?(Y(4,2150,0),0):r[a+4|0]:(q[vj+4>>2]=1444,q[vj>>2]=2267,Y(4,1294,vj),0),L=vj+16|0,0|a},h:function(a,vj){var wj;return vj|=0,L=wj=L-48|0,a=(a|=0)?(a+63&-64)!=(0|a)?(q[36+wj>>2]=1522,q[32+wj>>2]=2284,Y(4,1294,32+wj|0),0):(vj+63&-64)==(0|vj)&&vj?function(a,Vk){var pl,Wk=0,Xk=0,Yk=0,Zk=0,_k=0,$k=0,al=0,bl=0,cl=0,dl=0,el=0,fl=0,gl=0,hl=0,il=0,jl=0,kl=0,ll=0,ml=0,nl=0,ol=0;L=_k=(pl=Xk=L)-704&-64;a:if(Vk>>>0<=1343)Y(4,1235,0);else if(sa(a))Y(4,1469,0);else if(Xk=r[0|(nl=a+4|0)]){if(!(6<=Xk>>>0)){(jl=1==(0|!r[a+5|0]))||(da(nl,1),X(a- -64|0,4,160)),ca(_k- -64|0,0,640),na(a,_k- -64|0),Xk=a+Vk|0,Vk=q[_k+64>>2];b:{c:{d:{if(5<=(il=r[a+4|0])>>>0){if(Vk>>>0<a>>>0|Xk>>>0<Vk>>>0)break c;if((Zk=Vk+256|0)>>>0<a>>>0)break c;if(Zk>>>0<=Xk>>>0)break d;break c}if(Vk>>>0<a>>>0|Xk>>>0<Vk>>>0)break c;if((Zk=Vk+128|0)>>>0<a>>>0|Xk>>>0<Zk>>>0)break c}if(!((Yk=q[_k+68>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Zk>>>0||(Yk=Yk- -64|0)>>>0<a>>>0|Xk>>>0<Yk>>>0||(0|(dl=q[Vk>>2]))<0||(Zk=q[_k+72>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0||(Yk=(Wk=Zk)+(Zk=dl<<2)|0)>>>0<a>>>0|Xk>>>0<Yk>>>0||(al=q[_k+76>>2])>>>0<a>>>0|Xk>>>0<al>>>0|al>>>0<Yk>>>0||(Wk=(dl<<6)+al|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Yk=q[_k+80>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0||(Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Yk=q[_k+84>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0||(Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Yk=q[_k+88>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0||(Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Yk=q[_k+92>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0||(Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Yk=q[_k+96>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0||(Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Yk=q[_k+100>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0||(Yk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Yk>>>0||(0|(Wk=q[Vk+4>>2]))<0||(Zk=q[_k+104>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0||($k=(Yk=Zk)+(Zk=Wk<<2)|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Yk=q[_k+108>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<$k>>>0||(Wk=Yk+(Wk<<6)|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Yk=q[_k+112>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0||(Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Yk=q[_k+116>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0||(Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Yk=q[_k+120>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0||(Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Yk=q[_k+124>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0||(Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Yk=q[_k+128>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0||(Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Yk=q[_k+132>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0||(Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Yk=q[_k+136>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0||(Yk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Yk>>>0||(0|(Wk=q[Vk+8>>2]))<0||(Zk=q[_k+140>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0||(Yk=(el=Wk<<2)+Zk|0)>>>0<a>>>0|Xk>>>0<Yk>>>0||(Zk=q[_k+144>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0||(Yk=Zk+el|0)>>>0<a>>>0|Xk>>>0<Yk>>>0||(Zk=q[_k+148>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0||(Yk=Zk+el|0)>>>0<a>>>0|Xk>>>0<Yk>>>0||(Zk=q[_k+156>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0||(Yk=Zk+el|0)>>>0<a>>>0|Xk>>>0<Yk>>>0||(Zk=q[_k+160>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0||(Yk=Zk+el|0)>>>0<a>>>0|Xk>>>0<Yk>>>0||(Zk=q[_k+164>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0||(Yk=Zk+el|0)>>>0<a>>>0|Xk>>>0<Yk>>>0||(0|(Wk=q[Vk+12>>2]))<0||(Zk=q[_k+172>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0||(Yk=(fl=Wk<<2)+Zk|0)>>>0<a>>>0|Xk>>>0<Yk>>>0||(Zk=q[_k+176>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0||(Yk=Zk+fl|0)>>>0<a>>>0|Xk>>>0<Yk>>>0||(Zk=q[_k+180>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0||(Yk=Zk+fl|0)>>>0<a>>>0|Xk>>>0<Yk>>>0||(Zk=q[_k+188>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0||(Wk=Zk+fl|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(0|(Yk=q[Vk+16>>2]))<0||(Zk=q[_k+192>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Wk>>>0||($k=(Wk=Zk)+(Zk=Yk<<2)|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Wk=q[_k+196>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=Wk+Zk|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Wk=q[_k+200>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=Wk+Zk|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Wk=q[_k+204>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=Wk+Zk|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Wk=q[_k+208>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=Wk+(Yk<<6)|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Wk=q[_k+212>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=Wk+Zk|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Wk=q[_k+216>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=Wk+Zk|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Wk=q[_k+220>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=Wk+Zk|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Wk=q[_k+228>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=Wk+Zk|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Wk=q[_k+232>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=Wk+Zk|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Wk=q[_k+236>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=Wk+Zk|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Wk=q[_k+240>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=Wk+Zk|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Wk=q[_k+244>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=Wk+Zk|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Wk=q[_k+248>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||(Wk=Wk+Yk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Yk=q[_k+252>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0||(Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Yk=q[_k+256>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0||(Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Yk=q[_k+260>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0||(Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Yk=q[_k+264>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0||(Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Yk=q[_k+268>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0||(Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Yk=q[_k+272>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0||(Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(0|($k=q[Vk+20>>2]))<0||(Yk=q[_k+276>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0||(gl=(Wk=Yk)+(Yk=$k<<2)|0)>>>0<a>>>0|Xk>>>0<gl>>>0||(Wk=q[_k+280>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<gl>>>0||($k=Wk+($k<<6)|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Wk=q[_k+284>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=Wk+Yk|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Wk=q[_k+288>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=Wk+Yk|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Wk=q[_k+292>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=Wk+Yk|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Wk=q[_k+296>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=Wk+Yk|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Wk=q[_k+300>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=Wk+Yk|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Wk=q[_k+308>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=Wk+Yk|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Wk=q[_k+312>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=Wk+Yk|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(0|(gl=q[Vk+24>>2]))<0||(Wk=q[_k+336>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=Wk+(gl<<2)|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(0|(gl=q[Vk+28>>2]))<0||(Wk=q[_k+340>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=(ll=gl<<2)+Wk|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(Wk=q[_k+344>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||($k=Wk+ll|0)>>>0<a>>>0|Xk>>>0<$k>>>0||(0|(gl=q[Vk+32>>2]))<0||(Wk=q[_k+356>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<$k>>>0||(gl=($k=gl<<2)+Wk|0)>>>0<a>>>0|Xk>>>0<gl>>>0||(Wk=q[_k+360>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<gl>>>0||(gl=Wk+$k|0)>>>0<a>>>0|Xk>>>0<gl>>>0||(Wk=q[_k+364>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<gl>>>0||(gl=Wk+$k|0)>>>0<a>>>0|Xk>>>0<gl>>>0||(Wk=q[_k+368>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<gl>>>0||(gl=Wk+$k|0)>>>0<a>>>0|Xk>>>0<gl>>>0||(Wk=q[_k+372>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<gl>>>0||(gl=Wk+$k|0)>>>0<a>>>0|Xk>>>0<gl>>>0||(Wk=q[_k+376>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<gl>>>0||(gl=Wk+$k|0)>>>0<a>>>0|Xk>>>0<gl>>>0||(Wk=q[_k+380>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<gl>>>0||(gl=Wk+$k|0)>>>0<a>>>0|Xk>>>0<gl>>>0||(0|(bl=q[Vk+36>>2]))<0||(Wk=q[_k+392>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<gl>>>0||(bl=(gl=bl<<2)+Wk|0)>>>0<a>>>0|Xk>>>0<bl>>>0||(Wk=q[_k+396>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<bl>>>0||(bl=Wk+gl|0)>>>0<a>>>0|Xk>>>0<bl>>>0||(Wk=q[_k+400>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<bl>>>0||(bl=Wk+gl|0)>>>0<a>>>0|Xk>>>0<bl>>>0||(0|(cl=q[Vk+40>>2]))<0||(Wk=q[_k+412>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<bl>>>0||(bl=Wk+(cl<<2)|0)>>>0<a>>>0|Xk>>>0<bl>>>0||(0|(cl=q[Vk+44>>2]))<0||(Wk=q[_k+424>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<bl>>>0||(bl=Wk+(cl<<2)|0)>>>0<a>>>0|Xk>>>0<bl>>>0||(0|(cl=q[Vk+48>>2]))<0||(Wk=q[_k+428>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<bl>>>0||(bl=(cl<<=2)+Wk|0)>>>0<a>>>0|Xk>>>0<bl>>>0||(Wk=q[_k+432>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<bl>>>0||(bl=Wk+cl|0)>>>0<a>>>0|Xk>>>0<bl>>>0||(0|(cl=q[Vk+52>>2]))<0||(Wk=q[_k+416>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<bl>>>0||(bl=(cl<<=2)+Wk|0)>>>0<a>>>0|Xk>>>0<bl>>>0||(Wk=q[_k+420>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<bl>>>0||(bl=Wk+cl|0)>>>0<a>>>0|Xk>>>0<bl>>>0||(0|(cl=q[Vk+56>>2]))<0||(Wk=q[_k+552>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<bl>>>0||(bl=Wk+(cl<<2)|0)>>>0<a>>>0|Xk>>>0<bl>>>0||(0|(cl=q[Vk+60>>2]))<0||(Wk=q[_k+556>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<bl>>>0||(bl=Wk+(cl<<2)|0)>>>0<a>>>0|Xk>>>0<bl>>>0||(0|(cl=q[Vk+64>>2]))<0||(Wk=q[_k+560>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<bl>>>0||(bl=Wk+(cl<<1)|0)>>>0<a>>>0|Xk>>>0<bl>>>0||(0|(cl=q[Vk+68>>2]))<0||(Wk=q[_k+564>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<bl>>>0||(bl=Wk+(cl<<2)|0)>>>0<a>>>0|Xk>>>0<bl>>>0||(0|(cl=q[Vk+72>>2]))<0||(Wk=q[_k+568>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<bl>>>0||(cl=(bl=Wk)+(Wk=cl<<2)|0)>>>0<a>>>0|Xk>>>0<cl>>>0||(bl=q[_k+572>>2])>>>0<a>>>0|Xk>>>0<bl>>>0|bl>>>0<cl>>>0||(cl=Wk+bl|0)>>>0<a>>>0|Xk>>>0<cl>>>0||(bl=q[_k+576>>2])>>>0<a>>>0|Xk>>>0<bl>>>0|bl>>>0<cl>>>0||(cl=Wk+bl|0)>>>0<a>>>0|Xk>>>0<cl>>>0||(bl=q[_k+580>>2])>>>0<a>>>0|Xk>>>0<bl>>>0|bl>>>0<cl>>>0||(cl=Wk+bl|0)>>>0<a>>>0|Xk>>>0<cl>>>0||(bl=q[_k+584>>2])>>>0<a>>>0|Xk>>>0<bl>>>0|bl>>>0<cl>>>0||(bl=Wk+bl|0)>>>0<a>>>0|Xk>>>0<bl>>>0||(0|(cl=q[Vk+76>>2]))<0||(Wk=q[_k+588>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<bl>>>0||(cl=(bl=cl<<2)+Wk|0)>>>0<a>>>0|Xk>>>0<cl>>>0||(Wk=q[_k+592>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<cl>>>0||(cl=Wk+bl|0)>>>0<a>>>0|Xk>>>0<cl>>>0||(Wk=q[_k+596>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<cl>>>0||(bl=Wk+bl|0)>>>0<a>>>0|Xk>>>0<bl>>>0||(0|(cl=q[Vk+80>>2]))<0||(Wk=q[_k+600>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<bl>>>0||(hl=(bl=Wk)+(Wk=cl<<2)|0)>>>0<a>>>0|Xk>>>0<hl>>>0||(bl=q[_k+604>>2])>>>0<a>>>0|Xk>>>0<bl>>>0|bl>>>0<hl>>>0||(cl=bl+(cl<<6)|0)>>>0<a>>>0|Xk>>>0<cl>>>0||(bl=q[_k+608>>2])>>>0<a>>>0|Xk>>>0<bl>>>0|bl>>>0<cl>>>0||(cl=Wk+bl|0)>>>0<a>>>0|Xk>>>0<cl>>>0||(bl=q[_k+612>>2])>>>0<a>>>0|Xk>>>0<bl>>>0|bl>>>0<cl>>>0||(cl=Wk+bl|0)>>>0<a>>>0|Xk>>>0<cl>>>0||(bl=q[_k+616>>2])>>>0<a>>>0|Xk>>>0<bl>>>0|bl>>>0<cl>>>0||(cl=Wk+bl|0)>>>0<a>>>0|Xk>>>0<cl>>>0||(bl=q[_k+620>>2])>>>0<a>>>0|Xk>>>0<bl>>>0|bl>>>0<cl>>>0||(cl=Wk+bl|0)>>>0<a>>>0|Xk>>>0<cl>>>0||(bl=q[_k+624>>2])>>>0<a>>>0|Xk>>>0<bl>>>0|bl>>>0<cl>>>0||(cl=Wk+bl|0)>>>0<a>>>0|Xk>>>0<cl>>>0||(bl=q[_k+628>>2])>>>0<a>>>0|Xk>>>0<bl>>>0|bl>>>0<cl>>>0||(cl=Wk+bl|0)>>>0<a>>>0|Xk>>>0<cl>>>0||(bl=q[_k+632>>2])>>>0<a>>>0|Xk>>>0<bl>>>0|bl>>>0<cl>>>0||(bl=Wk+bl|0)>>>0<a>>>0|Xk>>>0<bl>>>0||(0|(cl=q[Vk+84>>2]))<0||(Wk=q[_k+636>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<bl>>>0||(bl=Wk+(cl<<2)|0)>>>0<a>>>0|Xk>>>0<bl>>>0||(Wk=q[_k+640>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<bl>>>0||(bl=Wk+(cl<<1)|0)>>>0<a>>>0|Xk>>>0<bl>>>0||(0|(cl=q[Vk+88>>2]))<0||(Wk=q[_k+644>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<bl>>>0||(Wk=Wk+(cl<<2)|0)>>>0<a>>>0|Xk>>>0<Wk>>>0)){if(!(il>>>0<2)){if((bl=q[_k+168>>2])>>>0<a>>>0|Xk>>>0<bl>>>0|bl>>>0<Wk>>>0)break c;if((Wk=bl+el|0)>>>0<a>>>0|Xk>>>0<Wk>>>0)break c;if(!(il>>>0<4)){if((bl=q[_k+324>>2])>>>0<a>>>0|Xk>>>0<bl>>>0|bl>>>0<Wk>>>0)break c;if((bl=Yk+bl|0)>>>0<a>>>0|Xk>>>0<bl>>>0)break c;if((Wk=q[_k+328>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<bl>>>0)break c;if((bl=Wk+Yk|0)>>>0<a>>>0|Xk>>>0<bl>>>0)break c;if((Wk=q[_k+332>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<bl>>>0)break c;if((bl=Wk+Yk|0)>>>0<a>>>0|Xk>>>0<bl>>>0)break c;if((Wk=q[_k+152>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<bl>>>0)break c;if((el=Wk+el|0)>>>0<a>>>0|Xk>>>0<el>>>0)break c;if((Wk=q[_k+184>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<el>>>0)break c;if((el=Wk+fl|0)>>>0<a>>>0|Xk>>>0<el>>>0)break c;if((Wk=q[_k+224>>2])>>>0<a>>>0|Xk>>>0<Wk>>>0|Wk>>>0<el>>>0)break c;if((Wk=Wk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0)break c;if((0|(el=q[Vk+92>>2]))<0)break c;if((Zk=q[_k+648>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Wk>>>0)break c;if((el=(Wk=el<<2)+Zk|0)>>>0<a>>>0|Xk>>>0<el>>>0)break c;if((Zk=q[_k+652>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<el>>>0)break c;if((el=Wk+Zk|0)>>>0<a>>>0|Xk>>>0<el>>>0)break c;if((Zk=q[_k+656>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<el>>>0)break c;if((Wk=Wk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0)break c;if((0|(el=q[Vk+96>>2]))<0)break c;if((Zk=q[_k+660>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Wk>>>0)break c;if((el=(Wk=el<<2)+Zk|0)>>>0<a>>>0|Xk>>>0<el>>>0)break c;if((Zk=q[_k+664>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<el>>>0)break c;if((el=Wk+Zk|0)>>>0<a>>>0|Xk>>>0<el>>>0)break c;if((Zk=q[_k+668>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<el>>>0)break c;if((Wk=Wk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0)break c;if((Zk=q[_k+304>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Wk>>>0)break c;if((Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0)break c;if((Zk=q[_k+316>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Wk>>>0)break c;if((Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0)break c;if((Zk=q[_k+320>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Wk>>>0)break c;if((Yk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Yk>>>0)break c;if((0|(Wk=q[Vk+100>>2]))<0)break c;if((Zk=q[_k+436>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0)break c;if((Wk=(Yk=Wk<<2)+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0)break c;if((Zk=q[_k+440>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Wk>>>0)break c;if((Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0)break c;if((Zk=q[_k+444>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Wk>>>0)break c;if((Yk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Yk>>>0)break c;if((0|(Wk=q[Vk+104>>2]))<0)break c;if((Zk=q[_k+448>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0)break c;if((Wk=(Yk=Zk)+(Zk=Wk<<2)|0)>>>0<a>>>0|Xk>>>0<Wk>>>0)break c;if((Yk=q[_k+452>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0)break c;if((Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0)break c;if((Yk=q[_k+456>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0)break c;if((Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0)break c;if((Yk=q[_k+460>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0)break c;if((Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0)break c;if((Yk=q[_k+464>>2])>>>0<a>>>0|Xk>>>0<Yk>>>0|Yk>>>0<Wk>>>0)break c;if((Yk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Yk>>>0)break c;if((0|(Wk=q[Vk+108>>2]))<0)break c;if((Zk=q[_k+480>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0)break c;if((Wk=(Yk=Wk<<2)+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0)break c;if((Zk=q[_k+484>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Wk>>>0)break c;if((Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0)break c;if((Zk=q[_k+488>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Wk>>>0)break c;if((Yk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Yk>>>0)break c;if((0|(Wk=q[Vk+112>>2]))<0)break c;if((Zk=q[_k+504>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0)break c;if((Wk=(Yk=Wk<<2)+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0)break c;if((Zk=q[_k+508>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Wk>>>0)break c;if((Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0)break c;if((Zk=q[_k+512>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Wk>>>0)break c;if((Yk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Yk>>>0)break c;if((0|(Wk=q[Vk+116>>2]))<0)break c;if((Zk=q[_k+528>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0)break c;if((Yk=Zk+(Wk<<2)|0)>>>0<a>>>0|Xk>>>0<Yk>>>0)break c;if((0|(Wk=q[Vk+120>>2]))<0)break c;if((Zk=q[_k+532>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0)break c;if((Wk=(Yk=Wk<<2)+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0)break c;if((Zk=q[_k+536>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Wk>>>0)break c;if((Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0)break c;if((Zk=q[_k+540>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Wk>>>0)break c;if((Yk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Yk>>>0)break c;if((0|(Wk=q[Vk+124>>2]))<0)break c;if((Zk=q[_k+544>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0)break c;if((Yk=(Wk<<=2)+Zk|0)>>>0<a>>>0|Xk>>>0<Yk>>>0)break c;if((Zk=q[_k+548>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0)break c;if((Wk=Wk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0)break c}}if(il>>>0<5)break b;if(!((Zk=q[_k+348>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Wk>>>0||(Yk=Zk+ll|0)>>>0<a>>>0|Xk>>>0<Yk>>>0||(Zk=q[_k+352>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0||(Yk=Zk+ll|0)>>>0<a>>>0|Xk>>>0<Yk>>>0||(Zk=q[_k+384>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0||(Yk=Zk+$k|0)>>>0<a>>>0|Xk>>>0<Yk>>>0||(Zk=q[_k+388>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0||(Yk=Zk+$k|0)>>>0<a>>>0|Xk>>>0<Yk>>>0||(Zk=q[_k+404>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0||(Yk=Zk+gl|0)>>>0<a>>>0|Xk>>>0<Yk>>>0||(Zk=q[_k+408>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0||(Yk=Zk+gl|0)>>>0<a>>>0|Xk>>>0<Yk>>>0||(0|(Wk=q[Vk+128>>2]))<0||(Zk=q[_k+468>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0||(Wk=(Yk=Wk<<2)+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Zk=q[_k+472>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Wk>>>0||(Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Zk=q[_k+476>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Wk>>>0||(Yk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Yk>>>0||(0|(Wk=q[Vk+132>>2]))<0||(Zk=q[_k+492>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0||(Wk=(Yk=Wk<<2)+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Zk=q[_k+496>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Wk>>>0||(Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Zk=q[_k+500>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Wk>>>0||(Yk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Yk>>>0||(0|(Wk=q[Vk+136>>2]))<0||(Zk=q[_k+516>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Yk>>>0||(Wk=(Yk=Wk<<2)+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Zk=q[_k+520>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Wk>>>0||(Wk=Yk+Zk|0)>>>0<a>>>0|Xk>>>0<Wk>>>0||(Zk=q[_k+524>>2])>>>0<a>>>0|Xk>>>0<Zk>>>0|Zk>>>0<Wk>>>0||(Zk=Yk+Zk|0)>>>0<a>>>0)&&Zk>>>0<=Xk>>>0)break b}}Y(4,1760,0),da(nl,1),X(a- -64|0,4,160);break a}jl||(ya(a),o[a+5|0]=0,Vk=q[_k+64>>2],dl=q[Vk>>2],al=q[_k+76>>2],il=r[a+4|0]);f:{if((a=0)<(0|dl)){for(;;){if(63<ia((a<<6)+al|0)>>>0)break f;if((0|dl)==(0|(a=a+1|0)))break}if(Wk=Vk+48|0,(Xk=0)<(0|(a=q[Vk>>2]))){for(Zk=q[Vk+48>>2],Yk=q[_k+80>>2];;){if((0|(al=q[Yk+(Xk<<2)>>2]))<0|(0|Zk)<=(0|al))break f;if((0|a)==(0|(Xk=Xk+1|0)))break}for(gl=Vk+24|0,Zk=q[Vk+24>>2],$k=q[_k+88>>2],dl=q[_k+84>>2],Xk=0;;){if(Yk=q[(al=Xk<<2)+$k>>2]){if((0|Yk)<0|(0|Zk)<(0|Yk))break f;if((0|(al=q[al+dl>>2]))<0|(0|Zk)<=(0|al))break f;if((Yk=Yk+al|0)>>>31|(0|Zk)<(0|Yk))break f}if((0|a)==(0|(Xk=Xk+1|0)))break}for(Xk=0,Zk=q[_k+92>>2];;){if(1<t[Zk+(Xk<<2)>>2])break f;if((0|a)==(0|(Xk=Xk+1|0)))break}for(Xk=0,Zk=q[_k+96>>2];;){if(1<t[Zk+(Xk<<2)>>2])break f;if((0|a)==(0|(Xk=Xk+1|0)))break}for(Xk=0,Zk=q[_k+100>>2];;){if((0|(Yk=q[Zk+(Xk<<2)>>2]))<-1|(0|a)<=(0|Yk))break f;if((0|a)==(0|(Xk=Xk+1|0)))break}}else gl=Vk+24|0}else gl=Vk+24|0,Wk=Vk+48|0;if((a=0)<(0|(Xk=q[Vk+4>>2]))){for(Zk=q[_k+108>>2];;){if(63<ia(Zk+(a<<6)|0)>>>0)break f;if((0|Xk)==(0|(a=a+1|0)))break}if($k=(Zk=q[Vk+48>>2])+-1|0,!(((Xk=0)|(a=q[Vk+4>>2]))<=0)){for(Yk=q[_k+112>>2];;){if((0|(al=q[Yk+(Xk<<2)>>2]))<0|(0|Zk)<=(0|al))break f;if((0|a)==(0|(Xk=Xk+1|0)))break}for(Xk=0,Zk=q[_k+116>>2];;){if(1<t[Zk+(Xk<<2)>>2])break f;if((0|a)==(0|(Xk=Xk+1|0)))break}for(Xk=0,Zk=q[_k+120>>2];;){if(1<t[Zk+(Xk<<2)>>2])break f;if((0|a)==(0|(Xk=Xk+1|0)))break}for(Zk=q[Vk>>2],Xk=0,Yk=q[_k+124>>2];;){if((0|(al=q[Yk+(Xk<<2)>>2]))<-1|(0|Zk)<=(0|al))break f;if((0|a)==(0|(Xk=Xk+1|0)))break}for(Xk=0,Zk=q[_k+128>>2];;){if((0|(Yk=q[Zk+(Xk<<2)>>2]))<-1|(0|a)<=(0|Yk))break f;if((0|a)==(0|(Xk=Xk+1|0)))break}for(Xk=0,Zk=q[_k+132>>2];;){if(1<t[Zk+(Xk<<2)>>2])break f;if((0|a)==(0|(Xk=Xk+1|0)))break}for(Yk=Vk+8|0,al=Vk+12|0,dl=q[_k+136>>2],Xk=0;;){if(1<(fl=q[(el=Xk<<2)+Zk>>2])>>>0)break f;if((0|(el=q[dl+el>>2]))<0|(0|el)>=q[(fl-1|0?Yk:al)>>2])break f;if((0|a)==(0|(Xk=Xk+1|0)))break}}}else $k=q[Wk>>2]+-1|0;if((a=0)<(0|(Xk=q[Vk+8>>2]))){for(Zk=q[_k+140>>2];;){if((0|(Yk=q[Zk+(a<<2)>>2]))<0|(0|$k)<(0|Yk))break f;if((0|Xk)==(0|(a=a+1|0)))break}for(ll=Vk+28|0,Zk=q[Vk+28>>2],dl=q[_k+148>>2],el=q[_k+144>>2],a=0;;){if(Yk=q[(al=a<<2)+dl>>2]){if((0|Yk)<0|(0|Zk)<(0|Yk))break f;if((0|(al=q[al+el>>2]))<0|(0|Zk)<=(0|al))break f;if((Yk=Yk+al|0)>>>31|(0|Zk)<(0|Yk))break f}if((0|Xk)==(0|(a=a+1|0)))break}for(a=0,Yk=q[_k+156>>2],al=q[_k+164>>2],dl=q[_k+160>>2];;){if((0|(el=q[(Zk=a<<2)+dl>>2]))<1)break f;if((0|(fl=q[Zk+al>>2]))<1)break f;if((0|(Zk=q[Yk+Zk>>2]))<1|(0|Zk)!=(0|w(fl+1|0,el+1|0)))break f;if((0|Xk)==(0|(a=a+1|0)))break}}else ll=Vk+28|0;if((a=0)<(0|(Yk=q[Vk+12>>2]))){for(Xk=q[_k+172>>2];;){if((0|(Zk=q[Xk+(a<<2)>>2]))<0|(0|$k)<(0|Zk))break f;if((0|Yk)==(0|(a=a+1|0)))break}for(bl=Vk+32|0,Xk=q[Vk+32>>2],$k=q[_k+180>>2],dl=q[_k+176>>2],a=0;;){if(Zk=q[(al=a<<2)+$k>>2]){if((0|Zk)<0|(0|Xk)<(0|Zk))break f;if((0|(al=q[al+dl>>2]))<0|(0|Xk)<=(0|al))break f;if((Zk=Zk+al|0)>>>31|(0|Xk)<(0|Zk))break f}if((0|Yk)==(0|(a=a+1|0)))break}}else bl=Vk+32|0;Zk=Vk+16|0;m:{n:{if(!(((a=0)|(Xk=q[Vk+16>>2]))<=0)){for(Yk=q[_k+208>>2];;){if(63<ia(Yk+(a<<6)|0)>>>0)break f;if((0|Xk)==(0|(a=a+1|0)))break}if(!(((Xk=0)|(a=q[Zk>>2]))<=0)){for(Yk=q[Wk>>2],al=q[_k+212>>2];;){if((0|($k=q[al+(Xk<<2)>>2]))<0|(0|Yk)<=(0|$k))break f;if((0|a)==(0|(Xk=Xk+1|0)))break}for(nl=Vk+36|0,Yk=q[Vk+36>>2],dl=q[_k+220>>2],el=q[_k+216>>2],Xk=0;;){if(al=q[($k=Xk<<2)+dl>>2]){if((0|al)<0|(0|Yk)<(0|al))break f;if((0|($k=q[$k+el>>2]))<0|(0|Yk)<=(0|$k))break f;if((al=al+$k|0)>>>31|(0|Yk)<(0|al))break f}if((0|a)==(0|(Xk=Xk+1|0)))break}for(Xk=0,Yk=q[_k+228>>2];;){if(1<t[Yk+(Xk<<2)>>2])break f;if((0|a)==(0|(Xk=Xk+1|0)))break}for(Xk=0,Yk=q[_k+232>>2];;){if(1<t[Yk+(Xk<<2)>>2])break f;if((0|a)==(0|(Xk=Xk+1|0)))break}for(Yk=q[Vk>>2],Xk=0,al=q[_k+236>>2];;){if((0|($k=q[al+(Xk<<2)>>2]))<-1|(0|Yk)<=(0|$k))break f;if((0|a)==(0|(Xk=Xk+1|0)))break}for(Yk=q[Vk+4>>2],Xk=0,al=q[_k+240>>2];;){if((0|($k=q[al+(Xk<<2)>>2]))<-1|(0|Yk)<=(0|$k))break f;if((0|a)==(0|(Xk=Xk+1|0)))break}for(Yk=q[_k+244>>2],Xk=0;;){if(q[Yk+(Xk<<2)>>2]<0)break f;if((0|a)==(0|(Xk=Xk+1|0)))break}break n}}al=Vk+68|0,nl=Vk+36|0;break m}for(Yk=q[_k+252>>2],Xk=0;;){if(q[Yk+(Xk<<2)>>2]<0)break f;if((0|a)==(0|(Xk=Xk+1|0)))break}for(al=q[Vk+60>>2],Xk=0,$k=q[_k+256>>2];;){if((dl=q[(dl=Xk<<2)+$k>>2]+(q[Yk+dl>>2]<<1)|0)>>>31|(0|al)<(0|dl))break f;if((0|a)==(0|(Xk=Xk+1|0)))break}for(Yk=q[Vk+64>>2],dl=q[_k+264>>2],el=q[_k+260>>2],Xk=0;;){if(al=q[($k=Xk<<2)+dl>>2]){if((0|al)<0|(0|Yk)<(0|al))break f;if((0|($k=q[$k+el>>2]))<0|(0|Yk)<=(0|$k))break f;if((al=al+$k|0)>>>31|(0|Yk)<(0|al))break f}if((0|a)==(0|(Xk=Xk+1|0)))break}for(al=Vk+68|0,Yk=q[Vk+68>>2],el=q[_k+272>>2],fl=q[_k+268>>2],Xk=0;;){if($k=q[(dl=Xk<<2)+el>>2]){if((0|$k)<0|(0|Yk)<(0|$k))break f;if((0|(dl=q[dl+fl>>2]))<0|(0|Yk)<=(0|dl))break f;if(($k=$k+dl|0)>>>31|(0|Yk)<(0|$k))break f}if((0|a)==(0|(Xk=Xk+1|0)))break}}p:{q:{if(!(((a=0)|(Xk=q[Vk+20>>2]))<=0)){for(Yk=q[_k+280>>2];;){if(63<ia(Yk+(a<<6)|0)>>>0)break f;if((0|Xk)==(0|(a=a+1|0)))break}if(!(((a=0)|(Xk=q[Vk+20>>2]))<=0)){for(Yk=q[_k+296>>2];;){if(1<t[Yk+(a<<2)>>2])break f;if((0|Xk)==(0|(a=a+1|0)))break}for(Yk=q[_k+300>>2],a=0;;){if(q[Yk+(a<<2)>>2]<0)break f;if((0|Xk)==(0|(a=a+1|0)))break}break q}}a=q[Vk+52>>2];break p}for(a=q[Vk+52>>2],el=q[_k+312>>2],fl=q[_k+308>>2],$k=0;;){if(Yk=q[(dl=$k<<2)+el>>2]){if((0|Yk)<0|(0|a)<(0|Yk))break f;if((0|(dl=q[dl+fl>>2]))<0|(0|a)<=(0|dl))break f;if((Yk=Yk+dl|0)>>>31|(0|a)<(0|Yk))break f}if((0|Xk)==(0|($k=$k+1|0)))break}}if(Yk=q[Vk+40>>2],(Xk=0)<(0|($k=q[Vk+8>>2])))for(dl=q[_k+344>>2],el=q[_k+156>>2];;){if((fl=q[(fl=Xk<<2)+dl>>2]+(q[el+fl>>2]<<1)|0)>>>31|(0|Yk)<(0|fl))break f;if((0|$k)==(0|(Xk=Xk+1|0)))break}if((Xk=0)<(0|($k=q[bl>>2]))){for(dl=q[_k+376>>2];;){if(1<t[dl+(Xk<<2)>>2])break f;if((0|$k)==(0|(Xk=Xk+1|0)))break}for(Xk=0,dl=q[_k+380>>2];;){if(1<t[dl+(Xk<<2)>>2])break f;if((0|$k)==(0|(Xk=Xk+1|0)))break}}if((Xk=0)<(0|($k=q[Zk>>2])))for(dl=q[_k+400>>2],el=q[_k+252>>2];;){if((fl=q[(fl=Xk<<2)+dl>>2]+(q[el+fl>>2]<<1)|0)>>>31|(0|Yk)<(0|fl))break f;if((0|$k)==(0|(Xk=Xk+1|0)))break}if((Xk=0)<(0|(Yk=q[Vk+44>>2])))for(dl=q[_k+424>>2];;){if((0|(el=q[dl+(Xk<<2)>>2]))<0|(0|a)<=(0|el))break f;if((0|Yk)==(0|(Xk=Xk+1|0)))break}if(1<=(0|(el=q[Wk>>2])))for(Xk=0,fl=q[_k+432>>2],cl=q[_k+428>>2];;){if(Wk=q[(dl=Xk<<2)+fl>>2]){if((0|Wk)<0|(0|Yk)<(0|Wk))break f;if((0|(dl=q[cl+dl>>2]))<0|(0|Yk)<=(0|dl))break f;if((Wk=Wk+dl|0)>>>31|(0|Yk)<(0|Wk))break f}if((0|el)==(0|(Xk=Xk+1|0)))break}if(1<=(0|a))for(Yk=q[Vk+56>>2],Xk=0,el=q[_k+420>>2],fl=q[_k+416>>2];;){if(Wk=q[(dl=Xk<<2)+el>>2]){if((0|Wk)<0|(0|Yk)<(0|Wk))break f;if((0|(dl=q[dl+fl>>2]))<0|(0|Yk)<=(0|dl))break f;if((Wk=Wk+dl|0)>>>31|(0|Yk)<(0|Wk))break f}if((0|(Xk=Xk+1|0))==(0|a))break}if((a=0)<(0|(Xk=q[al>>2])))for(Yk=q[_k+564>>2];;){if((0|(al=q[Yk+(a<<2)>>2]))<-1|(0|$k)<=(0|al))break f;if((0|Xk)==(0|(a=a+1|0)))break}if(a=q[Vk+76>>2],1<=(0|(al=q[Vk+72>>2])))for(Xk=0,$k=q[_k+572>>2],dl=q[_k+568>>2];;){if(Yk=q[(Wk=Xk<<2)+$k>>2]){if((0|Yk)<0|(0|a)<(0|Yk))break f;if((0|(Wk=q[Wk+dl>>2]))<0|(0|a)<=(0|Wk))break f;if((Yk=Wk+Yk|0)>>>31|(0|a)<(0|Yk))break f}if((0|al)==(0|(Xk=Xk+1|0)))break}if((Xk=0)<(0|a)){for(Yk=q[_k+588>>2];;){if(1<t[Yk+(Xk<<2)>>2])break f;if((0|a)==(0|(Xk=Xk+1|0)))break}for(Wk=q[_k+592>>2],Xk=0;;){if(1<(dl=q[($k=Xk<<2)+Yk>>2])>>>0)break f;if((0|($k=q[Wk+$k>>2]))<0|(0|$k)>=q[(dl-1|0?Zk:Vk)>>2])break f;if((0|a)==(0|(Xk=Xk+1|0)))break}for(Xk=0,Yk=q[_k+596>>2];;){if((0|(Wk=q[Yk+(Xk<<2)>>2]))<-1|(0|al)<=(0|Wk))break f;if((0|a)==(0|(Xk=Xk+1|0)))break}}s:{if(!(((a=0)|($k=q[Vk+80>>2]))<=0)){for(Xk=q[_k+604>>2];;){if(63<ia(Xk+(a<<6)|0)>>>0)break f;if((0|$k)==(0|(a=a+1|0)))break}if(!(((a=0)|($k=q[Vk+80>>2]))<=0)){for(Xk=q[Vk+48>>2],Yk=q[_k+608>>2];;){if((0|(al=q[Yk+(a<<2)>>2]))<0|(0|Xk)<=(0|al))break f;if((0|$k)==(0|(a=a+1|0)))break}for(el=q[Vk+88>>2],al=q[_k+616>>2],Wk=q[_k+612>>2],a=0;;){if(Xk=q[(Yk=a<<2)+al>>2]){if((0|Xk)<0|(0|el)<(0|Xk))break f;if((0|(Yk=q[Wk+Yk>>2]))<0|(0|el)<=(0|Yk))break f;if((Xk=Xk+Yk|0)>>>31|(0|el)<(0|Xk))break f}if((0|$k)==(0|(a=a+1|0)))break}for(Zk=q[Zk>>2],al=q[_k+620>>2],a=0;;){if((0|(Xk=q[al+(a<<2)>>2]))<0|(0|Zk)<=(0|Xk))break f;if((0|$k)==(0|(a=a+1|0)))break}for(Wk=q[_k+624>>2],a=0;;){if((0|(Xk=q[Wk+(a<<2)>>2]))<0|(0|Zk)<=(0|Xk))break f;if((0|$k)==(0|(a=a+1|0)))break}for(Xk=q[Vk+84>>2],dl=q[_k+632>>2],fl=q[_k+628>>2],a=0;;){if(Yk=q[(cl=a<<2)+dl>>2]){if((0|Yk)<0|(0|Xk)<(0|Yk))break f;if((0|(cl=q[cl+fl>>2]))<0|(0|Xk)<=(0|cl))break f;if((Yk=Yk+cl|0)>>>31|(0|Xk)<(0|Yk))break f}if((0|$k)==(0|(a=a+1|0)))break}for(hl=q[_k+640>>2],Xk=q[_k+252>>2],Yk=0;;){if(0<(0|(jl=q[(a=Yk<<2)+dl>>2])))for(cl=hl+(q[a+fl>>2]<<1)|0,ol=q[Xk+(q[a+Wk>>2]<<2)>>2],kl=q[Xk+(q[a+al>>2]<<2)>>2],a=0;;){if((0|ol)<=s[cl+(2|(ml=a<<1))>>1]|(0|kl)<=s[cl+ml>>1])break f;if(!((0|(a=a+2|0))<(0|jl)))break}if((0|$k)==(0|(Yk=Yk+1|0)))break}break s}}Zk=q[Vk+16>>2],el=q[Vk+88>>2]}if(!((255&il)>>>0<2)){if((a=0)<(0|(dl=q[Vk+8>>2])))for(Xk=q[_k+168>>2];;){if(1<t[Xk+(a<<2)>>2])break f;if((0|dl)==(0|(a=a+1|0)))break}if(!((255&il)>>>0<4)){if(al=q[Vk+56>>2],1<=(0|(fl=q[Vk+20>>2])))for(Wk=q[_k+332>>2],cl=q[_k+328>>2],a=0;;){if(Xk=q[(Yk=a<<2)+Wk>>2]){if((0|Xk)<0|(0|al)<(0|Xk))break f;if((0|(Yk=q[Yk+cl>>2]))<0|(0|al)<=(0|Yk))break f;if((Xk=Xk+Yk|0)>>>31|(0|al)<(0|Xk))break f}if((0|fl)==(0|(a=a+1|0)))break}if((0|(a=q[Vk+92>>2]))!=q[Vk+96>>2])break f;if(1<=(0|dl))for(cl=q[_k+152>>2],Xk=0,hl=q[_k+148>>2];;){if(Yk=q[(Wk=Xk<<2)+hl>>2]){if((0|Yk)<0|(0|a)<(0|Yk))break f;if((0|(Wk=q[Wk+cl>>2]))<0|(0|a)<=(0|Wk))break f;if((Yk=Wk+Yk|0)>>>31|(0|a)<(0|Yk))break f}if((0|dl)==(0|(Xk=Xk+1|0)))break}if(1<=(0|(ol=q[Vk+12>>2])))for(cl=q[_k+184>>2],Xk=0,hl=q[_k+180>>2];;){if(Yk=q[(Wk=Xk<<2)+hl>>2]){if((0|Yk)<0|(0|a)<(0|Yk))break f;if((0|(Wk=q[Wk+cl>>2]))<0|(0|a)<=(0|Wk))break f;if((Yk=Wk+Yk|0)>>>31|(0|a)<(0|Yk))break f}if((0|ol)==(0|(Xk=Xk+1|0)))break}if(1<=(0|Zk))for(cl=q[_k+224>>2],Xk=0,hl=q[_k+220>>2];;){if(Yk=q[(Wk=Xk<<2)+hl>>2]){if((0|Yk)<0|(0|a)<(0|Yk))break f;if((0|(Wk=q[Wk+cl>>2]))<0|(0|a)<=(0|Wk))break f;if((Yk=Wk+Yk|0)>>>31|(0|a)<(0|Yk))break f}if((0|Zk)==(0|(Xk=Xk+1|0)))break}if((Xk=0)<(0|fl)){for(Yk=q[_k+304>>2];;){if(1<t[Yk+(Xk<<2)>>2])break f;if((0|fl)==(0|(Xk=Xk+1|0)))break}for(Yk=q[Vk+100>>2],hl=q[_k+320>>2],jl=q[_k+316>>2],Xk=0;;){if(Wk=q[(cl=Xk<<2)+hl>>2]){if((0|Wk)<0|(0|Yk)<(0|Wk))break f;if((0|(cl=q[cl+jl>>2]))<0|(0|Yk)<=(0|cl))break f;if((Wk=Wk+cl|0)>>>31|(0|Yk)<(0|Wk))break f}if((0|fl)==(0|(Xk=Xk+1|0)))break}}else Yk=q[Vk+100>>2];if(1<=(0|Yk)){for(cl=q[_k+440>>2],Xk=0,jl=q[_k+436>>2];;){if(Wk=q[(hl=Xk<<2)+cl>>2]){if((0|Wk)<0|(0|al)<(0|Wk))break f;if((0|(hl=q[hl+jl>>2]))<0|(0|al)<=(0|hl))break f;if((Wk=Wk+hl|0)>>>31|(0|al)<(0|Wk))break f}if((0|Yk)==(0|(Xk=Xk+1|0)))break}for(al=q[_k+444>>2],Xk=0;;){if((0|(hl=q[(Wk=Xk<<2)+al>>2]))<0|(0|hl)>=q[Wk+cl>>2])break f;if((0|Yk)==(0|(Xk=Xk+1|0)))break}}if((al=0)<(0|(Xk=q[Vk+104>>2]))){for(Wk=q[_k+448>>2];;){if((0|(cl=q[Wk+(al<<2)>>2]))<0|(0|Yk)<=(0|cl))break f;if((0|Xk)==(0|(al=al+1|0)))break}for(Wk=q[Vk+116>>2],hl=q[_k+464>>2],jl=q[_k+460>>2],Yk=0;;){if(al=q[(cl=Yk<<2)+hl>>2]){if((0|al)<0|(0|Wk)<(0|al))break f;if((0|(cl=q[cl+jl>>2]))<0|(0|Wk)<=(0|cl))break f;if((al=al+cl|0)>>>31|(0|Wk)<(0|al))break f}if((0|Xk)==(0|(Yk=Yk+1|0)))break}}else Wk=q[Vk+116>>2];if((Yk=0)<(0|(cl=q[Vk+108>>2]))){for(al=q[_k+480>>2];;){if((0|(hl=q[al+(Yk<<2)>>2]))<0|(0|dl)<=(0|hl))break f;if((0|cl)==(0|(Yk=Yk+1|0)))break}for(hl=q[_k+488>>2],kl=q[_k+484>>2],Yk=0;;){if(al=q[(dl=Yk<<2)+hl>>2]){if((0|al)<0|(0|Xk)<(0|al))break f;if((0|(dl=q[dl+kl>>2]))<0|(0|Xk)<=(0|dl))break f;if((al=al+dl|0)>>>31|(0|Xk)<(0|al))break f}if((0|cl)==(0|(Yk=Yk+1|0)))break}for(hl=q[ll>>2],Yk=q[_k+456>>2],dl=q[_k+452>>2],al=0;;){if(ml=q[kl+(al<<2)>>2]<<2,jl=q[ml+Yk>>2]){if((0|jl)<0|(0|hl)<(0|jl))break f;if((0|(ml=q[dl+ml>>2]))<0|(0|hl)<=(0|ml))break f;if((0|(jl=jl+ml|0))<0|(0|hl)<(0|jl))break f}if((0|cl)==(0|(al=al+1|0)))break}}else Yk=q[_k+456>>2],dl=q[_k+452>>2];if((al=0)<(0|(cl=q[Vk+112>>2]))){for(hl=q[_k+504>>2];;){if((0|(jl=q[hl+(al<<2)>>2]))<0|(0|Zk)<=(0|jl))break f;if((0|cl)==(0|(al=al+1|0)))break}for(kl=q[_k+512>>2],jl=q[_k+508>>2],Zk=0;;){if(al=q[(hl=Zk<<2)+kl>>2]){if((0|al)<0|(0|Xk)<(0|al))break f;if((0|(hl=q[hl+jl>>2]))<0|(0|Xk)<=(0|hl))break f;if((al=al+hl|0)>>>31|(0|Xk)<(0|al))break f}if((0|cl)==(0|(Zk=Zk+1|0)))break}for(al=q[nl>>2],Zk=0;;){if(kl=q[jl+(Zk<<2)>>2]<<2,hl=q[kl+Yk>>2]){if((0|hl)<0|(0|al)<(0|hl))break f;if((0|(kl=q[dl+kl>>2]))<0|(0|al)<=(0|kl))break f;if((0|(hl=hl+kl|0))<0|(0|al)<(0|hl))break f}if((0|cl)==(0|(Zk=Zk+1|0)))break}}if(al=q[Vk+120>>2],(Zk=0)<(0|Wk))for(cl=q[_k+528>>2];;){if((0|(hl=q[cl+(Zk<<2)>>2]))<0|(0|al)<=(0|hl))break f;if((0|(Zk=Zk+1|0))==(0|Wk))break}if((Zk=0)<(0|al)){for(Wk=q[_k+532>>2];;){if((0|(cl=q[Wk+(Zk<<2)>>2]))<-1|(0|fl)<=(0|cl))break f;if((0|al)==(0|(Zk=Zk+1|0)))break}for(Wk=q[Vk+124>>2],hl=q[_k+540>>2],jl=q[_k+536>>2],Zk=0;;){if(fl=q[(cl=Zk<<2)+hl>>2]){if((0|fl)<0|(0|Wk)<(0|fl))break f;if((0|(cl=q[cl+jl>>2]))<0|(0|Wk)<=(0|cl))break f;if((fl=cl+fl|0)>>>31|(0|Wk)<(0|fl))break f}if((0|al)==(0|(Zk=Zk+1|0)))break}}if(!((255&il)>>>0<5)){if((Zk=0)<(0|(il=q[ll>>2]))){for(al=q[_k+348>>2];;){if((0|(Wk=q[al+(Zk<<2)>>2]))<0|(0|a)<(0|Wk))break f;if((0|il)==(0|(Zk=Zk+1|0)))break}for(al=q[_k+352>>2],Zk=0;;){if((0|(Wk=q[al+(Zk<<2)>>2]))<0|(0|a)<(0|Wk))break f;if((0|il)==(0|(Zk=Zk+1|0)))break}}if((il=0)<(0|(Zk=q[bl>>2]))){for(al=q[_k+384>>2];;){if((0|(Wk=q[al+(il<<2)>>2]))<0|(0|a)<(0|Wk))break f;if((0|Zk)==(0|(il=il+1|0)))break}for(al=q[_k+388>>2],il=0;;){if((0|(Wk=q[al+(il<<2)>>2]))<0|(0|a)<(0|Wk))break f;if((0|Zk)==(0|(il=il+1|0)))break}}if((il=0)<(0|(al=q[nl>>2]))){for(Wk=q[_k+404>>2];;){if((0|(fl=q[Wk+(il<<2)>>2]))<0|(0|a)<(0|fl))break f;if((0|al)==(0|(il=il+1|0)))break}for(Wk=q[_k+408>>2],il=0;;){if((0|(fl=q[Wk+(il<<2)>>2]))<0|(0|a)<(0|fl))break f;if((0|al)==(0|(il=il+1|0)))break}}if((a=0)<(0|(il=q[Vk+128>>2]))){for(al=q[Vk>>2],Wk=q[_k+468>>2];;){if((0|(fl=q[Wk+(a<<2)>>2]))<0|(0|al)<=(0|fl))break f;if((0|il)==(0|(a=a+1|0)))break}for(ll=q[_k+476>>2],fl=q[_k+472>>2],a=0;;){if(al=q[(Wk=a<<2)+ll>>2]){if((0|al)<0|(0|Xk)<(0|al))break f;if((0|(Wk=q[Wk+fl>>2]))<0|(0|Xk)<=(0|Wk))break f;if((al=Wk+al|0)>>>31|(0|Xk)<(0|al))break f}if((0|il)==(0|(a=a+1|0)))break}for(al=q[gl>>2],a=0;;){if(gl=q[fl+(a<<2)>>2]<<2,Wk=q[gl+Yk>>2]){if((0|Wk)<0|(0|al)<(0|Wk))break f;if((0|(gl=q[dl+gl>>2]))<0|(0|al)<=(0|gl))break f;if((0|(Wk=Wk+gl|0))<0|(0|al)<(0|Wk))break f}if((0|il)==(0|(a=a+1|0)))break}}if((a=0)<(0|(il=q[Vk+132>>2]))){for(al=q[_k+492>>2];;){if((0|(Wk=q[al+(a<<2)>>2]))<0|(0|ol)<=(0|Wk))break f;if((0|il)==(0|(a=a+1|0)))break}for(gl=q[_k+500>>2],Wk=q[_k+496>>2],a=0;;){if(al=q[(fl=a<<2)+gl>>2]){if((0|al)<0|(0|Xk)<(0|al))break f;if((0|(fl=q[Wk+fl>>2]))<0|(0|Xk)<=(0|fl))break f;if((al=al+fl|0)>>>31|(0|Xk)<(0|al))break f}if((0|il)==(0|(a=a+1|0)))break}for(a=0;;){if(fl=q[Wk+(a<<2)>>2]<<2,al=q[fl+Yk>>2]){if((0|al)<0|(0|Zk)<(0|al))break f;if((0|(fl=q[dl+fl>>2]))<0|(0|Zk)<=(0|fl))break f;if((0|(al=al+fl|0))<0|(0|Zk)<(0|al))break f}if((0|il)==(0|(a=a+1|0)))break}}if(!(((a=0)|(Vk=q[Vk+136>>2]))<=0)){for(Zk=q[_k+516>>2];;){if((0|(il=q[Zk+(a<<2)>>2]))<0|(0|$k)<=(0|il))break f;if((0|Vk)==(0|(a=a+1|0)))break}for(al=q[_k+524>>2],Zk=q[_k+520>>2],a=0;;){if(_k=q[(il=a<<2)+al>>2]){if((0|_k)<0|(0|Xk)<(0|_k))break f;if((0|(il=q[Zk+il>>2]))<0|(0|Xk)<=(0|il))break f;if((_k=_k+il|0)>>>31|(0|Xk)<(0|_k))break f}if((0|Vk)==(0|(a=a+1|0)))break}for(a=0;;){if(_k=q[Zk+(a<<2)>>2]<<2,Xk=q[_k+Yk>>2]){if((0|Xk)<0|(0|el)<(0|Xk))break f;if((0|(_k=q[_k+dl>>2]))<0|(0|el)<=(0|_k))break f;if((0|(Xk=Xk+_k|0))<0|(0|el)<(0|Xk))break f}if((0|Vk)==(0|(a=a+1|0)))break}}}}}return L=pl,1}return Y(4,1846,0),L=pl,0}q[_k+52>>2]=Xk,q[_k+48>>2]=5,Y(4,1640,_k+48|0)}else q[_k+32>>2]=Xk,Y(4,1554,_k+32|0);return L=pl,0}(a,vj):(q[20+wj>>2]=1621,q[16+wj>>2]=2284,Y(4,1294,16+wj|0),0):(q[4+wj>>2]=1444,q[wj>>2]=2284,Y(4,1294,wj),0),L=48+wj|0,0|a},i:function(a){q[1805]=a|=0},j:function(a,ej){var fj;return ej|=0,L=fj=L-48|0,a=(a|=0)?(a+63&-64)!=(0|a)?(q[36+fj>>2]=1522,q[32+fj>>2]=2305,Y(4,1294,32+fj|0),0):(ej+63&-64)==(0|ej)&&ej?function(a){var Qk,Tk,Uk,Uh,Kk=0,Lk=0,Mk=0,Nk=0,Ok=0,Pk=0,Rk=0,Sk=0;q[24+(L=Qk=L-32|0)>>2]=0,q[16+Qk>>2]=5,q[20+Qk>>2]=0,Ka(16+(L=Uh=L-272|0)|0,2227,q[12+Uh>>2]=16+Qk|0),function(a){var Hc;q[(L=Hc=L-16|0)>>2]=a,function(a,Il){var Jl;q[12+(L=Jl=L-16|0)>>2]=Il,Ia(a,1432,Il,0,0),L=16+Jl|0}(q[970],Hc),L=16+Hc|0}(16+Uh|0),L=272+Uh|0;a:{if(sa(a))Y(4,1932,0);else{if(!(6<=(Mk=r[a+4|0])>>>0)){if(1!=(0|!r[a+5|0])?(da(a+4|0,1),X(a- -64|0,4,160),na(a,a+704|(o[a+5|0]=0)),ya(a)):na(a,a+704|0),r[7224]||(q[1807]=6,o[7224]=1,q[1808]=7,q[1809]=8,q[1810]=9),Lk=q[a+704>>2],1<=(0|(Mk=q[Lk+16>>2]))){for(Sk=(Nk=q[a+912>>2])+(Mk<<2)|0,Ok=q[a+908>>2];;){Rk=q[a+1204>>2]+(q[Ok>>2]<<2)|0;d:if(!(((Lk=0)|(Kk=(Mk=q[Nk>>2])+-1|0))<1))e:for(;;){for(;;){if(q[(Pk=Rk+(Lk<<2)|0)>>2]<=-1){if(function(a,Vk,ql){var rl=0,sl=0;a:if((0|a)!=(0|Vk)){if(!(a>>>0<Vk+ql>>>0&&Vk>>>0<(sl=a+ql|0)>>>0))return $(a,Vk,ql);if(rl=3&(a^Vk),a>>>0<Vk>>>0){if(!rl){if(3&a)for(;;){if(!ql)break a;if(o[0|a]=r[0|Vk],Vk=Vk+1|0,ql=ql+-1|0,!(3&(a=a+1|0)))break}if(!(ql>>>0<=3)){for(rl=ql;q[a>>2]=q[Vk>>2],Vk=Vk+4|0,a=a+4|0,3<(rl=rl+-4|0)>>>0;);ql&=3}}if(ql)for(;o[0|a]=r[0|Vk],a=a+1|0,Vk=Vk+1|0,ql=ql+-1|0;);}else{if(!rl){if(3&sl)for(;;){if(!ql)break a;if(o[0|(rl=(ql=ql+-1|0)+a|0)]=r[Vk+ql|0],!(3&rl))break}if(!(ql>>>0<=3))for(;q[(ql=ql+-4|0)+a>>2]=q[Vk+ql>>2],3<ql>>>0;);}if(ql)for(;o[(ql=ql+-1|0)+a|0]=r[Vk+ql|0],ql;);}}}(Pk,Pk+4|0,(-1^Lk)+Mk<<2),(0|Lk)<(0|(Kk=(Mk=Kk)+-1|0)))continue e;break d}if(!((0|(Lk=Lk+1|0))<(0|Kk)))break}break}if(Lk=Nk,0<(0|Mk)&&(Mk=q[Rk+(Kk<<2)>>2]<0?Kk:Mk),q[Lk>>2]=Mk,Ok=Ok+4|0,!((Nk=Nk+4|0)>>>0<Sk>>>0))break}Lk=q[a+704>>2]}if(1<=q[Lk>>2])for(Kk=0;q[q[a+712>>2]+(Kk<<2)>>2]=q[a+716>>2]+(Kk<<6),Lk=q[a+704>>2],(0|(Kk=Kk+1|0))<q[Lk>>2];);if(1<=q[Lk+4>>2])for(Kk=0;q[q[a+744>>2]+(Kk<<2)>>2]=q[a+748>>2]+(Kk<<6),Lk=q[a+704>>2],(0|(Kk=Kk+1|0))<q[Lk+4>>2];);if(1<=q[Lk+16>>2])for(Kk=0;q[(Mk=Kk<<2)+q[a+832>>2]>>2]=q[a+848>>2]+(Kk<<6),q[Mk+q[a+836>>2]>>2]=q[a+1196>>2]+(q[Mk+q[a+896>>2]>>2]<<2),q[Mk+q[a+840>>2]>>2]=q[a+1200>>2]+(q[Mk+q[a+900>>2]>>2]<<1),q[Mk+q[a+844>>2]>>2]=q[a+1204>>2]+(q[Mk+q[a+908>>2]>>2]<<2),Lk=q[a+704>>2],(0|(Kk=Kk+1|0))<q[Lk+16>>2];);if(1<=q[Lk+20>>2])for(Kk=0;q[q[a+916>>2]+(Kk<<2)>>2]=q[a+920>>2]+(Kk<<6),Lk=q[a+704>>2],(0|(Kk=Kk+1|0))<q[Lk+20>>2];);if(1<=q[Lk+80>>2])for(Kk=0;q[q[a+1240>>2]+(Kk<<2)>>2]=q[a+1244>>2]+(Kk<<6),Lk=q[a+704>>2],(0|(Kk=Kk+1|0))<q[Lk+80>>2];);if(1&o[q[a+708>>2]+20|0])break a;if((0|(Nk=q[Lk+16>>2]))<1)break a;for(Kk=q[a+904>>2],Rk=q[a+900>>2],Pk=q[a+1200>>2],Ok=0;;){if(0<(0|(Sk=q[(Mk=Ok<<2)+Kk>>2]+-1|0)))for(Tk=Pk+(q[Mk+Rk>>2]<<1)|0,Lk=0;Uk=s[(Mk=Tk+(Lk<<1)|0)>>1],p[Mk>>1]=s[Mk+4>>1],p[Mk+4>>1]=Uk,(0|(Lk=Lk+3|0))<(0|Sk););if((0|Nk)==(0|(Ok=Ok+1|0)))break}for(Mk=q[a+892>>2],Ok=q[a+896>>2],Rk=q[a+1196>>2],Kk=0;;){if(1<=(0|(Pk=q[(Lk=Kk<<2)+Mk>>2])))for(Pk=(Lk=Rk+(q[Lk+Ok>>2]<<2)|0)+(Pk<<3)|0,Lk=Lk+4|0;u[Lk>>2]=x(1)-u[Lk>>2],(Lk=Lk+8|0)>>>0<Pk>>>0;);if((0|Nk)==(0|(Kk=Kk+1|0)))break}break a}q[4+Qk>>2]=Mk,q[Qk>>2]=5,Y(4,2023,Qk)}a=0}return L=32+Qk|0,a}(a):(q[20+fj>>2]=1621,q[16+fj>>2]=2305,Y(4,1294,16+fj|0),0):(q[4+fj>>2]=1444,q[fj>>2]=2305,Y(4,1294,fj),0),L=48+fj|0,0|a},k:function(a,ej,fj,gj){var hj;ej|=0,fj|=0,gj|=0,L=hj=L+-64|0,(a|=0)?ej?fj?gj?(a=q[q[a>>2]+708>>2],q[ej>>2]=q[a+12>>2],q[ej+4>>2]=q[a+16>>2],q[fj>>2]=q[a+4>>2],q[fj+4>>2]=q[a+8>>2],q[gj>>2]=q[a>>2]):(q[52+hj>>2]=1995,q[48+hj>>2]=2325,Y(4,1294,48+hj|0)):(q[36+hj>>2]=1903,q[32+hj>>2]=2325,Y(4,1294,32+hj|0)):(q[20+hj>>2]=1819,q[16+hj>>2]=2325,Y(4,1294,16+hj|0)):(q[4+hj>>2]=1740,q[hj>>2]=2325,Y(4,1294,hj)),L=64+hj|0},l:xa,m:wa,n:function(a){var dj;L=dj=L-16|0,(a|=0)?ua(a):(q[4+dj>>2]=1740,q[dj>>2]=2387,Y(4,1294,dj)),L=16+dj|0},o:function(a){var cj;return L=cj=L-16|0,a=(a|=0)?q[a+540>>2]:(q[4+cj>>2]=1740,q[cj>>2]=2402,Y(4,1294,cj),-1),L=16+cj|0,0|a},p:function(a){var bj;return L=bj=L-16|0,a=(a|=0)?q[q[a>>2]+916>>2]:(q[4+bj>>2]=1740,q[bj>>2]=2423,Y(4,1294,bj),0),L=16+bj|0,0|a},q:function(a){var aj;return L=aj=L-16|0,a=(a|=0)?q[a+548>>2]:(q[4+aj>>2]=1740,q[aj>>2]=2442,Y(4,1294,aj),0),L=16+aj|0,0|a},r:function(a){var $i;return L=$i=L-16|0,a=(a|=0)?q[q[a>>2]+928>>2]:(q[4+$i>>2]=1740,q[$i>>2]=2463,Y(4,1294,$i),0),L=16+$i|0,0|a},s:function(a){var _i;return L=_i=L-16|0,a=(a|=0)?q[q[a>>2]+924>>2]:(q[4+_i>>2]=1740,q[_i>>2]=2492,Y(4,1294,_i),0),L=16+_i|0,0|a},t:function(a){var Zi;return L=Zi=L-16|0,a=(a|=0)?q[q[a>>2]+932>>2]:(q[4+Zi>>2]=1740,q[Zi>>2]=2521,Y(4,1294,Zi),0),L=16+Zi|0,0|a},u:function(a){var Yi;return L=Yi=L-16|0,a=(a|=0)?q[a+552>>2]:(q[4+Yi>>2]=1740,q[Yi>>2]=2550,Y(4,1294,Yi),0),L=16+Yi|0,0|a},v:function(a){var Xi;return L=Xi=L-16|0,a=(a|=0)?q[a+4>>2]:(q[4+Xi>>2]=1740,q[Xi>>2]=2572,Y(4,1294,Xi),-1),L=16+Xi|0,0|a},w:function(a){var Wi;return L=Wi=L-16|0,a=(a|=0)?q[q[a>>2]+712>>2]:(q[4+Wi>>2]=1740,q[Wi>>2]=2588,Y(4,1294,Wi),0),L=16+Wi|0,0|a},x:function(a){var Vi;return L=Vi=L-16|0,a=(a|=0)?q[a+52>>2]:(q[4+Vi>>2]=1740,q[Vi>>2]=2602,Y(4,1294,Vi),0),L=16+Vi|0,0|a},y:function(a){var Ui;return L=Ui=L-16|0,a=(a|=0)?q[q[a>>2]+740>>2]:(q[4+Ui>>2]=1740,q[Ui>>2]=2622,Y(4,1294,Ui),0),L=16+Ui|0,0|a},z:function(a){var Ti;return L=Ti=L-16|0,a=(a|=0)?q[a+332>>2]:(q[4+Ti>>2]=1740,q[Ti>>2]=2650,Y(4,1294,Ti),-1),L=16+Ti|0,0|a},A:function(a){var Si;return L=Si=L-16|0,a=(a|=0)?q[q[a>>2]+832>>2]:(q[4+Si>>2]=1740,q[Si>>2]=2670,Y(4,1294,Si),0),L=16+Si|0,0|a},B:function(a){var Ri;return L=Ri=L-16|0,a=(a|=0)?q[q[a>>2]+888>>2]:(q[4+Ri>>2]=1740,q[Ri>>2]=2688,Y(4,1294,Ri),0),L=16+Ri|0,0|a},C:function(a){var Qi;return L=Qi=L-16|0,a=(a|=0)?q[a+432>>2]:(q[4+Qi>>2]=1740,q[Qi>>2]=2716,Y(4,1294,Qi),0),L=16+Qi|0,0|a},D:function(a){var Pi;return L=Pi=L-16|0,a=(a|=0)?q[q[a>>2]+884>>2]:(q[4+Pi>>2]=1740,q[Pi>>2]=2743,Y(4,1294,Pi),0),L=16+Pi|0,0|a},E:function(a){var Oi;return L=Oi=L-16|0,a=(a|=0)?q[a+440>>2]:(q[4+Oi>>2]=1740,q[Oi>>2]=2772,Y(4,1294,Oi),0),L=16+Oi|0,0|a},F:function(a){var Ni;return L=Ni=L-16|0,a=(a|=0)?q[a+436>>2]:(q[4+Ni>>2]=1740,q[Ni>>2]=2797,Y(4,1294,Ni),0),L=16+Ni|0,0|a},G:function(a){var Mi;return L=Mi=L-16|0,a=(a|=0)?q[a+448>>2]:(q[4+Mi>>2]=1740,q[Mi>>2]=2824,Y(4,1294,Mi),0),L=16+Mi|0,0|a},H:function(a){var Li;return L=Li=L-16|0,a=(a|=0)?q[q[a>>2]+912>>2]:(q[4+Li>>2]=1740,q[Li>>2]=2848,Y(4,1294,Li),0),L=16+Li|0,0|a},I:function(a){var Ki;return L=Ki=L-16|0,a=(a|=0)?q[q[a>>2]+844>>2]:(q[4+Ki>>2]=1740,q[Ki>>2]=2873,Y(4,1294,Ki),0),L=16+Ki|0,0|a},J:function(a){var Ji;return L=Ji=L-16|0,a=(a|=0)?q[q[a>>2]+892>>2]:(q[4+Ji>>2]=1740,q[Ji>>2]=2893,Y(4,1294,Ji),0),L=16+Ji|0,0|a},K:function(a){var Ii;return L=Ii=L-16|0,a=(a|=0)?q[a+444>>2]:(q[4+Ii>>2]=1740,q[Ii>>2]=2920,Y(4,1294,Ii),0),L=16+Ii|0,0|a},L:function(a){var Hi;return L=Hi=L-16|0,a=(a|=0)?q[q[a>>2]+836>>2]:(q[4+Hi>>2]=1740,q[Hi>>2]=2950,Y(4,1294,Hi),0),L=16+Hi|0,0|a},M:function(a){var ri;return L=ri=L-16|0,a=(a|=0)?q[q[a>>2]+904>>2]:(q[4+ri>>2]=1740,q[ri>>2]=2974,Y(4,1294,ri),0),L=16+ri|0,0|a},N:function(a){var qi;return L=qi=L-16|0,a=(a|=0)?q[q[a>>2]+840>>2]:(q[4+qi>>2]=1740,q[qi>>2]=3e3,Y(4,1294,qi),0),L=16+qi|0,0|a},O:function(a){var pi;return L=pi=L-16|0,a=(a|=0)?q[a+452>>2]:(q[4+pi>>2]=1740,q[pi>>2]=3022,Y(4,1294,pi),0),L=16+pi|0,0|a},P:function(a){var oi;return L=oi=L-16|0,a=(a|=0)?q[a+456>>2]:(q[4+oi>>2]=1740,q[oi>>2]=3051,Y(4,1294,oi),0),L=16+oi|0,0|a},Q:function(a){var ni;return L=ni=L-16|0,a=(a|=0)?q[q[a>>2]+876>>2]:(q[4+ni>>2]=1740,q[ni>>2]=3078,Y(4,1294,ni),0),L=16+ni|0,0|a},R:function(a){var mi;L=mi=L-16|0,(a|=0)?q[a+428>>2]=1:(q[4+mi>>2]=1740,q[mi>>2]=3110,Y(4,1294,mi)),L=16+mi|0},S:function(a){var li;return L=li=L-16|0,a=(a|=0)?q[a+640>>2]:(q[4+li>>2]=1740,q[li>>2]=3139,Y(4,1294,li),0),L=16+li|0,0|a},T:function(a){var ji;return L=ji=L-16|0,a=(a|=0)?q[a+636>>2]:(q[4+ji>>2]=1740,q[ji>>2]=3164,Y(4,1294,ji),0),L=16+ji|0,0|a},U:function(a){var Fc;return oa(12+(L=Fc=L-16|0)|0,64,a|=0),L=16+Fc|0,q[12+Fc>>2]},V:function(a){var Ec,Cc,Dc=0;return L=Cc=L-16|0,!(a|=0)||oa(12+Cc|0,16,Ec=xa(a))||(Dc=wa(a,q[12+Cc>>2],Ec))||(pa(q[12+Cc>>2]),Dc=0),L=16+Cc|0,0|Dc},W:function(a){return 0|qa(a|=0)},X:function(a){pa(a|=0)},Y:function(a){var Sm;oa(12+(L=Sm=L-16|0)|0,64,a|=0),pa(q[12+Sm>>2]),L=16+Sm|0},Z:function(){return 0|L},_:function(a){return 0|(L=L-(0|a)&-16)},$:function(a){L=0|a},aa:function(a){return 0|(a=0|(a|=0),(P=0|N())<(a=P+(a|=0)|0)&&a<65536&&(a=new ArrayBuffer(w(a,65536)),(S=new global.Int8Array(a)).set(o),o=S,o=new global.Int8Array(a),p=new global.Int16Array(a),q=new global.Int32Array(a),r=new global.Uint8Array(a),s=new global.Uint16Array(a),t=new global.Uint32Array(a),u=new global.Float32Array(a),v=new global.Float64Array(a),buffer=a,m.buffer=a),P);var S,P},ba:function(a,Vk){n[a|=0](Vk|=0)}};function X(a,b,c){var e,f,d=0;if(c)for(;;){if(c=c+-1|0,a>>>0<(d=(e=a+b|0)-1|0)>>>0)for(;f=r[0|a],o[0|a]=r[0|d],o[0|d]=f,(a=a+1|0)>>>0<(d=d+-1|0)>>>0;);if(a=e,!c)break}}function Y(a,b,c){var g;L=g=L-272|0,t[1804]>a>>>0||(a=q[1805])&&(Ka(16+g|0,b,q[12+g>>2]=c),n[a](16+g|0)),L=272+g|0}function Z(a,b,c){32&r[0|a]||!function(a,Rm,Sm){var Tm=0,Um=0,tn=0;a:{if(!(Tm=q[Sm+16>>2])){if(function(a){var Rm;return Rm=r[a+74|0],o[a+74|0]=Rm+-1|Rm,8&(Rm=q[a>>2])?(q[a>>2]=32|Rm,1):(q[a+4>>2]=0,q[a+8>>2]=0,Rm=q[a+44>>2],q[a+28>>2]=Rm,q[a+20>>2]=Rm,q[a+16>>2]=Rm+q[a+48>>2],0)}(Sm))break a;Tm=q[Sm+16>>2]}if(Tm-(tn=q[Sm+20>>2])>>>0<Rm>>>0)return n[q[Sm+36>>2]](Sm,a,Rm);b:if(!(o[Sm+75|0]<0)){for(Tm=Rm;;){if(!(Um=Tm))break b;if(10==r[(Tm=Um+-1|0)+a|0])break}if(n[q[Sm+36>>2]](Sm,a,Um)>>>0<Um>>>0)break a;Rm=Rm-Um|0,a=a+Um|0,tn=q[Sm+20>>2]}$(tn,a,Rm),q[Sm+20>>2]=q[Sm+20>>2]+Rm}}(b,c,a)}function _(a,b,c,h,i){var k,l,j;if(L=j=L-256|0,!(73728&i|(0|c)<=(0|h))){if(ca(j,b,(k=(i=c-h|0)>>>0<256)?i:256),b=a,l=j,!k){for(c=c-h|0;Z(a,j,256),255<(i=i+-256|0)>>>0;);i=255&c}Z(b,l,i)}L=256+j|0}function $(a,b,c){var h,i=0;if(8192<=c>>>0)I(0|a,0|b,0|c);else{if(h=a+c|0,3&(a^b))if(h>>>0<4)c=a;else if((i=h-4|0)>>>0<a>>>0)c=a;else for(c=a;o[0|c]=r[0|b],o[c+1|0]=r[b+1|0],o[c+2|0]=r[b+2|0],o[c+3|0]=r[b+3|0],b=b+4|0,(c=c+4|0)>>>0<=i>>>0;);else{b:if((0|c)<1)c=a;else if(3&a)for(c=a;;){if(o[0|c]=r[0|b],b=b+1|0,h>>>0<=(c=c+1|0)>>>0)break b;if(!(3&c))break}else c=a;if(!((a=-4&h)>>>0<64||(i=a+-64|0)>>>0<c>>>0))for(;q[c>>2]=q[b>>2],q[c+4>>2]=q[b+4>>2],q[c+8>>2]=q[b+8>>2],q[c+12>>2]=q[b+12>>2],q[c+16>>2]=q[b+16>>2],q[c+20>>2]=q[b+20>>2],q[c+24>>2]=q[b+24>>2],q[c+28>>2]=q[b+28>>2],q[c+32>>2]=q[b+32>>2],q[c+36>>2]=q[b+36>>2],q[c+40>>2]=q[b+40>>2],q[c+44>>2]=q[b+44>>2],q[c+48>>2]=q[b+48>>2],q[c+52>>2]=q[b+52>>2],q[c+56>>2]=q[b+56>>2],q[c+60>>2]=q[b+60>>2],b=b- -64|0,(c=c- -64|0)>>>0<=i>>>0;);if(!(a>>>0<=c>>>0))for(;q[c>>2]=q[b>>2],b=b+4|0,(c=c+4|0)>>>0<a>>>0;);}if(c>>>0<h>>>0)for(;o[0|c]=r[0|b],b=b+1|0,(0|h)!=(0|(c=c+1|0)););}}function aa(a){var b,c;return x((b=a*a)*b*(c=b*a)*(2718311493989822e-21*b-.00019839334836096632)+(c*(.008333329385889463*b-.16666666641626524)+a))}function ba(a){var m;return x(-.499999997251031*(a*=a)+1+.04166662332373906*(m=a*a)+a*m*(2439044879627741e-20*a-.001388676377460993))}function ca(a,n,p){var r,s,t,u;if(p&&(o[(r=a+p|0)-1|0]=n,o[0|a]=n,!(p>>>0<3||(o[r-2|0]=n,o[a+1|0]=n,o[r-3|0]=n,o[a+2|0]=n,p>>>0<7)||(o[r-4|0]=n,o[a+3|0]=n,p>>>0<9)||(s=(r=0-a&3)+a|0,n=w(255&n,16843009),q[s>>2]=n,q[(r=(p=p-r&-4)+s|0)-4>>2]=n,p>>>0<9)||(q[8+s>>2]=n,q[4+s>>2]=n,q[r-8>>2]=n,q[r-12>>2]=n,p>>>0<25)||(q[24+s>>2]=n,q[20+s>>2]=n,q[16+s>>2]=n,q[12+s>>2]=n,q[r-16>>2]=n,q[r-20>>2]=n,q[r-24>>2]=n,q[r-28>>2]=n,(p=p-(u=4&s|24)|0)>>>0<32))))for(t=r=n,n=s+u|0;q[n+24>>2]=t,q[n+28>>2]=r,q[n+16>>2]=t,q[n+20>>2]=r,q[n+8>>2]=t,q[n+12>>2]=r,q[n>>2]=t,q[n+4>>2]=r,n=n+32|0,31<(p=p+-32|0)>>>0;);return a}function da(a,n){var p;if(a>>>0<(n=(a+n|0)-1|0)>>>0)for(;p=r[0|a],o[0|a]=r[0|n],o[0|n]=p,(a=a+1|0)>>>0<(n=n+-1|0)>>>0;);}function ea(a){var n,o=N();return(a=(n=q[2216])+a|0)>>>0<=o<<16>>>0||J(0|a)?(q[2216]=a,n):(q[2086]=48,-1)}function fa(a,v,y,z,B,C,D){var H,I,K,N,Q,R,S,O,P,J,E=0,F=x(0),G=x(0),M=x(0);if(x(0),x(0),x(0),x(0),L=J=L-16|0,1<=(0|a))for(R=w(a,12)+v|0;;){if(1<=(0|(I=q[v+4>>2])))for(S=(a=q[v+8>>2])+w(I,48)|0,I=(H=q[v>>2]<<4)+D|0,K=(8|H)+D|0,H=(4|H)+D|0;(E=q[a+8>>2])&&((O=E+-1|0)>>>0<=1?(P=(q[a+4>>2]<<2)+y|0,E=q[P+(q[a+12>>2]<<2)>>2]<<2,F=u[E+C>>2],Q=u[B+E>>2],G=u[z+E>>2],O-1?(M=G,G=u[a+20>>2],u[I>>2]=u[I>>2]+x(u[a+44>>2]*x(M*G)),u[H>>2]=u[H>>2]+x(x(Q*G)*u[a+44>>2]),u[K>>2]=u[K>>2]+x(x(F*G)*u[a+44>>2])):(E=q[(q[a+16>>2]<<2)+P>>2]<<2,O=u[E+C>>2],P=u[B+E>>2],M=G,G=u[a+20>>2],N=u[a+24>>2],u[I>>2]=u[I>>2]+x(u[a+44>>2]*x(x(M*G)+x(u[z+E>>2]*N))),u[H>>2]=u[H>>2]+x(x(x(Q*G)+x(P*N))*u[a+44>>2]),u[K>>2]=u[K>>2]+x(x(x(F*G)+x(O*N))*u[a+44>>2]))):(q[J>>2]=E,Y(4,1024,J))),(a=a+48|0)>>>0<S>>>0;);if(a=(q[v>>2]<<4)+D|0,F=u[a>>2],u[a>>2]=F<x(0)?x(0):x(A(F,x(1))),F=u[a+4>>2],u[a+4>>2]=F<x(0)?x(0):x(A(F,x(1))),F=u[a+8>>2],u[a+8>>2]=F<x(0)?x(0):x(A(F,x(1))),!((v=v+12|0)>>>0<R>>>0))break}L=16+J|0}function ga(a,q,v){var y,z,x=0;if(1==(0|q)&a>>>0<0|q>>>0<1)x=a;else for(;y=ad(x=bd(a,q,10),z=M,10),o[0|(v=v+-1|0)]=a-y|48,y=9==(0|q)&4294967295<a>>>0|9<q>>>0,a=x,q=z,y;);if(x)for(;o[0|(v=v+-1|0)]=x-w(a=(x>>>0)/10|0,10)|48,q=9<x>>>0,x=a,q;);return v}function ha(a){return a+-48>>>0<10}function ia(a){var q;return(q=La(a,64))?q-a|0:64}function ja(a,v){var w=0;return 1024<=(0|v)?(a*=898846567431158e293,v=(0|(w=v+-1023|0))<1024?w:(a*=898846567431158e293,((0|v)<3069?v:3069)+-2046|0)):-1023<(0|v)||(a*=22250738585072014e-324,v=-1023<(0|(w=v+1022|0))?w:(a*=22250738585072014e-324,(-3066<(0|v)?v:-3066)+2044|0)),f(0,0),f(1,v+1023<<20),a*+g()}function ka(a,v){var A=0,C=a,B=v>>>0<=31?(A=q[a+4>>2],q[a>>2]):(A=q[a>>2],q[a+4>>2]=A,v=v+-32|(q[a>>2]=0),0);q[C>>2]=B<<v,q[a+4>>2]=A<<v|B>>>32-v}function la(a,v,D,V,W){var X,Y=0,Z=0,_=0;L=X=L-240|0,Y=q[v>>2],q[232+X>>2]=Y,v=q[v+4>>2],q[X>>2]=a,Z=1;a:{b:{c:{if(((q[236+X>>2]=v)||1!=(0|Y))&&(Y=a-q[(D<<2)+W>>2]|0,!((0|n[5](Y,a))<1))){for(_=!V;;){e:{if(v=Y,!(!_|(0|D)<2)){if(V=q[((D<<2)+W|0)-8>>2],-1<(0|n[5](Y=a+-4|0,v)))break e;if(-1<(0|n[5](Y-V|0,v)))break e}if(q[(Z<<2)+X>>2]=v,Z=Z+1|0,ma(232+X|0,a=Oa(232+X|0)),D=a+D|0,!q[236+X>>2]&&1==q[232+X>>2])break b;if(_=1,Y=(a=v)-q[(D<<2)+W>>2]|(V=0),0<(0|n[5](Y,q[X>>2])))continue;break c}break}v=a;break b}v=a}if(V)break a}Na(X,Z),ta(v,D,W)}L=240+X|0}function ma(a,v){var D=0,V=a,L=v>>>0<=31?(D=q[a>>2],q[a+4>>2]):(D=q[a+4>>2],q[a+4>>2]=0,q[a>>2]=D,v=v+-32|0,0);q[V+4>>2]=L>>>v,q[a>>2]=L<<32-v|D>>>v}function na(a,v){var W=r[a+4|0];q[v>>2]=q[a+64>>2]+a,q[v+4>>2]=q[a+68>>2]+a,q[v+8>>2]=q[a+72>>2]+a,q[v+12>>2]=q[a+76>>2]+a,q[v+16>>2]=q[a+80>>2]+a,q[v+20>>2]=q[a+84>>2]+a,q[v+24>>2]=q[a+88>>2]+a,q[v+28>>2]=q[a+92>>2]+a,q[v+32>>2]=q[a+96>>2]+a,q[v+36>>2]=q[a+100>>2]+a,q[v+40>>2]=q[a+104>>2]+a,q[v+44>>2]=q[a+108>>2]+a,q[v+48>>2]=q[a+112>>2]+a,q[v+52>>2]=q[a+116>>2]+a,q[v+56>>2]=q[a+120>>2]+a,q[v+60>>2]=q[a+124>>2]+a,q[v- -64>>2]=q[a+128>>2]+a,q[v+68>>2]=q[a+132>>2]+a,q[v+72>>2]=q[a+136>>2]+a,q[v+76>>2]=q[a+140>>2]+a,q[v+80>>2]=q[a+144>>2]+a,q[v+84>>2]=q[a+148>>2]+a,q[v+92>>2]=q[a+152>>2]+a,q[v+96>>2]=q[a+156>>2]+a,q[v+100>>2]=q[a+160>>2]+a,q[v+108>>2]=q[a+164>>2]+a,q[v+112>>2]=q[a+168>>2]+a,q[v+116>>2]=q[a+172>>2]+a,q[v+124>>2]=q[a+176>>2]+a,q[v+128>>2]=q[a+180>>2]+a,q[v+132>>2]=q[a+184>>2]+a,q[v+136>>2]=q[a+188>>2]+a,q[v+140>>2]=q[a+192>>2]+a,q[v+144>>2]=q[a+196>>2]+a,q[v+148>>2]=q[a+200>>2]+a,q[v+152>>2]=q[a+204>>2]+a,q[v+156>>2]=q[a+208>>2]+a,q[v+164>>2]=q[a+212>>2]+a,q[v+168>>2]=q[a+216>>2]+a,q[v+172>>2]=q[a+220>>2]+a,q[v+176>>2]=q[a+224>>2]+a,q[v+180>>2]=q[a+228>>2]+a,q[v+184>>2]=q[a+232>>2]+a,q[v+188>>2]=q[a+236>>2]+a,q[v+192>>2]=q[a+240>>2]+a,q[v+196>>2]=q[a+244>>2]+a,q[v+200>>2]=q[a+248>>2]+a,q[v+204>>2]=q[a+252>>2]+a,q[v+208>>2]=q[a+256>>2]+a,q[v+212>>2]=q[a+260>>2]+a,q[v+216>>2]=q[a+264>>2]+a,q[v+220>>2]=q[a+268>>2]+a,q[v+224>>2]=q[a+272>>2]+a,q[v+228>>2]=q[a+276>>2]+a,q[v+232>>2]=q[a+280>>2]+a,q[v+236>>2]=q[a+284>>2]+a,q[v+244>>2]=q[a+288>>2]+a,q[v+248>>2]=q[a+292>>2]+a,q[v+272>>2]=q[a+296>>2]+a,q[v+276>>2]=q[a+300>>2]+a,q[v+280>>2]=q[a+304>>2]+a,q[v+292>>2]=q[a+308>>2]+a,q[v+296>>2]=q[a+312>>2]+a,q[v+300>>2]=q[a+316>>2]+a,q[v+304>>2]=q[a+320>>2]+a,q[v+308>>2]=q[a+324>>2]+a,q[v+312>>2]=q[a+328>>2]+a,q[v+316>>2]=q[a+332>>2]+a,q[v+328>>2]=q[a+336>>2]+a,q[v+332>>2]=q[a+340>>2]+a,q[v+336>>2]=q[a+344>>2]+a,q[v+348>>2]=q[a+348>>2]+a,q[v+360>>2]=q[a+352>>2]+a,q[v+364>>2]=q[a+356>>2]+a,q[v+368>>2]=q[a+360>>2]+a,q[v+352>>2]=q[a+364>>2]+a,q[v+356>>2]=q[a+368>>2]+a,q[v+488>>2]=q[a+372>>2]+a,q[v+492>>2]=q[a+376>>2]+a,q[v+496>>2]=q[a+380>>2]+a,q[v+500>>2]=q[a+384>>2]+a,q[v+504>>2]=q[a+388>>2]+a,q[v+508>>2]=q[a+392>>2]+a,q[v+512>>2]=q[a+396>>2]+a,q[v+516>>2]=q[a+400>>2]+a,q[v+520>>2]=q[a+404>>2]+a,q[v+524>>2]=q[a+408>>2]+a,q[v+528>>2]=q[a+412>>2]+a,q[v+532>>2]=q[a+416>>2]+a,q[v+536>>2]=q[a+420>>2]+a,q[v+540>>2]=q[a+424>>2]+a,q[v+544>>2]=q[a+428>>2]+a,q[v+548>>2]=q[a+432>>2]+a,q[v+552>>2]=q[a+436>>2]+a,q[v+556>>2]=q[a+440>>2]+a,q[v+560>>2]=q[a+444>>2]+a,q[v+564>>2]=q[a+448>>2]+a,q[v+568>>2]=q[a+452>>2]+a,q[v+572>>2]=q[a+456>>2]+a,q[v+576>>2]=q[a+460>>2]+a,q[v+580>>2]=q[a+464>>2]+a,W>>>0<2||(q[v+104>>2]=q[a+468>>2]+a,W>>>0<4)||(q[v+260>>2]=q[a+472>>2]+a,q[v+264>>2]=q[a+476>>2]+a,q[v+268>>2]=q[a+480>>2]+a,q[v+88>>2]=q[a+484>>2]+a,q[v+120>>2]=q[a+488>>2]+a,q[v+160>>2]=q[a+492>>2]+a,q[v+584>>2]=q[a+496>>2]+a,q[v+588>>2]=q[a+500>>2]+a,q[v+592>>2]=q[a+504>>2]+a,q[v+596>>2]=q[a+508>>2]+a,q[v+600>>2]=q[a+512>>2]+a,q[v+604>>2]=q[a+516>>2]+a,q[v+240>>2]=q[a+520>>2]+a,q[v+252>>2]=q[a+524>>2]+a,q[v+256>>2]=q[a+528>>2]+a,q[v+372>>2]=q[a+532>>2]+a,q[v+376>>2]=q[a+536>>2]+a,q[v+380>>2]=q[a+540>>2]+a,q[v+384>>2]=q[a+544>>2]+a,q[v+388>>2]=q[a+548>>2]+a,q[v+392>>2]=q[a+552>>2]+a,q[v+396>>2]=q[a+556>>2]+a,q[v+400>>2]=q[a+560>>2]+a,q[v+416>>2]=q[a+564>>2]+a,q[v+420>>2]=q[a+568>>2]+a,q[v+424>>2]=q[a+572>>2]+a,q[v+440>>2]=q[a+576>>2]+a,q[v+444>>2]=q[a+580>>2]+a,q[v+448>>2]=q[a+584>>2]+a,q[v+464>>2]=q[a+588>>2]+a,q[v+468>>2]=q[a+592>>2]+a,q[v+472>>2]=q[a+596>>2]+a,q[v+476>>2]=q[a+600>>2]+a,q[v+480>>2]=q[a+604>>2]+a,q[v+484>>2]=q[a+608>>2]+a,4!=(0|W)&&(q[v+284>>2]=q[a+612>>2]+a,q[v+288>>2]=q[a+616>>2]+a,q[v+320>>2]=q[a+620>>2]+a,q[v+324>>2]=q[a+624>>2]+a,q[v+340>>2]=q[a+628>>2]+a,q[v+344>>2]=q[a+632>>2]+a,q[v+404>>2]=q[a+636>>2]+a,q[v+408>>2]=q[a+640>>2]+a,q[v+412>>2]=q[a+644>>2]+a,q[v+428>>2]=q[a+648>>2]+a,q[v+432>>2]=q[a+652>>2]+a,q[v+436>>2]=q[a+656>>2]+a,q[v+452>>2]=q[a+660>>2]+a,q[v+456>>2]=q[a+664>>2]+a,q[v+460>>2]=q[a+668>>2]+a))}function oa(a,v,$){var aa=0;a:{if(8==(0|v))v=qa($);else{if(aa=28,3&v|1!=(0|function(a){for(var $o=0,ap=0;ap=$o,a;)a&=a-1,$o=$o+1|0;return ap}(v>>>2)))break a;if(aa=48,-64-v>>>0<$>>>0)break a;v=function(a,Vk){var vl,wl,ql=0,tl=0,ul=0;if((tl=a>>>0>(ql=16)?a:16)+-1&tl)for(;ql=(a=ql)<<1,a>>>0<tl>>>0;);else a=tl;return-64-a>>>0<=Vk>>>0?(q[2086]=48,0):(ql=qa(12+((tl=Vk>>>0<11?16:Vk+11&-8)+a|0)|0))?(Vk=ql+-8|0,ql&a+-1?(ul=(-8&(wl=q[(vl=ql+-4|0)>>2]))-(ql=(a=15<(ql=((a+ql|0)-1&0-a)-8|0)-Vk>>>0?ql:a+ql|0)-Vk|0)|0,3&wl?(q[a+4>>2]=ul|1&q[a+4>>2]|2,q[4+(ul=a+ul|0)>>2]=1|q[4+ul>>2],q[vl>>2]=ql|1&q[vl>>2]|2,q[a+4>>2]=1|q[a+4>>2],za(Vk,ql)):(Vk=q[Vk>>2],q[a+4>>2]=ul,q[a>>2]=Vk+ql)):a=Vk,3&(Vk=q[a+4>>2])&&((ql=-8&Vk)>>>0<=tl+16>>>0||(q[a+4>>2]=tl|1&Vk|2,q[(Vk=a+tl|0)+4>>2]=3|(tl=ql-tl|0),q[4+(ql=a+ql|0)>>2]=1|q[ql+4>>2],za(Vk,tl))),a+8|0):0}(16<v>>>0?v:16,$)}if(!v)return 1;q[a>>2]=v,aa=0}return aa}function pa(a){var da,v=0,$=0,ba=0,ca=0,ea=0,fa=0,ha=0;a:if(a){da=(ba=a+-8|0)+(a=-8&($=q[a+-4>>2]))|0;b:if(!(1&$)){if(!(3&$))break a;if((ba=ba-($=q[ba>>2])|0)>>>0<t[2091])break a;if(a=a+$|0,q[2092]!=(0|ba))if($>>>0<=255)ca=q[ba+8>>2],$>>>=3,(0|(v=q[ba+12>>2]))==(0|ca)?(ha=q[2087]&dd($),q[2087]=ha):(q[ca+12>>2]=v,q[v+8>>2]=ca);else{if(fa=q[ba+24>>2],(0|ba)!=(0|($=q[ba+12>>2])))v=q[ba+8>>2],q[v+12>>2]=$,q[$+8>>2]=v;else if(v=(v=q[(ca=ba+20|0)>>2])||q[(ca=ba+16|0)>>2]){for(;ea=ca,(v=q[(ca=($=v)+20|0)>>2])||(ca=$+16|0,v=q[$+16>>2]););q[ea>>2]=0}else $=0;if(fa){ca=q[ba+28>>2];e:{if(q[(v=8652+(ca<<2)|0)>>2]==(0|ba)){if(q[v>>2]=$)break e;ha=q[2088]&dd(ca),q[2088]=ha;break b}if(!(q[fa+(q[fa+16>>2]==(0|ba)?16:20)>>2]=$))break b}q[$+24>>2]=fa,(v=q[ba+16>>2])&&(q[$+16>>2]=v,q[v+24>>2]=$),(v=q[ba+20>>2])&&(q[$+20>>2]=v,q[v+24>>2]=$)}}else if(3==(3&($=q[4+da>>2])))return q[2089]=a,q[4+da>>2]=-2&$,q[ba+4>>2]=1|a,q[a+ba>>2]=a}if(!(da>>>0<=ba>>>0)&&1&($=q[4+da>>2])){f:{if(!(2&$)){if(q[2093]==(0|da)){if(q[2093]=ba,a=q[2090]+a|0,q[2090]=a,q[ba+4>>2]=1|a,q[2092]!=(0|ba))break a;return q[2089]=0,q[2092]=0}if(q[2092]==(0|da))return q[2092]=ba,a=q[2089]+a|0,q[2089]=a,q[ba+4>>2]=1|a,q[a+ba>>2]=a;a=(-8&$)+a|0;g:if($>>>0<=255)$>>>=3,(0|(v=q[8+da>>2]))==(0|(ca=q[12+da>>2]))?(ha=q[2087]&dd($),q[2087]=ha):(q[v+12>>2]=ca,q[ca+8>>2]=v);else{if(fa=q[24+da>>2],(0|da)!=(0|($=q[12+da>>2])))v=q[8+da>>2],q[v+12>>2]=$,q[$+8>>2]=v;else if(v=(v=q[(ca=20+da|0)>>2])||q[(ca=16+da|0)>>2]){for(;ea=ca,(v=q[(ca=($=v)+20|0)>>2])||(ca=$+16|0,v=q[$+16>>2]););q[ea>>2]=0}else $=0;if(fa){ca=q[28+da>>2];j:{if(q[(v=8652+(ca<<2)|0)>>2]==(0|da)){if(q[v>>2]=$)break j;ha=q[2088]&dd(ca),q[2088]=ha;break g}if(!(q[fa+(q[fa+16>>2]==(0|da)?16:20)>>2]=$))break g}q[$+24>>2]=fa,(v=q[16+da>>2])&&(q[$+16>>2]=v,q[v+24>>2]=$),(v=q[20+da>>2])&&(q[$+20>>2]=v,q[v+24>>2]=$)}}if(q[ba+4>>2]=1|a,q[a+ba>>2]=a,q[2092]!=(0|ba))break f;return q[2089]=a}q[4+da>>2]=-2&$,q[ba+4>>2]=1|a,q[a+ba>>2]=a}if(a>>>0<=255)return $=8388+((a>>>=3)<<3)|0,a=(v=q[2087])&(a=1<<a)?q[$+8>>2]:(q[2087]=a|v,$),q[$+8>>2]=ba,q[a+12>>2]=ba,q[ba+12>>2]=$,q[ba+8>>2]=a;q[ba+16>>2]=0,v=q[ba+20>>2]=0,(ca=a>>>8)&&(v=31,16777215<a>>>0||(v=ca,v=28+((v=((v=(v<<=ca=ca+1048320>>>16&8)<<(fa=v+520192>>>16&4))<<(ea=v+245760>>>16&2)>>>15)-(ea|ca|fa)|0)<<1|a>>>v+21&1)|0)),ea=8652+((q[($=ba)+28>>2]=v)<<2)|0;m:if((ca=q[2088])&($=1<<v)){ca=a<<(31==(0|v)?0:25-(v>>>1)|0),$=q[ea>>2];n:{for(;;){if((-8&q[(v=$)+4>>2])==(0|a))break n;if($=ca>>>29,ca<<=1,!($=q[16+(ea=v+(4&$)|0)>>2]))break}q[ea+16>>2]=ba,q[ba+12>>2]=ba,q[ba+24>>2]=v,q[ba+8>>2]=ba;break m}a=q[v+8>>2],q[a+12>>2]=ba,q[v+8>>2]=ba,q[ba+24>>2]=0,q[ba+12>>2]=v,q[ba+8>>2]=a}else q[2088]=$|ca,q[ea>>2]=ba,q[ba+12>>2]=ba,q[ba+24>>2]=ea,q[ba+8>>2]=ba;if(a=q[2095]+-1|0,!(q[2095]=a)){for(ba=8804;ba=(a=q[ba>>2])+8|0,a;);q[2095]=-1}}}}function qa(a){var sa,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,ua=0;L=sa=L-16|0;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(a>>>0<=244){if(3&(ia=(ma=q[2087])>>>(a=(na=a>>>0<11?16:a+11&-8)>>>3))){a=(ia=q[8396+(la=(ja=a+(1&(-1^ia))|0)<<3)>>2])+8|0,(0|(ka=q[ia+8>>2]))==(0|(la=la+8388|0))?(ua=dd(ja)&ma,q[2087]=ua):(q[ka+12>>2]=la,q[la+8>>2]=ka),q[ia+4>>2]=3|(ja<<=3),q[4+(ia=ia+ja|0)>>2]=1|q[ia+4>>2];break a}if(na>>>0<=(pa=q[2089])>>>0)break k;if(ia){ja=ia=(a=(0-(a=(0-(ja=2<<a)|ja)&ia<<a)&a)-1|0)>>>12&16,ia=q[8396+(ka=(ja=((ja=(ja|=ia=(a>>>=ia)>>>5&8)|(ia=(a>>>=ia)>>>2&4)|(ia=(a>>>=ia)>>>1&2))|(ia=(a>>>=ia)>>>1&1))+(a>>>ia)|0)<<3)>>2],(0|(a=q[ia+8>>2]))==(0|(ka=ka+8388|0))?(ma=dd(ja)&ma,q[2087]=ma):(q[a+12>>2]=ka,q[ka+8>>2]=a),a=ia+8|0,q[ia+4>>2]=3|na,q[4+(oa=ia+na|0)>>2]=1|(la=(ja<<=3)-na|0),q[ia+ja>>2]=la,pa&&(ia=8388+((ja=pa>>>3)<<3)|0,ka=q[2092],ja=(ja=1<<ja)&ma?q[ia+8>>2]:(q[2087]=ja|ma,ia),q[ia+8>>2]=ka,q[ja+12>>2]=ka,q[ka+12>>2]=ia,q[ka+8>>2]=ja),q[2092]=oa,q[2089]=la;break a}if(!(ra=q[2088]))break k;for(ja=ia=(a=(ra&0-ra)-1|0)>>>12&16,ia=q[8652+(((ja=(ja|=ia=(a>>>=ia)>>>5&8)|(ia=(a>>>=ia)>>>2&4)|(ia=(a>>>=ia)>>>1&2))|(ia=(a>>>=ia)>>>1&1))+(a>>>ia)<<2)>>2],ka=(-8&q[ia+4>>2])-na|0,ja=ia;a=(a=q[ja+16>>2])||q[ja+20>>2];)ka=(ja=(la=(-8&q[a+4>>2])-na|0)>>>0<ka>>>0)?la:ka,ia=ja?a:ia,ja=a;if(qa=q[ia+24>>2],(0|(la=q[ia+12>>2]))!=(0|ia)){a=q[ia+8>>2],q[a+12>>2]=la,q[la+8>>2]=a;break b}if(!(a=q[(ja=ia+20|0)>>2])){if(!(a=q[ia+16>>2]))break j;ja=ia+16|0}for(;oa=ja,(a=q[(ja=(la=a)+20|0)>>2])||(ja=la+16|0,a=q[la+16>>2]););q[oa>>2]=0;break b}if(na=-1,!(4294967231<a>>>0)&&(na=-8&(ia=a+11|0),pa=q[2088])){ja=0-na|0,ma=0,(ia>>>=8)&&(ma=31,16777215<na>>>0||(ma=28+((a=((ma=(ia<<=ka=ia+1048320>>>16&8)<<(a=ia+520192>>>16&4))<<(ia=ma+245760>>>16&2)>>>15)-(ia|a|ka)|0)<<1|na>>>a+21&1)|0));q:{r:{if(ka=q[8652+(ma<<2)>>2])for(ia=na<<(31==(0|ma)?0:25-(ma>>>1)|0),a=0;;){if(!(ja>>>0<=(oa=(-8&q[ka+4>>2])-na|0)>>>0||(la=ka,ja=oa))){ja=0,a=ka;break r}if(oa=q[ka+20>>2],ka=q[16+((ia>>>29&4)+ka|0)>>2],a=oa&&(0|oa)!=(0|ka)?oa:a,ia<<=0!=(0|ka),!ka)break}else a=0;if(!(a|la)){if(!(a=(0-(a=2<<ma)|a)&pa))break k;ka=ia=(a=(a&0-a)-1|0)>>>12&16,a=q[8652+(((ka=(ka|=ia=(a>>>=ia)>>>5&8)|(ia=(a>>>=ia)>>>2&4)|(ia=(a>>>=ia)>>>1&2))|(ia=(a>>>=ia)>>>1&1))+(a>>>ia)<<2)>>2]}if(!a)break q}for(;ja=(ia=(ka=(-8&q[a+4>>2])-na|0)>>>0<ja>>>0)?ka:ja,la=ia?a:la,a=(ia=q[a+16>>2])||q[a+20>>2];);}if(!(!la|ja>>>0>=q[2089]-na>>>0)){if(oa=q[la+24>>2],(0|la)!=(0|(ia=q[la+12>>2]))){a=q[la+8>>2],q[a+12>>2]=ia,q[ia+8>>2]=a;break c}if(!(a=q[(ka=la+20|0)>>2])){if(!(a=q[la+16>>2]))break i;ka=la+16|0}for(;ma=ka,(a=q[(ka=(ia=a)+20|0)>>2])||(ka=ia+16|0,a=q[ia+16>>2]););q[ma>>2]=0;break c}}}if(na>>>0<=(ia=q[2089])>>>0){a=q[2092],16<=(ja=ia-na|0)>>>0?(q[2089]=ja,q[2092]=ka=a+na|0,q[ka+4>>2]=1|ja,q[a+ia>>2]=ja,q[a+4>>2]=3|na):(q[2092]=0,q[2089]=0,q[a+4>>2]=3|ia,q[4+(ia=a+ia|0)>>2]=1|q[ia+4>>2]),a=a+8|0;break a}if(na>>>0<(ka=q[2090])>>>0){q[2090]=ia=ka-na|0,a=q[2093],q[2093]=ja=a+na|0,q[ja+4>>2]=1|ia,q[a+4>>2]=3|na,a=a+8|0;break a}if((ja=(ma=(ja=la=na+47|(a=0))+(ia=q[2205]?q[2207]:(q[2208]=-1,q[2209]=-1,q[2206]=4096,q[2207]=4096,q[2205]=12+sa&-16^1431655768,q[2210]=0,q[2198]=0,4096))|0)&(oa=0-ia|0))>>>0<=na>>>0)break a;if((ia=q[2197])&&(qa=(pa=q[2195])+ja|0)>>>0<=pa>>>0|ia>>>0<qa>>>0)break a;if(4&r[8792])break f;v:{w:{if(ia=q[2093])for(a=8796;;){if((pa=q[a>>2])+q[a+4>>2]>>>0>ia>>>0&&pa>>>0<=ia>>>0)break w;if(!(a=q[a+8>>2]))break}if(-1==(0|(ia=ea(0))))break g;if(ma=ja,(ma=(ka=(a=q[2206])+-1|0)&ia?(ja-ia|0)+(ia+ka&0-a)|0:ma)>>>0<=na>>>0|2147483646<ma>>>0)break g;if((a=q[2197])&&(oa=(ka=q[2195])+ma|0)>>>0<=ka>>>0|a>>>0<oa>>>0)break g;if((0|ia)!=(0|(a=ea(ma))))break v;break e}if(2147483646<(ma=oa&ma-ka)>>>0)break g;if((0|(ia=ea(ma)))==(q[a>>2]+q[a+4>>2]|0))break h;a=ia}if(!(na+48>>>0<=ma>>>0|2147483646<ma>>>0|-1==(0|(ia=a)))){if(2147483646<(a=(a=q[2207])+(la-ma|0)&0-a)>>>0)break e;if(-1!=(0|ea(a))){ma=a+ma|0;break e}ea(0-ma|0);break g}if(-1!=(0|ia))break e;break g}la=0;break b}ia=0;break c}if(-1!=(0|ia))break e}q[2198]=4|q[2198]}if(2147483646<ja>>>0)break d;if(ia=ea(ja),(a=ea(0))>>>0<=ia>>>0|-1==(0|ia)|-1==(0|a))break d;if((ma=a-ia|0)>>>0<=na+40>>>0)break d}a=q[2195]+ma|0,(q[2195]=a)>>>0>t[2196]&&(q[2196]=a);x:{y:{z:{if(ja=q[2093]){for(a=8796;;){if(((ka=q[a>>2])+(la=q[a+4>>2])|0)==(0|ia))break z;if(!(a=q[a+8>>2]))break}break y}for((a=q[2091])>>>0<=ia>>>0&&a||(q[2091]=ia),a=0,q[2200]=ma,q[2199]=ia,q[2095]=-1,q[2096]=q[2205],q[2202]=0;q[8396+(ja=a<<3)>>2]=ka=ja+8388|0,q[ja+8400>>2]=ka,32!=(0|(a=a+1|0)););q[2090]=ka=(a=ma+-40|0)-(ja=ia+8&7?-8-ia&7:0)|0,q[2093]=ja=ia+ja|0,q[ja+4>>2]=1|ka,q[4+(a+ia|0)>>2]=40,q[2094]=q[2209];break x}if(!(8&r[a+12|0]|ia>>>0<=ja>>>0|ja>>>0<ka>>>0)){q[a+4>>2]=la+ma,q[2093]=ia=(a=ja+8&7?-8-ja&7:0)+ja|0,ka=q[2090]+ma|0,q[2090]=a=ka-a|0,q[ia+4>>2]=1|a,q[4+(ja+ka|0)>>2]=40,q[2094]=q[2209];break x}}ia>>>0<(la=q[2091])>>>0&&(q[2091]=ia,la=0),ka=ia+ma|0,a=8796;A:{B:{C:{D:{E:{F:{for(;(0|ka)!=q[a>>2];)if(!(a=q[a+8>>2]))break F;if(!(8&r[a+12|0]))break E}for(a=8796;;){if((ka=q[a>>2])>>>0<=ja>>>0&&ja>>>0<(la=ka+q[a+4>>2]|0)>>>0)break D;a=q[a+8>>2]}}if(q[a>>2]=ia,q[a+4>>2]=q[a+4>>2]+ma,q[4+(qa=(ia+8&7?-8-ia&7:0)+ia|0)>>2]=3|na,a=((ia=ka+(ka+8&7?-8-ka&7:0)|0)-qa|0)-na|0,oa=na+qa|0,(0|ia)==(0|ja)){q[2093]=oa,a=q[2090]+a|0,q[2090]=a,q[oa+4>>2]=1|a;break B}if(q[2092]==(0|ia)){q[2092]=oa,a=q[2089]+a|0,q[2089]=a,q[oa+4>>2]=1|a,q[a+oa>>2]=a;break B}if(1==(3&(ja=q[ia+4>>2]))){ra=-8&ja;G:if(ja>>>0<=255)la=ja>>>3,ja=q[ia+8>>2],(0|(ka=q[ia+12>>2]))==(0|ja)?(ua=q[2087]&dd(la),q[2087]=ua):(q[ja+12>>2]=ka,q[ka+8>>2]=ja);else{if(pa=q[ia+24>>2],(0|(ma=q[ia+12>>2]))!=(0|ia))ja=q[ia+8>>2],q[ja+12>>2]=ma,q[ma+8>>2]=ja;else if(na=(na=q[(ka=ia+20|0)>>2])||q[(ka=ia+16|0)>>2]){for(;ja=ka,(na=q[(ka=(ma=na)+20|0)>>2])||(ka=ma+16|0,na=q[ma+16>>2]););q[ja>>2]=0}else ma=0;if(pa){ja=q[ia+28>>2];J:{if(q[(ka=8652+(ja<<2)|0)>>2]==(0|ia)){if(q[ka>>2]=ma)break J;ua=q[2088]&dd(ja),q[2088]=ua;break G}if(!(q[pa+(q[pa+16>>2]==(0|ia)?16:20)>>2]=ma))break G}q[ma+24>>2]=pa,(ja=q[ia+16>>2])&&(q[ma+16>>2]=ja,q[ja+24>>2]=ma),(ja=q[ia+20>>2])&&(q[ma+20>>2]=ja,q[ja+24>>2]=ma)}}ia=ia+ra|0,a=a+ra|0}if(q[ia+4>>2]=-2&q[ia+4>>2],q[oa+4>>2]=1|a,(q[a+oa>>2]=a)>>>0<=255){a=8388+((ia=a>>>3)<<3)|0,ia=(ja=q[2087])&(ia=1<<ia)?q[a+8>>2]:(q[2087]=ia|ja,a),q[a+8>>2]=oa,q[ia+12>>2]=oa,q[oa+12>>2]=a,q[oa+8>>2]=ia;break B}if(ia=0,(ka=a>>>8)&&(ia=31,16777215<a>>>0||(ia=28+((ia=((na=(ka<<=la=ka+1048320>>>16&8)<<(ia=ka+520192>>>16&4))<<(ka=na+245760>>>16&2)>>>15)-(ka|ia|la)|0)<<1|a>>>ia+21&1)|0)),q[(ja=oa)+28>>2]=ia,q[oa+16>>2]=0,ja=8652+(ia<<2)|(q[oa+20>>2]=0),(ka=q[2088])&(la=1<<ia)){for(ka=a<<(31==(0|ia)?0:25-(ia>>>1)|0),ia=q[ja>>2];;){if((-8&q[(ja=ia)+4>>2])==(0|a))break C;if(ia=ka>>>29,ka<<=1,!(ia=q[16+(la=(4&ia)+ja|0)>>2]))break}q[la+16>>2]=oa}else q[2088]=ka|la,q[ja>>2]=oa;q[oa+24>>2]=ja,q[oa+12>>2]=oa,q[oa+8>>2]=oa;break B}for(q[2090]=oa=(a=ma+-40|0)-(ka=ia+8&7?-8-ia&7:0)|0,q[2093]=ka=ia+ka|0,q[ka+4>>2]=1|oa,q[4+(a+ia|0)>>2]=40,q[2094]=q[2209],q[(ka=(a=(la+(la+-39&7?39-la&7:0)|0)-47|0)>>>0<ja+16>>>0?ja:a)+4>>2]=27,a=q[2202],q[ka+16>>2]=q[2201],q[ka+20>>2]=a,a=q[2200],q[ka+8>>2]=q[2199],q[ka+12>>2]=a,q[2201]=ka+8,q[2200]=ma,q[2199]=ia,a=ka+24|(q[2202]=0);q[a+4>>2]=7,ia=a+8|0,a=a+4|0,ia>>>0<la>>>0;);if((0|ja)==(0|ka))break x;if(q[ka+4>>2]=-2&q[ka+4>>2],q[ja+4>>2]=1|(la=ka-ja|0),(q[ka>>2]=la)>>>0<=255){a=8388+((ia=la>>>3)<<3)|0,ia=(ka=q[2087])&(ia=1<<ia)?q[a+8>>2]:(q[2087]=ia|ka,a),q[a+8>>2]=ja,q[ia+12>>2]=ja,q[ja+12>>2]=a,q[ja+8>>2]=ia;break x}if(q[ja+16>>2]=0,a=q[ja+20>>2]=0,(ka=la>>>8)&&(a=31,16777215<la>>>0||(a=28+((a=((oa=(ka<<=ma=ka+1048320>>>16&8)<<(a=ka+520192>>>16&4))<<(ka=oa+245760>>>16&2)>>>15)-(ka|a|ma)|0)<<1|la>>>a+21&1)|0)),ia=8652+((q[(ia=ja)+28>>2]=a)<<2)|0,(ka=q[2088])&(ma=1<<a)){for(a=la<<(31==(0|a)?0:25-(a>>>1)|0),ia=q[ia>>2];;){if((0|la)==(-8&q[(ka=ia)+4>>2]))break A;if(ia=a>>>29,a<<=1,!(ia=q[16+(ma=ka+(4&ia)|0)>>2]))break}q[ma+16>>2]=ja,q[ja+24>>2]=ka}else q[2088]=ka|ma,q[ia>>2]=ja,q[ja+24>>2]=ia;q[ja+12>>2]=ja,q[ja+8>>2]=ja;break x}a=q[ja+8>>2],q[a+12>>2]=oa,q[ja+8>>2]=oa,q[oa+24>>2]=0,q[oa+12>>2]=ja,q[oa+8>>2]=a}a=qa+8|0;break a}a=q[ka+8>>2],q[a+12>>2]=ja,q[ka+8>>2]=ja,q[ja+24>>2]=0,q[ja+12>>2]=ka,q[ja+8>>2]=a}if(!((a=q[2090])>>>0<=na>>>0)){q[2090]=ia=a-na|0,a=q[2093],q[2093]=ja=a+na|0,q[ja+4>>2]=1|ia,q[a+4>>2]=3|na,a=a+8|0;break a}}q[2086]=48,a=0;break a}Q:if(oa){a=q[la+28>>2];R:{if(q[(ka=8652+(a<<2)|0)>>2]==(0|la)){if(q[ka>>2]=ia)break R;pa=dd(a)&pa,q[2088]=pa;break Q}if(!(q[oa+(q[oa+16>>2]==(0|la)?16:20)>>2]=ia))break Q}q[ia+24>>2]=oa,(a=q[la+16>>2])&&(q[ia+16>>2]=a,q[a+24>>2]=ia),(a=q[la+20>>2])&&(q[ia+20>>2]=a,q[a+24>>2]=ia)}S:if(ja>>>0<=15)q[la+4>>2]=3|(a=ja+na|0),q[4+(a=a+la|0)>>2]=1|q[a+4>>2];else if(q[la+4>>2]=3|na,q[4+(ka=la+na|0)>>2]=1|ja,(q[ja+ka>>2]=ja)>>>0<=255)a=8388+((ia=ja>>>3)<<3)|0,ia=(ja=q[2087])&(ia=1<<ia)?q[a+8>>2]:(q[2087]=ia|ja,a),q[a+8>>2]=ka,q[ia+12>>2]=ka,q[ka+12>>2]=a,q[ka+8>>2]=ia;else{a=0,(na=ja>>>8)&&(a=31,16777215<ja>>>0||(a=28+((a=((oa=(na<<=ma=na+1048320>>>16&8)<<(a=na+520192>>>16&4))<<(na=oa+245760>>>16&2)>>>15)-(na|a|ma)|0)<<1|ja>>>a+21&1)|0)),q[(ia=ka)+28>>2]=a,q[ka+16>>2]=0,ia=8652+(a<<2)|(q[ka+20>>2]=0);V:{if((na=1<<a)&pa){for(a=ja<<(31==(0|a)?0:25-(a>>>1)|0),na=q[ia>>2];;){if((-8&q[(ia=na)+4>>2])==(0|ja))break V;if(na=a>>>29,a<<=1,!(na=q[16+(ma=(4&na)+ia|0)>>2]))break}q[ma+16>>2]=ka}else q[2088]=na|pa,q[ia>>2]=ka;q[ka+24>>2]=ia,q[ka+12>>2]=ka,q[ka+8>>2]=ka;break S}a=q[ia+8>>2],q[a+12>>2]=ka,q[ia+8>>2]=ka,q[ka+24>>2]=0,q[ka+12>>2]=ia,q[ka+8>>2]=a}a=la+8|0;break a}X:if(qa){a=q[ia+28>>2];Y:{if(q[(ja=8652+(a<<2)|0)>>2]==(0|ia)){if(q[ja>>2]=la)break Y;ua=dd(a)&ra,q[2088]=ua;break X}if(!(q[qa+(q[qa+16>>2]==(0|ia)?16:20)>>2]=la))break X}q[la+24>>2]=qa,(a=q[ia+16>>2])&&(q[la+16>>2]=a,q[a+24>>2]=la),(a=q[ia+20>>2])&&(q[la+20>>2]=a,q[a+24>>2]=la)}ka>>>0<=15?(q[ia+4>>2]=3|(a=ka+na|0),q[4+(a=a+ia|0)>>2]=1|q[a+4>>2]):(q[ia+4>>2]=3|na,q[4+(na=ia+na|0)>>2]=1|ka,q[ka+na>>2]=ka,pa&&(a=8388+((ja=pa>>>3)<<3)|0,la=q[2092],ja=(ja=1<<ja)&ma?q[a+8>>2]:(q[2087]=ja|ma,a),q[a+8>>2]=la,q[ja+12>>2]=la,q[la+12>>2]=a,q[la+8>>2]=ja),q[2092]=na,q[2089]=ka),a=ia+8|0}return L=16+sa|0,a}function ra(a,va,wa,xa,ya,za,Aa){var Qa,Ta,Ba,Ca=0,Da=0,Fa=0,Ia=0,Ja=0,Ka=0,Ma=0,Na=0,Oa=0,Pa=0,Ra=0,Sa=0;q[76+(L=Ba=L-80|0)>>2]=va,Ta=55+Ba|0,Qa=56+Ba|0,va=0;a:{b:{c:for(;;){(0|Oa)<0||(Oa=(2147483647-Oa|0)<(0|va)?(q[2086]=61,-1):va+Oa|0);e:{f:{g:{h:{i:{j:{k:{l:{m:{n:{o:{p:{q:{if(Ia=q[76+Ba>>2],Fa=r[0|(va=Ia)]){for(;;){r:{s:{t:if(Ca=255&Fa){if(37!=(0|Ca))break s;for(Fa=va;;){if(37!=r[va+1|0])break t;if(q[76+Ba>>2]=Ca=va+2|0,Fa=Fa+1|0,Da=r[va+2|0],va=Ca,37!=(0|Da))break}}else Fa=va;if(va=Fa-Ia|0,a&&Z(a,Ia,va),va)continue c;Pa=-1,Ja=!ha(o[q[76+(Ca=Ba)>>2]+(Fa=1)|0]),va=q[76+Ba>>2],Ja|36!=r[va+2|0]||(Pa=o[va+1|0]+-48|0,Ra=1,Fa=3),q[Ca+76>>2]=va=Fa+va|0;u:if(31<(Da=(Ma=o[(Fa=0)|va])+-32|0)>>>0)Ca=va;else if(Ca=va,75913&(Da=1<<Da))for(;;){if(q[76+Ba>>2]=Ca=va+1|0,Fa|=Da,31<(Da=(Ma=o[va+1|0])+-32|0)>>>0)break u;if(va=Ca,!(75913&(Da=1<<Da)))break}if(42==(0|Ma)){if(Ja=Ba,ha(o[Ca+1|0])&&(va=q[76+Ba>>2],36==r[va+2|0]))q[((o[va+1|0]<<2)+ya|0)-192>>2]=10,Na=q[((o[va+1|0]<<3)+xa|0)-384>>2],Ra=1,va=va+3|0;else{if(Ra)break b;Na=Ra=0,a&&(va=q[wa>>2],q[wa>>2]=va+4,Na=q[va>>2]),va=q[76+Ba>>2]+1|0}q[Ja+76>>2]=va,-1<(0|Na)||(Na=0-Na|0,Fa|=8192)}else{if((0|(Na=Ha(76+Ba|0)))<0)break b;va=q[76+Ba>>2]}if(Da=-1,46==r[0|va])if(42==r[va+1|0])if(ha(o[va+2|0])&&(va=q[76+Ba>>2],36==r[va+3|0]))q[((o[va+2|0]<<2)+ya|0)-192>>2]=10,Da=q[((o[va+2|0]<<3)+xa|0)-384>>2],q[76+Ba>>2]=va=va+4|0;else{if(Ra)break b;Da=a?(va=q[wa>>2],q[wa>>2]=va+4,q[va>>2]):0,va=q[76+Ba>>2]+2|0,q[76+Ba>>2]=va}else q[76+Ba>>2]=va+1,Da=Ha(76+Ba|0),va=q[76+Ba>>2];for(Ca=0;;){if(Sa=Ca,Ka=-1,57<o[0|va]+-65>>>0)break a;if(q[76+Ba>>2]=Ma=va+1|0,Ca=o[0|va],va=Ma,!((Ca=r[3295+(Ca+w(Sa,58)|0)|0])+-1>>>0<8))break}if(!Ca)break a;A:{B:{C:{if(19==(0|Ca)){if((0|Pa)<=-1)break C;break a}if((0|Pa)<0)break B;q[(Pa<<2)+ya>>2]=Ca,Ca=q[4+(va=(Pa<<3)+xa|0)>>2],q[64+Ba>>2]=q[va>>2],q[68+Ba>>2]=Ca}if(va=0,a)break A;continue c}if(!a)break e;Ga(64+Ba|0,Ca,wa,Aa),Ma=q[76+Ba>>2]}if(Ja=-65537&Fa,Fa=8192&Fa?Ja:Fa,Pa=3336,Ca=Qa,va=o[Ma+-1|(Ka=0)],(Ma=(va=Sa&&3==(15&va)?-33&va:va)+-88|0)>>>0<=32)break r;D:{E:{F:{G:{if(6<(Ja=va+-65|0)>>>0){if(83!=(0|va))break f;if(!Da)break G;Ca=q[64+Ba>>2];break E}switch(Ja-1|0){case 1:break F;case 0:case 2:break f;default:break q}}_(a,32,Na,va=0,Fa);break D}q[12+Ba>>2]=0,q[8+Ba>>2]=q[64+Ba>>2],q[64+Ba>>2]=8+Ba,Da=-1,Ca=8+Ba|0}va=0;H:{for(;;){if(!(Ia=q[Ca>>2]))break H;if((Ja=(0|(Ia=Ea(4+Ba|0,Ia)))<0)|Da-va>>>0<Ia>>>0)break;if(Ca=Ca+4|0,!((va=va+Ia|0)>>>0<Da>>>0))break H}if(Ka=-1,Ja)break a}if(_(a,32,Na,va,Fa),va)for(Da=0,Ca=q[64+Ba>>2];;){if(!(Ia=q[Ca>>2]))break D;if((0|va)<(0|(Da=(Ia=Ea(4+Ba|0,Ia))+Da|0)))break D;if(Z(a,4+Ba|0,Ia),Ca=Ca+4|0,!(Da>>>0<va>>>0))break}else va=0}_(a,32,Na,va,8192^Fa),va=(0|va)<(0|Na)?Na:va;continue c}q[76+Ba>>2]=Ca=va+1|0,Fa=r[va+1|0],va=Ca;continue}break}switch(Ma-1|0){case 28:break i;case 21:break j;case 23:break l;case 22:break m;case 11:case 16:break n;case 10:break o;case 26:break p;case 8:case 12:case 13:case 14:break q;case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 9:case 15:case 17:case 18:case 19:case 20:case 24:case 25:case 27:case 29:case 30:break f;default:break k}}if(Ka=Oa,a)break a;if(!Ra)break e;for(va=1;;){if(a=q[(va<<2)+ya>>2]){if(Ga((va<<3)+xa|0,a,wa,Aa),10!=(0|(va=va+(Ka=1)|0)))continue;break a}break}if(Ka=1,9<va>>>0)break a;if(Ka=-1,q[(va<<2)+ya>>2])break a;for(;!q[((va=va+1|0)<<2)+ya>>2]&&10!=(0|va););Ka=va>>>0<10?-1:1;break a}va=0|n[za](a,v[64+Ba>>3],Na,Da,Fa,va);continue}Ca=(va=La(Ia=(va=q[64+Ba>>2])||3346,Da))||Da+Ia|0,Fa=Ja,Da=va?va-Ia|0:Da;break f}o[55+Ba|0]=q[64+Ba>>2],Da=1,Ia=Ta,Fa=Ja;break f}if(va=Ja=q[68+Ba>>2],Ia=q[64+Ba>>2],(0|va)<-1||(0|va)<=-1&&!(4294967295<Ia>>>0)){va=0-(va+(0<Ia>>>0)|0)|0,q[64+Ba>>2]=Ia=0-Ia|0,q[68+Ba>>2]=va,Ka=1,Pa=3336;break h}if(2048&Fa){Ka=1,Pa=3337;break h}Pa=(Ka=1&Fa)?3338:3336;break h}if(Ia=function(a,Il,Rm){if(a|Il)for(;o[0|(Rm=Rm+-1|0)]=7&a|48,(a=(7&Il)<<29|a>>>3)|(Il>>>=3););return Rm}(q[64+Ba>>2],q[68+Ba>>2],Qa),!(8&Fa))break g;Da=(0|(va=Qa-Ia|0))<(0|Da)?Da:va+1|0;break g}Da=8<Da>>>0?Da:8,Fa|=8,va=120}if(Ia=function(a,Il,Rm,Sm){if(a|Il)for(;o[0|(Rm=Rm+-1|0)]=r[3824+(15&a)|0]|Sm,(a=(15&Il)<<28|a>>>4)|(Il>>>=4););return Rm}(q[64+Ba>>2],q[68+Ba>>2],Qa,32&va),!(8&Fa)|!(q[64+Ba>>2]|q[68+Ba>>2]))break g;Pa=3336+(va>>>4)|0,Ka=2;break g}if(7<(Ca=255&Sa)>>>(va=0))continue;switch(Ca-1|0){default:case 0:q[q[64+Ba>>2]>>2]=Oa;continue;case 1:Ca=q[64+Ba>>2],q[Ca>>2]=Oa,q[Ca+4>>2]=Oa>>31;continue;case 2:p[q[64+Ba>>2]>>1]=Oa;continue;case 3:o[q[64+Ba>>2]]=Oa;continue;case 5:q[q[64+Ba>>2]>>2]=Oa;continue;case 4:continue;case 6:}Ca=q[64+Ba>>2],q[Ca>>2]=Oa,q[Ca+4>>2]=Oa>>31;continue}Ia=q[64+Ba>>2],va=q[68+Ba>>2],Pa=3336}Ia=ga(Ia,va,Qa)}Fa=-1<(0|Da)?-65537&Fa:Fa,Da=!!((Ja=va=q[68+Ba>>2])|(Ma=q[64+Ba>>2]))|Da?(0|(va=!(Ja|Ma)+(Qa-Ia|0)|0))<(0|Da)?Da:va:(Ia=Qa,0)}_(a,32,va=(0|Na)<(0|(Ca=(Da=(0|Da)<(0|(Ja=Ca-Ia|0))?Ja:Da)+Ka|0))?Ca:Na,Ca,Fa),Z(a,Pa,Ka),_(a,48,va,Ca,65536^Fa),_(a,48,Da,Ja,0),Z(a,Ia,Ja),_(a,32,va,Ca,8192^Fa);continue}break}Ka=0;break a}Ka=-1}return L=80+Ba|0,Ka}function sa(a){var ya,va=0,wa=0,xa=0,za=0,xa=4,wa=1439;a:if(va=r[0|a]){for(;!((0|(ya=r[0|wa]))!=(0|va)||!(xa=xa+-1|0)|!ya);)if(wa=wa+1|0,va=r[a+1|0],a=a+1|0,!va)break a;za=va}return(255&za)-r[0|wa]|0}function ta(a,Aa,Ea){var La,Ga,Ha=0,Ua=0,Va=0;q[(L=Ga=L-240|0)>>2]=a,Ua=1;a:if(!((0|Aa)<2))for(Ha=a;;){if(Ha=(La=Ha+-4|0)-q[((Va=Aa+-2|0)<<2)+Ea>>2]|0,0<=(0|n[5](a,Ha))&&-1<(0|n[5](a,La)))break a;if(a=(Ua<<2)+Ga|0,0<=(0|n[5](Ha,La))?(q[a>>2]=Ha,Va=Aa+-1|0):Ha=q[a>>2]=La,Ua=Ua+1|0,(0|Va)<2)break a;a=q[Ga>>2],Aa=Va}Na(Ga,Ua),L=240+Ga|0}function ua(a){var Ea,ab,Aa=0;if(x(0),function(a){var Vg,Wg;q[a+428>>2]&&(Wg=q[a+332>>2],$(q[a+460>>2],q[a+436>>2],Vg=Wg<<2),$(q[a+464>>2],q[a+440>>2],Vg),$(q[a+468>>2],q[a+448>>2],Vg),r[q[a>>2]+4|0]<4||($(q[a+472>>2],q[a+452>>2],Vg=Wg<<4),$(q[a+476>>2],q[a+456>>2],Vg)))}(a),function(a){var ke,le,me,fe=0,ge=x(0),he=x(0),ie=0,je=x(0);x(0),x(0);if(1<=(0|(ie=q[a>>2])))for(me=(fe=q[a+4>>2])+w(ie,52)|0,a=q[a+12>>2];ge=u[a>>2],u[fe+44>>2]!=(ge=(ke=q[fe+16>>2])?(he=ge,ge=u[fe+4>>2],je=u[fe+12>>2],he=x(x(he-ge)/je),le=x(C(he)),ie=x(y(le))<x(2147483648)?~~le:-2147483648,x(ge+x(je*x(he-x(0|ie))))):(je=u[fe+4>>2],he=u[fe+8>>2],ge<je?je:he<ge?he:ge))?(u[fe+44>>2]=ge,q[fe+48>>2]=1):q[fe+48>>2]=0,ke||(u[a>>2]=ge),a=a+4|0,(fe=fe+52|0)>>>0<me>>>0;);}(a+540|0),function(a){var Wd,Xd,ae,ce,de,ee,Rd=0,Sd=0,Td=x(0),Ud=0,Vd=x(0),Yd=(x(0),x(0),0),Zd=x(0),_d=0,$d=0,be=0;x(0);if(1<=(0|(Ud=q[a+540>>2])))for(de=(Yd=q[a+544>>2])+w(Ud,52)|0,ee=q[a+644>>2];;){a:if(!(q[Yd>>2]||(0|(Ud=q[Yd+32>>2]))<1))if(ae=(a=q[Yd+28>>2])+w(Ud,28)|0,ce=u[Yd+24>>2],Xd=u[Yd+20>>2],Wd=u[Yd+44>>2],ee)for(;;){Zd=x($d=0);h:{i:{j:{if((0|(Sd=q[a>>2]))<1)Rd=Ud=0;else if(_d=q[a+4>>2],Vd=u[_d>>2],Td=x(Vd-Xd),1==(0|Sd))Ud=Wd<x(Xd+Vd)^1|Td<Wd^1,Rd=0;else{if(Wd<Td){Ud=1,Rd=0;break i}if(Ud=0,Wd<x(Xd+Vd))Rd=0;else{if(Rd=1,Td=u[_d+4>>2],!(Wd<x(Xd+Td)))for(;;){if((0|Sd)==(0|(Rd=Rd+1|0)))break j;if(Vd=Td,Td=u[_d+(Rd<<2)>>2],Wd<x(Xd+Td))break}x(Td-Xd)<Wd||(Rd=Rd+-1|0,(Td=x(Td-Vd))<ce)||(Zd=x(x(Wd-Vd)/Td))}}if(Ud)break i;if(_d=Sd=1,q[a+16>>2])break h;break i}Rd=Sd+-1|0,Ud=1}_d=(Sd=(Vd=u[a+12>>2])!=Zd)&(Zd==x(0)|Vd==x(0))|q[a+8>>2]!=(0|Rd),$d=Ud}if(q[a+20>>2]=_d,q[a+24>>2]=Sd,u[a+12>>2]=Zd,q[a+16>>2]=$d,q[a+8>>2]=Rd,!((a=a+28|0)>>>0<ae>>>0))break}else{if(!q[Yd+48>>2])for(;;)if(q[a+20>>2]=0,!((a=a+28|(q[a+24>>2]=0))>>>0<ae>>>0))break a;for(;;){Zd=x($d=0);b:{c:{d:{e:if(!(((Sd=0)|(Rd=q[(_d=a)>>2]))<1)){if(Ud=q[a+4>>2],Vd=u[Ud>>2],Td=x(Vd-Xd),1!=(0|Rd)){if(!(Wd<Td)){if(Sd=0,Wd<x(Xd+Vd))break e;Sd=1;f:if(Td=u[Ud+4>>2],!(Wd<x(Xd+Td))){for(Rd=Rd+-1|0;Vd=Td,(0|Rd)!=(0|Sd);)if(Td=u[Ud+((Sd=Sd+1|0)<<2)>>2],Wd<x(Xd+Td))break f;Ud=1;break c}if(Ud=0,x(Td-Xd)<Wd){Rd=Sd;break d}if(Rd=Sd+-1|0,(Td=x(Td-Vd))<ce)break d;Zd=x(x(Wd-Vd)/Td);break d}Ud=1,Rd=0;break c}Sd=Wd<x(Xd+Vd)^1|Td<Wd^1}Ud=Sd,Rd=0}if(!Ud&&(be=Sd=1,q[a+16>>2]))break b}$d=Ud,be=(Sd=(Vd=u[a+12>>2])!=Zd)&(Zd==x(0)|Vd==x(0))|q[a+8>>2]!=(0|Rd)}if(q[_d+20>>2]=be,q[a+24>>2]=Sd,u[a+12>>2]=Zd,q[a+16>>2]=$d,q[a+8>>2]=Rd,!((a=a+28|0)>>>0<ae>>>0))break}}if(!((Yd=Yd+52|0)>>>0<de>>>0))break}}(a),function(a){var rd,sd,td,ud,vd,kd=0,ld=x(0),md=0,nd=0,od=x(0),pd=0,qd=x(0);x(0);if(!(r[q[a>>2]+4|0]<4||(0|(kd=q[a+540>>2]))<1))for(ud=(pd=q[a+544>>2])+w(kd,52)|0,vd=q[a+644>>2];;){b:if(1==q[pd>>2]&&!((0|(kd=q[pd+40>>2]))<1))if(sd=(a=q[pd+36>>2])+w(kd,28)|0,rd=u[pd+44>>2],vd)for(;;){qd=x(kd=0);d:if(!((0|(nd=q[a>>2]))<2||(md=q[a+4>>2],rd<=(ld=u[md>>2])))){kd=1;e:if(!(rd<(od=u[md+4>>2]))){for(;ld=od,(0|nd)!=(0|(kd=kd+1|0));)if(rd<(od=u[md+(kd<<2)>>2]))break e;kd=nd+-1|0;break d}qd=x(x(rd-ld)/x(od-ld)),kd=kd+-1|0}if(ld=u[a+16>>2],u[a+16>>2]=qd,nd=q[a+12>>2],q[a+12>>2]=kd,q[a+24>>2]=md=ld!=qd,q[a+20>>2]=md&(qd==x(0)|ld==x(0))|(0|kd)!=(0|nd),!((a=a+28|0)>>>0<sd>>>0))break}else{if(!q[pd+48>>2])for(;;)if(q[a+20>>2]=0,!((a=a+28|(q[a+24>>2]=0))>>>0<sd>>>0))break b;for(;;){qd=x(nd=0);c:if(!((0|(td=q[a>>2]))<2||(md=q[a+4>>2],rd<=(ld=u[md>>2])))){if(kd=1,!(rd<(od=u[md+4>>2])))for(nd=td+-1|0;;){if(ld=od,(0|kd)==(0|nd))break c;if(rd<(od=u[md+((kd=kd+1|0)<<2)>>2]))break}qd=x(x(rd-ld)/x(od-ld)),nd=kd+-1|0}if(ld=u[a+16>>2],u[a+16>>2]=qd,kd=q[a+12>>2],q[a+12>>2]=nd,q[a+24>>2]=md=ld!=qd,q[a+20>>2]=md&(qd==x(0)|ld==x(0))|(0|kd)!=(0|nd),!((a=a+28|0)>>>0<sd>>>0))break}}if(!((pd=pd+52|0)>>>0<ud>>>0))break}}(a),function(a){var Id,Jd,Md,Nd,Od,Pd,Qd,wd=0,xd=0,yd=0,zd=0,Ad=0,Bd=0,Cd=0,Dd=x(0),Ed=0,Gd=0,Hd=0,Kd=0,Ld=0;if(1<=(0|(xd=q[a+564>>2])))for(Pd=(Ad=q[a+568>>2])+w(xd,36)|0,Nd=q[a+644>>2];;){a:{if(!(Bd=((yd=zd=xd=0)|(Jd=q[Ad+4>>2]))<1))for(Ed=q[Ad>>2],a=Kd=0;;){if(wd=q[Ed+(a<<2)>>2],q[wd+16>>2]){wd=1,Ld=0;break a}if(yd=yd||q[wd+24>>2],xd=xd||q[wd+20>>2],zd=(u[wd+12>>2]!=x(0))+zd|0,(0|Jd)==(0|(a=a+1|0)))break}if(wd=0,(Kd=Nd?1:yd)|(Ld=Nd?1:xd)&&(q[Ad+12>>2]=Ed=1<<zd,31!=(0|zd))){for(xd=q[Ad+20>>2],Od=q[Ad>>2],yd=(a=q[Ad+16>>2])+(Cd=Ed<<2)|0,yd=ca(a,0,4+((-1^a)+((a=a+4|0)>>>0<yd>>>0?yd:a)|0)&-4),Cd=xd+Cd|0,a=xd;q[a>>2]=1065353216,(a=a+4|0)>>>0<Cd>>>0;);if(!Bd){if(Bd=0,Cd=wd=1,zd)for(;;){if(zd=q[(Bd<<2)+Od>>2],Gd=q[zd+8>>2],Hd=w(Gd,wd),(Dd=u[zd+12>>2])!=x(a=0)){for(q[yd>>2]=Hd+q[yd>>2],u[xd>>2]=x(x(1)-Dd)*u[xd>>2],Gd=w(Gd+(a=1)|0,wd);Dd=u[zd+12>>2],Qd=q[(Md=(Id=a<<2)+yd|0)>>2],q[Md>>2]=Qd+((Md=a&Cd)?Gd:Hd),u[(Id=xd+Id|0)>>2]=(Md?Dd:x(x(1)-Dd))*u[Id>>2],(0|Ed)!=(0|(a=a+1|0)););Cd<<=1}else for(;q[(Gd=yd+(a<<2)|0)>>2]=Hd+q[Gd>>2],(0|Ed)!=(0|(a=a+1|0)););if(wd=w(q[zd>>2],wd),(0|Jd)==(0|(Bd=Bd+1|0)))break}else for(;;){if(zd=q[(Bd<<2)+Od>>2],Cd=w(q[zd+8>>2],wd),(Dd=u[zd+12>>2])!=x(a=0))q[yd>>2]=Cd+q[yd>>2],u[xd>>2]=x(x(1)-Dd)*u[xd>>2];else for(;q[(Hd=yd+(a<<2)|0)>>2]=Cd+q[Hd>>2],(0|Ed)!=(0|(a=a+1|0)););if(wd=w(q[zd>>2],wd),(0|Jd)==(0|(Bd=Bd+1|0)))break}wd=0}}}if(q[Ad+32>>2]=wd,q[Ad+24>>2]=Ld,q[Ad+28>>2]=Kd,!((Ad=Ad+36|0)>>>0<Pd>>>0))break}}(a),function(a){var gd,hd,id,jd,Wc=x(0),Xc=0,Yc=0,Zc=0,_c=0,$c=0,ad=x(0),bd=x(0),cd=x(0),dd=0,ed=0,fd=0;if(!(r[q[a>>2]+4|0]<4||(0|(Xc=q[a+588>>2]))<1))for(jd=(Zc=q[a+592>>2])+w(Xc,48)|0,gd=q[a+644>>2];;){if(a=q[Zc>>2],(ed=gd?1:q[a+20>>2])|(fd=gd?1:q[a+24>>2])){c:{d:{$c=Zc,_c=q[a+8>>2],Xc=q[a+12>>2],Wc=u[a+16>>2],a=(0|_c)!=(0|Xc);e:{if(Wc!=x(0)){if(a=Xc+1|0,(0|Xc)==(0|_c)){q[Zc+8>>2]=ed=1,Wc=x(x(1)-Wc),fd=1;break e}a=(0|a)==(0|_c)?1:2}if(q[$c+8>>2]=a,!fd)break d;a=Xc}u[Zc+24>>2]=Wc,u[Zc+20>>2]=x(1)-Wc;break c}fd=0,a=Xc}ed?(q[Zc+12>>2]=a,q[Zc+16>>2]=a+1):ed=0}else ed=fd=0;g:if((0|(hd=q[Zc+36>>2]))<1)cd=x(1);else{if(id=q[Zc+40>>2],a=0,cd=x(1),!gd)for(;;){h:{i:{if(Xc=q[(a<<2)+id>>2],Yc=q[Xc>>2]){if(!q[Yc+48>>2]){Wc=u[Xc+16>>2];break h}if((0|(_c=q[Xc+12>>2]))<1){Wc=x(1),u[Xc+16>>2]=1;break h}if(dd=q[Xc+8>>2],1!=(0|_c)&&(ad=u[Yc+44>>2],$c=q[Xc+4>>2],!(ad<=(bd=u[$c>>2]))))break i;Wc=u[dd>>2],u[Xc+16>>2]=Wc;break h}q[Xc+16>>2]=1065353216,Wc=x(1);break h}Yc=1;j:if(!(ad<(Wc=u[$c+4>>2]))){for(;bd=Wc,(0|_c)!=(0|(Yc=Yc+1|0));)if(ad<(Wc=u[$c+(Yc<<2)>>2]))break j;Wc=u[(dd+(_c<<2)|0)-4>>2],u[Xc+16>>2]=Wc;break h}$c=Xc,Wc=x(x(ad-bd)/x(Wc-bd)),Wc=x(x(Wc*u[(Xc=dd+(Yc<<2)|0)>>2])+x(u[Xc+-4>>2]*x(x(1)-Wc))),u[$c+16>>2]=Wc}if(cd=cd<Wc?cd:Wc,(0|hd)==(0|(a=a+1|0)))break g}for(;;){Xc=q[(a<<2)+id>>2],Yc=q[Xc>>2],Wc=x(1);l:if(Yc&&(dd=q[Xc+12>>2],Wc=x(1),!((0|dd)<1))&&(_c=q[Xc+8>>2],Wc=u[_c>>2],1!=(0|dd))){m:{if(ad=u[Yc+44>>2],$c=q[Xc+4>>2],ad<=(bd=u[$c>>2])){Wc=u[_c>>2];break l}if(Yc=1,!(ad<(Wc=u[$c+4>>2]))){for(;bd=Wc,(0|dd)!=(0|(Yc=Yc+1|0));)if(ad<(Wc=u[$c+(Yc<<2)>>2]))break m;Wc=u[(_c+(dd<<2)|0)-4>>2];break l}}Wc=x(x(ad-bd)/x(Wc-bd)),Wc=x(x(Wc*u[(Yc=_c+(Yc<<2)|0)>>2])+x(u[Yc+-4>>2]*x(x(1)-Wc)))}if(cd=cd<(u[Xc+16>>2]=Wc)?cd:Wc,(0|hd)==(0|(a=a+1|0)))break}}if(q[Zc+32>>2]=fd,q[Zc+28>>2]=ed,u[Zc+44>>2]=cd,!((Zc=Zc+48|0)>>>0<jd>>>0))break}}(a),1<=(0|(Ea=q[a+4>>2])))for(Ea=(Aa=q[a+52>>2])+(Ea<<2)|0;ab=u[Aa>>2],u[Aa>>2]=ab<x(0)?x(0):x(A(ab,x(1))),(Aa=Aa+4|0)>>>0<Ea>>>0;);!function(a){var Fe,Ge,He,De=0,Ee=0;if(1<=(0|(Ee=q[a+4>>2])))for(He=(De=q[a+8>>2])+w(Ee,12)|0,a=Fe=q[a+40>>2];Ee=0,q[De+8>>2]&&(Ge=q[De+4>>2],!q[(Ge<<2)+Fe>>2]&&-1!=(0|Ge)||(Ee=!q[q[De>>2]+32>>2])),q[a>>2]=Ee,a=a+4|0,(De=De+12|0)>>>0<He>>>0;);}(a),function(a){var rg,vg,wg,xg,yg,zg,Ag,pg=0,qg=0,sg=0,tg=0,ug=0;if(1<=(0|(vg=q[a+4>>2])))for(xg=q[a+8>>2],wg=q[a>>2],yg=q[wg+724>>2];;){if(rg=q[w(tg,12)+xg>>2],(q[rg+28>>2]||q[rg+24>>2])&&(q[(pg=tg<<2)+q[a+28>>2]>>2]=q[rg+12>>2],q[rg+24>>2])&&!((0|(sg=q[rg+12>>2]))<1))for(sg=(qg=q[rg+16>>2])+(sg<<2)|0,zg=q[pg+yg>>2],pg=q[a+36>>2]+(ug<<2)|0,Ag=q[wg+976>>2];q[pg>>2]=q[(q[qg>>2]+zg<<2)+Ag>>2],pg=pg+4|0,(qg=qg+4|0)>>>0<sg>>>0;);if(q[rg+28>>2]&&!((0|(pg=q[rg+12>>2]))<1))for(sg=(qg=q[rg+20>>2])+(pg<<2)|0,pg=q[a+32>>2]+(ug<<2)|0;q[pg>>2]=q[qg>>2],pg=pg+4|0,(qg=qg+4|0)>>>0<sg>>>0;);if(ug=q[rg+8>>2]+ug|0,(0|vg)==(0|(tg=tg+1|0)))break}}(a),n[q[1808]](a+12|0,q[a+36>>2],q[a+44>>2],q[a+40>>2]),function(a){var xe,ye,ze,Ae,Be,Ce,ue=0,ve=0,we=0;if(1<=(0|(we=q[a+304>>2])))for(ze=(ue=q[a+308>>2])+(we<<5)|0,Ae=q[a+264>>2],Be=q[a+144>>2],Ce=q[a+40>>2],we=ye=q[a+312>>2];xe=we,ve=0,a=ve=!q[ue+28>>2]||-1!=(0|(a=q[ue+4>>2]))&&(ve=0,!q[(a<<2)+Ce>>2])||-1!=(0|(a=q[ue+8>>2]))&&(ve=0,!q[(a<<2)+ye>>2])?ve:!q[q[ue>>2]+32>>2],q[xe>>2]=a,(xe=q[ue+12>>2])>>>0<=1?xe-1?q[(q[ue+16>>2]<<2)+Be>>2]=a:q[(q[ue+16>>2]<<2)+Ae>>2]=a:Y(4,1372,0),we=we+4|0,(ue=ue+32|0)>>>0<ze>>>0;);}(a),function(a){var gg,hg,ig,jg,kg,lg,mg,ng,og,Uf=0,Vf=0,Wf=0,Xf=0,Yf=0,Zf=0,_f=0,$f=0,ag=0,bg=0,cg=0,dg=0,eg=0,fg=0,Yf=q[a>>2];if(1<=(0|($f=q[a+56>>2]))){for(ag=q[a+60>>2],bg=q[Yf+1052>>2],cg=q[Yf+784>>2];;){if(Uf=q[ag+w(Zf,24)>>2],(q[Uf+28>>2]||q[Uf+24>>2])&&(q[(Vf=Zf<<2)+q[a+80>>2]>>2]=q[Uf+12>>2],q[Uf+24>>2])&&!((0|(Xf=q[Uf+12>>2]))<1))for(dg=(Wf=q[Uf+16>>2])+(Xf<<2)|0,eg=q[Vf+cg>>2],Vf=(Xf=_f<<2)+q[a+92>>2]|0,Xf=Xf+q[a+88>>2]|0;fg=eg+q[Wf>>2]<<2,q[Vf>>2]=bg+(q[fg+q[Yf+984>>2]>>2]<<2),q[Xf>>2]=q[fg+q[Yf+980>>2]>>2],Xf=Xf+4|0,Vf=Vf+4|0,(Wf=Wf+4|0)>>>0<dg>>>0;);if(q[Uf+28>>2]&&!((0|(Vf=q[Uf+12>>2]))<1))for(Xf=(Wf=q[Uf+20>>2])+(Vf<<2)|0,Vf=q[a+84>>2]+(_f<<2)|0;q[Vf>>2]=q[Wf>>2],Vf=Vf+4|0,(Wf=Wf+4|0)>>>0<Xf>>>0;);if(_f=q[Uf+8>>2]+_f|0,(0|$f)==(0|(Zf=Zf+1|0)))break}Yf=q[a>>2]}if(!(r[Yf+4|0]<4||(0|(eg=q[a+56>>2]))<1))for(fg=q[Yf+792>>2],gg=q[a+60>>2],Wf=_f=0;;){if(Zf=q[w(Wf,24)+gg>>2],q[Zf+24>>2]&&!((0|(Uf=q[Zf+12>>2]))<1))for(hg=(Vf=q[Zf+16>>2])+(Uf<<2)|0,ig=q[fg+(Wf<<2)>>2],Xf=(Uf=_f<<2)+q[a+96>>2]|0,$f=Uf+q[a+100>>2]|0,ag=Uf+q[a+104>>2]|0,bg=Uf+q[a+108>>2]|0,cg=Uf+q[a+112>>2]|0,dg=Uf+q[a+116>>2]|0,jg=q[Yf+1308>>2],kg=q[Yf+1304>>2],lg=q[Yf+1300>>2],mg=q[Yf+1296>>2],ng=q[Yf+1292>>2],og=q[Yf+1288>>2];Uf=q[Vf>>2]+ig<<2,q[Xf>>2]=q[Uf+og>>2],q[$f>>2]=q[Uf+ng>>2],q[ag>>2]=q[Uf+mg>>2],q[bg>>2]=q[Uf+lg>>2],q[cg>>2]=q[Uf+kg>>2],q[dg>>2]=q[Uf+jg>>2],dg=dg+4|0,cg=cg+4|0,bg=bg+4|0,ag=ag+4|0,$f=$f+4|0,Xf=Xf+4|0,(Vf=Vf+4|0)>>>0<hg>>>0;);if(_f=q[Zf+8>>2]+_f|0,(0|eg)==(0|(Wf=Wf+1|0)))break}}(a),function(a){var xf=0,yf=0,Af=0,Bf=0,Cf=0,Df=0,Ef=0,Ff=0,Gf=0,Hf=0,If=0,Jf=0,Kf=0,Lf=0,Mf=0,Nf=0,Of=0,Pf=0,Qf=0,Rf=0,Sf=0,Tf=q[a+168>>2],zf=q[a>>2];if(1<=(0|(Kf=q[a+164>>2])))for(Mf=q[zf+816>>2];;){if(Af=q[w(Ef,12)+Tf>>2],(q[Af+28>>2]||q[Af+24>>2])&&(q[(Ff=Ef<<2)+q[a+188>>2]>>2]=q[Af+12>>2],q[Af+24>>2])){if(yf=q[Af+16>>2],Lf=q[Ff+Mf>>2],1<=(0|(xf=q[Af+12>>2])))for(Nf=yf+(xf<<2)|0,Bf=(xf=Df<<2)+q[a+200>>2]|0,Gf=xf+q[a+204>>2]|0,Hf=xf+q[a+208>>2]|0,If=xf+q[a+212>>2]|0,Jf=xf+q[a+196>>2]|0,Of=q[zf+996>>2],Pf=q[zf+1012>>2],Qf=q[zf+1008>>2],Rf=q[zf+1004>>2],Sf=q[zf+1e3>>2],xf=yf;Cf=Lf+q[xf>>2]<<2,q[Bf>>2]=q[Cf+Sf>>2],q[Gf>>2]=q[Cf+Rf>>2],q[Hf>>2]=q[Cf+Qf>>2],q[If>>2]=q[Cf+Pf>>2],q[Jf>>2]=q[Cf+Of>>2],Jf=Jf+4|0,If=If+4|0,Hf=Hf+4|0,Gf=Gf+4|0,Bf=Bf+4|0,(xf=xf+4|0)>>>0<Nf>>>0;);xf=Lf+q[yf>>2]<<2,q[Ff+q[a+288>>2]>>2]=q[xf+q[zf+1016>>2]>>2],q[Ff+q[a+292>>2]>>2]=q[xf+q[zf+1020>>2]>>2]}if(q[Af+28>>2]&&!((0|(yf=q[Af+12>>2]))<1))for(yf=(xf=q[Af+20>>2])+(yf<<2)|0,Bf=q[a+192>>2]+(Df<<2)|0;q[Bf>>2]=q[xf>>2],Bf=Bf+4|0,(xf=xf+4|0)>>>0<yf>>>0;);if(Df=q[Af+8>>2]+Df|0,(0|Kf)==(0|(Ef=Ef+1|0)))break}if(!(r[zf+4|0]<4||(0|(Ff=q[a+164>>2]))<1))for(Lf=q[zf+824>>2],Df=Af=0;;){if(Cf=q[w(Df,12)+Tf>>2],q[Cf+24>>2]&&!((0|(xf=q[Cf+12>>2]))<1))for(Kf=(Bf=q[Cf+16>>2])+(xf<<2)|0,Mf=q[Lf+(Df<<2)>>2],Gf=(yf=Af<<2)+q[a+216>>2]|0,Hf=yf+q[a+220>>2]|0,If=yf+q[a+224>>2]|0,Jf=yf+q[a+228>>2]|0,xf=yf+q[a+232>>2]|0,Ef=yf+q[a+236>>2]|0,Nf=q[zf+1308>>2],Of=q[zf+1304>>2],Pf=q[zf+1300>>2],Qf=q[zf+1296>>2],Rf=q[zf+1292>>2],Sf=q[zf+1288>>2];yf=Mf+q[Bf>>2]<<2,q[Gf>>2]=q[yf+Sf>>2],q[Hf>>2]=q[yf+Rf>>2],q[If>>2]=q[yf+Qf>>2],q[Jf>>2]=q[yf+Pf>>2],q[xf>>2]=q[yf+Of>>2],q[Ef>>2]=q[yf+Nf>>2],Ef=Ef+4|0,xf=xf+4|0,Jf=Jf+4|0,If=If+4|0,Hf=Hf+4|0,Gf=Gf+4|0,(Bf=Bf+4|0)>>>0<Kf>>>0;);if(Af=q[Cf+8>>2]+Af|0,(0|Ff)==(0|(Df=Df+1|0)))break}}(a),function(a){var yk,qk=0,rk=0,sk=0,tk=0,uk=0,vk=0,wk=0,xk=0,qk=a- -64|0;if(n[q[1807]](qk,q[a+88>>2],q[a+148>>2],q[a+144>>2]),n[q[1809]](qk,q[a+92>>2],q[a+152>>2],q[q[a>>2]+796>>2],2,q[a+144>>2]),!(r[q[a>>2]+4|0]<4||(n[q[1807]](qk,q[a+96>>2],q[a+120>>2],q[a+144>>2]),n[q[1807]](qk,q[a+100>>2],q[a+124>>2],q[a+144>>2]),n[q[1807]](qk,q[a+104>>2],q[a+128>>2],q[a+144>>2]),n[q[1807]](qk,q[a+108>>2],q[a+132>>2],q[a+144>>2]),n[q[1807]](qk,q[a+112>>2],q[a+136>>2],q[a+144>>2]),n[q[1807]](qk,q[a+116>>2],q[a+140>>2],q[a+144>>2]),(0|(vk=q[a+56>>2]))<1))){for(wk=q[a+128>>2],xk=q[a+124>>2],yk=q[a+120>>2],rk=q[a+156>>2],qk=0;q[(sk=tk<<2)+rk>>2]=q[(uk=qk<<2)+yk>>2],q[rk+(4|sk)>>2]=q[uk+xk>>2],q[rk+(8|sk)>>2]=q[uk+wk>>2],tk=tk+4|0,(0|vk)!=(0|(qk=qk+1|0)););for(rk=q[a+160>>2],uk=q[a+140>>2],wk=q[a+136>>2],xk=q[a+132>>2],qk=a=0;q[(tk=a<<2)+rk>>2]=q[(sk=qk<<2)+xk>>2],q[rk+(4|tk)>>2]=q[sk+wk>>2],q[rk+(8|tk)>>2]=q[sk+uk>>2],a=a+4|0,(0|vk)!=(0|(qk=qk+1|0)););}}(a),function(a){var pk,hk=0,ik=0,jk=0,kk=0,lk=0,mk=0,nk=0,ok=0,hk=a+172|0;if(n[q[1807]](hk,q[a+196>>2],q[a+268>>2],q[a+264>>2]),n[q[1807]](hk,q[a+200>>2],q[a+284>>2],q[a+264>>2]),n[q[1807]](hk,q[a+204>>2],q[a+276>>2],q[a+264>>2]),n[q[1807]](hk,q[a+208>>2],q[a+280>>2],q[a+264>>2]),n[q[1807]](hk,q[a+212>>2],q[a+272>>2],q[a+264>>2]),!(r[q[a>>2]+4|0]<4||(n[q[1807]](hk,q[a+216>>2],q[a+240>>2],q[a+264>>2]),n[q[1807]](hk,q[a+220>>2],q[a+244>>2],q[a+264>>2]),n[q[1807]](hk,q[a+224>>2],q[a+248>>2],q[a+264>>2]),n[q[1807]](hk,q[a+228>>2],q[a+252>>2],q[a+264>>2]),n[q[1807]](hk,q[a+232>>2],q[a+256>>2],q[a+264>>2]),n[q[1807]](hk,q[a+236>>2],q[a+260>>2],q[a+264>>2]),(0|(mk=q[a+164>>2]))<1))){for(nk=q[a+248>>2],ok=q[a+244>>2],pk=q[a+240>>2],ik=q[a+296>>2],hk=0;q[(jk=kk<<2)+ik>>2]=q[(lk=hk<<2)+pk>>2],q[ik+(4|jk)>>2]=q[lk+ok>>2],q[ik+(8|jk)>>2]=q[lk+nk>>2],kk=kk+4|0,(0|mk)!=(0|(hk=hk+1|0)););for(ik=q[a+300>>2],lk=q[a+260>>2],nk=q[a+256>>2],ok=q[a+252>>2],hk=a=0;q[(kk=a<<2)+ik>>2]=q[(jk=hk<<2)+ok>>2],q[ik+(4|kk)>>2]=q[jk+nk>>2],q[ik+(8|kk)>>2]=q[jk+lk>>2],a=a+4|0,(0|mk)!=(0|(hk=hk+1|0)););}}(a),function(a){var re,se,te,oe=0,pe=0,qe=0;if(1<=(0|(pe=q[a+332>>2])))for(re=(oe=q[a+336>>2])+w(pe,20)|0,se=q[a+312>>2],te=q[a+40>>2],a=q[a+424>>2];pe=0,q[oe+12>>2]&&(qe=q[oe+4>>2],q[(qe<<2)+te>>2]||-1==(0|qe))&&(qe=q[oe+8>>2],q[(qe<<2)+se>>2]||-1==(0|qe))&&(pe=!q[q[oe>>2]+32>>2]),q[a>>2]=pe,a=a+4|0,(oe=oe+20|0)>>>0<re>>>0;);}(a),function(a){var pf,qf,rf,sf,tf,uf,vf,wf,$e=0,af=0,bf=0,cf=0,df=0,ef=0,ff=0,gf=0,hf=0,jf=0,kf=0,lf=0,mf=0,nf=0,of=0,cf=q[a>>2];if(1<=(0|(jf=q[a+332>>2]))){for(kf=q[a+336>>2],lf=q[cf+1052>>2],mf=q[cf+856>>2];;){if($e=q[kf+w(ff,20)>>2],(q[$e+28>>2]||q[$e+24>>2])&&(q[(af=ff<<2)+q[a+356>>2]>>2]=q[$e+12>>2],q[$e+24>>2])&&!((0|(df=q[$e+12>>2]))<1))for(nf=(bf=q[$e+16>>2])+(df<<2)|0,of=q[af+mf>>2],af=(ef=gf<<2)+q[a+372>>2]|0,df=ef+q[a+364>>2]|0,ef=ef+q[a+368>>2]|0;hf=of+q[bf>>2]<<2,q[af>>2]=lf+(q[hf+q[cf+1040>>2]>>2]<<2),q[df>>2]=q[hf+q[cf+1032>>2]>>2],q[ef>>2]=q[hf+q[cf+1036>>2]>>2],ef=ef+4|0,df=df+4|0,af=af+4|0,(bf=bf+4|0)>>>0<nf>>>0;);if(q[$e+28>>2]&&!((0|(af=q[$e+12>>2]))<1))for(df=(bf=q[$e+20>>2])+(af<<2)|0,af=q[a+360>>2]+(gf<<2)|0;q[af>>2]=q[bf>>2],af=af+4|0,(bf=bf+4|0)>>>0<df>>>0;);if(gf=q[$e+8>>2]+gf|0,(0|jf)==(0|(ff=ff+1|0)))break}cf=q[a>>2]}if(!(r[cf+4|0]<4||(0|(mf=q[a+332>>2]))<1))for(nf=q[cf+864>>2],of=q[a+336>>2],bf=gf=0;;){if(ff=q[of+w(bf,20)>>2],q[ff+24>>2]&&!((0|($e=q[ff+12>>2]))<1))for(pf=(af=q[ff+16>>2])+($e<<2)|0,qf=q[nf+(bf<<2)>>2],df=($e=gf<<2)+q[a+376>>2]|0,ef=$e+q[a+380>>2]|0,hf=$e+q[a+384>>2]|0,jf=$e+q[a+388>>2]|0,kf=$e+q[a+392>>2]|0,lf=$e+q[a+396>>2]|0,rf=q[cf+1308>>2],sf=q[cf+1304>>2],tf=q[cf+1300>>2],uf=q[cf+1296>>2],vf=q[cf+1292>>2],wf=q[cf+1288>>2];$e=q[af>>2]+qf<<2,q[df>>2]=q[$e+wf>>2],q[ef>>2]=q[$e+vf>>2],q[hf>>2]=q[$e+uf>>2],q[jf>>2]=q[$e+tf>>2],q[kf>>2]=q[$e+sf>>2],q[lf>>2]=q[$e+rf>>2],lf=lf+4|0,kf=kf+4|0,jf=jf+4|0,hf=hf+4|0,ef=ef+4|0,df=df+4|0,(af=af+4|0)>>>0<pf>>>0;);if(gf=q[ff+8>>2]+gf|0,(0|mf)==(0|(bf=bf+1|0)))break}}(a),function(a){var gk,vj=0,xj=0,yj=0,bk=0,ck=0,dk=0,ek=0,fk=0,vj=a+340|0;if(n[q[1807]](vj,q[a+364>>2],q[a+448>>2],q[a+424>>2]),n[q[1808]](vj,q[a+368>>2],q[a+440>>2],q[a+424>>2]),n[q[1809]](vj,q[a+372>>2],q[a+444>>2],q[q[a>>2]+892>>2],2,q[a+424>>2]),!(r[q[a>>2]+4|0]<4||(n[q[1807]](vj,q[a+376>>2],q[a+400>>2],q[a+424>>2]),n[q[1807]](vj,q[a+380>>2],q[a+404>>2],q[a+424>>2]),n[q[1807]](vj,q[a+384>>2],q[a+408>>2],q[a+424>>2]),n[q[1807]](vj,q[a+388>>2],q[a+412>>2],q[a+424>>2]),n[q[1807]](vj,q[a+392>>2],q[a+416>>2],q[a+424>>2]),n[q[1807]](vj,q[a+396>>2],q[a+420>>2],q[a+424>>2]),(0|(dk=q[a+332>>2]))<1))){for(ek=q[a+408>>2],fk=q[a+404>>2],gk=q[a+400>>2],xj=q[a+452>>2],vj=0;q[(yj=bk<<2)+xj>>2]=q[(ck=vj<<2)+gk>>2],q[xj+(4|yj)>>2]=q[ck+fk>>2],q[xj+(8|yj)>>2]=q[ck+ek>>2],bk=bk+4|0,(0|dk)!=(0|(vj=vj+1|0)););for(xj=q[a+456>>2],ck=q[a+420>>2],ek=q[a+416>>2],fk=q[a+412>>2],vj=a=0;q[(bk=a<<2)+xj>>2]=q[(yj=vj<<2)+fk>>2],q[xj+(4|bk)>>2]=q[yj+ek>>2],q[xj+(8|bk)>>2]=q[yj+ck>>2],a=a+4|0,(0|dk)!=(0|(vj=vj+1|0)););}}(a),function(a){var Re,Ve,We,Xe,Ye,Ze,_e,Pe=0,Qe=0,Se=0,Te=0,Ue=0;if(1<=(0|(Ve=q[a+500>>2])))for(Xe=q[a+504>>2],We=q[a>>2],Ye=q[We+1252>>2];;){if(Re=q[w(Te,24)+Xe>>2],(q[Re+28>>2]||q[Re+24>>2])&&(q[(Pe=Te<<2)+q[a+524>>2]>>2]=q[Re+12>>2],q[Re+24>>2])&&!((0|(Se=q[Re+12>>2]))<1))for(Se=(Qe=q[Re+16>>2])+(Se<<2)|0,Ze=q[Pe+Ye>>2],Pe=q[a+532>>2]+(Ue<<2)|0,_e=q[We+1284>>2];q[Pe>>2]=q[(q[Qe>>2]+Ze<<2)+_e>>2],Pe=Pe+4|0,(Qe=Qe+4|0)>>>0<Se>>>0;);if(q[Re+28>>2]&&!((0|(Pe=q[Re+12>>2]))<1))for(Se=(Qe=q[Re+20>>2])+(Pe<<2)|0,Pe=q[a+528>>2]+(Ue<<2)|0;q[Pe>>2]=q[Qe>>2],Pe=Pe+4|0,(Qe=Qe+4|0)>>>0<Se>>>0;);if(Ue=q[Re+8>>2]+Ue|0,(0|Ve)==(0|(Te=Te+1|0)))break}}(a),n[q[1807]](a+508|0,q[a+532>>2],q[a+536>>2],0),function(a){var Ek,Fk,Gk,Hk,Ik,Jk,zk=x(0),Ak=0,Bk=0,Ck=0,Dk=0;x(0);if(L=Ek=L-16|0,Ck=q[a>>2],!(r[Ck+4|0]<5||(0|(Dk=q[a+596>>2]))<1))for(Hk=(Bk=q[a+600>>2])+w(Dk,12)|0,Ik=q[a+44>>2],Dk=q[Ck+976>>2];;){if(Ck=(q[Bk>>2]<<2)+Ik|0,zk=x(q[Ck>>2]),1<=(0|(Ak=q[Bk+4>>2])))for(Jk=(a=q[Bk+8>>2])+w(Ak,48)|0;(Ak=q[a+8>>2])&&((Fk=Ak+-1|0)>>>0<=1?(Ak=q[a+4>>2],Gk=u[Dk+(Ak+q[a+12>>2]<<2)>>2],zk=x(Fk-1?zk+x(u[a+44>>2]*x(Gk*u[a+20>>2])):zk+x(u[a+44>>2]*x(x(Gk*u[a+20>>2])+x(u[Dk+(Ak+q[a+16>>2]<<2)>>2]*u[a+24>>2]))))):(q[Ek>>2]=Ak,Y(4,1024,Ek))),(a=a+48|0)>>>0<Jk>>>0;);if(zk=(zk=x(zk+x(.0010000000474974513)))<x(0)?x(0):x(A(zk,x(1e3))),a=x(y(zk))<x(2147483648)?~~zk:-2147483648,q[Ck>>2]=a,!((Bk=Bk+12|0)>>>0<Hk>>>0))break}L=16+Ek|0}(a),function(a){var mj,nj,oj,pj,qj,rj,sj,tj,uj,ej=0,gj=0,ij=0,jj=0,kj=0,lj=x(0);if(L=mj=L-16|0,ej=q[a>>2],!(r[ej+4|0]<4||(va(a,q[a+604>>2],q[a+608>>2],q[ej+984>>2],q[a+152>>2],q[ej+796>>2]),gj=q[a>>2],r[gj+4|0]<5))){if(ij=q[a+608>>2],qj=q[gj+992>>2],rj=q[gj+988>>2],1<=(0|(ej=q[a+604>>2]))){for(sj=w(ej,12)+ij|0,tj=q[a+148>>2],nj=q[gj+980>>2];;){if(oj=(q[ij>>2]<<2)+tj|0,kj=q[oj>>2],1<=(0|(jj=q[ij+4>>2])))for(uj=(ej=q[ij+8>>2])+w(jj,48)|0;(jj=q[ej+8>>2])&&((pj=jj+-1|0)>>>0<=1?(jj=q[ej+4>>2],lj=u[(jj+q[ej+12>>2]<<2)+nj>>2],j(x(pj-1?x(u[ej+44>>2]*x(lj*u[ej+20>>2]))+(f(0,kj),k()):x(u[ej+44>>2]*x(x(lj*u[ej+20>>2])+x(u[(jj+q[ej+16>>2]<<2)+nj>>2]*u[ej+24>>2])))+(f(0,kj),k()))),kj=b[0]):(q[mj>>2]=jj,Y(4,1024,mj))),(ej=ej+48|0)>>>0<uj>>>0;);if(f(0,kj),lj=k(),u[oj>>2]=lj<x(0)?x(0):x(A(lj,x(1))),!((ij=ij+12|0)>>>0<sj>>>0))break}ij=q[a+608>>2],ej=q[a+604>>2]}fa(ej,ij,rj,q[gj+1288>>2],q[gj+1292>>2],q[gj+1296>>2],q[a+156>>2]),fa(q[a+604>>2],q[a+608>>2],qj,q[gj+1300>>2],q[gj+1304>>2],q[gj+1308>>2],q[a+160>>2])}L=16+mj|0}(a),function(a){var zi,si=0,ti=0,ui=0,vi=0,wi=0,xi=x(0),yi=0,Ai=0,Bi=0,Ci=0,Di=0,Ei=0,Fi=0,Gi=0;if(L=zi=L-80|0,wi=q[a>>2],!(r[wi+4|0]<5)){if(Ei=q[wi+1028>>2],Fi=q[wi+1024>>2],ui=ti=q[a+616>>2],!((0|(si=q[a+612>>2]))<1)){for(Ai=w(si,12)+ti|0,Bi=q[a+276>>2],yi=q[wi+1004>>2];;){if(Ci=Bi+(q[ti>>2]<<2)|0,ui=q[Ci>>2],1<=(0|(vi=q[ti+4>>2])))for(Gi=(si=q[ti+8>>2])+w(vi,48)|0;(vi=q[si+8>>2])&&((Di=vi+-1|0)>>>0<=1?(vi=q[si+4>>2],xi=u[yi+(vi+q[si+12>>2]<<2)>>2],j(x(Di-1?x(u[si+44>>2]*x(xi*u[si+20>>2]))+(f(0,ui),k()):x(u[si+44>>2]*x(x(xi*u[si+20>>2])+x(u[yi+(vi+q[si+16>>2]<<2)>>2]*u[si+24>>2])))+(f(0,ui),k()))),ui=b[0]):(q[64+zi>>2]=vi,Y(4,1024,64+zi|0))),(si=si+48|0)>>>0<Gi>>>0;);if(q[Ci>>2]=ui,!((ti=ti+12|0)>>>0<Ai>>>0))break}if(ui=ti=q[a+616>>2],!((0|(si=q[a+612>>2]))<1)){for(Ai=w(si,12)+ti|0,Bi=q[a+280>>2],yi=q[q[a>>2]+1008>>2];;){if(Ci=Bi+(q[ti>>2]<<2)|0,ui=q[Ci>>2],1<=(0|(vi=q[ti+4>>2])))for(Gi=(si=q[ti+8>>2])+w(vi,48)|0;(vi=q[si+8>>2])&&((Di=vi+-1|0)>>>0<=1?(vi=q[si+4>>2],xi=u[yi+(vi+q[si+12>>2]<<2)>>2],j(x(Di-1?x(u[si+44>>2]*x(xi*u[si+20>>2]))+(f(0,ui),k()):x(u[si+44>>2]*x(x(xi*u[si+20>>2])+x(u[yi+(vi+q[si+16>>2]<<2)>>2]*u[si+24>>2])))+(f(0,ui),k()))),ui=b[0]):(q[48+zi>>2]=vi,Y(4,1024,48+zi|0))),(si=si+48|0)>>>0<Gi>>>0;);if(q[Ci>>2]=ui,!((ti=ti+12|0)>>>0<Ai>>>0))break}if(ui=ti=q[a+616>>2],!((0|(si=q[a+612>>2]))<1)){for(Ai=w(si,12)+ti|0,Bi=q[a+268>>2],yi=q[q[a>>2]+996>>2];;){if(Ci=Bi+(q[ti>>2]<<2)|0,ui=q[Ci>>2],1<=(0|(vi=q[ti+4>>2])))for(Gi=(si=q[ti+8>>2])+w(vi,48)|0;(vi=q[si+8>>2])&&((Di=vi+-1|0)>>>0<=1?(vi=q[si+4>>2],xi=u[yi+(vi+q[si+12>>2]<<2)>>2],j(x(Di-1?x(u[si+44>>2]*x(xi*u[si+20>>2]))+(f(0,ui),k()):x(u[si+44>>2]*x(x(xi*u[si+20>>2])+x(u[yi+(vi+q[si+16>>2]<<2)>>2]*u[si+24>>2])))+(f(0,ui),k()))),ui=b[0]):(q[32+zi>>2]=vi,Y(4,1024,32+zi|0))),(si=si+48|0)>>>0<Gi>>>0;);if(f(0,ui),xi=k(),u[Ci>>2]=xi<x(0)?x(0):x(A(xi,x(1))),!((ti=ti+12|0)>>>0<Ai>>>0))break}si=q[a+612>>2],ui=q[a+616>>2]}}}if(fa(si,ui,Fi,q[wi+1288>>2],q[wi+1292>>2],q[wi+1296>>2],q[a+296>>2]),fa(q[a+612>>2],q[a+616>>2],Ei,q[wi+1300>>2],q[wi+1304>>2],q[wi+1308>>2],q[a+300>>2]),!((0|(si=q[a+612>>2]))<1)){for(vi=(ti=q[a+616>>2])+w(si,12)|0,Ei=q[a+284>>2],wi=q[q[a>>2]+1e3>>2];;){if(Fi=Ei+(q[ti>>2]<<2)|0,ui=q[Fi>>2],1<=(0|(yi=q[ti+4>>2])))for(Ai=(si=q[ti+8>>2])+w(yi,48)|0;(yi=q[si+8>>2])&&((Bi=yi+-1|0)>>>0<=1?(yi=q[si+4>>2],xi=u[wi+(yi+q[si+12>>2]<<2)>>2],j(x(Bi-1?x(u[si+44>>2]*x(xi*u[si+20>>2]))+(f(0,ui),k()):x(u[si+44>>2]*x(x(xi*u[si+20>>2])+x(u[wi+(yi+q[si+16>>2]<<2)>>2]*u[si+24>>2])))+(f(0,ui),k()))),ui=b[0]):(q[16+zi>>2]=yi,Y(4,1024,16+zi|0))),(si=si+48|0)>>>0<Ai>>>0;);if(f(0,ui),xi=k(),u[Fi>>2]=xi<x(-3600)?x(-3600):x(A(xi,x(3600))),!((ti=ti+12|0)>>>0<vi>>>0))break}if(!((0|(si=q[a+612>>2]))<1))for(yi=(ti=q[a+616>>2])+w(si,12)|0,vi=q[a+272>>2],a=q[q[a>>2]+1012>>2];;){if(Ei=vi+(q[ti>>2]<<2)|0,ui=q[Ei>>2],1<=(0|(wi=q[ti+4>>2])))for(Fi=(si=q[ti+8>>2])+w(wi,48)|0;(wi=q[si+8>>2])&&((Ai=wi+-1|0)>>>0<=1?(wi=q[si+4>>2],xi=u[a+(wi+q[si+12>>2]<<2)>>2],j(x(Ai-1?x(u[si+44>>2]*x(xi*u[si+20>>2]))+(f(0,ui),k()):x(u[si+44>>2]*x(x(xi*u[si+20>>2])+x(u[a+(wi+q[si+16>>2]<<2)>>2]*u[si+24>>2])))+(f(0,ui),k()))),ui=b[0]):(q[zi>>2]=wi,Y(4,1024,zi))),(si=si+48|0)>>>0<Fi>>>0;);if(f(0,ui),xi=k(),u[Ei>>2]=xi<x(9999999747378752e-20)?x(9999999747378752e-20):x(A(xi,x(100))),!((ti=ti+12|0)>>>0<yi>>>0))break}}}L=80+zi|0}(a),function(a){var $h,fi,gi,hi,ii,Vh=0,Wh=0,Xh=0,Yh=0,Zh=x(0),_h=0,ai=0,bi=0,ci=0,di=0,ei=0;x(0);if(L=$h=L-32|0,Xh=q[a>>2],!(r[Xh+4|0]<4||(va(a,q[a+620>>2],q[a+624>>2],q[Xh+1040>>2],q[a+444>>2],q[Xh+892>>2]),_h=q[a>>2],r[_h+4|0]<5))){if(hi=q[_h+1048>>2],ii=q[_h+1044>>2],Xh=Yh=q[a+624>>2],!((0|(Vh=q[a+620>>2]))<1)){for(di=w(Vh,12)+Yh|0,ei=q[a+440>>2],ai=q[_h+1036>>2];;){if(Xh=ei+(q[Yh>>2]<<2)|0,Zh=x(q[Xh>>2]),1<=(0|(Wh=q[Yh+4>>2])))for(bi=(Vh=q[Yh+8>>2])+w(Wh,48)|0;(Wh=q[Vh+8>>2])&&((ci=Wh+-1|0)>>>0<=1?(Wh=q[Vh+4>>2],fi=u[ai+(Wh+q[Vh+12>>2]<<2)>>2],Zh=x(ci-1?Zh+x(u[Vh+44>>2]*x(fi*u[Vh+20>>2])):Zh+x(u[Vh+44>>2]*x(x(fi*u[Vh+20>>2])+x(u[ai+(Wh+q[Vh+16>>2]<<2)>>2]*u[Vh+24>>2]))))):(q[16+$h>>2]=Wh,Y(4,1024,16+$h|0))),(Vh=Vh+48|0)>>>0<bi>>>0;);if(Zh=(Zh=x(Zh+x(.0010000000474974513)))<x(0)?x(0):x(A(Zh,x(1e3))),Vh=x(y(Zh))<x(2147483648)?~~Zh:-2147483648,q[Xh>>2]=Vh,!((Yh=Yh+12|0)>>>0<di>>>0))break}if(Xh=Yh=q[a+624>>2],!((0|(Vh=q[a+620>>2]))<1)){for(di=w(Vh,12)+Yh|0,ei=q[a+448>>2],ai=q[q[a>>2]+1032>>2];;){if(bi=ei+(q[Yh>>2]<<2)|0,Xh=q[bi>>2],1<=(0|(Wh=q[Yh+4>>2])))for(ci=(Vh=q[Yh+8>>2])+w(Wh,48)|0;(Wh=q[Vh+8>>2])&&((gi=Wh+-1|0)>>>0<=1?(Wh=q[Vh+4>>2],Zh=u[ai+(Wh+q[Vh+12>>2]<<2)>>2],j(x(gi-1?x(u[Vh+44>>2]*x(Zh*u[Vh+20>>2]))+(f(0,Xh),k()):x(u[Vh+44>>2]*x(x(Zh*u[Vh+20>>2])+x(u[ai+(Wh+q[Vh+16>>2]<<2)>>2]*u[Vh+24>>2])))+(f(0,Xh),k()))),Xh=b[0]):(q[$h>>2]=Wh,Y(4,1024,$h))),(Vh=Vh+48|0)>>>0<ci>>>0;);if(f(0,Xh),Zh=k(),u[bi>>2]=Zh<x(0)?x(0):x(A(Zh,x(1))),!((Yh=Yh+12|0)>>>0<di>>>0))break}Vh=q[a+620>>2],Xh=q[a+624>>2]}}fa(Vh,Xh,ii,q[_h+1288>>2],q[_h+1292>>2],q[_h+1296>>2],q[a+452>>2]),fa(q[a+620>>2],q[a+624>>2],hi,q[_h+1300>>2],q[_h+1304>>2],q[_h+1308>>2],q[a+456>>2])}L=32+$h|0}(a),function(a){var Gg,Hg,Ig,Jg,Kg,Lg,Bg=0,Cg=0,Dg=0,Eg=0,Fg=x(0);if(L=Gg=L-16|0,Cg=q[a>>2],!(r[Cg+4|0]<5||(0|(Eg=q[a+628>>2]))<1))for(Jg=(Dg=q[a+632>>2])+w(Eg,12)|0,Kg=q[a+536>>2],Eg=q[Cg+1284>>2];;){if(Hg=(q[Dg>>2]<<2)+Kg|0,Cg=q[Hg>>2],1<=(0|(Bg=q[Dg+4>>2])))for(Lg=(a=q[Dg+8>>2])+w(Bg,48)|0;(Bg=q[a+8>>2])&&((Ig=Bg+-1|0)>>>0<=1?(Bg=q[a+4>>2],Fg=u[Eg+(Bg+q[a+12>>2]<<2)>>2],j(x(Ig-1?x(u[a+44>>2]*x(Fg*u[a+20>>2]))+(f(0,Cg),k()):x(u[a+44>>2]*x(x(Fg*u[a+20>>2])+x(u[Eg+(Bg+q[a+16>>2]<<2)>>2]*u[a+24>>2])))+(f(0,Cg),k()))),Cg=b[0]):(q[Gg>>2]=Bg,Y(4,1024,Gg))),(a=a+48|0)>>>0<Lg>>>0;);if(f(0,Cg),Fg=k(),u[Hg>>2]=Fg<x(0)?x(0):x(A(Fg,x(1))),!((Dg=Dg+12|0)>>>0<Jg>>>0))break}L=16+Gg|0}(a),function(a){var Qh,Th,mh=0,Oh=0,Ph=0,Rh=x(0),Sh=0;if(1<=(0|(mh=q[a+4>>2])))for(Th=(Oh=q[a+8>>2])+w(mh,12)|0,mh=q[a+40>>2],Ph=q[a+52>>2],a=Qh=q[a+48>>2];q[mh>>2]&&(Rh=u[Ph>>2],u[a>>2]=Rh,-1!=(0|(Sh=q[Oh+4>>2])))&&(u[a>>2]=Rh*u[(Sh<<2)+Qh>>2]),a=a+4|0,Ph=Ph+4|0,mh=mh+4|0,(Oh=Oh+12|0)>>>0<Th>>>0;);}(a),function(a){var lh,ih=0,jh=0,kh=0;if(1<=(0|(lh=q[a+304>>2])))for(ih=q[a+308>>2],jh=q[a+312>>2];q[jh>>2]&&n[q[ih+20>>2]](a,kh),jh=jh+4|0,ih=ih+32|0,(0|lh)!=(0|(kh=kh+1|0)););}(a),function(a){var Zg,_g,ch,gh,hh,Xg=0,Yg=0,$g=(x(0),x(0),0),ah=0,bh=0,dh=(x(0),0),eh=0,fh=0;if(1<=(0|(Xg=q[a+332>>2])))for(eh=(Yg=q[a+336>>2])+w(Xg,20)|0,fh=q[a+308>>2],dh=q[a+316>>2],hh=q[a+48>>2],Xg=q[a+448>>2],$g=q[a+444>>2],bh=q[a+424>>2];q[bh>>2]&&(-1!=(0|(ah=q[Yg+4>>2]))&&(u[Xg>>2]=u[(ah<<2)+hh>>2]*u[Xg>>2]),-1!=(0|(ah=q[Yg+8>>2])))&&(u[Xg>>2]=u[dh+(ah<<2)>>2]*u[Xg>>2],gh=q[$g>>2],n[q[24+(fh+(ah<<5)|0)>>2]](a,ah,gh,gh,q[Yg+16>>2])),$g=$g+4|0,Xg=Xg+4|0,bh=bh+4|0,(Yg=Yg+20|0)>>>0<eh>>>0;);if(!(r[q[a>>2]+4|0]<4||(0|(Xg=q[a+332>>2]))<1))for(ah=($g=q[a+336>>2])+w(Xg,20)|0,eh=q[a+328>>2],fh=q[a+324>>2],Yg=q[a+452>>2],Xg=q[a+456>>2],bh=q[a+424>>2];q[bh>>2]&&-1!=(0|(a=q[$g+8>>2]))&&(a=(dh=a<<4)+fh|0,Zg=x(u[Yg>>2]*u[a>>2]),u[Yg>>2]=Zg,_g=x(u[Yg+4>>2]*u[a+4>>2]),u[Yg+4>>2]=_g,ch=u[a+8>>2],q[Yg+12>>2]=1065353216,u[Yg+4>>2]=_g<x(0)?x(0):x(A(_g,x(1))),u[Yg>>2]=Zg<x(0)?x(0):x(A(Zg,x(1))),Zg=x(ch*u[Yg+8>>2]),u[Yg+8>>2]=Zg<x(0)?x(0):x(A(Zg,x(1))),Zg=u[Xg>>2],_g=u[(a=eh+dh|0)>>2],Zg=x(x(Zg+_g)-x(Zg*_g)),u[Xg>>2]=Zg,_g=u[Xg+4>>2],ch=u[a+4>>2],_g=x(x(_g+ch)-x(_g*ch)),u[Xg+4>>2]=_g,ch=u[a+8>>2],q[Xg+12>>2]=1065353216,u[Xg+4>>2]=_g<x(0)?x(0):x(A(_g,x(1))),u[Xg>>2]=Zg<x(0)?x(0):x(A(Zg,x(1))),Zg=u[Xg+8>>2],Zg=x(x(ch+Zg)-x(Zg*ch)),u[Xg+8>>2]=Zg<x(0)?x(0):x(A(Zg,x(1)))),Xg=Xg+16|0,Yg=Yg+16|0,bh=bh+4|0,($g=$g+20|0)>>>0<ah>>>0;);}(a),function(a){var Ln,Mn,On,Ko,Lo,Mo,No,Oo,Po,Qo,Ro,So,To,Uo,Vo,Wo,Xo,Yo,Zo,_o,Nn=0;x(0),x(0),x(0),x(0),x(0),x(0),x(0);if(1<=(0|(Oo=q[a+500>>2])))for(Zo=q[a+536>>2],Po=q[a+444>>2],_o=q[a+504>>2];;){if(a=w(Nn,24)+_o|0,0<(0|(Qo=q[a+12>>2])))for(On=u[(Nn<<2)+Zo>>2],Ro=q[a+20>>2],So=q[a+16>>2],To=q[(q[a+4>>2]<<2)+Po>>2],Uo=q[(q[a+8>>2]<<2)+Po>>2],a=0;Vo=u[((Ln=1|a)<<2)+So>>2],Mn=s[(a<<1)+Ro>>1]<<3&262136,Ko=u[(Wo=(4|Mn)+To|0)>>2],Ln=s[(Ln<<1)+Ro>>1]<<3&262136,Lo=u[(Xo=(4|Ln)+Uo|0)>>2],Mo=u[(Mn=Mn+To|0)>>2],Yo=u[(a<<2)+So>>2],No=u[(Ln=Ln+Uo|0)>>2],u[Mn>>2]=Mo+x(On*x(Yo*x(No-Mo))),u[Wo>>2]=Ko+x(On*x(Yo*x(Lo-Ko))),u[Ln>>2]=No+x(On*x(Vo*x(Mo-No))),u[Xo>>2]=Lo+x(On*x(Vo*x(Ko-Lo))),(0|(a=a+2|0))<(0|Qo););if(!((0|(Nn=Nn+1|0))<(0|Oo)))break}}(a),n[q[1810]](a),function(a){var Rc,Sc,Uc,Vc,Gc=0,Ic=0,Jc=0,Kc=0,Lc=0,Mc=0,Nc=0,Oc=0,Pc=0,Qc=0,Tc=0;if(!((0|(Rc=q[a+480>>2]))<1)){for(Kc=(Sc=q[a+484>>2])+w(Rc,28)|0,Nc=q[a+424>>2],Oc=q[a+40>>2],Lc=q[a+44>>2],Tc=q[a+440>>2],Gc=Sc;;){if(1<=(0|(Mc=q[Gc+4>>2])))for(Qc=Gc+20|0,Pc=q[Gc+12>>2],Ic=0;Uc=q[4+(Jc=Pc+(Ic<<4)|0)>>2]<<2,Jc=1==q[(Vc=Jc)>>2],q[Vc+12>>2]=q[(q[(Jc?Oc:Nc)+Uc>>2]?(Jc?Lc:Tc)+Uc|0:Qc)>>2],(0|(Ic=Ic+1|0))<(0|Mc););if(!((Gc=Gc+28|0)>>>0<Kc>>>0))break}if(!((0|Rc)<1))for(Tc=q[a+436>>2],Oc=0;;){if(Kc=w(Oc,28)+Sc|0,!(q[(Nc=Kc)+24>>2]<1)){for(Jc=q[a+488>>2],Ic=0;q[Jc+(Ic<<2)>>2]=-1,(0|(Ic=Ic+1|0))<(0|(Gc=q[Nc+24>>2])););if(!((0|Gc)<1))for(Gc=q[a+496>>2],Ic=0;q[Gc+(Ic<<2)>>2]=-1,(0|(Ic=Ic+1|0))<q[Nc+24>>2];);}if(!(q[Kc+4>>2]<1)){for(Lc=q[a+492>>2],Ic=0;q[Lc+(Ic<<2)>>2]=-1,(0|(Ic=Ic+1|0))<(0|(Gc=q[Kc+4>>2])););if(!((0|Gc)<1))for(Mc=q[Kc+12>>2],Qc=q[a+496>>2],Ic=0;Pc=q[12+(Mc+(Ic<<4)|0)>>2]-q[Kc+20>>2]<<2,Gc=-1==(0|(Gc=q[(Jc=Pc+Qc|0)>>2]))?Pc+q[a+488>>2]|0:Lc+(Gc<<2)|0,q[Gc>>2]=Ic,(0|(Ic=(q[Jc>>2]=Ic)+1|0))<q[Kc+4>>2];);}if(1<=(0|(Gc=q[Nc+24>>2])))for(Lc=q[Kc+8>>2],Qc=q[a+488>>2],Mc=0;;){if(-1!=(0|(Ic=q[Qc+(Mc<<2)>>2]))){for(Pc=q[a+492>>2],Jc=q[Kc+12>>2];Lc=(Gc=1==q[(Gc=Jc+(Ic<<4)|0)>>2]?(Gc=w(q[Gc+8>>2],28)+Sc|0,q[Gc+8>>2]=Lc,q[Gc>>2]):(q[Tc+(q[Gc+4>>2]<<2)>>2]=Lc,1))+Lc|0,(0|Ic)<(0|(Gc=q[Pc+(Ic<<2)>>2]))&&-1!=(0|(Ic=Gc)););Gc=q[Nc+24>>2]}if(!((0|(Mc=Mc+1|0))<(0|Gc)))break}if((0|Rc)==(0|(Oc=Oc+1|0)))break}}}(a),function(a){var Mg=0,Ng=0,Og=0,Pg=0,Rg=0,Sg=x(0),Tg=0,Ug=0,Qg=q[a+332>>2];if(q[a+644>>2]){if(!(((q[a+428>>2]=0)|Qg)<1))for(;Mg=126,Tg=q[a+432>>2]+Og|0,!q[(Ng=Og<<2)+q[a+424>>2]>>2]|u[Ng+q[a+448>>2]>>2]==x(0)||(Mg=127),o[0|Tg]=Mg,(0|Qg)!=(0|(Og=Og+1|0)););}else if(q[a+428>>2]){if(Mg=r[q[a>>2]+4|0],!(((q[a+428>>2]=0)|Qg)<1))if(4<=Mg>>>0)for(;Sg=u[(Mg=Og<<2)+q[a+448>>2]>>2],Pg=q[Mg+q[a+424>>2]>>2],Ng=Sg!=x(0)&0!=(0|Pg),Tg=q[a+432>>2]+Og|0,Ng=(0|Ng)==(1&o[0|Tg])?Ng:2|Ng,Ng=Sg!=u[Mg+q[a+468>>2]>>2]?4|Ng:Ng,Ng=q[Mg+q[a+440>>2]>>2]==q[Mg+q[a+464>>2]>>2]?Ng:8|Ng,Mg=q[Mg+q[a+436>>2]>>2]==q[Mg+q[a+460>>2]>>2]?Ng:16|Ng,Mg=Pg?32|Mg:Mg,Pg=(Ng=Ug<<2)+q[a+452>>2]|0,Rg=Ng+q[a+472>>2]|0,(u[Pg>>2]!=u[Rg>>2]|u[Pg+4>>2]!=u[Rg+4>>2]|(u[Pg+8>>2]!=u[Rg+8>>2]|u[Pg+12>>2]!=u[Rg+12>>2])||(Pg=Ng+q[a+456>>2]|0,Ng=Ng+q[a+476>>2]|0,u[Pg>>2]!=u[Ng>>2]|u[Pg+4>>2]!=u[Ng+4>>2]|u[Pg+8>>2]!=u[Ng+8>>2])||u[Pg+12>>2]!=u[Ng+12>>2])&&(Mg|=64),o[0|Tg]=Mg,Ug=Ug+4|0,(0|Qg)!=(0|(Og=Og+1|0)););else for(;Sg=u[(Mg=Og<<2)+q[a+448>>2]>>2],Pg=q[Mg+q[a+424>>2]>>2],Ng=Sg!=x(0)&0!=(0|Pg),Rg=q[a+432>>2]+Og|0,Ng=(0|Ng)==(1&o[0|Rg])?Ng:2|Ng,Ng=Sg!=u[Mg+q[a+468>>2]>>2]?4|Ng:Ng,Ng=q[Mg+q[a+440>>2]>>2]==q[Mg+q[a+464>>2]>>2]?Ng:8|Ng,Mg=q[Mg+q[a+436>>2]>>2]==q[Mg+q[a+460>>2]>>2]?Ng:16|Ng,o[0|Rg]=Pg?32|Mg:Mg,(0|Qg)!=(0|(Og=Og+1|0)););}else if(!((0|Qg)<1))for(;!q[(Mg=Og<<2)+q[a+424>>2]>>2]|u[Mg+q[a+448>>2]>>2]==x(0)?(Mg=q[a+432>>2]+Og|0,o[0|Mg]=254&r[0|Mg]):(Mg=q[a+432>>2]+Og|0,o[0|Mg]=1|r[0|Mg]),(0|Qg)!=(0|(Og=Og+1|0)););}(a),q[a+644>>2]=0}function va(a,Wa,Xa,Ya,Za,_a){var fb,gb,hb,jb,kb,cb,db,$a=0,bb=0,eb=0,ib=0;if(L=cb=L-32|0,1<=(0|Wa))for(kb=w(Wa,12)+Xa|0;;){if(!((0|($a=q[Xa+4>>2]))<1))if(fb=(Wa=q[Xa+8>>2])+w($a,48)|0,$a=q[Xa>>2]<<2,1<=(0|(db=q[$a+_a>>2])))for(db<<=1,gb=q[q[a>>2]+1052>>2],hb=q[Za+$a>>2];;){b:if($a=q[Wa+8>>2]){c:{if((bb=$a+-1|0)>>>0<=1){if($a=(q[Wa+4>>2]<<2)+Ya|0,ib=(q[$a+(q[Wa+12>>2]<<2)>>2]<<2)+gb|0,bb-1)break c;for(eb=(q[$a+(q[Wa+16>>2]<<2)>>2]<<2)+gb|0,$a=0;u[(jb=(bb=$a<<2)+hb|0)>>2]=u[jb>>2]+x(u[Wa+44>>2]*x(x(u[bb+ib>>2]*u[Wa+20>>2])+x(u[bb+eb>>2]*u[Wa+24>>2]))),(0|db)!=(0|($a=$a+1|0)););break b}q[cb>>2]=$a,Y(4,1024,cb);break b}for($a=0;u[(eb=(bb=$a<<2)+hb|0)>>2]=u[eb>>2]+x(u[Wa+44>>2]*x(u[bb+ib>>2]*u[Wa+20>>2])),(0|db)!=(0|($a=$a+1|0)););}if(!((Wa=Wa+48|0)>>>0<fb>>>0))break}else for(;3<=($a=q[Wa+8>>2])>>>0&&(q[16+cb>>2]=$a,Y(4,1024,16+cb|0)),(Wa=Wa+48|0)>>>0<fb>>>0;);if(!((Xa=Xa+12|0)>>>0<kb>>>0))break}L=32+cb|0}function wa(a,Wa,Xa){var Ya;Wa|=0,Xa|=0,L=Ya=L+-64|0;a:{if(a|=0)if(Wa)if((Wa+15&-16)!=(0|Wa))q[52+Ya>>2]=1522,q[48+Ya>>2]=2361,Y(4,1294,48+Ya|0);else{if(Wa=function(a,Il,Jl){var cm,$l=0,am=0,bm=0,dm=0,em=0,fm=0,gm=0,hm=0,im=0,jm=0,km=0,lm=0,mm=0,nm=x(0),om=0,pm=0,qm=0,rm=0,sm=0;if(ca(16+(L=cm=L-576|0)|0,0,560),Fa(a,16+cm|0,12+cm|0),(dm=q[12+cm>>2])>>>0<=Jl>>>0){if($l=(am=ca(Il,0,dm))+q[16+cm>>2]|0,q[$l+8>>2]=am+q[20+cm>>2],q[$l+40>>2]=am+q[24+cm>>2],q[$l+44>>2]=am+q[28+cm>>2],q[$l+48>>2]=am+q[32+cm>>2],q[$l+52>>2]=am+q[36+cm>>2],q[$l+16>>2]=am+q[40+cm>>2],q[$l+24>>2]=am+q[44+cm>>2],q[$l+28>>2]=am+q[48+cm>>2],q[$l+32>>2]=am+q[52+cm>>2],q[$l+36>>2]=am+q[56+cm>>2],Il=q[a+704>>2],q[$l+308>>2]=am+q[60+cm>>2],q[$l+312>>2]=am+q[64+cm>>2],q[$l+316>>2]=am+q[68+cm>>2],q[$l+320>>2]=am+q[72+cm>>2],q[$l+324>>2]=am+q[76+cm>>2],q[$l+328>>2]=am+q[80+cm>>2],q[$l+60>>2]=am+q[84+cm>>2],q[$l+144>>2]=am+q[88+cm>>2],q[$l+148>>2]=am+q[92+cm>>2],Jl=am+q[96+cm>>2]|0,q[$l+152>>2]=Jl,!((0|(dm=q[Il+8>>2]))<1)&&(Il=am+q[100+cm>>2]|0,q[Jl>>2]=Il,1!=(0|dm)))for(Jl=1;Il=(15+(q[q[a+796>>2]+(bm<<2)>>2]<<3)&-16)+Il|0,q[q[$l+152>>2]+(Jl<<2)>>2]=Il,(0|dm)!=(0|(Jl=(bm=Jl)+1|0)););if(q[$l+156>>2]=am+q[104+cm>>2],q[$l+160>>2]=am+q[108+cm>>2],q[$l+68>>2]=am+q[112+cm>>2],q[$l+76>>2]=am+q[116+cm>>2],q[$l+80>>2]=am+q[120+cm>>2],q[$l+84>>2]=am+q[124+cm>>2],q[$l+88>>2]=am+q[128+cm>>2],q[$l+92>>2]=am+q[132+cm>>2],q[$l+96>>2]=am+q[136+cm>>2],q[$l+100>>2]=am+q[140+cm>>2],q[$l+104>>2]=am+q[144+cm>>2],q[$l+108>>2]=am+q[148+cm>>2],q[$l+112>>2]=am+q[152+cm>>2],q[$l+116>>2]=am+q[156+cm>>2],q[$l+120>>2]=am+q[160+cm>>2],q[$l+124>>2]=am+q[164+cm>>2],q[$l+128>>2]=am+q[168+cm>>2],q[$l+132>>2]=am+q[172+cm>>2],q[$l+136>>2]=am+q[176+cm>>2],q[$l+140>>2]=am+q[180+cm>>2],q[$l+168>>2]=am+q[184+cm>>2],q[$l+264>>2]=am+q[188+cm>>2],q[$l+268>>2]=am+q[192+cm>>2],q[$l+272>>2]=am+q[196+cm>>2],q[$l+276>>2]=am+q[200+cm>>2],q[$l+280>>2]=am+q[204+cm>>2],q[$l+284>>2]=am+q[208+cm>>2],q[$l+288>>2]=am+q[212+cm>>2],q[$l+292>>2]=am+q[216+cm>>2],q[$l+296>>2]=am+q[220+cm>>2],q[$l+300>>2]=am+q[224+cm>>2],q[$l+176>>2]=am+q[228+cm>>2],q[$l+184>>2]=am+q[232+cm>>2],q[$l+188>>2]=am+q[236+cm>>2],q[$l+192>>2]=am+q[240+cm>>2],q[$l+196>>2]=am+q[244+cm>>2],q[$l+200>>2]=am+q[248+cm>>2],q[$l+204>>2]=am+q[252+cm>>2],q[$l+208>>2]=am+q[256+cm>>2],q[$l+212>>2]=am+q[260+cm>>2],q[$l+216>>2]=am+q[264+cm>>2],q[$l+220>>2]=am+q[268+cm>>2],q[$l+224>>2]=am+q[272+cm>>2],q[$l+228>>2]=am+q[276+cm>>2],q[$l+232>>2]=am+q[280+cm>>2],q[$l+236>>2]=am+q[284+cm>>2],q[$l+240>>2]=am+q[288+cm>>2],q[$l+244>>2]=am+q[292+cm>>2],q[$l+248>>2]=am+q[296+cm>>2],q[$l+252>>2]=am+q[300+cm>>2],q[$l+256>>2]=am+q[304+cm>>2],q[$l+260>>2]=am+q[308+cm>>2],Il=q[a+704>>2],q[$l+336>>2]=am+q[312+cm>>2],q[$l+424>>2]=am+q[316+cm>>2],q[$l+432>>2]=am+q[320+cm>>2],q[$l+436>>2]=am+q[324+cm>>2],q[$l+440>>2]=am+q[328+cm>>2],Jl=am+q[332+cm>>2]|0,q[$l+444>>2]=Jl,!((0|(dm=q[Il+16>>2]))<1)&&(bm=am+q[336+cm>>2]|0,q[Jl>>2]=bm,(Jl=1)!=(0|dm)))for(Il=0;bm=(15+(q[q[a+892>>2]+(Il<<2)>>2]<<3)&-16)+bm|0,q[q[$l+444>>2]+(Jl<<2)>>2]=bm,(0|dm)!=(0|(Jl=(Il=Jl)+1|0)););if(q[$l+448>>2]=am+q[340+cm>>2],q[$l+452>>2]=am+q[344+cm>>2],q[$l+456>>2]=am+q[348+cm>>2],q[$l+460>>2]=am+q[352+cm>>2],q[$l+464>>2]=am+q[356+cm>>2],q[$l+468>>2]=am+q[360+cm>>2],q[$l+472>>2]=am+q[364+cm>>2],q[$l+476>>2]=am+q[368+cm>>2],q[$l+344>>2]=am+q[372+cm>>2],q[$l+352>>2]=am+q[376+cm>>2],q[$l+356>>2]=am+q[380+cm>>2],q[$l+360>>2]=am+q[384+cm>>2],q[$l+364>>2]=am+q[388+cm>>2],q[$l+368>>2]=am+q[392+cm>>2],q[$l+372>>2]=am+q[396+cm>>2],q[$l+376>>2]=am+q[400+cm>>2],q[$l+380>>2]=am+q[404+cm>>2],q[$l+384>>2]=am+q[408+cm>>2],q[$l+388>>2]=am+q[412+cm>>2],q[$l+392>>2]=am+q[416+cm>>2],q[$l+396>>2]=am+q[420+cm>>2],q[$l+400>>2]=am+q[424+cm>>2],q[$l+404>>2]=am+q[428+cm>>2],q[$l+408>>2]=am+q[432+cm>>2],q[$l+412>>2]=am+q[436+cm>>2],q[$l+416>>2]=am+q[440+cm>>2],q[$l+420>>2]=am+q[444+cm>>2],Il=q[448+cm>>2],Jl=q[452+cm>>2],q[$l+552>>2]=am+q[456+cm>>2],q[$l+548>>2]=Jl+am,q[$l+544>>2]=Il+am,q[$l+560>>2]=am+q[460+cm>>2],Il=q[a+704>>2],gm=am+q[464+cm>>2]|0,q[$l+568>>2]=gm,1<=(0|(fm=q[Il+48>>2])))for(bm=am+q[468+cm>>2]|0,Il=am+q[472+cm>>2]|0,em=am+q[476+cm>>2]|0,hm=q[a+1072>>2],Jl=0;dm=gm+w(Jl,36)|0,q[dm+20>>2]=em,q[dm+16>>2]=Il,q[dm>>2]=bm,bm=((dm=q[hm+(Jl<<2)>>2])<<2)+bm|0,em=(dm=1<<dm<<2)+em|0,Il=Il+dm|0,(0|fm)!=(0|(Jl=Jl+1|0)););if(Il=q[a+704>>2],dm=am+q[516+cm>>2]|0,q[$l+484>>2]=dm,1<=(0|(Il=q[Il+72>>2])))for(bm=am+q[520+cm>>2]|0,em=q[a+1212>>2],Jl=0;q[12+(dm+w(Jl,28)|0)>>2]=bm,bm=(q[em+(Jl<<2)>>2]<<4)+bm|0,(0|Il)!=(0|(Jl=Jl+1|0)););q[$l+488>>2]=am+q[524+cm>>2],q[$l+492>>2]=am+q[528+cm>>2],q[$l+496>>2]=am+q[532+cm>>2],q[$l+504>>2]=am+q[536+cm>>2],q[$l+536>>2]=am+q[540+cm>>2],q[$l+512>>2]=am+q[544+cm>>2],q[$l+520>>2]=am+q[548+cm>>2],q[$l+524>>2]=am+q[552+cm>>2],q[$l+528>>2]=am+q[556+cm>>2],q[$l+532>>2]=am+q[560+cm>>2];c:{if(4<=(fm=r[a+4|0])>>>0){if(q[$l+576>>2]=am+q[480+cm>>2],q[$l+584>>2]=am+q[484+cm>>2],Il=q[a+704>>2],Jl=q[492+cm>>2],dm=am+q[488+cm>>2]|0,q[$l+592>>2]=dm,1<=(0|(Il=q[Il+104>>2])))for(bm=Jl+am|0,em=q[a+1104>>2],Jl=0;q[40+(dm+w(Jl,48)|0)>>2]=bm,bm=(q[em+(Jl<<2)>>2]<<2)+bm|0,(0|Il)!=(0|(Jl=Jl+1|0)););q[$l+608>>2]=am+q[500+cm>>2],q[$l+624>>2]=am+q[508+cm>>2]}else{if(Il=q[572+cm>>2],Jl=q[568+cm>>2],q[$l+636>>2]=am+q[564+cm>>2],q[$l+640>>2]=Jl+am,q[q[a+704>>2]+20>>2]<1)break c;for(dm=Il+am|0,gm=0;;){e:{if((0|(bm=q[(Il=gm<<2)+q[a+952>>2]>>2]))<=0)Il=Il+q[$l+636>>2]|0;else{for(em=bm+(Jl=q[Il+q[a+948>>2]>>2])|0,hm=q[a+1060>>2],bm=0;bm=q[hm+(Jl<<2)>>2]+bm|0,(0|(Jl=Jl+1|0))<(0|em););if(Il=Il+q[$l+636>>2]|0,Jl=dm,bm)break e}Jl=bm=0}if(q[Il>>2]=Jl,dm=(bm<<2)+dm|0,!((0|(gm=gm+1|0))<q[q[a+704>>2]+20>>2]))break}}fm>>>0<5||(q[$l+600>>2]=am+q[496+cm>>2],q[$l+616>>2]=am+q[504+cm>>2],q[$l+632>>2]=am+q[512+cm>>2])}q[$l+644>>2]=1,q[$l>>2]=a,q[$l+648>>2]=1&o[q[a+708>>2]+20|0],am=q[a+704>>2],gm=q[am+20>>2];g:if(!((0|(q[$l+540>>2]=gm))<1)){if(Il=gm+-1|0,hm=q[a+952>>2],im=q[a+940>>2],jm=q[a+932>>2],km=q[a+936>>2],lm=q[a+924>>2],mm=q[a+928>>2],om=q[$l+552>>2],qm=q[$l+544>>2],fm>>>0<4)for(;;)if(Jl=qm+w(Il,52)|0,bm=(dm=Il<<2)+mm|(q[Jl>>2]=0),q[Jl+4>>2]=q[bm>>2],q[Jl+8>>2]=q[(em=dm+lm|0)>>2],u[Jl+12>>2]=u[em>>2]-u[bm>>2],q[Jl+16>>2]=q[dm+km>>2],q[Jl+44>>2]=q[(bm=dm+jm|0)>>2],nm=Aa(x(q[dm+im>>2])),u[Jl+20>>2]=nm,u[Jl+24>>2]=nm*x(1.5),pm=q[dm+hm>>2],em=0,em=(q[Jl+32>>2]=pm)?q[$l+560>>2]+w(q[dm+q[a+948>>2]>>2],28)|0:em,q[Jl+48>>2]=1,q[Jl+28>>2]=em,q[dm+om>>2]=q[bm>>2],Jl=0<(0|Il),Il=Il+-1|0,!Jl)break g;for(pm=q[a+960>>2],sm=q[a+944>>2];Jl=qm+w(Il,52)|0,q[Jl>>2]=q[(bm=Il<<2)+sm>>2],q[Jl+4>>2]=q[(dm=bm+mm|0)>>2],q[Jl+8>>2]=q[(em=bm+lm|0)>>2],u[Jl+12>>2]=u[em>>2]-u[dm>>2],q[Jl+16>>2]=q[bm+km>>2],q[Jl+44>>2]=q[(rm=bm+jm|0)>>2],nm=Aa(x(q[bm+im>>2])),u[Jl+20>>2]=nm,u[Jl+24>>2]=nm*x(1.5),em=q[bm+hm>>2],q[Jl+32>>2]=em,q[Jl+28>>2]=em?q[$l+560>>2]+w(q[bm+q[a+948>>2]>>2],28)|0:0,dm=q[bm+pm>>2],dm=(q[Jl+40>>2]=dm)?q[$l+584>>2]+w(q[bm+q[a+956>>2]>>2],28)|0:0,q[Jl+48>>2]=1,q[Jl+36>>2]=dm,q[bm+om>>2]=q[rm>>2],Jl=0<(0|Il),Il=Il+-1|0,Jl;);}if(4<=fm>>>0?(q[$l+548>>2]=q[a+944>>2],dm=a):(ca(q[$l+548>>2],0,gm<<2),dm=q[$l>>2],am=q[dm+704>>2]),bm=q[am+52>>2],1<=(0|(q[$l+556>>2]=bm)))for(Jl=q[dm+1056>>2],em=q[dm+1192>>2],gm=q[dm+1060>>2],fm=q[$l+560>>2];Il=fm+w(bm=bm+-1|0,28)|0,q[Il>>2]=q[(hm=bm<<2)+gm>>2],hm=q[Jl+hm>>2],q[Il+24>>2]=1,q[Il+16>>2]=0,q[Il+20>>2]=1,q[Il+8>>2]=0,q[Il+12>>2]=0,q[Il+4>>2]=em+(hm<<2),0<(0|bm););if(bm=q[am+48>>2],1<=(0|(q[$l+564>>2]=bm))){for(;;){if(Il=q[$l+568>>2]+w(bm=bm+-1|0,36)|0,em=q[(am=bm<<2)+q[dm+1072>>2]>>2],1<=(0|(q[Il+4>>2]=em)))for(Jl=0;q[q[Il>>2]+(Jl<<2)>>2]=q[$l+560>>2]+w(q[q[dm+1064>>2]+(q[am+q[dm+1068>>2]>>2]+Jl<<2)>>2],28),(0|em)!=(0|(Jl=Jl+1|0)););if(q[Il+24>>2]=1,q[Il+28>>2]=1,q[Il+8>>2]=1<<em,!(0<(0|bm)))break}dm=q[$l>>2],am=q[dm+704>>2]}if(Il=q[am>>2],(0|(q[$l+4>>2]=Il))<1)Jl=0;else{for(hm=q[dm+732>>2],im=q[dm+736>>2],jm=q[dm+740>>2],em=q[dm+720>>2],km=q[$l+52>>2],gm=q[$l+568>>2],lm=q[$l+8>>2],bm=Il;fm=lm+w(bm=bm+-1|0,12)|0,q[fm>>2]=gm+w(q[(Jl=bm<<2)+em>>2],36),q[fm+4>>2]=q[Jl+jm>>2],q[fm+8>>2]=q[Jl+im>>2],u[Jl+km>>2]=q[Jl+hm>>2]?x(1):x(0),0<(0|bm););for(fm=q[$l+16>>2],Jl=0;bm=q[8+(gm+w(q[(hm=(Il=Il+-1|0)<<2)+em>>2],36)|0)>>2],Jl=Jl+(q[fm+hm>>2]=bm)|0,0<(0|Il););Il=q[$l+4>>2]}if(q[$l+12>>2]=Il,q[$l+20>>2]=Jl,Il=q[am+4>>2],1<=(0|(q[$l+304>>2]=Il))){for(;Jl=q[$l+308>>2]+((Il=Il+-1|0)<<5)|0,q[Jl>>2]=q[$l+568>>2]+w(q[(bm=Il<<2)+q[dm+752>>2]>>2],36),q[Jl+4>>2]=q[bm+q[dm+764>>2]>>2],q[Jl+8>>2]=q[bm+q[dm+768>>2]>>2],em=q[bm+q[dm+772>>2]>>2],q[Jl+12>>2]=em,am=q[bm+q[dm+776>>2]>>2],q[Jl+16>>2]=am,q[Jl+28>>2]=q[bm+q[dm+760>>2]>>2],em>>>0<=1?em-1?(q[20+(q[$l+60>>2]+w(am,24)|0)>>2]=Il,q[Jl+24>>2]=1,q[Jl+20>>2]=2):(q[8+(q[$l+168>>2]+w(am,12)|0)>>2]=Il,q[Jl+24>>2]=3,q[Jl+20>>2]=4):Y(4,1179,0),0<(0|Il););dm=q[$l>>2],am=q[dm+704>>2]}bm=q[am+8>>2];k:if(!((0|(q[$l+56>>2]=bm))<1)){if(Jl=bm+-1|0,gm=q[dm+796>>2],fm=q[dm+804>>2],hm=q[dm+800>>2],im=q[dm+780>>2],jm=q[$l+568>>2],km=q[$l+60>>2],r[dm+4|0]<2)for(;;)if(Il=km+w(Jl,24)|0,q[Il>>2]=jm+w(q[(em=Jl<<2)+im>>2],36),q[Il+4>>2]=q[em+hm>>2],q[Il+8>>2]=q[em+fm>>2],em=q[em+gm>>2],q[Il+12>>2]=0,q[Il+16>>2]=em,Il=0<(0|Jl),Jl=Jl+-1|0,!Il)break k;for(lm=q[dm+808>>2];Il=km+w(Jl,24)|0,q[Il>>2]=jm+w(q[(em=Jl<<2)+im>>2],36),q[Il+4>>2]=q[em+hm>>2],q[Il+8>>2]=q[em+fm>>2],q[Il+16>>2]=q[em+gm>>2],q[Il+12>>2]=q[em+lm>>2],Il=0<(0|Jl),Jl=Jl+-1|0,Il;);}if(Jl=q[am+12>>2],1<=(0|(q[$l+164>>2]=Jl)))for(em=q[dm+828>>2],gm=q[dm+812>>2],fm=q[$l+568>>2],hm=q[$l+168>>2],Il=Jl;im=hm+w(Il=Il+-1|0,12)|0,q[im>>2]=fm+w(q[(jm=Il<<2)+gm>>2],36),q[im+4>>2]=q[em+jm>>2],0<(0|Il););if(((Il=0)|bm)<1)em=0;else{for(gm=q[$l+68>>2],fm=q[$l+60>>2],em=0;Jl=q[q[fm+w(bm=bm+-1|0,24)>>2]+8>>2],em=(q[gm+(bm<<2)>>2]=Jl)+em|0,0<(0|bm););Jl=q[$l+164>>2],bm=q[$l+56>>2]}if(q[$l+64>>2]=bm,q[$l+72>>2]=em,bm=$l,1<=(0|Jl)){for(gm=q[$l+176>>2],fm=q[$l+168>>2];em=q[q[fm+w(Jl=Jl+-1|0,12)>>2]+8>>2],Il=Il+(q[gm+(Jl<<2)>>2]=em)|0,0<(0|Jl););Jl=q[$l+164>>2]}if(q[bm+172>>2]=Jl,q[$l+180>>2]=Il,em=q[am+16>>2],1<=(0|(q[$l+332>>2]=em))){for(hm=q[dm+872>>2],im=q[dm+892>>2],jm=q[dm+880>>2],km=q[dm+876>>2],gm=q[dm+852>>2],fm=q[$l+568>>2],lm=q[$l+336>>2],Il=em;Jl=lm+w(Il=Il+-1|0,20)|0,q[Jl>>2]=fm+w(q[(bm=Il<<2)+gm>>2],36),q[Jl+4>>2]=q[bm+km>>2],q[Jl+8>>2]=q[bm+jm>>2],q[Jl+16>>2]=q[bm+im>>2],q[Jl+12>>2]=q[bm+hm>>2],0<(0|Il););for(bm=q[$l+344>>2],Jl=0;Il=q[8+(fm+w(q[(hm=(em=em+-1|0)<<2)+gm>>2],36)|0)>>2],Jl=(q[bm+hm>>2]=Il)+Jl|0,0<(0|em););if(q[$l+348>>2]=Jl,em=q[$l+332>>2],!((0|(q[$l+340>>2]=em))<1))for(Jl=em<<2,bm=q[$l+456>>2],gm=q[$l+452>>2];q[(fm=(Il=Jl+-4|0)<<2)+gm>>2]=1065353216,q[(hm=(Jl<<=2)-4|0)+gm>>2]=1065353216,q[(im=(Jl=Jl+-12|0)+gm|0)>>2]=1065353216,q[im+4>>2]=1065353216,q[bm+fm>>2]=0,q[bm+hm>>2]=1065353216,q[(Jl=Jl+bm|0)>>2]=0,q[Jl+4>>2]=0,Jl=Il,0<(0|(em=em+-1|0)););}else q[$l+340>>2]=em,q[$l+348>>2]=0;if(em=q[am+72>>2],1<=(0|(q[$l+480>>2]=em)))for(hm=q[dm+1208>>2],im=q[dm+1224>>2],jm=q[dm+1220>>2],km=q[dm+1216>>2],lm=q[dm+1212>>2],mm=q[$l+484>>2],bm=0;;){if(Il=mm+w(bm,28)|0,gm=q[(Jl=bm<<2)+lm>>2],q[Il+4>>2]=gm,q[Il>>2]=q[Jl+km>>2],fm=q[Jl+jm>>2],q[Il+16>>2]=fm,om=q[Jl+im>>2],q[Il+20>>2]=om,q[Il+8>>2]=0,q[Il+24>>2]=1+(fm-om|0),1<=(0|gm))for(om=q[Jl+hm>>2],qm=q[Il+12>>2],pm=q[dm+1236>>2],sm=q[dm+1228>>2],rm=q[dm+1232>>2],Jl=0;q[4+(Il=qm+(Jl<<4)|0)>>2]=q[(fm=Jl+om<<2)+rm>>2],q[Il>>2]=q[fm+sm>>2],fm=q[fm+pm>>2],q[Il+12>>2]=0,q[Il+8>>2]=fm,(0|gm)!=(0|(Jl=Jl+1|0)););if((0|em)==(0|(bm=bm+1|0)))break}if(Jl=q[am+80>>2],(0|(q[$l+500>>2]=Jl))<1)bm=0;else{for(fm=q[dm+1280>>2],hm=q[dm+1268>>2],im=q[dm+1276>>2],jm=q[dm+1272>>2],km=q[dm+1264>>2],lm=q[dm+1260>>2],em=q[dm+1248>>2],gm=q[$l+568>>2],mm=q[$l+504>>2];Il=mm+w(Jl=Jl+-1|0,24)|0,q[Il>>2]=gm+w(q[(bm=Jl<<2)+em>>2],36),q[Il+4>>2]=q[bm+lm>>2],q[Il+8>>2]=q[bm+km>>2],q[Il+12>>2]=q[bm+jm>>2],bm=q[bm+hm>>2],q[Il+20>>2]=fm+(bm<<1),q[Il+16>>2]=im+(bm<<2),0<(0|Jl););if((0|(Jl=q[$l+500>>2]))<1)bm=0;else{for(fm=q[$l+512>>2],bm=0;Il=q[8+(gm+w(q[(hm=(Jl=Jl+-1|0)<<2)+em>>2],36)|0)>>2],bm=(q[fm+hm>>2]=Il)+bm|0,0<(0|Jl););Jl=q[$l+500>>2]}}q[$l+508>>2]=Jl,q[$l+516>>2]=bm;o:if(4<=r[a+4|0]){if(!((em=r[dm+4|0])>>>0<4)){if(Jl=q[am+120>>2],1<=(0|(q[$l+572>>2]=Jl))){for(fm=q[dm+1172>>2],hm=q[$l+576>>2];em=(0|(am=q[(Il=(Jl=Jl+-1|0)<<2)+fm>>2]))<0?am=gm=bm=0:(bm=(em=q[Il+q[dm+1176>>2]>>2]<<2)+q[dm+1188>>2]|0,gm=q[Il+q[dm+1180>>2]>>2],am=q[$l+544>>2]+w(am,52)|0,em+q[dm+1184>>2]|0),Il=hm+w(Jl,20)|0,q[Il+12>>2]=gm,q[Il+8>>2]=bm,q[Il+4>>2]=em,q[Il>>2]=am,0<(0|Jl););if(dm=q[$l>>2],(em=r[dm+4|0])>>>0<4)break o}if(am=q[dm+704>>2],bm=q[am+100>>2],1<=(0|(q[$l+580>>2]=bm)))for(gm=q[dm+1084>>2],fm=q[dm+1076>>2],hm=q[dm+1192>>2],im=q[dm+1080>>2],jm=q[$l+584>>2];Il=jm+w(bm=bm+-1|0,28)|0,q[Il>>2]=q[(Jl=bm<<2)+im>>2],q[Il+4>>2]=hm+(q[Jl+fm>>2]<<2),Jl=q[Jl+gm>>2],q[Il+20>>2]=1,q[Il+24>>2]=1,q[Il+12>>2]=0,q[Il+16>>2]=0,q[Il+8>>2]=Jl,0<(0|bm););if(bm=q[am+104>>2],1<=(0|(q[$l+588>>2]=bm))){for(;;){if(Il=q[$l+592>>2]+w(bm=bm+-1|0,48)|0,q[Il>>2]=q[$l+584>>2]+w(q[(em=bm<<2)+q[dm+1088>>2]>>2],28),Jl=q[em+q[dm+1092>>2]>>2],q[Il+28>>2]=1,q[Il+32>>2]=1,q[Il+8>>2]=0,q[Il+4>>2]=Jl,am=q[em+q[dm+1104>>2]>>2],1<=(0|(q[Il+36>>2]=am)))for(Jl=0;q[q[Il+40>>2]+(Jl<<2)>>2]=q[$l+576>>2]+w(q[q[dm+1168>>2]+(q[em+q[dm+1100>>2]>>2]+Jl<<2)>>2],20),(0|am)!=(0|(Jl=Jl+1|0)););if(!(1<=(0|bm)))break}dm=q[$l>>2],em=r[dm+4|0]}if(!(em>>>0<4)){if(em=q[a+704>>2],Jl=q[em+108>>2],1<=(0|(q[$l+604>>2]=Jl)))for(am=q[a+1124>>2],gm=q[a+1128>>2],fm=q[a+1120>>2],hm=q[$l+592>>2],im=q[$l+608>>2];Il=im+w(Jl=Jl+-1|0,12)|0,q[Il>>2]=q[(bm=Jl<<2)+fm>>2],q[Il+4>>2]=q[bm+gm>>2],q[Il+8>>2]=hm+w(q[am+bm>>2],48),0<(0|Jl););if(Jl=q[em+112>>2],1<=(0|(q[$l+620>>2]=Jl)))for(em=q[a+1148>>2],am=q[a+1152>>2],gm=q[a+1144>>2],fm=q[$l+592>>2],hm=q[$l+624>>2];Il=hm+w(Jl=Jl+-1|0,12)|0,q[Il>>2]=q[(bm=Jl<<2)+gm>>2],q[Il+4>>2]=q[am+bm>>2],q[Il+8>>2]=fm+w(q[bm+em>>2],48),0<(0|Jl););if(bm=q[dm+1192>>2],Il=q[q[dm+704>>2]+20>>2],q[$l+640>>2]=q[dm+972>>2],em=q[dm+964>>2],q[$l+636>>2]=em,!((0|Il)<(Jl=1))&&(q[em>>2]=bm+(q[q[dm+968>>2]>>2]<<2),1!=(0|Il)))for(;q[(em=Jl<<2)+q[$l+636>>2]>>2]=bm+(q[em+q[dm+968>>2]>>2]<<2),(0|Il)!=(0|(Jl=Jl+1|0)););}}}else if(!(q[am+20>>2]<1))for(am=0;;){if(bm=q[(gm=am<<2)+q[$l+636>>2]>>2],1<=((Il=0)|(Jl=q[gm+q[dm+952>>2]>>2])))for(im=Jl+(fm=q[gm+q[dm+948>>2]>>2])|0,jm=q[dm+1060>>2],km=q[dm+1056>>2];;){if(1<=(0|(hm=q[(Jl=fm<<2)+jm>>2])))for(lm=hm+(em=q[Jl+km>>2])|0,mm=q[dm+1192>>2];;){hm=bm+(Il<<2)|0,nm=u[mm+(em<<2)>>2],Jl=bm;q:{if(0<(0|Il))for(;;){if(u[Jl>>2]==nm)break q;if(!((Jl=Jl+4|0)>>>0<hm>>>0))break}u[hm>>2]=nm,Il=Il+1|0}if(!((0|(em=em+1|0))<(0|lm)))break}if(!((0|(fm=fm+1|0))<(0|im)))break}if(function(a,Sm){var un,Kn,xn=0,yn=0,Jn=0;q[8+(L=un=L-208|0)>>2]=1,q[12+un>>2]=0;a:if(Kn=Sm<<2){for(q[16+un>>2]=4,Jn=Sm=q[20+un>>2]=4,xn=2;Sm=(Jn+4|0)+(yn=Sm)|0,q[(16+un|0)+(xn<<2)>>2]=Sm,xn=xn+1|0,Jn=yn,Sm>>>0<Kn>>>0;);if((yn=(a+Kn|0)-4|0)>>>0<=a>>>0)Sm=xn=1;else for(Sm=xn=1;Sm=3==(3&xn)?(ta(a,Sm,16+un|0),ma(8+un|0,2),Sm+2|0):(t[(16+un|0)+((Jn=Sm+-1|0)<<2)>>2]>=yn-a>>>0?la(a,8+un|0,Sm,0,16+un|0):ta(a,Sm,16+un|0),1==(0|Sm)?(ka(8+un|0,1),0):(ka(8+un|0,Jn),1)),xn=1|q[8+un>>2],q[8+un>>2]=xn,(a=a+4|0)>>>0<yn>>>0;);for(la(a,8+un|0,Sm,0,16+un|0);;){e:{f:{g:{if(!(1!=(0|Sm)|1!=(0|xn))){if(q[12+un>>2])break g;break a}if(1<(0|Sm))break f}ma(8+un|0,yn=Oa(8+un|0)),xn=q[8+un>>2],Sm=Sm+yn|0;break e}ka(8+un|0,2),q[8+un>>2]=7^q[8+un>>2],ma(8+un|0,1),la((Jn=a+-4|0)-q[(16+un|0)+((yn=Sm+-2|0)<<2)>>2]|0,8+un|0,Sm+-1|0,1,16+un|0),ka(8+un|0,1),xn=1|q[8+un>>2],q[8+un>>2]=xn,la(Jn,8+un|0,yn,1,16+un|0),Sm=yn}a=a+-4|0}}L=208+un|0}(bm,Il),q[gm+q[$l+640>>2]>>2]=Il,!((0|(am=am+1|0))<q[q[dm+704>>2]+20>>2]))break}if(!(r[a+4|0]<5|r[q[$l>>2]+4|0]<4)){if(Il=q[a+704>>2],Jl=q[Il+128>>2],1<=(0|(q[$l+596>>2]=Jl)))for(em=q[a+1112>>2],am=q[a+1116>>2],gm=q[a+1108>>2],fm=q[$l+592>>2],hm=q[$l+600>>2];dm=hm+w(Jl=Jl+-1|0,12)|0,q[dm>>2]=q[(bm=Jl<<2)+gm>>2],q[dm+4>>2]=q[am+bm>>2],q[dm+8>>2]=fm+w(q[bm+em>>2],48),0<(0|Jl););if(Jl=q[Il+132>>2],1<=(0|(q[$l+612>>2]=Jl)))for(em=q[a+1136>>2],am=q[a+1140>>2],gm=q[a+1132>>2],fm=q[$l+592>>2],hm=q[$l+616>>2];dm=hm+w(Jl=Jl+-1|0,12)|0,q[dm>>2]=q[(bm=Jl<<2)+gm>>2],q[dm+4>>2]=q[am+bm>>2],q[dm+8>>2]=fm+w(q[bm+em>>2],48),0<(0|Jl););if(Jl=q[Il+136>>2],!((0|(q[$l+628>>2]=Jl))<1))for(dm=q[a+1160>>2],bm=q[a+1164>>2],em=q[a+1156>>2],am=q[$l+592>>2],gm=q[$l+632>>2];a=gm+w(Jl=Jl+-1|0,12)|0,q[a>>2]=q[(Il=Jl<<2)+em>>2],q[a+4>>2]=q[Il+bm>>2],q[a+8>>2]=am+w(q[Il+dm>>2],48),0<(0|Jl););}ua($l)}return L=576+cm|0,$l}(a,Wa,Xa))break a;q[36+Ya>>2]=2209,q[32+Ya>>2]=2361,Y(4,1294,32+Ya|0)}else q[20+Ya>>2]=1444,q[16+Ya>>2]=2361,Y(4,1294,16+Ya|0);else q[4+Ya>>2]=2132,q[Ya>>2]=2361,Y(4,1294,Ya);Wa=0}return L=64+Ya|0,0|Wa}function xa(a){var Wa;return L=Wa=L-16|0,a=(a|=0)?function(a){var Il;return ca(16+(L=Il=L-576|0)|0,0,560),Fa(a,16+Il|0,12+Il|0),L=576+Il|0,q[12+Il>>2]}(a):(q[4+Wa>>2]=2132,q[Wa>>2]=2343,Y(4,1294,Wa),0),L=16+Wa|0,0|a}function ya(a){var Xa=r[a+4|0];X(q[a+704>>2],4,64),da(q[a+708>>2],4),da(q[a+708>>2]+4|0,4),da(q[a+708>>2]+8|0,4),da(q[a+708>>2]+12|0,4),da(q[a+708>>2]+16|0,4),da(q[a+708>>2]+20|0,1),X(q[a+720>>2],4,q[q[a+704>>2]>>2]),X(q[a+724>>2],4,q[q[a+704>>2]>>2]),X(q[a+728>>2],4,q[q[a+704>>2]>>2]),X(q[a+732>>2],4,q[q[a+704>>2]>>2]),X(q[a+736>>2],4,q[q[a+704>>2]>>2]),X(q[a+740>>2],4,q[q[a+704>>2]>>2]),X(q[a+752>>2],4,q[q[a+704>>2]+4>>2]),X(q[a+756>>2],4,q[q[a+704>>2]+4>>2]),X(q[a+760>>2],4,q[q[a+704>>2]+4>>2]),X(q[a+764>>2],4,q[q[a+704>>2]+4>>2]),X(q[a+768>>2],4,q[q[a+704>>2]+4>>2]),X(q[a+772>>2],4,q[q[a+704>>2]+4>>2]),X(q[a+776>>2],4,q[q[a+704>>2]+4>>2]),X(q[a+780>>2],4,q[q[a+704>>2]+8>>2]),X(q[a+784>>2],4,q[q[a+704>>2]+8>>2]),X(q[a+788>>2],4,q[q[a+704>>2]+8>>2]),X(q[a+796>>2],4,q[q[a+704>>2]+8>>2]),X(q[a+800>>2],4,q[q[a+704>>2]+8>>2]),X(q[a+804>>2],4,q[q[a+704>>2]+8>>2]),X(q[a+812>>2],4,q[q[a+704>>2]+12>>2]),X(q[a+816>>2],4,q[q[a+704>>2]+12>>2]),X(q[a+820>>2],4,q[q[a+704>>2]+12>>2]),X(q[a+828>>2],4,q[q[a+704>>2]+12>>2]),X(q[a+852>>2],4,q[q[a+704>>2]+16>>2]),X(q[a+856>>2],4,q[q[a+704>>2]+16>>2]),X(q[a+860>>2],4,q[q[a+704>>2]+16>>2]),X(q[a+868>>2],4,q[q[a+704>>2]+16>>2]),X(q[a+872>>2],4,q[q[a+704>>2]+16>>2]),X(q[a+876>>2],4,q[q[a+704>>2]+16>>2]),X(q[a+880>>2],4,q[q[a+704>>2]+16>>2]),X(q[a+884>>2],4,q[q[a+704>>2]+16>>2]),X(q[a+888>>2],1,q[q[a+704>>2]+16>>2]),X(q[a+892>>2],4,q[q[a+704>>2]+16>>2]),X(q[a+896>>2],4,q[q[a+704>>2]+16>>2]),X(q[a+900>>2],4,q[q[a+704>>2]+16>>2]),X(q[a+904>>2],4,q[q[a+704>>2]+16>>2]),X(q[a+908>>2],4,q[q[a+704>>2]+16>>2]),X(q[a+912>>2],4,q[q[a+704>>2]+16>>2]),X(q[a+924>>2],4,q[q[a+704>>2]+20>>2]),X(q[a+928>>2],4,q[q[a+704>>2]+20>>2]),X(q[a+932>>2],4,q[q[a+704>>2]+20>>2]),X(q[a+936>>2],4,q[q[a+704>>2]+20>>2]),X(q[a+940>>2],4,q[q[a+704>>2]+20>>2]),X(q[a+948>>2],4,q[q[a+704>>2]+20>>2]),X(q[a+952>>2],4,q[q[a+704>>2]+20>>2]),X(q[a+976>>2],4,q[q[a+704>>2]+24>>2]),X(q[a+980>>2],4,q[q[a+704>>2]+28>>2]),X(q[a+984>>2],4,q[q[a+704>>2]+28>>2]),X(q[a+996>>2],4,q[q[a+704>>2]+32>>2]),X(q[a+1e3>>2],4,q[q[a+704>>2]+32>>2]),X(q[a+1004>>2],4,q[q[a+704>>2]+32>>2]),X(q[a+1008>>2],4,q[q[a+704>>2]+32>>2]),X(q[a+1012>>2],4,q[q[a+704>>2]+32>>2]),X(q[a+1016>>2],4,q[q[a+704>>2]+32>>2]),X(q[a+1020>>2],4,q[q[a+704>>2]+32>>2]),X(q[a+1032>>2],4,q[q[a+704>>2]+36>>2]),X(q[a+1036>>2],4,q[q[a+704>>2]+36>>2]),X(q[a+1040>>2],4,q[q[a+704>>2]+36>>2]),X(q[a+1052>>2],4,q[q[a+704>>2]+40>>2]),X(q[a+1064>>2],4,q[q[a+704>>2]+44>>2]),X(q[a+1068>>2],4,q[q[a+704>>2]+48>>2]),X(q[a+1072>>2],4,q[q[a+704>>2]+48>>2]),X(q[a+1056>>2],4,q[q[a+704>>2]+52>>2]),X(q[a+1060>>2],4,q[q[a+704>>2]+52>>2]),X(q[a+1192>>2],4,q[q[a+704>>2]+56>>2]),X(q[a+1196>>2],4,q[q[a+704>>2]+60>>2]),X(q[a+1200>>2],2,q[q[a+704>>2]+64>>2]),X(q[a+1204>>2],4,q[q[a+704>>2]+68>>2]),X(q[a+1208>>2],4,q[q[a+704>>2]+72>>2]),X(q[a+1212>>2],4,q[q[a+704>>2]+72>>2]),X(q[a+1216>>2],4,q[q[a+704>>2]+72>>2]),X(q[a+1220>>2],4,q[q[a+704>>2]+72>>2]),X(q[a+1224>>2],4,q[q[a+704>>2]+72>>2]),X(q[a+1228>>2],4,q[q[a+704>>2]+76>>2]),X(q[a+1232>>2],4,q[q[a+704>>2]+76>>2]),X(q[a+1236>>2],4,q[q[a+704>>2]+76>>2]),X(q[a+1248>>2],4,q[q[a+704>>2]+80>>2]),X(q[a+1252>>2],4,q[q[a+704>>2]+80>>2]),X(q[a+1256>>2],4,q[q[a+704>>2]+80>>2]),X(q[a+1260>>2],4,q[q[a+704>>2]+80>>2]),X(q[a+1264>>2],4,q[q[a+704>>2]+80>>2]),X(q[a+1268>>2],4,q[q[a+704>>2]+80>>2]),X(q[a+1272>>2],4,q[q[a+704>>2]+80>>2]),X(q[a+1276>>2],4,q[q[a+704>>2]+84>>2]),X(q[a+1280>>2],2,q[q[a+704>>2]+84>>2]),X(q[a+1284>>2],4,q[q[a+704>>2]+88>>2]),Xa>>>0<2||(X(q[a+808>>2],4,q[q[a+704>>2]+8>>2]),Xa>>>0<4)||(X(q[a+968>>2],4,q[q[a+704>>2]+20>>2]),X(q[a+972>>2],4,q[q[a+704>>2]+20>>2]),X(q[a+792>>2],4,q[q[a+704>>2]+8>>2]),X(q[a+824>>2],4,q[q[a+704>>2]+12>>2]),X(q[a+864>>2],4,q[q[a+704>>2]+16>>2]),X(q[a+1288>>2],4,q[q[a+704>>2]+92>>2]),X(q[a+1292>>2],4,q[q[a+704>>2]+92>>2]),X(q[a+1296>>2],4,q[q[a+704>>2]+92>>2]),X(q[a+1300>>2],4,q[q[a+704>>2]+96>>2]),X(q[a+1304>>2],4,q[q[a+704>>2]+96>>2]),X(q[a+1308>>2],4,q[q[a+704>>2]+96>>2]),X(q[a+944>>2],4,q[q[a+704>>2]+20>>2]),X(q[a+956>>2],4,q[q[a+704>>2]+20>>2]),X(q[a+960>>2],4,q[q[a+704>>2]+20>>2]),X(q[a+1076>>2],4,q[q[a+704>>2]+100>>2]),X(q[a+1080>>2],4,q[q[a+704>>2]+100>>2]),X(q[a+1084>>2],4,q[q[a+704>>2]+100>>2]),X(q[a+1088>>2],4,q[q[a+704>>2]+104>>2]),X(q[a+1092>>2],4,q[q[a+704>>2]+104>>2]),X(q[a+1096>>2],4,q[q[a+704>>2]+104>>2]),X(q[a+1100>>2],4,q[q[a+704>>2]+104>>2]),X(q[a+1104>>2],4,q[q[a+704>>2]+104>>2]),X(q[a+1120>>2],4,q[q[a+704>>2]+108>>2]),X(q[a+1124>>2],4,q[q[a+704>>2]+108>>2]),X(q[a+1128>>2],4,q[q[a+704>>2]+108>>2]),X(q[a+1144>>2],4,q[q[a+704>>2]+112>>2]),X(q[a+1148>>2],4,q[q[a+704>>2]+112>>2]),X(q[a+1152>>2],4,q[q[a+704>>2]+112>>2]),X(q[a+1168>>2],4,q[q[a+704>>2]+116>>2]),X(q[a+1172>>2],4,q[q[a+704>>2]+120>>2]),X(q[a+1176>>2],4,q[q[a+704>>2]+120>>2]),X(q[a+1180>>2],4,q[q[a+704>>2]+120>>2]),X(q[a+1184>>2],4,q[q[a+704>>2]+124>>2]),X(q[a+1188>>2],4,q[q[a+704>>2]+124>>2]),4!=(0|Xa)&&(X(q[a+988>>2],4,q[q[a+704>>2]+28>>2]),X(q[a+992>>2],4,q[q[a+704>>2]+28>>2]),X(q[a+1024>>2],4,q[q[a+704>>2]+32>>2]),X(q[a+1028>>2],4,q[q[a+704>>2]+32>>2]),X(q[a+1044>>2],4,q[q[a+704>>2]+36>>2]),X(q[a+1048>>2],4,q[q[a+704>>2]+36>>2]),X(q[a+1108>>2],4,q[q[a+704>>2]+128>>2]),X(q[a+1112>>2],4,q[q[a+704>>2]+128>>2]),X(q[a+1116>>2],4,q[q[a+704>>2]+128>>2]),X(q[a+1132>>2],4,q[q[a+704>>2]+132>>2]),X(q[a+1136>>2],4,q[q[a+704>>2]+132>>2]),X(q[a+1140>>2],4,q[q[a+704>>2]+132>>2]),X(q[a+1156>>2],4,q[q[a+704>>2]+136>>2]),X(q[a+1160>>2],4,q[q[a+704>>2]+136>>2]),X(q[a+1164>>2],4,q[q[a+704>>2]+136>>2])))}function za(a,Za){var _a=0,lb=0,mb=0,ob=0,pb=0,rb=0,nb=a+Za|0;a:{b:if(!(1&(_a=q[a+4>>2]))){if(!(3&_a))break a;if(Za=(_a=q[a>>2])+Za|0,(0|(a=a-_a|0))!=q[2092])if(_a>>>0<=255)mb=_a>>>3,_a=q[a+8>>2],(0|(lb=q[a+12>>2]))==(0|_a)?(rb=q[2087]&dd(mb),q[2087]=rb):(q[_a+12>>2]=lb,q[lb+8>>2]=_a);else{if(pb=q[a+24>>2],(0|(_a=q[a+12>>2]))!=(0|a))lb=q[a+8>>2],q[lb+12>>2]=_a,q[_a+8>>2]=lb;else if(mb=(mb=q[(lb=a+20|0)>>2])||q[(lb=a+16|0)>>2]){for(;ob=lb,(mb=q[(lb=(_a=mb)+20|0)>>2])||(lb=_a+16|0,mb=q[_a+16>>2]););q[ob>>2]=0}else _a=0;if(pb){lb=q[a+28>>2];e:{if(q[(mb=8652+(lb<<2)|0)>>2]==(0|a)){if(q[mb>>2]=_a)break e;rb=q[2088]&dd(lb),q[2088]=rb;break b}if(!(q[pb+(q[pb+16>>2]==(0|a)?16:20)>>2]=_a))break b}q[_a+24>>2]=pb,(lb=q[a+16>>2])&&(q[_a+16>>2]=lb,q[lb+24>>2]=_a),(lb=q[a+20>>2])&&(q[_a+20>>2]=lb,q[lb+24>>2]=_a)}}else if(3==(3&(_a=q[4+nb>>2])))return q[2089]=Za,q[4+nb>>2]=-2&_a,q[a+4>>2]=1|Za,q[nb>>2]=Za}f:{if(!(2&(_a=q[4+nb>>2]))){if(q[2093]==(0|nb)){if(q[2093]=a,Za=q[2090]+Za|0,q[2090]=Za,q[a+4>>2]=1|Za,q[2092]!=(0|a))break a;return q[2089]=0,q[2092]=0}if(q[2092]==(0|nb))return q[2092]=a,Za=q[2089]+Za|0,q[2089]=Za,q[a+4>>2]=1|Za,q[a+Za>>2]=Za;Za=(-8&_a)+Za|0;g:if(_a>>>0<=255)mb=_a>>>3,_a=q[8+nb>>2],(0|(lb=q[12+nb>>2]))==(0|_a)?(rb=q[2087]&dd(mb),q[2087]=rb):(q[_a+12>>2]=lb,q[lb+8>>2]=_a);else{if(pb=q[24+nb>>2],(0|nb)!=(0|(_a=q[12+nb>>2])))lb=q[8+nb>>2],q[lb+12>>2]=_a,q[_a+8>>2]=lb;else if(mb=(mb=q[(lb=20+nb|0)>>2])||q[(lb=16+nb|0)>>2]){for(;ob=lb,(mb=q[(lb=(_a=mb)+20|0)>>2])||(lb=_a+16|0,mb=q[_a+16>>2]););q[ob>>2]=0}else _a=0;if(pb){lb=q[28+nb>>2];j:{if(q[(mb=8652+(lb<<2)|0)>>2]==(0|nb)){if(q[mb>>2]=_a)break j;rb=q[2088]&dd(lb),q[2088]=rb;break g}if(!(q[pb+(q[pb+16>>2]==(0|nb)?16:20)>>2]=_a))break g}q[_a+24>>2]=pb,(lb=q[16+nb>>2])&&(q[_a+16>>2]=lb,q[lb+24>>2]=_a),(lb=q[20+nb>>2])&&(q[_a+20>>2]=lb,q[lb+24>>2]=_a)}}if(q[a+4>>2]=1|Za,q[a+Za>>2]=Za,q[2092]!=(0|a))break f;return q[2089]=Za}q[4+nb>>2]=-2&_a,q[a+4>>2]=1|Za,q[a+Za>>2]=Za}if(Za>>>0<=255)return Za=8388+((_a=Za>>>3)<<3)|0,_a=(lb=q[2087])&(_a=1<<_a)?q[Za+8>>2]:(q[2087]=_a|lb,Za),q[Za+8>>2]=a,q[_a+12>>2]=a,q[a+12>>2]=Za,q[a+8>>2]=_a;q[a+16>>2]=0,_a=q[a+20>>2]=0,(mb=Za>>>8)&&(_a=31,16777215<Za>>>0||(_a=28+((_a=((nb=(mb<<=ob=mb+1048320>>>16&8)<<(_a=mb+520192>>>16&4))<<(mb=245760+nb>>>16&2)>>>15)-(mb|_a|ob)|0)<<1|Za>>>_a+21&1)|0)),mb=8652+((q[(lb=a)+28>>2]=_a)<<2)|0;m:{if((lb=q[2088])&(ob=1<<_a)){for(lb=Za<<(31==(0|_a)?0:25-(_a>>>1)|0),_a=q[mb>>2];;){if((-8&q[(mb=_a)+4>>2])==(0|Za))break m;if(_a=lb>>>29,lb<<=1,!(_a=q[16+(ob=mb+(4&_a)|0)>>2]))break}q[ob+16>>2]=a}else q[2088]=lb|ob,q[mb>>2]=a;return q[a+24>>2]=mb,q[a+12>>2]=a,q[a+8>>2]=a}Za=q[mb+8>>2],q[Za+12>>2]=a,q[mb+8>>2]=a,q[a+24>>2]=0,q[a+12>>2]=mb,q[a+8>>2]=Za}}function Aa(a){var vb,xb,yb,Ab,Bb,Cb,sb,wb,Za=x(0),tb=(x(0),0),ub=0,zb=(x(0),x(0),x(0),x(0),0);x(0),x(0);a:{b:{if(j(a),ub=2147483647&(tb=b[0])){if(!(ub>>>0<2139095041))return x(x(.10000000149011612)+a);if(1065353216==(0|ub))return x(-1<(0|tb)?.10000000149011612:10);if(2139095040==(0|ub))return x(-1<(0|tb)?0:-a);if(1073741824==(0|tb))return x(.010000000707805157);if(1056964608==(0|tb))return x(.3162277638912201);if(1291845633<=ub>>>0)return x((0|tb)<0?H:0);if(vb=u[1701],wb=x(x(1.600000023841858)-vb),xb=x(x(1)/x(vb+x(1.600000023841858))),f(0,-4096&(j(sb=x(wb*xb)),b[0])),Za=k(),yb=x(Za*Za),Bb=u[1705],vb=x(xb*x(x(wb-x((Ab=Za)*x(3.099609375)))-x(Za*x(x(1.600000023841858)-x(x(3.099609375)-vb))))),xb=x(x(sb+Za)*vb),Za=x(sb*sb),wb=x(xb+x(x(Za*Za)*x(x(Za*x(x(Za*x(x(Za*x(x(Za*x(x(Za*x(.20697501301765442))+x(.23066075146198273)))+x(.2727281153202057)))+x(.3333333432674408)))+x(.4285714328289032)))+x(.6000000238418579)))),f(0,-4096&(j(x(x(yb+x(3))+wb)),b[0])),Za=k(),xb=x(Ab*Za),sb=x(x(vb*Za)+x(sb*x(wb-x(x(Za+x(-3))-yb)))),f(0,-4096&(j(x(xb+sb)),b[0])),Za=k(),vb=x(Za*x(.9619140625)),yb=x(u[1703]+x(x(x(sb-x(Za-xb))*x(.9617967009544373))+x(Za*x(-.00011736857413779944)))),f(0,-4096&(j(x(x(Bb+x(vb+yb))+x(-4))),b[0])),sb=k(),f(0,-4096&tb),wb=k(),Za=x(sb*wb),a=x(x(x(yb-x(x(x(sb-x(-4))-Bb)-vb))*a)+x(x(a-wb)*sb)),j(sb=x(Za+a)),1124073473<=(0|(tb=b[0])))break b;d:{if((ub=1124073472)==(0|tb)){if(x(a+x(4.299566569443414e-8))>x(sb-Za))break b}else{if(ub=2147483647&tb,!(a<=x(sb-Za)^1|-1021968384!=(0|tb))|1125515265<=ub>>>0)break a;if(ub>>>0<1056964609)break d}zb=(8388607&(ub=(8388608>>>(ub>>>23)-126)+tb|0)|8388608)>>>150-(Cb=ub>>>23&255),zb=(0|tb)<0?0-zb|0:zb,Za=x(Za-(f(0,ub&-8388608>>Cb-127),k())),j(x(a+Za)),tb=b[0]}f(0,-32768&tb),sb=k(),vb=x(sb*x(.693145751953125)),sb=x(x(sb*x(14286065379565116e-22))+x(x(a-x(sb-Za))*x(.6931471824645996))),a=x(vb+sb),Za=x(a*a),Za=x(a-x(Za*x(x(Za*x(x(Za*x(x(Za*x(x(Za*x(4.138136944220605e-8))+x(-16533901998627698e-22)))+x(661375597701408e-19)))+x(-.0027777778450399637)))+x(.1666666716337204)))),Ab=x(x(a*Za)/x(Za+x(-2))),Za=x(sb-x(a-vb)),a=(0|(tb=0|(j(a=x(x(a-x(Ab-x(Za+x(a*Za))))+x(1))),b[0]+(zb<<23))))<=8388607?function(a,Vk){var zl=0;return 128<=(0|Vk)?(a=x(a*x(17014118346046923e22)),Vk=(0|(zl=Vk+-127|0))<128?zl:(a=x(a*x(17014118346046923e22)),((0|Vk)<381?Vk:381)+-254|0)):-127<(0|Vk)||(a=x(a*x(11754943508222875e-54)),Vk=-127<(0|(zl=Vk+126|0))?zl:(a=x(a*x(11754943508222875e-54)),(-378<(0|Vk)?Vk:-378)+252|0)),x(a*(f(0,1065353216+(Vk<<23)|0),k()))}(a,zb):(f(0,tb),k()),a=x(x(1)*a)}else a=x(1);return a}return x(H)}return x(0)}function Ba(a,Db){var Jb,Eb,Gb,Fb=0,Hb=0,Ib=x(0);if(j(Db),!((Gb=2147483647&(Eb=b[0]))>>>0<=2139095040&&(j(a),(Fb=2147483647&(Hb=b[0]))>>>0<2139095041)))return x(a+Db);if(1065353216==(0|Eb))return Ca(a);Eb=(Jb=Eb>>>30&2)|Hb>>>31;b:{c:{d:{e:{if(!Fb){switch(Eb-2|0){case 0:break e;case 1:break;default:break d}return x(-3.1415927410125732)}if(2139095040!=(0|Gb)){if(!Gb|!(Fb>>>0<=218103808+Gb>>>0&&2139095040!=(0|Fb)))break b;if(a=Ib=Fb+218103808>>>0<Gb>>>0&&(Ib=x(0),Jb)?Ib:Ca(x(y(x(a/Db)))),Eb>>>0<=2){switch(Eb-1|0){case 0:return x(-a);case 1:break;default:break d}return x(x(3.1415927410125732)-x(a+x(8.742277657347586e-8)))}return x(x(a+x(8.742277657347586e-8))+x(-3.1415927410125732))}if(2139095040==(0|Fb))break c;return u[6784+(Eb<<2)>>2]}a=x(3.1415927410125732)}return a}return u[6768+(Eb<<2)>>2]}return x((0|Hb)<0?-1.5707963705062866:1.5707963705062866)}function Ca(a){x(0);var Kb,Nb,Ob,Db,Mb,Lb=0;x(0),x(0),j(a);a:{if(1283457024<=(Db=2147483647&(Mb=b[0]))>>>0){if(2139095040<Db>>>0)break a;return x((0|Mb)<0?-1.570796251296997:1.570796251296997)}b:{if(Db>>>0<=1054867455){if(Lb=-1,964689920<=Db>>>0)break b;break a}a=x(y(a)),Lb=Db>>>0<=1066926079?Db>>>0<=1060110335?(a=x(x(x(a+a)+x(-1))/x(a+x(2))),0):(a=x(x(a+x(-1))/x(a+x(1))),1):Db>>>0<=1075576831?(a=x(x(a+x(-1.5))/x(x(a*x(1.5))+x(1))),2):(a=x(x(-1)/a),3)}if(Db=Lb,Nb=x(a*a),Kb=x(Nb*Nb),Ob=x(Kb*x(x(Kb*x(-.106480173766613))+x(-.19999158382415771))),Kb=x(Nb*x(x(Kb*x(x(Kb*x(.06168760731816292))+x(.14253635704517365)))+x(.333333283662796))),(0|Db)<=-1)return x(a-x(a*x(Ob+Kb)));a=x(u[6736+(Db<<=2)>>2]-x(x(x(a*x(Ob+Kb))-u[6752+Db>>2])-a)),a=(0|Mb)<0?x(-a):a}return a}function Da(a,Pb){var Ub,Sb,Tb,Qb=0,Rb=0;return L=Sb=L-16|0,j(a),(Qb=2147483647&(Tb=b[0]))>>>0<=1305022426?(v[Pb>>3]=(Ub=+a)+-1.5707963109016418*(Rb=.6366197723675814*Ub+6755399441055744-6755399441055744)+-1.5893254773528196e-8*Rb,Qb=y(Rb)<2147483648?~~Rb:-2147483648):2139095040<=Qb>>>0?(v[Pb>>3]=x(a-a),Qb=0):(Ub=Qb,v[8+Sb>>3]=(f(0,Ub-((Qb=(Qb>>>23)-150|0)<<23)|0),k()),Qb=function(a,Il,Jl){var Nl,Sl,Wl,Xl,Zl,_l,Kl=0,Ll=0,Ml=0,Ol=0,Pl=0,Ql=0,Rl=0,Tl=0,Ul=0,Vl=0,Yl=0;if(L=Nl=L-560|0,Rl=(Ll=Jl)+w(Wl=0<(0|(Jl=(Jl+-3|0)/24|0))?Jl:0,-24)|0,0<=(0|(Sl=q[972])))for(Ll=Sl+1|0,Jl=Wl;v[(320+Nl|0)+(Ml<<3)>>3]=(0|Jl)<0?0:+q[3904+(Jl<<2)>>2],Jl=Jl+1|0,(0|Ll)!=(0|(Ml=Ml+1|0)););for(Pl=Rl+-24|0,Ll=0;;){for(Kl=Jl=0;Kl+=v[(Jl<<3)+a>>3]*v[(320+Nl|0)+(Ll-Jl<<3)>>3],1!=(0|(Jl=Jl+1|0)););if(v[(Ll<<3)+Nl>>3]=Kl,Jl=(0|Ll)<(0|Sl),Ll=Ll+1|0,!Jl)break}_l=23-Pl|0,Xl=24-Pl|0,Ll=Sl;a:{for(;;){if(Kl=v[(Ll<<3)+Nl>>3],!(Ul=((Jl=0)|(Ml=Ll))<1))for(;Ql=(480+Nl|0)+(Jl<<2)|0,Tl=Kl,Ol=y(Kl*=5.960464477539063e-8)<2147483648?~~Kl:-2147483648,Ol=y(Tl+=-16777216*(Kl=0|Ol))<2147483648?~~Tl:-2147483648,q[Ql>>2]=Ol,Kl=v[((Ml=Ml+-1|0)<<3)+Nl>>3]+Kl,(0|Ll)!=(0|(Jl=Jl+1|0)););Kl=ja(Kl,Pl),Kl=(Kl+=-8*C(.125*Kl))-(0|(Ql=y(Kl)<2147483648?~~Kl:-2147483648));e:{f:{g:{if(Yl=(0|Pl)<1){if(Pl)break g;Ol=q[476+((Ll<<2)+Nl|0)>>2]>>23}else Ol=q[476+(Ml=(Ll<<2)+Nl|0)>>2],Vl=Ml,Ml=Ol-((Jl=Ol>>Xl)<<Xl)|0,Ql=Jl+Ql|0,Ol=(q[Vl+476>>2]=Ml)>>_l;if((0|Ol)<1)break e;break f}if(Ol=2,!(.5<=Kl)){Ol=0;break e}}if(Ml=Jl=0,!Ul)for(;;){Ul=q[(Zl=(480+Nl|0)+(Jl<<2)|0)>>2],Vl=16777215;i:{j:{if(!Ml){if(!Ul)break j;Vl=16777216,Ml=1}q[Zl>>2]=Vl-Ul;break i}Ml=0}if((0|Ll)==(0|(Jl=Jl+1|0)))break}Yl||1<(Jl=Pl+-1|0)>>>0||(q[476+(Jl=(Ll<<2)+Nl|0)>>2]=Jl-1?8388607&q[Jl+476>>2]:4194303&q[Jl+476>>2]),Ql=Ql+1|0,2==(0|Ol)&&(Kl=1-Kl,Ol=2,Ml)&&(Kl-=ja(1,Pl))}if(0!=Kl)break;if(!(((Ml=0)|(Jl=Ll))<=(0|Sl))){for(;Ml=q[(480+Nl|0)+((Jl=Jl+-1|0)<<2)>>2]|Ml,(0|Sl)<(0|Jl););if(Ml){for(Rl=Pl;Rl=Rl+-24|0,!q[(480+Nl|0)+((Ll=Ll+-1|0)<<2)>>2];);break a}}for(Jl=1;Jl=(Ml=Jl)+1|0,!q[(480+Nl|0)+(Sl-Ml<<2)>>2];);for(Ml=Ll+Ml|0;;){for(Ll=Ql=Ll+1|0,v[(320+Nl|0)+(Ql<<3)>>3]=q[3904+(Wl+Ll<<2)>>2],Kl=Jl=0;Kl+=v[(Jl<<3)+a>>3]*v[(320+Nl|0)+(Ql-Jl<<3)>>3],1!=(0|(Jl=Jl+1|0)););if(v[(Ll<<3)+Nl>>3]=Kl,!((0|Ll)<(0|Ml)))break}Ll=Ml}16777216<=(Kl=ja(Kl,0-Pl|0))?(a=(480+Nl|0)+(Ll<<2)|0,Tl=Kl,Jl=y(Kl*=5.960464477539063e-8)<2147483648?~~Kl:-2147483648,Ml=y(Kl=Tl+-16777216*(0|Jl))<2147483648?~~Kl:-2147483648,q[a>>2]=Ml,Ll=Ll+1|0):(Jl=y(Kl)<2147483648?~~Kl:-2147483648,Rl=Pl),q[(480+Nl|0)+(Ll<<2)>>2]=Jl}if(Kl=ja(1,Rl),!((0|Ll)<=-1)){for(Jl=Ll;v[(Jl<<3)+Nl>>3]=Kl*+q[(480+Nl|0)+(Jl<<2)>>2],Kl*=5.960464477539063e-8,a=0<(0|Jl),Jl=Jl+-1|0,a;);if(!((0|Ll)<=-1))for(Jl=Ll;;){for(Pl=Ll-(a=Jl)|0,Jl=Kl=0;Kl+=v[6672+(Jl<<3)>>3]*v[(a+Jl<<3)+Nl>>3],!((0|Sl)<=(0|Jl))&&(Rl=Jl>>>0<Pl>>>0,Jl=Jl+1|0,Rl););if(v[(160+Nl|0)+(Pl<<3)>>3]=Kl,Jl=a+-1|0,!(0<(0|a)))break}}if(0<=(Ll|(Kl=0)))for(;Kl+=v[(160+Nl|0)+(Ll<<3)>>3],a=0<(0|Ll),Ll=Ll+-1|0,a;);return v[Il>>3]=Ol?-Kl:Kl,L=560+Nl|0,7&Ql}(8+Sb|0,Sb,Qb),Rb=v[Sb>>3],(0|Tb)<=-1?(v[Pb>>3]=-Rb,Qb=0-Qb|0):v[Pb>>3]=Rb),L=16+Sb|0,Qb}function Ea(a,Pb){return a?function(a,Il){a:{if(a){if(Il>>>0<=127)break a;if(q[q[1789]>>2]){if(Il>>>0<=2047)return o[a+1|0]=63&Il|128,o[0|a]=Il>>>6|192,2;if(!(57344!=(-8192&Il)&&55296<=Il>>>0))return o[a+2|0]=63&Il|128,o[0|a]=Il>>>12|224,o[a+1|0]=Il>>>6&63|128,3;if(Il+-65536>>>0<=1048575)return o[a+3|0]=63&Il|128,o[0|a]=Il>>>18|240,o[a+2|0]=Il>>>6&63|128,o[a+1|0]=Il>>>12&63|128,4}else if(57216==(-128&Il))break a;q[2086]=25,a=-1}else a=1;return a}return o[0|a]=Il,1}(a,Pb):0}function Fa(a,Pb,Wb){var fc,gc,Xb=0,Yb=0,Zb=0,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=r[a+4|0];if(q[Pb>>2]=652,Yb=q[a+704>>2],1<=(0|(_b=q[Yb>>2]))){for($b=q[a+720>>2],bc=q[a+1072>>2];Zb=(1<<q[bc+(q[$b+(Xb<<2)>>2]<<2)>>2])+Zb|0,(0|_b)!=(0|(Xb=Xb+1|0)););Xb=Zb<<2}if(q[Pb+4>>2]=w(_b,12),q[Pb+8>>2]=q[Yb>>2]<<2,q[Pb+12>>2]=q[Yb>>2]<<2,q[Pb+16>>2]=q[Yb>>2]<<2,q[Pb+20>>2]=q[Yb>>2]<<2,Zb=q[Yb>>2],q[Pb+28>>2]=Xb,q[Pb+24>>2]=Zb<<2,Zb=q[Yb>>2],q[Pb+40>>2]=Xb,q[Pb+36>>2]=Xb,q[Pb+32>>2]=Zb<<2,q[Pb+44>>2]=q[Yb+4>>2]<<5,q[Pb+48>>2]=q[Yb+4>>2]<<2,q[Pb+52>>2]=q[Yb+4>>2]<<2,q[Pb+56>>2]=q[Yb+4>>2]<<2,q[Pb+60>>2]=q[Yb+4>>2]<<4,q[Pb+64>>2]=q[Yb+4>>2]<<4,1<=((Xb=0)|(_b=q[Yb+8>>2]))){for($b=q[a+780>>2],bc=q[a+1072>>2],dc=q[a+796>>2],Zb=0;ac=(15+(q[(cc=Xb<<2)+dc>>2]<<3)&-16)+ac|0,Zb=(1<<q[bc+(q[$b+cc>>2]<<2)>>2])+Zb|0,(0|_b)!=(0|(Xb=Xb+1|0)););Xb=Zb<<2}if(q[Pb+68>>2]=w(_b,24),q[Pb+72>>2]=q[Yb+8>>2]<<2,q[Pb+76>>2]=q[Yb+8>>2]<<2,Zb=q[Yb+8>>2],q[Pb+84>>2]=ac,q[Pb+80>>2]=Zb<<2,q[Pb+88>>2]=q[Yb+8>>2]<<4,q[Pb+92>>2]=q[Yb+8>>2]<<4,Zb=q[Yb+8>>2],q[Pb+100>>2]=Xb,q[Pb+96>>2]=Zb<<2,Zb=q[Yb+8>>2],q[Pb+140>>2]=Xb,q[Pb+136>>2]=Xb,q[Pb+132>>2]=Xb,q[Pb+128>>2]=Xb,q[Pb+124>>2]=Xb,q[Pb+120>>2]=Xb,q[Pb+116>>2]=Xb,q[Pb+112>>2]=Xb,q[Pb+108>>2]=Xb,q[Pb+104>>2]=Zb<<2,q[Pb+144>>2]=q[Yb+8>>2]<<2,q[Pb+148>>2]=q[Yb+8>>2]<<2,q[Pb+152>>2]=q[Yb+8>>2]<<2,q[Pb+156>>2]=q[Yb+8>>2]<<2,q[Pb+160>>2]=q[Yb+8>>2]<<2,q[Pb+164>>2]=q[Yb+8>>2]<<2,1<=((Xb=ac=0)|(_b=q[Yb+12>>2]))){for($b=q[a+812>>2],bc=q[a+1072>>2],Zb=0;Zb=(1<<q[bc+(q[$b+(Xb<<2)>>2]<<2)>>2])+Zb|0,(0|_b)!=(0|(Xb=Xb+1|0)););Xb=Zb<<2}if(q[Pb+168>>2]=w(_b,12),q[Pb+172>>2]=q[Yb+12>>2]<<2,q[Pb+176>>2]=q[Yb+12>>2]<<2,q[Pb+180>>2]=q[Yb+12>>2]<<2,q[Pb+184>>2]=q[Yb+12>>2]<<2,q[Pb+188>>2]=q[Yb+12>>2]<<2,q[Pb+192>>2]=q[Yb+12>>2]<<2,q[Pb+196>>2]=q[Yb+12>>2]<<2,q[Pb+200>>2]=q[Yb+12>>2]<<2,q[Pb+204>>2]=q[Yb+12>>2]<<4,q[Pb+208>>2]=q[Yb+12>>2]<<4,Zb=q[Yb+12>>2],q[Pb+216>>2]=Xb,q[Pb+212>>2]=Zb<<2,Zb=q[Yb+12>>2],q[Pb+268>>2]=Xb,q[Pb+264>>2]=Xb,q[Pb+260>>2]=Xb,q[Pb+256>>2]=Xb,q[Pb+252>>2]=Xb,q[Pb+248>>2]=Xb,q[Pb+244>>2]=Xb,q[Pb+240>>2]=Xb,q[Pb+236>>2]=Xb,q[Pb+232>>2]=Xb,q[Pb+228>>2]=Xb,q[Pb+224>>2]=Xb,q[Pb+220>>2]=Zb<<2,q[Pb+272>>2]=q[Yb+12>>2]<<2,q[Pb+276>>2]=q[Yb+12>>2]<<2,q[Pb+280>>2]=q[Yb+12>>2]<<2,q[Pb+284>>2]=q[Yb+12>>2]<<2,q[Pb+288>>2]=q[Yb+12>>2]<<2,q[Pb+292>>2]=q[Yb+12>>2]<<2,1<=((Xb=0)|(Zb=q[Yb+16>>2]))){for($b=q[a+852>>2],bc=q[a+1072>>2],dc=q[a+892>>2],_b=0;ac=(15+(q[(cc=Xb<<2)+dc>>2]<<3)&-16)+ac|0,_b=(1<<q[bc+(q[$b+cc>>2]<<2)>>2])+_b|0,(0|Zb)!=(0|(Xb=Xb+1|0)););Xb=_b<<2}if(q[Pb+296>>2]=w(Zb,20),q[Pb+300>>2]=q[Yb+16>>2]<<2,q[Pb+304>>2]=q[Yb+16>>2],q[Pb+308>>2]=q[Yb+16>>2]<<2,q[Pb+312>>2]=q[Yb+16>>2]<<2,Zb=q[Yb+16>>2],q[Pb+320>>2]=ac,q[Pb+316>>2]=Zb<<2,q[Pb+324>>2]=q[Yb+16>>2]<<2,q[Pb+328>>2]=q[Yb+16>>2]<<4,q[Pb+332>>2]=q[Yb+16>>2]<<4,q[Pb+336>>2]=q[Yb+16>>2]<<2,q[Pb+340>>2]=q[Yb+16>>2]<<2,q[Pb+344>>2]=q[Yb+16>>2]<<2,q[Pb+348>>2]=q[Yb+16>>2]<<4,q[Pb+352>>2]=q[Yb+16>>2]<<4,Zb=q[Yb+16>>2],q[Pb+360>>2]=Xb,q[Pb+356>>2]=Zb<<2,Zb=q[Yb+16>>2],q[Pb+404>>2]=Xb,q[Pb+400>>2]=Xb,q[Pb+396>>2]=Xb,q[Pb+392>>2]=Xb,q[Pb+388>>2]=Xb,q[Pb+384>>2]=Xb,q[Pb+380>>2]=Xb,q[Pb+376>>2]=Xb,q[Pb+372>>2]=Xb,q[Pb+368>>2]=Xb,q[Pb+364>>2]=Zb<<2,q[Pb+408>>2]=q[Yb+16>>2]<<2,q[Pb+412>>2]=q[Yb+16>>2]<<2,q[Pb+416>>2]=q[Yb+16>>2]<<2,q[Pb+420>>2]=q[Yb+16>>2]<<2,q[Pb+424>>2]=q[Yb+16>>2]<<2,q[Pb+428>>2]=q[Yb+16>>2]<<2,$b=q[a+704>>2],q[Pb+432>>2]=w(q[$b+20>>2],52),q[Pb+436>>2]=ec>>>(Xb=_b=0)<=3?q[$b+20>>2]<<2:0,q[Pb+440>>2]=q[$b+20>>2]<<2,q[Pb+444>>2]=w(q[$b+52>>2],28),1<=(0|(Yb=q[$b+48>>2]))){for(Zb=q[a+1072>>2],ac=0;ac=(bc=q[Zb+(Xb<<2)>>2])+ac|0,_b=(1<<bc)+_b|0,(0|Yb)!=(0|(Xb=Xb+1|0)););Xb=_b<<2,_b=ac<<2}if(q[Pb+460>>2]=Xb,q[Pb+456>>2]=Xb,q[Pb+452>>2]=_b,q[Pb+448>>2]=w(Yb,36),q[Pb+500>>2]=w(q[$b+72>>2],28),1<=((ac=Xb=Zb=0)|(bc=q[$b+72>>2]))){for(dc=q[a+1224>>2],cc=q[a+1220>>2],gc=q[a+1212>>2],_b=0;_b=(0|(fc=q[(Yb=ac<<2)+cc>>2]-q[Yb+dc>>2]|0))<(0|_b)?_b:1+fc|0,Xb=(0|Xb)<(0|(Yb=q[Yb+gc>>2]))?Yb:Xb,(0|bc)!=(0|(ac=ac+1|0)););ac=Xb<<2,Xb=_b<<2}if(Yb=q[$b+76>>2],q[Pb+516>>2]=Xb,q[Pb+512>>2]=ac,q[Pb+508>>2]=Xb,q[Pb+504>>2]=Yb<<4,1<=(0|(Yb=q[$b+80>>2]))){for(Zb=q[a+1248>>2],ac=q[a+1072>>2],_b=Xb=0;_b=(1<<q[ac+(q[Zb+(Xb<<2)>>2]<<2)>>2])+_b|0,(0|Yb)!=(0|(Xb=Xb+1|0)););Zb=_b<<2}if(q[Pb+520>>2]=w(Yb,24),q[Pb+524>>2]=q[$b+80>>2]<<2,Yb=q[$b+80>>2],q[Pb+532>>2]=Zb,q[Pb+528>>2]=Yb<<2,Yb=q[$b+80>>2],q[Pb+544>>2]=Zb,q[Pb+540>>2]=Zb,q[Pb+536>>2]=Yb<<2,Yb=Pb,4<=ec>>>0){if(q[Pb+464>>2]=w(q[$b+120>>2],20),q[Pb+468>>2]=w(q[$b+100>>2],28),Zb=Pb,1<=((Xb=ac=0)|(bc=q[$b+104>>2]))){for(a=q[a+1104>>2],_b=0;_b=q[a+(Xb<<2)>>2]+_b|0,(0|bc)!=(0|(Xb=Xb+1|0)););a=_b<<2}else a=0;q[Zb+476>>2]=a,q[Pb+472>>2]=w(bc,48),q[Pb+484>>2]=w(q[$b+108>>2],12),a=q[$b+112>>2],q[Pb+552>>2]=0,q[Pb+492>>2]=w(a,12),a=0}else{if((0|(ac=q[$b+20>>2]))<1)_b=0;else for(bc=q[a+1060>>2],dc=q[a+952>>2],a=q[a+948>>2],Zb=_b=0;;){if(1<=(0|(cc=q[(Xb=Zb<<2)+dc>>2])))for(cc=(Xb=bc+(q[a+Xb>>2]<<2)|0)+(cc<<2)|0;_b=q[Xb>>2]+_b|0,(Xb=Xb+4|0)>>>0<cc>>>0;);if((0|ac)==(0|(Zb=Zb+1|0)))break}q[Pb+552>>2]=ac<<2,ac=q[$b+20>>2]<<2,a=_b<<2}for(q[Yb+556>>2]=a,q[Pb+548>>2]=ac,4<ec>>>0&&(q[Pb+480>>2]=w(q[$b+128>>2],12),q[Pb+488>>2]=w(q[$b+132>>2],12),q[Pb+496>>2]=w(q[$b+136>>2],12)),Xb=_b=0;Xb=((Yb=q[(a=(_b<<2)+Pb|0)>>2])+15&-16)+(q[a>>2]=Xb)|0,140!=(0|(_b=_b+1|0)););q[Wb>>2]=Xb}function Ga(a,Pb,Wb,hc){a:{if(!(20<Pb>>>0||9<(Pb=Pb+-9|0)>>>0)){switch(Pb-1|0){default:return Pb=q[Wb>>2],q[Wb>>2]=Pb+4,q[a>>2]=q[Pb>>2];case 0:return Pb=q[Wb>>2],q[Wb>>2]=Pb+4,Pb=q[Pb>>2],q[a>>2]=Pb,q[a+4>>2]=Pb>>31;case 1:return Pb=q[Wb>>2],q[Wb>>2]=Pb+4,q[a>>2]=q[Pb>>2],q[a+4>>2]=0;case 3:return Pb=q[Wb>>2],q[Wb>>2]=Pb+4,Pb=p[Pb>>1],q[a>>2]=Pb,q[a+4>>2]=Pb>>31;case 4:return Pb=q[Wb>>2],q[Wb>>2]=Pb+4,q[a>>2]=s[Pb>>1],q[a+4>>2]=0;case 5:return Pb=q[Wb>>2],q[Wb>>2]=Pb+4,Pb=o[0|Pb],q[a>>2]=Pb,q[a+4>>2]=Pb>>31;case 6:return Pb=q[Wb>>2],q[Wb>>2]=Pb+4,q[a>>2]=r[0|Pb],q[a+4>>2]=0;case 2:case 7:break a;case 8:}n[hc](a,Wb)}return}Pb=q[Wb>>2]+7&-8,q[Wb>>2]=Pb+8,Wb=q[Pb+4>>2],q[a>>2]=q[Pb>>2],q[a+4>>2]=Wb}function Ha(a){var Pb,hc,Wb=0;if(ha(o[q[a>>2]]))for(;Pb=q[a>>2],hc=o[0|Pb],q[a>>2]=Pb+1,Wb=(w(Wb,10)+hc|0)-48|0,ha(o[Pb+1|0]););return Wb}function Ia(a,ic,jc,kc,lc){var oc,mc;q[204+(L=mc=L-208|0)>>2]=jc,ca(160+mc|(jc=0),0,40),q[200+mc>>2]=q[204+mc>>2],(0|ra(0,ic,200+mc|0,80+mc|0,160+mc|0,kc,lc))<0||(jc=0<=q[a+76>>2]?1:jc,jc=q[a>>2],o[a+74|0]<=0&&(q[a>>2]=-33&jc),oc=32&jc,q[a+48>>2]?ra(a,ic,200+mc|0,80+mc|0,160+mc|0,kc,lc):(q[a+48>>2]=80,q[a+16>>2]=80+mc,q[a+28>>2]=mc,q[a+20>>2]=mc,jc=q[a+44>>2],ra(a,ic,200+(q[a+44>>2]=mc)|0,80+mc|0,160+mc|0,kc,lc),jc&&(n[q[a+36>>2]](a,0,0),q[a+48>>2]=0,q[a+44>>2]=jc,q[a+28>>2]=0,q[a+16>>2]=0,q[a+20>>2]=0)),q[a>>2]=q[a>>2]|oc),L=208+mc|0}function Ka(a,ic,pc){var rc,qc;$(8+(L=qc=L-160|0)|0,3192,144),q[52+qc>>2]=a,q[28+qc>>2]=a,q[56+qc>>2]=rc=(rc=-2-a|0)>>>0<256?rc:256,q[36+qc>>2]=a=a+rc|0,q[24+qc>>2]=a,Ia(8+qc|0,ic,pc,11,12),rc&&(a=q[28+qc>>2],o[a-((0|a)==q[24+qc>>2])|0]=0),L=160+qc|0}function La(a,ic){var sc,tc,pc=0,pc=0!=(0|ic);a:{b:{c:{d:if(!(!ic|!(3&a)))for(;;){if(!r[0|a])break c;if(a=a+1|0,pc=0!=(0|(ic=ic+-1|0)),!ic)break d;if(!(3&a))break}if(!pc)break b}if(!r[0|a])break a;e:{if(4<=ic>>>0){for(pc=(pc=ic+-4|0)-(sc=-4&pc)|0,sc=4+(a+sc|0)|0;;){if((-1^(tc=q[a>>2]))&tc+-16843009&-2139062144)break e;if(a=a+4|0,!(3<(ic=ic+-4|0)>>>0))break}ic=pc,a=sc}if(!ic)break b}for(;;){if(!r[0|a])break a;if(a=a+1|0,!(ic=ic+-1|0))break}}return 0}return a}function Ma(a){var uc,ic=0;if(!a)return 32;if(!(1&a))for(;ic=ic+1|0,uc=2&a,a>>>=1,!uc;);return ic}function Na(a,vc){var zc,Ac,Bc,yc,wc=0,xc=0,xc=4;L=yc=L-256|0;a:if(!((0|vc)<2))for(wc=q[(Bc=(vc<<2)+a|0)>>2]=yc;;){for($(wc,q[a>>2],zc=xc>>>0<256?xc:256),wc=0;$(q[(Ac=(wc<<2)+a|0)>>2],q[((wc=wc+1|0)<<2)+a>>2],zc),q[Ac>>2]=q[Ac>>2]+zc,(0|vc)!=(0|wc););if(!(xc=xc-zc|0))break a;wc=q[Bc>>2]}L=256+yc|0}function Oa(a){return Ma(q[a>>2]+-1|0)||((a=Ma(q[a+4>>2]))?a+32|0:0)}function Zc(a,$o){$o|=0,b[0]=a|=0,b[1]=$o}function ad(a,$o,ap){return function(a,$o,ap){var ep,cp,bp,dp,fp=w(cp=ap>>>16,bp=a>>>16);return a=(65535&(bp=((ep=w(dp=65535&ap,a&=65535))>>>16)+w(bp,dp)|0))+w(a,cp)|0,M=((fp+w($o,ap)|0)+(bp>>>16)|0)+(a>>>16)|0,65535&ep|a<<16}(a,$o,ap)}function bd(a,$o,ap){return function(a,$o,ap){var np,mp,gp=0,hp=0,ip=0,jp=0,kp=0,lp=0,op=0;a:{b:{c:{d:{e:{if(!(hp=$o))return Zc(($o=a)-w(a=(a>>>0)/(ap>>>0)|0,ap)|0,0),M=0,a;if(gp=ap){if(!((jp=gp+-1|0)&gp))break e;kp=0-(jp=(z(gp)+33|0)-z(hp)|0)|0;break c}if(!a)return Zc(0,hp-w(a=(hp>>>0)/0|0,0)|0),M=0,a;if((gp=32-z(hp)|0)>>>0<31)break d;break b}if(Zc(a&jp,0),1==(0|gp))break a;return ap=31&(gp=gp?31-z(gp+-1^gp)|0:32),a=32<=(63&gp)>>>0?(hp=0,$o>>>ap):(hp=$o>>>ap,((1<<ap)-1&$o)<<32-ap|a>>>ap),M=hp,a}jp=gp+1|0,kp=63-gp|0}if(gp=$o,ip=31&(hp=63&jp),ip=32<=hp>>>0?(hp=0,gp>>>ip):(hp=gp>>>ip,((1<<ip)-1&gp)<<32-ip|a>>>ip),gp=31&(kp&=63),32<=kp>>>0?($o=a<<gp,a=0):($o=(1<<gp)-1&a>>>32-gp|$o<<gp,a<<=gp),jp)for((kp=ap+(gp=-1)|0)>>>0<4294967295&&(gp=0);ip=(mp=lp=ip<<1|$o>>>31)-(np=ap&(lp=gp-((hp=hp<<1|ip>>>31)+(kp>>>0<lp>>>0)|0)>>31))|0,hp=hp-(mp>>>0<np>>>0)|0,$o=$o<<1|a>>>31,a=op|a<<1,op=lp&=1,jp=jp+-1|0;);return Zc(ip,hp),M=$o<<1|a>>>31,lp|a<<1}Zc(a,$o),$o=a=0}return M=$o,a}(a,$o,ap)}function dd(a){var pp;return(-1>>>(pp=31&a)&-2)<<pp|(-1<<(a=0-a&31)&-2)>>>a}function N(){return buffer.byteLength/65536|0}}(H,I,J)}}l=null,b.wasmBinary&&(F=b.wasmBinary);var WebAssembly={},F=[];\"object\"!=typeof WebAssembly&&E(\"no native wasm support detected\");var I,J=new function(a){var c=Array(16);return c.grow=function(){17<=c.length&&B(\"Unable to grow wasm table. Use a higher value for RESERVED_FUNCTION_POINTERS or set ALLOW_TABLE_GROWTH.\"),c.push(null)},c.set=function(a,e){c[a]=e},c.get=function(a){return c[a]},c},K=!1;function assert(a,c){a||B(\"Assertion failed: \"+c)}var buffer,M,L,N,ha=\"undefined\"!=typeof TextDecoder?new TextDecoder(\"utf8\"):void 0;function ia(a,c,d){var e=c+d;for(d=c;a[d]&&!(e<=d);)++d;if(16<d-c&&a.subarray&&ha)return ha.decode(a.subarray(c,d));for(e=\"\";c<d;){var g,m,f=a[c++];128&f?(g=63&a[c++],192==(224&f)?e+=String.fromCharCode((31&f)<<6|g):(m=63&a[c++],(f=224==(240&f)?(15&f)<<12|g<<6|m:(7&f)<<18|g<<12|m<<6|63&a[c++])<65536?e+=String.fromCharCode(f):(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|1023&f)))):e+=String.fromCharCode(f)}return e}function ja(a,c){return a?ia(L,a,c):\"\"}function ka(a){return 0<a%65536&&(a+=65536-a%65536),a}function la(a){buffer=a,b.HEAP8=M=new Int8Array(a),b.HEAP16=new Int16Array(a),b.HEAP32=N=new Int32Array(a),b.HEAPU8=L=new Uint8Array(a),b.HEAPU16=new Uint16Array(a),b.HEAPU32=new Uint32Array(a),b.HEAPF32=new Float32Array(a),b.HEAPF64=new Float64Array(a)}\"undefined\"!=typeof TextDecoder&&new TextDecoder(\"utf-16le\");var G=b.TOTAL_MEMORY||16777216;function O(a){for(;0<a.length;){var d,c=a.shift();\"function\"==typeof c?c():\"number\"==typeof(d=c.ea)?void 0===c.da?b.dynCall_v(d):b.dynCall_vi(d,c.da):d(void 0===c.da?null:c.da)}}(I=b.wasmMemory||new function(){return{buffer:new ArrayBuffer(G/65536*65536),grow:function(a){return ca(a)}}})&&(buffer=I.buffer),buffer.byteLength,la(buffer),N[2216]=5251936;var ra,ma=[],na=[],oa=[],pa=[],P=(Math.imul&&-5===Math.imul(4294967295,5)||(Math.imul=function(a,c){var d=65535&a,e=65535&c;return d*e+((a>>>16)*e+d*(c>>>16)<<16)|0}),Math.fround||(ra=new Float32Array(1),Math.fround=function(a){return ra[0]=a,ra[0]}),Math.clz32||(Math.clz32=function(a){var c=32,d=a>>16;return d&&(c-=16,a=d),(d=a>>8)&&(c-=8,a=d),(d=a>>4)&&(c-=4,a=d),(d=a>>2)&&(c-=2,a=d),a>>1?c-2:c-a}),Math.trunc||(Math.trunc=function(a){return a<0?Math.ceil(a):Math.floor(a)}),0),Q=null,U=null;function B(a){throw b.onAbort&&b.onAbort(a),D(a),E(a),K=!0,\"abort(\"+a+\"). Build with -s ASSERTIONS=1 for more info.\"}b.preloadedImages={},b.preloadedAudios={};var V=\"data:application/octet-stream;base64,\";function W(a){return String.prototype.startsWith?a.startsWith(V):0===a.indexOf(V)}var X=\"_em_module.wasm\";function ta(){try{if(F)return new Uint8Array(F);var a=z(X);if(a)return a;if(w)return w(X);throw\"both async and sync fetching of the wasm failed\"}catch(c){B(c)}}W(X)||(t=X,X=b.locateFile?b.locateFile(t,u):u+t),na.push({ea:function(){va()}});var wa=[null,[],[]],xa=!1;function C(a){for(var c=[],d=0;d<a.length;d++){var e=a[d];255<e&&(xa&&assert(!1,\"Character code \"+e+\" (\"+String.fromCharCode(e)+\") at offset \"+d+\" not in 0x00-0xFF.\"),e&=255),c.push(String.fromCharCode(e))}return c.join(\"\")}var ya=\"function\"==typeof atob?atob:function(a){var c=\"\",d=0;a=a.replace(/[^A-Za-z0-9\\+\\/=]/g,\"\");do{var e=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\".indexOf(a.charAt(d++)),f=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\".indexOf(a.charAt(d++)),g=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\".indexOf(a.charAt(d++)),m=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\".indexOf(a.charAt(d++)),e=e<<2|f>>4,f=(15&f)<<4|g>>2,h=(3&g)<<6|m}while(c+=String.fromCharCode(e),64!==g&&(c+=String.fromCharCode(f)),64!==m&&(c+=String.fromCharCode(h)),d<a.length);return c};function z(a){if(W(a)){if(a=a.slice(V.length),\"boolean\"==typeof r&&r){try{var c=Buffer.from(a,\"base64\")}catch(g){c=new Buffer(a,\"base64\")}var d=new Uint8Array(c.buffer,c.byteOffset,c.byteLength)}else try{for(var e=ya(a),f=new Uint8Array(e.length),c=0;c<e.length;++c)f[c]=e.charCodeAt(c);d=f}catch(g){throw Error(\"Converting base64 string to bytes failed.\")}return d}}var Y,H={a:function(a,c,d){L.set(L.subarray(c,c+d),a)},b:function(a){if(2147418112<a)return!1;for(var c=Math.max(M.length,16777216);c<a;)c=c<=536870912?ka(2*c):Math.min(ka((3*c+2147483648)/4),2147418112);a:{try{I.grow(c-buffer.byteLength+65535>>16),la(I.buffer);var d=1;break a}catch(e){}d=void 0}return!!d},c:function(a,c,d,e){try{for(var f=0,g=0;g<d;g++){for(var m=N[c+8*g>>2],h=N[c+(8*g+4)>>2],A=0;A<h;A++){var R=L[m+A],S=wa[a];0===R||10===R?((1===a?D:E)(ia(S,0)),S.length=0):S.push(R)}f+=h}return N[e>>2]=f,0}catch(T){return\"undefined\"!=typeof FS&&T instanceof FS.fa||B(T),T.ga}},memory:I,table:J},u=function(){function a(a){b.asm=a.exports,P--,b.monitorRunDependencies&&b.monitorRunDependencies(P),0==P&&(null!==Q&&(clearInterval(Q),Q=null),U)&&(a=U,U=null,a())}function c(c){a(c.instance)}function d(a){(F||!p&&!q||\"function\"!=typeof fetch?new Promise(function(a){a(ta())}):fetch(X,{credentials:\"same-origin\"}).then(function(a){if(a.ok)return a.arrayBuffer();throw\"failed to load wasm binary file at '\"+X+\"'\"}).catch(ta)).then(function(){return{then:function(a){a({instance:new da})}}}).then(a,function(a){E(\"failed to asynchronously prepare wasm: \"+a),B(a)})}var e={env:H,wasi_unstable:H};if(P++,b.monitorRunDependencies&&b.monitorRunDependencies(P),b.instantiateWasm)try{return b.instantiateWasm(e,a)}catch(f){return E(\"Module.instantiateWasm callback failed with error: \"+f),!1}return F||\"function\"!=typeof WebAssembly.instantiateStreaming||W(X)||\"function\"!=typeof fetch?d(c):fetch(X,{credentials:\"same-origin\"}).then(function(a){return WebAssembly.instantiateStreaming(a,e).then(c,function(a){E(\"wasm streaming compile failed: \"+a),E(\"falling back to ArrayBuffer instantiation\"),d(c)})}),{}}(),va=(b.asm=u,b.___wasm_call_ctors=function(){return b.asm.d.apply(null,arguments)}),Aa=(b._csmGetVersion=function(){return b.asm.e.apply(null,arguments)},b._csmGetLatestMocVersion=function(){return b.asm.f.apply(null,arguments)},b._csmGetMocVersion=function(){return b.asm.g.apply(null,arguments)},b._csmHasMocConsistency=function(){return b.asm.h.apply(null,arguments)},b._csmSetLogFunction=function(){return b.asm.i.apply(null,arguments)},b._csmReviveMocInPlace=function(){return b.asm.j.apply(null,arguments)},b._csmReadCanvasInfo=function(){return b.asm.k.apply(null,arguments)},b._csmGetSizeofModel=function(){return b.asm.l.apply(null,arguments)},b._csmInitializeModelInPlace=function(){return b.asm.m.apply(null,arguments)},b._csmUpdateModel=function(){return b.asm.n.apply(null,arguments)},b._csmGetParameterCount=function(){return b.asm.o.apply(null,arguments)},b._csmGetParameterIds=function(){return b.asm.p.apply(null,arguments)},b._csmGetParameterTypes=function(){return b.asm.q.apply(null,arguments)},b._csmGetParameterMinimumValues=function(){return b.asm.r.apply(null,arguments)},b._csmGetParameterMaximumValues=function(){return b.asm.s.apply(null,arguments)},b._csmGetParameterDefaultValues=function(){return b.asm.t.apply(null,arguments)},b._csmGetParameterValues=function(){return b.asm.u.apply(null,arguments)},b._csmGetPartCount=function(){return b.asm.v.apply(null,arguments)},b._csmGetPartIds=function(){return b.asm.w.apply(null,arguments)},b._csmGetPartOpacities=function(){return b.asm.x.apply(null,arguments)},b._csmGetPartParentPartIndices=function(){return b.asm.y.apply(null,arguments)},b._csmGetDrawableCount=function(){return b.asm.z.apply(null,arguments)},b._csmGetDrawableIds=function(){return b.asm.A.apply(null,arguments)},b._csmGetDrawableConstantFlags=function(){return b.asm.B.apply(null,arguments)},b._csmGetDrawableDynamicFlags=function(){return b.asm.C.apply(null,arguments)},b._csmGetDrawableTextureIndices=function(){return b.asm.D.apply(null,arguments)},b._csmGetDrawableDrawOrders=function(){return b.asm.E.apply(null,arguments)},b._csmGetDrawableRenderOrders=function(){return b.asm.F.apply(null,arguments)},b._csmGetDrawableOpacities=function(){return b.asm.G.apply(null,arguments)},b._csmGetDrawableMaskCounts=function(){return b.asm.H.apply(null,arguments)},b._csmGetDrawableMasks=function(){return b.asm.I.apply(null,arguments)},b._csmGetDrawableVertexCounts=function(){return b.asm.J.apply(null,arguments)},b._csmGetDrawableVertexPositions=function(){return b.asm.K.apply(null,arguments)},b._csmGetDrawableVertexUvs=function(){return b.asm.L.apply(null,arguments)},b._csmGetDrawableIndexCounts=function(){return b.asm.M.apply(null,arguments)},b._csmGetDrawableIndices=function(){return b.asm.N.apply(null,arguments)},b._csmGetDrawableMultiplyColors=function(){return b.asm.O.apply(null,arguments)},b._csmGetDrawableScreenColors=function(){return b.asm.P.apply(null,arguments)},b._csmGetDrawableParentPartIndices=function(){return b.asm.Q.apply(null,arguments)},b._csmResetDrawableDynamicFlags=function(){return b.asm.R.apply(null,arguments)},b._csmGetParameterKeyCounts=function(){return b.asm.S.apply(null,arguments)},b._csmGetParameterKeyValues=function(){return b.asm.T.apply(null,arguments)},b._csmMallocMoc=function(){return b.asm.U.apply(null,arguments)},b._csmMallocModelAndInitialize=function(){return b.asm.V.apply(null,arguments)},b._csmMalloc=function(){return b.asm.W.apply(null,arguments)},b._csmFree=function(){return b.asm.X.apply(null,arguments)},b._csmInitializeAmountOfMemory=function(){return b.asm.Y.apply(null,arguments)},b.stackSave=function(){return b.asm.Z.apply(null,arguments)}),Ba=b.stackAlloc=function(){return b.asm._.apply(null,arguments)},Ca=b.stackRestore=function(){return b.asm.$.apply(null,arguments)},ca=b.__growWasmMemory=function(){return b.asm.aa.apply(null,arguments)};function Z(){function a(){if(!Y&&(Y=!0,!K)){if(O(na),O(oa),b.onRuntimeInitialized&&b.onRuntimeInitialized(),b.postRun)for(\"function\"==typeof b.postRun&&(b.postRun=[b.postRun]);b.postRun.length;){var a=b.postRun.shift();pa.unshift(a)}O(pa)}}if(!(0<P)){if(b.preRun)for(\"function\"==typeof b.preRun&&(b.preRun=[b.preRun]);b.preRun.length;)!function(){var a=b.preRun.shift();ma.unshift(a)}();O(ma),0<P||(b.setStatus?(b.setStatus(\"Running...\"),setTimeout(function(){setTimeout(function(){b.setStatus(\"\")},1),a()},1)):a())}}if(b.dynCall_vi=function(){return b.asm.ba.apply(null,arguments)},b.asm=u,b.ccall=function(a,c,d,e){var f={string:function(a){var c=0;if(null!=a&&0!==a){var d=1+(a.length<<2),e=c=Ba(d),f=L;if(0<d){for(var d=e+d-1,g=0;g<a.length;++g){var k=a.charCodeAt(g);if((k=55296<=k&&k<=57343?65536+((1023&k)<<10)|1023&a.charCodeAt(++g):k)<=127){if(d<=e)break;f[e++]=k}else{if(k<=2047){if(d<=e+1)break;f[e++]=192|k>>6}else{if(k<=65535){if(d<=e+2)break;f[e++]=224|k>>12}else{if(d<=e+3)break;f[e++]=240|k>>18,f[e++]=128|k>>12&63}f[e++]=128|k>>6&63}f[e++]=128|63&k}}f[e]=0}}return c},array:function(a){var c=Ba(a.length);return M.set(a,c),c}},g=function(a){var c=b[\"_\"+a];return assert(c,\"Cannot call unknown function \"+a+\", make sure it is exported\"),c}(a),m=[];if(a=0,e)for(var h=0;h<e.length;h++){var A=f[d[h]];A?(0===a&&(a=Aa()),m[h]=A(e[h])):m[h]=e[h]}return d=function(a){return\"string\"===c?ja(a):\"boolean\"===c?!!a:a}(d=g.apply(null,m)),0!==a&&Ca(a),d},b.UTF8ToString=ja,b.addFunction=function(a,c){var d=J.length;try{J.grow(1)}catch(e){if(!e instanceof RangeError)throw e;throw\"Unable to grow wasm table. Use a higher value for RESERVED_FUNCTION_POINTERS or set ALLOW_TABLE_GROWTH.\"}try{J.set(d,a)}catch(e){if(!e instanceof TypeError)throw e;assert(void 0!==c,\"Missing signature argument to addFunction\"),J.set(d,a)}return d},b.then=function(a){var c;return Y?a(b):(c=b.onRuntimeInitialized,b.onRuntimeInitialized=function(){c&&c(),a(b)}),b},U=function Da(){Y||Z(),Y||(U=Da)},b.run=Z,b.preInit)for(\"function\"==typeof b.preInit&&(b.preInit=[b.preInit]);0<b.preInit.length;)b.preInit.pop()();return Z(),_em_module}),_em=(\"object\"==typeof exports&&\"object\"==typeof module?module.exports=_em_module:\"function\"==typeof define&&define.amd?define([],function(){return _em_module}):\"object\"==typeof exports&&(exports._em_module=_em_module),_em_module())}(Live2DCubismCore=Live2DCubismCore||{});",
17
+ /* 3/3 pixi-live2d-display cubism4 (mirrors itself onto globalThis.PIXI.live2d) */
18
+ "var __pow=Math.pow,__async=(t,e,i)=>new Promise(((s,r)=>{var a=t=>{try{n(i.next(t))}catch(e){r(e)}},o=t=>{try{n(i.throw(t))}catch(e){r(e)}},n=t=>t.done?s(t.value):Promise.resolve(t.value).then(a,o);n((i=i.apply(t,e)).next())}));!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?e(exports,require(\"@pixi/utils\"),require(\"@pixi/math\"),require(\"@pixi/core\"),require(\"@pixi/display\")):\"function\"==typeof define&&define.amd?define([\"exports\",\"@pixi/utils\",\"@pixi/math\",\"@pixi/core\",\"@pixi/display\"],e):e(((t=\"undefined\"!=typeof globalThis?globalThis:t||self).PIXI=t.PIXI||{},t.PIXI.live2d=t.PIXI.live2d||{}),t.PIXI.utils,t.PIXI,t.PIXI,t.PIXI)}(this,(function(t,e,i,s,r){\"use strict\";class a{constructor(){this._breathParameters=[],this._currentTime=0}static create(){return new a}setParameters(t){this._breathParameters=t}getParameters(){return this._breathParameters}updateParameters(t,e){this._currentTime+=e;const i=2*this._currentTime*3.14159;for(let s=0;s<this._breathParameters.length;++s){const e=this._breathParameters[s];t.addParameterValueById(e.parameterId,e.offset+e.peak*Math.sin(i/e.cycle),e.weight)}}}class o{constructor(t,e,i,s,r){this.parameterId=null==t?void 0:t,this.offset=null==e?0:e,this.peak=null==i?0:i,this.cycle=null==s?0:s,this.weight=null==r?0:r}}const n=class{static create(t){return new n(t)}setBlinkingInterval(t){this._blinkingIntervalSeconds=t}setBlinkingSetting(t,e,i){this._closingSeconds=t,this._closedSeconds=e,this._openingSeconds=i}setParameterIds(t){this._parameterIds=t}getParameterIds(){return this._parameterIds}updateParameters(t,e){let i;this._userTimeSeconds+=e;let s=0;switch(this._blinkingState){case h.EyeState_Closing:s=(this._userTimeSeconds-this._stateStartTimeSeconds)/this._closingSeconds,s>=1&&(s=1,this._blinkingState=h.EyeState_Closed,this._stateStartTimeSeconds=this._userTimeSeconds),i=1-s;break;case h.EyeState_Closed:s=(this._userTimeSeconds-this._stateStartTimeSeconds)/this._closedSeconds,s>=1&&(this._blinkingState=h.EyeState_Opening,this._stateStartTimeSeconds=this._userTimeSeconds),i=0;break;case h.EyeState_Opening:s=(this._userTimeSeconds-this._stateStartTimeSeconds)/this._openingSeconds,s>=1&&(s=1,this._blinkingState=h.EyeState_Interval,this._nextBlinkingTime=this.determinNextBlinkingTiming()),i=s;break;case h.EyeState_Interval:this._nextBlinkingTime<this._userTimeSeconds&&(this._blinkingState=h.EyeState_Closing,this._stateStartTimeSeconds=this._userTimeSeconds),i=1;break;case h.EyeState_First:default:this._blinkingState=h.EyeState_Interval,this._nextBlinkingTime=this.determinNextBlinkingTiming(),i=1}n.CloseIfZero||(i=-i);for(let r=0;r<this._parameterIds.length;++r)t.setParameterValueById(this._parameterIds[r],i)}constructor(t){var e,i;this._blinkingState=h.EyeState_First,this._nextBlinkingTime=0,this._stateStartTimeSeconds=0,this._blinkingIntervalSeconds=4,this._closingSeconds=.1,this._closedSeconds=.05,this._openingSeconds=.15,this._userTimeSeconds=0,this._parameterIds=[],null!=t&&(this._parameterIds=null!=(i=null==(e=t.getEyeBlinkParameters())?void 0:e.slice())?i:this._parameterIds)}determinNextBlinkingTiming(){const t=Math.random();return this._userTimeSeconds+t*(2*this._blinkingIntervalSeconds-1)}};let l=n;l.CloseIfZero=!0;var h=(t=>(t[t.EyeState_First=0]=\"EyeState_First\",t[t.EyeState_Interval=1]=\"EyeState_Interval\",t[t.EyeState_Closing=2]=\"EyeState_Closing\",t[t.EyeState_Closed=3]=\"EyeState_Closed\",t[t.EyeState_Opening=4]=\"EyeState_Opening\",t))(h||{});class u{static create(t){const e=new u;\"number\"==typeof t.FadeInTime&&(e._fadeTimeSeconds=t.FadeInTime,e._fadeTimeSeconds<=0&&(e._fadeTimeSeconds=.5));const i=t.Groups,s=i.length;for(let r=0;r<s;++r){const t=i[r],s=t.length;let a=0;for(let i=0;i<s;++i){const s=t[i],r=new d;r.partId=s.Id;const o=s.Link;if(o){const t=o.length;for(let e=0;e<t;++e){const t=new d;t.partId=o[e],r.link.push(t)}}e._partGroups.push(r),++a}e._partGroupCounts.push(a)}return e}updateParameters(t,e){t!=this._lastModel&&this.reset(t),this._lastModel=t,e<0&&(e=0);let i=0;for(let s=0;s<this._partGroupCounts.length;s++){const r=this._partGroupCounts[s];this.doFade(t,e,i,r),i+=r}this.copyPartOpacities(t)}reset(t){let e=0;for(let i=0;i<this._partGroupCounts.length;++i){const s=this._partGroupCounts[i];for(let i=e;i<e+s;++i){this._partGroups[i].initialize(t);const s=this._partGroups[i].partIndex,r=this._partGroups[i].parameterIndex;if(!(s<0)){t.setPartOpacityByIndex(s,i==e?1:0),t.setParameterValueByIndex(r,i==e?1:0);for(let e=0;e<this._partGroups[i].link.length;++e)this._partGroups[i].link[e].initialize(t)}}e+=s}}copyPartOpacities(t){for(let e=0;e<this._partGroups.length;++e){const i=this._partGroups[e];if(0==i.link.length)continue;const s=this._partGroups[e].partIndex,r=t.getPartOpacityByIndex(s);for(let e=0;e<i.link.length;++e){const s=i.link[e].partIndex;s<0||t.setPartOpacityByIndex(s,r)}}}doFade(t,e,i,s){let r=-1,a=1;const o=.5;for(let n=i;n<i+s;++n){const i=this._partGroups[n].partIndex,s=this._partGroups[n].parameterIndex;if(t.getParameterValueByIndex(s)>.001){if(r>=0)break;r=n,a=t.getPartOpacityByIndex(i),a+=e/this._fadeTimeSeconds,a>1&&(a=1)}}r<0&&(r=0,a=1);for(let n=i;n<i+s;++n){const e=this._partGroups[n].partIndex;if(r==n)t.setPartOpacityByIndex(e,a);else{let i,s=t.getPartOpacityByIndex(e);i=a<o?-.5*a/o+1:(1-a)*o/.5;(1-i)*(1-a)>.15&&(i=1-.15/(1-a)),s>i&&(s=i),t.setPartOpacityByIndex(e,s)}}}constructor(){this._fadeTimeSeconds=.5,this._lastModel=void 0,this._partGroups=[],this._partGroupCounts=[]}}class d{constructor(t){this.parameterIndex=0,this.partIndex=0,this.partId=\"\",this.link=[],null!=t&&this.assignment(t)}assignment(t){return this.partId=t.partId,this.link=t.link.map((t=>t.clone())),this}initialize(t){this.parameterIndex=t.getParameterIndex(this.partId),this.partIndex=t.getPartIndex(this.partId),t.setParameterValueByIndex(this.parameterIndex,1)}clone(){const t=new d;return t.partId=this.partId,t.parameterIndex=this.parameterIndex,t.partIndex=this.partIndex,t.link=this.link.map((t=>t.clone())),t}}class c{constructor(t,e){this.x=t||0,this.y=e||0}add(t){const e=new c(0,0);return e.x=this.x+t.x,e.y=this.y+t.y,e}substract(t){const e=new c(0,0);return e.x=this.x-t.x,e.y=this.y-t.y,e}multiply(t){const e=new c(0,0);return e.x=this.x*t.x,e.y=this.y*t.y,e}multiplyByScaler(t){return this.multiply(new c(t,t))}division(t){const e=new c(0,0);return e.x=this.x/t.x,e.y=this.y/t.y,e}divisionByScalar(t){return this.division(new c(t,t))}getLength(){return Math.sqrt(this.x*this.x+this.y*this.y)}getDistanceWith(t){return Math.sqrt((this.x-t.x)*(this.x-t.x)+(this.y-t.y)*(this.y-t.y))}dot(t){return this.x*t.x+this.y*t.y}normalize(){const t=Math.pow(this.x*this.x+this.y*this.y,.5);this.x=this.x/t,this.y=this.y/t}isEqual(t){return this.x==t.x&&this.y==t.y}isNotEqual(t){return!this.isEqual(t)}}const m=class{static range(t,e,i){return t<e?t=e:t>i&&(t=i),t}static sin(t){return Math.sin(t)}static cos(t){return Math.cos(t)}static abs(t){return Math.abs(t)}static sqrt(t){return Math.sqrt(t)}static cbrt(t){if(0===t)return t;let e=t;const i=e<0;let s;return i&&(e=-e),e===1/0?s=1/0:(s=Math.exp(Math.log(e)/3),s=(e/(s*s)+2*s)/3),i?-s:s}static getEasingSine(t){return t<0?0:t>1?1:.5-.5*this.cos(t*Math.PI)}static max(t,e){return t>e?t:e}static min(t,e){return t>e?e:t}static degreesToRadian(t){return t/180*Math.PI}static radianToDegrees(t){return 180*t/Math.PI}static directionToRadian(t,e){let i=Math.atan2(e.y,e.x)-Math.atan2(t.y,t.x);for(;i<-Math.PI;)i+=2*Math.PI;for(;i>Math.PI;)i-=2*Math.PI;return i}static directionToDegrees(t,e){const i=this.directionToRadian(t,e);let s=this.radianToDegrees(i);return e.x-t.x>0&&(s=-s),s}static radianToDirection(t){const e=new c;return e.x=this.sin(t),e.y=this.cos(t),e}static quadraticEquation(t,e,i){return this.abs(t)<m.Epsilon?this.abs(e)<m.Epsilon?-i:-i/e:-(e+this.sqrt(e*e-4*t*i))/(2*t)}static cardanoAlgorithmForBezier(t,e,i,s){if(this.sqrt(t)<m.Epsilon)return this.range(this.quadraticEquation(e,i,s),0,1);const r=e/t,a=i/t,o=(3*a-r*r)/3,n=o/3,l=(2*r*r*r-9*r*a+27*(s/t))/27,h=l/2,u=h*h+n*n*n,d=.5,c=.51;if(u<0){const t=-o/3,e=t*t*t,i=this.sqrt(e),s=-l/(2*i),a=this.range(s,-1,1),n=Math.acos(a),h=2*this.cbrt(i),u=h*this.cos(n/3)-r/3;if(this.abs(u-d)<c)return this.range(u,0,1);const m=h*this.cos((n+2*Math.PI)/3)-r/3;if(this.abs(m-d)<c)return this.range(m,0,1);const g=h*this.cos((n+4*Math.PI)/3)-r/3;return this.range(g,0,1)}if(0==u){let t;t=h<0?this.cbrt(-h):-this.cbrt(h);const e=2*t-r/3;if(this.abs(e-d)<c)return this.range(e,0,1);const i=-t-r/3;return this.range(i,0,1)}const g=this.sqrt(u),p=this.cbrt(g-h)-this.cbrt(g+h)-r/3;return this.range(p,0,1)}constructor(){}};let g=m;g.Epsilon=1e-5;class p{constructor(){this._tr=new Float32Array(16),this.loadIdentity()}static multiply(t,e,i){const s=new Float32Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);for(let r=0;r<4;++r)for(let i=0;i<4;++i)for(let a=0;a<4;++a)s[i+4*r]+=t[a+4*r]*e[i+4*a];for(let r=0;r<16;++r)i[r]=s[r]}loadIdentity(){const t=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]);this.setMatrix(t)}setMatrix(t){for(let e=0;e<16;++e)this._tr[e]=t[e]}getArray(){return this._tr}getScaleX(){return this._tr[0]}getScaleY(){return this._tr[5]}getTranslateX(){return this._tr[12]}getTranslateY(){return this._tr[13]}transformX(t){return this._tr[0]*t+this._tr[12]}transformY(t){return this._tr[5]*t+this._tr[13]}invertTransformX(t){return(t-this._tr[12])/this._tr[0]}invertTransformY(t){return(t-this._tr[13])/this._tr[5]}translateRelative(t,e){const i=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,t,e,0,1]);p.multiply(i,this._tr,this._tr)}translate(t,e){this._tr[12]=t,this._tr[13]=e}translateX(t){this._tr[12]=t}translateY(t){this._tr[13]=t}scaleRelative(t,e){const i=new Float32Array([t,0,0,0,0,e,0,0,0,0,1,0,0,0,0,1]);p.multiply(i,this._tr,this._tr)}scale(t,e){this._tr[0]=t,this._tr[5]=e}multiplyByMatrix(t){p.multiply(t.getArray(),this._tr,this._tr)}clone(){const t=new p;for(let e=0;e<this._tr.length;e++)t._tr[e]=this._tr[e];return t}}class _{initialize(t){this._model=t}drawModel(){null!=this.getModel()&&this.doDrawModel()}setMvpMatrix(t){this._mvpMatrix4x4.setMatrix(t.getArray())}getMvpMatrix(){return this._mvpMatrix4x4}setModelColor(t,e,i,s){t<0?t=0:t>1&&(t=1),e<0?e=0:e>1&&(e=1),i<0?i=0:i>1&&(i=1),s<0?s=0:s>1&&(s=1),this._modelColor.R=t,this._modelColor.G=e,this._modelColor.B=i,this._modelColor.A=s}getModelColor(){return Object.assign({},this._modelColor)}setIsPremultipliedAlpha(t){this._isPremultipliedAlpha=t}isPremultipliedAlpha(){return this._isPremultipliedAlpha}setIsCulling(t){this._isCulling=t}isCulling(){return this._isCulling}setAnisotropy(t){this._anisortopy=t}getAnisotropy(){return this._anisortopy}getModel(){return this._model}constructor(){this._isCulling=!1,this._isPremultipliedAlpha=!1,this._anisortopy=0,this._modelColor=new y,this._mvpMatrix4x4=new p,this._mvpMatrix4x4.loadIdentity()}}var f=(t=>(t[t.CubismBlendMode_Normal=0]=\"CubismBlendMode_Normal\",t[t.CubismBlendMode_Additive=1]=\"CubismBlendMode_Additive\",t[t.CubismBlendMode_Multiplicative=2]=\"CubismBlendMode_Multiplicative\",t))(f||{});class y{constructor(){this.R=1,this.G=1,this.B=1,this.A=1}}let x,v=!1,M=!1;const P={vertexOffset:0,vertexStep:2};class C{static startUp(t){if(v)return I(\"CubismFramework.startUp() is already done.\"),v;if(Live2DCubismCore._isStarted)return v=!0,!0;if(Live2DCubismCore._isStarted=!0,x=t,x&&Live2DCubismCore.Logging.csmSetLogFunction(x.logFunction),v=!0,v){const t=Live2DCubismCore.Version.csmGetVersion(),e=(16711680&t)>>16,i=65535&t,s=t;I(\"Live2D Cubism Core version: {0}.{1}.{2} ({3})\",(\"00\"+((4278190080&t)>>24)).slice(-2),(\"00\"+e).slice(-2),(\"0000\"+i).slice(-4),s)}return I(\"CubismFramework.startUp() is complete.\"),v}static cleanUp(){v=!1,M=!1,x=void 0}static initialize(){v?M?L(\"CubismFramework.initialize() skipped, already initialized.\"):(M=!0,I(\"CubismFramework.initialize() is complete.\")):L(\"CubismFramework is not started.\")}static dispose(){v?M?(_.staticRelease(),M=!1,I(\"CubismFramework.dispose() is complete.\")):L(\"CubismFramework.dispose() skipped, not initialized.\"):L(\"CubismFramework is not started.\")}static isStarted(){return v}static isInitialized(){return M}static coreLogFunction(t){Live2DCubismCore.Logging.csmGetLogFunction()&&Live2DCubismCore.Logging.csmGetLogFunction()(t)}static getLoggingLevel(){return null!=x?x.loggingLevel:S.LogLevel_Off}constructor(){}}var S=(t=>(t[t.LogLevel_Verbose=0]=\"LogLevel_Verbose\",t[t.LogLevel_Debug=1]=\"LogLevel_Debug\",t[t.LogLevel_Info=2]=\"LogLevel_Info\",t[t.LogLevel_Warning=3]=\"LogLevel_Warning\",t[t.LogLevel_Error=4]=\"LogLevel_Error\",t[t.LogLevel_Off=5]=\"LogLevel_Off\",t))(S||{});const b=()=>{};function w(t,...e){E.print(S.LogLevel_Debug,\"[CSM][D]\"+t+\"\\n\",e)}function I(t,...e){E.print(S.LogLevel_Info,\"[CSM][I]\"+t+\"\\n\",e)}function L(t,...e){E.print(S.LogLevel_Warning,\"[CSM][W]\"+t+\"\\n\",e)}function T(t,...e){E.print(S.LogLevel_Error,\"[CSM][E]\"+t+\"\\n\",e)}class E{static print(t,e,i){if(t<C.getLoggingLevel())return;const s=C.coreLogFunction;if(!s)return;s(e.replace(/{(\\d+)}/g,((t,e)=>i[e])))}static dumpBytes(t,e,i){for(let s=0;s<i;s++)s%16==0&&s>0?this.print(t,\"\\n\"):s%8==0&&s>0&&this.print(t,\" \"),this.print(t,\"{0} \",[255&e[s]]);this.print(t,\"\\n\")}constructor(){}}class D{update(){this._model.update(),this._model.drawables.resetDynamicFlags()}getCanvasWidth(){return null==this._model?0:this._model.canvasinfo.CanvasWidth/this._model.canvasinfo.PixelsPerUnit}getCanvasHeight(){return null==this._model?0:this._model.canvasinfo.CanvasHeight/this._model.canvasinfo.PixelsPerUnit}saveParameters(){const t=this._model.parameters.count,e=this._savedParameters.length;for(let i=0;i<t;++i)i<e?this._savedParameters[i]=this._parameterValues[i]:this._savedParameters.push(this._parameterValues[i])}getModel(){return this._model}getPartIndex(t){let e;const i=this._model.parts.count;for(e=0;e<i;++e)if(t==this._partIds[e])return e;return t in this._notExistPartId?this._notExistPartId[t]:(e=i+this._notExistPartId.length,this._notExistPartId[t]=e,this._notExistPartOpacities[e]=0,e)}getPartCount(){return this._model.parts.count}setPartOpacityByIndex(t,e){t in this._notExistPartOpacities?this._notExistPartOpacities[t]=e:(0<=t&&this.getPartCount(),this._partOpacities[t]=e)}setPartOpacityById(t,e){const i=this.getPartIndex(t);i<0||this.setPartOpacityByIndex(i,e)}getPartOpacityByIndex(t){return t in this._notExistPartOpacities?this._notExistPartOpacities[t]:(0<=t&&this.getPartCount(),this._partOpacities[t])}getPartOpacityById(t){const e=this.getPartIndex(t);return e<0?0:this.getPartOpacityByIndex(e)}getParameterIndex(t){let e;const i=this._model.parameters.count;for(e=0;e<i;++e)if(t==this._parameterIds[e])return e;return t in this._notExistParameterId?this._notExistParameterId[t]:(e=this._model.parameters.count+Object.keys(this._notExistParameterId).length,this._notExistParameterId[t]=e,this._notExistParameterValues[e]=0,e)}getParameterCount(){return this._model.parameters.count}getParameterMaximumValue(t){return this._model.parameters.maximumValues[t]}getParameterMinimumValue(t){return this._model.parameters.minimumValues[t]}getParameterDefaultValue(t){return this._model.parameters.defaultValues[t]}getParameterValueByIndex(t){return t in this._notExistParameterValues?this._notExistParameterValues[t]:(0<=t&&this.getParameterCount(),this._parameterValues[t])}getParameterValueById(t){const e=this.getParameterIndex(t);return this.getParameterValueByIndex(e)}setParameterValueByIndex(t,e,i=1){t in this._notExistParameterValues?this._notExistParameterValues[t]=1==i?e:this._notExistParameterValues[t]*(1-i)+e*i:(0<=t&&this.getParameterCount(),this._model.parameters.maximumValues[t]<e&&(e=this._model.parameters.maximumValues[t]),this._model.parameters.minimumValues[t]>e&&(e=this._model.parameters.minimumValues[t]),this._parameterValues[t]=1==i?e:this._parameterValues[t]=this._parameterValues[t]*(1-i)+e*i)}setParameterValueById(t,e,i=1){const s=this.getParameterIndex(t);this.setParameterValueByIndex(s,e,i)}addParameterValueByIndex(t,e,i=1){this.setParameterValueByIndex(t,this.getParameterValueByIndex(t)+e*i)}addParameterValueById(t,e,i=1){const s=this.getParameterIndex(t);this.addParameterValueByIndex(s,e,i)}multiplyParameterValueById(t,e,i=1){const s=this.getParameterIndex(t);this.multiplyParameterValueByIndex(s,e,i)}multiplyParameterValueByIndex(t,e,i=1){this.setParameterValueByIndex(t,this.getParameterValueByIndex(t)*(1+(e-1)*i))}getDrawableIds(){return this._drawableIds.slice()}getDrawableIndex(t){const e=this._model.drawables.count;for(let i=0;i<e;++i)if(this._drawableIds[i]==t)return i;return-1}getDrawableCount(){return this._model.drawables.count}getDrawableId(t){return this._model.drawables.ids[t]}getDrawableRenderOrders(){return this._model.drawables.renderOrders}getDrawableTextureIndices(t){return this._model.drawables.textureIndices[t]}getDrawableDynamicFlagVertexPositionsDidChange(t){const e=this._model.drawables.dynamicFlags;return Live2DCubismCore.Utils.hasVertexPositionsDidChangeBit(e[t])}getDrawableVertexIndexCount(t){return this._model.drawables.indexCounts[t]}getDrawableVertexCount(t){return this._model.drawables.vertexCounts[t]}getDrawableVertices(t){return this.getDrawableVertexPositions(t)}getDrawableVertexIndices(t){return this._model.drawables.indices[t]}getDrawableVertexPositions(t){return this._model.drawables.vertexPositions[t]}getDrawableVertexUvs(t){return this._model.drawables.vertexUvs[t]}getDrawableOpacity(t){return this._model.drawables.opacities[t]}getDrawableCulling(t){const e=this._model.drawables.constantFlags;return!Live2DCubismCore.Utils.hasIsDoubleSidedBit(e[t])}getDrawableBlendMode(t){const e=this._model.drawables.constantFlags;return Live2DCubismCore.Utils.hasBlendAdditiveBit(e[t])?f.CubismBlendMode_Additive:Live2DCubismCore.Utils.hasBlendMultiplicativeBit(e[t])?f.CubismBlendMode_Multiplicative:f.CubismBlendMode_Normal}getDrawableInvertedMaskBit(t){const e=this._model.drawables.constantFlags;return Live2DCubismCore.Utils.hasIsInvertedMaskBit(e[t])}getDrawableMasks(){return this._model.drawables.masks}getDrawableMaskCounts(){return this._model.drawables.maskCounts}isUsingMasking(){for(let t=0;t<this._model.drawables.count;++t)if(!(this._model.drawables.maskCounts[t]<=0))return!0;return!1}getDrawableDynamicFlagIsVisible(t){const e=this._model.drawables.dynamicFlags;return Live2DCubismCore.Utils.hasIsVisibleBit(e[t])}getDrawableDynamicFlagVisibilityDidChange(t){const e=this._model.drawables.dynamicFlags;return Live2DCubismCore.Utils.hasVisibilityDidChangeBit(e[t])}getDrawableDynamicFlagOpacityDidChange(t){const e=this._model.drawables.dynamicFlags;return Live2DCubismCore.Utils.hasOpacityDidChangeBit(e[t])}getDrawableDynamicFlagRenderOrderDidChange(t){const e=this._model.drawables.dynamicFlags;return Live2DCubismCore.Utils.hasRenderOrderDidChangeBit(e[t])}loadParameters(){let t=this._model.parameters.count;const e=this._savedParameters.length;t>e&&(t=e);for(let i=0;i<t;++i)this._parameterValues[i]=this._savedParameters[i]}initialize(){this._parameterValues=this._model.parameters.values,this._partOpacities=this._model.parts.opacities,this._parameterMaximumValues=this._model.parameters.maximumValues,this._parameterMinimumValues=this._model.parameters.minimumValues;{const t=this._model.parameters.ids,e=this._model.parameters.count;for(let i=0;i<e;++i)this._parameterIds.push(t[i])}{const t=this._model.parts.ids,e=this._model.parts.count;for(let i=0;i<e;++i)this._partIds.push(t[i])}{const t=this._model.drawables.ids,e=this._model.drawables.count;for(let i=0;i<e;++i)this._drawableIds.push(t[i])}}constructor(t){this._model=t,this._savedParameters=[],this._parameterIds=[],this._drawableIds=[],this._partIds=[],this._notExistPartId={},this._notExistParameterId={},this._notExistParameterValues={},this._notExistPartOpacities={},this.initialize()}release(){this._model.release(),this._model=void 0}}class F{static create(t){const e=Live2DCubismCore.Moc.fromArrayBuffer(t);if(e)return new F(e);throw new Error(\"Unknown error\")}createModel(){let t;const e=Live2DCubismCore.Model.fromMoc(this._moc);if(e)return t=new D(e),++this._modelCount,t;throw new Error(\"Unknown error\")}deleteModel(t){null!=t&&--this._modelCount}constructor(t){this._moc=t,this._modelCount=0}release(){this._moc._release(),this._moc=void 0}}class A{constructor(t,e){this._json=t}release(){this._json=void 0}getUserDataCount(){return this._json.Meta.UserDataCount}getTotalUserDataSize(){return this._json.Meta.TotalUserDataSize}getUserDataTargetType(t){return this._json.UserData[t].Target}getUserDataId(t){return this._json.UserData[t].Id}getUserDataValue(t){return this._json.UserData[t].Value}}class B{static create(t,e){const i=new B;return i.parseUserData(t,e),i}getArtMeshUserDatas(){return this._artMeshUserDataNode}parseUserData(t,e){let i=new A(t,e);const s=i.getUserDataCount();for(let r=0;r<s;r++){const t={targetId:i.getUserDataId(r),targetType:i.getUserDataTargetType(r),value:i.getUserDataValue(r)};this._userDataNodes.push(t),\"ArtMesh\"==t.targetType&&this._artMeshUserDataNode.push(t)}i.release()}constructor(){this._userDataNodes=[],this._artMeshUserDataNode=[]}release(){this._userDataNodes=null}}class R{constructor(){this._fadeInSeconds=-1,this._fadeOutSeconds=-1,this._weight=1,this._offsetSeconds=0,this._firedEventValues=[]}release(){this._weight=0}updateParameters(t,e,i){if(!e.isAvailable()||e.isFinished())return;if(!e.isStarted()){e.setIsStarted(!0),e.setStartTime(i-this._offsetSeconds),e.setFadeInStartTime(i);const t=this.getDuration();e.getEndTime()<0&&e.setEndTime(t<=0?-1:e.getStartTime()+t)}let s=this._weight;s=s*(0==this._fadeInSeconds?1:g.getEasingSine((i-e.getFadeInStartTime())/this._fadeInSeconds))*(0==this._fadeOutSeconds||e.getEndTime()<0?1:g.getEasingSine((e.getEndTime()-i)/this._fadeOutSeconds)),e.setState(i,s),this.doUpdateParameters(t,i,s,e),e.getEndTime()>0&&e.getEndTime()<i&&e.setIsFinished(!0)}setFadeInTime(t){this._fadeInSeconds=t}setFadeOutTime(t){this._fadeOutSeconds=t}getFadeOutTime(){return this._fadeOutSeconds}getFadeInTime(){return this._fadeInSeconds}setWeight(t){this._weight=t}getWeight(){return this._weight}getDuration(){return-1}getLoopDuration(){return-1}setOffsetTime(t){this._offsetSeconds=t}getFiredEvent(t,e){return this._firedEventValues}setFinishedMotionHandler(t){this._onFinishedMotion=t}getFinishedMotionHandler(){return this._onFinishedMotion}}class O extends R{constructor(){super(),this._parameters=[]}static create(t){const e=new O,i=t.FadeInTime,s=t.FadeOutTime;e.setFadeInTime(void 0!==i?i:1),e.setFadeOutTime(void 0!==s?s:1);const r=t.Parameters||[];for(let a=0;a<r.length;++a){const t=r[a],i=t.Id,s=t.Value;let o;switch(t.Blend){case\"Multiply\":o=U.ExpressionBlendType_Multiply;break;case\"Overwrite\":o=U.ExpressionBlendType_Overwrite;break;default:o=U.ExpressionBlendType_Add}const n={parameterId:i,blendType:o,value:s};e._parameters.push(n)}return e}doUpdateParameters(t,e,i,s){for(let r=0;r<this._parameters.length;++r){const e=this._parameters[r];switch(e.blendType){case U.ExpressionBlendType_Add:t.addParameterValueById(e.parameterId,e.value,i);break;case U.ExpressionBlendType_Multiply:t.multiplyParameterValueById(e.parameterId,e.value,i);break;case U.ExpressionBlendType_Overwrite:t.setParameterValueById(e.parameterId,e.value,i)}}}}var k,U=(t=>(t[t.ExpressionBlendType_Add=0]=\"ExpressionBlendType_Add\",t[t.ExpressionBlendType_Multiply=1]=\"ExpressionBlendType_Multiply\",t[t.ExpressionBlendType_Overwrite=2]=\"ExpressionBlendType_Overwrite\",t))(U||{});t.CubismConfig=void 0,(k=t.CubismConfig||(t.CubismConfig={})).supportMoreMaskDivisions=!0,k.setOpacityFromMotion=!1;var N=(t=>(t[t.CubismMotionCurveTarget_Model=0]=\"CubismMotionCurveTarget_Model\",t[t.CubismMotionCurveTarget_Parameter=1]=\"CubismMotionCurveTarget_Parameter\",t[t.CubismMotionCurveTarget_PartOpacity=2]=\"CubismMotionCurveTarget_PartOpacity\",t))(N||{}),V=(t=>(t[t.CubismMotionSegmentType_Linear=0]=\"CubismMotionSegmentType_Linear\",t[t.CubismMotionSegmentType_Bezier=1]=\"CubismMotionSegmentType_Bezier\",t[t.CubismMotionSegmentType_Stepped=2]=\"CubismMotionSegmentType_Stepped\",t[t.CubismMotionSegmentType_InverseStepped=3]=\"CubismMotionSegmentType_InverseStepped\",t))(V||{});class j{constructor(t=0,e=0){this.time=t,this.value=e}}class G{constructor(){this.basePointIndex=0,this.segmentType=0}}class X{constructor(){this.id=\"\",this.type=0,this.segmentCount=0,this.baseSegmentIndex=0,this.fadeInTime=0,this.fadeOutTime=0}}class z{constructor(){this.fireTime=0,this.value=\"\"}}class W{constructor(){this.duration=0,this.loop=!1,this.curveCount=0,this.eventCount=0,this.fps=0,this.curves=[],this.segments=[],this.points=[],this.events=[]}}class H{constructor(t){this._json=t}release(){this._json=void 0}getMotionDuration(){return this._json.Meta.Duration}isMotionLoop(){return this._json.Meta.Loop||!1}getEvaluationOptionFlag(t){return Y.EvaluationOptionFlag_AreBeziersRistricted==t&&!!this._json.Meta.AreBeziersRestricted}getMotionCurveCount(){return this._json.Meta.CurveCount}getMotionFps(){return this._json.Meta.Fps}getMotionTotalSegmentCount(){return this._json.Meta.TotalSegmentCount}getMotionTotalPointCount(){return this._json.Meta.TotalPointCount}getMotionFadeInTime(){return this._json.Meta.FadeInTime}getMotionFadeOutTime(){return this._json.Meta.FadeOutTime}getMotionCurveTarget(t){return this._json.Curves[t].Target}getMotionCurveId(t){return this._json.Curves[t].Id}getMotionCurveFadeInTime(t){return this._json.Curves[t].FadeInTime}getMotionCurveFadeOutTime(t){return this._json.Curves[t].FadeOutTime}getMotionCurveSegmentCount(t){return this._json.Curves[t].Segments.length}getMotionCurveSegment(t,e){return this._json.Curves[t].Segments[e]}getEventCount(){return this._json.Meta.UserDataCount||0}getTotalEventValueSize(){return this._json.Meta.TotalUserDataSize}getEventTime(t){return this._json.UserData[t].Time}getEventValue(t){return this._json.UserData[t].Value}}var Y=(t=>(t[t.EvaluationOptionFlag_AreBeziersRistricted=0]=\"EvaluationOptionFlag_AreBeziersRistricted\",t))(Y||{});function q(t,e,i){const s=new j;return s.time=t.time+(e.time-t.time)*i,s.value=t.value+(e.value-t.value)*i,s}function $(t,e){let i=(e-t[0].time)/(t[1].time-t[0].time);return i<0&&(i=0),t[0].value+(t[1].value-t[0].value)*i}function Z(t,e){let i=(e-t[0].time)/(t[3].time-t[0].time);i<0&&(i=0);const s=q(t[0],t[1],i),r=q(t[1],t[2],i),a=q(t[2],t[3],i),o=q(s,r,i),n=q(r,a,i);return q(o,n,i).value}function J(t,e){const i=e,s=t[0].time,r=t[3].time,a=t[1].time,o=t[2].time,n=r-3*o+3*a-s,l=3*o-6*a+3*s,h=3*a-3*s,u=s-i,d=g.cardanoAlgorithmForBezier(n,l,h,u),c=q(t[0],t[1],d),m=q(t[1],t[2],d),p=q(t[2],t[3],d),_=q(c,m,d),f=q(m,p,d);return q(_,f,d).value}function Q(t,e){return t[0].value}function K(t,e){return t[1].value}function tt(t,e,i){const s=t.curves[e];let r=-1;const a=s.baseSegmentIndex+s.segmentCount;let o=0;for(let l=s.baseSegmentIndex;l<a;++l)if(o=t.segments[l].basePointIndex+(t.segments[l].segmentType==V.CubismMotionSegmentType_Bezier?3:1),t.points[o].time>i){r=l;break}if(-1==r)return t.points[o].value;const n=t.segments[r];return n.evaluate(t.points.slice(n.basePointIndex),i)}class et extends R{constructor(){super(),this._eyeBlinkParameterIds=[],this._lipSyncParameterIds=[],this._sourceFrameRate=30,this._loopDurationSeconds=-1,this._isLoop=!1,this._isLoopFadeIn=!0,this._lastWeight=0}static create(t,e){const i=new et;return i.parse(t),i._sourceFrameRate=i._motionData.fps,i._loopDurationSeconds=i._motionData.duration,i._onFinishedMotion=e,i}doUpdateParameters(e,i,s,r){null==this._modelCurveIdEyeBlink&&(this._modelCurveIdEyeBlink=\"EyeBlink\"),null==this._modelCurveIdLipSync&&(this._modelCurveIdLipSync=\"LipSync\");let a=i-r.getStartTime();a<0&&(a=0);let o=Number.MAX_VALUE,n=Number.MAX_VALUE;const l=64;let h=0,u=0;this._eyeBlinkParameterIds.length>l&&w(\"too many eye blink targets : {0}\",this._eyeBlinkParameterIds.length),this._lipSyncParameterIds.length>l&&w(\"too many lip sync targets : {0}\",this._lipSyncParameterIds.length);const d=this._fadeInSeconds<=0?1:g.getEasingSine((i-r.getFadeInStartTime())/this._fadeInSeconds),c=this._fadeOutSeconds<=0||r.getEndTime()<0?1:g.getEasingSine((r.getEndTime()-i)/this._fadeOutSeconds);let m,p,_,f=a;if(this._isLoop)for(;f>this._motionData.duration;)f-=this._motionData.duration;const y=this._motionData.curves;for(p=0;p<this._motionData.curveCount&&y[p].type==N.CubismMotionCurveTarget_Model;++p)m=tt(this._motionData,p,f),y[p].id==this._modelCurveIdEyeBlink?n=m:y[p].id==this._modelCurveIdLipSync&&(o=m);for(;p<this._motionData.curveCount&&y[p].type==N.CubismMotionCurveTarget_Parameter;++p){if(_=e.getParameterIndex(y[p].id),-1==_)continue;const t=e.getParameterValueByIndex(_);if(m=tt(this._motionData,p,f),n!=Number.MAX_VALUE)for(let e=0;e<this._eyeBlinkParameterIds.length&&e<l;++e)if(this._eyeBlinkParameterIds[e]==y[p].id){m*=n,u|=1<<e;break}if(o!=Number.MAX_VALUE)for(let e=0;e<this._lipSyncParameterIds.length&&e<l;++e)if(this._lipSyncParameterIds[e]==y[p].id){m+=o,h|=1<<e;break}let a;if(y[p].fadeInTime<0&&y[p].fadeOutTime<0)a=t+(m-t)*s;else{let e,s;e=y[p].fadeInTime<0?d:0==y[p].fadeInTime?1:g.getEasingSine((i-r.getFadeInStartTime())/y[p].fadeInTime),s=y[p].fadeOutTime<0?c:0==y[p].fadeOutTime||r.getEndTime()<0?1:g.getEasingSine((r.getEndTime()-i)/y[p].fadeOutTime);a=t+(m-t)*(this._weight*e*s)}e.setParameterValueByIndex(_,a,1)}if(n!=Number.MAX_VALUE)for(let t=0;t<this._eyeBlinkParameterIds.length&&t<l;++t){const i=e.getParameterValueById(this._eyeBlinkParameterIds[t]);if(u>>t&1)continue;const r=i+(n-i)*s;e.setParameterValueById(this._eyeBlinkParameterIds[t],r)}if(o!=Number.MAX_VALUE)for(let t=0;t<this._lipSyncParameterIds.length&&t<l;++t){const i=e.getParameterValueById(this._lipSyncParameterIds[t]);if(h>>t&1)continue;const r=i+(o-i)*s;e.setParameterValueById(this._lipSyncParameterIds[t],r)}for(;p<this._motionData.curveCount&&y[p].type==N.CubismMotionCurveTarget_PartOpacity;++p)if(m=tt(this._motionData,p,f),t.CubismConfig.setOpacityFromMotion)e.setPartOpacityById(y[p].id,m);else{if(_=e.getParameterIndex(y[p].id),-1==_)continue;e.setParameterValueByIndex(_,m)}a>=this._motionData.duration&&(this._isLoop?(r.setStartTime(i),this._isLoopFadeIn&&r.setFadeInStartTime(i)):(this._onFinishedMotion&&this._onFinishedMotion(this),r.setIsFinished(!0))),this._lastWeight=s}setIsLoop(t){this._isLoop=t}isLoop(){return this._isLoop}setIsLoopFadeIn(t){this._isLoopFadeIn=t}isLoopFadeIn(){return this._isLoopFadeIn}getDuration(){return this._isLoop?-1:this._loopDurationSeconds}getLoopDuration(){return this._loopDurationSeconds}setParameterFadeInTime(t,e){const i=this._motionData.curves;for(let s=0;s<this._motionData.curveCount;++s)if(t==i[s].id)return void(i[s].fadeInTime=e)}setParameterFadeOutTime(t,e){const i=this._motionData.curves;for(let s=0;s<this._motionData.curveCount;++s)if(t==i[s].id)return void(i[s].fadeOutTime=e)}getParameterFadeInTime(t){const e=this._motionData.curves;for(let i=0;i<this._motionData.curveCount;++i)if(t==e[i].id)return e[i].fadeInTime;return-1}getParameterFadeOutTime(t){const e=this._motionData.curves;for(let i=0;i<this._motionData.curveCount;++i)if(t==e[i].id)return e[i].fadeOutTime;return-1}setEffectIds(t,e){this._eyeBlinkParameterIds=t,this._lipSyncParameterIds=e}release(){this._motionData=void 0}parse(t){this._motionData=new W;let e=new H(t);this._motionData.duration=e.getMotionDuration(),this._motionData.loop=e.isMotionLoop(),this._motionData.curveCount=e.getMotionCurveCount(),this._motionData.fps=e.getMotionFps(),this._motionData.eventCount=e.getEventCount();const i=e.getEvaluationOptionFlag(Y.EvaluationOptionFlag_AreBeziersRistricted),s=e.getMotionFadeInTime(),r=e.getMotionFadeOutTime();this._fadeInSeconds=void 0!==s?s<0?1:s:1,this._fadeOutSeconds=void 0!==r?r<0?1:r:1,this._motionData.curves=Array.from({length:this._motionData.curveCount}).map((()=>new X)),this._motionData.segments=Array.from({length:e.getMotionTotalSegmentCount()}).map((()=>new G)),this._motionData.events=Array.from({length:this._motionData.eventCount}).map((()=>new z)),this._motionData.points=[];let a=0,o=0;for(let n=0;n<this._motionData.curveCount;++n){const t=this._motionData.curves[n];switch(e.getMotionCurveTarget(n)){case\"Model\":t.type=N.CubismMotionCurveTarget_Model;break;case\"Parameter\":t.type=N.CubismMotionCurveTarget_Parameter;break;case\"PartOpacity\":t.type=N.CubismMotionCurveTarget_PartOpacity;break;default:L('Warning : Unable to get segment type from Curve! The number of \"CurveCount\" may be incorrect!')}t.id=e.getMotionCurveId(n),t.baseSegmentIndex=o;const s=e.getMotionCurveFadeInTime(n),r=e.getMotionCurveFadeOutTime(n);t.fadeInTime=void 0!==s?s:-1,t.fadeOutTime=void 0!==r?r:-1;for(let l=0;l<e.getMotionCurveSegmentCount(n);){0==l?(this._motionData.segments[o].basePointIndex=a,this._motionData.points[a]=new j(e.getMotionCurveSegment(n,l),e.getMotionCurveSegment(n,l+1)),a+=1,l+=2):this._motionData.segments[o].basePointIndex=a-1;switch(e.getMotionCurveSegment(n,l)){case V.CubismMotionSegmentType_Linear:this._motionData.segments[o].segmentType=V.CubismMotionSegmentType_Linear,this._motionData.segments[o].evaluate=$,this._motionData.points[a]=new j(e.getMotionCurveSegment(n,l+1),e.getMotionCurveSegment(n,l+2)),a+=1,l+=3;break;case V.CubismMotionSegmentType_Bezier:this._motionData.segments[o].segmentType=V.CubismMotionSegmentType_Bezier,this._motionData.segments[o].evaluate=i?Z:J,this._motionData.points[a]=new j(e.getMotionCurveSegment(n,l+1),e.getMotionCurveSegment(n,l+2)),this._motionData.points[a+1]=new j(e.getMotionCurveSegment(n,l+3),e.getMotionCurveSegment(n,l+4)),this._motionData.points[a+2]=new j(e.getMotionCurveSegment(n,l+5),e.getMotionCurveSegment(n,l+6)),a+=3,l+=7;break;case V.CubismMotionSegmentType_Stepped:this._motionData.segments[o].segmentType=V.CubismMotionSegmentType_Stepped,this._motionData.segments[o].evaluate=Q,this._motionData.points[a]=new j(e.getMotionCurveSegment(n,l+1),e.getMotionCurveSegment(n,l+2)),a+=1,l+=3;break;case V.CubismMotionSegmentType_InverseStepped:this._motionData.segments[o].segmentType=V.CubismMotionSegmentType_InverseStepped,this._motionData.segments[o].evaluate=K,this._motionData.points[a]=new j(e.getMotionCurveSegment(n,l+1),e.getMotionCurveSegment(n,l+2)),a+=1,l+=3}++t.segmentCount,++o}this._motionData.curves.push(t)}for(let n=0;n<e.getEventCount();++n)this._motionData.events[n].fireTime=e.getEventTime(n),this._motionData.events[n].value=e.getEventValue(n);e.release()}getFiredEvent(t,e){this._firedEventValues.length=0;for(let i=0;i<this._motionData.eventCount;++i)this._motionData.events[i].fireTime>t&&this._motionData.events[i].fireTime<=e&&this._firedEventValues.push(this._motionData.events[i].value);return this._firedEventValues}}class it{constructor(){this._autoDelete=!1,this._available=!0,this._finished=!1,this._started=!1,this._startTimeSeconds=-1,this._fadeInStartTimeSeconds=0,this._endTimeSeconds=-1,this._stateTimeSeconds=0,this._stateWeight=0,this._lastEventCheckSeconds=0,this._motionQueueEntryHandle=this,this._fadeOutSeconds=0,this._isTriggeredFadeOut=!1}release(){this._autoDelete&&this._motion&&this._motion.release()}setFadeOut(t){this._fadeOutSeconds=t,this._isTriggeredFadeOut=!0}startFadeOut(t,e){const i=e+t;this._isTriggeredFadeOut=!0,(this._endTimeSeconds<0||i<this._endTimeSeconds)&&(this._endTimeSeconds=i)}isFinished(){return this._finished}isStarted(){return this._started}getStartTime(){return this._startTimeSeconds}getFadeInStartTime(){return this._fadeInStartTimeSeconds}getEndTime(){return this._endTimeSeconds}setStartTime(t){this._startTimeSeconds=t}setFadeInStartTime(t){this._fadeInStartTimeSeconds=t}setEndTime(t){this._endTimeSeconds=t}setIsFinished(t){this._finished=t}setIsStarted(t){this._started=t}isAvailable(){return this._available}setIsAvailable(t){this._available=t}setState(t,e){this._stateTimeSeconds=t,this._stateWeight=e}getStateTime(){return this._stateTimeSeconds}getStateWeight(){return this._stateWeight}getLastCheckEventSeconds(){return this._lastEventCheckSeconds}setLastCheckEventSeconds(t){this._lastEventCheckSeconds=t}isTriggeredFadeOut(){return this._isTriggeredFadeOut}getFadeOutSeconds(){return this._fadeOutSeconds}}class st{constructor(){this._userTimeSeconds=0,this._eventCustomData=null,this._motions=[]}release(){for(let t=0;t<this._motions.length;++t)this._motions[t]&&this._motions[t].release();this._motions=void 0}startMotion(t,e,i){if(null==t)return rt;let s;for(let r=0;r<this._motions.length;++r)s=this._motions[r],null!=s&&s.setFadeOut(s._motion.getFadeOutTime());return s=new it,s._autoDelete=e,s._motion=t,this._motions.push(s),s._motionQueueEntryHandle}isFinished(){let t=0;for(;t<this._motions.length;){const e=this._motions[t];if(null==e){this._motions.splice(t,1);continue}if(null!=e._motion){if(!e.isFinished())return!1;t++}else e.release(),this._motions.splice(t,1)}return!0}isFinishedByHandle(t){for(let e=0;e<this._motions.length;e++){const i=this._motions[e];if(null!=i&&(i._motionQueueEntryHandle==t&&!i.isFinished()))return!1}return!0}stopAllMotions(){for(let t=0;t<this._motions.length;t++){const e=this._motions[t];null!=e&&e.release()}this._motions=[]}getCubismMotionQueueEntry(t){return this._motions.find((e=>null!=e&&e._motionQueueEntryHandle==t))}setEventCallback(t,e=null){this._eventCallBack=t,this._eventCustomData=e}doUpdateMotion(t,e){let i=!1,s=0;for(;s<this._motions.length;){const r=this._motions[s];if(null==r){this._motions.splice(s,1);continue}const a=r._motion;if(null==a){r.release(),this._motions.splice(s,1);continue}a.updateParameters(t,r,e),i=!0;const o=a.getFiredEvent(r.getLastCheckEventSeconds()-r.getStartTime(),e-r.getStartTime());for(let t=0;t<o.length;++t)this._eventCallBack(this,o[t],this._eventCustomData);r.setLastCheckEventSeconds(e),r.isFinished()?(r.release(),this._motions.splice(s,1)):(r.isTriggeredFadeOut()&&r.startFadeOut(r.getFadeOutSeconds(),e),s++)}return i}}const rt=-1;var at=(t=>(t[t.CubismPhysicsTargetType_Parameter=0]=\"CubismPhysicsTargetType_Parameter\",t))(at||{}),ot=(t=>(t[t.CubismPhysicsSource_X=0]=\"CubismPhysicsSource_X\",t[t.CubismPhysicsSource_Y=1]=\"CubismPhysicsSource_Y\",t[t.CubismPhysicsSource_Angle=2]=\"CubismPhysicsSource_Angle\",t))(ot||{});class nt{constructor(){this.initialPosition=new c(0,0),this.position=new c(0,0),this.lastPosition=new c(0,0),this.lastGravity=new c(0,0),this.force=new c(0,0),this.velocity=new c(0,0)}}class lt{constructor(){this.normalizationPosition={},this.normalizationAngle={}}}class ht{constructor(){this.source={}}}class ut{constructor(){this.destination={},this.translationScale=new c(0,0)}}class dt{constructor(){this.settings=[],this.inputs=[],this.outputs=[],this.particles=[],this.gravity=new c(0,0),this.wind=new c(0,0)}}class ct{constructor(t){this._json=t}release(){this._json=void 0}getGravity(){const t=new c(0,0);return t.x=this._json.Meta.EffectiveForces.Gravity.X,t.y=this._json.Meta.EffectiveForces.Gravity.Y,t}getWind(){const t=new c(0,0);return t.x=this._json.Meta.EffectiveForces.Wind.X,t.y=this._json.Meta.EffectiveForces.Wind.Y,t}getSubRigCount(){return this._json.Meta.PhysicsSettingCount}getTotalInputCount(){return this._json.Meta.TotalInputCount}getTotalOutputCount(){return this._json.Meta.TotalOutputCount}getVertexCount(){return this._json.Meta.VertexCount}getNormalizationPositionMinimumValue(t){return this._json.PhysicsSettings[t].Normalization.Position.Minimum}getNormalizationPositionMaximumValue(t){return this._json.PhysicsSettings[t].Normalization.Position.Maximum}getNormalizationPositionDefaultValue(t){return this._json.PhysicsSettings[t].Normalization.Position.Default}getNormalizationAngleMinimumValue(t){return this._json.PhysicsSettings[t].Normalization.Angle.Minimum}getNormalizationAngleMaximumValue(t){return this._json.PhysicsSettings[t].Normalization.Angle.Maximum}getNormalizationAngleDefaultValue(t){return this._json.PhysicsSettings[t].Normalization.Angle.Default}getInputCount(t){return this._json.PhysicsSettings[t].Input.length}getInputWeight(t,e){return this._json.PhysicsSettings[t].Input[e].Weight}getInputReflect(t,e){return this._json.PhysicsSettings[t].Input[e].Reflect}getInputType(t,e){return this._json.PhysicsSettings[t].Input[e].Type}getInputSourceId(t,e){return this._json.PhysicsSettings[t].Input[e].Source.Id}getOutputCount(t){return this._json.PhysicsSettings[t].Output.length}getOutputVertexIndex(t,e){return this._json.PhysicsSettings[t].Output[e].VertexIndex}getOutputAngleScale(t,e){return this._json.PhysicsSettings[t].Output[e].Scale}getOutputWeight(t,e){return this._json.PhysicsSettings[t].Output[e].Weight}getOutputDestinationId(t,e){return this._json.PhysicsSettings[t].Output[e].Destination.Id}getOutputType(t,e){return this._json.PhysicsSettings[t].Output[e].Type}getOutputReflect(t,e){return this._json.PhysicsSettings[t].Output[e].Reflect}getParticleCount(t){return this._json.PhysicsSettings[t].Vertices.length}getParticleMobility(t,e){return this._json.PhysicsSettings[t].Vertices[e].Mobility}getParticleDelay(t,e){return this._json.PhysicsSettings[t].Vertices[e].Delay}getParticleAcceleration(t,e){return this._json.PhysicsSettings[t].Vertices[e].Acceleration}getParticleRadius(t,e){return this._json.PhysicsSettings[t].Vertices[e].Radius}getParticlePosition(t,e){const i=new c(0,0);return i.x=this._json.PhysicsSettings[t].Vertices[e].Position.X,i.y=this._json.PhysicsSettings[t].Vertices[e].Position.Y,i}}const mt=\"Angle\";class gt{static create(t){const e=new gt;return e.parse(t),e._physicsRig.gravity.y=0,e}evaluate(t,e){let i,s,r,a;const o=new c;let n,l,h,u,d,m,p,_;d=t.getModel().parameters.values,m=t.getModel().parameters.maximumValues,p=t.getModel().parameters.minimumValues,_=t.getModel().parameters.defaultValues;for(let f=0;f<this._physicsRig.subRigCount;++f){i={angle:0},o.x=0,o.y=0,n=this._physicsRig.settings[f],l=this._physicsRig.inputs.slice(n.baseInputIndex),h=this._physicsRig.outputs.slice(n.baseOutputIndex),u=this._physicsRig.particles.slice(n.baseParticleIndex);for(let e=0;e<n.inputCount;++e)s=l[e].weight/100,-1==l[e].sourceParameterIndex&&(l[e].sourceParameterIndex=t.getParameterIndex(l[e].source.id)),l[e].getNormalizedParameterValue(o,i,d[l[e].sourceParameterIndex],p[l[e].sourceParameterIndex],m[l[e].sourceParameterIndex],_[l[e].sourceParameterIndex],n.normalizationPosition,n.normalizationAngle,l[e].reflect,s);r=g.degreesToRadian(-i.angle),o.x=o.x*g.cos(r)-o.y*g.sin(r),o.y=o.x*g.sin(r)+o.y*g.cos(r),wt(u,n.particleCount,o,i.angle,this._options.wind,.001*n.normalizationPosition.maximum,e,5);for(let e=0;e<n.outputCount;++e){const i=h[e].vertexIndex;if(i<1||i>=n.particleCount)break;-1==h[e].destinationParameterIndex&&(h[e].destinationParameterIndex=t.getParameterIndex(h[e].destination.id));const s=new c;s.x=u[i].position.x-u[i-1].position.x,s.y=u[i].position.y-u[i-1].position.y,a=h[e].getValue(s,u,i,h[e].reflect,this._options.gravity);const r=h[e].destinationParameterIndex,o=!Float32Array.prototype.slice&&\"subarray\"in Float32Array.prototype?JSON.parse(JSON.stringify(d.subarray(r))):d.slice(r);It(o,p[r],m[r],a,h[e]);for(let t=r,e=0;t<d.length;t++,e++)d[t]=o[e]}}}setOptions(t){this._options=t}getOption(){return this._options}constructor(){this._options=new pt,this._options.gravity.y=-1,this._options.gravity.x=0,this._options.wind.x=0,this._options.wind.y=0}release(){this._physicsRig=void 0}parse(t){this._physicsRig=new dt;let e=new ct(t);this._physicsRig.gravity=e.getGravity(),this._physicsRig.wind=e.getWind(),this._physicsRig.subRigCount=e.getSubRigCount();let i=0,s=0,r=0;for(let a=0;a<this._physicsRig.subRigCount;++a){const t=new lt;t.normalizationPosition.minimum=e.getNormalizationPositionMinimumValue(a),t.normalizationPosition.maximum=e.getNormalizationPositionMaximumValue(a),t.normalizationPosition.defalut=e.getNormalizationPositionDefaultValue(a),t.normalizationAngle.minimum=e.getNormalizationAngleMinimumValue(a),t.normalizationAngle.maximum=e.getNormalizationAngleMaximumValue(a),t.normalizationAngle.defalut=e.getNormalizationAngleDefaultValue(a),t.inputCount=e.getInputCount(a),t.baseInputIndex=i,i+=t.inputCount;for(let i=0;i<t.inputCount;++i){const t=new ht;switch(t.sourceParameterIndex=-1,t.weight=e.getInputWeight(a,i),t.reflect=e.getInputReflect(a,i),e.getInputType(a,i)){case\"X\":t.type=ot.CubismPhysicsSource_X,t.getNormalizedParameterValue=_t;break;case\"Y\":t.type=ot.CubismPhysicsSource_Y,t.getNormalizedParameterValue=ft;break;case mt:t.type=ot.CubismPhysicsSource_Angle,t.getNormalizedParameterValue=yt}t.source.targetType=at.CubismPhysicsTargetType_Parameter,t.source.id=e.getInputSourceId(a,i),this._physicsRig.inputs.push(t)}t.outputCount=e.getOutputCount(a),t.baseOutputIndex=s,s+=t.outputCount;for(let i=0;i<t.outputCount;++i){const t=new ut;switch(t.destinationParameterIndex=-1,t.vertexIndex=e.getOutputVertexIndex(a,i),t.angleScale=e.getOutputAngleScale(a,i),t.weight=e.getOutputWeight(a,i),t.destination.targetType=at.CubismPhysicsTargetType_Parameter,t.destination.id=e.getOutputDestinationId(a,i),e.getOutputType(a,i)){case\"X\":t.type=ot.CubismPhysicsSource_X,t.getValue=xt,t.getScale=Ct;break;case\"Y\":t.type=ot.CubismPhysicsSource_Y,t.getValue=vt,t.getScale=St;break;case mt:t.type=ot.CubismPhysicsSource_Angle,t.getValue=Mt,t.getScale=bt}t.reflect=e.getOutputReflect(a,i),this._physicsRig.outputs.push(t)}t.particleCount=e.getParticleCount(a),t.baseParticleIndex=r,r+=t.particleCount;for(let i=0;i<t.particleCount;++i){const t=new nt;t.mobility=e.getParticleMobility(a,i),t.delay=e.getParticleDelay(a,i),t.acceleration=e.getParticleAcceleration(a,i),t.radius=e.getParticleRadius(a,i),t.position=e.getParticlePosition(a,i),this._physicsRig.particles.push(t)}this._physicsRig.settings.push(t)}this.initialize(),e.release()}initialize(){let t,e,i;for(let s=0;s<this._physicsRig.subRigCount;++s){e=this._physicsRig.settings[s],t=this._physicsRig.particles.slice(e.baseParticleIndex),t[0].initialPosition=new c(0,0),t[0].lastPosition=new c(t[0].initialPosition.x,t[0].initialPosition.y),t[0].lastGravity=new c(0,-1),t[0].lastGravity.y*=-1,t[0].velocity=new c(0,0),t[0].force=new c(0,0);for(let s=1;s<e.particleCount;++s)i=new c(0,0),i.y=t[s].radius,t[s].initialPosition=new c(t[s-1].initialPosition.x+i.x,t[s-1].initialPosition.y+i.y),t[s].position=new c(t[s].initialPosition.x,t[s].initialPosition.y),t[s].lastPosition=new c(t[s].initialPosition.x,t[s].initialPosition.y),t[s].lastGravity=new c(0,-1),t[s].lastGravity.y*=-1,t[s].velocity=new c(0,0),t[s].force=new c(0,0)}}}class pt{constructor(){this.gravity=new c(0,0),this.wind=new c(0,0)}}function _t(t,e,i,s,r,a,o,n,l,h){t.x+=Lt(i,s,r,a,o.minimum,o.maximum,o.defalut,l)*h}function ft(t,e,i,s,r,a,o,n,l,h){t.y+=Lt(i,s,r,a,o.minimum,o.maximum,o.defalut,l)*h}function yt(t,e,i,s,r,a,o,n,l,h){e.angle+=Lt(i,s,r,a,n.minimum,n.maximum,n.defalut,l)*h}function xt(t,e,i,s,r){let a=t.x;return s&&(a*=-1),a}function vt(t,e,i,s,r){let a=t.y;return s&&(a*=-1),a}function Mt(t,e,i,s,r){let a;return r=i>=2?e[i-1].position.substract(e[i-2].position):r.multiplyByScaler(-1),a=g.directionToRadian(r,t),s&&(a*=-1),a}function Pt(t,e){return Math.min(t,e)+function(t,e){return Math.abs(Math.max(t,e)-Math.min(t,e))}(t,e)/2}function Ct(t,e){return t.x}function St(t,e){return t.y}function bt(t,e){return e}function wt(t,e,i,s,r,a,o,n){let l,h,u,d,m=new c(0,0),p=new c(0,0),_=new c(0,0),f=new c(0,0);t[0].position=new c(i.x,i.y),l=g.degreesToRadian(s),d=g.radianToDirection(l),d.normalize();for(let y=1;y<e;++y)t[y].force=d.multiplyByScaler(t[y].acceleration).add(r),t[y].lastPosition=new c(t[y].position.x,t[y].position.y),h=t[y].delay*o*30,m=t[y].position.substract(t[y-1].position),u=g.directionToRadian(t[y].lastGravity,d)/n,m.x=g.cos(u)*m.x-m.y*g.sin(u),m.y=g.sin(u)*m.x+m.y*g.cos(u),t[y].position=t[y-1].position.add(m),p=t[y].velocity.multiplyByScaler(h),_=t[y].force.multiplyByScaler(h).multiplyByScaler(h),t[y].position=t[y].position.add(p).add(_),f=t[y].position.substract(t[y-1].position),f.normalize(),t[y].position=t[y-1].position.add(f.multiplyByScaler(t[y].radius)),g.abs(t[y].position.x)<a&&(t[y].position.x=0),0!=h&&(t[y].velocity=t[y].position.substract(t[y].lastPosition),t[y].velocity=t[y].velocity.divisionByScalar(h),t[y].velocity=t[y].velocity.multiplyByScaler(t[y].mobility)),t[y].force=new c(0,0),t[y].lastGravity=new c(d.x,d.y)}function It(t,e,i,s,r){let a,o,n;a=r.getScale(r.translationScale,r.angleScale),o=s*a,o<e?(o<r.valueBelowMinimum&&(r.valueBelowMinimum=o),o=e):o>i&&(o>r.valueExceededMaximum&&(r.valueExceededMaximum=o),o=i),n=r.weight/100,n>=1||(o=t[0]*(1-n)+o*n),t[0]=o}function Lt(t,e,i,s,r,a,o,n){let l=0;const h=g.max(i,e);h<t&&(t=h);const u=g.min(i,e);u>t&&(t=u);const d=g.min(r,a),c=g.max(r,a),m=o,p=Pt(u,h),_=t-p;switch(Math.sign(_)){case 1:{const t=c-m,e=h-p;0!=e&&(l=_*(t/e),l+=m);break}case-1:{const t=d-m,e=u-p;0!=e&&(l=_*(t/e),l+=m);break}case 0:l=m}return n?l:-1*l}class Tt{constructor(t=0,e=0,i=0,s=0){this.x=t,this.y=e,this.width=i,this.height=s}getCenterX(){return this.x+.5*this.width}getCenterY(){return this.y+.5*this.height}getRight(){return this.x+this.width}getBottom(){return this.y+this.height}setRect(t){this.x=t.x,this.y=t.y,this.width=t.width,this.height=t.height}expand(t,e){this.x-=t,this.y-=e,this.width+=2*t,this.height+=2*e}}let Et,Dt,Ft;class At{getChannelFlagAsColor(t){return this._channelColors[t]}getMaskRenderTexture(){let t=0;if(this._maskTexture&&0!=this._maskTexture.texture&&(this._maskTexture.frameNo=this._currentFrameNo,t=this._maskTexture.texture),0==t){const e=this._clippingMaskBufferSize;this._colorBuffer=this.gl.createTexture(),this.gl.bindTexture(this.gl.TEXTURE_2D,this._colorBuffer),this.gl.texImage2D(this.gl.TEXTURE_2D,0,this.gl.RGBA,e,e,0,this.gl.RGBA,this.gl.UNSIGNED_BYTE,null),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,this.gl.CLAMP_TO_EDGE),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,this.gl.CLAMP_TO_EDGE),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MIN_FILTER,this.gl.LINEAR),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MAG_FILTER,this.gl.LINEAR),this.gl.bindTexture(this.gl.TEXTURE_2D,null),t=this.gl.createFramebuffer(),this.gl.bindFramebuffer(this.gl.FRAMEBUFFER,t),this.gl.framebufferTexture2D(this.gl.FRAMEBUFFER,this.gl.COLOR_ATTACHMENT0,this.gl.TEXTURE_2D,this._colorBuffer,0),this.gl.bindFramebuffer(this.gl.FRAMEBUFFER,Ft),this._maskTexture=new Bt(this._currentFrameNo,t)}return t}setGL(t){this.gl=t}calcClippedDrawTotalBounds(t,e){let i=Number.MAX_VALUE,s=Number.MAX_VALUE,r=Number.MIN_VALUE,a=Number.MIN_VALUE;const o=e._clippedDrawableIndexList.length;for(let n=0;n<o;n++){const o=e._clippedDrawableIndexList[n],l=t.getDrawableVertexCount(o),h=t.getDrawableVertices(o);let u=Number.MAX_VALUE,d=Number.MAX_VALUE,c=Number.MIN_VALUE,m=Number.MIN_VALUE;const g=l*P.vertexStep;for(let t=P.vertexOffset;t<g;t+=P.vertexStep){const e=h[t],i=h[t+1];e<u&&(u=e),e>c&&(c=e),i<d&&(d=i),i>m&&(m=i)}if(u!=Number.MAX_VALUE)if(u<i&&(i=u),d<s&&(s=d),c>r&&(r=c),m>a&&(a=m),i==Number.MAX_VALUE)e._allClippedDrawRect.x=0,e._allClippedDrawRect.y=0,e._allClippedDrawRect.width=0,e._allClippedDrawRect.height=0,e._isUsing=!1;else{e._isUsing=!0;const t=r-i,o=a-s;e._allClippedDrawRect.x=i,e._allClippedDrawRect.y=s,e._allClippedDrawRect.width=t,e._allClippedDrawRect.height=o}}}constructor(){this._maskRenderTexture=null,this._colorBuffer=null,this._currentFrameNo=0,this._clippingMaskBufferSize=256,this._clippingContextListForMask=[],this._clippingContextListForDraw=[],this._channelColors=[],this._tmpBoundsOnModel=new Tt,this._tmpMatrix=new p,this._tmpMatrixForMask=new p,this._tmpMatrixForDraw=new p;let t=new y;t.R=1,t.G=0,t.B=0,t.A=0,this._channelColors.push(t),t=new y,t.R=0,t.G=1,t.B=0,t.A=0,this._channelColors.push(t),t=new y,t.R=0,t.G=0,t.B=1,t.A=0,this._channelColors.push(t),t=new y,t.R=0,t.G=0,t.B=0,t.A=1,this._channelColors.push(t)}release(){var t,e,i;const s=this;for(let r=0;r<this._clippingContextListForMask.length;r++)this._clippingContextListForMask[r]&&(null==(t=this._clippingContextListForMask[r])||t.release());s._clippingContextListForMask=void 0,s._clippingContextListForDraw=void 0,this._maskTexture&&(null==(e=this.gl)||e.deleteFramebuffer(this._maskTexture.texture),s._maskTexture=void 0),s._channelColors=void 0,null==(i=this.gl)||i.deleteTexture(this._colorBuffer),this._colorBuffer=null}initialize(t,e,i,s){for(let r=0;r<e;r++){if(s[r]<=0){this._clippingContextListForDraw.push(null);continue}let t=this.findSameClip(i[r],s[r]);null==t&&(t=new Rt(this,i[r],s[r]),this._clippingContextListForMask.push(t)),t.addClippedDrawable(r),this._clippingContextListForDraw.push(t)}}setupClippingContext(t,e){this._currentFrameNo++;let i=0;for(let s=0;s<this._clippingContextListForMask.length;s++){const e=this._clippingContextListForMask[s];this.calcClippedDrawTotalBounds(t,e),e._isUsing&&i++}if(i>0){this.gl.viewport(0,0,this._clippingMaskBufferSize,this._clippingMaskBufferSize),this._maskRenderTexture=this.getMaskRenderTexture(),e.getMvpMatrix(),e.preDraw(),this.setupLayoutBounds(i),this.gl.bindFramebuffer(this.gl.FRAMEBUFFER,this._maskRenderTexture),this.gl.clearColor(1,1,1,1),this.gl.clear(this.gl.COLOR_BUFFER_BIT);for(let i=0;i<this._clippingContextListForMask.length;i++){const s=this._clippingContextListForMask[i],r=s._allClippedDrawRect,a=s._layoutBounds,o=.05;this._tmpBoundsOnModel.setRect(r),this._tmpBoundsOnModel.expand(r.width*o,r.height*o);const n=a.width/this._tmpBoundsOnModel.width,l=a.height/this._tmpBoundsOnModel.height;this._tmpMatrix.loadIdentity(),this._tmpMatrix.translateRelative(-1,-1),this._tmpMatrix.scaleRelative(2,2),this._tmpMatrix.translateRelative(a.x,a.y),this._tmpMatrix.scaleRelative(n,l),this._tmpMatrix.translateRelative(-this._tmpBoundsOnModel.x,-this._tmpBoundsOnModel.y),this._tmpMatrixForMask.setMatrix(this._tmpMatrix.getArray()),this._tmpMatrix.loadIdentity(),this._tmpMatrix.translateRelative(a.x,a.y),this._tmpMatrix.scaleRelative(n,l),this._tmpMatrix.translateRelative(-this._tmpBoundsOnModel.x,-this._tmpBoundsOnModel.y),this._tmpMatrixForDraw.setMatrix(this._tmpMatrix.getArray()),s._matrixForMask.setMatrix(this._tmpMatrixForMask.getArray()),s._matrixForDraw.setMatrix(this._tmpMatrixForDraw.getArray());const h=s._clippingIdCount;for(let i=0;i<h;i++){const r=s._clippingIdList[i];t.getDrawableDynamicFlagVertexPositionsDidChange(r)&&(e.setIsCulling(0!=t.getDrawableCulling(r)),e.setClippingContextBufferForMask(s),e.drawMesh(t.getDrawableTextureIndices(r),t.getDrawableVertexIndexCount(r),t.getDrawableVertexCount(r),t.getDrawableVertexIndices(r),t.getDrawableVertices(r),t.getDrawableVertexUvs(r),t.getDrawableOpacity(r),f.CubismBlendMode_Normal,!1))}}this.gl.bindFramebuffer(this.gl.FRAMEBUFFER,Ft),e.setClippingContextBufferForMask(null),this.gl.viewport(Dt[0],Dt[1],Dt[2],Dt[3])}}findSameClip(t,e){for(let i=0;i<this._clippingContextListForMask.length;i++){const s=this._clippingContextListForMask[i],r=s._clippingIdCount;if(r!=e)continue;let a=0;for(let e=0;e<r;e++){const i=s._clippingIdList[e];for(let e=0;e<r;e++)if(t[e]==i){a++;break}}if(a==r)return s}return null}setupLayoutBounds(e){let i=e/4,s=e%4;i=~~i,s=~~s;let r=0;for(let a=0;a<4;a++){const e=i+(a<s?1:0);if(0==e);else if(1==e){const t=this._clippingContextListForMask[r++];t._layoutChannelNo=a,t._layoutBounds.x=0,t._layoutBounds.y=0,t._layoutBounds.width=1,t._layoutBounds.height=1}else if(2==e)for(let t=0;t<e;t++){let e=t%2;e=~~e;const i=this._clippingContextListForMask[r++];i._layoutChannelNo=a,i._layoutBounds.x=.5*e,i._layoutBounds.y=0,i._layoutBounds.width=.5,i._layoutBounds.height=1}else if(e<=4)for(let t=0;t<e;t++){let e=t%2,i=t/2;e=~~e,i=~~i;const s=this._clippingContextListForMask[r++];s._layoutChannelNo=a,s._layoutBounds.x=.5*e,s._layoutBounds.y=.5*i,s._layoutBounds.width=.5,s._layoutBounds.height=.5}else if(e<=9)for(let t=0;t<e;t++){let e=t%3,i=t/3;e=~~e,i=~~i;const s=this._clippingContextListForMask[r++];s._layoutChannelNo=a,s._layoutBounds.x=e/3,s._layoutBounds.y=i/3,s._layoutBounds.width=1/3,s._layoutBounds.height=1/3}else if(t.CubismConfig.supportMoreMaskDivisions&&e<=16)for(let t=0;t<e;t++){let e=t%4,i=t/4;e=~~e,i=~~i;const s=this._clippingContextListForMask[r++];s._layoutChannelNo=a,s._layoutBounds.x=e/4,s._layoutBounds.y=i/4,s._layoutBounds.width=1/4,s._layoutBounds.height=1/4}else T(\"not supported mask count : {0}\",e)}}getColorBuffer(){return this._colorBuffer}getClippingContextListForDraw(){return this._clippingContextListForDraw}setClippingMaskBufferSize(t){this._clippingMaskBufferSize=t}getClippingMaskBufferSize(){return this._clippingMaskBufferSize}}class Bt{constructor(t,e){this.frameNo=t,this.texture=e}}class Rt{constructor(t,e,i){this._isUsing=!1,this._owner=t,this._clippingIdList=e,this._clippingIdCount=i,this._allClippedDrawRect=new Tt,this._layoutBounds=new Tt,this._clippedDrawableIndexList=[],this._matrixForMask=new p,this._matrixForDraw=new p}release(){const t=this;t._layoutBounds=void 0,t._allClippedDrawRect=void 0,t._clippedDrawableIndexList=void 0}addClippedDrawable(t){this._clippedDrawableIndexList.push(t)}getClippingManager(){return this._owner}setGl(t){this._owner.setGL(t)}}class Ot{static getInstance(){return null==Et?(Et=new Ot,Et):Et}static deleteInstance(){Et&&(Et.release(),Et=void 0)}constructor(){this._shaderSets=[]}release(){this.releaseShaderProgram()}setupShaderProgram(t,e,i,s,r,a,o,n,l,h,u,d,c){let m,g,p,_;u||T(\"NoPremultipliedAlpha is not allowed\"),0==this._shaderSets.length&&this.generateShaders();const y=t.getClippingContextBufferForMask();if(null!=y){const t=this._shaderSets[kt.ShaderNames_SetupMask];this.gl.useProgram(t.shaderProgram),this.gl.activeTexture(this.gl.TEXTURE0),this.gl.bindTexture(this.gl.TEXTURE_2D,e),this.gl.uniform1i(t.samplerTexture0Location,0),null==o.vertex&&(o.vertex=this.gl.createBuffer()),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,o.vertex),this.gl.bufferData(this.gl.ARRAY_BUFFER,s,this.gl.DYNAMIC_DRAW),this.gl.enableVertexAttribArray(t.attributePositionLocation),this.gl.vertexAttribPointer(t.attributePositionLocation,2,this.gl.FLOAT,!1,0,0),null==o.uv&&(o.uv=this.gl.createBuffer()),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,o.uv),this.gl.bufferData(this.gl.ARRAY_BUFFER,a,this.gl.DYNAMIC_DRAW),this.gl.enableVertexAttribArray(t.attributeTexCoordLocation),this.gl.vertexAttribPointer(t.attributeTexCoordLocation,2,this.gl.FLOAT,!1,0,0);const i=y._layoutChannelNo,r=y.getClippingManager().getChannelFlagAsColor(i);this.gl.uniform4f(t.uniformChannelFlagLocation,r.R,r.G,r.B,r.A),this.gl.uniformMatrix4fv(t.uniformClipMatrixLocation,!1,y._matrixForMask.getArray());const n=y._layoutBounds;this.gl.uniform4f(t.uniformBaseColorLocation,2*n.x-1,2*n.y-1,2*n.getRight()-1,2*n.getBottom()-1),m=this.gl.ZERO,g=this.gl.ONE_MINUS_SRC_COLOR,p=this.gl.ZERO,_=this.gl.ONE_MINUS_SRC_ALPHA}else{const i=t.getClippingContextBufferForDraw(),r=null!=i?c?2:1:0;let n;switch(l){case f.CubismBlendMode_Normal:default:n=this._shaderSets[kt.ShaderNames_NormalPremultipliedAlpha+r],m=this.gl.ONE,g=this.gl.ONE_MINUS_SRC_ALPHA,p=this.gl.ONE,_=this.gl.ONE_MINUS_SRC_ALPHA;break;case f.CubismBlendMode_Additive:n=this._shaderSets[kt.ShaderNames_AddPremultipliedAlpha+r],m=this.gl.ONE,g=this.gl.ONE,p=this.gl.ZERO,_=this.gl.ONE;break;case f.CubismBlendMode_Multiplicative:n=this._shaderSets[kt.ShaderNames_MultPremultipliedAlpha+r],m=this.gl.DST_COLOR,g=this.gl.ONE_MINUS_SRC_ALPHA,p=this.gl.ZERO,_=this.gl.ONE}if(this.gl.useProgram(n.shaderProgram),null==o.vertex&&(o.vertex=this.gl.createBuffer()),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,o.vertex),this.gl.bufferData(this.gl.ARRAY_BUFFER,s,this.gl.DYNAMIC_DRAW),this.gl.enableVertexAttribArray(n.attributePositionLocation),this.gl.vertexAttribPointer(n.attributePositionLocation,2,this.gl.FLOAT,!1,0,0),null==o.uv&&(o.uv=this.gl.createBuffer()),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,o.uv),this.gl.bufferData(this.gl.ARRAY_BUFFER,a,this.gl.DYNAMIC_DRAW),this.gl.enableVertexAttribArray(n.attributeTexCoordLocation),this.gl.vertexAttribPointer(n.attributeTexCoordLocation,2,this.gl.FLOAT,!1,0,0),null!=i){this.gl.activeTexture(this.gl.TEXTURE1);const t=i.getClippingManager().getColorBuffer();this.gl.bindTexture(this.gl.TEXTURE_2D,t),this.gl.uniform1i(n.samplerTexture1Location,1),this.gl.uniformMatrix4fv(n.uniformClipMatrixLocation,!1,i._matrixForDraw.getArray());const e=i._layoutChannelNo,s=i.getClippingManager().getChannelFlagAsColor(e);this.gl.uniform4f(n.uniformChannelFlagLocation,s.R,s.G,s.B,s.A)}this.gl.activeTexture(this.gl.TEXTURE0),this.gl.bindTexture(this.gl.TEXTURE_2D,e),this.gl.uniform1i(n.samplerTexture0Location,0),this.gl.uniformMatrix4fv(n.uniformMatrixLocation,!1,d.getArray()),this.gl.uniform4f(n.uniformBaseColorLocation,h.R,h.G,h.B,h.A)}null==o.index&&(o.index=this.gl.createBuffer()),this.gl.bindBuffer(this.gl.ELEMENT_ARRAY_BUFFER,o.index),this.gl.bufferData(this.gl.ELEMENT_ARRAY_BUFFER,r,this.gl.DYNAMIC_DRAW),this.gl.blendFuncSeparate(m,g,p,_)}releaseShaderProgram(){for(let t=0;t<this._shaderSets.length;t++)this.gl.deleteProgram(this._shaderSets[t].shaderProgram),this._shaderSets[t].shaderProgram=0;this._shaderSets=[]}generateShaders(){for(let t=0;t<10;t++)this._shaderSets.push({});this._shaderSets[0].shaderProgram=this.loadShaderProgram(Ut,Nt),this._shaderSets[1].shaderProgram=this.loadShaderProgram(Vt,Gt),this._shaderSets[2].shaderProgram=this.loadShaderProgram(jt,Xt),this._shaderSets[3].shaderProgram=this.loadShaderProgram(jt,zt),this._shaderSets[4].shaderProgram=this._shaderSets[1].shaderProgram,this._shaderSets[5].shaderProgram=this._shaderSets[2].shaderProgram,this._shaderSets[6].shaderProgram=this._shaderSets[3].shaderProgram,this._shaderSets[7].shaderProgram=this._shaderSets[1].shaderProgram,this._shaderSets[8].shaderProgram=this._shaderSets[2].shaderProgram,this._shaderSets[9].shaderProgram=this._shaderSets[3].shaderProgram,this._shaderSets[0].attributePositionLocation=this.gl.getAttribLocation(this._shaderSets[0].shaderProgram,\"a_position\"),this._shaderSets[0].attributeTexCoordLocation=this.gl.getAttribLocation(this._shaderSets[0].shaderProgram,\"a_texCoord\"),this._shaderSets[0].samplerTexture0Location=this.gl.getUniformLocation(this._shaderSets[0].shaderProgram,\"s_texture0\"),this._shaderSets[0].uniformClipMatrixLocation=this.gl.getUniformLocation(this._shaderSets[0].shaderProgram,\"u_clipMatrix\"),this._shaderSets[0].uniformChannelFlagLocation=this.gl.getUniformLocation(this._shaderSets[0].shaderProgram,\"u_channelFlag\"),this._shaderSets[0].uniformBaseColorLocation=this.gl.getUniformLocation(this._shaderSets[0].shaderProgram,\"u_baseColor\"),this._shaderSets[1].attributePositionLocation=this.gl.getAttribLocation(this._shaderSets[1].shaderProgram,\"a_position\"),this._shaderSets[1].attributeTexCoordLocation=this.gl.getAttribLocation(this._shaderSets[1].shaderProgram,\"a_texCoord\"),this._shaderSets[1].samplerTexture0Location=this.gl.getUniformLocation(this._shaderSets[1].shaderProgram,\"s_texture0\"),this._shaderSets[1].uniformMatrixLocation=this.gl.getUniformLocation(this._shaderSets[1].shaderProgram,\"u_matrix\"),this._shaderSets[1].uniformBaseColorLocation=this.gl.getUniformLocation(this._shaderSets[1].shaderProgram,\"u_baseColor\"),this._shaderSets[2].attributePositionLocation=this.gl.getAttribLocation(this._shaderSets[2].shaderProgram,\"a_position\"),this._shaderSets[2].attributeTexCoordLocation=this.gl.getAttribLocation(this._shaderSets[2].shaderProgram,\"a_texCoord\"),this._shaderSets[2].samplerTexture0Location=this.gl.getUniformLocation(this._shaderSets[2].shaderProgram,\"s_texture0\"),this._shaderSets[2].samplerTexture1Location=this.gl.getUniformLocation(this._shaderSets[2].shaderProgram,\"s_texture1\"),this._shaderSets[2].uniformMatrixLocation=this.gl.getUniformLocation(this._shaderSets[2].shaderProgram,\"u_matrix\"),this._shaderSets[2].uniformClipMatrixLocation=this.gl.getUniformLocation(this._shaderSets[2].shaderProgram,\"u_clipMatrix\"),this._shaderSets[2].uniformChannelFlagLocation=this.gl.getUniformLocation(this._shaderSets[2].shaderProgram,\"u_channelFlag\"),this._shaderSets[2].uniformBaseColorLocation=this.gl.getUniformLocation(this._shaderSets[2].shaderProgram,\"u_baseColor\"),this._shaderSets[3].attributePositionLocation=this.gl.getAttribLocation(this._shaderSets[3].shaderProgram,\"a_position\"),this._shaderSets[3].attributeTexCoordLocation=this.gl.getAttribLocation(this._shaderSets[3].shaderProgram,\"a_texCoord\"),this._shaderSets[3].samplerTexture0Location=this.gl.getUniformLocation(this._shaderSets[3].shaderProgram,\"s_texture0\"),this._shaderSets[3].samplerTexture1Location=this.gl.getUniformLocation(this._shaderSets[3].shaderProgram,\"s_texture1\"),this._shaderSets[3].uniformMatrixLocation=this.gl.getUniformLocation(this._shaderSets[3].shaderProgram,\"u_matrix\"),this._shaderSets[3].uniformClipMatrixLocation=this.gl.getUniformLocation(this._shaderSets[3].shaderProgram,\"u_clipMatrix\"),this._shaderSets[3].uniformChannelFlagLocation=this.gl.getUniformLocation(this._shaderSets[3].shaderProgram,\"u_channelFlag\"),this._shaderSets[3].uniformBaseColorLocation=this.gl.getUniformLocation(this._shaderSets[3].shaderProgram,\"u_baseColor\"),this._shaderSets[4].attributePositionLocation=this.gl.getAttribLocation(this._shaderSets[4].shaderProgram,\"a_position\"),this._shaderSets[4].attributeTexCoordLocation=this.gl.getAttribLocation(this._shaderSets[4].shaderProgram,\"a_texCoord\"),this._shaderSets[4].samplerTexture0Location=this.gl.getUniformLocation(this._shaderSets[4].shaderProgram,\"s_texture0\"),this._shaderSets[4].uniformMatrixLocation=this.gl.getUniformLocation(this._shaderSets[4].shaderProgram,\"u_matrix\"),this._shaderSets[4].uniformBaseColorLocation=this.gl.getUniformLocation(this._shaderSets[4].shaderProgram,\"u_baseColor\"),this._shaderSets[5].attributePositionLocation=this.gl.getAttribLocation(this._shaderSets[5].shaderProgram,\"a_position\"),this._shaderSets[5].attributeTexCoordLocation=this.gl.getAttribLocation(this._shaderSets[5].shaderProgram,\"a_texCoord\"),this._shaderSets[5].samplerTexture0Location=this.gl.getUniformLocation(this._shaderSets[5].shaderProgram,\"s_texture0\"),this._shaderSets[5].samplerTexture1Location=this.gl.getUniformLocation(this._shaderSets[5].shaderProgram,\"s_texture1\"),this._shaderSets[5].uniformMatrixLocation=this.gl.getUniformLocation(this._shaderSets[5].shaderProgram,\"u_matrix\"),this._shaderSets[5].uniformClipMatrixLocation=this.gl.getUniformLocation(this._shaderSets[5].shaderProgram,\"u_clipMatrix\"),this._shaderSets[5].uniformChannelFlagLocation=this.gl.getUniformLocation(this._shaderSets[5].shaderProgram,\"u_channelFlag\"),this._shaderSets[5].uniformBaseColorLocation=this.gl.getUniformLocation(this._shaderSets[5].shaderProgram,\"u_baseColor\"),this._shaderSets[6].attributePositionLocation=this.gl.getAttribLocation(this._shaderSets[6].shaderProgram,\"a_position\"),this._shaderSets[6].attributeTexCoordLocation=this.gl.getAttribLocation(this._shaderSets[6].shaderProgram,\"a_texCoord\"),this._shaderSets[6].samplerTexture0Location=this.gl.getUniformLocation(this._shaderSets[6].shaderProgram,\"s_texture0\"),this._shaderSets[6].samplerTexture1Location=this.gl.getUniformLocation(this._shaderSets[6].shaderProgram,\"s_texture1\"),this._shaderSets[6].uniformMatrixLocation=this.gl.getUniformLocation(this._shaderSets[6].shaderProgram,\"u_matrix\"),this._shaderSets[6].uniformClipMatrixLocation=this.gl.getUniformLocation(this._shaderSets[6].shaderProgram,\"u_clipMatrix\"),this._shaderSets[6].uniformChannelFlagLocation=this.gl.getUniformLocation(this._shaderSets[6].shaderProgram,\"u_channelFlag\"),this._shaderSets[6].uniformBaseColorLocation=this.gl.getUniformLocation(this._shaderSets[6].shaderProgram,\"u_baseColor\"),this._shaderSets[7].attributePositionLocation=this.gl.getAttribLocation(this._shaderSets[7].shaderProgram,\"a_position\"),this._shaderSets[7].attributeTexCoordLocation=this.gl.getAttribLocation(this._shaderSets[7].shaderProgram,\"a_texCoord\"),this._shaderSets[7].samplerTexture0Location=this.gl.getUniformLocation(this._shaderSets[7].shaderProgram,\"s_texture0\"),this._shaderSets[7].uniformMatrixLocation=this.gl.getUniformLocation(this._shaderSets[7].shaderProgram,\"u_matrix\"),this._shaderSets[7].uniformBaseColorLocation=this.gl.getUniformLocation(this._shaderSets[7].shaderProgram,\"u_baseColor\"),this._shaderSets[8].attributePositionLocation=this.gl.getAttribLocation(this._shaderSets[8].shaderProgram,\"a_position\"),this._shaderSets[8].attributeTexCoordLocation=this.gl.getAttribLocation(this._shaderSets[8].shaderProgram,\"a_texCoord\"),this._shaderSets[8].samplerTexture0Location=this.gl.getUniformLocation(this._shaderSets[8].shaderProgram,\"s_texture0\"),this._shaderSets[8].samplerTexture1Location=this.gl.getUniformLocation(this._shaderSets[8].shaderProgram,\"s_texture1\"),this._shaderSets[8].uniformMatrixLocation=this.gl.getUniformLocation(this._shaderSets[8].shaderProgram,\"u_matrix\"),this._shaderSets[8].uniformClipMatrixLocation=this.gl.getUniformLocation(this._shaderSets[8].shaderProgram,\"u_clipMatrix\"),this._shaderSets[8].uniformChannelFlagLocation=this.gl.getUniformLocation(this._shaderSets[8].shaderProgram,\"u_channelFlag\"),this._shaderSets[8].uniformBaseColorLocation=this.gl.getUniformLocation(this._shaderSets[8].shaderProgram,\"u_baseColor\"),this._shaderSets[9].attributePositionLocation=this.gl.getAttribLocation(this._shaderSets[9].shaderProgram,\"a_position\"),this._shaderSets[9].attributeTexCoordLocation=this.gl.getAttribLocation(this._shaderSets[9].shaderProgram,\"a_texCoord\"),this._shaderSets[9].samplerTexture0Location=this.gl.getUniformLocation(this._shaderSets[9].shaderProgram,\"s_texture0\"),this._shaderSets[9].samplerTexture1Location=this.gl.getUniformLocation(this._shaderSets[9].shaderProgram,\"s_texture1\"),this._shaderSets[9].uniformMatrixLocation=this.gl.getUniformLocation(this._shaderSets[9].shaderProgram,\"u_matrix\"),this._shaderSets[9].uniformClipMatrixLocation=this.gl.getUniformLocation(this._shaderSets[9].shaderProgram,\"u_clipMatrix\"),this._shaderSets[9].uniformChannelFlagLocation=this.gl.getUniformLocation(this._shaderSets[9].shaderProgram,\"u_channelFlag\"),this._shaderSets[9].uniformBaseColorLocation=this.gl.getUniformLocation(this._shaderSets[9].shaderProgram,\"u_baseColor\")}loadShaderProgram(t,e){let i=this.gl.createProgram(),s=this.compileShaderSource(this.gl.VERTEX_SHADER,t);if(!s)return T(\"Vertex shader compile error!\"),0;let r=this.compileShaderSource(this.gl.FRAGMENT_SHADER,e);if(!r)return T(\"Vertex shader compile error!\"),0;this.gl.attachShader(i,s),this.gl.attachShader(i,r),this.gl.linkProgram(i);return this.gl.getProgramParameter(i,this.gl.LINK_STATUS)?(this.gl.deleteShader(s),this.gl.deleteShader(r),i):(T(\"Failed to link program: {0}\",i),this.gl.deleteShader(s),this.gl.deleteShader(r),i&&this.gl.deleteProgram(i),0)}compileShaderSource(t,e){const i=e,s=this.gl.createShader(t);if(this.gl.shaderSource(s,i),this.gl.compileShader(s),!s){T(\"Shader compile log: {0} \",this.gl.getShaderInfoLog(s))}return this.gl.getShaderParameter(s,this.gl.COMPILE_STATUS)?s:(this.gl.deleteShader(s),null)}setGl(t){this.gl=t}}var kt=(t=>(t[t.ShaderNames_SetupMask=0]=\"ShaderNames_SetupMask\",t[t.ShaderNames_NormalPremultipliedAlpha=1]=\"ShaderNames_NormalPremultipliedAlpha\",t[t.ShaderNames_NormalMaskedPremultipliedAlpha=2]=\"ShaderNames_NormalMaskedPremultipliedAlpha\",t[t.ShaderNames_NomralMaskedInvertedPremultipliedAlpha=3]=\"ShaderNames_NomralMaskedInvertedPremultipliedAlpha\",t[t.ShaderNames_AddPremultipliedAlpha=4]=\"ShaderNames_AddPremultipliedAlpha\",t[t.ShaderNames_AddMaskedPremultipliedAlpha=5]=\"ShaderNames_AddMaskedPremultipliedAlpha\",t[t.ShaderNames_AddMaskedPremultipliedAlphaInverted=6]=\"ShaderNames_AddMaskedPremultipliedAlphaInverted\",t[t.ShaderNames_MultPremultipliedAlpha=7]=\"ShaderNames_MultPremultipliedAlpha\",t[t.ShaderNames_MultMaskedPremultipliedAlpha=8]=\"ShaderNames_MultMaskedPremultipliedAlpha\",t[t.ShaderNames_MultMaskedPremultipliedAlphaInverted=9]=\"ShaderNames_MultMaskedPremultipliedAlphaInverted\",t))(kt||{});const Ut=\"attribute vec4 a_position;attribute vec2 a_texCoord;varying vec2 v_texCoord;varying vec4 v_myPos;uniform mat4 u_clipMatrix;void main(){ gl_Position = u_clipMatrix * a_position; v_myPos = u_clipMatrix * a_position; v_texCoord = a_texCoord; v_texCoord.y = 1.0 - v_texCoord.y;}\",Nt=\"precision mediump float;varying vec2 v_texCoord;varying vec4 v_myPos;uniform vec4 u_baseColor;uniform vec4 u_channelFlag;uniform sampler2D s_texture0;void main(){ float isInside = step(u_baseColor.x, v_myPos.x/v_myPos.w) * step(u_baseColor.y, v_myPos.y/v_myPos.w) * step(v_myPos.x/v_myPos.w, u_baseColor.z) * step(v_myPos.y/v_myPos.w, u_baseColor.w); gl_FragColor = u_channelFlag * texture2D(s_texture0, v_texCoord).a * isInside;}\",Vt=\"attribute vec4 a_position;attribute vec2 a_texCoord;varying vec2 v_texCoord;uniform mat4 u_matrix;void main(){ gl_Position = u_matrix * a_position; v_texCoord = a_texCoord; v_texCoord.y = 1.0 - v_texCoord.y;}\",jt=\"attribute vec4 a_position;attribute vec2 a_texCoord;varying vec2 v_texCoord;varying vec4 v_clipPos;uniform mat4 u_matrix;uniform mat4 u_clipMatrix;void main(){ gl_Position = u_matrix * a_position; v_clipPos = u_clipMatrix * a_position; v_texCoord = a_texCoord; v_texCoord.y = 1.0 - v_texCoord.y;}\",Gt=\"precision mediump float;varying vec2 v_texCoord;uniform vec4 u_baseColor;uniform sampler2D s_texture0;void main(){ gl_FragColor = texture2D(s_texture0 , v_texCoord) * u_baseColor;}\",Xt=\"precision mediump float;varying vec2 v_texCoord;varying vec4 v_clipPos;uniform vec4 u_baseColor;uniform vec4 u_channelFlag;uniform sampler2D s_texture0;uniform sampler2D s_texture1;void main(){ vec4 col_formask = texture2D(s_texture0 , v_texCoord) * u_baseColor; vec4 clipMask = (1.0 - texture2D(s_texture1, v_clipPos.xy / v_clipPos.w)) * u_channelFlag; float maskVal = clipMask.r + clipMask.g + clipMask.b + clipMask.a; col_formask = col_formask * maskVal; gl_FragColor = col_formask;}\",zt=\"precision mediump float;varying vec2 v_texCoord;varying vec4 v_clipPos;uniform sampler2D s_texture0;uniform sampler2D s_texture1;uniform vec4 u_channelFlag;uniform vec4 u_baseColor;void main(){vec4 col_formask = texture2D(s_texture0, v_texCoord) * u_baseColor;vec4 clipMask = (1.0 - texture2D(s_texture1, v_clipPos.xy / v_clipPos.w)) * u_channelFlag;float maskVal = clipMask.r + clipMask.g + clipMask.b + clipMask.a;col_formask = col_formask * (1.0 - maskVal);gl_FragColor = col_formask;}\";class Wt extends _{constructor(){super(),this._clippingContextBufferForMask=null,this._clippingContextBufferForDraw=null,this._clippingManager=new At,this.firstDraw=!0,this._textures={},this._sortedDrawableIndexList=[],this._bufferData={vertex:null,uv:null,index:null}}initialize(t){t.isUsingMasking()&&(this._clippingManager=new At,this._clippingManager.initialize(t,t.getDrawableCount(),t.getDrawableMasks(),t.getDrawableMaskCounts()));for(let e=t.getDrawableCount()-1;e>=0;e--)this._sortedDrawableIndexList[e]=0;super.initialize(t)}bindTexture(t,e){this._textures[t]=e}getBindedTextures(){return this._textures}setClippingMaskBufferSize(t){this._clippingManager.release(),this._clippingManager=new At,this._clippingManager.setClippingMaskBufferSize(t),this._clippingManager.initialize(this.getModel(),this.getModel().getDrawableCount(),this.getModel().getDrawableMasks(),this.getModel().getDrawableMaskCounts())}getClippingMaskBufferSize(){return this._clippingManager.getClippingMaskBufferSize()}release(){var t,e,i;const s=this;this._clippingManager.release(),s._clippingManager=void 0,null==(t=this.gl)||t.deleteBuffer(this._bufferData.vertex),this._bufferData.vertex=null,null==(e=this.gl)||e.deleteBuffer(this._bufferData.uv),this._bufferData.uv=null,null==(i=this.gl)||i.deleteBuffer(this._bufferData.index),this._bufferData.index=null,s._bufferData=void 0,s._textures=void 0}doDrawModel(){this.preDraw(),null!=this._clippingManager&&this._clippingManager.setupClippingContext(this.getModel(),this);const t=this.getModel().getDrawableCount(),e=this.getModel().getDrawableRenderOrders();for(let i=0;i<t;++i){const t=e[i];this._sortedDrawableIndexList[t]=i}for(let i=0;i<t;++i){const t=this._sortedDrawableIndexList[i];this.getModel().getDrawableDynamicFlagIsVisible(t)&&(this.setClippingContextBufferForDraw(null!=this._clippingManager?this._clippingManager.getClippingContextListForDraw()[t]:null),this.setIsCulling(this.getModel().getDrawableCulling(t)),this.drawMesh(this.getModel().getDrawableTextureIndices(t),this.getModel().getDrawableVertexIndexCount(t),this.getModel().getDrawableVertexCount(t),this.getModel().getDrawableVertexIndices(t),this.getModel().getDrawableVertices(t),this.getModel().getDrawableVertexUvs(t),this.getModel().getDrawableOpacity(t),this.getModel().getDrawableBlendMode(t),this.getModel().getDrawableInvertedMaskBit(t)))}}drawMesh(t,e,i,s,r,a,o,n,l){this.isCulling()?this.gl.enable(this.gl.CULL_FACE):this.gl.disable(this.gl.CULL_FACE),this.gl.frontFace(this.gl.CCW);const h=this.getModelColor();null==this.getClippingContextBufferForMask()&&(h.A*=o,this.isPremultipliedAlpha()&&(h.R*=h.A,h.G*=h.A,h.B*=h.A));let u=null;null!=this._textures[t]&&(u=this._textures[t]),Ot.getInstance().setupShaderProgram(this,u,i,r,s,a,this._bufferData,o,n,h,this.isPremultipliedAlpha(),this.getMvpMatrix(),l),this.gl.drawElements(this.gl.TRIANGLES,e,this.gl.UNSIGNED_SHORT,0),this.gl.useProgram(null),this.setClippingContextBufferForDraw(null),this.setClippingContextBufferForMask(null)}static doStaticRelease(){Ot.deleteInstance()}setRenderState(t,e){Ft=t,Dt=e}preDraw(){this.firstDraw&&(this.firstDraw=!1,this._anisortopy=this.gl.getExtension(\"EXT_texture_filter_anisotropic\")||this.gl.getExtension(\"WEBKIT_EXT_texture_filter_anisotropic\")||this.gl.getExtension(\"MOZ_EXT_texture_filter_anisotropic\")),this.gl.disable(this.gl.SCISSOR_TEST),this.gl.disable(this.gl.STENCIL_TEST),this.gl.disable(this.gl.DEPTH_TEST),this.gl.frontFace(this.gl.CW),this.gl.enable(this.gl.BLEND),this.gl.colorMask(!0,!0,!0,!0),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,null),this.gl.bindBuffer(this.gl.ELEMENT_ARRAY_BUFFER,null)}setClippingContextBufferForMask(t){this._clippingContextBufferForMask=t}getClippingContextBufferForMask(){return this._clippingContextBufferForMask}setClippingContextBufferForDraw(t){this._clippingContextBufferForDraw=t}getClippingContextBufferForDraw(){return this._clippingContextBufferForDraw}startUp(t){this.gl=t,this._clippingManager.setGL(t),Ot.getInstance().setGl(t)}}_.staticRelease=()=>{Wt.doStaticRelease()};class Ht{constructor(t){this.groups=t.Groups,this.hitAreas=t.HitAreas,this.layout=t.Layout,this.moc=t.FileReferences.Moc,this.expressions=t.FileReferences.Expressions,this.motions=t.FileReferences.Motions,this.textures=t.FileReferences.Textures,this.physics=t.FileReferences.Physics,this.pose=t.FileReferences.Pose}getEyeBlinkParameters(){var t,e;return null==(e=null==(t=this.groups)?void 0:t.find((t=>\"EyeBlink\"===t.Name)))?void 0:e.Ids}getLipSyncParameters(){var t,e;return null==(e=null==(t=this.groups)?void 0:t.find((t=>\"LipSync\"===t.Name)))?void 0:e.Ids}}const Yt=\"ParamAngleX\",qt=\"ParamAngleY\",$t=\"ParamAngleZ\",Zt=\"ParamEyeBallX\",Jt=\"ParamEyeBallY\",Qt=\"ParamBodyAngleX\",Kt=\"ParamBreath\";var te;t.config=void 0,(te=t.config||(t.config={})).LOG_LEVEL_VERBOSE=0,te.LOG_LEVEL_WARNING=1,te.LOG_LEVEL_ERROR=2,te.LOG_LEVEL_NONE=999,te.logLevel=te.LOG_LEVEL_WARNING,te.sound=!0,te.motionSync=!0,te.motionFadingDuration=500,te.idleMotionFadingDuration=2e3,te.expressionFadingDuration=500,te.preserveExpressionOnMotion=!0,te.cubism4=t.CubismConfig;const ee={log(e,...i){t.config.logLevel<=t.config.LOG_LEVEL_VERBOSE&&console.log(`[${e}]`,...i)},warn(e,...i){t.config.logLevel<=t.config.LOG_LEVEL_WARNING&&console.warn(`[${e}]`,...i)},error(e,...i){t.config.logLevel<=t.config.LOG_LEVEL_ERROR&&console.error(`[${e}]`,...i)}};function ie(t,e,i){return t<e?e:t>i?i:t}function se(t,e){e.forEach((e=>{Object.getOwnPropertyNames(e.prototype).forEach((i=>{\"constructor\"!==i&&Object.defineProperty(t.prototype,i,Object.getOwnPropertyDescriptor(e.prototype,i))}))}))}function re(t){let e=t.lastIndexOf(\"/\");return-1!=e&&(t=t.slice(0,e)),e=t.lastIndexOf(\"/\"),-1!==e&&(t=t.slice(e+1)),t}function ae(t,e){const i=t.indexOf(e);-1!==i&&t.splice(i,1)}class oe extends e.EventEmitter{constructor(t,e){super(),this.expressions=[],this.reserveExpressionIndex=-1,this.destroyed=!1,this.settings=t,this.tag=`ExpressionManager(${t.name})`}init(){this.defaultExpression=this.createExpression({},void 0),this.currentExpression=this.defaultExpression,this.stopAllExpressions()}loadExpression(t){return __async(this,null,(function*(){if(!this.definitions[t])return void ee.warn(this.tag,`Undefined expression at [${t}]`);if(null===this.expressions[t])return void ee.warn(this.tag,`Cannot set expression at [${t}] because it's already failed in loading.`);if(this.expressions[t])return this.expressions[t];const e=yield this._loadExpression(t);return this.expressions[t]=e,e}))}_loadExpression(t){throw new Error(\"Not implemented.\")}setRandomExpression(){return __async(this,null,(function*(){if(this.definitions.length){const t=[];for(let e=0;e<this.definitions.length;e++)null!==this.expressions[e]&&this.expressions[e]!==this.currentExpression&&e!==this.reserveExpressionIndex&&t.push(e);if(t.length){const e=Math.floor(Math.random()*t.length);return this.setExpression(e)}}return!1}))}resetExpression(){this._setExpression(this.defaultExpression)}restoreExpression(){this._setExpression(this.currentExpression)}setExpression(t){return __async(this,null,(function*(){if(\"number\"!=typeof t&&(t=this.getExpressionIndex(t)),!(t>-1&&t<this.definitions.length))return!1;if(t===this.expressions.indexOf(this.currentExpression))return!1;this.reserveExpressionIndex=t;const e=yield this.loadExpression(t);return!(!e||this.reserveExpressionIndex!==t)&&(this.reserveExpressionIndex=-1,this.currentExpression=e,this._setExpression(e),!0)}))}update(t,e){return!this.isFinished()&&this.updateParameters(t,e)}destroy(){this.destroyed=!0,this.emit(\"destroy\");this.definitions=void 0,this.expressions=void 0}}class ne{constructor(){this.targetX=0,this.targetY=0,this.x=0,this.y=0,this.vx=0,this.vy=0}focus(t,e,i=!1){this.targetX=ie(t,-1,1),this.targetY=ie(e,-1,1),i&&(this.x=this.targetX,this.y=this.targetY)}update(t){const e=this.targetX-this.x,i=this.targetY-this.y;if(Math.abs(e)<.01&&Math.abs(i)<.01)return;const s=Math.sqrt(__pow(e,2)+__pow(i,2)),r=5.333333333333333/(1e3/t);let a=r*(e/s)-this.vx,o=r*(i/s)-this.vy;const n=Math.sqrt(__pow(a,2)+__pow(o,2)),l=.006666666666666667*r*t;n>l&&(a*=l/n,o*=l/n),this.vx+=a,this.vy+=o;const h=Math.sqrt(__pow(this.vx,2)+__pow(this.vy,2)),u=.5*(Math.sqrt(__pow(l,2)+8*l*s)-l);h>u&&(this.vx*=u/h,this.vy*=u/h),this.x+=this.vx,this.y+=this.vy}}class le{constructor(t){this.json=t;let e=t.url;if(\"string\"!=typeof e)throw new TypeError(\"The `url` field in settings JSON must be defined as a string.\");this.url=e,this.name=re(this.url)}resolveURL(t){return e.url.resolve(this.url,t)}replaceFiles(t){this.moc=t(this.moc,\"moc\"),void 0!==this.pose&&(this.pose=t(this.pose,\"pose\")),void 0!==this.physics&&(this.physics=t(this.physics,\"physics\"));for(let e=0;e<this.textures.length;e++)this.textures[e]=t(this.textures[e],`textures[${e}]`)}getDefinedFiles(){const t=[];return this.replaceFiles((e=>(t.push(e),e))),t}validateFiles(t){const e=(e,i)=>{const s=this.resolveURL(e);if(!t.includes(s)){if(i)throw new Error(`File \"${e}\" is defined in settings, but doesn't exist in given files`);return!1}return!0};[this.moc,...this.textures].forEach((t=>e(t,!0)));return this.getDefinedFiles().filter((t=>e(t,!1)))}}var he=(t=>(t[t.NONE=0]=\"NONE\",t[t.IDLE=1]=\"IDLE\",t[t.NORMAL=2]=\"NORMAL\",t[t.FORCE=3]=\"FORCE\",t))(he||{});class ue{constructor(){this.debug=!1,this.currentPriority=0,this.reservePriority=0}reserve(t,e,i){if(i<=0)return ee.log(this.tag,\"Cannot start a motion with MotionPriority.NONE.\"),!1;if(t===this.currentGroup&&e===this.currentIndex)return ee.log(this.tag,\"Motion is already playing.\",this.dump(t,e)),!1;if(t===this.reservedGroup&&e===this.reservedIndex||t===this.reservedIdleGroup&&e===this.reservedIdleIndex)return ee.log(this.tag,\"Motion is already reserved.\",this.dump(t,e)),!1;if(1===i){if(0!==this.currentPriority)return ee.log(this.tag,\"Cannot start idle motion because another motion is playing.\",this.dump(t,e)),!1;if(void 0!==this.reservedIdleGroup)return ee.log(this.tag,\"Cannot start idle motion because another idle motion has reserved.\",this.dump(t,e)),!1;this.setReservedIdle(t,e)}else{if(i<3){if(i<=this.currentPriority)return ee.log(this.tag,\"Cannot start motion because another motion is playing as an equivalent or higher priority.\",this.dump(t,e)),!1;if(i<=this.reservePriority)return ee.log(this.tag,\"Cannot start motion because another motion has reserved as an equivalent or higher priority.\",this.dump(t,e)),!1}this.setReserved(t,e,i)}return!0}start(t,e,i,s){if(1===s){if(this.setReservedIdle(void 0,void 0),0!==this.currentPriority)return ee.log(this.tag,\"Cannot start idle motion because another motion is playing.\",this.dump(e,i)),!1}else{if(e!==this.reservedGroup||i!==this.reservedIndex)return ee.log(this.tag,\"Cannot start motion because another motion has taken the place.\",this.dump(e,i)),!1;this.setReserved(void 0,void 0,0)}return!!t&&(this.setCurrent(e,i,s),!0)}complete(){this.setCurrent(void 0,void 0,0)}setCurrent(t,e,i){this.currentPriority=i,this.currentGroup=t,this.currentIndex=e}setReserved(t,e,i){this.reservePriority=i,this.reservedGroup=t,this.reservedIndex=e}setReservedIdle(t,e){this.reservedIdleGroup=t,this.reservedIdleIndex=e}isActive(t,e){return t===this.currentGroup&&e===this.currentIndex||t===this.reservedGroup&&e===this.reservedIndex||t===this.reservedIdleGroup&&e===this.reservedIdleIndex}reset(){this.setCurrent(void 0,void 0,0),this.setReserved(void 0,void 0,0),this.setReservedIdle(void 0,void 0)}shouldRequestIdleMotion(){return void 0===this.currentGroup&&void 0===this.reservedIdleGroup}shouldOverrideExpression(){return!t.config.preserveExpressionOnMotion&&this.currentPriority>1}dump(t,e){if(this.debug){return`\\n<Requested> group = \"${t}\", index = ${e}\\n`+[\"currentPriority\",\"reservePriority\",\"currentGroup\",\"currentIndex\",\"reservedGroup\",\"reservedIndex\",\"reservedIdleGroup\",\"reservedIdleIndex\"].map((t=>\"[\"+t+\"] \"+this[t])).join(\"\\n\")}return\"\"}}class de{static get volume(){return this._volume}static set volume(t){this._volume=(t>1?1:t<0?0:t)||0,this.audios.forEach((t=>t.volume=this._volume))}static add(t,e,i){const s=new Audio(t);return s.volume=this._volume,s.preload=\"auto\",s.addEventListener(\"ended\",(()=>{this.dispose(s),null==e||e()})),s.addEventListener(\"error\",(e=>{this.dispose(s),ee.warn(\"SoundManager\",`Error occurred on \"${t}\"`,e.error),null==i||i(e.error)})),this.audios.push(s),s}static play(t){return new Promise(((e,i)=>{var s;null==(s=t.play())||s.catch((e=>{t.dispatchEvent(new ErrorEvent(\"error\",{error:e})),i(e)})),t.readyState===t.HAVE_ENOUGH_DATA?e():t.addEventListener(\"canplaythrough\",e)}))}static dispose(t){t.pause(),t.removeAttribute(\"src\"),ae(this.audios,t)}static destroy(){for(let t=this.audios.length-1;t>=0;t--)this.dispose(this.audios[t])}}de.audios=[],de._volume=.5;var ce=(t=>(t.ALL=\"ALL\",t.IDLE=\"IDLE\",t.NONE=\"NONE\",t))(ce||{});class me extends e.EventEmitter{constructor(t,e){super(),this.motionGroups={},this.state=new ue,this.playing=!1,this.destroyed=!1,this.settings=t,this.tag=`MotionManager(${t.name})`,this.state.tag=this.tag}init(t){(null==t?void 0:t.idleMotionGroup)&&(this.groups.idle=t.idleMotionGroup),this.setupMotions(t),this.stopAllMotions()}setupMotions(t){for(const i of Object.keys(this.definitions))this.motionGroups[i]=[];let e;switch(null==t?void 0:t.motionPreload){case\"NONE\":return;case\"ALL\":e=Object.keys(this.definitions);break;default:e=[this.groups.idle]}for(const i of e)if(this.definitions[i])for(let t=0;t<this.definitions[i].length;t++)this.loadMotion(i,t).then()}loadMotion(t,e){return __async(this,null,(function*(){var i;if(!(null==(i=this.definitions[t])?void 0:i[e]))return void ee.warn(this.tag,`Undefined motion at \"${t}\"[${e}]`);if(null===this.motionGroups[t][e])return void ee.warn(this.tag,`Cannot start motion at \"${t}\"[${e}] because it's already failed in loading.`);if(this.motionGroups[t][e])return this.motionGroups[t][e];const s=yield this._loadMotion(t,e);return this.destroyed?void 0:(this.motionGroups[t][e]=null!=s?s:null,s)}))}_loadMotion(t,e){throw new Error(\"Not implemented.\")}startMotion(e,i){return __async(this,arguments,(function*(e,i,s=he.NORMAL){var r;if(!this.state.reserve(e,i,s))return!1;const a=null==(r=this.definitions[e])?void 0:r[i];if(!a)return!1;let o;if(this.currentAudio&&de.dispose(this.currentAudio),t.config.sound){const t=this.getSoundFile(a);if(t)try{o=de.add(this.settings.resolveURL(t),(()=>this.currentAudio=void 0),(()=>this.currentAudio=void 0)),this.currentAudio=o}catch(l){ee.warn(this.tag,\"Failed to create audio\",t,l)}}const n=yield this.loadMotion(e,i);if(o){const e=de.play(o).catch((t=>ee.warn(this.tag,\"Failed to play audio\",o.src,t)));t.config.motionSync&&(yield e)}return this.state.start(n,e,i,s)?(ee.log(this.tag,\"Start motion:\",this.getMotionName(a)),this.emit(\"motionStart\",e,i,o),this.state.shouldOverrideExpression()&&this.expressionManager&&this.expressionManager.resetExpression(),this.playing=!0,this._startMotion(n),!0):(o&&(de.dispose(o),this.currentAudio=void 0),!1)}))}startRandomMotion(t,e){return __async(this,null,(function*(){const i=this.definitions[t];if(null==i?void 0:i.length){const s=[];for(let e=0;e<i.length;e++)null===this.motionGroups[t][e]||this.state.isActive(t,e)||s.push(e);if(s.length){const i=Math.floor(Math.random()*s.length);return this.startMotion(t,s[i],e)}}return!1}))}stopAllMotions(){this._stopAllMotions(),this.state.reset(),this.currentAudio&&(de.dispose(this.currentAudio),this.currentAudio=void 0)}update(t,e){var i;return this.isFinished()&&(this.playing&&(this.playing=!1,this.emit(\"motionFinish\")),this.state.shouldOverrideExpression()&&(null==(i=this.expressionManager)||i.restoreExpression()),this.state.complete(),this.state.shouldRequestIdleMotion()&&this.startRandomMotion(this.groups.idle,he.IDLE)),this.updateParameters(t,e)}destroy(){var t;this.destroyed=!0,this.emit(\"destroy\"),this.stopAllMotions(),null==(t=this.expressionManager)||t.destroy();this.definitions=void 0,this.motionGroups=void 0}}const ge={x:0,y:0,width:0,height:0};class pe extends e.EventEmitter{constructor(){super(...arguments),this.focusController=new ne,this.originalWidth=0,this.originalHeight=0,this.width=0,this.height=0,this.localTransform=new i.Matrix,this.drawingMatrix=new i.Matrix,this.hitAreas={},this.textureFlipY=!1,this.viewport=[0,0,0,0],this.destroyed=!1}init(){this.setupLayout(),this.setupHitAreas()}setupLayout(){const t=this,e=this.getSize();t.originalWidth=e[0],t.originalHeight=e[1];const i=Object.assign({width:2,height:2},this.getLayout());this.localTransform.scale(i.width/2,i.height/2),t.width=this.originalWidth*this.localTransform.a,t.height=this.originalHeight*this.localTransform.d;const s=void 0!==i.x&&i.x-i.width/2||void 0!==i.centerX&&i.centerX||void 0!==i.left&&i.left-i.width/2||void 0!==i.right&&i.right+i.width/2||0,r=void 0!==i.y&&i.y-i.height/2||void 0!==i.centerY&&i.centerY||void 0!==i.top&&i.top-i.height/2||void 0!==i.bottom&&i.bottom+i.height/2||0;this.localTransform.translate(this.width*s,-this.height*r)}setupHitAreas(){const t=this.getHitAreaDefs().filter((t=>t.index>=0));for(const e of t)this.hitAreas[e.name]=e}hitTest(t,e){return Object.keys(this.hitAreas).filter((i=>this.isHit(i,t,e)))}isHit(t,e,i){if(!this.hitAreas[t])return!1;const s=this.hitAreas[t].index,r=this.getDrawableBounds(s,ge);return r.x<=e&&e<=r.x+r.width&&r.y<=i&&i<=r.y+r.height}getDrawableBounds(t,e){const i=this.getDrawableVertices(t);let s=i[0],r=i[0],a=i[1],o=i[1];for(let n=0;n<i.length;n+=2){const t=i[n],e=i[n+1];s=Math.min(t,s),r=Math.max(t,r),a=Math.min(e,a),o=Math.max(e,o)}return null!=e||(e={}),e.x=s,e.y=a,e.width=r-s,e.height=o-a,e}updateTransform(t){this.drawingMatrix.copyFrom(t).append(this.localTransform)}update(t,e){this.focusController.update(t)}destroy(){this.destroyed=!0,this.emit(\"destroy\"),this.motionManager.destroy(),this.motionManager=void 0}}class _e extends Error{constructor(t,e,i,s=!1){super(t),this.url=e,this.status=i,this.aborted=s}}const fe=class{static createXHR(t,e,i,s,r){const a=new XMLHttpRequest;if(fe.allXhrSet.add(a),t){let e=fe.xhrMap.get(t);e?e.add(a):(e=new Set([a]),fe.xhrMap.set(t,e)),t.listeners(\"destroy\").includes(fe.cancelXHRs)||t.once(\"destroy\",fe.cancelXHRs)}return a.open(\"GET\",e),a.responseType=i,a.onload=()=>{200!==a.status&&0!==a.status||!a.response?a.onerror():s(a.response)},a.onerror=()=>{ee.warn(\"XHRLoader\",`Failed to load resource as ${a.responseType} (Status ${a.status}): ${e}`),r(new _e(\"Network error.\",e,a.status))},a.onabort=()=>r(new _e(\"Aborted.\",e,a.status,!0)),a.onloadend=()=>{var e;fe.allXhrSet.delete(a),t&&(null==(e=fe.xhrMap.get(t))||e.delete(a))},a}static cancelXHRs(){var t;null==(t=fe.xhrMap.get(this))||t.forEach((t=>{t.abort(),fe.allXhrSet.delete(t)})),fe.xhrMap.delete(this)}static release(){fe.allXhrSet.forEach((t=>t.abort())),fe.allXhrSet.clear(),fe.xhrMap=new WeakMap}};let ye=fe;function xe(t,e){let i=-1;return function s(r,a){if(a)return Promise.reject(a);if(r<=i)return Promise.reject(new Error(\"next() called multiple times\"));i=r;const o=t[r];if(!o)return Promise.resolve();try{return Promise.resolve(o(e,s.bind(null,r+1)))}catch(n){return Promise.reject(n)}}(0)}ye.xhrMap=new WeakMap,ye.allXhrSet=new Set,ye.loader=(t,e)=>new Promise(((e,i)=>{fe.createXHR(t.target,t.settings?t.settings.resolveURL(t.url):t.url,t.type,(i=>{t.result=i,e()}),i).send()}));class ve{static load(t){return xe(this.middlewares,t).then((()=>t.result))}}ve.middlewares=[ye.loader];const Me=\"Live2DFactory\",Pe=(t,e)=>__async(this,null,(function*(){if(\"string\"==typeof t.source){const e=yield ve.load({url:t.source,type:\"json\",target:t.live2dModel});e.url=t.source,t.source=e,t.live2dModel.emit(\"settingsJSONLoaded\",e)}return e()})),Ce=(t,e)=>__async(this,null,(function*(){if(t.source instanceof le)return t.settings=t.source,e();if(\"object\"==typeof t.source){const i=Te.findRuntime(t.source);if(i){const s=i.createModelSettings(t.source);return t.settings=s,t.live2dModel.emit(\"settingsLoaded\",s),e()}}throw new TypeError(\"Unknown settings format.\")})),Se=(t,e)=>{if(t.settings){const i=Te.findRuntime(t.settings);if(i)return i.ready().then(e)}return e()},be=(t,e)=>__async(this,null,(function*(){yield e();const i=t.internalModel;if(i){const e=t.settings,s=Te.findRuntime(e);if(s){const r=[];e.pose&&r.push(ve.load({settings:e,url:e.pose,type:\"json\",target:i}).then((e=>{i.pose=s.createPose(i.coreModel,e),t.live2dModel.emit(\"poseLoaded\",i.pose)})).catch((e=>{t.live2dModel.emit(\"poseLoadError\",e),ee.warn(Me,\"Failed to load pose.\",e)}))),e.physics&&r.push(ve.load({settings:e,url:e.physics,type:\"json\",target:i}).then((e=>{i.physics=s.createPhysics(i.coreModel,e),t.live2dModel.emit(\"physicsLoaded\",i.physics)})).catch((e=>{t.live2dModel.emit(\"physicsLoadError\",e),ee.warn(Me,\"Failed to load physics.\",e)}))),r.length&&(yield Promise.all(r))}}})),we=(t,e)=>__async(this,null,(function*(){if(!t.settings)throw new TypeError(\"Missing settings.\");{const i=t.live2dModel,r=t.settings.textures.map((e=>function(t,e={}){const i={resourceOptions:{crossorigin:e.crossOrigin}};if(s.Texture.fromURL)return s.Texture.fromURL(t,i).catch((t=>{if(t instanceof Error)throw t;const e=new Error(\"Texture loading error\");throw e.event=t,e}));i.resourceOptions.autoLoad=!1;const r=s.Texture.from(t,i);if(r.baseTexture.valid)return Promise.resolve(r);const a=r.baseTexture.resource;return null!=a._live2d_load||(a._live2d_load=new Promise(((t,e)=>{const i=t=>{a.source.removeEventListener(\"error\",i);const s=new Error(\"Texture loading error\");s.event=t,e(s)};a.source.addEventListener(\"error\",i),a.load().then((()=>t(r))).catch(i)}))),a._live2d_load}(t.settings.resolveURL(e),{crossOrigin:t.options.crossOrigin})));if(yield e(),!t.internalModel)throw new TypeError(\"Missing internal model.\");i.internalModel=t.internalModel,i.emit(\"modelLoaded\",t.internalModel),i.textures=yield Promise.all(r),i.emit(\"textureLoaded\",i.textures)}})),Ie=(t,e)=>__async(this,null,(function*(){const i=t.settings;if(i instanceof le){const s=Te.findRuntime(i);if(!s)throw new TypeError(\"Unknown model settings.\");const r=yield ve.load({settings:i,url:i.moc,type:\"arraybuffer\",target:t.live2dModel});if(!s.isValidMoc(r))throw new Error(\"Invalid moc data\");const a=s.createCoreModel(r);return t.internalModel=s.createInternalModel(a,i,t.options),e()}throw new TypeError(\"Missing settings.\")})),Le=class{static registerRuntime(t){Le.runtimes.push(t),Le.runtimes.sort(((t,e)=>e.version-t.version))}static findRuntime(t){for(const e of Le.runtimes)if(e.test(t))return e}static setupLive2DModel(t,e,i){return __async(this,null,(function*(){const s=new Promise((e=>t.once(\"textureLoaded\",e))),r=new Promise((e=>t.once(\"modelLoaded\",e))),a=Promise.all([s,r]).then((()=>t.emit(\"ready\")));yield xe(Le.live2DModelMiddlewares,{live2dModel:t,source:e,options:i||{}}),yield a,t.emit(\"load\")}))}static loadMotion(t,e,i){var s;const r=s=>t.emit(\"motionLoadError\",e,i,s);try{const a=null==(s=t.definitions[e])?void 0:s[i];if(!a)return Promise.resolve(void 0);t.listeners(\"destroy\").includes(Le.releaseTasks)||t.once(\"destroy\",Le.releaseTasks);let o=Le.motionTasksMap.get(t);o||(o={},Le.motionTasksMap.set(t,o));let n=o[e];n||(n=[],o[e]=n);const l=t.getMotionFile(a);return null!=n[i]||(n[i]=ve.load({url:l,settings:t.settings,type:t.motionDataType,target:t}).then((s=>{var r;const o=null==(r=Le.motionTasksMap.get(t))?void 0:r[e];o&&delete o[i];const n=t.createMotion(s,e,a);return t.emit(\"motionLoaded\",e,i,n),n})).catch((e=>{ee.warn(t.tag,`Failed to load motion: ${l}\\n`,e),r(e)}))),n[i]}catch(a){ee.warn(t.tag,`Failed to load motion at \"${e}\"[${i}]\\n`,a),r(a)}return Promise.resolve(void 0)}static loadExpression(t,e){const i=i=>t.emit(\"expressionLoadError\",e,i);try{const s=t.definitions[e];if(!s)return Promise.resolve(void 0);t.listeners(\"destroy\").includes(Le.releaseTasks)||t.once(\"destroy\",Le.releaseTasks);let r=Le.expressionTasksMap.get(t);r||(r=[],Le.expressionTasksMap.set(t,r));const a=t.getExpressionFile(s);return null!=r[e]||(r[e]=ve.load({url:a,settings:t.settings,type:\"json\",target:t}).then((i=>{const r=Le.expressionTasksMap.get(t);r&&delete r[e];const a=t.createExpression(i,s);return t.emit(\"expressionLoaded\",e,a),a})).catch((e=>{ee.warn(t.tag,`Failed to load expression: ${a}\\n`,e),i(e)}))),r[e]}catch(s){ee.warn(t.tag,`Failed to load expression at [${e}]\\n`,s),i(s)}return Promise.resolve(void 0)}static releaseTasks(){this instanceof me?Le.motionTasksMap.delete(this):Le.expressionTasksMap.delete(this)}};let Te=Le;Te.runtimes=[],Te.urlToJSON=Pe,Te.jsonToSettings=Ce,Te.waitUntilReady=Se,Te.setupOptionals=be,Te.setupEssentials=we,Te.createInternalModel=Ie,Te.live2DModelMiddlewares=[Pe,Ce,Se,be,we,Ie],Te.motionTasksMap=new WeakMap,Te.expressionTasksMap=new WeakMap,me.prototype._loadMotion=function(t,e){return Te.loadMotion(this,t,e)},oe.prototype._loadExpression=function(t){return Te.loadExpression(this,t)};class Ee{constructor(){this._autoInteract=!1}get autoInteract(){return this._autoInteract}set autoInteract(t){t!==this._autoInteract&&(t?this.on(\"pointertap\",De,this):this.off(\"pointertap\",De,this),this._autoInteract=t)}registerInteraction(t){t!==this.interactionManager&&(this.unregisterInteraction(),this._autoInteract&&t&&(this.interactionManager=t,t.on(\"pointermove\",Fe,this)))}unregisterInteraction(){var t;this.interactionManager&&(null==(t=this.interactionManager)||t.off(\"pointermove\",Fe,this),this.interactionManager=void 0)}}function De(t){this.tap(t.data.global.x,t.data.global.y)}function Fe(t){this.focus(t.data.global.x,t.data.global.y)}class Ae extends i.Transform{}const Be=new i.Point,Re=new i.Matrix;let Oe;class ke extends r.Container{constructor(t){super(),this.tag=\"Live2DModel(uninitialized)\",this.textures=[],this.transform=new Ae,this.anchor=new i.ObservablePoint(this.onAnchorChange,this,0,0),this.glContextID=-1,this.elapsedTime=performance.now(),this.deltaTime=0,this._autoUpdate=!1,this.once(\"modelLoaded\",(()=>this.init(t)))}static from(t,e){const i=new this(e);return Te.setupLive2DModel(i,t,e).then((()=>i))}static fromSync(t,e){const i=new this(e);return Te.setupLive2DModel(i,t,e).then(null==e?void 0:e.onLoad).catch(null==e?void 0:e.onError),i}static registerTicker(t){Oe=t}get autoUpdate(){return this._autoUpdate}set autoUpdate(t){var e;Oe||(Oe=null==(e=window.PIXI)?void 0:e.Ticker),t?this._destroyed||(Oe?(Oe.shared.add(this.onTickerUpdate,this),this._autoUpdate=!0):ee.warn(this.tag,\"No Ticker registered, please call Live2DModel.registerTicker(Ticker).\")):(null==Oe||Oe.shared.remove(this.onTickerUpdate,this),this._autoUpdate=!1)}init(t){this.tag=`Live2DModel(${this.internalModel.settings.name})`;const e=Object.assign({autoUpdate:!0,autoInteract:!0},t);e.autoInteract&&(this.interactive=!0),this.autoInteract=e.autoInteract,this.autoUpdate=e.autoUpdate}onAnchorChange(){this.pivot.set(this.anchor.x*this.internalModel.width,this.anchor.y*this.internalModel.height)}motion(t,e,i){return void 0===e?this.internalModel.motionManager.startRandomMotion(t,i):this.internalModel.motionManager.startMotion(t,e,i)}expression(t){return this.internalModel.motionManager.expressionManager?void 0===t?this.internalModel.motionManager.expressionManager.setRandomExpression():this.internalModel.motionManager.expressionManager.setExpression(t):Promise.resolve(!1)}focus(t,e,i=!1){Be.x=t,Be.y=e,this.toModelPosition(Be,Be,!0);let s=Be.x/this.internalModel.originalWidth*2-1,r=Be.y/this.internalModel.originalHeight*2-1,a=Math.atan2(r,s);this.internalModel.focusController.focus(Math.cos(a),-Math.sin(a),i)}tap(t,e){const i=this.hitTest(t,e);i.length&&(ee.log(this.tag,\"Hit\",i),this.emit(\"hit\",i))}hitTest(t,e){return Be.x=t,Be.y=e,this.toModelPosition(Be,Be),this.internalModel.hitTest(Be.x,Be.y)}toModelPosition(t,e=t.clone(),i){return i||(this._recursivePostUpdateTransform(),this.parent?this.displayObjectUpdateTransform():(this.parent=this._tempDisplayObjectParent,this.displayObjectUpdateTransform(),this.parent=null)),this.transform.worldTransform.applyInverse(t,e),this.internalModel.localTransform.applyInverse(e,e),e}containsPoint(t){return this.getBounds(!0).contains(t.x,t.y)}_calculateBounds(){this._bounds.addFrame(this.transform,0,0,this.internalModel.width,this.internalModel.height)}onTickerUpdate(){this.update(Oe.shared.deltaMS)}update(t){this.deltaTime+=t,this.elapsedTime+=t}_render(t){this.registerInteraction(t.plugins.interaction),t.batch.reset(),t.geometry.reset(),t.shader.reset(),t.state.reset();let e=!1;this.glContextID!==t.CONTEXT_UID&&(this.glContextID=t.CONTEXT_UID,this.internalModel.updateWebGLContext(t.gl,this.glContextID),e=!0);for(let r=0;r<this.textures.length;r++){const i=this.textures[r];i.valid&&(!e&&i.baseTexture._glTextures[this.glContextID]||(t.gl.pixelStorei(WebGLRenderingContext.UNPACK_FLIP_Y_WEBGL,this.internalModel.textureFlipY),t.texture.bind(i.baseTexture,0)),this.internalModel.bindTexture(r,i.baseTexture._glTextures[this.glContextID].texture),i.baseTexture.touched=t.textureGC.count)}const i=t.framebuffer.viewport;this.internalModel.viewport=[i.x,i.y,i.width,i.height],this.deltaTime&&(this.internalModel.update(this.deltaTime,this.elapsedTime),this.deltaTime=0);const s=Re.copyFrom(t.globalUniforms.uniforms.projectionMatrix).append(this.worldTransform);this.internalModel.updateTransform(s),this.internalModel.draw(t.gl),t.state.reset(),t.texture.reset()}destroy(t){this.emit(\"destroy\"),this.autoUpdate=!1,this.unregisterInteraction(),(null==t?void 0:t.texture)&&this.textures.forEach((e=>e.destroy(t.baseTexture))),this.internalModel.destroy(),super.destroy(t)}}se(ke,[Ee]);const Ue=class{static resolveURL(t,e){var i;const s=null==(i=Ue.filesMap[t])?void 0:i[e];if(void 0===s)throw new Error(\"Cannot find this file from uploaded files: \"+e);return s}static upload(t,i){return __async(this,null,(function*(){const s={};for(const r of i.getDefinedFiles()){const a=decodeURI(e.url.resolve(i.url,r)),o=t.find((t=>t.webkitRelativePath===a));o&&(s[r]=URL.createObjectURL(o))}Ue.filesMap[i._objectURL]=s}))}static createSettings(t){return __async(this,null,(function*(){const e=t.find((t=>t.name.endsWith(\"model.json\")||t.name.endsWith(\"model3.json\")));if(!e)throw new TypeError(\"Settings file not found\");const i=yield Ue.readText(e),s=JSON.parse(i);s.url=e.webkitRelativePath;const r=Te.findRuntime(s);if(!r)throw new Error(\"Unknown settings JSON\");const a=r.createModelSettings(s);return a._objectURL=URL.createObjectURL(e),a}))}static readText(t){return __async(this,null,(function*(){return new Promise(((e,i)=>{const s=new FileReader;s.onload=()=>e(s.result),s.onerror=i,s.readAsText(t,\"utf8\")}))}))}};let Ne=Ue;Ne.filesMap={},Ne.factory=(t,e)=>__async(this,null,(function*(){if(Array.isArray(t.source)&&t.source[0]instanceof File){const e=t.source;let i=e.settings;if(i){if(!i._objectURL)throw new Error('\"_objectURL\" must be specified in ModelSettings')}else i=yield Ue.createSettings(e);i.validateFiles(e.map((t=>encodeURI(t.webkitRelativePath)))),yield Ue.upload(e,i),i.resolveURL=function(t){return Ue.resolveURL(this._objectURL,t)},t.source=i,t.live2dModel.once(\"modelLoaded\",(t=>{t.once(\"destroy\",(function(){const t=this.settings._objectURL;if(URL.revokeObjectURL(t),Ue.filesMap[t])for(const e of Object.values(Ue.filesMap[t]))URL.revokeObjectURL(e);delete Ue.filesMap[t]}))}))}return e()})),Te.live2DModelMiddlewares.unshift(Ne.factory);const Ve=class{static unzip(t,i){return __async(this,null,(function*(){const s=yield Ve.getFilePaths(t),r=[];for(const t of i.getDefinedFiles()){const a=decodeURI(e.url.resolve(i.url,t));s.includes(a)&&r.push(a)}const a=yield Ve.getFiles(t,r);for(let t=0;t<a.length;t++){const e=r[t],i=a[t];Object.defineProperty(i,\"webkitRelativePath\",{value:e})}return a}))}static createSettings(t){return __async(this,null,(function*(){const e=(yield Ve.getFilePaths(t)).find((t=>t.endsWith(\"model.json\")||t.endsWith(\"model3.json\")));if(!e)throw new Error(\"Settings file not found\");const i=yield Ve.readText(t,e);if(!i)throw new Error(\"Empty settings file: \"+e);const s=JSON.parse(i);s.url=e;const r=Te.findRuntime(s);if(!r)throw new Error(\"Unknown settings JSON\");return r.createModelSettings(s)}))}static zipReader(t,e){return __async(this,null,(function*(){throw new Error(\"Not implemented\")}))}static getFilePaths(t){return __async(this,null,(function*(){throw new Error(\"Not implemented\")}))}static getFiles(t,e){return __async(this,null,(function*(){throw new Error(\"Not implemented\")}))}static readText(t,e){return __async(this,null,(function*(){throw new Error(\"Not implemented\")}))}static releaseReader(t){}};let je=Ve;if(je.ZIP_PROTOCOL=\"zip://\",je.uid=0,je.factory=(t,e)=>__async(this,null,(function*(){const i=t.source;let s,r,a;if(\"string\"==typeof i&&(i.endsWith(\".zip\")||i.startsWith(Ve.ZIP_PROTOCOL))?(s=i.startsWith(Ve.ZIP_PROTOCOL)?i.slice(Ve.ZIP_PROTOCOL.length):i,r=yield ve.load({url:s,type:\"blob\",target:t.live2dModel})):Array.isArray(i)&&1===i.length&&i[0]instanceof File&&i[0].name.endsWith(\".zip\")&&(r=i[0],s=URL.createObjectURL(r),a=i.settings),r){if(!r.size)throw new Error(\"Empty zip file\");const e=yield Ve.zipReader(r,s);a||(a=yield Ve.createSettings(e)),a._objectURL=Ve.ZIP_PROTOCOL+Ve.uid+\"/\"+a.url;const i=yield Ve.unzip(e,a);i.settings=a,t.source=i,s.startsWith(\"blob:\")&&t.live2dModel.once(\"modelLoaded\",(t=>{t.once(\"destroy\",(function(){URL.revokeObjectURL(s)}))})),Ve.releaseReader(e)}return e()})),Te.live2DModelMiddlewares.unshift(je.factory),!window.Live2DCubismCore)throw new Error(\"Could not find Cubism 4 runtime. This plugin requires live2dcubismcore.js to be loaded.\");class Ge extends oe{constructor(t,e){var i;super(t,e),this.queueManager=new st,this.definitions=null!=(i=t.expressions)?i:[],this.init()}isFinished(){return this.queueManager.isFinished()}getExpressionIndex(t){return this.definitions.findIndex((e=>e.Name===t))}getExpressionFile(t){return t.File}createExpression(t,e){return O.create(t)}_setExpression(t){return this.queueManager.startMotion(t,!1,performance.now())}stopAllExpressions(){this.queueManager.stopAllMotions()}updateParameters(t,e){return this.queueManager.doUpdateMotion(t,e)}}class Xe extends le{constructor(t){if(super(t),!Xe.isValidJSON(t))throw new TypeError(\"Invalid JSON.\");Object.assign(this,new Ht(t))}static isValidJSON(t){var e;return!!(null==t?void 0:t.FileReferences)&&\"string\"==typeof t.FileReferences.Moc&&(null==(e=t.FileReferences.Textures)?void 0:e.length)>0&&t.FileReferences.Textures.every((t=>\"string\"==typeof t))}replaceFiles(t){if(super.replaceFiles(t),this.motions)for(const[e,i]of Object.entries(this.motions))for(let s=0;s<i.length;s++)i[s].File=t(i[s].File,`motions.${e}[${s}].File`),void 0!==i[s].Sound&&(i[s].Sound=t(i[s].Sound,`motions.${e}[${s}].Sound`));if(this.expressions)for(let e=0;e<this.expressions.length;e++)this.expressions[e].File=t(this.expressions[e].File,`expressions[${e}].File`)}}se(Xe,[Ht]);class ze extends me{constructor(t,e){var i;super(t,e),this.groups={idle:\"Idle\"},this.motionDataType=\"json\",this.queueManager=new st,this.definitions=null!=(i=t.motions)?i:{},this.eyeBlinkIds=t.getEyeBlinkParameters()||[],this.lipSyncIds=t.getLipSyncParameters()||[],this.init(e)}init(t){super.init(t),this.settings.expressions&&(this.expressionManager=new Ge(this.settings,t)),this.queueManager.setEventCallback(((t,e,i)=>{this.emit(\"motion:\"+e)}))}isFinished(){return this.queueManager.isFinished()}_startMotion(t,e){return t.setFinishedMotionHandler(e),this.queueManager.stopAllMotions(),this.queueManager.startMotion(t,!1,performance.now())}_stopAllMotions(){this.queueManager.stopAllMotions()}createMotion(e,i,s){const r=et.create(e),a=new H(e),o=(i===this.groups.idle?t.config.idleMotionFadingDuration:t.config.motionFadingDuration)/1e3;return void 0===a.getMotionFadeInTime()&&r.setFadeInTime(s.FadeInTime>0?s.FadeInTime:o),void 0===a.getMotionFadeOutTime()&&r.setFadeOutTime(s.FadeOutTime>0?s.FadeOutTime:o),r.setEffectIds(this.eyeBlinkIds,this.lipSyncIds),r}getMotionFile(t){return t.File}getMotionName(t){return t.File}getSoundFile(t){return t.Sound}updateParameters(t,e){return this.queueManager.doUpdateMotion(t,e)}destroy(){super.destroy(),this.queueManager.release(),this.queueManager=void 0}}const We=new p;class He extends pe{constructor(t,e,s){super(),this.lipSync=!0,this.breath=a.create(),this.renderer=new Wt,this.idParamAngleX=Yt,this.idParamAngleY=qt,this.idParamAngleZ=$t,this.idParamEyeBallX=Zt,this.idParamEyeBallY=Jt,this.idParamBodyAngleX=Qt,this.idParamBreath=Kt,this.pixelsPerUnit=1,this.centeringTransform=new i.Matrix,this.coreModel=t,this.settings=e,this.motionManager=new ze(e,s),this.init()}init(){var t;super.init(),(null==(t=this.settings.getEyeBlinkParameters())?void 0:t.length)>0&&(this.eyeBlink=l.create(this.settings)),this.breath.setParameters([new o(this.idParamAngleX,0,15,6.5345,.5),new o(this.idParamAngleY,0,8,3.5345,.5),new o(this.idParamAngleZ,0,10,5.5345,.5),new o(this.idParamBodyAngleX,0,4,15.5345,.5),new o(this.idParamBreath,0,.5,3.2345,.5)]),this.renderer.initialize(this.coreModel),this.renderer.setIsPremultipliedAlpha(!0)}getSize(){return[this.coreModel.getModel().canvasinfo.CanvasWidth,this.coreModel.getModel().canvasinfo.CanvasHeight]}getLayout(){const t={};if(this.settings.layout)for(const e of Object.keys(this.settings.layout)){t[e.charAt(0).toLowerCase()+e.slice(1)]=this.settings.layout[e]}return t}setupLayout(){super.setupLayout(),this.pixelsPerUnit=this.coreModel.getModel().canvasinfo.PixelsPerUnit,this.centeringTransform.scale(this.pixelsPerUnit,this.pixelsPerUnit).translate(this.originalWidth/2,this.originalHeight/2)}updateWebGLContext(t,e){this.renderer.firstDraw=!0,this.renderer._bufferData={vertex:null,uv:null,index:null},this.renderer.startUp(t),this.renderer._clippingManager._currentFrameNo=e,this.renderer._clippingManager._maskTexture=void 0,Ot.getInstance()._shaderSets=[]}bindTexture(t,e){this.renderer.bindTexture(t,e)}getHitAreaDefs(){var t,e;return null!=(e=null==(t=this.settings.hitAreas)?void 0:t.map((t=>({id:t.Id,name:t.Name,index:this.coreModel.getDrawableIndex(t.Id)}))))?e:[]}getDrawableIDs(){return this.coreModel.getDrawableIds()}getDrawableIndex(t){return this.coreModel.getDrawableIndex(t)}getDrawableVertices(t){if(\"string\"==typeof t&&-1===(t=this.coreModel.getDrawableIndex(t)))throw new TypeError(\"Unable to find drawable ID: \"+t);const e=this.coreModel.getDrawableVertices(t).slice();for(let i=0;i<e.length;i+=2)e[i]=e[i]*this.pixelsPerUnit+this.originalWidth/2,e[i+1]=-e[i+1]*this.pixelsPerUnit+this.originalHeight/2;return e}updateTransform(t){this.drawingMatrix.copyFrom(this.centeringTransform).prepend(this.localTransform).prepend(t)}update(t,e){var i,s,r,a;super.update(t,e),t/=1e3,e/=1e3;const o=this.coreModel;this.emit(\"beforeMotionUpdate\");const n=this.motionManager.update(this.coreModel,e);this.emit(\"afterMotionUpdate\"),o.saveParameters(),null==(i=this.motionManager.expressionManager)||i.update(o,e),n||null==(s=this.eyeBlink)||s.updateParameters(o,t),this.updateFocus(),this.updateNaturalMovements(1e3*t,1e3*e),null==(r=this.physics)||r.evaluate(o,t),null==(a=this.pose)||a.updateParameters(o,t),this.emit(\"beforeModelUpdate\"),o.update(),o.loadParameters()}updateFocus(){this.coreModel.addParameterValueById(this.idParamEyeBallX,this.focusController.x),this.coreModel.addParameterValueById(this.idParamEyeBallY,this.focusController.y),this.coreModel.addParameterValueById(this.idParamAngleX,30*this.focusController.x),this.coreModel.addParameterValueById(this.idParamAngleY,30*this.focusController.y),this.coreModel.addParameterValueById(this.idParamAngleZ,this.focusController.x*this.focusController.y*-30),this.coreModel.addParameterValueById(this.idParamBodyAngleX,10*this.focusController.x)}updateNaturalMovements(t,e){var i;null==(i=this.breath)||i.updateParameters(this.coreModel,t/1e3)}draw(t){const e=this.drawingMatrix,i=We.getArray();i[0]=e.a,i[1]=e.b,i[4]=-e.c,i[5]=-e.d,i[12]=e.tx,i[13]=e.ty,this.renderer.setMvpMatrix(We),this.renderer.setRenderState(t.getParameter(t.FRAMEBUFFER_BINDING),this.viewport),this.renderer.drawModel()}destroy(){super.destroy(),this.renderer.release(),this.coreModel.release(),this.renderer=void 0,this.coreModel=void 0}}let Ye,qe=20;function $e(){return C.isStarted()?Promise.resolve():(null!=Ye||(Ye=new Promise(((t,e)=>{!function i(){try{Ze(),t()}catch(s){if(qe--,qe<0){const t=new Error(\"Failed to start up Cubism 4 framework.\");return t.cause=s,void e(t)}ee.log(\"Cubism4\",\"Startup failed, retrying 10ms later...\"),setTimeout(i,10)}}()}))),Ye)}function Ze(t){t=Object.assign({logFunction:console.log,loggingLevel:S.LogLevel_Verbose},t),C.startUp(t),C.initialize()}function Je(){var t;null==(t=this.__moc)||t.release()}Te.registerRuntime({version:4,ready:$e,test:t=>t instanceof Xe||Xe.isValidJSON(t),isValidMoc(t){if(t.byteLength<4)return!1;const e=new Int8Array(t,0,4);return\"MOC3\"===String.fromCharCode(...e)},createModelSettings:t=>new Xe(t),createCoreModel(t){const e=F.create(t);try{const t=e.createModel();return t.__moc=e,t}catch(i){try{e.release()}catch(s){}throw i}},createInternalModel(t,e,i){const s=new He(t,e,i),r=t;return r.__moc&&(s.__moc=r.__moc,delete r.__moc,s.once(\"destroy\",Je)),s},createPhysics:(t,e)=>gt.create(e),createPose:(t,e)=>u.create(e)}),t.ACubismMotion=R,t.BreathParameterData=o,t.CSM_ASSERT=b,t.Constant=P,t.Cubism4ExpressionManager=Ge,t.Cubism4InternalModel=He,t.Cubism4ModelSettings=Xe,t.Cubism4MotionManager=ze,t.CubismBlendMode=f,t.CubismBreath=a,t.CubismClippingContext=Rt,t.CubismClippingManager_WebGL=At,t.CubismDebug=E,t.CubismExpressionMotion=O,t.CubismEyeBlink=l,t.CubismFramework=C,t.CubismLogDebug=w,t.CubismLogError=T,t.CubismLogInfo=I,t.CubismLogVerbose=function(t,...e){E.print(S.LogLevel_Verbose,\"[CSM][V]\"+t+\"\\n\",e)},t.CubismLogWarning=L,t.CubismMath=g,t.CubismMatrix44=p,t.CubismMoc=F,t.CubismModel=D,t.CubismModelSettingsJson=Ht,t.CubismModelUserData=B,t.CubismModelUserDataJson=A,t.CubismMotion=et,t.CubismMotionCurve=X,t.CubismMotionCurveTarget=N,t.CubismMotionData=W,t.CubismMotionEvent=z,t.CubismMotionJson=H,t.CubismMotionManager=class extends st{constructor(){super(),this._currentPriority=0,this._reservePriority=0}getCurrentPriority(){return this._currentPriority}getReservePriority(){return this._reservePriority}setReservePriority(t){this._reservePriority=t}startMotionPriority(t,e,i){return i==this._reservePriority&&(this._reservePriority=0),this._currentPriority=i,super.startMotion(t,e,this._userTimeSeconds)}updateMotion(t,e){this._userTimeSeconds+=e;const i=super.doUpdateMotion(t,this._userTimeSeconds);return this.isFinished()&&(this._currentPriority=0),i}reserveMotion(t){return!(t<=this._reservePriority||t<=this._currentPriority)&&(this._reservePriority=t,!0)}},t.CubismMotionPoint=j,t.CubismMotionQueueEntry=it,t.CubismMotionQueueManager=st,t.CubismMotionSegment=G,t.CubismMotionSegmentType=V,t.CubismPhysics=gt,t.CubismPhysicsInput=ht,t.CubismPhysicsJson=ct,t.CubismPhysicsOutput=ut,t.CubismPhysicsParticle=nt,t.CubismPhysicsRig=dt,t.CubismPhysicsSource=ot,t.CubismPhysicsSubRig=lt,t.CubismPhysicsTargetType=at,t.CubismPose=u,t.CubismRenderTextureResource=Bt,t.CubismRenderer=_,t.CubismRenderer_WebGL=Wt,t.CubismShader_WebGL=Ot,t.CubismTextureColor=y,t.CubismVector2=c,t.EvaluationOptionFlag=Y,t.ExpressionBlendType=U,t.ExpressionManager=oe,t.EyeState=h,t.FileLoader=Ne,t.FocusController=ne,t.HitAreaBody=\"Body\",t.HitAreaHead=\"Head\",t.HitAreaPrefix=\"HitArea\",t.InteractionMixin=Ee,t.InternalModel=pe,t.InvalidMotionQueueEntryHandleValue=rt,t.LOGICAL_HEIGHT=2,t.LOGICAL_WIDTH=2,t.Live2DFactory=Te,t.Live2DLoader=ve,t.Live2DModel=ke,t.Live2DTransform=Ae,t.LogLevel=S,t.ModelSettings=le,t.MotionManager=me,t.MotionPreloadStrategy=ce,t.MotionPriority=he,t.MotionState=ue,t.Options=pt,t.ParamAngleX=Yt,t.ParamAngleY=qt,t.ParamAngleZ=$t,t.ParamArmLA=\"ParamArmLA\",t.ParamArmLB=\"ParamArmLB\",t.ParamArmRA=\"ParamArmRA\",t.ParamArmRB=\"ParamArmRB\",t.ParamBaseX=\"ParamBaseX\",t.ParamBaseY=\"ParamBaseY\",t.ParamBodyAngleX=Qt,t.ParamBodyAngleY=\"ParamBodyAngleY\",t.ParamBodyAngleZ=\"ParamBodyAngleZ\",t.ParamBreath=Kt,t.ParamBrowLAngle=\"ParamBrowLAngle\",t.ParamBrowLForm=\"ParamBrowLForm\",t.ParamBrowLX=\"ParamBrowLX\",t.ParamBrowLY=\"ParamBrowLY\",t.ParamBrowRAngle=\"ParamBrowRAngle\",t.ParamBrowRForm=\"ParamBrowRForm\",t.ParamBrowRX=\"ParamBrowRX\",t.ParamBrowRY=\"ParamBrowRY\",t.ParamBustX=\"ParamBustX\",t.ParamBustY=\"ParamBustY\",t.ParamCheek=\"ParamCheek\",t.ParamEyeBallForm=\"ParamEyeBallForm\",t.ParamEyeBallX=Zt,t.ParamEyeBallY=Jt,t.ParamEyeLOpen=\"ParamEyeLOpen\",t.ParamEyeLSmile=\"ParamEyeLSmile\",t.ParamEyeROpen=\"ParamEyeROpen\",t.ParamEyeRSmile=\"ParamEyeRSmile\",t.ParamHairBack=\"ParamHairBack\",t.ParamHairFluffy=\"ParamHairFluffy\",t.ParamHairFront=\"ParamHairFront\",t.ParamHairSide=\"ParamHairSide\",t.ParamHandL=\"ParamHandL\",t.ParamHandR=\"ParamHandR\",t.ParamMouthForm=\"ParamMouthForm\",t.ParamMouthOpenY=\"ParamMouthOpenY\",t.ParamNONE=\"NONE:\",t.ParamShoulderY=\"ParamShoulderY\",t.PartData=d,t.PartsArmLPrefix=\"Parts01ArmL_\",t.PartsArmPrefix=\"Parts01Arm_\",t.PartsArmRPrefix=\"Parts01ArmR_\",t.PartsIdCore=\"Parts01Core\",t.PhysicsJsonEffectiveForces=class{constructor(){this.gravity=new c(0,0),this.wind=new c(0,0)}},t.ShaderNames=kt,t.SoundManager=de,t.VERSION=\"0.4.0\",t.XHRLoader=ye,t.ZipLoader=je,t.applyMixins=se,t.clamp=ie,t.copyArray=function(t,e,i,s,r){const a=e[s];Array.isArray(a)&&(i[r]=a.filter((e=>null!==e&&typeof e===t)))},t.copyProperty=function(t,e,i,s,r){const a=e[s];null!==a&&typeof a===t&&(i[r]=a)},t.csmRect=Tt,t.cubism4Ready=$e,t.folderName=re,t.fragmentShaderSrcMaskInvertedPremultipliedAlpha=zt,t.fragmentShaderSrcMaskPremultipliedAlpha=Xt,t.fragmentShaderSrcPremultipliedAlpha=Gt,t.fragmentShaderSrcsetupMask=Nt,t.logger=ee,t.rand=function(t,e){return Math.random()*(e-t)+t},t.remove=ae,t.startUpCubism4=Ze,t.vertexShaderSrc=Vt,t.vertexShaderSrcMasked=jt,t.vertexShaderSrcSetupMask=Ut,Object.defineProperties(t,{__esModule:{value:!0},[Symbol.toStringTag]:{value:\"Module\"}})}));\n"
19
+ ];
20
+
21
+ /**
22
+ * The client chunk's evaluator, embedded verbatim into the generated bundle.
23
+ *
24
+ * Keeping it in a real file (instead of a template string) means it is syntax
25
+ * checked and readable; build-vendor.mjs inlines it.
26
+ *
27
+ * Why classic script tags: each vendored library is a UMD bundle that mirrors
28
+ * its exports onto `globalThis.PIXI` only through `this`. Evaluating the text
29
+ * directly would run it in a scope where `this` is not the global object (and
30
+ * where an ambient `module`/`exports`/`define` would divert its UMD branch into
31
+ * a CommonJS `require("@pixi/…")` call that this loader cannot answer). A
32
+ * classic inline script element is a genuine global script: `this` is the
33
+ * global object, there are no module bindings, and top-level `var` lands on the
34
+ * global object — exactly the environment these libraries are built for.
35
+ *
36
+ * @param {string[]} sources - vendor scripts, in dependency order.
37
+ * @param {string} nonce - CSP nonce to carry onto each script element.
38
+ * @returns {Promise<{PIXI: object, L2D: object}>} the installed runtime.
39
+ */
40
+ async function evaluateGlobalScripts(sources, nonce) {
41
+ for (let index = 0; index < sources.length; index += 1) {
42
+ const element = document.createElement("script");
43
+ if (typeof nonce === "string" && nonce !== "") element.nonce = nonce;
44
+ element.textContent = sources[index];
45
+ document.head.appendChild(element);
46
+ element.remove();
47
+ // A classic inline script has no completion event: it runs during the
48
+ // append above. Yield once so this loop cannot interleave with a task
49
+ // the library scheduled from its own top level.
50
+ await Promise.resolve();
51
+ }
52
+ const PIXI = globalThis.PIXI;
53
+ const L2D = PIXI?.live2d;
54
+ if (PIXI === undefined || L2D === undefined) {
55
+ throw new Error("pet-live2d: vendor scripts did not install globalThis.PIXI and PIXI.live2d");
56
+ }
57
+ const namespace = { PIXI, L2D };
58
+ globalThis.__DSH_LIVE2D__ = namespace;
59
+ return namespace;
60
+ }
61
+
62
+ const nonce = document.querySelector("script[nonce]")?.nonce ?? "";
63
+ // Asynchronous by design: the factory returns a promise for the runtime,
64
+ // which the plugin awaits before building the PIXI application.
65
+ return evaluateGlobalScripts(SOURCES, nonce);
66
+ }
67
+ });