@benev/tact 0.4.0-0 → 0.4.0-10

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 (518) hide show
  1. package/README.md +173 -61
  2. package/package.json +9 -7
  3. package/s/demo/main.bundle.ts +18 -3
  4. package/s/demo/main.css +41 -5
  5. package/s/demo/presets.ts +54 -0
  6. package/s/gamepad/gamepad-app/element.ts +11 -4
  7. package/s/gamepad/gamepad-app/style.css.ts +5 -1
  8. package/s/gamepad/index.html.ts +1 -1
  9. package/s/gamepad/main.css +10 -1
  10. package/s/index.html.ts +28 -15
  11. package/s/lib/index.ts +15 -4
  12. package/s/lib/input/{encoder.ts → controller.ts} +26 -15
  13. package/s/lib/input/data/endian.ts +3 -0
  14. package/s/lib/input/data/{decode.ts → intent/decode.ts} +6 -5
  15. package/s/lib/input/data/intent/encode.ts +25 -0
  16. package/s/lib/input/data/intent/minihash.ts +5 -0
  17. package/s/{_archive/lib3/input/data/params.ts → lib/input/data/intent/sizes.ts} +1 -2
  18. package/s/lib/input/data/intent/types.ts +6 -0
  19. package/s/lib/input/data/parcel/decode.ts +32 -0
  20. package/s/lib/input/data/parcel/encode.ts +30 -0
  21. package/s/lib/input/data/parcel/sizes.ts +5 -0
  22. package/s/lib/input/data/parcel/types.ts +8 -0
  23. package/s/lib/input/data/test.ts +23 -0
  24. package/s/lib/input/decoder.ts +18 -12
  25. package/s/lib/input/evaluate/context.ts +6 -3
  26. package/s/lib/input/evaluate/evaluate.ts +71 -28
  27. package/s/lib/input/expression.ts +5 -5
  28. package/s/lib/input/investigate/hash-bindings.ts +5 -3
  29. package/s/lib/input/investigate/investigate.ts +24 -9
  30. package/s/lib/input/investigate/is-expression.ts +1 -0
  31. package/s/lib/input/investigate/make-input.ts +1 -5
  32. package/s/lib/input/sources/gamepad.ts +3 -9
  33. package/s/lib/input/sources/pointer.ts +0 -18
  34. package/s/lib/input/test.ts +216 -0
  35. package/s/lib/input/testing/quickbind.ts +7 -6
  36. package/s/lib/input/types.ts +3 -7
  37. package/s/lib/input/utils/mouse-button.ts +1 -6
  38. package/s/lib/test.ts +3 -177
  39. package/s/lib/ui/deck/auto-gamepads.ts +30 -0
  40. package/s/lib/ui/deck/controls/controls.ts +76 -0
  41. package/s/lib/ui/deck/controls/internal/assignments.ts +24 -0
  42. package/s/lib/ui/deck/controls/internal/data.ts +53 -0
  43. package/s/lib/ui/deck/controls/internal/fns.ts +38 -0
  44. package/s/lib/ui/deck/controls/internal/profiles.ts +83 -0
  45. package/s/lib/ui/deck/controls/types.ts +23 -0
  46. package/s/lib/ui/deck/hub.ts +109 -0
  47. package/s/lib/ui/deck/players.ts +73 -0
  48. package/s/lib/ui/deck/setup/deck.ts +44 -0
  49. package/s/lib/ui/deck/setup/tact.ts +101 -0
  50. package/s/lib/ui/deck/setup/types.ts +13 -0
  51. package/s/lib/ui/deck/setup/utils/broadcast-channel.ts +17 -0
  52. package/s/lib/ui/deck/setup/utils/kv.ts +20 -0
  53. package/s/lib/ui/deck/types.ts +26 -0
  54. package/s/lib/ui/deck/utils/first-preset.ts +9 -0
  55. package/s/lib/ui/icons/akar/LICENSE +23 -0
  56. package/s/lib/ui/icons/akar/backspace.svg.ts +4 -0
  57. package/s/lib/ui/icons/akar/circle-plus.svg.ts +4 -0
  58. package/s/lib/ui/icons/akar/copy.svg.ts +4 -0
  59. package/s/lib/ui/icons/akar/cross.svg.ts +4 -0
  60. package/s/lib/ui/icons/akar/devices.svg.ts +4 -0
  61. package/s/lib/ui/icons/akar/drag-vertical-fill.svg.ts +4 -0
  62. package/s/lib/ui/icons/akar/game-controller.svg.ts +4 -0
  63. package/s/lib/ui/icons/akar/key-cap.svg.ts +4 -0
  64. package/s/lib/ui/icons/akar/people-group.svg.ts +4 -0
  65. package/s/lib/ui/icons/akar/person-add.svg.ts +4 -0
  66. package/s/lib/ui/icons/akar/settings-horizontal.svg.ts +4 -0
  67. package/s/lib/ui/icons/akar/trash-can.svg.ts +4 -0
  68. package/s/lib/ui/icons/akar/x-small.svg.ts +4 -0
  69. package/s/lib/ui/views/controllers/style.css.ts +158 -0
  70. package/s/lib/ui/views/controllers/subviews/controller.ts +53 -0
  71. package/s/lib/ui/views/controllers/subviews/dropcard.ts +31 -0
  72. package/s/lib/ui/views/controllers/subviews/player.ts +38 -0
  73. package/s/lib/ui/views/controllers/view.ts +73 -0
  74. package/s/lib/ui/views/customize/parts/capture-gamepad-chord.ts +59 -0
  75. package/s/lib/ui/views/customize/parts/capture-key-chord.ts +70 -0
  76. package/s/lib/ui/views/customize/parts/capture-pointer-chord.ts +55 -0
  77. package/s/lib/ui/views/customize/parts/render-bindings.ts +67 -0
  78. package/s/lib/ui/views/customize/style.css.ts +144 -0
  79. package/s/lib/ui/views/customize/subviews/expression.ts +88 -0
  80. package/s/lib/ui/views/customize/subviews/recorder.ts +76 -0
  81. package/s/lib/ui/views/customize/view.ts +105 -0
  82. package/s/lib/ui/views/deck/style.css.ts +69 -0
  83. package/s/lib/ui/views/deck/types.ts +15 -0
  84. package/s/lib/ui/views/deck/view.ts +55 -0
  85. package/s/lib/ui/views/profile-select/view.ts +44 -0
  86. package/s/lib/ui/views/theme.css.ts +115 -0
  87. package/s/lib/ui/views/visualizer/style.css.ts +25 -0
  88. package/s/lib/ui/views/visualizer/view.ts +17 -0
  89. package/s/lib/ui/views/visualizer/visualizer.ts +17 -0
  90. package/s/lib/utils/ellipsis.ts +7 -0
  91. package/s/lib/utils/hash.ts +47 -0
  92. package/s/lib/utils/hueify.ts +5 -0
  93. package/x/demo/main.bundle.js +16 -3
  94. package/x/demo/main.bundle.js.map +1 -1
  95. package/x/demo/main.bundle.min.js +814 -12
  96. package/x/demo/main.bundle.min.js.map +4 -4
  97. package/x/demo/main.css +41 -5
  98. package/x/demo/presets.d.ts +30 -0
  99. package/x/demo/presets.js +51 -0
  100. package/x/demo/presets.js.map +1 -0
  101. package/x/gamepad/gamepad-app/element.js +9 -4
  102. package/x/gamepad/gamepad-app/element.js.map +1 -1
  103. package/x/gamepad/gamepad-app/style.css.js +5 -1
  104. package/x/gamepad/gamepad-app/style.css.js.map +1 -1
  105. package/x/gamepad/index.html +4 -4
  106. package/x/gamepad/index.html.js +1 -1
  107. package/x/gamepad/main.bundle.min.js +25 -21
  108. package/x/gamepad/main.bundle.min.js.map +4 -4
  109. package/x/gamepad/main.css +10 -1
  110. package/x/index.html +30 -17
  111. package/x/index.html.js +28 -15
  112. package/x/index.html.js.map +1 -1
  113. package/x/lib/index.d.ts +14 -1
  114. package/x/lib/index.js +14 -1
  115. package/x/lib/index.js.map +1 -1
  116. package/x/lib/input/controller.d.ts +15 -0
  117. package/x/lib/input/{encoder.js → controller.js} +19 -13
  118. package/x/lib/input/controller.js.map +1 -0
  119. package/x/lib/input/data/endian.d.ts +1 -0
  120. package/x/lib/input/data/endian.js +2 -0
  121. package/x/lib/input/data/endian.js.map +1 -0
  122. package/x/lib/input/data/intent/decode.d.ts +5 -0
  123. package/x/lib/input/data/{decode.js → intent/decode.js} +5 -4
  124. package/x/lib/input/data/intent/decode.js.map +1 -0
  125. package/x/lib/input/data/intent/encode.d.ts +2 -0
  126. package/x/lib/input/data/intent/encode.js +18 -0
  127. package/x/lib/input/data/intent/encode.js.map +1 -0
  128. package/x/lib/input/data/intent/minihash.d.ts +1 -0
  129. package/x/lib/input/data/intent/minihash.js +4 -0
  130. package/x/lib/input/data/intent/minihash.js.map +1 -0
  131. package/x/lib/input/data/{params.d.ts → intent/sizes.d.ts} +1 -2
  132. package/x/lib/input/data/intent/sizes.js +5 -0
  133. package/x/lib/input/data/intent/sizes.js.map +1 -0
  134. package/x/lib/input/data/intent/types.d.ts +4 -0
  135. package/x/lib/input/data/intent/types.js +2 -0
  136. package/x/lib/input/data/intent/types.js.map +1 -0
  137. package/x/lib/input/data/parcel/decode.d.ts +2 -0
  138. package/x/lib/input/data/parcel/decode.js +22 -0
  139. package/x/lib/input/data/parcel/decode.js.map +1 -0
  140. package/x/lib/input/data/parcel/encode.d.ts +2 -0
  141. package/x/lib/input/data/parcel/encode.js +19 -0
  142. package/x/lib/input/data/parcel/encode.js.map +1 -0
  143. package/x/lib/input/data/parcel/sizes.d.ts +3 -0
  144. package/x/lib/input/data/parcel/sizes.js +4 -0
  145. package/x/lib/input/data/parcel/sizes.js.map +1 -0
  146. package/x/lib/input/data/parcel/types.d.ts +5 -0
  147. package/x/lib/input/data/parcel/types.js +2 -0
  148. package/x/lib/input/data/parcel/types.js.map +1 -0
  149. package/x/lib/input/data/test.d.ts +6 -0
  150. package/x/lib/input/data/test.js +19 -0
  151. package/x/lib/input/data/test.js.map +1 -0
  152. package/x/lib/input/decoder.d.ts +3 -3
  153. package/x/lib/input/decoder.js +14 -12
  154. package/x/lib/input/decoder.js.map +1 -1
  155. package/x/lib/input/evaluate/context.d.ts +5 -4
  156. package/x/lib/input/evaluate/context.js +2 -3
  157. package/x/lib/input/evaluate/context.js.map +1 -1
  158. package/x/lib/input/evaluate/evaluate.d.ts +1 -1
  159. package/x/lib/input/evaluate/evaluate.js +65 -24
  160. package/x/lib/input/evaluate/evaluate.js.map +1 -1
  161. package/x/lib/input/expression.d.ts +1 -1
  162. package/x/lib/input/investigate/hash-bindings.d.ts +1 -1
  163. package/x/lib/input/investigate/hash-bindings.js +5 -3
  164. package/x/lib/input/investigate/hash-bindings.js.map +1 -1
  165. package/x/lib/input/investigate/investigate.d.ts +2 -1
  166. package/x/lib/input/investigate/investigate.js +14 -9
  167. package/x/lib/input/investigate/investigate.js.map +1 -1
  168. package/x/lib/input/investigate/is-expression.js +2 -0
  169. package/x/lib/input/investigate/is-expression.js.map +1 -1
  170. package/x/lib/input/investigate/make-input.js +1 -5
  171. package/x/lib/input/investigate/make-input.js.map +1 -1
  172. package/x/lib/input/sources/gamepad.js +3 -9
  173. package/x/lib/input/sources/gamepad.js.map +1 -1
  174. package/x/lib/input/sources/pointer.js +0 -21
  175. package/x/lib/input/sources/pointer.js.map +1 -1
  176. package/x/lib/input/test.d.ts +20 -0
  177. package/x/lib/input/test.js +170 -0
  178. package/x/lib/input/test.js.map +1 -0
  179. package/x/lib/input/testing/quickbind.d.ts +6 -4
  180. package/x/lib/input/testing/quickbind.js +7 -6
  181. package/x/lib/input/testing/quickbind.js.map +1 -1
  182. package/x/lib/input/types.d.ts +3 -8
  183. package/x/lib/input/types.js.map +1 -1
  184. package/x/lib/input/utils/mouse-button.js +1 -6
  185. package/x/lib/input/utils/mouse-button.js.map +1 -1
  186. package/x/lib/test.js +3 -133
  187. package/x/lib/test.js.map +1 -1
  188. package/x/lib/ui/deck/auto-gamepads.d.ts +4 -0
  189. package/x/lib/ui/deck/auto-gamepads.js +20 -0
  190. package/x/lib/ui/deck/auto-gamepads.js.map +1 -0
  191. package/x/lib/ui/deck/controls/controls.d.ts +19 -0
  192. package/x/lib/ui/deck/controls/controls.js +56 -0
  193. package/x/lib/ui/deck/controls/controls.js.map +1 -0
  194. package/x/lib/ui/deck/controls/internal/assignments.d.ts +9 -0
  195. package/x/lib/ui/deck/controls/internal/assignments.js +16 -0
  196. package/x/lib/ui/deck/controls/internal/assignments.js.map +1 -0
  197. package/x/lib/ui/deck/controls/internal/data.d.ts +29 -0
  198. package/x/lib/ui/deck/controls/internal/data.js +32 -0
  199. package/x/lib/ui/deck/controls/internal/data.js.map +1 -0
  200. package/x/lib/ui/deck/controls/internal/fns.d.ts +6 -0
  201. package/x/lib/ui/deck/controls/internal/fns.js +19 -0
  202. package/x/lib/ui/deck/controls/internal/fns.js.map +1 -0
  203. package/x/lib/ui/deck/controls/internal/profiles.d.ts +18 -0
  204. package/x/lib/ui/deck/controls/internal/profiles.js +59 -0
  205. package/x/lib/ui/deck/controls/internal/profiles.js.map +1 -0
  206. package/x/lib/ui/deck/controls/types.d.ts +17 -0
  207. package/x/lib/ui/deck/controls/types.js +2 -0
  208. package/x/lib/ui/deck/controls/types.js.map +1 -0
  209. package/x/lib/ui/deck/hub.d.ts +21 -0
  210. package/x/lib/ui/deck/hub.js +86 -0
  211. package/x/lib/ui/deck/hub.js.map +1 -0
  212. package/x/lib/ui/deck/players.d.ts +16 -0
  213. package/x/lib/ui/deck/players.js +56 -0
  214. package/x/lib/ui/deck/players.js.map +1 -0
  215. package/x/lib/ui/deck/setup/deck.d.ts +3 -0
  216. package/x/lib/ui/deck/setup/deck.js +30 -0
  217. package/x/lib/ui/deck/setup/deck.js.map +1 -0
  218. package/x/lib/ui/deck/setup/tact.d.ts +20 -0
  219. package/x/lib/ui/deck/setup/tact.js +78 -0
  220. package/x/lib/ui/deck/setup/tact.js.map +1 -0
  221. package/x/lib/ui/deck/setup/types.d.ts +10 -0
  222. package/x/lib/ui/deck/setup/types.js +2 -0
  223. package/x/lib/ui/deck/setup/types.js.map +1 -0
  224. package/x/lib/ui/deck/setup/utils/broadcast-channel.d.ts +4 -0
  225. package/x/lib/ui/deck/setup/utils/broadcast-channel.js +10 -0
  226. package/x/lib/ui/deck/setup/utils/broadcast-channel.js.map +1 -0
  227. package/x/lib/ui/deck/setup/utils/kv.d.ts +5 -0
  228. package/x/lib/ui/deck/setup/utils/kv.js +12 -0
  229. package/x/lib/ui/deck/setup/utils/kv.js.map +1 -0
  230. package/x/lib/ui/deck/types.d.ts +19 -0
  231. package/x/lib/ui/deck/types.js +3 -0
  232. package/x/lib/ui/deck/types.js.map +1 -0
  233. package/x/lib/ui/deck/utils/first-preset.d.ts +6 -0
  234. package/x/lib/ui/deck/utils/first-preset.js +5 -0
  235. package/x/lib/ui/deck/utils/first-preset.js.map +1 -0
  236. package/x/lib/ui/icons/akar/backspace.svg.d.ts +2 -0
  237. package/x/lib/ui/icons/akar/backspace.svg.js +3 -0
  238. package/x/lib/ui/icons/akar/backspace.svg.js.map +1 -0
  239. package/x/lib/ui/icons/akar/circle-plus.svg.d.ts +2 -0
  240. package/x/lib/ui/icons/akar/circle-plus.svg.js +3 -0
  241. package/x/lib/ui/icons/akar/circle-plus.svg.js.map +1 -0
  242. package/x/lib/ui/icons/akar/copy.svg.d.ts +2 -0
  243. package/x/lib/ui/icons/akar/copy.svg.js +3 -0
  244. package/x/lib/ui/icons/akar/copy.svg.js.map +1 -0
  245. package/x/lib/ui/icons/akar/cross.svg.d.ts +2 -0
  246. package/x/lib/ui/icons/akar/cross.svg.js +3 -0
  247. package/x/lib/ui/icons/akar/cross.svg.js.map +1 -0
  248. package/x/lib/ui/icons/akar/devices.svg.d.ts +2 -0
  249. package/x/lib/ui/icons/akar/devices.svg.js +3 -0
  250. package/x/lib/ui/icons/akar/devices.svg.js.map +1 -0
  251. package/x/lib/ui/icons/akar/drag-vertical-fill.svg.d.ts +2 -0
  252. package/x/lib/ui/icons/akar/drag-vertical-fill.svg.js +3 -0
  253. package/x/lib/ui/icons/akar/drag-vertical-fill.svg.js.map +1 -0
  254. package/x/lib/ui/icons/akar/game-controller.svg.d.ts +2 -0
  255. package/x/lib/ui/icons/akar/game-controller.svg.js +3 -0
  256. package/x/lib/ui/icons/akar/game-controller.svg.js.map +1 -0
  257. package/x/lib/ui/icons/akar/key-cap.svg.d.ts +2 -0
  258. package/x/lib/ui/icons/akar/key-cap.svg.js +3 -0
  259. package/x/lib/ui/icons/akar/key-cap.svg.js.map +1 -0
  260. package/x/lib/ui/icons/akar/people-group.svg.d.ts +2 -0
  261. package/x/lib/ui/icons/akar/people-group.svg.js +3 -0
  262. package/x/lib/ui/icons/akar/people-group.svg.js.map +1 -0
  263. package/x/lib/ui/icons/akar/person-add.svg.d.ts +2 -0
  264. package/x/lib/ui/icons/akar/person-add.svg.js +3 -0
  265. package/x/lib/ui/icons/akar/person-add.svg.js.map +1 -0
  266. package/x/lib/ui/icons/akar/settings-horizontal.svg.d.ts +2 -0
  267. package/x/lib/ui/icons/akar/settings-horizontal.svg.js +3 -0
  268. package/x/lib/ui/icons/akar/settings-horizontal.svg.js.map +1 -0
  269. package/x/lib/ui/icons/akar/trash-can.svg.d.ts +2 -0
  270. package/x/lib/ui/icons/akar/trash-can.svg.js +3 -0
  271. package/x/lib/ui/icons/akar/trash-can.svg.js.map +1 -0
  272. package/x/lib/ui/icons/akar/x-small.svg.d.ts +2 -0
  273. package/x/lib/ui/icons/akar/x-small.svg.js +3 -0
  274. package/x/lib/ui/icons/akar/x-small.svg.js.map +1 -0
  275. package/x/lib/ui/views/controllers/style.css.js +157 -0
  276. package/x/lib/ui/views/controllers/style.css.js.map +1 -0
  277. package/x/lib/ui/views/controllers/subviews/controller.d.ts +3 -0
  278. package/x/lib/ui/views/controllers/subviews/controller.js +45 -0
  279. package/x/lib/ui/views/controllers/subviews/controller.js.map +1 -0
  280. package/x/lib/ui/views/controllers/subviews/dropcard.d.ts +9 -0
  281. package/x/lib/ui/views/controllers/subviews/dropcard.js +20 -0
  282. package/x/lib/ui/views/controllers/subviews/dropcard.js.map +1 -0
  283. package/x/lib/ui/views/controllers/subviews/player.d.ts +2 -0
  284. package/x/lib/ui/views/controllers/subviews/player.js +32 -0
  285. package/x/lib/ui/views/controllers/subviews/player.js.map +1 -0
  286. package/x/lib/ui/views/controllers/view.d.ts +2 -0
  287. package/x/lib/ui/views/controllers/view.js +65 -0
  288. package/x/lib/ui/views/controllers/view.js.map +1 -0
  289. package/x/lib/ui/views/customize/parts/capture-gamepad-chord.d.ts +2 -0
  290. package/x/lib/ui/views/customize/parts/capture-gamepad-chord.js +46 -0
  291. package/x/lib/ui/views/customize/parts/capture-gamepad-chord.js.map +1 -0
  292. package/x/lib/ui/views/customize/parts/capture-key-chord.d.ts +2 -0
  293. package/x/lib/ui/views/customize/parts/capture-key-chord.js +58 -0
  294. package/x/lib/ui/views/customize/parts/capture-key-chord.js.map +1 -0
  295. package/x/lib/ui/views/customize/parts/capture-pointer-chord.d.ts +2 -0
  296. package/x/lib/ui/views/customize/parts/capture-pointer-chord.js +42 -0
  297. package/x/lib/ui/views/customize/parts/capture-pointer-chord.js.map +1 -0
  298. package/x/lib/ui/views/customize/parts/render-bindings.d.ts +3 -0
  299. package/x/lib/ui/views/customize/parts/render-bindings.js +32 -0
  300. package/x/lib/ui/views/customize/parts/render-bindings.js.map +1 -0
  301. package/x/lib/ui/views/customize/style.css.d.ts +2 -0
  302. package/x/lib/ui/views/customize/style.css.js +143 -0
  303. package/x/lib/ui/views/customize/style.css.js.map +1 -0
  304. package/x/lib/ui/views/customize/subviews/expression.d.ts +2 -0
  305. package/x/lib/ui/views/customize/subviews/expression.js +75 -0
  306. package/x/lib/ui/views/customize/subviews/expression.js.map +1 -0
  307. package/x/lib/ui/views/customize/subviews/recorder.d.ts +3 -0
  308. package/x/lib/ui/views/customize/subviews/recorder.js +60 -0
  309. package/x/lib/ui/views/customize/subviews/recorder.js.map +1 -0
  310. package/x/lib/ui/views/customize/view.d.ts +6 -0
  311. package/x/lib/ui/views/customize/view.js +83 -0
  312. package/x/lib/ui/views/customize/view.js.map +1 -0
  313. package/x/lib/ui/views/deck/style.css.d.ts +2 -0
  314. package/x/lib/ui/views/deck/style.css.js +68 -0
  315. package/x/lib/ui/views/deck/style.css.js.map +1 -0
  316. package/x/lib/ui/views/deck/types.d.ts +14 -0
  317. package/x/lib/ui/views/deck/types.js +2 -0
  318. package/x/lib/ui/views/deck/types.js.map +1 -0
  319. package/x/lib/ui/views/deck/view.d.ts +2 -0
  320. package/x/lib/ui/views/deck/view.js +48 -0
  321. package/x/lib/ui/views/deck/view.js.map +1 -0
  322. package/x/lib/ui/views/profile-select/view.d.ts +4 -0
  323. package/x/lib/ui/views/profile-select/view.js +34 -0
  324. package/x/lib/ui/views/profile-select/view.js.map +1 -0
  325. package/x/lib/ui/views/theme.css.d.ts +2 -0
  326. package/x/lib/ui/views/theme.css.js +113 -0
  327. package/x/lib/ui/views/theme.css.js.map +1 -0
  328. package/x/lib/ui/views/visualizer/style.css.d.ts +2 -0
  329. package/x/lib/ui/views/visualizer/style.css.js +24 -0
  330. package/x/lib/ui/views/visualizer/style.css.js.map +1 -0
  331. package/x/lib/ui/views/visualizer/view.d.ts +2 -0
  332. package/x/lib/ui/views/visualizer/view.js +12 -0
  333. package/x/lib/ui/views/visualizer/view.js.map +1 -0
  334. package/x/lib/ui/views/visualizer/visualizer.d.ts +5 -0
  335. package/x/lib/ui/views/visualizer/visualizer.js +13 -0
  336. package/x/lib/ui/views/visualizer/visualizer.js.map +1 -0
  337. package/x/lib/utils/ellipsis.d.ts +1 -0
  338. package/x/lib/utils/ellipsis.js +6 -0
  339. package/x/lib/utils/ellipsis.js.map +1 -0
  340. package/x/lib/utils/hash.d.ts +1 -0
  341. package/x/lib/utils/hash.js +47 -0
  342. package/x/lib/utils/hash.js.map +1 -0
  343. package/x/lib/utils/hueify.d.ts +1 -0
  344. package/x/lib/utils/hueify.js +4 -0
  345. package/x/lib/utils/hueify.js.map +1 -0
  346. package/x/lib/utils/make-id.d.ts +1 -0
  347. package/x/lib/utils/make-id.js +5 -0
  348. package/x/lib/utils/make-id.js.map +1 -0
  349. package/s/_archive/core/atom/defaults.ts +0 -32
  350. package/s/_archive/core/atom/lens-algo.ts +0 -84
  351. package/s/_archive/core/atom/types.ts +0 -44
  352. package/s/_archive/core/bindings/normalize.ts +0 -27
  353. package/s/_archive/core/bindings/shape.ts +0 -15
  354. package/s/_archive/core/bindings/table.ts +0 -22
  355. package/s/_archive/core/intent/bucket.ts +0 -28
  356. package/s/_archive/core/intent/consts.ts +0 -4
  357. package/s/_archive/core/intent/decode.ts +0 -23
  358. package/s/_archive/core/intent/encode.ts +0 -20
  359. package/s/_archive/core/intent/merge.ts +0 -15
  360. package/s/_archive/core/parts/action.ts +0 -36
  361. package/s/_archive/core/parts/sample-map.ts +0 -24
  362. package/s/_archive/core/resolvers/actions.ts +0 -30
  363. package/s/_archive/core/resolvers/intents.ts +0 -106
  364. package/s/_archive/core/types.ts +0 -40
  365. package/s/_archive/deck/controller.ts +0 -35
  366. package/s/_archive/deck/deck.ts +0 -92
  367. package/s/_archive/deck/parts/profiles.ts +0 -39
  368. package/s/_archive/deck/parts/runtime.ts +0 -11
  369. package/s/_archive/deck/parts/settings.ts +0 -30
  370. package/s/_archive/deck/port.ts +0 -35
  371. package/s/_archive/deck/types.ts +0 -16
  372. package/s/_archive/demo/demo-app/element.ts +0 -17
  373. package/s/_archive/demo/demo-app/style.css.ts +0 -10
  374. package/s/_archive/demo/main.bundle.ts +0 -71
  375. package/s/_archive/demo/main.css +0 -83
  376. package/s/_archive/device/devices.ts +0 -24
  377. package/s/_archive/device/gamepad.ts +0 -42
  378. package/s/_archive/device/keyboard.ts +0 -33
  379. package/s/_archive/device/pad/on-pad.ts +0 -50
  380. package/s/_archive/device/pad/pad.ts +0 -10
  381. package/s/_archive/device/pointer.ts +0 -89
  382. package/s/_archive/device/sampler.ts +0 -25
  383. package/s/_archive/device/stick.ts +0 -24
  384. package/s/_archive/index-ui.ts +0 -3
  385. package/s/_archive/lib/bindings/resolver.ts +0 -61
  386. package/s/_archive/lib/bindings/types.ts +0 -67
  387. package/s/_archive/lib/bindings/utils/action-resolver.ts +0 -51
  388. package/s/_archive/lib/bindings/utils/evaluator.ts +0 -162
  389. package/s/_archive/lib/bindings/utils/hash-bindings.ts +0 -22
  390. package/s/_archive/lib/bindings/utils/intent-coding.ts +0 -50
  391. package/s/_archive/lib/bindings/utils/intent-resolver.ts +0 -52
  392. package/s/_archive/lib/bindings/utils/investigate.ts +0 -47
  393. package/s/_archive/lib/bindings/utils/is-down.ts +0 -5
  394. package/s/_archive/lib/bindings/utils/is-expression.ts +0 -11
  395. package/s/_archive/lib/index.ts +0 -12
  396. package/s/_archive/lib/sampling/sources/example.ts +0 -7
  397. package/s/_archive/lib/sampling/sources/gamepad.ts +0 -63
  398. package/s/_archive/lib/sampling/sources/keyboard.ts +0 -52
  399. package/s/_archive/lib/sampling/sources/pointer.ts +0 -56
  400. package/s/_archive/lib/sampling/sources/sources.ts +0 -13
  401. package/s/_archive/lib/sampling/sources/stick.ts +0 -27
  402. package/s/_archive/lib/sampling/types.ts +0 -11
  403. package/s/_archive/lib/sampling/utils/add-sample.ts +0 -12
  404. package/s/_archive/lib/test.ts +0 -57
  405. package/s/_archive/lib/utils/backwards.ts +0 -6
  406. package/s/_archive/lib/utils/evergreen.ts +0 -10
  407. package/s/_archive/lib/utils/mouse-button.ts +0 -10
  408. package/s/_archive/lib/utils/pad/on-pad.ts +0 -50
  409. package/s/_archive/lib/utils/pad/pad.ts +0 -10
  410. package/s/_archive/lib/utils/split-axis.ts +0 -15
  411. package/s/_archive/lib2/core/decoder/decoder.ts +0 -34
  412. package/s/_archive/lib2/core/decoder/utils/update-input.ts +0 -21
  413. package/s/_archive/lib2/core/encoder/encoder.ts +0 -60
  414. package/s/_archive/lib2/core/encoder/evaluate/context.ts +0 -22
  415. package/s/_archive/lib2/core/encoder/evaluate/evaluate.ts +0 -144
  416. package/s/_archive/lib2/core/encoder/parts/expression-index.ts +0 -27
  417. package/s/_archive/lib2/core/encoder/parts/hash-bindings.ts +0 -22
  418. package/s/_archive/lib2/core/encoder/parts/investigate.ts +0 -50
  419. package/s/_archive/lib2/core/encoder/parts/sampler.ts +0 -22
  420. package/s/_archive/lib2/core/sources/example.ts +0 -9
  421. package/s/_archive/lib2/core/sources/sources.ts +0 -16
  422. package/s/_archive/lib2/core/types.ts +0 -78
  423. package/s/_archive/lib2/core/utils/data.ts +0 -50
  424. package/s/_archive/lib2/core/utils/is-down.ts +0 -5
  425. package/s/_archive/lib2/core/utils/is-expression.ts +0 -11
  426. package/s/_archive/lib3/input/data/decode.ts +0 -25
  427. package/s/_archive/lib3/input/data/encode.ts +0 -24
  428. package/s/_archive/lib3/input/decoder.ts +0 -56
  429. package/s/_archive/lib3/input/encoder.ts +0 -99
  430. package/s/_archive/lib3/input/evaluate/context.ts +0 -15
  431. package/s/_archive/lib3/input/evaluate/evaluate.ts +0 -142
  432. package/s/_archive/lib3/input/evaluate/utils/clock.ts +0 -14
  433. package/s/_archive/lib3/input/investigate/hash-bindings.ts +0 -22
  434. package/s/_archive/lib3/input/investigate/investigate.ts +0 -42
  435. package/s/_archive/lib3/input/investigate/is-expression.ts +0 -11
  436. package/s/_archive/lib3/input/investigate/make-input.ts +0 -18
  437. package/s/_archive/lib3/input/investigate/root-index.ts +0 -26
  438. package/s/_archive/lib3/input/mixer.ts +0 -20
  439. package/s/_archive/lib3/input/sources/gamepad.ts +0 -58
  440. package/s/_archive/lib3/input/sources/keyboard.ts +0 -49
  441. package/s/_archive/lib3/input/sources/plain.ts +0 -9
  442. package/s/_archive/lib3/input/sources/pointer.ts +0 -58
  443. package/s/_archive/lib3/input/sources/sources.ts +0 -24
  444. package/s/_archive/lib3/input/sources/stick.ts +0 -29
  445. package/s/_archive/lib3/input/testing/quickbind.ts +0 -20
  446. package/s/_archive/lib3/input/types.ts +0 -96
  447. package/s/_archive/lib3/input/utils/evergreen.ts +0 -10
  448. package/s/_archive/lib3/input/utils/is-down.ts +0 -5
  449. package/s/_archive/lib3/input/utils/mouse-button.ts +0 -10
  450. package/s/_archive/lib3/input/utils/pad/on-pad.ts +0 -50
  451. package/s/_archive/lib3/input/utils/pad/pad.ts +0 -10
  452. package/s/_archive/lib3/input/utils/sampler.ts +0 -28
  453. package/s/_archive/lib3/input/utils/split-axis.ts +0 -15
  454. package/s/_archive/lib3/test.ts +0 -100
  455. package/s/_archive/lib4/input/data/decode.ts +0 -25
  456. package/s/_archive/lib4/input/data/encode.ts +0 -24
  457. package/s/_archive/lib4/input/data/params.ts +0 -7
  458. package/s/_archive/lib4/input/encoder.ts +0 -100
  459. package/s/_archive/lib4/input/evaluate/context.ts +0 -16
  460. package/s/_archive/lib4/input/evaluate/evaluate.ts +0 -157
  461. package/s/_archive/lib4/input/evaluate/utils/clock.ts +0 -14
  462. package/s/_archive/lib4/input/investigate/hash-bindings.ts +0 -22
  463. package/s/_archive/lib4/input/investigate/investigate.ts +0 -37
  464. package/s/_archive/lib4/input/investigate/is.ts +0 -19
  465. package/s/_archive/lib4/input/investigate/make-input.ts +0 -18
  466. package/s/_archive/lib4/input/investigate/root-index.ts +0 -26
  467. package/s/_archive/lib4/input/sources/gamepad.ts +0 -58
  468. package/s/_archive/lib4/input/sources/keyboard.ts +0 -46
  469. package/s/_archive/lib4/input/sources/plain.ts +0 -9
  470. package/s/_archive/lib4/input/sources/pointer.ts +0 -50
  471. package/s/_archive/lib4/input/sources/sources.ts +0 -24
  472. package/s/_archive/lib4/input/sources/stick.ts +0 -25
  473. package/s/_archive/lib4/input/types.ts +0 -102
  474. package/s/_archive/lib4/input/utils/evergreen.ts +0 -10
  475. package/s/_archive/lib4/input/utils/is-down.ts +0 -5
  476. package/s/_archive/lib4/input/utils/mouse-button.ts +0 -10
  477. package/s/_archive/lib4/input/utils/pad/on-pad.ts +0 -50
  478. package/s/_archive/lib4/input/utils/pad/pad.ts +0 -10
  479. package/s/_archive/lib4/input/utils/sampler.ts +0 -28
  480. package/s/_archive/lib4/input/utils/split-axis.ts +0 -15
  481. package/s/_archive/lib4/test.ts +0 -12
  482. package/s/_archive/test.ts +0 -339
  483. package/s/_archive/ui/views/desk/style.css.ts +0 -70
  484. package/s/_archive/ui/views/desk/view.ts +0 -122
  485. package/s/_archive/utils/circular-clamp.ts +0 -14
  486. package/s/_archive/utils/do-async.ts +0 -5
  487. package/s/_archive/utils/evergreen.ts +0 -10
  488. package/s/_archive/utils/freeze-clone.ts +0 -7
  489. package/s/_archive/utils/identifier.ts +0 -30
  490. package/s/_archive/utils/insert.ts +0 -6
  491. package/s/_archive/utils/is-down.ts +0 -5
  492. package/s/_archive/utils/remap.ts +0 -7
  493. package/s/_archive/utils/shift-limit.ts +0 -9
  494. package/s/_archive/utils/sort-by-key.ts +0 -7
  495. package/s/_archive/utils/split-axis.ts +0 -15
  496. package/s/_archive/utils/tmax.ts +0 -7
  497. package/s/_archive/utils/tmin.ts +0 -7
  498. package/s/demo/demo-app/element.ts +0 -15
  499. package/s/demo/demo-app/style.css.ts +0 -10
  500. package/s/lib/input/data/encode.ts +0 -24
  501. package/s/lib/input/data/params.ts +0 -7
  502. package/x/_archive/demo/main.css +0 -83
  503. package/x/demo/demo-app/element.d.ts +0 -1
  504. package/x/demo/demo-app/element.js +0 -12
  505. package/x/demo/demo-app/element.js.map +0 -1
  506. package/x/demo/demo-app/style.css.js +0 -9
  507. package/x/demo/demo-app/style.css.js.map +0 -1
  508. package/x/lib/input/data/decode.d.ts +0 -5
  509. package/x/lib/input/data/decode.js.map +0 -1
  510. package/x/lib/input/data/encode.d.ts +0 -2
  511. package/x/lib/input/data/encode.js +0 -17
  512. package/x/lib/input/data/encode.js.map +0 -1
  513. package/x/lib/input/data/params.js +0 -6
  514. package/x/lib/input/data/params.js.map +0 -1
  515. package/x/lib/input/encoder.d.ts +0 -10
  516. package/x/lib/input/encoder.js.map +0 -1
  517. /package/s/{_archive → lib}/utils/make-id.ts +0 -0
  518. /package/x/{demo/demo-app → lib/ui/views/controllers}/style.css.d.ts +0 -0
@@ -1,6 +1,6 @@
1
- function Xt(e){return e.replace(/([a-zA-Z])(?=[A-Z])/g,"$1-").toLowerCase()}function te(e,t={}){let{soft:r=!1,upgrade:o=!0}=t;for(let[s,n]of Object.entries(e)){let i=Xt(s),c=customElements.get(i);r&&c||(customElements.define(i,n),o&&document.querySelectorAll(i).forEach(a=>{a.constructor===HTMLElement&&customElements.upgrade(a)}))}}var it=globalThis,at=it.ShadowRoot&&(it.ShadyCSS===void 0||it.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Ut=Symbol(),ee=new WeakMap,J=class{constructor(t,r,o){if(this._$cssResult$=!0,o!==Ut)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=r}get styleSheet(){let t=this.o,r=this.t;if(at&&t===void 0){let o=r!==void 0&&r.length===1;o&&(t=ee.get(r)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),o&&ee.set(r,t))}return t}toString(){return this.cssText}},re=e=>new J(typeof e=="string"?e:e+"",void 0,Ut),E=(e,...t)=>{let r=e.length===1?e[0]:t.reduce((o,s,n)=>o+(i=>{if(i._$cssResult$===!0)return i.cssText;if(typeof i=="number")return i;throw Error("Value passed to 'css' function must be a 'css' function result: "+i+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(s)+e[n+1],e[0]);return new J(r,e,Ut)},ct=(e,t)=>{if(at)e.adoptedStyleSheets=t.map(r=>r instanceof CSSStyleSheet?r:r.styleSheet);else for(let r of t){let o=document.createElement("style"),s=it.litNonce;s!==void 0&&o.setAttribute("nonce",s),o.textContent=r.cssText,e.appendChild(o)}},q=at?e=>e:e=>e instanceof CSSStyleSheet?(t=>{let r="";for(let o of t.cssRules)r+=o.cssText;return re(r)})(e):e;var{is:Ge,defineProperty:Je,getOwnPropertyDescriptor:Ke,getOwnPropertyNames:Ze,getOwnPropertySymbols:Qe,getPrototypeOf:Ye}=Object,ut=globalThis,oe=ut.trustedTypes,Xe=oe?oe.emptyScript:"",tr=ut.reactiveElementPolyfillSupport,K=(e,t)=>e,jt={toAttribute(e,t){switch(t){case Boolean:e=e?Xe:null;break;case Object:case Array:e=e==null?e:JSON.stringify(e)}return e},fromAttribute(e,t){let r=e;switch(t){case Boolean:r=e!==null;break;case Number:r=e===null?null:Number(e);break;case Object:case Array:try{r=JSON.parse(e)}catch{r=null}}return r}},ne=(e,t)=>!Ge(e,t),se={attribute:!0,type:String,converter:jt,reflect:!1,useDefault:!1,hasChanged:ne};Symbol.metadata??=Symbol("metadata"),ut.litPropertyMetadata??=new WeakMap;var C=class extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,r=se){if(r.state&&(r.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(t)&&((r=Object.create(r)).wrapped=!0),this.elementProperties.set(t,r),!r.noAccessor){let o=Symbol(),s=this.getPropertyDescriptor(t,o,r);s!==void 0&&Je(this.prototype,t,s)}}static getPropertyDescriptor(t,r,o){let{get:s,set:n}=Ke(this.prototype,t)??{get(){return this[r]},set(i){this[r]=i}};return{get:s,set(i){let c=s?.call(this);n?.call(this,i),this.requestUpdate(t,c,o)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??se}static _$Ei(){if(this.hasOwnProperty(K("elementProperties")))return;let t=Ye(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(K("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(K("properties"))){let r=this.properties,o=[...Ze(r),...Qe(r)];for(let s of o)this.createProperty(s,r[s])}let t=this[Symbol.metadata];if(t!==null){let r=litPropertyMetadata.get(t);if(r!==void 0)for(let[o,s]of r)this.elementProperties.set(o,s)}this._$Eh=new Map;for(let[r,o]of this.elementProperties){let s=this._$Eu(r,o);s!==void 0&&this._$Eh.set(s,r)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){let r=[];if(Array.isArray(t)){let o=new Set(t.flat(1/0).reverse());for(let s of o)r.unshift(q(s))}else t!==void 0&&r.push(q(t));return r}static _$Eu(t,r){let o=r.attribute;return o===!1?void 0:typeof o=="string"?o:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(t=>this.enableUpdating=t),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(t=>t(this))}addController(t){(this._$EO??=new Set).add(t),this.renderRoot!==void 0&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){let t=new Map,r=this.constructor.elementProperties;for(let o of r.keys())this.hasOwnProperty(o)&&(t.set(o,this[o]),delete this[o]);t.size>0&&(this._$Ep=t)}createRenderRoot(){let t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return ct(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(t=>t.hostConnected?.())}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach(t=>t.hostDisconnected?.())}attributeChangedCallback(t,r,o){this._$AK(t,o)}_$ET(t,r){let o=this.constructor.elementProperties.get(t),s=this.constructor._$Eu(t,o);if(s!==void 0&&o.reflect===!0){let n=(o.converter?.toAttribute!==void 0?o.converter:jt).toAttribute(r,o.type);this._$Em=t,n==null?this.removeAttribute(s):this.setAttribute(s,n),this._$Em=null}}_$AK(t,r){let o=this.constructor,s=o._$Eh.get(t);if(s!==void 0&&this._$Em!==s){let n=o.getPropertyOptions(s),i=typeof n.converter=="function"?{fromAttribute:n.converter}:n.converter?.fromAttribute!==void 0?n.converter:jt;this._$Em=s;let c=i.fromAttribute(r,n.type);this[s]=c??this._$Ej?.get(s)??c,this._$Em=null}}requestUpdate(t,r,o,s=!1,n){if(t!==void 0){let i=this.constructor;if(s===!1&&(n=this[t]),o??=i.getPropertyOptions(t),!((o.hasChanged??ne)(n,r)||o.useDefault&&o.reflect&&n===this._$Ej?.get(t)&&!this.hasAttribute(i._$Eu(t,o))))return;this.C(t,r,o)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(t,r,{useDefault:o,reflect:s,wrapped:n},i){o&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,i??r??this[t]),n!==!0||i!==void 0)||(this._$AL.has(t)||(this.hasUpdated||o||(r=void 0),this._$AL.set(t,r)),s===!0&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(r){Promise.reject(r)}let t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[s,n]of this._$Ep)this[s]=n;this._$Ep=void 0}let o=this.constructor.elementProperties;if(o.size>0)for(let[s,n]of o){let{wrapped:i}=n,c=this[s];i!==!0||this._$AL.has(s)||c===void 0||this.C(s,void 0,n,c)}}let t=!1,r=this._$AL;try{t=this.shouldUpdate(r),t?(this.willUpdate(r),this._$EO?.forEach(o=>o.hostUpdate?.()),this.update(r)):this._$EM()}catch(o){throw t=!1,this._$EM(),o}t&&this._$AE(r)}willUpdate(t){}_$AE(t){this._$EO?.forEach(r=>r.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Eq&&=this._$Eq.forEach(r=>this._$ET(r,this[r])),this._$EM()}updated(t){}firstUpdated(t){}};C.elementStyles=[],C.shadowRootOptions={mode:"open"},C[K("elementProperties")]=new Map,C[K("finalized")]=new Map,tr?.({ReactiveElement:C}),(ut.reactiveElementVersions??=[]).push("2.1.2");var qt=globalThis,ie=e=>e,pt=qt.trustedTypes,ae=pt?pt.createPolicy("lit-html",{createHTML:e=>e}):void 0,Bt="$lit$",k=`lit$${Math.random().toFixed(9).slice(2)}$`,Wt="?"+k,er=`<${Wt}>`,N=document,Q=()=>N.createComment(""),Y=e=>e===null||typeof e!="object"&&typeof e!="function",It=Array.isArray,me=e=>It(e)||typeof e?.[Symbol.iterator]=="function",zt=`[
2
- \f\r]`,Z=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,ce=/-->/g,ue=/>/g,M=RegExp(`>|${zt}(?:([^\\s"'>=/]+)(${zt}*=${zt}*(?:[^
3
- \f\r"'\`<>=]|("|')|))|$)`,"g"),pe=/'/g,he=/"/g,le=/^(?:script|style|textarea|title)$/i,Vt=e=>(t,...r)=>({_$litType$:e,strings:t,values:r}),gt=Vt(1),Pr=Vt(2),Mr=Vt(3),D=Symbol.for("lit-noChange"),f=Symbol.for("lit-nothing"),fe=new WeakMap,R=N.createTreeWalker(N,129);function de(e,t){if(!It(e)||!e.hasOwnProperty("raw"))throw Error("invalid template strings array");return ae!==void 0?ae.createHTML(t):t}var ge=(e,t)=>{let r=e.length-1,o=[],s,n=t===2?"<svg>":t===3?"<math>":"",i=Z;for(let c=0;c<r;c++){let a=e[c],p,d,u=-1,S=0;for(;S<a.length&&(i.lastIndex=S,d=i.exec(a),d!==null);)S=i.lastIndex,i===Z?d[1]==="!--"?i=ce:d[1]!==void 0?i=ue:d[2]!==void 0?(le.test(d[2])&&(s=RegExp("</"+d[2],"g")),i=M):d[3]!==void 0&&(i=M):i===M?d[0]===">"?(i=s??Z,u=-1):d[1]===void 0?u=-2:(u=i.lastIndex-d[2].length,p=d[1],i=d[3]===void 0?M:d[3]==='"'?he:pe):i===he||i===pe?i=M:i===ce||i===ue?i=Z:(i=M,s=void 0);let T=i===M&&e[c+1].startsWith("/>")?" ":"";n+=i===Z?a+er:u>=0?(o.push(p),a.slice(0,u)+Bt+a.slice(u)+k+T):a+k+(u===-2?c:T)}return[de(e,n+(e[r]||"<?>")+(t===2?"</svg>":t===3?"</math>":"")),o]},X=class e{constructor({strings:t,_$litType$:r},o){let s;this.parts=[];let n=0,i=0,c=t.length-1,a=this.parts,[p,d]=ge(t,r);if(this.el=e.createElement(p,o),R.currentNode=this.el.content,r===2||r===3){let u=this.el.content.firstChild;u.replaceWith(...u.childNodes)}for(;(s=R.nextNode())!==null&&a.length<c;){if(s.nodeType===1){if(s.hasAttributes())for(let u of s.getAttributeNames())if(u.endsWith(Bt)){let S=d[i++],T=s.getAttribute(u).split(k),nt=/([.?@])?(.*)/.exec(S);a.push({type:1,index:n,name:nt[2],strings:T,ctor:nt[1]==="."?ft:nt[1]==="?"?mt:nt[1]==="@"?lt:L}),s.removeAttribute(u)}else u.startsWith(k)&&(a.push({type:6,index:n}),s.removeAttribute(u));if(le.test(s.tagName)){let u=s.textContent.split(k),S=u.length-1;if(S>0){s.textContent=pt?pt.emptyScript:"";for(let T=0;T<S;T++)s.append(u[T],Q()),R.nextNode(),a.push({type:2,index:++n});s.append(u[S],Q())}}}else if(s.nodeType===8)if(s.data===Wt)a.push({type:2,index:n});else{let u=-1;for(;(u=s.data.indexOf(k,u+1))!==-1;)a.push({type:7,index:n}),u+=k.length-1}n++}}static createElement(t,r){let o=N.createElement("template");return o.innerHTML=t,o}};function H(e,t,r=e,o){if(t===D)return t;let s=o!==void 0?r._$Co?.[o]:r._$Cl,n=Y(t)?void 0:t._$litDirective$;return s?.constructor!==n&&(s?._$AO?.(!1),n===void 0?s=void 0:(s=new n(e),s._$AT(e,r,o)),o!==void 0?(r._$Co??=[])[o]=s:r._$Cl=s),s!==void 0&&(t=H(e,s._$AS(e,t.values),s,o)),t}var ht=class{constructor(t,r){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=r}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){let{el:{content:r},parts:o}=this._$AD,s=(t?.creationScope??N).importNode(r,!0);R.currentNode=s;let n=R.nextNode(),i=0,c=0,a=o[0];for(;a!==void 0;){if(i===a.index){let p;a.type===2?p=new B(n,n.nextSibling,this,t):a.type===1?p=new a.ctor(n,a.name,a.strings,this,t):a.type===6&&(p=new dt(n,this,t)),this._$AV.push(p),a=o[++c]}i!==a?.index&&(n=R.nextNode(),i++)}return R.currentNode=N,s}p(t){let r=0;for(let o of this._$AV)o!==void 0&&(o.strings!==void 0?(o._$AI(t,o,r),r+=o.strings.length-2):o._$AI(t[r])),r++}},B=class e{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,r,o,s){this.type=2,this._$AH=f,this._$AN=void 0,this._$AA=t,this._$AB=r,this._$AM=o,this.options=s,this._$Cv=s?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode,r=this._$AM;return r!==void 0&&t?.nodeType===11&&(t=r.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,r=this){t=H(this,t,r),Y(t)?t===f||t==null||t===""?(this._$AH!==f&&this._$AR(),this._$AH=f):t!==this._$AH&&t!==D&&this._(t):t._$litType$!==void 0?this.$(t):t.nodeType!==void 0?this.T(t):me(t)?this.k(t):this._(t)}O(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.O(t))}_(t){this._$AH!==f&&Y(this._$AH)?this._$AA.nextSibling.data=t:this.T(N.createTextNode(t)),this._$AH=t}$(t){let{values:r,_$litType$:o}=t,s=typeof o=="number"?this._$AC(t):(o.el===void 0&&(o.el=X.createElement(de(o.h,o.h[0]),this.options)),o);if(this._$AH?._$AD===s)this._$AH.p(r);else{let n=new ht(s,this),i=n.u(this.options);n.p(r),this.T(i),this._$AH=n}}_$AC(t){let r=fe.get(t.strings);return r===void 0&&fe.set(t.strings,r=new X(t)),r}k(t){It(this._$AH)||(this._$AH=[],this._$AR());let r=this._$AH,o,s=0;for(let n of t)s===r.length?r.push(o=new e(this.O(Q()),this.O(Q()),this,this.options)):o=r[s],o._$AI(n),s++;s<r.length&&(this._$AR(o&&o._$AB.nextSibling,s),r.length=s)}_$AR(t=this._$AA.nextSibling,r){for(this._$AP?.(!1,!0,r);t!==this._$AB;){let o=ie(t).nextSibling;ie(t).remove(),t=o}}setConnected(t){this._$AM===void 0&&(this._$Cv=t,this._$AP?.(t))}},L=class{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,r,o,s,n){this.type=1,this._$AH=f,this._$AN=void 0,this.element=t,this.name=r,this._$AM=s,this.options=n,o.length>2||o[0]!==""||o[1]!==""?(this._$AH=Array(o.length-1).fill(new String),this.strings=o):this._$AH=f}_$AI(t,r=this,o,s){let n=this.strings,i=!1;if(n===void 0)t=H(this,t,r,0),i=!Y(t)||t!==this._$AH&&t!==D,i&&(this._$AH=t);else{let c=t,a,p;for(t=n[0],a=0;a<n.length-1;a++)p=H(this,c[o+a],r,a),p===D&&(p=this._$AH[a]),i||=!Y(p)||p!==this._$AH[a],p===f?t=f:t!==f&&(t+=(p??"")+n[a+1]),this._$AH[a]=p}i&&!s&&this.j(t)}j(t){t===f?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??"")}},ft=class extends L{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===f?void 0:t}},mt=class extends L{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==f)}},lt=class extends L{constructor(t,r,o,s,n){super(t,r,o,s,n),this.type=5}_$AI(t,r=this){if((t=H(this,t,r,0)??f)===D)return;let o=this._$AH,s=t===f&&o!==f||t.capture!==o.capture||t.once!==o.once||t.passive!==o.passive,n=t!==f&&(o===f||s);s&&this.element.removeEventListener(this.name,this,o),n&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){typeof this._$AH=="function"?this._$AH.call(this.options?.host??this.element,t):this._$AH.handleEvent(t)}},dt=class{constructor(t,r,o){this.element=t,this.type=6,this._$AN=void 0,this._$AM=r,this.options=o}get _$AU(){return this._$AM._$AU}_$AI(t){H(this,t)}},xe={M:Bt,P:k,A:Wt,C:1,L:ge,R:ht,D:me,V:H,I:B,H:L,N:mt,U:lt,B:ft,F:dt},rr=qt.litHtmlPolyfillSupport;rr?.(X,B),(qt.litHtmlVersions??=[]).push("3.3.3");var h=(e,t,r)=>{let o=r?.renderBefore??t,s=o._$litPart$;if(s===void 0){let n=r?.renderBefore??null;o._$litPart$=s=new B(t.insertBefore(Q(),n),n,void 0,r??{})}return s._$AI(e),s};var Ft=globalThis,W=class extends C{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){let t=super.createRenderRoot();return this.renderOptions.renderBefore??=t.firstChild,t}update(t){let r=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=h(r,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return D}};W._$litElement$=!0,W.finalized=!0,Ft.litElementHydrateSupport?.({LitElement:W});var or=Ft.litElementPolyfillSupport;or?.({LitElement:W});(Ft.litElementVersions??=[]).push("4.2.2");var $={string:(e,t)=>e.getAttribute(t)??void 0,number:(e,t)=>{let r=e.getAttribute(t);return r===null||!r?void 0:Number(r)},boolean:(e,t)=>e.getAttribute(t)!==null},g={string:(e,t,r)=>(r===void 0?e.removeAttribute(t):e.setAttribute(t,r),!0),number:(e,t,r)=>(r===void 0?e.removeAttribute(t):e.setAttribute(t,r.toString()),!0),boolean:(e,t,r)=>(r?e.setAttribute(t,""):e.removeAttribute(t),!0),any:(e,t,r)=>{r==null?e.removeAttribute(t):typeof r=="string"?e.setAttribute(t,r):typeof r=="number"?e.setAttribute(t,r.toString()):typeof r=="boolean"?r===!0?e.setAttribute(t,""):e.removeAttribute(t):console.warn(`invalid attribute "${t}" type is "${typeof r}"`)},entries:(e,t)=>{for(let[r,o]of t)g.any(e,r,o)},record:(e,t)=>g.entries(e,Object.entries(t))};function ye(e,t={}){let r=document.createElement(e);return g.record(r,t),r}function $e(e){let t=document.createDocumentFragment();return h(e,t),t.firstElementChild}function xt(e,t){let r=[];for(let[o,s]of Object.entries(t))if(typeof s=="function")e.addEventListener(o,s),r.push(()=>e.removeEventListener(o,s));else{let[n,i]=s;e.addEventListener(o,i,n),r.push(()=>e.removeEventListener(o,i))}return()=>r.forEach(o=>o())}function be(e,t){let r=new MutationObserver(t);return r.observe(e,{attributes:!0}),()=>r.disconnect()}var yt=class{element;constructor(t){this.element=t}strings=new Proxy({},{get:(t,r)=>$.string(this.element,r),set:(t,r,o)=>g.string(this.element,r,o)});numbers=new Proxy({},{get:(t,r)=>$.number(this.element,r),set:(t,r,o)=>g.number(this.element,r,o)});booleans=new Proxy({},{get:(t,r)=>$.boolean(this.element,r),set:(t,r,o)=>g.boolean(this.element,r,o)})};var Ae=(e,t,r={})=>new Proxy(t,{get:(o,s)=>{switch(t[s]){case String:return $.string(e,s);case Number:return $.number(e,s);case Boolean:return $.boolean(e,s);default:throw new Error(`invalid attribute type for "${s}"`)}},set:(o,s,n)=>{try{switch(r.beforeSet?.(s),t[s]){case String:return g.string(e,s,n);case Number:return g.number(e,s,n);case Boolean:return g.boolean(e,s,n);default:throw new Error(`invalid attribute type for "${s}"`)}}finally{r.afterSet?.(s)}}});function I(e){let t=new yt(e);return{strings:t.strings,numbers:t.numbers,booleans:t.booleans,on:r=>be(e,r),spec:(r,o={})=>Ae(e,r,o)}}I.get=$;I.set=g;function we(e){return new Gt(e)}var Gt=class{tagName;#t=new Map;#e=[];constructor(t){this.tagName=t}attr(t,r=!0){return this.#t.set(t,r),this}attrs(t){for(let[r,o]of Object.entries(t))this.attr(r,o);return this}children(...t){return this.#e.push(...t),this}done(){let t=document.createElement(this.tagName);return g.entries(t,this.#t),t.append(...this.#e),t}};function V(e,t=document){let r=t.querySelector(e);if(!r)throw new Error(`element not found (${e})`);return r}function $t(e,t=document){return t.querySelector(e)}function bt(e,t=document){return Array.from(t.querySelectorAll(e))}var At=class e{element;#t;constructor(t){this.element=t}in(t){return new e(typeof t=="string"?V(t,this.element):t)}require(t){return V(t,this.element)}maybe(t){return $t(t,this.element)}all(t){return bt(t,this.element)}render(...t){return h(t,this.element)}get attrs(){return this.#t??=I(this.element)}events(t){return xt(this.element,t)}};function m(e,t=document){return V(e,t)}m.in=(e,t=document)=>new At(t).in(e);m.need=V;m.maybe=$t;m.all=bt;m.el=ye;m.elmer=we;m.mk=$e;m.events=xt;m.attrs=I;m.register=te;m.render=(e,...t)=>h(t,e);function U(){let e,t,r=new Promise((o,s)=>{e=o,t=s});return r.resolve=e,r.reject=t,r.promise=r,r.entangle=o=>(o.then(e,t),r),r}function wt(e){let t=null;return((...r)=>(t?t.params=r:(t={params:r,deferred:U()},queueMicrotask(()=>{let{params:o,deferred:s}=t;t=null,Promise.resolve(e(...o)).then(s.resolve).catch(s.reject)})),t.deferred.promise))}function b(e,t=new Set){if(t.has(e))throw new Error("cannot clone circular reference");let r;return typeof e=="function"||e!==null&&typeof e=="object"?(t.add(e),Array.isArray(e)?r=e.map(o=>b(o,new Set(t))):e.constructor===Object?r=Object.fromEntries(Object.entries(e).map(([o,s])=>[o,b(s,new Set(t))])):e instanceof Map?r=new Map(Array.from(e,([o,s])=>[o,b(s,new Set(t))])):e instanceof Set?r=new Set(Array.from(e,o=>b(o,new Set(t)))):e instanceof Date?r=new Date(e.getTime()):r=e,t.delete(e)):r=e,r}var tt=e=>typeof e=="object"&&e!==null;function sr(e){return e!=null}function nr(e){return e==null}var jo=Object.freeze({happy:sr,sad:nr,boolean:e=>typeof e=="boolean",number:e=>typeof e=="number",string:e=>typeof e=="string",bigint:e=>typeof e=="bigint",object:e=>typeof e=="object"&&e!==null,array:e=>Array.isArray(e),fn:e=>typeof e=="function",symbol:e=>typeof e=="symbol"});var _e=(e,t)=>{function r(o,s,n){if(!tt(o)||!tt(s))return o===s;if(n.includes(o))throw new Error("forbidden circularity detected in deep equal comparison");let i=[...n,o];if(o instanceof Map&&s instanceof Map){if(o.size!==s.size)return!1;for(let[c,a]of o)if(!s.has(c)||!r(a,s.get(c),i))return!1}else if(o instanceof Set&&s instanceof Set){if(o.size!==s.size)return!1;for(let c of o)if(!Array.from(s).some(a=>r(c,a,i)))return!1}else{let c=Object.keys(o),a=Object.keys(s);if(c.length!==a.length)return!1;for(let p of c)if(!a.includes(p)||!r(o[p],s[p],i))return!1}return!0}return r(e,t,[])};function ve(e){function t(r,o){if(!tt(r)||o.includes(r))return r;let s=[...o,r];if(r instanceof Map)for(let n of r.entries())for(let i of n)t(i,s);else if(r instanceof Set)for(let n of r)t(n,s);else if(Array.isArray(r))for(let n of r)t(n,s);else for(let n of Object.values(r))t(n,s);return Object.freeze(r)}return t(e,[])}function Se(e){if(e.ok)return e.value;let{error:t}=e;throw t instanceof Error?t:typeof t=="string"?new Error(t):new Error("unknown")}function Ee(e){if(e.ok)throw new Error("didn't get needed error");return e.error}function _t(e,t,r){if(e.has(t))return e.get(t);{let o=r();return e.set(t,o),o}}function Ce(e){let t,r=!1,o=()=>{r=!0,clearTimeout(t)},s=async()=>{r||(await e(o),!r&&(t=setTimeout(s,0)))};return s(),o}var ke=(e=0)=>new Promise(t=>setTimeout(t,e));function vt(e){let t=ir(),r=o=>t.on(o);return Object.assign(r,t),e&&t.on(e),r}function ir(){let e=new Set,t,r=()=>t??=U(),o=c=>{let a=t;t=void 0,a?.resolve(c)};return{set:e,on:c=>(e.add(c),()=>{e.delete(c)}),publish:(...c)=>{o(c);for(let a of[...e])a(...c)},publishAsync:async(...c)=>{o(c),await Promise.all([...e].map(async a=>a(...c)))},next:r}}var St=class{#t=new Set;#e=[];#r=new WeakMap;#o=0;#s=new Set;read(t){this.#e.at(-1)?.add(t)}write(t){let r=this.#r.get(t);if(r){for(let o of r)this.#s.add(o);this.#o===0&&this.#n()}}observe(t){let r=new Set;this.#e.push(r);try{let o=t();return{seen:r,value:o}}finally{this.#e.pop()}}subscribe(t,r){let o=_t(this.#r,t,()=>new Set);return o.add(r),()=>{o.delete(r),o.size===0&&this.#r.delete(t)}}batch=t=>{this.#o++;try{return t()}finally{this.#o--,this.#o===0&&this.#n()}};#i(t){if(this.#t.has(t))throw new Error("circularity forbidden");this.#t.add(t);try{t()}finally{this.#t.delete(t)}}#n(){for(;this.#s.size>0;){let t=[...this.#s];this.#s.clear();for(let r of t)this.#i(r)}}};var l=globalThis[Symbol.for("e280.tracker.2")]??=new St;function O(e){let t;function r(){return arguments.length===0?(l.read(r),e):(e=arguments[0],l.write(r),t?.publish(e),e)}return r.get=()=>r(),r.set=o=>r(o),r.on=o=>(t??=vt())(o),r}var vs=l.batch;function Oe(e){return ve(b(e))}var A=Symbol("optic");var et=class{calculate;#t=!1;#e;constructor(t){this.calculate=t,this.#e=t()}get(){return this.#t&&(this.#t=!1,this.#e=this.calculate()),this.#e}invalidate(){this.#t=!0}};var Et=class e{[A];#t;#e;#r;#o=vt();constructor(t){this[A]=t,this.#t=b(t.getState()),this.#e=new et(()=>b(t.getState())),this.#r=new et(()=>Oe(t.getState()))}get on(){return this.#o.on}update(){let t=this[A].getState();!_e(t,this.#t)&&(this.#e.invalidate(),this.#r.invalidate(),this.#t=b(t),l.write(this),this.#o.set.size&&this.#o.publish(this.#e.get()))}get state(){return l.read(this),this.#e.get()}get frozen(){return l.read(this),this.#r.get()}mutate(t){return this[A].mutate(t)}lens(t){let r=new e({getState:()=>t(this[A].getState()),mutate:o=>this[A].mutate(s=>o(t(s))),registerLens:this[A].registerLens});return this[A].registerLens(r),r}};function Pe(e){if(!e.done)throw new Error("wait not done");return Se(e)}function Me(e){if(!e.done)throw new Error("wait not done");return Ee(e)}var Re=e=>!e.done;var Kt=e=>e.done&&e.ok;function Ne(e,t){let{pending:r=()=>{},ok:o=()=>{},err:s=()=>{}}=t;return Re(e)?r():Kt(e)?o(Pe(e)):s(Me(e))}var Ct=E`
1
+ var gm=Object.defineProperty;var bm=(o,t)=>{for(var e in t)gm(o,e,{get:t[e],enumerable:!0})};function pd(o){return o.replace(/([a-zA-Z])(?=[A-Z])/g,"$1-").toLowerCase()}function yu(o,t={}){let{soft:e=!1,upgrade:s=!0}=t;for(let[r,n]of Object.entries(o)){let c=pd(r),i=customElements.get(c);e&&i||(customElements.define(c,n),s&&document.querySelectorAll(c).forEach(a=>{a.constructor===HTMLElement&&customElements.upgrade(a)}))}}var wu=globalThis,ku=wu.ShadowRoot&&(wu.ShadyCSS===void 0||wu.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,kp=Symbol(),dd=new WeakMap,ou=class{constructor(t,e,s){if(this._$cssResult$=!0,s!==kp)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o,e=this.t;if(ku&&t===void 0){let s=e!==void 0&&e.length===1;s&&(t=dd.get(e)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),s&&dd.set(e,t))}return t}toString(){return this.cssText}},hd=o=>new ou(typeof o=="string"?o:o+"",void 0,kp),ee=(o,...t)=>{let e=o.length===1?o[0]:t.reduce((s,r,n)=>s+(c=>{if(c._$cssResult$===!0)return c.cssText;if(typeof c=="number")return c;throw Error("Value passed to 'css' function must be a 'css' function result: "+c+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(r)+o[n+1],o[0]);return new ou(e,o,kp)},_u=(o,t)=>{if(ku)o.adoptedStyleSheets=t.map(e=>e instanceof CSSStyleSheet?e:e.styleSheet);else for(let e of t){let s=document.createElement("style"),r=wu.litNonce;r!==void 0&&s.setAttribute("nonce",r),s.textContent=e.cssText,o.appendChild(s)}},Af=ku?o=>o:o=>o instanceof CSSStyleSheet?(t=>{let e="";for(let s of t.cssRules)e+=s.cssText;return hd(e)})(o):o;var{is:ym,defineProperty:wm,getOwnPropertyDescriptor:km,getOwnPropertyNames:_m,getOwnPropertySymbols:Am,getPrototypeOf:Sm}=Object,Au=globalThis,md=Au.trustedTypes,$m=md?md.emptyScript:"",Em=Au.reactiveElementPolyfillSupport,nu=(o,t)=>o,_p={toAttribute(o,t){switch(t){case Boolean:o=o?$m:null;break;case Object:case Array:o=o==null?o:JSON.stringify(o)}return o},fromAttribute(o,t){let e=o;switch(t){case Boolean:e=o!==null;break;case Number:e=o===null?null:Number(o);break;case Object:case Array:try{e=JSON.parse(o)}catch{e=null}}return e}},gd=(o,t)=>!ym(o,t),xd={attribute:!0,type:String,converter:_p,reflect:!1,useDefault:!1,hasChanged:gd};Symbol.metadata??=Symbol("metadata"),Au.litPropertyMetadata??=new WeakMap;var u2=class extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??=[]).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,e=xd){if(e.state&&(e.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(t)&&((e=Object.create(e)).wrapped=!0),this.elementProperties.set(t,e),!e.noAccessor){let s=Symbol(),r=this.getPropertyDescriptor(t,s,e);r!==void 0&&wm(this.prototype,t,r)}}static getPropertyDescriptor(t,e,s){let{get:r,set:n}=km(this.prototype,t)??{get(){return this[e]},set(c){this[e]=c}};return{get:r,set(c){let i=r?.call(this);n?.call(this,c),this.requestUpdate(t,i,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??xd}static _$Ei(){if(this.hasOwnProperty(nu("elementProperties")))return;let t=Sm(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(nu("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(nu("properties"))){let e=this.properties,s=[..._m(e),...Am(e)];for(let r of s)this.createProperty(r,e[r])}let t=this[Symbol.metadata];if(t!==null){let e=litPropertyMetadata.get(t);if(e!==void 0)for(let[s,r]of e)this.elementProperties.set(s,r)}this._$Eh=new Map;for(let[e,s]of this.elementProperties){let r=this._$Eu(e,s);r!==void 0&&this._$Eh.set(r,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){let e=[];if(Array.isArray(t)){let s=new Set(t.flat(1/0).reverse());for(let r of s)e.unshift(Af(r))}else t!==void 0&&e.push(Af(t));return e}static _$Eu(t,e){let s=e.attribute;return s===!1?void 0:typeof s=="string"?s:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(t=>this.enableUpdating=t),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(t=>t(this))}addController(t){(this._$EO??=new Set).add(t),this.renderRoot!==void 0&&this.isConnected&&t.hostConnected?.()}removeController(t){this._$EO?.delete(t)}_$E_(){let t=new Map,e=this.constructor.elementProperties;for(let s of e.keys())this.hasOwnProperty(s)&&(t.set(s,this[s]),delete this[s]);t.size>0&&(this._$Ep=t)}createRenderRoot(){let t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return _u(t,this.constructor.elementStyles),t}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(t=>t.hostConnected?.())}enableUpdating(t){}disconnectedCallback(){this._$EO?.forEach(t=>t.hostDisconnected?.())}attributeChangedCallback(t,e,s){this._$AK(t,s)}_$ET(t,e){let s=this.constructor.elementProperties.get(t),r=this.constructor._$Eu(t,s);if(r!==void 0&&s.reflect===!0){let n=(s.converter?.toAttribute!==void 0?s.converter:_p).toAttribute(e,s.type);this._$Em=t,n==null?this.removeAttribute(r):this.setAttribute(r,n),this._$Em=null}}_$AK(t,e){let s=this.constructor,r=s._$Eh.get(t);if(r!==void 0&&this._$Em!==r){let n=s.getPropertyOptions(r),c=typeof n.converter=="function"?{fromAttribute:n.converter}:n.converter?.fromAttribute!==void 0?n.converter:_p;this._$Em=r;let i=c.fromAttribute(e,n.type);this[r]=i??this._$Ej?.get(r)??i,this._$Em=null}}requestUpdate(t,e,s,r=!1,n){if(t!==void 0){let c=this.constructor;if(r===!1&&(n=this[t]),s??=c.getPropertyOptions(t),!((s.hasChanged??gd)(n,e)||s.useDefault&&s.reflect&&n===this._$Ej?.get(t)&&!this.hasAttribute(c._$Eu(t,s))))return;this.C(t,e,s)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(t,e,{useDefault:s,reflect:r,wrapped:n},c){s&&!(this._$Ej??=new Map).has(t)&&(this._$Ej.set(t,c??e??this[t]),n!==!0||c!==void 0)||(this._$AL.has(t)||(this.hasUpdated||s||(e=void 0),this._$AL.set(t,e)),r===!0&&this._$Em!==t&&(this._$Eq??=new Set).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}let t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(let[r,n]of this._$Ep)this[r]=n;this._$Ep=void 0}let s=this.constructor.elementProperties;if(s.size>0)for(let[r,n]of s){let{wrapped:c}=n,i=this[r];c!==!0||this._$AL.has(r)||i===void 0||this.C(r,void 0,n,i)}}let t=!1,e=this._$AL;try{t=this.shouldUpdate(e),t?(this.willUpdate(e),this._$EO?.forEach(s=>s.hostUpdate?.()),this.update(e)):this._$EM()}catch(s){throw t=!1,this._$EM(),s}t&&this._$AE(e)}willUpdate(t){}_$AE(t){this._$EO?.forEach(e=>e.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Eq&&=this._$Eq.forEach(e=>this._$ET(e,this[e])),this._$EM()}updated(t){}firstUpdated(t){}};u2.elementStyles=[],u2.shadowRootOptions={mode:"open"},u2[nu("elementProperties")]=new Map,u2[nu("finalized")]=new Map,Em?.({ReactiveElement:u2}),(Au.reactiveElementVersions??=[]).push("2.1.2");var Sp=globalThis,bd=o=>o,Su=Sp.trustedTypes,yd=Su?Su.createPolicy("lit-html",{createHTML:o=>o}):void 0,$p="$lit$",v2=`lit$${Math.random().toFixed(9).slice(2)}$`,Ep="?"+v2,Lm=`<${Ep}>`,ff=document,ru=()=>ff.createComment(""),cu=o=>o===null||typeof o!="object"&&typeof o!="function",Lp=Array.isArray,$d=o=>Lp(o)||typeof o?.[Symbol.iterator]=="function",Ap=`[
2
+ \f\r]`,su=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,wd=/-->/g,kd=/>/g,af=RegExp(`>|${Ap}(?:([^\\s"'>=/]+)(${Ap}*=${Ap}*(?:[^
3
+ \f\r"'\`<>=]|("|')|))|$)`,"g"),_d=/'/g,Ad=/"/g,Ed=/^(?:script|style|textarea|title)$/i,Mp=o=>(t,...e)=>({_$litType$:o,strings:t,values:e}),I=Mp(1),mt=Mp(2),P3=Mp(3),uf=Symbol.for("lit-noChange"),ke=Symbol.for("lit-nothing"),Sd=new WeakMap,lf=ff.createTreeWalker(ff,129);function Ld(o,t){if(!Lp(o)||!o.hasOwnProperty("raw"))throw Error("invalid template strings array");return yd!==void 0?yd.createHTML(t):t}var Md=(o,t)=>{let e=o.length-1,s=[],r,n=t===2?"<svg>":t===3?"<math>":"",c=su;for(let i=0;i<e;i++){let a=o[i],u,v,m=-1,$=0;for(;$<a.length&&(c.lastIndex=$,v=c.exec(a),v!==null);)$=c.lastIndex,c===su?v[1]==="!--"?c=wd:v[1]!==void 0?c=kd:v[2]!==void 0?(Ed.test(v[2])&&(r=RegExp("</"+v[2],"g")),c=af):v[3]!==void 0&&(c=af):c===af?v[0]===">"?(c=r??su,m=-1):v[1]===void 0?m=-2:(m=c.lastIndex-v[2].length,u=v[1],c=v[3]===void 0?af:v[3]==='"'?Ad:_d):c===Ad||c===_d?c=af:c===wd||c===kd?c=su:(c=af,r=void 0);let H=c===af&&o[i+1].startsWith("/>")?" ":"";n+=c===su?a+Lm:m>=0?(s.push(u),a.slice(0,m)+$p+a.slice(m)+v2+H):a+v2+(m===-2?i:H)}return[Ld(o,n+(o[e]||"<?>")+(t===2?"</svg>":t===3?"</math>":"")),s]},iu=class o{constructor({strings:t,_$litType$:e},s){let r;this.parts=[];let n=0,c=0,i=t.length-1,a=this.parts,[u,v]=Md(t,e);if(this.el=o.createElement(u,s),lf.currentNode=this.el.content,e===2||e===3){let m=this.el.content.firstChild;m.replaceWith(...m.childNodes)}for(;(r=lf.nextNode())!==null&&a.length<i;){if(r.nodeType===1){if(r.hasAttributes())for(let m of r.getAttributeNames())if(m.endsWith($p)){let $=v[c++],H=r.getAttribute(m).split(v2),ht=/([.?@])?(.*)/.exec($);a.push({type:1,index:n,name:ht[2],strings:H,ctor:ht[1]==="."?Eu:ht[1]==="?"?Lu:ht[1]==="@"?Mu:pf}),r.removeAttribute(m)}else m.startsWith(v2)&&(a.push({type:6,index:n}),r.removeAttribute(m));if(Ed.test(r.tagName)){let m=r.textContent.split(v2),$=m.length-1;if($>0){r.textContent=Su?Su.emptyScript:"";for(let H=0;H<$;H++)r.append(m[H],ru()),lf.nextNode(),a.push({type:2,index:++n});r.append(m[$],ru())}}}else if(r.nodeType===8)if(r.data===Ep)a.push({type:2,index:n});else{let m=-1;for(;(m=r.data.indexOf(v2,m+1))!==-1;)a.push({type:7,index:n}),m+=v2.length-1}n++}}static createElement(t,e){let s=ff.createElement("template");return s.innerHTML=t,s}};function vf(o,t,e=o,s){if(t===uf)return t;let r=s!==void 0?e._$Co?.[s]:e._$Cl,n=cu(t)?void 0:t._$litDirective$;return r?.constructor!==n&&(r?._$AO?.(!1),n===void 0?r=void 0:(r=new n(o),r._$AT(o,e,s)),s!==void 0?(e._$Co??=[])[s]=r:e._$Cl=r),r!==void 0&&(t=vf(o,r._$AS(o,t.values),r,s)),t}var $u=class{constructor(t,e){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){let{el:{content:e},parts:s}=this._$AD,r=(t?.creationScope??ff).importNode(e,!0);lf.currentNode=r;let n=lf.nextNode(),c=0,i=0,a=s[0];for(;a!==void 0;){if(c===a.index){let u;a.type===2?u=new Sf(n,n.nextSibling,this,t):a.type===1?u=new a.ctor(n,a.name,a.strings,this,t):a.type===6&&(u=new Ou(n,this,t)),this._$AV.push(u),a=s[++i]}c!==a?.index&&(n=lf.nextNode(),c++)}return lf.currentNode=ff,r}p(t){let e=0;for(let s of this._$AV)s!==void 0&&(s.strings!==void 0?(s._$AI(t,s,e),e+=s.strings.length-2):s._$AI(t[e])),e++}},Sf=class o{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,s,r){this.type=2,this._$AH=ke,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=s,this.options=r,this._$Cv=r?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode,e=this._$AM;return e!==void 0&&t?.nodeType===11&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=vf(this,t,e),cu(t)?t===ke||t==null||t===""?(this._$AH!==ke&&this._$AR(),this._$AH=ke):t!==this._$AH&&t!==uf&&this._(t):t._$litType$!==void 0?this.$(t):t.nodeType!==void 0?this.T(t):$d(t)?this.k(t):this._(t)}O(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.O(t))}_(t){this._$AH!==ke&&cu(this._$AH)?this._$AA.nextSibling.data=t:this.T(ff.createTextNode(t)),this._$AH=t}$(t){let{values:e,_$litType$:s}=t,r=typeof s=="number"?this._$AC(t):(s.el===void 0&&(s.el=iu.createElement(Ld(s.h,s.h[0]),this.options)),s);if(this._$AH?._$AD===r)this._$AH.p(e);else{let n=new $u(r,this),c=n.u(this.options);n.p(e),this.T(c),this._$AH=n}}_$AC(t){let e=Sd.get(t.strings);return e===void 0&&Sd.set(t.strings,e=new iu(t)),e}k(t){Lp(this._$AH)||(this._$AH=[],this._$AR());let e=this._$AH,s,r=0;for(let n of t)r===e.length?e.push(s=new o(this.O(ru()),this.O(ru()),this,this.options)):s=e[r],s._$AI(n),r++;r<e.length&&(this._$AR(s&&s._$AB.nextSibling,r),e.length=r)}_$AR(t=this._$AA.nextSibling,e){for(this._$AP?.(!1,!0,e);t!==this._$AB;){let s=bd(t).nextSibling;bd(t).remove(),t=s}}setConnected(t){this._$AM===void 0&&(this._$Cv=t,this._$AP?.(t))}},pf=class{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,e,s,r,n){this.type=1,this._$AH=ke,this._$AN=void 0,this.element=t,this.name=e,this._$AM=r,this.options=n,s.length>2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=ke}_$AI(t,e=this,s,r){let n=this.strings,c=!1;if(n===void 0)t=vf(this,t,e,0),c=!cu(t)||t!==this._$AH&&t!==uf,c&&(this._$AH=t);else{let i=t,a,u;for(t=n[0],a=0;a<n.length-1;a++)u=vf(this,i[s+a],e,a),u===uf&&(u=this._$AH[a]),c||=!cu(u)||u!==this._$AH[a],u===ke?t=ke:t!==ke&&(t+=(u??"")+n[a+1]),this._$AH[a]=u}c&&!r&&this.j(t)}j(t){t===ke?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??"")}},Eu=class extends pf{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===ke?void 0:t}},Lu=class extends pf{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==ke)}},Mu=class extends pf{constructor(t,e,s,r,n){super(t,e,s,r,n),this.type=5}_$AI(t,e=this){if((t=vf(this,t,e,0)??ke)===uf)return;let s=this._$AH,r=t===ke&&s!==ke||t.capture!==s.capture||t.once!==s.once||t.passive!==s.passive,n=t!==ke&&(s===ke||r);r&&this.element.removeEventListener(this.name,this,s),n&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){typeof this._$AH=="function"?this._$AH.call(this.options?.host??this.element,t):this._$AH.handleEvent(t)}},Ou=class{constructor(t,e,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){vf(this,t)}},Od={M:$p,P:v2,A:Ep,C:1,L:Md,R:$u,D:$d,V:vf,I:Sf,H:pf,N:Lu,U:Mu,B:Eu,F:Ou},Mm=Sp.litHtmlPolyfillSupport;Mm?.(iu,Sf),(Sp.litHtmlVersions??=[]).push("3.3.3");var oe=(o,t,e)=>{let s=e?.renderBefore??t,r=s._$litPart$;if(r===void 0){let n=e?.renderBefore??null;s._$litPart$=r=new Sf(t.insertBefore(ru(),n),n,void 0,e??{})}return r._$AI(o),r};var Op=globalThis,$f=class extends u2{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){let t=super.createRenderRoot();return this.renderOptions.renderBefore??=t.firstChild,t}update(t){let e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=oe(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return uf}};$f._$litElement$=!0,$f.finalized=!0,Op.litElementHydrateSupport?.({LitElement:$f});var Om=Op.litElementPolyfillSupport;Om?.({LitElement:$f});(Op.litElementVersions??=[]).push("4.2.2");var t2={string:(o,t)=>o.getAttribute(t)??void 0,number:(o,t)=>{let e=o.getAttribute(t);return e===null||!e?void 0:Number(e)},boolean:(o,t)=>o.getAttribute(t)!==null},oo={string:(o,t,e)=>(e===void 0?o.removeAttribute(t):o.setAttribute(t,e),!0),number:(o,t,e)=>(e===void 0?o.removeAttribute(t):o.setAttribute(t,e.toString()),!0),boolean:(o,t,e)=>(e?o.setAttribute(t,""):o.removeAttribute(t),!0),any:(o,t,e)=>{e==null?o.removeAttribute(t):typeof e=="string"?o.setAttribute(t,e):typeof e=="number"?o.setAttribute(t,e.toString()):typeof e=="boolean"?e===!0?o.setAttribute(t,""):o.removeAttribute(t):console.warn(`invalid attribute "${t}" type is "${typeof e}"`)},entries:(o,t)=>{for(let[e,s]of t)oo.any(o,e,s)},record:(o,t)=>oo.entries(o,Object.entries(t))};function Bd(o,t={}){let e=document.createElement(o);return oo.record(e,t),e}function Pd(o){let t=document.createDocumentFragment();return oe(o,t),t.firstElementChild}function Bu(o,t){let e=[];for(let[s,r]of Object.entries(t))if(typeof r=="function")o.addEventListener(s,r),e.push(()=>o.removeEventListener(s,r));else{let[n,c]=r;o.addEventListener(s,c,n),e.push(()=>o.removeEventListener(s,c))}return()=>e.forEach(s=>s())}function Cd(o,t){let e=new MutationObserver(t);return e.observe(o,{attributes:!0}),()=>e.disconnect()}var Pu=class{element;constructor(t){this.element=t}strings=new Proxy({},{get:(t,e)=>t2.string(this.element,e),set:(t,e,s)=>oo.string(this.element,e,s)});numbers=new Proxy({},{get:(t,e)=>t2.number(this.element,e),set:(t,e,s)=>oo.number(this.element,e,s)});booleans=new Proxy({},{get:(t,e)=>t2.boolean(this.element,e),set:(t,e,s)=>oo.boolean(this.element,e,s)})};var jd=(o,t,e={})=>new Proxy(t,{get:(s,r)=>{switch(t[r]){case String:return t2.string(o,r);case Number:return t2.number(o,r);case Boolean:return t2.boolean(o,r);default:throw new Error(`invalid attribute type for "${r}"`)}},set:(s,r,n)=>{try{switch(e.beforeSet?.(r),t[r]){case String:return oo.string(o,r,n);case Number:return oo.number(o,r,n);case Boolean:return oo.boolean(o,r,n);default:throw new Error(`invalid attribute type for "${r}"`)}}finally{e.afterSet?.(r)}}});function Ef(o){let t=new Pu(o);return{strings:t.strings,numbers:t.numbers,booleans:t.booleans,on:e=>Cd(o,e),spec:(e,s={})=>jd(o,e,s)}}Ef.get=t2;Ef.set=oo;function Id(o){return new Bp(o)}var Bp=class{tagName;#t=new Map;#e=[];constructor(t){this.tagName=t}attr(t,e=!0){return this.#t.set(t,e),this}attrs(t){for(let[e,s]of Object.entries(t))this.attr(e,s);return this}children(...t){return this.#e.push(...t),this}done(){let t=document.createElement(this.tagName);return oo.entries(t,this.#t),t.append(...this.#e),t}};function Lf(o,t=document){let e=t.querySelector(o);if(!e)throw new Error(`element not found (${o})`);return e}function Cu(o,t=document){return t.querySelector(o)}function ju(o,t=document){return Array.from(t.querySelectorAll(o))}var Iu=class o{element;#t;constructor(t){this.element=t}in(t){return new o(typeof t=="string"?Lf(t,this.element):t)}require(t){return Lf(t,this.element)}maybe(t){return Cu(t,this.element)}all(t){return ju(t,this.element)}render(...t){return oe(t,this.element)}get attrs(){return this.#t??=Ef(this.element)}events(t){return Bu(this.element,t)}};function xt(o,t=document){return Lf(o,t)}xt.in=(o,t=document)=>new Iu(t).in(o);xt.need=Lf;xt.maybe=Cu;xt.all=ju;xt.el=Bd;xt.elmer=Id;xt.mk=Pd;xt.events=Bu;xt.attrs=Ef;xt.register=yu;xt.render=(o,...t)=>oe(t,o);var Hu={};bm(Hu,{DragAndDrops:()=>Tp,Drops:()=>Up,files:()=>Um,hasFiles:()=>Tm,outsideCurrentTarget:()=>vu});var zd=Object.freeze({eq(o,t){if(o.length!==t.length)return!1;let e=0;for(let s=0;s<o.length;s++)e|=o[s]^t[s];return e===0},random(o){return crypto.getRandomValues(new Uint8Array(o))},concat(o){let t=0;for(let r of o)t+=r.byteLength;let e=new Uint8Array(t),s=0;for(let r of o)e.set(r,s),s+=r.byteLength;return e}});var Oe=class{lexicon;static lexicons=Object.freeze({base2:{characters:"01"},hex:{characters:"0123456789abcdef",caseInsensitive:!0},base36:{characters:"0123456789abcdefghijklmnopqrstuvwxyz"},base58:{characters:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"},base62:{characters:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"},base64url:{negativePrefix:"~",characters:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"},base64:{characters:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",padding:{character:"=",size:4}}});lookup;negativePrefix;constructor(t){this.lexicon=t,this.lookup=Object.fromEntries([...t.characters].map((s,r)=>[s,r])),this.negativePrefix=t.negativePrefix??"-";let e=this.fromBytes.bind(this);return Object.setPrototypeOf(e,new.target.prototype),Object.assign(e,this),e}toBytes(t){this.lexicon.caseInsensitive&&(t=t.toLowerCase());let e=Math.log2(this.lexicon.characters.length);if(Number.isInteger(e)){let u=0,v=0,m=[];for(let $ of t){if($===this.lexicon.padding?.character)continue;let H=this.lookup[$];if(H===void 0)throw new Error(`Invalid character: ${$}`);for(u=u<<e|H,v+=e;v>=8;)v-=8,m.push(u>>v&255)}return new Uint8Array(m)}let s=0n,r=BigInt(this.lexicon.characters.length);t.startsWith(this.negativePrefix)&&(t=t.slice(this.negativePrefix.length));let n=this.lexicon.characters[0],c=0;for(;t[c]===n;)c++;t=t.slice(c);for(let u of t){let v=this.lookup[u];if(v===void 0)throw new Error(`Invalid character: ${u}`);s=s*r+BigInt(v)}let i=new Uint8Array(c+(s===0n?0:this.countBytes(s))),a=i.length;for(;s>0n;)i[--a]=Number(s%256n),s=s/256n;return i}fromBytes(t){let e=Math.log2(this.lexicon.characters.length);if(Number.isInteger(e)){let a=0,u=0,v="";for(let m of t)for(a=a<<8|m,u+=8;u>=e;){u-=e;let $=a>>u&(1<<e)-1;v+=this.lexicon.characters[$]}if(u>0){let m=a<<e-u&(1<<e)-1;v+=this.lexicon.characters[m]}if(this.lexicon.padding)for(;v.length%this.lexicon.padding.size!==0;)v+=this.lexicon.padding.character;return v}if(t.length===0)return"";let s=this.lexicon.characters[0],r=0;for(;t[r]===0;)r++;let n=0n;for(let a of t.slice(r))n=(n<<8n)+BigInt(a);if(n===0n)return s.repeat(r);let c=BigInt(this.lexicon.characters.length),i="";for(;n>0n;)i=this.lexicon.characters[Number(n%c)]+i,n=n/c;return s.repeat(r)+i}toInteger(t){if(!t)return 0;let e=0n,s=!1,r=BigInt(this.lexicon.characters.length);t.startsWith(this.negativePrefix)&&(t=t.slice(this.negativePrefix.length),s=!0);for(let n of t){let c=this.lookup[n];if(c===void 0)throw new Error(`Invalid character: ${n}`);e=e*r+BigInt(c)}return Number(s?-e:e)}fromInteger(t){t=Math.floor(t);let e=t<0,s=BigInt(e?-t:t);if(s===0n)return this.lexicon.characters[0];let r=BigInt(this.lexicon.characters.length),n="";for(;s>0n;)n=this.lexicon.characters[Number(s%r)]+n,s=s/r;return e?`${this.negativePrefix}${n}`:n}random(t=32){return this.fromBytes(zd.random(t))}countBytes(t){let e=0;for(;t>0n;)e++,t=t/256n;return e}};var Mf=new Oe(Oe.lexicons.hex),U4=new Oe(Oe.lexicons.base2),R4=new Oe(Oe.lexicons.base36),D4=new Oe(Oe.lexicons.base58),H4=new Oe(Oe.lexicons.base62),V4=new Oe(Oe.lexicons.base64),N4=new Oe(Oe.lexicons.base64url);var Td=o=>new TextDecoder().decode(o),Bm=o=>new TextEncoder().encode(o);function zu(o){return Td(o)}zu.fromBytes=Td;zu.toBytes=Bm;function Ud(o,t){let e,s,r=[];function n(){e=[],s&&clearTimeout(s),s=void 0,r=[]}return n(),((...c)=>{e=c,s&&clearTimeout(s);let i=new Promise((a,u)=>{r.push({resolve:a,reject:u})});return s=setTimeout(()=>{Promise.resolve().then(()=>t(...e)).then(a=>{for(let{resolve:u}of r)u(a);n()}).catch(a=>{for(let{reject:u}of r)u(a);n()})},o),i})}function df(){let o,t,e=new Promise((s,r)=>{o=s,t=r});return e.resolve=o,e.reject=t,e.promise=e,e.entangle=s=>(s.then(o,t),e),e}function Of(o){let t=null;return((...e)=>(t?t.params=e:(t={params:e,deferred:df()},queueMicrotask(()=>{let{params:s,deferred:r}=t;t=null,Promise.resolve(o(...s)).then(r.resolve).catch(r.reject)})),t.deferred.promise))}function e2(o,t=new Set){if(t.has(o))throw new Error("cannot clone circular reference");let e;return typeof o=="function"||o!==null&&typeof o=="object"?(t.add(o),Array.isArray(o)?e=o.map(s=>e2(s,new Set(t))):o.constructor===Object?e=Object.fromEntries(Object.entries(o).map(([s,r])=>[s,e2(r,new Set(t))])):o instanceof Map?e=new Map(Array.from(o,([s,r])=>[s,e2(r,new Set(t))])):o instanceof Set?e=new Set(Array.from(o,s=>e2(s,new Set(t)))):o instanceof Date?e=new Date(o.getTime()):e=o,t.delete(o)):e=o,e}function k0(o){return o!=null}var Bf=o=>typeof o=="number",Pf=o=>typeof o=="string";var au=o=>typeof o=="object"&&o!==null,Tu=o=>Array.isArray(o);function Pm(o){return o!=null}function Cm(o){return o==null}var Y4=Object.freeze({happy:Pm,sad:Cm,boolean:o=>typeof o=="boolean",number:o=>typeof o=="number",string:o=>typeof o=="string",bigint:o=>typeof o=="bigint",object:o=>typeof o=="object"&&o!==null,array:o=>Array.isArray(o),fn:o=>typeof o=="function",symbol:o=>typeof o=="symbol"});var Rd=(o,t)=>{function e(s,r,n){if(!au(s)||!au(r))return s===r;if(n.includes(s))throw new Error("forbidden circularity detected in deep equal comparison");let c=[...n,s];if(s instanceof Map&&r instanceof Map){if(s.size!==r.size)return!1;for(let[i,a]of s)if(!r.has(i)||!e(a,r.get(i),c))return!1}else if(s instanceof Set&&r instanceof Set){if(s.size!==r.size)return!1;for(let i of s)if(!Array.from(r).some(a=>e(i,a,c)))return!1}else{let i=Object.keys(s),a=Object.keys(r);if(i.length!==a.length)return!1;for(let u of i)if(!a.includes(u)||!e(s[u],r[u],c))return!1}return!0}return e(o,t,[])};function hf(o){function t(e,s){if(!au(e)||s.includes(e))return e;let r=[...s,e];if(e instanceof Map)for(let n of e.entries())for(let c of n)t(c,r);else if(e instanceof Set)for(let n of e)t(n,r);else if(Array.isArray(e))for(let n of e)t(n,r);else for(let n of Object.values(e))t(n,r);return Object.freeze(e)}return t(o,[])}function Dd(o){if(o.ok)return o.value;let{error:t}=o;throw t instanceof Error?t:typeof t=="string"?new Error(t):new Error("unknown")}function Hd(o){if(o.ok)throw new Error("didn't get needed error");return o.error}function tc(o,t="got failed"){if(o==null)throw new Error(t);return o}function Cf(o,t,e){if(o.has(t))return o.get(t);{let s=e();return o.set(t,s),s}}function lu(o,t){for(let[e,s]of t)o.set(e,s);return o}function Vd(o,t){return t<=0?[]:o.length>t?o.slice(-t):o}async function Pp(o){let t=[];for await(let e of o)t.push(e);return t}function jf(o){let t,e=!1,s=()=>{e=!0,clearTimeout(t)},r=async()=>{e||(await o(s),!e&&(t=setTimeout(r,0)))};return r(),s}function Cp(o){return new DataView(o.buffer,o.byteOffset,o.byteLength)}function J0(){let o=[],t=()=>{let s=o;o=[];for(let r=s.length-1;r>=0;r--)s[r]()};function e(){t()}return e.dispose=t,e.schedule=(...s)=>(o.push(...s),e),e.own=(s,r)=>(o.push(()=>r(s)),s),e.disposable=s=>(o.push(()=>s.dispose()),s),e.disposables=e.disposable,e}function ec(o,t){let e=Object.entries(t);for(let[s,r]of e)o.addEventListener(s,r);return()=>{for(let[s,r]of e)o.removeEventListener(s,r)}}var If=class{count;constructor(t=0){this.count=t}next(){return this.count++}};var zf=(o=0)=>new Promise(t=>setTimeout(t,o));var jp=(o,t)=>Object.fromEntries(Object.entries(o).map(([e,s])=>[e,t(s,e)])),jm=(o,t)=>Object.fromEntries(Object.entries(o).filter(([e,s])=>t(s,e)));function Im(o){return{map:t=>Nd(o,t),filter:t=>Fd(o,t)}}Im.pipe=Object.freeze({map:o=>(t=>Nd(t,o)),filter:o=>(t=>Fd(t,o))});var Nd=jp,Fd=jm;function h2(o){let t=zm(),e=s=>t.on(s);return Object.assign(e,t),o&&t.on(o),e}function zm(){let o=new Set,t,e=()=>t??=df(),s=i=>{let a=t;t=void 0,a?.resolve(i)};return{set:o,on:i=>(o.add(i),()=>{o.delete(i)}),publish:(...i)=>{s(i);for(let a of[...o])a(...i)},publishAsync:async(...i)=>{s(i),await Promise.all([...o].map(async a=>a(...i)))},next:e}}function m2(o,...t){let e=o.length-1;return o.slice(0,e).reduce((s,r,n)=>s+r+t[n],"")+o[e]}function Tf(o,t,e){return o?t():e?.()}function Uu(o,t,e){return k0(o)?t(o):e?.()}var Ru=class{#t=new Set;#e=[];#n=new WeakMap;#o=0;#s=new Set;read(t){this.#e.at(-1)?.add(t)}write(t){let e=this.#n.get(t);if(e){for(let s of e)this.#s.add(s);this.#o===0&&this.#r()}}observe(t){let e=new Set;this.#e.push(e);try{let s=t();return{seen:e,value:s}}finally{this.#e.pop()}}subscribe(t,e){let s=Cf(this.#n,t,()=>new Set);return s.add(e),()=>{s.delete(e),s.size===0&&this.#n.delete(t)}}batch=t=>{this.#o++;try{return t()}finally{this.#o--,this.#o===0&&this.#r()}};#c(t){if(this.#t.has(t))throw new Error("circularity forbidden");this.#t.add(t);try{t()}finally{this.#t.delete(t)}}#r(){for(;this.#s.size>0;){let t=[...this.#s];this.#s.clear();for(let e of t)this.#c(e)}}};var q=globalThis[Symbol.for("e280.tracker.2")]??=new Ru;function oc(o){let t;function e(){return arguments.length===0?(q.read(e),o):(o=arguments[0],q.write(e),t?.publish(o),o)}return e.get=()=>e(),e.set=s=>e(s),e.on=s=>(t??=h2())(s),e}var o2=class extends Map{get size(){return q.read(this),super.size}[Symbol.iterator](){return q.read(this),super[Symbol.iterator]()}forEach(t){q.read(this);for(let[e,s]of this)t(s,e,this);return this}keys(){return q.read(this),super.keys()}values(){return q.read(this),super.values()}entries(){return q.read(this),super.entries()}has(t){return q.read(this),super.has(t)}get(t){return q.read(this),super.get(t)}set(t,e){return super.set(t,e),q.write(this),this}delete(t){let e=super.delete(t);return q.write(this),e}clear(){return super.clear(),q.write(this),this}};var fu=class extends Set{get size(){return q.read(this),super.size}[Symbol.iterator](){return q.read(this),super[Symbol.iterator]()}forEach(t){q.read(this);for(let e of this)t(e,e,this);return this}values(){return q.read(this),super.values()}has(t){return q.read(this),super.has(t)}add(t){return super.add(t),q.write(this),this}delete(t){let e=super.delete(t);return q.write(this),e}clear(){return super.clear(),q.write(this),this}};var W6=q.batch;function Kd(o){return hf(e2(o))}var n2=Symbol("optic");var uu=class{calculate;#t=!1;#e;constructor(t){this.calculate=t,this.#e=t()}get(){return this.#t&&(this.#t=!1,this.#e=this.calculate()),this.#e}invalidate(){this.#t=!0}};var Du=class o{[n2];#t;#e;#n;#o=h2();constructor(t){this[n2]=t,this.#t=e2(t.getState()),this.#e=new uu(()=>e2(t.getState())),this.#n=new uu(()=>Kd(t.getState()))}get on(){return this.#o.on}update(){let t=this[n2].getState();!Rd(t,this.#t)&&(this.#e.invalidate(),this.#n.invalidate(),this.#t=e2(t),q.write(this),this.#o.set.size&&this.#o.publish(this.#e.get()))}get state(){return q.read(this),this.#e.get()}get frozen(){return q.read(this),this.#n.get()}mutate(t){return this[n2].mutate(t)}lens(t){let e=new o({getState:()=>t(this[n2].getState()),mutate:s=>this[n2].mutate(r=>s(t(r))),registerLens:this[n2].registerLens});return this[n2].registerLens(e),e}};function Wd(o){if(!o.done)throw new Error("wait not done");return Dd(o)}function Gd(o){if(!o.done)throw new Error("wait not done");return Hd(o)}var Xd=o=>!o.done;var zp=o=>o.done&&o.ok;function Jd(o,t){let{pending:e=()=>{},ok:s=()=>{},err:r=()=>{}}=t;return Xd(o)?e():zp(o)?s(Wd(o)):r(Gd(o))}function Tm(o){return!!(o.dataTransfer&&o.dataTransfer.types.includes("Files"))}function Um(o){return o.dataTransfer?Array.from(o.dataTransfer.files):[]}function vu(o){let t=o.currentTarget,e=o.relatedTarget;return!t||!e||!t.contains(e)}var Tp=class{params;$draggy=oc(void 0);$droppy=oc(void 0);constructor(t){this.params=t}get dragging(){return this.$draggy()}get hovering(){return this.$droppy()}dragzone=t=>({draggable:"true",dragstart:e=>{this.$draggy(t())},dragend:e=>{this.$draggy(void 0),this.$droppy(void 0)}});dropzone=t=>({dragenter:e=>{},dragover:e=>{e.preventDefault(),this.$draggy()?this.$droppy(t()):this.params.backchannelDrops?.dragover(e)},dragleave:e=>{vu(e)&&this.$droppy(void 0),this.params.backchannelDrops?.dragleave(e)},drop:e=>{e.preventDefault();let{acceptDrop:s}=this.params,r=this.$draggy(),n=this.$droppy();try{r&&n?s(e,r,n):this.params.backchannelDrops?.drop(e)}finally{this.$draggy(void 0),this.$droppy(void 0)}}})};var Up=class{params;$indicator=oc(!1);constructor(t){this.params=t}dragover=t=>{t.preventDefault(),this.$indicator(this.params.predicate(t))};dragleave=t=>{vu(t)&&this.$indicator(!1)};drop=t=>{t.preventDefault(),this.$indicator(!1),this.params.predicate(t)&&this.params.acceptDrop(t)}};var Uf=ee`
4
4
  * {
5
5
  margin: 0;
6
6
  padding: 0;
@@ -14,27 +14,829 @@ function Xt(e){return e.replace(/([a-zA-Z])(?=[A-Z])/g,"$1-").toLowerCase()}func
14
14
  ::-webkit-scrollbar-track { background: transparent; }
15
15
  ::-webkit-scrollbar-thumb { background: #888; border-radius: 1em; }
16
16
  ::-webkit-scrollbar-thumb:hover { background: #999; }
17
- `;var kt=class e extends HTMLElement{static register(){m.register({SlyShadow:e},{soft:!0})}connectedCallback(){this.hasAttribute("view")||this.setAttribute("view","")}};var Tt=class{render;count=0;rendered=U();constructor(t){this.render=t}doneRender(){this.count++,this.rendered.resolve(),this.rendered=U()}},P=class extends Tt{host;shadow;constructor(t,r,o){super(t),this.host=r,this.shadow=o}};var Zt=class{#t=[];get scope(){let t=this.#t.at(-1);if(!t)throw new Error("hooks must be called within a render fn");return t}increment(){let t=this.scope,r=t.position++;return{scope:t,position:r}}wrap(t,r){t.position=0,this.#t.push(t);try{return r()}finally{this.#t.pop()}}},x=globalThis[Symbol.for("e280.hooks")]??=new Zt;var j=class{#t=[];clear(){this.#t.forEach(t=>t()),this.#t=[]}observe(t,r){let{seen:o,value:s}=l.observe(t);this.clear();for(let n of o){let i=l.subscribe(n,r);this.#t.push(i)}return s}};var Ot=class{#t=[];#e=[];mount(t){this.#t.push(t),this.#e.push(t())}unmountAll(){for(let t of this.#e)t();this.#e=[]}remountAll(){for(let t of this.#t)this.#e.push(t())}};var z=class{cx;position=0;values=new Map;mounts=new Ot;constructor(t){this.cx=t}};var{I:Ni}=xe;var De=e=>e.strings===void 0;var He={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},Mt=e=>(...t)=>({_$litDirective$:e,values:t}),Pt=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,r,o){this._$Ct=t,this._$AM=r,this._$Ci=o}_$AS(t,r){return this.update(t,r)}update(t,r){return this.render(...r)}};var rt=(e,t)=>{let r=e._$AN;if(r===void 0)return!1;for(let o of r)o._$AO?.(t,!1),rt(o,t);return!0},Rt=e=>{let t,r;do{if((t=e._$AM)===void 0)break;r=t._$AN,r.delete(e),e=t}while(r?.size===0)},Le=e=>{for(let t;t=e._$AM;e=t){let r=t._$AN;if(r===void 0)t._$AN=r=new Set;else if(r.has(e))break;r.add(e),mr(t)}};function hr(e){this._$AN!==void 0?(Rt(this),this._$AM=e,Le(this)):this._$AM=e}function fr(e,t=!1,r=0){let o=this._$AH,s=this._$AN;if(s!==void 0&&s.size!==0)if(t)if(Array.isArray(o))for(let n=r;n<o.length;n++)rt(o[n],!1),Rt(o[n]);else o!=null&&(rt(o,!1),Rt(o));else rt(this,e)}var mr=e=>{e.type==He.CHILD&&(e._$AP??=fr,e._$AQ??=hr)},ot=class extends Pt{constructor(){super(...arguments),this._$AN=void 0}_$AT(t,r,o){super._$AT(t,r,o),Le(this),this.isConnected=t._$AU}_$AO(t,r=!0){t!==this.isConnected&&(this.isConnected=t,t?this.reconnected?.():this.disconnected?.()),r&&(rt(this,t),Rt(this))}setValue(t){if(De(this._$Ct))this._$Ct._$AI(t,this);else{let r=[...this._$Ct._$AH];r[this._$Ci]=t,this._$Ct._$AI(r,this,0)}}disconnected(){}reconnected(){}};function Ue(e,t){for(let[r,o]of Object.entries(t))dr(e,r,o)}function dr(e,t,r){let o=e.getAttribute(t),s=gr(r);s!==o&&(s===null?e.removeAttribute(t):e.setAttribute(t,s))}function gr(e){return typeof e=="string"?e:typeof e=="number"?e.toString():e?"":null}function xr(){kt.register();let e=document.createElement("sly-shadow"),t=e.attachShadow({mode:"open"});return{host:e,shadow:t}}function F(e){return je(xr,e)}F.setup=e=>(t=>je(e,t));function je(e,t){let r=Mt(class extends ot{#t;#e;#r;#o=new j;constructor(s){super(s);let{host:n,shadow:i}=e(),c=wt(()=>{if(!this.#r)throw new Error("cannot render before props");if(!this.isConnected)return;let a=this.#s(this.#r);h(a,this.#t.shadow),this.#t.doneRender()});this.#t=new P(c,n,i),this.#e=new z(this.#t)}#s(s){return this.#r=s,this.#o.observe(()=>x.wrap(this.#e,()=>t(...this.#r)),this.#t.render)}render({props:s,children:n,attrs:i}){let{host:c}=this.#t;return this.isConnected&&(i&&Ue(c,i),h(n,this.#t.host),h(this.#s(s),this.#t.shadow),this.#t.doneRender()),c}disconnected(){h(null,this.#t.shadow),h(null,this.#t.host),this.#e.mounts.unmountAll(),this.#o.clear()}reconnected(){this.#e.mounts.remountAll(),this.#t.render()}});function o(...s){return r({props:s})}return o.with=r,o}function Qt(e){return class extends HTMLElement{#t;#e;#r=new j;#o=this.attachShadow({mode:"open"});constructor(){super();let t=wt(()=>{if(!this.isConnected)return;let r=this.#s();h(r,this.#t.shadow),this.#t.doneRender()});this.#t=new P(t,this,this.#o),this.#e=new z(this.#t)}#s(){return this.#r.observe(()=>x.wrap(this.#e,()=>e()),this.#t.render)}render(){h(this.#s(),this.#t.shadow),this.#t.doneRender()}connectedCallback(){this.#e.mounts.remountAll(),this.#t.render()}disconnectedCallback(){this.#e.mounts.unmountAll(),this.#r.clear()}}}function y(e){let{scope:t,position:r}=x.increment();return _t(t.values,r,e)}function st(){return x.increment().scope.cx}function Nt(){let e=st();if(!(e instanceof P))throw new Error("this hook only works on shadow views (but was called in a light view)");return e}function Yt(){return Nt().host}function G(e){let{scope:t}=x.increment();return y(()=>t.mounts.mount(e))}function qe(){return Nt().shadow}function Be(e,t){ct(e,$r(t))}function $r(e){let t=[];if(Array.isArray(e)){let r=new Set(e.flat(1/0).reverse());for(let o of r)t.unshift(q(o))}else e!==void 0&&t.push(q(e));return t}function Dt(...e){let t=qe();y(()=>Be(t,e))}function Ht(e=""){let t=Yt();y(()=>t.setAttribute("view",e))}function We(e){return y(()=>O(e))}var Lt=Dt;function w(e,t){return()=>Ar({hz:e,frames:t})}var Ar=F(({hz:e,frames:t})=>{Ht("loading"),Lt(Ct,wr);let r=We(0);return G(()=>Ce(async()=>{await ke(1e3/e);let o=r()+1;r(o>=t.length?0:o)})),t.at(r())}),wr=E`
17
+ `;var Vu=class o extends HTMLElement{static register(){xt.register({SlyShadow:o},{soft:!0})}connectedCallback(){this.hasAttribute("view")||this.setAttribute("view","")}};var pu=class{render;count=0;rendered=df();constructor(t){this.render=t}doneRender(){this.count++,this.rendered.resolve(),this.rendered=df()}},s2=class extends pu{host;shadow;constructor(t,e,s){super(t),this.host=e,this.shadow=s}};var Rp=class{#t=[];get scope(){let t=this.#t.at(-1);if(!t)throw new Error("hooks must be called within a render fn");return t}increment(){let t=this.scope,e=t.position++;return{scope:t,position:e}}wrap(t,e){t.position=0,this.#t.push(t);try{return e()}finally{this.#t.pop()}}},Y0=globalThis[Symbol.for("e280.hooks")]??=new Rp;var x2=class{#t=[];clear(){this.#t.forEach(t=>t()),this.#t=[]}observe(t,e){let{seen:s,value:r}=q.observe(t);this.clear();for(let n of s){let c=q.subscribe(n,e);this.#t.push(c)}return r}};var Nu=class{#t=[];#e=[];mount(t){this.#t.push(t),this.#e.push(t())}unmountAll(){for(let t of this.#e)t();this.#e=[]}remountAll(){for(let t of this.#t)this.#e.push(t())}};var g2=class{cx;position=0;values=new Map;mounts=new Nu;constructor(t){this.cx=t}};var{I:og}=Od;var Yd=o=>o.strings===void 0;var Zd={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},du=o=>(...t)=>({_$litDirective$:o,values:t}),Fu=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,s){this._$Ct=t,this._$AM=e,this._$Ci=s}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};var hu=(o,t)=>{let e=o._$AN;if(e===void 0)return!1;for(let s of e)s._$AO?.(t,!1),hu(s,t);return!0},qu=o=>{let t,e;do{if((t=o._$AM)===void 0)break;e=t._$AN,e.delete(o),o=t}while(e?.size===0)},Qd=o=>{for(let t;t=o._$AM;o=t){let e=t._$AN;if(e===void 0)t._$AN=e=new Set;else if(e.has(o))break;e.add(o),Nm(t)}};function Hm(o){this._$AN!==void 0?(qu(this),this._$AM=o,Qd(this)):this._$AM=o}function Vm(o,t=!1,e=0){let s=this._$AH,r=this._$AN;if(r!==void 0&&r.size!==0)if(t)if(Array.isArray(s))for(let n=e;n<s.length;n++)hu(s[n],!1),qu(s[n]);else s!=null&&(hu(s,!1),qu(s));else hu(this,o)}var Nm=o=>{o.type==Zd.CHILD&&(o._$AP??=Vm,o._$AQ??=Hm)},Rf=class extends Fu{constructor(){super(...arguments),this._$AN=void 0}_$AT(t,e,s){super._$AT(t,e,s),Qd(this),this.isConnected=t._$AU}_$AO(t,e=!0){t!==this.isConnected&&(this.isConnected=t,t?this.reconnected?.():this.disconnected?.()),e&&(hu(this,t),qu(this))}setValue(t){if(Yd(this._$Ct))this._$Ct._$AI(t,this);else{let e=[...this._$Ct._$AH];e[this._$Ci]=t,this._$Ct._$AI(e,this,0)}}disconnected(){}reconnected(){}};function Ei(o){return du(class extends Rf{#t;#e=new pu(Of(()=>{if(!this.#t)throw new Error("cannot render before props");if(this.isConnected){let e=this.render(...this.#t);this.setValue(e),this.#e.doneRender()}}));#n=new g2(this.#e);#o=new x2;update(e,s){let r=super.update(e,s);return this.isConnected&&this.#e.doneRender(),r}render(...e){return this.#t=e,this.#o.observe(()=>Y0.wrap(this.#n,()=>o(...this.#t)),this.#e.render)}disconnected(){this.#n.mounts.unmountAll(),this.#o.clear()}reconnected(){this.#n.mounts.remountAll(),this.#e.render()}})}function th(o,t){for(let[e,s]of Object.entries(t))Fm(o,e,s)}function Fm(o,t,e){let s=o.getAttribute(t),r=qm(e);r!==s&&(r===null?o.removeAttribute(t):o.setAttribute(t,r))}function qm(o){return typeof o=="string"?o:typeof o=="number"?o.toString():o?"":null}function Km(){Vu.register();let o=document.createElement("sly-shadow"),t=o.attachShadow({mode:"open"});return{host:o,shadow:t}}function b2(o){return oh(Km,o)}b2.setup=o=>(t=>oh(o,t));var eh=b2;function oh(o,t){let e=du(class extends Rf{#t;#e;#n;#o=new x2;constructor(r){super(r);let{host:n,shadow:c}=o(),i=Of(()=>{if(!this.#n)throw new Error("cannot render before props");if(!this.isConnected)return;let a=this.#s(this.#n);oe(a,this.#t.shadow),this.#t.doneRender()});this.#t=new s2(i,n,c),this.#e=new g2(this.#t)}#s(r){return this.#n=r,this.#o.observe(()=>Y0.wrap(this.#e,()=>t(...this.#n)),this.#t.render)}render({props:r,children:n,attrs:c}){let{host:i}=this.#t;return this.isConnected&&(c&&th(i,c),oe(n,this.#t.host),oe(this.#s(r),this.#t.shadow),this.#t.doneRender()),i}disconnected(){oe(null,this.#t.shadow),oe(null,this.#t.host),this.#e.mounts.unmountAll(),this.#o.clear()}reconnected(){this.#e.mounts.remountAll(),this.#t.render()}});function s(...r){return e({props:r})}return s.with=e,s}function nh(o){return class extends HTMLElement{#t;#e;#n=new x2;#o=this.attachShadow({mode:"open"});constructor(){super();let t=Of(()=>{if(!this.isConnected)return;let e=this.#s();oe(e,this.#t.shadow),this.#t.doneRender()});this.#t=new s2(t,this,this.#o),this.#e=new g2(this.#t)}#s(){return this.#n.observe(()=>Y0.wrap(this.#e,()=>o()),this.#t.render)}render(){oe(this.#s(),this.#t.shadow),this.#t.doneRender()}connectedCallback(){this.#e.mounts.remountAll(),this.#t.render()}disconnectedCallback(){this.#e.mounts.unmountAll(),this.#n.clear()}}}function y2(o){return[b2(o),(...s)=>nh(()=>o(...s))]}function ne(o){let{scope:t,position:e}=Y0.increment();return Cf(t.values,e,o)}function mf(){return Y0.increment().scope.cx}function Ku(){let o=mf();if(!(o instanceof s2))throw new Error("this hook only works on shadow views (but was called in a light view)");return o}function Dp(){return Ku().host}function xf(o){let{scope:t}=Y0.increment();return ne(()=>t.mounts.mount(o))}function rh(){return Ku().shadow}function ch(o,t){_u(o,Gm(t))}function Gm(o){let t=[];if(Array.isArray(o)){let e=new Set(o.flat(1/0).reverse());for(let s of e)t.unshift(Af(s))}else o!==void 0&&t.push(Af(o));return t}function r2(...o){let t=rh();ne(()=>ch(t,o))}function Z0(o=""){let t=mf();ne(()=>{t instanceof s2&&t.host.setAttribute("view",o)})}function p2(o){return ne(()=>oc(o))}var Df=r2;function ih(o){return xf(()=>o)}function c2(o,t){return()=>Jm({hz:o,frames:t})}var Jm=b2(({hz:o,frames:t})=>{Z0("loading"),Df(Uf,Ym);let e=p2(0);return xf(()=>jf(async()=>{await zf(1e3/o);let s=e()+1;e(s>=t.length?0:s)})),t.at(e())}),Ym=ee`
18
18
  :host {
19
19
  font-family: monospace;
20
20
  white-space: pre;
21
21
  user-select: none;
22
22
  }
23
- `;var _=F(e=>(Ht("error"),Lt(Ct,_r),typeof e=="string"?e:e instanceof Error?gt`<strong>${e.name}:</strong> <span>${e.message}</span>`:"error")),_r=E`
23
+ `;var i2=b2(o=>(Z0("error"),Df(Uf,Zm),typeof o=="string"?o:o instanceof Error?I`<strong>${o.name}:</strong> <span>${o.message}</span>`:"error")),Zm=ee`
24
24
  :host {
25
25
  font-family: monospace;
26
26
  color: red;
27
27
  }
28
- `;function v(e,t){return(r,o)=>Ne(r,{pending:e,err:t,ok:o})}var Du=v(w(10,[" "," ",". ",".. ","..."," .."," ."]),_);var zu=v(w(3,["\u{1F30E}","\u{1F30F}","\u{1F30D}"]),_);var Vu=v(w(10,["\u{1F312}","\u{1F313}","\u{1F314}","\u{1F315}","\u{1F316}","\u{1F317}","\u{1F318}","\u{1F311}","\u{1F311}","\u{1F311}"]),_);var Zu=v(w(16,["|","/","-","\\"]),_);var ep=v(w(20,[":....",":....","::...",".::..","..::.","...::","....:","....:","...::","..::.",".::..","::..."]),_);var Ve=E`
28
+ `;function a2(o,t){return(e,s)=>Jd(e,{pending:o,err:t,ok:s})}var c5=a2(c2(10,[" "," ",". ",".. ","..."," .."," ."]),i2);var u5=a2(c2(3,["\u{1F30E}","\u{1F30F}","\u{1F30D}"]),i2);var m5=a2(c2(10,["\u{1F312}","\u{1F313}","\u{1F314}","\u{1F315}","\u{1F316}","\u{1F317}","\u{1F318}","\u{1F311}","\u{1F311}","\u{1F311}"]),i2);var w5=a2(c2(16,["|","/","-","\\"]),i2);var $5=a2(c2(20,[":....",":....","::...",".::..","..::.","...::","....:","....:","...::","..::.",".::..","::..."]),i2);var lh=o=>o;var fh=o=>o,uh=o=>o;var Qm=lh({looking:{horizontal:["accumulate","pointer.x"],vertical:["accumulate","pointer.y"]},moving:{forward:"KeyW",backward:"KeyS",leftward:"KeyA",rightward:"KeyD"},interactions:{use:"KeyE"}}),vh=uh({standard:{label:"\u2328\uFE0Fstandard",bindings:Qm},gamer:{label:"\u{1F3AE}gamer",bindings:{looking:{horizontal:["*",["dt"],"gamepad.axis.3",100],vertical:["*",["dt"],"gamepad.axis.4",100]},moving:{forward:["remap",0,-1,0,1,"gamepad.axis.2"],backward:["remap",0,1,0,1,"gamepad.axis.2"],leftward:["remap",0,-1,0,1,"gamepad.axis.1"],rightward:["remap",0,1,0,1,"gamepad.axis.1"]},interactions:{use:"gamepad.1"}}},micro:{label:"\u{1F9A0}micro",bindings:{looking:{horizontal:["*",["dt"],["+","gamepad.1",["-","gamepad.4"]],100],vertical:["*",["dt"],["+","gamepad.2",["-","gamepad.3"]],100]},moving:{forward:["remap",0,-1,0,1,"gamepad.axis.2"],backward:["remap",0,1,0,1,"gamepad.axis.2"],leftward:["remap",0,-1,0,1,"gamepad.axis.1"],rightward:["remap",0,1,0,1,"gamepad.axis.1"]},interactions:{use:["*","gamepad.5","gamepad.6"]}}}});function Wu(o){return Number.parseInt(o.slice(0,8),16)}function ph(o){let e=o.reduce((i,{intents:a})=>i+8+a.byteLength,0),s=new ArrayBuffer(e),r=new DataView(s),n=new Uint8Array(s),c=0;for(let{playerId:i,intents:a}of o)r.setUint32(c,i,!1),c+=4,r.setUint32(c,a.byteLength,!1),c+=4,n.set(new Uint8Array(a),c),c+=a.byteLength;return s}function Xu(o,t){let e=4+t.length*6,s=new ArrayBuffer(e),r=new DataView(s),n=0;r.setUint32(n,o,!1),n+=4;for(let c of t)r.setUint16(n,c.id,!1),n+=2,r.setFloat32(n,c.value,!1),n+=4;return s}var e3=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,o3=(o=e3)=>{if(!o)throw new Error("big-endian platforms are unsupported")};o3();function Hf(o){return o instanceof Uint8Array||ArrayBuffer.isView(o)&&o.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in o&&o.BYTES_PER_ELEMENT===1}function Li(o,t=""){let e=t&&`"${t}" `;if(typeof o!="number")throw new TypeError(`${e}expected number, got ${typeof o}`);if(!Number.isSafeInteger(o)||o<0)throw new RangeError(`${e}expected integer >= 0, got ${o}`)}function Q0(o,t,e=""){let s=Hf(o),r=o?.length,n=t!==void 0,c=e&&`"${e}" `;if(!s)throw new TypeError(c+"expected Uint8Array, got type="+typeof o);if(n&&r!==t)throw new RangeError(c+"expected Uint8Array of length "+t+", got length="+r);return o}function dh(o){return new Uint8Array(o.buffer,o.byteOffset,o.byteLength)}function hh(o){return new Uint32Array(o.buffer,o.byteOffset,Math.floor(o.byteLength/4))}function mh(...o){for(let t=0;t<o.length;t++)o[t].fill(0)}function gt(o,t,e,s,r){if(!(r<=0))if(r<=64)for(let n=0;n<r;n++)o[t+n]=e[s+n];else o.set(e.subarray(s,s+r),t)}function Ju(o){return Uint8Array.from(Q0(o))}function n3(o,t){if(t!==void 0&&{}.toString.call(t)!=="[object Object]")throw new TypeError("options must be object or undefined");return Object.assign(o,t)}function Yu(o){let t=o,e=r=>{let n=!1,c=-1,i=0,a=0,u,v=H=>{},m=H=>{},$=async()=>{};return{save:()=>{!r||!a||(u||(u=new Uint8Array(a)),v(u))},restore:()=>{!r||!u||m(u)},nextTick:()=>$(),onEnd:()=>{if(!(c<0)&&i!==c)throw new Error(`done (${i}) < progressTotal(${c})`)},setup:H=>{let ht=H;if(n)throw new Error("setup already called");if(n=!0,!r){Li(ht.total,"total"),c=ht.total;let R=ht.onProgress;if(R!==void 0&&typeof R!="function")throw new Error("onProgress must be a function");if(!R)return(N=1)=>(i+=N,!1);let U=Math.max(Math.floor(c/1e4),1);return(N=1)=>(i+=N,(!(i%U)||i===c)&&R(c?i/c:1),!1)}let bt={...ht};bt.asyncTick===void 0&&delete bt.asyncTick;let{asyncTick:f2,onProgress:vt,stateBytes:ta,save:A,restore:y,nextTick:V,total:nt}=n3({asyncTick:10},bt);Li(f2,"asyncTick"),Li(nt,"total"),c=nt;for(let[R,U]of Object.entries({onProgress:vt,save:A,restore:y,nextTick:V}))if(U!==void 0&&typeof U!="function")throw new Error(`${R} must be a function`);if(ta!==void 0&&Li(ta,"stateBytes"),ta!==void 0&&(a=ta),(A!==void 0||y!==void 0)&&!a)throw new Error("stateBytes must be a positive integer when save/restore is used");A!==void 0&&(v=A),y!==void 0&&(m=y),V!==void 0&&($=V);let J=()=>!1;if(r){let R=Date.now();J=()=>{let U=Date.now()-R;return U>=0&&U<f2?!1:(R+=U,!0)}}let w=Math.max(Math.floor(c/1e4),1),k=(R=1)=>(i+=R,J());return vt&&(k=(R=1)=>(i+=R,vt&&(!(i%w)||i===nt)&&vt(nt?i/nt:1),J())),k}}},s=(...r)=>{let n=!1,c=-1,i=0,a=(m=>{let $=m;if(n)throw new Error("setup already called");n=!0,Li($.total,"total"),c=$.total;let H=$.onProgress;if(H!==void 0&&typeof H!="function")throw new Error("onProgress must be a function");if(!H)return(bt=1)=>(i+=bt,!1);let ht=Math.max(Math.floor(c/1e4),1);return(bt=1)=>(i+=bt,(!(i%ht)||i===c)&&H(c?i/c:1),!1)});a.isAsync=!1;let u=t(a,...r),v=u.next();for(;!v.done;)v=u.next();if(c>=0&&i!==c)throw new Error(`done (${i}) < progressTotal(${c})`);return v.value};return s.async=async(...r)=>{let{setup:n,save:c,restore:i,onEnd:a,nextTick:u}=e(!0),v=n;v.isAsync=!0;let m=t(v,...r),$=m.next();for(;!$.done;)c(),await u(),i(),$=m.next();return a(),$.value},s}var s3=(o,t,e,s)=>{let r=Hf(o)?{}:o||{};r.dkLen!==void 0&&Li(r.dkLen,"opts.dkLen"),r.outPos!==void 0&&Li(r.outPos,"opts.outPos");let n=(r.dkLen===void 0?e:r.dkLen)|0;if(!s&&n>e)throw new RangeError(`"opts.dkLen" expected <= ${e}, got ${n}`);if(Array.isArray(r.out)){if(r.outPos!==void 0&&r.outPos!==0)throw new Error("outPos is not supported with output view arrays");if(r.out.length!==t)throw new RangeError("output array length must match messages length");for(let u=0;u<t;u++)Q0(r.out[u],n,"output");return{dkLen:n,out:r.out}}r.out!==void 0&&Q0(r.out,void 0,"output");let c=r.out||new Uint8Array(n*t),i=(r.outPos===void 0?0:r.outPos)|0;if(i<0||i+n*t>c.length)throw new RangeError("out/outPos too small");let a=[];for(let u=0;u<t;u++){let v=i+u*n;a.push(c.subarray(v,v+n))}return{dkLen:n,out:a}},r3=Symbol("hash_impl_brand"),c3=new WeakSet;function xh(o,t,e){let s=t,{outputLen:r,blockLen:n,suffix:c=0,init:i,canXOF:a,oid:u}=s,v=s.outputBlockLen?s.outputBlockLen:s.outputLen,m,$,H,ht,bt,f2,vt,ta,A=!1;function y(){if(A)throw new Error("second lazyInit call");let w=o();A=!0;let{processBlocks:k,processOutBlocks:R,padding:U,reset:N}=w,j=w.segments.buffer,ct=w.segments.state_chunks[0],no=w.segments.state_chunks,st=w.segments.state_chunks.length,O=Math.floor(j.length/n),tt=O-2;if(tt<1)throw new Error("wrong chunks");let P=Math.floor(j.length/v),rt=new WeakSet;function K(d,f=0){let l=d;N(f,1,0,v,P);let p=0,h=r;if(l.dkLen!==void 0&&(Li(l.dkLen,"opts.dkLen"),h=l.dkLen|0,!a&&h>r))throw new RangeError(`"opts.dkLen" expected <= ${r}, got ${h}`);if(i){let x=i(f,O,w,V,l);x&&x.blocks!==void 0&&(p=x.blocks),x&&x.outputLen!==void 0&&(h=x.outputLen)}return{blocks:p,outputLen:h}}function D(d,f){if(f>0){if(d.length===0){let p=U(0,f*n,O,0,n,c);k(0,1,f+p,O,n,1,0,p);return}k(0,1,f,O,n,0,0,0)}let l=0;do{let p=Math.min(d.length-l,tt*n);gt(j,0,d,l,p);let h=l+p==d.length,x=Math.ceil(p/n),b=x*n-p,g=0;h&&(g=U(0,p,O,b,n,c),x+=g),k(0,1,x,O,n,h?1:0,b,g),l+=p}while(l<d.length)}function G(d,f,l){let p=tt*n|0,h=l?l.buf.length:0,x=h;for(let _=0;_<d.length;_++)x+=d[_].length;if(f>0){if(x===0){let _=U(0,f*n,O,0,n,c);k(0,1,f+_,O,n,1,0,_);return}k(0,1,f,O,n,0,0,0)}let b=0,g=0,L=0;for(;b<x;){let _=Math.min(x-b,p)|0,z=0;if(l&&b<h){let C=Math.min(_,h-b)|0;gt(j,z,l.buf,b,C),z+=C}for(;z<_;){let C=d[g],W=C.length-L|0,M=(_-z<W?_-z:W)|0;gt(j,z,C,L,M),z+=M,L+=M,L===C.length&&(g++,L=0)}let B=b+_===x,S=Math.ceil(_/n)|0,E=S*n-_|0,T=0;B&&(T=U(0,_,O,E,n,c)|0,S=S+T|0),k(0,1,S,O,n,B?1:0,E,T),b+=_}}function Y(d,f,l,p,h,x){let b=h-2;if(b<1)throw new Error("wrong chunks");let g=x?x.buf.length:0,L=d[f].length,_=g+L,z=(S,E,T,C)=>{let W=0;if(x&&T<g){let M=Math.min(C,g-T);gt(j,S,x.buf,T,M),W+=M}W<C&&gt(j,S+W,E,T+W-g,C-W)};if(p>0){if(_===0){let S=U(0,p*n,h,0,n,c);for(let E=0;E<l;E++)if(U(E,p*n,h,0,n,c)!==S)throw new Error("different padding across batch");k(0,l,p+S,h,n,1,0,S);return}k(0,l,p,h,n,0,0,0)}let B=0;do{let S=Math.min(_-B,b*n);for(let M=0;M<l;M++)z(M*h*n,d[f+M],B,S);let E=B+S==_,T=Math.ceil(S/n),C=T*n-S,W=0;if(E){W=U(0,S,h,C,n,c);for(let M=1;M<l;M++)if(U(M,S,h,C,n,c)!==W)throw new Error("parallel batch: different padding");T+=W}k(0,l,T,h,n,E?1:0,C,W),B+=S}while(B<_)}function et(d={},f,l=r){let p=d;p.dkLen!==void 0&&Li(p.dkLen,"opts.dkLen"),p.outPos!==void 0&&Li(p.outPos,"opts.outPos"),p.out!==void 0&&Q0(p.out,void 0,"output"),f!==void 0&&Li(f,"xof.bytes");let h=f!==void 0?f:(p.dkLen===void 0?l:p.dkLen)|0;if(!a&&h>r)throw new RangeError(`"opts.dkLen" expected <= ${r}, got ${h}`);let x=p.out||new Uint8Array(h),b=(p.outPos===void 0?0:p.outPos)|0;if(b<0||b+h>x.length)throw new RangeError("out/outPos too small");return{dkLen:h,out:x,outPos:b}}function it(d={},f=et(d)){let{dkLen:l,out:p,outPos:h}=f,x=tt|0,b=(l+v-1)/v|0,g=0,L=b,_=0;for(;L>0;){let z=L>x?x:L;R(0,1,z,P,v,L===z?1:0);let S=z*v,E=l-g,T=E<S?E:S;gt(p,h+g,j,0,T),_=Math.max(_,T,z*v),g+=T,L-=z}return{maxWritten:_,out:p}}function ut(d,f,l,p){let h=f,{dkLen:x,out:b}=l,g=0,L=h|0,_=(x+v-1)/v|0,z=0,B=_;for(;B>0;){let S=B>L?L:B;R(0,d,S,f,v,B===S?1:0);let T=S*v,C=x-z,W=C<T?C:T;for(let M=0;M<d;M++)gt(b[p+M],z,j,M*v*f,W),g=Math.max(g,W,T);z+=W,B-=S}return{out:b,maxWritten:g}}let F=d=>{if(!Hf(d))throw new Error("prefixState is not from this hash");if(d.length<ct.length)throw new Error("prefixState is too short");if(d.length>=ct.length+n)throw new Error("prefixState is too long");if(!rt.has(d))throw new Error("prefixState is not from this hash");return d},Z=(d={})=>{let f=d;if(f.prefixState===void 0)return;let l=F(f.prefixState);return{state:l.subarray(0,ct.length),buf:l.subarray(ct.length)}};class Q{canXOF;blockLen;outputLen;buf;pos;state;finished;destroyed;constructor(f){if(f.streamBufLen%n||f.streamBufLen<n)throw new Error("wrong streamBufLen");if(this.finished=!1,this.destroyed=!1,this.buf=new Uint8Array(f.streamBufLen),this.pos=0,f.blocks!==void 0){if(f.blocks*n>this.buf.length)throw new Error("too much blocks");gt(this.buf,0,j,0,f.blocks*n),this.pos=f.blocks*n}this.canXOF=!!a,this.blockLen=n,this.outputLen=f.outputLen,this.state=Ju(ct),N(0,1,0,v,P)}restoreState(){gt(ct,0,this.state,0,ct.length)}saveState(){this.state=Ju(ct)}update(f){if(Q0(f),this.destroyed)throw new Error("Hash instance has been destroyed");if(this.finished)throw new Error("Hash#digest() has already been called");let l=0,p=Math.ceil((this.pos+f.length)/n)-1;if(p>0){this.restoreState();let x=Math.min(tt,p),b=x*n-this.pos;for(gt(j,0,this.buf,0,this.pos),gt(j,this.pos,f,l,b),this.pos=0,l+=b,k(0,1,x,O,n,0,0,0),p-=x;l<f.length&&p;){let g=Math.min(tt,p);gt(j,0,f,l,g*n),k(0,1,g,O,n,0,0,0),p-=g,l+=g*n}this.saveState(),N(0,1,0,v,P)}let h=f.length-l;return h&&(gt(this.buf,this.pos,f,l,h),this.pos+=h),this}finish(){if(this.finished)throw new Error("Hash#digest() has already been called");this.restoreState(),this.finished=!0;let f=!0,l=this.pos,p=Math.ceil(l/n);gt(j,0,this.buf,0,this.pos);let h=p*n-l,x=0;return f&&(x=U(0,l,O,h,n,c),p+=x),k(0,1,p,O,n,1,h,x),this.pos=v,p*n}digest(f={}){if(this.destroyed)throw new Error("Hash instance has been destroyed");let l=et(f,void 0,this.outputLen);this.finish();let{out:p,maxWritten:h}=it(f,l);return this.destroy(),N(0,1,h,v,P),p}destroy(){this.destroyed=!0,this.state.fill(0),this.buf.fill(0)}xof(f,l={}){if(!a)throw new Error("XOF is not possible for this instance");if(this.destroyed)throw new Error("Hash instance has been destroyed");let p=et(l,f);this.finished||(this.finish(),this.saveState()),this.restoreState();let{out:h,outPos:x}=p;for(let b=0;b<f;){this.pos>=v&&(R(0,1,1,P,v,0),gt(this.buf,0,j,0,v),this.pos=0);let g=(v-this.pos<f-b?v-this.pos:f-b)|0;gt(h,x+b|0,this.buf,this.pos,g),this.pos=this.pos+g|0,b=b+g|0}return this.saveState(),N(0,1,0,v,P),h}digestInto(f){if(Q0(f,void 0,"output"),f.length<this.outputLen)throw new RangeError("digestInto() expects output buffer of length at least "+this.outputLen);this.digest({out:f.subarray(0,this.outputLen),dkLen:this.outputLen})}xofInto(f){return this.xof(f.length,{out:f})}_cloneInto(f){if(this.destroyed)throw new Error("Hash instance has been destroyed");let l=f||new this.constructor({streamBufLen:this.buf.length});if(!(l instanceof Q))throw new Error("wrong instance");if(l.buf.length!==this.buf.length)throw new Error("wrong buffer length");return l.blockLen=this.blockLen,l.outputLen=this.outputLen,l.canXOF=this.canXOF,this.pos&&gt(l.buf,0,this.buf,0,this.pos),l.pos=this.pos|0,l.state=Ju(this.state),l.finished=!!this.finished,l.destroyed=!!this.destroyed,l}clone(){return this._cloneInto()}exportState(){if(this.destroyed)throw new Error("Hash instance has been destroyed");if(this.finished)throw new Error("Hash#digest() has already been called");this.pos===n&&(this.restoreState(),gt(j,0,this.buf,0,n),k(0,1,1,O,n,0,0,0),this.saveState(),this.pos=0,this.buf.fill(0),N(0,1,0,v,P));let f=new Uint8Array(this.state.length+this.pos);return f.set(this.state),this.pos&&f.set(this.buf.subarray(0,this.pos),this.state.length),rt.add(f),f}}let at=(d,f={})=>{Q0(d);let l=et(f),{blocks:p}=K(f);D(d,p);let{out:h,maxWritten:x}=it(f,l);return N(0,1,x,v,P),h},X=(d,f={})=>{if(!Array.isArray(d))throw new Error("expected array of messages");let l=0;for(let g of d)Q0(g),l+=g.length;let p=Z(f);if(p&&l===0)throw new Error("prefixState requires a non-empty message");let h=et(f);if(p)N(0,1,0,v,P),gt(ct,0,p.state,0,p.state.length),G(d,0,p);else{let{blocks:g}=K(f);G(d,g)}let{out:x,maxWritten:b}=it(f,h);return N(0,1,b,v,P),x},ot=(d,f={})=>{if(!Array.isArray(d))throw new Error("expected array of messages");let l=Z(f);if(l&&d.length===0)throw new Error("prefixState requires a non-empty message");let p=Math.floor(j.length/(n*3)),h=Math.floor(j.length/v);for(let b=0;b<d.length;b+=st){let g=Math.min(st,d.length-b,p,h);for(let L=0;L<g;L++)if(!Hf(d[b+L]))throw new Error(`expected Uint8Array, got type=${typeof d[b+L]}`);if(l&&d[b].length===0)throw new Error("prefixState requires a non-empty message");for(let L=1;L<g;L++)if(d[b+L].length!==d[b].length)throw new Error("different sizes inside chunk")}let x=s3(f,d.length,r,a);for(let b=0;b<d.length;b+=st){let g=Math.min(st,d.length-b,p,h),L=Math.floor(j.length/(n*g)),_=Math.floor(j.length/(v*g)),z=0;if(l){N(0,g,0,v,_);for(let S=0;S<g;S++)gt(no[S],0,l.state,0,l.state.length)}else if(i){let S=i(0,L,w,V,f);S&&S.blocks!==void 0&&(z=S.blocks);for(let E=0;E<g;E++){let T=i(E,L,w,V,f);if((T&&T.blocks)!==(S&&S.blocks))throw new Error("inconsistent init blocks inside parallel group")}}Y(d,b,g,z,L,l);let{maxWritten:B}=ut(g,_,x,b);N(0,g,B,v,_)}return x.out},lt=(d,f,l)=>{let p=d,h=l;return p.isAsync?p({total:f,asyncTick:h?.asyncTick,onProgress:h?.onProgress,nextTick:h?.nextTick}):h?.onProgress?p({total:f,onProgress:h.onProgress}):(p({total:0}),x=>!1)},pt=Yu(function*(d,f,l={}){let p=d;if(!p.isAsync&&!l?.onProgress)return at(f,l);let h=lt(p,f.length,l),x=at(f,l);return(p.isAsync||l?.onProgress)&&h(f.length)&&(yield),x}),dt=Yu(function*(d,f,l={}){let p=d;if(!p.isAsync&&!l?.onProgress)return X(f,l);let h=0;for(let g of f)h+=g.length;let x=lt(p,h,l),b=X(f,l);return(p.isAsync||l?.onProgress)&&x(h)&&(yield),b}),_t=Yu(function*(d,f,l={}){let p=d;if(!p.isAsync&&!l?.onProgress)return ot(f,l);let h=0;for(let g of f)h+=g.length;let x=lt(p,h,l),b=ot(f,l);return(p.isAsync||l?.onProgress)&&x(h)&&(yield),b});m=(d,f={})=>at(d,f),$=async(d,f)=>{let l=f;return l?l.asyncTick!==void 0||l.onProgress!==void 0||l.nextTick!==void 0?pt.async(d,l):at(d,l):at(d,{})},H=(d,f={})=>X(d,f),ht=async(d,f)=>{let l=f;return l?l.asyncTick!==void 0||l.onProgress!==void 0||l.nextTick!==void 0?dt.async(d,l):X(d,l):X(d,{})},bt=(d,f={})=>ot(d,f),f2=async(d,f)=>{let l=f;return l?l.asyncTick!==void 0||l.onProgress!==void 0||l.nextTick!==void 0?_t.async(d,l):ot(d,l):ot(d,{})},vt=(d={})=>{let f=d;N(0,1,0,v,P);let{blocks:l,outputLen:p}=K(f);return new Q({...f,streamBufLen:n,blocks:l,outputLen:p})},ta=d=>{let f=F(d);mh(f),rt.delete(f)}}m=(w,k)=>(y(),m(w,k)),$=(w,k)=>(y(),$(w,k)),H=(w,k)=>(y(),H(w,k)),ht=(w,k)=>(y(),ht(w,k)),bt=(w,k)=>(y(),bt(w,k)),f2=(w,k)=>(y(),f2(w,k)),vt=w=>(y(),vt(w)),ta=w=>(y(),ta(w));let V=((w,k={})=>m(w,k)),nt=(w,k={})=>H(w,k);Object.assign(nt,{async:(w,k)=>ht(w,k)});let J=(w,k={})=>bt(w,k);return Object.assign(J,{async:(w,k)=>f2(w,k)}),Object.assign(V,{async:(w,k)=>$(w,k),chunks:nt,parallel:J,create:(w={})=>vt(w),cleanState:w=>ta(w),getPlatform:()=>e,getDefinition:()=>s,canXOF:!!a,outputLen:r,blockLen:n,oid:u}),Object.defineProperty(V,r3,{value:!0,enumerable:!1}),c3.add(V),Object.freeze(V)}var i3=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var Zu={CHUNK_START:1,CHUNK_END:2,PARENT:4,ROOT:8,KEYED_HASH:16,DERIVE_KEY_CONTEXT:32,DERIVE_KEY_MATERIAL:64},a3=i3.slice(),gh=dh(a3);var bh=Object.freeze({blockLen:64,outputBlockLen:64,outputLen:32,chunks:10*1024*16,canXOF:!0,init(o,t,e,s,r={}){let{key:n,context:c,_keyContext:i}=r;r.dkLen!==void 0&&Li(r.dkLen,"opts.dkLen");let a=0,u=gh;if(n!==void 0){if(Q0(n,32,"key"),c!==void 0||i!==void 0)throw new Error('Only "key" or "context" can be specified at same time');u=n,a=Zu.KEYED_HASH}else if(i!==void 0){if(c!==void 0||n!==void 0)throw new Error('Only "key" or "context" can be specified at same time');a=Zu.DERIVE_KEY_CONTEXT}else if(c!==void 0){if(Q0(c,void 0,"context"),i!==void 0||n!==void 0)throw new Error('Only "key" or "context" can be specified at same time');if(i!==void 0&&typeof i!="boolean")throw new Error("wrong type for _keyContext");u=s(c,{dkLen:32,_keyContext:!0}),a=Zu.DERIVE_KEY_MATERIAL}e.segments["state.iv_chunks"][o].set(u),e.segments["state.state_chunks"][o].set(u),hh(e.segments["state.flags_chunks"][o])[0]=a}});function f3(o={},t){let e={env:{}};o={...e,...o,env:{...e.env,...o.env}};let s=new ArrayBuffer(15730784);if(!(s instanceof ArrayBuffer))throw new Error("wrong buffer");let r=new Uint8Array(s),n=new Int32Array(s);function c(A,y,V){let nt=32+Math.imul(2144,A)|0,J=n[(nt>>>0)+0>>>2],w=4+nt|0,k=n[(w>>>0)+0>>>2],R=4+w|0,U=n[(R>>>0)+0>>>2],N=4+R|0,j=n[(N>>>0)+0>>>2],ct=4+N|0,no=n[(ct>>>0)+0>>>2],st=4+ct|0,O=n[(st>>>0)+0>>>2],tt=4+st|0,P=n[(tt>>>0)+0>>>2],rt=n[((4+tt|0)>>>0)+0>>>2],K=(96+(y<<5)|0)+Math.imul(2144,A)|0,D=n[(K>>>0)+0>>>2],G=4+K|0,Y=n[(G>>>0)+0>>>2],et=4+G|0,it=n[(et>>>0)+0>>>2],ut=4+et|0,F=n[(ut>>>0)+0>>>2],Z=4+ut|0,Q=n[(Z>>>0)+0>>>2],at=4+Z|0,X=n[(at>>>0)+0>>>2],ot=4+at|0,lt=n[(ot>>>0)+0>>>2],pt=n[((4+ot|0)>>>0)+0>>>2];n[(K>>>0)+0>>>2]=0;let dt=4+K|0;n[(dt>>>0)+0>>>2]=0;let _t=4+dt|0;n[(_t>>>0)+0>>>2]=0;let d=4+_t|0;n[(d>>>0)+0>>>2]=0;let f=4+d|0;n[(f>>>0)+0>>>2]=0;let l=4+f|0;n[(l>>>0)+0>>>2]=0;let p=4+l|0;n[(p>>>0)+0>>>2]=0,n[((4+p|0)>>>0)+0>>>2]=0;let h=(96+((1+y|0)<<5)|0)+Math.imul(2144,A)|0,x=n[(h>>>0)+0>>>2],b=4+h|0,g=n[(b>>>0)+0>>>2],L=4+b|0,_=n[(L>>>0)+0>>>2],z=4+L|0,B=n[(z>>>0)+0>>>2],S=4+z|0,E=n[(S>>>0)+0>>>2],T=4+S|0,C=n[(T>>>0)+0>>>2],W=4+T|0,M=n[(W>>>0)+0>>>2],ft=n[((4+W|0)>>>0)+0>>>2];n[(h>>>0)+0>>>2]=0;let At=4+h|0;n[(At>>>0)+0>>>2]=0;let nc=4+At|0;n[(nc>>>0)+0>>>2]=0;let Be=4+nc|0;n[(Be>>>0)+0>>>2]=0;let Pe=4+Be|0;n[(Pe>>>0)+0>>>2]=0;let Ce=4+Pe|0;n[(Ce>>>0)+0>>>2]=0;let St=4+Ce|0;n[(St>>>0)+0>>>2]=0,n[((4+St|0)>>>0)+0>>>2]=0;let _e=n[((16+Math.imul(2144,A)|0)>>>0)+0>>>2],se=(D+no|0)+J|0,yt=se>>>16|se<<16,$t=yt+1779033703|0,Et=($t^no)>>>12|($t^no)<<20,Lt=(Y+Et|0)+se|0,Mt=(Lt^yt)>>>8|(Lt^yt)<<24,je=Mt+$t|0,Ie=(je^Et)>>>7|(je^Et)<<25,sc=(it+O|0)+k|0,Mi=sc>>>16|sc<<16,Oi=Mi+-1150833019|0,rc=(Oi^O)>>>12|(Oi^O)<<20,Ae=(F+rc|0)+sc|0,so=(Ae^Mi)>>>8|(Ae^Mi)<<24,ze=so+Oi|0,Ot=(ze^rc)>>>7|(ze^rc)<<25,re=(Q+P|0)+U|0,Bt=(re^64)>>>16|(re^64)<<16,Pt=Bt+1013904242|0,Ct=(Pt^P)>>>12|(Pt^P)<<20,jt=(X+Ct|0)+re|0,Te=(jt^Bt)>>>8|(jt^Bt)<<24,Ue=Te+Pt|0,ce=(Ue^Ct)>>>7|(Ue^Ct)<<25,Re=(lt+rt|0)+j|0,ie=(Re^(4|_e))>>>16|(Re^(4|_e))<<16,_0=ie+-1521486534|0,cc=(_0^rt)>>>12|(_0^rt)<<20,ic=(pt+cc|0)+Re|0,A0=(ic^ie)>>>8|(ic^ie)<<24,S0=A0+_0|0,Bi=(S0^cc)>>>7|(S0^cc)<<25,Pi=(x+Ot|0)+Lt|0,Ci=(Pi^A0)>>>16|(Pi^A0)<<16,ji=Ci+Ue|0,Ii=(ji^Ot)>>>12|(ji^Ot)<<20,zi=(g+Ii|0)+Pi|0,ea=(zi^Ci)>>>8|(zi^Ci)<<24,oa=ea+ji|0,na=(oa^Ii)>>>7|(oa^Ii)<<25,sa=(_+ce|0)+Ae|0,ra=(sa^Mt)>>>16|(sa^Mt)<<16,ca=ra+S0|0,ia=(ca^ce)>>>12|(ca^ce)<<20,ac=(B+ia|0)+sa|0,lc=(ac^ra)>>>8|(ac^ra)<<24,fc=lc+ca|0,uc=(fc^ia)>>>7|(fc^ia)<<25,vc=(E+Bi|0)+jt|0,pc=(vc^so)>>>16|(vc^so)<<16,dc=pc+je|0,hc=(dc^Bi)>>>12|(dc^Bi)<<20,mc=(C+hc|0)+vc|0,aa=(mc^pc)>>>8|(mc^pc)<<24,la=aa+dc|0,fa=(la^hc)>>>7|(la^hc)<<25,ua=(M+Ie|0)+ic|0,va=(ua^Te)>>>16|(ua^Te)<<16,pa=va+ze|0,xc=(pa^Ie)>>>12|(pa^Ie)<<20,gc=(ft+xc|0)+ua|0,bc=(gc^va)>>>8|(gc^va)<<24,yc=bc+pa|0,wc=(yc^xc)>>>7|(yc^xc)<<25,kc=(it+wc|0)+zi|0,_c=(kc^lc)>>>16|(kc^lc)<<16,Ac=_c+la|0,Sc=(Ac^wc)>>>12|(Ac^wc)<<20,$c=(lt+Sc|0)+kc|0,Ec=($c^_c)>>>8|($c^_c)<<24,da=Ec+Ac|0,Ti=(da^Sc)>>>7|(da^Sc)<<25,Ui=(F+na|0)+ac|0,Ri=(Ui^aa)>>>16|(Ui^aa)<<16,Di=Ri+yc|0,Hi=(Di^na)>>>12|(Di^na)<<20,Vi=(_+Hi|0)+Ui|0,Ni=(Vi^Ri)>>>8|(Vi^Ri)<<24,Fi=Ni+Di|0,qi=(Fi^Hi)>>>7|(Fi^Hi)<<25,ha=(pt+uc|0)+mc|0,$0=(ha^bc)>>>16|(ha^bc)<<16,E0=$0+oa|0,L0=(E0^uc)>>>12|(E0^uc)<<20,M0=(D+L0|0)+ha|0,O0=(M0^$0)>>>8|(M0^$0)<<24,B0=O0+E0|0,P0=(B0^L0)>>>7|(B0^L0)<<25,C0=(Q+fa|0)+gc|0,Ki=(C0^ea)>>>16|(C0^ea)<<16,ae=Ki+fc|0,ma=(ae^fa)>>>12|(ae^fa)<<20,Wi=(C+ma|0)+C0|0,Gi=(Wi^Ki)>>>8|(Wi^Ki)<<24,Xi=Gi+ae|0,ro=(Xi^ma)>>>7|(Xi^ma)<<25,co=(Y+qi|0)+$c|0,io=(co^Gi)>>>16|(co^Gi)<<16,ao=io+B0|0,De=(ao^qi)>>>12|(ao^qi)<<20,It=(B+De|0)+co|0,Lc=(It^io)>>>8|(It^io)<<24,zt=Lc+ao|0,Mc=(zt^De)>>>7|(zt^De)<<25,le=(E+P0|0)+Vi|0,Ji=(le^Ec)>>>16|(le^Ec)<<16,fe=Ji+Xi|0,Yi=(fe^P0)>>>12|(fe^P0)<<20,ue=(X+Yi|0)+le|0,Zi=(ue^Ji)>>>8|(ue^Ji)<<24,ve=Zi+fe|0,Qi=(ve^Yi)>>>7|(ve^Yi)<<25,pe=(g+ro|0)+M0|0,t0=(pe^Ni)>>>16|(pe^Ni)<<16,de=t0+da|0,Se=(de^ro)>>>12|(de^ro)<<20,$e=(M+Se|0)+pe|0,j0=($e^t0)>>>8|($e^t0)<<24,Ee=j0+de|0,I0=(Ee^Se)>>>7|(Ee^Se)<<25,Le=(ft+Ti|0)+Wi|0,z0=(Le^O0)>>>16|(Le^O0)<<16,Me=z0+Fi|0,T0=(Me^Ti)>>>12|(Me^Ti)<<20,Tt=(x+T0|0)+Le|0,e0=(Tt^z0)>>>8|(Tt^z0)<<24,Ut=e0+Me|0,lo=(Ut^T0)>>>7|(Ut^T0)<<25,wt=(F+lo|0)+It|0,kt=(wt^Zi)>>>16|(wt^Zi)<<16,fo=kt+Ee|0,uo=(fo^lo)>>>12|(fo^lo)<<20,vo=(Q+uo|0)+wt|0,po=(vo^kt)>>>8|(vo^kt)<<24,ho=po+fo|0,U0=(ho^uo)>>>7|(ho^uo)<<25,R0=(_+Mc|0)+ue|0,D0=(R0^j0)>>>16|(R0^j0)<<16,H0=D0+Ut|0,V0=(H0^Mc)>>>12|(H0^Mc)<<20,N0=(E+V0|0)+R0|0,F0=(N0^D0)>>>8|(N0^D0)<<24,q0=F0+H0|0,o0=(q0^V0)>>>7|(q0^V0)<<25,mo=(C+Qi|0)+$e|0,xo=(mo^e0)>>>16|(mo^e0)<<16,go=xo+zt|0,bo=(go^Qi)>>>12|(go^Qi)<<20,yo=(it+bo|0)+mo|0,wo=(yo^xo)>>>8|(yo^xo)<<24,ko=wo+go|0,_o=(ko^bo)>>>7|(ko^bo)<<25,Ao=(pt+I0|0)+Tt|0,So=(Ao^Lc)>>>16|(Ao^Lc)<<16,Oc=So+ve|0,Bc=(Oc^I0)>>>12|(Oc^I0)<<20,Pc=(M+Bc|0)+Ao|0,Cc=(Pc^So)>>>8|(Pc^So)<<24,jc=Cc+Oc|0,Ic=(jc^Bc)>>>7|(jc^Bc)<<25,zc=(lt+o0|0)+vo|0,Tc=(zc^Cc)>>>16|(zc^Cc)<<16,Uc=Tc+ko|0,Rc=(Uc^o0)>>>12|(Uc^o0)<<20,n0=(X+Rc|0)+zc|0,He=(n0^Tc)>>>8|(n0^Tc)<<24,he=He+Uc|0,me=(he^Rc)>>>7|(he^Rc)<<25,xe=(g+_o|0)+N0|0,ge=(xe^po)>>>16|(xe^po)<<16,be=ge+jc|0,ye=(be^_o)>>>12|(be^_o)<<20,we=(D+ye|0)+xe|0,s0=(we^ge)>>>8|(we^ge)<<24,r0=s0+be|0,c0=(r0^ye)>>>7|(r0^ye)<<25,Ve=(B+Ic|0)+yo|0,Ne=(Ve^F0)>>>16|(Ve^F0)<<16,Fe=Ne+ho|0,qe=(Fe^Ic)>>>12|(Fe^Ic)<<20,Ke=(ft+qe|0)+Ve|0,We=(Ke^Ne)>>>8|(Ke^Ne)<<24,Ge=We+Fe|0,Xe=(Ge^qe)>>>7|(Ge^qe)<<25,Je=(x+U0|0)+Pc|0,Ye=(Je^wo)>>>16|(Je^wo)<<16,Ze=Ye+q0|0,i0=(Ze^U0)>>>12|(Ze^U0)<<20,a0=(Y+i0|0)+Je|0,l0=(a0^Ye)>>>8|(a0^Ye)<<24,f0=l0+Ze|0,u0=(f0^i0)>>>7|(f0^i0)<<25,v0=(_+u0|0)+n0|0,p0=(v0^s0)>>>16|(v0^s0)<<16,d0=p0+Ge|0,h0=(d0^u0)>>>12|(d0^u0)<<20,m0=(pt+h0|0)+v0|0,x0=(m0^p0)>>>8|(m0^p0)<<24,Dc=x0+d0|0,Hc=(Dc^h0)>>>7|(Dc^h0)<<25,g0=(E+me|0)+we|0,b0=(g0^We)>>>16|(g0^We)<<16,y0=b0+f0|0,w0=(y0^me)>>>12|(y0^me)<<20,$o=(g+w0|0)+g0|0,Eo=($o^b0)>>>8|($o^b0)<<24,Lo=Eo+y0|0,Mo=(Lo^w0)>>>7|(Lo^w0)<<25,Qe=(M+c0|0)+Ke|0,Oo=(Qe^l0)>>>16|(Qe^l0)<<16,Bo=Oo+he|0,Po=(Bo^c0)>>>12|(Bo^c0)<<20,to=(F+Po|0)+Qe|0,Rt=(to^Oo)>>>8|(to^Oo)<<24,Vc=Rt+Bo|0,Dt=(Vc^Po)>>>7|(Vc^Po)<<25,Nc=(C+Xe|0)+a0|0,Ht=(Nc^He)>>>16|(Nc^He)<<16,Fc=Ht+r0|0,Vt=(Fc^Xe)>>>12|(Fc^Xe)<<20,qc=(ft+Vt|0)+Nc|0,Nt=(qc^Ht)>>>8|(qc^Ht)<<24,Kc=Nt+Fc|0,Ft=(Kc^Vt)>>>7|(Kc^Vt)<<25,Wc=(Q+Mo|0)+m0|0,qt=(Wc^Nt)>>>16|(Wc^Nt)<<16,Gc=qt+Vc|0,Kt=(Gc^Mo)>>>12|(Gc^Mo)<<20,Xc=(D+Kt|0)+Wc|0,Wt=(Xc^qt)>>>8|(Xc^qt)<<24,Jc=Wt+Gc|0,Gt=(Jc^Kt)>>>7|(Jc^Kt)<<25,Yc=(B+Dt|0)+$o|0,Xt=(Yc^x0)>>>16|(Yc^x0)<<16,Zc=Xt+Kc|0,Jt=(Zc^Dt)>>>12|(Zc^Dt)<<20,Qc=(it+Jt|0)+Yc|0,Yt=(Qc^Xt)>>>8|(Qc^Xt)<<24,ti=Yt+Zc|0,Zt=(ti^Jt)>>>7|(ti^Jt)<<25,ei=(X+Ft|0)+to|0,Qt=(ei^Eo)>>>16|(ei^Eo)<<16,te=Qt+Dc|0,oi=(te^Ft)>>>12|(te^Ft)<<20,ni=(x+oi|0)+ei|0,si=(ni^Qt)>>>8|(ni^Qt)<<24,ri=si+te|0,ci=(ri^oi)>>>7|(ri^oi)<<25,ii=(Y+Hc|0)+qc|0,ai=(ii^Rt)>>>16|(ii^Rt)<<16,li=ai+Lo|0,fi=(li^Hc)>>>12|(li^Hc)<<20,ui=(lt+fi|0)+ii|0,vi=(ui^ai)>>>8|(ui^ai)<<24,pi=vi+li|0,di=(pi^fi)>>>7|(pi^fi)<<25,hi=(E+di|0)+Xc|0,Co=(hi^Yt)>>>16|(hi^Yt)<<16,eo=Co+ri|0,jo=(eo^di)>>>12|(eo^di)<<20,Io=(C+jo|0)+hi|0,zo=(Io^Co)>>>8|(Io^Co)<<24,To=zo+eo|0,Uo=(To^jo)>>>7|(To^jo)<<25,Ro=(g+Gt|0)+Qc|0,Do=(Ro^si)>>>16|(Ro^si)<<16,Ho=Do+pi|0,Vo=(Ho^Gt)>>>12|(Ho^Gt)<<20,No=(B+Vo|0)+Ro|0,Fo=(No^Do)>>>8|(No^Do)<<24,qo=Fo+Ho|0,Ko=(qo^Vo)>>>7|(qo^Vo)<<25,Wo=(ft+Zt|0)+ni|0,Go=(Wo^vi)>>>16|(Wo^vi)<<16,Xo=Go+Jc|0,Jo=(Xo^Zt)>>>12|(Xo^Zt)<<20,Yo=(_+Jo|0)+Wo|0,Zo=(Yo^Go)>>>8|(Yo^Go)<<24,Qo=Zo+Xo|0,tn=(Qo^Jo)>>>7|(Qo^Jo)<<25,en=(M+ci|0)+ui|0,on=(en^Wt)>>>16|(en^Wt)<<16,nn=on+ti|0,sn=(nn^ci)>>>12|(nn^ci)<<20,rn=(x+sn|0)+en|0,cn=(rn^on)>>>8|(rn^on)<<24,an=cn+nn|0,ln=(an^sn)>>>7|(an^sn)<<25,fn=(pt+Ko|0)+Io|0,un=(fn^cn)>>>16|(fn^cn)<<16,vn=un+Qo|0,pn=(vn^Ko)>>>12|(vn^Ko)<<20,dn=(it+pn|0)+fn|0,hn=(dn^un)>>>8|(dn^un)<<24,mn=hn+vn|0,xn=(mn^pn)>>>7|(mn^pn)<<25,gn=(X+tn|0)+No|0,bn=(gn^zo)>>>16|(gn^zo)<<16,yn=bn+an|0,wn=(yn^tn)>>>12|(yn^tn)<<20,kn=(F+wn|0)+gn|0,_n=(kn^bn)>>>8|(kn^bn)<<24,An=_n+yn|0,Sn=(An^wn)>>>7|(An^wn)<<25,$n=(D+ln|0)+Yo|0,En=($n^Fo)>>>16|($n^Fo)<<16,Ln=En+To|0,Mn=(Ln^ln)>>>12|(Ln^ln)<<20,On=(Y+Mn|0)+$n|0,Bn=(On^En)>>>8|(On^En)<<24,Pn=Bn+Ln|0,Cn=(Pn^Mn)>>>7|(Pn^Mn)<<25,jn=(lt+Uo|0)+rn|0,In=(jn^Zo)>>>16|(jn^Zo)<<16,zn=In+qo|0,Tn=(zn^Uo)>>>12|(zn^Uo)<<20,Un=(Q+Tn|0)+jn|0,Rn=(Un^In)>>>8|(Un^In)<<24,Dn=Rn+zn|0,Hn=(Dn^Tn)>>>7|(Dn^Tn)<<25,Vn=(g+Hn|0)+dn|0,Nn=(Vn^_n)>>>16|(Vn^_n)<<16,Fn=Nn+Pn|0,qn=(Fn^Hn)>>>12|(Fn^Hn)<<20,Kn=(M+qn|0)+Vn|0,Wn=(Kn^Nn)>>>8|(Kn^Nn)<<24,Gn=Wn+Fn|0,Xn=(Gn^qn)>>>7|(Gn^qn)<<25,Jn=(B+xn|0)+kn|0,Yn=(Jn^Bn)>>>16|(Jn^Bn)<<16,Zn=Yn+Dn|0,Qn=(Zn^xn)>>>12|(Zn^xn)<<20,ts=(X+Qn|0)+Jn|0,es=(ts^Yn)>>>8|(ts^Yn)<<24,os=es+Zn|0,ns=(os^Qn)>>>7|(os^Qn)<<25,ss=(x+Sn|0)+On|0,rs=(ss^Rn)>>>16|(ss^Rn)<<16,cs=rs+mn|0,is=(cs^Sn)>>>12|(cs^Sn)<<20,as=(E+is|0)+ss|0,ls=(as^rs)>>>8|(as^rs)<<24,fs=ls+cs|0,us=(fs^is)>>>7|(fs^is)<<25,vs=(ft+Cn|0)+Un|0,ps=(vs^hn)>>>16|(vs^hn)<<16,ds=ps+An|0,hs=(ds^Cn)>>>12|(ds^Cn)<<20,ms=(Y+hs|0)+vs|0,xs=(ms^ps)>>>8|(ms^ps)<<24,gs=xs+ds|0,bs=(gs^hs)>>>7|(gs^hs)<<25,ys=(C+ns|0)+Kn|0,ws=(ys^xs)>>>16|(ys^xs)<<16,ks=ws+fs|0,_s=(ks^ns)>>>12|(ks^ns)<<20,As=(F+_s|0)+ys|0,Ss=(As^ws)>>>8|(As^ws)<<24,$s=Ss+ks|0,Es=($s^_s)>>>7|($s^_s)<<25,Ls=(D+us|0)+ts|0,Ms=(Ls^Wn)>>>16|(Ls^Wn)<<16,Os=Ms+gs|0,Bs=(Os^us)>>>12|(Os^us)<<20,Ps=(_+Bs|0)+Ls|0,Cs=(Ps^Ms)>>>8|(Ps^Ms)<<24,js=Cs+Os|0,Is=(js^Bs)>>>7|(js^Bs)<<25,zs=(it+bs|0)+as|0,Ts=(zs^es)>>>16|(zs^es)<<16,Us=Ts+Gn|0,Rs=(Us^bs)>>>12|(Us^bs)<<20,Ds=(lt+Rs|0)+zs|0,Hs=(Ds^Ts)>>>8|(Ds^Ts)<<24,Vs=Hs+Us|0,Ns=(Vs^Rs)>>>7|(Vs^Rs)<<25,Fs=(Q+Xn|0)+ms|0,qs=(Fs^ls)>>>16|(Fs^ls)<<16,Ks=qs+os|0,Ws=(Ks^Xn)>>>12|(Ks^Xn)<<20,Gs=(pt+Ws|0)+Fs|0,Xs=(Gs^qs)>>>8|(Gs^qs)<<24,Js=Xs+Ks|0,Ys=(Js^Ws)>>>7|(Js^Ws)<<25,Zs=(B+Ys|0)+As|0,Qs=(Zs^Cs)>>>16|(Zs^Cs)<<16,tr=Qs+Vs|0,er=(tr^Ys)>>>12|(tr^Ys)<<20,or=(ft+er|0)+Zs|0,nr=(or^Qs)>>>8|(or^Qs)<<24,sr=nr+tr|0,rr=(sr^er)>>>7|(sr^er)<<25,cr=(X+Es|0)+Ps|0,ir=(cr^Hs)>>>16|(cr^Hs)<<16,ar=ir+Js|0,lr=(ar^Es)>>>12|(ar^Es)<<20,fr=(D+lr|0)+cr|0,ur=(fr^ir)>>>8|(fr^ir)<<24,vr=ur+ar|0,pr=(vr^lr)>>>7|(vr^lr)<<25,dr=(Y+Is|0)+Ds|0,hr=(dr^Xs)>>>16|(dr^Xs)<<16,mr=hr+$s|0,xr=(mr^Is)>>>12|(mr^Is)<<20,gr=(g+xr|0)+dr|0,br=(gr^hr)>>>8|(gr^hr)<<24,yr=br+mr|0,wr=(yr^xr)>>>7|(yr^xr)<<25,kr=(x+Ns|0)+Gs|0,_r=(kr^Ss)>>>16|(kr^Ss)<<16,Ar=_r+js|0,Sr=(Ar^Ns)>>>12|(Ar^Ns)<<20,$r=(lt+Sr|0)+kr|0,Er=($r^_r)>>>8|($r^_r)<<24,Lr=Er+Ar|0,Mr=(Lr^Sr)>>>7|(Lr^Sr)<<25,Or=(M+pr|0)+or|0,Br=(Or^Er)>>>16|(Or^Er)<<16,Pr=Br+yr|0,Cr=(Pr^pr)>>>12|(Pr^pr)<<20,jr=(_+Cr|0)+Or|0,mi=(jr^Br)>>>8|(jr^Br)<<24,Ir=mi+Pr|0,zr=(it+wr|0)+fr|0,Tr=(zr^nr)>>>16|(zr^nr)<<16,Ur=Tr+Lr|0,Rr=(Ur^wr)>>>12|(Ur^wr)<<20,Dr=(E+Rr|0)+zr|0,xi=(Dr^Tr)>>>8|(Dr^Tr)<<24,Hr=xi+Ur|0,Vr=(F+Mr|0)+gr|0,Nr=(Vr^ur)>>>16|(Vr^ur)<<16,Fr=Nr+sr|0,qr=(Fr^Mr)>>>12|(Fr^Mr)<<20,Kr=(Q+qr|0)+Vr|0,gi=(Kr^Nr)>>>8|(Kr^Nr)<<24,Wr=gi+Fr|0,Gr=(pt+rr|0)+$r|0,Xr=(Gr^br)>>>16|(Gr^br)<<16,Jr=Xr+vr|0,Yr=(Jr^rr)>>>12|(Jr^rr)<<20,Zr=(C+Yr|0)+Gr|0,bi=(Zr^Xr)>>>8|(Zr^Xr)<<24,Qr=bi+Jr|0,yi=(96+(V<<5)|0)+Math.imul(2144,A)|0;n[(yi>>>0)+0>>>2]=Wr^jr;let wi=4+yi|0;n[(wi>>>0)+0>>>2]=Qr^Dr;let ki=4+wi|0;n[(ki>>>0)+0>>>2]=Ir^Kr;let _i=4+ki|0;n[(_i>>>0)+0>>>2]=Hr^Zr;let Ai=4+_i|0;n[(Ai>>>0)+0>>>2]=xi^((Qr^Yr)>>>7|(Qr^Yr)<<25);let Si=4+Ai|0;n[(Si>>>0)+0>>>2]=gi^((Ir^Cr)>>>7|(Ir^Cr)<<25);let $i=4+Si|0;n[($i>>>0)+0>>>2]=bi^((Hr^Rr)>>>7|(Hr^Rr)<<25),n[((4+$i|0)>>>0)+0>>>2]=mi^((Wr^qr)>>>7|(Wr^qr)<<25)}function i(A,y){let V=Math.imul(2144,A),nt=n[((24+Math.imul(2144,A)|0)>>>0)+0>>>2],J=n[(V>>>0)+0>>>2],w=n[(V>>>0)+4>>>2],k=1+J|0,R=k,U=(((-1^k)&(1|J)|1&J)>>>31)+w|0,N=nt;e:{let P=R,rt=U,K=N;if((((1&P|0)===0|0|y)&((K|0)!==0|0)|0)===0|0){R=P,U=rt,N=K;break e}let D=P,G=rt,Y=K;s:{let F=D,Z=G,Q=Y,at=F,X=Z,ot=Q;t:for(;;){let _t=at,d=X,f=ot,l=_t,p=d,h=f;{let z=l,B=p,E=h-1|0;if(((E|0)===0|0)&y){D=z,G=B,Y=E;break s}c(A,E,E),l=z,p=B,h=E}let x=l,b=p,g=h,L=b<<31|x>>>1,_=b>>>1;if(((1&L|0)===0|0|y)&((g|0)!==0|0)){at=L,X=_,ot=g;continue t}at=L,X=_,ot=g;break t}let lt=at,pt=X,dt=ot;D=lt,G=pt,Y=dt}let et=D,it=G,ut=Y;R=et,U=it,N=ut}let j=N,ct=Math.imul(2144,A),no=Math.imul(2144,A),st=n[(ct>>>0)+0>>>2],O=n[(ct>>>0)+4>>>2],tt=1+st|0;n[(no>>>0)+0>>>2]=tt,n[(no>>>0)+4>>>2]=(((-1^tt)&(1|st)|1&st)>>>31)+O|0,n[((24+Math.imul(2144,A)|0)>>>0)+0>>>2]=1+j|0}function a(A,y,V,nt,J,w){return r.fill(0,((2144+y|0)+(Math.imul(V,A)<<6)|0)>>>0,(((2144+y|0)+(Math.imul(V,A)<<6)|0)>>>0)+(((y|0)===0|0?J:nt)>>>0)),0}function u(A,y,V,nt,J,w,k,R){let U=0;e:{let N=U;if((N>>>0<y>>>0|0|0)===0|0){U=N;break e}let j=N;{let st=j;t:for(;;){let P=st;{let D=P,G=D+A|0,Y=32+Math.imul(2144,G)|0,et=64+Math.imul(2144,G)|0,it=n[(Y>>>0)+0>>>2],ut=4+Y|0,F=n[(ut>>>0)+0>>>2],Z=4+ut|0,Q=n[(Z>>>0)+0>>>2],at=4+Z|0,X=n[(at>>>0)+0>>>2],ot=4+at|0,lt=n[(ot>>>0)+0>>>2],pt=4+ot|0,dt=n[(pt>>>0)+0>>>2],_t=4+pt|0,d=n[(_t>>>0)+0>>>2],f=n[((4+_t|0)>>>0)+0>>>2],l=n[((20+Math.imul(2144,G)|0)>>>0)+0>>>2],p=Math.imul(2144,G),h=n[((16+Math.imul(2144,G)|0)>>>0)+0>>>2],x=n[(et>>>0)+0>>>2],b=4+et|0,g=n[(b>>>0)+0>>>2],L=4+b|0,_=n[(L>>>0)+0>>>2],z=4+L|0,B=n[(z>>>0)+0>>>2],S=4+z|0,E=n[(S>>>0)+0>>>2],T=4+S|0,C=n[(T>>>0)+0>>>2],W=4+T|0,M=n[(W>>>0)+0>>>2],ft=n[((4+W|0)>>>0)+0>>>2],At=n[(p>>>0)+0>>>2],nc=n[(p>>>0)+4>>>2],Be=0,Pe=0,Ce=x,St=g,_e=_,se=B,yt=E,$t=C,Et=M,Lt=ft,Mt=l;n:{let Ot=Be,re=Pe,Bt=Ce,Pt=St,Ct=_e,jt=se,Te=yt,Ue=$t,ce=Et,Re=Lt,ie=Mt;if((Ot>>>0<V>>>0|0|0)===0|0){Be=Ot,Pe=re,Ce=Bt,St=Pt,_e=Ct,se=jt,yt=Te,$t=Ue,Et=ce,Lt=Re,Mt=ie;break n}let _0=Ot,cc=re,ic=Bt,A0=Pt,S0=Ct,Bi=jt,Pi=Te,Ci=Ue,ji=ce,Ii=Re,zi=ie;{let vc=_0,pc=cc,dc=ic,hc=A0,mc=S0,aa=Bi,la=Pi,fa=Ci,ua=ji,va=Ii,pa=zi,xc=vc,gc=pc,bc=dc,yc=hc,wc=mc,kc=aa,_c=la,Ac=fa,Sc=ua,$c=va,Ec=pa;c:for(;;){let $0=xc,E0=gc,L0=bc,M0=yc,O0=wc,B0=kc,P0=_c,C0=Ac,Ki=Sc,ae=$c,ma=Ec,Wi=$0,Gi=E0,Xi=L0,ro=M0,co=O0,io=B0,ao=P0,De=C0,It=Ki,Lc=ae,zt=ma;{let de=Wi,Se=Gi,$e=Xi,j0=ro,Ee=co,I0=io,Le=ao,z0=De,Me=It,T0=Lc,Tt=zt,e0=V-de|0,Ut=Math.min((16-Tt|0)>>>0,e0>>>0)|0,lo=$e,wt=j0,kt=Ee,fo=I0,uo=Le,vo=z0,po=Me,ho=T0;i:{let He=lo,he=wt,me=kt,xe=fo,ge=uo,be=vo,ye=po,we=ho;if(((Tt|0)===0|0|0)===0|0){lo=He,wt=he,kt=me,fo=xe,uo=ge,vo=be,po=ye,ho=we;break i}lo=it,wt=F,kt=Q,fo=X,uo=lt,vo=dt,po=d,ho=f}let U0=lo,R0=wt,D0=kt,H0=fo,V0=uo,N0=vo,F0=po,q0=ho,o0=0,mo=de,xo=U0,go=R0,bo=D0,yo=H0,wo=V0,ko=N0,_o=F0,Ao=q0,So=Tt;{let He=o0,he=mo,me=xo,xe=go,ge=bo,be=yo,ye=wo,we=ko,s0=_o,r0=Ao,c0=So,Ve=He,Ne=he,Fe=me,qe=xe,Ke=ge,We=be,Ge=ye,Xe=we,Je=s0,Ye=r0,Ze=c0;a:for(;;){let Dc=Ve,Hc=Ne,g0=Fe,b0=qe,y0=Ke,w0=We,$o=Ge,Eo=Xe,Lo=Je,Mo=Ye,Qe=Ze,Oo=1+Dc|0,Bo=k&((Dc|0)===(Ut-1|0|0)|0)&((e0|0)===(Ut|0)|0),Po=Bo|((Qe|0)===15|0),to=(2144+((Hc+nt|0)<<6)|0)+(Math.imul(J,G)<<6)|0,Rt=n[(to>>>0)+0>>>2],Vc=4+to|0,Dt=n[(Vc>>>0)+0>>>2],Nc=4+Vc|0,Ht=n[(Nc>>>0)+0>>>2],Fc=4+Nc|0,Vt=n[(Fc>>>0)+0>>>2],qc=4+Fc|0,Nt=n[(qc>>>0)+0>>>2],Kc=4+qc|0,Ft=n[(Kc>>>0)+0>>>2],Wc=4+Kc|0,qt=n[(Wc>>>0)+0>>>2],Gc=4+Wc|0,Kt=n[(Gc>>>0)+0>>>2],Xc=4+Gc|0,Wt=n[(Xc>>>0)+0>>>2],Jc=4+Xc|0,Gt=n[(Jc>>>0)+0>>>2],Yc=4+Jc|0,Xt=n[(Yc>>>0)+0>>>2],Zc=4+Yc|0,Jt=n[(Zc>>>0)+0>>>2],Qc=4+Zc|0,Yt=n[(Qc>>>0)+0>>>2],ti=4+Qc|0,Zt=n[(ti>>>0)+0>>>2],ei=4+ti|0,Qt=n[(ei>>>0)+0>>>2],te=n[((4+ei|0)>>>0)+0>>>2];n[(to>>>0)+0>>>2]=0;let oi=4+to|0;n[(oi>>>0)+0>>>2]=0;let ni=4+oi|0;n[(ni>>>0)+0>>>2]=0;let si=4+ni|0;n[(si>>>0)+0>>>2]=0;let ri=4+si|0;n[(ri>>>0)+0>>>2]=0;let ci=4+ri|0;n[(ci>>>0)+0>>>2]=0;let ii=4+ci|0;n[(ii>>>0)+0>>>2]=0;let ai=4+ii|0;n[(ai>>>0)+0>>>2]=0;let li=4+ai|0;n[(li>>>0)+0>>>2]=0;let fi=4+li|0;n[(fi>>>0)+0>>>2]=0;let ui=4+fi|0;n[(ui>>>0)+0>>>2]=0;let vi=4+ui|0;n[(vi>>>0)+0>>>2]=0;let pi=4+vi|0;n[(pi>>>0)+0>>>2]=0;let di=4+pi|0;n[(di>>>0)+0>>>2]=0;let hi=4+di|0;n[(hi>>>0)+0>>>2]=0,n[((4+hi|0)>>>0)+0>>>2]=0;let Co=(Rt+$o|0)+g0|0,eo=Se+At|0,jo=(Co^eo)>>>16|(Co^eo)<<16,Io=jo+1779033703|0,zo=(Io^$o)>>>12|(Io^$o)<<20,To=(Dt+zo|0)+Co|0,Uo=(To^jo)>>>8|(To^jo)<<24,Ro=Uo+Io|0,Do=(Ro^zo)>>>7|(Ro^zo)<<25,Ho=(Ht+Eo|0)+b0|0,Vo=(Ho^((((-1^eo)&(Se|At)|Se&At)>>>31)+nc|0))>>>16|(Ho^((((-1^eo)&(Se|At)|Se&At)>>>31)+nc|0))<<16,No=Vo+-1150833019|0,Fo=(No^Eo)>>>12|(No^Eo)<<20,qo=(Vt+Fo|0)+Ho|0,Ko=(qo^Vo)>>>8|(qo^Vo)<<24,Wo=Ko+No|0,Go=(Wo^Fo)>>>7|(Wo^Fo)<<25,Xo=(Nt+Lo|0)+y0|0,Jo=(Xo^(Bo?w-R|0:w))>>>16|(Xo^(Bo?w-R|0:w))<<16,Yo=Jo+1013904242|0,Zo=(Yo^Lo)>>>12|(Yo^Lo)<<20,Qo=(Ft+Zo|0)+Xo|0,tn=(Qo^Jo)>>>8|(Qo^Jo)<<24,en=tn+Yo|0,on=(en^Zo)>>>7|(en^Zo)<<25,nn=(qt+Mo|0)+w0|0,sn=(nn^((Po?2:0)|((Qe|0)===0|0?1:0)|h))>>>16|(nn^((Po?2:0)|((Qe|0)===0|0?1:0)|h))<<16,rn=sn+-1521486534|0,cn=(rn^Mo)>>>12|(rn^Mo)<<20,an=(Kt+cn|0)+nn|0,ln=(an^sn)>>>8|(an^sn)<<24,fn=ln+rn|0,un=(fn^cn)>>>7|(fn^cn)<<25,vn=(Wt+Go|0)+To|0,pn=(vn^ln)>>>16|(vn^ln)<<16,dn=pn+en|0,hn=(dn^Go)>>>12|(dn^Go)<<20,mn=(Gt+hn|0)+vn|0,xn=(mn^pn)>>>8|(mn^pn)<<24,gn=xn+dn|0,bn=(gn^hn)>>>7|(gn^hn)<<25,yn=(Xt+on|0)+qo|0,wn=(yn^Uo)>>>16|(yn^Uo)<<16,kn=wn+fn|0,_n=(kn^on)>>>12|(kn^on)<<20,An=(Jt+_n|0)+yn|0,Sn=(An^wn)>>>8|(An^wn)<<24,$n=Sn+kn|0,En=($n^_n)>>>7|($n^_n)<<25,Ln=(Yt+un|0)+Qo|0,Mn=(Ln^Ko)>>>16|(Ln^Ko)<<16,On=Mn+Ro|0,Bn=(On^un)>>>12|(On^un)<<20,Pn=(Zt+Bn|0)+Ln|0,Cn=(Pn^Mn)>>>8|(Pn^Mn)<<24,jn=Cn+On|0,In=(jn^Bn)>>>7|(jn^Bn)<<25,zn=(Qt+Do|0)+an|0,Tn=(zn^tn)>>>16|(zn^tn)<<16,Un=Tn+Wo|0,Rn=(Un^Do)>>>12|(Un^Do)<<20,Dn=(te+Rn|0)+zn|0,Hn=(Dn^Tn)>>>8|(Dn^Tn)<<24,Vn=Hn+Un|0,Nn=(Vn^Rn)>>>7|(Vn^Rn)<<25,Fn=(Ht+Nn|0)+mn|0,qn=(Fn^Sn)>>>16|(Fn^Sn)<<16,Kn=qn+jn|0,Wn=(Kn^Nn)>>>12|(Kn^Nn)<<20,Gn=(qt+Wn|0)+Fn|0,Xn=(Gn^qn)>>>8|(Gn^qn)<<24,Jn=Xn+Kn|0,Yn=(Jn^Wn)>>>7|(Jn^Wn)<<25,Zn=(Vt+bn|0)+An|0,Qn=(Zn^Cn)>>>16|(Zn^Cn)<<16,ts=Qn+Vn|0,es=(ts^bn)>>>12|(ts^bn)<<20,os=(Xt+es|0)+Zn|0,ns=(os^Qn)>>>8|(os^Qn)<<24,ss=ns+ts|0,rs=(ss^es)>>>7|(ss^es)<<25,cs=(Kt+En|0)+Pn|0,is=(cs^Hn)>>>16|(cs^Hn)<<16,as=is+gn|0,ls=(as^En)>>>12|(as^En)<<20,fs=(Rt+ls|0)+cs|0,us=(fs^is)>>>8|(fs^is)<<24,vs=us+as|0,ps=(vs^ls)>>>7|(vs^ls)<<25,ds=(Nt+In|0)+Dn|0,hs=(ds^xn)>>>16|(ds^xn)<<16,ms=hs+$n|0,xs=(ms^In)>>>12|(ms^In)<<20,gs=(Zt+xs|0)+ds|0,bs=(gs^hs)>>>8|(gs^hs)<<24,ys=bs+ms|0,ws=(ys^xs)>>>7|(ys^xs)<<25,ks=(Dt+rs|0)+Gn|0,_s=(ks^bs)>>>16|(ks^bs)<<16,As=_s+vs|0,Ss=(As^rs)>>>12|(As^rs)<<20,$s=(Jt+Ss|0)+ks|0,Es=($s^_s)>>>8|($s^_s)<<24,Ls=Es+As|0,Ms=(Ls^Ss)>>>7|(Ls^Ss)<<25,Os=(Yt+ps|0)+os|0,Bs=(Os^Xn)>>>16|(Os^Xn)<<16,Ps=Bs+ys|0,Cs=(Ps^ps)>>>12|(Ps^ps)<<20,js=(Ft+Cs|0)+Os|0,Is=(js^Bs)>>>8|(js^Bs)<<24,zs=Is+Ps|0,Ts=(zs^Cs)>>>7|(zs^Cs)<<25,Us=(Gt+ws|0)+fs|0,Rs=(Us^ns)>>>16|(Us^ns)<<16,Ds=Rs+Jn|0,Hs=(Ds^ws)>>>12|(Ds^ws)<<20,Vs=(Qt+Hs|0)+Us|0,Ns=(Vs^Rs)>>>8|(Vs^Rs)<<24,Fs=Ns+Ds|0,qs=(Fs^Hs)>>>7|(Fs^Hs)<<25,Ks=(te+Yn|0)+gs|0,Ws=(Ks^us)>>>16|(Ks^us)<<16,Gs=Ws+ss|0,Xs=(Gs^Yn)>>>12|(Gs^Yn)<<20,Js=(Wt+Xs|0)+Ks|0,Ys=(Js^Ws)>>>8|(Js^Ws)<<24,Zs=Ys+Gs|0,Qs=(Zs^Xs)>>>7|(Zs^Xs)<<25,tr=(Vt+Qs|0)+$s|0,er=(tr^Is)>>>16|(tr^Is)<<16,or=er+Fs|0,nr=(or^Qs)>>>12|(or^Qs)<<20,sr=(Nt+nr|0)+tr|0,rr=(sr^er)>>>8|(sr^er)<<24,cr=rr+or|0,ir=(cr^nr)>>>7|(cr^nr)<<25,ar=(Xt+Ms|0)+js|0,lr=(ar^Ns)>>>16|(ar^Ns)<<16,fr=lr+Zs|0,ur=(fr^Ms)>>>12|(fr^Ms)<<20,vr=(Yt+ur|0)+ar|0,pr=(vr^lr)>>>8|(vr^lr)<<24,dr=pr+fr|0,hr=(dr^ur)>>>7|(dr^ur)<<25,mr=(Zt+Ts|0)+Vs|0,xr=(mr^Ys)>>>16|(mr^Ys)<<16,gr=xr+Ls|0,br=(gr^Ts)>>>12|(gr^Ts)<<20,yr=(Ht+br|0)+mr|0,wr=(yr^xr)>>>8|(yr^xr)<<24,kr=wr+gr|0,_r=(kr^br)>>>7|(kr^br)<<25,Ar=(Kt+qs|0)+Js|0,Sr=(Ar^Es)>>>16|(Ar^Es)<<16,$r=Sr+zs|0,Er=($r^qs)>>>12|($r^qs)<<20,Lr=(Qt+Er|0)+Ar|0,Mr=(Lr^Sr)>>>8|(Lr^Sr)<<24,Or=Mr+$r|0,Br=(Or^Er)>>>7|(Or^Er)<<25,Pr=(qt+hr|0)+sr|0,Cr=(Pr^Mr)>>>16|(Pr^Mr)<<16,jr=Cr+kr|0,mi=(jr^hr)>>>12|(jr^hr)<<20,Ir=(Ft+mi|0)+Pr|0,zr=(Ir^Cr)>>>8|(Ir^Cr)<<24,Tr=zr+jr|0,Ur=(Tr^mi)>>>7|(Tr^mi)<<25,Rr=(Gt+_r|0)+vr|0,Dr=(Rr^rr)>>>16|(Rr^rr)<<16,xi=Dr+Or|0,Hr=(xi^_r)>>>12|(xi^_r)<<20,Vr=(Rt+Hr|0)+Rr|0,Nr=(Vr^Dr)>>>8|(Vr^Dr)<<24,Fr=Nr+xi|0,qr=(Fr^Hr)>>>7|(Fr^Hr)<<25,Kr=(Jt+Br|0)+yr|0,gi=(Kr^pr)>>>16|(Kr^pr)<<16,Wr=gi+cr|0,Gr=(Wr^Br)>>>12|(Wr^Br)<<20,Xr=(te+Gr|0)+Kr|0,Jr=(Xr^gi)>>>8|(Xr^gi)<<24,Yr=Jr+Wr|0,Zr=(Yr^Gr)>>>7|(Yr^Gr)<<25,bi=(Wt+ir|0)+Lr|0,Qr=(bi^wr)>>>16|(bi^wr)<<16,yi=Qr+dr|0,wi=(yi^ir)>>>12|(yi^ir)<<20,ki=(Dt+wi|0)+bi|0,_i=(ki^Qr)>>>8|(ki^Qr)<<24,Ai=_i+yi|0,Si=(Ai^wi)>>>7|(Ai^wi)<<25,$i=(Xt+Si|0)+Ir|0,xa=($i^Nr)>>>16|($i^Nr)<<16,ga=xa+Yr|0,K0=(ga^Si)>>>12|(ga^Si)<<20,ba=(Kt+K0|0)+$i|0,ya=(ba^xa)>>>8|(ba^xa)<<24,wa=ya+ga|0,ka=(wa^K0)>>>7|(wa^K0)<<25,_a=(Yt+Ur|0)+Vr|0,Aa=(_a^Jr)>>>16|(_a^Jr)<<16,W0=Aa+Ai|0,Sa=(W0^Ur)>>>12|(W0^Ur)<<20,$a=(Gt+Sa|0)+_a|0,Ea=($a^Aa)>>>8|($a^Aa)<<24,La=Ea+W0|0,Ma=(La^Sa)>>>7|(La^Sa)<<25,Oa=(Qt+qr|0)+Xr|0,G0=(Oa^_i)>>>16|(Oa^_i)<<16,Ba=G0+Tr|0,Pa=(Ba^qr)>>>12|(Ba^qr)<<20,Ca=(Vt+Pa|0)+Oa|0,ja=(Ca^G0)>>>8|(Ca^G0)<<24,Ia=ja+Ba|0,za=(Ia^Pa)>>>7|(Ia^Pa)<<25,X0=(Zt+Zr|0)+ki|0,Ua=(X0^zr)>>>16|(X0^zr)<<16,Ra=Ua+Fr|0,Da=(Ra^Zr)>>>12|(Ra^Zr)<<20,Ha=(te+Da|0)+X0|0,Va=(Ha^Ua)>>>8|(Ha^Ua)<<24,Na=Va+Ra|0,Fa=(Na^Da)>>>7|(Na^Da)<<25,qa=(Nt+Ma|0)+ba|0,Ka=(qa^Va)>>>16|(qa^Va)<<16,Wa=Ka+Ia|0,Ga=(Wa^Ma)>>>12|(Wa^Ma)<<20,Xa=(Rt+Ga|0)+qa|0,Ja=(Xa^Ka)>>>8|(Xa^Ka)<<24,Ya=Ja+Wa|0,Za=(Ya^Ga)>>>7|(Ya^Ga)<<25,Ta=(Jt+za|0)+$a|0,Qa=(Ta^ya)>>>16|(Ta^ya)<<16,_2=Qa+Na|0,A2=(_2^za)>>>12|(_2^za)<<20,S2=(Ht+A2|0)+Ta|0,$2=(S2^Qa)>>>8|(S2^Qa)<<24,E2=$2+_2|0,L2=(E2^A2)>>>7|(E2^A2)<<25,M2=(Ft+Fa|0)+Ca|0,O2=(M2^Ea)>>>16|(M2^Ea)<<16,B2=O2+wa|0,P2=(B2^Fa)>>>12|(B2^Fa)<<20,C2=(Wt+P2|0)+M2|0,j2=(C2^O2)>>>8|(C2^O2)<<24,I2=j2+B2|0,z2=(I2^P2)>>>7|(I2^P2)<<25,T2=(Dt+ka|0)+Ha|0,U2=(T2^ja)>>>16|(T2^ja)<<16,R2=U2+La|0,D2=(R2^ka)>>>12|(R2^ka)<<20,H2=(qt+D2|0)+T2|0,V2=(H2^U2)>>>8|(H2^U2)<<24,N2=V2+R2|0,F2=(N2^D2)>>>7|(N2^D2)<<25,q2=(Yt+F2|0)+Xa|0,K2=(q2^$2)>>>16|(q2^$2)<<16,W2=K2+I2|0,G2=(W2^F2)>>>12|(W2^F2)<<20,X2=(Zt+G2|0)+q2|0,J2=(X2^K2)>>>8|(X2^K2)<<24,Y2=J2+W2|0,Z2=(Y2^G2)>>>7|(Y2^G2)<<25,Q2=(Gt+Za|0)+S2|0,tl=(Q2^j2)>>>16|(Q2^j2)<<16,el=tl+N2|0,ol=(el^Za)>>>12|(el^Za)<<20,nl=(Jt+ol|0)+Q2|0,sl=(nl^tl)>>>8|(nl^tl)<<24,rl=sl+el|0,cl=(rl^ol)>>>7|(rl^ol)<<25,il=(te+L2|0)+C2|0,al=(il^V2)>>>16|(il^V2)<<16,ll=al+Ya|0,fl=(ll^L2)>>>12|(ll^L2)<<20,ul=(Xt+fl|0)+il|0,vl=(ul^al)>>>8|(ul^al)<<24,pl=vl+ll|0,dl=(pl^fl)>>>7|(pl^fl)<<25,hl=(Qt+z2|0)+H2|0,ml=(hl^Ja)>>>16|(hl^Ja)<<16,xl=ml+E2|0,gl=(xl^z2)>>>12|(xl^z2)<<20,bl=(Wt+gl|0)+hl|0,yl=(bl^ml)>>>8|(bl^ml)<<24,wl=yl+xl|0,kl=(wl^gl)>>>7|(wl^gl)<<25,_l=(Kt+cl|0)+X2|0,Al=(_l^yl)>>>16|(_l^yl)<<16,Sl=Al+pl|0,$l=(Sl^cl)>>>12|(Sl^cl)<<20,El=(Ht+$l|0)+_l|0,Ll=(El^Al)>>>8|(El^Al)<<24,Ml=Ll+Sl|0,Ol=(Ml^$l)>>>7|(Ml^$l)<<25,Bl=(Ft+dl|0)+nl|0,Pl=(Bl^J2)>>>16|(Bl^J2)<<16,Cl=Pl+wl|0,jl=(Cl^dl)>>>12|(Cl^dl)<<20,Il=(Vt+jl|0)+Bl|0,zl=(Il^Pl)>>>8|(Il^Pl)<<24,Tl=zl+Cl|0,Ul=(Tl^jl)>>>7|(Tl^jl)<<25,Rl=(Rt+kl|0)+ul|0,Dl=(Rl^sl)>>>16|(Rl^sl)<<16,Hl=Dl+Y2|0,yf=(Hl^kl)>>>12|(Hl^kl)<<20,Vl=(Dt+yf|0)+Rl|0,Nl=(Vl^Dl)>>>8|(Vl^Dl)<<24,Fl=Nl+Hl|0,ql=(Fl^yf)>>>7|(Fl^yf)<<25,Kl=(qt+Z2|0)+bl|0,Wl=(Kl^vl)>>>16|(Kl^vl)<<16,wf=Wl+rl|0,Gl=(wf^Z2)>>>12|(wf^Z2)<<20,Xl=(Nt+Gl|0)+Kl|0,Jl=(Xl^Wl)>>>8|(Xl^Wl)<<24,Yl=Jl+wf|0,Zl=(Yl^Gl)>>>7|(Yl^Gl)<<25,Ql=(Gt+Zl|0)+El|0,kf=(Ql^zl)>>>16|(Ql^zl)<<16,tf=kf+Fl|0,ef=(tf^Zl)>>>12|(tf^Zl)<<20,of=(Qt+ef|0)+Ql|0,nf=(of^kf)>>>8|(of^kf)<<24,sf=nf+tf|0,rf=(sf^ef)>>>7|(sf^ef)<<25,_f=(Jt+Ol|0)+Il|0,cf=(_f^Nl)>>>16|(_f^Nl)<<16,Gf=cf+Yl|0,Xf=(Gf^Ol)>>>12|(Gf^Ol)<<20,Jf=(Ft+Xf|0)+_f|0,Yf=(Jf^cf)>>>8|(Jf^cf)<<24,Zf=Yf+Gf|0,Qf=(Zf^Xf)>>>7|(Zf^Xf)<<25,tu=(Wt+Ul|0)+Vl|0,eu=(tu^Jl)>>>16|(tu^Jl)<<16,L1=eu+Ml|0,M1=(L1^Ul)>>>12|(L1^Ul)<<20,O1=(Yt+M1|0)+tu|0,B1=(O1^eu)>>>8|(O1^eu)<<24,P1=B1+L1|0,C1=(P1^M1)>>>7|(P1^M1)<<25,j1=(te+ql|0)+Xl|0,I1=(j1^Ll)>>>16|(j1^Ll)<<16,z1=I1+Tl|0,T1=(z1^ql)>>>12|(z1^ql)<<20,U1=(Dt+T1|0)+j1|0,R1=(U1^I1)>>>8|(U1^I1)<<24,D1=R1+z1|0,H1=(D1^T1)>>>7|(D1^T1)<<25,V1=(Zt+Qf|0)+of|0,N1=(V1^R1)>>>16|(V1^R1)<<16,F1=N1+P1|0,q1=(F1^Qf)>>>12|(F1^Qf)<<20,K1=(Vt+q1|0)+V1|0,W1=(K1^N1)>>>8|(K1^N1)<<24,G1=W1+F1|0,X1=(G1^q1)>>>7|(G1^q1)<<25,J1=(Rt+C1|0)+Jf|0,Y1=(J1^nf)>>>16|(J1^nf)<<16,Z1=Y1+D1|0,Q1=(Z1^C1)>>>12|(Z1^C1)<<20,tv=(Xt+Q1|0)+J1|0,ev=(tv^Y1)>>>8|(tv^Y1)<<24,ov=ev+Z1|0,nv=(ov^Q1)>>>7|(ov^Q1)<<25,sv=(Ht+H1|0)+O1|0,rv=(sv^Yf)>>>16|(sv^Yf)<<16,cv=rv+sf|0,iv=(cv^H1)>>>12|(cv^H1)<<20,av=(qt+iv|0)+sv|0,lv=(av^rv)>>>8|(av^rv)<<24,fv=lv+cv|0,uv=(fv^iv)>>>7|(fv^iv)<<25,vv=(Nt+rf|0)+U1|0,pv=(vv^B1)>>>16|(vv^B1)<<16,dv=pv+Zf|0,hv=(dv^rf)>>>12|(dv^rf)<<20,mv=(Kt+hv|0)+vv|0,xv=(mv^pv)>>>8|(mv^pv)<<24,gv=xv+dv|0,bv=(gv^hv)>>>7|(gv^hv)<<25,yv=(Jt+bv|0)+K1|0,wv=(yv^ev)>>>16|(yv^ev)<<16,kv=wv+fv|0,_v=(kv^bv)>>>12|(kv^bv)<<20,Av=(te+_v|0)+yv|0,Sv=(Av^wv)>>>8|(Av^wv)<<24,$v=Sv+kv|0,Ev=($v^_v)>>>7|($v^_v)<<25,Lv=(Ft+X1|0)+tv|0,Mv=(Lv^lv)>>>16|(Lv^lv)<<16,Ov=Mv+gv|0,Bv=(Ov^X1)>>>12|(Ov^X1)<<20,Pv=(Rt+Bv|0)+Lv|0,Cv=(Pv^Mv)>>>8|(Pv^Mv)<<24,jv=Cv+Ov|0,Iv=(jv^Bv)>>>7|(jv^Bv)<<25,zv=(Dt+nv|0)+av|0,Tv=(zv^xv)>>>16|(zv^xv)<<16,Uv=Tv+G1|0,Rv=(Uv^nv)>>>12|(Uv^nv)<<20,Dv=(Gt+Rv|0)+zv|0,Hv=(Dv^Tv)>>>8|(Dv^Tv)<<24,Vv=Hv+Uv|0,Nv=(Vv^Rv)>>>7|(Vv^Rv)<<25,Fv=(Wt+uv|0)+mv|0,qv=(Fv^W1)>>>16|(Fv^W1)<<16,Kv=qv+ov|0,Wv=(Kv^uv)>>>12|(Kv^uv)<<20,Gv=(qt+Wv|0)+Fv|0,Xv=(Gv^qv)>>>8|(Gv^qv)<<24,Jv=Xv+Kv|0,Yv=(Jv^Wv)>>>7|(Jv^Wv)<<25,Zv=(Qt+Iv|0)+Av|0,Qv=(Zv^Xv)>>>16|(Zv^Xv)<<16,tp=Qv+Vv|0,ep=(tp^Iv)>>>12|(tp^Iv)<<20,op=(Xt+ep|0)+Zv|0,Qp=(op^Qv)>>>8|(op^Qv)<<24,np=Qp+tp|0,sp=(Ht+Nv|0)+Pv|0,rp=(sp^Sv)>>>16|(sp^Sv)<<16,cp=rp+Jv|0,ip=(cp^Nv)>>>12|(cp^Nv)<<20,ap=(Yt+ip|0)+sp|0,td=(ap^rp)>>>8|(ap^rp)<<24,lp=td+cp|0,fp=(Vt+Yv|0)+Dv|0,up=(fp^Cv)>>>16|(fp^Cv)<<16,vp=up+$v|0,pp=(vp^Yv)>>>12|(vp^Yv)<<20,dp=(Nt+pp|0)+fp|0,ed=(dp^up)>>>8|(dp^up)<<24,hp=ed+vp|0,mp=(Kt+Ev|0)+Gv|0,xp=(mp^Hv)>>>16|(mp^Hv)<<16,gp=xp+jv|0,bp=(gp^Ev)>>>12|(gp^Ev)<<20,yp=(Zt+bp|0)+mp|0,od=(yp^xp)>>>8|(yp^xp)<<24,wp=od+gp|0,nd=hp^op,sd=wp^ap,rd=np^dp,cd=lp^yp,id=td^((wp^bp)>>>7|(wp^bp)<<25),ad=ed^((np^ep)>>>7|(np^ep)<<25),ld=od^((lp^ip)>>>7|(lp^ip)<<25),fd=Qp^((hp^pp)>>>7|(hp^pp)<<25),ud=Po?0:1+Qe|0,vd=1+Hc|0;if(Oo>>>0<Ut>>>0|0){Ve=Oo,Ne=vd,Fe=nd,qe=sd,Ke=rd,We=cd,Ge=id,Xe=ad,Je=ld,Ye=fd,Ze=ud;continue a}Ve=Oo,Ne=vd,Fe=nd,qe=sd,Ke=rd,We=cd,Ge=id,Xe=ad,Je=ld,Ye=fd,Ze=ud;break a}let i0=Ve,a0=Ne,l0=Fe,f0=qe,u0=Ke,v0=We,p0=Ge,d0=Xe,h0=Je,m0=Ye,x0=Ze;o0=i0,mo=a0,xo=l0,go=f0,bo=u0,yo=v0,wo=p0,ko=d0,_o=h0,Ao=m0,So=x0}let Oc=mo,Bc=xo,Pc=go,Cc=bo,jc=yo,Ic=wo,zc=ko,Tc=_o,Uc=Ao,Rc=So;i:{if(((Rc|0)===0|0|0)===0|0)break i;let he=(96+(n[((24+Math.imul(2144,G)|0)>>>0)+0>>>2]<<5)|0)+Math.imul(2144,G)|0;n[(he>>>0)+0>>>2]=Bc;let me=4+he|0;n[(me>>>0)+0>>>2]=Pc;let xe=4+me|0;n[(xe>>>0)+0>>>2]=Cc;let ge=4+xe|0;n[(ge>>>0)+0>>>2]=jc;let be=4+ge|0;n[(be>>>0)+0>>>2]=Ic;let ye=4+be|0;n[(ye>>>0)+0>>>2]=zc;let we=4+ye|0;n[(we>>>0)+0>>>2]=Tc,n[((4+we|0)>>>0)+0>>>2]=Uc,i(G,((Oc|0)===(V|0)|0)&k)}let n0=1+Se|0;Wi=Oc,Gi=n0,Xi=Bc,ro=Pc,co=Cc,io=jc,ao=Ic,De=zc,It=Tc,Lc=Uc,zt=Rc}let Mc=Wi,le=Gi,Ji=Xi,fe=ro,Yi=co,ue=io,Zi=ao,ve=De,Qi=It,pe=Lc,t0=zt;if(Mc>>>0<V>>>0|0){xc=Mc,gc=le,bc=Ji,yc=fe,wc=Yi,kc=ue,_c=Zi,Ac=ve,Sc=Qi,$c=pe,Ec=t0;continue c}xc=Mc,gc=le,bc=Ji,yc=fe,wc=Yi,kc=ue,_c=Zi,Ac=ve,Sc=Qi,$c=pe,Ec=t0;break c}let da=xc,Ti=gc,Ui=bc,Ri=yc,Di=wc,Hi=kc,Vi=_c,Ni=Ac,Fi=Sc,qi=$c,ha=Ec;_0=da,cc=Ti,ic=Ui,A0=Ri,S0=Di,Bi=Hi,Pi=Vi,Ci=Ni,ji=Fi,Ii=qi,zi=ha}let ea=_0,oa=cc,na=ic,sa=A0,ra=S0,ca=Bi,ia=Pi,ac=Ci,lc=ji,fc=Ii,uc=zi;Be=ea,Pe=oa,Ce=na,St=sa,_e=ra,se=ca,yt=ia,$t=ac,Et=lc,Lt=fc,Mt=uc}let je=Ce,Ie=St,sc=_e,Mi=se,Oi=yt,rc=$t,Ae=Et,so=Lt,ze=Mt;n[((20+Math.imul(2144,G)|0)>>>0)+0>>>2]=ze;n:{o:{if(((ze|0)!==0|0|0)===0|0)break o;n[(et>>>0)+0>>>2]=je;let Ot=4+et|0;n[(Ot>>>0)+0>>>2]=Ie;let re=4+Ot|0;n[(re>>>0)+0>>>2]=sc;let Bt=4+re|0;n[(Bt>>>0)+0>>>2]=Mi;let Pt=4+Bt|0;n[(Pt>>>0)+0>>>2]=Oi;let Ct=4+Pt|0;n[(Ct>>>0)+0>>>2]=rc;let jt=4+Ct|0;n[(jt>>>0)+0>>>2]=Ae,n[((4+jt|0)>>>0)+0>>>2]=so;break n}r.copyWithin((64+Math.imul(2144,G)|0)>>>0,(32+Math.imul(2144,G)|0)>>>0,((32+Math.imul(2144,G)|0)>>>0)+32)}P=D}let K=1+P|0;if(K>>>0<y>>>0|0){st=K;continue t}st=K;break t}j=st}U=j}}function v(A,y,V,nt,J,w,k,R,U){let N=0;e:{let j=N;if((j>>>0<y>>>0|0|0)===0|0){N=j;break e}let ct=j;{let O=ct;t:for(;;){let rt=O;{let G=rt,Y=G+A|0,et=32+Math.imul(2144,U)|0,it=Math.imul(2144,U),ut=n[((16+Math.imul(2144,U)|0)>>>0)+0>>>2],F=1|ut,Z=2|ut,Q=n[(et>>>0)+0>>>2],at=4+et|0,X=n[(at>>>0)+0>>>2],ot=4+at|0,lt=n[(ot>>>0)+0>>>2],pt=4+ot|0,dt=n[(pt>>>0)+0>>>2],_t=4+pt|0,d=n[(_t>>>0)+0>>>2],f=4+_t|0,l=n[(f>>>0)+0>>>2],p=4+f|0,h=n[(p>>>0)+0>>>2],x=n[((4+p|0)>>>0)+0>>>2],b=n[(it>>>0)+0>>>2],g=n[(it>>>0)+4>>>2],L=Y+b|0,_=(((-1^L)&(Y|b)|Y&b)>>>31)+g|0,z=0,B=Q,S=X,E=lt,T=dt,C=d,W=l,M=h,ft=x;n:{let sc=z,Mi=B,Oi=S,rc=E,Ae=T,so=C,ze=W,Ot=M,re=ft;if((sc>>>0<16|0|0)===0|0){z=sc,B=Mi,S=Oi,E=rc,T=Ae,C=so,W=ze,M=Ot,ft=re;break n}let Bt=sc,Pt=Mi,Ct=Oi,jt=rc,Te=Ae,Ue=so,ce=ze,Re=Ot,ie=re;{let Ii=Bt,zi=Pt,ea=Ct,oa=jt,na=Te,sa=Ue,ra=ce,ca=Re,ia=ie,ac=Ii,lc=zi,fc=ea,uc=oa,vc=na,pc=sa,dc=ra,hc=ca,mc=ia;c:for(;;){let yc=ac,wc=lc,kc=fc,_c=uc,Ac=vc,Sc=pc,$c=dc,Ec=hc,da=mc,Ti=yc,Ui=wc,Ri=kc,Di=_c,Hi=Ac,Vi=Sc,Ni=$c,Fi=Ec,qi=da;{let ae=Ti,ma=Ui,Wi=Ri,Gi=Di,Xi=Hi,ro=Vi,co=Ni,io=Fi,ao=qi,De=((2144+((nt+ae|0)<<6)|0)+(Y<<10)|0)+(Math.imul(R,U)<<6)|0,It=n[(De>>>0)+0>>>2],Lc=4+De|0,zt=n[(Lc>>>0)+0>>>2],Mc=4+Lc|0,le=n[(Mc>>>0)+0>>>2],Ji=4+Mc|0,fe=n[(Ji>>>0)+0>>>2],Yi=4+Ji|0,ue=n[(Yi>>>0)+0>>>2],Zi=4+Yi|0,ve=n[(Zi>>>0)+0>>>2],Qi=4+Zi|0,pe=n[(Qi>>>0)+0>>>2],t0=4+Qi|0,de=n[(t0>>>0)+0>>>2],Se=4+t0|0,$e=n[(Se>>>0)+0>>>2],j0=4+Se|0,Ee=n[(j0>>>0)+0>>>2],I0=4+j0|0,Le=n[(I0>>>0)+0>>>2],z0=4+I0|0,Me=n[(z0>>>0)+0>>>2],T0=4+z0|0,Tt=n[(T0>>>0)+0>>>2],e0=4+T0|0,Ut=n[(e0>>>0)+0>>>2],lo=4+e0|0,wt=n[(lo>>>0)+0>>>2],kt=n[((4+lo|0)>>>0)+0>>>2];n[(De>>>0)+0>>>2]=0;let fo=4+De|0;n[(fo>>>0)+0>>>2]=0;let uo=4+fo|0;n[(uo>>>0)+0>>>2]=0;let vo=4+uo|0;n[(vo>>>0)+0>>>2]=0;let po=4+vo|0;n[(po>>>0)+0>>>2]=0;let ho=4+po|0;n[(ho>>>0)+0>>>2]=0;let U0=4+ho|0;n[(U0>>>0)+0>>>2]=0;let R0=4+U0|0;n[(R0>>>0)+0>>>2]=0;let D0=4+R0|0;n[(D0>>>0)+0>>>2]=0;let H0=4+D0|0;n[(H0>>>0)+0>>>2]=0;let V0=4+H0|0;n[(V0>>>0)+0>>>2]=0;let N0=4+V0|0;n[(N0>>>0)+0>>>2]=0;let F0=4+N0|0;n[(F0>>>0)+0>>>2]=0;let q0=4+F0|0;n[(q0>>>0)+0>>>2]=0;let o0=4+q0|0;n[(o0>>>0)+0>>>2]=0,n[((4+o0|0)>>>0)+0>>>2]=0;let mo=(It+ro|0)+ma|0,xo=(mo^L)>>>16|(mo^L)<<16,go=xo+1779033703|0,bo=(go^ro)>>>12|(go^ro)<<20,yo=(zt+bo|0)+mo|0,wo=(yo^xo)>>>8|(yo^xo)<<24,ko=wo+go|0,_o=(ko^bo)>>>7|(ko^bo)<<25,Ao=(le+co|0)+Wi|0,So=(Ao^_)>>>16|(Ao^_)<<16,Oc=So+-1150833019|0,Bc=(Oc^co)>>>12|(Oc^co)<<20,Pc=(fe+Bc|0)+Ao|0,Cc=(Pc^So)>>>8|(Pc^So)<<24,jc=Cc+Oc|0,Ic=(jc^Bc)>>>7|(jc^Bc)<<25,zc=(ue+io|0)+Gi|0,Tc=(zc^(J-((Y|0)===(w|0)|0&&(ae|0)===15|0?k:0)|0))>>>16|(zc^(J-((Y|0)===(w|0)|0&&(ae|0)===15|0?k:0)|0))<<16,Uc=Tc+1013904242|0,Rc=(Uc^io)>>>12|(Uc^io)<<20,n0=(ve+Rc|0)+zc|0,He=(n0^Tc)>>>8|(n0^Tc)<<24,he=He+Uc|0,me=(he^Rc)>>>7|(he^Rc)<<25,xe=(pe+ao|0)+Xi|0,ge=(xe^((ae|0)===0|0?F:(ae|0)===15|0?Z:ut))>>>16|(xe^((ae|0)===0|0?F:(ae|0)===15|0?Z:ut))<<16,be=ge+-1521486534|0,ye=(be^ao)>>>12|(be^ao)<<20,we=(de+ye|0)+xe|0,s0=(we^ge)>>>8|(we^ge)<<24,r0=s0+be|0,c0=(r0^ye)>>>7|(r0^ye)<<25,Ve=($e+Ic|0)+yo|0,Ne=(Ve^s0)>>>16|(Ve^s0)<<16,Fe=Ne+he|0,qe=(Fe^Ic)>>>12|(Fe^Ic)<<20,Ke=(Ee+qe|0)+Ve|0,We=(Ke^Ne)>>>8|(Ke^Ne)<<24,Ge=We+Fe|0,Xe=(Ge^qe)>>>7|(Ge^qe)<<25,Je=(Le+me|0)+Pc|0,Ye=(Je^wo)>>>16|(Je^wo)<<16,Ze=Ye+r0|0,i0=(Ze^me)>>>12|(Ze^me)<<20,a0=(Me+i0|0)+Je|0,l0=(a0^Ye)>>>8|(a0^Ye)<<24,f0=l0+Ze|0,u0=(f0^i0)>>>7|(f0^i0)<<25,v0=(Tt+c0|0)+n0|0,p0=(v0^Cc)>>>16|(v0^Cc)<<16,d0=p0+ko|0,h0=(d0^c0)>>>12|(d0^c0)<<20,m0=(Ut+h0|0)+v0|0,x0=(m0^p0)>>>8|(m0^p0)<<24,Dc=x0+d0|0,Hc=(Dc^h0)>>>7|(Dc^h0)<<25,g0=(wt+_o|0)+we|0,b0=(g0^He)>>>16|(g0^He)<<16,y0=b0+jc|0,w0=(y0^_o)>>>12|(y0^_o)<<20,$o=(kt+w0|0)+g0|0,Eo=($o^b0)>>>8|($o^b0)<<24,Lo=Eo+y0|0,Mo=(Lo^w0)>>>7|(Lo^w0)<<25,Qe=(le+Mo|0)+Ke|0,Oo=(Qe^l0)>>>16|(Qe^l0)<<16,Bo=Oo+Dc|0,Po=(Bo^Mo)>>>12|(Bo^Mo)<<20,to=(pe+Po|0)+Qe|0,Rt=(to^Oo)>>>8|(to^Oo)<<24,Vc=Rt+Bo|0,Dt=(Vc^Po)>>>7|(Vc^Po)<<25,Nc=(fe+Xe|0)+a0|0,Ht=(Nc^x0)>>>16|(Nc^x0)<<16,Fc=Ht+Lo|0,Vt=(Fc^Xe)>>>12|(Fc^Xe)<<20,qc=(Le+Vt|0)+Nc|0,Nt=(qc^Ht)>>>8|(qc^Ht)<<24,Kc=Nt+Fc|0,Ft=(Kc^Vt)>>>7|(Kc^Vt)<<25,Wc=(de+u0|0)+m0|0,qt=(Wc^Eo)>>>16|(Wc^Eo)<<16,Gc=qt+Ge|0,Kt=(Gc^u0)>>>12|(Gc^u0)<<20,Xc=(It+Kt|0)+Wc|0,Wt=(Xc^qt)>>>8|(Xc^qt)<<24,Jc=Wt+Gc|0,Gt=(Jc^Kt)>>>7|(Jc^Kt)<<25,Yc=(ue+Hc|0)+$o|0,Xt=(Yc^We)>>>16|(Yc^We)<<16,Zc=Xt+f0|0,Jt=(Zc^Hc)>>>12|(Zc^Hc)<<20,Qc=(Ut+Jt|0)+Yc|0,Yt=(Qc^Xt)>>>8|(Qc^Xt)<<24,ti=Yt+Zc|0,Zt=(ti^Jt)>>>7|(ti^Jt)<<25,ei=(zt+Ft|0)+to|0,Qt=(ei^Yt)>>>16|(ei^Yt)<<16,te=Qt+Jc|0,oi=(te^Ft)>>>12|(te^Ft)<<20,ni=(Me+oi|0)+ei|0,si=(ni^Qt)>>>8|(ni^Qt)<<24,ri=si+te|0,ci=(ri^oi)>>>7|(ri^oi)<<25,ii=(Tt+Gt|0)+qc|0,ai=(ii^Rt)>>>16|(ii^Rt)<<16,li=ai+ti|0,fi=(li^Gt)>>>12|(li^Gt)<<20,ui=(ve+fi|0)+ii|0,vi=(ui^ai)>>>8|(ui^ai)<<24,pi=vi+li|0,di=(pi^fi)>>>7|(pi^fi)<<25,hi=(Ee+Zt|0)+Xc|0,Co=(hi^Nt)>>>16|(hi^Nt)<<16,eo=Co+Vc|0,jo=(eo^Zt)>>>12|(eo^Zt)<<20,Io=(wt+jo|0)+hi|0,zo=(Io^Co)>>>8|(Io^Co)<<24,To=zo+eo|0,Uo=(To^jo)>>>7|(To^jo)<<25,Ro=(kt+Dt|0)+Qc|0,Do=(Ro^Wt)>>>16|(Ro^Wt)<<16,Ho=Do+Kc|0,Vo=(Ho^Dt)>>>12|(Ho^Dt)<<20,No=($e+Vo|0)+Ro|0,Fo=(No^Do)>>>8|(No^Do)<<24,qo=Fo+Ho|0,Ko=(qo^Vo)>>>7|(qo^Vo)<<25,Wo=(fe+Ko|0)+ni|0,Go=(Wo^vi)>>>16|(Wo^vi)<<16,Xo=Go+To|0,Jo=(Xo^Ko)>>>12|(Xo^Ko)<<20,Yo=(ue+Jo|0)+Wo|0,Zo=(Yo^Go)>>>8|(Yo^Go)<<24,Qo=Zo+Xo|0,tn=(Qo^Jo)>>>7|(Qo^Jo)<<25,en=(Le+ci|0)+ui|0,on=(en^zo)>>>16|(en^zo)<<16,nn=on+qo|0,sn=(nn^ci)>>>12|(nn^ci)<<20,rn=(Tt+sn|0)+en|0,cn=(rn^on)>>>8|(rn^on)<<24,an=cn+nn|0,ln=(an^sn)>>>7|(an^sn)<<25,fn=(Ut+di|0)+Io|0,un=(fn^Fo)>>>16|(fn^Fo)<<16,vn=un+ri|0,pn=(vn^di)>>>12|(vn^di)<<20,dn=(le+pn|0)+fn|0,hn=(dn^un)>>>8|(dn^un)<<24,mn=hn+vn|0,xn=(mn^pn)>>>7|(mn^pn)<<25,gn=(de+Uo|0)+No|0,bn=(gn^si)>>>16|(gn^si)<<16,yn=bn+pi|0,wn=(yn^Uo)>>>12|(yn^Uo)<<20,kn=(wt+wn|0)+gn|0,_n=(kn^bn)>>>8|(kn^bn)<<24,An=_n+yn|0,Sn=(An^wn)>>>7|(An^wn)<<25,$n=(pe+ln|0)+Yo|0,En=($n^_n)>>>16|($n^_n)<<16,Ln=En+mn|0,Mn=(Ln^ln)>>>12|(Ln^ln)<<20,On=(ve+Mn|0)+$n|0,Bn=(On^En)>>>8|(On^En)<<24,Pn=Bn+Ln|0,Cn=(Pn^Mn)>>>7|(Pn^Mn)<<25,jn=(Ee+xn|0)+rn|0,In=(jn^Zo)>>>16|(jn^Zo)<<16,zn=In+An|0,Tn=(zn^xn)>>>12|(zn^xn)<<20,Un=(It+Tn|0)+jn|0,Rn=(Un^In)>>>8|(Un^In)<<24,Dn=Rn+zn|0,Hn=(Dn^Tn)>>>7|(Dn^Tn)<<25,Vn=(Me+Sn|0)+dn|0,Nn=(Vn^cn)>>>16|(Vn^cn)<<16,Fn=Nn+Qo|0,qn=(Fn^Sn)>>>12|(Fn^Sn)<<20,Kn=(kt+qn|0)+Vn|0,Wn=(Kn^Nn)>>>8|(Kn^Nn)<<24,Gn=Wn+Fn|0,Xn=(Gn^qn)>>>7|(Gn^qn)<<25,Jn=($e+tn|0)+kn|0,Yn=(Jn^hn)>>>16|(Jn^hn)<<16,Zn=Yn+an|0,Qn=(Zn^tn)>>>12|(Zn^tn)<<20,ts=(zt+Qn|0)+Jn|0,es=(ts^Yn)>>>8|(ts^Yn)<<24,os=es+Zn|0,ns=(os^Qn)>>>7|(os^Qn)<<25,ss=(Le+ns|0)+On|0,rs=(ss^Rn)>>>16|(ss^Rn)<<16,cs=rs+Gn|0,is=(cs^ns)>>>12|(cs^ns)<<20,as=(de+is|0)+ss|0,ls=(as^rs)>>>8|(as^rs)<<24,fs=ls+cs|0,us=(fs^is)>>>7|(fs^is)<<25,vs=(Tt+Cn|0)+Un|0,ps=(vs^Wn)>>>16|(vs^Wn)<<16,ds=ps+os|0,hs=(ds^Cn)>>>12|(ds^Cn)<<20,ms=(Ee+hs|0)+vs|0,xs=(ms^ps)>>>8|(ms^ps)<<24,gs=xs+ds|0,bs=(gs^hs)>>>7|(gs^hs)<<25,ys=(wt+Hn|0)+Kn|0,ws=(ys^es)>>>16|(ys^es)<<16,ks=ws+Pn|0,_s=(ks^Hn)>>>12|(ks^Hn)<<20,As=(fe+_s|0)+ys|0,Ss=(As^ws)>>>8|(As^ws)<<24,$s=Ss+ks|0,Es=($s^_s)>>>7|($s^_s)<<25,Ls=(Ut+Xn|0)+ts|0,Ms=(Ls^Bn)>>>16|(Ls^Bn)<<16,Os=Ms+Dn|0,Bs=(Os^Xn)>>>12|(Os^Xn)<<20,Ps=(kt+Bs|0)+Ls|0,Cs=(Ps^Ms)>>>8|(Ps^Ms)<<24,js=Cs+Os|0,Is=(js^Bs)>>>7|(js^Bs)<<25,zs=(ue+bs|0)+as|0,Ts=(zs^Cs)>>>16|(zs^Cs)<<16,Us=Ts+$s|0,Rs=(Us^bs)>>>12|(Us^bs)<<20,Ds=(It+Rs|0)+zs|0,Hs=(Ds^Ts)>>>8|(Ds^Ts)<<24,Vs=Hs+Us|0,Ns=(Vs^Rs)>>>7|(Vs^Rs)<<25,Fs=(Me+Es|0)+ms|0,qs=(Fs^ls)>>>16|(Fs^ls)<<16,Ks=qs+js|0,Ws=(Ks^Es)>>>12|(Ks^Es)<<20,Gs=(le+Ws|0)+Fs|0,Xs=(Gs^qs)>>>8|(Gs^qs)<<24,Js=Xs+Ks|0,Ys=(Js^Ws)>>>7|(Js^Ws)<<25,Zs=(ve+Is|0)+As|0,Qs=(Zs^xs)>>>16|(Zs^xs)<<16,tr=Qs+fs|0,er=(tr^Is)>>>12|(tr^Is)<<20,or=($e+er|0)+Zs|0,nr=(or^Qs)>>>8|(or^Qs)<<24,sr=nr+tr|0,rr=(sr^er)>>>7|(sr^er)<<25,cr=(zt+us|0)+Ps|0,ir=(cr^Ss)>>>16|(cr^Ss)<<16,ar=ir+gs|0,lr=(ar^us)>>>12|(ar^us)<<20,fr=(pe+lr|0)+cr|0,ur=(fr^ir)>>>8|(fr^ir)<<24,vr=ur+ar|0,pr=(vr^lr)>>>7|(vr^lr)<<25,dr=(Tt+pr|0)+Ds|0,hr=(dr^Xs)>>>16|(dr^Xs)<<16,mr=hr+sr|0,xr=(mr^pr)>>>12|(mr^pr)<<20,gr=(Ut+xr|0)+dr|0,br=(gr^hr)>>>8|(gr^hr)<<24,yr=br+mr|0,wr=(yr^xr)>>>7|(yr^xr)<<25,kr=(Ee+Ns|0)+Gs|0,_r=(kr^nr)>>>16|(kr^nr)<<16,Ar=_r+vr|0,Sr=(Ar^Ns)>>>12|(Ar^Ns)<<20,$r=(Me+Sr|0)+kr|0,Er=($r^_r)>>>8|($r^_r)<<24,Lr=Er+Ar|0,Mr=(Lr^Sr)>>>7|(Lr^Sr)<<25,Or=(kt+Ys|0)+or|0,Br=(Or^ur)>>>16|(Or^ur)<<16,Pr=Br+Vs|0,Cr=(Pr^Ys)>>>12|(Pr^Ys)<<20,jr=(Le+Cr|0)+Or|0,mi=(jr^Br)>>>8|(jr^Br)<<24,Ir=mi+Pr|0,zr=(Ir^Cr)>>>7|(Ir^Cr)<<25,Tr=(wt+rr|0)+fr|0,Ur=(Tr^Hs)>>>16|(Tr^Hs)<<16,Rr=Ur+Js|0,Dr=(Rr^rr)>>>12|(Rr^rr)<<20,xi=($e+Dr|0)+Tr|0,Hr=(xi^Ur)>>>8|(xi^Ur)<<24,Vr=Hr+Rr|0,Nr=(Vr^Dr)>>>7|(Vr^Dr)<<25,Fr=(de+Mr|0)+gr|0,qr=(Fr^Hr)>>>16|(Fr^Hr)<<16,Kr=qr+Ir|0,gi=(Kr^Mr)>>>12|(Kr^Mr)<<20,Wr=(le+gi|0)+Fr|0,Gr=(Wr^qr)>>>8|(Wr^qr)<<24,Xr=Gr+Kr|0,Jr=(Xr^gi)>>>7|(Xr^gi)<<25,Yr=(ve+zr|0)+$r|0,Zr=(Yr^br)>>>16|(Yr^br)<<16,bi=Zr+Vr|0,Qr=(bi^zr)>>>12|(bi^zr)<<20,yi=(fe+Qr|0)+Yr|0,wi=(yi^Zr)>>>8|(yi^Zr)<<24,ki=wi+bi|0,_i=(ki^Qr)>>>7|(ki^Qr)<<25,Ai=(It+Nr|0)+jr|0,Si=(Ai^Er)>>>16|(Ai^Er)<<16,$i=Si+yr|0,xa=($i^Nr)>>>12|($i^Nr)<<20,ga=(zt+xa|0)+Ai|0,K0=(ga^Si)>>>8|(ga^Si)<<24,ba=K0+$i|0,ya=(ba^xa)>>>7|(ba^xa)<<25,wa=(pe+wr|0)+xi|0,ka=(wa^mi)>>>16|(wa^mi)<<16,_a=ka+Lr|0,Aa=(_a^wr)>>>12|(_a^wr)<<20,W0=(ue+Aa|0)+wa|0,Sa=(W0^ka)>>>8|(W0^ka)<<24,$a=Sa+_a|0,Ea=($a^Aa)>>>7|($a^Aa)<<25,La=(Ee+Ea|0)+Wr|0,Ma=(La^wi)>>>16|(La^wi)<<16,Oa=Ma+ba|0,G0=(Oa^Ea)>>>12|(Oa^Ea)<<20,Ba=(wt+G0|0)+La|0,Pa=(Ba^Ma)>>>8|(Ba^Ma)<<24,Ca=Pa+Oa|0,ja=(Ca^G0)>>>7|(Ca^G0)<<25,Ia=(Me+Jr|0)+yi|0,za=(Ia^K0)>>>16|(Ia^K0)<<16,X0=za+$a|0,Ua=(X0^Jr)>>>12|(X0^Jr)<<20,Ra=(ve+Ua|0)+Ia|0,Da=(Ra^za)>>>8|(Ra^za)<<24,Ha=Da+X0|0,Va=(Ha^Ua)>>>7|(Ha^Ua)<<25,Na=($e+_i|0)+ga|0,Fa=(Na^Sa)>>>16|(Na^Sa)<<16,qa=Fa+Xr|0,Ka=(qa^_i)>>>12|(qa^_i)<<20,Wa=(Tt+Ka|0)+Na|0,Ga=(Wa^Fa)>>>8|(Wa^Fa)<<24,Xa=Ga+qa|0,Ja=(Xa^Ka)>>>7|(Xa^Ka)<<25,Ya=(kt+ya|0)+W0|0,Za=(Ya^Gr)>>>16|(Ya^Gr)<<16,Ta=Za+ki|0,Qa=(Ta^ya)>>>12|(Ta^ya)<<20,_2=(zt+Qa|0)+Ya|0,A2=(_2^Za)>>>8|(_2^Za)<<24,S2=A2+Ta|0,$2=(S2^Qa)>>>7|(S2^Qa)<<25,E2=(Ut+Va|0)+Ba|0,L2=(E2^A2)>>>16|(E2^A2)<<16,M2=L2+Xa|0,O2=(M2^Va)>>>12|(M2^Va)<<20,B2=(fe+O2|0)+E2|0,P2=(B2^L2)>>>8|(B2^L2)<<24,C2=P2+M2|0,j2=(C2^O2)>>>7|(C2^O2)<<25,I2=(It+Ja|0)+Ra|0,z2=(I2^Pa)>>>16|(I2^Pa)<<16,T2=z2+S2|0,U2=(T2^Ja)>>>12|(T2^Ja)<<20,R2=(Le+U2|0)+I2|0,D2=(R2^z2)>>>8|(R2^z2)<<24,H2=D2+T2|0,V2=(H2^U2)>>>7|(H2^U2)<<25,N2=(le+$2|0)+Wa|0,F2=(N2^Da)>>>16|(N2^Da)<<16,q2=F2+Ca|0,K2=(q2^$2)>>>12|(q2^$2)<<20,W2=(pe+K2|0)+N2|0,G2=(W2^F2)>>>8|(W2^F2)<<24,X2=G2+q2|0,J2=(X2^K2)>>>7|(X2^K2)<<25,Y2=(ue+ja|0)+_2|0,Z2=(Y2^Ga)>>>16|(Y2^Ga)<<16,Q2=Z2+Ha|0,tl=(Q2^ja)>>>12|(Q2^ja)<<20,el=(de+tl|0)+Y2|0,ol=(el^Z2)>>>8|(el^Z2)<<24,nl=ol+Q2|0,sl=(nl^tl)>>>7|(nl^tl)<<25,rl=(Me+sl|0)+B2|0,cl=(rl^D2)>>>16|(rl^D2)<<16,il=cl+X2|0,al=(il^sl)>>>12|(il^sl)<<20,ll=(kt+al|0)+rl|0,fl=(ll^cl)>>>8|(ll^cl)<<24,ul=fl+il|0,vl=(ul^al)>>>7|(ul^al)<<25,pl=(ve+j2|0)+R2|0,dl=(pl^G2)>>>16|(pl^G2)<<16,hl=dl+nl|0,ml=(hl^j2)>>>12|(hl^j2)<<20,xl=(It+ml|0)+pl|0,gl=(xl^dl)>>>8|(xl^dl)<<24,bl=gl+hl|0,yl=(bl^ml)>>>7|(bl^ml)<<25,wl=(zt+V2|0)+W2|0,kl=(wl^ol)>>>16|(wl^ol)<<16,_l=kl+C2|0,Al=(_l^V2)>>>12|(_l^V2)<<20,Sl=(Ee+Al|0)+wl|0,$l=(Sl^kl)>>>8|(Sl^kl)<<24,El=$l+_l|0,Ll=(El^Al)>>>7|(El^Al)<<25,Ml=($e+J2|0)+el|0,Ol=(Ml^P2)>>>16|(Ml^P2)<<16,Bl=Ol+H2|0,Pl=(Bl^J2)>>>12|(Bl^J2)<<20,Cl=(pe+Pl|0)+Ml|0,jl=(Cl^Ol)>>>8|(Cl^Ol)<<24,Il=jl+Bl|0,zl=(Il^Pl)>>>7|(Il^Pl)<<25,Tl=(wt+yl|0)+ll|0,Ul=(Tl^jl)>>>16|(Tl^jl)<<16,Rl=Ul+El|0,Dl=(Rl^yl)>>>12|(Rl^yl)<<20,Hl=(Le+Dl|0)+Tl|0,yf=(Hl^Ul)>>>8|(Hl^Ul)<<24,Vl=yf+Rl|0,Nl=(le+Ll|0)+xl|0,Fl=(Nl^fl)>>>16|(Nl^fl)<<16,ql=Fl+Il|0,Kl=(ql^Ll)>>>12|(ql^Ll)<<20,Wl=(Tt+Kl|0)+Nl|0,wf=(Wl^Fl)>>>8|(Wl^Fl)<<24,Gl=wf+ql|0,Xl=(fe+zl|0)+Sl|0,Jl=(Xl^gl)>>>16|(Xl^gl)<<16,Yl=Jl+ul|0,Zl=(Yl^zl)>>>12|(Yl^zl)<<20,Ql=(ue+Zl|0)+Xl|0,kf=(Ql^Jl)>>>8|(Ql^Jl)<<24,tf=kf+Yl|0,ef=(de+vl|0)+Cl|0,of=(ef^$l)>>>16|(ef^$l)<<16,nf=of+bl|0,sf=(nf^vl)>>>12|(nf^vl)<<20,rf=(Ut+sf|0)+ef|0,_f=(rf^of)>>>8|(rf^of)<<24,cf=_f+nf|0,Gf=tf^Hl,Xf=cf^Wl,Jf=Vl^Ql,Yf=Gl^rf,Zf=wf^((cf^sf)>>>7|(cf^sf)<<25),Qf=kf^((Vl^Dl)>>>7|(Vl^Dl)<<25),tu=_f^((Gl^Kl)>>>7|(Gl^Kl)<<25),eu=yf^((tf^Zl)>>>7|(tf^Zl)<<25);Ti=ae,Ui=Gf,Ri=Xf,Di=Jf,Hi=Yf,Vi=Zf,Ni=Qf,Fi=tu,qi=eu}let ha=Ti,$0=Ui,E0=Ri,L0=Di,M0=Hi,O0=Vi,B0=Ni,P0=Fi,C0=qi,Ki=1+ha|0;if(Ki>>>0<16|0){ac=Ki,lc=$0,fc=E0,uc=L0,vc=M0,pc=O0,dc=B0,hc=P0,mc=C0;continue c}ac=Ki,lc=$0,fc=E0,uc=L0,vc=M0,pc=O0,dc=B0,hc=P0,mc=C0;break c}let aa=ac,la=lc,fa=fc,ua=uc,va=vc,pa=pc,xc=dc,gc=hc,bc=mc;Bt=aa,Pt=la,Ct=fa,jt=ua,Te=va,Ue=pa,ce=xc,Re=gc,ie=bc}let _0=Bt,cc=Pt,ic=Ct,A0=jt,S0=Te,Bi=Ue,Pi=ce,Ci=Re,ji=ie;z=_0,B=cc,S=ic,E=A0,T=S0,C=Bi,W=Pi,M=Ci,ft=ji}let At=B,nc=S,Be=E,Pe=T,Ce=C,St=W,_e=M,se=ft,yt=10487904+(Y<<5)|0;n[(yt>>>0)+0>>>2]=At;let $t=4+yt|0;n[($t>>>0)+0>>>2]=nc;let Et=4+$t|0;n[(Et>>>0)+0>>>2]=Be;let Lt=4+Et|0;n[(Lt>>>0)+0>>>2]=Pe;let Mt=4+Lt|0;n[(Mt>>>0)+0>>>2]=Ce;let je=4+Mt|0;n[(je>>>0)+0>>>2]=St;let Ie=4+je|0;n[(Ie>>>0)+0>>>2]=_e,n[((4+Ie|0)>>>0)+0>>>2]=se,rt=G}let D=1+rt|0;if(D>>>0<y>>>0|0){O=D;continue t}O=D;break t}ct=O}N=ct}}function m(A,y,V,nt,J,w,k,R){let U=n[((20+Math.imul(2144,A)|0)>>>0)+0>>>2],N=n[((24+Math.imul(2144,A)|0)>>>0)+0>>>2],j=((U+V|0)>>>0<=16|0)&((N|0)===0|0)&((V|0)!==0|0)&w,ct=V-1|0,no=(V>>>0>=4096|0)&((y|0)===3|0|((y|0)===2|0)),st=j?V-1|0:V;e:{s:{if((no|0)===0|0)break s;let O=0;t:{let tt=O;if((tt>>>0<y>>>0|0|0)===0|0){O=tt;break t}let P=tt;{let D=P;n:for(;;){let et=D;{let F=et;m(F+A|0,1,V,nt,J,w,k,R),et=F}let ut=1+et|0;if(ut>>>0<y>>>0|0){D=ut;continue n}D=ut;break n}P=D}O=P}break e}s:{t:{if((y>>>0>1|0|0)===0|0||(st|0)===0|0)break t;u(A,y,st,0,nt,J,((j|0)===0|0)&w,k);break s}let O=Math.min((16-U|0)>>>0,st>>>0)|0,tt=((O|0)!==0|0)&((U|0)!==0|0);t:{if((tt|0)===0|0)break t;u(A,y,O,0,nt,J,((j|0)===0|0)&((O|0)===(st|0)|0)&w,k)}let P=tt?st-O|0:st,rt=(P>>>0)/16>>>0,K=P-(rt<<4)|0,D=tt?O:0;t:{let Y=D;if(((P|0)!==0|0|0)===0|0){D=Y;break t}let et=((K|0)===0|0)&w?rt-1|0:rt,it=Y;r:{let Z=it;if(((rt|0)!==0|0|0)===0|0){it=Z;break r}v(0,rt,16,Z,J,et,k,nt,A),it=(rt<<4)+Z|0}let ut=it,F=0;r:{let Z=F;if((Z>>>0<rt>>>0|0|0)===0|0){F=Z;break r}let Q=Z;{let ot=Q;o:for(;;){let dt=ot;{let f=dt,l=10487904+(f<<5)|0,p=n[(l>>>0)+0>>>2],h=4+l|0,x=n[(h>>>0)+0>>>2],b=4+h|0,g=n[(b>>>0)+0>>>2],L=4+b|0,_=n[(L>>>0)+0>>>2],z=4+L|0,B=n[(z>>>0)+0>>>2],S=4+z|0,E=n[(S>>>0)+0>>>2],T=4+S|0,C=n[(T>>>0)+0>>>2],W=n[((4+T|0)>>>0)+0>>>2];n[(l>>>0)+0>>>2]=0;let M=4+l|0;n[(M>>>0)+0>>>2]=0;let ft=4+M|0;n[(ft>>>0)+0>>>2]=0;let At=4+ft|0;n[(At>>>0)+0>>>2]=0;let nc=4+At|0;n[(nc>>>0)+0>>>2]=0;let Be=4+nc|0;n[(Be>>>0)+0>>>2]=0;let Pe=4+Be|0;n[(Pe>>>0)+0>>>2]=0,n[((4+Pe|0)>>>0)+0>>>2]=0;let St=(96+(n[((24+Math.imul(2144,A)|0)>>>0)+0>>>2]<<5)|0)+Math.imul(2144,A)|0;n[(St>>>0)+0>>>2]=p;let _e=4+St|0;n[(_e>>>0)+0>>>2]=x;let se=4+_e|0;n[(se>>>0)+0>>>2]=g;let yt=4+se|0;n[(yt>>>0)+0>>>2]=_;let $t=4+yt|0;n[($t>>>0)+0>>>2]=B;let Et=4+$t|0;n[(Et>>>0)+0>>>2]=E;let Lt=4+Et|0;n[(Lt>>>0)+0>>>2]=C,n[((4+Lt|0)>>>0)+0>>>2]=W,i(A,((f|0)===(et|0)|0)&w),dt=f}let d=1+dt|0;if(d>>>0<rt>>>0|0){ot=d;continue o}ot=d;break o}Q=ot}F=Q}D=ut}let G=D;t:{if(((K|0)!==0|0|0)===0|0)break t;u(A,y,K,G,nt,J,((j|0)===0|0)&w,k)}}}e:{if(((no|0)===0|0|0)===0|0)break e;let O=0;s:{let tt=O;if((tt>>>0<y>>>0|0|0)===0|0){O=tt;break s}let P=tt;{let D=P;r:for(;;){let et=D;{let F=et,Z=F+A|0,Q=n[((20+Math.imul(2144,Z)|0)>>>0)+0>>>2];o:{if(((Q|0)===0|0|0)===0|0)break o;r.copyWithin((64+Math.imul(2144,Z)|0)>>>0,(32+Math.imul(2144,Z)|0)>>>0,((32+Math.imul(2144,Z)|0)>>>0)+32)}o:{if((j|0)===0|0)break o;let at=(2144+(ct<<6)|0)+(Math.imul(nt,F+A|0)<<6)|0,X=n[(at>>>0)+0>>>2],ot=4+at|0,lt=n[(ot>>>0)+0>>>2],pt=4+ot|0,dt=n[(pt>>>0)+0>>>2],_t=4+pt|0,d=n[(_t>>>0)+0>>>2],f=4+_t|0,l=n[(f>>>0)+0>>>2],p=4+f|0,h=n[(p>>>0)+0>>>2],x=4+p|0,b=n[(x>>>0)+0>>>2],g=4+x|0,L=n[(g>>>0)+0>>>2],_=4+g|0,z=n[(_>>>0)+0>>>2],B=4+_|0,S=n[(B>>>0)+0>>>2],E=4+B|0,T=n[(E>>>0)+0>>>2],C=4+E|0,W=n[(C>>>0)+0>>>2],M=4+C|0,ft=n[(M>>>0)+0>>>2],At=4+M|0,nc=n[(At>>>0)+0>>>2],Be=4+At|0,Pe=n[(Be>>>0)+0>>>2],Ce=n[((4+Be|0)>>>0)+0>>>2];n[(at>>>0)+0>>>2]=0;let St=4+at|0;n[(St>>>0)+0>>>2]=0;let _e=4+St|0;n[(_e>>>0)+0>>>2]=0;let se=4+_e|0;n[(se>>>0)+0>>>2]=0;let yt=4+se|0;n[(yt>>>0)+0>>>2]=0;let $t=4+yt|0;n[($t>>>0)+0>>>2]=0;let Et=4+$t|0;n[(Et>>>0)+0>>>2]=0;let Lt=4+Et|0;n[(Lt>>>0)+0>>>2]=0;let Mt=4+Lt|0;n[(Mt>>>0)+0>>>2]=0;let je=4+Mt|0;n[(je>>>0)+0>>>2]=0;let Ie=4+je|0;n[(Ie>>>0)+0>>>2]=0;let sc=4+Ie|0;n[(sc>>>0)+0>>>2]=0;let Mi=4+sc|0;n[(Mi>>>0)+0>>>2]=0;let Oi=4+Mi|0;n[(Oi>>>0)+0>>>2]=0;let rc=4+Oi|0;n[(rc>>>0)+0>>>2]=0,n[((4+rc|0)>>>0)+0>>>2]=0;let Ae=96+Math.imul(2144,Z)|0;n[(Ae>>>0)+0>>>2]=X;let so=4+Ae|0;n[(so>>>0)+0>>>2]=lt;let ze=4+so|0;n[(ze>>>0)+0>>>2]=dt;let Ot=4+ze|0;n[(Ot>>>0)+0>>>2]=d;let re=4+Ot|0;n[(re>>>0)+0>>>2]=l;let Bt=4+re|0;n[(Bt>>>0)+0>>>2]=h;let Pt=4+Bt|0;n[(Pt>>>0)+0>>>2]=b,n[((4+Pt|0)>>>0)+0>>>2]=L;let Ct=128+Math.imul(2144,Z)|0;n[(Ct>>>0)+0>>>2]=z;let jt=4+Ct|0;n[(jt>>>0)+0>>>2]=S;let Te=4+jt|0;n[(Te>>>0)+0>>>2]=T;let Ue=4+Te|0;n[(Ue>>>0)+0>>>2]=W;let ce=4+Ue|0;n[(ce>>>0)+0>>>2]=ft;let Re=4+ce|0;n[(Re>>>0)+0>>>2]=nc;let ie=4+Re|0;n[(ie>>>0)+0>>>2]=Pe,n[((4+ie|0)>>>0)+0>>>2]=Ce,n[((28+Math.imul(2144,Z)|0)>>>0)+0>>>2]=J-k|0}et=F}let ut=1+et|0;if(ut>>>0<y>>>0|0){D=ut;continue r}D=ut;break r}P=D}O=P}}}function $(A,y,V,nt,J,w){let k=0;e:{let R=k;if((R>>>0<y>>>0|0|0)===0|0){k=R;break e}let U=R;{let ct=U;t:for(;;){let O=ct;{let rt=O,K=rt+A|0,D=64+Math.imul(2144,K)|0,G=n[((16+Math.imul(2144,K)|0)>>>0)+0>>>2],Y=n[((24+Math.imul(2144,K)|0)>>>0)+0>>>2],et=n[((20+Math.imul(2144,K)|0)>>>0)+0>>>2],it=8|((Y|0)===0|0?2|((et|0)===0|0?1:0):4)|G,ut=96+Math.imul(2144,K)|0,F=n[(ut>>>0)+0>>>2],Z=4+ut|0,Q=n[(Z>>>0)+0>>>2],at=4+Z|0,X=n[(at>>>0)+0>>>2],ot=4+at|0,lt=n[(ot>>>0)+0>>>2],pt=4+ot|0,dt=n[(pt>>>0)+0>>>2],_t=4+pt|0,d=n[(_t>>>0)+0>>>2],f=4+_t|0,l=n[(f>>>0)+0>>>2],p=n[((4+f|0)>>>0)+0>>>2],h=128+Math.imul(2144,K)|0,x=n[(h>>>0)+0>>>2],b=4+h|0,g=n[(b>>>0)+0>>>2],L=4+b|0,_=n[(L>>>0)+0>>>2],z=4+L|0,B=n[(z>>>0)+0>>>2],S=4+z|0,E=n[(S>>>0)+0>>>2],T=4+S|0,C=n[(T>>>0)+0>>>2],W=4+T|0,M=n[(W>>>0)+0>>>2],ft=n[((4+W|0)>>>0)+0>>>2],At=8+Math.imul(2144,K)|0,nc=n[(At>>>0)+0>>>2],Be=n[(At>>>0)+4>>>2],Pe=0,Ce=nc,St=Be;{let $t=Pe,Et=Ce,Lt=St,Mt=$t,je=Et,Ie=Lt;o:for(;;){let rc=Mt,Ae=je,so=Ie,ze=1+rc|0,Ot=n[(D>>>0)+0>>>2],re=4+D|0,Bt=n[(re>>>0)+0>>>2],Pt=4+re|0,Ct=n[(Pt>>>0)+0>>>2],jt=4+Pt|0,Te=n[(jt>>>0)+0>>>2],Ue=4+jt|0,ce=n[(Ue>>>0)+0>>>2],Re=4+Ue|0,ie=n[(Re>>>0)+0>>>2],_0=4+Re|0,cc=n[(_0>>>0)+0>>>2],ic=n[((4+_0|0)>>>0)+0>>>2],A0=n[((24+Math.imul(2144,K)|0)>>>0)+0>>>2],S0=n[((28+Math.imul(2144,K)|0)>>>0)+0>>>2],Bi=(F+ce|0)+Ot|0,Pi=(Bi^Ae)>>>16|(Bi^Ae)<<16,Ci=Pi+1779033703|0,ji=(Ci^ce)>>>12|(Ci^ce)<<20,Ii=(Q+ji|0)+Bi|0,zi=(Ii^Pi)>>>8|(Ii^Pi)<<24,ea=zi+Ci|0,oa=(ea^ji)>>>7|(ea^ji)<<25,na=(X+ie|0)+Bt|0,sa=(na^so)>>>16|(na^so)<<16,ra=sa+-1150833019|0,ca=(ra^ie)>>>12|(ra^ie)<<20,ia=(lt+ca|0)+na|0,ac=(ia^sa)>>>8|(ia^sa)<<24,lc=ac+ra|0,fc=(lc^ca)>>>7|(lc^ca)<<25,uc=(dt+cc|0)+Ct|0,vc=(uc^((A0|0)===0|0?S0:J))>>>16|(uc^((A0|0)===0|0?S0:J))<<16,pc=vc+1013904242|0,dc=(pc^cc)>>>12|(pc^cc)<<20,hc=(d+dc|0)+uc|0,mc=(hc^vc)>>>8|(hc^vc)<<24,aa=mc+pc|0,la=(aa^dc)>>>7|(aa^dc)<<25,fa=(l+ic|0)+Te|0,ua=(fa^it)>>>16|(fa^it)<<16,va=ua+-1521486534|0,pa=(va^ic)>>>12|(va^ic)<<20,xc=(p+pa|0)+fa|0,gc=(xc^ua)>>>8|(xc^ua)<<24,bc=gc+va|0,yc=(bc^pa)>>>7|(bc^pa)<<25,wc=(x+fc|0)+Ii|0,kc=(wc^gc)>>>16|(wc^gc)<<16,_c=kc+aa|0,Ac=(_c^fc)>>>12|(_c^fc)<<20,Sc=(g+Ac|0)+wc|0,$c=(Sc^kc)>>>8|(Sc^kc)<<24,Ec=$c+_c|0,da=(Ec^Ac)>>>7|(Ec^Ac)<<25,Ti=(_+la|0)+ia|0,Ui=(Ti^zi)>>>16|(Ti^zi)<<16,Ri=Ui+bc|0,Di=(Ri^la)>>>12|(Ri^la)<<20,Hi=(B+Di|0)+Ti|0,Vi=(Hi^Ui)>>>8|(Hi^Ui)<<24,Ni=Vi+Ri|0,Fi=(Ni^Di)>>>7|(Ni^Di)<<25,qi=(E+yc|0)+hc|0,ha=(qi^ac)>>>16|(qi^ac)<<16,$0=ha+ea|0,E0=($0^yc)>>>12|($0^yc)<<20,L0=(C+E0|0)+qi|0,M0=(L0^ha)>>>8|(L0^ha)<<24,O0=M0+$0|0,B0=(O0^E0)>>>7|(O0^E0)<<25,P0=(M+oa|0)+xc|0,C0=(P0^mc)>>>16|(P0^mc)<<16,Ki=C0+lc|0,ae=(Ki^oa)>>>12|(Ki^oa)<<20,ma=(ft+ae|0)+P0|0,Wi=(ma^C0)>>>8|(ma^C0)<<24,Gi=Wi+Ki|0,Xi=(Gi^ae)>>>7|(Gi^ae)<<25,ro=(X+Xi|0)+Sc|0,co=(ro^Vi)>>>16|(ro^Vi)<<16,io=co+O0|0,ao=(io^Xi)>>>12|(io^Xi)<<20,De=(l+ao|0)+ro|0,It=(De^co)>>>8|(De^co)<<24,Lc=It+io|0,zt=(Lc^ao)>>>7|(Lc^ao)<<25,Mc=(lt+da|0)+Hi|0,le=(Mc^M0)>>>16|(Mc^M0)<<16,Ji=le+Gi|0,fe=(Ji^da)>>>12|(Ji^da)<<20,Yi=(_+fe|0)+Mc|0,ue=(Yi^le)>>>8|(Yi^le)<<24,Zi=ue+Ji|0,ve=(Zi^fe)>>>7|(Zi^fe)<<25,Qi=(p+Fi|0)+L0|0,pe=(Qi^Wi)>>>16|(Qi^Wi)<<16,t0=pe+Ec|0,de=(t0^Fi)>>>12|(t0^Fi)<<20,Se=(F+de|0)+Qi|0,$e=(Se^pe)>>>8|(Se^pe)<<24,j0=$e+t0|0,Ee=(j0^de)>>>7|(j0^de)<<25,I0=(dt+B0|0)+ma|0,Le=(I0^$c)>>>16|(I0^$c)<<16,z0=Le+Ni|0,Me=(z0^B0)>>>12|(z0^B0)<<20,T0=(C+Me|0)+I0|0,Tt=(T0^Le)>>>8|(T0^Le)<<24,e0=Tt+z0|0,Ut=(e0^Me)>>>7|(e0^Me)<<25,lo=(Q+ve|0)+De|0,wt=(lo^Tt)>>>16|(lo^Tt)<<16,kt=wt+j0|0,fo=(kt^ve)>>>12|(kt^ve)<<20,uo=(B+fo|0)+lo|0,vo=(uo^wt)>>>8|(uo^wt)<<24,po=vo+kt|0,ho=(po^fo)>>>7|(po^fo)<<25,U0=(E+Ee|0)+Yi|0,R0=(U0^It)>>>16|(U0^It)<<16,D0=R0+e0|0,H0=(D0^Ee)>>>12|(D0^Ee)<<20,V0=(d+H0|0)+U0|0,N0=(V0^R0)>>>8|(V0^R0)<<24,F0=N0+D0|0,q0=(F0^H0)>>>7|(F0^H0)<<25,o0=(g+Ut|0)+Se|0,mo=(o0^ue)>>>16|(o0^ue)<<16,xo=mo+Lc|0,go=(xo^Ut)>>>12|(xo^Ut)<<20,bo=(M+go|0)+o0|0,yo=(bo^mo)>>>8|(bo^mo)<<24,wo=yo+xo|0,ko=(wo^go)>>>7|(wo^go)<<25,_o=(ft+zt|0)+T0|0,Ao=(_o^$e)>>>16|(_o^$e)<<16,So=Ao+Zi|0,Oc=(So^zt)>>>12|(So^zt)<<20,Bc=(x+Oc|0)+_o|0,Pc=(Bc^Ao)>>>8|(Bc^Ao)<<24,Cc=Pc+So|0,jc=(Cc^Oc)>>>7|(Cc^Oc)<<25,Ic=(lt+jc|0)+uo|0,zc=(Ic^N0)>>>16|(Ic^N0)<<16,Tc=zc+wo|0,Uc=(Tc^jc)>>>12|(Tc^jc)<<20,Rc=(dt+Uc|0)+Ic|0,n0=(Rc^zc)>>>8|(Rc^zc)<<24,He=n0+Tc|0,he=(He^Uc)>>>7|(He^Uc)<<25,me=(_+ho|0)+V0|0,xe=(me^yo)>>>16|(me^yo)<<16,ge=xe+Cc|0,be=(ge^ho)>>>12|(ge^ho)<<20,ye=(E+be|0)+me|0,we=(ye^xe)>>>8|(ye^xe)<<24,s0=we+ge|0,r0=(s0^be)>>>7|(s0^be)<<25,c0=(C+q0|0)+bo|0,Ve=(c0^Pc)>>>16|(c0^Pc)<<16,Ne=Ve+po|0,Fe=(Ne^q0)>>>12|(Ne^q0)<<20,qe=(X+Fe|0)+c0|0,Ke=(qe^Ve)>>>8|(qe^Ve)<<24,We=Ke+Ne|0,Ge=(We^Fe)>>>7|(We^Fe)<<25,Xe=(p+ko|0)+Bc|0,Je=(Xe^vo)>>>16|(Xe^vo)<<16,Ye=Je+F0|0,Ze=(Ye^ko)>>>12|(Ye^ko)<<20,i0=(M+Ze|0)+Xe|0,a0=(i0^Je)>>>8|(i0^Je)<<24,l0=a0+Ye|0,f0=(l0^Ze)>>>7|(l0^Ze)<<25,u0=(l+r0|0)+Rc|0,v0=(u0^a0)>>>16|(u0^a0)<<16,p0=v0+We|0,d0=(p0^r0)>>>12|(p0^r0)<<20,h0=(d+d0|0)+u0|0,m0=(h0^v0)>>>8|(h0^v0)<<24,x0=m0+p0|0,Dc=(x0^d0)>>>7|(x0^d0)<<25,Hc=(g+Ge|0)+ye|0,g0=(Hc^n0)>>>16|(Hc^n0)<<16,b0=g0+l0|0,y0=(b0^Ge)>>>12|(b0^Ge)<<20,w0=(F+y0|0)+Hc|0,$o=(w0^g0)>>>8|(w0^g0)<<24,Eo=$o+b0|0,Lo=(Eo^y0)>>>7|(Eo^y0)<<25,Mo=(B+f0|0)+qe|0,Qe=(Mo^we)>>>16|(Mo^we)<<16,Oo=Qe+He|0,Bo=(Oo^f0)>>>12|(Oo^f0)<<20,Po=(ft+Bo|0)+Mo|0,to=(Po^Qe)>>>8|(Po^Qe)<<24,Rt=to+Oo|0,Vc=(Rt^Bo)>>>7|(Rt^Bo)<<25,Dt=(x+he|0)+i0|0,Nc=(Dt^Ke)>>>16|(Dt^Ke)<<16,Ht=Nc+s0|0,Fc=(Ht^he)>>>12|(Ht^he)<<20,Vt=(Q+Fc|0)+Dt|0,qc=(Vt^Nc)>>>8|(Vt^Nc)<<24,Nt=qc+Ht|0,Kc=(Nt^Fc)>>>7|(Nt^Fc)<<25,Ft=(_+Kc|0)+h0|0,Wc=(Ft^$o)>>>16|(Ft^$o)<<16,qt=Wc+Rt|0,Gc=(qt^Kc)>>>12|(qt^Kc)<<20,Kt=(p+Gc|0)+Ft|0,Xc=(Kt^Wc)>>>8|(Kt^Wc)<<24,Wt=Xc+qt|0,Jc=(Wt^Gc)>>>7|(Wt^Gc)<<25,Gt=(E+Dc|0)+w0|0,Yc=(Gt^to)>>>16|(Gt^to)<<16,Xt=Yc+Nt|0,Zc=(Xt^Dc)>>>12|(Xt^Dc)<<20,Jt=(g+Zc|0)+Gt|0,Qc=(Jt^Yc)>>>8|(Jt^Yc)<<24,Yt=Qc+Xt|0,ti=(Yt^Zc)>>>7|(Yt^Zc)<<25,Zt=(M+Lo|0)+Po|0,ei=(Zt^qc)>>>16|(Zt^qc)<<16,Qt=ei+x0|0,te=(Qt^Lo)>>>12|(Qt^Lo)<<20,oi=(lt+te|0)+Zt|0,ni=(oi^ei)>>>8|(oi^ei)<<24,si=ni+Qt|0,ri=(si^te)>>>7|(si^te)<<25,ci=(C+Vc|0)+Vt|0,ii=(ci^m0)>>>16|(ci^m0)<<16,ai=ii+Eo|0,li=(ai^Vc)>>>12|(ai^Vc)<<20,fi=(ft+li|0)+ci|0,ui=(fi^ii)>>>8|(fi^ii)<<24,vi=ui+ai|0,pi=(vi^li)>>>7|(vi^li)<<25,di=(dt+ti|0)+Kt|0,hi=(di^ui)>>>16|(di^ui)<<16,Co=hi+si|0,eo=(Co^ti)>>>12|(Co^ti)<<20,jo=(F+eo|0)+di|0,Io=(jo^hi)>>>8|(jo^hi)<<24,zo=Io+Co|0,To=(zo^eo)>>>7|(zo^eo)<<25,Uo=(B+ri|0)+Jt|0,Ro=(Uo^Xc)>>>16|(Uo^Xc)<<16,Do=Ro+vi|0,Ho=(Do^ri)>>>12|(Do^ri)<<20,Vo=(X+Ho|0)+Uo|0,No=(Vo^Ro)>>>8|(Vo^Ro)<<24,Fo=No+Do|0,qo=(Fo^Ho)>>>7|(Fo^Ho)<<25,Ko=(d+pi|0)+oi|0,Wo=(Ko^Qc)>>>16|(Ko^Qc)<<16,Go=Wo+Wt|0,Xo=(Go^pi)>>>12|(Go^pi)<<20,Jo=(x+Xo|0)+Ko|0,Yo=(Jo^Wo)>>>8|(Jo^Wo)<<24,Zo=Yo+Go|0,Qo=(Zo^Xo)>>>7|(Zo^Xo)<<25,tn=(Q+Jc|0)+fi|0,en=(tn^ni)>>>16|(tn^ni)<<16,on=en+Yt|0,nn=(on^Jc)>>>12|(on^Jc)<<20,sn=(l+nn|0)+tn|0,rn=(sn^en)>>>8|(sn^en)<<24,cn=rn+on|0,an=(cn^nn)>>>7|(cn^nn)<<25,ln=(E+an|0)+jo|0,fn=(ln^No)>>>16|(ln^No)<<16,un=fn+Zo|0,vn=(un^an)>>>12|(un^an)<<20,pn=(C+vn|0)+ln|0,dn=(pn^fn)>>>8|(pn^fn)<<24,hn=dn+un|0,mn=(hn^vn)>>>7|(hn^vn)<<25,xn=(g+To|0)+Vo|0,gn=(xn^Yo)>>>16|(xn^Yo)<<16,bn=gn+cn|0,yn=(bn^To)>>>12|(bn^To)<<20,wn=(B+yn|0)+xn|0,kn=(wn^gn)>>>8|(wn^gn)<<24,_n=kn+bn|0,An=(_n^yn)>>>7|(_n^yn)<<25,Sn=(ft+qo|0)+Jo|0,$n=(Sn^rn)>>>16|(Sn^rn)<<16,En=$n+zo|0,Ln=(En^qo)>>>12|(En^qo)<<20,Mn=(_+Ln|0)+Sn|0,On=(Mn^$n)>>>8|(Mn^$n)<<24,Bn=On+En|0,Pn=(Bn^Ln)>>>7|(Bn^Ln)<<25,Cn=(M+Qo|0)+sn|0,jn=(Cn^Io)>>>16|(Cn^Io)<<16,In=jn+Fo|0,zn=(In^Qo)>>>12|(In^Qo)<<20,Tn=(x+zn|0)+Cn|0,Un=(Tn^jn)>>>8|(Tn^jn)<<24,Rn=Un+In|0,Dn=(Rn^zn)>>>7|(Rn^zn)<<25,Hn=(p+An|0)+pn|0,Vn=(Hn^Un)>>>16|(Hn^Un)<<16,Nn=Vn+Bn|0,Fn=(Nn^An)>>>12|(Nn^An)<<20,qn=(X+Fn|0)+Hn|0,Kn=(qn^Vn)>>>8|(qn^Vn)<<24,Wn=Kn+Nn|0,Gn=(Wn^Fn)>>>7|(Wn^Fn)<<25,Xn=(d+Pn|0)+wn|0,Jn=(Xn^dn)>>>16|(Xn^dn)<<16,Yn=Jn+Rn|0,Zn=(Yn^Pn)>>>12|(Yn^Pn)<<20,Qn=(lt+Zn|0)+Xn|0,ts=(Qn^Jn)>>>8|(Qn^Jn)<<24,es=ts+Yn|0,os=(es^Zn)>>>7|(es^Zn)<<25,ns=(F+Dn|0)+Mn|0,ss=(ns^kn)>>>16|(ns^kn)<<16,rs=ss+hn|0,cs=(rs^Dn)>>>12|(rs^Dn)<<20,is=(Q+cs|0)+ns|0,as=(is^ss)>>>8|(is^ss)<<24,ls=as+rs|0,fs=(ls^cs)>>>7|(ls^cs)<<25,us=(l+mn|0)+Tn|0,vs=(us^On)>>>16|(us^On)<<16,ps=vs+_n|0,ds=(ps^mn)>>>12|(ps^mn)<<20,hs=(dt+ds|0)+us|0,ms=(hs^vs)>>>8|(hs^vs)<<24,xs=ms+ps|0,gs=(xs^ds)>>>7|(xs^ds)<<25,bs=(g+gs|0)+qn|0,ys=(bs^ts)>>>16|(bs^ts)<<16,ws=ys+ls|0,ks=(ws^gs)>>>12|(ws^gs)<<20,_s=(M+ks|0)+bs|0,As=(_s^ys)>>>8|(_s^ys)<<24,Ss=As+ws|0,$s=(Ss^ks)>>>7|(Ss^ks)<<25,Es=(B+Gn|0)+Qn|0,Ls=(Es^as)>>>16|(Es^as)<<16,Ms=Ls+xs|0,Os=(Ms^Gn)>>>12|(Ms^Gn)<<20,Bs=(d+Os|0)+Es|0,Ps=(Bs^Ls)>>>8|(Bs^Ls)<<24,Cs=Ps+Ms|0,js=(Cs^Os)>>>7|(Cs^Os)<<25,Is=(x+os|0)+is|0,zs=(Is^ms)>>>16|(Is^ms)<<16,Ts=zs+Wn|0,Us=(Ts^os)>>>12|(Ts^os)<<20,Rs=(E+Us|0)+Is|0,Ds=(Rs^zs)>>>8|(Rs^zs)<<24,Hs=Ds+Ts|0,Vs=(Hs^Us)>>>7|(Hs^Us)<<25,Ns=(ft+fs|0)+hs|0,Fs=(Ns^Kn)>>>16|(Ns^Kn)<<16,qs=Fs+es|0,Ks=(qs^fs)>>>12|(qs^fs)<<20,Ws=(Q+Ks|0)+Ns|0,Gs=(Ws^Fs)>>>8|(Ws^Fs)<<24,Xs=Gs+qs|0,Js=(Xs^Ks)>>>7|(Xs^Ks)<<25,Ys=(C+js|0)+_s|0,Zs=(Ys^Gs)>>>16|(Ys^Gs)<<16,Qs=Zs+Hs|0,tr=(Qs^js)>>>12|(Qs^js)<<20,er=(lt+tr|0)+Ys|0,or=(er^Zs)>>>8|(er^Zs)<<24,nr=or+Qs|0,sr=(nr^tr)>>>7|(nr^tr)<<25,rr=(F+Vs|0)+Bs|0,cr=(rr^As)>>>16|(rr^As)<<16,ir=cr+Xs|0,ar=(ir^Vs)>>>12|(ir^Vs)<<20,lr=(_+ar|0)+rr|0,fr=(lr^cr)>>>8|(lr^cr)<<24,ur=fr+ir|0,vr=(ur^ar)>>>7|(ur^ar)<<25,pr=(X+Js|0)+Rs|0,dr=(pr^Ps)>>>16|(pr^Ps)<<16,hr=dr+Ss|0,mr=(hr^Js)>>>12|(hr^Js)<<20,xr=(l+mr|0)+pr|0,gr=(xr^dr)>>>8|(xr^dr)<<24,br=gr+hr|0,yr=(br^mr)>>>7|(br^mr)<<25,wr=(dt+$s|0)+Ws|0,kr=(wr^Ds)>>>16|(wr^Ds)<<16,_r=kr+Cs|0,Ar=(_r^$s)>>>12|(_r^$s)<<20,Sr=(p+Ar|0)+wr|0,$r=(Sr^kr)>>>8|(Sr^kr)<<24,Er=$r+_r|0,Lr=(Er^Ar)>>>7|(Er^Ar)<<25,Mr=(B+Lr|0)+er|0,Or=(Mr^fr)>>>16|(Mr^fr)<<16,Br=Or+br|0,Pr=(Br^Lr)>>>12|(Br^Lr)<<20,Cr=(ft+Pr|0)+Mr|0,jr=(Cr^Or)>>>8|(Cr^Or)<<24,mi=jr+Br|0,Ir=(mi^Pr)>>>7|(mi^Pr)<<25,zr=(d+sr|0)+lr|0,Tr=(zr^gr)>>>16|(zr^gr)<<16,Ur=Tr+Er|0,Rr=(Ur^sr)>>>12|(Ur^sr)<<20,Dr=(F+Rr|0)+zr|0,xi=(Dr^Tr)>>>8|(Dr^Tr)<<24,Hr=xi+Ur|0,Vr=(Hr^Rr)>>>7|(Hr^Rr)<<25,Nr=(Q+vr|0)+xr|0,Fr=(Nr^$r)>>>16|(Nr^$r)<<16,qr=Fr+nr|0,Kr=(qr^vr)>>>12|(qr^vr)<<20,gi=(g+Kr|0)+Nr|0,Wr=(gi^Fr)>>>8|(gi^Fr)<<24,Gr=Wr+qr|0,Xr=(Gr^Kr)>>>7|(Gr^Kr)<<25,Jr=(x+yr|0)+Sr|0,Yr=(Jr^or)>>>16|(Jr^or)<<16,Zr=Yr+ur|0,bi=(Zr^yr)>>>12|(Zr^yr)<<20,Qr=(l+bi|0)+Jr|0,yi=(Qr^Yr)>>>8|(Qr^Yr)<<24,wi=yi+Zr|0,ki=(wi^bi)>>>7|(wi^bi)<<25,_i=(M+Vr|0)+Cr|0,Ai=(_i^yi)>>>16|(_i^yi)<<16,Si=Ai+Gr|0,$i=(Si^Vr)>>>12|(Si^Vr)<<20,xa=(_+$i|0)+_i|0,ga=(xa^Ai)>>>8|(xa^Ai)<<24,K0=ga+Si|0,ba=(X+Xr|0)+Dr|0,ya=(ba^jr)>>>16|(ba^jr)<<16,wa=ya+wi|0,ka=(wa^Xr)>>>12|(wa^Xr)<<20,_a=(E+ka|0)+ba|0,Aa=(_a^ya)>>>8|(_a^ya)<<24,W0=Aa+wa|0,Sa=(lt+ki|0)+gi|0,$a=(Sa^xi)>>>16|(Sa^xi)<<16,Ea=$a+mi|0,La=(Ea^ki)>>>12|(Ea^ki)<<20,Ma=(dt+La|0)+Sa|0,Oa=(Ma^$a)>>>8|(Ma^$a)<<24,G0=Oa+Ea|0,Ba=(p+Ir|0)+Qr|0,Pa=(Ba^Wr)>>>16|(Ba^Wr)<<16,Ca=Pa+Hr|0,ja=(Ca^Ir)>>>12|(Ca^Ir)<<20,Ia=(C+ja|0)+Ba|0,za=(Ia^Pa)>>>8|(Ia^Pa)<<24,X0=za+Ca|0,Ua=(2144+(rc<<6)|0)+(Math.imul(nt,K)<<6)|0;n[(Ua>>>0)+0>>>2]=G0^xa;let Ra=4+Ua|0;n[(Ra>>>0)+0>>>2]=X0^_a;let Da=4+Ra|0;n[(Da>>>0)+0>>>2]=K0^Ma;let Ha=4+Da|0;n[(Ha>>>0)+0>>>2]=W0^Ia;let Va=4+Ha|0;n[(Va>>>0)+0>>>2]=Aa^((X0^ja)>>>7|(X0^ja)<<25);let Na=4+Va|0;n[(Na>>>0)+0>>>2]=Oa^((K0^$i)>>>7|(K0^$i)<<25);let Fa=4+Na|0;n[(Fa>>>0)+0>>>2]=za^((W0^ka)>>>7|(W0^ka)<<25);let qa=4+Fa|0;n[(qa>>>0)+0>>>2]=ga^((G0^La)>>>7|(G0^La)<<25);let Ka=4+qa|0;n[(Ka>>>0)+0>>>2]=G0^Ot;let Wa=4+Ka|0;n[(Wa>>>0)+0>>>2]=X0^Bt;let Ga=4+Wa|0;n[(Ga>>>0)+0>>>2]=K0^Ct;let Xa=4+Ga|0;n[(Xa>>>0)+0>>>2]=W0^Te;let Ja=4+Xa|0;n[(Ja>>>0)+0>>>2]=Aa^ce;let Ya=4+Ja|0;n[(Ya>>>0)+0>>>2]=Oa^ie;let Za=4+Ya|0;n[(Za>>>0)+0>>>2]=za^cc,n[((4+Za|0)>>>0)+0>>>2]=ga^ic;let Ta=1+Ae|0,Qa=(((-1^Ta)&(1|Ae)|1&Ae)>>>31)+so|0;if(ze>>>0<V>>>0|0){Mt=ze,je=Ta,Ie=Qa;continue o}Mt=ze,je=Ta,Ie=Qa;break o}let sc=Mt,Mi=je,Oi=Ie;Pe=sc,Ce=Mi,St=Oi}let _e=Ce,se=St,yt=8+Math.imul(2144,K)|0;n[(yt>>>0)+0>>>2]=_e,n[(yt>>>0)+4>>>2]=se,O=rt}let P=1+O|0;if(P>>>0<y>>>0|0){ct=P;continue t}ct=P;break t}U=ct}k=U}}function H(A,y,V,nt,J){r.fill(0,Math.imul(2144,A)>>>0,(Math.imul(2144,A)>>>0)+(Math.imul(y,2144)>>>0));let w=0;e:{let k=w;if((k>>>0<y>>>0|0|0)===0|0){w=k;break e}let R=k;{let j=R;t:for(;;){let st=j;{let P=st;r.fill(0,(2144+(Math.imul(J,P+A|0)<<6)|0)>>>0,((2144+(Math.imul(J,P+A|0)<<6)|0)>>>0)+(V>>>0)),st=P}let tt=1+st|0;if(tt>>>0<y>>>0|0){j=tt;continue t}j=tt;break t}R=j}w=R}}let bt={exports:{compressParents:c,compressParentsFull:i,padding:a,proccessChunksParallel:u,proccessChunksSequential:v,processBlocks:m,processOutBlocks:$,reset:H,memory:{buffer:s}}}.exports,f2=bt.memory?bt.memory.buffer:new ArrayBuffer(0),vt=new Uint8Array(f2,0,15730784),ta=Object.freeze({state:new Uint8Array(vt.buffer,0,2144),state_chunks:Object.freeze(Array.from({length:1},(A,y)=>new Uint8Array(vt.buffer,0+y*2144,2144))),"state.chunksDone_chunks":Object.freeze(Array.from({length:1},(A,y)=>new Uint8Array(vt.buffer,0+y*2144,8))),"state.chunkOut_chunks":Object.freeze(Array.from({length:1},(A,y)=>new Uint8Array(vt.buffer,8+y*2144,8))),"state.flags_chunks":Object.freeze(Array.from({length:1},(A,y)=>new Uint8Array(vt.buffer,16+y*2144,4))),"state.chunkPos_chunks":Object.freeze(Array.from({length:1},(A,y)=>new Uint8Array(vt.buffer,20+y*2144,4))),"state.stackPos_chunks":Object.freeze(Array.from({length:1},(A,y)=>new Uint8Array(vt.buffer,24+y*2144,4))),"state.lastBlockRem_chunks":Object.freeze(Array.from({length:1},(A,y)=>new Uint8Array(vt.buffer,28+y*2144,4))),"state.iv_chunks":Object.freeze(Array.from({length:1},(A,y)=>new Uint8Array(vt.buffer,32+y*2144,32))),"state.state_chunks":Object.freeze(Array.from({length:1},(A,y)=>new Uint8Array(vt.buffer,64+y*2144,32))),"state.stack_chunks":Object.freeze(Array.from({length:1},(A,y)=>new Uint8Array(vt.buffer,96+y*2144,2048))),buffer:new Uint8Array(vt.buffer,2144,10485760),buffer_chunks:Object.freeze(Array.from({length:1},(A,y)=>new Uint8Array(vt.buffer,2144+y*10485760,10485760))),stackBuffer:new Uint8Array(vt.buffer,10487904,5242880),stackBuffer_chunks:Object.freeze(Array.from({length:1},(A,y)=>new Uint8Array(vt.buffer,10487904+y*5242880,5242880)))});return Object.freeze({...bt,memory:vt,segments:ta})}var Hp;function Vp(o={},t){return Hp||(Hp=f3(o,t))}var yh=xh(Vp,bh,"js");var Qu=!1,mu;(function(o){o[o.String=0]="String",o[o.Number=1]="Number",o[o.Bytes=2]="Bytes"})(mu||(mu={}));function wh(...o){if(o.length===0)throw new RangeError("hash requires entropy");let t=yh.create(),e=new Uint8Array(1),s=new Uint8Array(4),r=Cp(s);for(let n of o)if(typeof n=="string"){let c=zu.toBytes(n);e[0]=mu.String,r.setUint32(0,c.byteLength,Qu),t.update(e),t.update(s),t.update(c)}else if(typeof n=="number"){let c=new Uint8Array(8);Cp(c).setFloat64(0,n,Qu),e[0]=mu.Number,r.setUint32(0,c.byteLength,Qu),t.update(e),t.update(s),t.update(c)}else if(n instanceof Uint8Array)e[0]=mu.Bytes,r.setUint32(0,n.byteLength,Qu),t.update(e),t.update(s),t.update(n);else throw new Error("unknown part type");return t.digest()}function gf(o){return!!(o===null||Pf(o)||Bf(o)||Tu(o))}function d2(o){let t=[];function e(s,r){if(gf(s))t.push(JSON.stringify(r));else for(let[n,c]of Object.entries(s))e(c,[...r,n])}return e(o,["b"]),t.sort(),Mf(wh("tact/bindings/v1",...t).slice(16))}var t1=class{bindings;#t;#e=new If;#n=new fu;#o=new o2;constructor(t){this.bindings=t,this.#t=Wu(d2(t))}get playerIds(){return[...this.#o.keys()]}get controllers(){return{unassigned:[...this.#n],assigned:new Map([...this.#o].map(([t,e])=>[t,[...e.controllers]]))}}createPlayer(){let t=this.#e.next();return this.#o.set(t,{controllers:new fu}),t}deletePlayer(t){return this.#o.get(t)?.controllers.forEach(e=>this.#n.add(e)),this.#o.delete(t),this}add(t){return this.unplug(t),this}remove(t){return this.unplug(t),this.#n.delete(t),this}unplug(t){this.#n.add(t);for(let e of this.#o.values())e.controllers.delete(t);return this}plug(t,e){return e??=this.playerIds.at(-1)??this.createPlayer(),this.unplug(t),tc(this.#o.get(e)).controllers.add(t),this.#n.delete(t),this}encode(t,e=performance.now()){let s=new Map,{controllers:r}=tc(this.#o.get(t));for(let c of r)for(let i of c.evaluate(e)){let a=s.get(i.id)??0;s.set(i.id,a+i.value)}let n=[...s].filter(([,c])=>c!==0).map(([c,i])=>({id:c,value:i}));return Xu(this.#t,n)}encodeAll(t=performance.now()){for(let s of this.#n)s.clear();let e=Array.from(this.#o.keys()).map(s=>({playerId:s,intents:this.encode(s,t)}));return ph(e)}};async function Np(o){return new Promise((t,e)=>{o.onsuccess=()=>t(o.result),o.onerror=()=>e(o.error)})}async function kh(o,t=o){return{dbName:o,storeName:t,db:await new Promise((e,s)=>{let r=indexedDB.open(o,1);r.onblocked=()=>s(new Error("idb blocked")),r.onerror=()=>s(r.error),r.onupgradeneeded=()=>r.result.createObjectStore(t),r.onsuccess=()=>e(r.result)})}}function _h({start:o,end:t}){if(k0(o)&&k0(t))return IDBKeyRange.bound(o,t,!1,!0);if(k0(o))return IDBKeyRange.lowerBound(o,!1);if(k0(t))return IDBKeyRange.upperBound(t,!0)}function Ah({db:o,storeName:t}){let e=s=>(async r=>{let n=o.transaction(t,s),c=n.objectStore(t),i=new Promise((a,u)=>{n.onabort=()=>u(n.error??new Error("transaction aborted")),n.oncomplete=()=>a(void 0)});try{let a=await r(c,Np);return n.commit(),await i,a}catch(a){try{n.abort()}catch{}throw a}});return{readonly:e("readonly"),readwrite:e("readwrite")}}var e1=class{#t;constructor(t){this.#t=Ah(t)}async commit(t){return this.#t.readwrite(async e=>{for(let[s,r]of t)r===void 0?e.delete(s):e.put(r,s)})}async getMany(t){return this.#t.readonly((e,s)=>Promise.all(t.map(r=>s(e.get(r)))))}async*entries(t={}){t.limit!==0&&(yield*await this.#t.readonly(async(e,s)=>{let r=[],n=t.reverse?"prev":"next",c=e.openCursor(_h(t),n),i=await s(c);for(;i&&(r.push([i.key,i.value]),!(t.limit!==void 0&&r.length>=t.limit));)i.continue(),i=await s(c);return r}))}};var Sh=(o,t)=>o<t?-1:o>t?1:0;function $h(o,{start:t,end:e}){return!(t!==void 0&&o<t||e!==void 0&&o>=e)}function*Fp(o,t){if(o.limit===0)return;let e=t.filter(([s,r])=>r!==void 0&&$h(s,o)).sort(([s],[r])=>Sh(s,r));o.reverse&&e.reverse(),yield*e.slice(0,o.limit??1/0)}var o1=class{#t=new Map;async commit(t){for(let[e,s]of t)s===void 0?this.#t.delete(e):this.#t.set(e,structuredClone(s))}async getMany(t){return t.map(e=>structuredClone(this.#t.get(e)))}async*entries(t={}){yield*Fp(t,[...this.#t.entries()].map(([e,s])=>[e,structuredClone(s)]))}};var n1=class{#t;#e;constructor(t,e){this.#t=t,this.#e=e}set(t){return this.#e.set(this.#t,t)}delete(){return this.#e.delete(this.#t)}};var s1=class{kv;key;op;constructor(t,e){this.kv=t,this.key=e,this.op=new n1(e,t.op)}async set(t){return this.kv.set(this.key,t)}async get(){return this.kv.get(this.key)}async has(){return await this.get()!==void 0}async need(){return tc(await this.get(),`key not found "${this.key}"`)}async delete(){return this.kv.set(this.key,void 0)}};var Vf=hf({divisor:".",delimiter:":",chunkSize:1024});function xu(o){for(let t=o.length-1;t>=0;t--){let e=o.charCodeAt(t);if(e<65535)return o.slice(0,t)+String.fromCharCode(e+1)}}var r1=class{#t;#e=[{}];constructor(t,e){if(this.#t=t,e.length){let s=e.join(Vf.divisor),r=s+".",n=s+":";this.#e=[{start:n,end:xu(n)},{start:r,end:xu(r)}]}}async count(){let t=0;for(let e of this.#e)for await(let s of this.#t.entries(e))t++;return t}async clear(){let t=[];for(let e of this.#e)for await(let[s]of this.#t.entries(e))t.push([s,void 0]),t.length>=1024&&(await this.#t.commit(t),t=[]);t.length&&await this.#t.commit(t)}};var c1=class{#t;constructor(t){this.#t=t}set(t,e){return[this.#t.prefix(t),e]}delete(t){return[this.#t.prefix(t),void 0]}};var{divisor:v3,delimiter:p3}=Vf,i1=class{#t;#e;constructor(t){let{scopes:e}=t;this.#t=e.join(v3)+p3,this.#e=xu(this.#t)}prefix=t=>this.#t+t;unprefix=t=>t.slice(this.#t.length);scan=t=>{let{start:e,end:s,limit:r,reverse:n}=t;return{start:this.#t+(e??""),end:s===void 0?this.#e:this.#t+s,limit:r,reverse:n}}};function Eh(o){let t=o.limit;if(t!==void 0){if(!Number.isInteger(t))throw new Error("scan limit must be integer");if(t<0)throw new Error("scan limit must be positive")}return o}function Mh(o){for(let t of o){if(t==="")throw new Error("invalid scope empty string");Lh(t,"."),Lh(t,":")}return o}function Lh(o,t){if(o.includes(t))throw new Error(`invalid scope "${o}" contains illegal "${t}"`)}var a1=class o{op;subtree;#t;#e;#n;#o;constructor(t=new o1,e={}){this.#t=t,this.#o={strict:!1,scopes:[],...e},Mh(this.#o.scopes),this.#e=new i1(this.#o),this.op=new c1(this.#e),this.subtree=new r1(this.#t,this.#o.scopes),this.#n=this.#o.strict?s=>JSON.parse(JSON.stringify(s)):s=>s}cell(t){return new s1(this,t)}scope(...t){return new o(this.#t,{...this.#o,scopes:[...this.#o.scopes,...t]})}async commit(t){await this.#t.commit(t.map(([e,s])=>[e,s===void 0?void 0:this.#n(s)]))}async set(t,e){return this.commit([this.op.set(t,e)])}async setMany(t){return this.commit(t.map(([e,s])=>this.op.set(e,s)))}async delete(...t){return this.commit(t.map(e=>this.op.delete(e)))}async getMany(t){return t=t.map(e=>this.#e.prefix(e)),(await this.#t.getMany(t)).map(e=>e===void 0?void 0:e)}async get(t){let[e]=await this.getMany([t]);return e}async has(t){return await this.get(t)!==void 0}async need(t){return tc(await this.get(t),`key not found "${t}"`)}async needMany(t){let e=await this.getMany(t);for(let[s,r]of t.entries())tc(e[s],`key not found "${r}"`);return e}async*entries(t={}){t=Eh(this.#e.scan(t));for await(let[e,s]of this.#t.entries(t)){let r=this.#e.unprefix(e);s!==void 0&&(yield[r,s])}}[Symbol.asyncIterator](){return this.entries()}async*keys(t={}){for await(let[e]of this.entries(t))yield e}async*values(t={}){for await(let[,e]of this.entries(t))yield e}async count(t={}){let e=0;for await(let s of this.keys(t))e++;return e}async clear(t={}){let e=[];for await(let[s]of this.entries(t))e.push(this.op.delete(s)),e.length>=Vf.chunkSize&&(await this.commit(e),e=[]);e.length&&await this.commit(e)}};async function Oh(o,t){let e=()=>{};if(!t){let s=await kh(o,"kv"),r=new e1(s);t=new a1(r),e=()=>s.db.close()}return{kv:t,dispose:e}}function qp(o,t){let{presets:e,customs:s,fallback:r}=o.profiles;return t===void 0?r.profile:s.get(t)??e.get(t)??tc(e.get(r.key))}async function l1(o,t,e){let{kvs:s,controllers:r,assignments:n}=o;t.bindings=qp(o,e).bindings,n.set(t,e),await Uu(r.get(t)?.handle,async c=>{o.preferences.set(c,e),await s.preferences.set(c,e)})}function Bh(o,t){return d2(o)===d2(t)}var f1=class{#t;constructor(t){this.#t=t}#e(t){if(!Bh(t,this.#t.bindings))throw new Error("incompatible bindings")}get presets(){return[...this.#t.profiles.presets]}get customs(){return[...this.#t.profiles.customs]}isPreset(t){return this.#t.profiles.presets.has(t)}get(t){return qp(this.#t,t)}async create(t,e){let{kvs:s,profiles:r}=this.#t;this.#e(e.bindings),r.customs.set(t,e),await s.profiles.set(t,e),this.#t.subby.publish()}async clone(t,e){let{label:s,bindings:r}=this.get(e);await this.create(t,{basedOn:e,bindings:r,label:`${s} copy`})}async delete(t){let{kvs:e,assignments:s,profiles:{customs:r,fallback:n}}=this.#t;r.delete(t),await e.profiles.delete(t);for(let[c,i]of s)i===t&&await l1(this.#t,c,n.key);this.#t.subby.publish()}async update(t,e){let{kvs:s,assignments:r,profiles:{customs:n}}=this.#t;e.bindings&&this.#e(e.bindings);let c=this.get(t),i={...structuredClone(c),...e};n.set(t,i);for(let[a,u]of r)u===t&&(a.bindings=i.bindings);await s.profiles.set(t,i),this.#t.subby.publish()}};function Ph(o){let{presets:t}=o,e=tc(Object.keys(t)[0],"missing presets"),s=tc(t[e]),r=s.bindings,n=o.kv.scope(d2(r).toString()),c={presets:new o2,customs:new o2,fallback:{key:e,profile:s}};return lu(c.presets,Object.entries(t)),{subby:h2(),kv:n,presets:t,bindings:r,idCounter:new If,profiles:c,controllers:new o2,assignments:new o2,preferences:new o2,kvs:{profiles:n.scope("profiles"),preferences:n.scope("preferences")}}}var u1=class{#t;constructor(t){this.#t=t}async assign(t,e){await l1(this.#t,t,e),this.#t.subby.publish()}assignedProfileKeyOf(t){let{assignments:e}=this.#t;return e.get(t)??this.#t.profiles.fallback.key}};var v1=class{#t;profiles;assignments;presets;constructor(t){this.#t=Ph(t),this.profiles=new f1(this.#t),this.assignments=new u1(this.#t),this.presets=t.presets}get on(){return this.#t.subby.on}#e(t){let{preferences:e,assignments:s,controllers:r}=this.#t,n=tc(r.get(t)),c=s.get(t)??e.get(n.handle)??n.defaultProfileKey;t.bindings=this.profiles.get(c).bindings,s.set(t,c)}async load(){let{kvs:t,controllers:e,preferences:s,profiles:{customs:r}}=this.#t;r.clear(),lu(r,await Pp(t.profiles)),s.clear(),lu(s,await Pp(t.preferences));for(let n of e.keys())this.#e(n)}get controllers(){return[...this.#t.controllers.keys()]}get fallbackProfileKey(){return this.#t.profiles.fallback.key}meta(t){return this.#t.controllers.get(t)}attach(t,e){let s=this.#t.idCounter.next();this.#t.controllers.set(t,{...e,id:s}),this.#e(t)}detach(t){this.#t.controllers.delete(t),this.#t.assignments.delete(t)}};function p1(o){let[t,e]=Object.entries(o)[0];return{key:t,profile:e}}async function Ch(o,t){let e=()=>{};if(!t){let s=new BroadcastChannel(o);t=s,e=()=>s.close()}return{broadcastChannel:t,dispose:e}}async function jh(o){let{dispose:t,schedule:e,disposable:s}=J0(),r=o.namespace?`tact_${o.namespace}`:"tact",{kv:n}=s(await Oh(r,o.kv)),{broadcastChannel:c}=s(await Ch(r,o.broadcastChannel));try{let{maxPlayers:i}=o,{bindings:a}=p1(o.presets).profile,u=new t1(a),v=new v1({...o,kv:n});return e(ec(c,{message:()=>v.load()})),e(v.on(()=>c.postMessage({}))),await v.load(),fh({hub:u,controls:v,maxPlayers:i,dispose:t})}catch(i){throw t(),i}}var Kp=1024,d1=class{dispose;#t;#e=[];constructor(t){this.#t=t,this.dispose=t.onSample(e=>{this.#e.push(e),this.#e.length>Kp&&console.warn(`tact sampler exceeded limit ${Kp}`),this.#e=Vd(this.#e,Kp)})}take(){this.#t.poll?.();let t=this.#e;return this.#e=[],t}};var{min:d3,max:h3,abs:m3,sign:x3,floor:zk,ceil:Tk,pow:Uk}=Math;function bf(o,t=0,e=1){return o=d3(o,e),o=h3(o,t),o}function g3(o,t,e,s){let n=(e-t)*o;return s!==void 0&&m3(n)>s&&(n=x3(n)*s),t+n}function b3(o,t,e){return(o-t)/(e-t)}function Ih(o,t,e,s=0,r=1,n=!1){let c=b3(o,t,e);return n&&(c=bf(c)),g3(c,s,r)}var h1=class o{x;y;constructor(t=0,e=0){this.x=t,this.y=e}static new(t=0,e=0){return new this(t,e)}static zero(){return new this}static fill(t){return new this(t,t)}static from(t){return Array.isArray(t)?new this(...t):new this(t.x,t.y)}static magnitudeSquared(t,e){return t*t+e*e}static magnitude(t,e){return Math.sqrt(this.magnitudeSquared(t,e))}static average(...t){return new this().add(...t).divBy(t.length)}static min(...t){return new this(Math.min(...t.map(e=>e.x)),Math.min(...t.map(e=>e.y)))}static max(...t){return new this(Math.max(...t.map(e=>e.x)),Math.max(...t.map(e=>e.y)))}static rotation(t){return new this(Math.cos(t),Math.sin(t))}dup(){return new this.constructor(this.x,this.y)}*[Symbol.iterator](){yield this.x,yield this.y}array(){return[this.x,this.y]}toJSON(){return this.array()}toString(){return`(${this.constructor.name} x${this.x.toFixed(2)}, y${this.y.toFixed(2)})`}fill(t){return this.x=t,this.y=t,this}zero(){return this.fill(0)}set_(t,e){return this.x=t,this.y=e,this}set({x:t,y:e}){return this.x=t,this.y=e,this}from(t){if(Array.isArray(t)){let[e,s]=t;this.x=e,this.y=s}else{let{x:e,y:s}=t;this.x=e,this.y=s}return this}magnitudeSquared(){return o.magnitudeSquared(this.x,this.y)}magnitude(){return o.magnitude(this.x,this.y)}rotation(){return Math.atan2(this.y,this.x)}equals_(t,e){return this.x===t&&this.y===e}equals(...t){return t.every(({x:e,y:s})=>this.equals_(e,s))}near_(t,e,s=1e-6){return Math.abs(this.x-t)<=s&&Math.abs(this.y-e)<=s}near({x:t,y:e},s=1e-6){return this.near_(t,e,s)}dot_(t,e){return this.x*t+this.y*e}dot({x:t,y:e}){return this.dot_(t,e)}distanceSquared_(t,e){return t=this.x-t,e=this.y-e,t*t+e*e}distanceSquared({x:t,y:e}){return this.distanceSquared_(t,e)}distance_(t,e){return Math.sqrt(this.distanceSquared_(t,e))}distance({x:t,y:e}){return this.distance_(t,e)}angleBetween_(t,e){let s=this.dot_(t,e),r=this.magnitude()*o.magnitude(t,e);if(r===0)return 0;let n=bf(s/r,-1,1);return Math.acos(n)}angleBetween({x:t,y:e}){return this.angleBetween_(t,e)}normalize(){return this.divBy(this.magnitude())}half(){return this.divBy(2)}double(){return this.mulBy(2)}abs(){return this.map(t=>Math.abs(t))}rotate(t){let{x:e,y:s}=this;return this.x=e*Math.cos(t)-s*Math.sin(t),this.y=e*Math.sin(t)+s*Math.cos(t),this}perpendicular(){let{x:t,y:e}=this;return this.x=-e,this.y=t,this}clampMagnitude(t){return this.magnitude()>t&&this.normalize().mulBy(t),this}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}map(t){return this.x=t(this.x,0),this.y=t(this.y,1),this}morph(t){let e=t(this);return e&&e!==this&&this.set(e),this}clamp(t={x:0,y:0},e={x:1,y:1}){return this.x=bf(this.x,t.x,e.x),this.y=bf(this.y,t.y,e.y),this}clampBy(t=0,e=1){return this.x=bf(this.x,t,e),this.y=bf(this.y,t,e),this}negate(){return this.map(t=>t*-1)}addBy(t){return this.x+=t,this.y+=t,this}subBy(t){return this.x-=t,this.y-=t,this}mulBy(t){return this.x*=t,this.y*=t,this}scale(t){return this.x*=t,this.y*=t,this}divBy(t){return t===0?this:(this.x/=t,this.y/=t,this)}add_(t,e){return this.x+=t,this.y+=e,this}add(...t){for(let{x:e,y:s}of t)this.add_(e,s);return this}sub_(t,e){return this.x-=t,this.y-=e,this}sub(...t){for(let{x:e,y:s}of t)this.sub_(e,s);return this}mul_(t,e){return this.x*=t,this.y*=e,this}mul(...t){for(let{x:e,y:s}of t)this.mul_(e,s);return this}div_(t,e){return t!==0&&(this.x/=t),e!==0&&(this.y/=e),this}div(...t){for(let{x:e,y:s}of t)this.div_(e,s);return this}lerp_(t,e,s){return this.x+=(t-this.x)*s,this.y+=(e-this.y)*s,this}lerp(t,{x:e,y:s}){return this.lerp_(t,e,s)}reflect_(t,e){let s=2*this.dot_(t,e);return this.x-=s*t,this.y-=s*e,this}reflect({x:t,y:e}){return this.reflect_(t,e)}rotateAroundPoint_(t,e,s){let r=this.x-e,n=this.y-s,c=Math.cos(t),i=Math.sin(t);return this.x=c*r-i*n+e,this.y=i*r+c*n+s,this}rotateAroundPoint(t,{x:e,y:s}){return this.rotateAroundPoint_(t,e,s)}};function w2(o){return o!==0}function Wp(o,t){let e=s=>Wp(o,s);if(t===null)return 0;if(Bf(t))return t;if(Pf(t)){let s=o.latestValues.get(t)??0;return o.recentSamples.filter(r=>r.code===t).reduce((r,n)=>Math.abs(n.value)>Math.abs(r)?n.value:r,s)}else switch(t[0]){case"accumulate":{let s=t[1],r=0;for(let n of o.recentSamples)n.code===s&&(r+=n.value);return r}case"up":{let s=t[1],r=0,n=o.previousValues.get(s)??0;for(let c of o.recentSamples)c.code===s&&(w2(n)&&!w2(c.value)&&r++,n=c.value);return r}case"down":{let s=t[1],r=0,n=o.previousValues.get(s)??0;for(let c of o.recentSamples)c.code===s&&(!w2(n)&&w2(c.value)&&r++,n=c.value);return r}case"was":{let s=t[1];return o.previousValues.get(s)??0}case"since":{let s=t[1],r=o.previousValues.get(s)??0;return(o.latestValues.get(s)??0)-r}case"if":{let[,s,r,n]=t;return e(s)?e(r):k0(n)?e(n):0}case"min":return Math.min(...t.slice(1).map(e));case"max":return Math.max(...t.slice(1).map(e));case"+":return t.slice(1).map(e).reduce((s,r)=>s+r,0);case"*":return t.slice(1).map(e).reduce((s,r)=>s*r,1);case"==":return+(e(t[1])===e(t[2]));case"!=":return+(e(t[1])!==e(t[2]));case">":return+(e(t[1])>e(t[2]));case"<":return+(e(t[1])<e(t[2]));case">=":return+(e(t[1])>=e(t[2]));case"<=":return+(e(t[1])<=e(t[2]));case"!":return+(e(t[1])===0);case"!!":return+(e(t[1])!==0);case"-":{let[,s,...r]=t;if(r.length===0)return-e(s);let n=e(s);for(let c of r)n-=e(c);return n}case"clamp":{let[,s,r,n]=t,c=e(n);return Math.min(r===null?1/0:e(r),Math.max(s===null?-1/0:e(s),c))}case"remap":{let[s,r,n,c,i]=t.slice(1).map(e);return Ih(i,s,r,n,c)}case"dt":return o.dt;case"held":{let[,s,r]=t,n=w2(e(r)),c=o.holding.get(t);return n&&!c&&(c={start:o.clock.time},o.holding.set(t,c)),!n&&c&&(c=void 0,o.holding.delete(t)),c&&o.clock.time-c.start>=s?1:0}case"taps":{let[,s,r,n]=t,c=w2(e(n)),i=o.clock.time,a=Cf(o.tapping,t,()=>({wasDown:!1,startedAt:null,count:0})),u=c&&!a.wasDown,v=!c&&a.wasDown;a.startedAt!==null&&i-a.startedAt>=r&&(a.startedAt=null,a.count=0);let m=0;return u&&a.startedAt===null&&(a.startedAt=i),v&&a.startedAt!==null&&(a.count++,a.count===s&&(m=1,a.count=0,a.startedAt=null)),a.wasDown=c,m}case"mod":{let[,...s]=t,r=u=>w2(o.latestValues.get(u)??0),n=r("ShiftLeft")||r("ShiftRight"),c=r("ControlLeft")||r("ControlRight"),i=r("AltLeft")||r("AltRight"),a=r("MetaLeft")||r("MetaRight");return s.includes("shift")!==n||s.includes("ctrl")!==c||s.includes("alt")!==i||s.includes("meta")!==a?0:1}default:throw new Error("unknown expression")}}var m1=class{time;since=0;last;constructor(t=performance.now()){this.time=t}update(t=performance.now()){this.since=t-(this.time??t),this.last=this.time,this.time=t}};var x1=class{dt=0;clock=new m1;recentSamples=[];latestValues=new Map;previousValues=new Map;holding=new Map;tapping=new Map};function zh(){return{value:0,was:0,sum:0}}function Gp(o){let t=d2(o),e=[];function s(n,c){if(gf(n)){let i=zh();return e.push({path:JSON.stringify(c),input:i,expression:n}),i}else return jp(n,(i,a)=>s(i,[...c,a]))}let r=s(o,["b"]);return e.sort((n,c)=>n.path<c.path?-1:n.path>c.path?1:0),{hash:t,minihash:Wu(t),inputs:r,inputList:e.map(n=>n.input),rootList:e.map(n=>n.expression)}}var Nf=class{#t;#e;#n;#o;constructor(t){this.#e=hf(structuredClone(t.bindings)),this.#n=Gp(this.#e),this.#t=new d1(t.source),this.#o=new x1}get bindings(){return this.#e}set bindings(t){let e=hf(structuredClone(t)),s=Gp(e),r=this.#n.hash;if(s.hash!==r)throw new Error("incompatible bindings");this.#e=e,this.#n.rootList=s.rootList}*evaluate(t=performance.now()){let e=this.#t.take();this.#o.clock.update(t),this.#o.recentSamples=e,this.#o.dt=this.#o.clock.since/1e3;for(let{code:s,value:r}of e)this.#o.latestValues.set(s,r);for(let[s,r]of this.#n.rootList.entries()){let n=Wp(this.#o,r);n!==0&&(yield{id:s,value:n})}for(let{code:s,value:r}of e)this.#o.previousValues.set(s,r)}encode(t=performance.now()){return Xu(this.#n.minihash,[...this.evaluate(t)])}clear(){this.#t.take()}dispose(){return this.#t.dispose()}};var g1=class{get;constructor(t){this.get=t}get gamepad(){return this.get()}};function Th(o,t){let e=o;return()=>{let s=t();return s!=null&&(e=s),e}}function b1(o){let t=new Map;function e(){s(),r()}function s(){for(let c of navigator.getGamepads())if(c?.connected&&!t.has(c.index)){let i=()=>navigator.getGamepads()[c.index],a=new g1(Th(c,i)),u=o(a);t.set(c.index,{pad:a,dispose:u})}}function r(){for(let[c,{pad:i,dispose:a}]of t)navigator.getGamepads()[i.gamepad.index]?.connected||(a(),t.delete(c))}e();let n=ec(window,{gamepadconnected:e,gamepaddisconnected:e});return()=>{n();for(let{dispose:c}of t.values())c();t.clear()}}var l2=class{onSample=h2();dispose=J0()};var Ff=class extends l2{pad;#t=new Map;constructor(t){super(),this.pad=t}get gamepad(){return this.pad.gamepad}poll(){let t=this.gamepad;this.#n(t),this.#o(t)}#e(t,e){let s=this.#t.get(t)??0;e!==s&&(this.#t.set(t,e),this.onSample.publish({code:t,value:e}))}#n(t){let e=0;for(let[s,r]of t.buttons.entries()){let n=r.value;this.#e(`gamepad.${s+1}`,n),e=Math.max(e,n)}this.#e("gamepad.any",e>=.9?1:0)}#o(t){for(let[e,s]of t.axes.entries())this.#e(`gamepad.axis.${e+1}`,s)}};function Uh(o,t){return b1(e=>{let s=new Ff(e),r=new Nf({source:s,bindings:o.bindings});o.plug(r);let n=t?.(r,s);return()=>{r.dispose(),o.remove(r),n?.()}})}function Rh(o,t){return o.length>t?o.slice(0,t)+"...":o}var y1=class extends l2{#t;constructor(...t){super(),this.#t=t;for(let e of t)this.dispose.schedule(e.onSample(s=>this.onSample.publish(s)))}poll(){for(let t of this.#t)t.poll?.()}};var w1=class{$hex=oc("");clear=Ud(250,()=>{this.$hex.set("")});update(t){this.$hex(Mf(new Uint8Array(t))),this.clear()}};function qf(o){return`pointer.${o+1}`}var k1=class extends l2{client=new h1;constructor(t=window){super(),this.dispose.schedule(ec(t,this.#t))}#t={pointerdown:t=>{this.onSample.publish({code:qf(t.button),value:1})},pointerup:t=>{this.onSample.publish({code:qf(t.button),value:0})},pointermove:({clientX:t,clientY:e,movementX:s,movementY:r})=>{this.client.set_(t,e),s&&this.onSample.publish({code:"pointer.x",value:s}),r&&this.onSample.publish({code:"pointer.y",value:r})},wheel:({deltaX:t,deltaY:e})=>{t&&this.onSample.publish({code:"pointer.wheel.x",value:t}),e&&this.onSample.publish({code:"pointer.wheel.y",value:e})}}};var _1=class extends l2{#t=new Set;constructor(t=window){super(),this.dispose.schedule(ec(t,this.#e)),this.dispose.schedule(ec(window,this.#n))}#e={keydown:t=>{t.repeat||(this.#t.size===0&&this.onSample.publish({code:"keyboard.any",value:1}),this.onSample.publish({code:t.code,value:1}),this.#t.add(t.code))},keyup:t=>{this.onSample.publish({code:t.code,value:0}),this.#t.delete(t.code),this.#t.size===0&&this.onSample.publish({code:"keyboard.any",value:0})}};#n={blur:()=>{for(let t of this.#t)this.onSample.publish({code:t,value:0});this.#t.size&&this.onSample.publish({code:"keyboard.any",value:0}),this.#t.clear()}}};var Dh=m2`@layer core {
29
29
 
30
- .plate {
31
- background: black;
30
+ ::selection {
31
+ color: var(--selection);
32
+ background-color: var(--selection-bg);
32
33
  }
33
34
 
34
- `;var Fe=()=>Qt(()=>(Dt(Ve),gt`
35
- <div class=plate>
36
- coming soon, lol
35
+ ::-webkit-scrollbar { width: 8px; }
36
+ ::-webkit-scrollbar-track { background: transparent; }
37
+ ::-webkit-scrollbar-thumb { background: #444; border-radius: 1em; }
38
+ ::-webkit-scrollbar-thumb:hover { background: #666; }
39
+
40
+ a {
41
+ color: var(--link);
42
+ text-decoration: none;
43
+
44
+ &:visited {
45
+ color: color-mix(in srgb, purple, var(--link) 70%);
46
+ }
47
+
48
+ &:hover {
49
+ color: color-mix(in srgb, white, var(--link) 90%);
50
+ text-decoration: underline;
51
+ }
52
+
53
+ &:active {
54
+ color: color-mix(in srgb, white, var(--link) 50%);
55
+ }
56
+ }
57
+
58
+ }`;var Hh=m2`@layer vars {
59
+
60
+ :is(:root, :host) {
61
+ ${w3({bg:"#111",alpha:"#def",rounded:"0.5em",padding:"0.5em",prime:"#d068ff",code:"#3f1",link:"cyan",selection:"white","selection-bg":"#f70",lame:"#8888",angry:"#f50",zesty:"#cf0",happy:"#0fa",calm:"#0af",sad:"#74f",quirky:"#f49","inactive-opacity":"0.5","anim-duration":"150ms"})}
62
+ }
63
+
64
+ }`;function y3([o,t]){return`--${o}: var(--shiny-${o}, ${t});`}function w3(o){return Object.entries(o).map(y3).join(`
65
+ `)}var Vh=m2`@layer reset {
66
+
67
+ * {
68
+ margin: 0;
69
+ padding: 0;
70
+ box-sizing: border-box;
71
+
72
+ scrollbar-width: thin;
73
+ scrollbar-color: #888 transparent;
74
+ }
75
+
76
+ ::-webkit-scrollbar { width: 8px; }
77
+ ::-webkit-scrollbar-track { background: transparent; }
78
+ ::-webkit-scrollbar-thumb { background: #888; border-radius: 1em; }
79
+ ::-webkit-scrollbar-thumb:hover { background: #999; }
80
+
81
+ }`;var Nh=m2`
82
+
83
+ @layer vars, reset, core, underlay, view, overlay;
84
+
85
+ ${Hh}
86
+ ${Vh}
87
+ ${Dh}
88
+
89
+ `;var Xp=new CSSStyleSheet;Xp.replaceSync(Nh);var Kf=class{length=1;$index=oc(0);constructor(t=0){this.$index(t)}clamp(t){return t=Math.min(t,this.length-1),t=Math.max(t,0),t}get index(){return this.clamp(this.$index())}async setIndex(t){return this.$index(t)}async shimmy(t){let e=this.clamp(this.index+t);return this.setIndex(e)}};var Fh=ee`@layer view {
90
+
91
+ :host {
92
+ display: inline-flex;
93
+ flex-direction: column;
94
+ }
95
+
96
+ slot[part="tabs"] {
97
+ display: flex;
98
+ flex-wrap: wrap;
99
+
100
+ &::slotted([data-tabbed]) {
101
+ opacity: 1;
102
+ color: currentColor;
103
+ text-decoration: underline;
104
+ }
105
+ }
106
+
107
+ slot[part="tabs"][data-snug] {
108
+ &::slotted(*) {
109
+ border-radius: var(--rounded);
110
+ }
111
+
112
+ &::slotted(:not([data-last], [data-next-is-tabbed])) {
113
+ border-right: none;
114
+ }
115
+
116
+ &::slotted([data-tabbed]:not([data-first])) {
117
+ border-left: none;
118
+ }
119
+
120
+ &::slotted(:not([data-last])) {
121
+ border-top-right-radius: 0;
122
+ border-bottom-right-radius: 0;
123
+ }
124
+
125
+ &::slotted(:not([data-first])) {
126
+ border-top-left-radius: 0;
127
+ border-bottom-left-radius: 0;
128
+ }
129
+ }
130
+
131
+ } `;var qh=eh((o={})=>{Z0("shiny-tabs"),Df(Xp,Fh);let t=Dp(),e=ne(()=>xt.attrs(t).spec({index:Number})),s=ne(()=>o.control??new Kf(e.index??0)),r=p2([]),n=p2([]);function c(u){let v=u.currentTarget;r(v.assignedElements())}function i(u){let v=u.currentTarget;n(v.assignedElements())}e.index=s.$index(),s.length=r().length;function a(u,v){let m=s.clamp(u+v);return m===u?!1:m===s.index}for(let[u,v]of r().entries()){let m=u===s.index,$=xt.attrs(v);$.booleans.disabled=m,$.booleans["data-snug"]=o.snug,$.booleans["data-tabbed"]=m,$.booleans["data-first"]=u===0,$.booleans["data-last"]=u===s.length-1,$.booleans["data-next-is-tabbed"]=a(u,1),$.booleans["data-previous-is-tabbed"]=a(u,-1),v.onclick=()=>s.setIndex(u)}for(let[u,v]of n().entries()){let m=u===s.index;xt.attrs(v).booleans["data-tabbed"]=m,xt.attrs(v).booleans.hidden=!m}return I`
132
+ <slot part=tabs ?data-snug="${o.snug}" @slotchange="${c}"></slot>
133
+ <slot part=panels name=panel @slotchange="${i}"></slot>
134
+ `});var Kh=ee`@layer view {
135
+
136
+ :host {
137
+ display: block;
138
+ width: min(50em, 100%);
139
+
140
+ color: var(--text);
141
+ text-shadow: var(--text-shadow);
142
+ }
143
+
144
+ [part="plate"] {
145
+ padding: var(--pad);
146
+ --tint: oklch(from var(--prime) l c h / 50%);
147
+ }
148
+
149
+ [view="shiny-tabs"] {
150
+ --prime: inherit;
151
+
152
+ --tint: var(--prime);
153
+ --slate: color-mix(in oklch,
154
+ transparent,
155
+ color-mix(in oklch, var(--bg), var(--tint) 25%) 25%
156
+ );
157
+ --shimmer: color-mix(in oklch, transparent, var(--tint));
158
+
159
+ display: flex;
160
+ flex-direction: column;
161
+ align-items: center;
162
+
163
+ &::part(tabs) {
164
+ display: flex;
165
+ width: max-content;
166
+ justify-content: center;
167
+ padding: var(--nib);
168
+
169
+ background: var(--slate);
170
+ border: 1px solid var(--shimmer);
171
+ border-radius: var(--round);
172
+ }
173
+
174
+ &::part(panels) {
175
+ display: block;
176
+ width: 100%;
177
+ margin-top: var(--pad);
178
+ }
179
+
180
+ button {
181
+ border: none;
182
+ background: transparent;
183
+ border-radius: var(--round);
184
+ border: 2px solid transparent;
185
+ text-shadow: var(--text-shadow);
186
+
187
+ &[data-tabbed] {
188
+ text-decoration: none;
189
+ color: var(--prime);
190
+ border-color: var(--prime);
191
+ background: color-mix(in oklch, var(--bg), var(--prime) 30%);
192
+ box-shadow:
193
+ inset 0 0 1.5em oklch(from var(--shimmer) l c h / 50%),
194
+ 0 0 2em oklch(from var(--shimmer) l c h / 50%);
195
+ }
196
+ }
197
+ }
198
+
199
+ }`;var k2=ee`
200
+ @layer theme, view;
201
+ @layer theme {
202
+
203
+ ${Uf}
204
+
205
+ :host {
206
+ --prime: var(--tact-prime, #fb0);
207
+
208
+ --text: var(--tact-text, #fffc);
209
+ --bg: var(--tact-bg, oklch(from var(--prime) calc(l * 0.3) calc(c * 0.1) h));
210
+ --droppy: var(--tact-droppy, oklch(from var(--prime) l c calc(h + 100)));
211
+ --recording: var(--tact-recording, oklch(from var(--prime) l c calc(h + 100)));
212
+
213
+ --round: var(--tact-round, 0.5em);
214
+ --pad: var(--tact-pad, 0.5em);
215
+ --nib: var(--tact-nib, 0.2em);
216
+ --space: var(--tact-space, 1em);
217
+ --box-shadow: var(--tact-box-shadow, 0.1em 0.2em 1em #0006);
218
+ --text-shadow: var(--tact-text-shadow, 0.02em 0.04em 0.1em #000a);
219
+ }
220
+
221
+ [theme-card] {
222
+ --tint: var(--prime);
223
+ --slate: color-mix(in oklch,
224
+ transparent,
225
+ color-mix(in oklch, var(--bg), var(--tint) 25%) 25%
226
+ );
227
+ --shimmer: color-mix(in oklch, transparent, var(--tint));
228
+
229
+ border-radius: var(--round);
230
+ background: var(--slate);
231
+ border: 1px solid var(--shimmer);
232
+ box-shadow:
233
+ inset 0 0 3em color-mix(in oklch, transparent, var(--shimmer) 30%),
234
+ var(--box-shadow);
235
+
236
+ &[theme-card="dull"] {
237
+ --tint: #8888;
238
+ }
239
+ }
240
+
241
+ [theme-button] {
242
+ display: flex;
243
+ align-items: center;
244
+ justify-content: center;
245
+ font: inherit;
246
+ color: inherit;
247
+
248
+ cursor: pointer;
249
+ user-select: none;
250
+
251
+ opacity: 0.8;
252
+ gap: 0.5em;
253
+ padding: 0.5em;
254
+
255
+ &:is(:hover, :focus-visible) { opacity: 1; }
256
+ &:active { opacity: 0.8; }
257
+
258
+ svg {
259
+ width: 1.2em;
260
+ height: 1.2em;
261
+ }
262
+
263
+ &[theme-button~="naked"] {
264
+ padding: 0;
265
+ border: none;
266
+ background: transparent;
267
+ color: currentColor;
268
+ }
269
+
270
+ &[theme-button~="angry"] {
271
+ &:is(:hover, :focus-visible) { color: red; }
272
+ }
273
+ }
274
+
275
+ [theme-select] {
276
+ --base: var(--tint, var(--prime));
277
+ font: inherit;
278
+ color: inherit;
279
+ background: var(--bg);
280
+ border: 1px solid var(--base);
281
+ border-radius: var(--round);
282
+ padding: var(--nib) var(--pad);
283
+ box-shadow: inset 0 0 1em oklch(from var(--base) l c h / 40%);
284
+
285
+ &:is(:hover, :focus-visible) {
286
+ filter: brightness(110%);
287
+ box-shadow: inset 0 0 1em oklch(from var(--base) l c h / 60%);
288
+ }
289
+
290
+ &:active {
291
+ filter: brightness(90%);
292
+ box-shadow: inset 0 0 1em oklch(from var(--base) l c h / 40%);
293
+ }
294
+ }
295
+
296
+ [theme-input] {
297
+ --base: var(--tint, var(--prime));
298
+ --chill: oklch(from var(--base) l c h / 50%);
299
+ font: inherit;
300
+ color: inherit;
301
+ background: transparent;
302
+ border: 1px solid var(--chill);
303
+ border-radius: var(--round);
304
+ padding: 0 var(--nib);
305
+ box-shadow: inset 0 0 1em oklch(from var(--chill) l c h / 20%);
306
+ }
307
+
308
+ }`;var Wf=mt`<svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="ai ai-GameController"><path d="M9 15l-2.968 2.968A2.362 2.362 0 0 1 2 16.298V15l1.357-6.784A4 4 0 0 1 7.279 5h9.442a4 4 0 0 1 3.922 3.216L22 15v1.297a2.362 2.362 0 0 1-4.032 1.67L15 15H9z"/><path d="M9 5l1 2h4l1-2"/></svg>`;var Wh=mt`<svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="ai ai-SettingsHorizontal"><path d="M3 5h4m14 0H11m-8 7h12m6 0h-2M3 19h2m16 0H9"/><circle cx="9" cy="5" r="2"/><circle cx="17" cy="12" r="2"/><circle cx="7" cy="19" r="2"/></svg>`;var Gh=ee`@layer view {
309
+
310
+ [part="plate"] {
311
+ display: flex;
312
+ flex-direction: column;
313
+ }
314
+
315
+ .topbar {
316
+ display: flex;
317
+ flex-wrap: wrap;
318
+ align-items: center;
319
+ padding: var(--pad) var(--space);
320
+
321
+ [view="profile-select"] {
322
+ font-size: 1.2em;
323
+ }
324
+
325
+ .corner {
326
+ display: flex;
327
+ flex-wrap: wrap;
328
+ align-items: center;
329
+ gap: var(--pad);
330
+
331
+ small {
332
+ user-select: none;
333
+ opacity: 0.5;
334
+ font-style: italic;
335
+ border: 1px solid;
336
+ border-radius: var(--round);
337
+ padding: var(--nib) var(--pad);
338
+ }
339
+ }
340
+
341
+ .tools {
342
+ display: flex;
343
+ flex-wrap: wrap;
344
+ gap: var(--pad);
345
+ flex: 1 1 auto;
346
+ justify-content: end;
347
+
348
+ input[type="text"] {
349
+ width: 12em;
350
+ }
351
+ }
352
+ }
353
+
354
+ .bindings, .group {
355
+ display: flex;
356
+ flex-direction: column;
357
+ gap: var(--nib);
358
+ }
359
+
360
+ .bindings {
361
+ user-select: none;
362
+ cursor: default;
363
+ padding: var(--space);
364
+
365
+ summary {
366
+ color: var(--prime);
367
+ width: max-content;
368
+ font-weight: bold;
369
+ font-size: 1.2em;
370
+ &:is(:hover, :focus-visible) { filter: brightness(120%); }
371
+ &:active { filter: brightness(90%); }
372
+ }
373
+
374
+ .expression {
375
+ display: flex;
376
+ align-items: end;
377
+ margin-left: 0.5em;
378
+ border-bottom: 1px dashed oklch(from var(--prime) l c h / 30%);
379
+ flex-wrap: wrap;
380
+ gap: 0 var(--pad);
381
+ padding: var(--nib);
382
+
383
+ min-height: 3em;
384
+
385
+ &:last-of-type {
386
+ margin-bottom: calc(var(--space) * 2);
387
+ }
388
+
389
+ > strong {
390
+ font-weight: normal;
391
+ }
392
+
393
+ > div {
394
+ margin-left: auto;
395
+
396
+ input {
397
+ font: inherit;
398
+ color: inherit;
399
+ width: 8em;
400
+
401
+ &[type="number"] {
402
+ width: 5em;
403
+ }
404
+ }
405
+ }
406
+
407
+ div {
408
+ display: flex;
409
+ flex-wrap: wrap;
410
+ align-items: stretch;
411
+ gap: var(--nib);
412
+ }
413
+
414
+ .bracket {
415
+ align-items: center;
416
+ gap: var(--nib);
417
+ padding: 2px var(--nib);
418
+ background: color-mix(in oklch, #aaa2, var(--slate) 80%);
419
+ box-shadow: 0.1em 0.2em 0.5em #0002;
420
+ border: 1px solid #fff4;
421
+ border-radius: 0.2em;
422
+
423
+ &.mod {
424
+ gap: var(--nib);
425
+ }
426
+ }
427
+ }
428
+
429
+ .children {
430
+ display: flex;
431
+ flex-direction: column;
432
+
433
+ margin-left: 0.3em;
434
+ padding-left: 0.5em;
435
+ border-left: 1px solid oklch(from var(--prime) l c h / 20%);
436
+ }
437
+
438
+ .expression .recorder {
439
+ display: flex;
440
+ gap: var(--pad);
441
+
442
+ &[data-recording] {
443
+ color: var(--recording);
444
+ }
445
+ }
446
+ }
447
+
448
+ }`;var Xh=mt`<svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="ai ai-Copy"><path d="M8 4v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V7.242a2 2 0 0 0-.602-1.43L16.083 2.57A2 2 0 0 0 14.685 2H10a2 2 0 0 0-2 2z"/><path d="M16 18v2a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h2"/></svg>`;var Jh=mt`<svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="ai ai-TrashCan"><path d="M4 6h16l-1.58 14.22A2 2 0 0 1 16.432 22H7.568a2 2 0 0 1-1.988-1.78L4 6z"/><path d="M7.345 3.147A2 2 0 0 1 9.154 2h5.692a2 2 0 0 1 1.81 1.147L18 6H6l1.345-2.853z"/><path d="M2 6h20"/><path d="M10 11v5"/><path d="M14 11v5"/></svg>`;function Jp(){return Mf.random(16)}var Yh=mt`<svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="ai ai-KeyCap"><path d="M7 3s3 .5 5 .5 5-.5 5-.5l1 9s-3 1-6 1-6-1-6-1l1-9z"/><path d="M3.869 8.147l-.862 10.294c-.03.366.04.733.205 1.06l.197.393A2.01 2.01 0 0 0 5.206 21h13.588a2.01 2.01 0 0 0 1.797-1.106l.197-.392c.165-.328.236-.695.205-1.06l-.862-10.295a3.99 3.99 0 0 0-.79-2.068L17 3s-3 .5-5 .5S6.978 3 6.978 3l-2.32 3.08a3.99 3.99 0 0 0-.79 2.067z"/><path d="M6 12l-2.5 8M18 12l2.5 8"/></svg>`;var Zh=mt`<svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="ai ai-Backspace"><path d="M17 15l-6-6m6 0l-6 6"/><path d="M7.4 4.8A2 2 0 0 1 9 4h11a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H9a2 2 0 0 1-1.6-.8l-4.5-6a2 2 0 0 1 0-2.4l4.5-6z"/></svg>`;var Qh=mt`<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" class="ai ai-Cross"><path d="M20 20L4 4m16 0L4 20"/></svg>`;function tm(o,t){let e=new Set,s=new Set;function r(i){if(i==="ShiftLeft"||i==="ShiftRight")return"shift";if(i==="ControlLeft"||i==="ControlRight")return"ctrl";if(i==="MetaLeft"||i==="MetaRight")return"meta";if(i==="AltLeft"||i==="AltRight")return"alt"}let n=ec(window,{blur:()=>c(),keydown:i=>{if(i.preventDefault(),i.code==="Escape")return c();e.add(i.code),s.add(i.code)},keyup:i=>{if(i.preventDefault(),e.delete(i.code),e.size===0){let a=new Set,u=new Set;for(let v of s){let m=r(v);m?u.add(m):a.add(v)}s.size===0||(a.size===0?o(["*",...s]):u.size>0?o(["*",["mod",...u],...a]):s.size>1?o(["*",...s]):o([...s][0])),c()}}}),c=()=>{n(),t()};return c}function em(o,t){let{dispose:e,schedule:s}=J0();s(t);let r=new Set,n=new Set,c=new Set;return s(ec(window,{blur:()=>e()})),s(b1(i=>{let a=new Ff(i);return r.add(a),a.onSample(u=>{if(u.code!=="gamepad.any")if(u.value>.9)n.add(u.code),c.add(u.code);else{if(!n.delete(u.code))return;n.size===0&&(c.size===1?o([...c][0]):c.size>1&&o(["*",...c]),e())}}),()=>{a.dispose(),r.delete(a)}})),s(jf(async()=>{for(let i of r)i.poll();await zf(16.67)})),e}function om(o,t){let{dispose:e,schedule:s}=J0();s(t);let r=new Set,n=new Set,c=i=>i.composedPath().some(a=>a instanceof Element&&a.matches("button.record"));return s(ec(window,{blur:()=>e(),auxclick:i=>i.preventDefault(),mousedown:i=>{if(c(i))return;i.preventDefault();let a=qf(i.button);r.add(a),n.add(a)},mouseup:i=>{let a=qf(i.button);r.delete(a)&&(i.preventDefault(),r.size===0&&(n.size===1?o([...n][0]):n.size>1&&o(["*",...n]),e()))},contextmenu:i=>{i.preventDefault()}})),e}var nm=Ei((o,t,e,s)=>{let r=p2(null),n=()=>r(null),c=()=>{let{dispose:v,schedule:m}=J0();m(n),m(tm(t,v)),m(em(t,v)),m(om(t,v)),r(v)},i=()=>{r()?.(),n()};function a(){r()?i():c()}function u(){i(),e()}return ih(i),I`
449
+ <div class=recorder ?data-recording="${!!r()}">
450
+ ${s}
451
+ ${o?null:I`
452
+ <button
453
+ class=record
454
+ theme-button=naked
455
+ title="record a keypress"
456
+ @click=${a}>
457
+ ${r()?Qh:Yh}
458
+ </button>
459
+
460
+ <button
461
+ theme-button=naked
462
+ title="reset to default"
463
+ @click=${u}>
464
+ ${Zh}
465
+ </button>
466
+ `}
467
+ </div>
468
+ `});var A1=mt`<svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="ai ai-XSmall"><path d="M17 17L7 7m10 0L7 17"/></svg>`;var Yp=Ei((o,t,e)=>{if(!k0(t))return I`
469
+ <div class=null>unset</div>
470
+ `;if(Bf(t))return I`
471
+ <div class=number>
472
+ <input
473
+ type=number
474
+ step=any
475
+ theme-input
476
+ .value="${t}"
477
+ ?readonly="${o}"
478
+ @change="${s=>{let n=s.currentTarget.valueAsNumber;Number.isFinite(n)&&e(n)}}"
479
+ />
480
+ </div>
481
+ `;if(Pf(t))return I`
482
+ <input
483
+ type=text
484
+ theme-input
485
+ .value="${t}"
486
+ ?readonly="${o}"
487
+ @change="${s=>{let n=s.currentTarget.value;e(n)}}"/>
488
+ `;if(Tu(t))return t[0]==="mod"?I`
489
+ <div class="bracket mod">
490
+ ${t.slice(1).length===0?"unmodified":t.slice(1).join("+")}
491
+
492
+ ${!o&&t.slice(1).length>0?I`
493
+ <button
494
+ theme-button=naked
495
+ @click="${()=>e([t[0]])}">
496
+ ${A1}
497
+ </button>
498
+ `:null}
499
+ </div>
500
+ `:I`
501
+ <div class=bracket>
502
+ ${t[0]==="*"?null:I`
503
+ <strong>${t[0]}</strong>
504
+ `}
505
+ ${t.slice(1).map((s,r)=>Yp(o,s??null,n=>{let c=structuredClone(t);c[r+1]=n,e(c)}))}
506
+ </div>
507
+ `;throw new Error("unknown expression")});function S1(o,t,e,s){return gf(t)?Yp(o,t,s):Object.entries(t).map(([r,n])=>gf(n)?_3(o,t,e,s,r):k3(o,t,e,s,r))}function k3(o,t,e,s,r){return I`
508
+ <details class=group open>
509
+ <summary>${r}</summary>
510
+ <div class=children>
511
+ ${S1(o,t[r],e[r],n=>s({...t,[r]:n}))}
512
+ </div>
513
+ </details>
514
+ `}function _3(o,t,e,s,r){let n=i=>s({...t,[r]:i});return I`
515
+ <div class=expression>
516
+ <strong>${r}</strong>
517
+ ${nm(o,n,()=>n(e[r]),S1(o,t[r],e[r],n))}
37
518
  </div>
38
- `));m.register({DemoApp:Fe()});
519
+ `}var $1=Ei((o,t,e)=>{let{profiles:s}=o.controls;function r(n){let c=n.currentTarget;e(c.value)}return I`
520
+ <select
521
+ part=select
522
+ theme-select
523
+ .value="${t}"
524
+ @change="${r}">
525
+
526
+ ${s.presets.map(([n,c])=>I`
527
+ <option
528
+ value="${n}"
529
+ ?selected="${n===t}">
530
+ ${c.label}
531
+ </option>
532
+ `)}
533
+
534
+ ${s.customs.map(([n,c])=>I`
535
+ <option
536
+ value="${n}"
537
+ ?selected="${n===t}">
538
+ ${c.label}
539
+ </option>
540
+ `)}
541
+ </select>
542
+ `});var[sm,rm]=y2(o=>{Z0("tact-customize"),r2(k2,Gh);let{controls:t,controls:{profiles:e}}=o,s=p2(t.fallbackProfileKey),r=e.get(s()),n=e.isPreset(s()),c=r.basedOn?e.get(r.basedOn):r,i=async m=>{let $=s();if(e.isPreset($)){let H=$,ht=Jp();$=ht,await e.clone(ht,H)}await e.update($,{bindings:m}),s($)},a=(m,$)=>e.update(m,{label:$}),u=()=>{let m=Jp();e.clone(m,s()),s.set(m)},v=()=>{e.delete(s()),s(t.fallbackProfileKey)};return I`
543
+ <div part=plate>
544
+ <header class=topbar>
545
+ <div class=corner>
546
+ ${$1(o,s(),s)}
547
+
548
+ <button title="copy this profile" theme-button=naked @click="${u}">
549
+ ${Xh}
550
+ </button>
551
+
552
+ ${n?null:I`
553
+ <button title="delete this profile" theme-button=naked @click="${v}">
554
+ ${Jh}
555
+ </button>
556
+ `}
557
+
558
+ ${Tf(n,()=>I`<small>readonly</small>`)}
559
+ ${Uu(r.basedOn,m=>I`<small>based on ${e.get(m).label}</small>`)}
560
+ </div>
561
+
562
+ <div class=tools>
563
+ ${n?null:I`
564
+ <input
565
+ type=text
566
+ theme-input
567
+ .value="${r.label}"
568
+ @change="${m=>{let $=m.currentTarget;a(s(),$.value)}}"
569
+ />
570
+ `}
571
+ </div>
572
+ </header>
573
+
574
+ <div class=bindings>
575
+ ${S1(!1,r.bindings,c.bindings,i)}
576
+ </div>
577
+ </div>
578
+ `});var cm=ee`@layer view {
579
+
580
+ [part="plate"] {
581
+ user-select: none;
582
+ display: flex;
583
+ flex-direction: column;
584
+ align-items: center;
585
+ gap: var(--pad);
586
+ }
587
+
588
+ [data-drag-and-drop] {
589
+ .player[data-drop-candidate] {
590
+ outline: 2px dashed color-mix(in oklch, transparent, var(--droppy) 80%);
591
+ background: color-mix(in oklch, var(--slate), var(--droppy) 20%);
592
+
593
+ &[data-dropping] {
594
+ outline: 2px solid var(--droppy);
595
+ background: color-mix(in oklch, var(--slate), var(--droppy) 50%);
596
+ }
597
+ }
598
+ }
599
+
600
+ .playerlist {
601
+ display: grid;
602
+ grid-template-columns: repeat(
603
+ auto-fit,
604
+ minmax(min(100%, 20em), 1fr)
605
+ );
606
+
607
+ width: min(100%, calc(48em + var(--pad)));
608
+ gap: var(--pad);
609
+
610
+ > * {
611
+ min-width: 0;
612
+ min-height: 7em;
613
+ }
614
+ }
615
+
616
+ .player {
617
+ display: flex;
618
+ flex-direction: column;
619
+
620
+ &.new {
621
+ justify-content: center;
622
+ align-items: center;
623
+ padding: var(--pad);
624
+
625
+ border-style: dashed;
626
+ border-width: 2px;
627
+ border-color: oklch(from var(--text) l c h / 30%);
628
+ background: transparent;
629
+ box-shadow: none;
630
+
631
+ button {
632
+ display: flex;
633
+ flex-direction: column;
634
+ svg {
635
+ width: 2.5em;
636
+ height: 2.5em;
637
+ }
638
+ }
639
+ }
640
+
641
+ h3 {
642
+ display: flex;
643
+ flex-wrap: wrap;
644
+ justify-content: space-between;
645
+ padding: var(--nib) var(--pad);
646
+ }
647
+
648
+ .controllerlist {
649
+ display: flex;
650
+ flex: 1 1 auto;
651
+ flex-direction: column;
652
+ gap: var(--pad);
653
+ padding: var(--pad);
654
+ }
655
+
656
+ .controller {
657
+ --tint: oklch(0.7 0.3 var(--hue, 0));
658
+ background: color-mix(in oklch, transparent, var(--bg) 50%);
659
+ border: 2px solid var(--shimmer);
660
+ box-shadow:
661
+ inset 0 0 2em color-mix(in oklch, transparent, var(--shimmer)),
662
+ var(--box-shadow);
663
+
664
+ &:hover {
665
+ background: color-mix(in oklch, transparent, var(--bg) 70%);
666
+ filter: brightness(120%);
667
+ }
668
+
669
+ [view="profile-select"]::part(select) {
670
+ --base: oklch(from var(--tint) l c h / 50%);
671
+ }
672
+ }
673
+
674
+ .controller {
675
+ cursor: grab;
676
+ display: flex;
677
+ align-items: center;
678
+
679
+ gap: var(--pad);
680
+ padding: var(--nib);
681
+
682
+ border-radius: 0.5em;
683
+ overflow: clip;
684
+
685
+ .griptape {
686
+ display: flex;
687
+ justify-content: center;
688
+ align-items: center;
689
+
690
+ width: 1.5em;
691
+ flex: 0 0 auto;
692
+
693
+ svg {
694
+ opacity: 0.5;
695
+ }
696
+ }
697
+
698
+ .label {
699
+ display: flex;
700
+ align-items: center;
701
+ gap: var(--pad);
702
+ min-width: 0;
703
+
704
+ flex: 1 1 auto;
705
+ font-size: 1em;
706
+ font-weight: normal;
707
+
708
+ .icon {
709
+ display: flex;
710
+ flex: 0 0 auto;
711
+ svg {
712
+ width: 2em;
713
+ height: 2em;
714
+ }
715
+ }
716
+
717
+ .name {
718
+ min-width: 0;
719
+ line-height: 1.1;
720
+ font-size: 0.7em;
721
+ overflow: hidden;
722
+ text-overflow: ellipsis;
723
+ }
724
+ }
725
+
726
+ select {
727
+ padding: var(--nib) var(--pad);
728
+ }
729
+ }
730
+ }
731
+
732
+ }`;var im=mt`<svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="ai ai-PersonAdd"><circle cx="12" cy="7" r="5"/><path d="M17 22H5.266a2 2 0 0 1-1.985-2.248l.39-3.124A3 3 0 0 1 6.649 14H7"/><path d="M19 14v4"/><path d="M17 16h4"/></svg>`;var gu=Ei(o=>{let{dnd:t}=o.context,e=t.dropzone(()=>({playerId:o.playerId}));return I`
733
+ <div class="${o.class}"
734
+ theme-card="${o.themeCard??""}"
735
+ data-drop-candidate
736
+ ?data-dropping="${t.hovering?.playerId===o.playerId}"
737
+ @dragenter="${e.dragenter}"
738
+ @dragleave="${e.dragleave}"
739
+ @dragover="${e.dragover}"
740
+ @drop="${e.drop}">
741
+
742
+ ${o.content}
743
+ </div>
744
+ `});var am=mt`<svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" viewBox="0 0 24 24" fill="currentColor" stroke-width="2" class="ai ai-DragVerticalFill"><path fill-rule="evenodd" clip-rule="evenodd" d="M16 2a2 2 0 1 1 0 4 2 2 0 0 1 0-4z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M16 10a2 2 0 1 1 0 4 2 2 0 0 1 0-4z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M8 18a2 2 0 1 1 0 4 2 2 0 0 1 0-4z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M16 18a2 2 0 1 1 0 4 2 2 0 0 1 0-4z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M8 2a2 2 0 1 1 0 4 2 2 0 0 1 0-4z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M8 10a2 2 0 1 1 0 4 2 2 0 0 1 0-4z"/></svg>`;function lm(o){return o*137.508}var E1=Ei((o,t)=>{let{deck:e,dnd:s}=o,{controls:r}=e,n=s.dragzone(()=>({controller:t})),c=r.assignments.assignedProfileKeyOf(t),i=r.meta(t)??{id:0,icon:Wf,handle:"controller",name:"controller",tooltip:"",defaultProfileKey:r.fallbackProfileKey},a=`--hue: ${lm(i?.id??0)};`;return I`
745
+ <div class=controller
746
+ style="${a}"
747
+ theme-card
748
+ ?data-dragging="${s.dragging?.controller===t}"
749
+ draggable="${n.draggable}"
750
+ @dragstart="${n.dragstart}"
751
+ @dragend="${n.dragend}">
752
+
753
+ <div class=griptape>
754
+ ${am}
755
+ </div>
756
+
757
+ <h4 class=label title="${i.tooltip}">
758
+ <span class=icon>${i.icon}</span>
759
+ <span class=name>${i.name}</span>
760
+ </h4>
761
+
762
+ ${$1(e,c,u=>{r.assignments.assign(t,u)})}
763
+ </div>
764
+ `});var fm=Ei((o,t,e)=>{let{hub:s}=o.deck,r=()=>s.deletePlayer(t),n=s.controllers.assigned.get(t)??[];return gu({class:"player",playerId:t,context:o,content:I`
765
+ <h3>
766
+ <span>player ${e+1}</span>
767
+
768
+ ${Tf(s.playerIds.length>1,()=>I`
769
+ <button theme-button="naked angry" @click=${r}>
770
+ ${A1}
771
+ </button>
772
+ `)}
773
+ </h3>
774
+
775
+ <div class=controllerlist>
776
+ ${n.map(c=>E1(o,c))}
777
+ </div>
778
+ `})});var Zp=Symbol("droppyNewPlayer");var[um,vm]=y2(o=>{Z0("tact-controllers"),r2(k2,cm);let{hub:t}=o,e=t.controllers,s=()=>o.hub.createPlayer(),r=(c,i)=>fm(n,c,i),n=ne(()=>({deck:o,dnd:new Hu.DragAndDrops({acceptDrop(c,i,a){a.playerId===Zp?t.plug(i.controller,t.createPlayer()):k0(a.playerId)?t.plug(i.controller,a.playerId):t.unplug(i.controller)}})}));return I`
779
+ <div part=plate ?data-drag-and-drop="${!!n.dnd.dragging}">
780
+ <div class=playerlist>
781
+ ${t.playerIds.map(r)}
782
+
783
+ ${Tf(t.playerIds.length<o.maxPlayers,()=>gu({class:"player new",themeCard:"dull",playerId:Zp,context:n,content:I`
784
+ <button theme-button=naked @click="${s}">
785
+ ${im}
786
+ <span>add player</span>
787
+ </button>
788
+ `}))}
789
+
790
+ ${gu({class:"player unassigned",themeCard:"dull",playerId:null,context:n,content:I`
791
+ <h3>unassigned</h3>
792
+ <div class=controllerlist>
793
+ ${e.unassigned.map(c=>E1(n,c))}
794
+ </div>
795
+ `})}
796
+ </div>
797
+ </div>
798
+ `});var[pS,pm]=y2(o=>{Z0("tact-deck"),r2(k2,Kh);let t=ne(()=>new Kf);return ne(()=>{window.location.hash.includes("bindings")&&t.setIndex(1)}),I`
799
+ <div part=plate theme-card>
800
+ ${qh.with({props:[{control:t}],children:I`
801
+ <button theme-button>
802
+ ${Wf}
803
+ <span>controllers</span>
804
+ </button>
805
+
806
+ <button theme-button>
807
+ ${Wh}
808
+ <span>customize</span>
809
+ </button>
810
+
811
+ ${um.with({props:[o],attrs:{slot:"panel"}})}
812
+
813
+ ${sm.with({props:[o],attrs:{slot:"panel"}})}
814
+ `})}
815
+ </div>
816
+ `});var dm=ee`@layer view {
817
+
818
+ :host {
819
+ display: block;
820
+ }
821
+
822
+ output {
823
+ opacity: 0.5;
824
+ display: block;
825
+
826
+ font-size: 1em;
827
+ height: 8em;
828
+
829
+ overflow: hidden;
830
+ overflow-wrap: anywhere;
831
+
832
+ font-family: monospace;
833
+ color: var(--prime);
834
+ text-overflow: ellipsis;
835
+ }
836
+
837
+ }`;var[wS,hm]=y2(o=>(r2(k2,dm),I`
838
+ <slot></slot>
839
+ <output class=viz>${o.$hex()}</output>
840
+ `));var mm=mt`<svg xmlns="http://www.w3.org/2000/svg" width="36" height="36" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="ai ai-Devices"><path d="M10 15H4V6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v2"/><path d="M2 18h12"/><path d="M14 9.2c0-.663.597-1.2 1.333-1.2h5.334C21.403 8 22 8.537 22 9.2v9.6c0 .663-.597 1.2-1.333 1.2h-5.334C14.597 20 14 19.463 14 18.8V9.2z"/><path d="M18 17h.01"/></svg>`;async function xm(o){let{dispose:t,schedule:e,disposable:s}=J0(),r=s(await jh(o)),n=p1(r.controls.presets),c=new w1,i={TactDeck:pm(r),TactCustomize:rm(r),TactControllers:vm(r),TactVisualizer:hm(c)};function a(m){let $=Uh(r.hub,(H,ht)=>{let bt=`${ht.pad.gamepad.id} ${ht.pad.gamepad.index+1}`;return r.controls.attach(H,{icon:Wf,handle:bt,tooltip:bt,name:Rh(bt,32),defaultProfileKey:m??n.key}),()=>r.controls.detach(H)});return e($),$}function u(){let{key:m,profile:$}=n,H=s(new Nf({bindings:$.bindings,source:s(new y1(s(new _1),s(new k1)))}));return r.hub.plug(H),r.controls.attach(H,{icon:mm,handle:"standard",name:"mouse/keyboard",tooltip:"",defaultProfileKey:m}),e(()=>{r.hub.remove(H),r.controls.detach(H)}),H}function v(){yu(i)}return{deck:r,gamepads:a,mouseKeyboard:u,visualizer:c,elements:i,registerElements:v,encodeAll:r.hub.encodeAll.bind(r.hub),dispose:t}}var bu=await xm({presets:vh,maxPlayers:4});bu.mouseKeyboard();bu.gamepads("gamer");bu.registerElements();jf(async()=>{let o=bu.deck.hub.encodeAll();bu.visualizer.update(o),await zf(1e3/60)});{let o=xt('input[type="color"]');o.value="#ffbb00",o.oninput=()=>document.body.style.setProperty("--tact-prime",o.value)}
39
841
  /*! For license information please see main.bundle.min.js.LEGAL.txt */
40
842
  //# sourceMappingURL=main.bundle.min.js.map