HugoDzz commited on
Commit
d5c39db
1 Parent(s): e85d4f3

feat: 🚀

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. README.md +5 -2
  2. index.html +0 -19
  3. rust/.gitignore +1 -0
  4. rust/Cargo.lock +3719 -0
  5. rust/Cargo.toml +11 -0
  6. rust/LICENSE.md +21 -0
  7. rust/README.MD +149 -0
  8. rust/assets/blood_1.png +0 -0
  9. rust/assets/blood_2.png +0 -0
  10. rust/assets/bone_1.png +0 -0
  11. rust/assets/bone_2.png +0 -0
  12. rust/assets/bone_3.png +0 -0
  13. rust/out/sandbox_bevy.d.ts +88 -0
  14. rust/out/sandbox_bevy.js +1918 -0
  15. rust/out/sandbox_bevy_bg.wasm +3 -0
  16. rust/out/sandbox_bevy_bg.wasm.d.ts +62 -0
  17. rust/rustfmt.toml +1 -0
  18. rust/screenshots/data.png +0 -0
  19. rust/screenshots/thumbnail.png +0 -0
  20. rust/src/blood.rs +100 -0
  21. rust/src/bone.rs +24 -0
  22. rust/src/grain.rs +163 -0
  23. rust/src/grid.rs +79 -0
  24. rust/src/main.rs +60 -0
  25. rust/src/setup.rs +17 -0
  26. rust/src/utils/boundaries.rs +10 -0
  27. rust/src/utils/constants.rs +5 -0
  28. rust/src/utils/mod.rs +4 -0
  29. rust/src/utils/remap.rs +7 -0
  30. rust/src/utils/tick.rs +13 -0
  31. style.css +0 -28
  32. svelte/.gitignore +10 -0
  33. svelte/.npmrc +1 -0
  34. svelte/README.md +38 -0
  35. svelte/package-lock.json +2296 -0
  36. svelte/package.json +28 -0
  37. svelte/postcss.config.js +6 -0
  38. svelte/src/app.css +3 -0
  39. svelte/src/app.d.ts +12 -0
  40. svelte/src/app.html +13 -0
  41. svelte/src/lib/index.ts +1 -0
  42. svelte/src/lib/pkg/sandbox_bevy.d.ts +88 -0
  43. svelte/src/lib/pkg/sandbox_bevy.js +1918 -0
  44. svelte/src/lib/pkg/sandbox_bevy_bg.wasm +3 -0
  45. svelte/src/lib/pkg/sandbox_bevy_bg.wasm.d.ts +62 -0
  46. svelte/src/routes/+layout.svelte +8 -0
  47. svelte/src/routes/+page.svelte +85 -0
  48. svelte/static/assets/blood_1.png +0 -0
  49. svelte/static/assets/blood_2.png +0 -0
  50. svelte/static/assets/bone_1.png +0 -0
README.md CHANGED
@@ -1,11 +1,14 @@
1
  ---
2
  title: Rust Sandbox
3
- emoji: 🌖
4
  colorFrom: yellow
5
  colorTo: indigo
6
  sdk: static
7
- pinned: false
 
 
8
  license: mit
 
9
  ---
10
 
11
  Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
1
  ---
2
  title: Rust Sandbox
3
+ emoji: 🦀
4
  colorFrom: yellow
5
  colorTo: indigo
6
  sdk: static
7
+ colorFrom: purple
8
+ colorTo: purple
9
+ pinned: true
10
  license: mit
11
+ app_file: svelte/build/index.html
12
  ---
13
 
14
  Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
index.html DELETED
@@ -1,19 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width" />
6
- <title>My static Space</title>
7
- <link rel="stylesheet" href="style.css" />
8
- </head>
9
- <body>
10
- <div class="card">
11
- <h1>Welcome to your static Space!</h1>
12
- <p>You can modify this app directly by editing <i>index.html</i> in the Files and versions tab.</p>
13
- <p>
14
- Also don't forget to check the
15
- <a href="https://huggingface.co/docs/hub/spaces" target="_blank">Spaces documentation</a>.
16
- </p>
17
- </div>
18
- </body>
19
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
rust/.gitignore ADDED
@@ -0,0 +1 @@
 
 
1
+ /target
rust/Cargo.lock ADDED
@@ -0,0 +1,3719 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # This file is automatically @generated by Cargo.
2
+ # It is not intended for manual editing.
3
+ version = 3
4
+
5
+ [[package]]
6
+ name = "ab_glyph"
7
+ version = "0.2.22"
8
+ source = "registry+https://github.com/rust-lang/crates.io-index"
9
+ checksum = "b1061f3ff92c2f65800df1f12fc7b4ff44ee14783104187dd04dfee6f11b0fd2"
10
+ dependencies = [
11
+ "ab_glyph_rasterizer",
12
+ "owned_ttf_parser",
13
+ ]
14
+
15
+ [[package]]
16
+ name = "ab_glyph_rasterizer"
17
+ version = "0.1.8"
18
+ source = "registry+https://github.com/rust-lang/crates.io-index"
19
+ checksum = "c71b1793ee61086797f5c80b6efa2b8ffa6d5dd703f118545808a7f2e27f7046"
20
+
21
+ [[package]]
22
+ name = "accesskit"
23
+ version = "0.11.2"
24
+ source = "registry+https://github.com/rust-lang/crates.io-index"
25
+ checksum = "76eb1adf08c5bcaa8490b9851fd53cca27fa9880076f178ea9d29f05196728a8"
26
+
27
+ [[package]]
28
+ name = "accesskit_consumer"
29
+ version = "0.15.2"
30
+ source = "registry+https://github.com/rust-lang/crates.io-index"
31
+ checksum = "04bb4d9e4772fe0d47df57d0d5dbe5d85dd05e2f37ae1ddb6b105e76be58fb00"
32
+ dependencies = [
33
+ "accesskit",
34
+ ]
35
+
36
+ [[package]]
37
+ name = "accesskit_macos"
38
+ version = "0.9.0"
39
+ source = "registry+https://github.com/rust-lang/crates.io-index"
40
+ checksum = "134d0acf6acb667c89d3332999b1a5df4edbc8d6113910f392ebb73f2b03bb56"
41
+ dependencies = [
42
+ "accesskit",
43
+ "accesskit_consumer",
44
+ "objc2",
45
+ "once_cell",
46
+ ]
47
+
48
+ [[package]]
49
+ name = "accesskit_windows"
50
+ version = "0.14.3"
51
+ source = "registry+https://github.com/rust-lang/crates.io-index"
52
+ checksum = "9eac0a7f2d7cd7a93b938af401d3d8e8b7094217989a7c25c55a953023436e31"
53
+ dependencies = [
54
+ "accesskit",
55
+ "accesskit_consumer",
56
+ "arrayvec",
57
+ "once_cell",
58
+ "paste",
59
+ "windows 0.48.0",
60
+ ]
61
+
62
+ [[package]]
63
+ name = "accesskit_winit"
64
+ version = "0.14.4"
65
+ source = "registry+https://github.com/rust-lang/crates.io-index"
66
+ checksum = "825d23acee1bd6d25cbaa3ca6ed6e73faf24122a774ec33d52c5c86c6ab423c0"
67
+ dependencies = [
68
+ "accesskit",
69
+ "accesskit_macos",
70
+ "accesskit_windows",
71
+ "winit",
72
+ ]
73
+
74
+ [[package]]
75
+ name = "addr2line"
76
+ version = "0.21.0"
77
+ source = "registry+https://github.com/rust-lang/crates.io-index"
78
+ checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb"
79
+ dependencies = [
80
+ "gimli",
81
+ ]
82
+
83
+ [[package]]
84
+ name = "adler"
85
+ version = "1.0.2"
86
+ source = "registry+https://github.com/rust-lang/crates.io-index"
87
+ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
88
+
89
+ [[package]]
90
+ name = "ahash"
91
+ version = "0.8.6"
92
+ source = "registry+https://github.com/rust-lang/crates.io-index"
93
+ checksum = "91429305e9f0a25f6205c5b8e0d2db09e0708a7a6df0f42212bb56c32c8ac97a"
94
+ dependencies = [
95
+ "cfg-if",
96
+ "getrandom",
97
+ "once_cell",
98
+ "version_check",
99
+ "zerocopy",
100
+ ]
101
+
102
+ [[package]]
103
+ name = "aho-corasick"
104
+ version = "1.1.2"
105
+ source = "registry+https://github.com/rust-lang/crates.io-index"
106
+ checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0"
107
+ dependencies = [
108
+ "memchr",
109
+ ]
110
+
111
+ [[package]]
112
+ name = "allocator-api2"
113
+ version = "0.2.16"
114
+ source = "registry+https://github.com/rust-lang/crates.io-index"
115
+ checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5"
116
+
117
+ [[package]]
118
+ name = "alsa"
119
+ version = "0.7.1"
120
+ source = "registry+https://github.com/rust-lang/crates.io-index"
121
+ checksum = "e2562ad8dcf0f789f65c6fdaad8a8a9708ed6b488e649da28c01656ad66b8b47"
122
+ dependencies = [
123
+ "alsa-sys",
124
+ "bitflags 1.3.2",
125
+ "libc",
126
+ "nix 0.24.3",
127
+ ]
128
+
129
+ [[package]]
130
+ name = "alsa-sys"
131
+ version = "0.3.1"
132
+ source = "registry+https://github.com/rust-lang/crates.io-index"
133
+ checksum = "db8fee663d06c4e303404ef5f40488a53e062f89ba8bfed81f42325aafad1527"
134
+ dependencies = [
135
+ "libc",
136
+ "pkg-config",
137
+ ]
138
+
139
+ [[package]]
140
+ name = "android-activity"
141
+ version = "0.4.3"
142
+ source = "registry+https://github.com/rust-lang/crates.io-index"
143
+ checksum = "64529721f27c2314ced0890ce45e469574a73e5e6fdd6e9da1860eb29285f5e0"
144
+ dependencies = [
145
+ "android-properties",
146
+ "bitflags 1.3.2",
147
+ "cc",
148
+ "jni-sys",
149
+ "libc",
150
+ "log",
151
+ "ndk",
152
+ "ndk-context",
153
+ "ndk-sys",
154
+ "num_enum 0.6.1",
155
+ ]
156
+
157
+ [[package]]
158
+ name = "android-properties"
159
+ version = "0.2.2"
160
+ source = "registry+https://github.com/rust-lang/crates.io-index"
161
+ checksum = "fc7eb209b1518d6bb87b283c20095f5228ecda460da70b44f0802523dea6da04"
162
+
163
+ [[package]]
164
+ name = "android_log-sys"
165
+ version = "0.3.1"
166
+ source = "registry+https://github.com/rust-lang/crates.io-index"
167
+ checksum = "5ecc8056bf6ab9892dcd53216c83d1597487d7dacac16c8df6b877d127df9937"
168
+
169
+ [[package]]
170
+ name = "android_system_properties"
171
+ version = "0.1.5"
172
+ source = "registry+https://github.com/rust-lang/crates.io-index"
173
+ checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
174
+ dependencies = [
175
+ "libc",
176
+ ]
177
+
178
+ [[package]]
179
+ name = "anyhow"
180
+ version = "1.0.75"
181
+ source = "registry+https://github.com/rust-lang/crates.io-index"
182
+ checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6"
183
+
184
+ [[package]]
185
+ name = "approx"
186
+ version = "0.5.1"
187
+ source = "registry+https://github.com/rust-lang/crates.io-index"
188
+ checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6"
189
+ dependencies = [
190
+ "num-traits",
191
+ ]
192
+
193
+ [[package]]
194
+ name = "arrayvec"
195
+ version = "0.7.4"
196
+ source = "registry+https://github.com/rust-lang/crates.io-index"
197
+ checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711"
198
+
199
+ [[package]]
200
+ name = "ash"
201
+ version = "0.37.3+1.3.251"
202
+ source = "registry+https://github.com/rust-lang/crates.io-index"
203
+ checksum = "39e9c3835d686b0a6084ab4234fcd1b07dbf6e4767dce60874b12356a25ecd4a"
204
+ dependencies = [
205
+ "libloading 0.7.4",
206
+ ]
207
+
208
+ [[package]]
209
+ name = "async-channel"
210
+ version = "1.9.0"
211
+ source = "registry+https://github.com/rust-lang/crates.io-index"
212
+ checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35"
213
+ dependencies = [
214
+ "concurrent-queue",
215
+ "event-listener",
216
+ "futures-core",
217
+ ]
218
+
219
+ [[package]]
220
+ name = "async-executor"
221
+ version = "1.6.0"
222
+ source = "registry+https://github.com/rust-lang/crates.io-index"
223
+ checksum = "4b0c4a4f319e45986f347ee47fef8bf5e81c9abc3f6f58dc2391439f30df65f0"
224
+ dependencies = [
225
+ "async-lock",
226
+ "async-task",
227
+ "concurrent-queue",
228
+ "fastrand 2.0.1",
229
+ "futures-lite",
230
+ "slab",
231
+ ]
232
+
233
+ [[package]]
234
+ name = "async-lock"
235
+ version = "2.8.0"
236
+ source = "registry+https://github.com/rust-lang/crates.io-index"
237
+ checksum = "287272293e9d8c41773cec55e365490fe034813a2f172f502d6ddcf75b2f582b"
238
+ dependencies = [
239
+ "event-listener",
240
+ ]
241
+
242
+ [[package]]
243
+ name = "async-task"
244
+ version = "4.5.0"
245
+ source = "registry+https://github.com/rust-lang/crates.io-index"
246
+ checksum = "b4eb2cdb97421e01129ccb49169d8279ed21e829929144f4a22a6e54ac549ca1"
247
+
248
+ [[package]]
249
+ name = "autocfg"
250
+ version = "1.1.0"
251
+ source = "registry+https://github.com/rust-lang/crates.io-index"
252
+ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
253
+
254
+ [[package]]
255
+ name = "backtrace"
256
+ version = "0.3.69"
257
+ source = "registry+https://github.com/rust-lang/crates.io-index"
258
+ checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837"
259
+ dependencies = [
260
+ "addr2line",
261
+ "cc",
262
+ "cfg-if",
263
+ "libc",
264
+ "miniz_oxide",
265
+ "object",
266
+ "rustc-demangle",
267
+ ]
268
+
269
+ [[package]]
270
+ name = "base64"
271
+ version = "0.13.1"
272
+ source = "registry+https://github.com/rust-lang/crates.io-index"
273
+ checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
274
+
275
+ [[package]]
276
+ name = "base64"
277
+ version = "0.21.5"
278
+ source = "registry+https://github.com/rust-lang/crates.io-index"
279
+ checksum = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9"
280
+
281
+ [[package]]
282
+ name = "bevy"
283
+ version = "0.11.3"
284
+ source = "registry+https://github.com/rust-lang/crates.io-index"
285
+ checksum = "91c6d3ec4f89e85294dc97334c5b271ddc301fdf67ac9bb994fe44d9273e6ed7"
286
+ dependencies = [
287
+ "bevy_internal",
288
+ ]
289
+
290
+ [[package]]
291
+ name = "bevy_a11y"
292
+ version = "0.11.3"
293
+ source = "registry+https://github.com/rust-lang/crates.io-index"
294
+ checksum = "132c9e35a77c5395951f6d25fa2c52ee92296353426df4f961e60f3ff47e2e42"
295
+ dependencies = [
296
+ "accesskit",
297
+ "bevy_app",
298
+ "bevy_derive",
299
+ "bevy_ecs",
300
+ ]
301
+
302
+ [[package]]
303
+ name = "bevy_animation"
304
+ version = "0.11.3"
305
+ source = "registry+https://github.com/rust-lang/crates.io-index"
306
+ checksum = "f44eae3f1c35a87e38ad146f72317f19ce7616dad8bbdfb88ee752c1282d28c5"
307
+ dependencies = [
308
+ "bevy_app",
309
+ "bevy_asset",
310
+ "bevy_core",
311
+ "bevy_ecs",
312
+ "bevy_hierarchy",
313
+ "bevy_math",
314
+ "bevy_reflect",
315
+ "bevy_render",
316
+ "bevy_time",
317
+ "bevy_transform",
318
+ "bevy_utils",
319
+ ]
320
+
321
+ [[package]]
322
+ name = "bevy_app"
323
+ version = "0.11.3"
324
+ source = "registry+https://github.com/rust-lang/crates.io-index"
325
+ checksum = "f557a7d59e1e16892d7544fc37316506ee598cb5310ef0365125a30783c11531"
326
+ dependencies = [
327
+ "bevy_derive",
328
+ "bevy_ecs",
329
+ "bevy_reflect",
330
+ "bevy_tasks",
331
+ "bevy_utils",
332
+ "downcast-rs",
333
+ "wasm-bindgen",
334
+ "web-sys",
335
+ ]
336
+
337
+ [[package]]
338
+ name = "bevy_asset"
339
+ version = "0.11.3"
340
+ source = "registry+https://github.com/rust-lang/crates.io-index"
341
+ checksum = "9714af523da4cdf58c42a317e5ed40349708ad954a18533991fd64c8ae0a6f68"
342
+ dependencies = [
343
+ "anyhow",
344
+ "async-channel",
345
+ "bevy_app",
346
+ "bevy_diagnostic",
347
+ "bevy_ecs",
348
+ "bevy_log",
349
+ "bevy_reflect",
350
+ "bevy_tasks",
351
+ "bevy_utils",
352
+ "bevy_winit",
353
+ "crossbeam-channel",
354
+ "downcast-rs",
355
+ "fastrand 1.9.0",
356
+ "js-sys",
357
+ "notify",
358
+ "parking_lot",
359
+ "serde",
360
+ "thiserror",
361
+ "wasm-bindgen",
362
+ "wasm-bindgen-futures",
363
+ "web-sys",
364
+ ]
365
+
366
+ [[package]]
367
+ name = "bevy_audio"
368
+ version = "0.11.3"
369
+ source = "registry+https://github.com/rust-lang/crates.io-index"
370
+ checksum = "4de308bd63a2f7a0b77ffeb7cf00cc185ec01393c5db2091fe03964f97152749"
371
+ dependencies = [
372
+ "anyhow",
373
+ "bevy_app",
374
+ "bevy_asset",
375
+ "bevy_derive",
376
+ "bevy_ecs",
377
+ "bevy_math",
378
+ "bevy_reflect",
379
+ "bevy_transform",
380
+ "bevy_utils",
381
+ "oboe",
382
+ "parking_lot",
383
+ "rodio",
384
+ ]
385
+
386
+ [[package]]
387
+ name = "bevy_core"
388
+ version = "0.11.3"
389
+ source = "registry+https://github.com/rust-lang/crates.io-index"
390
+ checksum = "3d5272321be5fcf5ce2fb16023bc825bb10dfcb71611117296537181ce950f48"
391
+ dependencies = [
392
+ "bevy_app",
393
+ "bevy_ecs",
394
+ "bevy_math",
395
+ "bevy_reflect",
396
+ "bevy_tasks",
397
+ "bevy_utils",
398
+ "bytemuck",
399
+ ]
400
+
401
+ [[package]]
402
+ name = "bevy_core_pipeline"
403
+ version = "0.11.3"
404
+ source = "registry+https://github.com/rust-lang/crates.io-index"
405
+ checksum = "67382fa9c96ce4f4e5833ed7cedd9886844a8f3284b4a717bd4ac738dcdea0c3"
406
+ dependencies = [
407
+ "bevy_app",
408
+ "bevy_asset",
409
+ "bevy_core",
410
+ "bevy_derive",
411
+ "bevy_ecs",
412
+ "bevy_math",
413
+ "bevy_reflect",
414
+ "bevy_render",
415
+ "bevy_transform",
416
+ "bevy_utils",
417
+ "bitflags 2.4.1",
418
+ "radsort",
419
+ "serde",
420
+ ]
421
+
422
+ [[package]]
423
+ name = "bevy_derive"
424
+ version = "0.11.3"
425
+ source = "registry+https://github.com/rust-lang/crates.io-index"
426
+ checksum = "a44e4e2784a81430199e4157e02903a987a32127c773985506f020e7d501b62e"
427
+ dependencies = [
428
+ "bevy_macro_utils",
429
+ "quote",
430
+ "syn 2.0.38",
431
+ ]
432
+
433
+ [[package]]
434
+ name = "bevy_diagnostic"
435
+ version = "0.11.3"
436
+ source = "registry+https://github.com/rust-lang/crates.io-index"
437
+ checksum = "6babb230dc383c98fdfc9603e3a7a2a49e1e2879dbe8291059ef37dca897932e"
438
+ dependencies = [
439
+ "bevy_app",
440
+ "bevy_core",
441
+ "bevy_ecs",
442
+ "bevy_log",
443
+ "bevy_time",
444
+ "bevy_utils",
445
+ "sysinfo",
446
+ ]
447
+
448
+ [[package]]
449
+ name = "bevy_ecs"
450
+ version = "0.11.3"
451
+ source = "registry+https://github.com/rust-lang/crates.io-index"
452
+ checksum = "266144b36df7e834d5198049e037ecdf2a2310a76ce39ed937d1b0a6a2c4e8c6"
453
+ dependencies = [
454
+ "async-channel",
455
+ "bevy_ecs_macros",
456
+ "bevy_ptr",
457
+ "bevy_reflect",
458
+ "bevy_tasks",
459
+ "bevy_utils",
460
+ "downcast-rs",
461
+ "event-listener",
462
+ "fixedbitset",
463
+ "rustc-hash",
464
+ "serde",
465
+ "thiserror",
466
+ "thread_local",
467
+ ]
468
+
469
+ [[package]]
470
+ name = "bevy_ecs_macros"
471
+ version = "0.11.3"
472
+ source = "registry+https://github.com/rust-lang/crates.io-index"
473
+ checksum = "7157a9c3be038d5008ee3f114feb6cf6b39c1d3d32ee21a7cacb8f81fccdfa80"
474
+ dependencies = [
475
+ "bevy_macro_utils",
476
+ "proc-macro2",
477
+ "quote",
478
+ "syn 2.0.38",
479
+ ]
480
+
481
+ [[package]]
482
+ name = "bevy_encase_derive"
483
+ version = "0.11.3"
484
+ source = "registry+https://github.com/rust-lang/crates.io-index"
485
+ checksum = "d0ac0f55ad6bca1be7b0f35bbd5fc95ed3d31e4e9db158fee8e5327f59006001"
486
+ dependencies = [
487
+ "bevy_macro_utils",
488
+ "encase_derive_impl",
489
+ ]
490
+
491
+ [[package]]
492
+ name = "bevy_gilrs"
493
+ version = "0.11.3"
494
+ source = "registry+https://github.com/rust-lang/crates.io-index"
495
+ checksum = "65f4d79c55829f8016014593a42453f61a564ffb06ef79460d25696ccdfac67b"
496
+ dependencies = [
497
+ "bevy_app",
498
+ "bevy_ecs",
499
+ "bevy_input",
500
+ "bevy_log",
501
+ "bevy_time",
502
+ "bevy_utils",
503
+ "gilrs",
504
+ "thiserror",
505
+ ]
506
+
507
+ [[package]]
508
+ name = "bevy_gizmos"
509
+ version = "0.11.3"
510
+ source = "registry+https://github.com/rust-lang/crates.io-index"
511
+ checksum = "e286a3e7276431963f4aa29165ea5429fa7dbbc6d5c5ba0c531e7dd44ecc88a2"
512
+ dependencies = [
513
+ "bevy_app",
514
+ "bevy_asset",
515
+ "bevy_core",
516
+ "bevy_core_pipeline",
517
+ "bevy_ecs",
518
+ "bevy_math",
519
+ "bevy_pbr",
520
+ "bevy_reflect",
521
+ "bevy_render",
522
+ "bevy_sprite",
523
+ "bevy_transform",
524
+ "bevy_utils",
525
+ ]
526
+
527
+ [[package]]
528
+ name = "bevy_gltf"
529
+ version = "0.11.3"
530
+ source = "registry+https://github.com/rust-lang/crates.io-index"
531
+ checksum = "f07494a733dca032e71a20f4b1f423de765da49cbff34406ae6cd813f9b50c41"
532
+ dependencies = [
533
+ "anyhow",
534
+ "base64 0.13.1",
535
+ "bevy_animation",
536
+ "bevy_app",
537
+ "bevy_asset",
538
+ "bevy_core",
539
+ "bevy_core_pipeline",
540
+ "bevy_ecs",
541
+ "bevy_hierarchy",
542
+ "bevy_log",
543
+ "bevy_math",
544
+ "bevy_pbr",
545
+ "bevy_reflect",
546
+ "bevy_render",
547
+ "bevy_scene",
548
+ "bevy_tasks",
549
+ "bevy_transform",
550
+ "bevy_utils",
551
+ "gltf",
552
+ "percent-encoding",
553
+ "serde",
554
+ "serde_json",
555
+ "thiserror",
556
+ ]
557
+
558
+ [[package]]
559
+ name = "bevy_hierarchy"
560
+ version = "0.11.3"
561
+ source = "registry+https://github.com/rust-lang/crates.io-index"
562
+ checksum = "103f8f58416ac6799b8c7f0b418f1fac9eba44fa924df3b0e16b09256b897e3d"
563
+ dependencies = [
564
+ "bevy_app",
565
+ "bevy_core",
566
+ "bevy_ecs",
567
+ "bevy_log",
568
+ "bevy_reflect",
569
+ "bevy_utils",
570
+ "smallvec",
571
+ ]
572
+
573
+ [[package]]
574
+ name = "bevy_input"
575
+ version = "0.11.3"
576
+ source = "registry+https://github.com/rust-lang/crates.io-index"
577
+ checksum = "ffbd935401101ac8003f3c3aea70788c65ad03f7a32716a10608bedda7a648bc"
578
+ dependencies = [
579
+ "bevy_app",
580
+ "bevy_ecs",
581
+ "bevy_math",
582
+ "bevy_reflect",
583
+ "bevy_utils",
584
+ "thiserror",
585
+ ]
586
+
587
+ [[package]]
588
+ name = "bevy_internal"
589
+ version = "0.11.3"
590
+ source = "registry+https://github.com/rust-lang/crates.io-index"
591
+ checksum = "e0e35a9b2bd29aa784b3cc416bcbf2a298f69f00ca51fd042ea39d9af7fad37e"
592
+ dependencies = [
593
+ "bevy_a11y",
594
+ "bevy_animation",
595
+ "bevy_app",
596
+ "bevy_asset",
597
+ "bevy_audio",
598
+ "bevy_core",
599
+ "bevy_core_pipeline",
600
+ "bevy_derive",
601
+ "bevy_diagnostic",
602
+ "bevy_ecs",
603
+ "bevy_gilrs",
604
+ "bevy_gizmos",
605
+ "bevy_gltf",
606
+ "bevy_hierarchy",
607
+ "bevy_input",
608
+ "bevy_log",
609
+ "bevy_math",
610
+ "bevy_pbr",
611
+ "bevy_ptr",
612
+ "bevy_reflect",
613
+ "bevy_render",
614
+ "bevy_scene",
615
+ "bevy_sprite",
616
+ "bevy_tasks",
617
+ "bevy_text",
618
+ "bevy_time",
619
+ "bevy_transform",
620
+ "bevy_ui",
621
+ "bevy_utils",
622
+ "bevy_window",
623
+ "bevy_winit",
624
+ ]
625
+
626
+ [[package]]
627
+ name = "bevy_log"
628
+ version = "0.11.3"
629
+ source = "registry+https://github.com/rust-lang/crates.io-index"
630
+ checksum = "07dcc615ff4f617b06c3f9522fca3c55d56f9644db293318f8ab68fcdea5d4fe"
631
+ dependencies = [
632
+ "android_log-sys",
633
+ "bevy_app",
634
+ "bevy_ecs",
635
+ "bevy_utils",
636
+ "console_error_panic_hook",
637
+ "tracing-log",
638
+ "tracing-subscriber",
639
+ "tracing-wasm",
640
+ ]
641
+
642
+ [[package]]
643
+ name = "bevy_macro_utils"
644
+ version = "0.11.3"
645
+ source = "registry+https://github.com/rust-lang/crates.io-index"
646
+ checksum = "23ddc18d489b4e57832d4958cde7cd2f349f0ad91e5892ac9e2f2ee16546b981"
647
+ dependencies = [
648
+ "quote",
649
+ "rustc-hash",
650
+ "syn 2.0.38",
651
+ "toml_edit",
652
+ ]
653
+
654
+ [[package]]
655
+ name = "bevy_math"
656
+ version = "0.11.3"
657
+ source = "registry+https://github.com/rust-lang/crates.io-index"
658
+ checksum = "78286a81fead796dc4b45ab14f4f02fe29a94423d3587bcfef872b2a8e0a474b"
659
+ dependencies = [
660
+ "glam",
661
+ "serde",
662
+ ]
663
+
664
+ [[package]]
665
+ name = "bevy_mikktspace"
666
+ version = "0.11.3"
667
+ source = "registry+https://github.com/rust-lang/crates.io-index"
668
+ checksum = "6cfc2a21ea47970a9b1f0f4735af3256a8f204815bd756110051d10f9d909497"
669
+ dependencies = [
670
+ "glam",
671
+ ]
672
+
673
+ [[package]]
674
+ name = "bevy_pbr"
675
+ version = "0.11.3"
676
+ source = "registry+https://github.com/rust-lang/crates.io-index"
677
+ checksum = "63ca796a619e61cd43a0a3b11fde54644f7f0732a1fba1eef5d406248c6eba85"
678
+ dependencies = [
679
+ "bevy_app",
680
+ "bevy_asset",
681
+ "bevy_core_pipeline",
682
+ "bevy_derive",
683
+ "bevy_ecs",
684
+ "bevy_math",
685
+ "bevy_reflect",
686
+ "bevy_render",
687
+ "bevy_transform",
688
+ "bevy_utils",
689
+ "bevy_window",
690
+ "bitflags 2.4.1",
691
+ "bytemuck",
692
+ "naga_oil",
693
+ "radsort",
694
+ ]
695
+
696
+ [[package]]
697
+ name = "bevy_pixel_camera"
698
+ version = "0.5.1"
699
+ source = "registry+https://github.com/rust-lang/crates.io-index"
700
+ checksum = "2f6322d9698dc07f96accafc8017ccb7d54b2d5df7868e8ae24e90eb5d0f09c7"
701
+ dependencies = [
702
+ "bevy",
703
+ ]
704
+
705
+ [[package]]
706
+ name = "bevy_ptr"
707
+ version = "0.11.3"
708
+ source = "registry+https://github.com/rust-lang/crates.io-index"
709
+ checksum = "72c7586401a46f7d8e436028225c1df5288f2e0082d066b247a82466fea155c6"
710
+
711
+ [[package]]
712
+ name = "bevy_reflect"
713
+ version = "0.11.3"
714
+ source = "registry+https://github.com/rust-lang/crates.io-index"
715
+ checksum = "0778197a1eb3e095a71417c74b7152ede02975cdc95b5ea4ddc5251ed00a2eb5"
716
+ dependencies = [
717
+ "bevy_math",
718
+ "bevy_ptr",
719
+ "bevy_reflect_derive",
720
+ "bevy_utils",
721
+ "downcast-rs",
722
+ "erased-serde",
723
+ "glam",
724
+ "once_cell",
725
+ "parking_lot",
726
+ "serde",
727
+ "smallvec",
728
+ "smol_str",
729
+ "thiserror",
730
+ ]
731
+
732
+ [[package]]
733
+ name = "bevy_reflect_derive"
734
+ version = "0.11.3"
735
+ source = "registry+https://github.com/rust-lang/crates.io-index"
736
+ checksum = "342a4b2d09db22c48607d23ad59a056aff1ee004549050a51d490d375ba29528"
737
+ dependencies = [
738
+ "bevy_macro_utils",
739
+ "bit-set",
740
+ "proc-macro2",
741
+ "quote",
742
+ "syn 2.0.38",
743
+ "uuid",
744
+ ]
745
+
746
+ [[package]]
747
+ name = "bevy_render"
748
+ version = "0.11.3"
749
+ source = "registry+https://github.com/rust-lang/crates.io-index"
750
+ checksum = "39df4824b760928c27afc7b00fb649c7a63c9d76661ab014ff5c86537ee906cb"
751
+ dependencies = [
752
+ "anyhow",
753
+ "async-channel",
754
+ "bevy_app",
755
+ "bevy_asset",
756
+ "bevy_core",
757
+ "bevy_derive",
758
+ "bevy_ecs",
759
+ "bevy_encase_derive",
760
+ "bevy_hierarchy",
761
+ "bevy_log",
762
+ "bevy_math",
763
+ "bevy_mikktspace",
764
+ "bevy_reflect",
765
+ "bevy_render_macros",
766
+ "bevy_tasks",
767
+ "bevy_time",
768
+ "bevy_transform",
769
+ "bevy_utils",
770
+ "bevy_window",
771
+ "bitflags 2.4.1",
772
+ "bytemuck",
773
+ "codespan-reporting",
774
+ "downcast-rs",
775
+ "encase",
776
+ "futures-lite",
777
+ "hexasphere",
778
+ "image",
779
+ "js-sys",
780
+ "ktx2",
781
+ "naga",
782
+ "naga_oil",
783
+ "parking_lot",
784
+ "regex",
785
+ "ruzstd",
786
+ "serde",
787
+ "smallvec",
788
+ "thiserror",
789
+ "thread_local",
790
+ "wasm-bindgen",
791
+ "web-sys",
792
+ "wgpu",
793
+ "wgpu-hal",
794
+ ]
795
+
796
+ [[package]]
797
+ name = "bevy_render_macros"
798
+ version = "0.11.3"
799
+ source = "registry+https://github.com/rust-lang/crates.io-index"
800
+ checksum = "0bd08c740aac73363e32fb45af869b10cec65bcb76fe3e6cd0f8f7eebf4c36c9"
801
+ dependencies = [
802
+ "bevy_macro_utils",
803
+ "proc-macro2",
804
+ "quote",
805
+ "syn 2.0.38",
806
+ ]
807
+
808
+ [[package]]
809
+ name = "bevy_scene"
810
+ version = "0.11.3"
811
+ source = "registry+https://github.com/rust-lang/crates.io-index"
812
+ checksum = "bd47e1263506153bef3a8be97fe2d856f206d315668c4f97510ca6cc181d9681"
813
+ dependencies = [
814
+ "anyhow",
815
+ "bevy_app",
816
+ "bevy_asset",
817
+ "bevy_derive",
818
+ "bevy_ecs",
819
+ "bevy_hierarchy",
820
+ "bevy_reflect",
821
+ "bevy_render",
822
+ "bevy_transform",
823
+ "bevy_utils",
824
+ "ron",
825
+ "serde",
826
+ "thiserror",
827
+ "uuid",
828
+ ]
829
+
830
+ [[package]]
831
+ name = "bevy_sprite"
832
+ version = "0.11.3"
833
+ source = "registry+https://github.com/rust-lang/crates.io-index"
834
+ checksum = "68a8ca824fad75c6ef74cfbbba0a4ce3ccc435fa23d6bf3f003f260548813397"
835
+ dependencies = [
836
+ "bevy_app",
837
+ "bevy_asset",
838
+ "bevy_core_pipeline",
839
+ "bevy_derive",
840
+ "bevy_ecs",
841
+ "bevy_log",
842
+ "bevy_math",
843
+ "bevy_reflect",
844
+ "bevy_render",
845
+ "bevy_transform",
846
+ "bevy_utils",
847
+ "bitflags 2.4.1",
848
+ "bytemuck",
849
+ "fixedbitset",
850
+ "guillotiere",
851
+ "rectangle-pack",
852
+ "thiserror",
853
+ ]
854
+
855
+ [[package]]
856
+ name = "bevy_tasks"
857
+ version = "0.11.3"
858
+ source = "registry+https://github.com/rust-lang/crates.io-index"
859
+ checksum = "c73bbb847c83990d3927005090df52f8ac49332e1643d2ad9aac3cd2974e66bf"
860
+ dependencies = [
861
+ "async-channel",
862
+ "async-executor",
863
+ "async-task",
864
+ "concurrent-queue",
865
+ "futures-lite",
866
+ "wasm-bindgen-futures",
867
+ ]
868
+
869
+ [[package]]
870
+ name = "bevy_text"
871
+ version = "0.11.3"
872
+ source = "registry+https://github.com/rust-lang/crates.io-index"
873
+ checksum = "692288ab7b0a9f8b38058964c52789fc6bcb63703b23de51cce90ec41bfca355"
874
+ dependencies = [
875
+ "ab_glyph",
876
+ "anyhow",
877
+ "bevy_app",
878
+ "bevy_asset",
879
+ "bevy_ecs",
880
+ "bevy_math",
881
+ "bevy_reflect",
882
+ "bevy_render",
883
+ "bevy_sprite",
884
+ "bevy_transform",
885
+ "bevy_utils",
886
+ "bevy_window",
887
+ "glyph_brush_layout",
888
+ "serde",
889
+ "thiserror",
890
+ ]
891
+
892
+ [[package]]
893
+ name = "bevy_time"
894
+ version = "0.11.3"
895
+ source = "registry+https://github.com/rust-lang/crates.io-index"
896
+ checksum = "3d58d6dbae9c8225d8c0e0f04d2c5dbb71d22adc01ecd5ab3cebc364139e4a6d"
897
+ dependencies = [
898
+ "bevy_app",
899
+ "bevy_ecs",
900
+ "bevy_reflect",
901
+ "bevy_utils",
902
+ "crossbeam-channel",
903
+ "thiserror",
904
+ ]
905
+
906
+ [[package]]
907
+ name = "bevy_transform"
908
+ version = "0.11.3"
909
+ source = "registry+https://github.com/rust-lang/crates.io-index"
910
+ checksum = "3b9b0ac0149a57cd846cb357a35fc99286f9848e53d4481954608ac9552ed2d4"
911
+ dependencies = [
912
+ "bevy_app",
913
+ "bevy_ecs",
914
+ "bevy_hierarchy",
915
+ "bevy_math",
916
+ "bevy_reflect",
917
+ ]
918
+
919
+ [[package]]
920
+ name = "bevy_ui"
921
+ version = "0.11.3"
922
+ source = "registry+https://github.com/rust-lang/crates.io-index"
923
+ checksum = "59b6d295a755e5b79e869a09e087029d72974562a521ec7ccfba7141fa948a32"
924
+ dependencies = [
925
+ "bevy_a11y",
926
+ "bevy_app",
927
+ "bevy_asset",
928
+ "bevy_core_pipeline",
929
+ "bevy_derive",
930
+ "bevy_ecs",
931
+ "bevy_hierarchy",
932
+ "bevy_input",
933
+ "bevy_log",
934
+ "bevy_math",
935
+ "bevy_reflect",
936
+ "bevy_render",
937
+ "bevy_sprite",
938
+ "bevy_text",
939
+ "bevy_transform",
940
+ "bevy_utils",
941
+ "bevy_window",
942
+ "bytemuck",
943
+ "serde",
944
+ "smallvec",
945
+ "taffy",
946
+ "thiserror",
947
+ ]
948
+
949
+ [[package]]
950
+ name = "bevy_utils"
951
+ version = "0.11.3"
952
+ source = "registry+https://github.com/rust-lang/crates.io-index"
953
+ checksum = "08d9484e32434ea84dc548cff246ce0c6f756c1336f5ea03f24ac120a48595c7"
954
+ dependencies = [
955
+ "ahash",
956
+ "bevy_utils_proc_macros",
957
+ "getrandom",
958
+ "hashbrown 0.14.2",
959
+ "instant",
960
+ "petgraph",
961
+ "thiserror",
962
+ "tracing",
963
+ "uuid",
964
+ ]
965
+
966
+ [[package]]
967
+ name = "bevy_utils_proc_macros"
968
+ version = "0.11.3"
969
+ source = "registry+https://github.com/rust-lang/crates.io-index"
970
+ checksum = "5391b242c36f556db01d5891444730c83aa9dd648b6a8fd2b755d22cb3bddb57"
971
+ dependencies = [
972
+ "proc-macro2",
973
+ "quote",
974
+ "syn 2.0.38",
975
+ ]
976
+
977
+ [[package]]
978
+ name = "bevy_window"
979
+ version = "0.11.3"
980
+ source = "registry+https://github.com/rust-lang/crates.io-index"
981
+ checksum = "bd584c0da7c4ada6557b09f57f30fb7cff21ccedc641473fc391574b4c9b7944"
982
+ dependencies = [
983
+ "bevy_app",
984
+ "bevy_ecs",
985
+ "bevy_input",
986
+ "bevy_math",
987
+ "bevy_reflect",
988
+ "bevy_utils",
989
+ "raw-window-handle",
990
+ ]
991
+
992
+ [[package]]
993
+ name = "bevy_winit"
994
+ version = "0.11.3"
995
+ source = "registry+https://github.com/rust-lang/crates.io-index"
996
+ checksum = "bfdc044abdb95790c20053e6326760f0a2985f0dcd78613d397bf35f16039d53"
997
+ dependencies = [
998
+ "accesskit_winit",
999
+ "approx",
1000
+ "bevy_a11y",
1001
+ "bevy_app",
1002
+ "bevy_derive",
1003
+ "bevy_ecs",
1004
+ "bevy_hierarchy",
1005
+ "bevy_input",
1006
+ "bevy_math",
1007
+ "bevy_tasks",
1008
+ "bevy_utils",
1009
+ "bevy_window",
1010
+ "crossbeam-channel",
1011
+ "raw-window-handle",
1012
+ "wasm-bindgen",
1013
+ "web-sys",
1014
+ "winit",
1015
+ ]
1016
+
1017
+ [[package]]
1018
+ name = "bindgen"
1019
+ version = "0.68.1"
1020
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1021
+ checksum = "726e4313eb6ec35d2730258ad4e15b547ee75d6afaa1361a922e78e59b7d8078"
1022
+ dependencies = [
1023
+ "bitflags 2.4.1",
1024
+ "cexpr",
1025
+ "clang-sys",
1026
+ "lazy_static",
1027
+ "lazycell",
1028
+ "peeking_take_while",
1029
+ "proc-macro2",
1030
+ "quote",
1031
+ "regex",
1032
+ "rustc-hash",
1033
+ "shlex",
1034
+ "syn 2.0.38",
1035
+ ]
1036
+
1037
+ [[package]]
1038
+ name = "bit-set"
1039
+ version = "0.5.3"
1040
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1041
+ checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1"
1042
+ dependencies = [
1043
+ "bit-vec",
1044
+ ]
1045
+
1046
+ [[package]]
1047
+ name = "bit-vec"
1048
+ version = "0.6.3"
1049
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1050
+ checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb"
1051
+
1052
+ [[package]]
1053
+ name = "bitflags"
1054
+ version = "1.3.2"
1055
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1056
+ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
1057
+
1058
+ [[package]]
1059
+ name = "bitflags"
1060
+ version = "2.4.1"
1061
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1062
+ checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07"
1063
+ dependencies = [
1064
+ "serde",
1065
+ ]
1066
+
1067
+ [[package]]
1068
+ name = "block"
1069
+ version = "0.1.6"
1070
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1071
+ checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
1072
+
1073
+ [[package]]
1074
+ name = "block-sys"
1075
+ version = "0.1.0-beta.1"
1076
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1077
+ checksum = "0fa55741ee90902547802152aaf3f8e5248aab7e21468089560d4c8840561146"
1078
+ dependencies = [
1079
+ "objc-sys",
1080
+ ]
1081
+
1082
+ [[package]]
1083
+ name = "block2"
1084
+ version = "0.2.0-alpha.6"
1085
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1086
+ checksum = "8dd9e63c1744f755c2f60332b88de39d341e5e86239014ad839bd71c106dec42"
1087
+ dependencies = [
1088
+ "block-sys",
1089
+ "objc2-encode",
1090
+ ]
1091
+
1092
+ [[package]]
1093
+ name = "bumpalo"
1094
+ version = "3.14.0"
1095
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1096
+ checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec"
1097
+
1098
+ [[package]]
1099
+ name = "bytemuck"
1100
+ version = "1.14.0"
1101
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1102
+ checksum = "374d28ec25809ee0e23827c2ab573d729e293f281dfe393500e7ad618baa61c6"
1103
+ dependencies = [
1104
+ "bytemuck_derive",
1105
+ ]
1106
+
1107
+ [[package]]
1108
+ name = "bytemuck_derive"
1109
+ version = "1.5.0"
1110
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1111
+ checksum = "965ab7eb5f8f97d2a083c799f3a1b994fc397b2fe2da5d1da1626ce15a39f2b1"
1112
+ dependencies = [
1113
+ "proc-macro2",
1114
+ "quote",
1115
+ "syn 2.0.38",
1116
+ ]
1117
+
1118
+ [[package]]
1119
+ name = "byteorder"
1120
+ version = "1.5.0"
1121
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1122
+ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
1123
+
1124
+ [[package]]
1125
+ name = "bytes"
1126
+ version = "1.5.0"
1127
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1128
+ checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223"
1129
+
1130
+ [[package]]
1131
+ name = "cc"
1132
+ version = "1.0.83"
1133
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1134
+ checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0"
1135
+ dependencies = [
1136
+ "jobserver",
1137
+ "libc",
1138
+ ]
1139
+
1140
+ [[package]]
1141
+ name = "cesu8"
1142
+ version = "1.1.0"
1143
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1144
+ checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c"
1145
+
1146
+ [[package]]
1147
+ name = "cexpr"
1148
+ version = "0.6.0"
1149
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1150
+ checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766"
1151
+ dependencies = [
1152
+ "nom",
1153
+ ]
1154
+
1155
+ [[package]]
1156
+ name = "cfg-if"
1157
+ version = "1.0.0"
1158
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1159
+ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
1160
+
1161
+ [[package]]
1162
+ name = "cfg_aliases"
1163
+ version = "0.1.1"
1164
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1165
+ checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e"
1166
+
1167
+ [[package]]
1168
+ name = "clang-sys"
1169
+ version = "1.6.1"
1170
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1171
+ checksum = "c688fc74432808e3eb684cae8830a86be1d66a2bd58e1f248ed0960a590baf6f"
1172
+ dependencies = [
1173
+ "glob",
1174
+ "libc",
1175
+ "libloading 0.7.4",
1176
+ ]
1177
+
1178
+ [[package]]
1179
+ name = "codespan-reporting"
1180
+ version = "0.11.1"
1181
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1182
+ checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e"
1183
+ dependencies = [
1184
+ "termcolor",
1185
+ "unicode-width",
1186
+ ]
1187
+
1188
+ [[package]]
1189
+ name = "color_quant"
1190
+ version = "1.1.0"
1191
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1192
+ checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
1193
+
1194
+ [[package]]
1195
+ name = "com-rs"
1196
+ version = "0.2.1"
1197
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1198
+ checksum = "bf43edc576402991846b093a7ca18a3477e0ef9c588cde84964b5d3e43016642"
1199
+
1200
+ [[package]]
1201
+ name = "combine"
1202
+ version = "4.6.6"
1203
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1204
+ checksum = "35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4"
1205
+ dependencies = [
1206
+ "bytes",
1207
+ "memchr",
1208
+ ]
1209
+
1210
+ [[package]]
1211
+ name = "concurrent-queue"
1212
+ version = "2.3.0"
1213
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1214
+ checksum = "f057a694a54f12365049b0958a1685bb52d567f5593b355fbf685838e873d400"
1215
+ dependencies = [
1216
+ "crossbeam-utils",
1217
+ ]
1218
+
1219
+ [[package]]
1220
+ name = "console_error_panic_hook"
1221
+ version = "0.1.7"
1222
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1223
+ checksum = "a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc"
1224
+ dependencies = [
1225
+ "cfg-if",
1226
+ "wasm-bindgen",
1227
+ ]
1228
+
1229
+ [[package]]
1230
+ name = "const_panic"
1231
+ version = "0.2.8"
1232
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1233
+ checksum = "6051f239ecec86fde3410901ab7860d458d160371533842974fc61f96d15879b"
1234
+
1235
+ [[package]]
1236
+ name = "const_soft_float"
1237
+ version = "0.1.4"
1238
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1239
+ checksum = "87ca1caa64ef4ed453e68bb3db612e51cf1b2f5b871337f0fcab1c8f87cc3dff"
1240
+
1241
+ [[package]]
1242
+ name = "constgebra"
1243
+ version = "0.1.3"
1244
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1245
+ checksum = "edd23e864550e6dafc1e41ac78ce4f1ccddc8672b40c403524a04ff3f0518420"
1246
+ dependencies = [
1247
+ "const_soft_float",
1248
+ ]
1249
+
1250
+ [[package]]
1251
+ name = "core-foundation"
1252
+ version = "0.9.3"
1253
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1254
+ checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146"
1255
+ dependencies = [
1256
+ "core-foundation-sys",
1257
+ "libc",
1258
+ ]
1259
+
1260
+ [[package]]
1261
+ name = "core-foundation-sys"
1262
+ version = "0.8.4"
1263
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1264
+ checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa"
1265
+
1266
+ [[package]]
1267
+ name = "core-graphics"
1268
+ version = "0.22.3"
1269
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1270
+ checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb"
1271
+ dependencies = [
1272
+ "bitflags 1.3.2",
1273
+ "core-foundation",
1274
+ "core-graphics-types",
1275
+ "foreign-types",
1276
+ "libc",
1277
+ ]
1278
+
1279
+ [[package]]
1280
+ name = "core-graphics-types"
1281
+ version = "0.1.2"
1282
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1283
+ checksum = "2bb142d41022986c1d8ff29103a1411c8a3dfad3552f87a4f8dc50d61d4f4e33"
1284
+ dependencies = [
1285
+ "bitflags 1.3.2",
1286
+ "core-foundation",
1287
+ "libc",
1288
+ ]
1289
+
1290
+ [[package]]
1291
+ name = "coreaudio-rs"
1292
+ version = "0.11.3"
1293
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1294
+ checksum = "321077172d79c662f64f5071a03120748d5bb652f5231570141be24cfcd2bace"
1295
+ dependencies = [
1296
+ "bitflags 1.3.2",
1297
+ "core-foundation-sys",
1298
+ "coreaudio-sys",
1299
+ ]
1300
+
1301
+ [[package]]
1302
+ name = "coreaudio-sys"
1303
+ version = "0.2.13"
1304
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1305
+ checksum = "d8478e5bdad14dce236b9898ea002eabfa87cbe14f0aa538dbe3b6a4bec4332d"
1306
+ dependencies = [
1307
+ "bindgen",
1308
+ ]
1309
+
1310
+ [[package]]
1311
+ name = "cpal"
1312
+ version = "0.15.2"
1313
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1314
+ checksum = "6d959d90e938c5493000514b446987c07aed46c668faaa7d34d6c7a67b1a578c"
1315
+ dependencies = [
1316
+ "alsa",
1317
+ "core-foundation-sys",
1318
+ "coreaudio-rs",
1319
+ "dasp_sample",
1320
+ "jni 0.19.0",
1321
+ "js-sys",
1322
+ "libc",
1323
+ "mach2",
1324
+ "ndk",
1325
+ "ndk-context",
1326
+ "oboe",
1327
+ "once_cell",
1328
+ "parking_lot",
1329
+ "wasm-bindgen",
1330
+ "wasm-bindgen-futures",
1331
+ "web-sys",
1332
+ "windows 0.46.0",
1333
+ ]
1334
+
1335
+ [[package]]
1336
+ name = "crc32fast"
1337
+ version = "1.3.2"
1338
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1339
+ checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
1340
+ dependencies = [
1341
+ "cfg-if",
1342
+ ]
1343
+
1344
+ [[package]]
1345
+ name = "crossbeam-channel"
1346
+ version = "0.5.8"
1347
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1348
+ checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200"
1349
+ dependencies = [
1350
+ "cfg-if",
1351
+ "crossbeam-utils",
1352
+ ]
1353
+
1354
+ [[package]]
1355
+ name = "crossbeam-utils"
1356
+ version = "0.8.16"
1357
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1358
+ checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294"
1359
+ dependencies = [
1360
+ "cfg-if",
1361
+ ]
1362
+
1363
+ [[package]]
1364
+ name = "d3d12"
1365
+ version = "0.6.0"
1366
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1367
+ checksum = "d8f0de2f5a8e7bd4a9eec0e3c781992a4ce1724f68aec7d7a3715344de8b39da"
1368
+ dependencies = [
1369
+ "bitflags 1.3.2",
1370
+ "libloading 0.7.4",
1371
+ "winapi",
1372
+ ]
1373
+
1374
+ [[package]]
1375
+ name = "dasp_sample"
1376
+ version = "0.11.0"
1377
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1378
+ checksum = "0c87e182de0887fd5361989c677c4e8f5000cd9491d6d563161a8f3a5519fc7f"
1379
+
1380
+ [[package]]
1381
+ name = "data-encoding"
1382
+ version = "2.4.0"
1383
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1384
+ checksum = "c2e66c9d817f1720209181c316d28635c050fa304f9c79e47a520882661b7308"
1385
+
1386
+ [[package]]
1387
+ name = "dispatch"
1388
+ version = "0.2.0"
1389
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1390
+ checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b"
1391
+
1392
+ [[package]]
1393
+ name = "downcast-rs"
1394
+ version = "1.2.0"
1395
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1396
+ checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650"
1397
+
1398
+ [[package]]
1399
+ name = "encase"
1400
+ version = "0.6.1"
1401
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1402
+ checksum = "8fce2eeef77fd4a293a54b62aa00ac9daebfbcda4bf8998c5a815635b004aa1c"
1403
+ dependencies = [
1404
+ "const_panic",
1405
+ "encase_derive",
1406
+ "glam",
1407
+ "thiserror",
1408
+ ]
1409
+
1410
+ [[package]]
1411
+ name = "encase_derive"
1412
+ version = "0.6.1"
1413
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1414
+ checksum = "0e520cde08cbf4f7cc097f61573ec06ce467019803de8ae82fb2823fa1554a0e"
1415
+ dependencies = [
1416
+ "encase_derive_impl",
1417
+ ]
1418
+
1419
+ [[package]]
1420
+ name = "encase_derive_impl"
1421
+ version = "0.6.1"
1422
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1423
+ checksum = "3fe2568f851fd6144a45fa91cfed8fe5ca8fc0b56ba6797bfc1ed2771b90e37c"
1424
+ dependencies = [
1425
+ "proc-macro2",
1426
+ "quote",
1427
+ "syn 2.0.38",
1428
+ ]
1429
+
1430
+ [[package]]
1431
+ name = "equivalent"
1432
+ version = "1.0.1"
1433
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1434
+ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
1435
+
1436
+ [[package]]
1437
+ name = "erased-serde"
1438
+ version = "0.3.31"
1439
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1440
+ checksum = "6c138974f9d5e7fe373eb04df7cae98833802ae4b11c24ac7039a21d5af4b26c"
1441
+ dependencies = [
1442
+ "serde",
1443
+ ]
1444
+
1445
+ [[package]]
1446
+ name = "euclid"
1447
+ version = "0.22.9"
1448
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1449
+ checksum = "87f253bc5c813ca05792837a0ff4b3a580336b224512d48f7eda1d7dd9210787"
1450
+ dependencies = [
1451
+ "num-traits",
1452
+ ]
1453
+
1454
+ [[package]]
1455
+ name = "event-listener"
1456
+ version = "2.5.3"
1457
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1458
+ checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0"
1459
+
1460
+ [[package]]
1461
+ name = "fastrand"
1462
+ version = "1.9.0"
1463
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1464
+ checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be"
1465
+ dependencies = [
1466
+ "instant",
1467
+ ]
1468
+
1469
+ [[package]]
1470
+ name = "fastrand"
1471
+ version = "2.0.1"
1472
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1473
+ checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5"
1474
+
1475
+ [[package]]
1476
+ name = "fdeflate"
1477
+ version = "0.3.0"
1478
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1479
+ checksum = "d329bdeac514ee06249dabc27877490f17f5d371ec693360768b838e19f3ae10"
1480
+ dependencies = [
1481
+ "simd-adler32",
1482
+ ]
1483
+
1484
+ [[package]]
1485
+ name = "filetime"
1486
+ version = "0.2.22"
1487
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1488
+ checksum = "d4029edd3e734da6fe05b6cd7bd2960760a616bd2ddd0d59a0124746d6272af0"
1489
+ dependencies = [
1490
+ "cfg-if",
1491
+ "libc",
1492
+ "redox_syscall 0.3.5",
1493
+ "windows-sys 0.48.0",
1494
+ ]
1495
+
1496
+ [[package]]
1497
+ name = "fixedbitset"
1498
+ version = "0.4.2"
1499
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1500
+ checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80"
1501
+
1502
+ [[package]]
1503
+ name = "flate2"
1504
+ version = "1.0.28"
1505
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1506
+ checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e"
1507
+ dependencies = [
1508
+ "crc32fast",
1509
+ "miniz_oxide",
1510
+ ]
1511
+
1512
+ [[package]]
1513
+ name = "fnv"
1514
+ version = "1.0.7"
1515
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1516
+ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
1517
+
1518
+ [[package]]
1519
+ name = "foreign-types"
1520
+ version = "0.3.2"
1521
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1522
+ checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
1523
+ dependencies = [
1524
+ "foreign-types-shared",
1525
+ ]
1526
+
1527
+ [[package]]
1528
+ name = "foreign-types-shared"
1529
+ version = "0.1.1"
1530
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1531
+ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
1532
+
1533
+ [[package]]
1534
+ name = "fsevent-sys"
1535
+ version = "4.1.0"
1536
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1537
+ checksum = "76ee7a02da4d231650c7cea31349b889be2f45ddb3ef3032d2ec8185f6313fd2"
1538
+ dependencies = [
1539
+ "libc",
1540
+ ]
1541
+
1542
+ [[package]]
1543
+ name = "futures-core"
1544
+ version = "0.3.29"
1545
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1546
+ checksum = "eb1d22c66e66d9d72e1758f0bd7d4fd0bee04cad842ee34587d68c07e45d088c"
1547
+
1548
+ [[package]]
1549
+ name = "futures-io"
1550
+ version = "0.3.29"
1551
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1552
+ checksum = "8bf34a163b5c4c52d0478a4d757da8fb65cabef42ba90515efee0f6f9fa45aaa"
1553
+
1554
+ [[package]]
1555
+ name = "futures-lite"
1556
+ version = "1.13.0"
1557
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1558
+ checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce"
1559
+ dependencies = [
1560
+ "fastrand 1.9.0",
1561
+ "futures-core",
1562
+ "futures-io",
1563
+ "memchr",
1564
+ "parking",
1565
+ "pin-project-lite",
1566
+ "waker-fn",
1567
+ ]
1568
+
1569
+ [[package]]
1570
+ name = "getrandom"
1571
+ version = "0.2.10"
1572
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1573
+ checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427"
1574
+ dependencies = [
1575
+ "cfg-if",
1576
+ "js-sys",
1577
+ "libc",
1578
+ "wasi",
1579
+ "wasm-bindgen",
1580
+ ]
1581
+
1582
+ [[package]]
1583
+ name = "gilrs"
1584
+ version = "0.10.2"
1585
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1586
+ checksum = "62fd19844d0eb919aca41d3e4ea0e0b6bf60e1e827558b101c269015b8f5f27a"
1587
+ dependencies = [
1588
+ "fnv",
1589
+ "gilrs-core",
1590
+ "log",
1591
+ "uuid",
1592
+ "vec_map",
1593
+ ]
1594
+
1595
+ [[package]]
1596
+ name = "gilrs-core"
1597
+ version = "0.5.7"
1598
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1599
+ checksum = "5ccc99e9b8d63ffcaa334c4babfa31f46e156618a11f63efb6e8e6bcb37b830d"
1600
+ dependencies = [
1601
+ "core-foundation",
1602
+ "io-kit-sys",
1603
+ "js-sys",
1604
+ "libc",
1605
+ "libudev-sys",
1606
+ "log",
1607
+ "nix 0.26.4",
1608
+ "uuid",
1609
+ "vec_map",
1610
+ "wasm-bindgen",
1611
+ "web-sys",
1612
+ "windows 0.51.1",
1613
+ ]
1614
+
1615
+ [[package]]
1616
+ name = "gimli"
1617
+ version = "0.28.0"
1618
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1619
+ checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0"
1620
+
1621
+ [[package]]
1622
+ name = "glam"
1623
+ version = "0.24.2"
1624
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1625
+ checksum = "b5418c17512bdf42730f9032c74e1ae39afc408745ebb2acf72fbc4691c17945"
1626
+ dependencies = [
1627
+ "bytemuck",
1628
+ "serde",
1629
+ ]
1630
+
1631
+ [[package]]
1632
+ name = "glob"
1633
+ version = "0.3.1"
1634
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1635
+ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
1636
+
1637
+ [[package]]
1638
+ name = "glow"
1639
+ version = "0.12.3"
1640
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1641
+ checksum = "ca0fe580e4b60a8ab24a868bc08e2f03cbcb20d3d676601fa909386713333728"
1642
+ dependencies = [
1643
+ "js-sys",
1644
+ "slotmap",
1645
+ "wasm-bindgen",
1646
+ "web-sys",
1647
+ ]
1648
+
1649
+ [[package]]
1650
+ name = "gltf"
1651
+ version = "1.3.0"
1652
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1653
+ checksum = "ad2dcfb6dd7a66f9eb3d181a29dcfb22d146b0bcdc2e1ed1713cbf03939a88ea"
1654
+ dependencies = [
1655
+ "byteorder",
1656
+ "gltf-json",
1657
+ "lazy_static",
1658
+ ]
1659
+
1660
+ [[package]]
1661
+ name = "gltf-derive"
1662
+ version = "1.3.0"
1663
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1664
+ checksum = "f2cbcea5dd47e7ad4e9ee6f040384fcd7204bbf671aa4f9e7ca7dfc9bfa1de20"
1665
+ dependencies = [
1666
+ "inflections",
1667
+ "proc-macro2",
1668
+ "quote",
1669
+ "syn 2.0.38",
1670
+ ]
1671
+
1672
+ [[package]]
1673
+ name = "gltf-json"
1674
+ version = "1.3.0"
1675
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1676
+ checksum = "7d5b810806b78dde4b71a95cc0e6fdcab34c4c617da3574df166f9987be97d03"
1677
+ dependencies = [
1678
+ "gltf-derive",
1679
+ "serde",
1680
+ "serde_derive",
1681
+ "serde_json",
1682
+ ]
1683
+
1684
+ [[package]]
1685
+ name = "glyph_brush_layout"
1686
+ version = "0.2.3"
1687
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1688
+ checksum = "cc32c2334f00ca5ac3695c5009ae35da21da8c62d255b5b96d56e2597a637a38"
1689
+ dependencies = [
1690
+ "ab_glyph",
1691
+ "approx",
1692
+ "xi-unicode",
1693
+ ]
1694
+
1695
+ [[package]]
1696
+ name = "gpu-alloc"
1697
+ version = "0.5.4"
1698
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1699
+ checksum = "22beaafc29b38204457ea030f6fb7a84c9e4dd1b86e311ba0542533453d87f62"
1700
+ dependencies = [
1701
+ "bitflags 1.3.2",
1702
+ "gpu-alloc-types",
1703
+ ]
1704
+
1705
+ [[package]]
1706
+ name = "gpu-alloc-types"
1707
+ version = "0.2.0"
1708
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1709
+ checksum = "54804d0d6bc9d7f26db4eaec1ad10def69b599315f487d32c334a80d1efe67a5"
1710
+ dependencies = [
1711
+ "bitflags 1.3.2",
1712
+ ]
1713
+
1714
+ [[package]]
1715
+ name = "gpu-allocator"
1716
+ version = "0.22.0"
1717
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1718
+ checksum = "ce95f9e2e11c2c6fadfce42b5af60005db06576f231f5c92550fdded43c423e8"
1719
+ dependencies = [
1720
+ "backtrace",
1721
+ "log",
1722
+ "thiserror",
1723
+ "winapi",
1724
+ "windows 0.44.0",
1725
+ ]
1726
+
1727
+ [[package]]
1728
+ name = "gpu-descriptor"
1729
+ version = "0.2.4"
1730
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1731
+ checksum = "cc11df1ace8e7e564511f53af41f3e42ddc95b56fd07b3f4445d2a6048bc682c"
1732
+ dependencies = [
1733
+ "bitflags 2.4.1",
1734
+ "gpu-descriptor-types",
1735
+ "hashbrown 0.14.2",
1736
+ ]
1737
+
1738
+ [[package]]
1739
+ name = "gpu-descriptor-types"
1740
+ version = "0.1.2"
1741
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1742
+ checksum = "6bf0b36e6f090b7e1d8a4b49c0cb81c1f8376f72198c65dd3ad9ff3556b8b78c"
1743
+ dependencies = [
1744
+ "bitflags 2.4.1",
1745
+ ]
1746
+
1747
+ [[package]]
1748
+ name = "grid"
1749
+ version = "0.10.0"
1750
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1751
+ checksum = "eec1c01eb1de97451ee0d60de7d81cf1e72aabefb021616027f3d1c3ec1c723c"
1752
+
1753
+ [[package]]
1754
+ name = "guillotiere"
1755
+ version = "0.6.2"
1756
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1757
+ checksum = "b62d5865c036cb1393e23c50693df631d3f5d7bcca4c04fe4cc0fd592e74a782"
1758
+ dependencies = [
1759
+ "euclid",
1760
+ "svg_fmt",
1761
+ ]
1762
+
1763
+ [[package]]
1764
+ name = "hashbrown"
1765
+ version = "0.12.3"
1766
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1767
+ checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
1768
+
1769
+ [[package]]
1770
+ name = "hashbrown"
1771
+ version = "0.14.2"
1772
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1773
+ checksum = "f93e7192158dbcda357bdec5fb5788eebf8bbac027f3f33e719d29135ae84156"
1774
+ dependencies = [
1775
+ "ahash",
1776
+ "allocator-api2",
1777
+ "serde",
1778
+ ]
1779
+
1780
+ [[package]]
1781
+ name = "hassle-rs"
1782
+ version = "0.10.0"
1783
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1784
+ checksum = "1397650ee315e8891a0df210707f0fc61771b0cc518c3023896064c5407cb3b0"
1785
+ dependencies = [
1786
+ "bitflags 1.3.2",
1787
+ "com-rs",
1788
+ "libc",
1789
+ "libloading 0.7.4",
1790
+ "thiserror",
1791
+ "widestring",
1792
+ "winapi",
1793
+ ]
1794
+
1795
+ [[package]]
1796
+ name = "hexasphere"
1797
+ version = "9.1.0"
1798
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1799
+ checksum = "7cb3df16a7bcb1b5bc092abd55e14f77ca70aea14445026e264586fc62889a10"
1800
+ dependencies = [
1801
+ "constgebra",
1802
+ "glam",
1803
+ ]
1804
+
1805
+ [[package]]
1806
+ name = "hexf-parse"
1807
+ version = "0.2.1"
1808
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1809
+ checksum = "dfa686283ad6dd069f105e5ab091b04c62850d3e4cf5d67debad1933f55023df"
1810
+
1811
+ [[package]]
1812
+ name = "image"
1813
+ version = "0.24.7"
1814
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1815
+ checksum = "6f3dfdbdd72063086ff443e297b61695500514b1e41095b6fb9a5ab48a70a711"
1816
+ dependencies = [
1817
+ "bytemuck",
1818
+ "byteorder",
1819
+ "color_quant",
1820
+ "num-rational",
1821
+ "num-traits",
1822
+ "png",
1823
+ ]
1824
+
1825
+ [[package]]
1826
+ name = "indexmap"
1827
+ version = "1.9.3"
1828
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1829
+ checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
1830
+ dependencies = [
1831
+ "autocfg",
1832
+ "hashbrown 0.12.3",
1833
+ ]
1834
+
1835
+ [[package]]
1836
+ name = "indexmap"
1837
+ version = "2.0.2"
1838
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1839
+ checksum = "8adf3ddd720272c6ea8bf59463c04e0f93d0bbf7c5439b691bca2987e0270897"
1840
+ dependencies = [
1841
+ "equivalent",
1842
+ "hashbrown 0.14.2",
1843
+ ]
1844
+
1845
+ [[package]]
1846
+ name = "inflections"
1847
+ version = "1.1.1"
1848
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1849
+ checksum = "a257582fdcde896fd96463bf2d40eefea0580021c0712a0e2b028b60b47a837a"
1850
+
1851
+ [[package]]
1852
+ name = "inotify"
1853
+ version = "0.9.6"
1854
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1855
+ checksum = "f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff"
1856
+ dependencies = [
1857
+ "bitflags 1.3.2",
1858
+ "inotify-sys",
1859
+ "libc",
1860
+ ]
1861
+
1862
+ [[package]]
1863
+ name = "inotify-sys"
1864
+ version = "0.1.5"
1865
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1866
+ checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb"
1867
+ dependencies = [
1868
+ "libc",
1869
+ ]
1870
+
1871
+ [[package]]
1872
+ name = "instant"
1873
+ version = "0.1.12"
1874
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1875
+ checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
1876
+ dependencies = [
1877
+ "cfg-if",
1878
+ "js-sys",
1879
+ "wasm-bindgen",
1880
+ "web-sys",
1881
+ ]
1882
+
1883
+ [[package]]
1884
+ name = "io-kit-sys"
1885
+ version = "0.3.0"
1886
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1887
+ checksum = "9b2d4429acc1deff0fbdece0325b4997bdb02b2c245ab7023fd5deca0f6348de"
1888
+ dependencies = [
1889
+ "core-foundation-sys",
1890
+ "mach2",
1891
+ ]
1892
+
1893
+ [[package]]
1894
+ name = "itoa"
1895
+ version = "1.0.9"
1896
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1897
+ checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38"
1898
+
1899
+ [[package]]
1900
+ name = "jni"
1901
+ version = "0.19.0"
1902
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1903
+ checksum = "c6df18c2e3db7e453d3c6ac5b3e9d5182664d28788126d39b91f2d1e22b017ec"
1904
+ dependencies = [
1905
+ "cesu8",
1906
+ "combine",
1907
+ "jni-sys",
1908
+ "log",
1909
+ "thiserror",
1910
+ "walkdir",
1911
+ ]
1912
+
1913
+ [[package]]
1914
+ name = "jni"
1915
+ version = "0.20.0"
1916
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1917
+ checksum = "039022cdf4d7b1cf548d31f60ae783138e5fd42013f6271049d7df7afadef96c"
1918
+ dependencies = [
1919
+ "cesu8",
1920
+ "combine",
1921
+ "jni-sys",
1922
+ "log",
1923
+ "thiserror",
1924
+ "walkdir",
1925
+ ]
1926
+
1927
+ [[package]]
1928
+ name = "jni-sys"
1929
+ version = "0.3.0"
1930
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1931
+ checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130"
1932
+
1933
+ [[package]]
1934
+ name = "jobserver"
1935
+ version = "0.1.27"
1936
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1937
+ checksum = "8c37f63953c4c63420ed5fd3d6d398c719489b9f872b9fa683262f8edd363c7d"
1938
+ dependencies = [
1939
+ "libc",
1940
+ ]
1941
+
1942
+ [[package]]
1943
+ name = "js-sys"
1944
+ version = "0.3.64"
1945
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1946
+ checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a"
1947
+ dependencies = [
1948
+ "wasm-bindgen",
1949
+ ]
1950
+
1951
+ [[package]]
1952
+ name = "khronos-egl"
1953
+ version = "4.1.0"
1954
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1955
+ checksum = "8c2352bd1d0bceb871cb9d40f24360c8133c11d7486b68b5381c1dd1a32015e3"
1956
+ dependencies = [
1957
+ "libc",
1958
+ "libloading 0.7.4",
1959
+ "pkg-config",
1960
+ ]
1961
+
1962
+ [[package]]
1963
+ name = "kqueue"
1964
+ version = "1.0.8"
1965
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1966
+ checksum = "7447f1ca1b7b563588a205fe93dea8df60fd981423a768bc1c0ded35ed147d0c"
1967
+ dependencies = [
1968
+ "kqueue-sys",
1969
+ "libc",
1970
+ ]
1971
+
1972
+ [[package]]
1973
+ name = "kqueue-sys"
1974
+ version = "1.0.4"
1975
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1976
+ checksum = "ed9625ffda8729b85e45cf04090035ac368927b8cebc34898e7c120f52e4838b"
1977
+ dependencies = [
1978
+ "bitflags 1.3.2",
1979
+ "libc",
1980
+ ]
1981
+
1982
+ [[package]]
1983
+ name = "ktx2"
1984
+ version = "0.3.0"
1985
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1986
+ checksum = "87d65e08a9ec02e409d27a0139eaa6b9756b4d81fe7cde71f6941a83730ce838"
1987
+ dependencies = [
1988
+ "bitflags 1.3.2",
1989
+ ]
1990
+
1991
+ [[package]]
1992
+ name = "lazy_static"
1993
+ version = "1.4.0"
1994
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1995
+ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
1996
+
1997
+ [[package]]
1998
+ name = "lazycell"
1999
+ version = "1.3.0"
2000
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2001
+ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
2002
+
2003
+ [[package]]
2004
+ name = "lewton"
2005
+ version = "0.10.2"
2006
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2007
+ checksum = "777b48df9aaab155475a83a7df3070395ea1ac6902f5cd062b8f2b028075c030"
2008
+ dependencies = [
2009
+ "byteorder",
2010
+ "ogg",
2011
+ "tinyvec",
2012
+ ]
2013
+
2014
+ [[package]]
2015
+ name = "libc"
2016
+ version = "0.2.149"
2017
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2018
+ checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b"
2019
+
2020
+ [[package]]
2021
+ name = "libloading"
2022
+ version = "0.7.4"
2023
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2024
+ checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f"
2025
+ dependencies = [
2026
+ "cfg-if",
2027
+ "winapi",
2028
+ ]
2029
+
2030
+ [[package]]
2031
+ name = "libloading"
2032
+ version = "0.8.1"
2033
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2034
+ checksum = "c571b676ddfc9a8c12f1f3d3085a7b163966a8fd8098a90640953ce5f6170161"
2035
+ dependencies = [
2036
+ "cfg-if",
2037
+ "windows-sys 0.48.0",
2038
+ ]
2039
+
2040
+ [[package]]
2041
+ name = "libudev-sys"
2042
+ version = "0.1.4"
2043
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2044
+ checksum = "3c8469b4a23b962c1396b9b451dda50ef5b283e8dd309d69033475fa9b334324"
2045
+ dependencies = [
2046
+ "libc",
2047
+ "pkg-config",
2048
+ ]
2049
+
2050
+ [[package]]
2051
+ name = "lock_api"
2052
+ version = "0.4.11"
2053
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2054
+ checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45"
2055
+ dependencies = [
2056
+ "autocfg",
2057
+ "scopeguard",
2058
+ ]
2059
+
2060
+ [[package]]
2061
+ name = "log"
2062
+ version = "0.4.20"
2063
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2064
+ checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
2065
+
2066
+ [[package]]
2067
+ name = "mach2"
2068
+ version = "0.4.1"
2069
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2070
+ checksum = "6d0d1830bcd151a6fc4aea1369af235b36c1528fe976b8ff678683c9995eade8"
2071
+ dependencies = [
2072
+ "libc",
2073
+ ]
2074
+
2075
+ [[package]]
2076
+ name = "malloc_buf"
2077
+ version = "0.0.6"
2078
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2079
+ checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb"
2080
+ dependencies = [
2081
+ "libc",
2082
+ ]
2083
+
2084
+ [[package]]
2085
+ name = "matchers"
2086
+ version = "0.1.0"
2087
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2088
+ checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558"
2089
+ dependencies = [
2090
+ "regex-automata 0.1.10",
2091
+ ]
2092
+
2093
+ [[package]]
2094
+ name = "memchr"
2095
+ version = "2.6.4"
2096
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2097
+ checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167"
2098
+
2099
+ [[package]]
2100
+ name = "metal"
2101
+ version = "0.24.0"
2102
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2103
+ checksum = "de11355d1f6781482d027a3b4d4de7825dcedb197bf573e0596d00008402d060"
2104
+ dependencies = [
2105
+ "bitflags 1.3.2",
2106
+ "block",
2107
+ "core-graphics-types",
2108
+ "foreign-types",
2109
+ "log",
2110
+ "objc",
2111
+ ]
2112
+
2113
+ [[package]]
2114
+ name = "minimal-lexical"
2115
+ version = "0.2.1"
2116
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2117
+ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
2118
+
2119
+ [[package]]
2120
+ name = "miniz_oxide"
2121
+ version = "0.7.1"
2122
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2123
+ checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7"
2124
+ dependencies = [
2125
+ "adler",
2126
+ "simd-adler32",
2127
+ ]
2128
+
2129
+ [[package]]
2130
+ name = "mio"
2131
+ version = "0.8.9"
2132
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2133
+ checksum = "3dce281c5e46beae905d4de1870d8b1509a9142b62eedf18b443b011ca8343d0"
2134
+ dependencies = [
2135
+ "libc",
2136
+ "log",
2137
+ "wasi",
2138
+ "windows-sys 0.48.0",
2139
+ ]
2140
+
2141
+ [[package]]
2142
+ name = "naga"
2143
+ version = "0.12.3"
2144
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2145
+ checksum = "bbcc2e0513220fd2b598e6068608d4462db20322c0e77e47f6f488dfcfc279cb"
2146
+ dependencies = [
2147
+ "bit-set",
2148
+ "bitflags 1.3.2",
2149
+ "codespan-reporting",
2150
+ "hexf-parse",
2151
+ "indexmap 1.9.3",
2152
+ "log",
2153
+ "num-traits",
2154
+ "pp-rs",
2155
+ "rustc-hash",
2156
+ "spirv",
2157
+ "termcolor",
2158
+ "thiserror",
2159
+ "unicode-xid",
2160
+ ]
2161
+
2162
+ [[package]]
2163
+ name = "naga_oil"
2164
+ version = "0.8.2"
2165
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2166
+ checksum = "8be942a5c21c58b9b0bf4d9b99db3634ddb7a916f8e1d1d0b71820cc4150e56b"
2167
+ dependencies = [
2168
+ "bit-set",
2169
+ "codespan-reporting",
2170
+ "data-encoding",
2171
+ "indexmap 1.9.3",
2172
+ "naga",
2173
+ "once_cell",
2174
+ "regex",
2175
+ "regex-syntax 0.6.29",
2176
+ "rustc-hash",
2177
+ "thiserror",
2178
+ "tracing",
2179
+ "unicode-ident",
2180
+ ]
2181
+
2182
+ [[package]]
2183
+ name = "ndk"
2184
+ version = "0.7.0"
2185
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2186
+ checksum = "451422b7e4718271c8b5b3aadf5adedba43dc76312454b387e98fae0fc951aa0"
2187
+ dependencies = [
2188
+ "bitflags 1.3.2",
2189
+ "jni-sys",
2190
+ "ndk-sys",
2191
+ "num_enum 0.5.11",
2192
+ "raw-window-handle",
2193
+ "thiserror",
2194
+ ]
2195
+
2196
+ [[package]]
2197
+ name = "ndk-context"
2198
+ version = "0.1.1"
2199
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2200
+ checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b"
2201
+
2202
+ [[package]]
2203
+ name = "ndk-sys"
2204
+ version = "0.4.1+23.1.7779620"
2205
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2206
+ checksum = "3cf2aae958bd232cac5069850591667ad422d263686d75b52a065f9badeee5a3"
2207
+ dependencies = [
2208
+ "jni-sys",
2209
+ ]
2210
+
2211
+ [[package]]
2212
+ name = "nix"
2213
+ version = "0.24.3"
2214
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2215
+ checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069"
2216
+ dependencies = [
2217
+ "bitflags 1.3.2",
2218
+ "cfg-if",
2219
+ "libc",
2220
+ ]
2221
+
2222
+ [[package]]
2223
+ name = "nix"
2224
+ version = "0.26.4"
2225
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2226
+ checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b"
2227
+ dependencies = [
2228
+ "bitflags 1.3.2",
2229
+ "cfg-if",
2230
+ "libc",
2231
+ ]
2232
+
2233
+ [[package]]
2234
+ name = "nom"
2235
+ version = "7.1.3"
2236
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2237
+ checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
2238
+ dependencies = [
2239
+ "memchr",
2240
+ "minimal-lexical",
2241
+ ]
2242
+
2243
+ [[package]]
2244
+ name = "notify"
2245
+ version = "6.1.1"
2246
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2247
+ checksum = "6205bd8bb1e454ad2e27422015fb5e4f2bcc7e08fa8f27058670d208324a4d2d"
2248
+ dependencies = [
2249
+ "bitflags 2.4.1",
2250
+ "crossbeam-channel",
2251
+ "filetime",
2252
+ "fsevent-sys",
2253
+ "inotify",
2254
+ "kqueue",
2255
+ "libc",
2256
+ "log",
2257
+ "mio",
2258
+ "walkdir",
2259
+ "windows-sys 0.48.0",
2260
+ ]
2261
+
2262
+ [[package]]
2263
+ name = "ntapi"
2264
+ version = "0.4.1"
2265
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2266
+ checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4"
2267
+ dependencies = [
2268
+ "winapi",
2269
+ ]
2270
+
2271
+ [[package]]
2272
+ name = "nu-ansi-term"
2273
+ version = "0.46.0"
2274
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2275
+ checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84"
2276
+ dependencies = [
2277
+ "overload",
2278
+ "winapi",
2279
+ ]
2280
+
2281
+ [[package]]
2282
+ name = "num-derive"
2283
+ version = "0.3.3"
2284
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2285
+ checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d"
2286
+ dependencies = [
2287
+ "proc-macro2",
2288
+ "quote",
2289
+ "syn 1.0.109",
2290
+ ]
2291
+
2292
+ [[package]]
2293
+ name = "num-integer"
2294
+ version = "0.1.45"
2295
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2296
+ checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
2297
+ dependencies = [
2298
+ "autocfg",
2299
+ "num-traits",
2300
+ ]
2301
+
2302
+ [[package]]
2303
+ name = "num-rational"
2304
+ version = "0.4.1"
2305
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2306
+ checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0"
2307
+ dependencies = [
2308
+ "autocfg",
2309
+ "num-integer",
2310
+ "num-traits",
2311
+ ]
2312
+
2313
+ [[package]]
2314
+ name = "num-traits"
2315
+ version = "0.2.17"
2316
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2317
+ checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c"
2318
+ dependencies = [
2319
+ "autocfg",
2320
+ ]
2321
+
2322
+ [[package]]
2323
+ name = "num_enum"
2324
+ version = "0.5.11"
2325
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2326
+ checksum = "1f646caf906c20226733ed5b1374287eb97e3c2a5c227ce668c1f2ce20ae57c9"
2327
+ dependencies = [
2328
+ "num_enum_derive 0.5.11",
2329
+ ]
2330
+
2331
+ [[package]]
2332
+ name = "num_enum"
2333
+ version = "0.6.1"
2334
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2335
+ checksum = "7a015b430d3c108a207fd776d2e2196aaf8b1cf8cf93253e3a097ff3085076a1"
2336
+ dependencies = [
2337
+ "num_enum_derive 0.6.1",
2338
+ ]
2339
+
2340
+ [[package]]
2341
+ name = "num_enum_derive"
2342
+ version = "0.5.11"
2343
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2344
+ checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799"
2345
+ dependencies = [
2346
+ "proc-macro-crate",
2347
+ "proc-macro2",
2348
+ "quote",
2349
+ "syn 1.0.109",
2350
+ ]
2351
+
2352
+ [[package]]
2353
+ name = "num_enum_derive"
2354
+ version = "0.6.1"
2355
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2356
+ checksum = "96667db765a921f7b295ffee8b60472b686a51d4f21c2ee4ffdb94c7013b65a6"
2357
+ dependencies = [
2358
+ "proc-macro-crate",
2359
+ "proc-macro2",
2360
+ "quote",
2361
+ "syn 2.0.38",
2362
+ ]
2363
+
2364
+ [[package]]
2365
+ name = "objc"
2366
+ version = "0.2.7"
2367
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2368
+ checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1"
2369
+ dependencies = [
2370
+ "malloc_buf",
2371
+ "objc_exception",
2372
+ ]
2373
+
2374
+ [[package]]
2375
+ name = "objc-sys"
2376
+ version = "0.2.0-beta.2"
2377
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2378
+ checksum = "df3b9834c1e95694a05a828b59f55fa2afec6288359cda67146126b3f90a55d7"
2379
+
2380
+ [[package]]
2381
+ name = "objc2"
2382
+ version = "0.3.0-beta.3.patch-leaks.3"
2383
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2384
+ checksum = "7e01640f9f2cb1220bbe80325e179e532cb3379ebcd1bf2279d703c19fe3a468"
2385
+ dependencies = [
2386
+ "block2",
2387
+ "objc-sys",
2388
+ "objc2-encode",
2389
+ ]
2390
+
2391
+ [[package]]
2392
+ name = "objc2-encode"
2393
+ version = "2.0.0-pre.2"
2394
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2395
+ checksum = "abfcac41015b00a120608fdaa6938c44cb983fee294351cc4bac7638b4e50512"
2396
+ dependencies = [
2397
+ "objc-sys",
2398
+ ]
2399
+
2400
+ [[package]]
2401
+ name = "objc_exception"
2402
+ version = "0.1.2"
2403
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2404
+ checksum = "ad970fb455818ad6cba4c122ad012fae53ae8b4795f86378bce65e4f6bab2ca4"
2405
+ dependencies = [
2406
+ "cc",
2407
+ ]
2408
+
2409
+ [[package]]
2410
+ name = "object"
2411
+ version = "0.32.1"
2412
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2413
+ checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0"
2414
+ dependencies = [
2415
+ "memchr",
2416
+ ]
2417
+
2418
+ [[package]]
2419
+ name = "oboe"
2420
+ version = "0.5.0"
2421
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2422
+ checksum = "8868cc237ee02e2d9618539a23a8d228b9bb3fc2e7a5b11eed3831de77c395d0"
2423
+ dependencies = [
2424
+ "jni 0.20.0",
2425
+ "ndk",
2426
+ "ndk-context",
2427
+ "num-derive",
2428
+ "num-traits",
2429
+ "oboe-sys",
2430
+ ]
2431
+
2432
+ [[package]]
2433
+ name = "oboe-sys"
2434
+ version = "0.5.0"
2435
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2436
+ checksum = "7f44155e7fb718d3cfddcf70690b2b51ac4412f347cd9e4fbe511abe9cd7b5f2"
2437
+ dependencies = [
2438
+ "cc",
2439
+ ]
2440
+
2441
+ [[package]]
2442
+ name = "ogg"
2443
+ version = "0.8.0"
2444
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2445
+ checksum = "6951b4e8bf21c8193da321bcce9c9dd2e13c858fe078bf9054a288b419ae5d6e"
2446
+ dependencies = [
2447
+ "byteorder",
2448
+ ]
2449
+
2450
+ [[package]]
2451
+ name = "once_cell"
2452
+ version = "1.18.0"
2453
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2454
+ checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
2455
+
2456
+ [[package]]
2457
+ name = "orbclient"
2458
+ version = "0.3.46"
2459
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2460
+ checksum = "8378ac0dfbd4e7895f2d2c1f1345cab3836910baf3a300b000d04250f0c8428f"
2461
+ dependencies = [
2462
+ "redox_syscall 0.3.5",
2463
+ ]
2464
+
2465
+ [[package]]
2466
+ name = "overload"
2467
+ version = "0.1.1"
2468
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2469
+ checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
2470
+
2471
+ [[package]]
2472
+ name = "owned_ttf_parser"
2473
+ version = "0.19.0"
2474
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2475
+ checksum = "706de7e2214113d63a8238d1910463cfce781129a6f263d13fdb09ff64355ba4"
2476
+ dependencies = [
2477
+ "ttf-parser",
2478
+ ]
2479
+
2480
+ [[package]]
2481
+ name = "parking"
2482
+ version = "2.2.0"
2483
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2484
+ checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae"
2485
+
2486
+ [[package]]
2487
+ name = "parking_lot"
2488
+ version = "0.12.1"
2489
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2490
+ checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
2491
+ dependencies = [
2492
+ "lock_api",
2493
+ "parking_lot_core",
2494
+ ]
2495
+
2496
+ [[package]]
2497
+ name = "parking_lot_core"
2498
+ version = "0.9.9"
2499
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2500
+ checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e"
2501
+ dependencies = [
2502
+ "cfg-if",
2503
+ "libc",
2504
+ "redox_syscall 0.4.1",
2505
+ "smallvec",
2506
+ "windows-targets 0.48.5",
2507
+ ]
2508
+
2509
+ [[package]]
2510
+ name = "paste"
2511
+ version = "1.0.14"
2512
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2513
+ checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c"
2514
+
2515
+ [[package]]
2516
+ name = "peeking_take_while"
2517
+ version = "0.1.2"
2518
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2519
+ checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099"
2520
+
2521
+ [[package]]
2522
+ name = "percent-encoding"
2523
+ version = "2.3.0"
2524
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2525
+ checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94"
2526
+
2527
+ [[package]]
2528
+ name = "petgraph"
2529
+ version = "0.6.4"
2530
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2531
+ checksum = "e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9"
2532
+ dependencies = [
2533
+ "fixedbitset",
2534
+ "indexmap 2.0.2",
2535
+ ]
2536
+
2537
+ [[package]]
2538
+ name = "pin-project-lite"
2539
+ version = "0.2.13"
2540
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2541
+ checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58"
2542
+
2543
+ [[package]]
2544
+ name = "pkg-config"
2545
+ version = "0.3.27"
2546
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2547
+ checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"
2548
+
2549
+ [[package]]
2550
+ name = "png"
2551
+ version = "0.17.10"
2552
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2553
+ checksum = "dd75bf2d8dd3702b9707cdbc56a5b9ef42cec752eb8b3bafc01234558442aa64"
2554
+ dependencies = [
2555
+ "bitflags 1.3.2",
2556
+ "crc32fast",
2557
+ "fdeflate",
2558
+ "flate2",
2559
+ "miniz_oxide",
2560
+ ]
2561
+
2562
+ [[package]]
2563
+ name = "pp-rs"
2564
+ version = "0.2.1"
2565
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2566
+ checksum = "bb458bb7f6e250e6eb79d5026badc10a3ebb8f9a15d1fff0f13d17c71f4d6dee"
2567
+ dependencies = [
2568
+ "unicode-xid",
2569
+ ]
2570
+
2571
+ [[package]]
2572
+ name = "ppv-lite86"
2573
+ version = "0.2.17"
2574
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2575
+ checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
2576
+
2577
+ [[package]]
2578
+ name = "proc-macro-crate"
2579
+ version = "1.3.1"
2580
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2581
+ checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919"
2582
+ dependencies = [
2583
+ "once_cell",
2584
+ "toml_edit",
2585
+ ]
2586
+
2587
+ [[package]]
2588
+ name = "proc-macro2"
2589
+ version = "1.0.69"
2590
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2591
+ checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da"
2592
+ dependencies = [
2593
+ "unicode-ident",
2594
+ ]
2595
+
2596
+ [[package]]
2597
+ name = "profiling"
2598
+ version = "1.0.11"
2599
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2600
+ checksum = "f89dff0959d98c9758c88826cc002e2c3d0b9dfac4139711d1f30de442f1139b"
2601
+
2602
+ [[package]]
2603
+ name = "quote"
2604
+ version = "1.0.33"
2605
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2606
+ checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
2607
+ dependencies = [
2608
+ "proc-macro2",
2609
+ ]
2610
+
2611
+ [[package]]
2612
+ name = "radsort"
2613
+ version = "0.1.0"
2614
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2615
+ checksum = "17fd96390ed3feda12e1dfe2645ed587e0bea749e319333f104a33ff62f77a0b"
2616
+
2617
+ [[package]]
2618
+ name = "rand"
2619
+ version = "0.8.5"
2620
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2621
+ checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
2622
+ dependencies = [
2623
+ "libc",
2624
+ "rand_chacha",
2625
+ "rand_core",
2626
+ ]
2627
+
2628
+ [[package]]
2629
+ name = "rand_chacha"
2630
+ version = "0.3.1"
2631
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2632
+ checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
2633
+ dependencies = [
2634
+ "ppv-lite86",
2635
+ "rand_core",
2636
+ ]
2637
+
2638
+ [[package]]
2639
+ name = "rand_core"
2640
+ version = "0.6.4"
2641
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2642
+ checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
2643
+ dependencies = [
2644
+ "getrandom",
2645
+ ]
2646
+
2647
+ [[package]]
2648
+ name = "range-alloc"
2649
+ version = "0.1.3"
2650
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2651
+ checksum = "9c8a99fddc9f0ba0a85884b8d14e3592853e787d581ca1816c91349b10e4eeab"
2652
+
2653
+ [[package]]
2654
+ name = "raw-window-handle"
2655
+ version = "0.5.2"
2656
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2657
+ checksum = "f2ff9a1f06a88b01621b7ae906ef0211290d1c8a168a15542486a8f61c0833b9"
2658
+
2659
+ [[package]]
2660
+ name = "rectangle-pack"
2661
+ version = "0.4.2"
2662
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2663
+ checksum = "a0d463f2884048e7153449a55166f91028d5b0ea53c79377099ce4e8cf0cf9bb"
2664
+
2665
+ [[package]]
2666
+ name = "redox_syscall"
2667
+ version = "0.3.5"
2668
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2669
+ checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
2670
+ dependencies = [
2671
+ "bitflags 1.3.2",
2672
+ ]
2673
+
2674
+ [[package]]
2675
+ name = "redox_syscall"
2676
+ version = "0.4.1"
2677
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2678
+ checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
2679
+ dependencies = [
2680
+ "bitflags 1.3.2",
2681
+ ]
2682
+
2683
+ [[package]]
2684
+ name = "regex"
2685
+ version = "1.10.2"
2686
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2687
+ checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343"
2688
+ dependencies = [
2689
+ "aho-corasick",
2690
+ "memchr",
2691
+ "regex-automata 0.4.3",
2692
+ "regex-syntax 0.8.2",
2693
+ ]
2694
+
2695
+ [[package]]
2696
+ name = "regex-automata"
2697
+ version = "0.1.10"
2698
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2699
+ checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
2700
+ dependencies = [
2701
+ "regex-syntax 0.6.29",
2702
+ ]
2703
+
2704
+ [[package]]
2705
+ name = "regex-automata"
2706
+ version = "0.4.3"
2707
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2708
+ checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f"
2709
+ dependencies = [
2710
+ "aho-corasick",
2711
+ "memchr",
2712
+ "regex-syntax 0.8.2",
2713
+ ]
2714
+
2715
+ [[package]]
2716
+ name = "regex-syntax"
2717
+ version = "0.6.29"
2718
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2719
+ checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
2720
+
2721
+ [[package]]
2722
+ name = "regex-syntax"
2723
+ version = "0.8.2"
2724
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2725
+ checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
2726
+
2727
+ [[package]]
2728
+ name = "renderdoc-sys"
2729
+ version = "1.0.0"
2730
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2731
+ checksum = "216080ab382b992234dda86873c18d4c48358f5cfcb70fd693d7f6f2131b628b"
2732
+
2733
+ [[package]]
2734
+ name = "rodio"
2735
+ version = "0.17.3"
2736
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2737
+ checksum = "3b1bb7b48ee48471f55da122c0044fcc7600cfcc85db88240b89cb832935e611"
2738
+ dependencies = [
2739
+ "cpal",
2740
+ "lewton",
2741
+ ]
2742
+
2743
+ [[package]]
2744
+ name = "ron"
2745
+ version = "0.8.1"
2746
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2747
+ checksum = "b91f7eff05f748767f183df4320a63d6936e9c6107d97c9e6bdd9784f4289c94"
2748
+ dependencies = [
2749
+ "base64 0.21.5",
2750
+ "bitflags 2.4.1",
2751
+ "serde",
2752
+ "serde_derive",
2753
+ ]
2754
+
2755
+ [[package]]
2756
+ name = "rustc-demangle"
2757
+ version = "0.1.23"
2758
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2759
+ checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76"
2760
+
2761
+ [[package]]
2762
+ name = "rustc-hash"
2763
+ version = "1.1.0"
2764
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2765
+ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
2766
+
2767
+ [[package]]
2768
+ name = "ruzstd"
2769
+ version = "0.4.0"
2770
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2771
+ checksum = "ac3ffab8f9715a0d455df4bbb9d21e91135aab3cd3ca187af0cd0c3c3f868fdc"
2772
+ dependencies = [
2773
+ "byteorder",
2774
+ "thiserror-core",
2775
+ "twox-hash",
2776
+ ]
2777
+
2778
+ [[package]]
2779
+ name = "ryu"
2780
+ version = "1.0.15"
2781
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2782
+ checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741"
2783
+
2784
+ [[package]]
2785
+ name = "same-file"
2786
+ version = "1.0.6"
2787
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2788
+ checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
2789
+ dependencies = [
2790
+ "winapi-util",
2791
+ ]
2792
+
2793
+ [[package]]
2794
+ name = "sandbox_bevy"
2795
+ version = "0.1.0"
2796
+ dependencies = [
2797
+ "bevy",
2798
+ "bevy_pixel_camera",
2799
+ "rand",
2800
+ ]
2801
+
2802
+ [[package]]
2803
+ name = "scopeguard"
2804
+ version = "1.2.0"
2805
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2806
+ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
2807
+
2808
+ [[package]]
2809
+ name = "serde"
2810
+ version = "1.0.190"
2811
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2812
+ checksum = "91d3c334ca1ee894a2c6f6ad698fe8c435b76d504b13d436f0685d648d6d96f7"
2813
+ dependencies = [
2814
+ "serde_derive",
2815
+ ]
2816
+
2817
+ [[package]]
2818
+ name = "serde_derive"
2819
+ version = "1.0.190"
2820
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2821
+ checksum = "67c5609f394e5c2bd7fc51efda478004ea80ef42fee983d5c67a65e34f32c0e3"
2822
+ dependencies = [
2823
+ "proc-macro2",
2824
+ "quote",
2825
+ "syn 2.0.38",
2826
+ ]
2827
+
2828
+ [[package]]
2829
+ name = "serde_json"
2830
+ version = "1.0.107"
2831
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2832
+ checksum = "6b420ce6e3d8bd882e9b243c6eed35dbc9a6110c9769e74b584e0d68d1f20c65"
2833
+ dependencies = [
2834
+ "itoa",
2835
+ "ryu",
2836
+ "serde",
2837
+ ]
2838
+
2839
+ [[package]]
2840
+ name = "sharded-slab"
2841
+ version = "0.1.7"
2842
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2843
+ checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6"
2844
+ dependencies = [
2845
+ "lazy_static",
2846
+ ]
2847
+
2848
+ [[package]]
2849
+ name = "shlex"
2850
+ version = "1.2.0"
2851
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2852
+ checksum = "a7cee0529a6d40f580e7a5e6c495c8fbfe21b7b52795ed4bb5e62cdf92bc6380"
2853
+
2854
+ [[package]]
2855
+ name = "simd-adler32"
2856
+ version = "0.3.7"
2857
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2858
+ checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe"
2859
+
2860
+ [[package]]
2861
+ name = "slab"
2862
+ version = "0.4.9"
2863
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2864
+ checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67"
2865
+ dependencies = [
2866
+ "autocfg",
2867
+ ]
2868
+
2869
+ [[package]]
2870
+ name = "slotmap"
2871
+ version = "1.0.6"
2872
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2873
+ checksum = "e1e08e261d0e8f5c43123b7adf3e4ca1690d655377ac93a03b2c9d3e98de1342"
2874
+ dependencies = [
2875
+ "version_check",
2876
+ ]
2877
+
2878
+ [[package]]
2879
+ name = "smallvec"
2880
+ version = "1.11.1"
2881
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2882
+ checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a"
2883
+ dependencies = [
2884
+ "serde",
2885
+ ]
2886
+
2887
+ [[package]]
2888
+ name = "smol_str"
2889
+ version = "0.2.0"
2890
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2891
+ checksum = "74212e6bbe9a4352329b2f68ba3130c15a3f26fe88ff22dbdc6cdd58fa85e99c"
2892
+ dependencies = [
2893
+ "serde",
2894
+ ]
2895
+
2896
+ [[package]]
2897
+ name = "spirv"
2898
+ version = "0.2.0+1.5.4"
2899
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2900
+ checksum = "246bfa38fe3db3f1dfc8ca5a2cdeb7348c78be2112740cc0ec8ef18b6d94f830"
2901
+ dependencies = [
2902
+ "bitflags 1.3.2",
2903
+ "num-traits",
2904
+ ]
2905
+
2906
+ [[package]]
2907
+ name = "static_assertions"
2908
+ version = "1.1.0"
2909
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2910
+ checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
2911
+
2912
+ [[package]]
2913
+ name = "svg_fmt"
2914
+ version = "0.4.1"
2915
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2916
+ checksum = "8fb1df15f412ee2e9dfc1c504260fa695c1c3f10fe9f4a6ee2d2184d7d6450e2"
2917
+
2918
+ [[package]]
2919
+ name = "syn"
2920
+ version = "1.0.109"
2921
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2922
+ checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
2923
+ dependencies = [
2924
+ "proc-macro2",
2925
+ "quote",
2926
+ "unicode-ident",
2927
+ ]
2928
+
2929
+ [[package]]
2930
+ name = "syn"
2931
+ version = "2.0.38"
2932
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2933
+ checksum = "e96b79aaa137db8f61e26363a0c9b47d8b4ec75da28b7d1d614c2303e232408b"
2934
+ dependencies = [
2935
+ "proc-macro2",
2936
+ "quote",
2937
+ "unicode-ident",
2938
+ ]
2939
+
2940
+ [[package]]
2941
+ name = "sysinfo"
2942
+ version = "0.29.10"
2943
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2944
+ checksum = "0a18d114d420ada3a891e6bc8e96a2023402203296a47cdd65083377dad18ba5"
2945
+ dependencies = [
2946
+ "cfg-if",
2947
+ "core-foundation-sys",
2948
+ "libc",
2949
+ "ntapi",
2950
+ "once_cell",
2951
+ "winapi",
2952
+ ]
2953
+
2954
+ [[package]]
2955
+ name = "taffy"
2956
+ version = "0.3.16"
2957
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2958
+ checksum = "c488aa2bf4bb0cafed312e0876b79a591e3cfa47391f842b7198f9a56547561b"
2959
+ dependencies = [
2960
+ "arrayvec",
2961
+ "grid",
2962
+ "num-traits",
2963
+ "slotmap",
2964
+ ]
2965
+
2966
+ [[package]]
2967
+ name = "termcolor"
2968
+ version = "1.3.0"
2969
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2970
+ checksum = "6093bad37da69aab9d123a8091e4be0aa4a03e4d601ec641c327398315f62b64"
2971
+ dependencies = [
2972
+ "winapi-util",
2973
+ ]
2974
+
2975
+ [[package]]
2976
+ name = "thiserror"
2977
+ version = "1.0.50"
2978
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2979
+ checksum = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2"
2980
+ dependencies = [
2981
+ "thiserror-impl",
2982
+ ]
2983
+
2984
+ [[package]]
2985
+ name = "thiserror-core"
2986
+ version = "1.0.38"
2987
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2988
+ checksum = "0d97345f6437bb2004cd58819d8a9ef8e36cdd7661c2abc4bbde0a7c40d9f497"
2989
+ dependencies = [
2990
+ "thiserror-core-impl",
2991
+ ]
2992
+
2993
+ [[package]]
2994
+ name = "thiserror-core-impl"
2995
+ version = "1.0.38"
2996
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2997
+ checksum = "10ac1c5050e43014d16b2f94d0d2ce79e65ffdd8b38d8048f9c8f6a8a6da62ac"
2998
+ dependencies = [
2999
+ "proc-macro2",
3000
+ "quote",
3001
+ "syn 1.0.109",
3002
+ ]
3003
+
3004
+ [[package]]
3005
+ name = "thiserror-impl"
3006
+ version = "1.0.50"
3007
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3008
+ checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8"
3009
+ dependencies = [
3010
+ "proc-macro2",
3011
+ "quote",
3012
+ "syn 2.0.38",
3013
+ ]
3014
+
3015
+ [[package]]
3016
+ name = "thread_local"
3017
+ version = "1.1.7"
3018
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3019
+ checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152"
3020
+ dependencies = [
3021
+ "cfg-if",
3022
+ "once_cell",
3023
+ ]
3024
+
3025
+ [[package]]
3026
+ name = "tinyvec"
3027
+ version = "1.6.0"
3028
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3029
+ checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50"
3030
+ dependencies = [
3031
+ "tinyvec_macros",
3032
+ ]
3033
+
3034
+ [[package]]
3035
+ name = "tinyvec_macros"
3036
+ version = "0.1.1"
3037
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3038
+ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
3039
+
3040
+ [[package]]
3041
+ name = "toml_datetime"
3042
+ version = "0.6.5"
3043
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3044
+ checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1"
3045
+
3046
+ [[package]]
3047
+ name = "toml_edit"
3048
+ version = "0.19.15"
3049
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3050
+ checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421"
3051
+ dependencies = [
3052
+ "indexmap 2.0.2",
3053
+ "toml_datetime",
3054
+ "winnow",
3055
+ ]
3056
+
3057
+ [[package]]
3058
+ name = "tracing"
3059
+ version = "0.1.40"
3060
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3061
+ checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
3062
+ dependencies = [
3063
+ "pin-project-lite",
3064
+ "tracing-attributes",
3065
+ "tracing-core",
3066
+ ]
3067
+
3068
+ [[package]]
3069
+ name = "tracing-attributes"
3070
+ version = "0.1.27"
3071
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3072
+ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
3073
+ dependencies = [
3074
+ "proc-macro2",
3075
+ "quote",
3076
+ "syn 2.0.38",
3077
+ ]
3078
+
3079
+ [[package]]
3080
+ name = "tracing-core"
3081
+ version = "0.1.32"
3082
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3083
+ checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54"
3084
+ dependencies = [
3085
+ "once_cell",
3086
+ "valuable",
3087
+ ]
3088
+
3089
+ [[package]]
3090
+ name = "tracing-log"
3091
+ version = "0.1.4"
3092
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3093
+ checksum = "f751112709b4e791d8ce53e32c4ed2d353565a795ce84da2285393f41557bdf2"
3094
+ dependencies = [
3095
+ "log",
3096
+ "once_cell",
3097
+ "tracing-core",
3098
+ ]
3099
+
3100
+ [[package]]
3101
+ name = "tracing-subscriber"
3102
+ version = "0.3.17"
3103
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3104
+ checksum = "30a651bc37f915e81f087d86e62a18eec5f79550c7faff886f7090b4ea757c77"
3105
+ dependencies = [
3106
+ "matchers",
3107
+ "nu-ansi-term",
3108
+ "once_cell",
3109
+ "regex",
3110
+ "sharded-slab",
3111
+ "smallvec",
3112
+ "thread_local",
3113
+ "tracing",
3114
+ "tracing-core",
3115
+ "tracing-log",
3116
+ ]
3117
+
3118
+ [[package]]
3119
+ name = "tracing-wasm"
3120
+ version = "0.2.1"
3121
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3122
+ checksum = "4575c663a174420fa2d78f4108ff68f65bf2fbb7dd89f33749b6e826b3626e07"
3123
+ dependencies = [
3124
+ "tracing",
3125
+ "tracing-subscriber",
3126
+ "wasm-bindgen",
3127
+ ]
3128
+
3129
+ [[package]]
3130
+ name = "ttf-parser"
3131
+ version = "0.19.2"
3132
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3133
+ checksum = "49d64318d8311fc2668e48b63969f4343e0a85c4a109aa8460d6672e364b8bd1"
3134
+
3135
+ [[package]]
3136
+ name = "twox-hash"
3137
+ version = "1.6.3"
3138
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3139
+ checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675"
3140
+ dependencies = [
3141
+ "cfg-if",
3142
+ "static_assertions",
3143
+ ]
3144
+
3145
+ [[package]]
3146
+ name = "unicode-ident"
3147
+ version = "1.0.12"
3148
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3149
+ checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
3150
+
3151
+ [[package]]
3152
+ name = "unicode-width"
3153
+ version = "0.1.11"
3154
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3155
+ checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85"
3156
+
3157
+ [[package]]
3158
+ name = "unicode-xid"
3159
+ version = "0.2.4"
3160
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3161
+ checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c"
3162
+
3163
+ [[package]]
3164
+ name = "uuid"
3165
+ version = "1.5.0"
3166
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3167
+ checksum = "88ad59a7560b41a70d191093a945f0b87bc1deeda46fb237479708a1d6b6cdfc"
3168
+ dependencies = [
3169
+ "getrandom",
3170
+ "serde",
3171
+ ]
3172
+
3173
+ [[package]]
3174
+ name = "valuable"
3175
+ version = "0.1.0"
3176
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3177
+ checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d"
3178
+
3179
+ [[package]]
3180
+ name = "vec_map"
3181
+ version = "0.8.2"
3182
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3183
+ checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
3184
+
3185
+ [[package]]
3186
+ name = "version_check"
3187
+ version = "0.9.4"
3188
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3189
+ checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
3190
+
3191
+ [[package]]
3192
+ name = "waker-fn"
3193
+ version = "1.1.1"
3194
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3195
+ checksum = "f3c4517f54858c779bbcbf228f4fca63d121bf85fbecb2dc578cdf4a39395690"
3196
+
3197
+ [[package]]
3198
+ name = "walkdir"
3199
+ version = "2.4.0"
3200
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3201
+ checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee"
3202
+ dependencies = [
3203
+ "same-file",
3204
+ "winapi-util",
3205
+ ]
3206
+
3207
+ [[package]]
3208
+ name = "wasi"
3209
+ version = "0.11.0+wasi-snapshot-preview1"
3210
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3211
+ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
3212
+
3213
+ [[package]]
3214
+ name = "wasm-bindgen"
3215
+ version = "0.2.88"
3216
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3217
+ checksum = "7daec296f25a1bae309c0cd5c29c4b260e510e6d813c286b19eaadf409d40fce"
3218
+ dependencies = [
3219
+ "cfg-if",
3220
+ "wasm-bindgen-macro",
3221
+ ]
3222
+
3223
+ [[package]]
3224
+ name = "wasm-bindgen-backend"
3225
+ version = "0.2.88"
3226
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3227
+ checksum = "e397f4664c0e4e428e8313a469aaa58310d302159845980fd23b0f22a847f217"
3228
+ dependencies = [
3229
+ "bumpalo",
3230
+ "log",
3231
+ "once_cell",
3232
+ "proc-macro2",
3233
+ "quote",
3234
+ "syn 2.0.38",
3235
+ "wasm-bindgen-shared",
3236
+ ]
3237
+
3238
+ [[package]]
3239
+ name = "wasm-bindgen-futures"
3240
+ version = "0.4.37"
3241
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3242
+ checksum = "c02dbc21516f9f1f04f187958890d7e6026df8d16540b7ad9492bc34a67cea03"
3243
+ dependencies = [
3244
+ "cfg-if",
3245
+ "js-sys",
3246
+ "wasm-bindgen",
3247
+ "web-sys",
3248
+ ]
3249
+
3250
+ [[package]]
3251
+ name = "wasm-bindgen-macro"
3252
+ version = "0.2.88"
3253
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3254
+ checksum = "5961017b3b08ad5f3fe39f1e79877f8ee7c23c5e5fd5eb80de95abc41f1f16b2"
3255
+ dependencies = [
3256
+ "quote",
3257
+ "wasm-bindgen-macro-support",
3258
+ ]
3259
+
3260
+ [[package]]
3261
+ name = "wasm-bindgen-macro-support"
3262
+ version = "0.2.88"
3263
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3264
+ checksum = "c5353b8dab669f5e10f5bd76df26a9360c748f054f862ff5f3f8aae0c7fb3907"
3265
+ dependencies = [
3266
+ "proc-macro2",
3267
+ "quote",
3268
+ "syn 2.0.38",
3269
+ "wasm-bindgen-backend",
3270
+ "wasm-bindgen-shared",
3271
+ ]
3272
+
3273
+ [[package]]
3274
+ name = "wasm-bindgen-shared"
3275
+ version = "0.2.88"
3276
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3277
+ checksum = "0d046c5d029ba91a1ed14da14dca44b68bf2f124cfbaf741c54151fdb3e0750b"
3278
+
3279
+ [[package]]
3280
+ name = "wayland-scanner"
3281
+ version = "0.29.5"
3282
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3283
+ checksum = "8f4303d8fa22ab852f789e75a967f0a2cdc430a607751c0499bada3e451cbd53"
3284
+ dependencies = [
3285
+ "proc-macro2",
3286
+ "quote",
3287
+ "xml-rs",
3288
+ ]
3289
+
3290
+ [[package]]
3291
+ name = "web-sys"
3292
+ version = "0.3.64"
3293
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3294
+ checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b"
3295
+ dependencies = [
3296
+ "js-sys",
3297
+ "wasm-bindgen",
3298
+ ]
3299
+
3300
+ [[package]]
3301
+ name = "wgpu"
3302
+ version = "0.16.3"
3303
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3304
+ checksum = "480c965c9306872eb6255fa55e4b4953be55a8b64d57e61d7ff840d3dcc051cd"
3305
+ dependencies = [
3306
+ "arrayvec",
3307
+ "cfg-if",
3308
+ "js-sys",
3309
+ "log",
3310
+ "naga",
3311
+ "parking_lot",
3312
+ "profiling",
3313
+ "raw-window-handle",
3314
+ "smallvec",
3315
+ "static_assertions",
3316
+ "wasm-bindgen",
3317
+ "wasm-bindgen-futures",
3318
+ "web-sys",
3319
+ "wgpu-core",
3320
+ "wgpu-hal",
3321
+ "wgpu-types",
3322
+ ]
3323
+
3324
+ [[package]]
3325
+ name = "wgpu-core"
3326
+ version = "0.16.1"
3327
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3328
+ checksum = "8f478237b4bf0d5b70a39898a66fa67ca3a007d79f2520485b8b0c3dfc46f8c2"
3329
+ dependencies = [
3330
+ "arrayvec",
3331
+ "bit-vec",
3332
+ "bitflags 2.4.1",
3333
+ "codespan-reporting",
3334
+ "log",
3335
+ "naga",
3336
+ "parking_lot",
3337
+ "profiling",
3338
+ "raw-window-handle",
3339
+ "rustc-hash",
3340
+ "smallvec",
3341
+ "thiserror",
3342
+ "web-sys",
3343
+ "wgpu-hal",
3344
+ "wgpu-types",
3345
+ ]
3346
+
3347
+ [[package]]
3348
+ name = "wgpu-hal"
3349
+ version = "0.16.2"
3350
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3351
+ checksum = "1ecb3258078e936deee14fd4e0febe1cfe9bbb5ffef165cb60218d2ee5eb4448"
3352
+ dependencies = [
3353
+ "android_system_properties",
3354
+ "arrayvec",
3355
+ "ash",
3356
+ "bit-set",
3357
+ "bitflags 2.4.1",
3358
+ "block",
3359
+ "core-graphics-types",
3360
+ "d3d12",
3361
+ "foreign-types",
3362
+ "glow",
3363
+ "gpu-alloc",
3364
+ "gpu-allocator",
3365
+ "gpu-descriptor",
3366
+ "hassle-rs",
3367
+ "js-sys",
3368
+ "khronos-egl",
3369
+ "libc",
3370
+ "libloading 0.8.1",
3371
+ "log",
3372
+ "metal",
3373
+ "naga",
3374
+ "objc",
3375
+ "parking_lot",
3376
+ "profiling",
3377
+ "range-alloc",
3378
+ "raw-window-handle",
3379
+ "renderdoc-sys",
3380
+ "rustc-hash",
3381
+ "smallvec",
3382
+ "thiserror",
3383
+ "wasm-bindgen",
3384
+ "web-sys",
3385
+ "wgpu-types",
3386
+ "winapi",
3387
+ ]
3388
+
3389
+ [[package]]
3390
+ name = "wgpu-types"
3391
+ version = "0.16.1"
3392
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3393
+ checksum = "d0c153280bb108c2979eb5c7391cb18c56642dd3c072e55f52065e13e2a1252a"
3394
+ dependencies = [
3395
+ "bitflags 2.4.1",
3396
+ "js-sys",
3397
+ "web-sys",
3398
+ ]
3399
+
3400
+ [[package]]
3401
+ name = "widestring"
3402
+ version = "1.0.2"
3403
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3404
+ checksum = "653f141f39ec16bba3c5abe400a0c60da7468261cc2cbf36805022876bc721a8"
3405
+
3406
+ [[package]]
3407
+ name = "winapi"
3408
+ version = "0.3.9"
3409
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3410
+ checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
3411
+ dependencies = [
3412
+ "winapi-i686-pc-windows-gnu",
3413
+ "winapi-x86_64-pc-windows-gnu",
3414
+ ]
3415
+
3416
+ [[package]]
3417
+ name = "winapi-i686-pc-windows-gnu"
3418
+ version = "0.4.0"
3419
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3420
+ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
3421
+
3422
+ [[package]]
3423
+ name = "winapi-util"
3424
+ version = "0.1.6"
3425
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3426
+ checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596"
3427
+ dependencies = [
3428
+ "winapi",
3429
+ ]
3430
+
3431
+ [[package]]
3432
+ name = "winapi-x86_64-pc-windows-gnu"
3433
+ version = "0.4.0"
3434
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3435
+ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
3436
+
3437
+ [[package]]
3438
+ name = "windows"
3439
+ version = "0.44.0"
3440
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3441
+ checksum = "9e745dab35a0c4c77aa3ce42d595e13d2003d6902d6b08c9ef5fc326d08da12b"
3442
+ dependencies = [
3443
+ "windows-targets 0.42.2",
3444
+ ]
3445
+
3446
+ [[package]]
3447
+ name = "windows"
3448
+ version = "0.46.0"
3449
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3450
+ checksum = "cdacb41e6a96a052c6cb63a144f24900236121c6f63f4f8219fef5977ecb0c25"
3451
+ dependencies = [
3452
+ "windows-targets 0.42.2",
3453
+ ]
3454
+
3455
+ [[package]]
3456
+ name = "windows"
3457
+ version = "0.48.0"
3458
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3459
+ checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f"
3460
+ dependencies = [
3461
+ "windows-implement",
3462
+ "windows-interface",
3463
+ "windows-targets 0.48.5",
3464
+ ]
3465
+
3466
+ [[package]]
3467
+ name = "windows"
3468
+ version = "0.51.1"
3469
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3470
+ checksum = "ca229916c5ee38c2f2bc1e9d8f04df975b4bd93f9955dc69fabb5d91270045c9"
3471
+ dependencies = [
3472
+ "windows-core",
3473
+ "windows-targets 0.48.5",
3474
+ ]
3475
+
3476
+ [[package]]
3477
+ name = "windows-core"
3478
+ version = "0.51.1"
3479
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3480
+ checksum = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64"
3481
+ dependencies = [
3482
+ "windows-targets 0.48.5",
3483
+ ]
3484
+
3485
+ [[package]]
3486
+ name = "windows-implement"
3487
+ version = "0.48.0"
3488
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3489
+ checksum = "5e2ee588991b9e7e6c8338edf3333fbe4da35dc72092643958ebb43f0ab2c49c"
3490
+ dependencies = [
3491
+ "proc-macro2",
3492
+ "quote",
3493
+ "syn 1.0.109",
3494
+ ]
3495
+
3496
+ [[package]]
3497
+ name = "windows-interface"
3498
+ version = "0.48.0"
3499
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3500
+ checksum = "e6fb8df20c9bcaa8ad6ab513f7b40104840c8867d5751126e4df3b08388d0cc7"
3501
+ dependencies = [
3502
+ "proc-macro2",
3503
+ "quote",
3504
+ "syn 1.0.109",
3505
+ ]
3506
+
3507
+ [[package]]
3508
+ name = "windows-sys"
3509
+ version = "0.45.0"
3510
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3511
+ checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0"
3512
+ dependencies = [
3513
+ "windows-targets 0.42.2",
3514
+ ]
3515
+
3516
+ [[package]]
3517
+ name = "windows-sys"
3518
+ version = "0.48.0"
3519
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3520
+ checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
3521
+ dependencies = [
3522
+ "windows-targets 0.48.5",
3523
+ ]
3524
+
3525
+ [[package]]
3526
+ name = "windows-targets"
3527
+ version = "0.42.2"
3528
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3529
+ checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071"
3530
+ dependencies = [
3531
+ "windows_aarch64_gnullvm 0.42.2",
3532
+ "windows_aarch64_msvc 0.42.2",
3533
+ "windows_i686_gnu 0.42.2",
3534
+ "windows_i686_msvc 0.42.2",
3535
+ "windows_x86_64_gnu 0.42.2",
3536
+ "windows_x86_64_gnullvm 0.42.2",
3537
+ "windows_x86_64_msvc 0.42.2",
3538
+ ]
3539
+
3540
+ [[package]]
3541
+ name = "windows-targets"
3542
+ version = "0.48.5"
3543
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3544
+ checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
3545
+ dependencies = [
3546
+ "windows_aarch64_gnullvm 0.48.5",
3547
+ "windows_aarch64_msvc 0.48.5",
3548
+ "windows_i686_gnu 0.48.5",
3549
+ "windows_i686_msvc 0.48.5",
3550
+ "windows_x86_64_gnu 0.48.5",
3551
+ "windows_x86_64_gnullvm 0.48.5",
3552
+ "windows_x86_64_msvc 0.48.5",
3553
+ ]
3554
+
3555
+ [[package]]
3556
+ name = "windows_aarch64_gnullvm"
3557
+ version = "0.42.2"
3558
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3559
+ checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8"
3560
+
3561
+ [[package]]
3562
+ name = "windows_aarch64_gnullvm"
3563
+ version = "0.48.5"
3564
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3565
+ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
3566
+
3567
+ [[package]]
3568
+ name = "windows_aarch64_msvc"
3569
+ version = "0.42.2"
3570
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3571
+ checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43"
3572
+
3573
+ [[package]]
3574
+ name = "windows_aarch64_msvc"
3575
+ version = "0.48.5"
3576
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3577
+ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
3578
+
3579
+ [[package]]
3580
+ name = "windows_i686_gnu"
3581
+ version = "0.42.2"
3582
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3583
+ checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f"
3584
+
3585
+ [[package]]
3586
+ name = "windows_i686_gnu"
3587
+ version = "0.48.5"
3588
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3589
+ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
3590
+
3591
+ [[package]]
3592
+ name = "windows_i686_msvc"
3593
+ version = "0.42.2"
3594
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3595
+ checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060"
3596
+
3597
+ [[package]]
3598
+ name = "windows_i686_msvc"
3599
+ version = "0.48.5"
3600
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3601
+ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
3602
+
3603
+ [[package]]
3604
+ name = "windows_x86_64_gnu"
3605
+ version = "0.42.2"
3606
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3607
+ checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36"
3608
+
3609
+ [[package]]
3610
+ name = "windows_x86_64_gnu"
3611
+ version = "0.48.5"
3612
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3613
+ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
3614
+
3615
+ [[package]]
3616
+ name = "windows_x86_64_gnullvm"
3617
+ version = "0.42.2"
3618
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3619
+ checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3"
3620
+
3621
+ [[package]]
3622
+ name = "windows_x86_64_gnullvm"
3623
+ version = "0.48.5"
3624
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3625
+ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
3626
+
3627
+ [[package]]
3628
+ name = "windows_x86_64_msvc"
3629
+ version = "0.42.2"
3630
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3631
+ checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0"
3632
+
3633
+ [[package]]
3634
+ name = "windows_x86_64_msvc"
3635
+ version = "0.48.5"
3636
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3637
+ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
3638
+
3639
+ [[package]]
3640
+ name = "winit"
3641
+ version = "0.28.7"
3642
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3643
+ checksum = "9596d90b45384f5281384ab204224876e8e8bf7d58366d9b795ad99aa9894b94"
3644
+ dependencies = [
3645
+ "android-activity",
3646
+ "bitflags 1.3.2",
3647
+ "cfg_aliases",
3648
+ "core-foundation",
3649
+ "core-graphics",
3650
+ "dispatch",
3651
+ "instant",
3652
+ "libc",
3653
+ "log",
3654
+ "mio",
3655
+ "ndk",
3656
+ "objc2",
3657
+ "once_cell",
3658
+ "orbclient",
3659
+ "percent-encoding",
3660
+ "raw-window-handle",
3661
+ "redox_syscall 0.3.5",
3662
+ "wasm-bindgen",
3663
+ "wayland-scanner",
3664
+ "web-sys",
3665
+ "windows-sys 0.45.0",
3666
+ "x11-dl",
3667
+ ]
3668
+
3669
+ [[package]]
3670
+ name = "winnow"
3671
+ version = "0.5.17"
3672
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3673
+ checksum = "a3b801d0e0a6726477cc207f60162da452f3a95adb368399bef20a946e06f65c"
3674
+ dependencies = [
3675
+ "memchr",
3676
+ ]
3677
+
3678
+ [[package]]
3679
+ name = "x11-dl"
3680
+ version = "2.21.0"
3681
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3682
+ checksum = "38735924fedd5314a6e548792904ed8c6de6636285cb9fec04d5b1db85c1516f"
3683
+ dependencies = [
3684
+ "libc",
3685
+ "once_cell",
3686
+ "pkg-config",
3687
+ ]
3688
+
3689
+ [[package]]
3690
+ name = "xi-unicode"
3691
+ version = "0.3.0"
3692
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3693
+ checksum = "a67300977d3dc3f8034dae89778f502b6ba20b269527b3223ba59c0cf393bb8a"
3694
+
3695
+ [[package]]
3696
+ name = "xml-rs"
3697
+ version = "0.8.19"
3698
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3699
+ checksum = "0fcb9cbac069e033553e8bb871be2fbdffcab578eb25bd0f7c508cedc6dcd75a"
3700
+
3701
+ [[package]]
3702
+ name = "zerocopy"
3703
+ version = "0.7.18"
3704
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3705
+ checksum = "ede7d7c7970ca2215b8c1ccf4d4f354c4733201dfaaba72d44ae5b37472e4901"
3706
+ dependencies = [
3707
+ "zerocopy-derive",
3708
+ ]
3709
+
3710
+ [[package]]
3711
+ name = "zerocopy-derive"
3712
+ version = "0.7.18"
3713
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3714
+ checksum = "4b27b1bb92570f989aac0ab7e9cbfbacdd65973f7ee920d9f0e71ebac878fd0b"
3715
+ dependencies = [
3716
+ "proc-macro2",
3717
+ "quote",
3718
+ "syn 2.0.38",
3719
+ ]
rust/Cargo.toml ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [package]
2
+ name = "sandbox_bevy"
3
+ version = "0.1.0"
4
+ edition = "2021"
5
+
6
+ # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
7
+
8
+ [dependencies]
9
+ bevy = "0.11.0"
10
+ rand = "0.8"
11
+ bevy_pixel_camera = "0.5"
rust/LICENSE.md ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ MIT License
2
+
3
+ Copyright (c) 2023 Hugo Duprez
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
rust/README.MD ADDED
@@ -0,0 +1,149 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <p align="center"><img src="screenshots/thumbnail.png"/></p>
2
+
3
+ # Tiny Sandbox game written in Rust (Bevy)
4
+
5
+ A little sandbox simulation done without physics, just for fun and to learn a bit of Rust using [Bevy](https://bevyengine.org/).
6
+
7
+ ## Run it locally
8
+
9
+ - Clone the project
10
+
11
+ ```bash
12
+ git clone https://github.com/Hugo-Dz/rust-sandbox.git
13
+ cd rust-sandbox
14
+ ```
15
+
16
+ - Make sure you have Rust [installed](https://www.rust-lang.org/tools/install) and run the following command
17
+
18
+ ```bash
19
+ cargo run
20
+ ```
21
+
22
+ - That's it! 🎮
23
+
24
+ ## Build for the web
25
+
26
+ - Install wasm32-unknown-unknown to compile to web assembly
27
+
28
+ ```bash
29
+ rustup target add wasm32-unknown-unknown
30
+ ```
31
+
32
+ - Install the `wasm-bindgen-cli` tool
33
+
34
+ ```bash
35
+ cargo install -f wasm-bindgen-cli
36
+ ```
37
+
38
+ - Build the project
39
+
40
+ ```bash
41
+ cargo build --release --target wasm32-unknown-unknown
42
+ wasm-bindgen --out-dir ./out/ --target web ./target/wasm32-unknown-unknown/release/sandbox_bevy.wasm
43
+ ```
44
+
45
+ You should now have a fresh /out folder at the root of your project containing all you need to run your game in a web browser. You can now serve the game with any web server of your choice. Just call the `init()` function from the generated `sandbox_bevy.js` file.
46
+
47
+ ```html
48
+ <script type="module">
49
+ import init from './sandbox_bevy.js';
50
+ init();
51
+ </script>
52
+ ```
53
+
54
+ This will automatically load the wasm module and initialize the game in a new canvas element.
55
+
56
+ If you want to use your own HTML canvas element, you can specify it in the `Window` Bevy plugin:
57
+
58
+ ```rust
59
+ fn main() {
60
+ App::new()
61
+ .add_plugins((
62
+ DefaultPlugins
63
+ .set(WindowPlugin {
64
+ primary_window: Some(Window {
65
+ // Here!
66
+ canvas: Some("#bevy-canvas".to_string()),
67
+ ..default()
68
+ }),
69
+ })
70
+ .build(),
71
+ ))
72
+ .run();
73
+ }
74
+ ```
75
+
76
+ - Example with SvelteKit
77
+
78
+ ```html
79
+ <script lang="ts">
80
+
81
+ // Wasm module
82
+ import init from "$lib/pkg/sandbox_bevy";
83
+
84
+ // Svelte
85
+ import { onMount } from "svelte";
86
+
87
+ onMount(() => init() )
88
+
89
+ </script>
90
+ ```
91
+
92
+ ## Is Bevy a good fit for game development?
93
+
94
+ Bevy [ECS](https://bevy-cheatbook.github.io/programming/intro-data.html) design was very pleasing to work with, it completely changes the way we can implement game logic compared to the Object-oriented paradigm.
95
+
96
+ To be short, imagine your game as a database where each row may or may not have certain components like Enemy, Health: int, Spell: enum... or any tiny piece of data or just empty markers (like Enemy).
97
+
98
+ Representing things this way gives you flexibility. For example, you could create a Health component for your game.
99
+ You could then have many entities representing different things in your game, such as the player, NPCs, or monsters, all of which can have a Health value (as well as other relevant components).
100
+
101
+ <p align="center"><img src="screenshots/data.png"/></p>
102
+
103
+ Then you can create single pieces of logic (aka Systems) that iterates over all entities with the components matching your query and updates their values. Just like you query a database.
104
+
105
+ ```rust
106
+ #[derive(Component)]
107
+ struct Xp(u32);
108
+
109
+ #[derive(Component)]
110
+ struct Health {
111
+ current: u32,
112
+ max: u32,
113
+ }
114
+
115
+ fn level_up(
116
+ // operate on anything that has Xp and Health
117
+ mut query: Query<(&mut Xp, &mut Health)>,
118
+ ) {
119
+ for (mut xp, mut health) in query.iter_mut() {
120
+ if xp.0 > 1000 {
121
+ xp.0 -= 1000;
122
+ health.max += 25;
123
+ health.current = health.max;
124
+ }
125
+ }
126
+ }
127
+ ```
128
+
129
+ That said, Bevy is more a framework than a game engine, it's still very early and doesn't provide as many features out of the box as Godot for instance. Especially if you need to do fine level design, the absence of an editor can be annoying.
130
+ After playing with it for a while, here are my pros and cons about Bevy:
131
+
132
+ **Pros:**
133
+
134
+ ✅ The ECS design is very powerful and surprisingly satisfying to work with, especially for simulation or data driven games.
135
+ ✅ Written in the same language as your game.
136
+ ✅ Pretty simple and type-safe! (If you are done to learn a bit of Rust)
137
+ ✅ Customizable and extensible. If you want to build something very specific without reinveting the wheel, it's clearly a good choice.
138
+
139
+
140
+ **Cons:**
141
+
142
+ ❌ No editor, everything sits in your IDE.
143
+ ❌ Lack of common features like particles.
144
+ ❌ Not really beginner friendly, you need to learn a bit of Rust.
145
+ ❌ Not as mature as other game engines, which means less examples and tutorials. That said, the community is very active and helpful on the [Discord](https://discord.gg/bevy)!
146
+
147
+ ## License
148
+
149
+ MIT License
rust/assets/blood_1.png ADDED
rust/assets/blood_2.png ADDED
rust/assets/bone_1.png ADDED
rust/assets/bone_2.png ADDED
rust/assets/bone_3.png ADDED
rust/out/sandbox_bevy.d.ts ADDED
@@ -0,0 +1,88 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+
4
+ export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
5
+
6
+ export interface InitOutput {
7
+ readonly memory: WebAssembly.Memory;
8
+ readonly main: (a: number, b: number) => number;
9
+ readonly wgpu_compute_pass_set_pipeline: (a: number, b: number) => void;
10
+ readonly wgpu_compute_pass_set_bind_group: (a: number, b: number, c: number, d: number, e: number) => void;
11
+ readonly wgpu_compute_pass_set_push_constant: (a: number, b: number, c: number, d: number) => void;
12
+ readonly wgpu_compute_pass_insert_debug_marker: (a: number, b: number, c: number) => void;
13
+ readonly wgpu_compute_pass_push_debug_group: (a: number, b: number, c: number) => void;
14
+ readonly wgpu_compute_pass_pop_debug_group: (a: number) => void;
15
+ readonly wgpu_compute_pass_write_timestamp: (a: number, b: number, c: number) => void;
16
+ readonly wgpu_compute_pass_begin_pipeline_statistics_query: (a: number, b: number, c: number) => void;
17
+ readonly wgpu_compute_pass_end_pipeline_statistics_query: (a: number) => void;
18
+ readonly wgpu_compute_pass_dispatch_workgroups: (a: number, b: number, c: number, d: number) => void;
19
+ readonly wgpu_compute_pass_dispatch_workgroups_indirect: (a: number, b: number, c: number) => void;
20
+ readonly wgpu_render_bundle_set_pipeline: (a: number, b: number) => void;
21
+ readonly wgpu_render_bundle_set_bind_group: (a: number, b: number, c: number, d: number, e: number) => void;
22
+ readonly wgpu_render_bundle_set_vertex_buffer: (a: number, b: number, c: number, d: number, e: number) => void;
23
+ readonly wgpu_render_bundle_set_push_constants: (a: number, b: number, c: number, d: number, e: number) => void;
24
+ readonly wgpu_render_bundle_draw: (a: number, b: number, c: number, d: number, e: number) => void;
25
+ readonly wgpu_render_bundle_draw_indexed: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
26
+ readonly wgpu_render_bundle_draw_indirect: (a: number, b: number, c: number) => void;
27
+ readonly wgpu_render_bundle_draw_indexed_indirect: (a: number, b: number, c: number) => void;
28
+ readonly wgpu_render_pass_set_pipeline: (a: number, b: number) => void;
29
+ readonly wgpu_render_pass_set_bind_group: (a: number, b: number, c: number, d: number, e: number) => void;
30
+ readonly wgpu_render_pass_set_vertex_buffer: (a: number, b: number, c: number, d: number, e: number) => void;
31
+ readonly wgpu_render_pass_set_push_constants: (a: number, b: number, c: number, d: number, e: number) => void;
32
+ readonly wgpu_render_pass_draw: (a: number, b: number, c: number, d: number, e: number) => void;
33
+ readonly wgpu_render_pass_draw_indexed: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
34
+ readonly wgpu_render_pass_draw_indirect: (a: number, b: number, c: number) => void;
35
+ readonly wgpu_render_pass_draw_indexed_indirect: (a: number, b: number, c: number) => void;
36
+ readonly wgpu_render_pass_multi_draw_indirect: (a: number, b: number, c: number, d: number) => void;
37
+ readonly wgpu_render_pass_multi_draw_indexed_indirect: (a: number, b: number, c: number, d: number) => void;
38
+ readonly wgpu_render_pass_multi_draw_indirect_count: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
39
+ readonly wgpu_render_pass_multi_draw_indexed_indirect_count: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
40
+ readonly wgpu_render_pass_set_blend_constant: (a: number, b: number) => void;
41
+ readonly wgpu_render_pass_set_scissor_rect: (a: number, b: number, c: number, d: number, e: number) => void;
42
+ readonly wgpu_render_pass_set_viewport: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => void;
43
+ readonly wgpu_render_pass_set_stencil_reference: (a: number, b: number) => void;
44
+ readonly wgpu_render_pass_insert_debug_marker: (a: number, b: number, c: number) => void;
45
+ readonly wgpu_render_pass_push_debug_group: (a: number, b: number, c: number) => void;
46
+ readonly wgpu_render_pass_pop_debug_group: (a: number) => void;
47
+ readonly wgpu_render_pass_write_timestamp: (a: number, b: number, c: number) => void;
48
+ readonly wgpu_render_pass_begin_pipeline_statistics_query: (a: number, b: number, c: number) => void;
49
+ readonly wgpu_render_pass_end_pipeline_statistics_query: (a: number) => void;
50
+ readonly wgpu_render_pass_execute_bundles: (a: number, b: number, c: number) => void;
51
+ readonly wgpu_render_bundle_set_index_buffer: (a: number, b: number, c: number, d: number, e: number) => void;
52
+ readonly wgpu_render_bundle_pop_debug_group: (a: number) => void;
53
+ readonly wgpu_render_bundle_insert_debug_marker: (a: number, b: number) => void;
54
+ readonly wgpu_render_bundle_push_debug_group: (a: number, b: number) => void;
55
+ readonly wgpu_render_pass_set_index_buffer: (a: number, b: number, c: number, d: number, e: number) => void;
56
+ readonly __wbindgen_malloc: (a: number, b: number) => number;
57
+ readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
58
+ readonly __wbindgen_export_2: WebAssembly.Table;
59
+ readonly _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h087aa75c2ef422bf: (a: number, b: number, c: number) => void;
60
+ readonly _dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h7b2cdb1004d79a48: (a: number, b: number) => void;
61
+ readonly _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__haccacba5b48e204b: (a: number, b: number, c: number) => void;
62
+ readonly _dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hb967268334a36223: (a: number, b: number) => void;
63
+ readonly _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h25604c97ab01cac0: (a: number, b: number, c: number) => void;
64
+ readonly __wbindgen_free: (a: number, b: number, c: number) => void;
65
+ readonly __wbindgen_exn_store: (a: number) => void;
66
+ readonly __wbindgen_start: () => void;
67
+ }
68
+
69
+ export type SyncInitInput = BufferSource | WebAssembly.Module;
70
+ /**
71
+ * Instantiates the given `module`, which can either be bytes or
72
+ * a precompiled `WebAssembly.Module`.
73
+ *
74
+ * @param {SyncInitInput} module
75
+ *
76
+ * @returns {InitOutput}
77
+ */
78
+ export function initSync(module: SyncInitInput): InitOutput;
79
+
80
+ /**
81
+ * If `module_or_path` is {RequestInfo} or {URL}, makes a request and
82
+ * for everything else, calls `WebAssembly.instantiate` directly.
83
+ *
84
+ * @param {InitInput | Promise<InitInput>} module_or_path
85
+ *
86
+ * @returns {Promise<InitOutput>}
87
+ */
88
+ export default function __wbg_init (module_or_path?: InitInput | Promise<InitInput>): Promise<InitOutput>;
rust/out/sandbox_bevy.js ADDED
@@ -0,0 +1,1918 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ const lAudioContext = (typeof AudioContext !== 'undefined' ? AudioContext : (typeof webkitAudioContext !== 'undefined' ? webkitAudioContext : undefined));
2
+ let wasm;
3
+
4
+ const heap = new Array(128).fill(undefined);
5
+
6
+ heap.push(undefined, null, true, false);
7
+
8
+ function getObject(idx) { return heap[idx]; }
9
+
10
+ let heap_next = heap.length;
11
+
12
+ function dropObject(idx) {
13
+ if (idx < 132) return;
14
+ heap[idx] = heap_next;
15
+ heap_next = idx;
16
+ }
17
+
18
+ function takeObject(idx) {
19
+ const ret = getObject(idx);
20
+ dropObject(idx);
21
+ return ret;
22
+ }
23
+
24
+ function addHeapObject(obj) {
25
+ if (heap_next === heap.length) heap.push(heap.length + 1);
26
+ const idx = heap_next;
27
+ heap_next = heap[idx];
28
+
29
+ heap[idx] = obj;
30
+ return idx;
31
+ }
32
+
33
+ const cachedTextDecoder = (typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }) : { decode: () => { throw Error('TextDecoder not available') } } );
34
+
35
+ if (typeof TextDecoder !== 'undefined') { cachedTextDecoder.decode(); };
36
+
37
+ let cachedUint8Memory0 = null;
38
+
39
+ function getUint8Memory0() {
40
+ if (cachedUint8Memory0 === null || cachedUint8Memory0.byteLength === 0) {
41
+ cachedUint8Memory0 = new Uint8Array(wasm.memory.buffer);
42
+ }
43
+ return cachedUint8Memory0;
44
+ }
45
+
46
+ function getStringFromWasm0(ptr, len) {
47
+ ptr = ptr >>> 0;
48
+ return cachedTextDecoder.decode(getUint8Memory0().subarray(ptr, ptr + len));
49
+ }
50
+
51
+ function isLikeNone(x) {
52
+ return x === undefined || x === null;
53
+ }
54
+
55
+ let cachedFloat64Memory0 = null;
56
+
57
+ function getFloat64Memory0() {
58
+ if (cachedFloat64Memory0 === null || cachedFloat64Memory0.byteLength === 0) {
59
+ cachedFloat64Memory0 = new Float64Array(wasm.memory.buffer);
60
+ }
61
+ return cachedFloat64Memory0;
62
+ }
63
+
64
+ let cachedInt32Memory0 = null;
65
+
66
+ function getInt32Memory0() {
67
+ if (cachedInt32Memory0 === null || cachedInt32Memory0.byteLength === 0) {
68
+ cachedInt32Memory0 = new Int32Array(wasm.memory.buffer);
69
+ }
70
+ return cachedInt32Memory0;
71
+ }
72
+
73
+ let WASM_VECTOR_LEN = 0;
74
+
75
+ const cachedTextEncoder = (typeof TextEncoder !== 'undefined' ? new TextEncoder('utf-8') : { encode: () => { throw Error('TextEncoder not available') } } );
76
+
77
+ const encodeString = (typeof cachedTextEncoder.encodeInto === 'function'
78
+ ? function (arg, view) {
79
+ return cachedTextEncoder.encodeInto(arg, view);
80
+ }
81
+ : function (arg, view) {
82
+ const buf = cachedTextEncoder.encode(arg);
83
+ view.set(buf);
84
+ return {
85
+ read: arg.length,
86
+ written: buf.length
87
+ };
88
+ });
89
+
90
+ function passStringToWasm0(arg, malloc, realloc) {
91
+
92
+ if (realloc === undefined) {
93
+ const buf = cachedTextEncoder.encode(arg);
94
+ const ptr = malloc(buf.length, 1) >>> 0;
95
+ getUint8Memory0().subarray(ptr, ptr + buf.length).set(buf);
96
+ WASM_VECTOR_LEN = buf.length;
97
+ return ptr;
98
+ }
99
+
100
+ let len = arg.length;
101
+ let ptr = malloc(len, 1) >>> 0;
102
+
103
+ const mem = getUint8Memory0();
104
+
105
+ let offset = 0;
106
+
107
+ for (; offset < len; offset++) {
108
+ const code = arg.charCodeAt(offset);
109
+ if (code > 0x7F) break;
110
+ mem[ptr + offset] = code;
111
+ }
112
+
113
+ if (offset !== len) {
114
+ if (offset !== 0) {
115
+ arg = arg.slice(offset);
116
+ }
117
+ ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;
118
+ const view = getUint8Memory0().subarray(ptr + offset, ptr + len);
119
+ const ret = encodeString(arg, view);
120
+
121
+ offset += ret.written;
122
+ }
123
+
124
+ WASM_VECTOR_LEN = offset;
125
+ return ptr;
126
+ }
127
+
128
+ function debugString(val) {
129
+ // primitive types
130
+ const type = typeof val;
131
+ if (type == 'number' || type == 'boolean' || val == null) {
132
+ return `${val}`;
133
+ }
134
+ if (type == 'string') {
135
+ return `"${val}"`;
136
+ }
137
+ if (type == 'symbol') {
138
+ const description = val.description;
139
+ if (description == null) {
140
+ return 'Symbol';
141
+ } else {
142
+ return `Symbol(${description})`;
143
+ }
144
+ }
145
+ if (type == 'function') {
146
+ const name = val.name;
147
+ if (typeof name == 'string' && name.length > 0) {
148
+ return `Function(${name})`;
149
+ } else {
150
+ return 'Function';
151
+ }
152
+ }
153
+ // objects
154
+ if (Array.isArray(val)) {
155
+ const length = val.length;
156
+ let debug = '[';
157
+ if (length > 0) {
158
+ debug += debugString(val[0]);
159
+ }
160
+ for(let i = 1; i < length; i++) {
161
+ debug += ', ' + debugString(val[i]);
162
+ }
163
+ debug += ']';
164
+ return debug;
165
+ }
166
+ // Test for built-in
167
+ const builtInMatches = /\[object ([^\]]+)\]/.exec(toString.call(val));
168
+ let className;
169
+ if (builtInMatches.length > 1) {
170
+ className = builtInMatches[1];
171
+ } else {
172
+ // Failed to match the standard '[object ClassName]'
173
+ return toString.call(val);
174
+ }
175
+ if (className == 'Object') {
176
+ // we're a user defined class or Object
177
+ // JSON.stringify avoids problems with cycles, and is generally much
178
+ // easier than looping through ownProperties of `val`.
179
+ try {
180
+ return 'Object(' + JSON.stringify(val) + ')';
181
+ } catch (_) {
182
+ return 'Object';
183
+ }
184
+ }
185
+ // errors
186
+ if (val instanceof Error) {
187
+ return `${val.name}: ${val.message}\n${val.stack}`;
188
+ }
189
+ // TODO we could test for more things here, like `Set`s and `Map`s.
190
+ return className;
191
+ }
192
+
193
+ function makeMutClosure(arg0, arg1, dtor, f) {
194
+ const state = { a: arg0, b: arg1, cnt: 1, dtor };
195
+ const real = (...args) => {
196
+ // First up with a closure we increment the internal reference
197
+ // count. This ensures that the Rust closure environment won't
198
+ // be deallocated while we're invoking it.
199
+ state.cnt++;
200
+ const a = state.a;
201
+ state.a = 0;
202
+ try {
203
+ return f(a, state.b, ...args);
204
+ } finally {
205
+ if (--state.cnt === 0) {
206
+ wasm.__wbindgen_export_2.get(state.dtor)(a, state.b);
207
+
208
+ } else {
209
+ state.a = a;
210
+ }
211
+ }
212
+ };
213
+ real.original = state;
214
+
215
+ return real;
216
+ }
217
+ function __wbg_adapter_34(arg0, arg1, arg2) {
218
+ wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h087aa75c2ef422bf(arg0, arg1, addHeapObject(arg2));
219
+ }
220
+
221
+ function __wbg_adapter_47(arg0, arg1) {
222
+ wasm._dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h7b2cdb1004d79a48(arg0, arg1);
223
+ }
224
+
225
+ function __wbg_adapter_54(arg0, arg1, arg2) {
226
+ wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__haccacba5b48e204b(arg0, arg1, addHeapObject(arg2));
227
+ }
228
+
229
+ function __wbg_adapter_57(arg0, arg1) {
230
+ wasm._dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hb967268334a36223(arg0, arg1);
231
+ }
232
+
233
+ function __wbg_adapter_60(arg0, arg1, arg2) {
234
+ wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h25604c97ab01cac0(arg0, arg1, addHeapObject(arg2));
235
+ }
236
+
237
+ function handleError(f, args) {
238
+ try {
239
+ return f.apply(this, args);
240
+ } catch (e) {
241
+ wasm.__wbindgen_exn_store(addHeapObject(e));
242
+ }
243
+ }
244
+
245
+ let cachedFloat32Memory0 = null;
246
+
247
+ function getFloat32Memory0() {
248
+ if (cachedFloat32Memory0 === null || cachedFloat32Memory0.byteLength === 0) {
249
+ cachedFloat32Memory0 = new Float32Array(wasm.memory.buffer);
250
+ }
251
+ return cachedFloat32Memory0;
252
+ }
253
+
254
+ function getArrayF32FromWasm0(ptr, len) {
255
+ ptr = ptr >>> 0;
256
+ return getFloat32Memory0().subarray(ptr / 4, ptr / 4 + len);
257
+ }
258
+
259
+ function getArrayI32FromWasm0(ptr, len) {
260
+ ptr = ptr >>> 0;
261
+ return getInt32Memory0().subarray(ptr / 4, ptr / 4 + len);
262
+ }
263
+
264
+ let cachedUint32Memory0 = null;
265
+
266
+ function getUint32Memory0() {
267
+ if (cachedUint32Memory0 === null || cachedUint32Memory0.byteLength === 0) {
268
+ cachedUint32Memory0 = new Uint32Array(wasm.memory.buffer);
269
+ }
270
+ return cachedUint32Memory0;
271
+ }
272
+
273
+ function getArrayU32FromWasm0(ptr, len) {
274
+ ptr = ptr >>> 0;
275
+ return getUint32Memory0().subarray(ptr / 4, ptr / 4 + len);
276
+ }
277
+
278
+ async function __wbg_load(module, imports) {
279
+ if (typeof Response === 'function' && module instanceof Response) {
280
+ if (typeof WebAssembly.instantiateStreaming === 'function') {
281
+ try {
282
+ return await WebAssembly.instantiateStreaming(module, imports);
283
+
284
+ } catch (e) {
285
+ if (module.headers.get('Content-Type') != 'application/wasm') {
286
+ console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n", e);
287
+
288
+ } else {
289
+ throw e;
290
+ }
291
+ }
292
+ }
293
+
294
+ const bytes = await module.arrayBuffer();
295
+ return await WebAssembly.instantiate(bytes, imports);
296
+
297
+ } else {
298
+ const instance = await WebAssembly.instantiate(module, imports);
299
+
300
+ if (instance instanceof WebAssembly.Instance) {
301
+ return { instance, module };
302
+
303
+ } else {
304
+ return instance;
305
+ }
306
+ }
307
+ }
308
+
309
+ function __wbg_get_imports() {
310
+ const imports = {};
311
+ imports.wbg = {};
312
+ imports.wbg.__wbindgen_object_drop_ref = function(arg0) {
313
+ takeObject(arg0);
314
+ };
315
+ imports.wbg.__wbindgen_cb_drop = function(arg0) {
316
+ const obj = takeObject(arg0).original;
317
+ if (obj.cnt-- == 1) {
318
+ obj.a = 0;
319
+ return true;
320
+ }
321
+ const ret = false;
322
+ return ret;
323
+ };
324
+ imports.wbg.__wbindgen_object_clone_ref = function(arg0) {
325
+ const ret = getObject(arg0);
326
+ return addHeapObject(ret);
327
+ };
328
+ imports.wbg.__wbindgen_string_new = function(arg0, arg1) {
329
+ const ret = getStringFromWasm0(arg0, arg1);
330
+ return addHeapObject(ret);
331
+ };
332
+ imports.wbg.__wbindgen_number_get = function(arg0, arg1) {
333
+ const obj = getObject(arg1);
334
+ const ret = typeof(obj) === 'number' ? obj : undefined;
335
+ getFloat64Memory0()[arg0 / 8 + 1] = isLikeNone(ret) ? 0 : ret;
336
+ getInt32Memory0()[arg0 / 4 + 0] = !isLikeNone(ret);
337
+ };
338
+ imports.wbg.__wbindgen_is_null = function(arg0) {
339
+ const ret = getObject(arg0) === null;
340
+ return ret;
341
+ };
342
+ imports.wbg.__wbindgen_boolean_get = function(arg0) {
343
+ const v = getObject(arg0);
344
+ const ret = typeof(v) === 'boolean' ? (v ? 1 : 0) : 2;
345
+ return ret;
346
+ };
347
+ imports.wbg.__wbindgen_string_get = function(arg0, arg1) {
348
+ const obj = getObject(arg1);
349
+ const ret = typeof(obj) === 'string' ? obj : undefined;
350
+ var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
351
+ var len1 = WASM_VECTOR_LEN;
352
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
353
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
354
+ };
355
+ imports.wbg.__wbindgen_number_new = function(arg0) {
356
+ const ret = arg0;
357
+ return addHeapObject(ret);
358
+ };
359
+ imports.wbg.__wbg_log_c9486ca5d8e2cbe8 = function(arg0, arg1) {
360
+ let deferred0_0;
361
+ let deferred0_1;
362
+ try {
363
+ deferred0_0 = arg0;
364
+ deferred0_1 = arg1;
365
+ console.log(getStringFromWasm0(arg0, arg1));
366
+ } finally {
367
+ wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);
368
+ }
369
+ };
370
+ imports.wbg.__wbg_log_aba5996d9bde071f = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7) {
371
+ let deferred0_0;
372
+ let deferred0_1;
373
+ try {
374
+ deferred0_0 = arg0;
375
+ deferred0_1 = arg1;
376
+ console.log(getStringFromWasm0(arg0, arg1), getStringFromWasm0(arg2, arg3), getStringFromWasm0(arg4, arg5), getStringFromWasm0(arg6, arg7));
377
+ } finally {
378
+ wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);
379
+ }
380
+ };
381
+ imports.wbg.__wbg_mark_40e050a77cc39fea = function(arg0, arg1) {
382
+ performance.mark(getStringFromWasm0(arg0, arg1));
383
+ };
384
+ imports.wbg.__wbg_measure_aa7a73f17813f708 = function() { return handleError(function (arg0, arg1, arg2, arg3) {
385
+ let deferred0_0;
386
+ let deferred0_1;
387
+ let deferred1_0;
388
+ let deferred1_1;
389
+ try {
390
+ deferred0_0 = arg0;
391
+ deferred0_1 = arg1;
392
+ deferred1_0 = arg2;
393
+ deferred1_1 = arg3;
394
+ performance.measure(getStringFromWasm0(arg0, arg1), getStringFromWasm0(arg2, arg3));
395
+ } finally {
396
+ wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);
397
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
398
+ }
399
+ }, arguments) };
400
+ imports.wbg.__wbg_new_abda76e883ba8a5f = function() {
401
+ const ret = new Error();
402
+ return addHeapObject(ret);
403
+ };
404
+ imports.wbg.__wbg_stack_658279fe44541cf6 = function(arg0, arg1) {
405
+ const ret = getObject(arg1).stack;
406
+ const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
407
+ const len1 = WASM_VECTOR_LEN;
408
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
409
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
410
+ };
411
+ imports.wbg.__wbg_error_f851667af71bcfc6 = function(arg0, arg1) {
412
+ let deferred0_0;
413
+ let deferred0_1;
414
+ try {
415
+ deferred0_0 = arg0;
416
+ deferred0_1 = arg1;
417
+ console.error(getStringFromWasm0(arg0, arg1));
418
+ } finally {
419
+ wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);
420
+ }
421
+ };
422
+ imports.wbg.__wbg_instanceof_WebGl2RenderingContext_f921526c513bf717 = function(arg0) {
423
+ let result;
424
+ try {
425
+ result = getObject(arg0) instanceof WebGL2RenderingContext;
426
+ } catch (_) {
427
+ result = false;
428
+ }
429
+ const ret = result;
430
+ return ret;
431
+ };
432
+ imports.wbg.__wbg_beginQuery_d338463adf721553 = function(arg0, arg1, arg2) {
433
+ getObject(arg0).beginQuery(arg1 >>> 0, getObject(arg2));
434
+ };
435
+ imports.wbg.__wbg_bindBufferRange_d8a5ebc8ea8be507 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
436
+ getObject(arg0).bindBufferRange(arg1 >>> 0, arg2 >>> 0, getObject(arg3), arg4, arg5);
437
+ };
438
+ imports.wbg.__wbg_bindSampler_d74e398b68cf5980 = function(arg0, arg1, arg2) {
439
+ getObject(arg0).bindSampler(arg1 >>> 0, getObject(arg2));
440
+ };
441
+ imports.wbg.__wbg_bindVertexArray_8863a216d7b0a339 = function(arg0, arg1) {
442
+ getObject(arg0).bindVertexArray(getObject(arg1));
443
+ };
444
+ imports.wbg.__wbg_blitFramebuffer_e6642748dd06d47e = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10) {
445
+ getObject(arg0).blitFramebuffer(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0);
446
+ };
447
+ imports.wbg.__wbg_bufferData_496bbb31639d9850 = function(arg0, arg1, arg2, arg3) {
448
+ getObject(arg0).bufferData(arg1 >>> 0, arg2, arg3 >>> 0);
449
+ };
450
+ imports.wbg.__wbg_bufferData_21334671c4ba6004 = function(arg0, arg1, arg2, arg3) {
451
+ getObject(arg0).bufferData(arg1 >>> 0, getObject(arg2), arg3 >>> 0);
452
+ };
453
+ imports.wbg.__wbg_bufferSubData_c472b93c9e272eac = function(arg0, arg1, arg2, arg3) {
454
+ getObject(arg0).bufferSubData(arg1 >>> 0, arg2, getObject(arg3));
455
+ };
456
+ imports.wbg.__wbg_clearBufferfi_25bcd35b825f629d = function(arg0, arg1, arg2, arg3, arg4) {
457
+ getObject(arg0).clearBufferfi(arg1 >>> 0, arg2, arg3, arg4);
458
+ };
459
+ imports.wbg.__wbg_clearBufferfv_9de0cb45cc5a012b = function(arg0, arg1, arg2, arg3, arg4) {
460
+ getObject(arg0).clearBufferfv(arg1 >>> 0, arg2, getArrayF32FromWasm0(arg3, arg4));
461
+ };
462
+ imports.wbg.__wbg_clearBufferiv_fc2f8bce2930c586 = function(arg0, arg1, arg2, arg3, arg4) {
463
+ getObject(arg0).clearBufferiv(arg1 >>> 0, arg2, getArrayI32FromWasm0(arg3, arg4));
464
+ };
465
+ imports.wbg.__wbg_clearBufferuiv_2f6d220a31eabca4 = function(arg0, arg1, arg2, arg3, arg4) {
466
+ getObject(arg0).clearBufferuiv(arg1 >>> 0, arg2, getArrayU32FromWasm0(arg3, arg4));
467
+ };
468
+ imports.wbg.__wbg_clientWaitSync_6a74725ec890efdd = function(arg0, arg1, arg2, arg3) {
469
+ const ret = getObject(arg0).clientWaitSync(getObject(arg1), arg2 >>> 0, arg3 >>> 0);
470
+ return ret;
471
+ };
472
+ imports.wbg.__wbg_compressedTexSubImage2D_945ba54869f3a612 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {
473
+ getObject(arg0).compressedTexSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8, arg9);
474
+ };
475
+ imports.wbg.__wbg_compressedTexSubImage2D_ed56fa2f82a839b1 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) {
476
+ getObject(arg0).compressedTexSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, getObject(arg8));
477
+ };
478
+ imports.wbg.__wbg_compressedTexSubImage3D_4cebeae1440fdc14 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {
479
+ getObject(arg0).compressedTexSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10, arg11);
480
+ };
481
+ imports.wbg.__wbg_compressedTexSubImage3D_0ae61aaa91089745 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10) {
482
+ getObject(arg0).compressedTexSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, getObject(arg10));
483
+ };
484
+ imports.wbg.__wbg_copyBufferSubData_d112912c90270156 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
485
+ getObject(arg0).copyBufferSubData(arg1 >>> 0, arg2 >>> 0, arg3, arg4, arg5);
486
+ };
487
+ imports.wbg.__wbg_copyTexSubImage3D_9fa5e9e7b16cf09d = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {
488
+ getObject(arg0).copyTexSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);
489
+ };
490
+ imports.wbg.__wbg_createQuery_2ef2dc0f01a4a8e3 = function(arg0) {
491
+ const ret = getObject(arg0).createQuery();
492
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
493
+ };
494
+ imports.wbg.__wbg_createSampler_039ecd204675292b = function(arg0) {
495
+ const ret = getObject(arg0).createSampler();
496
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
497
+ };
498
+ imports.wbg.__wbg_createVertexArray_51d51e1e1e13e9f6 = function(arg0) {
499
+ const ret = getObject(arg0).createVertexArray();
500
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
501
+ };
502
+ imports.wbg.__wbg_deleteQuery_0c64c5200cdc57a6 = function(arg0, arg1) {
503
+ getObject(arg0).deleteQuery(getObject(arg1));
504
+ };
505
+ imports.wbg.__wbg_deleteSampler_ce5b8e120f96fc1a = function(arg0, arg1) {
506
+ getObject(arg0).deleteSampler(getObject(arg1));
507
+ };
508
+ imports.wbg.__wbg_deleteSync_1b05dfcc176e7466 = function(arg0, arg1) {
509
+ getObject(arg0).deleteSync(getObject(arg1));
510
+ };
511
+ imports.wbg.__wbg_deleteVertexArray_3e4f2e2ff7f05a19 = function(arg0, arg1) {
512
+ getObject(arg0).deleteVertexArray(getObject(arg1));
513
+ };
514
+ imports.wbg.__wbg_drawArraysInstanced_8fb13fe9faf95212 = function(arg0, arg1, arg2, arg3, arg4) {
515
+ getObject(arg0).drawArraysInstanced(arg1 >>> 0, arg2, arg3, arg4);
516
+ };
517
+ imports.wbg.__wbg_drawBuffers_15d26e17a8d24ee0 = function(arg0, arg1) {
518
+ getObject(arg0).drawBuffers(getObject(arg1));
519
+ };
520
+ imports.wbg.__wbg_drawElementsInstanced_dcf53461a977d44c = function(arg0, arg1, arg2, arg3, arg4, arg5) {
521
+ getObject(arg0).drawElementsInstanced(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5);
522
+ };
523
+ imports.wbg.__wbg_endQuery_faf7eb231d6f2a66 = function(arg0, arg1) {
524
+ getObject(arg0).endQuery(arg1 >>> 0);
525
+ };
526
+ imports.wbg.__wbg_fenceSync_d68dcbdcdd134d92 = function(arg0, arg1, arg2) {
527
+ const ret = getObject(arg0).fenceSync(arg1 >>> 0, arg2 >>> 0);
528
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
529
+ };
530
+ imports.wbg.__wbg_framebufferTextureLayer_a92788e5f0409234 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
531
+ getObject(arg0).framebufferTextureLayer(arg1 >>> 0, arg2 >>> 0, getObject(arg3), arg4, arg5);
532
+ };
533
+ imports.wbg.__wbg_getBufferSubData_8710cc73621fc332 = function(arg0, arg1, arg2, arg3) {
534
+ getObject(arg0).getBufferSubData(arg1 >>> 0, arg2, getObject(arg3));
535
+ };
536
+ imports.wbg.__wbg_getIndexedParameter_4f004dc25c3d15a9 = function() { return handleError(function (arg0, arg1, arg2) {
537
+ const ret = getObject(arg0).getIndexedParameter(arg1 >>> 0, arg2 >>> 0);
538
+ return addHeapObject(ret);
539
+ }, arguments) };
540
+ imports.wbg.__wbg_getQueryParameter_64c18ef385414bf1 = function(arg0, arg1, arg2) {
541
+ const ret = getObject(arg0).getQueryParameter(getObject(arg1), arg2 >>> 0);
542
+ return addHeapObject(ret);
543
+ };
544
+ imports.wbg.__wbg_getSyncParameter_d93ec7f6bb11274c = function(arg0, arg1, arg2) {
545
+ const ret = getObject(arg0).getSyncParameter(getObject(arg1), arg2 >>> 0);
546
+ return addHeapObject(ret);
547
+ };
548
+ imports.wbg.__wbg_getUniformBlockIndex_99c15053c9a87c73 = function(arg0, arg1, arg2, arg3) {
549
+ const ret = getObject(arg0).getUniformBlockIndex(getObject(arg1), getStringFromWasm0(arg2, arg3));
550
+ return ret;
551
+ };
552
+ imports.wbg.__wbg_invalidateFramebuffer_03bd99588b15d627 = function() { return handleError(function (arg0, arg1, arg2) {
553
+ getObject(arg0).invalidateFramebuffer(arg1 >>> 0, getObject(arg2));
554
+ }, arguments) };
555
+ imports.wbg.__wbg_readBuffer_c426fe18344296ff = function(arg0, arg1) {
556
+ getObject(arg0).readBuffer(arg1 >>> 0);
557
+ };
558
+ imports.wbg.__wbg_readPixels_99fda83f6ca7ec72 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7) {
559
+ getObject(arg0).readPixels(arg1, arg2, arg3, arg4, arg5 >>> 0, arg6 >>> 0, getObject(arg7));
560
+ }, arguments) };
561
+ imports.wbg.__wbg_readPixels_9634f0dcfb54667c = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7) {
562
+ getObject(arg0).readPixels(arg1, arg2, arg3, arg4, arg5 >>> 0, arg6 >>> 0, arg7);
563
+ }, arguments) };
564
+ imports.wbg.__wbg_renderbufferStorageMultisample_9260e2e620c949e5 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
565
+ getObject(arg0).renderbufferStorageMultisample(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5);
566
+ };
567
+ imports.wbg.__wbg_samplerParameterf_1c7562ef061b803b = function(arg0, arg1, arg2, arg3) {
568
+ getObject(arg0).samplerParameterf(getObject(arg1), arg2 >>> 0, arg3);
569
+ };
570
+ imports.wbg.__wbg_samplerParameteri_0fee083bc48e70ee = function(arg0, arg1, arg2, arg3) {
571
+ getObject(arg0).samplerParameteri(getObject(arg1), arg2 >>> 0, arg3);
572
+ };
573
+ imports.wbg.__wbg_texStorage2D_6665d01025a7e7fc = function(arg0, arg1, arg2, arg3, arg4, arg5) {
574
+ getObject(arg0).texStorage2D(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5);
575
+ };
576
+ imports.wbg.__wbg_texStorage3D_c01c31c1b02d75fd = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {
577
+ getObject(arg0).texStorage3D(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5, arg6);
578
+ };
579
+ imports.wbg.__wbg_texSubImage2D_d2841ded12a8aa66 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {
580
+ getObject(arg0).texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, getObject(arg9));
581
+ }, arguments) };
582
+ imports.wbg.__wbg_texSubImage2D_bccf4e250f1ce1b8 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {
583
+ getObject(arg0).texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, arg9);
584
+ }, arguments) };
585
+ imports.wbg.__wbg_texSubImage2D_780a7c889dc20a98 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {
586
+ getObject(arg0).texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, getObject(arg9));
587
+ }, arguments) };
588
+ imports.wbg.__wbg_texSubImage2D_b5bb36f2f54b4264 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {
589
+ getObject(arg0).texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, getObject(arg9));
590
+ }, arguments) };
591
+ imports.wbg.__wbg_texSubImage2D_a297114050ea1098 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {
592
+ getObject(arg0).texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, getObject(arg9));
593
+ }, arguments) };
594
+ imports.wbg.__wbg_texSubImage3D_43f39a73ed02fae3 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {
595
+ getObject(arg0).texSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0, arg11);
596
+ }, arguments) };
597
+ imports.wbg.__wbg_texSubImage3D_ffdccca1422b482a = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {
598
+ getObject(arg0).texSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0, getObject(arg11));
599
+ }, arguments) };
600
+ imports.wbg.__wbg_texSubImage3D_69d5e09d45e0251c = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {
601
+ getObject(arg0).texSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0, getObject(arg11));
602
+ }, arguments) };
603
+ imports.wbg.__wbg_texSubImage3D_ae3ed5d0154c346c = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {
604
+ getObject(arg0).texSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0, getObject(arg11));
605
+ }, arguments) };
606
+ imports.wbg.__wbg_texSubImage3D_80693fc2c7855e4d = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {
607
+ getObject(arg0).texSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0, getObject(arg11));
608
+ }, arguments) };
609
+ imports.wbg.__wbg_uniform2fv_2b473f6dce24c898 = function(arg0, arg1, arg2, arg3) {
610
+ getObject(arg0).uniform2fv(getObject(arg1), getArrayF32FromWasm0(arg2, arg3));
611
+ };
612
+ imports.wbg.__wbg_uniform2iv_fdaa3cd258d3451e = function(arg0, arg1, arg2, arg3) {
613
+ getObject(arg0).uniform2iv(getObject(arg1), getArrayI32FromWasm0(arg2, arg3));
614
+ };
615
+ imports.wbg.__wbg_uniform3fv_3e55033ca16ec6ab = function(arg0, arg1, arg2, arg3) {
616
+ getObject(arg0).uniform3fv(getObject(arg1), getArrayF32FromWasm0(arg2, arg3));
617
+ };
618
+ imports.wbg.__wbg_uniform3iv_3d3ed90c76e6777e = function(arg0, arg1, arg2, arg3) {
619
+ getObject(arg0).uniform3iv(getObject(arg1), getArrayI32FromWasm0(arg2, arg3));
620
+ };
621
+ imports.wbg.__wbg_uniform4fv_26ec0c9d7bf6d7c6 = function(arg0, arg1, arg2, arg3) {
622
+ getObject(arg0).uniform4fv(getObject(arg1), getArrayF32FromWasm0(arg2, arg3));
623
+ };
624
+ imports.wbg.__wbg_uniform4iv_2be6b77c47b90d81 = function(arg0, arg1, arg2, arg3) {
625
+ getObject(arg0).uniform4iv(getObject(arg1), getArrayI32FromWasm0(arg2, arg3));
626
+ };
627
+ imports.wbg.__wbg_uniformBlockBinding_0dc4bd81bb4ccb6a = function(arg0, arg1, arg2, arg3) {
628
+ getObject(arg0).uniformBlockBinding(getObject(arg1), arg2 >>> 0, arg3 >>> 0);
629
+ };
630
+ imports.wbg.__wbg_uniformMatrix2fv_1ab7aeb8562ea3dd = function(arg0, arg1, arg2, arg3, arg4) {
631
+ getObject(arg0).uniformMatrix2fv(getObject(arg1), arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));
632
+ };
633
+ imports.wbg.__wbg_uniformMatrix3fv_0b151be4d76ee66b = function(arg0, arg1, arg2, arg3, arg4) {
634
+ getObject(arg0).uniformMatrix3fv(getObject(arg1), arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));
635
+ };
636
+ imports.wbg.__wbg_uniformMatrix4fv_766b5ba343983038 = function(arg0, arg1, arg2, arg3, arg4) {
637
+ getObject(arg0).uniformMatrix4fv(getObject(arg1), arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));
638
+ };
639
+ imports.wbg.__wbg_vertexAttribDivisor_197e2e23e3fbde7f = function(arg0, arg1, arg2) {
640
+ getObject(arg0).vertexAttribDivisor(arg1 >>> 0, arg2 >>> 0);
641
+ };
642
+ imports.wbg.__wbg_vertexAttribIPointer_6f8540e358f8a547 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
643
+ getObject(arg0).vertexAttribIPointer(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5);
644
+ };
645
+ imports.wbg.__wbg_activeTexture_799bf1387e911c27 = function(arg0, arg1) {
646
+ getObject(arg0).activeTexture(arg1 >>> 0);
647
+ };
648
+ imports.wbg.__wbg_attachShader_47256b6b3d42a22e = function(arg0, arg1, arg2) {
649
+ getObject(arg0).attachShader(getObject(arg1), getObject(arg2));
650
+ };
651
+ imports.wbg.__wbg_bindBuffer_24f6010e273fa400 = function(arg0, arg1, arg2) {
652
+ getObject(arg0).bindBuffer(arg1 >>> 0, getObject(arg2));
653
+ };
654
+ imports.wbg.__wbg_bindFramebuffer_a9573e340dab20fe = function(arg0, arg1, arg2) {
655
+ getObject(arg0).bindFramebuffer(arg1 >>> 0, getObject(arg2));
656
+ };
657
+ imports.wbg.__wbg_bindRenderbuffer_54c404711f9b6958 = function(arg0, arg1, arg2) {
658
+ getObject(arg0).bindRenderbuffer(arg1 >>> 0, getObject(arg2));
659
+ };
660
+ imports.wbg.__wbg_bindTexture_92d6d7f8bff9531e = function(arg0, arg1, arg2) {
661
+ getObject(arg0).bindTexture(arg1 >>> 0, getObject(arg2));
662
+ };
663
+ imports.wbg.__wbg_blendColor_7974f09cb60d2be0 = function(arg0, arg1, arg2, arg3, arg4) {
664
+ getObject(arg0).blendColor(arg1, arg2, arg3, arg4);
665
+ };
666
+ imports.wbg.__wbg_blendEquation_12146cb96dc1bcd9 = function(arg0, arg1) {
667
+ getObject(arg0).blendEquation(arg1 >>> 0);
668
+ };
669
+ imports.wbg.__wbg_blendEquationSeparate_205526dad772d160 = function(arg0, arg1, arg2) {
670
+ getObject(arg0).blendEquationSeparate(arg1 >>> 0, arg2 >>> 0);
671
+ };
672
+ imports.wbg.__wbg_blendFunc_533de6de45b80a09 = function(arg0, arg1, arg2) {
673
+ getObject(arg0).blendFunc(arg1 >>> 0, arg2 >>> 0);
674
+ };
675
+ imports.wbg.__wbg_blendFuncSeparate_fbf93dee3e5ce456 = function(arg0, arg1, arg2, arg3, arg4) {
676
+ getObject(arg0).blendFuncSeparate(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, arg4 >>> 0);
677
+ };
678
+ imports.wbg.__wbg_colorMask_fba1e2efd891e2ac = function(arg0, arg1, arg2, arg3, arg4) {
679
+ getObject(arg0).colorMask(arg1 !== 0, arg2 !== 0, arg3 !== 0, arg4 !== 0);
680
+ };
681
+ imports.wbg.__wbg_compileShader_6bf78b425d5c98e1 = function(arg0, arg1) {
682
+ getObject(arg0).compileShader(getObject(arg1));
683
+ };
684
+ imports.wbg.__wbg_copyTexSubImage2D_26685100d5f2b4c0 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) {
685
+ getObject(arg0).copyTexSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8);
686
+ };
687
+ imports.wbg.__wbg_createBuffer_323425af422748ac = function(arg0) {
688
+ const ret = getObject(arg0).createBuffer();
689
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
690
+ };
691
+ imports.wbg.__wbg_createFramebuffer_1684a99697ac9563 = function(arg0) {
692
+ const ret = getObject(arg0).createFramebuffer();
693
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
694
+ };
695
+ imports.wbg.__wbg_createProgram_4eaf3b97b5747a62 = function(arg0) {
696
+ const ret = getObject(arg0).createProgram();
697
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
698
+ };
699
+ imports.wbg.__wbg_createRenderbuffer_3e6dd356d7897ed7 = function(arg0) {
700
+ const ret = getObject(arg0).createRenderbuffer();
701
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
702
+ };
703
+ imports.wbg.__wbg_createShader_429776c9dd6fb87b = function(arg0, arg1) {
704
+ const ret = getObject(arg0).createShader(arg1 >>> 0);
705
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
706
+ };
707
+ imports.wbg.__wbg_createTexture_1bf4d6fec570124b = function(arg0) {
708
+ const ret = getObject(arg0).createTexture();
709
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
710
+ };
711
+ imports.wbg.__wbg_cullFace_6daa9f2aa42b4620 = function(arg0, arg1) {
712
+ getObject(arg0).cullFace(arg1 >>> 0);
713
+ };
714
+ imports.wbg.__wbg_deleteBuffer_2c09d03fa4b0bd08 = function(arg0, arg1) {
715
+ getObject(arg0).deleteBuffer(getObject(arg1));
716
+ };
717
+ imports.wbg.__wbg_deleteFramebuffer_edd16bb8df6a8e0d = function(arg0, arg1) {
718
+ getObject(arg0).deleteFramebuffer(getObject(arg1));
719
+ };
720
+ imports.wbg.__wbg_deleteProgram_53a32852f245b839 = function(arg0, arg1) {
721
+ getObject(arg0).deleteProgram(getObject(arg1));
722
+ };
723
+ imports.wbg.__wbg_deleteRenderbuffer_134040051fcc1ba5 = function(arg0, arg1) {
724
+ getObject(arg0).deleteRenderbuffer(getObject(arg1));
725
+ };
726
+ imports.wbg.__wbg_deleteShader_7c1222349324b5e2 = function(arg0, arg1) {
727
+ getObject(arg0).deleteShader(getObject(arg1));
728
+ };
729
+ imports.wbg.__wbg_deleteTexture_4fcfea73cd8f6214 = function(arg0, arg1) {
730
+ getObject(arg0).deleteTexture(getObject(arg1));
731
+ };
732
+ imports.wbg.__wbg_depthFunc_fb41ad353d07948d = function(arg0, arg1) {
733
+ getObject(arg0).depthFunc(arg1 >>> 0);
734
+ };
735
+ imports.wbg.__wbg_depthMask_6a4ff02cd2a2702e = function(arg0, arg1) {
736
+ getObject(arg0).depthMask(arg1 !== 0);
737
+ };
738
+ imports.wbg.__wbg_depthRange_a5647a9040aec55b = function(arg0, arg1, arg2) {
739
+ getObject(arg0).depthRange(arg1, arg2);
740
+ };
741
+ imports.wbg.__wbg_disable_e02106ca6c7002d6 = function(arg0, arg1) {
742
+ getObject(arg0).disable(arg1 >>> 0);
743
+ };
744
+ imports.wbg.__wbg_disableVertexAttribArray_6d57776c8f642f44 = function(arg0, arg1) {
745
+ getObject(arg0).disableVertexAttribArray(arg1 >>> 0);
746
+ };
747
+ imports.wbg.__wbg_drawArrays_c91ce3f736bf1f2a = function(arg0, arg1, arg2, arg3) {
748
+ getObject(arg0).drawArrays(arg1 >>> 0, arg2, arg3);
749
+ };
750
+ imports.wbg.__wbg_enable_195891416c520019 = function(arg0, arg1) {
751
+ getObject(arg0).enable(arg1 >>> 0);
752
+ };
753
+ imports.wbg.__wbg_enableVertexAttribArray_8804480c2ea0bb72 = function(arg0, arg1) {
754
+ getObject(arg0).enableVertexAttribArray(arg1 >>> 0);
755
+ };
756
+ imports.wbg.__wbg_framebufferRenderbuffer_3ec0983918c2b69d = function(arg0, arg1, arg2, arg3, arg4) {
757
+ getObject(arg0).framebufferRenderbuffer(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, getObject(arg4));
758
+ };
759
+ imports.wbg.__wbg_framebufferTexture2D_e88fcbd7f8523bb8 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
760
+ getObject(arg0).framebufferTexture2D(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, getObject(arg4), arg5);
761
+ };
762
+ imports.wbg.__wbg_frontFace_786a036f1d643925 = function(arg0, arg1) {
763
+ getObject(arg0).frontFace(arg1 >>> 0);
764
+ };
765
+ imports.wbg.__wbg_getActiveUniform_78367ddc7339640b = function(arg0, arg1, arg2) {
766
+ const ret = getObject(arg0).getActiveUniform(getObject(arg1), arg2 >>> 0);
767
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
768
+ };
769
+ imports.wbg.__wbg_getExtension_77909f6d51d49d4d = function() { return handleError(function (arg0, arg1, arg2) {
770
+ const ret = getObject(arg0).getExtension(getStringFromWasm0(arg1, arg2));
771
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
772
+ }, arguments) };
773
+ imports.wbg.__wbg_getParameter_55b36a787dbbfb74 = function() { return handleError(function (arg0, arg1) {
774
+ const ret = getObject(arg0).getParameter(arg1 >>> 0);
775
+ return addHeapObject(ret);
776
+ }, arguments) };
777
+ imports.wbg.__wbg_getProgramInfoLog_b81bc53188e286fa = function(arg0, arg1, arg2) {
778
+ const ret = getObject(arg1).getProgramInfoLog(getObject(arg2));
779
+ var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
780
+ var len1 = WASM_VECTOR_LEN;
781
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
782
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
783
+ };
784
+ imports.wbg.__wbg_getProgramParameter_35522a0bfdfaad27 = function(arg0, arg1, arg2) {
785
+ const ret = getObject(arg0).getProgramParameter(getObject(arg1), arg2 >>> 0);
786
+ return addHeapObject(ret);
787
+ };
788
+ imports.wbg.__wbg_getShaderInfoLog_968b93e75477d725 = function(arg0, arg1, arg2) {
789
+ const ret = getObject(arg1).getShaderInfoLog(getObject(arg2));
790
+ var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
791
+ var len1 = WASM_VECTOR_LEN;
792
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
793
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
794
+ };
795
+ imports.wbg.__wbg_getShaderParameter_ac2727ae4fe7648e = function(arg0, arg1, arg2) {
796
+ const ret = getObject(arg0).getShaderParameter(getObject(arg1), arg2 >>> 0);
797
+ return addHeapObject(ret);
798
+ };
799
+ imports.wbg.__wbg_getSupportedExtensions_fafc31aab913037d = function(arg0) {
800
+ const ret = getObject(arg0).getSupportedExtensions();
801
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
802
+ };
803
+ imports.wbg.__wbg_getUniformLocation_9f6eb60c560a347b = function(arg0, arg1, arg2, arg3) {
804
+ const ret = getObject(arg0).getUniformLocation(getObject(arg1), getStringFromWasm0(arg2, arg3));
805
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
806
+ };
807
+ imports.wbg.__wbg_linkProgram_33998194075d71fb = function(arg0, arg1) {
808
+ getObject(arg0).linkProgram(getObject(arg1));
809
+ };
810
+ imports.wbg.__wbg_pixelStorei_f3a24990aa352fc7 = function(arg0, arg1, arg2) {
811
+ getObject(arg0).pixelStorei(arg1 >>> 0, arg2);
812
+ };
813
+ imports.wbg.__wbg_polygonOffset_faca8e73770272ff = function(arg0, arg1, arg2) {
814
+ getObject(arg0).polygonOffset(arg1, arg2);
815
+ };
816
+ imports.wbg.__wbg_renderbufferStorage_987d1af7c9faf5dd = function(arg0, arg1, arg2, arg3, arg4) {
817
+ getObject(arg0).renderbufferStorage(arg1 >>> 0, arg2 >>> 0, arg3, arg4);
818
+ };
819
+ imports.wbg.__wbg_scissor_e8e41e1c0a9817c8 = function(arg0, arg1, arg2, arg3, arg4) {
820
+ getObject(arg0).scissor(arg1, arg2, arg3, arg4);
821
+ };
822
+ imports.wbg.__wbg_shaderSource_1cb7c64dc7d1a500 = function(arg0, arg1, arg2, arg3) {
823
+ getObject(arg0).shaderSource(getObject(arg1), getStringFromWasm0(arg2, arg3));
824
+ };
825
+ imports.wbg.__wbg_stencilFuncSeparate_8ff94e24a50a3c45 = function(arg0, arg1, arg2, arg3, arg4) {
826
+ getObject(arg0).stencilFuncSeparate(arg1 >>> 0, arg2 >>> 0, arg3, arg4 >>> 0);
827
+ };
828
+ imports.wbg.__wbg_stencilMask_641f92999dd3c3de = function(arg0, arg1) {
829
+ getObject(arg0).stencilMask(arg1 >>> 0);
830
+ };
831
+ imports.wbg.__wbg_stencilMaskSeparate_6b2c8ef22fb3b6d1 = function(arg0, arg1, arg2) {
832
+ getObject(arg0).stencilMaskSeparate(arg1 >>> 0, arg2 >>> 0);
833
+ };
834
+ imports.wbg.__wbg_stencilOpSeparate_38925591af8feb44 = function(arg0, arg1, arg2, arg3, arg4) {
835
+ getObject(arg0).stencilOpSeparate(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, arg4 >>> 0);
836
+ };
837
+ imports.wbg.__wbg_texParameteri_85dad939f62a15aa = function(arg0, arg1, arg2, arg3) {
838
+ getObject(arg0).texParameteri(arg1 >>> 0, arg2 >>> 0, arg3);
839
+ };
840
+ imports.wbg.__wbg_uniform1f_88379f4e2630bc66 = function(arg0, arg1, arg2) {
841
+ getObject(arg0).uniform1f(getObject(arg1), arg2);
842
+ };
843
+ imports.wbg.__wbg_uniform1i_d2e61a6a43889648 = function(arg0, arg1, arg2) {
844
+ getObject(arg0).uniform1i(getObject(arg1), arg2);
845
+ };
846
+ imports.wbg.__wbg_uniform4f_a9fd337d4b07f595 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
847
+ getObject(arg0).uniform4f(getObject(arg1), arg2, arg3, arg4, arg5);
848
+ };
849
+ imports.wbg.__wbg_useProgram_3683cf6f60939dcd = function(arg0, arg1) {
850
+ getObject(arg0).useProgram(getObject(arg1));
851
+ };
852
+ imports.wbg.__wbg_vertexAttribPointer_316ffe2f0458fde7 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {
853
+ getObject(arg0).vertexAttribPointer(arg1 >>> 0, arg2, arg3 >>> 0, arg4 !== 0, arg5, arg6);
854
+ };
855
+ imports.wbg.__wbg_viewport_fad1ce9e18f741c0 = function(arg0, arg1, arg2, arg3, arg4) {
856
+ getObject(arg0).viewport(arg1, arg2, arg3, arg4);
857
+ };
858
+ imports.wbg.__wbg_instanceof_Window_9029196b662bc42a = function(arg0) {
859
+ let result;
860
+ try {
861
+ result = getObject(arg0) instanceof Window;
862
+ } catch (_) {
863
+ result = false;
864
+ }
865
+ const ret = result;
866
+ return ret;
867
+ };
868
+ imports.wbg.__wbg_document_f7ace2b956f30a4f = function(arg0) {
869
+ const ret = getObject(arg0).document;
870
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
871
+ };
872
+ imports.wbg.__wbg_navigator_7c9103698acde322 = function(arg0) {
873
+ const ret = getObject(arg0).navigator;
874
+ return addHeapObject(ret);
875
+ };
876
+ imports.wbg.__wbg_innerWidth_ebe07ce5463ff293 = function() { return handleError(function (arg0) {
877
+ const ret = getObject(arg0).innerWidth;
878
+ return addHeapObject(ret);
879
+ }, arguments) };
880
+ imports.wbg.__wbg_innerHeight_2dd06d8cf68f1d7d = function() { return handleError(function (arg0) {
881
+ const ret = getObject(arg0).innerHeight;
882
+ return addHeapObject(ret);
883
+ }, arguments) };
884
+ imports.wbg.__wbg_devicePixelRatio_f9de7bddca0eaf20 = function(arg0) {
885
+ const ret = getObject(arg0).devicePixelRatio;
886
+ return ret;
887
+ };
888
+ imports.wbg.__wbg_isSecureContext_4890500d265c48bd = function(arg0) {
889
+ const ret = getObject(arg0).isSecureContext;
890
+ return ret;
891
+ };
892
+ imports.wbg.__wbg_matchMedia_12ef69056e32d0b3 = function() { return handleError(function (arg0, arg1, arg2) {
893
+ const ret = getObject(arg0).matchMedia(getStringFromWasm0(arg1, arg2));
894
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
895
+ }, arguments) };
896
+ imports.wbg.__wbg_get_cb7c1c2da725c920 = function(arg0, arg1, arg2) {
897
+ const ret = getObject(arg0)[getStringFromWasm0(arg1, arg2)];
898
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
899
+ };
900
+ imports.wbg.__wbg_cancelAnimationFrame_9b68e9588c6543bc = function() { return handleError(function (arg0, arg1) {
901
+ getObject(arg0).cancelAnimationFrame(arg1);
902
+ }, arguments) };
903
+ imports.wbg.__wbg_requestAnimationFrame_d082200514b6674d = function() { return handleError(function (arg0, arg1) {
904
+ const ret = getObject(arg0).requestAnimationFrame(getObject(arg1));
905
+ return ret;
906
+ }, arguments) };
907
+ imports.wbg.__wbg_clearTimeout_220be2fa0577b342 = function(arg0, arg1) {
908
+ getObject(arg0).clearTimeout(arg1);
909
+ };
910
+ imports.wbg.__wbg_fetch_25c13b73a41a6660 = function(arg0, arg1, arg2) {
911
+ const ret = getObject(arg0).fetch(getStringFromWasm0(arg1, arg2));
912
+ return addHeapObject(ret);
913
+ };
914
+ imports.wbg.__wbg_setTimeout_eb1a0d116c26d9f6 = function() { return handleError(function (arg0, arg1, arg2) {
915
+ const ret = getObject(arg0).setTimeout(getObject(arg1), arg2);
916
+ return ret;
917
+ }, arguments) };
918
+ imports.wbg.__wbg_clientX_1a480606ab0cabaa = function(arg0) {
919
+ const ret = getObject(arg0).clientX;
920
+ return ret;
921
+ };
922
+ imports.wbg.__wbg_clientY_9c7878f7faf3900f = function(arg0) {
923
+ const ret = getObject(arg0).clientY;
924
+ return ret;
925
+ };
926
+ imports.wbg.__wbg_offsetX_5a58f16f6c3a41b6 = function(arg0) {
927
+ const ret = getObject(arg0).offsetX;
928
+ return ret;
929
+ };
930
+ imports.wbg.__wbg_offsetY_c45b4956f6429a95 = function(arg0) {
931
+ const ret = getObject(arg0).offsetY;
932
+ return ret;
933
+ };
934
+ imports.wbg.__wbg_ctrlKey_0a805df688b5bf42 = function(arg0) {
935
+ const ret = getObject(arg0).ctrlKey;
936
+ return ret;
937
+ };
938
+ imports.wbg.__wbg_shiftKey_8a070ab6169b5fa4 = function(arg0) {
939
+ const ret = getObject(arg0).shiftKey;
940
+ return ret;
941
+ };
942
+ imports.wbg.__wbg_altKey_6fc1761a6b7a406e = function(arg0) {
943
+ const ret = getObject(arg0).altKey;
944
+ return ret;
945
+ };
946
+ imports.wbg.__wbg_metaKey_d89287be4389a3c1 = function(arg0) {
947
+ const ret = getObject(arg0).metaKey;
948
+ return ret;
949
+ };
950
+ imports.wbg.__wbg_button_7a095234b69de930 = function(arg0) {
951
+ const ret = getObject(arg0).button;
952
+ return ret;
953
+ };
954
+ imports.wbg.__wbg_buttons_d0f40e1650e3fa28 = function(arg0) {
955
+ const ret = getObject(arg0).buttons;
956
+ return ret;
957
+ };
958
+ imports.wbg.__wbg_movementX_966ec323c169d1a6 = function(arg0) {
959
+ const ret = getObject(arg0).movementX;
960
+ return ret;
961
+ };
962
+ imports.wbg.__wbg_movementY_b14b3bc8e1b31f23 = function(arg0) {
963
+ const ret = getObject(arg0).movementY;
964
+ return ret;
965
+ };
966
+ imports.wbg.__wbg_pressed_d881ce4add9c474b = function(arg0) {
967
+ const ret = getObject(arg0).pressed;
968
+ return ret;
969
+ };
970
+ imports.wbg.__wbg_value_c99f8b78cbe90703 = function(arg0) {
971
+ const ret = getObject(arg0).value;
972
+ return ret;
973
+ };
974
+ imports.wbg.__wbg_now_0cfdc90c97d0c24b = function(arg0) {
975
+ const ret = getObject(arg0).now();
976
+ return ret;
977
+ };
978
+ imports.wbg.__wbg_pointerId_701aab7b4fb073ff = function(arg0) {
979
+ const ret = getObject(arg0).pointerId;
980
+ return ret;
981
+ };
982
+ imports.wbg.__wbg_pressure_e388b6fd623a3917 = function(arg0) {
983
+ const ret = getObject(arg0).pressure;
984
+ return ret;
985
+ };
986
+ imports.wbg.__wbg_pointerType_0009b1e4e6b0f428 = function(arg0, arg1) {
987
+ const ret = getObject(arg1).pointerType;
988
+ const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
989
+ const len1 = WASM_VECTOR_LEN;
990
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
991
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
992
+ };
993
+ imports.wbg.__wbg_instanceof_Response_fc4327dbfcdf5ced = function(arg0) {
994
+ let result;
995
+ try {
996
+ result = getObject(arg0) instanceof Response;
997
+ } catch (_) {
998
+ result = false;
999
+ }
1000
+ const ret = result;
1001
+ return ret;
1002
+ };
1003
+ imports.wbg.__wbg_arrayBuffer_288fb3538806e85c = function() { return handleError(function (arg0) {
1004
+ const ret = getObject(arg0).arrayBuffer();
1005
+ return addHeapObject(ret);
1006
+ }, arguments) };
1007
+ imports.wbg.__wbg_copyToChannel_6e4bd2545a53db54 = function() { return handleError(function (arg0, arg1, arg2, arg3) {
1008
+ getObject(arg0).copyToChannel(getArrayF32FromWasm0(arg1, arg2), arg3);
1009
+ }, arguments) };
1010
+ imports.wbg.__wbg_x_6c8af74c3b4d8c09 = function(arg0) {
1011
+ const ret = getObject(arg0).x;
1012
+ return ret;
1013
+ };
1014
+ imports.wbg.__wbg_y_4cca2672ce1b5fc1 = function(arg0) {
1015
+ const ret = getObject(arg0).y;
1016
+ return ret;
1017
+ };
1018
+ imports.wbg.__wbg_width_e0c6b79d8cdd8897 = function(arg0) {
1019
+ const ret = getObject(arg0).width;
1020
+ return ret;
1021
+ };
1022
+ imports.wbg.__wbg_height_bed51746e072a118 = function(arg0) {
1023
+ const ret = getObject(arg0).height;
1024
+ return ret;
1025
+ };
1026
+ imports.wbg.__wbg_instanceof_HtmlCanvasElement_da5f9efa0688cf6d = function(arg0) {
1027
+ let result;
1028
+ try {
1029
+ result = getObject(arg0) instanceof HTMLCanvasElement;
1030
+ } catch (_) {
1031
+ result = false;
1032
+ }
1033
+ const ret = result;
1034
+ return ret;
1035
+ };
1036
+ imports.wbg.__wbg_width_2931aaedd21f1fff = function(arg0) {
1037
+ const ret = getObject(arg0).width;
1038
+ return ret;
1039
+ };
1040
+ imports.wbg.__wbg_setwidth_a667a942dba6656e = function(arg0, arg1) {
1041
+ getObject(arg0).width = arg1 >>> 0;
1042
+ };
1043
+ imports.wbg.__wbg_height_0d36fbbeb60b0661 = function(arg0) {
1044
+ const ret = getObject(arg0).height;
1045
+ return ret;
1046
+ };
1047
+ imports.wbg.__wbg_setheight_a747d440760fe5aa = function(arg0, arg1) {
1048
+ getObject(arg0).height = arg1 >>> 0;
1049
+ };
1050
+ imports.wbg.__wbg_getContext_6d1f155bb5c1096a = function() { return handleError(function (arg0, arg1, arg2, arg3) {
1051
+ const ret = getObject(arg0).getContext(getStringFromWasm0(arg1, arg2), getObject(arg3));
1052
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1053
+ }, arguments) };
1054
+ imports.wbg.__wbg_width_019b79813c2e80cf = function(arg0) {
1055
+ const ret = getObject(arg0).width;
1056
+ return ret;
1057
+ };
1058
+ imports.wbg.__wbg_height_12082005add04bb5 = function(arg0) {
1059
+ const ret = getObject(arg0).height;
1060
+ return ret;
1061
+ };
1062
+ imports.wbg.__wbg_matches_0f7e350783b542c2 = function(arg0) {
1063
+ const ret = getObject(arg0).matches;
1064
+ return ret;
1065
+ };
1066
+ imports.wbg.__wbg_bindVertexArrayOES_b7d9da7e073aa6b5 = function(arg0, arg1) {
1067
+ getObject(arg0).bindVertexArrayOES(getObject(arg1));
1068
+ };
1069
+ imports.wbg.__wbg_createVertexArrayOES_6a3c3a5a68201f8f = function(arg0) {
1070
+ const ret = getObject(arg0).createVertexArrayOES();
1071
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1072
+ };
1073
+ imports.wbg.__wbg_deleteVertexArrayOES_7bf4589e63d84df6 = function(arg0, arg1) {
1074
+ getObject(arg0).deleteVertexArrayOES(getObject(arg1));
1075
+ };
1076
+ imports.wbg.__wbg_width_0b4991f5cf7c640a = function(arg0) {
1077
+ const ret = getObject(arg0).width;
1078
+ return ret;
1079
+ };
1080
+ imports.wbg.__wbg_setwidth_15266a5e81f43cf0 = function(arg0, arg1) {
1081
+ getObject(arg0).width = arg1 >>> 0;
1082
+ };
1083
+ imports.wbg.__wbg_height_8cce73e95fb10fd3 = function(arg0) {
1084
+ const ret = getObject(arg0).height;
1085
+ return ret;
1086
+ };
1087
+ imports.wbg.__wbg_setheight_2e9bab573f1775a6 = function(arg0, arg1) {
1088
+ getObject(arg0).height = arg1 >>> 0;
1089
+ };
1090
+ imports.wbg.__wbg_framebufferTextureMultiviewOVR_4d911c3fccedc517 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {
1091
+ getObject(arg0).framebufferTextureMultiviewOVR(arg1 >>> 0, arg2 >>> 0, getObject(arg3), arg4, arg5, arg6);
1092
+ };
1093
+ imports.wbg.__wbg_deltaX_84508d00a1050e70 = function(arg0) {
1094
+ const ret = getObject(arg0).deltaX;
1095
+ return ret;
1096
+ };
1097
+ imports.wbg.__wbg_deltaY_64823169afb0335d = function(arg0) {
1098
+ const ret = getObject(arg0).deltaY;
1099
+ return ret;
1100
+ };
1101
+ imports.wbg.__wbg_deltaMode_1c680147cfdba8a5 = function(arg0) {
1102
+ const ret = getObject(arg0).deltaMode;
1103
+ return ret;
1104
+ };
1105
+ imports.wbg.__wbg_charCode_75cea1a3a6d66388 = function(arg0) {
1106
+ const ret = getObject(arg0).charCode;
1107
+ return ret;
1108
+ };
1109
+ imports.wbg.__wbg_keyCode_dfa86be31f5ef90c = function(arg0) {
1110
+ const ret = getObject(arg0).keyCode;
1111
+ return ret;
1112
+ };
1113
+ imports.wbg.__wbg_altKey_612289acf855835c = function(arg0) {
1114
+ const ret = getObject(arg0).altKey;
1115
+ return ret;
1116
+ };
1117
+ imports.wbg.__wbg_ctrlKey_582686fb2263dd3c = function(arg0) {
1118
+ const ret = getObject(arg0).ctrlKey;
1119
+ return ret;
1120
+ };
1121
+ imports.wbg.__wbg_shiftKey_48e8701355d8e2d4 = function(arg0) {
1122
+ const ret = getObject(arg0).shiftKey;
1123
+ return ret;
1124
+ };
1125
+ imports.wbg.__wbg_metaKey_43193b7cc99f8914 = function(arg0) {
1126
+ const ret = getObject(arg0).metaKey;
1127
+ return ret;
1128
+ };
1129
+ imports.wbg.__wbg_key_8aeaa079126a9cc7 = function(arg0, arg1) {
1130
+ const ret = getObject(arg1).key;
1131
+ const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1132
+ const len1 = WASM_VECTOR_LEN;
1133
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
1134
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
1135
+ };
1136
+ imports.wbg.__wbg_code_96d6322b968b2d17 = function(arg0, arg1) {
1137
+ const ret = getObject(arg1).code;
1138
+ const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1139
+ const len1 = WASM_VECTOR_LEN;
1140
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
1141
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
1142
+ };
1143
+ imports.wbg.__wbg_getModifierState_5102ee8843516d2f = function(arg0, arg1, arg2) {
1144
+ const ret = getObject(arg0).getModifierState(getStringFromWasm0(arg1, arg2));
1145
+ return ret;
1146
+ };
1147
+ imports.wbg.__wbg_destination_9e793cf556243084 = function(arg0) {
1148
+ const ret = getObject(arg0).destination;
1149
+ return addHeapObject(ret);
1150
+ };
1151
+ imports.wbg.__wbg_currentTime_c6831b97750b898c = function(arg0) {
1152
+ const ret = getObject(arg0).currentTime;
1153
+ return ret;
1154
+ };
1155
+ imports.wbg.__wbg_newwithcontextoptions_3fb88aa326cd01e0 = function() { return handleError(function (arg0) {
1156
+ const ret = new lAudioContext(getObject(arg0));
1157
+ return addHeapObject(ret);
1158
+ }, arguments) };
1159
+ imports.wbg.__wbg_close_51aa5539747ce076 = function() { return handleError(function (arg0) {
1160
+ const ret = getObject(arg0).close();
1161
+ return addHeapObject(ret);
1162
+ }, arguments) };
1163
+ imports.wbg.__wbg_createBuffer_13cd030d2b48e8fa = function() { return handleError(function (arg0, arg1, arg2, arg3) {
1164
+ const ret = getObject(arg0).createBuffer(arg1 >>> 0, arg2 >>> 0, arg3);
1165
+ return addHeapObject(ret);
1166
+ }, arguments) };
1167
+ imports.wbg.__wbg_createBufferSource_58423f6345b5f559 = function() { return handleError(function (arg0) {
1168
+ const ret = getObject(arg0).createBufferSource();
1169
+ return addHeapObject(ret);
1170
+ }, arguments) };
1171
+ imports.wbg.__wbg_resume_9dc64ed7c3a65255 = function() { return handleError(function (arg0) {
1172
+ const ret = getObject(arg0).resume();
1173
+ return addHeapObject(ret);
1174
+ }, arguments) };
1175
+ imports.wbg.__wbg_addEventListener_5651108fc3ffeb6e = function() { return handleError(function (arg0, arg1, arg2, arg3) {
1176
+ getObject(arg0).addEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3));
1177
+ }, arguments) };
1178
+ imports.wbg.__wbg_addEventListener_a5963e26cd7b176b = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
1179
+ getObject(arg0).addEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3), getObject(arg4));
1180
+ }, arguments) };
1181
+ imports.wbg.__wbg_removeEventListener_1fa0d9594cdb0b1d = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
1182
+ getObject(arg0).removeEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3), getObject(arg4));
1183
+ }, arguments) };
1184
+ imports.wbg.__wbg_getGamepads_cbb82980ae1db5e1 = function() { return handleError(function (arg0) {
1185
+ const ret = getObject(arg0).getGamepads();
1186
+ return addHeapObject(ret);
1187
+ }, arguments) };
1188
+ imports.wbg.__wbg_drawArraysInstancedANGLE_01b862ba133350a3 = function(arg0, arg1, arg2, arg3, arg4) {
1189
+ getObject(arg0).drawArraysInstancedANGLE(arg1 >>> 0, arg2, arg3, arg4);
1190
+ };
1191
+ imports.wbg.__wbg_drawElementsInstancedANGLE_ea6343af8bf9c9f8 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
1192
+ getObject(arg0).drawElementsInstancedANGLE(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5);
1193
+ };
1194
+ imports.wbg.__wbg_vertexAttribDivisorANGLE_a8476eb778e16c70 = function(arg0, arg1, arg2) {
1195
+ getObject(arg0).vertexAttribDivisorANGLE(arg1 >>> 0, arg2 >>> 0);
1196
+ };
1197
+ imports.wbg.__wbg_setbuffer_beeece042e02534f = function(arg0, arg1) {
1198
+ getObject(arg0).buffer = getObject(arg1);
1199
+ };
1200
+ imports.wbg.__wbg_setonended_83dd83b7f84cdef2 = function(arg0, arg1) {
1201
+ getObject(arg0).onended = getObject(arg1);
1202
+ };
1203
+ imports.wbg.__wbg_start_99ecc2647eb67ca6 = function() { return handleError(function (arg0, arg1) {
1204
+ getObject(arg0).start(arg1);
1205
+ }, arguments) };
1206
+ imports.wbg.__wbg_maxChannelCount_a32b07796ef189d0 = function(arg0) {
1207
+ const ret = getObject(arg0).maxChannelCount;
1208
+ return ret;
1209
+ };
1210
+ imports.wbg.__wbg_setProperty_b95ef63ab852879e = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
1211
+ getObject(arg0).setProperty(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));
1212
+ }, arguments) };
1213
+ imports.wbg.__wbg_videoWidth_02eadb74917aa4fc = function(arg0) {
1214
+ const ret = getObject(arg0).videoWidth;
1215
+ return ret;
1216
+ };
1217
+ imports.wbg.__wbg_videoHeight_dac4c345988e5562 = function(arg0) {
1218
+ const ret = getObject(arg0).videoHeight;
1219
+ return ret;
1220
+ };
1221
+ imports.wbg.__wbg_parentElement_c75962bc9997ea5f = function(arg0) {
1222
+ const ret = getObject(arg0).parentElement;
1223
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1224
+ };
1225
+ imports.wbg.__wbg_appendChild_51339d4cde00ee22 = function() { return handleError(function (arg0, arg1) {
1226
+ const ret = getObject(arg0).appendChild(getObject(arg1));
1227
+ return addHeapObject(ret);
1228
+ }, arguments) };
1229
+ imports.wbg.__wbg_body_674aec4c1c0910cd = function(arg0) {
1230
+ const ret = getObject(arg0).body;
1231
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1232
+ };
1233
+ imports.wbg.__wbg_fullscreenElement_07d5b77ef6c958c1 = function(arg0) {
1234
+ const ret = getObject(arg0).fullscreenElement;
1235
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1236
+ };
1237
+ imports.wbg.__wbg_createElement_4891554b28d3388b = function() { return handleError(function (arg0, arg1, arg2) {
1238
+ const ret = getObject(arg0).createElement(getStringFromWasm0(arg1, arg2));
1239
+ return addHeapObject(ret);
1240
+ }, arguments) };
1241
+ imports.wbg.__wbg_exitFullscreen_5fada21e8623256e = function(arg0) {
1242
+ getObject(arg0).exitFullscreen();
1243
+ };
1244
+ imports.wbg.__wbg_exitPointerLock_bf425ac90f055faa = function(arg0) {
1245
+ getObject(arg0).exitPointerLock();
1246
+ };
1247
+ imports.wbg.__wbg_querySelector_52ded52c20e23921 = function() { return handleError(function (arg0, arg1, arg2) {
1248
+ const ret = getObject(arg0).querySelector(getStringFromWasm0(arg1, arg2));
1249
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1250
+ }, arguments) };
1251
+ imports.wbg.__wbg_getBoundingClientRect_ac9db8cf97ca8083 = function(arg0) {
1252
+ const ret = getObject(arg0).getBoundingClientRect();
1253
+ return addHeapObject(ret);
1254
+ };
1255
+ imports.wbg.__wbg_requestFullscreen_3545278bcd44910c = function() { return handleError(function (arg0) {
1256
+ getObject(arg0).requestFullscreen();
1257
+ }, arguments) };
1258
+ imports.wbg.__wbg_requestPointerLock_368c5cc6c3ddd339 = function(arg0) {
1259
+ getObject(arg0).requestPointerLock();
1260
+ };
1261
+ imports.wbg.__wbg_setAttribute_e7e80b478b7b8b2f = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
1262
+ getObject(arg0).setAttribute(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));
1263
+ }, arguments) };
1264
+ imports.wbg.__wbg_setPointerCapture_e7c29336490bba19 = function() { return handleError(function (arg0, arg1) {
1265
+ getObject(arg0).setPointerCapture(arg1);
1266
+ }, arguments) };
1267
+ imports.wbg.__wbg_style_3801009b2339aa94 = function(arg0) {
1268
+ const ret = getObject(arg0).style;
1269
+ return addHeapObject(ret);
1270
+ };
1271
+ imports.wbg.__wbg_bufferData_92a3e0b745b0d726 = function(arg0, arg1, arg2, arg3) {
1272
+ getObject(arg0).bufferData(arg1 >>> 0, arg2, arg3 >>> 0);
1273
+ };
1274
+ imports.wbg.__wbg_bufferData_a11a9f65f31e7256 = function(arg0, arg1, arg2, arg3) {
1275
+ getObject(arg0).bufferData(arg1 >>> 0, getObject(arg2), arg3 >>> 0);
1276
+ };
1277
+ imports.wbg.__wbg_bufferSubData_fca6f1c10273be21 = function(arg0, arg1, arg2, arg3) {
1278
+ getObject(arg0).bufferSubData(arg1 >>> 0, arg2, getObject(arg3));
1279
+ };
1280
+ imports.wbg.__wbg_compressedTexSubImage2D_21078c6de0a71aad = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) {
1281
+ getObject(arg0).compressedTexSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, getObject(arg8));
1282
+ };
1283
+ imports.wbg.__wbg_readPixels_91b0d8854de90477 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7) {
1284
+ getObject(arg0).readPixels(arg1, arg2, arg3, arg4, arg5 >>> 0, arg6 >>> 0, getObject(arg7));
1285
+ }, arguments) };
1286
+ imports.wbg.__wbg_texSubImage2D_f1a31f8045b7f831 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {
1287
+ getObject(arg0).texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, getObject(arg9));
1288
+ }, arguments) };
1289
+ imports.wbg.__wbg_uniform2fv_c928f6ba0085b381 = function(arg0, arg1, arg2, arg3) {
1290
+ getObject(arg0).uniform2fv(getObject(arg1), getArrayF32FromWasm0(arg2, arg3));
1291
+ };
1292
+ imports.wbg.__wbg_uniform2iv_7e5f8e7c2f4d4d6a = function(arg0, arg1, arg2, arg3) {
1293
+ getObject(arg0).uniform2iv(getObject(arg1), getArrayI32FromWasm0(arg2, arg3));
1294
+ };
1295
+ imports.wbg.__wbg_uniform3fv_1aba437b913c1926 = function(arg0, arg1, arg2, arg3) {
1296
+ getObject(arg0).uniform3fv(getObject(arg1), getArrayF32FromWasm0(arg2, arg3));
1297
+ };
1298
+ imports.wbg.__wbg_uniform3iv_23751fe4dfcdf539 = function(arg0, arg1, arg2, arg3) {
1299
+ getObject(arg0).uniform3iv(getObject(arg1), getArrayI32FromWasm0(arg2, arg3));
1300
+ };
1301
+ imports.wbg.__wbg_uniform4fv_7c51c2251d851cb2 = function(arg0, arg1, arg2, arg3) {
1302
+ getObject(arg0).uniform4fv(getObject(arg1), getArrayF32FromWasm0(arg2, arg3));
1303
+ };
1304
+ imports.wbg.__wbg_uniform4iv_27b49984e9c5d90a = function(arg0, arg1, arg2, arg3) {
1305
+ getObject(arg0).uniform4iv(getObject(arg1), getArrayI32FromWasm0(arg2, arg3));
1306
+ };
1307
+ imports.wbg.__wbg_uniformMatrix2fv_f8f3ef807f196bf1 = function(arg0, arg1, arg2, arg3, arg4) {
1308
+ getObject(arg0).uniformMatrix2fv(getObject(arg1), arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));
1309
+ };
1310
+ imports.wbg.__wbg_uniformMatrix3fv_341eec37953e50c5 = function(arg0, arg1, arg2, arg3, arg4) {
1311
+ getObject(arg0).uniformMatrix3fv(getObject(arg1), arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));
1312
+ };
1313
+ imports.wbg.__wbg_uniformMatrix4fv_465ab8de531f4f78 = function(arg0, arg1, arg2, arg3, arg4) {
1314
+ getObject(arg0).uniformMatrix4fv(getObject(arg1), arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));
1315
+ };
1316
+ imports.wbg.__wbg_activeTexture_93b4de60af07da9c = function(arg0, arg1) {
1317
+ getObject(arg0).activeTexture(arg1 >>> 0);
1318
+ };
1319
+ imports.wbg.__wbg_attachShader_b65b695055670cb5 = function(arg0, arg1, arg2) {
1320
+ getObject(arg0).attachShader(getObject(arg1), getObject(arg2));
1321
+ };
1322
+ imports.wbg.__wbg_bindBuffer_313561e5bc0e533f = function(arg0, arg1, arg2) {
1323
+ getObject(arg0).bindBuffer(arg1 >>> 0, getObject(arg2));
1324
+ };
1325
+ imports.wbg.__wbg_bindFramebuffer_56bf6536a4ced0ec = function(arg0, arg1, arg2) {
1326
+ getObject(arg0).bindFramebuffer(arg1 >>> 0, getObject(arg2));
1327
+ };
1328
+ imports.wbg.__wbg_bindRenderbuffer_559c7c6b6676dddd = function(arg0, arg1, arg2) {
1329
+ getObject(arg0).bindRenderbuffer(arg1 >>> 0, getObject(arg2));
1330
+ };
1331
+ imports.wbg.__wbg_bindTexture_9cb5c770d1ba2cca = function(arg0, arg1, arg2) {
1332
+ getObject(arg0).bindTexture(arg1 >>> 0, getObject(arg2));
1333
+ };
1334
+ imports.wbg.__wbg_blendColor_b9006ef6c450acd0 = function(arg0, arg1, arg2, arg3, arg4) {
1335
+ getObject(arg0).blendColor(arg1, arg2, arg3, arg4);
1336
+ };
1337
+ imports.wbg.__wbg_blendEquation_f31ce08020786a09 = function(arg0, arg1) {
1338
+ getObject(arg0).blendEquation(arg1 >>> 0);
1339
+ };
1340
+ imports.wbg.__wbg_blendEquationSeparate_7ec5e34f066e44f8 = function(arg0, arg1, arg2) {
1341
+ getObject(arg0).blendEquationSeparate(arg1 >>> 0, arg2 >>> 0);
1342
+ };
1343
+ imports.wbg.__wbg_blendFunc_fbe9d3a688fe71c3 = function(arg0, arg1, arg2) {
1344
+ getObject(arg0).blendFunc(arg1 >>> 0, arg2 >>> 0);
1345
+ };
1346
+ imports.wbg.__wbg_blendFuncSeparate_7547ade0a7dfade2 = function(arg0, arg1, arg2, arg3, arg4) {
1347
+ getObject(arg0).blendFuncSeparate(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, arg4 >>> 0);
1348
+ };
1349
+ imports.wbg.__wbg_colorMask_7cbd7a102954ede9 = function(arg0, arg1, arg2, arg3, arg4) {
1350
+ getObject(arg0).colorMask(arg1 !== 0, arg2 !== 0, arg3 !== 0, arg4 !== 0);
1351
+ };
1352
+ imports.wbg.__wbg_compileShader_d88d0a8cd9b72b4d = function(arg0, arg1) {
1353
+ getObject(arg0).compileShader(getObject(arg1));
1354
+ };
1355
+ imports.wbg.__wbg_copyTexSubImage2D_3029f8dfe7543ab6 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) {
1356
+ getObject(arg0).copyTexSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8);
1357
+ };
1358
+ imports.wbg.__wbg_createBuffer_59051f4461e7c5e2 = function(arg0) {
1359
+ const ret = getObject(arg0).createBuffer();
1360
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1361
+ };
1362
+ imports.wbg.__wbg_createFramebuffer_223c1212ad76affc = function(arg0) {
1363
+ const ret = getObject(arg0).createFramebuffer();
1364
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1365
+ };
1366
+ imports.wbg.__wbg_createProgram_88dbe21c0b682e1a = function(arg0) {
1367
+ const ret = getObject(arg0).createProgram();
1368
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1369
+ };
1370
+ imports.wbg.__wbg_createRenderbuffer_bcb61b756ba21490 = function(arg0) {
1371
+ const ret = getObject(arg0).createRenderbuffer();
1372
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1373
+ };
1374
+ imports.wbg.__wbg_createShader_9d7d388633caad18 = function(arg0, arg1) {
1375
+ const ret = getObject(arg0).createShader(arg1 >>> 0);
1376
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1377
+ };
1378
+ imports.wbg.__wbg_createTexture_9d0bb4d741b8ad76 = function(arg0) {
1379
+ const ret = getObject(arg0).createTexture();
1380
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1381
+ };
1382
+ imports.wbg.__wbg_cullFace_4c086dc1d86a19b5 = function(arg0, arg1) {
1383
+ getObject(arg0).cullFace(arg1 >>> 0);
1384
+ };
1385
+ imports.wbg.__wbg_deleteBuffer_cdc6b9c73f54aff7 = function(arg0, arg1) {
1386
+ getObject(arg0).deleteBuffer(getObject(arg1));
1387
+ };
1388
+ imports.wbg.__wbg_deleteFramebuffer_fcc10cb143c6573d = function(arg0, arg1) {
1389
+ getObject(arg0).deleteFramebuffer(getObject(arg1));
1390
+ };
1391
+ imports.wbg.__wbg_deleteProgram_d8d7fc79ba83b256 = function(arg0, arg1) {
1392
+ getObject(arg0).deleteProgram(getObject(arg1));
1393
+ };
1394
+ imports.wbg.__wbg_deleteRenderbuffer_edf9e1b4e0a1e005 = function(arg0, arg1) {
1395
+ getObject(arg0).deleteRenderbuffer(getObject(arg1));
1396
+ };
1397
+ imports.wbg.__wbg_deleteShader_9a2f85efe5cb3706 = function(arg0, arg1) {
1398
+ getObject(arg0).deleteShader(getObject(arg1));
1399
+ };
1400
+ imports.wbg.__wbg_deleteTexture_a883356c5034d482 = function(arg0, arg1) {
1401
+ getObject(arg0).deleteTexture(getObject(arg1));
1402
+ };
1403
+ imports.wbg.__wbg_depthFunc_4eda7b4e682acbad = function(arg0, arg1) {
1404
+ getObject(arg0).depthFunc(arg1 >>> 0);
1405
+ };
1406
+ imports.wbg.__wbg_depthMask_a3071e13bb087102 = function(arg0, arg1) {
1407
+ getObject(arg0).depthMask(arg1 !== 0);
1408
+ };
1409
+ imports.wbg.__wbg_depthRange_ff5298a73fd02650 = function(arg0, arg1, arg2) {
1410
+ getObject(arg0).depthRange(arg1, arg2);
1411
+ };
1412
+ imports.wbg.__wbg_disable_5cf2070641fa2ed7 = function(arg0, arg1) {
1413
+ getObject(arg0).disable(arg1 >>> 0);
1414
+ };
1415
+ imports.wbg.__wbg_disableVertexAttribArray_8dacd44e21adcaa2 = function(arg0, arg1) {
1416
+ getObject(arg0).disableVertexAttribArray(arg1 >>> 0);
1417
+ };
1418
+ imports.wbg.__wbg_drawArrays_d5c7dc2b2376c85a = function(arg0, arg1, arg2, arg3) {
1419
+ getObject(arg0).drawArrays(arg1 >>> 0, arg2, arg3);
1420
+ };
1421
+ imports.wbg.__wbg_enable_8965e69c596f0a94 = function(arg0, arg1) {
1422
+ getObject(arg0).enable(arg1 >>> 0);
1423
+ };
1424
+ imports.wbg.__wbg_enableVertexAttribArray_2b0475db43533cf2 = function(arg0, arg1) {
1425
+ getObject(arg0).enableVertexAttribArray(arg1 >>> 0);
1426
+ };
1427
+ imports.wbg.__wbg_framebufferRenderbuffer_d80f5381d429bc45 = function(arg0, arg1, arg2, arg3, arg4) {
1428
+ getObject(arg0).framebufferRenderbuffer(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, getObject(arg4));
1429
+ };
1430
+ imports.wbg.__wbg_framebufferTexture2D_953e69a8bec22fa9 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
1431
+ getObject(arg0).framebufferTexture2D(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, getObject(arg4), arg5);
1432
+ };
1433
+ imports.wbg.__wbg_frontFace_0ba67b9e6365557c = function(arg0, arg1) {
1434
+ getObject(arg0).frontFace(arg1 >>> 0);
1435
+ };
1436
+ imports.wbg.__wbg_getActiveUniform_87df972e841afed2 = function(arg0, arg1, arg2) {
1437
+ const ret = getObject(arg0).getActiveUniform(getObject(arg1), arg2 >>> 0);
1438
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1439
+ };
1440
+ imports.wbg.__wbg_getParameter_bfab7f0b00c9d7fb = function() { return handleError(function (arg0, arg1) {
1441
+ const ret = getObject(arg0).getParameter(arg1 >>> 0);
1442
+ return addHeapObject(ret);
1443
+ }, arguments) };
1444
+ imports.wbg.__wbg_getProgramInfoLog_0b7af4ad85fa52a4 = function(arg0, arg1, arg2) {
1445
+ const ret = getObject(arg1).getProgramInfoLog(getObject(arg2));
1446
+ var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1447
+ var len1 = WASM_VECTOR_LEN;
1448
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
1449
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
1450
+ };
1451
+ imports.wbg.__wbg_getProgramParameter_2a3735278367f8bc = function(arg0, arg1, arg2) {
1452
+ const ret = getObject(arg0).getProgramParameter(getObject(arg1), arg2 >>> 0);
1453
+ return addHeapObject(ret);
1454
+ };
1455
+ imports.wbg.__wbg_getShaderInfoLog_979aafa403ffb252 = function(arg0, arg1, arg2) {
1456
+ const ret = getObject(arg1).getShaderInfoLog(getObject(arg2));
1457
+ var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1458
+ var len1 = WASM_VECTOR_LEN;
1459
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
1460
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
1461
+ };
1462
+ imports.wbg.__wbg_getShaderParameter_e8054f1d9026fb70 = function(arg0, arg1, arg2) {
1463
+ const ret = getObject(arg0).getShaderParameter(getObject(arg1), arg2 >>> 0);
1464
+ return addHeapObject(ret);
1465
+ };
1466
+ imports.wbg.__wbg_getUniformLocation_688976233799a45a = function(arg0, arg1, arg2, arg3) {
1467
+ const ret = getObject(arg0).getUniformLocation(getObject(arg1), getStringFromWasm0(arg2, arg3));
1468
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1469
+ };
1470
+ imports.wbg.__wbg_linkProgram_9a2d12d120d99917 = function(arg0, arg1) {
1471
+ getObject(arg0).linkProgram(getObject(arg1));
1472
+ };
1473
+ imports.wbg.__wbg_pixelStorei_5ec932ebefd00149 = function(arg0, arg1, arg2) {
1474
+ getObject(arg0).pixelStorei(arg1 >>> 0, arg2);
1475
+ };
1476
+ imports.wbg.__wbg_polygonOffset_55eea57bba1b49e9 = function(arg0, arg1, arg2) {
1477
+ getObject(arg0).polygonOffset(arg1, arg2);
1478
+ };
1479
+ imports.wbg.__wbg_renderbufferStorage_4bcd9ddf1749ce26 = function(arg0, arg1, arg2, arg3, arg4) {
1480
+ getObject(arg0).renderbufferStorage(arg1 >>> 0, arg2 >>> 0, arg3, arg4);
1481
+ };
1482
+ imports.wbg.__wbg_scissor_c8ec3b1e053f3756 = function(arg0, arg1, arg2, arg3, arg4) {
1483
+ getObject(arg0).scissor(arg1, arg2, arg3, arg4);
1484
+ };
1485
+ imports.wbg.__wbg_shaderSource_f435f9b74440bb54 = function(arg0, arg1, arg2, arg3) {
1486
+ getObject(arg0).shaderSource(getObject(arg1), getStringFromWasm0(arg2, arg3));
1487
+ };
1488
+ imports.wbg.__wbg_stencilFuncSeparate_0fae0ee7c04a23b2 = function(arg0, arg1, arg2, arg3, arg4) {
1489
+ getObject(arg0).stencilFuncSeparate(arg1 >>> 0, arg2 >>> 0, arg3, arg4 >>> 0);
1490
+ };
1491
+ imports.wbg.__wbg_stencilMask_79416c29ac1ce3a4 = function(arg0, arg1) {
1492
+ getObject(arg0).stencilMask(arg1 >>> 0);
1493
+ };
1494
+ imports.wbg.__wbg_stencilMaskSeparate_19bdb57664d2c34f = function(arg0, arg1, arg2) {
1495
+ getObject(arg0).stencilMaskSeparate(arg1 >>> 0, arg2 >>> 0);
1496
+ };
1497
+ imports.wbg.__wbg_stencilOpSeparate_18e0bd316555925f = function(arg0, arg1, arg2, arg3, arg4) {
1498
+ getObject(arg0).stencilOpSeparate(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, arg4 >>> 0);
1499
+ };
1500
+ imports.wbg.__wbg_texParameteri_1f17358e51eb8069 = function(arg0, arg1, arg2, arg3) {
1501
+ getObject(arg0).texParameteri(arg1 >>> 0, arg2 >>> 0, arg3);
1502
+ };
1503
+ imports.wbg.__wbg_uniform1f_7586c5e17ad254c9 = function(arg0, arg1, arg2) {
1504
+ getObject(arg0).uniform1f(getObject(arg1), arg2);
1505
+ };
1506
+ imports.wbg.__wbg_uniform1i_9f94ef0ba6b3cc66 = function(arg0, arg1, arg2) {
1507
+ getObject(arg0).uniform1i(getObject(arg1), arg2);
1508
+ };
1509
+ imports.wbg.__wbg_uniform4f_9aa5afa9177c6ab1 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
1510
+ getObject(arg0).uniform4f(getObject(arg1), arg2, arg3, arg4, arg5);
1511
+ };
1512
+ imports.wbg.__wbg_useProgram_019eb6df066fabf5 = function(arg0, arg1) {
1513
+ getObject(arg0).useProgram(getObject(arg1));
1514
+ };
1515
+ imports.wbg.__wbg_vertexAttribPointer_ca11984ee8843c0a = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {
1516
+ getObject(arg0).vertexAttribPointer(arg1 >>> 0, arg2, arg3 >>> 0, arg4 !== 0, arg5, arg6);
1517
+ };
1518
+ imports.wbg.__wbg_viewport_6ebef187c89e2616 = function(arg0, arg1, arg2, arg3, arg4) {
1519
+ getObject(arg0).viewport(arg1, arg2, arg3, arg4);
1520
+ };
1521
+ imports.wbg.__wbg_setchannelCount_7b7457adf57e1c22 = function(arg0, arg1) {
1522
+ getObject(arg0).channelCount = arg1 >>> 0;
1523
+ };
1524
+ imports.wbg.__wbg_connect_3f8f5ba805800c62 = function() { return handleError(function (arg0, arg1) {
1525
+ const ret = getObject(arg0).connect(getObject(arg1));
1526
+ return addHeapObject(ret);
1527
+ }, arguments) };
1528
+ imports.wbg.__wbg_target_f171e89c61e2bccf = function(arg0) {
1529
+ const ret = getObject(arg0).target;
1530
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1531
+ };
1532
+ imports.wbg.__wbg_cancelBubble_90d1c3aa2a76cbeb = function(arg0) {
1533
+ const ret = getObject(arg0).cancelBubble;
1534
+ return ret;
1535
+ };
1536
+ imports.wbg.__wbg_preventDefault_24104f3f0a54546a = function(arg0) {
1537
+ getObject(arg0).preventDefault();
1538
+ };
1539
+ imports.wbg.__wbg_stopPropagation_55539cfa2506c867 = function(arg0) {
1540
+ getObject(arg0).stopPropagation();
1541
+ };
1542
+ imports.wbg.__wbg_matches_07c564b5b4101cf2 = function(arg0) {
1543
+ const ret = getObject(arg0).matches;
1544
+ return ret;
1545
+ };
1546
+ imports.wbg.__wbg_addListener_85fb6e4bd17e8878 = function() { return handleError(function (arg0, arg1) {
1547
+ getObject(arg0).addListener(getObject(arg1));
1548
+ }, arguments) };
1549
+ imports.wbg.__wbg_removeListener_3b62020874cfc3c7 = function() { return handleError(function (arg0, arg1) {
1550
+ getObject(arg0).removeListener(getObject(arg1));
1551
+ }, arguments) };
1552
+ imports.wbg.__wbg_size_6eb4aa794f6bf220 = function(arg0) {
1553
+ const ret = getObject(arg0).size;
1554
+ return ret;
1555
+ };
1556
+ imports.wbg.__wbg_type_37bb6b4936b5e027 = function(arg0) {
1557
+ const ret = getObject(arg0).type;
1558
+ return ret;
1559
+ };
1560
+ imports.wbg.__wbg_name_ebae3a7e89367611 = function(arg0, arg1) {
1561
+ const ret = getObject(arg1).name;
1562
+ const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1563
+ const len1 = WASM_VECTOR_LEN;
1564
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
1565
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
1566
+ };
1567
+ imports.wbg.__wbg_drawBuffersWEBGL_139bf2fe0c1522d6 = function(arg0, arg1) {
1568
+ getObject(arg0).drawBuffersWEBGL(getObject(arg1));
1569
+ };
1570
+ imports.wbg.__wbg_error_c9309504864e78b5 = function(arg0, arg1) {
1571
+ console.error(getObject(arg0), getObject(arg1));
1572
+ };
1573
+ imports.wbg.__wbg_instanceof_DomException_11f350c47999e343 = function(arg0) {
1574
+ let result;
1575
+ try {
1576
+ result = getObject(arg0) instanceof DOMException;
1577
+ } catch (_) {
1578
+ result = false;
1579
+ }
1580
+ const ret = result;
1581
+ return ret;
1582
+ };
1583
+ imports.wbg.__wbg_message_ad3cc15a4d40c34b = function(arg0, arg1) {
1584
+ const ret = getObject(arg1).message;
1585
+ const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1586
+ const len1 = WASM_VECTOR_LEN;
1587
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
1588
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
1589
+ };
1590
+ imports.wbg.__wbg_id_2744422b8df66a4f = function(arg0, arg1) {
1591
+ const ret = getObject(arg1).id;
1592
+ const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1593
+ const len1 = WASM_VECTOR_LEN;
1594
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
1595
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
1596
+ };
1597
+ imports.wbg.__wbg_index_3fa2bac9f2910f3e = function(arg0) {
1598
+ const ret = getObject(arg0).index;
1599
+ return ret;
1600
+ };
1601
+ imports.wbg.__wbg_mapping_4620edf85483600a = function(arg0) {
1602
+ const ret = getObject(arg0).mapping;
1603
+ return addHeapObject(ret);
1604
+ };
1605
+ imports.wbg.__wbg_connected_7a42d2777c81c280 = function(arg0) {
1606
+ const ret = getObject(arg0).connected;
1607
+ return ret;
1608
+ };
1609
+ imports.wbg.__wbg_buttons_a308922181d88094 = function(arg0) {
1610
+ const ret = getObject(arg0).buttons;
1611
+ return addHeapObject(ret);
1612
+ };
1613
+ imports.wbg.__wbg_axes_1b9e57ee3e48f6df = function(arg0) {
1614
+ const ret = getObject(arg0).axes;
1615
+ return addHeapObject(ret);
1616
+ };
1617
+ imports.wbg.__wbg_getRandomValues_37fa2ca9e4e07fab = function() { return handleError(function (arg0, arg1) {
1618
+ getObject(arg0).getRandomValues(getObject(arg1));
1619
+ }, arguments) };
1620
+ imports.wbg.__wbg_randomFillSync_dc1e9a60c158336d = function() { return handleError(function (arg0, arg1) {
1621
+ getObject(arg0).randomFillSync(takeObject(arg1));
1622
+ }, arguments) };
1623
+ imports.wbg.__wbg_crypto_c48a774b022d20ac = function(arg0) {
1624
+ const ret = getObject(arg0).crypto;
1625
+ return addHeapObject(ret);
1626
+ };
1627
+ imports.wbg.__wbindgen_is_object = function(arg0) {
1628
+ const val = getObject(arg0);
1629
+ const ret = typeof(val) === 'object' && val !== null;
1630
+ return ret;
1631
+ };
1632
+ imports.wbg.__wbg_process_298734cf255a885d = function(arg0) {
1633
+ const ret = getObject(arg0).process;
1634
+ return addHeapObject(ret);
1635
+ };
1636
+ imports.wbg.__wbg_versions_e2e78e134e3e5d01 = function(arg0) {
1637
+ const ret = getObject(arg0).versions;
1638
+ return addHeapObject(ret);
1639
+ };
1640
+ imports.wbg.__wbg_node_1cd7a5d853dbea79 = function(arg0) {
1641
+ const ret = getObject(arg0).node;
1642
+ return addHeapObject(ret);
1643
+ };
1644
+ imports.wbg.__wbindgen_is_string = function(arg0) {
1645
+ const ret = typeof(getObject(arg0)) === 'string';
1646
+ return ret;
1647
+ };
1648
+ imports.wbg.__wbg_msCrypto_bcb970640f50a1e8 = function(arg0) {
1649
+ const ret = getObject(arg0).msCrypto;
1650
+ return addHeapObject(ret);
1651
+ };
1652
+ imports.wbg.__wbg_require_8f08ceecec0f4fee = function() { return handleError(function () {
1653
+ const ret = module.require;
1654
+ return addHeapObject(ret);
1655
+ }, arguments) };
1656
+ imports.wbg.__wbindgen_is_function = function(arg0) {
1657
+ const ret = typeof(getObject(arg0)) === 'function';
1658
+ return ret;
1659
+ };
1660
+ imports.wbg.__wbg_get_44be0491f933a435 = function(arg0, arg1) {
1661
+ const ret = getObject(arg0)[arg1 >>> 0];
1662
+ return addHeapObject(ret);
1663
+ };
1664
+ imports.wbg.__wbg_length_fff51ee6522a1a18 = function(arg0) {
1665
+ const ret = getObject(arg0).length;
1666
+ return ret;
1667
+ };
1668
+ imports.wbg.__wbg_new_898a68150f225f2e = function() {
1669
+ const ret = new Array();
1670
+ return addHeapObject(ret);
1671
+ };
1672
+ imports.wbg.__wbg_newnoargs_581967eacc0e2604 = function(arg0, arg1) {
1673
+ const ret = new Function(getStringFromWasm0(arg0, arg1));
1674
+ return addHeapObject(ret);
1675
+ };
1676
+ imports.wbg.__wbg_get_97b561fb56f034b5 = function() { return handleError(function (arg0, arg1) {
1677
+ const ret = Reflect.get(getObject(arg0), getObject(arg1));
1678
+ return addHeapObject(ret);
1679
+ }, arguments) };
1680
+ imports.wbg.__wbg_call_cb65541d95d71282 = function() { return handleError(function (arg0, arg1) {
1681
+ const ret = getObject(arg0).call(getObject(arg1));
1682
+ return addHeapObject(ret);
1683
+ }, arguments) };
1684
+ imports.wbg.__wbg_new_b51585de1b234aff = function() {
1685
+ const ret = new Object();
1686
+ return addHeapObject(ret);
1687
+ };
1688
+ imports.wbg.__wbg_self_1ff1d729e9aae938 = function() { return handleError(function () {
1689
+ const ret = self.self;
1690
+ return addHeapObject(ret);
1691
+ }, arguments) };
1692
+ imports.wbg.__wbg_window_5f4faef6c12b79ec = function() { return handleError(function () {
1693
+ const ret = window.window;
1694
+ return addHeapObject(ret);
1695
+ }, arguments) };
1696
+ imports.wbg.__wbg_globalThis_1d39714405582d3c = function() { return handleError(function () {
1697
+ const ret = globalThis.globalThis;
1698
+ return addHeapObject(ret);
1699
+ }, arguments) };
1700
+ imports.wbg.__wbg_global_651f05c6a0944d1c = function() { return handleError(function () {
1701
+ const ret = global.global;
1702
+ return addHeapObject(ret);
1703
+ }, arguments) };
1704
+ imports.wbg.__wbindgen_is_undefined = function(arg0) {
1705
+ const ret = getObject(arg0) === undefined;
1706
+ return ret;
1707
+ };
1708
+ imports.wbg.__wbg_eval_8c72ad5eafe427f2 = function() { return handleError(function (arg0, arg1) {
1709
+ const ret = eval(getStringFromWasm0(arg0, arg1));
1710
+ return addHeapObject(ret);
1711
+ }, arguments) };
1712
+ imports.wbg.__wbg_of_053899a68de3ef48 = function(arg0) {
1713
+ const ret = Array.of(getObject(arg0));
1714
+ return addHeapObject(ret);
1715
+ };
1716
+ imports.wbg.__wbg_push_ca1c26067ef907ac = function(arg0, arg1) {
1717
+ const ret = getObject(arg0).push(getObject(arg1));
1718
+ return ret;
1719
+ };
1720
+ imports.wbg.__wbg_call_01734de55d61e11d = function() { return handleError(function (arg0, arg1, arg2) {
1721
+ const ret = getObject(arg0).call(getObject(arg1), getObject(arg2));
1722
+ return addHeapObject(ret);
1723
+ }, arguments) };
1724
+ imports.wbg.__wbg_now_9c5990bda04c7e53 = function() {
1725
+ const ret = Date.now();
1726
+ return ret;
1727
+ };
1728
+ imports.wbg.__wbg_is_205d914af04a8faa = function(arg0, arg1) {
1729
+ const ret = Object.is(getObject(arg0), getObject(arg1));
1730
+ return ret;
1731
+ };
1732
+ imports.wbg.__wbg_resolve_53698b95aaf7fcf8 = function(arg0) {
1733
+ const ret = Promise.resolve(getObject(arg0));
1734
+ return addHeapObject(ret);
1735
+ };
1736
+ imports.wbg.__wbg_then_f7e06ee3c11698eb = function(arg0, arg1) {
1737
+ const ret = getObject(arg0).then(getObject(arg1));
1738
+ return addHeapObject(ret);
1739
+ };
1740
+ imports.wbg.__wbg_then_b2267541e2a73865 = function(arg0, arg1, arg2) {
1741
+ const ret = getObject(arg0).then(getObject(arg1), getObject(arg2));
1742
+ return addHeapObject(ret);
1743
+ };
1744
+ imports.wbg.__wbg_buffer_085ec1f694018c4f = function(arg0) {
1745
+ const ret = getObject(arg0).buffer;
1746
+ return addHeapObject(ret);
1747
+ };
1748
+ imports.wbg.__wbg_newwithbyteoffsetandlength_828b952f0e692245 = function(arg0, arg1, arg2) {
1749
+ const ret = new Int8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);
1750
+ return addHeapObject(ret);
1751
+ };
1752
+ imports.wbg.__wbg_newwithbyteoffsetandlength_735ed5ea2ae07fe9 = function(arg0, arg1, arg2) {
1753
+ const ret = new Int16Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);
1754
+ return addHeapObject(ret);
1755
+ };
1756
+ imports.wbg.__wbg_newwithbyteoffsetandlength_9f43b22ab631d1d6 = function(arg0, arg1, arg2) {
1757
+ const ret = new Int32Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);
1758
+ return addHeapObject(ret);
1759
+ };
1760
+ imports.wbg.__wbg_newwithbyteoffsetandlength_6da8e527659b86aa = function(arg0, arg1, arg2) {
1761
+ const ret = new Uint8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);
1762
+ return addHeapObject(ret);
1763
+ };
1764
+ imports.wbg.__wbg_new_8125e318e6245eed = function(arg0) {
1765
+ const ret = new Uint8Array(getObject(arg0));
1766
+ return addHeapObject(ret);
1767
+ };
1768
+ imports.wbg.__wbg_set_5cf90238115182c3 = function(arg0, arg1, arg2) {
1769
+ getObject(arg0).set(getObject(arg1), arg2 >>> 0);
1770
+ };
1771
+ imports.wbg.__wbg_length_72e2208bbc0efc61 = function(arg0) {
1772
+ const ret = getObject(arg0).length;
1773
+ return ret;
1774
+ };
1775
+ imports.wbg.__wbg_newwithbyteoffsetandlength_31ff1024ef0c63c7 = function(arg0, arg1, arg2) {
1776
+ const ret = new Uint16Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);
1777
+ return addHeapObject(ret);
1778
+ };
1779
+ imports.wbg.__wbg_newwithbyteoffsetandlength_6df0e8c3efd2a5d3 = function(arg0, arg1, arg2) {
1780
+ const ret = new Uint32Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);
1781
+ return addHeapObject(ret);
1782
+ };
1783
+ imports.wbg.__wbg_newwithbyteoffsetandlength_69193e31c844b792 = function(arg0, arg1, arg2) {
1784
+ const ret = new Float32Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);
1785
+ return addHeapObject(ret);
1786
+ };
1787
+ imports.wbg.__wbg_newwithlength_e5d69174d6984cd7 = function(arg0) {
1788
+ const ret = new Uint8Array(arg0 >>> 0);
1789
+ return addHeapObject(ret);
1790
+ };
1791
+ imports.wbg.__wbg_subarray_13db269f57aa838d = function(arg0, arg1, arg2) {
1792
+ const ret = getObject(arg0).subarray(arg1 >>> 0, arg2 >>> 0);
1793
+ return addHeapObject(ret);
1794
+ };
1795
+ imports.wbg.__wbg_set_092e06b0f9d71865 = function() { return handleError(function (arg0, arg1, arg2) {
1796
+ const ret = Reflect.set(getObject(arg0), getObject(arg1), getObject(arg2));
1797
+ return ret;
1798
+ }, arguments) };
1799
+ imports.wbg.__wbindgen_debug_string = function(arg0, arg1) {
1800
+ const ret = debugString(getObject(arg1));
1801
+ const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1802
+ const len1 = WASM_VECTOR_LEN;
1803
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
1804
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
1805
+ };
1806
+ imports.wbg.__wbindgen_throw = function(arg0, arg1) {
1807
+ throw new Error(getStringFromWasm0(arg0, arg1));
1808
+ };
1809
+ imports.wbg.__wbindgen_memory = function() {
1810
+ const ret = wasm.memory;
1811
+ return addHeapObject(ret);
1812
+ };
1813
+ imports.wbg.__wbindgen_closure_wrapper2674 = function(arg0, arg1, arg2) {
1814
+ const ret = makeMutClosure(arg0, arg1, 1445, __wbg_adapter_34);
1815
+ return addHeapObject(ret);
1816
+ };
1817
+ imports.wbg.__wbindgen_closure_wrapper2676 = function(arg0, arg1, arg2) {
1818
+ const ret = makeMutClosure(arg0, arg1, 1445, __wbg_adapter_34);
1819
+ return addHeapObject(ret);
1820
+ };
1821
+ imports.wbg.__wbindgen_closure_wrapper2678 = function(arg0, arg1, arg2) {
1822
+ const ret = makeMutClosure(arg0, arg1, 1445, __wbg_adapter_34);
1823
+ return addHeapObject(ret);
1824
+ };
1825
+ imports.wbg.__wbindgen_closure_wrapper2680 = function(arg0, arg1, arg2) {
1826
+ const ret = makeMutClosure(arg0, arg1, 1445, __wbg_adapter_34);
1827
+ return addHeapObject(ret);
1828
+ };
1829
+ imports.wbg.__wbindgen_closure_wrapper2682 = function(arg0, arg1, arg2) {
1830
+ const ret = makeMutClosure(arg0, arg1, 1445, __wbg_adapter_34);
1831
+ return addHeapObject(ret);
1832
+ };
1833
+ imports.wbg.__wbindgen_closure_wrapper2684 = function(arg0, arg1, arg2) {
1834
+ const ret = makeMutClosure(arg0, arg1, 1445, __wbg_adapter_34);
1835
+ return addHeapObject(ret);
1836
+ };
1837
+ imports.wbg.__wbindgen_closure_wrapper2686 = function(arg0, arg1, arg2) {
1838
+ const ret = makeMutClosure(arg0, arg1, 1445, __wbg_adapter_47);
1839
+ return addHeapObject(ret);
1840
+ };
1841
+ imports.wbg.__wbindgen_closure_wrapper2688 = function(arg0, arg1, arg2) {
1842
+ const ret = makeMutClosure(arg0, arg1, 1445, __wbg_adapter_34);
1843
+ return addHeapObject(ret);
1844
+ };
1845
+ imports.wbg.__wbindgen_closure_wrapper2690 = function(arg0, arg1, arg2) {
1846
+ const ret = makeMutClosure(arg0, arg1, 1445, __wbg_adapter_34);
1847
+ return addHeapObject(ret);
1848
+ };
1849
+ imports.wbg.__wbindgen_closure_wrapper3134 = function(arg0, arg1, arg2) {
1850
+ const ret = makeMutClosure(arg0, arg1, 1741, __wbg_adapter_54);
1851
+ return addHeapObject(ret);
1852
+ };
1853
+ imports.wbg.__wbindgen_closure_wrapper25383 = function(arg0, arg1, arg2) {
1854
+ const ret = makeMutClosure(arg0, arg1, 17487, __wbg_adapter_57);
1855
+ return addHeapObject(ret);
1856
+ };
1857
+ imports.wbg.__wbindgen_closure_wrapper51161 = function(arg0, arg1, arg2) {
1858
+ const ret = makeMutClosure(arg0, arg1, 34616, __wbg_adapter_60);
1859
+ return addHeapObject(ret);
1860
+ };
1861
+
1862
+ return imports;
1863
+ }
1864
+
1865
+ function __wbg_init_memory(imports, maybe_memory) {
1866
+
1867
+ }
1868
+
1869
+ function __wbg_finalize_init(instance, module) {
1870
+ wasm = instance.exports;
1871
+ __wbg_init.__wbindgen_wasm_module = module;
1872
+ cachedFloat32Memory0 = null;
1873
+ cachedFloat64Memory0 = null;
1874
+ cachedInt32Memory0 = null;
1875
+ cachedUint32Memory0 = null;
1876
+ cachedUint8Memory0 = null;
1877
+
1878
+ wasm.__wbindgen_start();
1879
+ return wasm;
1880
+ }
1881
+
1882
+ function initSync(module) {
1883
+ if (wasm !== undefined) return wasm;
1884
+
1885
+ const imports = __wbg_get_imports();
1886
+
1887
+ __wbg_init_memory(imports);
1888
+
1889
+ if (!(module instanceof WebAssembly.Module)) {
1890
+ module = new WebAssembly.Module(module);
1891
+ }
1892
+
1893
+ const instance = new WebAssembly.Instance(module, imports);
1894
+
1895
+ return __wbg_finalize_init(instance, module);
1896
+ }
1897
+
1898
+ async function __wbg_init(input) {
1899
+ if (wasm !== undefined) return wasm;
1900
+
1901
+ if (typeof input === 'undefined') {
1902
+ input = new URL('sandbox_bevy_bg.wasm', import.meta.url);
1903
+ }
1904
+ const imports = __wbg_get_imports();
1905
+
1906
+ if (typeof input === 'string' || (typeof Request === 'function' && input instanceof Request) || (typeof URL === 'function' && input instanceof URL)) {
1907
+ input = fetch(input);
1908
+ }
1909
+
1910
+ __wbg_init_memory(imports);
1911
+
1912
+ const { instance, module } = await __wbg_load(await input, imports);
1913
+
1914
+ return __wbg_finalize_init(instance, module);
1915
+ }
1916
+
1917
+ export { initSync }
1918
+ export default __wbg_init;
rust/out/sandbox_bevy_bg.wasm ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:7736eef93a22c0f7e5efb0677aae9b6e835ed4d674b472158e39a7d5174951dc
3
+ size 28537081
rust/out/sandbox_bevy_bg.wasm.d.ts ADDED
@@ -0,0 +1,62 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ export const memory: WebAssembly.Memory;
4
+ export function main(a: number, b: number): number;
5
+ export function wgpu_compute_pass_set_pipeline(a: number, b: number): void;
6
+ export function wgpu_compute_pass_set_bind_group(a: number, b: number, c: number, d: number, e: number): void;
7
+ export function wgpu_compute_pass_set_push_constant(a: number, b: number, c: number, d: number): void;
8
+ export function wgpu_compute_pass_insert_debug_marker(a: number, b: number, c: number): void;
9
+ export function wgpu_compute_pass_push_debug_group(a: number, b: number, c: number): void;
10
+ export function wgpu_compute_pass_pop_debug_group(a: number): void;
11
+ export function wgpu_compute_pass_write_timestamp(a: number, b: number, c: number): void;
12
+ export function wgpu_compute_pass_begin_pipeline_statistics_query(a: number, b: number, c: number): void;
13
+ export function wgpu_compute_pass_end_pipeline_statistics_query(a: number): void;
14
+ export function wgpu_compute_pass_dispatch_workgroups(a: number, b: number, c: number, d: number): void;
15
+ export function wgpu_compute_pass_dispatch_workgroups_indirect(a: number, b: number, c: number): void;
16
+ export function wgpu_render_bundle_set_pipeline(a: number, b: number): void;
17
+ export function wgpu_render_bundle_set_bind_group(a: number, b: number, c: number, d: number, e: number): void;
18
+ export function wgpu_render_bundle_set_vertex_buffer(a: number, b: number, c: number, d: number, e: number): void;
19
+ export function wgpu_render_bundle_set_push_constants(a: number, b: number, c: number, d: number, e: number): void;
20
+ export function wgpu_render_bundle_draw(a: number, b: number, c: number, d: number, e: number): void;
21
+ export function wgpu_render_bundle_draw_indexed(a: number, b: number, c: number, d: number, e: number, f: number): void;
22
+ export function wgpu_render_bundle_draw_indirect(a: number, b: number, c: number): void;
23
+ export function wgpu_render_bundle_draw_indexed_indirect(a: number, b: number, c: number): void;
24
+ export function wgpu_render_pass_set_pipeline(a: number, b: number): void;
25
+ export function wgpu_render_pass_set_bind_group(a: number, b: number, c: number, d: number, e: number): void;
26
+ export function wgpu_render_pass_set_vertex_buffer(a: number, b: number, c: number, d: number, e: number): void;
27
+ export function wgpu_render_pass_set_push_constants(a: number, b: number, c: number, d: number, e: number): void;
28
+ export function wgpu_render_pass_draw(a: number, b: number, c: number, d: number, e: number): void;
29
+ export function wgpu_render_pass_draw_indexed(a: number, b: number, c: number, d: number, e: number, f: number): void;
30
+ export function wgpu_render_pass_draw_indirect(a: number, b: number, c: number): void;
31
+ export function wgpu_render_pass_draw_indexed_indirect(a: number, b: number, c: number): void;
32
+ export function wgpu_render_pass_multi_draw_indirect(a: number, b: number, c: number, d: number): void;
33
+ export function wgpu_render_pass_multi_draw_indexed_indirect(a: number, b: number, c: number, d: number): void;
34
+ export function wgpu_render_pass_multi_draw_indirect_count(a: number, b: number, c: number, d: number, e: number, f: number): void;
35
+ export function wgpu_render_pass_multi_draw_indexed_indirect_count(a: number, b: number, c: number, d: number, e: number, f: number): void;
36
+ export function wgpu_render_pass_set_blend_constant(a: number, b: number): void;
37
+ export function wgpu_render_pass_set_scissor_rect(a: number, b: number, c: number, d: number, e: number): void;
38
+ export function wgpu_render_pass_set_viewport(a: number, b: number, c: number, d: number, e: number, f: number, g: number): void;
39
+ export function wgpu_render_pass_set_stencil_reference(a: number, b: number): void;
40
+ export function wgpu_render_pass_insert_debug_marker(a: number, b: number, c: number): void;
41
+ export function wgpu_render_pass_push_debug_group(a: number, b: number, c: number): void;
42
+ export function wgpu_render_pass_pop_debug_group(a: number): void;
43
+ export function wgpu_render_pass_write_timestamp(a: number, b: number, c: number): void;
44
+ export function wgpu_render_pass_begin_pipeline_statistics_query(a: number, b: number, c: number): void;
45
+ export function wgpu_render_pass_end_pipeline_statistics_query(a: number): void;
46
+ export function wgpu_render_pass_execute_bundles(a: number, b: number, c: number): void;
47
+ export function wgpu_render_bundle_set_index_buffer(a: number, b: number, c: number, d: number, e: number): void;
48
+ export function wgpu_render_bundle_pop_debug_group(a: number): void;
49
+ export function wgpu_render_bundle_insert_debug_marker(a: number, b: number): void;
50
+ export function wgpu_render_bundle_push_debug_group(a: number, b: number): void;
51
+ export function wgpu_render_pass_set_index_buffer(a: number, b: number, c: number, d: number, e: number): void;
52
+ export function __wbindgen_malloc(a: number, b: number): number;
53
+ export function __wbindgen_realloc(a: number, b: number, c: number, d: number): number;
54
+ export const __wbindgen_export_2: WebAssembly.Table;
55
+ export function _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h087aa75c2ef422bf(a: number, b: number, c: number): void;
56
+ export function _dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h7b2cdb1004d79a48(a: number, b: number): void;
57
+ export function _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__haccacba5b48e204b(a: number, b: number, c: number): void;
58
+ export function _dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hb967268334a36223(a: number, b: number): void;
59
+ export function _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h25604c97ab01cac0(a: number, b: number, c: number): void;
60
+ export function __wbindgen_free(a: number, b: number, c: number): void;
61
+ export function __wbindgen_exn_store(a: number): void;
62
+ export function __wbindgen_start(): void;
rust/rustfmt.toml ADDED
@@ -0,0 +1 @@
 
 
1
+ max_width = 120
rust/screenshots/data.png ADDED
rust/screenshots/thumbnail.png ADDED
rust/src/blood.rs ADDED
@@ -0,0 +1,100 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ use bevy::prelude::*;
2
+ use crate::utils::constants::{GAME_RESOLUTION_X, GAME_RESOLUTION_Y, BLOOD_SAFE_TIME};
3
+ use crate::utils::boundaries::is_within_boundaries;
4
+ use crate::grid::{Grid, GridPosition};
5
+ use crate::grain::{GrainType, Direction};
6
+
7
+ fn move_grain(transform: &mut Transform, grid_position: &mut GridPosition, x: i32, y: i32) {
8
+ transform.translation.x += x as f32;
9
+ transform.translation.y -= y as f32;
10
+ grid_position.prev_x = Some(grid_position.current_x);
11
+ grid_position.prev_y = Some(grid_position.current_y);
12
+ grid_position.current_x += x;
13
+ grid_position.current_y += y;
14
+ }
15
+
16
+ pub fn handle_blood_grain(
17
+ transform: &mut Transform,
18
+ grid_position: &mut GridPosition,
19
+ grid_data: &Grid,
20
+ direction: &mut Direction,
21
+ lifetime: u32
22
+ ) {
23
+ // Ensure coordinates are in the grid
24
+ if is_within_boundaries(grid_position, GAME_RESOLUTION_X as i32, GAME_RESOLUTION_Y as i32) {
25
+
26
+ let maybe_grain_below = grid_data.get(grid_position.current_x as usize, (grid_position.current_y + 1) as usize);
27
+ let maybe_grain_right = grid_data.get((grid_position.current_x + 1) as usize, grid_position.current_y as usize);
28
+ let maybe_grain_left = grid_data.get((grid_position.current_x - 1) as usize, grid_position.current_y as usize);
29
+
30
+ match maybe_grain_below {
31
+ Some(_) => {
32
+
33
+ // Do nothing (to avoid grain behavior in the air just after spawning)
34
+ if lifetime < 5 {
35
+ return;
36
+ }
37
+
38
+ // There is a grain below, try moving
39
+ match (maybe_grain_left, maybe_grain_right) {
40
+ (Some(_), None) => match direction {
41
+ Direction::Left => {
42
+ if lifetime < BLOOD_SAFE_TIME {
43
+ *direction = Direction::Right;
44
+ }
45
+ }
46
+ Direction::Right => move_grain(transform, grid_position, 1, 0)
47
+ },
48
+ (None, Some(_)) => match direction {
49
+ Direction::Left => move_grain(transform, grid_position, -1, 0),
50
+ Direction::Right => {
51
+ if lifetime < BLOOD_SAFE_TIME {
52
+ *direction = Direction::Left;
53
+ }
54
+ }
55
+ },
56
+ (None, None) => {
57
+ match *direction {
58
+ Direction::Right => move_grain(transform, grid_position, 1, 0),
59
+ Direction::Left => move_grain(transform, grid_position, -1, 0)
60
+ }
61
+ }
62
+ (Some(_), Some(_)) => { /* Do nothing, stay in place */ }
63
+ }
64
+ }
65
+ None => {
66
+ // No grain below, just fall
67
+ move_grain(transform, grid_position, 0, 1)
68
+ }
69
+ }
70
+ }
71
+ }
72
+
73
+ /*
74
+
75
+ 🦀 Systems. Learn more: https://bevy-cheatbook.github.io/programming/systems.html
76
+
77
+ */
78
+
79
+ pub fn shade_blood(
80
+ mut query: Query<(&GrainType, &mut GridPosition, &mut Handle<Image>)>,
81
+ grid_data: ResMut<Grid>,
82
+ asset_server: Res<AssetServer>,
83
+ ) {
84
+ for (grain_type, grid_position, mut texture_handle) in query.iter_mut() {
85
+
86
+ let maybe_grain_above = grid_data.get(grid_position.current_x as usize, (grid_position.current_y - 1) as usize);
87
+
88
+ match grain_type {
89
+ GrainType::Blood => match maybe_grain_above {
90
+ None => {
91
+ *texture_handle = asset_server.load("blood_1.png");
92
+ }
93
+ _ => {
94
+ *texture_handle = asset_server.load("blood_2.png");
95
+ }
96
+ },
97
+ _ => {}
98
+ }
99
+ }
100
+ }
rust/src/bone.rs ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ use crate::grain::GrainType;
2
+ use crate::grid::{Grid, GridPosition};
3
+ use crate::utils::boundaries::is_within_boundaries;
4
+ use crate::utils::constants::{GAME_RESOLUTION_X, GAME_RESOLUTION_Y};
5
+
6
+
7
+
8
+ pub fn handle_bone_grain(grid_position: &GridPosition, grid_data: &Grid) {
9
+ // Ensure coordinates are in the grid
10
+ if is_within_boundaries(grid_position, GAME_RESOLUTION_X as i32, GAME_RESOLUTION_Y as i32) {
11
+ let maybe_grain_above = grid_data.get(grid_position.current_x as usize, (grid_position.current_y - 1) as usize);
12
+
13
+ if let Some(grain_above) = maybe_grain_above {
14
+ match grain_above {
15
+ GrainType::Blood => {
16
+ // Not used but some ideas:
17
+ // Tint the bone to red-ish color
18
+ // Break the bone after X lifetime (think to add the lifetime component to the bone entity)
19
+ }
20
+ _ => {}
21
+ }
22
+ }
23
+ }
24
+ }
rust/src/grain.rs ADDED
@@ -0,0 +1,163 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ use crate::blood::handle_blood_grain;
2
+ use crate::bone::handle_bone_grain;
3
+ use crate::grid::{Grid, GridPosition};
4
+ use crate::utils::constants::{GAME_RESOLUTION_X, GAME_RESOLUTION_Y, WINDOW_SIZE};
5
+ use crate::utils::remap::remap_cursor_position;
6
+ use crate::utils::tick::TickCounter;
7
+ use bevy::prelude::*;
8
+ use bevy::sprite::Anchor;
9
+ use rand::Rng;
10
+
11
+ /*
12
+
13
+ 🦀 Components. Learn more: https://bevy-cheatbook.github.io/programming/res.html
14
+
15
+ */
16
+
17
+ #[derive(Component)]
18
+ pub struct Grain;
19
+
20
+ #[derive(Component)]
21
+ pub struct Lifetime(u32);
22
+
23
+ #[derive(Component, Clone, Copy, Debug)]
24
+ pub enum GrainType {
25
+ Bone,
26
+ Blood,
27
+ }
28
+
29
+ #[derive(Component, PartialEq)]
30
+ pub enum Direction {
31
+ Right,
32
+ Left,
33
+ }
34
+
35
+ /*
36
+
37
+ 🦀 Systems. Learn more: https://bevy-cheatbook.github.io/programming/systems.html
38
+
39
+ */
40
+
41
+ pub fn add_grain(
42
+ mut commands: Commands,
43
+ query: Query<&Window>,
44
+ asset_server: Res<AssetServer>,
45
+ input: Res<Input<MouseButton>>,
46
+ ) {
47
+ if let Some(position) = query.single().cursor_position() {
48
+ let remaped_cursor_pos = remap_cursor_position(position, WINDOW_SIZE, [GAME_RESOLUTION_X, GAME_RESOLUTION_Y]);
49
+ let mut rng = rand::thread_rng();
50
+
51
+ if input.pressed(MouseButton::Left) {
52
+ // Create a bone sprite texture
53
+ let bone_textures: [&str; 3] = ["bone_1.png", "bone_2.png", "bone_3.png"];
54
+ let random_index = rng.gen_range(0..bone_textures.len());
55
+
56
+ let bone_sprite_bundle = SpriteBundle {
57
+ sprite: Sprite {
58
+ custom_size: Some(Vec2::new(1.0, 1.0)),
59
+ anchor: Anchor::TopLeft,
60
+ ..default()
61
+ },
62
+ texture: asset_server.load(bone_textures[random_index]),
63
+ ..default()
64
+ };
65
+
66
+ // Add a data row (entity) with it's set of components
67
+ commands
68
+ .spawn((
69
+ Grain,
70
+ bone_sprite_bundle,
71
+ GrainType::Bone,
72
+ GridPosition {
73
+ current_x: remaped_cursor_pos.x.round() as i32,
74
+ current_y: remaped_cursor_pos.y.round() as i32,
75
+ prev_x: None,
76
+ prev_y: None,
77
+ },
78
+ ))
79
+ .insert(Transform {
80
+ translation: Vec3::new(
81
+ remaped_cursor_pos.x.round() - (GAME_RESOLUTION_X as f32 / 2.0),
82
+ -(remaped_cursor_pos.y.round() - (GAME_RESOLUTION_Y as f32 / 2.0)),
83
+ 0.0,
84
+ ),
85
+ ..default()
86
+ });
87
+ }
88
+
89
+ if input.pressed(MouseButton::Right) {
90
+ // Creat a blood sprite texture
91
+ let blood_sprite_bundle = SpriteBundle {
92
+ sprite: Sprite {
93
+ custom_size: Some(Vec2::new(1.0, 1.0)),
94
+ anchor: Anchor::TopLeft,
95
+ ..default()
96
+ },
97
+ texture: asset_server.load("blood_2.png"),
98
+ ..default()
99
+ };
100
+
101
+ // Pick a random direction to slide toward
102
+ let random_number = rng.gen::<f32>();
103
+
104
+ let random_direction = if random_number < 0.5 {
105
+ Direction::Left
106
+ } else {
107
+ Direction::Right
108
+ };
109
+
110
+ // Add a data row (entity) with it's set of components
111
+ commands
112
+ .spawn((
113
+ Grain,
114
+ Lifetime(0),
115
+ blood_sprite_bundle,
116
+ GrainType::Blood,
117
+ random_direction,
118
+ GridPosition {
119
+ current_x: remaped_cursor_pos.x.round() as i32,
120
+ current_y: remaped_cursor_pos.y.round() as i32,
121
+ prev_x: None,
122
+ prev_y: None,
123
+ },
124
+ ))
125
+ .insert(Transform {
126
+ translation: Vec3::new(
127
+ remaped_cursor_pos.x.round() - (GAME_RESOLUTION_X as f32 / 2.0),
128
+ -(remaped_cursor_pos.y.round() - (GAME_RESOLUTION_Y as f32 / 2.0)),
129
+ 0.0,
130
+ ),
131
+ ..default()
132
+ });
133
+ }
134
+ }
135
+ }
136
+
137
+ pub fn update_grain(
138
+ grid_data: Res<Grid>,
139
+ mut query: Query<(
140
+ &mut Transform,
141
+ &mut GridPosition,
142
+ &GrainType,
143
+ &mut Lifetime,
144
+ Option<&mut Direction>,
145
+ )>,
146
+ mut tick_counter: ResMut<TickCounter>,
147
+ ) {
148
+ tick_counter.count += 1;
149
+ if tick_counter.count >= tick_counter.tick_rate {
150
+ tick_counter.count = 0;
151
+ for (mut transform, mut grid_position, grain_type, mut lifetime, direction) in query.iter_mut() {
152
+ lifetime.0 += 1;
153
+ match grain_type {
154
+ GrainType::Bone => handle_bone_grain(&grid_position, &grid_data),
155
+ GrainType::Blood => {
156
+ if let Some(mut dir) = direction {
157
+ handle_blood_grain(&mut transform, &mut grid_position, &grid_data, &mut dir, lifetime.0);
158
+ }
159
+ }
160
+ }
161
+ }
162
+ }
163
+ }
rust/src/grid.rs ADDED
@@ -0,0 +1,79 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ use crate::grain::GrainType;
2
+ use crate::utils::constants::{GAME_RESOLUTION_X, GAME_RESOLUTION_Y};
3
+ use bevy::prelude::*;
4
+
5
+ /*
6
+
7
+ 🦀 Resources and Components. Learn more: https://bevy-cheatbook.github.io/programming/res.html
8
+
9
+ */
10
+
11
+ #[derive(Resource)]
12
+ pub struct Grid {
13
+ data: [[Option<GrainType>; GAME_RESOLUTION_X]; GAME_RESOLUTION_Y],
14
+ }
15
+
16
+ impl Grid {
17
+ pub fn new() -> Grid {
18
+ Grid {
19
+ data: [[None; GAME_RESOLUTION_X]; GAME_RESOLUTION_Y],
20
+ }
21
+ }
22
+
23
+ pub fn get(&self, x: usize, y: usize) -> Option<GrainType> {
24
+ if x < GAME_RESOLUTION_X && y < GAME_RESOLUTION_Y {
25
+ self.data[y][x]
26
+ } else {
27
+ None
28
+ }
29
+ }
30
+
31
+ pub fn set(&mut self, x: usize, y: usize, value: GrainType) {
32
+ if x < GAME_RESOLUTION_X && y < GAME_RESOLUTION_Y {
33
+ self.data[y][x] = Some(value);
34
+ }
35
+ }
36
+ }
37
+
38
+ #[derive(Component)]
39
+ pub struct GridPosition {
40
+ pub current_x: i32,
41
+ pub current_y: i32,
42
+ pub prev_x: Option<i32>,
43
+ pub prev_y: Option<i32>,
44
+ }
45
+
46
+ /*
47
+
48
+ 🦀 Systems. Learn more: https://bevy-cheatbook.github.io/programming/systems.html
49
+
50
+ */
51
+
52
+ pub fn update_grid_data(mut query: Query<(&GrainType, &mut GridPosition)>, mut grid_data: ResMut<Grid>) {
53
+ for (grain_type, mut grid_position) in query.iter_mut() {
54
+ // Clear the previous position from the grid
55
+ if let (Some(prev_x), Some(prev_y)) = (grid_position.prev_x, grid_position.prev_y) {
56
+ if prev_x >= 0 && prev_y >= 0 && prev_x < GAME_RESOLUTION_X as i32 && prev_y < GAME_RESOLUTION_Y as i32 {
57
+ grid_data.data[prev_y as usize][prev_x as usize] = None;
58
+ }
59
+ }
60
+
61
+ // Boundary checks for current positions
62
+ if grid_position.current_x >= 0
63
+ && grid_position.current_x < GAME_RESOLUTION_X as i32
64
+ && grid_position.current_y >= 0
65
+ && grid_position.current_y < GAME_RESOLUTION_Y as i32
66
+ {
67
+ // Update the grid with the new position
68
+ grid_data.set(
69
+ grid_position.current_x as usize,
70
+ grid_position.current_y as usize,
71
+ *grain_type,
72
+ );
73
+ }
74
+
75
+ // Update prev for next frame
76
+ grid_position.prev_x = Some(grid_position.current_x);
77
+ grid_position.prev_y = Some(grid_position.current_y);
78
+ }
79
+ }
rust/src/main.rs ADDED
@@ -0,0 +1,60 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ mod blood;
2
+ mod bone;
3
+ mod grain;
4
+ mod grid;
5
+ mod setup;
6
+ mod utils;
7
+
8
+ use crate::blood::shade_blood;
9
+ use crate::grain::{add_grain, update_grain};
10
+ use crate::grid::{update_grid_data, Grid};
11
+ use crate::setup::setup;
12
+ use crate::utils::constants::{TICK_RATE, WINDOW_SIZE};
13
+ use crate::utils::tick::TickCounter;
14
+
15
+ use bevy::prelude::*;
16
+ use bevy::window::PresentMode;
17
+ use bevy_pixel_camera::PixelCameraPlugin;
18
+
19
+ /*
20
+
21
+ 🦀 Main function, used to:
22
+ - Add Ressources -> Resources are global data we can use later across Systems, independently of entities. Learn more: https://bevy-cheatbook.github.io/programming/res.html
23
+ - Register Systems -> Think Bevy ECS Systems like a database, Systems are a way to "query" our data to implement game logic. Learn more: https://bevy-cheatbook.github.io/programming/systems.html
24
+ - Run our app
25
+
26
+ */
27
+
28
+ fn main() {
29
+ App::new()
30
+ .add_plugins((
31
+ DefaultPlugins
32
+ .set(ImagePlugin::default_nearest())
33
+ .set(WindowPlugin {
34
+ primary_window: Some(Window {
35
+ title: "Hell".into(),
36
+ resolution: (WINDOW_SIZE[0], WINDOW_SIZE[1]).into(),
37
+ resizable: false,
38
+ present_mode: PresentMode::AutoVsync,
39
+ // Used to run the game in my own Canvas in my Svelte web app
40
+ canvas: Some("#bevy-canvas".to_string()),
41
+ ..default()
42
+ }),
43
+ ..default()
44
+ })
45
+ .build(),
46
+ PixelCameraPlugin,
47
+ ))
48
+ .insert_resource(ClearColor(Color::hex("221e22").unwrap()))
49
+ .insert_resource(TickCounter {
50
+ count: 0,
51
+ tick_rate: TICK_RATE,
52
+ })
53
+ .insert_resource(Grid::new())
54
+ .add_systems(Startup, setup)
55
+ .add_systems(Update, add_grain)
56
+ .add_systems(Update, update_grain)
57
+ .add_systems(Update, update_grid_data)
58
+ .add_systems(Update, shade_blood)
59
+ .run();
60
+ }
rust/src/setup.rs ADDED
@@ -0,0 +1,17 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ use crate::utils::constants::{GAME_RESOLUTION_X, GAME_RESOLUTION_Y};
2
+ use bevy::prelude::*;
3
+ use bevy_pixel_camera::PixelCameraBundle;
4
+
5
+ /*
6
+
7
+ 🦀 Add a new entity with the camera components
8
+
9
+ */
10
+
11
+ pub fn setup(mut commands: Commands) {
12
+ commands.spawn(PixelCameraBundle::from_resolution(
13
+ GAME_RESOLUTION_X as i32,
14
+ GAME_RESOLUTION_Y as i32,
15
+ true,
16
+ ));
17
+ }
rust/src/utils/boundaries.rs ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ use crate::grid::GridPosition;
2
+
3
+
4
+
5
+ pub fn is_within_boundaries(grid_position: &GridPosition, res_x: i32, res_y: i32) -> bool {
6
+ grid_position.current_x >= 1
7
+ && grid_position.current_x < res_x - 1
8
+ && grid_position.current_y >= 0
9
+ && grid_position.current_y < res_y - 1
10
+ }
rust/src/utils/constants.rs ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ pub const GAME_RESOLUTION_X: usize = 80; // Change the game resolution for finer grains, ex: 160x120
2
+ pub const GAME_RESOLUTION_Y: usize = 60;
3
+ pub const WINDOW_SIZE: [f32; 2] = [640.0, 480.0];
4
+ pub const TICK_RATE: u32 = 1; // Speed of the simulation, higher number is slower
5
+ pub const BLOOD_SAFE_TIME: u32 = 200; // Stop blood interaction after this time to avoid infinite back and forth movement
rust/src/utils/mod.rs ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ pub mod remap;
2
+ pub mod boundaries;
3
+ pub mod constants;
4
+ pub mod tick;
rust/src/utils/remap.rs ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ use bevy::math::Vec2;
2
+
3
+ pub fn remap_cursor_position(pos: Vec2, from: [f32; 2], to: [usize; 2]) -> Vec2 {
4
+ let new_x = (pos.x / from[0]) * to[0] as f32;
5
+ let new_y = (pos.y / from[1]) * to[1] as f32;
6
+ Vec2::new(new_x, new_y)
7
+ }
rust/src/utils/tick.rs ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ use bevy::prelude::*;
2
+
3
+ /*
4
+
5
+ 🦀 Resources and Components. Learn more: https://bevy-cheatbook.github.io/programming/res.html
6
+
7
+ */
8
+
9
+ #[derive(Resource)]
10
+ pub struct TickCounter {
11
+ pub count: u32,
12
+ pub tick_rate: u32,
13
+ }
style.css DELETED
@@ -1,28 +0,0 @@
1
- body {
2
- padding: 2rem;
3
- font-family: -apple-system, BlinkMacSystemFont, "Arial", sans-serif;
4
- }
5
-
6
- h1 {
7
- font-size: 16px;
8
- margin-top: 0;
9
- }
10
-
11
- p {
12
- color: rgb(107, 114, 128);
13
- font-size: 15px;
14
- margin-bottom: 10px;
15
- margin-top: 5px;
16
- }
17
-
18
- .card {
19
- max-width: 620px;
20
- margin: 0 auto;
21
- padding: 16px;
22
- border: 1px solid lightgray;
23
- border-radius: 16px;
24
- }
25
-
26
- .card p:last-child {
27
- margin-bottom: 0;
28
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
svelte/.gitignore ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ .DS_Store
2
+ node_modules
3
+ /build
4
+ /.svelte-kit
5
+ /package
6
+ .env
7
+ .env.*
8
+ !.env.example
9
+ vite.config.js.timestamp-*
10
+ vite.config.ts.timestamp-*
svelte/.npmrc ADDED
@@ -0,0 +1 @@
 
 
1
+ engine-strict=true
svelte/README.md ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # create-svelte
2
+
3
+ Everything you need to build a Svelte project, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).
4
+
5
+ ## Creating a project
6
+
7
+ If you're seeing this, you've probably already done this step. Congrats!
8
+
9
+ ```bash
10
+ # create a new project in the current directory
11
+ npm create svelte@latest
12
+
13
+ # create a new project in my-app
14
+ npm create svelte@latest my-app
15
+ ```
16
+
17
+ ## Developing
18
+
19
+ Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:
20
+
21
+ ```bash
22
+ npm run dev
23
+
24
+ # or start the server and open the app in a new browser tab
25
+ npm run dev -- --open
26
+ ```
27
+
28
+ ## Building
29
+
30
+ To create a production version of your app:
31
+
32
+ ```bash
33
+ npm run build
34
+ ```
35
+
36
+ You can preview the production build with `npm run preview`.
37
+
38
+ > To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment.
svelte/package-lock.json ADDED
@@ -0,0 +1,2296 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "svelte",
3
+ "version": "0.0.1",
4
+ "lockfileVersion": 3,
5
+ "requires": true,
6
+ "packages": {
7
+ "": {
8
+ "name": "svelte",
9
+ "version": "0.0.1",
10
+ "dependencies": {
11
+ "@sveltejs/adapter-static": "^2.0.3"
12
+ },
13
+ "devDependencies": {
14
+ "@sveltejs/adapter-auto": "^2.0.0",
15
+ "@sveltejs/kit": "^1.20.4",
16
+ "autoprefixer": "^10.4.16",
17
+ "postcss": "^8.4.31",
18
+ "svelte": "^4.0.5",
19
+ "svelte-check": "^3.4.3",
20
+ "tailwindcss": "^3.3.5",
21
+ "tslib": "^2.4.1",
22
+ "typescript": "^5.0.0",
23
+ "vite": "^4.4.2"
24
+ }
25
+ },
26
+ "node_modules/@alloc/quick-lru": {
27
+ "version": "5.2.0",
28
+ "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz",
29
+ "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==",
30
+ "dev": true,
31
+ "engines": {
32
+ "node": ">=10"
33
+ },
34
+ "funding": {
35
+ "url": "https://github.com/sponsors/sindresorhus"
36
+ }
37
+ },
38
+ "node_modules/@ampproject/remapping": {
39
+ "version": "2.2.1",
40
+ "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz",
41
+ "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==",
42
+ "dependencies": {
43
+ "@jridgewell/gen-mapping": "^0.3.0",
44
+ "@jridgewell/trace-mapping": "^0.3.9"
45
+ },
46
+ "engines": {
47
+ "node": ">=6.0.0"
48
+ }
49
+ },
50
+ "node_modules/@esbuild/android-arm": {
51
+ "version": "0.18.20",
52
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz",
53
+ "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==",
54
+ "cpu": [
55
+ "arm"
56
+ ],
57
+ "optional": true,
58
+ "os": [
59
+ "android"
60
+ ],
61
+ "engines": {
62
+ "node": ">=12"
63
+ }
64
+ },
65
+ "node_modules/@esbuild/android-arm64": {
66
+ "version": "0.18.20",
67
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz",
68
+ "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==",
69
+ "cpu": [
70
+ "arm64"
71
+ ],
72
+ "optional": true,
73
+ "os": [
74
+ "android"
75
+ ],
76
+ "engines": {
77
+ "node": ">=12"
78
+ }
79
+ },
80
+ "node_modules/@esbuild/android-x64": {
81
+ "version": "0.18.20",
82
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz",
83
+ "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==",
84
+ "cpu": [
85
+ "x64"
86
+ ],
87
+ "optional": true,
88
+ "os": [
89
+ "android"
90
+ ],
91
+ "engines": {
92
+ "node": ">=12"
93
+ }
94
+ },
95
+ "node_modules/@esbuild/darwin-arm64": {
96
+ "version": "0.18.20",
97
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz",
98
+ "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==",
99
+ "cpu": [
100
+ "arm64"
101
+ ],
102
+ "optional": true,
103
+ "os": [
104
+ "darwin"
105
+ ],
106
+ "engines": {
107
+ "node": ">=12"
108
+ }
109
+ },
110
+ "node_modules/@esbuild/darwin-x64": {
111
+ "version": "0.18.20",
112
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz",
113
+ "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==",
114
+ "cpu": [
115
+ "x64"
116
+ ],
117
+ "optional": true,
118
+ "os": [
119
+ "darwin"
120
+ ],
121
+ "engines": {
122
+ "node": ">=12"
123
+ }
124
+ },
125
+ "node_modules/@esbuild/freebsd-arm64": {
126
+ "version": "0.18.20",
127
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz",
128
+ "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==",
129
+ "cpu": [
130
+ "arm64"
131
+ ],
132
+ "optional": true,
133
+ "os": [
134
+ "freebsd"
135
+ ],
136
+ "engines": {
137
+ "node": ">=12"
138
+ }
139
+ },
140
+ "node_modules/@esbuild/freebsd-x64": {
141
+ "version": "0.18.20",
142
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz",
143
+ "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==",
144
+ "cpu": [
145
+ "x64"
146
+ ],
147
+ "optional": true,
148
+ "os": [
149
+ "freebsd"
150
+ ],
151
+ "engines": {
152
+ "node": ">=12"
153
+ }
154
+ },
155
+ "node_modules/@esbuild/linux-arm": {
156
+ "version": "0.18.20",
157
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz",
158
+ "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==",
159
+ "cpu": [
160
+ "arm"
161
+ ],
162
+ "optional": true,
163
+ "os": [
164
+ "linux"
165
+ ],
166
+ "engines": {
167
+ "node": ">=12"
168
+ }
169
+ },
170
+ "node_modules/@esbuild/linux-arm64": {
171
+ "version": "0.18.20",
172
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz",
173
+ "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==",
174
+ "cpu": [
175
+ "arm64"
176
+ ],
177
+ "optional": true,
178
+ "os": [
179
+ "linux"
180
+ ],
181
+ "engines": {
182
+ "node": ">=12"
183
+ }
184
+ },
185
+ "node_modules/@esbuild/linux-ia32": {
186
+ "version": "0.18.20",
187
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz",
188
+ "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==",
189
+ "cpu": [
190
+ "ia32"
191
+ ],
192
+ "optional": true,
193
+ "os": [
194
+ "linux"
195
+ ],
196
+ "engines": {
197
+ "node": ">=12"
198
+ }
199
+ },
200
+ "node_modules/@esbuild/linux-loong64": {
201
+ "version": "0.18.20",
202
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz",
203
+ "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==",
204
+ "cpu": [
205
+ "loong64"
206
+ ],
207
+ "optional": true,
208
+ "os": [
209
+ "linux"
210
+ ],
211
+ "engines": {
212
+ "node": ">=12"
213
+ }
214
+ },
215
+ "node_modules/@esbuild/linux-mips64el": {
216
+ "version": "0.18.20",
217
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz",
218
+ "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==",
219
+ "cpu": [
220
+ "mips64el"
221
+ ],
222
+ "optional": true,
223
+ "os": [
224
+ "linux"
225
+ ],
226
+ "engines": {
227
+ "node": ">=12"
228
+ }
229
+ },
230
+ "node_modules/@esbuild/linux-ppc64": {
231
+ "version": "0.18.20",
232
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz",
233
+ "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==",
234
+ "cpu": [
235
+ "ppc64"
236
+ ],
237
+ "optional": true,
238
+ "os": [
239
+ "linux"
240
+ ],
241
+ "engines": {
242
+ "node": ">=12"
243
+ }
244
+ },
245
+ "node_modules/@esbuild/linux-riscv64": {
246
+ "version": "0.18.20",
247
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz",
248
+ "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==",
249
+ "cpu": [
250
+ "riscv64"
251
+ ],
252
+ "optional": true,
253
+ "os": [
254
+ "linux"
255
+ ],
256
+ "engines": {
257
+ "node": ">=12"
258
+ }
259
+ },
260
+ "node_modules/@esbuild/linux-s390x": {
261
+ "version": "0.18.20",
262
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz",
263
+ "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==",
264
+ "cpu": [
265
+ "s390x"
266
+ ],
267
+ "optional": true,
268
+ "os": [
269
+ "linux"
270
+ ],
271
+ "engines": {
272
+ "node": ">=12"
273
+ }
274
+ },
275
+ "node_modules/@esbuild/linux-x64": {
276
+ "version": "0.18.20",
277
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz",
278
+ "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==",
279
+ "cpu": [
280
+ "x64"
281
+ ],
282
+ "optional": true,
283
+ "os": [
284
+ "linux"
285
+ ],
286
+ "engines": {
287
+ "node": ">=12"
288
+ }
289
+ },
290
+ "node_modules/@esbuild/netbsd-x64": {
291
+ "version": "0.18.20",
292
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz",
293
+ "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==",
294
+ "cpu": [
295
+ "x64"
296
+ ],
297
+ "optional": true,
298
+ "os": [
299
+ "netbsd"
300
+ ],
301
+ "engines": {
302
+ "node": ">=12"
303
+ }
304
+ },
305
+ "node_modules/@esbuild/openbsd-x64": {
306
+ "version": "0.18.20",
307
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz",
308
+ "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==",
309
+ "cpu": [
310
+ "x64"
311
+ ],
312
+ "optional": true,
313
+ "os": [
314
+ "openbsd"
315
+ ],
316
+ "engines": {
317
+ "node": ">=12"
318
+ }
319
+ },
320
+ "node_modules/@esbuild/sunos-x64": {
321
+ "version": "0.18.20",
322
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz",
323
+ "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==",
324
+ "cpu": [
325
+ "x64"
326
+ ],
327
+ "optional": true,
328
+ "os": [
329
+ "sunos"
330
+ ],
331
+ "engines": {
332
+ "node": ">=12"
333
+ }
334
+ },
335
+ "node_modules/@esbuild/win32-arm64": {
336
+ "version": "0.18.20",
337
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz",
338
+ "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==",
339
+ "cpu": [
340
+ "arm64"
341
+ ],
342
+ "optional": true,
343
+ "os": [
344
+ "win32"
345
+ ],
346
+ "engines": {
347
+ "node": ">=12"
348
+ }
349
+ },
350
+ "node_modules/@esbuild/win32-ia32": {
351
+ "version": "0.18.20",
352
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz",
353
+ "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==",
354
+ "cpu": [
355
+ "ia32"
356
+ ],
357
+ "optional": true,
358
+ "os": [
359
+ "win32"
360
+ ],
361
+ "engines": {
362
+ "node": ">=12"
363
+ }
364
+ },
365
+ "node_modules/@esbuild/win32-x64": {
366
+ "version": "0.18.20",
367
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz",
368
+ "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==",
369
+ "cpu": [
370
+ "x64"
371
+ ],
372
+ "optional": true,
373
+ "os": [
374
+ "win32"
375
+ ],
376
+ "engines": {
377
+ "node": ">=12"
378
+ }
379
+ },
380
+ "node_modules/@fastify/busboy": {
381
+ "version": "2.0.0",
382
+ "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.0.0.tgz",
383
+ "integrity": "sha512-JUFJad5lv7jxj926GPgymrWQxxjPYuJNiNjNMzqT+HiuP6Vl3dk5xzG+8sTX96np0ZAluvaMzPsjhHZ5rNuNQQ==",
384
+ "engines": {
385
+ "node": ">=14"
386
+ }
387
+ },
388
+ "node_modules/@jridgewell/gen-mapping": {
389
+ "version": "0.3.3",
390
+ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz",
391
+ "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==",
392
+ "dependencies": {
393
+ "@jridgewell/set-array": "^1.0.1",
394
+ "@jridgewell/sourcemap-codec": "^1.4.10",
395
+ "@jridgewell/trace-mapping": "^0.3.9"
396
+ },
397
+ "engines": {
398
+ "node": ">=6.0.0"
399
+ }
400
+ },
401
+ "node_modules/@jridgewell/resolve-uri": {
402
+ "version": "3.1.1",
403
+ "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz",
404
+ "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==",
405
+ "engines": {
406
+ "node": ">=6.0.0"
407
+ }
408
+ },
409
+ "node_modules/@jridgewell/set-array": {
410
+ "version": "1.1.2",
411
+ "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz",
412
+ "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==",
413
+ "engines": {
414
+ "node": ">=6.0.0"
415
+ }
416
+ },
417
+ "node_modules/@jridgewell/sourcemap-codec": {
418
+ "version": "1.4.15",
419
+ "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
420
+ "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg=="
421
+ },
422
+ "node_modules/@jridgewell/trace-mapping": {
423
+ "version": "0.3.20",
424
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz",
425
+ "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==",
426
+ "dependencies": {
427
+ "@jridgewell/resolve-uri": "^3.1.0",
428
+ "@jridgewell/sourcemap-codec": "^1.4.14"
429
+ }
430
+ },
431
+ "node_modules/@nodelib/fs.scandir": {
432
+ "version": "2.1.5",
433
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
434
+ "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
435
+ "dev": true,
436
+ "dependencies": {
437
+ "@nodelib/fs.stat": "2.0.5",
438
+ "run-parallel": "^1.1.9"
439
+ },
440
+ "engines": {
441
+ "node": ">= 8"
442
+ }
443
+ },
444
+ "node_modules/@nodelib/fs.stat": {
445
+ "version": "2.0.5",
446
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
447
+ "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
448
+ "dev": true,
449
+ "engines": {
450
+ "node": ">= 8"
451
+ }
452
+ },
453
+ "node_modules/@nodelib/fs.walk": {
454
+ "version": "1.2.8",
455
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
456
+ "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
457
+ "dev": true,
458
+ "dependencies": {
459
+ "@nodelib/fs.scandir": "2.1.5",
460
+ "fastq": "^1.6.0"
461
+ },
462
+ "engines": {
463
+ "node": ">= 8"
464
+ }
465
+ },
466
+ "node_modules/@polka/url": {
467
+ "version": "1.0.0-next.23",
468
+ "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.23.tgz",
469
+ "integrity": "sha512-C16M+IYz0rgRhWZdCmK+h58JMv8vijAA61gmz2rspCSwKwzBebpdcsiUmwrtJRdphuY30i6BSLEOP8ppbNLyLg=="
470
+ },
471
+ "node_modules/@sveltejs/adapter-auto": {
472
+ "version": "2.1.1",
473
+ "resolved": "https://registry.npmjs.org/@sveltejs/adapter-auto/-/adapter-auto-2.1.1.tgz",
474
+ "integrity": "sha512-nzi6x/7/3Axh5VKQ8Eed3pYxastxoa06Y/bFhWb7h3Nu+nGRVxKAy3+hBJgmPCwWScy8n0TsstZjSVKfyrIHkg==",
475
+ "dev": true,
476
+ "dependencies": {
477
+ "import-meta-resolve": "^4.0.0"
478
+ },
479
+ "peerDependencies": {
480
+ "@sveltejs/kit": "^1.0.0"
481
+ }
482
+ },
483
+ "node_modules/@sveltejs/adapter-static": {
484
+ "version": "2.0.3",
485
+ "resolved": "https://registry.npmjs.org/@sveltejs/adapter-static/-/adapter-static-2.0.3.tgz",
486
+ "integrity": "sha512-VUqTfXsxYGugCpMqQv1U0LIdbR3S5nBkMMDmpjGVJyM6Q2jHVMFtdWJCkeHMySc6mZxJ+0eZK3T7IgmUCDrcUQ==",
487
+ "peerDependencies": {
488
+ "@sveltejs/kit": "^1.5.0"
489
+ }
490
+ },
491
+ "node_modules/@sveltejs/kit": {
492
+ "version": "1.27.3",
493
+ "resolved": "https://registry.npmjs.org/@sveltejs/kit/-/kit-1.27.3.tgz",
494
+ "integrity": "sha512-pd7qwX6ww5noA0/FLk45B0aKUeOXWR+pfZsGTrv3dRmj3lTmnki9UTmTdWzHJGrje+BBkGUZHfgGrsSOQQBQpQ==",
495
+ "hasInstallScript": true,
496
+ "dependencies": {
497
+ "@sveltejs/vite-plugin-svelte": "^2.4.1",
498
+ "@types/cookie": "^0.5.1",
499
+ "cookie": "^0.5.0",
500
+ "devalue": "^4.3.1",
501
+ "esm-env": "^1.0.0",
502
+ "kleur": "^4.1.5",
503
+ "magic-string": "^0.30.0",
504
+ "mrmime": "^1.0.1",
505
+ "sade": "^1.8.1",
506
+ "set-cookie-parser": "^2.6.0",
507
+ "sirv": "^2.0.2",
508
+ "tiny-glob": "^0.2.9",
509
+ "undici": "~5.26.2"
510
+ },
511
+ "bin": {
512
+ "svelte-kit": "svelte-kit.js"
513
+ },
514
+ "engines": {
515
+ "node": "^16.14 || >=18"
516
+ },
517
+ "peerDependencies": {
518
+ "svelte": "^3.54.0 || ^4.0.0-next.0",
519
+ "vite": "^4.0.0"
520
+ }
521
+ },
522
+ "node_modules/@sveltejs/vite-plugin-svelte": {
523
+ "version": "2.4.6",
524
+ "resolved": "https://registry.npmjs.org/@sveltejs/vite-plugin-svelte/-/vite-plugin-svelte-2.4.6.tgz",
525
+ "integrity": "sha512-zO79p0+DZnXPnF0ltIigWDx/ux7Ni+HRaFOw720Qeivc1azFUrJxTl0OryXVibYNx1hCboGia1NRV3x8RNv4cA==",
526
+ "dependencies": {
527
+ "@sveltejs/vite-plugin-svelte-inspector": "^1.0.4",
528
+ "debug": "^4.3.4",
529
+ "deepmerge": "^4.3.1",
530
+ "kleur": "^4.1.5",
531
+ "magic-string": "^0.30.3",
532
+ "svelte-hmr": "^0.15.3",
533
+ "vitefu": "^0.2.4"
534
+ },
535
+ "engines": {
536
+ "node": "^14.18.0 || >= 16"
537
+ },
538
+ "peerDependencies": {
539
+ "svelte": "^3.54.0 || ^4.0.0",
540
+ "vite": "^4.0.0"
541
+ }
542
+ },
543
+ "node_modules/@sveltejs/vite-plugin-svelte-inspector": {
544
+ "version": "1.0.4",
545
+ "resolved": "https://registry.npmjs.org/@sveltejs/vite-plugin-svelte-inspector/-/vite-plugin-svelte-inspector-1.0.4.tgz",
546
+ "integrity": "sha512-zjiuZ3yydBtwpF3bj0kQNV0YXe+iKE545QGZVTaylW3eAzFr+pJ/cwK8lZEaRp4JtaJXhD5DyWAV4AxLh6DgaQ==",
547
+ "dependencies": {
548
+ "debug": "^4.3.4"
549
+ },
550
+ "engines": {
551
+ "node": "^14.18.0 || >= 16"
552
+ },
553
+ "peerDependencies": {
554
+ "@sveltejs/vite-plugin-svelte": "^2.2.0",
555
+ "svelte": "^3.54.0 || ^4.0.0",
556
+ "vite": "^4.0.0"
557
+ }
558
+ },
559
+ "node_modules/@types/cookie": {
560
+ "version": "0.5.4",
561
+ "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.5.4.tgz",
562
+ "integrity": "sha512-7z/eR6O859gyWIAjuvBWFzNURmf2oPBmJlfVWkwehU5nzIyjwBsTh7WMmEEV4JFnHuQ3ex4oyTvfKzcyJVDBNA=="
563
+ },
564
+ "node_modules/@types/estree": {
565
+ "version": "1.0.5",
566
+ "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz",
567
+ "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw=="
568
+ },
569
+ "node_modules/@types/pug": {
570
+ "version": "2.0.8",
571
+ "resolved": "https://registry.npmjs.org/@types/pug/-/pug-2.0.8.tgz",
572
+ "integrity": "sha512-QzhsZ1dMGyJbn/D9V80zp4GIA4J4rfAjCCxc3MP+new0E8dyVdSkR735Lx+n3LIaHNFcjHL5+TbziccuT+fdoQ==",
573
+ "dev": true
574
+ },
575
+ "node_modules/acorn": {
576
+ "version": "8.11.2",
577
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz",
578
+ "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==",
579
+ "bin": {
580
+ "acorn": "bin/acorn"
581
+ },
582
+ "engines": {
583
+ "node": ">=0.4.0"
584
+ }
585
+ },
586
+ "node_modules/any-promise": {
587
+ "version": "1.3.0",
588
+ "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz",
589
+ "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==",
590
+ "dev": true
591
+ },
592
+ "node_modules/anymatch": {
593
+ "version": "3.1.3",
594
+ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
595
+ "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
596
+ "dev": true,
597
+ "dependencies": {
598
+ "normalize-path": "^3.0.0",
599
+ "picomatch": "^2.0.4"
600
+ },
601
+ "engines": {
602
+ "node": ">= 8"
603
+ }
604
+ },
605
+ "node_modules/arg": {
606
+ "version": "5.0.2",
607
+ "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz",
608
+ "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==",
609
+ "dev": true
610
+ },
611
+ "node_modules/aria-query": {
612
+ "version": "5.3.0",
613
+ "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz",
614
+ "integrity": "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==",
615
+ "dependencies": {
616
+ "dequal": "^2.0.3"
617
+ }
618
+ },
619
+ "node_modules/autoprefixer": {
620
+ "version": "10.4.16",
621
+ "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.16.tgz",
622
+ "integrity": "sha512-7vd3UC6xKp0HLfua5IjZlcXvGAGy7cBAXTg2lyQ/8WpNhd6SiZ8Be+xm3FyBSYJx5GKcpRCzBh7RH4/0dnY+uQ==",
623
+ "dev": true,
624
+ "funding": [
625
+ {
626
+ "type": "opencollective",
627
+ "url": "https://opencollective.com/postcss/"
628
+ },
629
+ {
630
+ "type": "tidelift",
631
+ "url": "https://tidelift.com/funding/github/npm/autoprefixer"
632
+ },
633
+ {
634
+ "type": "github",
635
+ "url": "https://github.com/sponsors/ai"
636
+ }
637
+ ],
638
+ "dependencies": {
639
+ "browserslist": "^4.21.10",
640
+ "caniuse-lite": "^1.0.30001538",
641
+ "fraction.js": "^4.3.6",
642
+ "normalize-range": "^0.1.2",
643
+ "picocolors": "^1.0.0",
644
+ "postcss-value-parser": "^4.2.0"
645
+ },
646
+ "bin": {
647
+ "autoprefixer": "bin/autoprefixer"
648
+ },
649
+ "engines": {
650
+ "node": "^10 || ^12 || >=14"
651
+ },
652
+ "peerDependencies": {
653
+ "postcss": "^8.1.0"
654
+ }
655
+ },
656
+ "node_modules/axobject-query": {
657
+ "version": "3.2.1",
658
+ "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.2.1.tgz",
659
+ "integrity": "sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==",
660
+ "dependencies": {
661
+ "dequal": "^2.0.3"
662
+ }
663
+ },
664
+ "node_modules/balanced-match": {
665
+ "version": "1.0.2",
666
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
667
+ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
668
+ "dev": true
669
+ },
670
+ "node_modules/binary-extensions": {
671
+ "version": "2.2.0",
672
+ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
673
+ "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
674
+ "dev": true,
675
+ "engines": {
676
+ "node": ">=8"
677
+ }
678
+ },
679
+ "node_modules/brace-expansion": {
680
+ "version": "1.1.11",
681
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
682
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
683
+ "dev": true,
684
+ "dependencies": {
685
+ "balanced-match": "^1.0.0",
686
+ "concat-map": "0.0.1"
687
+ }
688
+ },
689
+ "node_modules/braces": {
690
+ "version": "3.0.2",
691
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
692
+ "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
693
+ "dev": true,
694
+ "dependencies": {
695
+ "fill-range": "^7.0.1"
696
+ },
697
+ "engines": {
698
+ "node": ">=8"
699
+ }
700
+ },
701
+ "node_modules/browserslist": {
702
+ "version": "4.22.1",
703
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz",
704
+ "integrity": "sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==",
705
+ "dev": true,
706
+ "funding": [
707
+ {
708
+ "type": "opencollective",
709
+ "url": "https://opencollective.com/browserslist"
710
+ },
711
+ {
712
+ "type": "tidelift",
713
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
714
+ },
715
+ {
716
+ "type": "github",
717
+ "url": "https://github.com/sponsors/ai"
718
+ }
719
+ ],
720
+ "dependencies": {
721
+ "caniuse-lite": "^1.0.30001541",
722
+ "electron-to-chromium": "^1.4.535",
723
+ "node-releases": "^2.0.13",
724
+ "update-browserslist-db": "^1.0.13"
725
+ },
726
+ "bin": {
727
+ "browserslist": "cli.js"
728
+ },
729
+ "engines": {
730
+ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
731
+ }
732
+ },
733
+ "node_modules/buffer-crc32": {
734
+ "version": "0.2.13",
735
+ "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
736
+ "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==",
737
+ "dev": true,
738
+ "engines": {
739
+ "node": "*"
740
+ }
741
+ },
742
+ "node_modules/callsites": {
743
+ "version": "3.1.0",
744
+ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
745
+ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
746
+ "dev": true,
747
+ "engines": {
748
+ "node": ">=6"
749
+ }
750
+ },
751
+ "node_modules/camelcase-css": {
752
+ "version": "2.0.1",
753
+ "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz",
754
+ "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==",
755
+ "dev": true,
756
+ "engines": {
757
+ "node": ">= 6"
758
+ }
759
+ },
760
+ "node_modules/caniuse-lite": {
761
+ "version": "1.0.30001561",
762
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001561.tgz",
763
+ "integrity": "sha512-NTt0DNoKe958Q0BE0j0c1V9jbUzhBxHIEJy7asmGrpE0yG63KTV7PLHPnK2E1O9RsQrQ081I3NLuXGS6zht3cw==",
764
+ "dev": true,
765
+ "funding": [
766
+ {
767
+ "type": "opencollective",
768
+ "url": "https://opencollective.com/browserslist"
769
+ },
770
+ {
771
+ "type": "tidelift",
772
+ "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
773
+ },
774
+ {
775
+ "type": "github",
776
+ "url": "https://github.com/sponsors/ai"
777
+ }
778
+ ]
779
+ },
780
+ "node_modules/chokidar": {
781
+ "version": "3.5.3",
782
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
783
+ "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
784
+ "dev": true,
785
+ "funding": [
786
+ {
787
+ "type": "individual",
788
+ "url": "https://paulmillr.com/funding/"
789
+ }
790
+ ],
791
+ "dependencies": {
792
+ "anymatch": "~3.1.2",
793
+ "braces": "~3.0.2",
794
+ "glob-parent": "~5.1.2",
795
+ "is-binary-path": "~2.1.0",
796
+ "is-glob": "~4.0.1",
797
+ "normalize-path": "~3.0.0",
798
+ "readdirp": "~3.6.0"
799
+ },
800
+ "engines": {
801
+ "node": ">= 8.10.0"
802
+ },
803
+ "optionalDependencies": {
804
+ "fsevents": "~2.3.2"
805
+ }
806
+ },
807
+ "node_modules/code-red": {
808
+ "version": "1.0.4",
809
+ "resolved": "https://registry.npmjs.org/code-red/-/code-red-1.0.4.tgz",
810
+ "integrity": "sha512-7qJWqItLA8/VPVlKJlFXU+NBlo/qyfs39aJcuMT/2ere32ZqvF5OSxgdM5xOfJJ7O429gg2HM47y8v9P+9wrNw==",
811
+ "dependencies": {
812
+ "@jridgewell/sourcemap-codec": "^1.4.15",
813
+ "@types/estree": "^1.0.1",
814
+ "acorn": "^8.10.0",
815
+ "estree-walker": "^3.0.3",
816
+ "periscopic": "^3.1.0"
817
+ }
818
+ },
819
+ "node_modules/commander": {
820
+ "version": "4.1.1",
821
+ "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz",
822
+ "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==",
823
+ "dev": true,
824
+ "engines": {
825
+ "node": ">= 6"
826
+ }
827
+ },
828
+ "node_modules/concat-map": {
829
+ "version": "0.0.1",
830
+ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
831
+ "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
832
+ "dev": true
833
+ },
834
+ "node_modules/cookie": {
835
+ "version": "0.5.0",
836
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz",
837
+ "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==",
838
+ "engines": {
839
+ "node": ">= 0.6"
840
+ }
841
+ },
842
+ "node_modules/css-tree": {
843
+ "version": "2.3.1",
844
+ "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz",
845
+ "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==",
846
+ "dependencies": {
847
+ "mdn-data": "2.0.30",
848
+ "source-map-js": "^1.0.1"
849
+ },
850
+ "engines": {
851
+ "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0"
852
+ }
853
+ },
854
+ "node_modules/cssesc": {
855
+ "version": "3.0.0",
856
+ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
857
+ "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
858
+ "dev": true,
859
+ "bin": {
860
+ "cssesc": "bin/cssesc"
861
+ },
862
+ "engines": {
863
+ "node": ">=4"
864
+ }
865
+ },
866
+ "node_modules/debug": {
867
+ "version": "4.3.4",
868
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
869
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
870
+ "dependencies": {
871
+ "ms": "2.1.2"
872
+ },
873
+ "engines": {
874
+ "node": ">=6.0"
875
+ },
876
+ "peerDependenciesMeta": {
877
+ "supports-color": {
878
+ "optional": true
879
+ }
880
+ }
881
+ },
882
+ "node_modules/deepmerge": {
883
+ "version": "4.3.1",
884
+ "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz",
885
+ "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==",
886
+ "engines": {
887
+ "node": ">=0.10.0"
888
+ }
889
+ },
890
+ "node_modules/dequal": {
891
+ "version": "2.0.3",
892
+ "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz",
893
+ "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==",
894
+ "engines": {
895
+ "node": ">=6"
896
+ }
897
+ },
898
+ "node_modules/detect-indent": {
899
+ "version": "6.1.0",
900
+ "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz",
901
+ "integrity": "sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==",
902
+ "dev": true,
903
+ "engines": {
904
+ "node": ">=8"
905
+ }
906
+ },
907
+ "node_modules/devalue": {
908
+ "version": "4.3.2",
909
+ "resolved": "https://registry.npmjs.org/devalue/-/devalue-4.3.2.tgz",
910
+ "integrity": "sha512-KqFl6pOgOW+Y6wJgu80rHpo2/3H07vr8ntR9rkkFIRETewbf5GaYYcakYfiKz89K+sLsuPkQIZaXDMjUObZwWg=="
911
+ },
912
+ "node_modules/didyoumean": {
913
+ "version": "1.2.2",
914
+ "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz",
915
+ "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==",
916
+ "dev": true
917
+ },
918
+ "node_modules/dlv": {
919
+ "version": "1.1.3",
920
+ "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz",
921
+ "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
922
+ "dev": true
923
+ },
924
+ "node_modules/electron-to-chromium": {
925
+ "version": "1.4.577",
926
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.577.tgz",
927
+ "integrity": "sha512-/5xHPH6f00SxhHw6052r+5S1xO7gHNc89hV7tqlvnStvKbSrDqc/u6AlwPvVWWNj+s4/KL6T6y8ih+nOY0qYNA==",
928
+ "dev": true
929
+ },
930
+ "node_modules/es6-promise": {
931
+ "version": "3.3.1",
932
+ "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz",
933
+ "integrity": "sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==",
934
+ "dev": true
935
+ },
936
+ "node_modules/esbuild": {
937
+ "version": "0.18.20",
938
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz",
939
+ "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==",
940
+ "hasInstallScript": true,
941
+ "bin": {
942
+ "esbuild": "bin/esbuild"
943
+ },
944
+ "engines": {
945
+ "node": ">=12"
946
+ },
947
+ "optionalDependencies": {
948
+ "@esbuild/android-arm": "0.18.20",
949
+ "@esbuild/android-arm64": "0.18.20",
950
+ "@esbuild/android-x64": "0.18.20",
951
+ "@esbuild/darwin-arm64": "0.18.20",
952
+ "@esbuild/darwin-x64": "0.18.20",
953
+ "@esbuild/freebsd-arm64": "0.18.20",
954
+ "@esbuild/freebsd-x64": "0.18.20",
955
+ "@esbuild/linux-arm": "0.18.20",
956
+ "@esbuild/linux-arm64": "0.18.20",
957
+ "@esbuild/linux-ia32": "0.18.20",
958
+ "@esbuild/linux-loong64": "0.18.20",
959
+ "@esbuild/linux-mips64el": "0.18.20",
960
+ "@esbuild/linux-ppc64": "0.18.20",
961
+ "@esbuild/linux-riscv64": "0.18.20",
962
+ "@esbuild/linux-s390x": "0.18.20",
963
+ "@esbuild/linux-x64": "0.18.20",
964
+ "@esbuild/netbsd-x64": "0.18.20",
965
+ "@esbuild/openbsd-x64": "0.18.20",
966
+ "@esbuild/sunos-x64": "0.18.20",
967
+ "@esbuild/win32-arm64": "0.18.20",
968
+ "@esbuild/win32-ia32": "0.18.20",
969
+ "@esbuild/win32-x64": "0.18.20"
970
+ }
971
+ },
972
+ "node_modules/escalade": {
973
+ "version": "3.1.1",
974
+ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
975
+ "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
976
+ "dev": true,
977
+ "engines": {
978
+ "node": ">=6"
979
+ }
980
+ },
981
+ "node_modules/esm-env": {
982
+ "version": "1.0.0",
983
+ "resolved": "https://registry.npmjs.org/esm-env/-/esm-env-1.0.0.tgz",
984
+ "integrity": "sha512-Cf6VksWPsTuW01vU9Mk/3vRue91Zevka5SjyNf3nEpokFRuqt/KjUQoGAwq9qMmhpLTHmXzSIrFRw8zxWzmFBA=="
985
+ },
986
+ "node_modules/estree-walker": {
987
+ "version": "3.0.3",
988
+ "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz",
989
+ "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==",
990
+ "dependencies": {
991
+ "@types/estree": "^1.0.0"
992
+ }
993
+ },
994
+ "node_modules/fast-glob": {
995
+ "version": "3.3.2",
996
+ "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz",
997
+ "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==",
998
+ "dev": true,
999
+ "dependencies": {
1000
+ "@nodelib/fs.stat": "^2.0.2",
1001
+ "@nodelib/fs.walk": "^1.2.3",
1002
+ "glob-parent": "^5.1.2",
1003
+ "merge2": "^1.3.0",
1004
+ "micromatch": "^4.0.4"
1005
+ },
1006
+ "engines": {
1007
+ "node": ">=8.6.0"
1008
+ }
1009
+ },
1010
+ "node_modules/fastq": {
1011
+ "version": "1.15.0",
1012
+ "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz",
1013
+ "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==",
1014
+ "dev": true,
1015
+ "dependencies": {
1016
+ "reusify": "^1.0.4"
1017
+ }
1018
+ },
1019
+ "node_modules/fill-range": {
1020
+ "version": "7.0.1",
1021
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
1022
+ "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
1023
+ "dev": true,
1024
+ "dependencies": {
1025
+ "to-regex-range": "^5.0.1"
1026
+ },
1027
+ "engines": {
1028
+ "node": ">=8"
1029
+ }
1030
+ },
1031
+ "node_modules/fraction.js": {
1032
+ "version": "4.3.7",
1033
+ "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz",
1034
+ "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==",
1035
+ "dev": true,
1036
+ "engines": {
1037
+ "node": "*"
1038
+ },
1039
+ "funding": {
1040
+ "type": "patreon",
1041
+ "url": "https://github.com/sponsors/rawify"
1042
+ }
1043
+ },
1044
+ "node_modules/fs.realpath": {
1045
+ "version": "1.0.0",
1046
+ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
1047
+ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
1048
+ "dev": true
1049
+ },
1050
+ "node_modules/fsevents": {
1051
+ "version": "2.3.3",
1052
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
1053
+ "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
1054
+ "hasInstallScript": true,
1055
+ "optional": true,
1056
+ "os": [
1057
+ "darwin"
1058
+ ],
1059
+ "engines": {
1060
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
1061
+ }
1062
+ },
1063
+ "node_modules/function-bind": {
1064
+ "version": "1.1.2",
1065
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
1066
+ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
1067
+ "dev": true,
1068
+ "funding": {
1069
+ "url": "https://github.com/sponsors/ljharb"
1070
+ }
1071
+ },
1072
+ "node_modules/glob": {
1073
+ "version": "7.2.3",
1074
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
1075
+ "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
1076
+ "dev": true,
1077
+ "dependencies": {
1078
+ "fs.realpath": "^1.0.0",
1079
+ "inflight": "^1.0.4",
1080
+ "inherits": "2",
1081
+ "minimatch": "^3.1.1",
1082
+ "once": "^1.3.0",
1083
+ "path-is-absolute": "^1.0.0"
1084
+ },
1085
+ "engines": {
1086
+ "node": "*"
1087
+ },
1088
+ "funding": {
1089
+ "url": "https://github.com/sponsors/isaacs"
1090
+ }
1091
+ },
1092
+ "node_modules/glob-parent": {
1093
+ "version": "5.1.2",
1094
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
1095
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
1096
+ "dev": true,
1097
+ "dependencies": {
1098
+ "is-glob": "^4.0.1"
1099
+ },
1100
+ "engines": {
1101
+ "node": ">= 6"
1102
+ }
1103
+ },
1104
+ "node_modules/globalyzer": {
1105
+ "version": "0.1.0",
1106
+ "resolved": "https://registry.npmjs.org/globalyzer/-/globalyzer-0.1.0.tgz",
1107
+ "integrity": "sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q=="
1108
+ },
1109
+ "node_modules/globrex": {
1110
+ "version": "0.1.2",
1111
+ "resolved": "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz",
1112
+ "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg=="
1113
+ },
1114
+ "node_modules/graceful-fs": {
1115
+ "version": "4.2.11",
1116
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
1117
+ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
1118
+ "dev": true
1119
+ },
1120
+ "node_modules/hasown": {
1121
+ "version": "2.0.0",
1122
+ "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz",
1123
+ "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==",
1124
+ "dev": true,
1125
+ "dependencies": {
1126
+ "function-bind": "^1.1.2"
1127
+ },
1128
+ "engines": {
1129
+ "node": ">= 0.4"
1130
+ }
1131
+ },
1132
+ "node_modules/import-fresh": {
1133
+ "version": "3.3.0",
1134
+ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
1135
+ "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
1136
+ "dev": true,
1137
+ "dependencies": {
1138
+ "parent-module": "^1.0.0",
1139
+ "resolve-from": "^4.0.0"
1140
+ },
1141
+ "engines": {
1142
+ "node": ">=6"
1143
+ },
1144
+ "funding": {
1145
+ "url": "https://github.com/sponsors/sindresorhus"
1146
+ }
1147
+ },
1148
+ "node_modules/import-meta-resolve": {
1149
+ "version": "4.0.0",
1150
+ "resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-4.0.0.tgz",
1151
+ "integrity": "sha512-okYUR7ZQPH+efeuMJGlq4f8ubUgO50kByRPyt/Cy1Io4PSRsPjxME+YlVaCOx+NIToW7hCsZNFJyTPFFKepRSA==",
1152
+ "dev": true,
1153
+ "funding": {
1154
+ "type": "github",
1155
+ "url": "https://github.com/sponsors/wooorm"
1156
+ }
1157
+ },
1158
+ "node_modules/inflight": {
1159
+ "version": "1.0.6",
1160
+ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
1161
+ "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
1162
+ "dev": true,
1163
+ "dependencies": {
1164
+ "once": "^1.3.0",
1165
+ "wrappy": "1"
1166
+ }
1167
+ },
1168
+ "node_modules/inherits": {
1169
+ "version": "2.0.4",
1170
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
1171
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
1172
+ "dev": true
1173
+ },
1174
+ "node_modules/is-binary-path": {
1175
+ "version": "2.1.0",
1176
+ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
1177
+ "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
1178
+ "dev": true,
1179
+ "dependencies": {
1180
+ "binary-extensions": "^2.0.0"
1181
+ },
1182
+ "engines": {
1183
+ "node": ">=8"
1184
+ }
1185
+ },
1186
+ "node_modules/is-core-module": {
1187
+ "version": "2.13.1",
1188
+ "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz",
1189
+ "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==",
1190
+ "dev": true,
1191
+ "dependencies": {
1192
+ "hasown": "^2.0.0"
1193
+ },
1194
+ "funding": {
1195
+ "url": "https://github.com/sponsors/ljharb"
1196
+ }
1197
+ },
1198
+ "node_modules/is-extglob": {
1199
+ "version": "2.1.1",
1200
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
1201
+ "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
1202
+ "dev": true,
1203
+ "engines": {
1204
+ "node": ">=0.10.0"
1205
+ }
1206
+ },
1207
+ "node_modules/is-glob": {
1208
+ "version": "4.0.3",
1209
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
1210
+ "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
1211
+ "dev": true,
1212
+ "dependencies": {
1213
+ "is-extglob": "^2.1.1"
1214
+ },
1215
+ "engines": {
1216
+ "node": ">=0.10.0"
1217
+ }
1218
+ },
1219
+ "node_modules/is-number": {
1220
+ "version": "7.0.0",
1221
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
1222
+ "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
1223
+ "dev": true,
1224
+ "engines": {
1225
+ "node": ">=0.12.0"
1226
+ }
1227
+ },
1228
+ "node_modules/is-reference": {
1229
+ "version": "3.0.2",
1230
+ "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-3.0.2.tgz",
1231
+ "integrity": "sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==",
1232
+ "dependencies": {
1233
+ "@types/estree": "*"
1234
+ }
1235
+ },
1236
+ "node_modules/jiti": {
1237
+ "version": "1.21.0",
1238
+ "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz",
1239
+ "integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==",
1240
+ "dev": true,
1241
+ "bin": {
1242
+ "jiti": "bin/jiti.js"
1243
+ }
1244
+ },
1245
+ "node_modules/kleur": {
1246
+ "version": "4.1.5",
1247
+ "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz",
1248
+ "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==",
1249
+ "engines": {
1250
+ "node": ">=6"
1251
+ }
1252
+ },
1253
+ "node_modules/lilconfig": {
1254
+ "version": "2.1.0",
1255
+ "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz",
1256
+ "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==",
1257
+ "dev": true,
1258
+ "engines": {
1259
+ "node": ">=10"
1260
+ }
1261
+ },
1262
+ "node_modules/lines-and-columns": {
1263
+ "version": "1.2.4",
1264
+ "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
1265
+ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==",
1266
+ "dev": true
1267
+ },
1268
+ "node_modules/locate-character": {
1269
+ "version": "3.0.0",
1270
+ "resolved": "https://registry.npmjs.org/locate-character/-/locate-character-3.0.0.tgz",
1271
+ "integrity": "sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA=="
1272
+ },
1273
+ "node_modules/magic-string": {
1274
+ "version": "0.30.5",
1275
+ "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.5.tgz",
1276
+ "integrity": "sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==",
1277
+ "dependencies": {
1278
+ "@jridgewell/sourcemap-codec": "^1.4.15"
1279
+ },
1280
+ "engines": {
1281
+ "node": ">=12"
1282
+ }
1283
+ },
1284
+ "node_modules/mdn-data": {
1285
+ "version": "2.0.30",
1286
+ "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz",
1287
+ "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA=="
1288
+ },
1289
+ "node_modules/merge2": {
1290
+ "version": "1.4.1",
1291
+ "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
1292
+ "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
1293
+ "dev": true,
1294
+ "engines": {
1295
+ "node": ">= 8"
1296
+ }
1297
+ },
1298
+ "node_modules/micromatch": {
1299
+ "version": "4.0.5",
1300
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz",
1301
+ "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==",
1302
+ "dev": true,
1303
+ "dependencies": {
1304
+ "braces": "^3.0.2",
1305
+ "picomatch": "^2.3.1"
1306
+ },
1307
+ "engines": {
1308
+ "node": ">=8.6"
1309
+ }
1310
+ },
1311
+ "node_modules/min-indent": {
1312
+ "version": "1.0.1",
1313
+ "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz",
1314
+ "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==",
1315
+ "dev": true,
1316
+ "engines": {
1317
+ "node": ">=4"
1318
+ }
1319
+ },
1320
+ "node_modules/minimatch": {
1321
+ "version": "3.1.2",
1322
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
1323
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
1324
+ "dev": true,
1325
+ "dependencies": {
1326
+ "brace-expansion": "^1.1.7"
1327
+ },
1328
+ "engines": {
1329
+ "node": "*"
1330
+ }
1331
+ },
1332
+ "node_modules/minimist": {
1333
+ "version": "1.2.8",
1334
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
1335
+ "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
1336
+ "dev": true,
1337
+ "funding": {
1338
+ "url": "https://github.com/sponsors/ljharb"
1339
+ }
1340
+ },
1341
+ "node_modules/mkdirp": {
1342
+ "version": "0.5.6",
1343
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz",
1344
+ "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==",
1345
+ "dev": true,
1346
+ "dependencies": {
1347
+ "minimist": "^1.2.6"
1348
+ },
1349
+ "bin": {
1350
+ "mkdirp": "bin/cmd.js"
1351
+ }
1352
+ },
1353
+ "node_modules/mri": {
1354
+ "version": "1.2.0",
1355
+ "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz",
1356
+ "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==",
1357
+ "engines": {
1358
+ "node": ">=4"
1359
+ }
1360
+ },
1361
+ "node_modules/mrmime": {
1362
+ "version": "1.0.1",
1363
+ "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz",
1364
+ "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==",
1365
+ "engines": {
1366
+ "node": ">=10"
1367
+ }
1368
+ },
1369
+ "node_modules/ms": {
1370
+ "version": "2.1.2",
1371
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
1372
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
1373
+ },
1374
+ "node_modules/mz": {
1375
+ "version": "2.7.0",
1376
+ "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz",
1377
+ "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==",
1378
+ "dev": true,
1379
+ "dependencies": {
1380
+ "any-promise": "^1.0.0",
1381
+ "object-assign": "^4.0.1",
1382
+ "thenify-all": "^1.0.0"
1383
+ }
1384
+ },
1385
+ "node_modules/nanoid": {
1386
+ "version": "3.3.7",
1387
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz",
1388
+ "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==",
1389
+ "funding": [
1390
+ {
1391
+ "type": "github",
1392
+ "url": "https://github.com/sponsors/ai"
1393
+ }
1394
+ ],
1395
+ "bin": {
1396
+ "nanoid": "bin/nanoid.cjs"
1397
+ },
1398
+ "engines": {
1399
+ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
1400
+ }
1401
+ },
1402
+ "node_modules/node-releases": {
1403
+ "version": "2.0.13",
1404
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz",
1405
+ "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==",
1406
+ "dev": true
1407
+ },
1408
+ "node_modules/normalize-path": {
1409
+ "version": "3.0.0",
1410
+ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
1411
+ "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
1412
+ "dev": true,
1413
+ "engines": {
1414
+ "node": ">=0.10.0"
1415
+ }
1416
+ },
1417
+ "node_modules/normalize-range": {
1418
+ "version": "0.1.2",
1419
+ "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz",
1420
+ "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==",
1421
+ "dev": true,
1422
+ "engines": {
1423
+ "node": ">=0.10.0"
1424
+ }
1425
+ },
1426
+ "node_modules/object-assign": {
1427
+ "version": "4.1.1",
1428
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
1429
+ "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
1430
+ "dev": true,
1431
+ "engines": {
1432
+ "node": ">=0.10.0"
1433
+ }
1434
+ },
1435
+ "node_modules/object-hash": {
1436
+ "version": "3.0.0",
1437
+ "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz",
1438
+ "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==",
1439
+ "dev": true,
1440
+ "engines": {
1441
+ "node": ">= 6"
1442
+ }
1443
+ },
1444
+ "node_modules/once": {
1445
+ "version": "1.4.0",
1446
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
1447
+ "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
1448
+ "dev": true,
1449
+ "dependencies": {
1450
+ "wrappy": "1"
1451
+ }
1452
+ },
1453
+ "node_modules/parent-module": {
1454
+ "version": "1.0.1",
1455
+ "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
1456
+ "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
1457
+ "dev": true,
1458
+ "dependencies": {
1459
+ "callsites": "^3.0.0"
1460
+ },
1461
+ "engines": {
1462
+ "node": ">=6"
1463
+ }
1464
+ },
1465
+ "node_modules/path-is-absolute": {
1466
+ "version": "1.0.1",
1467
+ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
1468
+ "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
1469
+ "dev": true,
1470
+ "engines": {
1471
+ "node": ">=0.10.0"
1472
+ }
1473
+ },
1474
+ "node_modules/path-parse": {
1475
+ "version": "1.0.7",
1476
+ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
1477
+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
1478
+ "dev": true
1479
+ },
1480
+ "node_modules/periscopic": {
1481
+ "version": "3.1.0",
1482
+ "resolved": "https://registry.npmjs.org/periscopic/-/periscopic-3.1.0.tgz",
1483
+ "integrity": "sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==",
1484
+ "dependencies": {
1485
+ "@types/estree": "^1.0.0",
1486
+ "estree-walker": "^3.0.0",
1487
+ "is-reference": "^3.0.0"
1488
+ }
1489
+ },
1490
+ "node_modules/picocolors": {
1491
+ "version": "1.0.0",
1492
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
1493
+ "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
1494
+ },
1495
+ "node_modules/picomatch": {
1496
+ "version": "2.3.1",
1497
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
1498
+ "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
1499
+ "dev": true,
1500
+ "engines": {
1501
+ "node": ">=8.6"
1502
+ },
1503
+ "funding": {
1504
+ "url": "https://github.com/sponsors/jonschlinkert"
1505
+ }
1506
+ },
1507
+ "node_modules/pify": {
1508
+ "version": "2.3.0",
1509
+ "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
1510
+ "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==",
1511
+ "dev": true,
1512
+ "engines": {
1513
+ "node": ">=0.10.0"
1514
+ }
1515
+ },
1516
+ "node_modules/pirates": {
1517
+ "version": "4.0.6",
1518
+ "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz",
1519
+ "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==",
1520
+ "dev": true,
1521
+ "engines": {
1522
+ "node": ">= 6"
1523
+ }
1524
+ },
1525
+ "node_modules/postcss": {
1526
+ "version": "8.4.31",
1527
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz",
1528
+ "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==",
1529
+ "funding": [
1530
+ {
1531
+ "type": "opencollective",
1532
+ "url": "https://opencollective.com/postcss/"
1533
+ },
1534
+ {
1535
+ "type": "tidelift",
1536
+ "url": "https://tidelift.com/funding/github/npm/postcss"
1537
+ },
1538
+ {
1539
+ "type": "github",
1540
+ "url": "https://github.com/sponsors/ai"
1541
+ }
1542
+ ],
1543
+ "dependencies": {
1544
+ "nanoid": "^3.3.6",
1545
+ "picocolors": "^1.0.0",
1546
+ "source-map-js": "^1.0.2"
1547
+ },
1548
+ "engines": {
1549
+ "node": "^10 || ^12 || >=14"
1550
+ }
1551
+ },
1552
+ "node_modules/postcss-import": {
1553
+ "version": "15.1.0",
1554
+ "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz",
1555
+ "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==",
1556
+ "dev": true,
1557
+ "dependencies": {
1558
+ "postcss-value-parser": "^4.0.0",
1559
+ "read-cache": "^1.0.0",
1560
+ "resolve": "^1.1.7"
1561
+ },
1562
+ "engines": {
1563
+ "node": ">=14.0.0"
1564
+ },
1565
+ "peerDependencies": {
1566
+ "postcss": "^8.0.0"
1567
+ }
1568
+ },
1569
+ "node_modules/postcss-js": {
1570
+ "version": "4.0.1",
1571
+ "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz",
1572
+ "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==",
1573
+ "dev": true,
1574
+ "dependencies": {
1575
+ "camelcase-css": "^2.0.1"
1576
+ },
1577
+ "engines": {
1578
+ "node": "^12 || ^14 || >= 16"
1579
+ },
1580
+ "funding": {
1581
+ "type": "opencollective",
1582
+ "url": "https://opencollective.com/postcss/"
1583
+ },
1584
+ "peerDependencies": {
1585
+ "postcss": "^8.4.21"
1586
+ }
1587
+ },
1588
+ "node_modules/postcss-load-config": {
1589
+ "version": "4.0.1",
1590
+ "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.1.tgz",
1591
+ "integrity": "sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==",
1592
+ "dev": true,
1593
+ "dependencies": {
1594
+ "lilconfig": "^2.0.5",
1595
+ "yaml": "^2.1.1"
1596
+ },
1597
+ "engines": {
1598
+ "node": ">= 14"
1599
+ },
1600
+ "funding": {
1601
+ "type": "opencollective",
1602
+ "url": "https://opencollective.com/postcss/"
1603
+ },
1604
+ "peerDependencies": {
1605
+ "postcss": ">=8.0.9",
1606
+ "ts-node": ">=9.0.0"
1607
+ },
1608
+ "peerDependenciesMeta": {
1609
+ "postcss": {
1610
+ "optional": true
1611
+ },
1612
+ "ts-node": {
1613
+ "optional": true
1614
+ }
1615
+ }
1616
+ },
1617
+ "node_modules/postcss-nested": {
1618
+ "version": "6.0.1",
1619
+ "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.1.tgz",
1620
+ "integrity": "sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==",
1621
+ "dev": true,
1622
+ "dependencies": {
1623
+ "postcss-selector-parser": "^6.0.11"
1624
+ },
1625
+ "engines": {
1626
+ "node": ">=12.0"
1627
+ },
1628
+ "funding": {
1629
+ "type": "opencollective",
1630
+ "url": "https://opencollective.com/postcss/"
1631
+ },
1632
+ "peerDependencies": {
1633
+ "postcss": "^8.2.14"
1634
+ }
1635
+ },
1636
+ "node_modules/postcss-selector-parser": {
1637
+ "version": "6.0.13",
1638
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz",
1639
+ "integrity": "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==",
1640
+ "dev": true,
1641
+ "dependencies": {
1642
+ "cssesc": "^3.0.0",
1643
+ "util-deprecate": "^1.0.2"
1644
+ },
1645
+ "engines": {
1646
+ "node": ">=4"
1647
+ }
1648
+ },
1649
+ "node_modules/postcss-value-parser": {
1650
+ "version": "4.2.0",
1651
+ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz",
1652
+ "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==",
1653
+ "dev": true
1654
+ },
1655
+ "node_modules/queue-microtask": {
1656
+ "version": "1.2.3",
1657
+ "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
1658
+ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
1659
+ "dev": true,
1660
+ "funding": [
1661
+ {
1662
+ "type": "github",
1663
+ "url": "https://github.com/sponsors/feross"
1664
+ },
1665
+ {
1666
+ "type": "patreon",
1667
+ "url": "https://www.patreon.com/feross"
1668
+ },
1669
+ {
1670
+ "type": "consulting",
1671
+ "url": "https://feross.org/support"
1672
+ }
1673
+ ]
1674
+ },
1675
+ "node_modules/read-cache": {
1676
+ "version": "1.0.0",
1677
+ "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
1678
+ "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==",
1679
+ "dev": true,
1680
+ "dependencies": {
1681
+ "pify": "^2.3.0"
1682
+ }
1683
+ },
1684
+ "node_modules/readdirp": {
1685
+ "version": "3.6.0",
1686
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
1687
+ "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
1688
+ "dev": true,
1689
+ "dependencies": {
1690
+ "picomatch": "^2.2.1"
1691
+ },
1692
+ "engines": {
1693
+ "node": ">=8.10.0"
1694
+ }
1695
+ },
1696
+ "node_modules/resolve": {
1697
+ "version": "1.22.8",
1698
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz",
1699
+ "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==",
1700
+ "dev": true,
1701
+ "dependencies": {
1702
+ "is-core-module": "^2.13.0",
1703
+ "path-parse": "^1.0.7",
1704
+ "supports-preserve-symlinks-flag": "^1.0.0"
1705
+ },
1706
+ "bin": {
1707
+ "resolve": "bin/resolve"
1708
+ },
1709
+ "funding": {
1710
+ "url": "https://github.com/sponsors/ljharb"
1711
+ }
1712
+ },
1713
+ "node_modules/resolve-from": {
1714
+ "version": "4.0.0",
1715
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
1716
+ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
1717
+ "dev": true,
1718
+ "engines": {
1719
+ "node": ">=4"
1720
+ }
1721
+ },
1722
+ "node_modules/reusify": {
1723
+ "version": "1.0.4",
1724
+ "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
1725
+ "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
1726
+ "dev": true,
1727
+ "engines": {
1728
+ "iojs": ">=1.0.0",
1729
+ "node": ">=0.10.0"
1730
+ }
1731
+ },
1732
+ "node_modules/rimraf": {
1733
+ "version": "2.7.1",
1734
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz",
1735
+ "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==",
1736
+ "dev": true,
1737
+ "dependencies": {
1738
+ "glob": "^7.1.3"
1739
+ },
1740
+ "bin": {
1741
+ "rimraf": "bin.js"
1742
+ }
1743
+ },
1744
+ "node_modules/rollup": {
1745
+ "version": "3.29.4",
1746
+ "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.4.tgz",
1747
+ "integrity": "sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==",
1748
+ "bin": {
1749
+ "rollup": "dist/bin/rollup"
1750
+ },
1751
+ "engines": {
1752
+ "node": ">=14.18.0",
1753
+ "npm": ">=8.0.0"
1754
+ },
1755
+ "optionalDependencies": {
1756
+ "fsevents": "~2.3.2"
1757
+ }
1758
+ },
1759
+ "node_modules/run-parallel": {
1760
+ "version": "1.2.0",
1761
+ "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
1762
+ "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
1763
+ "dev": true,
1764
+ "funding": [
1765
+ {
1766
+ "type": "github",
1767
+ "url": "https://github.com/sponsors/feross"
1768
+ },
1769
+ {
1770
+ "type": "patreon",
1771
+ "url": "https://www.patreon.com/feross"
1772
+ },
1773
+ {
1774
+ "type": "consulting",
1775
+ "url": "https://feross.org/support"
1776
+ }
1777
+ ],
1778
+ "dependencies": {
1779
+ "queue-microtask": "^1.2.2"
1780
+ }
1781
+ },
1782
+ "node_modules/sade": {
1783
+ "version": "1.8.1",
1784
+ "resolved": "https://registry.npmjs.org/sade/-/sade-1.8.1.tgz",
1785
+ "integrity": "sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==",
1786
+ "dependencies": {
1787
+ "mri": "^1.1.0"
1788
+ },
1789
+ "engines": {
1790
+ "node": ">=6"
1791
+ }
1792
+ },
1793
+ "node_modules/sander": {
1794
+ "version": "0.5.1",
1795
+ "resolved": "https://registry.npmjs.org/sander/-/sander-0.5.1.tgz",
1796
+ "integrity": "sha512-3lVqBir7WuKDHGrKRDn/1Ye3kwpXaDOMsiRP1wd6wpZW56gJhsbp5RqQpA6JG/P+pkXizygnr1dKR8vzWaVsfA==",
1797
+ "dev": true,
1798
+ "dependencies": {
1799
+ "es6-promise": "^3.1.2",
1800
+ "graceful-fs": "^4.1.3",
1801
+ "mkdirp": "^0.5.1",
1802
+ "rimraf": "^2.5.2"
1803
+ }
1804
+ },
1805
+ "node_modules/set-cookie-parser": {
1806
+ "version": "2.6.0",
1807
+ "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.6.0.tgz",
1808
+ "integrity": "sha512-RVnVQxTXuerk653XfuliOxBP81Sf0+qfQE73LIYKcyMYHG94AuH0kgrQpRDuTZnSmjpysHmzxJXKNfa6PjFhyQ=="
1809
+ },
1810
+ "node_modules/sirv": {
1811
+ "version": "2.0.3",
1812
+ "resolved": "https://registry.npmjs.org/sirv/-/sirv-2.0.3.tgz",
1813
+ "integrity": "sha512-O9jm9BsID1P+0HOi81VpXPoDxYP374pkOLzACAoyUQ/3OUVndNpsz6wMnY2z+yOxzbllCKZrM+9QrWsv4THnyA==",
1814
+ "dependencies": {
1815
+ "@polka/url": "^1.0.0-next.20",
1816
+ "mrmime": "^1.0.0",
1817
+ "totalist": "^3.0.0"
1818
+ },
1819
+ "engines": {
1820
+ "node": ">= 10"
1821
+ }
1822
+ },
1823
+ "node_modules/sorcery": {
1824
+ "version": "0.11.0",
1825
+ "resolved": "https://registry.npmjs.org/sorcery/-/sorcery-0.11.0.tgz",
1826
+ "integrity": "sha512-J69LQ22xrQB1cIFJhPfgtLuI6BpWRiWu1Y3vSsIwK/eAScqJxd/+CJlUuHQRdX2C9NGFamq+KqNywGgaThwfHw==",
1827
+ "dev": true,
1828
+ "dependencies": {
1829
+ "@jridgewell/sourcemap-codec": "^1.4.14",
1830
+ "buffer-crc32": "^0.2.5",
1831
+ "minimist": "^1.2.0",
1832
+ "sander": "^0.5.0"
1833
+ },
1834
+ "bin": {
1835
+ "sorcery": "bin/sorcery"
1836
+ }
1837
+ },
1838
+ "node_modules/source-map-js": {
1839
+ "version": "1.0.2",
1840
+ "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
1841
+ "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
1842
+ "engines": {
1843
+ "node": ">=0.10.0"
1844
+ }
1845
+ },
1846
+ "node_modules/strip-indent": {
1847
+ "version": "3.0.0",
1848
+ "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz",
1849
+ "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==",
1850
+ "dev": true,
1851
+ "dependencies": {
1852
+ "min-indent": "^1.0.0"
1853
+ },
1854
+ "engines": {
1855
+ "node": ">=8"
1856
+ }
1857
+ },
1858
+ "node_modules/sucrase": {
1859
+ "version": "3.34.0",
1860
+ "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.34.0.tgz",
1861
+ "integrity": "sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw==",
1862
+ "dev": true,
1863
+ "dependencies": {
1864
+ "@jridgewell/gen-mapping": "^0.3.2",
1865
+ "commander": "^4.0.0",
1866
+ "glob": "7.1.6",
1867
+ "lines-and-columns": "^1.1.6",
1868
+ "mz": "^2.7.0",
1869
+ "pirates": "^4.0.1",
1870
+ "ts-interface-checker": "^0.1.9"
1871
+ },
1872
+ "bin": {
1873
+ "sucrase": "bin/sucrase",
1874
+ "sucrase-node": "bin/sucrase-node"
1875
+ },
1876
+ "engines": {
1877
+ "node": ">=8"
1878
+ }
1879
+ },
1880
+ "node_modules/sucrase/node_modules/glob": {
1881
+ "version": "7.1.6",
1882
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
1883
+ "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
1884
+ "dev": true,
1885
+ "dependencies": {
1886
+ "fs.realpath": "^1.0.0",
1887
+ "inflight": "^1.0.4",
1888
+ "inherits": "2",
1889
+ "minimatch": "^3.0.4",
1890
+ "once": "^1.3.0",
1891
+ "path-is-absolute": "^1.0.0"
1892
+ },
1893
+ "engines": {
1894
+ "node": "*"
1895
+ },
1896
+ "funding": {
1897
+ "url": "https://github.com/sponsors/isaacs"
1898
+ }
1899
+ },
1900
+ "node_modules/supports-preserve-symlinks-flag": {
1901
+ "version": "1.0.0",
1902
+ "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
1903
+ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
1904
+ "dev": true,
1905
+ "engines": {
1906
+ "node": ">= 0.4"
1907
+ },
1908
+ "funding": {
1909
+ "url": "https://github.com/sponsors/ljharb"
1910
+ }
1911
+ },
1912
+ "node_modules/svelte": {
1913
+ "version": "4.2.2",
1914
+ "resolved": "https://registry.npmjs.org/svelte/-/svelte-4.2.2.tgz",
1915
+ "integrity": "sha512-My2tytF2e2NnHSpn2M7/3VdXT4JdTglYVUuSuK/mXL2XtulPYbeBfl8Dm1QiaKRn0zoULRnL+EtfZHHP0k4H3A==",
1916
+ "dependencies": {
1917
+ "@ampproject/remapping": "^2.2.1",
1918
+ "@jridgewell/sourcemap-codec": "^1.4.15",
1919
+ "@jridgewell/trace-mapping": "^0.3.18",
1920
+ "acorn": "^8.9.0",
1921
+ "aria-query": "^5.3.0",
1922
+ "axobject-query": "^3.2.1",
1923
+ "code-red": "^1.0.3",
1924
+ "css-tree": "^2.3.1",
1925
+ "estree-walker": "^3.0.3",
1926
+ "is-reference": "^3.0.1",
1927
+ "locate-character": "^3.0.0",
1928
+ "magic-string": "^0.30.4",
1929
+ "periscopic": "^3.1.0"
1930
+ },
1931
+ "engines": {
1932
+ "node": ">=16"
1933
+ }
1934
+ },
1935
+ "node_modules/svelte-check": {
1936
+ "version": "3.5.2",
1937
+ "resolved": "https://registry.npmjs.org/svelte-check/-/svelte-check-3.5.2.tgz",
1938
+ "integrity": "sha512-5a/YWbiH4c+AqAUP+0VneiV5bP8YOk9JL3jwvN+k2PEPLgpu85bjQc5eE67+eIZBBwUEJzmO3I92OqKcqbp3fw==",
1939
+ "dev": true,
1940
+ "dependencies": {
1941
+ "@jridgewell/trace-mapping": "^0.3.17",
1942
+ "chokidar": "^3.4.1",
1943
+ "fast-glob": "^3.2.7",
1944
+ "import-fresh": "^3.2.1",
1945
+ "picocolors": "^1.0.0",
1946
+ "sade": "^1.7.4",
1947
+ "svelte-preprocess": "^5.0.4",
1948
+ "typescript": "^5.0.3"
1949
+ },
1950
+ "bin": {
1951
+ "svelte-check": "bin/svelte-check"
1952
+ },
1953
+ "peerDependencies": {
1954
+ "svelte": "^3.55.0 || ^4.0.0-next.0 || ^4.0.0"
1955
+ }
1956
+ },
1957
+ "node_modules/svelte-hmr": {
1958
+ "version": "0.15.3",
1959
+ "resolved": "https://registry.npmjs.org/svelte-hmr/-/svelte-hmr-0.15.3.tgz",
1960
+ "integrity": "sha512-41snaPswvSf8TJUhlkoJBekRrABDXDMdpNpT2tfHIv4JuhgvHqLMhEPGtaQn0BmbNSTkuz2Ed20DF2eHw0SmBQ==",
1961
+ "engines": {
1962
+ "node": "^12.20 || ^14.13.1 || >= 16"
1963
+ },
1964
+ "peerDependencies": {
1965
+ "svelte": "^3.19.0 || ^4.0.0"
1966
+ }
1967
+ },
1968
+ "node_modules/svelte-preprocess": {
1969
+ "version": "5.0.4",
1970
+ "resolved": "https://registry.npmjs.org/svelte-preprocess/-/svelte-preprocess-5.0.4.tgz",
1971
+ "integrity": "sha512-ABia2QegosxOGsVlsSBJvoWeXy1wUKSfF7SWJdTjLAbx/Y3SrVevvvbFNQqrSJw89+lNSsM58SipmZJ5SRi5iw==",
1972
+ "dev": true,
1973
+ "hasInstallScript": true,
1974
+ "dependencies": {
1975
+ "@types/pug": "^2.0.6",
1976
+ "detect-indent": "^6.1.0",
1977
+ "magic-string": "^0.27.0",
1978
+ "sorcery": "^0.11.0",
1979
+ "strip-indent": "^3.0.0"
1980
+ },
1981
+ "engines": {
1982
+ "node": ">= 14.10.0"
1983
+ },
1984
+ "peerDependencies": {
1985
+ "@babel/core": "^7.10.2",
1986
+ "coffeescript": "^2.5.1",
1987
+ "less": "^3.11.3 || ^4.0.0",
1988
+ "postcss": "^7 || ^8",
1989
+ "postcss-load-config": "^2.1.0 || ^3.0.0 || ^4.0.0",
1990
+ "pug": "^3.0.0",
1991
+ "sass": "^1.26.8",
1992
+ "stylus": "^0.55.0",
1993
+ "sugarss": "^2.0.0 || ^3.0.0 || ^4.0.0",
1994
+ "svelte": "^3.23.0 || ^4.0.0-next.0 || ^4.0.0",
1995
+ "typescript": ">=3.9.5 || ^4.0.0 || ^5.0.0"
1996
+ },
1997
+ "peerDependenciesMeta": {
1998
+ "@babel/core": {
1999
+ "optional": true
2000
+ },
2001
+ "coffeescript": {
2002
+ "optional": true
2003
+ },
2004
+ "less": {
2005
+ "optional": true
2006
+ },
2007
+ "postcss": {
2008
+ "optional": true
2009
+ },
2010
+ "postcss-load-config": {
2011
+ "optional": true
2012
+ },
2013
+ "pug": {
2014
+ "optional": true
2015
+ },
2016
+ "sass": {
2017
+ "optional": true
2018
+ },
2019
+ "stylus": {
2020
+ "optional": true
2021
+ },
2022
+ "sugarss": {
2023
+ "optional": true
2024
+ },
2025
+ "typescript": {
2026
+ "optional": true
2027
+ }
2028
+ }
2029
+ },
2030
+ "node_modules/svelte-preprocess/node_modules/magic-string": {
2031
+ "version": "0.27.0",
2032
+ "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.27.0.tgz",
2033
+ "integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==",
2034
+ "dev": true,
2035
+ "dependencies": {
2036
+ "@jridgewell/sourcemap-codec": "^1.4.13"
2037
+ },
2038
+ "engines": {
2039
+ "node": ">=12"
2040
+ }
2041
+ },
2042
+ "node_modules/tailwindcss": {
2043
+ "version": "3.3.5",
2044
+ "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.5.tgz",
2045
+ "integrity": "sha512-5SEZU4J7pxZgSkv7FP1zY8i2TIAOooNZ1e/OGtxIEv6GltpoiXUqWvLy89+a10qYTB1N5Ifkuw9lqQkN9sscvA==",
2046
+ "dev": true,
2047
+ "dependencies": {
2048
+ "@alloc/quick-lru": "^5.2.0",
2049
+ "arg": "^5.0.2",
2050
+ "chokidar": "^3.5.3",
2051
+ "didyoumean": "^1.2.2",
2052
+ "dlv": "^1.1.3",
2053
+ "fast-glob": "^3.3.0",
2054
+ "glob-parent": "^6.0.2",
2055
+ "is-glob": "^4.0.3",
2056
+ "jiti": "^1.19.1",
2057
+ "lilconfig": "^2.1.0",
2058
+ "micromatch": "^4.0.5",
2059
+ "normalize-path": "^3.0.0",
2060
+ "object-hash": "^3.0.0",
2061
+ "picocolors": "^1.0.0",
2062
+ "postcss": "^8.4.23",
2063
+ "postcss-import": "^15.1.0",
2064
+ "postcss-js": "^4.0.1",
2065
+ "postcss-load-config": "^4.0.1",
2066
+ "postcss-nested": "^6.0.1",
2067
+ "postcss-selector-parser": "^6.0.11",
2068
+ "resolve": "^1.22.2",
2069
+ "sucrase": "^3.32.0"
2070
+ },
2071
+ "bin": {
2072
+ "tailwind": "lib/cli.js",
2073
+ "tailwindcss": "lib/cli.js"
2074
+ },
2075
+ "engines": {
2076
+ "node": ">=14.0.0"
2077
+ }
2078
+ },
2079
+ "node_modules/tailwindcss/node_modules/glob-parent": {
2080
+ "version": "6.0.2",
2081
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
2082
+ "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
2083
+ "dev": true,
2084
+ "dependencies": {
2085
+ "is-glob": "^4.0.3"
2086
+ },
2087
+ "engines": {
2088
+ "node": ">=10.13.0"
2089
+ }
2090
+ },
2091
+ "node_modules/thenify": {
2092
+ "version": "3.3.1",
2093
+ "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz",
2094
+ "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==",
2095
+ "dev": true,
2096
+ "dependencies": {
2097
+ "any-promise": "^1.0.0"
2098
+ }
2099
+ },
2100
+ "node_modules/thenify-all": {
2101
+ "version": "1.6.0",
2102
+ "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz",
2103
+ "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==",
2104
+ "dev": true,
2105
+ "dependencies": {
2106
+ "thenify": ">= 3.1.0 < 4"
2107
+ },
2108
+ "engines": {
2109
+ "node": ">=0.8"
2110
+ }
2111
+ },
2112
+ "node_modules/tiny-glob": {
2113
+ "version": "0.2.9",
2114
+ "resolved": "https://registry.npmjs.org/tiny-glob/-/tiny-glob-0.2.9.tgz",
2115
+ "integrity": "sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==",
2116
+ "dependencies": {
2117
+ "globalyzer": "0.1.0",
2118
+ "globrex": "^0.1.2"
2119
+ }
2120
+ },
2121
+ "node_modules/to-regex-range": {
2122
+ "version": "5.0.1",
2123
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
2124
+ "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
2125
+ "dev": true,
2126
+ "dependencies": {
2127
+ "is-number": "^7.0.0"
2128
+ },
2129
+ "engines": {
2130
+ "node": ">=8.0"
2131
+ }
2132
+ },
2133
+ "node_modules/totalist": {
2134
+ "version": "3.0.1",
2135
+ "resolved": "https://registry.npmjs.org/totalist/-/totalist-3.0.1.tgz",
2136
+ "integrity": "sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==",
2137
+ "engines": {
2138
+ "node": ">=6"
2139
+ }
2140
+ },
2141
+ "node_modules/ts-interface-checker": {
2142
+ "version": "0.1.13",
2143
+ "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz",
2144
+ "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==",
2145
+ "dev": true
2146
+ },
2147
+ "node_modules/tslib": {
2148
+ "version": "2.6.2",
2149
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz",
2150
+ "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==",
2151
+ "dev": true
2152
+ },
2153
+ "node_modules/typescript": {
2154
+ "version": "5.2.2",
2155
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz",
2156
+ "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==",
2157
+ "dev": true,
2158
+ "bin": {
2159
+ "tsc": "bin/tsc",
2160
+ "tsserver": "bin/tsserver"
2161
+ },
2162
+ "engines": {
2163
+ "node": ">=14.17"
2164
+ }
2165
+ },
2166
+ "node_modules/undici": {
2167
+ "version": "5.26.5",
2168
+ "resolved": "https://registry.npmjs.org/undici/-/undici-5.26.5.tgz",
2169
+ "integrity": "sha512-cSb4bPFd5qgR7qr2jYAi0hlX9n5YKK2ONKkLFkxl+v/9BvC0sOpZjBHDBSXc5lWAf5ty9oZdRXytBIHzgUcerw==",
2170
+ "dependencies": {
2171
+ "@fastify/busboy": "^2.0.0"
2172
+ },
2173
+ "engines": {
2174
+ "node": ">=14.0"
2175
+ }
2176
+ },
2177
+ "node_modules/update-browserslist-db": {
2178
+ "version": "1.0.13",
2179
+ "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz",
2180
+ "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==",
2181
+ "dev": true,
2182
+ "funding": [
2183
+ {
2184
+ "type": "opencollective",
2185
+ "url": "https://opencollective.com/browserslist"
2186
+ },
2187
+ {
2188
+ "type": "tidelift",
2189
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
2190
+ },
2191
+ {
2192
+ "type": "github",
2193
+ "url": "https://github.com/sponsors/ai"
2194
+ }
2195
+ ],
2196
+ "dependencies": {
2197
+ "escalade": "^3.1.1",
2198
+ "picocolors": "^1.0.0"
2199
+ },
2200
+ "bin": {
2201
+ "update-browserslist-db": "cli.js"
2202
+ },
2203
+ "peerDependencies": {
2204
+ "browserslist": ">= 4.21.0"
2205
+ }
2206
+ },
2207
+ "node_modules/util-deprecate": {
2208
+ "version": "1.0.2",
2209
+ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
2210
+ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
2211
+ "dev": true
2212
+ },
2213
+ "node_modules/vite": {
2214
+ "version": "4.5.0",
2215
+ "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.0.tgz",
2216
+ "integrity": "sha512-ulr8rNLA6rkyFAlVWw2q5YJ91v098AFQ2R0PRFwPzREXOUJQPtFUG0t+/ZikhaOCDqFoDhN6/v8Sq0o4araFAw==",
2217
+ "dependencies": {
2218
+ "esbuild": "^0.18.10",
2219
+ "postcss": "^8.4.27",
2220
+ "rollup": "^3.27.1"
2221
+ },
2222
+ "bin": {
2223
+ "vite": "bin/vite.js"
2224
+ },
2225
+ "engines": {
2226
+ "node": "^14.18.0 || >=16.0.0"
2227
+ },
2228
+ "funding": {
2229
+ "url": "https://github.com/vitejs/vite?sponsor=1"
2230
+ },
2231
+ "optionalDependencies": {
2232
+ "fsevents": "~2.3.2"
2233
+ },
2234
+ "peerDependencies": {
2235
+ "@types/node": ">= 14",
2236
+ "less": "*",
2237
+ "lightningcss": "^1.21.0",
2238
+ "sass": "*",
2239
+ "stylus": "*",
2240
+ "sugarss": "*",
2241
+ "terser": "^5.4.0"
2242
+ },
2243
+ "peerDependenciesMeta": {
2244
+ "@types/node": {
2245
+ "optional": true
2246
+ },
2247
+ "less": {
2248
+ "optional": true
2249
+ },
2250
+ "lightningcss": {
2251
+ "optional": true
2252
+ },
2253
+ "sass": {
2254
+ "optional": true
2255
+ },
2256
+ "stylus": {
2257
+ "optional": true
2258
+ },
2259
+ "sugarss": {
2260
+ "optional": true
2261
+ },
2262
+ "terser": {
2263
+ "optional": true
2264
+ }
2265
+ }
2266
+ },
2267
+ "node_modules/vitefu": {
2268
+ "version": "0.2.5",
2269
+ "resolved": "https://registry.npmjs.org/vitefu/-/vitefu-0.2.5.tgz",
2270
+ "integrity": "sha512-SgHtMLoqaeeGnd2evZ849ZbACbnwQCIwRH57t18FxcXoZop0uQu0uzlIhJBlF/eWVzuce0sHeqPcDo+evVcg8Q==",
2271
+ "peerDependencies": {
2272
+ "vite": "^3.0.0 || ^4.0.0 || ^5.0.0"
2273
+ },
2274
+ "peerDependenciesMeta": {
2275
+ "vite": {
2276
+ "optional": true
2277
+ }
2278
+ }
2279
+ },
2280
+ "node_modules/wrappy": {
2281
+ "version": "1.0.2",
2282
+ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
2283
+ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
2284
+ "dev": true
2285
+ },
2286
+ "node_modules/yaml": {
2287
+ "version": "2.3.4",
2288
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.4.tgz",
2289
+ "integrity": "sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==",
2290
+ "dev": true,
2291
+ "engines": {
2292
+ "node": ">= 14"
2293
+ }
2294
+ }
2295
+ }
2296
+ }
svelte/package.json ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "svelte",
3
+ "version": "0.0.1",
4
+ "private": true,
5
+ "scripts": {
6
+ "dev": "vite dev",
7
+ "build": "vite build",
8
+ "preview": "vite preview",
9
+ "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
10
+ "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch"
11
+ },
12
+ "devDependencies": {
13
+ "@sveltejs/adapter-auto": "^2.0.0",
14
+ "@sveltejs/kit": "^1.20.4",
15
+ "autoprefixer": "^10.4.16",
16
+ "postcss": "^8.4.31",
17
+ "svelte": "^4.0.5",
18
+ "svelte-check": "^3.4.3",
19
+ "tailwindcss": "^3.3.5",
20
+ "tslib": "^2.4.1",
21
+ "typescript": "^5.0.0",
22
+ "vite": "^4.4.2"
23
+ },
24
+ "type": "module",
25
+ "dependencies": {
26
+ "@sveltejs/adapter-static": "^2.0.3"
27
+ }
28
+ }
svelte/postcss.config.js ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ export default {
2
+ plugins: {
3
+ tailwindcss: {},
4
+ autoprefixer: {},
5
+ },
6
+ }
svelte/src/app.css ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ @tailwind base;
2
+ @tailwind components;
3
+ @tailwind utilities;
svelte/src/app.d.ts ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ // See https://kit.svelte.dev/docs/types#app
2
+ // for information about these interfaces
3
+ declare global {
4
+ namespace App {
5
+ // interface Error {}
6
+ // interface Locals {}
7
+ // interface PageData {}
8
+ // interface Platform {}
9
+ }
10
+ }
11
+
12
+ export {};
svelte/src/app.html ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <title>Rust Sandbox</title>
5
+ <meta charset="utf-8" />
6
+ <link rel="icon" href="%sveltekit.assets%/favicon.png" />
7
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
8
+ %sveltekit.head%
9
+ </head>
10
+ <body data-sveltekit-preload-data="hover" class="bg-[#1C1E21] overflow-hidden">
11
+ <div style="display: contents">%sveltekit.body%</div>
12
+ </body>
13
+ </html>
svelte/src/lib/index.ts ADDED
@@ -0,0 +1 @@
 
 
1
+ // place files you want to import through the `$lib` alias in this folder.
svelte/src/lib/pkg/sandbox_bevy.d.ts ADDED
@@ -0,0 +1,88 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+
4
+ export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
5
+
6
+ export interface InitOutput {
7
+ readonly memory: WebAssembly.Memory;
8
+ readonly main: (a: number, b: number) => number;
9
+ readonly wgpu_compute_pass_set_pipeline: (a: number, b: number) => void;
10
+ readonly wgpu_compute_pass_set_bind_group: (a: number, b: number, c: number, d: number, e: number) => void;
11
+ readonly wgpu_compute_pass_set_push_constant: (a: number, b: number, c: number, d: number) => void;
12
+ readonly wgpu_compute_pass_insert_debug_marker: (a: number, b: number, c: number) => void;
13
+ readonly wgpu_compute_pass_push_debug_group: (a: number, b: number, c: number) => void;
14
+ readonly wgpu_compute_pass_pop_debug_group: (a: number) => void;
15
+ readonly wgpu_compute_pass_write_timestamp: (a: number, b: number, c: number) => void;
16
+ readonly wgpu_compute_pass_begin_pipeline_statistics_query: (a: number, b: number, c: number) => void;
17
+ readonly wgpu_compute_pass_end_pipeline_statistics_query: (a: number) => void;
18
+ readonly wgpu_compute_pass_dispatch_workgroups: (a: number, b: number, c: number, d: number) => void;
19
+ readonly wgpu_compute_pass_dispatch_workgroups_indirect: (a: number, b: number, c: number) => void;
20
+ readonly wgpu_render_bundle_set_pipeline: (a: number, b: number) => void;
21
+ readonly wgpu_render_bundle_set_bind_group: (a: number, b: number, c: number, d: number, e: number) => void;
22
+ readonly wgpu_render_bundle_set_vertex_buffer: (a: number, b: number, c: number, d: number, e: number) => void;
23
+ readonly wgpu_render_bundle_set_push_constants: (a: number, b: number, c: number, d: number, e: number) => void;
24
+ readonly wgpu_render_bundle_draw: (a: number, b: number, c: number, d: number, e: number) => void;
25
+ readonly wgpu_render_bundle_draw_indexed: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
26
+ readonly wgpu_render_bundle_draw_indirect: (a: number, b: number, c: number) => void;
27
+ readonly wgpu_render_bundle_draw_indexed_indirect: (a: number, b: number, c: number) => void;
28
+ readonly wgpu_render_pass_set_pipeline: (a: number, b: number) => void;
29
+ readonly wgpu_render_pass_set_bind_group: (a: number, b: number, c: number, d: number, e: number) => void;
30
+ readonly wgpu_render_pass_set_vertex_buffer: (a: number, b: number, c: number, d: number, e: number) => void;
31
+ readonly wgpu_render_pass_set_push_constants: (a: number, b: number, c: number, d: number, e: number) => void;
32
+ readonly wgpu_render_pass_draw: (a: number, b: number, c: number, d: number, e: number) => void;
33
+ readonly wgpu_render_pass_draw_indexed: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
34
+ readonly wgpu_render_pass_draw_indirect: (a: number, b: number, c: number) => void;
35
+ readonly wgpu_render_pass_draw_indexed_indirect: (a: number, b: number, c: number) => void;
36
+ readonly wgpu_render_pass_multi_draw_indirect: (a: number, b: number, c: number, d: number) => void;
37
+ readonly wgpu_render_pass_multi_draw_indexed_indirect: (a: number, b: number, c: number, d: number) => void;
38
+ readonly wgpu_render_pass_multi_draw_indirect_count: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
39
+ readonly wgpu_render_pass_multi_draw_indexed_indirect_count: (a: number, b: number, c: number, d: number, e: number, f: number) => void;
40
+ readonly wgpu_render_pass_set_blend_constant: (a: number, b: number) => void;
41
+ readonly wgpu_render_pass_set_scissor_rect: (a: number, b: number, c: number, d: number, e: number) => void;
42
+ readonly wgpu_render_pass_set_viewport: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => void;
43
+ readonly wgpu_render_pass_set_stencil_reference: (a: number, b: number) => void;
44
+ readonly wgpu_render_pass_insert_debug_marker: (a: number, b: number, c: number) => void;
45
+ readonly wgpu_render_pass_push_debug_group: (a: number, b: number, c: number) => void;
46
+ readonly wgpu_render_pass_pop_debug_group: (a: number) => void;
47
+ readonly wgpu_render_pass_write_timestamp: (a: number, b: number, c: number) => void;
48
+ readonly wgpu_render_pass_begin_pipeline_statistics_query: (a: number, b: number, c: number) => void;
49
+ readonly wgpu_render_pass_end_pipeline_statistics_query: (a: number) => void;
50
+ readonly wgpu_render_pass_execute_bundles: (a: number, b: number, c: number) => void;
51
+ readonly wgpu_render_bundle_set_index_buffer: (a: number, b: number, c: number, d: number, e: number) => void;
52
+ readonly wgpu_render_bundle_pop_debug_group: (a: number) => void;
53
+ readonly wgpu_render_bundle_insert_debug_marker: (a: number, b: number) => void;
54
+ readonly wgpu_render_bundle_push_debug_group: (a: number, b: number) => void;
55
+ readonly wgpu_render_pass_set_index_buffer: (a: number, b: number, c: number, d: number, e: number) => void;
56
+ readonly __wbindgen_malloc: (a: number, b: number) => number;
57
+ readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
58
+ readonly __wbindgen_export_2: WebAssembly.Table;
59
+ readonly _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h087aa75c2ef422bf: (a: number, b: number, c: number) => void;
60
+ readonly _dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h7b2cdb1004d79a48: (a: number, b: number) => void;
61
+ readonly _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__haccacba5b48e204b: (a: number, b: number, c: number) => void;
62
+ readonly _dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hb967268334a36223: (a: number, b: number) => void;
63
+ readonly _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h25604c97ab01cac0: (a: number, b: number, c: number) => void;
64
+ readonly __wbindgen_free: (a: number, b: number, c: number) => void;
65
+ readonly __wbindgen_exn_store: (a: number) => void;
66
+ readonly __wbindgen_start: () => void;
67
+ }
68
+
69
+ export type SyncInitInput = BufferSource | WebAssembly.Module;
70
+ /**
71
+ * Instantiates the given `module`, which can either be bytes or
72
+ * a precompiled `WebAssembly.Module`.
73
+ *
74
+ * @param {SyncInitInput} module
75
+ *
76
+ * @returns {InitOutput}
77
+ */
78
+ export function initSync(module: SyncInitInput): InitOutput;
79
+
80
+ /**
81
+ * If `module_or_path` is {RequestInfo} or {URL}, makes a request and
82
+ * for everything else, calls `WebAssembly.instantiate` directly.
83
+ *
84
+ * @param {InitInput | Promise<InitInput>} module_or_path
85
+ *
86
+ * @returns {Promise<InitOutput>}
87
+ */
88
+ export default function __wbg_init (module_or_path?: InitInput | Promise<InitInput>): Promise<InitOutput>;
svelte/src/lib/pkg/sandbox_bevy.js ADDED
@@ -0,0 +1,1918 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ const lAudioContext = (typeof AudioContext !== 'undefined' ? AudioContext : (typeof webkitAudioContext !== 'undefined' ? webkitAudioContext : undefined));
2
+ let wasm;
3
+
4
+ const heap = new Array(128).fill(undefined);
5
+
6
+ heap.push(undefined, null, true, false);
7
+
8
+ function getObject(idx) { return heap[idx]; }
9
+
10
+ let heap_next = heap.length;
11
+
12
+ function dropObject(idx) {
13
+ if (idx < 132) return;
14
+ heap[idx] = heap_next;
15
+ heap_next = idx;
16
+ }
17
+
18
+ function takeObject(idx) {
19
+ const ret = getObject(idx);
20
+ dropObject(idx);
21
+ return ret;
22
+ }
23
+
24
+ function addHeapObject(obj) {
25
+ if (heap_next === heap.length) heap.push(heap.length + 1);
26
+ const idx = heap_next;
27
+ heap_next = heap[idx];
28
+
29
+ heap[idx] = obj;
30
+ return idx;
31
+ }
32
+
33
+ const cachedTextDecoder = (typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }) : { decode: () => { throw Error('TextDecoder not available') } } );
34
+
35
+ if (typeof TextDecoder !== 'undefined') { cachedTextDecoder.decode(); };
36
+
37
+ let cachedUint8Memory0 = null;
38
+
39
+ function getUint8Memory0() {
40
+ if (cachedUint8Memory0 === null || cachedUint8Memory0.byteLength === 0) {
41
+ cachedUint8Memory0 = new Uint8Array(wasm.memory.buffer);
42
+ }
43
+ return cachedUint8Memory0;
44
+ }
45
+
46
+ function getStringFromWasm0(ptr, len) {
47
+ ptr = ptr >>> 0;
48
+ return cachedTextDecoder.decode(getUint8Memory0().subarray(ptr, ptr + len));
49
+ }
50
+
51
+ function isLikeNone(x) {
52
+ return x === undefined || x === null;
53
+ }
54
+
55
+ let cachedFloat64Memory0 = null;
56
+
57
+ function getFloat64Memory0() {
58
+ if (cachedFloat64Memory0 === null || cachedFloat64Memory0.byteLength === 0) {
59
+ cachedFloat64Memory0 = new Float64Array(wasm.memory.buffer);
60
+ }
61
+ return cachedFloat64Memory0;
62
+ }
63
+
64
+ let cachedInt32Memory0 = null;
65
+
66
+ function getInt32Memory0() {
67
+ if (cachedInt32Memory0 === null || cachedInt32Memory0.byteLength === 0) {
68
+ cachedInt32Memory0 = new Int32Array(wasm.memory.buffer);
69
+ }
70
+ return cachedInt32Memory0;
71
+ }
72
+
73
+ let WASM_VECTOR_LEN = 0;
74
+
75
+ const cachedTextEncoder = (typeof TextEncoder !== 'undefined' ? new TextEncoder('utf-8') : { encode: () => { throw Error('TextEncoder not available') } } );
76
+
77
+ const encodeString = (typeof cachedTextEncoder.encodeInto === 'function'
78
+ ? function (arg, view) {
79
+ return cachedTextEncoder.encodeInto(arg, view);
80
+ }
81
+ : function (arg, view) {
82
+ const buf = cachedTextEncoder.encode(arg);
83
+ view.set(buf);
84
+ return {
85
+ read: arg.length,
86
+ written: buf.length
87
+ };
88
+ });
89
+
90
+ function passStringToWasm0(arg, malloc, realloc) {
91
+
92
+ if (realloc === undefined) {
93
+ const buf = cachedTextEncoder.encode(arg);
94
+ const ptr = malloc(buf.length, 1) >>> 0;
95
+ getUint8Memory0().subarray(ptr, ptr + buf.length).set(buf);
96
+ WASM_VECTOR_LEN = buf.length;
97
+ return ptr;
98
+ }
99
+
100
+ let len = arg.length;
101
+ let ptr = malloc(len, 1) >>> 0;
102
+
103
+ const mem = getUint8Memory0();
104
+
105
+ let offset = 0;
106
+
107
+ for (; offset < len; offset++) {
108
+ const code = arg.charCodeAt(offset);
109
+ if (code > 0x7F) break;
110
+ mem[ptr + offset] = code;
111
+ }
112
+
113
+ if (offset !== len) {
114
+ if (offset !== 0) {
115
+ arg = arg.slice(offset);
116
+ }
117
+ ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;
118
+ const view = getUint8Memory0().subarray(ptr + offset, ptr + len);
119
+ const ret = encodeString(arg, view);
120
+
121
+ offset += ret.written;
122
+ }
123
+
124
+ WASM_VECTOR_LEN = offset;
125
+ return ptr;
126
+ }
127
+
128
+ function debugString(val) {
129
+ // primitive types
130
+ const type = typeof val;
131
+ if (type == 'number' || type == 'boolean' || val == null) {
132
+ return `${val}`;
133
+ }
134
+ if (type == 'string') {
135
+ return `"${val}"`;
136
+ }
137
+ if (type == 'symbol') {
138
+ const description = val.description;
139
+ if (description == null) {
140
+ return 'Symbol';
141
+ } else {
142
+ return `Symbol(${description})`;
143
+ }
144
+ }
145
+ if (type == 'function') {
146
+ const name = val.name;
147
+ if (typeof name == 'string' && name.length > 0) {
148
+ return `Function(${name})`;
149
+ } else {
150
+ return 'Function';
151
+ }
152
+ }
153
+ // objects
154
+ if (Array.isArray(val)) {
155
+ const length = val.length;
156
+ let debug = '[';
157
+ if (length > 0) {
158
+ debug += debugString(val[0]);
159
+ }
160
+ for(let i = 1; i < length; i++) {
161
+ debug += ', ' + debugString(val[i]);
162
+ }
163
+ debug += ']';
164
+ return debug;
165
+ }
166
+ // Test for built-in
167
+ const builtInMatches = /\[object ([^\]]+)\]/.exec(toString.call(val));
168
+ let className;
169
+ if (builtInMatches.length > 1) {
170
+ className = builtInMatches[1];
171
+ } else {
172
+ // Failed to match the standard '[object ClassName]'
173
+ return toString.call(val);
174
+ }
175
+ if (className == 'Object') {
176
+ // we're a user defined class or Object
177
+ // JSON.stringify avoids problems with cycles, and is generally much
178
+ // easier than looping through ownProperties of `val`.
179
+ try {
180
+ return 'Object(' + JSON.stringify(val) + ')';
181
+ } catch (_) {
182
+ return 'Object';
183
+ }
184
+ }
185
+ // errors
186
+ if (val instanceof Error) {
187
+ return `${val.name}: ${val.message}\n${val.stack}`;
188
+ }
189
+ // TODO we could test for more things here, like `Set`s and `Map`s.
190
+ return className;
191
+ }
192
+
193
+ function makeMutClosure(arg0, arg1, dtor, f) {
194
+ const state = { a: arg0, b: arg1, cnt: 1, dtor };
195
+ const real = (...args) => {
196
+ // First up with a closure we increment the internal reference
197
+ // count. This ensures that the Rust closure environment won't
198
+ // be deallocated while we're invoking it.
199
+ state.cnt++;
200
+ const a = state.a;
201
+ state.a = 0;
202
+ try {
203
+ return f(a, state.b, ...args);
204
+ } finally {
205
+ if (--state.cnt === 0) {
206
+ wasm.__wbindgen_export_2.get(state.dtor)(a, state.b);
207
+
208
+ } else {
209
+ state.a = a;
210
+ }
211
+ }
212
+ };
213
+ real.original = state;
214
+
215
+ return real;
216
+ }
217
+ function __wbg_adapter_34(arg0, arg1, arg2) {
218
+ wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h087aa75c2ef422bf(arg0, arg1, addHeapObject(arg2));
219
+ }
220
+
221
+ function __wbg_adapter_47(arg0, arg1) {
222
+ wasm._dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h7b2cdb1004d79a48(arg0, arg1);
223
+ }
224
+
225
+ function __wbg_adapter_54(arg0, arg1, arg2) {
226
+ wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__haccacba5b48e204b(arg0, arg1, addHeapObject(arg2));
227
+ }
228
+
229
+ function __wbg_adapter_57(arg0, arg1) {
230
+ wasm._dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hb967268334a36223(arg0, arg1);
231
+ }
232
+
233
+ function __wbg_adapter_60(arg0, arg1, arg2) {
234
+ wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h25604c97ab01cac0(arg0, arg1, addHeapObject(arg2));
235
+ }
236
+
237
+ function handleError(f, args) {
238
+ try {
239
+ return f.apply(this, args);
240
+ } catch (e) {
241
+ wasm.__wbindgen_exn_store(addHeapObject(e));
242
+ }
243
+ }
244
+
245
+ let cachedFloat32Memory0 = null;
246
+
247
+ function getFloat32Memory0() {
248
+ if (cachedFloat32Memory0 === null || cachedFloat32Memory0.byteLength === 0) {
249
+ cachedFloat32Memory0 = new Float32Array(wasm.memory.buffer);
250
+ }
251
+ return cachedFloat32Memory0;
252
+ }
253
+
254
+ function getArrayF32FromWasm0(ptr, len) {
255
+ ptr = ptr >>> 0;
256
+ return getFloat32Memory0().subarray(ptr / 4, ptr / 4 + len);
257
+ }
258
+
259
+ function getArrayI32FromWasm0(ptr, len) {
260
+ ptr = ptr >>> 0;
261
+ return getInt32Memory0().subarray(ptr / 4, ptr / 4 + len);
262
+ }
263
+
264
+ let cachedUint32Memory0 = null;
265
+
266
+ function getUint32Memory0() {
267
+ if (cachedUint32Memory0 === null || cachedUint32Memory0.byteLength === 0) {
268
+ cachedUint32Memory0 = new Uint32Array(wasm.memory.buffer);
269
+ }
270
+ return cachedUint32Memory0;
271
+ }
272
+
273
+ function getArrayU32FromWasm0(ptr, len) {
274
+ ptr = ptr >>> 0;
275
+ return getUint32Memory0().subarray(ptr / 4, ptr / 4 + len);
276
+ }
277
+
278
+ async function __wbg_load(module, imports) {
279
+ if (typeof Response === 'function' && module instanceof Response) {
280
+ if (typeof WebAssembly.instantiateStreaming === 'function') {
281
+ try {
282
+ return await WebAssembly.instantiateStreaming(module, imports);
283
+
284
+ } catch (e) {
285
+ if (module.headers.get('Content-Type') != 'application/wasm') {
286
+ console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n", e);
287
+
288
+ } else {
289
+ throw e;
290
+ }
291
+ }
292
+ }
293
+
294
+ const bytes = await module.arrayBuffer();
295
+ return await WebAssembly.instantiate(bytes, imports);
296
+
297
+ } else {
298
+ const instance = await WebAssembly.instantiate(module, imports);
299
+
300
+ if (instance instanceof WebAssembly.Instance) {
301
+ return { instance, module };
302
+
303
+ } else {
304
+ return instance;
305
+ }
306
+ }
307
+ }
308
+
309
+ function __wbg_get_imports() {
310
+ const imports = {};
311
+ imports.wbg = {};
312
+ imports.wbg.__wbindgen_object_drop_ref = function(arg0) {
313
+ takeObject(arg0);
314
+ };
315
+ imports.wbg.__wbindgen_cb_drop = function(arg0) {
316
+ const obj = takeObject(arg0).original;
317
+ if (obj.cnt-- == 1) {
318
+ obj.a = 0;
319
+ return true;
320
+ }
321
+ const ret = false;
322
+ return ret;
323
+ };
324
+ imports.wbg.__wbindgen_object_clone_ref = function(arg0) {
325
+ const ret = getObject(arg0);
326
+ return addHeapObject(ret);
327
+ };
328
+ imports.wbg.__wbindgen_string_new = function(arg0, arg1) {
329
+ const ret = getStringFromWasm0(arg0, arg1);
330
+ return addHeapObject(ret);
331
+ };
332
+ imports.wbg.__wbindgen_number_get = function(arg0, arg1) {
333
+ const obj = getObject(arg1);
334
+ const ret = typeof(obj) === 'number' ? obj : undefined;
335
+ getFloat64Memory0()[arg0 / 8 + 1] = isLikeNone(ret) ? 0 : ret;
336
+ getInt32Memory0()[arg0 / 4 + 0] = !isLikeNone(ret);
337
+ };
338
+ imports.wbg.__wbindgen_is_null = function(arg0) {
339
+ const ret = getObject(arg0) === null;
340
+ return ret;
341
+ };
342
+ imports.wbg.__wbindgen_boolean_get = function(arg0) {
343
+ const v = getObject(arg0);
344
+ const ret = typeof(v) === 'boolean' ? (v ? 1 : 0) : 2;
345
+ return ret;
346
+ };
347
+ imports.wbg.__wbindgen_string_get = function(arg0, arg1) {
348
+ const obj = getObject(arg1);
349
+ const ret = typeof(obj) === 'string' ? obj : undefined;
350
+ var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
351
+ var len1 = WASM_VECTOR_LEN;
352
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
353
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
354
+ };
355
+ imports.wbg.__wbindgen_number_new = function(arg0) {
356
+ const ret = arg0;
357
+ return addHeapObject(ret);
358
+ };
359
+ imports.wbg.__wbg_log_c9486ca5d8e2cbe8 = function(arg0, arg1) {
360
+ let deferred0_0;
361
+ let deferred0_1;
362
+ try {
363
+ deferred0_0 = arg0;
364
+ deferred0_1 = arg1;
365
+ console.log(getStringFromWasm0(arg0, arg1));
366
+ } finally {
367
+ wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);
368
+ }
369
+ };
370
+ imports.wbg.__wbg_log_aba5996d9bde071f = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7) {
371
+ let deferred0_0;
372
+ let deferred0_1;
373
+ try {
374
+ deferred0_0 = arg0;
375
+ deferred0_1 = arg1;
376
+ console.log(getStringFromWasm0(arg0, arg1), getStringFromWasm0(arg2, arg3), getStringFromWasm0(arg4, arg5), getStringFromWasm0(arg6, arg7));
377
+ } finally {
378
+ wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);
379
+ }
380
+ };
381
+ imports.wbg.__wbg_mark_40e050a77cc39fea = function(arg0, arg1) {
382
+ performance.mark(getStringFromWasm0(arg0, arg1));
383
+ };
384
+ imports.wbg.__wbg_measure_aa7a73f17813f708 = function() { return handleError(function (arg0, arg1, arg2, arg3) {
385
+ let deferred0_0;
386
+ let deferred0_1;
387
+ let deferred1_0;
388
+ let deferred1_1;
389
+ try {
390
+ deferred0_0 = arg0;
391
+ deferred0_1 = arg1;
392
+ deferred1_0 = arg2;
393
+ deferred1_1 = arg3;
394
+ performance.measure(getStringFromWasm0(arg0, arg1), getStringFromWasm0(arg2, arg3));
395
+ } finally {
396
+ wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);
397
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
398
+ }
399
+ }, arguments) };
400
+ imports.wbg.__wbg_new_abda76e883ba8a5f = function() {
401
+ const ret = new Error();
402
+ return addHeapObject(ret);
403
+ };
404
+ imports.wbg.__wbg_stack_658279fe44541cf6 = function(arg0, arg1) {
405
+ const ret = getObject(arg1).stack;
406
+ const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
407
+ const len1 = WASM_VECTOR_LEN;
408
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
409
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
410
+ };
411
+ imports.wbg.__wbg_error_f851667af71bcfc6 = function(arg0, arg1) {
412
+ let deferred0_0;
413
+ let deferred0_1;
414
+ try {
415
+ deferred0_0 = arg0;
416
+ deferred0_1 = arg1;
417
+ console.error(getStringFromWasm0(arg0, arg1));
418
+ } finally {
419
+ wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);
420
+ }
421
+ };
422
+ imports.wbg.__wbg_instanceof_WebGl2RenderingContext_f921526c513bf717 = function(arg0) {
423
+ let result;
424
+ try {
425
+ result = getObject(arg0) instanceof WebGL2RenderingContext;
426
+ } catch (_) {
427
+ result = false;
428
+ }
429
+ const ret = result;
430
+ return ret;
431
+ };
432
+ imports.wbg.__wbg_beginQuery_d338463adf721553 = function(arg0, arg1, arg2) {
433
+ getObject(arg0).beginQuery(arg1 >>> 0, getObject(arg2));
434
+ };
435
+ imports.wbg.__wbg_bindBufferRange_d8a5ebc8ea8be507 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
436
+ getObject(arg0).bindBufferRange(arg1 >>> 0, arg2 >>> 0, getObject(arg3), arg4, arg5);
437
+ };
438
+ imports.wbg.__wbg_bindSampler_d74e398b68cf5980 = function(arg0, arg1, arg2) {
439
+ getObject(arg0).bindSampler(arg1 >>> 0, getObject(arg2));
440
+ };
441
+ imports.wbg.__wbg_bindVertexArray_8863a216d7b0a339 = function(arg0, arg1) {
442
+ getObject(arg0).bindVertexArray(getObject(arg1));
443
+ };
444
+ imports.wbg.__wbg_blitFramebuffer_e6642748dd06d47e = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10) {
445
+ getObject(arg0).blitFramebuffer(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0);
446
+ };
447
+ imports.wbg.__wbg_bufferData_496bbb31639d9850 = function(arg0, arg1, arg2, arg3) {
448
+ getObject(arg0).bufferData(arg1 >>> 0, arg2, arg3 >>> 0);
449
+ };
450
+ imports.wbg.__wbg_bufferData_21334671c4ba6004 = function(arg0, arg1, arg2, arg3) {
451
+ getObject(arg0).bufferData(arg1 >>> 0, getObject(arg2), arg3 >>> 0);
452
+ };
453
+ imports.wbg.__wbg_bufferSubData_c472b93c9e272eac = function(arg0, arg1, arg2, arg3) {
454
+ getObject(arg0).bufferSubData(arg1 >>> 0, arg2, getObject(arg3));
455
+ };
456
+ imports.wbg.__wbg_clearBufferfi_25bcd35b825f629d = function(arg0, arg1, arg2, arg3, arg4) {
457
+ getObject(arg0).clearBufferfi(arg1 >>> 0, arg2, arg3, arg4);
458
+ };
459
+ imports.wbg.__wbg_clearBufferfv_9de0cb45cc5a012b = function(arg0, arg1, arg2, arg3, arg4) {
460
+ getObject(arg0).clearBufferfv(arg1 >>> 0, arg2, getArrayF32FromWasm0(arg3, arg4));
461
+ };
462
+ imports.wbg.__wbg_clearBufferiv_fc2f8bce2930c586 = function(arg0, arg1, arg2, arg3, arg4) {
463
+ getObject(arg0).clearBufferiv(arg1 >>> 0, arg2, getArrayI32FromWasm0(arg3, arg4));
464
+ };
465
+ imports.wbg.__wbg_clearBufferuiv_2f6d220a31eabca4 = function(arg0, arg1, arg2, arg3, arg4) {
466
+ getObject(arg0).clearBufferuiv(arg1 >>> 0, arg2, getArrayU32FromWasm0(arg3, arg4));
467
+ };
468
+ imports.wbg.__wbg_clientWaitSync_6a74725ec890efdd = function(arg0, arg1, arg2, arg3) {
469
+ const ret = getObject(arg0).clientWaitSync(getObject(arg1), arg2 >>> 0, arg3 >>> 0);
470
+ return ret;
471
+ };
472
+ imports.wbg.__wbg_compressedTexSubImage2D_945ba54869f3a612 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {
473
+ getObject(arg0).compressedTexSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8, arg9);
474
+ };
475
+ imports.wbg.__wbg_compressedTexSubImage2D_ed56fa2f82a839b1 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) {
476
+ getObject(arg0).compressedTexSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, getObject(arg8));
477
+ };
478
+ imports.wbg.__wbg_compressedTexSubImage3D_4cebeae1440fdc14 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {
479
+ getObject(arg0).compressedTexSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10, arg11);
480
+ };
481
+ imports.wbg.__wbg_compressedTexSubImage3D_0ae61aaa91089745 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10) {
482
+ getObject(arg0).compressedTexSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, getObject(arg10));
483
+ };
484
+ imports.wbg.__wbg_copyBufferSubData_d112912c90270156 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
485
+ getObject(arg0).copyBufferSubData(arg1 >>> 0, arg2 >>> 0, arg3, arg4, arg5);
486
+ };
487
+ imports.wbg.__wbg_copyTexSubImage3D_9fa5e9e7b16cf09d = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {
488
+ getObject(arg0).copyTexSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);
489
+ };
490
+ imports.wbg.__wbg_createQuery_2ef2dc0f01a4a8e3 = function(arg0) {
491
+ const ret = getObject(arg0).createQuery();
492
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
493
+ };
494
+ imports.wbg.__wbg_createSampler_039ecd204675292b = function(arg0) {
495
+ const ret = getObject(arg0).createSampler();
496
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
497
+ };
498
+ imports.wbg.__wbg_createVertexArray_51d51e1e1e13e9f6 = function(arg0) {
499
+ const ret = getObject(arg0).createVertexArray();
500
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
501
+ };
502
+ imports.wbg.__wbg_deleteQuery_0c64c5200cdc57a6 = function(arg0, arg1) {
503
+ getObject(arg0).deleteQuery(getObject(arg1));
504
+ };
505
+ imports.wbg.__wbg_deleteSampler_ce5b8e120f96fc1a = function(arg0, arg1) {
506
+ getObject(arg0).deleteSampler(getObject(arg1));
507
+ };
508
+ imports.wbg.__wbg_deleteSync_1b05dfcc176e7466 = function(arg0, arg1) {
509
+ getObject(arg0).deleteSync(getObject(arg1));
510
+ };
511
+ imports.wbg.__wbg_deleteVertexArray_3e4f2e2ff7f05a19 = function(arg0, arg1) {
512
+ getObject(arg0).deleteVertexArray(getObject(arg1));
513
+ };
514
+ imports.wbg.__wbg_drawArraysInstanced_8fb13fe9faf95212 = function(arg0, arg1, arg2, arg3, arg4) {
515
+ getObject(arg0).drawArraysInstanced(arg1 >>> 0, arg2, arg3, arg4);
516
+ };
517
+ imports.wbg.__wbg_drawBuffers_15d26e17a8d24ee0 = function(arg0, arg1) {
518
+ getObject(arg0).drawBuffers(getObject(arg1));
519
+ };
520
+ imports.wbg.__wbg_drawElementsInstanced_dcf53461a977d44c = function(arg0, arg1, arg2, arg3, arg4, arg5) {
521
+ getObject(arg0).drawElementsInstanced(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5);
522
+ };
523
+ imports.wbg.__wbg_endQuery_faf7eb231d6f2a66 = function(arg0, arg1) {
524
+ getObject(arg0).endQuery(arg1 >>> 0);
525
+ };
526
+ imports.wbg.__wbg_fenceSync_d68dcbdcdd134d92 = function(arg0, arg1, arg2) {
527
+ const ret = getObject(arg0).fenceSync(arg1 >>> 0, arg2 >>> 0);
528
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
529
+ };
530
+ imports.wbg.__wbg_framebufferTextureLayer_a92788e5f0409234 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
531
+ getObject(arg0).framebufferTextureLayer(arg1 >>> 0, arg2 >>> 0, getObject(arg3), arg4, arg5);
532
+ };
533
+ imports.wbg.__wbg_getBufferSubData_8710cc73621fc332 = function(arg0, arg1, arg2, arg3) {
534
+ getObject(arg0).getBufferSubData(arg1 >>> 0, arg2, getObject(arg3));
535
+ };
536
+ imports.wbg.__wbg_getIndexedParameter_4f004dc25c3d15a9 = function() { return handleError(function (arg0, arg1, arg2) {
537
+ const ret = getObject(arg0).getIndexedParameter(arg1 >>> 0, arg2 >>> 0);
538
+ return addHeapObject(ret);
539
+ }, arguments) };
540
+ imports.wbg.__wbg_getQueryParameter_64c18ef385414bf1 = function(arg0, arg1, arg2) {
541
+ const ret = getObject(arg0).getQueryParameter(getObject(arg1), arg2 >>> 0);
542
+ return addHeapObject(ret);
543
+ };
544
+ imports.wbg.__wbg_getSyncParameter_d93ec7f6bb11274c = function(arg0, arg1, arg2) {
545
+ const ret = getObject(arg0).getSyncParameter(getObject(arg1), arg2 >>> 0);
546
+ return addHeapObject(ret);
547
+ };
548
+ imports.wbg.__wbg_getUniformBlockIndex_99c15053c9a87c73 = function(arg0, arg1, arg2, arg3) {
549
+ const ret = getObject(arg0).getUniformBlockIndex(getObject(arg1), getStringFromWasm0(arg2, arg3));
550
+ return ret;
551
+ };
552
+ imports.wbg.__wbg_invalidateFramebuffer_03bd99588b15d627 = function() { return handleError(function (arg0, arg1, arg2) {
553
+ getObject(arg0).invalidateFramebuffer(arg1 >>> 0, getObject(arg2));
554
+ }, arguments) };
555
+ imports.wbg.__wbg_readBuffer_c426fe18344296ff = function(arg0, arg1) {
556
+ getObject(arg0).readBuffer(arg1 >>> 0);
557
+ };
558
+ imports.wbg.__wbg_readPixels_99fda83f6ca7ec72 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7) {
559
+ getObject(arg0).readPixels(arg1, arg2, arg3, arg4, arg5 >>> 0, arg6 >>> 0, getObject(arg7));
560
+ }, arguments) };
561
+ imports.wbg.__wbg_readPixels_9634f0dcfb54667c = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7) {
562
+ getObject(arg0).readPixels(arg1, arg2, arg3, arg4, arg5 >>> 0, arg6 >>> 0, arg7);
563
+ }, arguments) };
564
+ imports.wbg.__wbg_renderbufferStorageMultisample_9260e2e620c949e5 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
565
+ getObject(arg0).renderbufferStorageMultisample(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5);
566
+ };
567
+ imports.wbg.__wbg_samplerParameterf_1c7562ef061b803b = function(arg0, arg1, arg2, arg3) {
568
+ getObject(arg0).samplerParameterf(getObject(arg1), arg2 >>> 0, arg3);
569
+ };
570
+ imports.wbg.__wbg_samplerParameteri_0fee083bc48e70ee = function(arg0, arg1, arg2, arg3) {
571
+ getObject(arg0).samplerParameteri(getObject(arg1), arg2 >>> 0, arg3);
572
+ };
573
+ imports.wbg.__wbg_texStorage2D_6665d01025a7e7fc = function(arg0, arg1, arg2, arg3, arg4, arg5) {
574
+ getObject(arg0).texStorage2D(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5);
575
+ };
576
+ imports.wbg.__wbg_texStorage3D_c01c31c1b02d75fd = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {
577
+ getObject(arg0).texStorage3D(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5, arg6);
578
+ };
579
+ imports.wbg.__wbg_texSubImage2D_d2841ded12a8aa66 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {
580
+ getObject(arg0).texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, getObject(arg9));
581
+ }, arguments) };
582
+ imports.wbg.__wbg_texSubImage2D_bccf4e250f1ce1b8 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {
583
+ getObject(arg0).texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, arg9);
584
+ }, arguments) };
585
+ imports.wbg.__wbg_texSubImage2D_780a7c889dc20a98 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {
586
+ getObject(arg0).texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, getObject(arg9));
587
+ }, arguments) };
588
+ imports.wbg.__wbg_texSubImage2D_b5bb36f2f54b4264 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {
589
+ getObject(arg0).texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, getObject(arg9));
590
+ }, arguments) };
591
+ imports.wbg.__wbg_texSubImage2D_a297114050ea1098 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {
592
+ getObject(arg0).texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, getObject(arg9));
593
+ }, arguments) };
594
+ imports.wbg.__wbg_texSubImage3D_43f39a73ed02fae3 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {
595
+ getObject(arg0).texSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0, arg11);
596
+ }, arguments) };
597
+ imports.wbg.__wbg_texSubImage3D_ffdccca1422b482a = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {
598
+ getObject(arg0).texSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0, getObject(arg11));
599
+ }, arguments) };
600
+ imports.wbg.__wbg_texSubImage3D_69d5e09d45e0251c = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {
601
+ getObject(arg0).texSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0, getObject(arg11));
602
+ }, arguments) };
603
+ imports.wbg.__wbg_texSubImage3D_ae3ed5d0154c346c = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {
604
+ getObject(arg0).texSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0, getObject(arg11));
605
+ }, arguments) };
606
+ imports.wbg.__wbg_texSubImage3D_80693fc2c7855e4d = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) {
607
+ getObject(arg0).texSubImage3D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 >>> 0, arg10 >>> 0, getObject(arg11));
608
+ }, arguments) };
609
+ imports.wbg.__wbg_uniform2fv_2b473f6dce24c898 = function(arg0, arg1, arg2, arg3) {
610
+ getObject(arg0).uniform2fv(getObject(arg1), getArrayF32FromWasm0(arg2, arg3));
611
+ };
612
+ imports.wbg.__wbg_uniform2iv_fdaa3cd258d3451e = function(arg0, arg1, arg2, arg3) {
613
+ getObject(arg0).uniform2iv(getObject(arg1), getArrayI32FromWasm0(arg2, arg3));
614
+ };
615
+ imports.wbg.__wbg_uniform3fv_3e55033ca16ec6ab = function(arg0, arg1, arg2, arg3) {
616
+ getObject(arg0).uniform3fv(getObject(arg1), getArrayF32FromWasm0(arg2, arg3));
617
+ };
618
+ imports.wbg.__wbg_uniform3iv_3d3ed90c76e6777e = function(arg0, arg1, arg2, arg3) {
619
+ getObject(arg0).uniform3iv(getObject(arg1), getArrayI32FromWasm0(arg2, arg3));
620
+ };
621
+ imports.wbg.__wbg_uniform4fv_26ec0c9d7bf6d7c6 = function(arg0, arg1, arg2, arg3) {
622
+ getObject(arg0).uniform4fv(getObject(arg1), getArrayF32FromWasm0(arg2, arg3));
623
+ };
624
+ imports.wbg.__wbg_uniform4iv_2be6b77c47b90d81 = function(arg0, arg1, arg2, arg3) {
625
+ getObject(arg0).uniform4iv(getObject(arg1), getArrayI32FromWasm0(arg2, arg3));
626
+ };
627
+ imports.wbg.__wbg_uniformBlockBinding_0dc4bd81bb4ccb6a = function(arg0, arg1, arg2, arg3) {
628
+ getObject(arg0).uniformBlockBinding(getObject(arg1), arg2 >>> 0, arg3 >>> 0);
629
+ };
630
+ imports.wbg.__wbg_uniformMatrix2fv_1ab7aeb8562ea3dd = function(arg0, arg1, arg2, arg3, arg4) {
631
+ getObject(arg0).uniformMatrix2fv(getObject(arg1), arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));
632
+ };
633
+ imports.wbg.__wbg_uniformMatrix3fv_0b151be4d76ee66b = function(arg0, arg1, arg2, arg3, arg4) {
634
+ getObject(arg0).uniformMatrix3fv(getObject(arg1), arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));
635
+ };
636
+ imports.wbg.__wbg_uniformMatrix4fv_766b5ba343983038 = function(arg0, arg1, arg2, arg3, arg4) {
637
+ getObject(arg0).uniformMatrix4fv(getObject(arg1), arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));
638
+ };
639
+ imports.wbg.__wbg_vertexAttribDivisor_197e2e23e3fbde7f = function(arg0, arg1, arg2) {
640
+ getObject(arg0).vertexAttribDivisor(arg1 >>> 0, arg2 >>> 0);
641
+ };
642
+ imports.wbg.__wbg_vertexAttribIPointer_6f8540e358f8a547 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
643
+ getObject(arg0).vertexAttribIPointer(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5);
644
+ };
645
+ imports.wbg.__wbg_activeTexture_799bf1387e911c27 = function(arg0, arg1) {
646
+ getObject(arg0).activeTexture(arg1 >>> 0);
647
+ };
648
+ imports.wbg.__wbg_attachShader_47256b6b3d42a22e = function(arg0, arg1, arg2) {
649
+ getObject(arg0).attachShader(getObject(arg1), getObject(arg2));
650
+ };
651
+ imports.wbg.__wbg_bindBuffer_24f6010e273fa400 = function(arg0, arg1, arg2) {
652
+ getObject(arg0).bindBuffer(arg1 >>> 0, getObject(arg2));
653
+ };
654
+ imports.wbg.__wbg_bindFramebuffer_a9573e340dab20fe = function(arg0, arg1, arg2) {
655
+ getObject(arg0).bindFramebuffer(arg1 >>> 0, getObject(arg2));
656
+ };
657
+ imports.wbg.__wbg_bindRenderbuffer_54c404711f9b6958 = function(arg0, arg1, arg2) {
658
+ getObject(arg0).bindRenderbuffer(arg1 >>> 0, getObject(arg2));
659
+ };
660
+ imports.wbg.__wbg_bindTexture_92d6d7f8bff9531e = function(arg0, arg1, arg2) {
661
+ getObject(arg0).bindTexture(arg1 >>> 0, getObject(arg2));
662
+ };
663
+ imports.wbg.__wbg_blendColor_7974f09cb60d2be0 = function(arg0, arg1, arg2, arg3, arg4) {
664
+ getObject(arg0).blendColor(arg1, arg2, arg3, arg4);
665
+ };
666
+ imports.wbg.__wbg_blendEquation_12146cb96dc1bcd9 = function(arg0, arg1) {
667
+ getObject(arg0).blendEquation(arg1 >>> 0);
668
+ };
669
+ imports.wbg.__wbg_blendEquationSeparate_205526dad772d160 = function(arg0, arg1, arg2) {
670
+ getObject(arg0).blendEquationSeparate(arg1 >>> 0, arg2 >>> 0);
671
+ };
672
+ imports.wbg.__wbg_blendFunc_533de6de45b80a09 = function(arg0, arg1, arg2) {
673
+ getObject(arg0).blendFunc(arg1 >>> 0, arg2 >>> 0);
674
+ };
675
+ imports.wbg.__wbg_blendFuncSeparate_fbf93dee3e5ce456 = function(arg0, arg1, arg2, arg3, arg4) {
676
+ getObject(arg0).blendFuncSeparate(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, arg4 >>> 0);
677
+ };
678
+ imports.wbg.__wbg_colorMask_fba1e2efd891e2ac = function(arg0, arg1, arg2, arg3, arg4) {
679
+ getObject(arg0).colorMask(arg1 !== 0, arg2 !== 0, arg3 !== 0, arg4 !== 0);
680
+ };
681
+ imports.wbg.__wbg_compileShader_6bf78b425d5c98e1 = function(arg0, arg1) {
682
+ getObject(arg0).compileShader(getObject(arg1));
683
+ };
684
+ imports.wbg.__wbg_copyTexSubImage2D_26685100d5f2b4c0 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) {
685
+ getObject(arg0).copyTexSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8);
686
+ };
687
+ imports.wbg.__wbg_createBuffer_323425af422748ac = function(arg0) {
688
+ const ret = getObject(arg0).createBuffer();
689
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
690
+ };
691
+ imports.wbg.__wbg_createFramebuffer_1684a99697ac9563 = function(arg0) {
692
+ const ret = getObject(arg0).createFramebuffer();
693
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
694
+ };
695
+ imports.wbg.__wbg_createProgram_4eaf3b97b5747a62 = function(arg0) {
696
+ const ret = getObject(arg0).createProgram();
697
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
698
+ };
699
+ imports.wbg.__wbg_createRenderbuffer_3e6dd356d7897ed7 = function(arg0) {
700
+ const ret = getObject(arg0).createRenderbuffer();
701
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
702
+ };
703
+ imports.wbg.__wbg_createShader_429776c9dd6fb87b = function(arg0, arg1) {
704
+ const ret = getObject(arg0).createShader(arg1 >>> 0);
705
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
706
+ };
707
+ imports.wbg.__wbg_createTexture_1bf4d6fec570124b = function(arg0) {
708
+ const ret = getObject(arg0).createTexture();
709
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
710
+ };
711
+ imports.wbg.__wbg_cullFace_6daa9f2aa42b4620 = function(arg0, arg1) {
712
+ getObject(arg0).cullFace(arg1 >>> 0);
713
+ };
714
+ imports.wbg.__wbg_deleteBuffer_2c09d03fa4b0bd08 = function(arg0, arg1) {
715
+ getObject(arg0).deleteBuffer(getObject(arg1));
716
+ };
717
+ imports.wbg.__wbg_deleteFramebuffer_edd16bb8df6a8e0d = function(arg0, arg1) {
718
+ getObject(arg0).deleteFramebuffer(getObject(arg1));
719
+ };
720
+ imports.wbg.__wbg_deleteProgram_53a32852f245b839 = function(arg0, arg1) {
721
+ getObject(arg0).deleteProgram(getObject(arg1));
722
+ };
723
+ imports.wbg.__wbg_deleteRenderbuffer_134040051fcc1ba5 = function(arg0, arg1) {
724
+ getObject(arg0).deleteRenderbuffer(getObject(arg1));
725
+ };
726
+ imports.wbg.__wbg_deleteShader_7c1222349324b5e2 = function(arg0, arg1) {
727
+ getObject(arg0).deleteShader(getObject(arg1));
728
+ };
729
+ imports.wbg.__wbg_deleteTexture_4fcfea73cd8f6214 = function(arg0, arg1) {
730
+ getObject(arg0).deleteTexture(getObject(arg1));
731
+ };
732
+ imports.wbg.__wbg_depthFunc_fb41ad353d07948d = function(arg0, arg1) {
733
+ getObject(arg0).depthFunc(arg1 >>> 0);
734
+ };
735
+ imports.wbg.__wbg_depthMask_6a4ff02cd2a2702e = function(arg0, arg1) {
736
+ getObject(arg0).depthMask(arg1 !== 0);
737
+ };
738
+ imports.wbg.__wbg_depthRange_a5647a9040aec55b = function(arg0, arg1, arg2) {
739
+ getObject(arg0).depthRange(arg1, arg2);
740
+ };
741
+ imports.wbg.__wbg_disable_e02106ca6c7002d6 = function(arg0, arg1) {
742
+ getObject(arg0).disable(arg1 >>> 0);
743
+ };
744
+ imports.wbg.__wbg_disableVertexAttribArray_6d57776c8f642f44 = function(arg0, arg1) {
745
+ getObject(arg0).disableVertexAttribArray(arg1 >>> 0);
746
+ };
747
+ imports.wbg.__wbg_drawArrays_c91ce3f736bf1f2a = function(arg0, arg1, arg2, arg3) {
748
+ getObject(arg0).drawArrays(arg1 >>> 0, arg2, arg3);
749
+ };
750
+ imports.wbg.__wbg_enable_195891416c520019 = function(arg0, arg1) {
751
+ getObject(arg0).enable(arg1 >>> 0);
752
+ };
753
+ imports.wbg.__wbg_enableVertexAttribArray_8804480c2ea0bb72 = function(arg0, arg1) {
754
+ getObject(arg0).enableVertexAttribArray(arg1 >>> 0);
755
+ };
756
+ imports.wbg.__wbg_framebufferRenderbuffer_3ec0983918c2b69d = function(arg0, arg1, arg2, arg3, arg4) {
757
+ getObject(arg0).framebufferRenderbuffer(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, getObject(arg4));
758
+ };
759
+ imports.wbg.__wbg_framebufferTexture2D_e88fcbd7f8523bb8 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
760
+ getObject(arg0).framebufferTexture2D(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, getObject(arg4), arg5);
761
+ };
762
+ imports.wbg.__wbg_frontFace_786a036f1d643925 = function(arg0, arg1) {
763
+ getObject(arg0).frontFace(arg1 >>> 0);
764
+ };
765
+ imports.wbg.__wbg_getActiveUniform_78367ddc7339640b = function(arg0, arg1, arg2) {
766
+ const ret = getObject(arg0).getActiveUniform(getObject(arg1), arg2 >>> 0);
767
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
768
+ };
769
+ imports.wbg.__wbg_getExtension_77909f6d51d49d4d = function() { return handleError(function (arg0, arg1, arg2) {
770
+ const ret = getObject(arg0).getExtension(getStringFromWasm0(arg1, arg2));
771
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
772
+ }, arguments) };
773
+ imports.wbg.__wbg_getParameter_55b36a787dbbfb74 = function() { return handleError(function (arg0, arg1) {
774
+ const ret = getObject(arg0).getParameter(arg1 >>> 0);
775
+ return addHeapObject(ret);
776
+ }, arguments) };
777
+ imports.wbg.__wbg_getProgramInfoLog_b81bc53188e286fa = function(arg0, arg1, arg2) {
778
+ const ret = getObject(arg1).getProgramInfoLog(getObject(arg2));
779
+ var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
780
+ var len1 = WASM_VECTOR_LEN;
781
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
782
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
783
+ };
784
+ imports.wbg.__wbg_getProgramParameter_35522a0bfdfaad27 = function(arg0, arg1, arg2) {
785
+ const ret = getObject(arg0).getProgramParameter(getObject(arg1), arg2 >>> 0);
786
+ return addHeapObject(ret);
787
+ };
788
+ imports.wbg.__wbg_getShaderInfoLog_968b93e75477d725 = function(arg0, arg1, arg2) {
789
+ const ret = getObject(arg1).getShaderInfoLog(getObject(arg2));
790
+ var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
791
+ var len1 = WASM_VECTOR_LEN;
792
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
793
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
794
+ };
795
+ imports.wbg.__wbg_getShaderParameter_ac2727ae4fe7648e = function(arg0, arg1, arg2) {
796
+ const ret = getObject(arg0).getShaderParameter(getObject(arg1), arg2 >>> 0);
797
+ return addHeapObject(ret);
798
+ };
799
+ imports.wbg.__wbg_getSupportedExtensions_fafc31aab913037d = function(arg0) {
800
+ const ret = getObject(arg0).getSupportedExtensions();
801
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
802
+ };
803
+ imports.wbg.__wbg_getUniformLocation_9f6eb60c560a347b = function(arg0, arg1, arg2, arg3) {
804
+ const ret = getObject(arg0).getUniformLocation(getObject(arg1), getStringFromWasm0(arg2, arg3));
805
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
806
+ };
807
+ imports.wbg.__wbg_linkProgram_33998194075d71fb = function(arg0, arg1) {
808
+ getObject(arg0).linkProgram(getObject(arg1));
809
+ };
810
+ imports.wbg.__wbg_pixelStorei_f3a24990aa352fc7 = function(arg0, arg1, arg2) {
811
+ getObject(arg0).pixelStorei(arg1 >>> 0, arg2);
812
+ };
813
+ imports.wbg.__wbg_polygonOffset_faca8e73770272ff = function(arg0, arg1, arg2) {
814
+ getObject(arg0).polygonOffset(arg1, arg2);
815
+ };
816
+ imports.wbg.__wbg_renderbufferStorage_987d1af7c9faf5dd = function(arg0, arg1, arg2, arg3, arg4) {
817
+ getObject(arg0).renderbufferStorage(arg1 >>> 0, arg2 >>> 0, arg3, arg4);
818
+ };
819
+ imports.wbg.__wbg_scissor_e8e41e1c0a9817c8 = function(arg0, arg1, arg2, arg3, arg4) {
820
+ getObject(arg0).scissor(arg1, arg2, arg3, arg4);
821
+ };
822
+ imports.wbg.__wbg_shaderSource_1cb7c64dc7d1a500 = function(arg0, arg1, arg2, arg3) {
823
+ getObject(arg0).shaderSource(getObject(arg1), getStringFromWasm0(arg2, arg3));
824
+ };
825
+ imports.wbg.__wbg_stencilFuncSeparate_8ff94e24a50a3c45 = function(arg0, arg1, arg2, arg3, arg4) {
826
+ getObject(arg0).stencilFuncSeparate(arg1 >>> 0, arg2 >>> 0, arg3, arg4 >>> 0);
827
+ };
828
+ imports.wbg.__wbg_stencilMask_641f92999dd3c3de = function(arg0, arg1) {
829
+ getObject(arg0).stencilMask(arg1 >>> 0);
830
+ };
831
+ imports.wbg.__wbg_stencilMaskSeparate_6b2c8ef22fb3b6d1 = function(arg0, arg1, arg2) {
832
+ getObject(arg0).stencilMaskSeparate(arg1 >>> 0, arg2 >>> 0);
833
+ };
834
+ imports.wbg.__wbg_stencilOpSeparate_38925591af8feb44 = function(arg0, arg1, arg2, arg3, arg4) {
835
+ getObject(arg0).stencilOpSeparate(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, arg4 >>> 0);
836
+ };
837
+ imports.wbg.__wbg_texParameteri_85dad939f62a15aa = function(arg0, arg1, arg2, arg3) {
838
+ getObject(arg0).texParameteri(arg1 >>> 0, arg2 >>> 0, arg3);
839
+ };
840
+ imports.wbg.__wbg_uniform1f_88379f4e2630bc66 = function(arg0, arg1, arg2) {
841
+ getObject(arg0).uniform1f(getObject(arg1), arg2);
842
+ };
843
+ imports.wbg.__wbg_uniform1i_d2e61a6a43889648 = function(arg0, arg1, arg2) {
844
+ getObject(arg0).uniform1i(getObject(arg1), arg2);
845
+ };
846
+ imports.wbg.__wbg_uniform4f_a9fd337d4b07f595 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
847
+ getObject(arg0).uniform4f(getObject(arg1), arg2, arg3, arg4, arg5);
848
+ };
849
+ imports.wbg.__wbg_useProgram_3683cf6f60939dcd = function(arg0, arg1) {
850
+ getObject(arg0).useProgram(getObject(arg1));
851
+ };
852
+ imports.wbg.__wbg_vertexAttribPointer_316ffe2f0458fde7 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {
853
+ getObject(arg0).vertexAttribPointer(arg1 >>> 0, arg2, arg3 >>> 0, arg4 !== 0, arg5, arg6);
854
+ };
855
+ imports.wbg.__wbg_viewport_fad1ce9e18f741c0 = function(arg0, arg1, arg2, arg3, arg4) {
856
+ getObject(arg0).viewport(arg1, arg2, arg3, arg4);
857
+ };
858
+ imports.wbg.__wbg_instanceof_Window_9029196b662bc42a = function(arg0) {
859
+ let result;
860
+ try {
861
+ result = getObject(arg0) instanceof Window;
862
+ } catch (_) {
863
+ result = false;
864
+ }
865
+ const ret = result;
866
+ return ret;
867
+ };
868
+ imports.wbg.__wbg_document_f7ace2b956f30a4f = function(arg0) {
869
+ const ret = getObject(arg0).document;
870
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
871
+ };
872
+ imports.wbg.__wbg_navigator_7c9103698acde322 = function(arg0) {
873
+ const ret = getObject(arg0).navigator;
874
+ return addHeapObject(ret);
875
+ };
876
+ imports.wbg.__wbg_innerWidth_ebe07ce5463ff293 = function() { return handleError(function (arg0) {
877
+ const ret = getObject(arg0).innerWidth;
878
+ return addHeapObject(ret);
879
+ }, arguments) };
880
+ imports.wbg.__wbg_innerHeight_2dd06d8cf68f1d7d = function() { return handleError(function (arg0) {
881
+ const ret = getObject(arg0).innerHeight;
882
+ return addHeapObject(ret);
883
+ }, arguments) };
884
+ imports.wbg.__wbg_devicePixelRatio_f9de7bddca0eaf20 = function(arg0) {
885
+ const ret = getObject(arg0).devicePixelRatio;
886
+ return ret;
887
+ };
888
+ imports.wbg.__wbg_isSecureContext_4890500d265c48bd = function(arg0) {
889
+ const ret = getObject(arg0).isSecureContext;
890
+ return ret;
891
+ };
892
+ imports.wbg.__wbg_matchMedia_12ef69056e32d0b3 = function() { return handleError(function (arg0, arg1, arg2) {
893
+ const ret = getObject(arg0).matchMedia(getStringFromWasm0(arg1, arg2));
894
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
895
+ }, arguments) };
896
+ imports.wbg.__wbg_get_cb7c1c2da725c920 = function(arg0, arg1, arg2) {
897
+ const ret = getObject(arg0)[getStringFromWasm0(arg1, arg2)];
898
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
899
+ };
900
+ imports.wbg.__wbg_cancelAnimationFrame_9b68e9588c6543bc = function() { return handleError(function (arg0, arg1) {
901
+ getObject(arg0).cancelAnimationFrame(arg1);
902
+ }, arguments) };
903
+ imports.wbg.__wbg_requestAnimationFrame_d082200514b6674d = function() { return handleError(function (arg0, arg1) {
904
+ const ret = getObject(arg0).requestAnimationFrame(getObject(arg1));
905
+ return ret;
906
+ }, arguments) };
907
+ imports.wbg.__wbg_clearTimeout_220be2fa0577b342 = function(arg0, arg1) {
908
+ getObject(arg0).clearTimeout(arg1);
909
+ };
910
+ imports.wbg.__wbg_fetch_25c13b73a41a6660 = function(arg0, arg1, arg2) {
911
+ const ret = getObject(arg0).fetch(getStringFromWasm0(arg1, arg2));
912
+ return addHeapObject(ret);
913
+ };
914
+ imports.wbg.__wbg_setTimeout_eb1a0d116c26d9f6 = function() { return handleError(function (arg0, arg1, arg2) {
915
+ const ret = getObject(arg0).setTimeout(getObject(arg1), arg2);
916
+ return ret;
917
+ }, arguments) };
918
+ imports.wbg.__wbg_clientX_1a480606ab0cabaa = function(arg0) {
919
+ const ret = getObject(arg0).clientX;
920
+ return ret;
921
+ };
922
+ imports.wbg.__wbg_clientY_9c7878f7faf3900f = function(arg0) {
923
+ const ret = getObject(arg0).clientY;
924
+ return ret;
925
+ };
926
+ imports.wbg.__wbg_offsetX_5a58f16f6c3a41b6 = function(arg0) {
927
+ const ret = getObject(arg0).offsetX;
928
+ return ret;
929
+ };
930
+ imports.wbg.__wbg_offsetY_c45b4956f6429a95 = function(arg0) {
931
+ const ret = getObject(arg0).offsetY;
932
+ return ret;
933
+ };
934
+ imports.wbg.__wbg_ctrlKey_0a805df688b5bf42 = function(arg0) {
935
+ const ret = getObject(arg0).ctrlKey;
936
+ return ret;
937
+ };
938
+ imports.wbg.__wbg_shiftKey_8a070ab6169b5fa4 = function(arg0) {
939
+ const ret = getObject(arg0).shiftKey;
940
+ return ret;
941
+ };
942
+ imports.wbg.__wbg_altKey_6fc1761a6b7a406e = function(arg0) {
943
+ const ret = getObject(arg0).altKey;
944
+ return ret;
945
+ };
946
+ imports.wbg.__wbg_metaKey_d89287be4389a3c1 = function(arg0) {
947
+ const ret = getObject(arg0).metaKey;
948
+ return ret;
949
+ };
950
+ imports.wbg.__wbg_button_7a095234b69de930 = function(arg0) {
951
+ const ret = getObject(arg0).button;
952
+ return ret;
953
+ };
954
+ imports.wbg.__wbg_buttons_d0f40e1650e3fa28 = function(arg0) {
955
+ const ret = getObject(arg0).buttons;
956
+ return ret;
957
+ };
958
+ imports.wbg.__wbg_movementX_966ec323c169d1a6 = function(arg0) {
959
+ const ret = getObject(arg0).movementX;
960
+ return ret;
961
+ };
962
+ imports.wbg.__wbg_movementY_b14b3bc8e1b31f23 = function(arg0) {
963
+ const ret = getObject(arg0).movementY;
964
+ return ret;
965
+ };
966
+ imports.wbg.__wbg_pressed_d881ce4add9c474b = function(arg0) {
967
+ const ret = getObject(arg0).pressed;
968
+ return ret;
969
+ };
970
+ imports.wbg.__wbg_value_c99f8b78cbe90703 = function(arg0) {
971
+ const ret = getObject(arg0).value;
972
+ return ret;
973
+ };
974
+ imports.wbg.__wbg_now_0cfdc90c97d0c24b = function(arg0) {
975
+ const ret = getObject(arg0).now();
976
+ return ret;
977
+ };
978
+ imports.wbg.__wbg_pointerId_701aab7b4fb073ff = function(arg0) {
979
+ const ret = getObject(arg0).pointerId;
980
+ return ret;
981
+ };
982
+ imports.wbg.__wbg_pressure_e388b6fd623a3917 = function(arg0) {
983
+ const ret = getObject(arg0).pressure;
984
+ return ret;
985
+ };
986
+ imports.wbg.__wbg_pointerType_0009b1e4e6b0f428 = function(arg0, arg1) {
987
+ const ret = getObject(arg1).pointerType;
988
+ const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
989
+ const len1 = WASM_VECTOR_LEN;
990
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
991
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
992
+ };
993
+ imports.wbg.__wbg_instanceof_Response_fc4327dbfcdf5ced = function(arg0) {
994
+ let result;
995
+ try {
996
+ result = getObject(arg0) instanceof Response;
997
+ } catch (_) {
998
+ result = false;
999
+ }
1000
+ const ret = result;
1001
+ return ret;
1002
+ };
1003
+ imports.wbg.__wbg_arrayBuffer_288fb3538806e85c = function() { return handleError(function (arg0) {
1004
+ const ret = getObject(arg0).arrayBuffer();
1005
+ return addHeapObject(ret);
1006
+ }, arguments) };
1007
+ imports.wbg.__wbg_copyToChannel_6e4bd2545a53db54 = function() { return handleError(function (arg0, arg1, arg2, arg3) {
1008
+ getObject(arg0).copyToChannel(getArrayF32FromWasm0(arg1, arg2), arg3);
1009
+ }, arguments) };
1010
+ imports.wbg.__wbg_x_6c8af74c3b4d8c09 = function(arg0) {
1011
+ const ret = getObject(arg0).x;
1012
+ return ret;
1013
+ };
1014
+ imports.wbg.__wbg_y_4cca2672ce1b5fc1 = function(arg0) {
1015
+ const ret = getObject(arg0).y;
1016
+ return ret;
1017
+ };
1018
+ imports.wbg.__wbg_width_e0c6b79d8cdd8897 = function(arg0) {
1019
+ const ret = getObject(arg0).width;
1020
+ return ret;
1021
+ };
1022
+ imports.wbg.__wbg_height_bed51746e072a118 = function(arg0) {
1023
+ const ret = getObject(arg0).height;
1024
+ return ret;
1025
+ };
1026
+ imports.wbg.__wbg_instanceof_HtmlCanvasElement_da5f9efa0688cf6d = function(arg0) {
1027
+ let result;
1028
+ try {
1029
+ result = getObject(arg0) instanceof HTMLCanvasElement;
1030
+ } catch (_) {
1031
+ result = false;
1032
+ }
1033
+ const ret = result;
1034
+ return ret;
1035
+ };
1036
+ imports.wbg.__wbg_width_2931aaedd21f1fff = function(arg0) {
1037
+ const ret = getObject(arg0).width;
1038
+ return ret;
1039
+ };
1040
+ imports.wbg.__wbg_setwidth_a667a942dba6656e = function(arg0, arg1) {
1041
+ getObject(arg0).width = arg1 >>> 0;
1042
+ };
1043
+ imports.wbg.__wbg_height_0d36fbbeb60b0661 = function(arg0) {
1044
+ const ret = getObject(arg0).height;
1045
+ return ret;
1046
+ };
1047
+ imports.wbg.__wbg_setheight_a747d440760fe5aa = function(arg0, arg1) {
1048
+ getObject(arg0).height = arg1 >>> 0;
1049
+ };
1050
+ imports.wbg.__wbg_getContext_6d1f155bb5c1096a = function() { return handleError(function (arg0, arg1, arg2, arg3) {
1051
+ const ret = getObject(arg0).getContext(getStringFromWasm0(arg1, arg2), getObject(arg3));
1052
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1053
+ }, arguments) };
1054
+ imports.wbg.__wbg_width_019b79813c2e80cf = function(arg0) {
1055
+ const ret = getObject(arg0).width;
1056
+ return ret;
1057
+ };
1058
+ imports.wbg.__wbg_height_12082005add04bb5 = function(arg0) {
1059
+ const ret = getObject(arg0).height;
1060
+ return ret;
1061
+ };
1062
+ imports.wbg.__wbg_matches_0f7e350783b542c2 = function(arg0) {
1063
+ const ret = getObject(arg0).matches;
1064
+ return ret;
1065
+ };
1066
+ imports.wbg.__wbg_bindVertexArrayOES_b7d9da7e073aa6b5 = function(arg0, arg1) {
1067
+ getObject(arg0).bindVertexArrayOES(getObject(arg1));
1068
+ };
1069
+ imports.wbg.__wbg_createVertexArrayOES_6a3c3a5a68201f8f = function(arg0) {
1070
+ const ret = getObject(arg0).createVertexArrayOES();
1071
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1072
+ };
1073
+ imports.wbg.__wbg_deleteVertexArrayOES_7bf4589e63d84df6 = function(arg0, arg1) {
1074
+ getObject(arg0).deleteVertexArrayOES(getObject(arg1));
1075
+ };
1076
+ imports.wbg.__wbg_width_0b4991f5cf7c640a = function(arg0) {
1077
+ const ret = getObject(arg0).width;
1078
+ return ret;
1079
+ };
1080
+ imports.wbg.__wbg_setwidth_15266a5e81f43cf0 = function(arg0, arg1) {
1081
+ getObject(arg0).width = arg1 >>> 0;
1082
+ };
1083
+ imports.wbg.__wbg_height_8cce73e95fb10fd3 = function(arg0) {
1084
+ const ret = getObject(arg0).height;
1085
+ return ret;
1086
+ };
1087
+ imports.wbg.__wbg_setheight_2e9bab573f1775a6 = function(arg0, arg1) {
1088
+ getObject(arg0).height = arg1 >>> 0;
1089
+ };
1090
+ imports.wbg.__wbg_framebufferTextureMultiviewOVR_4d911c3fccedc517 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {
1091
+ getObject(arg0).framebufferTextureMultiviewOVR(arg1 >>> 0, arg2 >>> 0, getObject(arg3), arg4, arg5, arg6);
1092
+ };
1093
+ imports.wbg.__wbg_deltaX_84508d00a1050e70 = function(arg0) {
1094
+ const ret = getObject(arg0).deltaX;
1095
+ return ret;
1096
+ };
1097
+ imports.wbg.__wbg_deltaY_64823169afb0335d = function(arg0) {
1098
+ const ret = getObject(arg0).deltaY;
1099
+ return ret;
1100
+ };
1101
+ imports.wbg.__wbg_deltaMode_1c680147cfdba8a5 = function(arg0) {
1102
+ const ret = getObject(arg0).deltaMode;
1103
+ return ret;
1104
+ };
1105
+ imports.wbg.__wbg_charCode_75cea1a3a6d66388 = function(arg0) {
1106
+ const ret = getObject(arg0).charCode;
1107
+ return ret;
1108
+ };
1109
+ imports.wbg.__wbg_keyCode_dfa86be31f5ef90c = function(arg0) {
1110
+ const ret = getObject(arg0).keyCode;
1111
+ return ret;
1112
+ };
1113
+ imports.wbg.__wbg_altKey_612289acf855835c = function(arg0) {
1114
+ const ret = getObject(arg0).altKey;
1115
+ return ret;
1116
+ };
1117
+ imports.wbg.__wbg_ctrlKey_582686fb2263dd3c = function(arg0) {
1118
+ const ret = getObject(arg0).ctrlKey;
1119
+ return ret;
1120
+ };
1121
+ imports.wbg.__wbg_shiftKey_48e8701355d8e2d4 = function(arg0) {
1122
+ const ret = getObject(arg0).shiftKey;
1123
+ return ret;
1124
+ };
1125
+ imports.wbg.__wbg_metaKey_43193b7cc99f8914 = function(arg0) {
1126
+ const ret = getObject(arg0).metaKey;
1127
+ return ret;
1128
+ };
1129
+ imports.wbg.__wbg_key_8aeaa079126a9cc7 = function(arg0, arg1) {
1130
+ const ret = getObject(arg1).key;
1131
+ const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1132
+ const len1 = WASM_VECTOR_LEN;
1133
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
1134
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
1135
+ };
1136
+ imports.wbg.__wbg_code_96d6322b968b2d17 = function(arg0, arg1) {
1137
+ const ret = getObject(arg1).code;
1138
+ const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1139
+ const len1 = WASM_VECTOR_LEN;
1140
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
1141
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
1142
+ };
1143
+ imports.wbg.__wbg_getModifierState_5102ee8843516d2f = function(arg0, arg1, arg2) {
1144
+ const ret = getObject(arg0).getModifierState(getStringFromWasm0(arg1, arg2));
1145
+ return ret;
1146
+ };
1147
+ imports.wbg.__wbg_destination_9e793cf556243084 = function(arg0) {
1148
+ const ret = getObject(arg0).destination;
1149
+ return addHeapObject(ret);
1150
+ };
1151
+ imports.wbg.__wbg_currentTime_c6831b97750b898c = function(arg0) {
1152
+ const ret = getObject(arg0).currentTime;
1153
+ return ret;
1154
+ };
1155
+ imports.wbg.__wbg_newwithcontextoptions_3fb88aa326cd01e0 = function() { return handleError(function (arg0) {
1156
+ const ret = new lAudioContext(getObject(arg0));
1157
+ return addHeapObject(ret);
1158
+ }, arguments) };
1159
+ imports.wbg.__wbg_close_51aa5539747ce076 = function() { return handleError(function (arg0) {
1160
+ const ret = getObject(arg0).close();
1161
+ return addHeapObject(ret);
1162
+ }, arguments) };
1163
+ imports.wbg.__wbg_createBuffer_13cd030d2b48e8fa = function() { return handleError(function (arg0, arg1, arg2, arg3) {
1164
+ const ret = getObject(arg0).createBuffer(arg1 >>> 0, arg2 >>> 0, arg3);
1165
+ return addHeapObject(ret);
1166
+ }, arguments) };
1167
+ imports.wbg.__wbg_createBufferSource_58423f6345b5f559 = function() { return handleError(function (arg0) {
1168
+ const ret = getObject(arg0).createBufferSource();
1169
+ return addHeapObject(ret);
1170
+ }, arguments) };
1171
+ imports.wbg.__wbg_resume_9dc64ed7c3a65255 = function() { return handleError(function (arg0) {
1172
+ const ret = getObject(arg0).resume();
1173
+ return addHeapObject(ret);
1174
+ }, arguments) };
1175
+ imports.wbg.__wbg_addEventListener_5651108fc3ffeb6e = function() { return handleError(function (arg0, arg1, arg2, arg3) {
1176
+ getObject(arg0).addEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3));
1177
+ }, arguments) };
1178
+ imports.wbg.__wbg_addEventListener_a5963e26cd7b176b = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
1179
+ getObject(arg0).addEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3), getObject(arg4));
1180
+ }, arguments) };
1181
+ imports.wbg.__wbg_removeEventListener_1fa0d9594cdb0b1d = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
1182
+ getObject(arg0).removeEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3), getObject(arg4));
1183
+ }, arguments) };
1184
+ imports.wbg.__wbg_getGamepads_cbb82980ae1db5e1 = function() { return handleError(function (arg0) {
1185
+ const ret = getObject(arg0).getGamepads();
1186
+ return addHeapObject(ret);
1187
+ }, arguments) };
1188
+ imports.wbg.__wbg_drawArraysInstancedANGLE_01b862ba133350a3 = function(arg0, arg1, arg2, arg3, arg4) {
1189
+ getObject(arg0).drawArraysInstancedANGLE(arg1 >>> 0, arg2, arg3, arg4);
1190
+ };
1191
+ imports.wbg.__wbg_drawElementsInstancedANGLE_ea6343af8bf9c9f8 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
1192
+ getObject(arg0).drawElementsInstancedANGLE(arg1 >>> 0, arg2, arg3 >>> 0, arg4, arg5);
1193
+ };
1194
+ imports.wbg.__wbg_vertexAttribDivisorANGLE_a8476eb778e16c70 = function(arg0, arg1, arg2) {
1195
+ getObject(arg0).vertexAttribDivisorANGLE(arg1 >>> 0, arg2 >>> 0);
1196
+ };
1197
+ imports.wbg.__wbg_setbuffer_beeece042e02534f = function(arg0, arg1) {
1198
+ getObject(arg0).buffer = getObject(arg1);
1199
+ };
1200
+ imports.wbg.__wbg_setonended_83dd83b7f84cdef2 = function(arg0, arg1) {
1201
+ getObject(arg0).onended = getObject(arg1);
1202
+ };
1203
+ imports.wbg.__wbg_start_99ecc2647eb67ca6 = function() { return handleError(function (arg0, arg1) {
1204
+ getObject(arg0).start(arg1);
1205
+ }, arguments) };
1206
+ imports.wbg.__wbg_maxChannelCount_a32b07796ef189d0 = function(arg0) {
1207
+ const ret = getObject(arg0).maxChannelCount;
1208
+ return ret;
1209
+ };
1210
+ imports.wbg.__wbg_setProperty_b95ef63ab852879e = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
1211
+ getObject(arg0).setProperty(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));
1212
+ }, arguments) };
1213
+ imports.wbg.__wbg_videoWidth_02eadb74917aa4fc = function(arg0) {
1214
+ const ret = getObject(arg0).videoWidth;
1215
+ return ret;
1216
+ };
1217
+ imports.wbg.__wbg_videoHeight_dac4c345988e5562 = function(arg0) {
1218
+ const ret = getObject(arg0).videoHeight;
1219
+ return ret;
1220
+ };
1221
+ imports.wbg.__wbg_parentElement_c75962bc9997ea5f = function(arg0) {
1222
+ const ret = getObject(arg0).parentElement;
1223
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1224
+ };
1225
+ imports.wbg.__wbg_appendChild_51339d4cde00ee22 = function() { return handleError(function (arg0, arg1) {
1226
+ const ret = getObject(arg0).appendChild(getObject(arg1));
1227
+ return addHeapObject(ret);
1228
+ }, arguments) };
1229
+ imports.wbg.__wbg_body_674aec4c1c0910cd = function(arg0) {
1230
+ const ret = getObject(arg0).body;
1231
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1232
+ };
1233
+ imports.wbg.__wbg_fullscreenElement_07d5b77ef6c958c1 = function(arg0) {
1234
+ const ret = getObject(arg0).fullscreenElement;
1235
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1236
+ };
1237
+ imports.wbg.__wbg_createElement_4891554b28d3388b = function() { return handleError(function (arg0, arg1, arg2) {
1238
+ const ret = getObject(arg0).createElement(getStringFromWasm0(arg1, arg2));
1239
+ return addHeapObject(ret);
1240
+ }, arguments) };
1241
+ imports.wbg.__wbg_exitFullscreen_5fada21e8623256e = function(arg0) {
1242
+ getObject(arg0).exitFullscreen();
1243
+ };
1244
+ imports.wbg.__wbg_exitPointerLock_bf425ac90f055faa = function(arg0) {
1245
+ getObject(arg0).exitPointerLock();
1246
+ };
1247
+ imports.wbg.__wbg_querySelector_52ded52c20e23921 = function() { return handleError(function (arg0, arg1, arg2) {
1248
+ const ret = getObject(arg0).querySelector(getStringFromWasm0(arg1, arg2));
1249
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1250
+ }, arguments) };
1251
+ imports.wbg.__wbg_getBoundingClientRect_ac9db8cf97ca8083 = function(arg0) {
1252
+ const ret = getObject(arg0).getBoundingClientRect();
1253
+ return addHeapObject(ret);
1254
+ };
1255
+ imports.wbg.__wbg_requestFullscreen_3545278bcd44910c = function() { return handleError(function (arg0) {
1256
+ getObject(arg0).requestFullscreen();
1257
+ }, arguments) };
1258
+ imports.wbg.__wbg_requestPointerLock_368c5cc6c3ddd339 = function(arg0) {
1259
+ getObject(arg0).requestPointerLock();
1260
+ };
1261
+ imports.wbg.__wbg_setAttribute_e7e80b478b7b8b2f = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {
1262
+ getObject(arg0).setAttribute(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));
1263
+ }, arguments) };
1264
+ imports.wbg.__wbg_setPointerCapture_e7c29336490bba19 = function() { return handleError(function (arg0, arg1) {
1265
+ getObject(arg0).setPointerCapture(arg1);
1266
+ }, arguments) };
1267
+ imports.wbg.__wbg_style_3801009b2339aa94 = function(arg0) {
1268
+ const ret = getObject(arg0).style;
1269
+ return addHeapObject(ret);
1270
+ };
1271
+ imports.wbg.__wbg_bufferData_92a3e0b745b0d726 = function(arg0, arg1, arg2, arg3) {
1272
+ getObject(arg0).bufferData(arg1 >>> 0, arg2, arg3 >>> 0);
1273
+ };
1274
+ imports.wbg.__wbg_bufferData_a11a9f65f31e7256 = function(arg0, arg1, arg2, arg3) {
1275
+ getObject(arg0).bufferData(arg1 >>> 0, getObject(arg2), arg3 >>> 0);
1276
+ };
1277
+ imports.wbg.__wbg_bufferSubData_fca6f1c10273be21 = function(arg0, arg1, arg2, arg3) {
1278
+ getObject(arg0).bufferSubData(arg1 >>> 0, arg2, getObject(arg3));
1279
+ };
1280
+ imports.wbg.__wbg_compressedTexSubImage2D_21078c6de0a71aad = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) {
1281
+ getObject(arg0).compressedTexSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, getObject(arg8));
1282
+ };
1283
+ imports.wbg.__wbg_readPixels_91b0d8854de90477 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7) {
1284
+ getObject(arg0).readPixels(arg1, arg2, arg3, arg4, arg5 >>> 0, arg6 >>> 0, getObject(arg7));
1285
+ }, arguments) };
1286
+ imports.wbg.__wbg_texSubImage2D_f1a31f8045b7f831 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) {
1287
+ getObject(arg0).texSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7 >>> 0, arg8 >>> 0, getObject(arg9));
1288
+ }, arguments) };
1289
+ imports.wbg.__wbg_uniform2fv_c928f6ba0085b381 = function(arg0, arg1, arg2, arg3) {
1290
+ getObject(arg0).uniform2fv(getObject(arg1), getArrayF32FromWasm0(arg2, arg3));
1291
+ };
1292
+ imports.wbg.__wbg_uniform2iv_7e5f8e7c2f4d4d6a = function(arg0, arg1, arg2, arg3) {
1293
+ getObject(arg0).uniform2iv(getObject(arg1), getArrayI32FromWasm0(arg2, arg3));
1294
+ };
1295
+ imports.wbg.__wbg_uniform3fv_1aba437b913c1926 = function(arg0, arg1, arg2, arg3) {
1296
+ getObject(arg0).uniform3fv(getObject(arg1), getArrayF32FromWasm0(arg2, arg3));
1297
+ };
1298
+ imports.wbg.__wbg_uniform3iv_23751fe4dfcdf539 = function(arg0, arg1, arg2, arg3) {
1299
+ getObject(arg0).uniform3iv(getObject(arg1), getArrayI32FromWasm0(arg2, arg3));
1300
+ };
1301
+ imports.wbg.__wbg_uniform4fv_7c51c2251d851cb2 = function(arg0, arg1, arg2, arg3) {
1302
+ getObject(arg0).uniform4fv(getObject(arg1), getArrayF32FromWasm0(arg2, arg3));
1303
+ };
1304
+ imports.wbg.__wbg_uniform4iv_27b49984e9c5d90a = function(arg0, arg1, arg2, arg3) {
1305
+ getObject(arg0).uniform4iv(getObject(arg1), getArrayI32FromWasm0(arg2, arg3));
1306
+ };
1307
+ imports.wbg.__wbg_uniformMatrix2fv_f8f3ef807f196bf1 = function(arg0, arg1, arg2, arg3, arg4) {
1308
+ getObject(arg0).uniformMatrix2fv(getObject(arg1), arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));
1309
+ };
1310
+ imports.wbg.__wbg_uniformMatrix3fv_341eec37953e50c5 = function(arg0, arg1, arg2, arg3, arg4) {
1311
+ getObject(arg0).uniformMatrix3fv(getObject(arg1), arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));
1312
+ };
1313
+ imports.wbg.__wbg_uniformMatrix4fv_465ab8de531f4f78 = function(arg0, arg1, arg2, arg3, arg4) {
1314
+ getObject(arg0).uniformMatrix4fv(getObject(arg1), arg2 !== 0, getArrayF32FromWasm0(arg3, arg4));
1315
+ };
1316
+ imports.wbg.__wbg_activeTexture_93b4de60af07da9c = function(arg0, arg1) {
1317
+ getObject(arg0).activeTexture(arg1 >>> 0);
1318
+ };
1319
+ imports.wbg.__wbg_attachShader_b65b695055670cb5 = function(arg0, arg1, arg2) {
1320
+ getObject(arg0).attachShader(getObject(arg1), getObject(arg2));
1321
+ };
1322
+ imports.wbg.__wbg_bindBuffer_313561e5bc0e533f = function(arg0, arg1, arg2) {
1323
+ getObject(arg0).bindBuffer(arg1 >>> 0, getObject(arg2));
1324
+ };
1325
+ imports.wbg.__wbg_bindFramebuffer_56bf6536a4ced0ec = function(arg0, arg1, arg2) {
1326
+ getObject(arg0).bindFramebuffer(arg1 >>> 0, getObject(arg2));
1327
+ };
1328
+ imports.wbg.__wbg_bindRenderbuffer_559c7c6b6676dddd = function(arg0, arg1, arg2) {
1329
+ getObject(arg0).bindRenderbuffer(arg1 >>> 0, getObject(arg2));
1330
+ };
1331
+ imports.wbg.__wbg_bindTexture_9cb5c770d1ba2cca = function(arg0, arg1, arg2) {
1332
+ getObject(arg0).bindTexture(arg1 >>> 0, getObject(arg2));
1333
+ };
1334
+ imports.wbg.__wbg_blendColor_b9006ef6c450acd0 = function(arg0, arg1, arg2, arg3, arg4) {
1335
+ getObject(arg0).blendColor(arg1, arg2, arg3, arg4);
1336
+ };
1337
+ imports.wbg.__wbg_blendEquation_f31ce08020786a09 = function(arg0, arg1) {
1338
+ getObject(arg0).blendEquation(arg1 >>> 0);
1339
+ };
1340
+ imports.wbg.__wbg_blendEquationSeparate_7ec5e34f066e44f8 = function(arg0, arg1, arg2) {
1341
+ getObject(arg0).blendEquationSeparate(arg1 >>> 0, arg2 >>> 0);
1342
+ };
1343
+ imports.wbg.__wbg_blendFunc_fbe9d3a688fe71c3 = function(arg0, arg1, arg2) {
1344
+ getObject(arg0).blendFunc(arg1 >>> 0, arg2 >>> 0);
1345
+ };
1346
+ imports.wbg.__wbg_blendFuncSeparate_7547ade0a7dfade2 = function(arg0, arg1, arg2, arg3, arg4) {
1347
+ getObject(arg0).blendFuncSeparate(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, arg4 >>> 0);
1348
+ };
1349
+ imports.wbg.__wbg_colorMask_7cbd7a102954ede9 = function(arg0, arg1, arg2, arg3, arg4) {
1350
+ getObject(arg0).colorMask(arg1 !== 0, arg2 !== 0, arg3 !== 0, arg4 !== 0);
1351
+ };
1352
+ imports.wbg.__wbg_compileShader_d88d0a8cd9b72b4d = function(arg0, arg1) {
1353
+ getObject(arg0).compileShader(getObject(arg1));
1354
+ };
1355
+ imports.wbg.__wbg_copyTexSubImage2D_3029f8dfe7543ab6 = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) {
1356
+ getObject(arg0).copyTexSubImage2D(arg1 >>> 0, arg2, arg3, arg4, arg5, arg6, arg7, arg8);
1357
+ };
1358
+ imports.wbg.__wbg_createBuffer_59051f4461e7c5e2 = function(arg0) {
1359
+ const ret = getObject(arg0).createBuffer();
1360
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1361
+ };
1362
+ imports.wbg.__wbg_createFramebuffer_223c1212ad76affc = function(arg0) {
1363
+ const ret = getObject(arg0).createFramebuffer();
1364
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1365
+ };
1366
+ imports.wbg.__wbg_createProgram_88dbe21c0b682e1a = function(arg0) {
1367
+ const ret = getObject(arg0).createProgram();
1368
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1369
+ };
1370
+ imports.wbg.__wbg_createRenderbuffer_bcb61b756ba21490 = function(arg0) {
1371
+ const ret = getObject(arg0).createRenderbuffer();
1372
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1373
+ };
1374
+ imports.wbg.__wbg_createShader_9d7d388633caad18 = function(arg0, arg1) {
1375
+ const ret = getObject(arg0).createShader(arg1 >>> 0);
1376
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1377
+ };
1378
+ imports.wbg.__wbg_createTexture_9d0bb4d741b8ad76 = function(arg0) {
1379
+ const ret = getObject(arg0).createTexture();
1380
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1381
+ };
1382
+ imports.wbg.__wbg_cullFace_4c086dc1d86a19b5 = function(arg0, arg1) {
1383
+ getObject(arg0).cullFace(arg1 >>> 0);
1384
+ };
1385
+ imports.wbg.__wbg_deleteBuffer_cdc6b9c73f54aff7 = function(arg0, arg1) {
1386
+ getObject(arg0).deleteBuffer(getObject(arg1));
1387
+ };
1388
+ imports.wbg.__wbg_deleteFramebuffer_fcc10cb143c6573d = function(arg0, arg1) {
1389
+ getObject(arg0).deleteFramebuffer(getObject(arg1));
1390
+ };
1391
+ imports.wbg.__wbg_deleteProgram_d8d7fc79ba83b256 = function(arg0, arg1) {
1392
+ getObject(arg0).deleteProgram(getObject(arg1));
1393
+ };
1394
+ imports.wbg.__wbg_deleteRenderbuffer_edf9e1b4e0a1e005 = function(arg0, arg1) {
1395
+ getObject(arg0).deleteRenderbuffer(getObject(arg1));
1396
+ };
1397
+ imports.wbg.__wbg_deleteShader_9a2f85efe5cb3706 = function(arg0, arg1) {
1398
+ getObject(arg0).deleteShader(getObject(arg1));
1399
+ };
1400
+ imports.wbg.__wbg_deleteTexture_a883356c5034d482 = function(arg0, arg1) {
1401
+ getObject(arg0).deleteTexture(getObject(arg1));
1402
+ };
1403
+ imports.wbg.__wbg_depthFunc_4eda7b4e682acbad = function(arg0, arg1) {
1404
+ getObject(arg0).depthFunc(arg1 >>> 0);
1405
+ };
1406
+ imports.wbg.__wbg_depthMask_a3071e13bb087102 = function(arg0, arg1) {
1407
+ getObject(arg0).depthMask(arg1 !== 0);
1408
+ };
1409
+ imports.wbg.__wbg_depthRange_ff5298a73fd02650 = function(arg0, arg1, arg2) {
1410
+ getObject(arg0).depthRange(arg1, arg2);
1411
+ };
1412
+ imports.wbg.__wbg_disable_5cf2070641fa2ed7 = function(arg0, arg1) {
1413
+ getObject(arg0).disable(arg1 >>> 0);
1414
+ };
1415
+ imports.wbg.__wbg_disableVertexAttribArray_8dacd44e21adcaa2 = function(arg0, arg1) {
1416
+ getObject(arg0).disableVertexAttribArray(arg1 >>> 0);
1417
+ };
1418
+ imports.wbg.__wbg_drawArrays_d5c7dc2b2376c85a = function(arg0, arg1, arg2, arg3) {
1419
+ getObject(arg0).drawArrays(arg1 >>> 0, arg2, arg3);
1420
+ };
1421
+ imports.wbg.__wbg_enable_8965e69c596f0a94 = function(arg0, arg1) {
1422
+ getObject(arg0).enable(arg1 >>> 0);
1423
+ };
1424
+ imports.wbg.__wbg_enableVertexAttribArray_2b0475db43533cf2 = function(arg0, arg1) {
1425
+ getObject(arg0).enableVertexAttribArray(arg1 >>> 0);
1426
+ };
1427
+ imports.wbg.__wbg_framebufferRenderbuffer_d80f5381d429bc45 = function(arg0, arg1, arg2, arg3, arg4) {
1428
+ getObject(arg0).framebufferRenderbuffer(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, getObject(arg4));
1429
+ };
1430
+ imports.wbg.__wbg_framebufferTexture2D_953e69a8bec22fa9 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
1431
+ getObject(arg0).framebufferTexture2D(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, getObject(arg4), arg5);
1432
+ };
1433
+ imports.wbg.__wbg_frontFace_0ba67b9e6365557c = function(arg0, arg1) {
1434
+ getObject(arg0).frontFace(arg1 >>> 0);
1435
+ };
1436
+ imports.wbg.__wbg_getActiveUniform_87df972e841afed2 = function(arg0, arg1, arg2) {
1437
+ const ret = getObject(arg0).getActiveUniform(getObject(arg1), arg2 >>> 0);
1438
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1439
+ };
1440
+ imports.wbg.__wbg_getParameter_bfab7f0b00c9d7fb = function() { return handleError(function (arg0, arg1) {
1441
+ const ret = getObject(arg0).getParameter(arg1 >>> 0);
1442
+ return addHeapObject(ret);
1443
+ }, arguments) };
1444
+ imports.wbg.__wbg_getProgramInfoLog_0b7af4ad85fa52a4 = function(arg0, arg1, arg2) {
1445
+ const ret = getObject(arg1).getProgramInfoLog(getObject(arg2));
1446
+ var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1447
+ var len1 = WASM_VECTOR_LEN;
1448
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
1449
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
1450
+ };
1451
+ imports.wbg.__wbg_getProgramParameter_2a3735278367f8bc = function(arg0, arg1, arg2) {
1452
+ const ret = getObject(arg0).getProgramParameter(getObject(arg1), arg2 >>> 0);
1453
+ return addHeapObject(ret);
1454
+ };
1455
+ imports.wbg.__wbg_getShaderInfoLog_979aafa403ffb252 = function(arg0, arg1, arg2) {
1456
+ const ret = getObject(arg1).getShaderInfoLog(getObject(arg2));
1457
+ var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1458
+ var len1 = WASM_VECTOR_LEN;
1459
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
1460
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
1461
+ };
1462
+ imports.wbg.__wbg_getShaderParameter_e8054f1d9026fb70 = function(arg0, arg1, arg2) {
1463
+ const ret = getObject(arg0).getShaderParameter(getObject(arg1), arg2 >>> 0);
1464
+ return addHeapObject(ret);
1465
+ };
1466
+ imports.wbg.__wbg_getUniformLocation_688976233799a45a = function(arg0, arg1, arg2, arg3) {
1467
+ const ret = getObject(arg0).getUniformLocation(getObject(arg1), getStringFromWasm0(arg2, arg3));
1468
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1469
+ };
1470
+ imports.wbg.__wbg_linkProgram_9a2d12d120d99917 = function(arg0, arg1) {
1471
+ getObject(arg0).linkProgram(getObject(arg1));
1472
+ };
1473
+ imports.wbg.__wbg_pixelStorei_5ec932ebefd00149 = function(arg0, arg1, arg2) {
1474
+ getObject(arg0).pixelStorei(arg1 >>> 0, arg2);
1475
+ };
1476
+ imports.wbg.__wbg_polygonOffset_55eea57bba1b49e9 = function(arg0, arg1, arg2) {
1477
+ getObject(arg0).polygonOffset(arg1, arg2);
1478
+ };
1479
+ imports.wbg.__wbg_renderbufferStorage_4bcd9ddf1749ce26 = function(arg0, arg1, arg2, arg3, arg4) {
1480
+ getObject(arg0).renderbufferStorage(arg1 >>> 0, arg2 >>> 0, arg3, arg4);
1481
+ };
1482
+ imports.wbg.__wbg_scissor_c8ec3b1e053f3756 = function(arg0, arg1, arg2, arg3, arg4) {
1483
+ getObject(arg0).scissor(arg1, arg2, arg3, arg4);
1484
+ };
1485
+ imports.wbg.__wbg_shaderSource_f435f9b74440bb54 = function(arg0, arg1, arg2, arg3) {
1486
+ getObject(arg0).shaderSource(getObject(arg1), getStringFromWasm0(arg2, arg3));
1487
+ };
1488
+ imports.wbg.__wbg_stencilFuncSeparate_0fae0ee7c04a23b2 = function(arg0, arg1, arg2, arg3, arg4) {
1489
+ getObject(arg0).stencilFuncSeparate(arg1 >>> 0, arg2 >>> 0, arg3, arg4 >>> 0);
1490
+ };
1491
+ imports.wbg.__wbg_stencilMask_79416c29ac1ce3a4 = function(arg0, arg1) {
1492
+ getObject(arg0).stencilMask(arg1 >>> 0);
1493
+ };
1494
+ imports.wbg.__wbg_stencilMaskSeparate_19bdb57664d2c34f = function(arg0, arg1, arg2) {
1495
+ getObject(arg0).stencilMaskSeparate(arg1 >>> 0, arg2 >>> 0);
1496
+ };
1497
+ imports.wbg.__wbg_stencilOpSeparate_18e0bd316555925f = function(arg0, arg1, arg2, arg3, arg4) {
1498
+ getObject(arg0).stencilOpSeparate(arg1 >>> 0, arg2 >>> 0, arg3 >>> 0, arg4 >>> 0);
1499
+ };
1500
+ imports.wbg.__wbg_texParameteri_1f17358e51eb8069 = function(arg0, arg1, arg2, arg3) {
1501
+ getObject(arg0).texParameteri(arg1 >>> 0, arg2 >>> 0, arg3);
1502
+ };
1503
+ imports.wbg.__wbg_uniform1f_7586c5e17ad254c9 = function(arg0, arg1, arg2) {
1504
+ getObject(arg0).uniform1f(getObject(arg1), arg2);
1505
+ };
1506
+ imports.wbg.__wbg_uniform1i_9f94ef0ba6b3cc66 = function(arg0, arg1, arg2) {
1507
+ getObject(arg0).uniform1i(getObject(arg1), arg2);
1508
+ };
1509
+ imports.wbg.__wbg_uniform4f_9aa5afa9177c6ab1 = function(arg0, arg1, arg2, arg3, arg4, arg5) {
1510
+ getObject(arg0).uniform4f(getObject(arg1), arg2, arg3, arg4, arg5);
1511
+ };
1512
+ imports.wbg.__wbg_useProgram_019eb6df066fabf5 = function(arg0, arg1) {
1513
+ getObject(arg0).useProgram(getObject(arg1));
1514
+ };
1515
+ imports.wbg.__wbg_vertexAttribPointer_ca11984ee8843c0a = function(arg0, arg1, arg2, arg3, arg4, arg5, arg6) {
1516
+ getObject(arg0).vertexAttribPointer(arg1 >>> 0, arg2, arg3 >>> 0, arg4 !== 0, arg5, arg6);
1517
+ };
1518
+ imports.wbg.__wbg_viewport_6ebef187c89e2616 = function(arg0, arg1, arg2, arg3, arg4) {
1519
+ getObject(arg0).viewport(arg1, arg2, arg3, arg4);
1520
+ };
1521
+ imports.wbg.__wbg_setchannelCount_7b7457adf57e1c22 = function(arg0, arg1) {
1522
+ getObject(arg0).channelCount = arg1 >>> 0;
1523
+ };
1524
+ imports.wbg.__wbg_connect_3f8f5ba805800c62 = function() { return handleError(function (arg0, arg1) {
1525
+ const ret = getObject(arg0).connect(getObject(arg1));
1526
+ return addHeapObject(ret);
1527
+ }, arguments) };
1528
+ imports.wbg.__wbg_target_f171e89c61e2bccf = function(arg0) {
1529
+ const ret = getObject(arg0).target;
1530
+ return isLikeNone(ret) ? 0 : addHeapObject(ret);
1531
+ };
1532
+ imports.wbg.__wbg_cancelBubble_90d1c3aa2a76cbeb = function(arg0) {
1533
+ const ret = getObject(arg0).cancelBubble;
1534
+ return ret;
1535
+ };
1536
+ imports.wbg.__wbg_preventDefault_24104f3f0a54546a = function(arg0) {
1537
+ getObject(arg0).preventDefault();
1538
+ };
1539
+ imports.wbg.__wbg_stopPropagation_55539cfa2506c867 = function(arg0) {
1540
+ getObject(arg0).stopPropagation();
1541
+ };
1542
+ imports.wbg.__wbg_matches_07c564b5b4101cf2 = function(arg0) {
1543
+ const ret = getObject(arg0).matches;
1544
+ return ret;
1545
+ };
1546
+ imports.wbg.__wbg_addListener_85fb6e4bd17e8878 = function() { return handleError(function (arg0, arg1) {
1547
+ getObject(arg0).addListener(getObject(arg1));
1548
+ }, arguments) };
1549
+ imports.wbg.__wbg_removeListener_3b62020874cfc3c7 = function() { return handleError(function (arg0, arg1) {
1550
+ getObject(arg0).removeListener(getObject(arg1));
1551
+ }, arguments) };
1552
+ imports.wbg.__wbg_size_6eb4aa794f6bf220 = function(arg0) {
1553
+ const ret = getObject(arg0).size;
1554
+ return ret;
1555
+ };
1556
+ imports.wbg.__wbg_type_37bb6b4936b5e027 = function(arg0) {
1557
+ const ret = getObject(arg0).type;
1558
+ return ret;
1559
+ };
1560
+ imports.wbg.__wbg_name_ebae3a7e89367611 = function(arg0, arg1) {
1561
+ const ret = getObject(arg1).name;
1562
+ const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1563
+ const len1 = WASM_VECTOR_LEN;
1564
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
1565
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
1566
+ };
1567
+ imports.wbg.__wbg_drawBuffersWEBGL_139bf2fe0c1522d6 = function(arg0, arg1) {
1568
+ getObject(arg0).drawBuffersWEBGL(getObject(arg1));
1569
+ };
1570
+ imports.wbg.__wbg_error_c9309504864e78b5 = function(arg0, arg1) {
1571
+ console.error(getObject(arg0), getObject(arg1));
1572
+ };
1573
+ imports.wbg.__wbg_instanceof_DomException_11f350c47999e343 = function(arg0) {
1574
+ let result;
1575
+ try {
1576
+ result = getObject(arg0) instanceof DOMException;
1577
+ } catch (_) {
1578
+ result = false;
1579
+ }
1580
+ const ret = result;
1581
+ return ret;
1582
+ };
1583
+ imports.wbg.__wbg_message_ad3cc15a4d40c34b = function(arg0, arg1) {
1584
+ const ret = getObject(arg1).message;
1585
+ const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1586
+ const len1 = WASM_VECTOR_LEN;
1587
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
1588
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
1589
+ };
1590
+ imports.wbg.__wbg_id_2744422b8df66a4f = function(arg0, arg1) {
1591
+ const ret = getObject(arg1).id;
1592
+ const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1593
+ const len1 = WASM_VECTOR_LEN;
1594
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
1595
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
1596
+ };
1597
+ imports.wbg.__wbg_index_3fa2bac9f2910f3e = function(arg0) {
1598
+ const ret = getObject(arg0).index;
1599
+ return ret;
1600
+ };
1601
+ imports.wbg.__wbg_mapping_4620edf85483600a = function(arg0) {
1602
+ const ret = getObject(arg0).mapping;
1603
+ return addHeapObject(ret);
1604
+ };
1605
+ imports.wbg.__wbg_connected_7a42d2777c81c280 = function(arg0) {
1606
+ const ret = getObject(arg0).connected;
1607
+ return ret;
1608
+ };
1609
+ imports.wbg.__wbg_buttons_a308922181d88094 = function(arg0) {
1610
+ const ret = getObject(arg0).buttons;
1611
+ return addHeapObject(ret);
1612
+ };
1613
+ imports.wbg.__wbg_axes_1b9e57ee3e48f6df = function(arg0) {
1614
+ const ret = getObject(arg0).axes;
1615
+ return addHeapObject(ret);
1616
+ };
1617
+ imports.wbg.__wbg_getRandomValues_37fa2ca9e4e07fab = function() { return handleError(function (arg0, arg1) {
1618
+ getObject(arg0).getRandomValues(getObject(arg1));
1619
+ }, arguments) };
1620
+ imports.wbg.__wbg_randomFillSync_dc1e9a60c158336d = function() { return handleError(function (arg0, arg1) {
1621
+ getObject(arg0).randomFillSync(takeObject(arg1));
1622
+ }, arguments) };
1623
+ imports.wbg.__wbg_crypto_c48a774b022d20ac = function(arg0) {
1624
+ const ret = getObject(arg0).crypto;
1625
+ return addHeapObject(ret);
1626
+ };
1627
+ imports.wbg.__wbindgen_is_object = function(arg0) {
1628
+ const val = getObject(arg0);
1629
+ const ret = typeof(val) === 'object' && val !== null;
1630
+ return ret;
1631
+ };
1632
+ imports.wbg.__wbg_process_298734cf255a885d = function(arg0) {
1633
+ const ret = getObject(arg0).process;
1634
+ return addHeapObject(ret);
1635
+ };
1636
+ imports.wbg.__wbg_versions_e2e78e134e3e5d01 = function(arg0) {
1637
+ const ret = getObject(arg0).versions;
1638
+ return addHeapObject(ret);
1639
+ };
1640
+ imports.wbg.__wbg_node_1cd7a5d853dbea79 = function(arg0) {
1641
+ const ret = getObject(arg0).node;
1642
+ return addHeapObject(ret);
1643
+ };
1644
+ imports.wbg.__wbindgen_is_string = function(arg0) {
1645
+ const ret = typeof(getObject(arg0)) === 'string';
1646
+ return ret;
1647
+ };
1648
+ imports.wbg.__wbg_msCrypto_bcb970640f50a1e8 = function(arg0) {
1649
+ const ret = getObject(arg0).msCrypto;
1650
+ return addHeapObject(ret);
1651
+ };
1652
+ imports.wbg.__wbg_require_8f08ceecec0f4fee = function() { return handleError(function () {
1653
+ const ret = module.require;
1654
+ return addHeapObject(ret);
1655
+ }, arguments) };
1656
+ imports.wbg.__wbindgen_is_function = function(arg0) {
1657
+ const ret = typeof(getObject(arg0)) === 'function';
1658
+ return ret;
1659
+ };
1660
+ imports.wbg.__wbg_get_44be0491f933a435 = function(arg0, arg1) {
1661
+ const ret = getObject(arg0)[arg1 >>> 0];
1662
+ return addHeapObject(ret);
1663
+ };
1664
+ imports.wbg.__wbg_length_fff51ee6522a1a18 = function(arg0) {
1665
+ const ret = getObject(arg0).length;
1666
+ return ret;
1667
+ };
1668
+ imports.wbg.__wbg_new_898a68150f225f2e = function() {
1669
+ const ret = new Array();
1670
+ return addHeapObject(ret);
1671
+ };
1672
+ imports.wbg.__wbg_newnoargs_581967eacc0e2604 = function(arg0, arg1) {
1673
+ const ret = new Function(getStringFromWasm0(arg0, arg1));
1674
+ return addHeapObject(ret);
1675
+ };
1676
+ imports.wbg.__wbg_get_97b561fb56f034b5 = function() { return handleError(function (arg0, arg1) {
1677
+ const ret = Reflect.get(getObject(arg0), getObject(arg1));
1678
+ return addHeapObject(ret);
1679
+ }, arguments) };
1680
+ imports.wbg.__wbg_call_cb65541d95d71282 = function() { return handleError(function (arg0, arg1) {
1681
+ const ret = getObject(arg0).call(getObject(arg1));
1682
+ return addHeapObject(ret);
1683
+ }, arguments) };
1684
+ imports.wbg.__wbg_new_b51585de1b234aff = function() {
1685
+ const ret = new Object();
1686
+ return addHeapObject(ret);
1687
+ };
1688
+ imports.wbg.__wbg_self_1ff1d729e9aae938 = function() { return handleError(function () {
1689
+ const ret = self.self;
1690
+ return addHeapObject(ret);
1691
+ }, arguments) };
1692
+ imports.wbg.__wbg_window_5f4faef6c12b79ec = function() { return handleError(function () {
1693
+ const ret = window.window;
1694
+ return addHeapObject(ret);
1695
+ }, arguments) };
1696
+ imports.wbg.__wbg_globalThis_1d39714405582d3c = function() { return handleError(function () {
1697
+ const ret = globalThis.globalThis;
1698
+ return addHeapObject(ret);
1699
+ }, arguments) };
1700
+ imports.wbg.__wbg_global_651f05c6a0944d1c = function() { return handleError(function () {
1701
+ const ret = global.global;
1702
+ return addHeapObject(ret);
1703
+ }, arguments) };
1704
+ imports.wbg.__wbindgen_is_undefined = function(arg0) {
1705
+ const ret = getObject(arg0) === undefined;
1706
+ return ret;
1707
+ };
1708
+ imports.wbg.__wbg_eval_8c72ad5eafe427f2 = function() { return handleError(function (arg0, arg1) {
1709
+ const ret = eval(getStringFromWasm0(arg0, arg1));
1710
+ return addHeapObject(ret);
1711
+ }, arguments) };
1712
+ imports.wbg.__wbg_of_053899a68de3ef48 = function(arg0) {
1713
+ const ret = Array.of(getObject(arg0));
1714
+ return addHeapObject(ret);
1715
+ };
1716
+ imports.wbg.__wbg_push_ca1c26067ef907ac = function(arg0, arg1) {
1717
+ const ret = getObject(arg0).push(getObject(arg1));
1718
+ return ret;
1719
+ };
1720
+ imports.wbg.__wbg_call_01734de55d61e11d = function() { return handleError(function (arg0, arg1, arg2) {
1721
+ const ret = getObject(arg0).call(getObject(arg1), getObject(arg2));
1722
+ return addHeapObject(ret);
1723
+ }, arguments) };
1724
+ imports.wbg.__wbg_now_9c5990bda04c7e53 = function() {
1725
+ const ret = Date.now();
1726
+ return ret;
1727
+ };
1728
+ imports.wbg.__wbg_is_205d914af04a8faa = function(arg0, arg1) {
1729
+ const ret = Object.is(getObject(arg0), getObject(arg1));
1730
+ return ret;
1731
+ };
1732
+ imports.wbg.__wbg_resolve_53698b95aaf7fcf8 = function(arg0) {
1733
+ const ret = Promise.resolve(getObject(arg0));
1734
+ return addHeapObject(ret);
1735
+ };
1736
+ imports.wbg.__wbg_then_f7e06ee3c11698eb = function(arg0, arg1) {
1737
+ const ret = getObject(arg0).then(getObject(arg1));
1738
+ return addHeapObject(ret);
1739
+ };
1740
+ imports.wbg.__wbg_then_b2267541e2a73865 = function(arg0, arg1, arg2) {
1741
+ const ret = getObject(arg0).then(getObject(arg1), getObject(arg2));
1742
+ return addHeapObject(ret);
1743
+ };
1744
+ imports.wbg.__wbg_buffer_085ec1f694018c4f = function(arg0) {
1745
+ const ret = getObject(arg0).buffer;
1746
+ return addHeapObject(ret);
1747
+ };
1748
+ imports.wbg.__wbg_newwithbyteoffsetandlength_828b952f0e692245 = function(arg0, arg1, arg2) {
1749
+ const ret = new Int8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);
1750
+ return addHeapObject(ret);
1751
+ };
1752
+ imports.wbg.__wbg_newwithbyteoffsetandlength_735ed5ea2ae07fe9 = function(arg0, arg1, arg2) {
1753
+ const ret = new Int16Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);
1754
+ return addHeapObject(ret);
1755
+ };
1756
+ imports.wbg.__wbg_newwithbyteoffsetandlength_9f43b22ab631d1d6 = function(arg0, arg1, arg2) {
1757
+ const ret = new Int32Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);
1758
+ return addHeapObject(ret);
1759
+ };
1760
+ imports.wbg.__wbg_newwithbyteoffsetandlength_6da8e527659b86aa = function(arg0, arg1, arg2) {
1761
+ const ret = new Uint8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);
1762
+ return addHeapObject(ret);
1763
+ };
1764
+ imports.wbg.__wbg_new_8125e318e6245eed = function(arg0) {
1765
+ const ret = new Uint8Array(getObject(arg0));
1766
+ return addHeapObject(ret);
1767
+ };
1768
+ imports.wbg.__wbg_set_5cf90238115182c3 = function(arg0, arg1, arg2) {
1769
+ getObject(arg0).set(getObject(arg1), arg2 >>> 0);
1770
+ };
1771
+ imports.wbg.__wbg_length_72e2208bbc0efc61 = function(arg0) {
1772
+ const ret = getObject(arg0).length;
1773
+ return ret;
1774
+ };
1775
+ imports.wbg.__wbg_newwithbyteoffsetandlength_31ff1024ef0c63c7 = function(arg0, arg1, arg2) {
1776
+ const ret = new Uint16Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);
1777
+ return addHeapObject(ret);
1778
+ };
1779
+ imports.wbg.__wbg_newwithbyteoffsetandlength_6df0e8c3efd2a5d3 = function(arg0, arg1, arg2) {
1780
+ const ret = new Uint32Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);
1781
+ return addHeapObject(ret);
1782
+ };
1783
+ imports.wbg.__wbg_newwithbyteoffsetandlength_69193e31c844b792 = function(arg0, arg1, arg2) {
1784
+ const ret = new Float32Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);
1785
+ return addHeapObject(ret);
1786
+ };
1787
+ imports.wbg.__wbg_newwithlength_e5d69174d6984cd7 = function(arg0) {
1788
+ const ret = new Uint8Array(arg0 >>> 0);
1789
+ return addHeapObject(ret);
1790
+ };
1791
+ imports.wbg.__wbg_subarray_13db269f57aa838d = function(arg0, arg1, arg2) {
1792
+ const ret = getObject(arg0).subarray(arg1 >>> 0, arg2 >>> 0);
1793
+ return addHeapObject(ret);
1794
+ };
1795
+ imports.wbg.__wbg_set_092e06b0f9d71865 = function() { return handleError(function (arg0, arg1, arg2) {
1796
+ const ret = Reflect.set(getObject(arg0), getObject(arg1), getObject(arg2));
1797
+ return ret;
1798
+ }, arguments) };
1799
+ imports.wbg.__wbindgen_debug_string = function(arg0, arg1) {
1800
+ const ret = debugString(getObject(arg1));
1801
+ const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
1802
+ const len1 = WASM_VECTOR_LEN;
1803
+ getInt32Memory0()[arg0 / 4 + 1] = len1;
1804
+ getInt32Memory0()[arg0 / 4 + 0] = ptr1;
1805
+ };
1806
+ imports.wbg.__wbindgen_throw = function(arg0, arg1) {
1807
+ throw new Error(getStringFromWasm0(arg0, arg1));
1808
+ };
1809
+ imports.wbg.__wbindgen_memory = function() {
1810
+ const ret = wasm.memory;
1811
+ return addHeapObject(ret);
1812
+ };
1813
+ imports.wbg.__wbindgen_closure_wrapper2674 = function(arg0, arg1, arg2) {
1814
+ const ret = makeMutClosure(arg0, arg1, 1445, __wbg_adapter_34);
1815
+ return addHeapObject(ret);
1816
+ };
1817
+ imports.wbg.__wbindgen_closure_wrapper2676 = function(arg0, arg1, arg2) {
1818
+ const ret = makeMutClosure(arg0, arg1, 1445, __wbg_adapter_34);
1819
+ return addHeapObject(ret);
1820
+ };
1821
+ imports.wbg.__wbindgen_closure_wrapper2678 = function(arg0, arg1, arg2) {
1822
+ const ret = makeMutClosure(arg0, arg1, 1445, __wbg_adapter_34);
1823
+ return addHeapObject(ret);
1824
+ };
1825
+ imports.wbg.__wbindgen_closure_wrapper2680 = function(arg0, arg1, arg2) {
1826
+ const ret = makeMutClosure(arg0, arg1, 1445, __wbg_adapter_34);
1827
+ return addHeapObject(ret);
1828
+ };
1829
+ imports.wbg.__wbindgen_closure_wrapper2682 = function(arg0, arg1, arg2) {
1830
+ const ret = makeMutClosure(arg0, arg1, 1445, __wbg_adapter_34);
1831
+ return addHeapObject(ret);
1832
+ };
1833
+ imports.wbg.__wbindgen_closure_wrapper2684 = function(arg0, arg1, arg2) {
1834
+ const ret = makeMutClosure(arg0, arg1, 1445, __wbg_adapter_34);
1835
+ return addHeapObject(ret);
1836
+ };
1837
+ imports.wbg.__wbindgen_closure_wrapper2686 = function(arg0, arg1, arg2) {
1838
+ const ret = makeMutClosure(arg0, arg1, 1445, __wbg_adapter_47);
1839
+ return addHeapObject(ret);
1840
+ };
1841
+ imports.wbg.__wbindgen_closure_wrapper2688 = function(arg0, arg1, arg2) {
1842
+ const ret = makeMutClosure(arg0, arg1, 1445, __wbg_adapter_34);
1843
+ return addHeapObject(ret);
1844
+ };
1845
+ imports.wbg.__wbindgen_closure_wrapper2690 = function(arg0, arg1, arg2) {
1846
+ const ret = makeMutClosure(arg0, arg1, 1445, __wbg_adapter_34);
1847
+ return addHeapObject(ret);
1848
+ };
1849
+ imports.wbg.__wbindgen_closure_wrapper3134 = function(arg0, arg1, arg2) {
1850
+ const ret = makeMutClosure(arg0, arg1, 1741, __wbg_adapter_54);
1851
+ return addHeapObject(ret);
1852
+ };
1853
+ imports.wbg.__wbindgen_closure_wrapper25383 = function(arg0, arg1, arg2) {
1854
+ const ret = makeMutClosure(arg0, arg1, 17487, __wbg_adapter_57);
1855
+ return addHeapObject(ret);
1856
+ };
1857
+ imports.wbg.__wbindgen_closure_wrapper51161 = function(arg0, arg1, arg2) {
1858
+ const ret = makeMutClosure(arg0, arg1, 34616, __wbg_adapter_60);
1859
+ return addHeapObject(ret);
1860
+ };
1861
+
1862
+ return imports;
1863
+ }
1864
+
1865
+ function __wbg_init_memory(imports, maybe_memory) {
1866
+
1867
+ }
1868
+
1869
+ function __wbg_finalize_init(instance, module) {
1870
+ wasm = instance.exports;
1871
+ __wbg_init.__wbindgen_wasm_module = module;
1872
+ cachedFloat32Memory0 = null;
1873
+ cachedFloat64Memory0 = null;
1874
+ cachedInt32Memory0 = null;
1875
+ cachedUint32Memory0 = null;
1876
+ cachedUint8Memory0 = null;
1877
+
1878
+ wasm.__wbindgen_start();
1879
+ return wasm;
1880
+ }
1881
+
1882
+ function initSync(module) {
1883
+ if (wasm !== undefined) return wasm;
1884
+
1885
+ const imports = __wbg_get_imports();
1886
+
1887
+ __wbg_init_memory(imports);
1888
+
1889
+ if (!(module instanceof WebAssembly.Module)) {
1890
+ module = new WebAssembly.Module(module);
1891
+ }
1892
+
1893
+ const instance = new WebAssembly.Instance(module, imports);
1894
+
1895
+ return __wbg_finalize_init(instance, module);
1896
+ }
1897
+
1898
+ async function __wbg_init(input) {
1899
+ if (wasm !== undefined) return wasm;
1900
+
1901
+ if (typeof input === 'undefined') {
1902
+ input = new URL('sandbox_bevy_bg.wasm', import.meta.url);
1903
+ }
1904
+ const imports = __wbg_get_imports();
1905
+
1906
+ if (typeof input === 'string' || (typeof Request === 'function' && input instanceof Request) || (typeof URL === 'function' && input instanceof URL)) {
1907
+ input = fetch(input);
1908
+ }
1909
+
1910
+ __wbg_init_memory(imports);
1911
+
1912
+ const { instance, module } = await __wbg_load(await input, imports);
1913
+
1914
+ return __wbg_finalize_init(instance, module);
1915
+ }
1916
+
1917
+ export { initSync }
1918
+ export default __wbg_init;
svelte/src/lib/pkg/sandbox_bevy_bg.wasm ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:7736eef93a22c0f7e5efb0677aae9b6e835ed4d674b472158e39a7d5174951dc
3
+ size 28537081
svelte/src/lib/pkg/sandbox_bevy_bg.wasm.d.ts ADDED
@@ -0,0 +1,62 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ export const memory: WebAssembly.Memory;
4
+ export function main(a: number, b: number): number;
5
+ export function wgpu_compute_pass_set_pipeline(a: number, b: number): void;
6
+ export function wgpu_compute_pass_set_bind_group(a: number, b: number, c: number, d: number, e: number): void;
7
+ export function wgpu_compute_pass_set_push_constant(a: number, b: number, c: number, d: number): void;
8
+ export function wgpu_compute_pass_insert_debug_marker(a: number, b: number, c: number): void;
9
+ export function wgpu_compute_pass_push_debug_group(a: number, b: number, c: number): void;
10
+ export function wgpu_compute_pass_pop_debug_group(a: number): void;
11
+ export function wgpu_compute_pass_write_timestamp(a: number, b: number, c: number): void;
12
+ export function wgpu_compute_pass_begin_pipeline_statistics_query(a: number, b: number, c: number): void;
13
+ export function wgpu_compute_pass_end_pipeline_statistics_query(a: number): void;
14
+ export function wgpu_compute_pass_dispatch_workgroups(a: number, b: number, c: number, d: number): void;
15
+ export function wgpu_compute_pass_dispatch_workgroups_indirect(a: number, b: number, c: number): void;
16
+ export function wgpu_render_bundle_set_pipeline(a: number, b: number): void;
17
+ export function wgpu_render_bundle_set_bind_group(a: number, b: number, c: number, d: number, e: number): void;
18
+ export function wgpu_render_bundle_set_vertex_buffer(a: number, b: number, c: number, d: number, e: number): void;
19
+ export function wgpu_render_bundle_set_push_constants(a: number, b: number, c: number, d: number, e: number): void;
20
+ export function wgpu_render_bundle_draw(a: number, b: number, c: number, d: number, e: number): void;
21
+ export function wgpu_render_bundle_draw_indexed(a: number, b: number, c: number, d: number, e: number, f: number): void;
22
+ export function wgpu_render_bundle_draw_indirect(a: number, b: number, c: number): void;
23
+ export function wgpu_render_bundle_draw_indexed_indirect(a: number, b: number, c: number): void;
24
+ export function wgpu_render_pass_set_pipeline(a: number, b: number): void;
25
+ export function wgpu_render_pass_set_bind_group(a: number, b: number, c: number, d: number, e: number): void;
26
+ export function wgpu_render_pass_set_vertex_buffer(a: number, b: number, c: number, d: number, e: number): void;
27
+ export function wgpu_render_pass_set_push_constants(a: number, b: number, c: number, d: number, e: number): void;
28
+ export function wgpu_render_pass_draw(a: number, b: number, c: number, d: number, e: number): void;
29
+ export function wgpu_render_pass_draw_indexed(a: number, b: number, c: number, d: number, e: number, f: number): void;
30
+ export function wgpu_render_pass_draw_indirect(a: number, b: number, c: number): void;
31
+ export function wgpu_render_pass_draw_indexed_indirect(a: number, b: number, c: number): void;
32
+ export function wgpu_render_pass_multi_draw_indirect(a: number, b: number, c: number, d: number): void;
33
+ export function wgpu_render_pass_multi_draw_indexed_indirect(a: number, b: number, c: number, d: number): void;
34
+ export function wgpu_render_pass_multi_draw_indirect_count(a: number, b: number, c: number, d: number, e: number, f: number): void;
35
+ export function wgpu_render_pass_multi_draw_indexed_indirect_count(a: number, b: number, c: number, d: number, e: number, f: number): void;
36
+ export function wgpu_render_pass_set_blend_constant(a: number, b: number): void;
37
+ export function wgpu_render_pass_set_scissor_rect(a: number, b: number, c: number, d: number, e: number): void;
38
+ export function wgpu_render_pass_set_viewport(a: number, b: number, c: number, d: number, e: number, f: number, g: number): void;
39
+ export function wgpu_render_pass_set_stencil_reference(a: number, b: number): void;
40
+ export function wgpu_render_pass_insert_debug_marker(a: number, b: number, c: number): void;
41
+ export function wgpu_render_pass_push_debug_group(a: number, b: number, c: number): void;
42
+ export function wgpu_render_pass_pop_debug_group(a: number): void;
43
+ export function wgpu_render_pass_write_timestamp(a: number, b: number, c: number): void;
44
+ export function wgpu_render_pass_begin_pipeline_statistics_query(a: number, b: number, c: number): void;
45
+ export function wgpu_render_pass_end_pipeline_statistics_query(a: number): void;
46
+ export function wgpu_render_pass_execute_bundles(a: number, b: number, c: number): void;
47
+ export function wgpu_render_bundle_set_index_buffer(a: number, b: number, c: number, d: number, e: number): void;
48
+ export function wgpu_render_bundle_pop_debug_group(a: number): void;
49
+ export function wgpu_render_bundle_insert_debug_marker(a: number, b: number): void;
50
+ export function wgpu_render_bundle_push_debug_group(a: number, b: number): void;
51
+ export function wgpu_render_pass_set_index_buffer(a: number, b: number, c: number, d: number, e: number): void;
52
+ export function __wbindgen_malloc(a: number, b: number): number;
53
+ export function __wbindgen_realloc(a: number, b: number, c: number, d: number): number;
54
+ export const __wbindgen_export_2: WebAssembly.Table;
55
+ export function _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h087aa75c2ef422bf(a: number, b: number, c: number): void;
56
+ export function _dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h7b2cdb1004d79a48(a: number, b: number): void;
57
+ export function _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__haccacba5b48e204b(a: number, b: number, c: number): void;
58
+ export function _dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hb967268334a36223(a: number, b: number): void;
59
+ export function _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h25604c97ab01cac0(a: number, b: number, c: number): void;
60
+ export function __wbindgen_free(a: number, b: number, c: number): void;
61
+ export function __wbindgen_exn_store(a: number): void;
62
+ export function __wbindgen_start(): void;
svelte/src/routes/+layout.svelte ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
 
1
+ <script>
2
+
3
+ // Styles
4
+ import "../app.css";
5
+
6
+ </script>
7
+
8
+ <slot />
svelte/src/routes/+page.svelte ADDED
@@ -0,0 +1,85 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <script lang="ts">
2
+ // Wasm module
3
+ import init from "$lib/pkg/sandbox_bevy";
4
+
5
+ // Svelte
6
+ import { onMount } from "svelte";
7
+
8
+ // Variables
9
+ let canvas: HTMLCanvasElement;
10
+ let isDragging = false;
11
+ let x = 0;
12
+ let y = 0;
13
+ let lastX = 0;
14
+ let lastY = 0;
15
+
16
+ onMount(() => init());
17
+
18
+ function handleMouseDown(e: MouseEvent) {
19
+ isDragging = true;
20
+ lastX = e.clientX;
21
+ lastY = e.clientY;
22
+ }
23
+
24
+ function handleMouseMove(e: MouseEvent) {
25
+ if (isDragging) {
26
+ const deltaX = e.clientX - lastX;
27
+ const deltaY = e.clientY - lastY;
28
+ x += deltaX;
29
+ y += deltaY;
30
+ lastX = e.clientX;
31
+ lastY = e.clientY;
32
+ const canvas = document.getElementById("window");
33
+ if (canvas) canvas.style.transform = `translate(${x}px, ${y}px)`;
34
+ }
35
+ }
36
+
37
+ function handleMouseUp() {
38
+ isDragging = false;
39
+ }
40
+
41
+ </script>
42
+
43
+ <!-- Main container -->
44
+ <div class="flex flex-col justify-center items-center w-full">
45
+ <!-- Window -->
46
+ <div id="window" class="flex flex-col justify-center items-center mt-40">
47
+ <!-- Title container -->
48
+ <button
49
+ on:mousedown={handleMouseDown}
50
+ on:mousemove={handleMouseMove}
51
+ on:mouseup={handleMouseUp}
52
+ class="cursor-default relative flex flex-row justify-between items-center w-full bg-[#393B3D] border-b border-b-[#000002] border border-[#626264] rounded-xl rounded-b-none"
53
+ >
54
+ <!-- macOS dots container -->
55
+ <div class="absolute left-2 space-x-2 flex flex-row justify-center items-center">
56
+ <div class="rounded-full h-3 w-3 bg-[#EC695F]" />
57
+ <div class="rounded-full h-3 w-3 bg-[#F5BE4F]" />
58
+ <div class="rounded-full h-3 w-3 bg-[#5E5E60]" />
59
+ </div>
60
+
61
+ <h1 class="font-bold py-[6px] text-center w-full text-sm text-[#B6B8B9]">Hell</h1>
62
+ </button>
63
+
64
+ <!-- Canvas container -->
65
+ <canvas
66
+ id="bevy-canvas"
67
+ on:contextmenu|preventDefault={() => {}}
68
+ class="shadow-2xl z-10 shadow-black/50 overflow-hidden rounded-xl border border-[#626264] border-t-0 rounded-t-none"
69
+ height="480"
70
+ width="640"
71
+ />
72
+ </div>
73
+
74
+ <!-- Instructions -->
75
+ <div class="mt-12">
76
+ <img src="images/instructs.svg" alt="Instructions" width="250" />
77
+ </div>
78
+
79
+ <!-- Credits -->
80
+ <div class="mt-12 text-sm text-[#636669] flex flex-col justify-center items-center space-y-1">
81
+ <p>Made by <a href="https://www.hugoduprez.com/" target="_blank" class="underline">Hugo</a> with <a href="https://www.rust-lang.org/" target="_blank" class="underline">Rust</a> and <a href="https://kit.svelte.dev/" target="_blank" class="underline">Svelte</a></p>
82
+ <a href="https://github.com/Hugo-Dz/rust-sandbox" target="_blank" class="underline">How to create games with Rust</a>
83
+ </div>
84
+
85
+ </div>
svelte/static/assets/blood_1.png ADDED
svelte/static/assets/blood_2.png ADDED
svelte/static/assets/bone_1.png ADDED