diff --git a/.deepsource.toml b/.deepsource.toml deleted file mode 100644 index edc4a89..0000000 --- a/.deepsource.toml +++ /dev/null @@ -1,11 +0,0 @@ -version = 1 - -[[analyzers]] -name = "javascript" - - [analyzers.meta] - plugins = ["react"] - environment = ["nodejs"] - -[[transformers]] -name = "prettier" \ No newline at end of file diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml deleted file mode 100644 index b267c4e..0000000 --- a/.github/FUNDING.yml +++ /dev/null @@ -1 +0,0 @@ -custom: ['https://paypal.me/keyyardhieu'] diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 38292d4..0000000 --- a/.gitignore +++ /dev/null @@ -1,60 +0,0 @@ -# Logs -logs -*.log -npm-debug.log* -yarn-debug.log* -yarn-error.log* -pnpm-debug.log* -lerna-debug.log* - -node_modules -dist -dist-ssr -*.local - -# Next.js -.next/ -out/ - -# Next build cache -.next/cache - -# Editor directories and files -.vscode/* -!.vscode/extensions.json -.idea -.DS_Store -*.suo -*.ntvs* -*.njsproj -*.sln -*.sw? - -.vercel - -# Vercel build output API and CLI cache -.vercel/output/ -.vercel/.cache/ -.vercel/project.json - -# General build / dev caches -build/ -.cache/ -public/build/ - -# Environment files (do NOT track secrets) -.env -.env.* -.env.local -.env.development.local -.env.production.local - -# Prevent committing large/binary download artifacts for discovery posts -public/discovery/*/*.zip -public/discovery/*/*.tar.gz -public/discovery/*/*.7z -public/discovery/*/*.exe -public/discovery/*/*.rar - -content/discovery/README.md -docs/* \ No newline at end of file diff --git a/.imgbotconfig b/.imgbotconfig deleted file mode 100644 index 2c63c08..0000000 --- a/.imgbotconfig +++ /dev/null @@ -1,2 +0,0 @@ -{ -} diff --git a/out/404.html b/404.html similarity index 89% rename from out/404.html rename to 404.html index 40fcdd8..bc017da 100644 --- a/out/404.html +++ b/404.html @@ -1 +1 @@ -404: This page could not be found

404

This page could not be found.

\ No newline at end of file +404: This page could not be found

404

This page could not be found.

\ No newline at end of file diff --git a/LICENSE b/LICENSE index 02c494a..5c1e6bf 100644 --- a/LICENSE +++ b/LICENSE @@ -1,14 +1,21 @@ -All Rights Reserved +MIT License -Copyright (c) 2025 Keyyard +Copyright (c) 2024 Keyyard -All rights reserved. No part of this publication, including the website, -images, documentation, or digital assets, may be reproduced, distributed, -modified, transmitted, stored in a retrieval system, or used in any form or -by any means, electronic, mechanical, photocopying, recording, or otherwise, -without the prior written permission of Keyyard. +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -Requests for permission to reproduce material should be sent to: contact@keyyard.xyz -Note: This All Rights Reserved notice is intended to prevent unauthorized -reuse of the site's content. For commercial licensing, contact the author to -discuss terms. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/README.md b/README.md index 9fca302..2702cef 100644 --- a/README.md +++ b/README.md @@ -1,68 +1,44 @@ # Keyyard Portfolio -Welcome to the **Keyyard Portfolio** project! This is my personal portfolio website, showcasing my work as an Official Minecraft Marketplace developer. The site highlights my expertise in game development, programming, and creative design. +Welcome to the Keyyard Portfolio project! This is my personal portfolio website showcasing the work as an Official Minecraft Marketplace developer. ## Table of Contents -- [Live Website](#live-website) -- [About the Project](#about-the-project) +- [Live Website](lLive-website) - [Features](#features) -- [Tech Stack](#tech-stack) -- [Getting Started](#getting-started) +- [Technologies Used](#technologies-used) - [Contributing](#contributing) - [License](#license) ## Live Website -Check out the Official Website - Portfolio at: [https://keyyard.xyz](https://keyyard.xyz). +![Keyyard Portfolio](image.png) -![Keyyard Official Website Screenshot1](public/img1.png) -![Keyyard Official Website Screenshot2](public/img2.png) -![Keyyard Official Website Screenshot3](public/img3.png) -![Keyyard Official Website Screenshot4](public/img4.png) -![Keyyard Official Website Screenshot5](public/img5.png) - -## About the Project - -This portfolio showcases my journey as a developer specializing in **Minecraft Add-on Development**, **Web Development**, and **Native Development**. It features interactive 3D elements, smooth animations, and a modern design to deliver an engaging user experience. The portfolio also highlights my technical skills, projects, and collaborations with notable clients like **PrestonPlayz** and other Official Minecraft Marketplace projects. +You can view the live portfolio at [https://keyyard.github.io](https://keyyard.github.io). ## Features -- **Interactive 3D Avatar**: A fully interactive 3D model of my Minecraft avatar that reacts to user input. -- **Smooth Scrolling and Animations**: Enhanced navigation and animations powered by `Framer Motion`. -- **Responsive Design**: Optimized for desktop, tablet, and mobile devices. -- **Email Integration**: Contact form powered by `EmailJS` for seamless communication. -- **Project Showcase**: Detailed project displays with links, images, and descriptions. -- **Modern UI/UX**: Clean, intuitive design using `Tailwind CSS`. - -## Tech Stack - -### Web Development - -- **Frontend**: React, Vanilla JavaScript -- **Backend**: FastAPI, Flask, Next.js, Prisma ORM -- **Databases**: PostgreSQL, SQLite, JSON +- Interactive 3D head +- Smooth scrolling and animations +- Responsive design +- Email integration +- ... -### Styling +## Technologies Used +- **React**: JavaScript library for building user interfaces +- **Three.js**: JavaScript 3D library +- **Framer Motion**: Library for animations - **Tailwind CSS**: Utility-first CSS framework -- **Bootstrap**: Additional styling framework - -### 3D and Animations - -- **Three.js**: JavaScript library for 3D graphics -- **Framer Motion**: Library for animations and transitions - -### Tools and Utilities - -- **Vite**: Modern frontend build tool -- **Google Analytics**: Website performance tracking -- **GitHub Actions**: CI/CD for automated deployment with Vercel +- **Vite**: Next-generation frontend tooling +- **EmailJS**: Service to send emails directly from JavaScript +- **React Hot Toast**: Notifications for React +- ... -### Programming Languages +## Contributing -- TypeScript, JavaScript +Contributions are welcome! Please open an issue or submit a pull request for any bugs or feature requests. -## Inspired? +## License -Feel free to explore the code and contribute! If you like the project, consider giving it a star ⭐️ on GitHub. It means a lot to me! +This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details. \ No newline at end of file diff --git a/out/_next/static/chunks/948-c875ce33dda0a1c8.js b/_next/static/chunks/948-c875ce33dda0a1c8.js similarity index 100% rename from out/_next/static/chunks/948-c875ce33dda0a1c8.js rename to _next/static/chunks/948-c875ce33dda0a1c8.js diff --git a/out/_next/static/chunks/fb7d5399-abf6ebf4e55cc4c3.js b/_next/static/chunks/fb7d5399-abf6ebf4e55cc4c3.js similarity index 100% rename from out/_next/static/chunks/fb7d5399-abf6ebf4e55cc4c3.js rename to _next/static/chunks/fb7d5399-abf6ebf4e55cc4c3.js diff --git a/out/_next/static/chunks/framework-60df94c654696e97.js b/_next/static/chunks/framework-60df94c654696e97.js similarity index 100% rename from out/_next/static/chunks/framework-60df94c654696e97.js rename to _next/static/chunks/framework-60df94c654696e97.js diff --git a/out/_next/static/chunks/main-5908f61a5a99f3e6.js b/_next/static/chunks/main-5908f61a5a99f3e6.js similarity index 100% rename from out/_next/static/chunks/main-5908f61a5a99f3e6.js rename to _next/static/chunks/main-5908f61a5a99f3e6.js diff --git a/out/_next/static/chunks/pages/_app-00a433c22c44949c.js b/_next/static/chunks/pages/_app-00a433c22c44949c.js similarity index 100% rename from out/_next/static/chunks/pages/_app-00a433c22c44949c.js rename to _next/static/chunks/pages/_app-00a433c22c44949c.js diff --git a/out/_next/static/chunks/pages/_error-fde50cb7f1ab27e0.js b/_next/static/chunks/pages/_error-fde50cb7f1ab27e0.js similarity index 100% rename from out/_next/static/chunks/pages/_error-fde50cb7f1ab27e0.js rename to _next/static/chunks/pages/_error-fde50cb7f1ab27e0.js diff --git a/out/_next/static/chunks/pages/index-848972490ecd4de7.js b/_next/static/chunks/pages/index-848972490ecd4de7.js similarity index 100% rename from out/_next/static/chunks/pages/index-848972490ecd4de7.js rename to _next/static/chunks/pages/index-848972490ecd4de7.js diff --git a/out/_next/static/chunks/polyfills-42372ed130431b0a.js b/_next/static/chunks/polyfills-42372ed130431b0a.js similarity index 100% rename from out/_next/static/chunks/polyfills-42372ed130431b0a.js rename to _next/static/chunks/polyfills-42372ed130431b0a.js diff --git a/out/_next/static/chunks/webpack-49857e786cdade6e.js b/_next/static/chunks/webpack-49857e786cdade6e.js similarity index 100% rename from out/_next/static/chunks/webpack-49857e786cdade6e.js rename to _next/static/chunks/webpack-49857e786cdade6e.js diff --git a/out/_next/static/css/92d1ee04679792d0.css b/_next/static/css/92d1ee04679792d0.css similarity index 100% rename from out/_next/static/css/92d1ee04679792d0.css rename to _next/static/css/92d1ee04679792d0.css diff --git a/out/_next/static/mLF5qyXQA7y8Mg0tbyjdC/_buildManifest.js b/_next/static/iNgItYryTlB7C9i5aioDH/_buildManifest.js similarity index 100% rename from out/_next/static/mLF5qyXQA7y8Mg0tbyjdC/_buildManifest.js rename to _next/static/iNgItYryTlB7C9i5aioDH/_buildManifest.js diff --git a/out/_next/static/mLF5qyXQA7y8Mg0tbyjdC/_ssgManifest.js b/_next/static/iNgItYryTlB7C9i5aioDH/_ssgManifest.js similarity index 100% rename from out/_next/static/mLF5qyXQA7y8Mg0tbyjdC/_ssgManifest.js rename to _next/static/iNgItYryTlB7C9i5aioDH/_ssgManifest.js diff --git a/out/assets/myHead.gltf b/assets/myHead.gltf similarity index 100% rename from out/assets/myHead.gltf rename to assets/myHead.gltf diff --git a/out/assets/projs/card_1.jpg b/assets/projs/card_1.jpg similarity index 97% rename from out/assets/projs/card_1.jpg rename to assets/projs/card_1.jpg index 422c24d..dc0c1e2 100644 Binary files a/out/assets/projs/card_1.jpg and b/assets/projs/card_1.jpg differ diff --git a/assets/projs/card_2.jpg b/assets/projs/card_2.jpg new file mode 100644 index 0000000..29b429d Binary files /dev/null and b/assets/projs/card_2.jpg differ diff --git a/assets/projs/card_4.jpg b/assets/projs/card_4.jpg new file mode 100644 index 0000000..5944ab3 Binary files /dev/null and b/assets/projs/card_4.jpg differ diff --git a/assets/projs/card_5.jpg b/assets/projs/card_5.jpg new file mode 100644 index 0000000..fd42bdb Binary files /dev/null and b/assets/projs/card_5.jpg differ diff --git a/assets/projs/smm.png b/assets/projs/smm.png new file mode 100644 index 0000000..c03c337 Binary files /dev/null and b/assets/projs/smm.png differ diff --git a/assets/projs/tc.png b/assets/projs/tc.png new file mode 100644 index 0000000..2f58e1f Binary files /dev/null and b/assets/projs/tc.png differ diff --git a/content/discovery/README.md.bak b/content/discovery/README.md.bak deleted file mode 100644 index 96c1273..0000000 --- a/content/discovery/README.md.bak +++ /dev/null @@ -1,152 +0,0 @@ -# Discovery — Authoring Tutorial & Formatting Tips - -This document is a short tutorial that walks you through creating a new Discovery post (Markdown) and the formatting best-practices we use on the site. - -Quick summary - -- Files live in: `content/discovery/` (one Markdown file per post) -- Images/assets live in: `public/discovery//` -- Build-time RSS: `public/discovery/rss.xml` (generated at build time) - -## Create a new post (quick start) - -1. Create the Markdown file. Use a lowercase, hyphenated slug for the filename. - -```bash -mkdir -p content/discovery/my-project -code content/discovery/my-project/index.md -``` - -1. Add frontmatter (required fields shown) at the top of the file: - -```yaml ---- -title: "My Project" -slug: "my-project" # optional (defaults to filename) -tags: ["utility","map"] -description: "One-line summary used in the listing and RSS" -date: "2025-10-08" # ISO YYYY-MM-DD -image: "/discovery/my-project/hero.png" -download: "https://cdn.example.com/my-project/my-project.zip" ---- -``` - -1. Add Markdown content below the frontmatter. Use H2/H3 headings for structure (avoid H1 in the body because the post title is the page H1). - -Minimal file example: - -Frontmatter (top of the file): - -```yaml ---- -title: "My Project" -description: "Short summary for listing" -date: "2025-10-08" -image: "/discovery/my-project/hero.png" ---- -``` - -Content skeleton (add below the frontmatter): - -## Overview - -Short intro paragraph used as the listing summary. - -## Installation - -Instructions, code block (add language): - -```bash -curl -L -o myproject.zip https://cdn.example.com/myproject.zip -``` - -## Usage - -Explain how to use the project, include screenshots with alt text: - -![Screenshot](/discovery/my-project/screenshot1.png) - -Formatting & styling tips - -- Headings: - - Use H2 (`##`) for section titles and H3 (`###`) for subsections. Do NOT add another H1 — the site's title comes from the post frontmatter. -- Lists: - - Use bulleted lists (`-` or `*`) for short item lists. For numbered steps use `1.`. -- Code blocks: - - Always include a language for fenced code blocks (e.g. `bash`, `ts`, `json`) so syntax highlighting works. -- Images: - - Store images under `public/discovery//` and reference them with absolute paths (e.g., `/discovery/my-project/hero.png`). - - Recommended sizes: hero image ~1200×600 px (or 3:2), thumbnails ~600×400. Use compressed web-friendly formats (WebP/PNG/JPEG). - - Always include descriptive `alt` text for accessibility and SEO. -- Links & downloads: - - For paid or large files host externally (S3, CDN, Gumroad). Put the public URL in the frontmatter `download:` field. - - For small free samples you may put a small archive under `public/discovery//` and link to it from the body or frontmatter. - -## Downloads in frontmatter - - You can include download URLs in a post's frontmatter. Two formats are supported: - - 1. Legacy single-download string: - - ```yaml - download: "https://example.com/files/my-addon-v1.0.mcpack" - ``` - - 1. Multiple-downloads array (recommended) — allows labeling versions and adding notes: - - ```yaml - downloads: - - label: "Release v1.2" - url: "https://cdn.example.com/tcvm/v1.2/tcvm.mcpack" - notes: "Stable release — recommended" - - label: "Beta v1.3-beta" - url: "https://cdn.example.com/tcvm/v1.3-beta/tcvm-modded.mcpack" - notes: "Beta — may be unstable" - ``` - - Buttons for each download will be rendered on the post page. For large or paid downloads, host files on an external CDN or filesharing service and add the external URL in the frontmatter to avoid committing binaries to the repository. - -- Table of contents and heading anchors - -- We inject `id` attributes for H2–H6 headings automatically, so linking to `#your-heading` in the page will work. -- If you want a TOC, place an explicit list at the top of the document. We render a `prose` style; you can add a small `.toc` wrapper if you want custom styling. - -Preview & RSS - -- Local preview: `npm run dev` and browse `http://localhost:3000/discovery`. -- Build-time RSS: `getStaticProps` generates `public/discovery/rss.xml` during `next build`. To regenerate the feed, run: - -```bash -npm run build -``` - -Accessibility & SEO tips - -- Keep the `description` short (1–2 sentences) — it’s used for RSS and card summaries. -- Use complete sentences, include descriptive alt text for images, and prefer semantic headings (H2/H3). - -Common troubleshooting - -- Images 404: ensure images are placed under `public/discovery//` and that your `image` frontmatter path matches exactly. -- Linter warnings: - - MD025: avoid adding a second H1; remove H1 from the body. - - MD033: the linter flags raw HTML inside Markdown — the README allows a small wrapper div for TOC but you can avoid inline HTML if you prefer. -- Styles not applying: ensure Tailwind's typography plugin is installed and the page uses `prose` or `prose-invert` for dark theme. - -Developer commands (quick) - -```bash -# scaffold a new post folder -mkdir -p public/discovery/my-project && mkdir -p content/discovery/my-project -cp path/to/image.png public/discovery/my-project/hero.png -code content/discovery/my-project/index.md - -# regenerate RSS (build) -npm run build -``` - -Finish & tips - -- Keep entries focused and short; the site shows a short description and thumbnails on the index page. Use the body for details, screenshots, and instructions. -- When ready to publish, verify the post preview under `npm run dev`, then commit the `content/discovery/.md` and any small images under `public/discovery//`. - diff --git a/content/discovery/absolute-guns-3-3d.md b/content/discovery/absolute-guns-3-3d.md deleted file mode 100644 index 5a2e535..0000000 --- a/content/discovery/absolute-guns-3-3d.md +++ /dev/null @@ -1,158 +0,0 @@ ---- -title: "Absolute Guns 3.3D Addon" -slug: "absolute-guns-3-3d" -tags: - - addon - - free -description: "The add-on focuses on being able to use simple 3D weapons in any add-on! Supports realms, worlds multiplayer, and servers. Fully made with scripts, allowing easy modification!" -date: "2025-10-31" -image: "https://media.forgecdn.net/avatars/thumbnails/1491/967/64/64/638969455591163801.jpg" -downloads: - - label: "Download from CurseForge" - url: "https://www.curseforge.com/minecraft-bedrock/addons/absolute-guns-3-3d/download" - notes: "Latest version available on CurseForge" -github: "https://github.com/Keyyard/absolute-guns-3d" ---- - -![Thumbnail](https://media.forgecdn.net/avatars/thumbnails/1491/967/64/64/638969455591163801.jpg) - -This addon adds 23 weapons in total (22 guns, 1 melee) to Minecraft Bedrock Edition, allowing you to use simple 3D weapons in any addon. It supports realms, worlds multiplayer, and dedicated servers. Fully made with scripts for easy modification. - -## Credits - -- AzozGamer936 (Original & Main Developer) -- Keyyard (Main Developer) -- Beyond64 (UI & Legacy renders) -- Matt (Legacy developer & Modeller) -- TheOdds (Legacy models) -- Puggo (Legacy models) -- Desno (Legacy icons) -- JustRomain (Scripts) -- Tem4ik (New models) -- DaffaTheOne (New renders) - -## Features - -- **23 Weapons:** 22 guns and 1 melee weapon. -- **Damage System:** Bypasses Minecraft's 10-tick immunity frames, supports damage drop-off, armor penetration, and knockback. -- **Customization:** Allows customization of fireRate, ammo count, velocity, reload time, shooting modes, animations, recoil, and more. -- **Reloading:** Full reloads only (ammo must be 0), using correct ammo in inventory. -- **Crafting:** Toggle uncraftable icon in crafting table to see craftable weapons. -- **Multiplayer Support:** Works in realms, worlds, and servers. - -## Content - -### Guns - -- **AK-47** - ![AK-47](https://i.ibb.co/B6NXjSd/image-26.png) - -- **M4** - ![M4](https://i.ibb.co/ThbCnbh/image-13.png) - -- **M16** - ![M16](https://i.ibb.co/p095trr/image-61.png) - -- **AK-47U** - ![AK-47U](https://i.ibb.co/Jv7khkD/image-25.png) - -- **Gold AK-47** - ![Gold AK-47](https://i.ibb.co/yWDr7Ps/image-62.png) - -- **PKM** - ![PKM](https://i.ibb.co/Zdtz2bt/image-7.png) - -- **MP5** - ![MP5](https://i.ibb.co/K00hKqH/image-10.png) - -- **MP5-K** - ![MP5-K](https://i.ibb.co/ZSzJJsS/image-9.png) - -- **Flamethrower** - ![Flamethrower](https://i.ibb.co/1mvqv75/image-20.png) - -- **Tactical Knife** - ![Tactical Knife](https://i.ibb.co/3hx3YbZ/image-3.png) - -- **Scoped Tactical Knife** - ![Scoped Tactical Knife](https://i.ibb.co/MZQt0t3/image-2.png) - -- **MGL** - ![MGL](https://i.ibb.co/YdJYvPQ/image-11.png) - -- **Glock** - ![Glock](https://i.ibb.co/3YrnQkp1/glock.png) - -- **Tactical Glock** - ![Tactical Glock](https://i.ibb.co/5MFz294/image-17.png) - -- **M3** - ![M3](https://i.ibb.co/9ghKwVc/image-14.png) - -- **M1014** - ![M1014](https://i.ibb.co/MP8SMpP/image-12.png) - -- **SPAS-12** - ![SPAS-12](https://i.ibb.co/yQz6Pk2/image-4.png) - -- **RPK** - ![RPK](https://i.ibb.co/gMT2WZ9/image-5.png) - -- **UMP-45** - ![UMP-45](https://i.ibb.co/DpBrb4Y/image-1.png) - -- **Bizon** - ![Bizon](https://i.ibb.co/nQ2FS3z/image-23.png) - -- **RPG-7** - ![RPG-7](https://i.ibb.co/DRLRg5R/image-6.png) - -- **MP-40** - ![MP-40](https://i.ibb.co/LZNB3C7/render-wassup-man.png) - -- **MG-42** - ![MG-42](https://i.ibb.co/5k8b9TV/render-wassup-man-2.png) - -## Reloading Weapons - -The addon only supports full reloads (ammo must be 0). Ensure you have the correct ammo in your inventory, then 'Eat' or use the weapon to reload. - -![Reloading](https://i.ibb.co/B5qCD3q2/Minecraft2025-10-24-23-36-51-02online-video-cutter-com-ezgif-com-optimize.gif) - -Note: Special weapons like Flamethrower & MGL take ammo components from their crafting recipe (TNT and Blaze Powder). - -## Crafting Weapons - -Toggle the uncraftable icon in the crafting table to see all weapons that can be crafted. - -![Crafting](https://media.forgecdn.net/attachments/description/null/description_58aef930-650a-4b79-afaf-cb5efe6500a8.png) - -## Damage System - -Weapons use a custom damage system bypassing Minecraft's immunity frames, with features like damage drop-off, armor penetration, and knockback. - -![Damage System](https://i.ibb.co/FbfxwHXV/Minecraft2025-10-24-23-46-09-03online-video-cutter-com-ezgif-com-optimize.gif) - -## Customization - -The system allows customization of fireRate, ammo count, velocity, reload time, shooting modes, animations, recoil, and more. - -![Customization](https://i.ibb.co/VWwWz7wF/Capture.png) - -## FAQ - -**Q: Is this addon complete?** - -A: This is a public beta and only 5% complete. Everything except the Glock is unfinished. - -**Q: How do I install?** - -A: Download from CurseForge and import the .mcaddon or .mcpack into Minecraft Bedrock. - -**Q: Compatibility?** - -A: Designed to be compatible, but test in controlled environments. - -**Q: Multiplayer support?** - -A: Yes, supports realms, worlds, and servers. diff --git a/content/discovery/hello-world.md.bak b/content/discovery/hello-world.md.bak deleted file mode 100644 index 8012f33..0000000 --- a/content/discovery/hello-world.md.bak +++ /dev/null @@ -1,65 +0,0 @@ ---- -title: "Hello World" -slug: "hello-world" -tags: - - demo -description: "first post!" -date: "2025-10-06" -image: "https://placehold.co/600x400/333/ddd?text=Hello+World" ---- - -Hello! This is the first Discovery post. - -I will be posting my works -- addons, tools,..etc here in the future. So you can access it easier, download it directly! -![demo banner](https://placehold.co/500x200/333/ddd?text=Demo+Banner) - -## Table of contents - -- [Overview](#overview) -- [For users](#for-users) -- [For clients](#for-clients) -- [Installation](#installation) -- [Usage](#usage) -- [Contributing](#contributing) -- [Contact & Support](#contact--support) -- [License & Download](#license--download) - - - -## Overview - -This is the first Discovery post. The Discovery section is where I will publish downloadable projects, tools, and community contributions. - -## For users - -- Browse projects and tools in one place — thumbnails and short descriptions make it easy to find what you need. -- Download links are provided per-post; paid assets link to secure hosts and free samples may be directly downloadable. -- Each post includes usage notes, screenshots, and basic troubleshooting tips so you can get up and running quickly. - -## For clients - -- Looking for custom work or commercial licenses? Use the Contact section to request a quote or start a discussion. -- Premium work (paid add-ons, enterprise integrations) will be delivered via secure download links and include license terms. -- I can provide custom development, white-labeling, or integration work — include requirements and timelines when you reach out. - -## Installation - -No installation is required to read posts — they are static pages on this site. If a post includes a downloadable asset, the frontmatter `download` field will point to an external URL where you can get the file. - -## Usage - -Use the Discovery index to browse projects. Click any item to open the full post where you'll find usage instructions, screenshots, and a download link if provided. - -## Contributing - -- If you want to contribute (bug reports, patches, or small assets), open an issue or a pull request on the corresponding GitHub repository linked in the post. -- For community-contributed assets, include a short README and a clear license so others know how to use your work. - -## Contact & Support - -- For general questions or help with a post, use the Contact section on the main site or open an issue if the project has a GitHub repo. -- For business inquiries (sponsorships, licensing, custom development), email [keyyard8888@gmail.com](mailto:keyyard8888@gmail.com) with a subject like "Discovery — Request" and include a short project brief. - -## License & Download - -Each post should include licensing information or a link to the license inside the Markdown content. For paid or large downloads I will provide external links; for small free samples a direct download link may be included. diff --git a/content/discovery/tcvm.md b/content/discovery/tcvm.md deleted file mode 100644 index 0d2ee62..0000000 --- a/content/discovery/tcvm.md +++ /dev/null @@ -1,111 +0,0 @@ ---- -title: "Tree Capitator & Vein Miner Addon" -slug: "tcvm" -tags: - - addon - - free -description: "Tree Capitator and Vein Miner Addon Mod for Minecraft." -date: "2025-10-06" -image: "/discovery/tcvm/banner2.webp" -downloads: - - label: "Tree Capitator & Vein Miner - With Controller v6.1.0" - url: "/discovery/tcvm/tcvm610.mcaddon" - notes: "Performance costing" - - label: "Tree Capitator & Vein Miner - Optimized no controller v6.2.0" - url: "/discovery/tcvm/tcvmOptv620.mcpack" - notes: "Performance optimized, only BP, no controller item" -github: https://github.com/Keyyard/Minecraft-Tree-Capitator-and-Vein-Miner-Addon ---- - -![Thumbnail](/discovery/tcvm/banner2.webp) - -This addon makes resource gathering faster and more convenient. - -## Credits - -This addon was created by @keyyard. - -### Contributors - -- Worldwidebrine: commands in version 0.0.2 -- [GlitchyTurtle](https://github.com/GlitchyTurtle): algorithms suggestion -- [Trea Beane](https://github.com/TreaBeane): algorithms suggestion -- [Beyond64](https://github.com/OsmaanGani): controller item -## Features - -- **Tree Capitator and Vein Miner Controller:** allows enabling and disabling TCVM. -- **Tree Capitator:** tree-felling when using axes and sneaking. -- **Vein Miner:** vein mining when using pickaxes and sneaking. -- **Enchantment Support:** respects Fortunes, Unbreaking, Silk Touch where applicable. -- **Durability Drain:** using TCVM drains tool durability so balance is preserved. -- **No Limit Optimized Performance:** the addon will not limit the number of blocks broken in a chain; instead it processes chains in small turns to avoid large single-frame work that causes lag. -- **Both:** both features activate only when using the correct tool while sneaking. - -![Crafting](/discovery/tcvm/crafting.webp) - -## Tree Capitator - -To activate Tree Capitator, ensure you are using an axe and sneaking (crouch) while breaking the bottom log of a tree. - -- Break the bottom block of a tree, and the entire tree will fall down. -- Works for all tree types (oak, birch, jungle, spruce, etc.). -- Supports nether trees like crimson and warped. -- Supports large/huge trees and new tree types such as mangrove and cherry. -- **Note:** Tree Capitator avoids mangrove roots to prevent unintended biome damage. - -![Tree Capitator](/discovery/tcvm/img5.webp) -![Tree Capitator](/discovery/tcvm/img4.webp) - -## Vein Miner - -To activate Vein Miner, ensure you are using a pickaxe and sneaking while breaking a block in an ore chain. - -- Breaking one block in an ore chain causes the connected ore chain to break and drop items. -- Works for all ore types, including nether ores and special blocks like nether debris. -- Supports gravel-style chains when used in the appropriate game contexts. - -![Vein Miner](/discovery/tcvm/img3.webp) -![Vein Miner](/discovery/tcvm/img2.webp) - -## Enchantment Support - -This addon respects common enchantments: - -- **Unbreaking:** reduces how quickly tools lose durability when used with TCVM. -- **Fortune:** increases drop quantities for ores. -- **Silk Touch:** allows collecting blocks instead of drops when applicable. - -![Silk Touch](/discovery/tcvm/silk_touch.gif) -![Fortune](/discovery/tcvm/fortune.gif) - -## Preview Videos - -![Preview](/discovery/tcvm/banner.webp) -Preview available above — click the thumbnail to open on YouTube. - -## FAQ (Frequently Asked Questions) - -**Q: Why is this addon on my GitHub?** - -A: This addon is hosted publicly to encourage collaboration and transparency. It’s open-source so contributors can propose improvements and fixes via pull requests. - -**Q: Can I use this addon in Creative Mode?** - -A: Yes — it works in Creative as well for faster testing and building. - -**Q: Are there compatibility issues with other addons?** - -A: The addon is designed to be compatible with many other addons. Conflicts are possible if other addons modify the same block-breaking logic; test in a controlled environment. - -**Q: How do I install the Tree Capitator and Vein Miner Addon?** - -1. Download the addon files from the GitHub release or MCPEDL (trusted host). -2. Import the addon into Minecraft Bedrock (open the .mcpack or follow the platform’s installation instructions). - -**Q: Is this addon available for Bedrock Edition or Java Edition?** - -A: This addon targets Bedrock Edition. - -**Q: Can I modify or redistribute this addon?** - -A: Modifying or redistributing this addon without permission from the creator is not permitted. You may fork the repository and create your own version (you will be credited for contributions). For commercial licensing or redistribution requests, contact the author. diff --git a/eslint.config.js b/eslint.config.js deleted file mode 100644 index a927e8f..0000000 --- a/eslint.config.js +++ /dev/null @@ -1,46 +0,0 @@ -import js from "@eslint/js"; -import globals from "globals"; -import react from "eslint-plugin-react"; -import reactHooks from "eslint-plugin-react-hooks"; -import reactRefresh from "eslint-plugin-react-refresh"; -import typescript from "@typescript-eslint/eslint-plugin"; -import parser from "@typescript-eslint/parser"; - -export default [ - { ignores: ["dist", ".next", "out", "node_modules"] }, - { - files: ["**/*.{js,jsx,ts,tsx}"], - languageOptions: { - ecmaVersion: 2020, - globals: globals.browser, - parser: parser, - parserOptions: { - ecmaVersion: "latest", - ecmaFeatures: { jsx: true }, - sourceType: "module", - }, - }, - settings: { react: { version: "18.3" } }, - plugins: { - react, - "react-hooks": reactHooks, - "react-refresh": reactRefresh, - "@typescript-eslint": typescript, - }, - rules: { - ...js.configs.recommended.rules, - ...react.configs.recommended.rules, - ...react.configs["jsx-runtime"].rules, - ...reactHooks.configs.recommended.rules, - ...typescript.configs.recommended.rules, - "react/jsx-no-target-blank": "off", - "react/prop-types": "off", // Using TypeScript for prop validation - "react-refresh/only-export-components": [ - "warn", - { allowConstantExport: true }, - ], - "@typescript-eslint/no-unused-vars": "off", - "react/no-unknown-property": "off", - }, - }, -]; diff --git a/image.png b/image.png new file mode 100644 index 0000000..5f51119 Binary files /dev/null and b/image.png differ diff --git a/index.html b/index.html index 988f42f..dd78085 100644 --- a/index.html +++ b/index.html @@ -1,26 +1,13 @@ - + - - - - - - - - - Keyyard Portfolio - - - - - -
- - + + + + Redirecting... + + + + +

If you are not redirected automatically, please click here to proceed.

+ diff --git a/keyyard.png b/keyyard.png new file mode 100644 index 0000000..721aaed Binary files /dev/null and b/keyyard.png differ diff --git a/next-env.d.ts b/next-env.d.ts deleted file mode 100644 index 254b73c..0000000 --- a/next-env.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -/// -/// -/// - -// NOTE: This file should not be edited -// see https://nextjs.org/docs/pages/api-reference/config/typescript for more information. diff --git a/next.config.js b/next.config.js deleted file mode 100644 index 80b704f..0000000 --- a/next.config.js +++ /dev/null @@ -1,19 +0,0 @@ -export const reactStrictMode = false; -export const productionBrowserSourceMaps = true; -import createBundleAnalyzer from "@next/bundle-analyzer"; - -const withBundleAnalyzer = createBundleAnalyzer({ - enabled: process.env.ANALYZE === "true", -}); - -export default withBundleAnalyzer({ - async redirects() { - return [ - { - source: "/discord", - destination: "https://discord.gg/s2VfQr69uz", - permanent: false, - }, - ]; - }, -}); diff --git a/out/LICENSE b/out/LICENSE deleted file mode 100644 index 5c1e6bf..0000000 --- a/out/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2024 Keyyard - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. \ No newline at end of file diff --git a/out/README.md b/out/README.md deleted file mode 100644 index 2702cef..0000000 --- a/out/README.md +++ /dev/null @@ -1,44 +0,0 @@ -# Keyyard Portfolio - -Welcome to the Keyyard Portfolio project! This is my personal portfolio website showcasing the work as an Official Minecraft Marketplace developer. - -## Table of Contents - -- [Live Website](lLive-website) -- [Features](#features) -- [Technologies Used](#technologies-used) -- [Contributing](#contributing) -- [License](#license) - -## Live Website - -![Keyyard Portfolio](image.png) - -You can view the live portfolio at [https://keyyard.github.io](https://keyyard.github.io). - -## Features - -- Interactive 3D head -- Smooth scrolling and animations -- Responsive design -- Email integration -- ... - -## Technologies Used - -- **React**: JavaScript library for building user interfaces -- **Three.js**: JavaScript 3D library -- **Framer Motion**: Library for animations -- **Tailwind CSS**: Utility-first CSS framework -- **Vite**: Next-generation frontend tooling -- **EmailJS**: Service to send emails directly from JavaScript -- **React Hot Toast**: Notifications for React -- ... - -## Contributing - -Contributions are welcome! Please open an issue or submit a pull request for any bugs or feature requests. - -## License - -This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details. \ No newline at end of file diff --git a/out/assets/projs/card_2.jpg b/out/assets/projs/card_2.jpg deleted file mode 100644 index e7fb034..0000000 Binary files a/out/assets/projs/card_2.jpg and /dev/null differ diff --git a/out/assets/projs/card_4.jpg b/out/assets/projs/card_4.jpg deleted file mode 100644 index 75d4a1c..0000000 Binary files a/out/assets/projs/card_4.jpg and /dev/null differ diff --git a/out/assets/projs/card_5.jpg b/out/assets/projs/card_5.jpg deleted file mode 100644 index 8b1c8e6..0000000 Binary files a/out/assets/projs/card_5.jpg and /dev/null differ diff --git a/out/assets/projs/smm.png b/out/assets/projs/smm.png deleted file mode 100644 index 68ee16f..0000000 Binary files a/out/assets/projs/smm.png and /dev/null differ diff --git a/out/assets/projs/tc.png b/out/assets/projs/tc.png deleted file mode 100644 index 21a2ecd..0000000 Binary files a/out/assets/projs/tc.png and /dev/null differ diff --git a/out/image.png b/out/image.png deleted file mode 100644 index 91e4d72..0000000 Binary files a/out/image.png and /dev/null differ diff --git a/out/index.html b/out/index.html deleted file mode 100644 index 97ff3d5..0000000 --- a/out/index.html +++ /dev/null @@ -1 +0,0 @@ -
I'm Hieu

I'm Hieu

Also known as Keyyard

Hi, I'm Keyyard.

Over the last years, I have been an Official Minecraft Marketplace developer.

I'm fancy of turning my fantasies into reality, and yours too!

Experiences

Creator

Tree Capitator and Vein Miner Addon | Minecraft Bedrock Community Top Popular Of All Time

May 2019 - Present

  • This addon mod for Minecraft making resource gathering more efficient and convenient.

Creator

Tree Capitator and Vein Miner Addon | Minecraft Bedrock Community Top Popular Of All Time

Former Founder

Actual Guns MCBE | Minecraft Bedrock Community Top Popular Of All Time

Entrepreneur

Keyyard Studio - G2crafted Partnership | Official Minecraft Marketplace

Contract Developer

Giggle Block Studios Ltd | Official Minecraft Marketplace

Contract Developer

MELONBP | Official Minecraft Marketplace

Contract Developer

Fire Games | Official Minecraft Marketplace

Projects

Download counts are aggregated from multiple sources.

Tree Capitator and Vein Miner Addondownloads

Community Project

This addon mod for Minecraft making resource gathering more efficient and convenient.

Actual Guns MCBEdownloads

Community Project

'Actual Guns' is the first add-on to introduce custom guns into Minecraft Bedrock Edition, hence the name!

Trains (CRAFTABLE)

Official Minecraft Marketplace Project

Drive and craft 40+ trains included in this map! Be a railroad operator and bring passengers to their destination in the city or transport cargo. Build your own train tracks and explore!

One Block Extra

Official Minecraft Marketplace Project

One block boredom? Our one block has extra fun!! Weapons, bosses, & lucky block all in one block extra.

Scary Myth Mobs

Official Minecraft Marketplace Project

Mobs from PrestonPlay Scary Myth have invaded your world! Seek out the legends and perform dark rituals to summon them into existence. Arm yourself with the evil gear they will drop. Most important of all watch your back…

TNT Experiments

Official Minecraft Marketplace Project

Ready to blow your world into pieces? Explore the biggest and baddest TNT explosions in TNT EXPERIMENTS. Try and pass all the levels and create your own TNT experiment. It's all you could ever want to fulfill your TNT needs! WARNING: TNT IS LAGGY

Contact

Get in touch with me!

Click on the icons or contact me via the form!
Contact Form
Copyright © 2024 Keyyard
\ No newline at end of file diff --git a/out/keyyard.png b/out/keyyard.png deleted file mode 100644 index f548b52..0000000 Binary files a/out/keyyard.png and /dev/null differ diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index 80e59bf..0000000 --- a/package-lock.json +++ /dev/null @@ -1,7312 +0,0 @@ -{ - "name": "keyyard.github.io", - "version": "0.0.0", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "version": "0.0.0", - "dependencies": { - "@react-three/drei": "^9.111.3", - "@react-three/fiber": "^8.17.6", - "@types/three": "^0.167.2", - "@vercel/analytics": "^1.4.1", - "date-fns": "^2.29.3", - "feed": "^4.2.2", - "framer-motion": "^11.11.17", - "gray-matter": "^4.0.3", - "marked": "^16.3.0", - "next": "^15.0.3", - "react": "^18.2.0", - "react-dom": "^18.2.0", - "react-hot-toast": "^2.4.1", - "react-intersection-observer": "^9.13.1", - "react-responsive-carousel": "^3.2.23", - "sanitize-html": "^2.17.0" - }, - "devDependencies": { - "@next/bundle-analyzer": "^15.4.4", - "@tailwindcss/typography": "^0.5.19", - "@types/node": "22.9.1", - "@types/react-dom": "^18.3.1", - "@types/sanitize-html": "^2.16.0", - "@typescript-eslint/eslint-plugin": "^6.0.0", - "autoprefixer": "^10.4.0", - "eslint": "^8.50.0", - "eslint-plugin-react": "^7.35.0", - "eslint-plugin-react-hooks": "^5.1.0-rc.0", - "eslint-plugin-react-refresh": "^0.4.9", - "globals": "^15.9.0", - "postcss": "^8.4.41", - "source-map-loader": "^5.0.0", - "tailwindcss": "^3.4.10", - "typescript": "^5.5.4" - } - }, - "node_modules/@alloc/quick-lru": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", - "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@babel/runtime": { - "version": "7.28.4", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.28.4.tgz", - "integrity": "sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@discoveryjs/json-ext": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", - "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/@emnapi/runtime": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.5.0.tgz", - "integrity": "sha512-97/BJ3iXHww3djw6hYIfErCZFee7qCtrneuLa20UXFCOTCfBM2cvQHjWJ2EG0s0MtdNwInarqCTz35i4wWXHsQ==", - "license": "MIT", - "optional": true, - "dependencies": { - "tslib": "^2.4.0" - } - }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", - "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", - "dev": true, - "dependencies": { - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" - } - }, - "node_modules/@eslint-community/regexpp": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz", - "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==", - "dev": true, - "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", - "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@eslint/js": { - "version": "8.57.1", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", - "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", - "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", - "deprecated": "Use @eslint/config-array instead", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@humanwhocodes/object-schema": "^2.0.3", - "debug": "^4.3.1", - "minimatch": "^3.0.5" - }, - "engines": { - "node": ">=10.10.0" - } - }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true, - "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@humanwhocodes/object-schema": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", - "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", - "deprecated": "Use @eslint/object-schema instead", - "dev": true, - "license": "BSD-3-Clause" - }, - "node_modules/@img/colour": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@img/colour/-/colour-1.0.0.tgz", - "integrity": "sha512-A5P/LfWGFSl6nsckYtjw9da+19jB8hkJ6ACTGcDfEJ0aE+l2n2El7dsVM7UVHZQ9s2lmYMWlrS21YLy2IR1LUw==", - "license": "MIT", - "optional": true, - "engines": { - "node": ">=18" - } - }, - "node_modules/@img/sharp-darwin-arm64": { - "version": "0.34.4", - "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.34.4.tgz", - "integrity": "sha512-sitdlPzDVyvmINUdJle3TNHl+AG9QcwiAMsXmccqsCOMZNIdW2/7S26w0LyU8euiLVzFBL3dXPwVCq/ODnf2vA==", - "cpu": [ - "arm64" - ], - "license": "Apache-2.0", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-darwin-arm64": "1.2.3" - } - }, - "node_modules/@img/sharp-darwin-x64": { - "version": "0.34.4", - "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.34.4.tgz", - "integrity": "sha512-rZheupWIoa3+SOdF/IcUe1ah4ZDpKBGWcsPX6MT0lYniH9micvIU7HQkYTfrx5Xi8u+YqwLtxC/3vl8TQN6rMg==", - "cpu": [ - "x64" - ], - "license": "Apache-2.0", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-darwin-x64": "1.2.3" - } - }, - "node_modules/@img/sharp-libvips-darwin-arm64": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.2.3.tgz", - "integrity": "sha512-QzWAKo7kpHxbuHqUC28DZ9pIKpSi2ts2OJnoIGI26+HMgq92ZZ4vk8iJd4XsxN+tYfNJxzH6W62X5eTcsBymHw==", - "cpu": [ - "arm64" - ], - "license": "LGPL-3.0-or-later", - "optional": true, - "os": [ - "darwin" - ], - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-libvips-darwin-x64": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.2.3.tgz", - "integrity": "sha512-Ju+g2xn1E2AKO6YBhxjj+ACcsPQRHT0bhpglxcEf+3uyPY+/gL8veniKoo96335ZaPo03bdDXMv0t+BBFAbmRA==", - "cpu": [ - "x64" - ], - "license": "LGPL-3.0-or-later", - "optional": true, - "os": [ - "darwin" - ], - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-libvips-linux-arm": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.2.3.tgz", - "integrity": "sha512-x1uE93lyP6wEwGvgAIV0gP6zmaL/a0tGzJs/BIDDG0zeBhMnuUPm7ptxGhUbcGs4okDJrk4nxgrmxpib9g6HpA==", - "cpu": [ - "arm" - ], - "license": "LGPL-3.0-or-later", - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-libvips-linux-arm64": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.2.3.tgz", - "integrity": "sha512-I4RxkXU90cpufazhGPyVujYwfIm9Nk1QDEmiIsaPwdnm013F7RIceaCc87kAH+oUB1ezqEvC6ga4m7MSlqsJvQ==", - "cpu": [ - "arm64" - ], - "license": "LGPL-3.0-or-later", - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-libvips-linux-ppc64": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.2.3.tgz", - "integrity": "sha512-Y2T7IsQvJLMCBM+pmPbM3bKT/yYJvVtLJGfCs4Sp95SjvnFIjynbjzsa7dY1fRJX45FTSfDksbTp6AGWudiyCg==", - "cpu": [ - "ppc64" - ], - "license": "LGPL-3.0-or-later", - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-libvips-linux-s390x": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.2.3.tgz", - "integrity": "sha512-RgWrs/gVU7f+K7P+KeHFaBAJlNkD1nIZuVXdQv6S+fNA6syCcoboNjsV2Pou7zNlVdNQoQUpQTk8SWDHUA3y/w==", - "cpu": [ - "s390x" - ], - "license": "LGPL-3.0-or-later", - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-libvips-linux-x64": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.2.3.tgz", - "integrity": "sha512-3JU7LmR85K6bBiRzSUc/Ff9JBVIFVvq6bomKE0e63UXGeRw2HPVEjoJke1Yx+iU4rL7/7kUjES4dZ/81Qjhyxg==", - "cpu": [ - "x64" - ], - "license": "LGPL-3.0-or-later", - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-libvips-linuxmusl-arm64": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.2.3.tgz", - "integrity": "sha512-F9q83RZ8yaCwENw1GieztSfj5msz7GGykG/BA+MOUefvER69K/ubgFHNeSyUu64amHIYKGDs4sRCMzXVj8sEyw==", - "cpu": [ - "arm64" - ], - "license": "LGPL-3.0-or-later", - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-libvips-linuxmusl-x64": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.2.3.tgz", - "integrity": "sha512-U5PUY5jbc45ANM6tSJpsgqmBF/VsL6LnxJmIf11kB7J5DctHgqm0SkuXzVWtIY90GnJxKnC/JT251TDnk1fu/g==", - "cpu": [ - "x64" - ], - "license": "LGPL-3.0-or-later", - "optional": true, - "os": [ - "linux" - ], - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-linux-arm": { - "version": "0.34.4", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.34.4.tgz", - "integrity": "sha512-Xyam4mlqM0KkTHYVSuc6wXRmM7LGN0P12li03jAnZ3EJWZqj83+hi8Y9UxZUbxsgsK1qOEwg7O0Bc0LjqQVtxA==", - "cpu": [ - "arm" - ], - "license": "Apache-2.0", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-arm": "1.2.3" - } - }, - "node_modules/@img/sharp-linux-arm64": { - "version": "0.34.4", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.34.4.tgz", - "integrity": "sha512-YXU1F/mN/Wu786tl72CyJjP/Ngl8mGHN1hST4BGl+hiW5jhCnV2uRVTNOcaYPs73NeT/H8Upm3y9582JVuZHrQ==", - "cpu": [ - "arm64" - ], - "license": "Apache-2.0", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-arm64": "1.2.3" - } - }, - "node_modules/@img/sharp-linux-ppc64": { - "version": "0.34.4", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-ppc64/-/sharp-linux-ppc64-0.34.4.tgz", - "integrity": "sha512-F4PDtF4Cy8L8hXA2p3TO6s4aDt93v+LKmpcYFLAVdkkD3hSxZzee0rh6/+94FpAynsuMpLX5h+LRsSG3rIciUQ==", - "cpu": [ - "ppc64" - ], - "license": "Apache-2.0", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-ppc64": "1.2.3" - } - }, - "node_modules/@img/sharp-linux-s390x": { - "version": "0.34.4", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.34.4.tgz", - "integrity": "sha512-qVrZKE9Bsnzy+myf7lFKvng6bQzhNUAYcVORq2P7bDlvmF6u2sCmK2KyEQEBdYk+u3T01pVsPrkj943T1aJAsw==", - "cpu": [ - "s390x" - ], - "license": "Apache-2.0", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-s390x": "1.2.3" - } - }, - "node_modules/@img/sharp-linux-x64": { - "version": "0.34.4", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.34.4.tgz", - "integrity": "sha512-ZfGtcp2xS51iG79c6Vhw9CWqQC8l2Ot8dygxoDoIQPTat/Ov3qAa8qpxSrtAEAJW+UjTXc4yxCjNfxm4h6Xm2A==", - "cpu": [ - "x64" - ], - "license": "Apache-2.0", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linux-x64": "1.2.3" - } - }, - "node_modules/@img/sharp-linuxmusl-arm64": { - "version": "0.34.4", - "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.34.4.tgz", - "integrity": "sha512-8hDVvW9eu4yHWnjaOOR8kHVrew1iIX+MUgwxSuH2XyYeNRtLUe4VNioSqbNkB7ZYQJj9rUTT4PyRscyk2PXFKA==", - "cpu": [ - "arm64" - ], - "license": "Apache-2.0", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linuxmusl-arm64": "1.2.3" - } - }, - "node_modules/@img/sharp-linuxmusl-x64": { - "version": "0.34.4", - "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.34.4.tgz", - "integrity": "sha512-lU0aA5L8QTlfKjpDCEFOZsTYGn3AEiO6db8W5aQDxj0nQkVrZWmN3ZP9sYKWJdtq3PWPhUNlqehWyXpYDcI9Sg==", - "cpu": [ - "x64" - ], - "license": "Apache-2.0", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-libvips-linuxmusl-x64": "1.2.3" - } - }, - "node_modules/@img/sharp-wasm32": { - "version": "0.34.4", - "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.34.4.tgz", - "integrity": "sha512-33QL6ZO/qpRyG7woB/HUALz28WnTMI2W1jgX3Nu2bypqLIKx/QKMILLJzJjI+SIbvXdG9fUnmrxR7vbi1sTBeA==", - "cpu": [ - "wasm32" - ], - "license": "Apache-2.0 AND LGPL-3.0-or-later AND MIT", - "optional": true, - "dependencies": { - "@emnapi/runtime": "^1.5.0" - }, - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-win32-arm64": { - "version": "0.34.4", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.34.4.tgz", - "integrity": "sha512-2Q250do/5WXTwxW3zjsEuMSv5sUU4Tq9VThWKlU2EYLm4MB7ZeMwF+SFJutldYODXF6jzc6YEOC+VfX0SZQPqA==", - "cpu": [ - "arm64" - ], - "license": "Apache-2.0 AND LGPL-3.0-or-later", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-win32-ia32": { - "version": "0.34.4", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.34.4.tgz", - "integrity": "sha512-3ZeLue5V82dT92CNL6rsal6I2weKw1cYu+rGKm8fOCCtJTR2gYeUfY3FqUnIJsMUPIH68oS5jmZ0NiJ508YpEw==", - "cpu": [ - "ia32" - ], - "license": "Apache-2.0 AND LGPL-3.0-or-later", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-win32-x64": { - "version": "0.34.4", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.34.4.tgz", - "integrity": "sha512-xIyj4wpYs8J18sVN3mSQjwrw7fKUqRw+Z5rnHNCy5fYTxigBz81u5mOMPmFumwjcn8+ld1ppptMBCLic1nz6ig==", - "cpu": [ - "x64" - ], - "license": "Apache-2.0 AND LGPL-3.0-or-later", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@isaacs/cliui": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", - "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", - "dev": true, - "dependencies": { - "string-width": "^5.1.2", - "string-width-cjs": "npm:string-width@^4.2.0", - "strip-ansi": "^7.0.1", - "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", - "wrap-ansi": "^8.1.0", - "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@isaacs/cliui/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/@isaacs/cliui/node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dev": true, - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", - "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.24" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", - "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", - "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/source-map": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", - "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", - "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", - "dev": true - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/@mediapipe/tasks-vision": { - "version": "0.10.8", - "resolved": "https://registry.npmjs.org/@mediapipe/tasks-vision/-/tasks-vision-0.10.8.tgz", - "integrity": "sha512-Rp7ll8BHrKB3wXaRFKhrltwZl1CiXGdibPxuWXvqGnKTnv8fqa/nvftYNuSbf+pbJWKYCXdBtYTITdAUTGGh0Q==" - }, - "node_modules/@monogrid/gainmap-js": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@monogrid/gainmap-js/-/gainmap-js-3.0.5.tgz", - "integrity": "sha512-53sCTG4FaJBaAq/tcufARtVYDMDGqyBT9i7F453pWGhZ5LqubDHDWtYoHo9VhQqMcHTEexdJqSsR58y+9HVmQA==", - "dependencies": { - "promise-worker-transferable": "^1.0.4" - }, - "peerDependencies": { - "three": ">= 0.159.0" - } - }, - "node_modules/@next/bundle-analyzer": { - "version": "15.4.4", - "resolved": "https://registry.npmjs.org/@next/bundle-analyzer/-/bundle-analyzer-15.4.4.tgz", - "integrity": "sha512-/jDIIgLhzErHv36+DBymfMSMrmBq8EPfTGwBCjfz9DZFN9sdUC+4dJcu9OuDKpna+EuznAJnVTrMLd9NSBFVwg==", - "dev": true, - "license": "MIT", - "dependencies": { - "webpack-bundle-analyzer": "4.10.1" - } - }, - "node_modules/@next/env": { - "version": "15.5.4", - "resolved": "https://registry.npmjs.org/@next/env/-/env-15.5.4.tgz", - "integrity": "sha512-27SQhYp5QryzIT5uO8hq99C69eLQ7qkzkDPsk3N+GuS2XgOgoYEeOav7Pf8Tn4drECOVDsDg8oj+/DVy8qQL2A==", - "license": "MIT" - }, - "node_modules/@next/swc-darwin-arm64": { - "version": "15.5.4", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-15.5.4.tgz", - "integrity": "sha512-nopqz+Ov6uvorej8ndRX6HlxCYWCO3AHLfKK2TYvxoSB2scETOcfm/HSS3piPqc3A+MUgyHoqE6je4wnkjfrOA==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-darwin-x64": { - "version": "15.5.4", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-15.5.4.tgz", - "integrity": "sha512-QOTCFq8b09ghfjRJKfb68kU9k2K+2wsC4A67psOiMn849K9ZXgCSRQr0oVHfmKnoqCbEmQWG1f2h1T2vtJJ9mA==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-arm64-gnu": { - "version": "15.5.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-15.5.4.tgz", - "integrity": "sha512-eRD5zkts6jS3VfE/J0Kt1VxdFqTnMc3QgO5lFE5GKN3KDI/uUpSyK3CjQHmfEkYR4wCOl0R0XrsjpxfWEA++XA==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-arm64-musl": { - "version": "15.5.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-15.5.4.tgz", - "integrity": "sha512-TOK7iTxmXFc45UrtKqWdZ1shfxuL4tnVAOuuJK4S88rX3oyVV4ZkLjtMT85wQkfBrOOvU55aLty+MV8xmcJR8A==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-x64-gnu": { - "version": "15.5.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-15.5.4.tgz", - "integrity": "sha512-7HKolaj+481FSW/5lL0BcTkA4Ueam9SPYWyN/ib/WGAFZf0DGAN8frNpNZYFHtM4ZstrHZS3LY3vrwlIQfsiMA==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-linux-x64-musl": { - "version": "15.5.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-15.5.4.tgz", - "integrity": "sha512-nlQQ6nfgN0nCO/KuyEUwwOdwQIGjOs4WNMjEUtpIQJPR2NUfmGpW2wkJln1d4nJ7oUzd1g4GivH5GoEPBgfsdw==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-arm64-msvc": { - "version": "15.5.4", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-15.5.4.tgz", - "integrity": "sha512-PcR2bN7FlM32XM6eumklmyWLLbu2vs+D7nJX8OAIoWy69Kef8mfiN4e8TUv2KohprwifdpFKPzIP1njuCjD0YA==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@next/swc-win32-x64-msvc": { - "version": "15.5.4", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-15.5.4.tgz", - "integrity": "sha512-1ur2tSHZj8Px/KMAthmuI9FMp/YFusMMGoRNJaRZMOlSkgvLjzosSdQI0cJAKogdHl3qXUQKL9MGaYvKwA7DXg==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@pkgjs/parseargs": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", - "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", - "dev": true, - "optional": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/@polka/url": { - "version": "1.0.0-next.29", - "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.29.tgz", - "integrity": "sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==", - "dev": true, - "license": "MIT" - }, - "node_modules/@react-spring/animated": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/@react-spring/animated/-/animated-9.6.1.tgz", - "integrity": "sha512-ls/rJBrAqiAYozjLo5EPPLLOb1LM0lNVQcXODTC1SMtS6DbuBCPaKco5svFUQFMP2dso3O+qcC4k9FsKc0KxMQ==", - "dependencies": { - "@react-spring/shared": "~9.6.1", - "@react-spring/types": "~9.6.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/@react-spring/core": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/@react-spring/core/-/core-9.6.1.tgz", - "integrity": "sha512-3HAAinAyCPessyQNNXe5W0OHzRfa8Yo5P748paPcmMowZ/4sMfaZ2ZB6e5x5khQI8NusOHj8nquoutd6FRY5WQ==", - "dependencies": { - "@react-spring/animated": "~9.6.1", - "@react-spring/rafz": "~9.6.1", - "@react-spring/shared": "~9.6.1", - "@react-spring/types": "~9.6.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/react-spring/donate" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/@react-spring/rafz": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/@react-spring/rafz/-/rafz-9.6.1.tgz", - "integrity": "sha512-v6qbgNRpztJFFfSE3e2W1Uz+g8KnIBs6SmzCzcVVF61GdGfGOuBrbjIcp+nUz301awVmREKi4eMQb2Ab2gGgyQ==" - }, - "node_modules/@react-spring/shared": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/@react-spring/shared/-/shared-9.6.1.tgz", - "integrity": "sha512-PBFBXabxFEuF8enNLkVqMC9h5uLRBo6GQhRMQT/nRTnemVENimgRd+0ZT4yFnAQ0AxWNiJfX3qux+bW2LbG6Bw==", - "dependencies": { - "@react-spring/rafz": "~9.6.1", - "@react-spring/types": "~9.6.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/@react-spring/three": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/@react-spring/three/-/three-9.6.1.tgz", - "integrity": "sha512-Tyw2YhZPKJAX3t2FcqvpLRb71CyTe1GvT3V+i+xJzfALgpk10uPGdGaQQ5Xrzmok1340DAeg2pR/MCfaW7b8AA==", - "dependencies": { - "@react-spring/animated": "~9.6.1", - "@react-spring/core": "~9.6.1", - "@react-spring/shared": "~9.6.1", - "@react-spring/types": "~9.6.1" - }, - "peerDependencies": { - "@react-three/fiber": ">=6.0", - "react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "three": ">=0.126" - } - }, - "node_modules/@react-spring/types": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/@react-spring/types/-/types-9.6.1.tgz", - "integrity": "sha512-POu8Mk0hIU3lRXB3bGIGe4VHIwwDsQyoD1F394OK7STTiX9w4dG3cTLljjYswkQN+hDSHRrj4O36kuVa7KPU8Q==" - }, - "node_modules/@react-three/drei": { - "version": "9.111.5", - "resolved": "https://registry.npmjs.org/@react-three/drei/-/drei-9.111.5.tgz", - "integrity": "sha512-BybZGYPrODhFYx0OeGGllMU5zc/yRDzXHdHWyoGX61HVyMqPwxma4xyj+ejKdXncQLk0ntvgodDg9lgS4P/hGQ==", - "dependencies": { - "@babel/runtime": "^7.11.2", - "@mediapipe/tasks-vision": "0.10.8", - "@monogrid/gainmap-js": "^3.0.5", - "@react-spring/three": "~9.6.1", - "@use-gesture/react": "^10.2.24", - "camera-controls": "^2.4.2", - "cross-env": "^7.0.3", - "detect-gpu": "^5.0.28", - "glsl-noise": "^0.0.0", - "hls.js": "1.3.5", - "maath": "^0.10.7", - "meshline": "^3.1.6", - "react-composer": "^5.0.3", - "stats-gl": "^2.0.0", - "stats.js": "^0.17.0", - "suspend-react": "^0.1.3", - "three-mesh-bvh": "^0.7.0", - "three-stdlib": "^2.29.9", - "troika-three-text": "^0.49.0", - "tunnel-rat": "^0.1.2", - "utility-types": "^3.10.0", - "uuid": "^9.0.1", - "zustand": "^3.7.1" - }, - "peerDependencies": { - "@react-three/fiber": ">=8.0", - "react": ">=18.0", - "react-dom": ">=18.0", - "three": ">=0.137" - }, - "peerDependenciesMeta": { - "react-dom": { - "optional": true - } - } - }, - "node_modules/@react-three/fiber": { - "version": "8.17.6", - "resolved": "https://registry.npmjs.org/@react-three/fiber/-/fiber-8.17.6.tgz", - "integrity": "sha512-RqZXSpEVY8alF3dWgFhUFePM9FE9jCZxeZJ3wEJ8z6Bd6AsrLXXs9wRW6WhCY/r0y7eW36v2t74QavM0coA3aA==", - "dependencies": { - "@babel/runtime": "^7.17.8", - "@types/debounce": "^1.2.1", - "@types/react-reconciler": "^0.26.7", - "@types/webxr": "*", - "base64-js": "^1.5.1", - "buffer": "^6.0.3", - "debounce": "^1.2.1", - "its-fine": "^1.0.6", - "react-reconciler": "^0.27.0", - "scheduler": "^0.21.0", - "suspend-react": "^0.1.3", - "zustand": "^3.7.1" - }, - "peerDependencies": { - "expo": ">=43.0", - "expo-asset": ">=8.4", - "expo-file-system": ">=11.0", - "expo-gl": ">=11.0", - "react": ">=18.0", - "react-dom": ">=18.0", - "react-native": ">=0.64", - "three": ">=0.133" - }, - "peerDependenciesMeta": { - "expo": { - "optional": true - }, - "expo-asset": { - "optional": true - }, - "expo-file-system": { - "optional": true - }, - "expo-gl": { - "optional": true - }, - "react-dom": { - "optional": true - }, - "react-native": { - "optional": true - } - } - }, - "node_modules/@swc/helpers": { - "version": "0.5.15", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.15.tgz", - "integrity": "sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.8.0" - } - }, - "node_modules/@tailwindcss/typography": { - "version": "0.5.19", - "resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.19.tgz", - "integrity": "sha512-w31dd8HOx3k9vPtcQh5QHP9GwKcgbMp87j58qi6xgiBnFFtKEAgCWnDw4qUT8aHwkCp8bKvb/KGKWWHedP0AAg==", - "dev": true, - "license": "MIT", - "dependencies": { - "postcss-selector-parser": "6.0.10" - }, - "peerDependencies": { - "tailwindcss": ">=3.0.0 || insiders || >=4.0.0-alpha.20 || >=4.0.0-beta.1" - } - }, - "node_modules/@tailwindcss/typography/node_modules/postcss-selector-parser": { - "version": "6.0.10", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", - "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", - "dev": true, - "license": "MIT", - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@tweenjs/tween.js": { - "version": "23.1.3", - "resolved": "https://registry.npmjs.org/@tweenjs/tween.js/-/tween.js-23.1.3.tgz", - "integrity": "sha512-vJmvvwFxYuGnF2axRtPYocag6Clbb5YS7kLL+SO/TeVFzHqDIWrNKYtcsPMibjDx9O+bu+psAy9NKfWklassUA==" - }, - "node_modules/@types/debounce": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/debounce/-/debounce-1.2.4.tgz", - "integrity": "sha512-jBqiORIzKDOToaF63Fm//haOCHuwQuLa2202RK4MozpA6lh93eCBc+/8+wZn5OzjJt3ySdc+74SXWXB55Ewtyw==" - }, - "node_modules/@types/draco3d": { - "version": "1.4.10", - "resolved": "https://registry.npmjs.org/@types/draco3d/-/draco3d-1.4.10.tgz", - "integrity": "sha512-AX22jp8Y7wwaBgAixaSvkoG4M/+PlAcm3Qs4OW8yT9DM4xUpWKeFhLueTAyZF39pviAdcDdeJoACapiAceqNcw==" - }, - "node_modules/@types/eslint": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", - "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/eslint-scope": { - "version": "3.7.7", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", - "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "node_modules/@types/estree": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", - "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/@types/json-schema": { - "version": "7.0.15", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/node": { - "version": "22.9.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.9.1.tgz", - "integrity": "sha512-p8Yy/8sw1caA8CdRIQBG5tiLHmxtQKObCijiAa9Ez+d4+PRffM4054xbju0msf+cvhJpnFEeNjxmVT/0ipktrg==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~6.19.8" - } - }, - "node_modules/@types/offscreencanvas": { - "version": "2019.7.3", - "resolved": "https://registry.npmjs.org/@types/offscreencanvas/-/offscreencanvas-2019.7.3.tgz", - "integrity": "sha512-ieXiYmgSRXUDeOntE1InxjWyvEelZGP63M+cGuquuRLuIKKT1osnkXjxev9B7d1nXSug5vpunx+gNlbVxMlC9A==" - }, - "node_modules/@types/prop-types": { - "version": "15.7.12", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.12.tgz", - "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==" - }, - "node_modules/@types/react": { - "version": "18.3.5", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.5.tgz", - "integrity": "sha512-WeqMfGJLGuLCqHGYRGHxnKrXcTitc6L/nBUWfWPcTarG3t9PsquqUMuVeXZeca+mglY4Vo5GZjCi0A3Or2lnxA==", - "dependencies": { - "@types/prop-types": "*", - "csstype": "^3.0.2" - } - }, - "node_modules/@types/react-dom": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.1.tgz", - "integrity": "sha512-qW1Mfv8taImTthu4KoXgDfLuk4bydU6Q/TkADnDWWHwi4NX4BR+LWfTp2sVmTqRrsHvyDDTelgelxJ+SsejKKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/react": "*" - } - }, - "node_modules/@types/react-reconciler": { - "version": "0.26.7", - "resolved": "https://registry.npmjs.org/@types/react-reconciler/-/react-reconciler-0.26.7.tgz", - "integrity": "sha512-mBDYl8x+oyPX/VBb3E638N0B7xG+SPk/EAMcVPeexqus/5aTpTphQi0curhhshOqRrc9t6OPoJfEUkbymse/lQ==", - "dependencies": { - "@types/react": "*" - } - }, - "node_modules/@types/sanitize-html": { - "version": "2.16.0", - "resolved": "https://registry.npmjs.org/@types/sanitize-html/-/sanitize-html-2.16.0.tgz", - "integrity": "sha512-l6rX1MUXje5ztPT0cAFtUayXF06DqPhRyfVXareEN5gGCFaP/iwsxIyKODr9XDhfxPpN6vXUFNfo5kZMXCxBtw==", - "dev": true, - "license": "MIT", - "dependencies": { - "htmlparser2": "^8.0.0" - } - }, - "node_modules/@types/semver": { - "version": "7.5.8", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", - "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/stats.js": { - "version": "0.17.3", - "resolved": "https://registry.npmjs.org/@types/stats.js/-/stats.js-0.17.3.tgz", - "integrity": "sha512-pXNfAD3KHOdif9EQXZ9deK82HVNaXP5ZIF5RP2QG6OQFNTaY2YIetfrE9t528vEreGQvEPRDDc8muaoYeK0SxQ==" - }, - "node_modules/@types/three": { - "version": "0.167.2", - "resolved": "https://registry.npmjs.org/@types/three/-/three-0.167.2.tgz", - "integrity": "sha512-onxnIUNYpXcZJ5DTiIsxfnr4F9kAWkkxAUWx5yqzz/u0a4IygCLCjMuOl2DEeCxyJdJ2nOJZvKpu48sBMqfmkQ==", - "dependencies": { - "@tweenjs/tween.js": "~23.1.2", - "@types/stats.js": "*", - "@types/webxr": "*", - "fflate": "~0.8.2", - "meshoptimizer": "~0.18.1" - } - }, - "node_modules/@types/webxr": { - "version": "0.5.20", - "resolved": "https://registry.npmjs.org/@types/webxr/-/webxr-0.5.20.tgz", - "integrity": "sha512-JGpU6qiIJQKUuVSKx1GtQnHJGxRjtfGIhzO2ilq43VZZS//f1h1Sgexbdk+Lq+7569a6EYhOWrUpIruR/1Enmg==" - }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", - "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/type-utils": "6.21.0", - "@typescript-eslint/utils": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0", - "debug": "^4.3.4", - "graphemer": "^1.4.0", - "ignore": "^5.2.4", - "natural-compare": "^1.4.0", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/parser": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", - "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "dependencies": { - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/typescript-estree": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", - "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/type-utils": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz", - "integrity": "sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/typescript-estree": "6.21.0", - "@typescript-eslint/utils": "6.21.0", - "debug": "^4.3.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/types": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", - "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", - "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "minimatch": "9.0.3", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", - "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "license": "MIT", - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/utils": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", - "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/typescript-estree": "6.21.0", - "semver": "^7.5.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - } - }, - "node_modules/@typescript-eslint/utils/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", - "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "6.21.0", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@ungap/structured-clone": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", - "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", - "dev": true, - "license": "ISC" - }, - "node_modules/@use-gesture/core": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/@use-gesture/core/-/core-10.3.1.tgz", - "integrity": "sha512-WcINiDt8WjqBdUXye25anHiNxPc0VOrlT8F6LLkU6cycrOGUDyY/yyFmsg3k8i5OLvv25llc0QC45GhR/C8llw==" - }, - "node_modules/@use-gesture/react": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/@use-gesture/react/-/react-10.3.1.tgz", - "integrity": "sha512-Yy19y6O2GJq8f7CHf7L0nxL8bf4PZCPaVOCgJrusOeFHY1LvHgYXnmnXg6N5iwAnbgbZCDjo60SiM6IPJi9C5g==", - "dependencies": { - "@use-gesture/core": "10.3.1" - }, - "peerDependencies": { - "react": ">= 16.8.0" - } - }, - "node_modules/@vercel/analytics": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@vercel/analytics/-/analytics-1.4.1.tgz", - "integrity": "sha512-ekpL4ReX2TH3LnrRZTUKjHHNpNy9S1I7QmS+g/RQXoSUQ8ienzosuX7T9djZ/s8zPhBx1mpHP/Rw5875N+zQIQ==", - "license": "MPL-2.0", - "peerDependencies": { - "@remix-run/react": "^2", - "@sveltejs/kit": "^1 || ^2", - "next": ">= 13", - "react": "^18 || ^19 || ^19.0.0-rc", - "svelte": ">= 4", - "vue": "^3", - "vue-router": "^4" - }, - "peerDependenciesMeta": { - "@remix-run/react": { - "optional": true - }, - "@sveltejs/kit": { - "optional": true - }, - "next": { - "optional": true - }, - "react": { - "optional": true - }, - "svelte": { - "optional": true - }, - "vue": { - "optional": true - }, - "vue-router": { - "optional": true - } - } - }, - "node_modules/@webassemblyjs/ast": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.14.1.tgz", - "integrity": "sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/helper-numbers": "1.13.2", - "@webassemblyjs/helper-wasm-bytecode": "1.13.2" - } - }, - "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz", - "integrity": "sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz", - "integrity": "sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz", - "integrity": "sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.13.2.tgz", - "integrity": "sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.13.2", - "@webassemblyjs/helper-api-error": "1.13.2", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz", - "integrity": "sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.14.1.tgz", - "integrity": "sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.14.1", - "@webassemblyjs/helper-buffer": "1.14.1", - "@webassemblyjs/helper-wasm-bytecode": "1.13.2", - "@webassemblyjs/wasm-gen": "1.14.1" - } - }, - "node_modules/@webassemblyjs/ieee754": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.13.2.tgz", - "integrity": "sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "node_modules/@webassemblyjs/leb128": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.13.2.tgz", - "integrity": "sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==", - "dev": true, - "license": "Apache-2.0", - "peer": true, - "dependencies": { - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/utf8": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.13.2.tgz", - "integrity": "sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz", - "integrity": "sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.14.1", - "@webassemblyjs/helper-buffer": "1.14.1", - "@webassemblyjs/helper-wasm-bytecode": "1.13.2", - "@webassemblyjs/helper-wasm-section": "1.14.1", - "@webassemblyjs/wasm-gen": "1.14.1", - "@webassemblyjs/wasm-opt": "1.14.1", - "@webassemblyjs/wasm-parser": "1.14.1", - "@webassemblyjs/wast-printer": "1.14.1" - } - }, - "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.14.1.tgz", - "integrity": "sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.14.1", - "@webassemblyjs/helper-wasm-bytecode": "1.13.2", - "@webassemblyjs/ieee754": "1.13.2", - "@webassemblyjs/leb128": "1.13.2", - "@webassemblyjs/utf8": "1.13.2" - } - }, - "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.14.1.tgz", - "integrity": "sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.14.1", - "@webassemblyjs/helper-buffer": "1.14.1", - "@webassemblyjs/wasm-gen": "1.14.1", - "@webassemblyjs/wasm-parser": "1.14.1" - } - }, - "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz", - "integrity": "sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.14.1", - "@webassemblyjs/helper-api-error": "1.13.2", - "@webassemblyjs/helper-wasm-bytecode": "1.13.2", - "@webassemblyjs/ieee754": "1.13.2", - "@webassemblyjs/leb128": "1.13.2", - "@webassemblyjs/utf8": "1.13.2" - } - }, - "node_modules/@webassemblyjs/wast-printer": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.14.1.tgz", - "integrity": "sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.14.1", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true, - "license": "BSD-3-Clause", - "peer": true - }, - "node_modules/@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true, - "license": "Apache-2.0", - "peer": true - }, - "node_modules/acorn": { - "version": "8.14.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", - "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", - "dev": true, - "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/acorn-walk": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.4.tgz", - "integrity": "sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==", - "dev": true, - "license": "MIT", - "dependencies": { - "acorn": "^8.11.0" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "license": "MIT", - "peer": true, - "peerDependencies": { - "ajv": "^6.9.1" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/any-promise": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", - "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", - "dev": true - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/arg": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", - "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", - "dev": true - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true, - "license": "Python-2.0" - }, - "node_modules/array-buffer-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", - "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.5", - "is-array-buffer": "^3.0.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-includes": { - "version": "3.1.8", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", - "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.4", - "is-string": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.findlast": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", - "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flat": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", - "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.flatmap": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", - "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array.prototype.tosorted": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", - "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.3", - "es-errors": "^1.3.0", - "es-shim-unscopables": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", - "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", - "dev": true, - "dependencies": { - "array-buffer-byte-length": "^1.0.1", - "call-bind": "^1.0.5", - "define-properties": "^1.2.1", - "es-abstract": "^1.22.3", - "es-errors": "^1.2.1", - "get-intrinsic": "^1.2.3", - "is-array-buffer": "^3.0.4", - "is-shared-array-buffer": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/autoprefixer": { - "version": "10.4.20", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz", - "integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "browserslist": "^4.23.3", - "caniuse-lite": "^1.0.30001646", - "fraction.js": "^4.3.7", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.1", - "postcss-value-parser": "^4.2.0" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" - }, - "engines": { - "node": "^10 || ^12 || >=14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/available-typed-arrays": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", - "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", - "dev": true, - "dependencies": { - "possible-typed-array-names": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/bidi-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/bidi-js/-/bidi-js-1.0.3.tgz", - "integrity": "sha512-RKshQI1R3YQ+n9YJz2QQ147P66ELpa1FQEg20Dk8oW9t2KgLbpDLLp9aGZ7y8WHSshDknG0bknqGw5/tyCs5tw==", - "dependencies": { - "require-from-string": "^2.0.2" - } - }, - "node_modules/binary-extensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", - "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/brace-expansion": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", - "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "dev": true, - "dependencies": { - "fill-range": "^7.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browserslist": { - "version": "4.24.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz", - "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "caniuse-lite": "^1.0.30001669", - "electron-to-chromium": "^1.5.41", - "node-releases": "^2.0.18", - "update-browserslist-db": "^1.1.1" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/call-bind": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", - "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", - "dev": true, - "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase-css": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", - "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/camera-controls": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/camera-controls/-/camera-controls-2.9.0.tgz", - "integrity": "sha512-TpCujnP0vqPppTXXJRYpvIy0xq9Tro6jQf2iYUxlDpPCNxkvE/XGaTuwIxnhINOkVP/ob2CRYXtY3iVYXeMEzA==", - "peerDependencies": { - "three": ">=0.126.1" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001726", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001726.tgz", - "integrity": "sha512-VQAUIUzBiZ/UnlM28fSp2CRF3ivUn1BWEvxMcVTNwpw91Py1pGbPIyIKtd+tzct9C3ouceCVdGAXxZOpZAsgdw==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "CC-BY-4.0" - }, - "node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", - "dev": true, - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/chrome-trace-event": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", - "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/classnames": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz", - "integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==", - "license": "MIT" - }, - "node_modules/client-only": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", - "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==", - "license": "MIT" - }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, - "license": "MIT" - }, - "node_modules/commander": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10" - } - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "node_modules/cross-env": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz", - "integrity": "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==", - "dependencies": { - "cross-spawn": "^7.0.1" - }, - "bin": { - "cross-env": "src/bin/cross-env.js", - "cross-env-shell": "src/bin/cross-env-shell.js" - }, - "engines": { - "node": ">=10.14", - "npm": ">=6", - "yarn": ">=1" - } - }, - "node_modules/cross-spawn": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", - "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", - "license": "MIT", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true, - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/csstype": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", - "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" - }, - "node_modules/data-view-buffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", - "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/data-view-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", - "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/data-view-byte-offset": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", - "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/date-fns": { - "version": "2.30.0", - "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.30.0.tgz", - "integrity": "sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.21.0" - }, - "engines": { - "node": ">=0.11" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/date-fns" - } - }, - "node_modules/debounce": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz", - "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==" - }, - "node_modules/debug": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", - "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "node_modules/deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/define-data-property": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", - "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", - "dev": true, - "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/define-properties": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", - "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", - "dev": true, - "dependencies": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/detect-gpu": { - "version": "5.0.46", - "resolved": "https://registry.npmjs.org/detect-gpu/-/detect-gpu-5.0.46.tgz", - "integrity": "sha512-aulQlEJDVAADo2j4ZkcEu/mtuX9dz104w7uIDa52/ntcKdOEM8aI+k91Wv4x0o+Gds4Nbd2Sds0Uaqp1ZuLLJw==", - "dependencies": { - "webgl-constants": "^1.1.1" - } - }, - "node_modules/detect-libc": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", - "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", - "license": "Apache-2.0", - "optional": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/didyoumean": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", - "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", - "dev": true - }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "license": "MIT", - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/dlv": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", - "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", - "dev": true - }, - "node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/dom-serializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", - "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", - "license": "MIT", - "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "license": "BSD-2-Clause" - }, - "node_modules/domhandler": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", - "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", - "license": "BSD-2-Clause", - "dependencies": { - "domelementtype": "^2.3.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/domutils": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz", - "integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==", - "license": "BSD-2-Clause", - "dependencies": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/draco3d": { - "version": "1.5.7", - "resolved": "https://registry.npmjs.org/draco3d/-/draco3d-1.5.7.tgz", - "integrity": "sha512-m6WCKt/erDXcw+70IJXnG7M3awwQPAsZvJGX5zY7beBqpELw6RDGkYVU0W43AFxye4pDZ5i2Lbyc/NNGqwjUVQ==" - }, - "node_modules/duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", - "dev": true, - "license": "MIT" - }, - "node_modules/eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", - "dev": true - }, - "node_modules/electron-to-chromium": { - "version": "1.5.63", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.63.tgz", - "integrity": "sha512-ddeXKuY9BHo/mw145axlyWjlJ1UBt4WK3AlvkT7W2AbqfRQoacVoRUCF6wL3uIx/8wT9oLKXzI+rFqHHscByaA==", - "dev": true, - "license": "ISC" - }, - "node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true - }, - "node_modules/enhanced-resolve": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", - "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/es-abstract": { - "version": "1.23.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", - "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", - "dev": true, - "dependencies": { - "array-buffer-byte-length": "^1.0.1", - "arraybuffer.prototype.slice": "^1.0.3", - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "data-view-buffer": "^1.0.1", - "data-view-byte-length": "^1.0.1", - "data-view-byte-offset": "^1.0.0", - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-set-tostringtag": "^2.0.3", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.6", - "get-intrinsic": "^1.2.4", - "get-symbol-description": "^1.0.2", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.0.3", - "has-symbols": "^1.0.3", - "hasown": "^2.0.2", - "internal-slot": "^1.0.7", - "is-array-buffer": "^3.0.4", - "is-callable": "^1.2.7", - "is-data-view": "^1.0.1", - "is-negative-zero": "^2.0.3", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.3", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.13", - "is-weakref": "^1.0.2", - "object-inspect": "^1.13.1", - "object-keys": "^1.1.1", - "object.assign": "^4.1.5", - "regexp.prototype.flags": "^1.5.2", - "safe-array-concat": "^1.1.2", - "safe-regex-test": "^1.0.3", - "string.prototype.trim": "^1.2.9", - "string.prototype.trimend": "^1.0.8", - "string.prototype.trimstart": "^1.0.8", - "typed-array-buffer": "^1.0.2", - "typed-array-byte-length": "^1.0.1", - "typed-array-byte-offset": "^1.0.2", - "typed-array-length": "^1.0.6", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.15" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", - "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.2.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-errors": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", - "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-iterator-helpers": { - "version": "1.0.19", - "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.19.tgz", - "integrity": "sha512-zoMwbCcH5hwUkKJkT8kDIBZSz9I6mVG//+lDCinLCGov4+r7NIy0ld8o03M0cJxl2spVf6ESYVS6/gpIfq1FFw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.3", - "es-errors": "^1.3.0", - "es-set-tostringtag": "^2.0.3", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "globalthis": "^1.0.3", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.0.3", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.7", - "iterator.prototype": "^1.1.2", - "safe-array-concat": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-module-lexer": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz", - "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/es-object-atoms": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", - "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", - "dev": true, - "dependencies": { - "es-errors": "^1.3.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-set-tostringtag": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", - "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.2.4", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.1" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-shim-unscopables": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", - "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", - "dev": true, - "dependencies": { - "hasown": "^2.0.0" - } - }, - "node_modules/es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, - "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/escalade": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", - "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint": { - "version": "8.57.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", - "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", - "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.57.1", - "@humanwhocodes/config-array": "^0.13.0", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "@ungap/structured-clone": "^1.2.0", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.3", - "espree": "^9.6.1", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-plugin-react": { - "version": "7.35.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.35.0.tgz", - "integrity": "sha512-v501SSMOWv8gerHkk+IIQBkcGRGrO2nfybfj5pLxuJNFTPxxA3PSryhXTK+9pNbtkggheDdsC0E9Q8CuPk6JKA==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.8", - "array.prototype.findlast": "^1.2.5", - "array.prototype.flatmap": "^1.3.2", - "array.prototype.tosorted": "^1.1.4", - "doctrine": "^2.1.0", - "es-iterator-helpers": "^1.0.19", - "estraverse": "^5.3.0", - "hasown": "^2.0.2", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.1.2", - "object.entries": "^1.1.8", - "object.fromentries": "^2.0.8", - "object.values": "^1.2.0", - "prop-types": "^15.8.1", - "resolve": "^2.0.0-next.5", - "semver": "^6.3.1", - "string.prototype.matchall": "^4.0.11", - "string.prototype.repeat": "^1.0.0" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" - } - }, - "node_modules/eslint-plugin-react-hooks": { - "version": "5.1.0-rc-fb9a90fa48-20240614", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.1.0-rc-fb9a90fa48-20240614.tgz", - "integrity": "sha512-xsiRwaDNF5wWNC4ZHLut+x/YcAxksUd9Rizt7LaEn3bV8VyYRpXnRJQlLOfYaVy9esk4DFP4zPPnoNVjq5Gc0w==", - "dev": true, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0" - } - }, - "node_modules/eslint-plugin-react-refresh": { - "version": "0.4.11", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.11.tgz", - "integrity": "sha512-wrAKxMbVr8qhXTtIKfXqAn5SAtRZt0aXxe5P23Fh4pUAdC6XEsybGLB8P0PI4j1yYqOgUEUlzKAGDfo7rJOjcw==", - "dev": true, - "peerDependencies": { - "eslint": ">=7" - } - }, - "node_modules/eslint-scope": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", - "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/eslint/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/eslint/node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/eslint/node_modules/globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "license": "BSD-2-Clause", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/esquery": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", - "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", - "dev": true, - "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.8.x" - } - }, - "node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "license": "MIT", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fast-glob/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true - }, - "node_modules/fastq": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", - "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", - "dev": true, - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/feed": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/feed/-/feed-4.2.2.tgz", - "integrity": "sha512-u5/sxGfiMfZNtJ3OvQpXcvotFpYkL0n9u9mM2vkui2nGo8b4wvDkJ8gAkYqbA8QpGyFCv3RK0Z+Iv+9veCS9bQ==", - "license": "MIT", - "dependencies": { - "xml-js": "^1.6.11" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/fflate": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.8.2.tgz", - "integrity": "sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==" - }, - "node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "license": "MIT", - "dependencies": { - "flat-cache": "^3.0.4" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/flat-cache": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", - "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", - "dev": true, - "license": "MIT", - "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/flatted": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.2.tgz", - "integrity": "sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==", - "dev": true, - "license": "ISC" - }, - "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "dev": true, - "dependencies": { - "is-callable": "^1.1.3" - } - }, - "node_modules/foreground-child": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", - "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/fraction.js": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", - "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", - "dev": true, - "license": "MIT", - "engines": { - "node": "*" - }, - "funding": { - "type": "patreon", - "url": "https://github.com/sponsors/rawify" - } - }, - "node_modules/framer-motion": { - "version": "11.11.17", - "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-11.11.17.tgz", - "integrity": "sha512-O8QzvoKiuzI5HSAHbcYuL6xU+ZLXbrH7C8Akaato4JzQbX2ULNeniqC2Vo5eiCtFktX9XsJ+7nUhxcl2E2IjpA==", - "license": "MIT", - "dependencies": { - "tslib": "^2.4.0" - }, - "peerDependencies": { - "@emotion/is-prop-valid": "*", - "react": "^18.0.0", - "react-dom": "^18.0.0" - }, - "peerDependenciesMeta": { - "@emotion/is-prop-valid": { - "optional": true - }, - "react": { - "optional": true - }, - "react-dom": { - "optional": true - } - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/function.prototype.name": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", - "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "functions-have-names": "^1.2.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-intrinsic": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", - "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", - "dev": true, - "dependencies": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-symbol-description": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", - "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.5", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true, - "license": "BSD-2-Clause", - "peer": true - }, - "node_modules/globals": { - "version": "15.9.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-15.9.0.tgz", - "integrity": "sha512-SmSKyLLKFbSr6rptvP8izbyxJL4ILwqO9Jg23UA0sDlGlu58V59D1//I3vlc0KJphVdUR7vMjHIplYnzBxorQA==", - "dev": true, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/globalthis": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", - "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", - "dev": true, - "dependencies": { - "define-properties": "^1.2.1", - "gopd": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/glsl-noise": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/glsl-noise/-/glsl-noise-0.0.0.tgz", - "integrity": "sha512-b/ZCF6amfAUb7dJM/MxRs7AetQEahYzJ8PtgfrmEdtw6uyGOr+ZSGtgjFm6mfsBkxJ4d2W7kg+Nlqzqvn3Bc0w==" - }, - "node_modules/goober": { - "version": "2.1.16", - "resolved": "https://registry.npmjs.org/goober/-/goober-2.1.16.tgz", - "integrity": "sha512-erjk19y1U33+XAMe1VTvIONHYoSqE4iS7BYUZfHaqeohLmnC0FdxEh7rQU+6MZ4OajItzjZFSRtVANrQwNq6/g==", - "license": "MIT", - "peerDependencies": { - "csstype": "^3.0.10" - } - }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true, - "peer": true - }, - "node_modules/graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true, - "license": "MIT" - }, - "node_modules/gray-matter": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", - "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", - "license": "MIT", - "dependencies": { - "js-yaml": "^3.13.1", - "kind-of": "^6.0.2", - "section-matter": "^1.0.0", - "strip-bom-string": "^1.0.0" - }, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/gray-matter/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "license": "MIT", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/gray-matter/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "license": "MIT", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/gzip-size": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", - "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "duplexer": "^0.1.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", - "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", - "dev": true, - "dependencies": { - "es-define-property": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-proto": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", - "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-tostringtag": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", - "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/hls.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/hls.js/-/hls.js-1.3.5.tgz", - "integrity": "sha512-uybAvKS6uDe0MnWNEPnO0krWVr+8m2R0hJ/viql8H3MVK+itq8gGQuIYoFHL3rECkIpNH98Lw8YuuWMKZxp3Ew==" - }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true, - "license": "MIT" - }, - "node_modules/htmlparser2": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", - "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "license": "MIT", - "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "entities": "^4.4.0" - } - }, - "node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "license": "MIT", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/ignore": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/immediate": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==" - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "license": "MIT", - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", - "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "node_modules/internal-slot": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", - "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", - "dev": true, - "dependencies": { - "es-errors": "^1.3.0", - "hasown": "^2.0.0", - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/is-array-buffer": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", - "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-async-function": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz", - "integrity": "sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "dev": true, - "dependencies": { - "has-bigints": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-core-module": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", - "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", - "dev": true, - "dependencies": { - "hasown": "^2.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-data-view": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", - "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", - "dev": true, - "dependencies": { - "is-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-finalizationregistry": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz", - "integrity": "sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-generator-function": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", - "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-map": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", - "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-negative-zero": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", - "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-promise": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", - "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==" - }, - "node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-set": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", - "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", - "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typed-array": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", - "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", - "dev": true, - "dependencies": { - "which-typed-array": "^1.1.14" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakmap": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", - "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakset": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.3.tgz", - "integrity": "sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "get-intrinsic": "^1.2.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" - }, - "node_modules/iterator.prototype": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.2.tgz", - "integrity": "sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==", - "dev": true, - "dependencies": { - "define-properties": "^1.2.1", - "get-intrinsic": "^1.2.1", - "has-symbols": "^1.0.3", - "reflect.getprototypeof": "^1.0.4", - "set-function-name": "^2.0.1" - } - }, - "node_modules/its-fine": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/its-fine/-/its-fine-1.2.5.tgz", - "integrity": "sha512-fXtDA0X0t0eBYAGLVM5YsgJGsJ5jEmqZEPrGbzdf5awjv0xE7nqv3TVnvtUF060Tkes15DbDAKW/I48vsb6SyA==", - "dependencies": { - "@types/react-reconciler": "^0.28.0" - }, - "peerDependencies": { - "react": ">=18.0" - } - }, - "node_modules/its-fine/node_modules/@types/react-reconciler": { - "version": "0.28.8", - "resolved": "https://registry.npmjs.org/@types/react-reconciler/-/react-reconciler-0.28.8.tgz", - "integrity": "sha512-SN9c4kxXZonFhbX4hJrZy37yw9e7EIxcpHCxQv5JUS18wDE5ovkQKlqQEkufdJCCMfuI9BnjUJvhYeJ9x5Ra7g==", - "dependencies": { - "@types/react": "*" - } - }, - "node_modules/jackspeak": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", - "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", - "dev": true, - "dependencies": { - "@isaacs/cliui": "^8.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" - } - }, - "node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/jiti": { - "version": "1.21.6", - "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.6.tgz", - "integrity": "sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==", - "dev": true, - "bin": { - "jiti": "bin/jiti.js" - } - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" - }, - "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true, - "license": "MIT" - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true - }, - "node_modules/jsx-ast-utils": { - "version": "3.3.5", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", - "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", - "dev": true, - "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.flat": "^1.3.1", - "object.assign": "^4.1.4", - "object.values": "^1.1.6" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/keyv": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", - "dev": true, - "license": "MIT", - "dependencies": { - "json-buffer": "3.0.1" - } - }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/lie": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", - "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", - "dependencies": { - "immediate": "~3.0.5" - } - }, - "node_modules/lilconfig": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", - "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true - }, - "node_modules/loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6.11.5" - } - }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "node_modules/loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" - }, - "bin": { - "loose-envify": "cli.js" - } - }, - "node_modules/maath": { - "version": "0.10.8", - "resolved": "https://registry.npmjs.org/maath/-/maath-0.10.8.tgz", - "integrity": "sha512-tRvbDF0Pgqz+9XUa4jjfgAQ8/aPKmQdWXilFu2tMy4GWj4NOsx99HlULO4IeREfbO3a0sA145DZYyvXPkybm0g==", - "peerDependencies": { - "@types/three": ">=0.134.0", - "three": ">=0.134.0" - } - }, - "node_modules/marked": { - "version": "16.3.0", - "resolved": "https://registry.npmjs.org/marked/-/marked-16.3.0.tgz", - "integrity": "sha512-K3UxuKu6l6bmA5FUwYho8CfJBlsUWAooKtdGgMcERSpF7gcBUrCGsLH7wDaaNOzwq18JzSUDyoEb/YsrqMac3w==", - "license": "MIT", - "bin": { - "marked": "bin/marked.js" - }, - "engines": { - "node": ">= 20" - } - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/meshline": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/meshline/-/meshline-3.3.1.tgz", - "integrity": "sha512-/TQj+JdZkeSUOl5Mk2J7eLcYTLiQm2IDzmlSvYm7ov15anEcDJ92GHqqazxTSreeNgfnYu24kiEvvv0WlbCdFQ==", - "peerDependencies": { - "three": ">=0.137" - } - }, - "node_modules/meshoptimizer": { - "version": "0.18.1", - "resolved": "https://registry.npmjs.org/meshoptimizer/-/meshoptimizer-0.18.1.tgz", - "integrity": "sha512-ZhoIoL7TNV4s5B6+rx5mC//fw8/POGyNxS/DZyCJeiZ12ScLfVwRE/GfsxwiTkMYYD5DmK2/JXnEVXqL4rF+Sw==" - }, - "node_modules/micromatch": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", - "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", - "dev": true, - "dependencies": { - "braces": "^3.0.3", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minipass": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", - "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", - "dev": true, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/mrmime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-2.0.1.tgz", - "integrity": "sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/mz": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", - "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", - "dev": true, - "dependencies": { - "any-promise": "^1.0.0", - "object-assign": "^4.0.1", - "thenify-all": "^1.0.0" - } - }, - "node_modules/nanoid": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", - "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true - }, - "node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/next": { - "version": "15.5.4", - "resolved": "https://registry.npmjs.org/next/-/next-15.5.4.tgz", - "integrity": "sha512-xH4Yjhb82sFYQfY3vbkJfgSDgXvBB6a8xPs9i35k6oZJRoQRihZH+4s9Yo2qsWpzBmZ3lPXaJ2KPXLfkvW4LnA==", - "license": "MIT", - "dependencies": { - "@next/env": "15.5.4", - "@swc/helpers": "0.5.15", - "caniuse-lite": "^1.0.30001579", - "postcss": "8.4.31", - "styled-jsx": "5.1.6" - }, - "bin": { - "next": "dist/bin/next" - }, - "engines": { - "node": "^18.18.0 || ^19.8.0 || >= 20.0.0" - }, - "optionalDependencies": { - "@next/swc-darwin-arm64": "15.5.4", - "@next/swc-darwin-x64": "15.5.4", - "@next/swc-linux-arm64-gnu": "15.5.4", - "@next/swc-linux-arm64-musl": "15.5.4", - "@next/swc-linux-x64-gnu": "15.5.4", - "@next/swc-linux-x64-musl": "15.5.4", - "@next/swc-win32-arm64-msvc": "15.5.4", - "@next/swc-win32-x64-msvc": "15.5.4", - "sharp": "^0.34.3" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.1.0", - "@playwright/test": "^1.51.1", - "babel-plugin-react-compiler": "*", - "react": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", - "react-dom": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", - "sass": "^1.3.0" - }, - "peerDependenciesMeta": { - "@opentelemetry/api": { - "optional": true - }, - "@playwright/test": { - "optional": true - }, - "babel-plugin-react-compiler": { - "optional": true - }, - "sass": { - "optional": true - } - } - }, - "node_modules/next/node_modules/postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "nanoid": "^3.3.6", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/node-releases": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", - "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", - "dev": true, - "license": "MIT" - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-hash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", - "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/object-inspect": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz", - "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", - "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.5", - "define-properties": "^1.2.1", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.entries": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.8.tgz", - "integrity": "sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.fromentries": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", - "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.values": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", - "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/opener": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", - "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", - "dev": true, - "license": "(WTFPL OR MIT)", - "bin": { - "opener": "bin/opener-bin.js" - } - }, - "node_modules/optionator": { - "version": "0.9.4", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", - "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", - "dev": true, - "dependencies": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.5" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/package-json-from-dist": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", - "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==", - "dev": true - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "license": "MIT", - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/parse-srcset": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/parse-srcset/-/parse-srcset-1.0.2.tgz", - "integrity": "sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q==", - "license": "MIT" - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "node_modules/path-scurry": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", - "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", - "dev": true, - "dependencies": { - "lru-cache": "^10.2.0", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" - }, - "engines": { - "node": ">=16 || 14 >=14.18" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", - "dev": true - }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/picocolors": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", - "license": "ISC" - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/pirates": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", - "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/possible-typed-array-names": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", - "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/postcss": { - "version": "8.4.43", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.43.tgz", - "integrity": "sha512-gJAQVYbh5R3gYm33FijzCZj7CHyQ3hWMgJMprLUlIYqCwTeZhBQ19wp0e9mA25BUbEvY5+EXuuaAjqQsrBxQBQ==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "nanoid": "^3.3.7", - "picocolors": "^1.0.1", - "source-map-js": "^1.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/postcss-import": { - "version": "15.1.0", - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", - "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", - "dev": true, - "dependencies": { - "postcss-value-parser": "^4.0.0", - "read-cache": "^1.0.0", - "resolve": "^1.1.7" - }, - "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "postcss": "^8.0.0" - } - }, - "node_modules/postcss-import/node_modules/resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", - "dev": true, - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/postcss-js": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", - "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", - "dev": true, - "dependencies": { - "camelcase-css": "^2.0.1" - }, - "engines": { - "node": "^12 || ^14 || >= 16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - "peerDependencies": { - "postcss": "^8.4.21" - } - }, - "node_modules/postcss-load-config": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz", - "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "lilconfig": "^3.0.0", - "yaml": "^2.3.4" - }, - "engines": { - "node": ">= 14" - }, - "peerDependencies": { - "postcss": ">=8.0.9", - "ts-node": ">=9.0.0" - }, - "peerDependenciesMeta": { - "postcss": { - "optional": true - }, - "ts-node": { - "optional": true - } - } - }, - "node_modules/postcss-load-config/node_modules/lilconfig": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.2.tgz", - "integrity": "sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==", - "dev": true, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antonk52" - } - }, - "node_modules/postcss-nested": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.2.0.tgz", - "integrity": "sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "postcss-selector-parser": "^6.1.1" - }, - "engines": { - "node": ">=12.0" - }, - "peerDependencies": { - "postcss": "^8.2.14" - } - }, - "node_modules/postcss-selector-parser": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", - "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", - "dev": true, - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "dev": true - }, - "node_modules/potpack": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/potpack/-/potpack-1.0.2.tgz", - "integrity": "sha512-choctRBIV9EMT9WGAZHn3V7t0Z2pMQyl0EZE6pFc/6ml3ssw7Dlf/oAOvFwjm1HVsqfQN8GfeFyJ+d8tRzqueQ==" - }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/promise-worker-transferable": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/promise-worker-transferable/-/promise-worker-transferable-1.0.4.tgz", - "integrity": "sha512-bN+0ehEnrXfxV2ZQvU2PetO0n4gqBD4ulq3MI1WOPLgr7/Mg9yRQkX5+0v1vagr74ZTsl7XtzlaYDo2EuCeYJw==", - "dependencies": { - "is-promise": "^2.1.0", - "lie": "^3.0.2" - } - }, - "node_modules/prop-types": { - "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", - "dependencies": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.13.1" - } - }, - "node_modules/punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, - "node_modules/react": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", - "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", - "license": "MIT", - "dependencies": { - "loose-envify": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-composer": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/react-composer/-/react-composer-5.0.3.tgz", - "integrity": "sha512-1uWd07EME6XZvMfapwZmc7NgCZqDemcvicRi3wMJzXsQLvZ3L7fTHVyPy1bZdnWXM4iPjYuNE+uJ41MLKeTtnA==", - "dependencies": { - "prop-types": "^15.6.0" - }, - "peerDependencies": { - "react": "^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/react-dom": { - "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", - "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", - "license": "MIT", - "dependencies": { - "loose-envify": "^1.1.0", - "scheduler": "^0.23.2" - }, - "peerDependencies": { - "react": "^18.3.1" - } - }, - "node_modules/react-dom/node_modules/scheduler": { - "version": "0.23.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", - "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", - "dependencies": { - "loose-envify": "^1.1.0" - } - }, - "node_modules/react-easy-swipe": { - "version": "0.0.21", - "resolved": "https://registry.npmjs.org/react-easy-swipe/-/react-easy-swipe-0.0.21.tgz", - "integrity": "sha512-OeR2jAxdoqUMHIn/nS9fgreI5hSpgGoL5ezdal4+oO7YSSgJR8ga+PkYGJrSrJ9MKlPcQjMQXnketrD7WNmNsg==", - "license": "MIT", - "dependencies": { - "prop-types": "^15.5.8" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/react-hot-toast": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/react-hot-toast/-/react-hot-toast-2.4.1.tgz", - "integrity": "sha512-j8z+cQbWIM5LY37pR6uZR6D4LfseplqnuAO4co4u8917hBUvXlEqyP1ZzqVLcqoyUesZZv/ImreoCeHVDpE5pQ==", - "license": "MIT", - "dependencies": { - "goober": "^2.1.10" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "react": ">=16", - "react-dom": ">=16" - } - }, - "node_modules/react-intersection-observer": { - "version": "9.13.1", - "resolved": "https://registry.npmjs.org/react-intersection-observer/-/react-intersection-observer-9.13.1.tgz", - "integrity": "sha512-tSzDaTy0qwNPLJHg8XZhlyHTgGW6drFKTtvjdL+p6um12rcnp8Z5XstE+QNBJ7c64n5o0Lj4ilUleA41bmDoMw==", - "license": "MIT", - "peerDependencies": { - "react": "^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" - }, - "peerDependenciesMeta": { - "react-dom": { - "optional": true - } - } - }, - "node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" - }, - "node_modules/react-reconciler": { - "version": "0.27.0", - "resolved": "https://registry.npmjs.org/react-reconciler/-/react-reconciler-0.27.0.tgz", - "integrity": "sha512-HmMDKciQjYmBRGuuhIaKA1ba/7a+UsM5FzOZsMO2JYHt9Jh8reCb7j1eDC95NOyUlKM9KRyvdx0flBuDvYSBoA==", - "dependencies": { - "loose-envify": "^1.1.0", - "scheduler": "^0.21.0" - }, - "engines": { - "node": ">=0.10.0" - }, - "peerDependencies": { - "react": "^18.0.0" - } - }, - "node_modules/react-responsive-carousel": { - "version": "3.2.23", - "resolved": "https://registry.npmjs.org/react-responsive-carousel/-/react-responsive-carousel-3.2.23.tgz", - "integrity": "sha512-pqJLsBaKHWJhw/ItODgbVoziR2z4lpcJg+YwmRlSk4rKH32VE633mAtZZ9kDXjy4wFO+pgUZmDKPsPe1fPmHCg==", - "license": "MIT", - "dependencies": { - "classnames": "^2.2.5", - "prop-types": "^15.5.8", - "react-easy-swipe": "^0.0.21" - } - }, - "node_modules/read-cache": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", - "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", - "dev": true, - "dependencies": { - "pify": "^2.3.0" - } - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/reflect.getprototypeof": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.6.tgz", - "integrity": "sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.1", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4", - "globalthis": "^1.0.3", - "which-builtin-type": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/regexp.prototype.flags": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", - "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.6", - "define-properties": "^1.2.1", - "es-errors": "^1.3.0", - "set-function-name": "^2.0.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/resolve": { - "version": "2.0.0-next.5", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", - "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", - "dev": true, - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "deprecated": "Rimraf versions prior to v4 are no longer supported", - "dev": true, - "license": "ISC", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/safe-array-concat": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", - "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "get-intrinsic": "^1.2.4", - "has-symbols": "^1.0.3", - "isarray": "^2.0.5" - }, - "engines": { - "node": ">=0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "peer": true - }, - "node_modules/safe-regex-test": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", - "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-regex": "^1.1.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true, - "license": "MIT" - }, - "node_modules/sanitize-html": { - "version": "2.17.0", - "resolved": "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.17.0.tgz", - "integrity": "sha512-dLAADUSS8rBwhaevT12yCezvioCA+bmUTPH/u57xKPT8d++voeYE6HeluA/bPbQ15TwDBG2ii+QZIEmYx8VdxA==", - "license": "MIT", - "dependencies": { - "deepmerge": "^4.2.2", - "escape-string-regexp": "^4.0.0", - "htmlparser2": "^8.0.0", - "is-plain-object": "^5.0.0", - "parse-srcset": "^1.0.2", - "postcss": "^8.3.11" - } - }, - "node_modules/sax": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", - "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", - "license": "ISC" - }, - "node_modules/scheduler": { - "version": "0.21.0", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.21.0.tgz", - "integrity": "sha512-1r87x5fz9MXqswA2ERLo0EbOAU74DpIUO090gIasYTqlVoJeMcl+Z1Rg7WHz+qtPujhS/hGIt9kxZOYBV3faRQ==", - "dependencies": { - "loose-envify": "^1.1.0" - } - }, - "node_modules/schema-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", - "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/section-matter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", - "integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==", - "license": "MIT", - "dependencies": { - "extend-shallow": "^2.0.1", - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/serialize-javascript": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", - "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/set-function-length": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", - "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", - "dev": true, - "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/set-function-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", - "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", - "dev": true, - "dependencies": { - "define-data-property": "^1.1.4", - "es-errors": "^1.3.0", - "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/sharp": { - "version": "0.34.4", - "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.34.4.tgz", - "integrity": "sha512-FUH39xp3SBPnxWvd5iib1X8XY7J0K0X7d93sie9CJg2PO8/7gmg89Nve6OjItK53/MlAushNNxteBYfM6DEuoA==", - "hasInstallScript": true, - "license": "Apache-2.0", - "optional": true, - "dependencies": { - "@img/colour": "^1.0.0", - "detect-libc": "^2.1.0", - "semver": "^7.7.2" - }, - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" - }, - "optionalDependencies": { - "@img/sharp-darwin-arm64": "0.34.4", - "@img/sharp-darwin-x64": "0.34.4", - "@img/sharp-libvips-darwin-arm64": "1.2.3", - "@img/sharp-libvips-darwin-x64": "1.2.3", - "@img/sharp-libvips-linux-arm": "1.2.3", - "@img/sharp-libvips-linux-arm64": "1.2.3", - "@img/sharp-libvips-linux-ppc64": "1.2.3", - "@img/sharp-libvips-linux-s390x": "1.2.3", - "@img/sharp-libvips-linux-x64": "1.2.3", - "@img/sharp-libvips-linuxmusl-arm64": "1.2.3", - "@img/sharp-libvips-linuxmusl-x64": "1.2.3", - "@img/sharp-linux-arm": "0.34.4", - "@img/sharp-linux-arm64": "0.34.4", - "@img/sharp-linux-ppc64": "0.34.4", - "@img/sharp-linux-s390x": "0.34.4", - "@img/sharp-linux-x64": "0.34.4", - "@img/sharp-linuxmusl-arm64": "0.34.4", - "@img/sharp-linuxmusl-x64": "0.34.4", - "@img/sharp-wasm32": "0.34.4", - "@img/sharp-win32-arm64": "0.34.4", - "@img/sharp-win32-ia32": "0.34.4", - "@img/sharp-win32-x64": "0.34.4" - } - }, - "node_modules/sharp/node_modules/semver": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", - "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", - "license": "ISC", - "optional": true, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "engines": { - "node": ">=8" - } - }, - "node_modules/side-channel": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", - "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4", - "object-inspect": "^1.13.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/sirv": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/sirv/-/sirv-2.0.4.tgz", - "integrity": "sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@polka/url": "^1.0.0-next.24", - "mrmime": "^2.0.0", - "totalist": "^3.0.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-js": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", - "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-loader": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-5.0.0.tgz", - "integrity": "sha512-k2Dur7CbSLcAH73sBcIkV5xjPV4SzqO1NJ7+XaQl8if3VODDUj3FNchNGpqgJSKbvUfJuhVdv8K2Eu8/TNl2eA==", - "dev": true, - "license": "MIT", - "dependencies": { - "iconv-lite": "^0.6.3", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": ">= 18.12.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.72.1" - } - }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "license": "BSD-3-Clause" - }, - "node_modules/stats-gl": { - "version": "2.2.8", - "resolved": "https://registry.npmjs.org/stats-gl/-/stats-gl-2.2.8.tgz", - "integrity": "sha512-94G5nZvduDmzxBS7K0lYnynYwreZpkknD8g5dZmU6mpwIhy3caCrjAm11Qm1cbyx7mqix7Fp00RkbsonzKWnoQ==", - "dependencies": { - "@types/three": "^0.163.0" - } - }, - "node_modules/stats-gl/node_modules/@types/three": { - "version": "0.163.0", - "resolved": "https://registry.npmjs.org/@types/three/-/three-0.163.0.tgz", - "integrity": "sha512-uIdDhsXRpQiBUkflBS/i1l3JX14fW6Ot9csed60nfbZNXHDTRsnV2xnTVwXcgbvTiboAR4IW+t+lTL5f1rqIqA==", - "dependencies": { - "@tweenjs/tween.js": "~23.1.1", - "@types/stats.js": "*", - "@types/webxr": "*", - "fflate": "~0.8.2", - "meshoptimizer": "~0.18.1" - } - }, - "node_modules/stats.js": { - "version": "0.17.0", - "resolved": "https://registry.npmjs.org/stats.js/-/stats.js-0.17.0.tgz", - "integrity": "sha512-hNKz8phvYLPEcRkeG1rsGmV5ChMjKDAWU7/OJJdDErPBNChQXxCo3WZurGpnWc6gZhAzEPFad1aVgyOANH1sMw==" - }, - "node_modules/string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", - "dev": true, - "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/string-width-cjs": { - "name": "string-width", - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string-width-cjs/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/string-width/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/string-width/node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dev": true, - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/string.prototype.matchall": { - "version": "4.0.11", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.11.tgz", - "integrity": "sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.4", - "gopd": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.7", - "regexp.prototype.flags": "^1.5.2", - "set-function-name": "^2.0.2", - "side-channel": "^1.0.6" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.repeat": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz", - "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" - } - }, - "node_modules/string.prototype.trim": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", - "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.0", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", - "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", - "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-object-atoms": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi-cjs": { - "name": "strip-ansi", - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-bom-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", - "integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/styled-jsx": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.6.tgz", - "integrity": "sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==", - "license": "MIT", - "dependencies": { - "client-only": "0.0.1" - }, - "engines": { - "node": ">= 12.0.0" - }, - "peerDependencies": { - "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0 || ^19.0.0-0" - }, - "peerDependenciesMeta": { - "@babel/core": { - "optional": true - }, - "babel-plugin-macros": { - "optional": true - } - } - }, - "node_modules/sucrase": { - "version": "3.35.0", - "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", - "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.2", - "commander": "^4.0.0", - "glob": "^10.3.10", - "lines-and-columns": "^1.1.6", - "mz": "^2.7.0", - "pirates": "^4.0.1", - "ts-interface-checker": "^0.1.9" - }, - "bin": { - "sucrase": "bin/sucrase", - "sucrase-node": "bin/sucrase-node" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/sucrase/node_modules/brace-expansion": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", - "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/sucrase/node_modules/commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/sucrase/node_modules/glob": { - "version": "10.4.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", - "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", - "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^3.1.2", - "minimatch": "^9.0.4", - "minipass": "^7.1.2", - "package-json-from-dist": "^1.0.0", - "path-scurry": "^1.11.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/sucrase/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/suspend-react": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/suspend-react/-/suspend-react-0.1.3.tgz", - "integrity": "sha512-aqldKgX9aZqpoDp3e8/BZ8Dm7x1pJl+qI3ZKxDN0i/IQTWUwBx/ManmlVJ3wowqbno6c2bmiIfs+Um6LbsjJyQ==", - "peerDependencies": { - "react": ">=17.0" - } - }, - "node_modules/tailwindcss": { - "version": "3.4.10", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.10.tgz", - "integrity": "sha512-KWZkVPm7yJRhdu4SRSl9d4AK2wM3a50UsvgHZO7xY77NQr2V+fIrEuoDGQcbvswWvFGbS2f6e+jC/6WJm1Dl0w==", - "dev": true, - "dependencies": { - "@alloc/quick-lru": "^5.2.0", - "arg": "^5.0.2", - "chokidar": "^3.5.3", - "didyoumean": "^1.2.2", - "dlv": "^1.1.3", - "fast-glob": "^3.3.0", - "glob-parent": "^6.0.2", - "is-glob": "^4.0.3", - "jiti": "^1.21.0", - "lilconfig": "^2.1.0", - "micromatch": "^4.0.5", - "normalize-path": "^3.0.0", - "object-hash": "^3.0.0", - "picocolors": "^1.0.0", - "postcss": "^8.4.23", - "postcss-import": "^15.1.0", - "postcss-js": "^4.0.1", - "postcss-load-config": "^4.0.1", - "postcss-nested": "^6.0.1", - "postcss-selector-parser": "^6.0.11", - "resolve": "^1.22.2", - "sucrase": "^3.32.0" - }, - "bin": { - "tailwind": "lib/cli.js", - "tailwindcss": "lib/cli.js" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/tailwindcss/node_modules/resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", - "dev": true, - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/terser": { - "version": "5.36.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.36.0.tgz", - "integrity": "sha512-IYV9eNMuFAV4THUspIRXkLakHnV6XO7FEdtKjf/mDyrnqUg9LnlOn6/RwRvM9SZjR4GUq8Nk8zj67FzVARr74w==", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "dependencies": { - "@jridgewell/source-map": "^0.3.3", - "acorn": "^8.8.2", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/terser-webpack-plugin": { - "version": "5.3.10", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", - "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.20", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.1", - "terser": "^5.26.0" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "esbuild": { - "optional": true - }, - "uglify-js": { - "optional": true - } - } - }, - "node_modules/terser/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true, - "license": "MIT", - "peer": true - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "node_modules/thenify": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", - "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", - "dev": true, - "dependencies": { - "any-promise": "^1.0.0" - } - }, - "node_modules/thenify-all": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", - "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", - "dev": true, - "dependencies": { - "thenify": ">= 3.1.0 < 4" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/three": { - "version": "0.170.0", - "resolved": "https://registry.npmjs.org/three/-/three-0.170.0.tgz", - "integrity": "sha512-FQK+LEpYc0fBD+J8g6oSEyyNzjp+Q7Ks1C568WWaoMRLW+TkNNWmenWeGgJjV105Gd+p/2ql1ZcjYvNiPZBhuQ==", - "license": "MIT", - "peer": true - }, - "node_modules/three-mesh-bvh": { - "version": "0.7.6", - "resolved": "https://registry.npmjs.org/three-mesh-bvh/-/three-mesh-bvh-0.7.6.tgz", - "integrity": "sha512-rCjsnxEqR9r1/C/lCqzGLS67NDty/S/eT6rAJfDvsanrIctTWdNoR4ZOGWewCB13h1QkVo2BpmC0wakj1+0m8A==", - "peerDependencies": { - "three": ">= 0.151.0" - } - }, - "node_modules/three-stdlib": { - "version": "2.32.2", - "resolved": "https://registry.npmjs.org/three-stdlib/-/three-stdlib-2.32.2.tgz", - "integrity": "sha512-ZN25Na/Xg7APhGKwJ1zhGdhZDsDGGnnm1k5Z+9LLlnfsFye4jigvbN3eA/Ta8hQmBNmEHXoozpmpKK1x8dCePQ==", - "dependencies": { - "@types/draco3d": "^1.4.0", - "@types/offscreencanvas": "^2019.6.4", - "@types/webxr": "^0.5.2", - "draco3d": "^1.4.1", - "fflate": "^0.6.9", - "potpack": "^1.0.1" - }, - "peerDependencies": { - "three": ">=0.128.0" - } - }, - "node_modules/three-stdlib/node_modules/fflate": { - "version": "0.6.10", - "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.6.10.tgz", - "integrity": "sha512-IQrh3lEPM93wVCEczc9SaAOvkmcoQn/G8Bo1e8ZPlY3X3bnAxWaBdvTdvM1hP62iZp0BXWDy4vTAy4fF0+Dlpg==" - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/totalist": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/totalist/-/totalist-3.0.1.tgz", - "integrity": "sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/troika-three-text": { - "version": "0.49.1", - "resolved": "https://registry.npmjs.org/troika-three-text/-/troika-three-text-0.49.1.tgz", - "integrity": "sha512-lXGWxgjJP9kw4i4Wh+0k0Q/7cRfS6iOME4knKht/KozPu9GcFA9NnNpRvehIhrUawq9B0ZRw+0oiFHgRO+4Wig==", - "dependencies": { - "bidi-js": "^1.0.2", - "troika-three-utils": "^0.49.0", - "troika-worker-utils": "^0.49.0", - "webgl-sdf-generator": "1.1.1" - }, - "peerDependencies": { - "three": ">=0.125.0" - } - }, - "node_modules/troika-three-utils": { - "version": "0.49.0", - "resolved": "https://registry.npmjs.org/troika-three-utils/-/troika-three-utils-0.49.0.tgz", - "integrity": "sha512-umitFL4cT+Fm/uONmaQEq4oZlyRHWwVClaS6ZrdcueRvwc2w+cpNQ47LlJKJswpqtMFWbEhOLy0TekmcPZOdYA==", - "peerDependencies": { - "three": ">=0.125.0" - } - }, - "node_modules/troika-worker-utils": { - "version": "0.49.0", - "resolved": "https://registry.npmjs.org/troika-worker-utils/-/troika-worker-utils-0.49.0.tgz", - "integrity": "sha512-1xZHoJrG0HFfCvT/iyN41DvI/nRykiBtHqFkGaGgJwq5iXfIZFBiPPEHFpPpgyKM3Oo5ITHXP5wM2TNQszYdVg==" - }, - "node_modules/ts-api-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.4.0.tgz", - "integrity": "sha512-032cPxaEKwM+GT3vA5JXNzIaizx388rhsSW79vGRNGXfRRAdEAn2mvk36PvK5HnOchyWZ7afLEXqYCvPCrzuzQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "typescript": ">=4.2.0" - } - }, - "node_modules/ts-interface-checker": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", - "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", - "dev": true - }, - "node_modules/tslib": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", - "license": "0BSD" - }, - "node_modules/tunnel-rat": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/tunnel-rat/-/tunnel-rat-0.1.2.tgz", - "integrity": "sha512-lR5VHmkPhzdhrM092lI2nACsLO4QubF0/yoOhzX7c+wIpbN1GjHNzCc91QlpxBi+cnx8vVJ+Ur6vL5cEoQPFpQ==", - "dependencies": { - "zustand": "^4.3.2" - } - }, - "node_modules/tunnel-rat/node_modules/zustand": { - "version": "4.5.5", - "resolved": "https://registry.npmjs.org/zustand/-/zustand-4.5.5.tgz", - "integrity": "sha512-+0PALYNJNgK6hldkgDq2vLrw5f6g/jCInz52n9RTpropGgeAf/ioFUCdtsjCqu4gNhW9D01rUQBROoRjdzyn2Q==", - "dependencies": { - "use-sync-external-store": "1.2.2" - }, - "engines": { - "node": ">=12.7.0" - }, - "peerDependencies": { - "@types/react": ">=16.8", - "immer": ">=9.0.6", - "react": ">=16.8" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "immer": { - "optional": true - }, - "react": { - "optional": true - } - } - }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/typed-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", - "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "is-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/typed-array-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", - "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-byte-offset": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", - "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", - "dev": true, - "dependencies": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typed-array-length": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", - "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-proto": "^1.0.3", - "is-typed-array": "^1.1.13", - "possible-typed-array-names": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typescript": { - "version": "5.5.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", - "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "node_modules/unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/undici-types": { - "version": "6.19.8", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", - "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", - "dev": true, - "license": "MIT" - }, - "node_modules/update-browserslist-db": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", - "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "escalade": "^3.2.0", - "picocolors": "^1.1.0" - }, - "bin": { - "update-browserslist-db": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/use-sync-external-store": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.2.tgz", - "integrity": "sha512-PElTlVMwpblvbNqQ82d2n6RjStvdSoNe9FG28kNfz3WiXilJm4DdNkEzRhCZuIDwY8U08WVihhGR5iRqAwfDiw==", - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true - }, - "node_modules/utility-types": { - "version": "3.11.0", - "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.11.0.tgz", - "integrity": "sha512-6Z7Ma2aVEWisaL6TvBCy7P8rm2LQoPv6dJ7ecIaIixHcwfbJ0x7mWdbcwlIM5IGQxPZSFYeqRCqlOOeKoJYMkw==", - "engines": { - "node": ">= 4" - } - }, - "node_modules/uuid": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", - "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", - "funding": [ - "https://github.com/sponsors/broofa", - "https://github.com/sponsors/ctavan" - ], - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/watchpack": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", - "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/webgl-constants": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/webgl-constants/-/webgl-constants-1.1.1.tgz", - "integrity": "sha512-LkBXKjU5r9vAW7Gcu3T5u+5cvSvh5WwINdr0C+9jpzVB41cjQAP5ePArDtk/WHYdVj0GefCgM73BA7FlIiNtdg==" - }, - "node_modules/webgl-sdf-generator": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/webgl-sdf-generator/-/webgl-sdf-generator-1.1.1.tgz", - "integrity": "sha512-9Z0JcMTFxeE+b2x1LJTdnaT8rT8aEp7MVxkNwoycNmJWwPdzoXzMh0BjJSh/AEFP+KPYZUli814h8bJZFIZ2jA==" - }, - "node_modules/webpack": { - "version": "5.96.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.96.1.tgz", - "integrity": "sha512-l2LlBSvVZGhL4ZrPwyr8+37AunkcYj5qh8o6u2/2rzoPc8gxFJkLj1WxNgooi9pnoc06jh0BjuXnamM4qlujZA==", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@types/eslint-scope": "^3.7.7", - "@types/estree": "^1.0.6", - "@webassemblyjs/ast": "^1.12.1", - "@webassemblyjs/wasm-edit": "^1.12.1", - "@webassemblyjs/wasm-parser": "^1.12.1", - "acorn": "^8.14.0", - "browserslist": "^4.24.0", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.17.1", - "es-module-lexer": "^1.2.1", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.11", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.2.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.3.10", - "watchpack": "^2.4.1", - "webpack-sources": "^3.2.3" - }, - "bin": { - "webpack": "bin/webpack.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-bundle-analyzer": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.10.1.tgz", - "integrity": "sha512-s3P7pgexgT/HTUSYgxJyn28A+99mmLq4HsJepMPzu0R8ImJc52QNqaFYW1Z2z2uIb1/J3eYgaAWVpaC+v/1aAQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@discoveryjs/json-ext": "0.5.7", - "acorn": "^8.0.4", - "acorn-walk": "^8.0.0", - "commander": "^7.2.0", - "debounce": "^1.2.1", - "escape-string-regexp": "^4.0.0", - "gzip-size": "^6.0.0", - "html-escaper": "^2.0.2", - "is-plain-object": "^5.0.0", - "opener": "^1.5.2", - "picocolors": "^1.0.0", - "sirv": "^2.0.3", - "ws": "^7.3.1" - }, - "bin": { - "webpack-bundle-analyzer": "lib/bin/analyzer.js" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/webpack/node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/webpack/node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", - "dev": true, - "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-builtin-type": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.1.4.tgz", - "integrity": "sha512-bppkmBSsHFmIMSl8BO9TbsyzsvGjVoppt8xUiGzwiu/bhDCGxnpOKCxgqj6GuyHE0mINMDecBFPlOm2hzY084w==", - "dev": true, - "dependencies": { - "function.prototype.name": "^1.1.6", - "has-tostringtag": "^1.0.2", - "is-async-function": "^2.0.0", - "is-date-object": "^1.0.5", - "is-finalizationregistry": "^1.0.2", - "is-generator-function": "^1.0.10", - "is-regex": "^1.1.4", - "is-weakref": "^1.0.2", - "isarray": "^2.0.5", - "which-boxed-primitive": "^1.0.2", - "which-collection": "^1.0.2", - "which-typed-array": "^1.1.15" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-collection": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", - "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", - "dev": true, - "dependencies": { - "is-map": "^2.0.3", - "is-set": "^2.0.3", - "is-weakmap": "^2.0.2", - "is-weakset": "^2.0.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-typed-array": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", - "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", - "dev": true, - "dependencies": { - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/word-wrap": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", - "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wrap-ansi": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", - "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs": { - "name": "wrap-ansi", - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/wrap-ansi-cjs/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dev": true, - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, - "node_modules/ws": { - "version": "7.5.10", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", - "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/xml-js": { - "version": "1.6.11", - "resolved": "https://registry.npmjs.org/xml-js/-/xml-js-1.6.11.tgz", - "integrity": "sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g==", - "license": "MIT", - "dependencies": { - "sax": "^1.2.4" - }, - "bin": { - "xml-js": "bin/cli.js" - } - }, - "node_modules/yaml": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.5.0.tgz", - "integrity": "sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==", - "dev": true, - "bin": { - "yaml": "bin.mjs" - }, - "engines": { - "node": ">= 14" - } - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/zustand": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/zustand/-/zustand-3.7.2.tgz", - "integrity": "sha512-PIJDIZKtokhof+9+60cpockVOq05sJzHCriyvaLBmEJixseQ1a5Kdov6fWZfWOu5SK9c+FhH1jU0tntLxRJYMA==", - "engines": { - "node": ">=12.7.0" - }, - "peerDependencies": { - "react": ">=16.8" - }, - "peerDependenciesMeta": { - "react": { - "optional": true - } - } - } - } -} diff --git a/package.json b/package.json deleted file mode 100644 index e839f80..0000000 --- a/package.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "private": true, - "version": "0.0.0", - "type": "module", - "scripts": { - "dev": "next dev", - "build": "next build", - "start": "next start", - "lint": "eslint .", - "deploy": "vercel --prod", - "analyze": "$env:ANALYZE=\"true\"; npm run build" - }, - "dependencies": { - "@react-three/drei": "^9.111.3", - "@react-three/fiber": "^8.17.6", - "@types/three": "^0.167.2", - "@vercel/analytics": "^1.4.1", - "date-fns": "^2.29.3", - "feed": "^4.2.2", - "framer-motion": "^11.11.17", - "gray-matter": "^4.0.3", - "marked": "^16.3.0", - "next": "^15.0.3", - "react": "^18.2.0", - "react-dom": "^18.2.0", - "react-hot-toast": "^2.4.1", - "react-intersection-observer": "^9.13.1", - "react-responsive-carousel": "^3.2.23", - "sanitize-html": "^2.17.0" - }, - "devDependencies": { - "@next/bundle-analyzer": "^15.4.4", - "@tailwindcss/typography": "^0.5.19", - "@types/node": "22.9.1", - "@types/react-dom": "^18.3.1", - "@types/sanitize-html": "^2.16.0", - "@typescript-eslint/eslint-plugin": "^6.0.0", - "autoprefixer": "^10.4.0", - "eslint": "^8.50.0", - "eslint-plugin-react": "^7.35.0", - "eslint-plugin-react-hooks": "^5.1.0-rc.0", - "eslint-plugin-react-refresh": "^0.4.9", - "globals": "^15.9.0", - "postcss": "^8.4.41", - "source-map-loader": "^5.0.0", - "tailwindcss": "^3.4.10", - "typescript": "^5.5.4" - } -} diff --git a/postcss.config.js b/postcss.config.js deleted file mode 100644 index 2e7af2b..0000000 --- a/postcss.config.js +++ /dev/null @@ -1,6 +0,0 @@ -export default { - plugins: { - tailwindcss: {}, - autoprefixer: {}, - }, -} diff --git a/public/LICENSE b/public/LICENSE deleted file mode 100644 index 02c494a..0000000 --- a/public/LICENSE +++ /dev/null @@ -1,14 +0,0 @@ -All Rights Reserved - -Copyright (c) 2025 Keyyard - -All rights reserved. No part of this publication, including the website, -images, documentation, or digital assets, may be reproduced, distributed, -modified, transmitted, stored in a retrieval system, or used in any form or -by any means, electronic, mechanical, photocopying, recording, or otherwise, -without the prior written permission of Keyyard. - -Requests for permission to reproduce material should be sent to: contact@keyyard.xyz -Note: This All Rights Reserved notice is intended to prevent unauthorized -reuse of the site's content. For commercial licensing, contact the author to -discuss terms. diff --git a/public/assets/Projs/bedrockcli/gif.gif b/public/assets/Projs/bedrockcli/gif.gif deleted file mode 100644 index 74fd190..0000000 Binary files a/public/assets/Projs/bedrockcli/gif.gif and /dev/null differ diff --git a/public/assets/Projs/bedrockcli/icon-webp.webp b/public/assets/Projs/bedrockcli/icon-webp.webp deleted file mode 100644 index e1a0d2f..0000000 Binary files a/public/assets/Projs/bedrockcli/icon-webp.webp and /dev/null differ diff --git a/public/assets/Projs/bedrockcli/icon.webp b/public/assets/Projs/bedrockcli/icon.webp deleted file mode 100644 index 07abdb1..0000000 Binary files a/public/assets/Projs/bedrockcli/icon.webp and /dev/null differ diff --git a/public/assets/Projs/blockception/overview.gif b/public/assets/Projs/blockception/overview.gif deleted file mode 100644 index c473e29..0000000 Binary files a/public/assets/Projs/blockception/overview.gif and /dev/null differ diff --git a/public/assets/Projs/today/4-webp.webp b/public/assets/Projs/today/4-webp.webp deleted file mode 100644 index 3cfcf8e..0000000 Binary files a/public/assets/Projs/today/4-webp.webp and /dev/null differ diff --git a/public/assets/Projs/today/4.webp b/public/assets/Projs/today/4.webp deleted file mode 100644 index 22e2216..0000000 Binary files a/public/assets/Projs/today/4.webp and /dev/null differ diff --git a/public/assets/Projs/today/icon-webp.webp b/public/assets/Projs/today/icon-webp.webp deleted file mode 100644 index 2828769..0000000 Binary files a/public/assets/Projs/today/icon-webp.webp and /dev/null differ diff --git a/public/assets/Projs/today/icon.webp b/public/assets/Projs/today/icon.webp deleted file mode 100644 index 496493d..0000000 Binary files a/public/assets/Projs/today/icon.webp and /dev/null differ diff --git a/public/assets/Projs/wiki/logo-webp.webp b/public/assets/Projs/wiki/logo-webp.webp deleted file mode 100644 index 5aef009..0000000 Binary files a/public/assets/Projs/wiki/logo-webp.webp and /dev/null differ diff --git a/public/assets/Projs/wiki/logo.webp b/public/assets/Projs/wiki/logo.webp deleted file mode 100644 index 44f1eda..0000000 Binary files a/public/assets/Projs/wiki/logo.webp and /dev/null differ diff --git a/public/assets/Projs/wiki/wiki-webp.webp b/public/assets/Projs/wiki/wiki-webp.webp deleted file mode 100644 index 7e55718..0000000 Binary files a/public/assets/Projs/wiki/wiki-webp.webp and /dev/null differ diff --git a/public/assets/Projs/wiki/wiki.webp b/public/assets/Projs/wiki/wiki.webp deleted file mode 100644 index 56f7e46..0000000 Binary files a/public/assets/Projs/wiki/wiki.webp and /dev/null differ diff --git a/public/assets/compass.gif b/public/assets/compass.gif deleted file mode 100644 index ef07c37..0000000 Binary files a/public/assets/compass.gif and /dev/null differ diff --git a/public/assets/fonts/BeVietnamPro.ttf b/public/assets/fonts/BeVietnamPro.ttf deleted file mode 100644 index 880ed94..0000000 Binary files a/public/assets/fonts/BeVietnamPro.ttf and /dev/null differ diff --git a/public/assets/fonts/Inter.ttf b/public/assets/fonts/Inter.ttf deleted file mode 100644 index e31b51e..0000000 Binary files a/public/assets/fonts/Inter.ttf and /dev/null differ diff --git a/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_1 (1)-webp.webp b/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_1 (1)-webp.webp deleted file mode 100644 index eb77eda..0000000 Binary files a/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_1 (1)-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_1 (1).webp b/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_1 (1).webp deleted file mode 100644 index 3c02305..0000000 Binary files a/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_1 (1).webp and /dev/null differ diff --git a/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_1-webp.webp b/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_1-webp.webp deleted file mode 100644 index eb77eda..0000000 Binary files a/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_1-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_1.webp b/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_1.webp deleted file mode 100644 index 3c02305..0000000 Binary files a/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_1.webp and /dev/null differ diff --git a/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_2-webp.webp b/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_2-webp.webp deleted file mode 100644 index b949f4a..0000000 Binary files a/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_2-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_2.webp b/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_2.webp deleted file mode 100644 index 2cdbe45..0000000 Binary files a/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_2.webp and /dev/null differ diff --git a/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_4-webp.webp b/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_4-webp.webp deleted file mode 100644 index 0ed85bf..0000000 Binary files a/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_4-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_4.webp b/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_4.webp deleted file mode 100644 index cfa46a3..0000000 Binary files a/public/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_4.webp and /dev/null differ diff --git a/public/assets/mcProjs/3dme/g2crafted-3d-medieval-experience-thumbnail-ea2dbbec5214a3c4-800-webp.webp b/public/assets/mcProjs/3dme/g2crafted-3d-medieval-experience-thumbnail-ea2dbbec5214a3c4-800-webp.webp deleted file mode 100644 index 4d7171b..0000000 Binary files a/public/assets/mcProjs/3dme/g2crafted-3d-medieval-experience-thumbnail-ea2dbbec5214a3c4-800-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/3dme/g2crafted-3d-medieval-experience-thumbnail-ea2dbbec5214a3c4-800.webp b/public/assets/mcProjs/3dme/g2crafted-3d-medieval-experience-thumbnail-ea2dbbec5214a3c4-800.webp deleted file mode 100644 index d2f9e7b..0000000 Binary files a/public/assets/mcProjs/3dme/g2crafted-3d-medieval-experience-thumbnail-ea2dbbec5214a3c4-800.webp and /dev/null differ diff --git a/public/assets/mcProjs/ag/GDl2vZhXQAAU-8H-webp.webp b/public/assets/mcProjs/ag/GDl2vZhXQAAU-8H-webp.webp deleted file mode 100644 index 6d10b67..0000000 Binary files a/public/assets/mcProjs/ag/GDl2vZhXQAAU-8H-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/ag/GDl2vZhXQAAU-8H.webp b/public/assets/mcProjs/ag/GDl2vZhXQAAU-8H.webp deleted file mode 100644 index 6be739b..0000000 Binary files a/public/assets/mcProjs/ag/GDl2vZhXQAAU-8H.webp and /dev/null differ diff --git a/public/assets/mcProjs/ag/GLZezFubUAA4E5O-webp.webp b/public/assets/mcProjs/ag/GLZezFubUAA4E5O-webp.webp deleted file mode 100644 index 162c5f4..0000000 Binary files a/public/assets/mcProjs/ag/GLZezFubUAA4E5O-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/ag/GLZezFubUAA4E5O.webp b/public/assets/mcProjs/ag/GLZezFubUAA4E5O.webp deleted file mode 100644 index d25c3ed..0000000 Binary files a/public/assets/mcProjs/ag/GLZezFubUAA4E5O.webp and /dev/null differ diff --git a/public/assets/mcProjs/ag/GWFjLdgWgAAVYUq-webp.webp b/public/assets/mcProjs/ag/GWFjLdgWgAAVYUq-webp.webp deleted file mode 100644 index bfdc7fa..0000000 Binary files a/public/assets/mcProjs/ag/GWFjLdgWgAAVYUq-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/ag/GWFjLdgWgAAVYUq.webp b/public/assets/mcProjs/ag/GWFjLdgWgAAVYUq.webp deleted file mode 100644 index 5346300..0000000 Binary files a/public/assets/mcProjs/ag/GWFjLdgWgAAVYUq.webp and /dev/null differ diff --git a/public/assets/mcProjs/cbe/Screenshot_1-webp.webp b/public/assets/mcProjs/cbe/Screenshot_1-webp.webp deleted file mode 100644 index 1e833be..0000000 Binary files a/public/assets/mcProjs/cbe/Screenshot_1-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/cbe/Screenshot_1.webp b/public/assets/mcProjs/cbe/Screenshot_1.webp deleted file mode 100644 index 96b2abd..0000000 Binary files a/public/assets/mcProjs/cbe/Screenshot_1.webp and /dev/null differ diff --git a/public/assets/mcProjs/cbe/Screenshot_2-webp.webp b/public/assets/mcProjs/cbe/Screenshot_2-webp.webp deleted file mode 100644 index e2739b2..0000000 Binary files a/public/assets/mcProjs/cbe/Screenshot_2-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/cbe/Screenshot_2.webp b/public/assets/mcProjs/cbe/Screenshot_2.webp deleted file mode 100644 index e1bc3d3..0000000 Binary files a/public/assets/mcProjs/cbe/Screenshot_2.webp and /dev/null differ diff --git a/public/assets/mcProjs/cbe/Screenshot_3-webp.webp b/public/assets/mcProjs/cbe/Screenshot_3-webp.webp deleted file mode 100644 index 89713aa..0000000 Binary files a/public/assets/mcProjs/cbe/Screenshot_3-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/cbe/Screenshot_3.webp b/public/assets/mcProjs/cbe/Screenshot_3.webp deleted file mode 100644 index 6c979f9..0000000 Binary files a/public/assets/mcProjs/cbe/Screenshot_3.webp and /dev/null differ diff --git a/public/assets/mcProjs/cbe/Screenshot_4-webp.webp b/public/assets/mcProjs/cbe/Screenshot_4-webp.webp deleted file mode 100644 index 4ea3c61..0000000 Binary files a/public/assets/mcProjs/cbe/Screenshot_4-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/cbe/Screenshot_4.webp b/public/assets/mcProjs/cbe/Screenshot_4.webp deleted file mode 100644 index 2e6a830..0000000 Binary files a/public/assets/mcProjs/cbe/Screenshot_4.webp and /dev/null differ diff --git a/public/assets/mcProjs/cbe/Thumbnail_0-webp.webp b/public/assets/mcProjs/cbe/Thumbnail_0-webp.webp deleted file mode 100644 index ef2dbf1..0000000 Binary files a/public/assets/mcProjs/cbe/Thumbnail_0-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/cbe/Thumbnail_0.webp b/public/assets/mcProjs/cbe/Thumbnail_0.webp deleted file mode 100644 index 1ad11ee..0000000 Binary files a/public/assets/mcProjs/cbe/Thumbnail_0.webp and /dev/null differ diff --git a/public/assets/mcProjs/dl/Demonic_Legends_Thumbnail-webp.webp b/public/assets/mcProjs/dl/Demonic_Legends_Thumbnail-webp.webp deleted file mode 100644 index cca5e2c..0000000 Binary files a/public/assets/mcProjs/dl/Demonic_Legends_Thumbnail-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/dl/Demonic_Legends_Thumbnail.webp b/public/assets/mcProjs/dl/Demonic_Legends_Thumbnail.webp deleted file mode 100644 index 1ed4e4b..0000000 Binary files a/public/assets/mcProjs/dl/Demonic_Legends_Thumbnail.webp and /dev/null differ diff --git a/public/assets/mcProjs/fn/FrightNight_Thumbnail-webp.webp b/public/assets/mcProjs/fn/FrightNight_Thumbnail-webp.webp deleted file mode 100644 index 1e01556..0000000 Binary files a/public/assets/mcProjs/fn/FrightNight_Thumbnail-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/fn/FrightNight_Thumbnail.webp b/public/assets/mcProjs/fn/FrightNight_Thumbnail.webp deleted file mode 100644 index c32e633..0000000 Binary files a/public/assets/mcProjs/fn/FrightNight_Thumbnail.webp and /dev/null differ diff --git a/public/assets/mcProjs/obe/One_Block_Screenshot_0-webp.webp b/public/assets/mcProjs/obe/One_Block_Screenshot_0-webp.webp deleted file mode 100644 index 662b1e0..0000000 Binary files a/public/assets/mcProjs/obe/One_Block_Screenshot_0-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/obe/One_Block_Screenshot_0.webp b/public/assets/mcProjs/obe/One_Block_Screenshot_0.webp deleted file mode 100644 index 5a58123..0000000 Binary files a/public/assets/mcProjs/obe/One_Block_Screenshot_0.webp and /dev/null differ diff --git a/public/assets/mcProjs/obe/One_Block_Screenshot_2-webp.webp b/public/assets/mcProjs/obe/One_Block_Screenshot_2-webp.webp deleted file mode 100644 index da3beb8..0000000 Binary files a/public/assets/mcProjs/obe/One_Block_Screenshot_2-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/obe/One_Block_Screenshot_2.webp b/public/assets/mcProjs/obe/One_Block_Screenshot_2.webp deleted file mode 100644 index aca463c..0000000 Binary files a/public/assets/mcProjs/obe/One_Block_Screenshot_2.webp and /dev/null differ diff --git a/public/assets/mcProjs/obe/One_Block_Screenshot_3-webp.webp b/public/assets/mcProjs/obe/One_Block_Screenshot_3-webp.webp deleted file mode 100644 index fd022c7..0000000 Binary files a/public/assets/mcProjs/obe/One_Block_Screenshot_3-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/obe/One_Block_Screenshot_3.webp b/public/assets/mcProjs/obe/One_Block_Screenshot_3.webp deleted file mode 100644 index fa4182a..0000000 Binary files a/public/assets/mcProjs/obe/One_Block_Screenshot_3.webp and /dev/null differ diff --git a/public/assets/mcProjs/obe/One_Block_Thumbnail_0-webp.webp b/public/assets/mcProjs/obe/One_Block_Thumbnail_0-webp.webp deleted file mode 100644 index 23584a0..0000000 Binary files a/public/assets/mcProjs/obe/One_Block_Thumbnail_0-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/obe/One_Block_Thumbnail_0.webp b/public/assets/mcProjs/obe/One_Block_Thumbnail_0.webp deleted file mode 100644 index 1123390..0000000 Binary files a/public/assets/mcProjs/obe/One_Block_Thumbnail_0.webp and /dev/null differ diff --git a/public/assets/mcProjs/portal/portal-appears.gif b/public/assets/mcProjs/portal/portal-appears.gif deleted file mode 100644 index 374471d..0000000 Binary files a/public/assets/mcProjs/portal/portal-appears.gif and /dev/null differ diff --git a/public/assets/mcProjs/rse/Screenshot_1-webp.webp b/public/assets/mcProjs/rse/Screenshot_1-webp.webp deleted file mode 100644 index 4ed1e5f..0000000 Binary files a/public/assets/mcProjs/rse/Screenshot_1-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/rse/Screenshot_1.webp b/public/assets/mcProjs/rse/Screenshot_1.webp deleted file mode 100644 index 27e27ec..0000000 Binary files a/public/assets/mcProjs/rse/Screenshot_1.webp and /dev/null differ diff --git a/public/assets/mcProjs/rse/Screenshot_2-webp.webp b/public/assets/mcProjs/rse/Screenshot_2-webp.webp deleted file mode 100644 index 8d1512a..0000000 Binary files a/public/assets/mcProjs/rse/Screenshot_2-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/rse/Screenshot_2.webp b/public/assets/mcProjs/rse/Screenshot_2.webp deleted file mode 100644 index 2785972..0000000 Binary files a/public/assets/mcProjs/rse/Screenshot_2.webp and /dev/null differ diff --git a/public/assets/mcProjs/rse/Screenshot_3-webp.webp b/public/assets/mcProjs/rse/Screenshot_3-webp.webp deleted file mode 100644 index 6ef0b0f..0000000 Binary files a/public/assets/mcProjs/rse/Screenshot_3-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/rse/Screenshot_3.webp b/public/assets/mcProjs/rse/Screenshot_3.webp deleted file mode 100644 index 81dc10a..0000000 Binary files a/public/assets/mcProjs/rse/Screenshot_3.webp and /dev/null differ diff --git a/public/assets/mcProjs/rse/Screenshot_4-webp.webp b/public/assets/mcProjs/rse/Screenshot_4-webp.webp deleted file mode 100644 index 9a64d22..0000000 Binary files a/public/assets/mcProjs/rse/Screenshot_4-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/rse/Screenshot_4.webp b/public/assets/mcProjs/rse/Screenshot_4.webp deleted file mode 100644 index 6eacc7f..0000000 Binary files a/public/assets/mcProjs/rse/Screenshot_4.webp and /dev/null differ diff --git a/public/assets/mcProjs/rse/Thumbnail_0 (1)-webp.webp b/public/assets/mcProjs/rse/Thumbnail_0 (1)-webp.webp deleted file mode 100644 index aeab7f4..0000000 Binary files a/public/assets/mcProjs/rse/Thumbnail_0 (1)-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/rse/Thumbnail_0 (1).webp b/public/assets/mcProjs/rse/Thumbnail_0 (1).webp deleted file mode 100644 index d78ac15..0000000 Binary files a/public/assets/mcProjs/rse/Thumbnail_0 (1).webp and /dev/null differ diff --git a/public/assets/mcProjs/smm-webp.webp b/public/assets/mcProjs/smm-webp.webp deleted file mode 100644 index 3a54d12..0000000 Binary files a/public/assets/mcProjs/smm-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/smm.webp b/public/assets/mcProjs/smm.webp deleted file mode 100644 index 148446c..0000000 Binary files a/public/assets/mcProjs/smm.webp and /dev/null differ diff --git a/public/assets/mcProjs/smm/fg_screenshot_0-webp.webp b/public/assets/mcProjs/smm/fg_screenshot_0-webp.webp deleted file mode 100644 index ff87d1f..0000000 Binary files a/public/assets/mcProjs/smm/fg_screenshot_0-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/smm/fg_screenshot_0.webp b/public/assets/mcProjs/smm/fg_screenshot_0.webp deleted file mode 100644 index f7d873a..0000000 Binary files a/public/assets/mcProjs/smm/fg_screenshot_0.webp and /dev/null differ diff --git a/public/assets/mcProjs/smm/fg_screenshot_1-webp.webp b/public/assets/mcProjs/smm/fg_screenshot_1-webp.webp deleted file mode 100644 index 4f575ed..0000000 Binary files a/public/assets/mcProjs/smm/fg_screenshot_1-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/smm/fg_screenshot_1.webp b/public/assets/mcProjs/smm/fg_screenshot_1.webp deleted file mode 100644 index c34e17e..0000000 Binary files a/public/assets/mcProjs/smm/fg_screenshot_1.webp and /dev/null differ diff --git a/public/assets/mcProjs/smm/fg_screenshot_2-webp.webp b/public/assets/mcProjs/smm/fg_screenshot_2-webp.webp deleted file mode 100644 index 3ef876b..0000000 Binary files a/public/assets/mcProjs/smm/fg_screenshot_2-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/smm/fg_screenshot_2.webp b/public/assets/mcProjs/smm/fg_screenshot_2.webp deleted file mode 100644 index 7967bf6..0000000 Binary files a/public/assets/mcProjs/smm/fg_screenshot_2.webp and /dev/null differ diff --git a/public/assets/mcProjs/tc-webp.webp b/public/assets/mcProjs/tc-webp.webp deleted file mode 100644 index f44e393..0000000 Binary files a/public/assets/mcProjs/tc-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/tc.webp b/public/assets/mcProjs/tc.webp deleted file mode 100644 index 19cf5fd..0000000 Binary files a/public/assets/mcProjs/tc.webp and /dev/null differ diff --git a/public/assets/mcProjs/tc/maxresdefault-webp.webp b/public/assets/mcProjs/tc/maxresdefault-webp.webp deleted file mode 100644 index e5e4d08..0000000 Binary files a/public/assets/mcProjs/tc/maxresdefault-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/tc/maxresdefault.webp b/public/assets/mcProjs/tc/maxresdefault.webp deleted file mode 100644 index 367eb8c..0000000 Binary files a/public/assets/mcProjs/tc/maxresdefault.webp and /dev/null differ diff --git a/public/assets/mcProjs/tnt/Screenshot_0-webp.webp b/public/assets/mcProjs/tnt/Screenshot_0-webp.webp deleted file mode 100644 index dd6973e..0000000 Binary files a/public/assets/mcProjs/tnt/Screenshot_0-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/tnt/Screenshot_0.webp b/public/assets/mcProjs/tnt/Screenshot_0.webp deleted file mode 100644 index 0f43e2d..0000000 Binary files a/public/assets/mcProjs/tnt/Screenshot_0.webp and /dev/null differ diff --git a/public/assets/mcProjs/tnt/Screenshot_1-webp.webp b/public/assets/mcProjs/tnt/Screenshot_1-webp.webp deleted file mode 100644 index f17f66b..0000000 Binary files a/public/assets/mcProjs/tnt/Screenshot_1-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/tnt/Screenshot_1.webp b/public/assets/mcProjs/tnt/Screenshot_1.webp deleted file mode 100644 index 5f4a1e7..0000000 Binary files a/public/assets/mcProjs/tnt/Screenshot_1.webp and /dev/null differ diff --git a/public/assets/mcProjs/tnt/Screenshot_2-webp.webp b/public/assets/mcProjs/tnt/Screenshot_2-webp.webp deleted file mode 100644 index a52a888..0000000 Binary files a/public/assets/mcProjs/tnt/Screenshot_2-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/tnt/Screenshot_2.webp b/public/assets/mcProjs/tnt/Screenshot_2.webp deleted file mode 100644 index 15a4a51..0000000 Binary files a/public/assets/mcProjs/tnt/Screenshot_2.webp and /dev/null differ diff --git a/public/assets/mcProjs/tnt/Screenshot_3-webp.webp b/public/assets/mcProjs/tnt/Screenshot_3-webp.webp deleted file mode 100644 index b2eba55..0000000 Binary files a/public/assets/mcProjs/tnt/Screenshot_3-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/tnt/Screenshot_3.webp b/public/assets/mcProjs/tnt/Screenshot_3.webp deleted file mode 100644 index c4ca1ba..0000000 Binary files a/public/assets/mcProjs/tnt/Screenshot_3.webp and /dev/null differ diff --git a/public/assets/mcProjs/tnt/Screenshot_4-webp.webp b/public/assets/mcProjs/tnt/Screenshot_4-webp.webp deleted file mode 100644 index 2c8bacc..0000000 Binary files a/public/assets/mcProjs/tnt/Screenshot_4-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/tnt/Screenshot_4.webp b/public/assets/mcProjs/tnt/Screenshot_4.webp deleted file mode 100644 index e08ea7d..0000000 Binary files a/public/assets/mcProjs/tnt/Screenshot_4.webp and /dev/null differ diff --git a/public/assets/mcProjs/tnt/Thumbnail_0-webp.webp b/public/assets/mcProjs/tnt/Thumbnail_0-webp.webp deleted file mode 100644 index dceb3ea..0000000 Binary files a/public/assets/mcProjs/tnt/Thumbnail_0-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/tnt/Thumbnail_0.webp b/public/assets/mcProjs/tnt/Thumbnail_0.webp deleted file mode 100644 index 4556c5c..0000000 Binary files a/public/assets/mcProjs/tnt/Thumbnail_0.webp and /dev/null differ diff --git a/public/assets/mcProjs/torch/torch.gif b/public/assets/mcProjs/torch/torch.gif deleted file mode 100644 index 094d22f..0000000 Binary files a/public/assets/mcProjs/torch/torch.gif and /dev/null differ diff --git a/public/assets/mcProjs/torch/torch2.gif b/public/assets/mcProjs/torch/torch2.gif deleted file mode 100644 index 7ca11f3..0000000 Binary files a/public/assets/mcProjs/torch/torch2.gif and /dev/null differ diff --git a/public/assets/mcProjs/train/Trains_MarketingScreenshot_0-webp.webp b/public/assets/mcProjs/train/Trains_MarketingScreenshot_0-webp.webp deleted file mode 100644 index 8340b25..0000000 Binary files a/public/assets/mcProjs/train/Trains_MarketingScreenshot_0-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/train/Trains_MarketingScreenshot_0.webp b/public/assets/mcProjs/train/Trains_MarketingScreenshot_0.webp deleted file mode 100644 index e3b5220..0000000 Binary files a/public/assets/mcProjs/train/Trains_MarketingScreenshot_0.webp and /dev/null differ diff --git a/public/assets/mcProjs/train/Trains_MarketingScreenshot_1-webp.webp b/public/assets/mcProjs/train/Trains_MarketingScreenshot_1-webp.webp deleted file mode 100644 index d1491fa..0000000 Binary files a/public/assets/mcProjs/train/Trains_MarketingScreenshot_1-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/train/Trains_MarketingScreenshot_1.webp b/public/assets/mcProjs/train/Trains_MarketingScreenshot_1.webp deleted file mode 100644 index 32e3957..0000000 Binary files a/public/assets/mcProjs/train/Trains_MarketingScreenshot_1.webp and /dev/null differ diff --git a/public/assets/mcProjs/train/Trains_MarketingScreenshot_2-webp.webp b/public/assets/mcProjs/train/Trains_MarketingScreenshot_2-webp.webp deleted file mode 100644 index b399bbe..0000000 Binary files a/public/assets/mcProjs/train/Trains_MarketingScreenshot_2-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/train/Trains_MarketingScreenshot_2.webp b/public/assets/mcProjs/train/Trains_MarketingScreenshot_2.webp deleted file mode 100644 index 8329120..0000000 Binary files a/public/assets/mcProjs/train/Trains_MarketingScreenshot_2.webp and /dev/null differ diff --git a/public/assets/mcProjs/train/Trains_Thumbnail_0-webp.webp b/public/assets/mcProjs/train/Trains_Thumbnail_0-webp.webp deleted file mode 100644 index cc1ebca..0000000 Binary files a/public/assets/mcProjs/train/Trains_Thumbnail_0-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/train/Trains_Thumbnail_0.webp b/public/assets/mcProjs/train/Trains_Thumbnail_0.webp deleted file mode 100644 index 3904c8d..0000000 Binary files a/public/assets/mcProjs/train/Trains_Thumbnail_0.webp and /dev/null differ diff --git a/public/assets/mcProjs/wc/keyart-webp.webp b/public/assets/mcProjs/wc/keyart-webp.webp deleted file mode 100644 index 0c86826..0000000 Binary files a/public/assets/mcProjs/wc/keyart-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/wc/keyart.webp b/public/assets/mcProjs/wc/keyart.webp deleted file mode 100644 index aab14ea..0000000 Binary files a/public/assets/mcProjs/wc/keyart.webp and /dev/null differ diff --git a/public/assets/mcProjs/wc/wc1-webp.webp b/public/assets/mcProjs/wc/wc1-webp.webp deleted file mode 100644 index 3447e05..0000000 Binary files a/public/assets/mcProjs/wc/wc1-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/wc/wc1.webp b/public/assets/mcProjs/wc/wc1.webp deleted file mode 100644 index 4a69e8b..0000000 Binary files a/public/assets/mcProjs/wc/wc1.webp and /dev/null differ diff --git a/public/assets/mcProjs/wc/wc2-webp.webp b/public/assets/mcProjs/wc/wc2-webp.webp deleted file mode 100644 index 9cbce24..0000000 Binary files a/public/assets/mcProjs/wc/wc2-webp.webp and /dev/null differ diff --git a/public/assets/mcProjs/wc/wc2.webp b/public/assets/mcProjs/wc/wc2.webp deleted file mode 100644 index 3b59ed3..0000000 Binary files a/public/assets/mcProjs/wc/wc2.webp and /dev/null differ diff --git a/public/assets/myHead.gltf b/public/assets/myHead.gltf deleted file mode 100644 index 84a2016..0000000 --- a/public/assets/myHead.gltf +++ /dev/null @@ -1,2936 +0,0 @@ -{ - "asset": { "version": "2.0", "generator": "Blockbench 4.10.4 glTF exporter" }, - "scenes": [{ "nodes": [43], "name": "blockbench_export" }], - "scene": 0, - "nodes": [ - { - "translation": [0.014803771266735183, 0, 0.3038942804804565], - "name": "cube", - "mesh": 0 - }, - { - "translation": [0.003973680248895991, -2.25, 0.17552911082893113], - "name": "head", - "children": [0] - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 1 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 2 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 3 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 4 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 5 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 6 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 7 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 8 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 9 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 10 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 11 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 12 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 13 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 14 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 15 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 16 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 17 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 18 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 19 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 20 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 21 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 22 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 23 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 24 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 25 - }, - { - "translation": [0, -2.25, 0.375], - "name": "hair", - "children": [ - 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26 - ] - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 26 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 27 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 28 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 29 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 30 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 31 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 32 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 33 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 34 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 35 - }, - { - "translation": [0.018777451515631174, 0, 0.10442339130938769], - "name": "cube", - "mesh": 36 - }, - { - "translation": [-0.10622254848436882, 0, 0.10442339130938769], - "name": "cube", - "mesh": 37 - }, - { - "translation": [0.26877745151563115, 0, 0.10442339130938769], - "name": "cube", - "mesh": 38 - }, - { - "translation": [0, -2.4375, 0.375], - "name": "hairLayer", - "children": [28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40] - }, - { - "translation": [0, 0.1875, -0.375], - "name": "root", - "children": [1, 27, 41] - }, - { "children": [42] } - ], - "bufferViews": [ - { - "buffer": 0, - "byteOffset": 0, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 288, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 576, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 768, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 840, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 1128, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 1416, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 1608, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 1680, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 1968, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 2256, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 2448, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 2520, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 2808, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 3096, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 3288, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 3360, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 3648, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 3936, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 4128, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 4200, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 4488, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 4776, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 4968, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 5040, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 5328, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 5616, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 5808, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 5880, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 6168, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 6456, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 6648, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 6720, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 7008, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 7296, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 7488, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 7560, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 7848, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 8136, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 8328, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 8400, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 8688, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 8976, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 9168, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 9240, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 9528, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 9816, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 10008, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 10080, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 10368, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 10656, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 10848, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 10920, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 11208, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 11496, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 11688, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 11760, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 12048, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 12336, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 12528, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 12600, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 12888, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 13176, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 13368, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 13440, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 13728, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 14016, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 14208, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 14280, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 14568, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 14856, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 15048, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 15120, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 15408, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 15696, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 15888, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 15960, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 16248, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 16536, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 16728, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 16800, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 17088, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 17376, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 17568, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 17640, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 17928, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 18216, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 18408, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 18480, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 18768, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 19056, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 19248, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 19320, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 19608, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 19896, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 20088, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 20160, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 20448, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 20736, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 20928, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 21000, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 21288, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 21576, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 21768, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 21840, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 22128, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 22416, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 22608, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 22680, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 22968, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 23256, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 23448, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 23520, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 23808, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 24096, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 24288, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 24360, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 24648, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 24936, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 25128, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 25200, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 25488, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 25776, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 25968, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 26040, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 26328, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 26616, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 26808, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 26880, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 27168, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 27456, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 27648, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 27720, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 28008, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 28296, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 28488, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 28560, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 28848, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 29136, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 29328, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 29400, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 29688, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 29976, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 30168, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 30240, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 30528, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 30816, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 31008, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 31080, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 31368, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 31656, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 31848, "byteLength": 72, "target": 34963 }, - { - "buffer": 0, - "byteOffset": 31920, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 32208, - "byteLength": 288, - "target": 34962, - "byteStride": 12 - }, - { - "buffer": 0, - "byteOffset": 32496, - "byteLength": 192, - "target": 34962, - "byteStride": 8 - }, - { "buffer": 0, "byteOffset": 32688, "byteLength": 72, "target": 34963 }, - { "buffer": 0, "byteOffset": 32760, "byteLength": 4 }, - { "buffer": 0, "byteOffset": 32764, "byteLength": 16 }, - { "buffer": 0, "byteOffset": 32780, "byteLength": 4 }, - { "buffer": 0, "byteOffset": 32784, "byteLength": 12 }, - { "buffer": 0, "byteOffset": 32796, "byteLength": 12 }, - { "buffer": 0, "byteOffset": 32808, "byteLength": 36 }, - { "buffer": 0, "byteOffset": 32844, "byteLength": 4 }, - { "buffer": 0, "byteOffset": 32848, "byteLength": 12 }, - { "buffer": 0, "byteOffset": 32860, "byteLength": 4 }, - { "buffer": 0, "byteOffset": 32864, "byteLength": 12 }, - { "buffer": 0, "byteOffset": 32876, "byteLength": 16 }, - { "buffer": 0, "byteOffset": 32892, "byteLength": 48 }, - { "buffer": 0, "byteOffset": 32940, "byteLength": 20 }, - { "buffer": 0, "byteOffset": 32960, "byteLength": 60 }, - { "buffer": 0, "byteOffset": 33020, "byteLength": 16 }, - { "buffer": 0, "byteOffset": 33036, "byteLength": 48 } - ], - "buffers": [ - { - "byteLength": 33084, - "uri": "data:application/octet-stream;base64,AACgPgAASEAAABA/AACgPgAASEAAAIC9AACgPgAAGEAAABA/AACgPgAAGEAAAIC9AACgvgAASEAAAIC9AACgvgAASEAAABA/AACgvgAAGEAAAIC9AACgvgAAGEAAABA/AACgvgAASEAAAIC9AACgPgAASEAAAIC9AACgvgAASEAAABA/AACgPgAASEAAABA/AACgvgAAGEAAABA/AACgPgAAGEAAABA/AACgvgAAGEAAAIC9AACgPgAAGEAAAIC9AACgvgAASEAAABA/AACgPgAASEAAABA/AACgvgAAGEAAABA/AACgPgAAGEAAABA/AACgPgAASEAAAIC9AACgvgAASEAAAIC9AACgPgAAGEAAAIC9AACgvgAAGEAAAIC9AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AACAOQBAID4AwB8+AEAgPgAAgDkA4K8+AMAfPgDgrz4AIKA+AEAgPgDg7z4AQCA+ACCgPgDgrz4A4O8+AOCvPgDgnz4AwB8+AEAgPgDAHz4A4J8+AACAOQBAID4AAIA5AODvPgAAgDkAIKA+AACAOQDg7z4AwB8+ACCgPgDAHz4AIPA+AEAgPgDwHz8AQCA+ACDwPgDgrz4A8B8/AOCvPgBAID4AQCA+AOCfPgBAID4AQCA+AOCvPgDgnz4A4K8+AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACgPgAASEAAAIC9AACgPgAASEAAAAC+AACgPgAALEAAAIC9AACgPgAALEAAAAC+AABAPgAASEAAAAC+AABAPgAASEAAAIC9AABAPgAALEAAAAC+AABAPgAALEAAAIC9AABAPgAASEAAAAC+AACgPgAASEAAAAC+AABAPgAASEAAAIC9AACgPgAASEAAAIC9AABAPgAALEAAAIC9AACgPgAALEAAAIC9AABAPgAALEAAAAC+AACgPgAALEAAAAC+AABAPgAASEAAAIC9AACgPgAASEAAAIC9AABAPgAALEAAAIC9AACgPgAALEAAAIC9AACgPgAASEAAAAC+AABAPgAASEAAAAC+AACgPgAALEAAAAC+AABAPgAALEAAAAC+AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ABAwPwAAgjwA8DM/AACCPAAQMD8AgP89APAzPwCA/z0AEDw/AACCPADwPz8AAII8ABA8PwCA/z0A8D8/AID/PQDwOz8AAHw8ABA0PwAAfDwA8Ds/AACAOQAQND8AAIA5APBDPwAAgDkAEDw/AACAOQDwQz8AAHw8ABA8PwAAfDwAEEA/AACCPADwRz8AAII8ABBAPwCA/z0A8Ec/AID/PQAQND8AAII8APA7PwAAgjwAEDQ/AID/PQDwOz8AgP89AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAABAPgAASEAAAIC9AABAPgAASEAAAAC+AABAPgAALEAAAIC9AABAPgAALEAAAAC+AACAPQAASEAAAAC+AACAPQAASEAAAIC9AACAPQAALEAAAAC+AACAPQAALEAAAIC9AACAPQAASEAAAAC+AABAPgAASEAAAAC+AACAPQAASEAAAIC9AABAPgAASEAAAIC9AACAPQAALEAAAIC9AABAPgAALEAAAIC9AACAPQAALEAAAAC+AABAPgAALEAAAAC+AACAPQAASEAAAIC9AABAPgAASEAAAIC9AACAPQAALEAAAIC9AABAPgAALEAAAIC9AABAPgAASEAAAAC+AACAPQAASEAAAAC+AABAPgAALEAAAAC+AACAPQAALEAAAAC+AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ABAoPwAQID8A8Cs/ABAgPwAQKD8A8Ds/APArPwDwOz8AEDQ/ABAgPwDwNz8AECA/ABA0PwDwOz8A8Dc/APA7PwDwMz8A8B8/ABAsPwDwHz8A8DM/ABAcPwAQLD8AEBw/APA7PwAQHD8AEDQ/ABAcPwDwOz8A8B8/ABA0PwDwHz8AEDg/ABAgPwDwPz8AECA/ABA4PwDwOz8A8D8/APA7PwAQLD8AECA/APAzPwAQID8AECw/APA7PwDwMz8A8Ds/AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACAPQAASEAAAIC9AACAPQAASEAAAAC+AACAPQAANEAAAIC9AACAPQAANEAAAAC+AAAQJAAASEAAAAC+AAAQJAAASEAAAIC9AAAQJAAANEAAAAC+AAAQJAAANEAAAIC9AAAQJAAASEAAAAC+AACAPQAASEAAAAC+AAAQJAAASEAAAIC9AACAPQAASEAAAIC9AAAQJAAANEAAAIC9AACAPQAANEAAAIC9AAAQJAAANEAAAAC+AACAPQAANEAAAAC+AAAQJAAASEAAAIC9AACAPQAASEAAAIC9AAAQJAAANEAAAIC9AACAPQAANEAAAIC9AACAPQAASEAAAAC+AAAQJAAASEAAAAC+AACAPQAANEAAAAC+AAAQJAAANEAAAAC+AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ABAwPwAguD4A8DM/ACC4PgAQMD8A4N8+APAzPwDg3z4AEDg/ACC4PgDwOz8AILg+ABA4PwDg3z4A8Ds/AODfPgDwNz8A4Lc+ABA0PwDgtz4A8Dc/ACCwPgAQND8AILA+APA7PwAgsD4AEDg/ACCwPgDwOz8A4Lc+ABA4PwDgtz4AEDw/ACC4PgDwPz8AILg+ABA8PwDg3z4A8D8/AODfPgAQND8AILg+APA3PwAguD4AEDQ/AODfPgDwNz8A4N8+AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAABAvgAASEAAAIC9AABAvgAASEAAAAC+AABAvgAAMEAAAIC9AABAvgAAMEAAAAC+AACgvgAASEAAAAC+AACgvgAASEAAAIC9AACgvgAAMEAAAAC+AACgvgAAMEAAAIC9AACgvgAASEAAAAC+AABAvgAASEAAAAC+AACgvgAASEAAAIC9AABAvgAASEAAAIC9AACgvgAAMEAAAIC9AABAvgAAMEAAAIC9AACgvgAAMEAAAAC+AABAvgAAMEAAAAC+AACgvgAASEAAAIC9AABAvgAASEAAAIC9AACgvgAAMEAAAIC9AABAvgAAMEAAAIC9AABAvgAASEAAAAC+AACgvgAASEAAAAC+AABAvgAAMEAAAAC+AACgvgAAMEAAAAC+AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ABAgPwAggD4A8CM/ACCAPgAQID8A4K8+APAjPwDgrz4AECw/ACCAPgDwLz8AIIA+ABAsPwDgrz4A8C8/AOCvPgDwKz8AwH8+ABAkPwDAfz4A8Cs/AEBwPgAQJD8AQHA+APAzPwBAcD4AECw/AEBwPgDwMz8AwH8+ABAsPwDAfz4AEDA/ACCAPgDwNz8AIIA+ABAwPwDgrz4A8Dc/AOCvPgAQJD8AIIA+APArPwAggD4AECQ/AOCvPgDwKz8A4K8+AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACAvgAAMEAAAIC9AACAvgAAMEAAAAC+AACAvgAAKEAAAIC9AACAvgAAKEAAAAC+AACgvgAAMEAAAAC+AACgvgAAMEAAAIC9AACgvgAAKEAAAAC+AACgvgAAKEAAAIC9AACgvgAAMEAAAAC+AACAvgAAMEAAAAC+AACgvgAAMEAAAIC9AACAvgAAMEAAAIC9AACgvgAAKEAAAIC9AACAvgAAKEAAAIC9AACgvgAAKEAAAAC+AACAvgAAKEAAAAC+AACgvgAAMEAAAIC9AACAvgAAMEAAAIC9AACgvgAAKEAAAIC9AACAvgAAKEAAAIC9AACAvgAAMEAAAAC+AACgvgAAMEAAAAC+AACAvgAAKEAAAAC+AACgvgAAKEAAAAC+AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ABAQPwAg8D4A8BM/ACDwPgAQED8A4P8+APATPwDg/z4AEBg/ACDwPgDwGz8AIPA+ABAYPwDg/z4A8Bs/AOD/PgDwFz8A4O8+ABAUPwDg7z4A8Bc/ACDoPgAQFD8AIOg+APAbPwAg6D4AEBg/ACDoPgDwGz8A4O8+ABAYPwDg7z4AEBw/ACDwPgDwHz8AIPA+ABAcPwDg/z4A8B8/AOD/PgAQFD8AIPA+APAXPwAg8D4AEBQ/AOD/PgDwFz8A4P8+AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAADgowAASEAAAIC9AADgowAASEAAAAC+AADgowAAPEAAAIC9AADgowAAPEAAAAC+AABAvgAASEAAAAC+AABAvgAASEAAAIC9AABAvgAAPEAAAAC+AABAvgAAPEAAAIC9AABAvgAASEAAAAC+AADgowAASEAAAAC+AABAvgAASEAAAIC9AADgowAASEAAAIC9AABAvgAAPEAAAIC9AADgowAAPEAAAIC9AABAvgAAPEAAAAC+AADgowAAPEAAAAC+AABAvgAASEAAAIC9AADgowAASEAAAIC9AABAvgAAPEAAAIC9AADgowAAPEAAAIC9AADgowAASEAAAAC+AABAvgAASEAAAAC+AADgowAAPEAAAAC+AABAvgAAPEAAAAC+AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ACCoPgAQED8A4K8+ABAQPwAgqD4A8Bs/AOCvPgDwGz8AIMg+ABAQPwDgzz4AEBA/ACDIPgDwGz8A4M8+APAbPwDgxz4A8A8/ACCwPgDwDz8A4Mc+ABAMPwAgsD4AEAw/AODfPgAQDD8AIMg+ABAMPwDg3z4A8A8/ACDIPgDwDz8AINA+ABAQPwDg5z4AEBA/ACDQPgDwGz8A4Oc+APAbPwAgsD4AEBA/AODHPgAQED8AILA+APAbPwDgxz4A8Bs/AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACgvgAASEAAAACkAACgvgAASEAAAIC9AACgvgAAJEAAAACkAACgvgAAJEAAAIC9AADAvgAASEAAAIC9AADAvgAASEAAAACkAADAvgAAJEAAAIC9AADAvgAAJEAAAACkAADAvgAASEAAAIC9AACgvgAASEAAAIC9AADAvgAASEAAAACkAACgvgAASEAAAACkAADAvgAAJEAAAACkAACgvgAAJEAAAACkAADAvgAAJEAAAIC9AACgvgAAJEAAAIC9AADAvgAASEAAAACkAACgvgAASEAAAACkAADAvgAAJEAAAACkAACgvgAAJEAAAACkAACgvgAASEAAAIC9AADAvgAASEAAAIC9AACgvgAAJEAAAIC9AADAvgAAJEAAAIC9AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AIDAPQAguD4AgN89ACC4PgCAwD0A4P8+AIDfPQDg/z4AQAA+ACC4PgDADz4AILg+AEAAPgDg/z4AwA8+AOD/PgCA/z0A4Lc+AIDgPQDgtz4AgP89ACCwPgCA4D0AILA+AMAPPgAgsD4AQAA+ACCwPgDADz4A4Lc+AEAAPgDgtz4AQBA+ACC4PgDAHz4AILg+AEAQPgDg/z4AwB8+AOD/PgCA4D0AILg+AID/PQAguD4AgOA9AOD/PgCA/z0A4P8+AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACgvgAASEAAAAA+AACgvgAASEAAAACkAACgvgAAKEAAAAA+AACgvgAAKEAAAACkAADAvgAASEAAAACkAADAvgAASEAAAAA+AADAvgAAKEAAAACkAADAvgAAKEAAAAA+AADAvgAASEAAAACkAACgvgAASEAAAACkAADAvgAASEAAAAA+AACgvgAASEAAAAA+AADAvgAAKEAAAAA+AACgvgAAKEAAAAA+AADAvgAAKEAAAACkAACgvgAAKEAAAACkAADAvgAASEAAAAA+AACgvgAASEAAAAA+AADAvgAAKEAAAAA+AACgvgAAKEAAAAA+AACgvgAASEAAAACkAADAvgAASEAAAACkAACgvgAAKEAAAACkAADAvgAAKEAAAACkAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ACDwPgAgwD4A4P8+ACDAPgAg8D4A4P8+AOD/PgDg/z4AEAQ/ACDAPgDwCz8AIMA+ABAEPwDg/z4A8As/AOD/PgDwAz8A4L8+ABAAPwDgvz4A8AM/ACCwPgAQAD8AILA+APAHPwAgsD4AEAQ/ACCwPgDwBz8A4L8+ABAEPwDgvz4AEAw/ACDAPgDwDz8AIMA+ABAMPwDg/z4A8A8/AOD/PgAQAD8AIMA+APADPwAgwD4AEAA/AOD/PgDwAz8A4P8+AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACgvgAASEAAAIA+AACgvgAASEAAAAA+AACgvgAAMEAAAIA+AACgvgAAMEAAAAA+AADAvgAASEAAAAA+AADAvgAASEAAAIA+AADAvgAAMEAAAAA+AADAvgAAMEAAAIA+AADAvgAASEAAAAA+AACgvgAASEAAAAA+AADAvgAASEAAAIA+AACgvgAASEAAAIA+AADAvgAAMEAAAIA+AACgvgAAMEAAAIA+AADAvgAAMEAAAAA+AACgvgAAMEAAAAA+AADAvgAASEAAAIA+AACgvgAASEAAAIA+AADAvgAAMEAAAIA+AACgvgAAMEAAAIA+AACgvgAASEAAAAA+AADAvgAASEAAAAA+AACgvgAAMEAAAAA+AADAvgAAMEAAAAA+AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ABAgPwBAED4A8Cc/AEAQPgAQID8AwG8+APAnPwDAbz4AECw/AEAQPgDwMz8AQBA+ABAsPwDAbz4A8DM/AMBvPgDwKz8AwA8+ABAoPwDADz4A8Cs/AIDgPQAQKD8AgOA9APAvPwCA4D0AECw/AIDgPQDwLz8AwA8+ABAsPwDADz4AEDQ/AEAQPgDwNz8AQBA+ABA0PwDAbz4A8Dc/AMBvPgAQKD8AQBA+APArPwBAED4AECg/AMBvPgDwKz8AwG8+AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACgvgAASEAAAMA+AACgvgAASEAAAIA+AACgvgAALEAAAMA+AACgvgAALEAAAIA+AADAvgAASEAAAIA+AADAvgAASEAAAMA+AADAvgAALEAAAIA+AADAvgAALEAAAMA+AADAvgAASEAAAIA+AACgvgAASEAAAIA+AADAvgAASEAAAMA+AACgvgAASEAAAMA+AADAvgAALEAAAMA+AACgvgAALEAAAMA+AADAvgAALEAAAIA+AACgvgAALEAAAIA+AADAvgAASEAAAMA+AACgvgAASEAAAMA+AADAvgAALEAAAMA+AACgvgAALEAAAMA+AACgvgAASEAAAIA+AADAvgAASEAAAIA+AACgvgAALEAAAIA+AADAvgAALEAAAIA+AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ABAQPwAAAT0A8Bc/AAABPQAQED8AwA8+APAXPwDADz4AEBw/AAABPQDwIz8AAAE9ABAcPwDADz4A8CM/AMAPPgDwGz8AAP48ABAYPwAA/jwA8Bs/AACAOQAQGD8AAIA5APAfPwAAgDkAEBw/AACAOQDwHz8AAP48ABAcPwAA/jwAECQ/AAABPQDwJz8AAAE9ABAkPwDADz4A8Cc/AMAPPgAQGD8AAAE9APAbPwAAAT0AEBg/AMAPPgDwGz8AwA8+AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACgvgAASEAAAAA/AACgvgAASEAAAMA+AACgvgAAKEAAAAA/AACgvgAAKEAAAMA+AADAvgAASEAAAMA+AADAvgAASEAAAAA/AADAvgAAKEAAAMA+AADAvgAAKEAAAAA/AADAvgAASEAAAMA+AACgvgAASEAAAMA+AADAvgAASEAAAAA/AACgvgAASEAAAAA/AADAvgAAKEAAAAA/AACgvgAAKEAAAAA/AADAvgAAKEAAAMA+AACgvgAAKEAAAMA+AADAvgAASEAAAAA/AACgvgAASEAAAAA/AADAvgAAKEAAAAA/AACgvgAAKEAAAAA/AACgvgAASEAAAMA+AADAvgAASEAAAMA+AACgvgAAKEAAAMA+AADAvgAAKEAAAMA+AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ACDwPgAAAT0A4P8+AAABPQAg8D4AwB8+AOD/PgDAHz4AEAQ/AAABPQDwCz8AAAE9ABAEPwDAHz4A8As/AMAfPgDwAz8AAP48ABAAPwAA/jwA8AM/AACAOQAQAD8AAIA5APAHPwAAgDkAEAQ/AACAOQDwBz8AAP48ABAEPwAA/jwAEAw/AAABPQDwDz8AAAE9ABAMPwDAHz4A8A8/AMAfPgAQAD8AAAE9APADPwAAAT0AEAA/AMAfPgDwAz8AwB8+AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAADAPgAASEAAAACkAADAPgAASEAAAIC9AADAPgAAJEAAAACkAADAPgAAJEAAAIC9AACgPgAASEAAAIC9AACgPgAASEAAAACkAACgPgAAJEAAAIC9AACgPgAAJEAAAACkAACgPgAASEAAAIC9AADAPgAASEAAAIC9AACgPgAASEAAAACkAADAPgAASEAAAACkAACgPgAAJEAAAACkAADAPgAAJEAAAACkAACgPgAAJEAAAIC9AADAPgAAJEAAAIC9AACgPgAASEAAAACkAADAPgAASEAAAACkAACgPgAAJEAAAACkAADAPgAAJEAAAACkAADAPgAASEAAAIC9AACgPgAASEAAAIC9AADAPgAAJEAAAIC9AACgPgAAJEAAAIC9AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AIDAPQAAgjwAgN89AACCPACAwD0AwB8+AIDfPQDAHz4AQAA+AACCPADADz4AAII8AEAAPgDAHz4AwA8+AMAfPgCA/z0AAHw8AIDgPQAAfDwAgP89AACAOQCA4D0AAIA5AMAPPgAAgDkAQAA+AACAOQDADz4AAHw8AEAAPgAAfDwAQBA+AACCPADAHz4AAII8AEAQPgDAHz4AwB8+AMAfPgCA4D0AAII8AID/PQAAgjwAgOA9AMAfPgCA/z0AwB8+AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAADAPgAASEAAAAA+AADAPgAASEAAAACkAADAPgAAKEAAAAA+AADAPgAAKEAAAACkAACgPgAASEAAAACkAACgPgAASEAAAAA+AACgPgAAKEAAAACkAACgPgAAKEAAAAA+AACgPgAASEAAAACkAADAPgAASEAAAACkAACgPgAASEAAAAA+AADAPgAASEAAAAA+AACgPgAAKEAAAAA+AADAPgAAKEAAAAA+AACgPgAAKEAAAACkAADAPgAAKEAAAACkAACgPgAASEAAAAA+AADAPgAASEAAAAA+AACgPgAAKEAAAAA+AADAPgAAKEAAAAA+AADAPgAASEAAAACkAACgPgAASEAAAACkAADAPgAAKEAAAACkAACgPgAAKEAAAACkAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AACAOQAgwD4AAP48ACDAPgAAgDkA4P8+AAD+PADg/z4AAEE9ACDAPgCAnz0AIMA+AABBPQDg/z4AgJ89AOD/PgAAPz0A4L8+AAABPQDgvz4AAD89ACCwPgAAAT0AILA+AAB/PQAgsD4AAEE9ACCwPgAAfz0A4L8+AABBPQDgvz4AgKA9ACDAPgCAvz0AIMA+AICgPQDg/z4AgL89AOD/PgAAAT0AIMA+AAA/PQAgwD4AAAE9AOD/PgAAPz0A4P8+AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAADAPgAASEAAAIA+AADAPgAASEAAAAA+AADAPgAAMEAAAIA+AADAPgAAMEAAAAA+AACgPgAASEAAAAA+AACgPgAASEAAAIA+AACgPgAAMEAAAAA+AACgPgAAMEAAAIA+AACgPgAASEAAAAA+AADAPgAASEAAAAA+AACgPgAASEAAAIA+AADAPgAASEAAAIA+AACgPgAAMEAAAIA+AADAPgAAMEAAAIA+AACgPgAAMEAAAAA+AADAPgAAMEAAAAA+AACgPgAASEAAAIA+AADAPgAASEAAAIA+AACgPgAAMEAAAIA+AADAPgAAMEAAAIA+AADAPgAASEAAAAA+AACgPgAASEAAAAA+AADAPgAAMEAAAAA+AACgPgAAMEAAAAA+AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ABAQPwAQJD8A8Bc/ABAkPwAQED8A8Ds/APAXPwDwOz8AEBw/ABAkPwDwIz8AECQ/ABAcPwDwOz8A8CM/APA7PwDwGz8A8CM/ABAYPwDwIz8A8Bs/ABAcPwAQGD8AEBw/APAfPwAQHD8AEBw/ABAcPwDwHz8A8CM/ABAcPwDwIz8AECQ/ABAkPwDwJz8AECQ/ABAkPwDwOz8A8Cc/APA7PwAQGD8AECQ/APAbPwAQJD8AEBg/APA7PwDwGz8A8Ds/AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAADAPgAASEAAAMA+AADAPgAASEAAAIA+AADAPgAALEAAAMA+AADAPgAALEAAAIA+AACgPgAASEAAAIA+AACgPgAASEAAAMA+AACgPgAALEAAAIA+AACgPgAALEAAAMA+AACgPgAASEAAAIA+AADAPgAASEAAAIA+AACgPgAASEAAAMA+AADAPgAASEAAAMA+AACgPgAALEAAAMA+AADAPgAALEAAAMA+AACgPgAALEAAAIA+AADAPgAALEAAAIA+AACgPgAASEAAAMA+AADAPgAASEAAAMA+AACgPgAALEAAAMA+AADAPgAALEAAAMA+AADAPgAASEAAAIA+AACgPgAASEAAAIA+AADAPgAALEAAAIA+AACgPgAALEAAAIA+AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AEBwPgAQDD8A4Ic+ABAMPwBAcD4A8Cc/AOCHPgDwJz8AIJA+ABAMPwDgnz4AEAw/ACCQPgDwJz8A4J8+APAnPwDgjz4A8As/ACCIPgDwCz8A4I8+ABAEPwAgiD4AEAQ/AOCXPgAQBD8AIJA+ABAEPwDglz4A8As/ACCQPgDwCz8AIKA+ABAMPwDgpz4AEAw/ACCgPgDwJz8A4Kc+APAnPwAgiD4AEAw/AOCPPgAQDD8AIIg+APAnPwDgjz4A8Cc/AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAADAPgAASEAAAAA/AADAPgAASEAAAMA+AADAPgAAKEAAAAA/AADAPgAAKEAAAMA+AACgPgAASEAAAMA+AACgPgAASEAAAAA/AACgPgAAKEAAAMA+AACgPgAAKEAAAAA/AACgPgAASEAAAMA+AADAPgAASEAAAMA+AACgPgAASEAAAAA/AADAPgAASEAAAAA/AACgPgAAKEAAAAA/AADAPgAAKEAAAAA/AACgPgAAKEAAAMA+AADAPgAAKEAAAMA+AACgPgAASEAAAAA/AADAPgAASEAAAAA/AACgPgAAKEAAAAA/AADAPgAAKEAAAAA/AADAPgAASEAAAMA+AACgPgAASEAAAMA+AADAPgAAKEAAAMA+AACgPgAAKEAAAMA+AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AACAOQAAAT0AAP48AAABPQAAgDkAwB8+AAD+PADAHz4AAEE9AAABPQCAnz0AAAE9AABBPQDAHz4AgJ89AMAfPgAAPz0AAP48AAABPQAA/jwAAD89AACAOQAAAT0AAIA5AAB/PQAAgDkAAEE9AACAOQAAfz0AAP48AABBPQAA/jwAgKA9AAABPQCAvz0AAAE9AICgPQDAHz4AgL89AMAfPgAAAT0AAAE9AAA/PQAAAT0AAAE9AMAfPgAAPz0AwB8+AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAADAPgAASEAAABA/AADAPgAASEAAAAA/AADAPgAAMEAAABA/AADAPgAAMEAAAAA/AACgPgAASEAAAAA/AACgPgAASEAAABA/AACgPgAAMEAAAAA/AACgPgAAMEAAABA/AACgPgAASEAAAAA/AADAPgAASEAAAAA/AACgPgAASEAAABA/AADAPgAASEAAABA/AACgPgAAMEAAABA/AADAPgAAMEAAABA/AACgPgAAMEAAAAA/AADAPgAAMEAAAAA/AACgPgAASEAAABA/AADAPgAASEAAABA/AACgPgAAMEAAABA/AADAPgAAMEAAABA/AADAPgAASEAAAAA/AACgPgAASEAAAAA/AADAPgAAMEAAAAA/AACgPgAAMEAAAAA/AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ABAQPwAguD4A8BM/ACC4PgAQED8A4Oc+APATPwDg5z4AEBg/ACC4PgDwGz8AILg+ABAYPwDg5z4A8Bs/AODnPgDwFz8A4Lc+ABAUPwDgtz4A8Bc/ACCwPgAQFD8AILA+APAbPwAgsD4AEBg/ACCwPgDwGz8A4Lc+ABAYPwDgtz4AEBw/ACC4PgDwHz8AILg+ABAcPwDg5z4A8B8/AODnPgAQFD8AILg+APAXPwAguD4AEBQ/AODnPgDwFz8A4Oc+AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACgPgAATEAAABA/AACgPgAATEAAAIC9AACgPgAASEAAABA/AACgPgAASEAAAIC9AACgvgAATEAAAIC9AACgvgAATEAAABA/AACgvgAASEAAAIC9AACgvgAASEAAABA/AACgvgAATEAAAIC9AACgPgAATEAAAIC9AACgvgAATEAAABA/AACgPgAATEAAABA/AACgvgAASEAAABA/AACgPgAASEAAABA/AACgvgAASEAAAIC9AACgPgAASEAAAIC9AACgvgAATEAAABA/AACgPgAATEAAABA/AACgvgAASEAAABA/AACgPgAASEAAABA/AACgPgAATEAAAIC9AACgvgAATEAAAIC9AACgPgAASEAAAIC9AACgvgAASEAAAIC9AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AACAOQAQAD8AwB8+ABAAPwAAgDkA8AM/AMAfPgDwAz8AIKA+ABAAPwDg7z4AEAA/ACCgPgDwAz8A4O8+APADPwDgnz4A4P8+AEAgPgDg/z4A4J8+ACCwPgBAID4AILA+AODvPgAgsD4AIKA+ACCwPgDg7z4A4P8+ACCgPgDg/z4AIPA+ABAAPwDwHz8AEAA/ACDwPgDwAz8A8B8/APADPwBAID4AEAA/AOCfPgAQAD8AQCA+APADPwDgnz4A8AM/AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAABAvgAASEAAACA/AABAvgAASEAAAIC9AABAvgAAMEAAACA/AABAvgAAMEAAAIC9AACgvgAASEAAAIC9AACgvgAASEAAACA/AACgvgAAMEAAAIC9AACgvgAAMEAAACA/AACgvgAASEAAAIC9AABAvgAASEAAAIC9AACgvgAASEAAACA/AABAvgAASEAAACA/AACgvgAAMEAAACA/AABAvgAAMEAAACA/AACgvgAAMEAAAIC9AABAvgAAMEAAAIC9AACgvgAASEAAACA/AABAvgAASEAAACA/AACgvgAAMEAAACA/AABAvgAAMEAAACA/AABAvgAASEAAAIC9AACgvgAASEAAAIC9AABAvgAAMEAAAIC9AACgvgAAMEAAAIC9AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AACAOQAQMD8AwC8+ABAwPwAAgDkA8Ec/AMAvPgDwRz8AQFA+ABAwPwDgvz4AEDA/AEBQPgDwRz8A4L8+APBHPwDATz4A8C8/AEAwPgDwLz8AwE8+ABAEPwBAMD4AEAQ/AMBvPgAQBD8AQFA+ABAEPwDAbz4A8C8/AEBQPgDwLz8AIMA+ABAwPwDgzz4AEDA/ACDAPgDwRz8A4M8+APBHPwBAMD4AEDA/AMBPPgAQMD8AQDA+APBHPwDATz4A8Ec/AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACgvgAASEAAABA/AACgvgAASEAAAAA/AACgvgAAMEAAABA/AACgvgAAMEAAAAA/AADAvgAASEAAAAA/AADAvgAASEAAABA/AADAvgAAMEAAAAA/AADAvgAAMEAAABA/AADAvgAASEAAAAA/AACgvgAASEAAAAA/AADAvgAASEAAABA/AACgvgAASEAAABA/AADAvgAAMEAAABA/AACgvgAAMEAAABA/AADAvgAAMEAAAAA/AACgvgAAMEAAAAA/AADAvgAASEAAABA/AACgvgAASEAAABA/AADAvgAAMEAAABA/AACgvgAAMEAAABA/AACgvgAASEAAAAA/AADAvgAASEAAAAA/AACgvgAAMEAAAAA/AADAvgAAMEAAAAA/AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AIDAPQAQCD8AgN89ABAIPwCAwD0A8B8/AIDfPQDwHz8AQAA+ABAIPwDADz4AEAg/AEAAPgDwHz8AwA8+APAfPwCA/z0A8Ac/AIDgPQDwBz8AgP89ABAEPwCA4D0AEAQ/AMAPPgAQBD8AQAA+ABAEPwDADz4A8Ac/AEAAPgDwBz8AQBA+ABAIPwDAHz4AEAg/AEAQPgDwHz8AwB8+APAfPwCA4D0AEAg/AID/PQAQCD8AgOA9APAfPwCA/z0A8B8/AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACgPgAASEAAACA/AACgPgAASEAAAIC9AACgPgAAMEAAACA/AACgPgAAMEAAAIC9AABAPgAASEAAAIC9AABAPgAASEAAACA/AABAPgAAMEAAAIC9AABAPgAAMEAAACA/AABAPgAASEAAAIC9AACgPgAASEAAAIC9AABAPgAASEAAACA/AACgPgAASEAAACA/AABAPgAAMEAAACA/AACgPgAAMEAAACA/AABAPgAAMEAAAIC9AACgPgAAMEAAAIC9AABAPgAASEAAACA/AACgPgAASEAAACA/AABAPgAAMEAAACA/AACgPgAAMEAAACA/AACgPgAASEAAAIC9AABAPgAASEAAAIC9AACgPgAAMEAAAIC9AABAPgAAMEAAAIC9AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ACDoPgAQBD8A8B8/ABAEPwAg6D4A8Bs/APAfPwDwGz8AECg/ABAEPwDwUz8AEAQ/ABAoPwDwGz8A8FM/APAbPwDwJz8A8AM/ABAgPwDwAz8A8Cc/ACCwPgAQID8AILA+APAvPwAgsD4AECg/ACCwPgDwLz8A8AM/ABAoPwDwAz8AEFQ/ABAEPwDwWz8AEAQ/ABBUPwDwGz8A8Fs/APAbPwAQID8AEAQ/APAnPwAQBD8AECA/APAbPwDwJz8A8Bs/AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAABAPgAASEAAACA/AABAPgAASEAAAIC9AABAPgAANEAAACA/AABAPgAANEAAAIC9AACAPQAASEAAAIC9AACAPQAASEAAACA/AACAPQAANEAAAIC9AACAPQAANEAAACA/AACAPQAASEAAAIC9AABAPgAASEAAAIC9AACAPQAASEAAACA/AABAPgAASEAAACA/AACAPQAANEAAACA/AABAPgAANEAAACA/AACAPQAANEAAAIC9AABAPgAANEAAAIC9AACAPQAASEAAACA/AABAPgAASEAAACA/AACAPQAANEAAACA/AABAPgAANEAAACA/AABAPgAASEAAAIC9AACAPQAASEAAAIC9AABAPgAANEAAAIC9AACAPQAANEAAAIC9AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AEBwPgAQSD8A4M8+ABBIPwBAcD4A8Fs/AODPPgDwWz8AIOA+ABBIPwDwGz8AEEg/ACDgPgDwWz8A8Bs/APBbPwDg3z4A8Ec/ACDQPgDwRz8A4N8+ABAcPwAg0D4AEBw/AODvPgAQHD8AIOA+ABAcPwDg7z4A8Ec/ACDgPgDwRz8AEBw/ABBIPwDwIz8AEEg/ABAcPwDwWz8A8CM/APBbPwAg0D4AEEg/AODfPgAQSD8AINA+APBbPwDg3z4A8Fs/AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACAvQAASEAAACA/AACAvQAASEAAABA/AACAvQAAKEAAACA/AACAvQAAKEAAABA/AABAvgAASEAAABA/AABAvgAASEAAACA/AABAvgAAKEAAABA/AABAvgAAKEAAACA/AABAvgAASEAAABA/AACAvQAASEAAABA/AABAvgAASEAAACA/AACAvQAASEAAACA/AABAvgAAKEAAACA/AACAvQAAKEAAACA/AABAvgAAKEAAABA/AACAvQAAKEAAABA/AABAvgAASEAAACA/AACAvQAASEAAACA/AABAvgAAKEAAACA/AACAvQAAKEAAACA/AACAvQAASEAAABA/AABAvgAASEAAABA/AACAvQAAKEAAABA/AABAvgAAKEAAABA/AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AACAOQAQCD8AAHw8ABAIPwAAgDkA8Cc/AAB8PADwJz8AAEE9ABAIPwAAfz0AEAg/AABBPQDwJz8AAH89APAnPwAAPz0A8Ac/AACCPADwBz8AAD89ABAEPwAAgjwAEAQ/AICfPQAQBD8AAEE9ABAEPwCAnz0A8Ac/AABBPQDwBz8AgIA9ABAIPwCAvz0AEAg/AICAPQDwJz8AgL89APAnPwAAgjwAEAg/AAA/PQAQCD8AAII8APAnPwAAPz0A8Cc/AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACAPQAASEAAACA/AACAPQAASEAAABA/AACAPQAALEAAACA/AACAPQAALEAAABA/AACAvQAASEAAABA/AACAvQAASEAAACA/AACAvQAALEAAABA/AACAvQAALEAAACA/AACAvQAASEAAABA/AACAPQAASEAAABA/AACAvQAASEAAACA/AACAPQAASEAAACA/AACAvQAALEAAACA/AACAPQAALEAAACA/AACAvQAALEAAABA/AACAPQAALEAAABA/AACAvQAASEAAACA/AACAPQAASEAAACA/AACAvQAALEAAACA/AACAPQAALEAAACA/AACAPQAASEAAABA/AACAvQAASEAAABA/AACAPQAALEAAABA/AACAvQAALEAAABA/AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ACDwPgAQID8A4Pc+ABAgPwAg8D4A8Ds/AOD3PgDwOz8AEAQ/ABAgPwDwBz8AECA/ABAEPwDwOz8A8Ac/APA7PwDwAz8A8B8/ACD4PgDwHz8A8AM/ABAcPwAg+D4AEBw/APALPwAQHD8AEAQ/ABAcPwDwCz8A8B8/ABAEPwDwHz8AEAg/ABAgPwDwDz8AECA/ABAIPwDwOz8A8A8/APA7PwAg+D4AECA/APADPwAQID8AIPg+APA7PwDwAz8A8Ds/AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACgPgAALEAAAIC9AACgPgAALEAAAAC+AACgPgAAKEAAAIC9AACgPgAAKEAAAAC+AACAPgAALEAAAAC+AACAPgAALEAAAIC9AACAPgAAKEAAAAC+AACAPgAAKEAAAIC9AACAPgAALEAAAAC+AACgPgAALEAAAAC+AACAPgAALEAAAIC9AACgPgAALEAAAIC9AACAPgAAKEAAAIC9AACgPgAAKEAAAIC9AACAPgAAKEAAAAC+AACgPgAAKEAAAAC+AACAPgAALEAAAIC9AACgPgAALEAAAIC9AACAPgAAKEAAAIC9AACgPgAAKEAAAIC9AACgPgAALEAAAAC+AACAPgAALEAAAAC+AACgPgAAKEAAAAC+AACAPgAAKEAAAAC+AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ABAIPwAAgjwA8As/AACCPAAQCD8AAP48APALPwAA/jwAEBA/AACCPADwEz8AAII8ABAQPwAA/jwA8BM/AAD+PADwDz8AAHw8ABAMPwAAfDwA8A8/AACAOQAQDD8AAIA5APATPwAAgDkAEBA/AACAOQDwEz8AAHw8ABAQPwAAfDwAEBQ/AACCPADwFz8AAII8ABAUPwAA/jwA8Bc/AAD+PAAQDD8AAII8APAPPwAAgjwAEAw/AAD+PADwDz8AAP48AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACgvgAASEAAAIA+AACgvgAASEAAAAA+AACgvgAAMEAAAIA+AACgvgAAMEAAAAA+AACwvgAASEAAAAA+AACwvgAASEAAAIA+AACwvgAAMEAAAAA+AACwvgAAMEAAAIA+AACwvgAASEAAAAA+AACgvgAASEAAAAA+AACwvgAASEAAAIA+AACgvgAASEAAAIA+AACwvgAAMEAAAIA+AACgvgAAMEAAAIA+AACwvgAAMEAAAAA+AACgvgAAMEAAAAA+AACwvgAASEAAAIA+AACgvgAASEAAAIA+AACwvgAAMEAAAIA+AACgvgAAMEAAAIA+AACgvgAASEAAAAA+AACwvgAASEAAAAA+AACgvgAAMEAAAAA+AACwvgAAMEAAAAA+AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ABAgPwBAED4A8Cc/AEAQPgAQID8AwG8+APAnPwDAbz4AECg/AEAQPgDwLz8AQBA+ABAoPwDAbz4A8C8/AMBvPgAQKD8AwA8+APAnPwDADz4AECg/AIDgPQDwJz8AgOA9ABAoPwCA4D0A8Cc/AIDgPQAQKD8AwA8+APAnPwDADz4AEDA/AEAQPgDwLz8AQBA+ABAwPwDAbz4A8C8/AMBvPgAQKD8AQBA+APAnPwBAED4AECg/AMBvPgDwJz8AwG8+AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACAvQAASEAAABg/AACAvQAASEAAABA/AACAvQAAKEAAABg/AACAvQAAKEAAABA/AABAvgAASEAAABA/AABAvgAASEAAABg/AABAvgAAKEAAABA/AABAvgAAKEAAABg/AABAvgAASEAAABA/AACAvQAASEAAABA/AABAvgAASEAAABg/AACAvQAASEAAABg/AABAvgAAKEAAABg/AACAvQAAKEAAABg/AABAvgAAKEAAABA/AACAvQAAKEAAABA/AABAvgAASEAAABg/AACAvQAASEAAABg/AABAvgAAKEAAABg/AACAvQAAKEAAABg/AACAvQAASEAAABA/AABAvgAASEAAABA/AACAvQAAKEAAABA/AABAvgAAKEAAABA/AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AACCPAAQCD8AAHw8ABAIPwAAgjwA8Cc/AAB8PADwJz8AAEE9ABAIPwAAPz0AEAg/AABBPQDwJz8AAD89APAnPwAAPz0AEAg/AACCPAAQCD8AAD89APAHPwAAgjwA8Ac/AICfPQAQCD8AAEE9ABAIPwCAnz0A8Ac/AABBPQDwBz8AAEE9ABAIPwCAnz0AEAg/AABBPQDwJz8AgJ89APAnPwAAgjwAEAg/AAA/PQAQCD8AAII8APAnPwAAPz0A8Cc/AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACAPQAASEAAABg/AACAPQAASEAAABA/AACAPQAALEAAABg/AACAPQAALEAAABA/AACAvQAASEAAABA/AACAvQAASEAAABg/AACAvQAALEAAABA/AACAvQAALEAAABg/AACAvQAASEAAABA/AACAPQAASEAAABA/AACAvQAASEAAABg/AACAPQAASEAAABg/AACAvQAALEAAABg/AACAPQAALEAAABg/AACAvQAALEAAABA/AACAPQAALEAAABA/AACAvQAASEAAABg/AACAPQAASEAAABg/AACAvQAALEAAABg/AACAPQAALEAAABg/AACAPQAASEAAABA/AACAvQAASEAAABA/AACAPQAALEAAABA/AACAvQAALEAAABA/AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ACD4PgAQID8A4Pc+ABAgPwAg+D4A8Ds/AOD3PgDwOz8AEAQ/ABAgPwDwAz8AECA/ABAEPwDwOz8A8AM/APA7PwDwAz8AECA/ACD4PgAQID8A8AM/APAfPwAg+D4A8B8/APALPwAQID8AEAQ/ABAgPwDwCz8A8B8/ABAEPwDwHz8AEAQ/ABAgPwDwCz8AECA/ABAEPwDwOz8A8As/APA7PwAg+D4AECA/APADPwAQID8AIPg+APA7PwDwAz8A8Ds/AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACgvgAASEAAAMA+AACgvgAASEAAAIA+AACgvgAALEAAAMA+AACgvgAALEAAAIA+AACwvgAASEAAAIA+AACwvgAASEAAAMA+AACwvgAALEAAAIA+AACwvgAALEAAAMA+AACwvgAASEAAAIA+AACgvgAASEAAAIA+AACwvgAASEAAAMA+AACgvgAASEAAAMA+AACwvgAALEAAAMA+AACgvgAALEAAAMA+AACwvgAALEAAAIA+AACgvgAALEAAAIA+AACwvgAASEAAAMA+AACgvgAASEAAAMA+AACwvgAALEAAAMA+AACgvgAALEAAAMA+AACgvgAASEAAAIA+AACwvgAASEAAAIA+AACgvgAALEAAAIA+AACwvgAALEAAAIA+AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ABAQPwAAAT0A8Bc/AAABPQAQED8AwA8+APAXPwDADz4AEBg/AAABPQDwHz8AAAE9ABAYPwDADz4A8B8/AMAPPgAQGD8AAP48APAXPwAA/jwAEBg/AACAOQDwFz8AAIA5ABAYPwAAgDkA8Bc/AACAOQAQGD8AAP48APAXPwAA/jwAECA/AAABPQDwHz8AAAE9ABAgPwDADz4A8B8/AMAPPgAQGD8AAAE9APAXPwAAAT0AEBg/AMAPPgDwFz8AwA8+AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACgvgAASEAAAAA/AACgvgAASEAAAMA+AACgvgAAKEAAAAA/AACgvgAAKEAAAMA+AACwvgAASEAAAMA+AACwvgAASEAAAAA/AACwvgAAKEAAAMA+AACwvgAAKEAAAAA/AACwvgAASEAAAMA+AACgvgAASEAAAMA+AACwvgAASEAAAAA/AACgvgAASEAAAAA/AACwvgAAKEAAAAA/AACgvgAAKEAAAAA/AACwvgAAKEAAAMA+AACgvgAAKEAAAMA+AACwvgAASEAAAAA/AACgvgAASEAAAAA/AACwvgAAKEAAAAA/AACgvgAAKEAAAAA/AACgvgAASEAAAMA+AACwvgAASEAAAMA+AACgvgAAKEAAAMA+AACwvgAAKEAAAMA+AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ACDwPgAAAT0A4P8+AAABPQAg8D4AwB8+AOD/PgDAHz4AEAA/AAABPQDwBz8AAAE9ABAAPwDAHz4A8Ac/AMAfPgAQAD8AAP48AOD/PgAA/jwAEAA/AACAOQDg/z4AAIA5ABAAPwAAgDkA4P8+AACAOQAQAD8AAP48AOD/PgAA/jwAEAg/AAABPQDwBz8AAAE9ABAIPwDAHz4A8Ac/AMAfPgAQAD8AAAE9AOD/PgAAAT0AEAA/AMAfPgDg/z4AwB8+AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACgvgAASEAAABA/AACgvgAASEAAAAA/AACgvgAAMEAAABA/AACgvgAAMEAAAAA/AACwvgAASEAAAAA/AACwvgAASEAAABA/AACwvgAAMEAAAAA/AACwvgAAMEAAABA/AACwvgAASEAAAAA/AACgvgAASEAAAAA/AACwvgAASEAAABA/AACgvgAASEAAABA/AACwvgAAMEAAABA/AACgvgAAMEAAABA/AACwvgAAMEAAAAA/AACgvgAAMEAAAAA/AACwvgAASEAAABA/AACgvgAASEAAABA/AACwvgAAMEAAABA/AACgvgAAMEAAABA/AACgvgAASEAAAAA/AACwvgAASEAAAAA/AACgvgAAMEAAAAA/AACwvgAAMEAAAAA/AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AIDAPQAQCD8AgN89ABAIPwCAwD0A8B8/AIDfPQDwHz8AgOA9ABAIPwCA/z0AEAg/AIDgPQDwHz8AgP89APAfPwCA4D0A8Ac/AIDfPQDwBz8AgOA9ABAEPwCA3z0AEAQ/AIDgPQAQBD8AgN89ABAEPwCA4D0A8Ac/AIDfPQDwBz8AQAA+ABAIPwCA/z0AEAg/AEAAPgDwHz8AgP89APAfPwCA4D0AEAg/AIDfPQAQCD8AgOA9APAfPwCA3z0A8B8/AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACwPgAASEAAABA/AACwPgAASEAAAAA/AACwPgAAMEAAABA/AACwPgAAMEAAAAA/AACgPgAASEAAAAA/AACgPgAASEAAABA/AACgPgAAMEAAAAA/AACgPgAAMEAAABA/AACgPgAASEAAAAA/AACwPgAASEAAAAA/AACgPgAASEAAABA/AACwPgAASEAAABA/AACgPgAAMEAAABA/AACwPgAAMEAAABA/AACgPgAAMEAAAAA/AACwPgAAMEAAAAA/AACgPgAASEAAABA/AACwPgAASEAAABA/AACgPgAAMEAAABA/AACwPgAAMEAAABA/AACwPgAASEAAAAA/AACgPgAASEAAAAA/AACwPgAAMEAAAAA/AACgPgAAMEAAAAA/AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ABAUPwAguD4A8Bc/ACC4PgAQFD8A4Oc+APAXPwDg5z4AEBg/ACC4PgDwGz8AILg+ABAYPwDg5z4A8Bs/AODnPgAQGD8A4Lc+APAXPwDgtz4AEBg/ACCwPgDwFz8AILA+ABAYPwAgsD4A8Bc/ACCwPgAQGD8A4Lc+APAXPwDgtz4AEBw/ACC4PgDwGz8AILg+ABAcPwDg5z4A8Bs/AODnPgAQGD8AILg+APAXPwAguD4AEBg/AODnPgDwFz8A4Oc+AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACwPgAASEAAAAA/AACwPgAASEAAAMA+AACwPgAAKEAAAAA/AACwPgAAKEAAAMA+AACgPgAASEAAAMA+AACgPgAASEAAAAA/AACgPgAAKEAAAMA+AACgPgAAKEAAAAA/AACgPgAASEAAAMA+AACwPgAASEAAAMA+AACgPgAASEAAAAA/AACwPgAASEAAAAA/AACgPgAAKEAAAAA/AACwPgAAKEAAAAA/AACgPgAAKEAAAMA+AACwPgAAKEAAAMA+AACgPgAASEAAAAA/AACwPgAASEAAAAA/AACgPgAAKEAAAAA/AACwPgAAKEAAAAA/AACwPgAASEAAAMA+AACgPgAASEAAAMA+AACwPgAAKEAAAMA+AACgPgAAKEAAAMA+AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AACCPAAAAT0AAD89AAABPQAAgjwAwB8+AAA/PQDAHz4AAEE9AAABPQCAnz0AAAE9AABBPQDAHz4AgJ89AMAfPgAAQT0AAP48AAA/PQAA/jwAAEE9AACAOQAAPz0AAIA5AABBPQAAgDkAAD89AACAOQAAQT0AAP48AAA/PQAA/jwAgKA9AAABPQCAnz0AAAE9AICgPQDAHz4AgJ89AMAfPgAAQT0AAAE9AAA/PQAAAT0AAEE9AMAfPgAAPz0AwB8+AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACwPgAASEAAAMA+AACwPgAASEAAAIA+AACwPgAALEAAAMA+AACwPgAALEAAAIA+AACgPgAASEAAAIA+AACgPgAASEAAAMA+AACgPgAALEAAAIA+AACgPgAALEAAAMA+AACgPgAASEAAAIA+AACwPgAASEAAAIA+AACgPgAASEAAAMA+AACwPgAASEAAAMA+AACgPgAALEAAAMA+AACwPgAALEAAAMA+AACgPgAALEAAAIA+AACwPgAALEAAAIA+AACgPgAASEAAAMA+AACwPgAASEAAAMA+AACgPgAALEAAAMA+AACwPgAALEAAAMA+AACwPgAASEAAAIA+AACgPgAASEAAAIA+AACwPgAALEAAAIA+AACgPgAALEAAAIA+AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ACCAPgAQDD8A4I8+ABAMPwAggD4A8Cc/AOCPPgDwJz8AIJA+ABAMPwDgnz4AEAw/ACCQPgDwJz8A4J8+APAnPwAgkD4A8As/AOCPPgDwCz8AIJA+ABAEPwDgjz4AEAQ/ACCQPgAQBD8A4I8+ABAEPwAgkD4A8As/AOCPPgDwCz8AIKA+ABAMPwDgnz4AEAw/ACCgPgDwJz8A4J8+APAnPwAgkD4AEAw/AOCPPgAQDD8AIJA+APAnPwDgjz4A8Cc/AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACwPgAASEAAAIA+AACwPgAASEAAAAA+AACwPgAAMEAAAIA+AACwPgAAMEAAAAA+AACgPgAASEAAAAA+AACgPgAASEAAAIA+AACgPgAAMEAAAAA+AACgPgAAMEAAAIA+AACgPgAASEAAAAA+AACwPgAASEAAAAA+AACgPgAASEAAAIA+AACwPgAASEAAAIA+AACgPgAAMEAAAIA+AACwPgAAMEAAAIA+AACgPgAAMEAAAAA+AACwPgAAMEAAAAA+AACgPgAASEAAAIA+AACwPgAASEAAAIA+AACgPgAAMEAAAIA+AACwPgAAMEAAAIA+AACwPgAASEAAAAA+AACgPgAASEAAAAA+AACwPgAAMEAAAAA+AACgPgAAMEAAAAA+AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ABAUPwAQJD8A8Bs/ABAkPwAQFD8A8Ds/APAbPwDwOz8AEBw/ABAkPwDwIz8AECQ/ABAcPwDwOz8A8CM/APA7PwAQHD8A8CM/APAbPwDwIz8AEBw/ABAcPwDwGz8AEBw/ABAcPwAQHD8A8Bs/ABAcPwAQHD8A8CM/APAbPwDwIz8AECQ/ABAkPwDwIz8AECQ/ABAkPwDwOz8A8CM/APA7PwAQHD8AECQ/APAbPwAQJD8AEBw/APA7PwDwGz8A8Ds/AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAABAPgAASEAAABg/AABAPgAASEAAABA/AABAPgAANEAAABg/AABAPgAANEAAABA/AACAPQAASEAAABA/AACAPQAASEAAABg/AACAPQAANEAAABA/AACAPQAANEAAABg/AACAPQAASEAAABA/AABAPgAASEAAABA/AACAPQAASEAAABg/AABAPgAASEAAABg/AACAPQAANEAAABg/AABAPgAANEAAABg/AACAPQAANEAAABA/AABAPgAANEAAABA/AACAPQAASEAAABg/AABAPgAASEAAABg/AACAPQAANEAAABg/AABAPgAANEAAABg/AABAPgAASEAAABA/AACAPQAASEAAABA/AABAPgAANEAAABA/AACAPQAANEAAABA/AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ACDQPgAQSD8A4M8+ABBIPwAg0D4A8Fs/AODPPgDwWz8AIOA+ABBIPwDg3z4AEEg/ACDgPgDwWz8A4N8+APBbPwDg3z4AEEg/ACDQPgAQSD8A4N8+APBHPwAg0D4A8Ec/AODvPgAQSD8AIOA+ABBIPwDg7z4A8Ec/ACDgPgDwRz8AIOA+ABBIPwDg7z4AEEg/ACDgPgDwWz8A4O8+APBbPwAg0D4AEEg/AODfPgAQSD8AINA+APBbPwDg3z4A8Fs/AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACAvQAASEAAABg/AACAvQAASEAAABA/AACAvQAAMEAAABg/AACAvQAAMEAAABA/AABAvgAASEAAABA/AABAvgAASEAAABg/AABAvgAAMEAAABA/AABAvgAAMEAAABg/AABAvgAASEAAABA/AACAvQAASEAAABA/AABAvgAASEAAABg/AACAvQAASEAAABg/AABAvgAAMEAAABg/AACAvQAAMEAAABg/AABAvgAAMEAAABA/AACAvQAAMEAAABA/AABAvgAASEAAABg/AACAvQAASEAAABg/AABAvgAAMEAAABg/AACAvQAAMEAAABg/AACAvQAASEAAABA/AABAvgAASEAAABA/AACAvQAAMEAAABA/AABAvgAAMEAAABA/AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AACCPAAQCD8AAHw8ABAIPwAAgjwA8B8/AAB8PADwHz8AAEE9ABAIPwAAPz0AEAg/AABBPQDwHz8AAD89APAfPwAAPz0AEAg/AACCPAAQCD8AAD89APAHPwAAgjwA8Ac/AICfPQAQCD8AAEE9ABAIPwCAnz0A8Ac/AABBPQDwBz8AAEE9ABAIPwCAnz0AEAg/AABBPQDwHz8AgJ89APAfPwAAgjwAEAg/AAA/PQAQCD8AAII8APAfPwAAPz0A8B8/AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAACAPQAASEAAABg/AACAPQAASEAAABA/AACAPQAALEAAABg/AACAPQAALEAAABA/AACAvQAASEAAABA/AACAvQAASEAAABg/AACAvQAALEAAABA/AACAvQAALEAAABg/AACAvQAASEAAABA/AACAPQAASEAAABA/AACAvQAASEAAABg/AACAPQAASEAAABg/AACAvQAALEAAABg/AACAPQAALEAAABg/AACAvQAALEAAABA/AACAPQAALEAAABA/AACAvQAASEAAABg/AACAPQAASEAAABg/AACAvQAALEAAABg/AACAPQAALEAAABg/AACAPQAASEAAABA/AACAvQAASEAAABA/AACAPQAALEAAABA/AACAvQAALEAAABA/AACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAPwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAACAvwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAgL8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/AAAAAAAAAAAAAIC/ACD4PgAQID8A4Pc+ABAgPwAg+D4A8Ds/AOD3PgDwOz8AEAQ/ABAgPwDwAz8AECA/ABAEPwDwOz8A8AM/APA7PwDwAz8AECA/ACD4PgAQID8A8AM/APAfPwAg+D4A8B8/APALPwAQID8AEAQ/ABAgPwDwCz8A8B8/ABAEPwDwHz8AEAQ/ABAgPwDwCz8AECA/ABAEPwDwOz8A8As/APA7PwAg+D4AECA/APADPwAQID8AIPg+APA7PwDwAz8A8Ds/AAACAAEAAgADAAEABAAGAAUABgAHAAUACAAKAAkACgALAAkADAAOAA0ADgAPAA0AEAASABEAEgATABEAFAAWABUAFgAXABUAAAAAABYYVz4BoyA+z/ILvRXkdj8AAAAAAAAAAAAAQD4AAMC+AAAAAAAAgD4AAAA/AACAPwAAgD8AAIA/AACAP5qZmT8AAIA/AACAPwAAgD8AAIA/AAAAAKU1gjsAABDA570zPgAAAAAAAIA/AACAPwAAgD8AAAAAAACAPgAAAD8AAKA/AAAAAAAAEMAAAMA+AAAAAAAAEMAAAMA+AAAAAAAAcL8AAMA+AAAAAAAAEMAAAMA+AAAAAAAAgD4AAAA/AABAPwAAoD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAgD+amZk/mpmZP5qZmT8AAIA/AACAPwAAgD8AAAAAAACAPgAAAD8AAIA/AAAAAAAAHMAAAMA+AAAAAAAAHMAAAMA+AAAAAAAAkL8AAMA+AAAAAAAAHMAAAMA+" - } - ], - "accessors": [ - { - "bufferView": 0, - "componentType": 5126, - "count": 24, - "max": [0.3125, 3.125, 0.5625], - "min": [-0.3125, 2.375, -0.0625], - "type": "VEC3" - }, - { - "bufferView": 1, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 2, - "componentType": 5126, - "count": 24, - "max": [0.624755859375, 0.343505859375], - "min": [0.000244140625, 0.000244140625], - "type": "VEC2" - }, - { - "bufferView": 3, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 4, - "componentType": 5126, - "count": 24, - "max": [0.3125, 3.125, -0.0625], - "min": [0.1875, 2.6875, -0.125], - "type": "VEC3" - }, - { - "bufferView": 5, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 6, - "componentType": 5126, - "count": 24, - "max": [0.781005859375, 0.124755859375], - "min": [0.687744140625, 0.000244140625], - "type": "VEC2" - }, - { - "bufferView": 7, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 8, - "componentType": 5126, - "count": 24, - "max": [0.1875, 3.125, -0.0625], - "min": [0.0625, 2.6875, -0.125], - "type": "VEC3" - }, - { - "bufferView": 9, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 10, - "componentType": 5126, - "count": 24, - "max": [0.749755859375, 0.734130859375], - "min": [0.656494140625, 0.609619140625], - "type": "VEC2" - }, - { - "bufferView": 11, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 12, - "componentType": 5126, - "count": 24, - "max": [0.0625, 3.125, -0.0625], - "min": [3.122502256758253e-17, 2.8125, -0.125], - "type": "VEC3" - }, - { - "bufferView": 13, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 14, - "componentType": 5126, - "count": 24, - "max": [0.749755859375, 0.437255859375], - "min": [0.687744140625, 0.343994140625], - "type": "VEC2" - }, - { - "bufferView": 15, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 16, - "componentType": 5126, - "count": 24, - "max": [-0.1875, 3.125, -0.0625], - "min": [-0.3125, 2.75, -0.125], - "type": "VEC3" - }, - { - "bufferView": 17, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 18, - "componentType": 5126, - "count": 24, - "max": [0.718505859375, 0.343505859375], - "min": [0.625244140625, 0.234619140625], - "type": "VEC2" - }, - { - "bufferView": 19, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 20, - "componentType": 5126, - "count": 24, - "max": [-0.25, 2.75, -0.0625], - "min": [-0.3125, 2.625, -0.125], - "type": "VEC3" - }, - { - "bufferView": 21, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 22, - "componentType": 5126, - "count": 24, - "max": [0.624755859375, 0.499755859375], - "min": [0.562744140625, 0.453369140625], - "type": "VEC2" - }, - { - "bufferView": 23, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 24, - "componentType": 5126, - "count": 24, - "max": [-2.42861286636753e-17, 3.125, -0.0625], - "min": [-0.1875, 2.9375, -0.125], - "type": "VEC3" - }, - { - "bufferView": 25, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 26, - "componentType": 5126, - "count": 24, - "max": [0.452880859375, 0.609130859375], - "min": [0.328369140625, 0.547119140625], - "type": "VEC2" - }, - { - "bufferView": 27, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 28, - "componentType": 5126, - "count": 24, - "max": [-0.3125, 3.125, -2.7755575615628914e-17], - "min": [-0.375, 2.5625, -0.0625], - "type": "VEC3" - }, - { - "bufferView": 29, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 30, - "componentType": 5126, - "count": 24, - "max": [0.156005859375, 0.499755859375], - "min": [0.093994140625, 0.343994140625], - "type": "VEC2" - }, - { - "bufferView": 31, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 32, - "componentType": 5126, - "count": 24, - "max": [-0.3125, 3.125, 0.125], - "min": [-0.375, 2.625, -2.7755575615628914e-17], - "type": "VEC3" - }, - { - "bufferView": 33, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 34, - "componentType": 5126, - "count": 24, - "max": [0.562255859375, 0.499755859375], - "min": [0.468994140625, 0.343994140625], - "type": "VEC2" - }, - { - "bufferView": 35, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 36, - "componentType": 5126, - "count": 24, - "max": [-0.3125, 3.125, 0.25], - "min": [-0.375, 2.75, 0.125], - "type": "VEC3" - }, - { - "bufferView": 37, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 38, - "componentType": 5126, - "count": 24, - "max": [0.718505859375, 0.234130859375], - "min": [0.625244140625, 0.109619140625], - "type": "VEC2" - }, - { - "bufferView": 39, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 40, - "componentType": 5126, - "count": 24, - "max": [-0.3125, 3.125, 0.375], - "min": [-0.375, 2.6875, 0.25], - "type": "VEC3" - }, - { - "bufferView": 41, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 42, - "componentType": 5126, - "count": 24, - "max": [0.656005859375, 0.140380859375], - "min": [0.562744140625, 0.000244140625], - "type": "VEC2" - }, - { - "bufferView": 43, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 44, - "componentType": 5126, - "count": 24, - "max": [-0.3125, 3.125, 0.5], - "min": [-0.375, 2.625, 0.375], - "type": "VEC3" - }, - { - "bufferView": 45, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 46, - "componentType": 5126, - "count": 24, - "max": [0.562255859375, 0.156005859375], - "min": [0.468994140625, 0.000244140625], - "type": "VEC2" - }, - { - "bufferView": 47, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 48, - "componentType": 5126, - "count": 24, - "max": [0.375, 3.125, -2.7755575615628914e-17], - "min": [0.3125, 2.5625, -0.0625], - "type": "VEC3" - }, - { - "bufferView": 49, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 50, - "componentType": 5126, - "count": 24, - "max": [0.156005859375, 0.156005859375], - "min": [0.093994140625, 0.000244140625], - "type": "VEC2" - }, - { - "bufferView": 51, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 52, - "componentType": 5126, - "count": 24, - "max": [0.375, 3.125, 0.125], - "min": [0.3125, 2.625, -2.7755575615628914e-17], - "type": "VEC3" - }, - { - "bufferView": 53, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 54, - "componentType": 5126, - "count": 24, - "max": [0.093505859375, 0.499755859375], - "min": [0.000244140625, 0.343994140625], - "type": "VEC2" - }, - { - "bufferView": 55, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 56, - "componentType": 5126, - "count": 24, - "max": [0.375, 3.125, 0.25], - "min": [0.3125, 2.75, 0.125], - "type": "VEC3" - }, - { - "bufferView": 57, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 58, - "componentType": 5126, - "count": 24, - "max": [0.656005859375, 0.734130859375], - "min": [0.562744140625, 0.609619140625], - "type": "VEC2" - }, - { - "bufferView": 59, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 60, - "componentType": 5126, - "count": 24, - "max": [0.375, 3.125, 0.375], - "min": [0.3125, 2.6875, 0.25], - "type": "VEC3" - }, - { - "bufferView": 61, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 62, - "componentType": 5126, - "count": 24, - "max": [0.327880859375, 0.656005859375], - "min": [0.234619140625, 0.515869140625], - "type": "VEC2" - }, - { - "bufferView": 63, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 64, - "componentType": 5126, - "count": 24, - "max": [0.375, 3.125, 0.5], - "min": [0.3125, 2.625, 0.375], - "type": "VEC3" - }, - { - "bufferView": 65, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 66, - "componentType": 5126, - "count": 24, - "max": [0.093505859375, 0.156005859375], - "min": [0.000244140625, 0.000244140625], - "type": "VEC2" - }, - { - "bufferView": 67, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 68, - "componentType": 5126, - "count": 24, - "max": [0.375, 3.125, 0.5625], - "min": [0.3125, 2.75, 0.5], - "type": "VEC3" - }, - { - "bufferView": 69, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 70, - "componentType": 5126, - "count": 24, - "max": [0.624755859375, 0.452880859375], - "min": [0.562744140625, 0.343994140625], - "type": "VEC2" - }, - { - "bufferView": 71, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 72, - "componentType": 5126, - "count": 24, - "max": [0.3125, 3.1875, 0.5625], - "min": [-0.3125, 3.125, -0.0625], - "type": "VEC3" - }, - { - "bufferView": 73, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 74, - "componentType": 5126, - "count": 24, - "max": [0.624755859375, 0.515380859375], - "min": [0.000244140625, 0.343994140625], - "type": "VEC2" - }, - { - "bufferView": 75, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 76, - "componentType": 5126, - "count": 24, - "max": [-0.1875, 3.125, 0.625], - "min": [-0.3125, 2.75, -0.0625], - "type": "VEC3" - }, - { - "bufferView": 77, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 78, - "componentType": 5126, - "count": 24, - "max": [0.406005859375, 0.781005859375], - "min": [0.000244140625, 0.515869140625], - "type": "VEC2" - }, - { - "bufferView": 79, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 80, - "componentType": 5126, - "count": 24, - "max": [-0.3125, 3.125, 0.5625], - "min": [-0.375, 2.75, 0.5], - "type": "VEC3" - }, - { - "bufferView": 81, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 82, - "componentType": 5126, - "count": 24, - "max": [0.156005859375, 0.624755859375], - "min": [0.093994140625, 0.515869140625], - "type": "VEC2" - }, - { - "bufferView": 83, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 84, - "componentType": 5126, - "count": 24, - "max": [0.3125, 3.125, 0.625], - "min": [0.1875, 2.75, -0.0625], - "type": "VEC3" - }, - { - "bufferView": 85, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 86, - "componentType": 5126, - "count": 24, - "max": [0.859130859375, 0.609130859375], - "min": [0.453369140625, 0.343994140625], - "type": "VEC2" - }, - { - "bufferView": 87, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 88, - "componentType": 5126, - "count": 24, - "max": [0.1875, 3.125, 0.625], - "min": [0.0625, 2.8125, -0.0625], - "type": "VEC3" - }, - { - "bufferView": 89, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 90, - "componentType": 5126, - "count": 24, - "max": [0.640380859375, 0.859130859375], - "min": [0.234619140625, 0.609619140625], - "type": "VEC2" - }, - { - "bufferView": 91, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 92, - "componentType": 5126, - "count": 24, - "max": [-0.0625, 3.125, 0.625], - "min": [-0.1875, 2.625, 0.5625], - "type": "VEC3" - }, - { - "bufferView": 93, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 94, - "componentType": 5126, - "count": 24, - "max": [0.093505859375, 0.656005859375], - "min": [0.000244140625, 0.515869140625], - "type": "VEC2" - }, - { - "bufferView": 95, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 96, - "componentType": 5126, - "count": 24, - "max": [0.0625, 3.125, 0.625], - "min": [-0.0625, 2.6875, 0.5625], - "type": "VEC3" - }, - { - "bufferView": 97, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 98, - "componentType": 5126, - "count": 24, - "max": [0.562255859375, 0.734130859375], - "min": [0.468994140625, 0.609619140625], - "type": "VEC2" - }, - { - "bufferView": 99, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 100, - "componentType": 5126, - "count": 24, - "max": [0.3125, 2.6875, -0.0625], - "min": [0.25, 2.625, -0.125], - "type": "VEC3" - }, - { - "bufferView": 101, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 102, - "componentType": 5126, - "count": 24, - "max": [0.593505859375, 0.031005859375], - "min": [0.531494140625, 0.000244140625], - "type": "VEC2" - }, - { - "bufferView": 103, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 104, - "componentType": 5126, - "count": 24, - "max": [-0.3125, 3.125, 0.25], - "min": [-0.34375, 2.75, 0.125], - "type": "VEC3" - }, - { - "bufferView": 105, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 106, - "componentType": 5126, - "count": 24, - "max": [0.687744140625, 0.234130859375], - "min": [0.625244140625, 0.109619140625], - "type": "VEC2" - }, - { - "bufferView": 107, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 108, - "componentType": 5126, - "count": 24, - "max": [-0.0625, 3.125, 0.59375], - "min": [-0.1875, 2.625, 0.5625], - "type": "VEC3" - }, - { - "bufferView": 109, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 110, - "componentType": 5126, - "count": 24, - "max": [0.077880859375, 0.656005859375], - "min": [0.015380859375, 0.531005859375], - "type": "VEC2" - }, - { - "bufferView": 111, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 112, - "componentType": 5126, - "count": 24, - "max": [0.0625, 3.125, 0.59375], - "min": [-0.0625, 2.6875, 0.5625], - "type": "VEC3" - }, - { - "bufferView": 113, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 114, - "componentType": 5126, - "count": 24, - "max": [0.546630859375, 0.734130859375], - "min": [0.484130859375, 0.624755859375], - "type": "VEC2" - }, - { - "bufferView": 115, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 116, - "componentType": 5126, - "count": 24, - "max": [-0.3125, 3.125, 0.375], - "min": [-0.34375, 2.6875, 0.25], - "type": "VEC3" - }, - { - "bufferView": 117, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 118, - "componentType": 5126, - "count": 24, - "max": [0.625244140625, 0.140380859375], - "min": [0.562744140625, 0.000244140625], - "type": "VEC2" - }, - { - "bufferView": 119, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 120, - "componentType": 5126, - "count": 24, - "max": [-0.3125, 3.125, 0.5], - "min": [-0.34375, 2.625, 0.375], - "type": "VEC3" - }, - { - "bufferView": 121, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 122, - "componentType": 5126, - "count": 24, - "max": [0.531494140625, 0.156005859375], - "min": [0.468994140625, 0.000244140625], - "type": "VEC2" - }, - { - "bufferView": 123, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 124, - "componentType": 5126, - "count": 24, - "max": [-0.3125, 3.125, 0.5625], - "min": [-0.34375, 2.75, 0.5], - "type": "VEC3" - }, - { - "bufferView": 125, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 126, - "componentType": 5126, - "count": 24, - "max": [0.125244140625, 0.624755859375], - "min": [0.093994140625, 0.515869140625], - "type": "VEC2" - }, - { - "bufferView": 127, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 128, - "componentType": 5126, - "count": 24, - "max": [0.34375, 3.125, 0.5625], - "min": [0.3125, 2.75, 0.5], - "type": "VEC3" - }, - { - "bufferView": 129, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 130, - "componentType": 5126, - "count": 24, - "max": [0.609619140625, 0.452880859375], - "min": [0.578369140625, 0.343994140625], - "type": "VEC2" - }, - { - "bufferView": 131, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 132, - "componentType": 5126, - "count": 24, - "max": [0.34375, 3.125, 0.5], - "min": [0.3125, 2.625, 0.375], - "type": "VEC3" - }, - { - "bufferView": 133, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 134, - "componentType": 5126, - "count": 24, - "max": [0.078369140625, 0.156005859375], - "min": [0.015869140625, 0.000244140625], - "type": "VEC2" - }, - { - "bufferView": 135, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 136, - "componentType": 5126, - "count": 24, - "max": [0.34375, 3.125, 0.375], - "min": [0.3125, 2.6875, 0.25], - "type": "VEC3" - }, - { - "bufferView": 137, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 138, - "componentType": 5126, - "count": 24, - "max": [0.312744140625, 0.656005859375], - "min": [0.250244140625, 0.515869140625], - "type": "VEC2" - }, - { - "bufferView": 139, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 140, - "componentType": 5126, - "count": 24, - "max": [0.34375, 3.125, 0.25], - "min": [0.3125, 2.75, 0.125], - "type": "VEC3" - }, - { - "bufferView": 141, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 142, - "componentType": 5126, - "count": 24, - "max": [0.640869140625, 0.734130859375], - "min": [0.578369140625, 0.609619140625], - "type": "VEC2" - }, - { - "bufferView": 143, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 144, - "componentType": 5126, - "count": 24, - "max": [0.1875, 3.125, 0.59375], - "min": [0.0625, 2.8125, 0.5625], - "type": "VEC3" - }, - { - "bufferView": 145, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 146, - "componentType": 5126, - "count": 24, - "max": [0.468505859375, 0.859130859375], - "min": [0.406005859375, 0.781005859375], - "type": "VEC2" - }, - { - "bufferView": 147, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 148, - "componentType": 5126, - "count": 24, - "max": [-0.0625, 3.125, 0.59375], - "min": [-0.1875, 2.75, 0.5625], - "type": "VEC3" - }, - { - "bufferView": 149, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 150, - "componentType": 5126, - "count": 24, - "max": [0.077880859375, 0.624755859375], - "min": [0.015380859375, 0.531005859375], - "type": "VEC2" - }, - { - "bufferView": 151, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 152, - "componentType": 5126, - "count": 24, - "max": [0.0625, 3.125, 0.59375], - "min": [-0.0625, 2.6875, 0.5625], - "type": "VEC3" - }, - { - "bufferView": 153, - "componentType": 5126, - "count": 24, - "max": [1, 1, 1], - "min": [-1, -1, -1], - "type": "VEC3" - }, - { - "bufferView": 154, - "componentType": 5126, - "count": 24, - "max": [0.546630859375, 0.734130859375], - "min": [0.484130859375, 0.624755859375], - "type": "VEC2" - }, - { - "bufferView": 155, - "componentType": 5123, - "count": 36, - "max": [23], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 156, - "componentType": 5126, - "count": 1, - "max": [0], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 157, - "componentType": 5126, - "count": 1, - "max": [ - 0.21005281805992126, 0.15687181055545807, -0.034167107194662094, - 0.9644177556037903 - ], - "min": [ - 0.21005281805992126, 0.15687181055545807, -0.034167107194662094, - 0.9644177556037903 - ], - "type": "VEC4" - }, - { - "bufferView": 158, - "componentType": 5126, - "count": 1, - "max": [0], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 159, - "componentType": 5126, - "count": 1, - "max": [0, 0.1875, -0.375], - "min": [0, 0.1875, -0.375], - "type": "VEC3" - }, - { - "bufferView": 160, - "componentType": 5126, - "count": 3, - "max": [0.5], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 161, - "componentType": 5126, - "count": 3, - "max": [1, 1.2000000476837158, 1], - "min": [1, 1, 1], - "type": "VEC3" - }, - { - "bufferView": 162, - "componentType": 5126, - "count": 1, - "max": [0], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 163, - "componentType": 5126, - "count": 1, - "max": [0.003973680082708597, -2.25, 0.1755291074514389], - "min": [0.003973680082708597, -2.25, 0.1755291074514389], - "type": "VEC3" - }, - { - "bufferView": 164, - "componentType": 5126, - "count": 1, - "max": [0], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 165, - "componentType": 5126, - "count": 1, - "max": [1, 1, 1], - "min": [1, 1, 1], - "type": "VEC3" - }, - { - "bufferView": 166, - "componentType": 5126, - "count": 4, - "max": [1.25], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 167, - "componentType": 5126, - "count": 4, - "max": [0, -0.9375, 0.375], - "min": [0, -2.25, 0.375], - "type": "VEC3" - }, - { - "bufferView": 168, - "componentType": 5126, - "count": 5, - "max": [1.25], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 169, - "componentType": 5126, - "count": 5, - "max": [1.2000000476837158, 1.2000000476837158, 1.2000000476837158], - "min": [1, 1, 1], - "type": "VEC3" - }, - { - "bufferView": 170, - "componentType": 5126, - "count": 4, - "max": [1], - "min": [0], - "type": "SCALAR" - }, - { - "bufferView": 171, - "componentType": 5126, - "count": 4, - "max": [0, -1.125, 0.375], - "min": [0, -2.4375, 0.375], - "type": "VEC3" - } - ], - "materials": [ - { - "pbrMetallicRoughness": { - "metallicFactor": 0, - "roughnessFactor": 1, - "baseColorTexture": { "index": 0 } - }, - "alphaMode": "MASK", - "alphaCutoff": 0.05, - "doubleSided": true - } - ], - "textures": [{ "sampler": 0, "source": 0, "name": "texture.png" }], - "samplers": [ - { "magFilter": 9728, "minFilter": 9728, "wrapS": 33071, "wrapT": 33071 } - ], - "images": [ - { - "mimeType": "image/png", - "uri": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAB3FJREFUeF7tmk1sE0cUx//rXWI7STEhgQYn0AIiKQqigCCqmgtRK7UVlbhwrNpTDj312FMl1FsvXHugJ8699IDUQ6u0B1CVVqEfpG3SAhWEEEIgMTJ2Arve6o152/F47J21N8FpmIu96+eZ937zZubNm7FyuZw/PT2NE0f24seffgWcF0BleHjY8h/f8+nd8OtvWOPj4774IaTsxa0wEfF717HTkNulNuT25O9qhfQbv2P9jBrVCFkM4NjhA5icnMTg0PFAMVn+u0tXjdowBfDy6PsWVciGypWfOH5YPOqMc1eWhPF2wq3Qx2rbIeqLWgR1r+RUVahWFDeAl0beMdKVdWMDCcDqah7JZGeFzi0JIIlEhZGrKAXPpgAKxRW0p1NgAx/lbgkPiBUANyJrS+SJNDVOxdQDXsHt0J4lEDIAap8Kt8UVyO8ZwNzNG37JyyFhZ7CrtzNoq2EPYJfSNb704D76+vrWBcDS/Tz6+nsq4K0LAHapVgRwZz6PkrsiwMgesLA4h5092Xg8gFwqk3G07jc1NQOekeMcAtTNvSNvBb1NhpJRrx4aqPAA9T2tCv39+zA7e13IsW70veEhoANwe3YRXd2daBaAtb23wiD/wXzwrAPweGUlMEo2tt6yGDrhhAhYDEA2VgRETws1Ts+PVitn9Fr18iTIxntOmxC13cfikyEwALVXKSCS65aDHnmybrTHVb2NI7xmSTf6/5Mjh4K/bnoAPDTluKBRsPy/DeUBBCDhpMTs3xJD4GD+b3j7BmDBwvSC12xnaP8vD4Ffrs4Ey19LADhg34bVvYemNsws/BfmxkliXQCoO7gb2B1qw4AzB2zfjXff+0jInjt3LvQ/OoHho0Pi9cSVKdB3+pTL6Oio2LDRO1oxaFWKq/epTjEHNATAngO6+2FZFkqLN8UwmPGyWgj16g8DwB6g7ljjgmAMYGxsDK5b3oNfvngB1CW0YPvwMXLqA/HecRycP3++CoIOAPe2DoD8jgDQ5Neb7Y1l+1sVB/wzfkGb6WlzbGHkjFvu1dzcLXx89lOsPnHxw1dfoBzg+CLAee30GJJbHHx29hNksjQnAGKIAHji6ifHHUffNhoy7e2WAECRqbxfic0DHi0v+PeufF2lzBbHhr1cgN+Zxp/ow8jQfgy/eQrFYhHff/m51P/AyTMfIp1OY+Kbi7g0dQ0HaUucL8Lb1q4FYGo8KTX1+2/I9mafAQA7gYQHWPliYCw60/AcC/bWnXBzd8W4tzMvws3Nww5kyywJXMmxmvYAAtCWSsW2+zMeAmJM2wkxyZEnyMZzfF+uzBLDwMvdRcLzBTAv0y7mBtervzSGeQJ55kKynI+gXaC8a41tCExMTIg5gLPCnBRVs8LypsRo8IYIsQFcr2wQJWkoQcuZYl4C6VPNHjerS5AVVgHQM5WKdJlnAwkfsJSe9Wx4vgfbsiHGgkGpBYCM54yvSbK2WU8IzQqr+cKHywW4JReZrVthl0oouBaKK3l0pDuQSj4FZABAFWFj5fZqAYhzVxgZgOcCs3cW0ZZKoKOjA0sPFtGWTGNXT0+1Z0QAoQNAGSE58cnVxQ5AlxWmxtTMcKBAwQclTF2sCuO7tnUjtcXo4KgmkkgACj4oPhBTcIMHIqyIRUnRXM7Vkial5ufmq7O1MQOQs79yZ9T0gDgBzF7/w+c9tto9pIyarl6LIUDtcCfIACgCVFPlzfZ4VRzw8+QlX00xsxDtv6nI2dq1mARlAGSgekgqK70uAHjbSZ8UhQUAYlwGZaPI1anwhEfPulR9HGO+ygMmLn9bDoSenshy0MHZYPW3CBO7sShnoanNQqE8mYpTKeWkaE0AxB3hGVvdoGDsQ4D0kDMu9My5efWSQpgcX66gOgYHB8U9A7lQeC231yAD47+ZwArSTbVqlc/nVW+Rz+wpdpcB6CD87wCQkbpwlWdyHVT6jWIP9TDWuFsjCMbiAfIFBd18USuKrAWH3uvW9wh2hYpyABULALmyKAAIDN3ioKLe56H4Qj0JDrUqggAvq9k9e0PvDVXNAWqPypWpAOQARtWPlzN6z3E7y3CcEcEmY1E+bKXj9iPHRqIDUONvPqOnylQA8lGVrKHO9XQrSK1VhVcK9ZZYPXljQopghVFMj6KwjszuKnoqAJZXt6z1AJisNjoA3Hbc5wMWRYLyBQTOvUUBQDc2wm5rhAVcJtkf3e7UZKKr5x0W5wTDghddAPOw2FYV7OgCH5PgRwZQa2XR7U6bBhBl7NQKhEzqiOIB6wogTDET4+rJmLg2xwZ0+kNL58LCsjZBo7tM1bQHrAcA+cJlraWQj7/o91oZKgJgMt9E6bTQvUCUynSytfKKaixAz0NDA8J4KrpkqLxt5rY2hAfo8orNKt5sxwQA13IIcLJTdw12UwBgt/7r2s2q2L9lADTjSmvpPawXzSFOqis0pm/UjqYqXmsAvKPc1ACoZ3VheaM9rv6vpT2AY4NNC4ASJwf272ldD4jLDZ9lPU0NgWepeFxtPwcQF8mNWs9zD9ioPReX3s89IC6SG7WeTe8B/wIU6U+MsfeQpAAAAABJRU5ErkJggg==" - } - ], - "meshes": [ - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 0, "NORMAL": 1, "TEXCOORD_0": 2 }, - "indices": 3, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 4, "NORMAL": 5, "TEXCOORD_0": 6 }, - "indices": 7, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 8, "NORMAL": 9, "TEXCOORD_0": 10 }, - "indices": 11, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 12, "NORMAL": 13, "TEXCOORD_0": 14 }, - "indices": 15, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 16, "NORMAL": 17, "TEXCOORD_0": 18 }, - "indices": 19, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 20, "NORMAL": 21, "TEXCOORD_0": 22 }, - "indices": 23, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 24, "NORMAL": 25, "TEXCOORD_0": 26 }, - "indices": 27, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 28, "NORMAL": 29, "TEXCOORD_0": 30 }, - "indices": 31, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 32, "NORMAL": 33, "TEXCOORD_0": 34 }, - "indices": 35, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 36, "NORMAL": 37, "TEXCOORD_0": 38 }, - "indices": 39, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 40, "NORMAL": 41, "TEXCOORD_0": 42 }, - "indices": 43, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 44, "NORMAL": 45, "TEXCOORD_0": 46 }, - "indices": 47, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 48, "NORMAL": 49, "TEXCOORD_0": 50 }, - "indices": 51, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 52, "NORMAL": 53, "TEXCOORD_0": 54 }, - "indices": 55, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 56, "NORMAL": 57, "TEXCOORD_0": 58 }, - "indices": 59, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 60, "NORMAL": 61, "TEXCOORD_0": 62 }, - "indices": 63, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 64, "NORMAL": 65, "TEXCOORD_0": 66 }, - "indices": 67, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 68, "NORMAL": 69, "TEXCOORD_0": 70 }, - "indices": 71, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 72, "NORMAL": 73, "TEXCOORD_0": 74 }, - "indices": 75, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 76, "NORMAL": 77, "TEXCOORD_0": 78 }, - "indices": 79, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 80, "NORMAL": 81, "TEXCOORD_0": 82 }, - "indices": 83, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 84, "NORMAL": 85, "TEXCOORD_0": 86 }, - "indices": 87, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 88, "NORMAL": 89, "TEXCOORD_0": 90 }, - "indices": 91, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 92, "NORMAL": 93, "TEXCOORD_0": 94 }, - "indices": 95, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 96, "NORMAL": 97, "TEXCOORD_0": 98 }, - "indices": 99, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 100, "NORMAL": 101, "TEXCOORD_0": 102 }, - "indices": 103, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 104, "NORMAL": 105, "TEXCOORD_0": 106 }, - "indices": 107, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 108, "NORMAL": 109, "TEXCOORD_0": 110 }, - "indices": 111, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 112, "NORMAL": 113, "TEXCOORD_0": 114 }, - "indices": 115, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 116, "NORMAL": 117, "TEXCOORD_0": 118 }, - "indices": 119, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 120, "NORMAL": 121, "TEXCOORD_0": 122 }, - "indices": 123, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 124, "NORMAL": 125, "TEXCOORD_0": 126 }, - "indices": 127, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 128, "NORMAL": 129, "TEXCOORD_0": 130 }, - "indices": 131, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 132, "NORMAL": 133, "TEXCOORD_0": 134 }, - "indices": 135, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 136, "NORMAL": 137, "TEXCOORD_0": 138 }, - "indices": 139, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 140, "NORMAL": 141, "TEXCOORD_0": 142 }, - "indices": 143, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 144, "NORMAL": 145, "TEXCOORD_0": 146 }, - "indices": 147, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 148, "NORMAL": 149, "TEXCOORD_0": 150 }, - "indices": 151, - "material": 0 - } - ] - }, - { - "primitives": [ - { - "mode": 4, - "attributes": { "POSITION": 152, "NORMAL": 153, "TEXCOORD_0": 154 }, - "indices": 155, - "material": 0 - } - ] - } - ], - "animations": [ - { - "name": "animation.roll", - "samplers": [{ "input": 156, "output": 157, "interpolation": "LINEAR" }], - "channels": [ - { "sampler": 0, "target": { "node": 42, "path": "rotation" } } - ] - }, - { - "name": "animation.split", - "samplers": [ - { "input": 158, "output": 159, "interpolation": "LINEAR" }, - { "input": 160, "output": 161, "interpolation": "LINEAR" }, - { "input": 162, "output": 163, "interpolation": "LINEAR" }, - { "input": 164, "output": 165, "interpolation": "LINEAR" }, - { "input": 166, "output": 167, "interpolation": "LINEAR" }, - { "input": 168, "output": 169, "interpolation": "LINEAR" }, - { "input": 170, "output": 171, "interpolation": "LINEAR" } - ], - "channels": [ - { "sampler": 0, "target": { "node": 42, "path": "translation" } }, - { "sampler": 1, "target": { "node": 42, "path": "scale" } }, - { "sampler": 2, "target": { "node": 1, "path": "translation" } }, - { "sampler": 3, "target": { "node": 1, "path": "scale" } }, - { "sampler": 4, "target": { "node": 27, "path": "translation" } }, - { "sampler": 5, "target": { "node": 27, "path": "scale" } }, - { "sampler": 6, "target": { "node": 41, "path": "translation" } } - ] - } - ] -} diff --git a/public/discovery/rss.xml b/public/discovery/rss.xml deleted file mode 100644 index bb44a0e..0000000 --- a/public/discovery/rss.xml +++ /dev/null @@ -1,28 +0,0 @@ - - - - Keyyard — Discovery - https://keyyard.xyz - Discover Keyyard's works - Fri, 31 Oct 2025 00:00:00 GMT - https://validator.w3.org/feed/docs/rss2.html - https://github.com/jpmonette/feed - en - © 2025 Keyyard - - - <![CDATA[Absolute Guns 3.3D Addon]]> - https://keyyard.xyz/discovery/absolute-guns-3-3d - https://keyyard.xyz/discovery/absolute-guns-3-3d - Fri, 31 Oct 2025 00:00:00 GMT - - - - <![CDATA[Tree Capitator & Vein Miner Addon]]> - https://keyyard.xyz/discovery/tcvm - https://keyyard.xyz/discovery/tcvm - Mon, 06 Oct 2025 00:00:00 GMT - - - - \ No newline at end of file diff --git a/public/discovery/tcvm/banner.webp b/public/discovery/tcvm/banner.webp deleted file mode 100644 index 08ecc90..0000000 Binary files a/public/discovery/tcvm/banner.webp and /dev/null differ diff --git a/public/discovery/tcvm/banner2.webp b/public/discovery/tcvm/banner2.webp deleted file mode 100644 index 8a0c4bb..0000000 Binary files a/public/discovery/tcvm/banner2.webp and /dev/null differ diff --git a/public/discovery/tcvm/crafting.webp b/public/discovery/tcvm/crafting.webp deleted file mode 100644 index 900edc7..0000000 Binary files a/public/discovery/tcvm/crafting.webp and /dev/null differ diff --git a/public/discovery/tcvm/fortune.gif b/public/discovery/tcvm/fortune.gif deleted file mode 100644 index 8a7b4cf..0000000 Binary files a/public/discovery/tcvm/fortune.gif and /dev/null differ diff --git a/public/discovery/tcvm/img1.webp b/public/discovery/tcvm/img1.webp deleted file mode 100644 index c5b28b8..0000000 Binary files a/public/discovery/tcvm/img1.webp and /dev/null differ diff --git a/public/discovery/tcvm/img2.webp b/public/discovery/tcvm/img2.webp deleted file mode 100644 index 32df28c..0000000 Binary files a/public/discovery/tcvm/img2.webp and /dev/null differ diff --git a/public/discovery/tcvm/img3.webp b/public/discovery/tcvm/img3.webp deleted file mode 100644 index 4d3931b..0000000 Binary files a/public/discovery/tcvm/img3.webp and /dev/null differ diff --git a/public/discovery/tcvm/img4.webp b/public/discovery/tcvm/img4.webp deleted file mode 100644 index f1dde74..0000000 Binary files a/public/discovery/tcvm/img4.webp and /dev/null differ diff --git a/public/discovery/tcvm/img5.webp b/public/discovery/tcvm/img5.webp deleted file mode 100644 index a2c41a8..0000000 Binary files a/public/discovery/tcvm/img5.webp and /dev/null differ diff --git a/public/discovery/tcvm/img6.webp b/public/discovery/tcvm/img6.webp deleted file mode 100644 index a6a4116..0000000 Binary files a/public/discovery/tcvm/img6.webp and /dev/null differ diff --git a/public/discovery/tcvm/silk_touch.gif b/public/discovery/tcvm/silk_touch.gif deleted file mode 100644 index 189310a..0000000 Binary files a/public/discovery/tcvm/silk_touch.gif and /dev/null differ diff --git a/public/discovery/tcvm/tcvm610.mcaddon b/public/discovery/tcvm/tcvm610.mcaddon deleted file mode 100644 index cf363fe..0000000 Binary files a/public/discovery/tcvm/tcvm610.mcaddon and /dev/null differ diff --git a/public/discovery/tcvm/tcvmOptv620.mcpack b/public/discovery/tcvm/tcvmOptv620.mcpack deleted file mode 100644 index 67a8246..0000000 Binary files a/public/discovery/tcvm/tcvmOptv620.mcpack and /dev/null differ diff --git a/public/image-placeholder.svg b/public/image-placeholder.svg deleted file mode 100644 index 4a085d6..0000000 --- a/public/image-placeholder.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - Image Not Available - - diff --git a/public/img1.png b/public/img1.png deleted file mode 100644 index ef14ed9..0000000 Binary files a/public/img1.png and /dev/null differ diff --git a/public/img2.png b/public/img2.png deleted file mode 100644 index a1cd409..0000000 Binary files a/public/img2.png and /dev/null differ diff --git a/public/img3.png b/public/img3.png deleted file mode 100644 index a11af4a..0000000 Binary files a/public/img3.png and /dev/null differ diff --git a/public/img4.png b/public/img4.png deleted file mode 100644 index 09ad6a3..0000000 Binary files a/public/img4.png and /dev/null differ diff --git a/public/img5.png b/public/img5.png deleted file mode 100644 index b109452..0000000 Binary files a/public/img5.png and /dev/null differ diff --git a/public/keyyard.png b/public/keyyard.png deleted file mode 100644 index 492219e..0000000 Binary files a/public/keyyard.png and /dev/null differ diff --git a/scripts/optimize_to_webp.py b/scripts/optimize_to_webp.py deleted file mode 100644 index 4018ae7..0000000 --- a/scripts/optimize_to_webp.py +++ /dev/null @@ -1,19 +0,0 @@ -import os -from PIL import Image - -root_dir = os.path.join('public', 'discovery') -# Convert only these source formats (skip existing .webp files) -exts = ('.jpg', '.jpeg', '.png') - -for subdir, _, files in os.walk(root_dir): - for file in files: - if file.lower().endswith(exts): - file_path = os.path.join(subdir, file) - webp_path = os.path.splitext(file_path)[0] + '.webp' - try: - with Image.open(file_path) as img: - img.save(webp_path, 'webp', quality=65, method=6) - os.remove(file_path) - print(f"Converted and replaced: {file_path} -> {webp_path}") - except Exception as e: - print(f"Failed to process {file_path}: {e}") diff --git a/scripts/resize.py b/scripts/resize.py deleted file mode 100644 index 8f5e989..0000000 --- a/scripts/resize.py +++ /dev/null @@ -1,49 +0,0 @@ -import os -from PIL import Image - -# Max dimension for resizing -MAX_DIM = 700 # Change to 500 for smaller, 700 for larger - -# Root directory to search for images -root_dir = os.path.join('public', 'discovery') -exts = ('.jpg', '.jpeg', '.png', '.webp') - -format_map = { - '.jpg': 'JPEG', - '.jpeg': 'JPEG', - '.png': 'PNG', - '.webp': 'WEBP', -} - -for subdir, _, files in os.walk(root_dir): - for file in files: - if not file.lower().endswith(exts): - continue - - file_path = os.path.join(subdir, file) - _, ext = os.path.splitext(file) - ext = ext.lower() - target_format = format_map.get(ext, None) - - try: - with Image.open(file_path) as img: - width, height = img.size - # Only resize if either dimension is greater than MAX_DIM - if max(width, height) > MAX_DIM: - if width >= height: - new_width = MAX_DIM - new_height = int(height * (MAX_DIM / width)) - else: - new_height = MAX_DIM - new_width = int(width * (MAX_DIM / height)) - # Convert mode if saving to JPEG - if target_format == 'JPEG' and img.mode != 'RGB': - img = img.convert('RGB') - img = img.resize((new_width, new_height), Image.LANCZOS) - img.save(file_path, format=target_format) - print(f"Resized {file_path} from {width}x{height} to {new_width}x{new_height}") - else: - # No resize necessary; skip re-saving to avoid altering files - print(f"No resize needed: {file_path} ({width}x{height})") - except Exception as e: - print(f"Failed to process {file_path}: {e}") diff --git a/src/App.css b/src/App.css deleted file mode 100644 index f634137..0000000 --- a/src/App.css +++ /dev/null @@ -1,10 +0,0 @@ -#root { - width: 100vw; - height: 100vh; -} - -canvas { - width: 100%; - height: 100%; - display: absolute ; -} \ No newline at end of file diff --git a/src/carousel.css b/src/carousel.css deleted file mode 100644 index 5347e7c..0000000 --- a/src/carousel.css +++ /dev/null @@ -1,28 +0,0 @@ -.carousel .slide { - background: none; - border: none; - z-index: 1; -} - -.carousel .control-arrow, -.carousel.carousel-slider .control-arrow { - opacity: 0.5; - z-index: 10; -} - -.carousel .control-arrow:hover, -.carousel.carousel-slider .control-arrow:hover { - opacity: 1; -} - -.carousel .control-dots .dot { - display: none; -} - -.carousel .control-dots .dot.selected { - display: none; -} - -.carousel .thumb { - border-color: #171717; -} diff --git a/src/components/DiscoveryButton.tsx b/src/components/DiscoveryButton.tsx deleted file mode 100644 index 3ac2026..0000000 --- a/src/components/DiscoveryButton.tsx +++ /dev/null @@ -1,23 +0,0 @@ -export default function DiscoveryButton() { - return ( - - Compass - - Discover Keyyard - - - ); -} diff --git a/src/components/discovery/DiscoveryCard.tsx b/src/components/discovery/DiscoveryCard.tsx deleted file mode 100644 index ac6b644..0000000 --- a/src/components/discovery/DiscoveryCard.tsx +++ /dev/null @@ -1,55 +0,0 @@ -import Link from "next/link"; -import React, { memo } from "react"; -import { PostMeta } from "../../utils/markdown"; -import SafeImage from "../ui/SafeImage"; - -type Props = { - post: PostMeta; -}; - -const DiscoveryCard = memo(({ post }: Props) => { - return ( -
- - {/* Fixed-height image area so cards align evenly */} -
- {post.image ? ( - - ) : ( -
- No Image -
- )} -
- -
-

- {post.title} -

-

{post.description}

-
- {post.tags?.map((t) => ( - - {t} - - ))} -
-
- -
- ); -}); - -DiscoveryCard.displayName = "DiscoveryCard"; - -export default DiscoveryCard; diff --git a/src/components/discovery/DiscoveryList.tsx b/src/components/discovery/DiscoveryList.tsx deleted file mode 100644 index 11dddc2..0000000 --- a/src/components/discovery/DiscoveryList.tsx +++ /dev/null @@ -1,35 +0,0 @@ -import React, { useMemo } from "react"; -import { PostMeta } from "../../utils/markdown"; -import DiscoveryCard from "./DiscoveryCard"; - -type Props = { - posts: PostMeta[]; -}; - -export default function DiscoveryList({ posts }: Props) { - if (!posts.length) - return ( -

- No posts yet, come back later? -

- ); - - // Ensure posts are sorted by date (newest first). Memoize to avoid re-sorting on every render. - const sorted = useMemo(() => { - return [...posts].sort((a, b) => { - const da = a.date ? new Date(a.date).getTime() : 0; - const db = b.date ? new Date(b.date).getTime() : 0; - return db - da; //db - da for descending order (newest first) - }); - }, [posts]); - - return ( -
- {sorted.map((p) => ( -
- -
- ))} -
- ); -} diff --git a/src/components/layout/Background.tsx b/src/components/layout/Background.tsx deleted file mode 100644 index fba9d4e..0000000 --- a/src/components/layout/Background.tsx +++ /dev/null @@ -1,9 +0,0 @@ -import { memo } from "react"; - -const Bg = memo(() => { - return
; -}); - -Bg.displayName = "Background"; - -export default Bg; diff --git a/src/components/layout/MyHead.tsx b/src/components/layout/MyHead.tsx deleted file mode 100644 index ca2c402..0000000 --- a/src/components/layout/MyHead.tsx +++ /dev/null @@ -1,88 +0,0 @@ -import { useGLTF } from "@react-three/drei"; -import { Canvas, useFrame } from "@react-three/fiber"; -import { easing } from "maath"; -import { useEffect, useRef, useState, memo } from "react"; -import { Object3D, LoopOnce, AnimationMixer } from "three"; -function Model({ onLoaded }: { onLoaded: () => void }) { - const gltf = useGLTF("/assets/myHead.gltf"); - const { scene, animations } = gltf; - const head = useRef(scene); - const [cursor, setCursor] = useState({ x: 0, y: 0 }); - const [dummy] = useState(() => new Object3D()); - const mixer = useRef(null); - - // Call onLoaded when scene is available - useEffect(() => { - if (scene) onLoaded(); - }, [scene, onLoaded]); - - useEffect(() => { - const handleMouseMove = (event: MouseEvent) => { - setCursor({ - x: (event.clientX / window.innerWidth) * 2 - 1, - y: -(event.clientY / window.innerHeight) * 2 + 0.5, - }); - }; - const handleClick = () => { - mixer.current = new AnimationMixer(scene); - const action = mixer.current.clipAction(animations[1]); - action.setLoop(LoopOnce, 1); // Set the loop mode to play once - action.clampWhenFinished = true; // Stop at the last frame - action.play(); - }; - window.addEventListener("mousemove", handleMouseMove); - window.addEventListener("click", handleClick); - return () => { - window.removeEventListener("mousemove", handleMouseMove); - window.removeEventListener("click", handleClick); - }; - }, [scene, animations]); - - useEffect(() => { - if (head.current) { - head.current.rotation.set(0, Math.PI, 0); - head.current.position.set(0, -0.5, 0); - } - }, []); - - useFrame((state, delta) => { - // Update animation mixer if active - if (mixer.current) { - mixer.current.update(delta); - } - - // Update head rotation to follow cursor - if (head.current) { - dummy.lookAt(cursor.x, cursor.y, 1); - dummy.rotation.y += Math.PI; - easing.dampQ(head.current.quaternion, dummy.quaternion, 0.15, delta); - } - }); - - return ; -} - -const HeadRender = memo(() => { - const [loading, setLoading] = useState(true); - return ( -
- {loading && ( -
-
-
- )} - - - setLoading(false)} /> - -
- ); -}); - -HeadRender.displayName = "HeadRender"; - -export default HeadRender; diff --git a/src/components/layout/Nav.tsx b/src/components/layout/Nav.tsx deleted file mode 100644 index ad9cfcd..0000000 --- a/src/components/layout/Nav.tsx +++ /dev/null @@ -1,74 +0,0 @@ -import { useEffect, useState } from "react"; -import { motion } from "framer-motion"; -import { navs } from "../../data"; - -const Nav = () => { - const [activeSection, setActiveSection] = useState(""); - - useEffect(() => { - const handleHashChange = () => { - const hash = window.location.hash.substring(1); - const element = document.getElementById(hash); - if (element) { - element.scrollIntoView({ behavior: "smooth" }); - setActiveSection(hash); - } - }; - - window.addEventListener("hashchange", handleHashChange); - return () => { - window.removeEventListener("hashchange", handleHashChange); - }; - }, [setActiveSection]); - - useEffect(() => { - const sections = document.querySelectorAll("section"); - const observer = new IntersectionObserver( - (entries) => { - entries.forEach((entry) => { - if (!entry.isIntersecting) return; - // Only update if the active section has actually changed - const newSection = entry.target.id; - setActiveSection((prev) => (prev !== newSection ? newSection : prev)); - }); - }, - { threshold: 0.01 }, - ); - - sections.forEach((section) => { - observer.observe(section); - }); - - return () => { - sections.forEach((section) => { - observer.unobserve(section); - }); - }; - }, []); - - return ( - - ); -}; - -export default Nav; diff --git a/src/components/layout/index.ts b/src/components/layout/index.ts deleted file mode 100644 index 1e8292c..0000000 --- a/src/components/layout/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -// Layout components barrel exports -export { default as Nav } from './Nav'; -export { default as Background } from './Background'; -export { default as MyHead } from './MyHead'; diff --git a/src/components/sections/About.tsx b/src/components/sections/About.tsx deleted file mode 100644 index d57f599..0000000 --- a/src/components/sections/About.tsx +++ /dev/null @@ -1,53 +0,0 @@ -import React from "react"; -import { motion } from "framer-motion"; -import { aboutMeData, techStackData } from "../../data"; - -const About = () => { - return ( -
-

About

-
- -
- {aboutMeData.map((item, index) => ( -

- {item.icon} {item.text} -

- ))} -
-
- -
-

Tech Stack

-
- {techStackData.map((stack, index) => ( - -

{stack.title}

-
    - {stack.items.map((item, idx) => ( -
  • - {"label" in item && {item.label}:} {item.value} -
  • - ))} -
-
- ))} -
-
-
-
- ); -}; - -export default About; \ No newline at end of file diff --git a/src/components/sections/Contact.tsx b/src/components/sections/Contact.tsx deleted file mode 100644 index 333d793..0000000 --- a/src/components/sections/Contact.tsx +++ /dev/null @@ -1,226 +0,0 @@ -import React, { useCallback, useMemo, memo } from "react"; -import toast, { Toaster } from "react-hot-toast"; - -interface ContactLink { - icon: JSX.Element; - platform: string; - handle: string; - copyText?: string; - url?: string; - action: "copy" | "link"; -} - -const Contact = memo(() => { - const copyToClipboard = useCallback((text: string, platform: string) => { - navigator.clipboard - .writeText(text) - .then(() => { - toast.success(`${platform} copied to clipboard!`, { - duration: 2000, - position: "top-left", - style: { - background: "var(--color-surface)", - color: "var(--color-text-primary)", - border: "1px solid var(--color-secondary)", - }, - }); - }) - .catch(() => { - toast.error("Failed to copy to clipboard", { - duration: 2000, - position: "top-left", - }); - }); - }, []); - - const contactLinks = useMemo( - () => [ - { - icon: ( - - - - - ), - platform: "Work Email", - handle: "contact@keyyard.xyz", - copyText: "contact@keyyard.xyz", - action: "copy", - }, - { - icon: ( - - - - - ), - platform: "Personal", - handle: "keyyard8888@gmail.com", - copyText: "keyyard8888@gmail.com", - action: "copy", - }, - - { - icon: ( - - ), - platform: "Discord", - handle: "keyyard", - copyText: "keyyard", - action: "copy", - }, - { - icon: ( - - ), - platform: "GitHub", - handle: "github.com/keyyard", - url: "https://github.com/keyyard", - action: "link", - }, - { - icon: ( - - ), - platform: "X (Twitter)", - handle: "@keyyard", - url: "https://twitter.com/keyyard", - action: "link", - }, - { - icon: ( - - ), - platform: "YouTube", - handle: "@Keyyard", - url: "https://youtube.com/c/keyyard", - action: "link", - }, - ], - [], - ); - - const handleContactClick = useCallback( - (link: ContactLink) => { - if (link.action === "copy" && link.copyText) { - copyToClipboard(link.copyText, link.platform); - } else if (link.action === "link" && link.url) { - window.open(link.url, "_blank", "noopener,noreferrer"); - } - }, - [copyToClipboard], - ); - - return ( -
- -
-

Let's Connect

-

- I'm open to collabs, freelance, or just chatting. -

-

- click to copy or visit my profiles -

-
- {contactLinks.map((link, index) => ( -
handleContactClick(link)} - className="contact-link" - style={{ cursor: "pointer" }} - > - {link.icon} - {link.platform} - {link.handle} -
- ))} -
-
- -
- Copyright © 2025 Keyyard -
-
- ); -}); - -Contact.displayName = "Contact"; - -export default Contact; diff --git a/src/components/sections/Experiences.tsx b/src/components/sections/Experiences.tsx deleted file mode 100644 index 233eb59..0000000 --- a/src/components/sections/Experiences.tsx +++ /dev/null @@ -1,157 +0,0 @@ -import { motion } from "framer-motion"; -import { useEffect, useState, useCallback, useRef, memo } from "react"; -import { useInView } from "react-intersection-observer"; -import { experiences } from "../../data"; - -const Experiences = memo(() => { - const [selectedExperience, setSelectedExperience] = useState(experiences[0]); - const [resolution, setResolution] = useState(0); - const timeoutIdRef = useRef(); - - useEffect(() => { - if (typeof window !== "undefined") { - setResolution(window.innerWidth); - - const handleResize = () => { - // Debounce resize event to prevent excessive re-renders - if (timeoutIdRef.current) { - clearTimeout(timeoutIdRef.current); - } - timeoutIdRef.current = setTimeout(() => { - setResolution(window.innerWidth); - }, 150); - }; - - window.addEventListener("resize", handleResize); - return () => { - if (timeoutIdRef.current) { - clearTimeout(timeoutIdRef.current); - } - window.removeEventListener("resize", handleResize); - }; - } - }, []); - - const handleExperienceClick = useCallback( - (exp: (typeof experiences)[number]) => { - setSelectedExperience(exp); - }, - [], - ); - - const { ref: sectionRef, inView: sectionInView } = useInView({ - triggerOnce: true, - threshold: 0.01, - }); - - return ( -
-

Experiences

-
-
- {experiences.map((exp, index) => ( - handleExperienceClick(exp)} - whileHover={{ scale: 1.02 }} - whileTap={{ scale: 0.98 }} - ref={sectionRef} - > -

- {exp.title} -

-

- - {exp.company_name} - -

-
- ))} - {resolution <= 1024 && selectedExperience && ( - -

{selectedExperience.title}

-

- - {selectedExperience.company_name} - -

-

{selectedExperience.date}

-
    - {selectedExperience.details.map((detail, i) => ( -
  • - {detail} -
  • - ))} -
-
- )} -
-
- {resolution > 1024 && selectedExperience && ( - -

{selectedExperience.title}

-

- - {selectedExperience.company_name} - -

-

{selectedExperience.date}

-
    - {selectedExperience.details.map((detail, i) => ( -
  • - {detail} -
  • - ))} -
-
- )} -
-
-
- ); -}); - -Experiences.displayName = "Experiences"; - -export default Experiences; diff --git a/src/components/sections/Hero.tsx b/src/components/sections/Hero.tsx deleted file mode 100644 index c8d5163..0000000 --- a/src/components/sections/Hero.tsx +++ /dev/null @@ -1,87 +0,0 @@ -import { motion } from "framer-motion"; -import dynamic from "next/dynamic"; -import { useCallback, memo } from "react"; -import { introductionText } from "../../data"; -import Bg from "../layout/Background"; - -const HeadRender = dynamic(() => import("../layout/MyHead"), { - ssr: false, - loading: () =>
, -}); - -const Hero = memo(() => { - const scrollToProjects = useCallback(() => { - const projectsSection = document.getElementById("projects"); - projectsSection?.scrollIntoView({ behavior: "smooth" }); - }, []); - - const scrollToContact = useCallback(() => { - const contactSection = document.getElementById("contact"); - contactSection?.scrollIntoView({ behavior: "smooth" }); - }, []); - - return ( -
- -
- Keyyard -

- Keyyard -

-

- Minecraft Add-on Developer & Fullstack Developer -

-
- - - -
- ); -}); - -Hero.displayName = "Hero"; - -export { Hero }; diff --git a/src/components/sections/MinecraftProjects.tsx b/src/components/sections/MinecraftProjects.tsx deleted file mode 100644 index d854e4c..0000000 --- a/src/components/sections/MinecraftProjects.tsx +++ /dev/null @@ -1,109 +0,0 @@ -import { useState, useEffect } from "react"; -import { motion } from "framer-motion"; -import { mcProjects } from "../../data"; -import { Suspense, lazy } from "react"; - -const SafeImage = lazy(() => import("../ui/SafeImage")); -const SafeCarousel = lazy(() => import("../ui/SafeCarousel")); - -const MinecraftProjects = () => { - const [loading, setLoading] = useState(true); - useEffect(() => { - const timer = setTimeout(() => setLoading(false), 600); - return () => clearTimeout(timer); - }, []); - const skeletons = Array.from({ length: 5 }); - return ( -
-

Minecraft Projects

- - Download counts are aggregated from multiple sources. - -
- {loading - ? skeletons.map((_, i) => ( -
-
-
-
-
-
-
-
-
-
-
- )) - : mcProjects.map((proj, index) => ( -
- -

- {proj.title} - {proj.downloads && ( - - } - > - - - )} -

-

{proj.short_info}

- - } - > - - -
- {proj.links && - proj.links.map((linkObj, i) => ( - - {linkObj.name} - - ))} -
-
-
- ))} - -

This list only includes some of my projects.

-
-
-
- ); -}; - -export default MinecraftProjects; diff --git a/src/components/sections/Projects.tsx b/src/components/sections/Projects.tsx deleted file mode 100644 index ada67cb..0000000 --- a/src/components/sections/Projects.tsx +++ /dev/null @@ -1,332 +0,0 @@ -import { useState, useEffect, useCallback, memo } from "react"; -import { motion, AnimatePresence } from "framer-motion"; -import { Projects } from "../../data"; -import { Suspense, lazy } from "react"; - -const SafeImage = lazy(() => import("../ui/SafeImage")); - -type ProjectType = (typeof Projects)[number]; - -const ProjectsSection = memo(() => { - const [loading, setLoading] = useState(true); - const [selectedProject, setSelectedProject] = useState( - null, - ); - - useEffect(() => { - const timer = setTimeout(() => setLoading(false), 600); - return () => clearTimeout(timer); - }, []); - const skeletons = Array.from({ length: 3 }); - - const openModal = useCallback( - (proj: ProjectType) => setSelectedProject(proj), - [], - ); - const closeModal = useCallback(() => setSelectedProject(null), []); - - return ( -
-

Projects

- - Download counts are aggregated from multiple sources. - -
- {loading - ? skeletons.map((_, i) => ( -
-
-
-
-
-
-
-
-
-
-
-
- )) - : Projects.map((proj, index) => ( - openModal(proj)} - > - {/* Background Image */} -
- {/* Content */} -
- {/* Project Icon */} -
- {proj.icon && ( - - } - > - - - )} -
- {/* Project Info */} -
-
-

- {proj.title} -

- {proj.status && ( - - {proj.status} - - )} - {proj.featured && ( - - ⭐ - - )} -
-

- {proj.short_info} -

-

- {proj.description} -

- {proj.tags && proj.tags.length > 0 && ( -
- {proj.tags.map((tag: string, tagIndex: number) => ( - - {tag} - - ))} -
- )} -
-
- - ))} - - This list only includes some of my projects. - -
- - {/* Modal */} - - {selectedProject && ( - - e.stopPropagation()} - > - - {/* Modal Header */} -
- {/* Project Icon in Modal */} -
- {selectedProject.icon && ( - - } - > - - - )} -
-
-
-

- {selectedProject.title} -

- {/* Status Badge */} - {selectedProject.status && ( - - {selectedProject.status} - - )} - {/* Featured Badge */} - {selectedProject.featured && ( - - ⭐ Featured - - )} -
-

{selectedProject.short_info}

- {/* Tags in Modal */} - {selectedProject.tags && selectedProject.tags.length > 0 && ( -
- {selectedProject.tags.map( - (tag: string, tagIndex: number) => ( - - {tag} - - ), - )} -
- )} -
-
- {/* Modal Content */} -
-

- {selectedProject.description} -

- - {/* Image Gallery */} - {selectedProject.imgs && selectedProject.imgs.length > 0 && ( -
- {selectedProject.imgs.map( - (img: string, imgIndex: number) => ( -
- - } - > - - -
- ), - )} -
- )} - - {/* Links */} - {selectedProject.links && selectedProject.links.length > 0 && ( -
- {selectedProject.links.map((linkObj: any, i: number) => ( - - {linkObj.name} - - - - - ))} -
- )} -
-
-
- )} -
-
- ); -}); - -ProjectsSection.displayName = "ProjectsSection"; - -export default ProjectsSection; diff --git a/src/components/sections/index.ts b/src/components/sections/index.ts deleted file mode 100644 index b4dac00..0000000 --- a/src/components/sections/index.ts +++ /dev/null @@ -1,7 +0,0 @@ -// Page sections barrel exports -export { Hero } from './Hero'; -export { default as About } from './About'; -export { default as Experiences } from './Experiences'; -export { default as Projects } from './Projects'; -export { default as MinecraftProjects } from './MinecraftProjects'; -export { default as Contact } from './Contact'; diff --git a/src/components/ui/SafeCarousel.tsx b/src/components/ui/SafeCarousel.tsx deleted file mode 100644 index 5199368..0000000 --- a/src/components/ui/SafeCarousel.tsx +++ /dev/null @@ -1,74 +0,0 @@ -import React, { useState, useEffect, memo } from "react"; -import { Carousel } from "react-responsive-carousel"; -import SafeImage from "./SafeImage"; -import { filterWorkingImages } from "../../utils/imageUtils"; - -interface SafeCarouselProps { - images: string[]; - alt: string; - className?: string; -} - -const SafeCarousel: React.FC = memo( - ({ images, alt, className = "" }) => { - const [workingImages, setWorkingImages] = useState(images); - const [isLoading, setIsLoading] = useState(true); - - useEffect(() => { - const checkImages = async () => { - setIsLoading(true); - // For now, just use all images and let SafeImage handle errors - // In production, you might want to preload and filter - setWorkingImages(images); - setIsLoading(false); - }; - - checkImages(); - }, [images]); - - if (isLoading) { - return ( -
-
Loading images...
-
- ); - } - - if (workingImages.length === 0) { - return ( -
-
No images available
-
- ); - } - - return ( - 1} - > - {workingImages.map((img, imgIndex) => ( -
- -
- ))} -
- ); - }, -); - -SafeCarousel.displayName = "SafeCarousel"; - -export default SafeCarousel; diff --git a/src/components/ui/SafeImage.tsx b/src/components/ui/SafeImage.tsx deleted file mode 100644 index 78dbefd..0000000 --- a/src/components/ui/SafeImage.tsx +++ /dev/null @@ -1,51 +0,0 @@ -import React, { useState, memo } from "react"; - -interface SafeImageProps { - src: string; - alt: string; - className?: string; - fallbackSrc?: string; - onError?: () => void; - showPlaceholderOnError?: boolean; -} - -const SafeImage: React.FC = memo( - ({ - src, - alt, - className = "", - fallbackSrc = "/image-placeholder.svg", - onError, - showPlaceholderOnError = true, - }) => { - const [imgSrc, setImgSrc] = useState(src); - const [hasError, setHasError] = useState(false); - - const handleError = () => { - if (!hasError) { - setHasError(true); - if (showPlaceholderOnError && fallbackSrc) { - setImgSrc(fallbackSrc); - } - // Only log warning, don't spam console - console.warn(`Failed to load image: ${src}`); - if (onError) { - onError(); - } - } - }; - - // Don't render anything if there's an error and no fallback should be shown - if (hasError && !showPlaceholderOnError) { - return null; - } - - return ( - {alt} - ); - }, -); - -SafeImage.displayName = "SafeImage"; - -export default SafeImage; diff --git a/src/components/ui/index.ts b/src/components/ui/index.ts deleted file mode 100644 index 8fbf553..0000000 --- a/src/components/ui/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -// UI components barrel exports -export { default as SafeCarousel } from './SafeCarousel'; -export { default as SafeImage } from './SafeImage'; diff --git a/src/data.ts b/src/data.ts deleted file mode 100644 index 87cc19a..0000000 --- a/src/data.ts +++ /dev/null @@ -1,568 +0,0 @@ -const navs = [ - { - name: "Hero", - link: "/#hero", - sectionId: "hero", - }, - { - name: "About", - link: "/#about", - sectionId: "about", - }, - { - name: "Experiences", - link: "/#experiences", - sectionId: "experiences", - }, - { - name: "Projects", - link: "/#projects", - sectionId: "projects", - }, - { - name: "Contact", - link: "/#contact", - sectionId: "contact", - }, -]; - -const experiences = [ - { - title: "Legendary Creator", - company_name: "MCPEDL", - company_url: "https://mcpedl.com/user/keyyard/", - date: "Feb 2018 - Present", - details: [ - "Architected Tree Capitator and Vein Miner with optimized algorithms, proving my ability to create solutions that scale to millions of users.", - "Dominated the addon market in 2018-2019 with Redstone Mechanic, demonstrating my expertise in creating trend-setting content.", - "Co-founded and launched Actual Guns addon, establishing one of the most successful Minecraft Bedrock projects with 3M+ downloads.", - ], - }, - { - title: "Official Microsoft Partner", - company_name: "G2crafted | Official Minecraft Marketplace", - company_url: "https://www.bedrockexplorer.com/@g2crafted", - date: "Aug 2021 - 2023", - details: [ - "Established Keyyard Studio as a trusted brand, building credibility that attracts high-value partnerships.", - "Delivered premium-quality content that consistently exceeded Microsoft's strict quality standards.", - "Mastered end-to-end project management, ensuring every deadline is met while maintaining exceptional quality standards.", - ], - }, - { - title: "Contract Developer", - company_name: "Giggle Block Studios Ltd | Official Minecraft Marketplace", - company_url: "https://www.youtube.com/@GiggleBlockStudios", - date: "Apr 2022 - Jan 2023", - details: [ - "Delivered complex entity systems and gameplay mechanics that directly increased player engagement and retention.", - "Optimized animations and animation controllers for smooth and engaging user experiences.", - ], - }, - { - title: "Contract Developer", - company_name: "MELONBP | Official Minecraft Marketplace", - company_url: "https://www.melonbp.com/", - date: "Mar 2023 - Jul 2024", - details: [ - "Engineered sophisticated AI behaviors that created more immersive gameplay experiences, resulting in higher player satisfaction scores.", - "Pioneered innovative custom mechanics that differentiated client projects from competitors in the marketplace.", - ], - }, - { - title: "Senior Developer", - company_name: "Fire Games | Official Minecraft Marketplace", - company_url: "https://www.bedrockexplorer.com/@firegames", - date: "Jul 2024 - February 2025", - details: [ - "Leveraged advanced JavaScript and TypeScript to create high-performance systems that handle complex algorithms seamlessly.", - "Transformed player experiences through cutting-edge gameplay features, directly contributing to increased user engagement.", - "Built scalable, maintainable codebases that reduce long-term maintenance costs and enable rapid feature development.", - "Collaborated with PrestonPlayz (millions of subscribers), delivering content that meets the highest industry standards.", - ], - }, - { - title: "Development Infrastructure Specialist & Developer", - company_name: "OASIS | Official Minecraft Marketplace", - company_url: "https://www.oasis-team.com/", - date: "April 2025 - September 2025", - details: [ - "Architecting next-generation scripting solutions that give clients a competitive edge in the marketplace.", - "Creating immersive gameplay systems that drive player retention and monetization for client projects.", - "Building enterprise-level infrastructure that scales effortlessly while maintaining peak performance.", - "Developing proprietary development tools that accelerate project delivery and boost development efficiency by 50%.", - "Designing engagement-focused gameplay mechanics that consistently outperform industry benchmarks.", - ], - }, - { - title: "Organization Member & Project Lead", - company_name: "Bedrock OSS", - company_url: "https://github.com/Bedrock-OSS/", - date: "June 2025 - Present", - details: [ - "Contributing to the development of open-source projects, collaborating with fellow developers to create cutting-edge solutions.", - "Served as a Wiki Contributor, creating and editing content for the knowledge-sharing platform dedicated to Minecraft Bedrock Add-Ons.", - ], - }, - { - title: "Developer", - company_name: "Mushco", - company_url: "https://www.mushco.games/", - date: "July 2025 - Present", - details: [ - "Create and maintain high-quality Minecraft DLC* content that meets the highest standards of quality and performance.", - "DLC*: Unlike typical Minecraft Marketplace contents, DLC contents are usually content that collaborate with other brands, games, movies,.. Like Moana DLC, Sonic DLC,..", - ], - }, -]; - -const mcProjects = [ - { - title: "Tree Capitator and Vein Miner Addon", - short_info: "Community Project", - description: - "Designed an optimized scripting system that accelerates resource gathering. Features dynamic block breaking, enchantment support, and durability tracking, improving vanilla gameplay with minified performance loss.", - links: [ - { - name: "Github", - link: "https://github.com/Keyyard/Minecraft-Tree-Capitator-and-Vein-Miner-Addon", - }, - { - name: "MCPEDL", - link: "https://mcpedl.com/tree-capacitor-addon-lumberjack/", - }, - ], - downloads: "2.0M+", - imgs: [ - "/assets/mcProjs/tc.webp", - "/assets/mcProjs/tc/maxresdefault.webp", - ], - }, - { - title: "Scary Myth Mobs", - short_info: "Official Minecraft Marketplace Project", - description: - "Created unique gameplay elements, including custom weapons and deep-driven horror mechanics. Developed scripting for jump scares and advanced weapons with math formulas.", - links: [ - { - name: "Minecraft Marketplace", - link: "https://www.minecraft.net/en-us/marketplace/pdp?id=aa1a855c-628e-48f2-bfdb-174bb25c45ab", - }, - ], - imgs: [ - "/assets/mcProjs/smm.webp", - "/assets/mcProjs/smm/fg_screenshot_0.webp", - "/assets/mcProjs/smm/fg_screenshot_1.webp", - "/assets/mcProjs/smm/fg_screenshot_2.webp", - ], - }, - { - title: "Dynamic Torchlighting", - short_info: "Community Project", - description: - "Implemented real-time dynamic lighting for torches, allowing off-hand illumination. Optimized for performance while maintaining a seamless experience.", - links: [ - { - name: "Github", - link: "https://github.com/Keyyard/dynamic-torchlight", - }, - { - name: "MCPEDL", - link: "https://mcpedl.com/dynamic-torchlight-addon/", - }, - { - name: "CurseForge", - link: "https://www.curseforge.com/minecraft-bedrock/addons/dynamic-torch-by-keyyard", - }, - ], - imgs: [ - "/assets/mcProjs/torch/torch.gif", - "/assets/mcProjs/torch/torch2.gif", - ], - }, - { - title: "Portal Guns", - short_info: "Community Project", - description: - "Developed a custom teleportation system inspired by Portal, allowing instant travel between two points using interactive gun mechanics.", - links: [ - { - name: "Github", - link: "https://github.com/Keyyard/PortalGunsAddon-ScriptingAPI", - }, - ], - imgs: ["/assets/mcProjs/portal/portal-appears.gif"], - }, - { - title: "Weapon Combiner", - short_info: "Community Project", - description: - "Developed a custom crafting block that allows players to fuse weapons with unique abilities. Introduced new enchanting table with randomized enchantments and skill-based upgrades, enhancing weapon customization.", - links: [ - { - name: "MCPEDL", - link: "https://mcpedl.com/weapon-combiner/", - }, - { - name: "CurseForge", - link: "https://www.curseforge.com/minecraft-bedrock/addons/weapon-combiner", - }, - ], - imgs: [ - "/assets/mcProjs/wc/keyart.webp", - "/assets/mcProjs/wc/wc1.webp", - "/assets/mcProjs/wc/wc2.webp", - ], - }, - { - title: "Actual Guns MCBE", - short_info: "Community Project", - description: - "Help creating the add-on in early stages with UI & Gun Shooting mechanic via Animation Controller & Snowball run identifer, and later on, the project was taken over by Azoz and Jun.", - links: [ - { - name: "MCPEDL", - link: "https://mcpedl.com/actual-guns-addon/", - }, - ], - downloads: "3.0M+", - imgs: [ - "/assets/mcProjs/ag/GWFjLdgWgAAVYUq.webp", - "/assets/mcProjs/ag/GLZezFubUAA4E5O.webp", - "/assets/mcProjs/ag/GDl2vZhXQAAU-8H.webp", - ], - }, - { - title: "Trains (CRAFTABLE)", - short_info: "Official Minecraft Marketplace Project", - description: - "Designed a fully functional train system with attachable carts. Developed animation controllers and entity mechanics to ensure seamless movement and interaction.", - links: [ - { - name: "Minecraft Marketplace", - link: "https://www.minecraft.net/en-us/marketplace/pdp?id=8313ab50-e5e6-4eef-81ce-9aba7c65b200", - }, - ], - imgs: [ - "/assets/mcProjs/train/Trains_Thumbnail_0.webp", - "/assets/mcProjs/train/Trains_MarketingScreenshot_0.webp", - "/assets/mcProjs/train/Trains_MarketingScreenshot_1.webp", - "/assets/mcProjs/train/Trains_MarketingScreenshot_2.webp", - ], - }, - { - title: "One Block Extra", - short_info: "Official Minecraft Marketplace Project", - description: - "Led the development of custom entities, weapons, and boss fights in an engaging One Block survival experience. Engineered mechanics and scripted immersive player interactions.", - links: [ - { - name: "Minecraft Marketplace", - link: "https://www.minecraft.net/en-us/marketplace/pdp?id=2d374bf8-38c5-4bce-966e-8b25e2ae6263", - }, - ], - imgs: [ - "/assets/mcProjs/obe/One_Block_Thumbnail_0.webp", - "/assets/mcProjs/obe/One_Block_Screenshot_0.webp", - "/assets/mcProjs/obe/One_Block_Screenshot_2.webp", - "/assets/mcProjs/obe/One_Block_Screenshot_3.webp", - ], - }, - { - title: "Crossbow Expansion", - short_info: "Official Minecraft Marketplace Project", - description: - "Craft the most overpowered crossbows in Minecraft! Perfect for survival, PvP, hunting, and anything else your mind can think of! Features Auto, Modified, Lighting, TNT, Ender, Apocalyptic, and Fire Crossbows. All craftable with much more!", - links: [ - { - name: "Minecraft Marketplace", - link: "https://www.minecraft.net/en-us/marketplace/pdp?id=735e4932-4817-4bc7-860d-6738413aa9a6", - }, - ], - imgs: [ - "/assets/mcProjs/cbe/Thumbnail_0.webp", - "/assets/mcProjs/cbe/Screenshot_1.webp", - "/assets/mcProjs/cbe/Screenshot_2.webp", - "/assets/mcProjs/cbe/Screenshot_3.webp", - "/assets/mcProjs/cbe/Screenshot_4.webp", - ], - }, - { - title: "Redstone Expansion", - short_info: "Official Minecraft Marketplace Project", - description: - "Tinker with brand new redstone tech! Features 11 NEW Redstone Components with brand new machines and mechanisms to be made. Includes interactive demonstrations at spawn to help you get started.", - links: [ - { - name: "Minecraft Marketplace", - link: "https://www.minecraft.net/en-us/marketplace/pdp?id=87346cd5-68e7-4a6d-b0fd-b935ed1c5d34", - }, - ], - imgs: [ - "/assets/mcProjs/rse/Thumbnail_0 (1).webp", - "/assets/mcProjs/rse/Screenshot_1.webp", - "/assets/mcProjs/rse/Screenshot_2.webp", - "/assets/mcProjs/rse/Screenshot_3.webp", - "/assets/mcProjs/rse/Screenshot_4.webp", - ], - }, - { - title: "TNT Experiments", - short_info: "Official Minecraft Marketplace Project", - description: - "Ready to blow your world into pieces? Explore the biggest and baddest TNT explosions in TNT EXPERIMENTS. Try and pass all 21 TNT levels and create your own TNT experiment with the Custom TNT Sandbox Editor. It's all you could ever want to fulfill your TNT needs!", - links: [ - { - name: "Minecraft Marketplace", - link: "https://www.minecraft.net/en-us/marketplace/pdp?id=85db0b50-c05d-4684-82f7-bda15541ebda", - }, - ], - imgs: [ - "assets/mcProjs/tnt/Thumbnail_0.webp", - "assets/mcProjs/tnt/Screenshot_2.webp", - "assets/mcProjs/tnt/Screenshot_3.webp", - "assets/mcProjs/tnt/Screenshot_4.webp", - "assets/mcProjs/tnt/Screenshot_0.webp", - "assets/mcProjs/tnt/Screenshot_1.webp", - ], - }, - { - title: "3D Medieval Experience", - short_info: "Official Minecraft Marketplace Project", - description: - "Step into a medieval world filled with side quests to enhance your gameplay! Features 7 3D items, medieval cannon with unique behaviors, 4 custom NPCs, and a medieval castle at spawn. Developed by Keyyard Studio in partnership with G2Crafted.", - links: [ - { - name: "Minecraft Marketplace", - link: "https://www.minecraft.net/en-us/marketplace/pdp?id=7f3ced8b-5d8c-483b-a516-05aff064231d", - }, - ], - imgs: [ - "/assets/mcProjs/3dme/g2crafted-3d-medieval-experience-thumbnail-ea2dbbec5214a3c4-800.webp", - "/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_1.webp", - "/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_2.webp", - "/assets/mcProjs/3dme/3D_Medieval_Experience_MarketingScreenshot_4.webp", - ], - }, - { - title: "Demonic Legends", - short_info: "Official Minecraft Marketplace Skin Pack", - description: - "Embrace the legend of demons! This skin pack features fun-loving and cute demon friends that aren't as scary as they seem. Features 12 devil skins with unique horn accessories. Developed by Keyyard Studio in partnership with G2Crafted.", - links: [ - { - name: "Minecraft Marketplace", - link: "https://www.minecraft.net/en-us/marketplace/pdp?id=47c862c8-98c1-497c-94a5-3959eea3fec5", - }, - ], - imgs: [ - "/assets/mcProjs/dl/Demonic_Legends_Thumbnail.webp", - ], - }, - { - title: "Fright Night", - short_info: "Official Minecraft Marketplace Skin Pack", - description: - "Suit up for the annual scare-fest Halloween with our Fright Night pack. Play as frightening characters including Clown, Demon, Ghost, Jack O' Lantern, Ogre, Vampire, Scarecrow, Skeleton, and more! Features 12 spooky skins. Developed by Keyyard Studio in partnership with G2Crafted.", - links: [ - { - name: "Minecraft Marketplace", - link: "https://www.minecraft.net/en-us/marketplace/pdp?id=7ddad910-7c39-46c0-8e6d-8ed38f870d04", - }, - ], - imgs: [ - "/assets/mcProjs/fn/FrightNight_Thumbnail.webp", - ], - }, -]; - -const Projects = [ - { - title: "Create Minecraft Bedrock CLI", - short_info: "Node Module Package", - description: - "CLI tool to create Minecraft projects workspaces with structured folders and files. It includes Microsoft's Compiler", - icon: "assets/Projs/bedrockcli/icon.webp", - links: [ - { - name: "Github", - link: "https://github.com/Keyyard/create-mc-bedrock-cli", - }, - { - name: "NPM Package", - link: "https://www.npmjs.com/package/create-mc-bedrock", - }, - { - name: "Website", - link: "https://bedrockcli.keyyard.xyz", - }, - ], - imgs: ["assets/Projs/bedrockcli/gif.gif"], - tags: ["Node.js", "CLI", "Minecraft", "Developer Tools", "Productivity"], - status: "Live", - featured: true, - }, - - { - title: "Blockception's Minecraft Bedrock Development", - short_info: "Contributed to VSCode Plugin", - description: - "An extension that provides code completion, validations, formatters, diagnostics, cheat-sheets, code-actions, creation of files, and development tools to help develop Minecraft Bedrock content.", - icon: "https://blockceptionltd.gallerycdn.vsassets.io/extensions/blockceptionltd/blockceptionvscodeminecraftbedrockdevelopmentextension/8.0.39/1749586201427/Microsoft.VisualStudio.Services.Icons.Default", - links: [ - { - name: "Github", - link: "https://github.com/Blockception/VSCode-Bedrock-Development-Extension", - }, - { - name: "VSCode Marketplace", - link: "https://marketplace.visualstudio.com/items/?itemName=BlockceptionLtd.blockceptionvscodeminecraftbedrockdevelopmentextension", - }, - ], - imgs: ["/assets/Projs/blockception/overview.gif"], - tags: [ - "TypeScript", - "VSCode", - "Minecraft", - "Developer Tools", - "Productivity", - ], - status: "Live", - featured: false, - }, - - { - title: "Bedrock Wiki", - short_info: "Contributed to Bedrock Wiki", - description: - "A knowledge-sharing website for Minecraft Bedrock Add-Ons, containing documentation, tutorials, and general how-to information.", - icon: "/assets/Projs/wiki/logo.webp", - links: [ - { - name: "Github", - link: "https://github.com/Bedrock-OSS/bedrock-wiki", - }, - { - name: "Wiki Website", - link: "https://wiki.bedrock.dev/", - }, - ], - imgs: [ - "/assets/Projs/wiki/wiki.webp", - ], - tags: ["Documentation", "Minecraft", "Community", "Education"], - status: "Live", - featured: false, - }, - { - title: "Today Notes", - short_info: "Progressive Web App Project", - description: - "Today Notes helps you manage your daily tasks effortlessly. Stay focused on what matters today, complete tasks efficiently, and boost your productivity.", - icon: "/assets/Projs/today/icon.webp", - links: [ - { - name: "Github", - link: "https://github.com/Keyyard/today-notes", - }, - { - name: "Product", - link: "https://today-notes.keyyard.xyz", - }, - ], - imgs: [ - "assets/Projs/today/4.webp", - ], - tags: ["React", "PWA", "TypeScript", "Productivity"], - status: "Inactive", - featured: false, - }, -]; - -const aboutMeData = [ - { - icon: "🔨", - text: "Developer specializing in Web, Native, and Minecraft Add-on Development.", - }, - { - icon: "🎮", - text: "Minecraft Add-on Developer (Bedrock Engine) since 2018.", - }, - { - icon: "🚀", - text: "Passionate about performance, optimizations, and scalable systems.", - }, - { - icon: "🤝", - text: "Open to collaborations on challenging projects that push technical and creative limits.", - }, -]; - -const techStackData = [ - { - title: "Programming Languages", - items: [ - { value: "TypeScript" }, - { value: "JavaScript" }, - { value: "Python" }, - ], - }, - { - title: "Frontend Development", - items: [ - { label: "Frameworks", value: "React, Next.js" }, - { label: "Styling", value: "TailwindCSS, Bootstrap" }, - { label: "Core", value: "HTML5, CSS3, Vanilla JavaScript" }, - ], - }, - { - title: "Backend & Database", - items: [ - { label: "APIs Frameworks", value: "FastAPI, Flask, Next.js" }, - { label: "Database", value: "PostgreSQL, SQLite, Prisma ORM" }, - { label: "Authentication", value: "OAuth, JWT, Clerk" }, - ], - }, - { - title: "Mobile Development", - items: [{ value: "React Native" }, { value: "Expo" }, { value: "Lynx.JS" }], - }, - { - title: "Game Development", - items: [ - { - label: "Minecraft Bedrock", - value: "Add-on Development, Scripting API", - }, - ], - }, - { - title: "Development Tools & Workflow", - items: [ - { value: "Git & GitHub" }, - { value: "VS Code Extensions" }, - { value: "CLI Development" }, - { value: "npm/Package Management" }, - ], - }, -]; - -const startYear = 2018; -const currentYear = new Date().getFullYear(); -const yearDifference = currentYear - startYear + 1; - -const introductionText = [ - "Hi, I'm Keyyard, a developer with a passion for turning creative visions into scalable digital experiences.", - `With ${yearDifference} years of expertise, I've delivered high-quality contents for big creators like Preston (30M+ subscribers), MrWoofless (1M+ subscribers), and many teams like Giggle Block Studios, FireGames, Mushco,..`, - "I specialize in Bedrock scripting, gameplay quality, and architecture, ensuring every project is optimized for performance and user engagement.", -]; - -export { - experiences, - mcProjects, - Projects, - navs, - aboutMeData, - techStackData, - introductionText, -}; diff --git a/src/index.css b/src/index.css deleted file mode 100644 index 4c02df3..0000000 --- a/src/index.css +++ /dev/null @@ -1,384 +0,0 @@ -@tailwind base; -@tailwind components; -@tailwind utilities; - -/* Design Tokens - Easy to edit fonts and colors */ -@font-face { - font-family: 'Inter'; - src: url('/assets/fonts/Inter.ttf') format('truetype'); - font-weight: 400 700; - font-display: swap; -} -@font-face { - font-family: 'Be Vietnam Pro'; - src: url('/assets/fonts/BeVietnamPro.ttf') format('truetype'); - font-weight: 400 700; - font-display: swap; -} - -:root { - /* Fonts */ - --font-primary: 'Inter', sans-serif; - --font-headings: 'Be Vietnam Pro', sans-serif; - --font-accent: 'Inter', sans-serif; - - /* Colors */ - --color-primary: #F2F7F2; - --color-secondary: #7BA47C; - --color-background: #161618; - --color-surface: #393639; - --color-surface-light: #646464; - --color-border: #84a59d; - - /* Card colors */ - --color-card-bg: #1e1e21; - --color-card-selected: #1e1c1e; - --color-card-shadow: #161618; - - /* Text colors */ - --color-text-primary: #F2F7F2; - --color-text-secondary: #d4d4d4; - --color-text-muted: #646464; - --color-text-light: #d4d4d4; - - /* Accent colors */ - --color-accent-blue: #84a59d; - --color-accent-blue-hover: #7BA47C; - - /* Highlight colors */ - --color-highlight: rgba(143, 169, 151, 0.15); - --color-text-highlight: #95c796; - - /* Base styles */ - font-family: var(--font-accent); - line-height: 1.5; - font-weight: 400; - color-scheme: light dark; - color: var(--color-primary); - background-color: var(--color-background); - font-synthesis: none; - text-rendering: optimizeLegibility; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - scroll-behavior: smooth; - scrollbar-width: thin; -} - -@layer components { - /* Section Styles */ - .section { - @apply min-h-[95vh]; - } - - .section-hero { - @apply flex flex-col items-center min-h-[860px]; - } - - /* Typography */ - .section-title { - @apply text-4xl font-semibold pt-4 text-center; - } - - .subsection-title { - @apply text-3xl font-semibold mb-2 text-center; - } - - .hero-title { - /* mobile-first: slightly smaller, center text */ - @apply relative top-0 w-full h-auto pt-4 flex justify-center bg-white bg-clip-text text-2xl md:text-4xl font-extrabold text-transparent text-center select-auto; - } - - .hero-title-blur { - /* center the blurred backdrop and scale with breakpoints */ - @apply absolute pt-4 flex justify-center border w-full md:w-auto bg-white blur-xl bg-clip-text text-2xl md:text-4xl box-content font-extrabold text-transparent text-center select-none; - left: 0; - right: 0; - margin-left: auto; - margin-right: auto; - } - - .hero-subtitle { - @apply text-center leading-3 mt-2; - } - - /* Cards */ - .card { - @apply p-6 bg-card-bg rounded-xl shadow-card-shadow drop-shadow; - } - - .card-sm { - @apply p-4 bg-card-bg rounded-lg shadow-card-shadow drop-shadow; - } - - .experience-card { - @apply mx-auto p-6 cursor-pointer border rounded-lg transition-colors; - } - - .experience-card--selected { - @apply bg-card-selected; - } - - .experience-details { - @apply mx-auto p-6 bg-black bg-opacity-20 rounded-xl shadow-card-shadow drop-shadow; - } - - /* Layout */ - .container-main { - @apply container mx-auto px-6 lg:px-20 mt-8; - } - - .grid-two-col { - @apply grid grid-cols-1 md:grid-cols-2 gap-8; - } - - .grid-experiences { - @apply p-4 grid grid-cols-1 lg:grid-cols-2 gap-4; - } - - /* Content */ - .content-text { - @apply text-lg leading-8 space-y-6; - } - - .tech-list { - @apply list-disc list-inside space-y-2 text-text-secondary; - } - - /* Interactive Elements */ - .draggable-head { - @apply flex w-[50vw] h-[70vh] absolute; - } - - .intro-text-container { - @apply flex flex-col items-center justify-items-center p-4 text-[15px]; - } - - .intro-text-content { - @apply text-start mt-32 md:mt-20; - } - - /* Hero Buttons */ - .hero-buttons { - @apply flex gap-4 mt-8 justify-center; - } - - .hero-button-primary { - background-color: var(--color-secondary); - color: var(--color-primary); - padding: 0.75rem 2rem; - border-radius: 8px; - border: none; - font-weight: 600; - font-size: 1rem; - cursor: pointer; - transition: all 0.3s ease; - box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); - } - - .hero-button-primary:hover { - background-color: var(--color-tertiary); - transform: translateY(-2px); - box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2); - } - - .hero-button-secondary { - background-color: transparent; - color: var(--color-secondary); - padding: 0.75rem 2rem; - border-radius: 8px; - border: 2px solid var(--color-secondary); - font-weight: 600; - font-size: 1rem; - cursor: pointer; - transition: all 0.3s ease; - } - - .hero-button-secondary:hover { - background-color: var(--color-secondary); - color: var(--color-primary); - transform: translateY(-2px); - } - - /* Project Cards */ - .project-card { - @apply p-3 cursor-pointer bg-black bg-opacity-20 shadow-black inset-2 shadow-lg rounded-lg overflow-hidden; - } - - .project-title { - @apply text-base font-bold flex justify-between items-center mb-1; - } - - .project-subtitle { - @apply text-xs mb-2 text-text-light; - } - - .project-description { - @apply text-xs text-ellipsis overflow-hidden leading-4 group-hover:overflow-visible group-hover:whitespace-normal line-clamp-2 h-5 text-text-light; - } - - /* Discovery-specific card tweaks: larger image area and show full text */ - .discovery-card { - @apply p-4 bg-card-bg rounded-xl shadow-card-shadow drop-shadow; - } - - .discovery-card .project-title { - @apply text-lg; - } - - .discovery-card .discovery-description { - /* override truncation from project-description */ - overflow: visible !important; - white-space: normal !important; - height: auto !important; - display: block !important; - line-height: 1.4; - color: var(--color-text-light); - } -} - -body { - @apply font-primary bg-main text-primary; - margin: 0; - /* Use normal document flow so pages and sections control their own layout. - Removing `display:flex` prevents unexpected horizontal centering and - allows content to span the available width. */ - display: block; - min-width: 320px; - min-height: 100vh; -} - -h1, -h2, -h3, -h4, -h5, -h6 { - @apply font-headings; -} - -.accent { - @apply font-accent; -} - -a { - font-weight: 500; - color: var(--color-text-secondary); - text-decoration: inherit; -} - -a:hover { - @apply text-gray-300; -} - -button { - background-color: var(--color-secondary); - color: var(--color-primary); - border-radius: 8px; - border-width: 1px; - border-color: transparent; - padding: 0.6em 1.2em; - font-size: 1em; - font-weight: 500; - font-family: inherit; - cursor: pointer; - transition: all 0.25s ease; -} - -button:hover { - background-color: var(--color-tertiary); -} - -button:focus, -button:focus-visible { - outline: 4px auto -webkit-focus-ring-color; -} - -* { - margin: 0; - padding: 0; - box-sizing: border-box; -} - -/* Contact Section */ -.contact-container { - @apply max-w-2xl mx-auto px-6; -} - -.contact-title { - @apply text-4xl font-bold mb-4; - color: var(--color-secondary); - text-align: center; -} - -.contact-subtitle { - @apply text-lg mb-8 text-center; - color: var(--color-text-secondary); -} - -.contact-links { - @apply space-y-4; -} - -.contact-link { - @apply flex items-center gap-4 p-4 rounded-lg transition-all duration-300 hover:bg-surface; - text-decoration: none; - border: 1px solid transparent; -} - -.contact-link:hover { - background-color: var(--color-surface); - border-color: var(--color-secondary); - transform: translateX(8px); -} - -.contact-icon { - @apply text-2xl w-8 flex-shrink-0; -} - -.contact-platform { - @apply font-semibold text-lg flex-shrink-0 min-w-32; - color: var(--color-text-primary); -} - -.contact-description { - @apply text-sm mb-2 text-[--color-text-secondary]; -} - -.contact-handle { - @apply text-base; - font-family: 'JetBrains Mono', monospace; -} - - /* Prose overrides for Markdown content rendered with tailwind-typography */ - .prose img { - @apply mx-auto rounded-md; - max-width: 100%; - } - - .prose a { - @apply text-accent-blue hover:underline; - } - - /* TOC styling for discovery posts */ - .toc ul { - list-style: none; - padding-left: 0; - display: flex; - gap: 1rem; - flex-wrap: wrap; - } - - .toc li { - margin: 0; - padding: 0; - } - - .toc a { - @apply text-accent-blue hover:underline; - } - -@supports (-ms-ime-align: auto) { - .icon-class { - font-size: 1rem; - } -} \ No newline at end of file diff --git a/src/main.tsx b/src/main.tsx deleted file mode 100644 index c74efca..0000000 --- a/src/main.tsx +++ /dev/null @@ -1,8 +0,0 @@ -import { createRoot } from 'react-dom/client' -import './index.css' -import App from './pages' - -createRoot(document.getElementById('root')!).render( - - -) \ No newline at end of file diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx deleted file mode 100644 index 8612bf4..0000000 --- a/src/pages/_app.tsx +++ /dev/null @@ -1,36 +0,0 @@ -import "../App.css"; -import "react-responsive-carousel/lib/styles/carousel.min.css"; -import "../carousel.css"; -import "../index.css"; -import type { AppProps } from "next/app"; -import Head from "next/head"; -import Script from "next/script"; - -function Website({ Component, pageProps }: AppProps) { - return ( - <> - - - { - 'Keyyard | Minecraft Addon Developer - Where Creativity Is Built Block by Block' - } - - {/* Google Tag Manager */} - - - - ); -} - -export default Website; diff --git a/src/pages/_document.tsx b/src/pages/_document.tsx deleted file mode 100644 index 9c00b55..0000000 --- a/src/pages/_document.tsx +++ /dev/null @@ -1,73 +0,0 @@ -import Document, { Html, Head, Main, NextScript } from "next/document"; - -class WebDocument extends Document { - render() { - return ( - - - - - {/* SEO Enhancements */} - - - - - {/* Open Graph data */} - - - - - - - - {/* Twitter Card data */} - - - - - - - {/* Favicon */} - - - - - {/* Fonts */} - {/* Fonts are now self-hosted via @font-face in index.css */} - - {/* Google Tag Manager */} -