From 6bb2875817d53263eb49263556606c6d4ef35830 Mon Sep 17 00:00:00 2001 From: kisakay Date: Sun, 18 Oct 2026 18:44:13 +0200 Subject: [PATCH] =?UTF-8?q?SurviePote=203/4:=20launcher=20(rebrand,=20sans?= =?UTF-8?q?=20RPC/news/socials,=20ic=C3=B4nes=20kisakay,=20sans=20backgrou?= =?UTF-8?q?nds)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- launcher/.github/FUNDING.yml | 3 + launcher/.github/workflows/build.yml | 38 + launcher/.gitignore | 6 + launcher/.nvmrc | 1 + launcher/LICENSE.txt | 21 + launcher/README.md | 211 + launcher/SURVIEPOTE.md | 52 + launcher/app/app.ejs | 49 + launcher/app/assets/css/launcher.css | 3968 +++++++++++ launcher/app/assets/fonts/Avenir-Black.ttf | Bin 0 -> 91016 bytes .../app/assets/fonts/Avenir-BlackOblique.ttf | Bin 0 -> 84604 bytes launcher/app/assets/fonts/Avenir-Book.ttf | Bin 0 -> 143212 bytes .../app/assets/fonts/Avenir-BookOblique.ttf | Bin 0 -> 150804 bytes launcher/app/assets/fonts/Avenir-Heavy.ttf | Bin 0 -> 134548 bytes .../app/assets/fonts/Avenir-HeavyOblique.ttf | Bin 0 -> 60008 bytes launcher/app/assets/fonts/Avenir-Light.ttf | Bin 0 -> 85100 bytes .../app/assets/fonts/Avenir-LightOblique.ttf | Bin 0 -> 73936 bytes launcher/app/assets/fonts/Avenir-Medium.ttf | Bin 0 -> 138892 bytes .../app/assets/fonts/Avenir-MediumOblique.ttf | Bin 0 -> 129120 bytes launcher/app/assets/fonts/Avenir-Oblique.ttf | Bin 0 -> 67580 bytes launcher/app/assets/fonts/Avenir-Roman.ttf | Bin 0 -> 101228 bytes launcher/app/assets/fonts/ringbearer.ttf | Bin 0 -> 107280 bytes launcher/app/assets/images/LoadingSeal.png | Bin 0 -> 249314 bytes launcher/app/assets/images/LoadingText.png | Bin 0 -> 126664 bytes launcher/app/assets/images/SealCircle.ico | Bin 0 -> 6806 bytes launcher/app/assets/images/SealCircle.png | Bin 0 -> 6784 bytes launcher/app/assets/images/icons/arrow.svg | 7 + launcher/app/assets/images/icons/discord.svg | 10 + .../app/assets/images/icons/instagram.svg | 9 + launcher/app/assets/images/icons/link.svg | 11 + launcher/app/assets/images/icons/lock.svg | 12 + .../app/assets/images/icons/microsoft.svg | 7 + launcher/app/assets/images/icons/mojang.svg | 5 + launcher/app/assets/images/icons/news.svg | 14 + launcher/app/assets/images/icons/profile.svg | 10 + launcher/app/assets/images/icons/settings.svg | 10 + .../app/assets/images/icons/sevenstar.svg | 13 + .../assets/images/icons/sevenstar_circle.svg | 14 + .../icons/sevenstar_circle_extended.svg | 8 + .../images/icons/sevenstar_circle_hole.svg | 15 + .../icons/sevenstar_circle_hole_extended.svg | 9 + .../images/icons/sevenstar_extended.svg | 7 + launcher/app/assets/images/icons/x.svg | 4 + launcher/app/assets/images/icons/youtube.svg | 10 + launcher/app/assets/images/minecraft.icns | Bin 0 -> 120723 bytes launcher/app/assets/js/authmanager.js | 425 ++ launcher/app/assets/js/configmanager.js | 793 +++ launcher/app/assets/js/discordwrapper.js | 4 + launcher/app/assets/js/distromanager.js | 18 + launcher/app/assets/js/dropinmodutil.js | 238 + launcher/app/assets/js/ipcconstants.js | 29 + launcher/app/assets/js/isdev.js | 5 + launcher/app/assets/js/langloader.js | 43 + launcher/app/assets/js/preloader.js | 67 + launcher/app/assets/js/processbuilder.js | 892 +++ launcher/app/assets/js/scripts/landing.js | 1000 +++ launcher/app/assets/js/scripts/login.js | 234 + .../app/assets/js/scripts/loginOptions.js | 50 + launcher/app/assets/js/scripts/overlay.js | 324 + launcher/app/assets/js/scripts/settings.js | 1583 +++++ launcher/app/assets/js/scripts/uibinder.js | 463 ++ launcher/app/assets/js/scripts/uicore.js | 213 + launcher/app/assets/js/scripts/welcome.js | 9 + launcher/app/assets/js/serverstatus.js | 65 + launcher/app/assets/lang/_custom.toml | 20 + launcher/app/assets/lang/en_US.toml | 344 + launcher/app/frame.ejs | 33 + launcher/app/landing.ejs | 162 + launcher/app/login.ejs | 65 + launcher/app/loginOptions.ejs | 34 + launcher/app/overlay.ejs | 41 + launcher/app/settings.ejs | 393 ++ launcher/app/waiting.ejs | 8 + launcher/app/welcome.ejs | 25 + launcher/build/icon.png | Bin 0 -> 6784 bytes launcher/dev-app-update.yml | 7 + launcher/docs/MicrosoftAuth.md | 52 + launcher/docs/distro.md | 592 ++ launcher/docs/sample_distribution.json | 1584 +++++ launcher/electron-builder.yml | 51 + launcher/eslint.config.mjs | 55 + launcher/index.js | 359 + launcher/package-lock.json | 5830 +++++++++++++++++ launcher/package.json | 51 + 84 files changed, 20685 insertions(+) create mode 100644 launcher/.github/FUNDING.yml create mode 100644 launcher/.github/workflows/build.yml create mode 100644 launcher/.gitignore create mode 100644 launcher/.nvmrc create mode 100644 launcher/LICENSE.txt create mode 100644 launcher/README.md create mode 100644 launcher/SURVIEPOTE.md create mode 100644 launcher/app/app.ejs create mode 100644 launcher/app/assets/css/launcher.css create mode 100644 launcher/app/assets/fonts/Avenir-Black.ttf create mode 100644 launcher/app/assets/fonts/Avenir-BlackOblique.ttf create mode 100644 launcher/app/assets/fonts/Avenir-Book.ttf create mode 100644 launcher/app/assets/fonts/Avenir-BookOblique.ttf create mode 100644 launcher/app/assets/fonts/Avenir-Heavy.ttf create mode 100644 launcher/app/assets/fonts/Avenir-HeavyOblique.ttf create mode 100644 launcher/app/assets/fonts/Avenir-Light.ttf create mode 100644 launcher/app/assets/fonts/Avenir-LightOblique.ttf create mode 100644 launcher/app/assets/fonts/Avenir-Medium.ttf create mode 100644 launcher/app/assets/fonts/Avenir-MediumOblique.ttf create mode 100644 launcher/app/assets/fonts/Avenir-Oblique.ttf create mode 100644 launcher/app/assets/fonts/Avenir-Roman.ttf create mode 100644 launcher/app/assets/fonts/ringbearer.ttf create mode 100644 launcher/app/assets/images/LoadingSeal.png create mode 100644 launcher/app/assets/images/LoadingText.png create mode 100644 launcher/app/assets/images/SealCircle.ico create mode 100644 launcher/app/assets/images/SealCircle.png create mode 100644 launcher/app/assets/images/icons/arrow.svg create mode 100644 launcher/app/assets/images/icons/discord.svg create mode 100644 launcher/app/assets/images/icons/instagram.svg create mode 100644 launcher/app/assets/images/icons/link.svg create mode 100644 launcher/app/assets/images/icons/lock.svg create mode 100644 launcher/app/assets/images/icons/microsoft.svg create mode 100644 launcher/app/assets/images/icons/mojang.svg create mode 100644 launcher/app/assets/images/icons/news.svg create mode 100644 launcher/app/assets/images/icons/profile.svg create mode 100644 launcher/app/assets/images/icons/settings.svg create mode 100644 launcher/app/assets/images/icons/sevenstar.svg create mode 100644 launcher/app/assets/images/icons/sevenstar_circle.svg create mode 100644 launcher/app/assets/images/icons/sevenstar_circle_extended.svg create mode 100644 launcher/app/assets/images/icons/sevenstar_circle_hole.svg create mode 100644 launcher/app/assets/images/icons/sevenstar_circle_hole_extended.svg create mode 100644 launcher/app/assets/images/icons/sevenstar_extended.svg create mode 100644 launcher/app/assets/images/icons/x.svg create mode 100644 launcher/app/assets/images/icons/youtube.svg create mode 100644 launcher/app/assets/images/minecraft.icns create mode 100644 launcher/app/assets/js/authmanager.js create mode 100644 launcher/app/assets/js/configmanager.js create mode 100644 launcher/app/assets/js/discordwrapper.js create mode 100644 launcher/app/assets/js/distromanager.js create mode 100644 launcher/app/assets/js/dropinmodutil.js create mode 100644 launcher/app/assets/js/ipcconstants.js create mode 100644 launcher/app/assets/js/isdev.js create mode 100644 launcher/app/assets/js/langloader.js create mode 100644 launcher/app/assets/js/preloader.js create mode 100644 launcher/app/assets/js/processbuilder.js create mode 100644 launcher/app/assets/js/scripts/landing.js create mode 100644 launcher/app/assets/js/scripts/login.js create mode 100644 launcher/app/assets/js/scripts/loginOptions.js create mode 100644 launcher/app/assets/js/scripts/overlay.js create mode 100644 launcher/app/assets/js/scripts/settings.js create mode 100644 launcher/app/assets/js/scripts/uibinder.js create mode 100644 launcher/app/assets/js/scripts/uicore.js create mode 100644 launcher/app/assets/js/scripts/welcome.js create mode 100644 launcher/app/assets/js/serverstatus.js create mode 100644 launcher/app/assets/lang/_custom.toml create mode 100644 launcher/app/assets/lang/en_US.toml create mode 100644 launcher/app/frame.ejs create mode 100644 launcher/app/landing.ejs create mode 100644 launcher/app/login.ejs create mode 100644 launcher/app/loginOptions.ejs create mode 100644 launcher/app/overlay.ejs create mode 100644 launcher/app/settings.ejs create mode 100644 launcher/app/waiting.ejs create mode 100644 launcher/app/welcome.ejs create mode 100644 launcher/build/icon.png create mode 100644 launcher/dev-app-update.yml create mode 100644 launcher/docs/MicrosoftAuth.md create mode 100644 launcher/docs/distro.md create mode 100644 launcher/docs/sample_distribution.json create mode 100644 launcher/electron-builder.yml create mode 100644 launcher/eslint.config.mjs create mode 100644 launcher/index.js create mode 100644 launcher/package-lock.json create mode 100644 launcher/package.json diff --git a/launcher/.github/FUNDING.yml b/launcher/.github/FUNDING.yml new file mode 100644 index 0000000..e338313 --- /dev/null +++ b/launcher/.github/FUNDING.yml @@ -0,0 +1,3 @@ +github: dscalzi +patreon: dscalzi +custom: ['https://www.paypal.me/dscalzi'] diff --git a/launcher/.github/workflows/build.yml b/launcher/.github/workflows/build.yml new file mode 100644 index 0000000..93be13c --- /dev/null +++ b/launcher/.github/workflows/build.yml @@ -0,0 +1,38 @@ +name: Build + +on: push + +jobs: + release: + runs-on: ${{ matrix.os }} + + permissions: + contents: write + + strategy: + matrix: + os: [macos-latest, ubuntu-latest, windows-latest] + + steps: + - name: Check out Git repository + uses: actions/checkout@v6 + + - name: Set up Node + uses: actions/setup-node@v6 + with: + node-version: 22 + + - name: Set up Python + uses: actions/setup-python@v6 + with: + python-version: 3.x + + - name: Install Dependencies + run: npm ci + shell: bash + + - name: Build + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: npm run dist + shell: bash \ No newline at end of file diff --git a/launcher/.gitignore b/launcher/.gitignore new file mode 100644 index 0000000..30ce193 --- /dev/null +++ b/launcher/.gitignore @@ -0,0 +1,6 @@ +/node_modules/ +/.vs/ +/.vscode/ +/target/ +/logs/ +/dist/ \ No newline at end of file diff --git a/launcher/.nvmrc b/launcher/.nvmrc new file mode 100644 index 0000000..8fdd954 --- /dev/null +++ b/launcher/.nvmrc @@ -0,0 +1 @@ +22 \ No newline at end of file diff --git a/launcher/LICENSE.txt b/launcher/LICENSE.txt new file mode 100644 index 0000000..da42510 --- /dev/null +++ b/launcher/LICENSE.txt @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2017-2026 Daniel D. Scalzi + +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/launcher/README.md b/launcher/README.md new file mode 100644 index 0000000..1b3aea4 --- /dev/null +++ b/launcher/README.md @@ -0,0 +1,211 @@ +

aventium softworks

+ +

Helios Launcher

+ +
(formerly Electron Launcher)
+ +[

gh actions](https://github.com/dscalzi/HeliosLauncher/actions) [downloads](https://github.com/dscalzi/HeliosLauncher/releases) winter-is-coming

+ +

Join modded servers without worrying about installing Java, Forge, or other mods. We'll handle that for you.

+ +![Screenshot 1](https://i.imgur.com/6o7SmH6.png) +![Screenshot 2](https://i.imgur.com/x3B34n1.png) + +## Features + +* 🔒 Full account management. + * Add multiple accounts and easily switch between them. + * Microsoft (OAuth 2.0) + Mojang (Yggdrasil) authentication fully supported. + * Credentials are never stored and transmitted directly to Mojang. +* 📂 Efficient asset management. + * Receive client updates as soon as we release them. + * Files are validated before launch. Corrupt or incorrect files will be redownloaded. +* ☕ **Automatic Java validation.** + * If you have an incompatible version of Java installed, we'll install the right one *for you*. + * You do not need to have Java installed to run the launcher. +* 📰 News feed natively built into the launcher. +* ⚙ Intuitive settings management, including a Java control panel. +* Supports all of our servers. + * Switch between server configurations with ease. + * View the player count of the selected server. +* Automatic updates. That's right, the launcher updates itself. +* View the status of Mojang's services. + +This is not an exhaustive list. Download and install the launcher to gauge all it can do! + +#### Need Help? [Check the wiki.][wiki] + +#### Like the project? Leave a ⭐ star on the repository! + +## Downloads + +You can download from [GitHub Releases](https://github.com/dscalzi/HeliosLauncher/releases) + +#### Latest Release + +[![](https://img.shields.io/github/release/dscalzi/HeliosLauncher.svg?style=flat-square)](https://github.com/dscalzi/HeliosLauncher/releases/latest) + +#### Latest Pre-Release +[![](https://img.shields.io/github/release/dscalzi/HeliosLauncher/all.svg?style=flat-square)](https://github.com/dscalzi/HeliosLauncher/releases) + +**Supported Platforms** + +If you download from the [Releases](https://github.com/dscalzi/HeliosLauncher/releases) tab, select the installer for your system. + +| Platform | File | +| -------- | ---- | +| Windows x64 | `Helios-Launcher-setup-VERSION.exe` | +| macOS x64 | `Helios-Launcher-setup-VERSION-x64.dmg` | +| macOS arm64 | `Helios-Launcher-setup-VERSION-arm64.dmg` | +| Linux x64 | `Helios-Launcher-setup-VERSION.AppImage` | + +## Console + +To open the console, use the following keybind. + +```console +ctrl + shift + i +``` + +Ensure that you have the console tab selected. Do not paste anything into the console unless you are 100% sure of what it will do. Pasting the wrong thing can expose sensitive information. + +#### Export Output to a File + +If you want to export the console output, simply right click anywhere on the console and click **Save as..** + +![console example](https://i.imgur.com/T5e73jP.png) + + +## Development + +This section details the setup of a basic developmentment environment. + +### Getting Started + +**System Requirements** + +* [Node.js][nodejs] v22 + +--- + +**Clone and Install Dependencies** + +```console +> git clone https://github.com/dscalzi/HeliosLauncher.git +> cd HeliosLauncher +> npm install +``` + +--- + +**Launch Application** + +```console +> npm start +``` + +--- + +**Build Installers** + +To build for your current platform. + +```console +> npm run dist +``` + +Build for a specific platform. + +| Platform | Command | +| ----------- | -------------------- | +| Windows x64 | `npm run dist:win` | +| macOS | `npm run dist:mac` | +| Linux x64 | `npm run dist:linux` | + +Builds for macOS may not work on Windows/Linux and vice-versa. + +--- + +### Visual Studio Code + +All development of the launcher should be done using [Visual Studio Code][vscode]. + +Paste the following into `.vscode/launch.json` + +```JSON +{ + "version": "0.2.0", + "configurations": [ + { + "name": "Debug Main Process", + "type": "node", + "request": "launch", + "cwd": "${workspaceFolder}", + "program": "${workspaceFolder}/node_modules/electron/cli.js", + "args" : ["."], + "outputCapture": "std" + }, + { + "name": "Debug Renderer Process", + "type": "chrome", + "request": "launch", + "runtimeExecutable": "${workspaceFolder}/node_modules/.bin/electron", + "windows": { + "runtimeExecutable": "${workspaceFolder}/node_modules/.bin/electron.cmd" + }, + "runtimeArgs": [ + "${workspaceFolder}/.", + "--remote-debugging-port=9222" + ], + "webRoot": "${workspaceFolder}" + } + ] +} +``` + +This adds two debug configurations. + +#### Debug Main Process + +This allows you to debug Electron's [main process][mainprocess]. You can debug scripts in the [renderer process][rendererprocess] by opening the DevTools Window. + +#### Debug Renderer Process + +This allows you to debug Electron's [renderer process][rendererprocess]. This requires you to install the [Debugger for Chrome][chromedebugger] extension. + +Note that you **cannot** open the DevTools window while using this debug configuration. Chromium only allows one debugger, opening another will crash the program. + +--- + +### Note on Third-Party Usage + +Please give credit to the original author and provide a link to the original source. This is free software, please do at least this much. + +For instructions on setting up Microsoft Authentication, see https://github.com/dscalzi/HeliosLauncher/blob/master/docs/MicrosoftAuth.md. + +--- + +## Resources + +* [Wiki][wiki] +* [Nebula (Create Distribution.json)][nebula] +* [v2 Rewrite Branch (Inactive)][v2branch] + +The best way to contact the developers is on Discord. + +[![discord](https://discordapp.com/api/guilds/211524927831015424/embed.png?style=banner3)][discord] + +--- + +### See you ingame. + + +[nodejs]: https://nodejs.org/en/ 'Node.js' +[vscode]: https://code.visualstudio.com/ 'Visual Studio Code' +[mainprocess]: https://electronjs.org/docs/tutorial/application-architecture#main-and-renderer-processes 'Main Process' +[rendererprocess]: https://electronjs.org/docs/tutorial/application-architecture#main-and-renderer-processes 'Renderer Process' +[chromedebugger]: https://marketplace.visualstudio.com/items?itemName=msjsdiag.debugger-for-chrome 'Debugger for Chrome' +[discord]: https://discord.gg/zNWUXdt 'Discord' +[wiki]: https://github.com/dscalzi/HeliosLauncher/wiki 'wiki' +[nebula]: https://github.com/dscalzi/Nebula 'dscalzi/Nebula' +[v2branch]: https://github.com/dscalzi/HeliosLauncher/tree/ts-refactor 'v2 branch' diff --git a/launcher/SURVIEPOTE.md b/launcher/SURVIEPOTE.md new file mode 100644 index 0000000..d9aaccf --- /dev/null +++ b/launcher/SURVIEPOTE.md @@ -0,0 +1,52 @@ +# SurviePote Launcher — Config + +Fork de HeliosLauncher 2.2.1, rebrandĂ© SurviePote. +`.git` d'origine supprimĂ©, historique repart de zĂ©ro dans `k/mc`. + +## IdentitĂ© appliquĂ©e + +- `package.json` : name `surviepote-launcher`, productName `SurviePote`, v1.0.0 +- `electron-builder.yml` : appId `org.surviepote.launcher`, productName `SurviePote` +- Data dir : `~/.surviepote` (ex `.helioslauncher`) +- Natives tmp : `SurviePoteNatives` (ex `WCNatives`) +- Titre : `SurviePote` (`app/assets/lang/_custom.toml`) +- Distro URL : `https://mcpv.ihorizon.org/distribution.json` (`app/assets/js/distromanager.js:7`) + +## TODO Ă  fournir (tu me donnes, je cĂąble) + +1. **Logo** : PNG 512x512 (ou ICO + PNG) → remplace `build/icon.png` + `app/assets/images/SealCircle.*` + + backgrounds optionnels dans `app/assets/images/backgrounds/` +2. **Azure Client ID (Microsoft login)** : crĂ©e app Entra ID (voir `docs/MicrosoftAuth.md`), + puis remplace `AZURE_CLIENT_ID` dans `app/assets/js/ipcconstants.js:8` + Actuel = placeholder Helios `1ce6e35a-...` (marche pour dev, Ă  changer en prod). +3. **Discord Rich Presence** : supprimĂ© (stub no-op dans `app/assets/js/discordwrapper.js`, dep `discord-rpc-patch` retirĂ©e, pas de hook dans `landing.js`). +4. **RSS News** : URL feed → `atlas/root/meta/distrometa.json` (`meta.rss`) +5. **Auto-update** : `dev-app-update.yml` pointe encore vers `dscalzi/HeliosLauncher`. + Donne-moi owner/repo (ex `k/mc-launcher-updates`) ou dis-moi si on dĂ©sactive l'auto-update. + Prod : configurer `electron-builder.yml` `publish` + signer si besoin. +6. **Distribution URL finale** : si autre que `https://mcpv.ihorizon.org/distribution.json`, + dis-moi et je change `distromanager.js`. + +## Dev + +```bash +cd launcher +node --version # v22 requis (.nvmrc) +npm install +npm start +``` + +## Build + +```bash +npm run dist:win # Windows x64 +npm run dist:mac # macOS +npm run dist:linux # Linux AppImage +# sortie dans launcher/dist/ +``` + +## Fichiers touchĂ©s par le rebrand + +- `package.json`, `electron-builder.yml`, `dev-app-update.yml` (TODO) +- `app/assets/js/distromanager.js`, `configmanager.js`, `ipcconstants.js` +- `app/assets/lang/_custom.toml` diff --git a/launcher/app/app.ejs b/launcher/app/app.ejs new file mode 100644 index 0000000..75b5ea2 --- /dev/null +++ b/launcher/app/app.ejs @@ -0,0 +1,49 @@ + + + + <%= lang('app.title') %> + + + + + + + <%- include('frame') %> +
+ <%- include('welcome') %> + <%- include('login') %> + <%- include('waiting') %> + <%- include('loginOptions') %> + <%- include('settings') %> + <%- include('landing') %> +
+ <%- include('overlay') %> +
+
+
+ + +
+
+
+ + \ No newline at end of file diff --git a/launcher/app/assets/css/launcher.css b/launcher/app/assets/css/launcher.css new file mode 100644 index 0000000..a77f734 --- /dev/null +++ b/launcher/app/assets/css/launcher.css @@ -0,0 +1,3968 @@ +/* Github Code Highlighting. */ +@import "../../../node_modules/github-syntax-dark/lib/github-dark.css"; + +/******************************************************************************* + * * + * Fonts * + * * + ******************************************************************************/ + +@font-face { + font-family: 'Avenir Book'; + src: url('../fonts/Avenir-Book.ttf'); +} + +@font-face { + font-family: 'Avenir Medium'; + src: url('../fonts/Avenir-Medium.ttf'); +} + +@font-face { + font-family: 'Ringbearer'; + src: url('../fonts/Ringbearer.ttf'); +} + +/******************************************************************************* + * * + * Element Styles * + * * + ******************************************************************************/ + +/* Reset body, html, and div presets. */ +body, html, div { + margin: 0px; + padding: 0px; +} + +/* Reset p presets. */ +p { + -webkit-margin-before: 0em; + -webkit-margin-after: 0em; +} + +/* Set default font and color. */ +body, button { + font-family: 'Avenir Book'; + color: white; +} + +/*body { + background: url('./../images/backgrounds/0.jpg') no-repeat center center fixed; + background-size: cover; +}*/ + +/******************************************************************************* + * * + * Frame Styles (frame.ejs) * + * * + ******************************************************************************/ + +/* Frame Bar */ +#frameBar { + position: relative; + z-index: 100; + display: flex; + flex-direction: column; + transition: background-color 1s ease; + /*background-color: rgba(0, 0, 0, 0.5);*/ + -webkit-user-select: none; +} + +/* Undraggable region on the top of the frame. */ +#frameResizableTop { + height: 2px; + width: 100%; + -webkit-app-region: no-drag; +} + +/* Flexbox to wrap the main frame content. */ +#frameMain { + display: flex; + height: 20px +} + +/* Undraggable region on the left and right of the frame. */ +.frameResizableVert { + width: 2px; + -webkit-app-region: no-drag; +} + +/* Main frame content for windows. */ +#frameContentWin { + display: flex; + justify-content: space-between; + width: 100%; + -webkit-app-region: drag; +} + +/* Main frame content for darwin. */ +#frameContentDarwin { + display: flex; + justify-content: flex-start; + align-items: center; + width: 100%; + -webkit-app-region: drag; +} + +/* Frame logo (windows only). */ +#frameTitleDock { + padding: 0px 10px; +} +#frameTitleText { + font-size: 14px; + font-family: 'Avenir Medium'; + letter-spacing: 0.5px; +} + +/* Windows frame button dock. */ +#frameButtonDockWin { + -webkit-app-region: no-drag !important; + position: relative; + top: -2px; + right: -2px; + height: 22px; +} +#frameButtonDockWin > .frameButton:not(:first-child) { + margin-left: -4px; +} + +/* Darwin frame button dock: NaN; */ +#frameButtonDockDarwin { + -webkit-app-region: no-drag !important; + position: relative; + top: -1px; + right: -1px; +} + +/* Windows Frame Button Styles. */ +.frameButton { + background: none; + border: none; + height: 22px; + width: 39px; + cursor: pointer; +} +.frameButton:hover, +.frameButton:focus { + background: rgba(189, 189, 189, 0.43); +} +.frameButton:active { + background: rgba(156, 156, 156, 0.43); +} +.frameButton:focus { + outline: 0px; +} + +/* Close button is red. */ +#frameButton_close:hover, +#frameButton_close:focus { + background: rgba(255, 53, 53, 0.61) !important; +} +#frameButton_close:active { + background: rgba(235, 0, 0, 0.61) !important; +} + +/* Darwin Frame Button Styles. */ +.frameButtonDarwin { + height: 12px; + width: 12px; + border-radius: 50%; + border: 0px; + margin-left: 5px; + -webkit-app-region: no-drag !important; + cursor: pointer; +} +.frameButtonDarwin:focus { + outline: 0px; +} + +#frameButtonDarwin_close { + background-color: #e74c32; +} +#frameButtonDarwin_close:hover, +#frameButtonDarwin_close:focus { + background-color: #FF9A8A; +} +#frameButtonDarwin_close:active { + background-color: #ff8d7b; +} + +#frameButtonDarwin_minimize { + background-color: #fed045; +} +#frameButtonDarwin_minimize:hover, +#frameButtonDarwin_minimize:focus { + background-color: #FFE9A9; +} +#frameButtonDarwin_minimize:active { + background-color: #ffde7b; +} + +#frameButtonDarwin_restoredown { + background-color: #96e734; +} +#frameButtonDarwin_restoredown:hover, +#frameButtonDarwin_restoredown:focus { + background-color: #D6FFA6; +} +#frameButtonDarwin_restoredown:active { + background-color: #bfff76; +} + +/******************************************************************************* + * * + * Welcome View (welcome.ejs) * + * * + ******************************************************************************/ + +#welcomeContainer { + position: relative; + display: flex; + justify-content: center; + align-items: center; + height: 100%; + width: 100%; + background: rgba(0, 0, 0, 0.50); +} + +#welcomeContent { + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + width: 50%; + top: -10%; + position: relative; +} + +/* +.cloudDiv { + position: absolute; + height: 100%; + width: 100%; + display: flex; + flex-direction: column; +} + +.cloudTop { + height: 50%; + width: 100%; + background-image: url('../images/cloudTrans.png'); + animation: clouds1 80s linear infinite; + background-size: cover; +} + +.cloudBottom { + height: 50%; + width: 100%; + background-image: url('../images/cloudTrans2.png'); + animation: clouds2 70s linear infinite; + background-size: cover; +} + +@keyframes clouds1 { + to { + background-position: 200%; + } +} +@keyframes clouds2 { + to { + background-position: 230%; + } +} +*/ + +#welcomeImageSeal { + border-radius: 50%; + border: 2px solid #cad7e1; + background: rgba(1, 2, 1, 0.5); + height: 125px; + width: 125px; + box-shadow: 0px 0px 10px 0px rgb(0, 0, 0); + margin-bottom: 5%; + margin-top: 10%; +} + +#welcomeHeader { + font-family: 'Avenir Medium'; + text-align: center; + color: white; + margin-bottom: 25px; + letter-spacing: 1px; + font-size: 20px; + text-shadow: white 0px 0px 0px; +} + +#welcomeDescription { + text-align: justify; + font-size: 13px; + font-weight: 100; + text-shadow: rgba(255, 255, 255, 0.75) 0px 0px 20px +} + +#welcomeDescCTA { + text-align: center; + font-size: 14px; + font-weight: 100; + text-shadow: rgba(255, 255, 255, 0.75) 0px 0px 20px +} + +/* Login button styles. */ +#welcomeButton { + background: none; + font-weight: bold; + letter-spacing: 2px; + border: none; + padding: 15px 5px; + margin: 10px 0px; + cursor: pointer; + position: relative; + right: -20px; + transition: 0.5s ease; + margin-top: 5%; + margin-bottom: -5%; +} +#welcomeButton:disabled { + color: rgba(255, 255, 255, 0.75); + pointer-events: none; +} +#welcomeButton:hover, +#welcomeButton:focus { + text-shadow: 0px 0px 20px #fff; + outline: none; +} +#welcomeButton:active { + color: #c7c7c7; + text-shadow: 0px 0px 20px #c7c7c7; +} +#welcomeSVG { + -webkit-transform: translate3d(0, 0, 0); + overflow: visible; + transform: rotate(90deg); + margin-left: 20px; + transition: 0.25s ease; + width: 20px; + height: 20px; +} +#welcomeButton:hover #welcomeSVG, +#welcomeButton:focus #welcomeSVG { + -webkit-filter: drop-shadow(0px 0px 2px #fff); +} +#welcomeButton:active #welcomeSVG .arrowLine { + stroke: #c7c7c7; +} +#welcomeButton:active #welcomeSVG { + -webkit-filter: drop-shadow(0px 0px 2px #c7c7c7); +} +#welcomeButton:disabled #welcomeSVG .arrowLine { + stroke: rgba(255, 255, 255, 0.75); +} + +#welcomeButtonContent { + display: flex; + align-items: center; +} + +/******************************************************************************* + * * + * Login View (login.ejs) * + * * + ******************************************************************************/ + +/* Styles for dimmer login span. */ +.loginSpanDim { + font-size: 12px; + color: #848484; + font-weight: bold; +} + +/* Main login container. */ +#loginContainer { + position: relative; + display: flex; + justify-content: center; + align-items: center; + height: 100%; + width: 100%; + transition: filter 0.25s ease; + background: rgba(0, 0, 0, 0.50); +} + +/* Login cancel button styles. */ +#loginCancelContainer { + position: absolute; + top: 5%; + right: 5%; +} + +/* Login cancel button styles. */ +#loginCancelButton { + background: none; + border: none; + outline: none; + cursor: pointer; + transition: 0.25s ease; +} +#loginCancelButton:hover #loginCancelIcon, +#loginCancelButton:hover #loginCancelText, +#loginCancelButton:focus #loginCancelIcon, +#loginCancelButton:focus #loginCancelText { + text-shadow: 0px 0px 20px white; +} +#loginCancelButton:hover #loginCancelIcon, +#loginCancelButton:focus #loginCancelIcon { + box-shadow: 0px 0px 20px white; +} +#loginCancelButton:active #loginCancelIcon, +#loginCancelButton:active #loginCancelText { + text-shadow: 0px 0px 20px rgba(255, 255, 255, 0.75); + color: rgba(255, 255, 255, 0.75); + border-color: rgba(255, 255, 255, 0.75); +} +#loginCancelButton:active #loginCancelIcon { + box-shadow: 0px 0px 20px rgba(255, 255, 255, 0.75); +} +#loginCancelButton:disabled { + pointer-events: none; +} +#loginCancelButton:disabled #loginCancelIcon, +#loginCancelButton:disabled #loginCancelText { + color: rgba(255, 255, 255, 0.75); + border-color: rgba(255, 255, 255, 0.75); +} + +/* The X in a circle icon for the cancel button. */ +#loginCancelIcon { + border-radius: 50%; + border: 1px solid white; + box-sizing: border-box; + height: 30px; + width: 30px; + font-size: 19px; + line-height: 30px; + margin: 0 auto; + margin-bottom: 5px; + transition: 0.25s ease; +} +/* Text for the login cancel button. */ +#loginCancelText { + font-size: 15px; + transition: 0.25s ease; +} + +/* Login content wrapper. */ +#loginContent { + display: flex; + justify-content: center; + align-items: center; + height: 100%; + padding: 0px 25px; +} + +/* Login form. */ +#loginForm { + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; +} + +/* Login form anchor styles. */ +#loginForm a { + font-size: 12px; + color: #848484; + font-weight: bold; + text-decoration: none; + transition: 0.25s ease; +} +#loginForm a:hover, +#loginForm a:focus { + color: #a2a2a2; + outline: none; +} +#loginForm a:active { + color: #8b8b8b; +} + +/* Logo on login form. */ +#loginImageSeal { + border-radius: 50%; + border: 2px solid #cad7e1; + background: rgba(1, 2, 1, 0.5); + height: 125px; + width: 125px; + box-shadow: 0px 0px 10px 0px rgb(0, 0, 0); + margin-bottom: 20px; +} + +/* Header on login view. */ +#loginSubheader { + font-family: 'Avenir Medium'; + margin-bottom: 25px; + font-size: 12px; + letter-spacing: 1px; + font-weight: bold; +} + +/* Container to organize login field elements. */ +.loginFieldContainer { + position: relative; + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; +} + +/* SVG icons on the login view. */ +.loginSVG { + fill: #fff; + height: 20px; + width: 20px; +} + +/* Span which displays errors related to login field content. */ +.loginErrorSpan { + font-family: 'Avenir Medium'; + font-weight: bold; + font-size: 8px; + color: #ff1b0c; + width: 100%; + text-align: right; + position: absolute; + top: 7px; + opacity: 0; + transition: 0.25s ease; +} + +.shake { + animation: shake 0.82s cubic-bezier(.36,.07,.19,.97) both; +} + +@keyframes shake { + 10%, 90% { + transform: translate3d(-1px, 0, 0); + } + + 20%, 80% { + transform: translate3d(2px, 0, 0); + } + + 30%, 50%, 70% { + transform: translate3d(-4px, 0, 0); + } + + 40%, 60% { + transform: translate3d(4px, 0, 0); + } +} + +/* Login text input styles. */ +.loginField { + font-family: 'Avenir Book'; + background: none; + border-width: 1.5px 0px 0px 0px; + border-style: solid; + width: 250px; + margin-bottom: 20px; + border-color: #fff; + color: rgba(255, 255, 255, 0.75); + font-weight: bold; + text-align: center; + box-sizing: border-box; + padding: 7.5px; + font-size: 10px; + letter-spacing: 1px; +} +.loginField:focus { + outline: none; +} +.loginField:disabled { + color: rgba(255, 255, 255, 0.50); +} +.loginField::-webkit-input-placeholder { + color: rgba(255, 255, 255, 0.75); + font-size: 10px; + letter-spacing: 1px; + text-align: center; + font-weight: bold; +} +.loginField:focus::-webkit-input-placeholder { + color: transparent; +} + +/* Add spacing between password field and options bar. */ +#labelPassword { + margin-bottom: 13px; +} + +/* Container which contains the forgot and remember options. */ +#loginOptions { + display: flex; + justify-content: space-between; + width: 100%; +} + +/* Remember option text. */ +#loginRememberText { + padding-right: 10px; + transition: 0.25s ease; +} + +/* Login button styles. */ +#loginButton { + background: none; + font-weight: bold; + letter-spacing: 2px; + border: none; + padding: 15px 5px; + margin: 10px 0px; + cursor: pointer; + position: relative; + right: -20px; + transition: 0.5s ease; +} +#loginButton:disabled { + color: rgba(255, 255, 255, 0.75); + pointer-events: none; +} +#loginButton[loading] { + color: #fff; +} +#loginButton:hover, +#loginButton:focus { + text-shadow: 0px 0px 20px #fff; + outline: none; +} +#loginButton:active { + color: #c7c7c7; + text-shadow: 0px 0px 20px #c7c7c7; +} +#loginSVG { + -webkit-transform: translate3d(0, 0, 0); + overflow: visible; + transform: rotate(90deg); + margin-left: 20px; + transition: 0.25s ease; + width: 20px; + height: 20px; +} +#loginButton:hover #loginSVG, +#loginButton:focus #loginSVG { + -webkit-filter: drop-shadow(0px 0px 2px #fff); +} +#loginButton:active #loginSVG .arrowLine { + stroke: #c7c7c7; +} +#loginButton:active #loginSVG { + -webkit-filter: drop-shadow(0px 0px 2px #c7c7c7); +} +#loginButton:disabled #loginSVG .arrowLine { + stroke: rgba(255, 255, 255, 0.75); +} + +#loginButtonContent { + display: flex; + align-items: center; +} + +#loginButton .circle-loader, +#loginButton[loading] #loginSVG { + display: none; +} +#loginButton[loading] .circle-loader, +#loginButton #loginSVG { + display: initial; +} + + +.circle-loader { + margin-left: 20px; + border: 2px solid rgba(255, 255, 255, 0.5); + border-left-color: #ffffff; + animation-name: loader-spin; + animation-duration: 1s; + animation-iteration-count: infinite; + animation-timing-function: linear; + position: relative; + display: inline-block; + vertical-align: top; + border-radius: 50%; + width: 16px; + height: 16px; +} +.load-complete { + animation: none; + border-color: #ffffff; + transition: border 500ms ease-out; +} +.checkmark { + display: none; +} +.checkmark.draw:after { + animation-duration: 800ms; + animation-timing-function: ease; + animation-name: checkmark; + transform: scaleX(-1) rotate(135deg); +} +.checkmark:after { + opacity: 1; + height: 8px; + width: 4px; + transform-origin: left top; + border-right: 2px solid #ffffff; + border-top: 2px solid #ffffff; + content: ''; + left: 2px; + top: 8px; + position: absolute; +} +@keyframes loader-spin { + 0% { + transform: rotate(0deg); + } + 100% { + transform: rotate(360deg); + } +} +@keyframes checkmark { + 0% { + height: 0; + width: 0; + opacity: 1; + } + 20% { + height: 0; + width: 4px; + opacity: 1; + } + 40% { + height: 8px; + width: 4px; + opacity: 1; + } + 100% { + height: 8px; + width: 4px; + opacity: 1; + } +} + + + +/*.spinningCircle { + margin-left: 20px; + height: 16px; + width: 16px; + border-radius: 50%; + border: 2px solid rgba(255,255,255,0); + border-top-color: #ffffff; + border-right-color: #ffffff; + border-left-color: rgba(255, 255, 255, 0.50); + border-bottom-color: rgba(255, 255, 255, 0.50); + animation: single2 4s infinite linear; +} + +@keyframes single2 { + 0% { + transform: rotate(0deg); + } + 100% { + transform: rotate(720deg); + } +}*/ + +/* Disclaimer container. */ +#loginDisclaimer { + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; +} + +/* Add spacing between register anchor and disclaimer. */ +#loginRegisterSpan { + margin-bottom: 5px; +} + +/* Disclaimer text styles. */ +.loginDisclaimerText { + font-size: 7px; + color: #848484; + font-weight: bold; + text-align: center; +} + +/* * * +* Login View | Custom Checkbox +* * */ + +/* Checkbox container. */ +#checkmarkContainer { + display: flex; + justify-content: flex-end; + align-items: center; + position: relative; + cursor: pointer; + font-size: 22px; + -webkit-user-select: none; +} + +/* Hide the default checkbox. */ +#checkmarkContainer input { + opacity: 0; + cursor: pointer; + position: absolute; +} + +/* Create a custom checkbox. */ +.loginCheckmark { + position: relative; + height: 10px; + width: 10px; + border: 1px solid #848484; + border-radius: 1px; + background: none; + transition: 0.25s ease; +} +/* On hover and focus, add a grey border color. */ +#checkmarkContainer:hover input ~ *, +#checkmarkContainer input:focus ~ * { + color: #a2a2a2; + border-color: #a2a2a2; +} +/* On keydown, darken the checkbox a bit. */ +#checkmarkContainer input:active ~ *:not(#loginRememberText) { + color: #8d8d8d; + border-color: #8d8d8d; +} +#checkmarkContainer[disabled] { + pointer-events: none; +} +/* For checked -> #checkmarkContainer input:checked ~ * */ +/* Create the checkmark/indicator (hidden when not checked). */ +.loginCheckmark:after { + content: ""; + display: none; +} +/* Show the checkmark when checked. */ +#checkmarkContainer input:checked ~ .loginCheckmark:after { + display: block; +} +/* Style the checkmark/indicator. */ +#checkmarkContainer .loginCheckmark:after { + position: absolute; + left: 3.5px; + top: 0.5px; + width: 2px; + height: 6px; + border: solid #a2a2a2; + border-width: 0 2px 2px 0; + transform: rotate(45deg); +} + +/* +#login_filter { + height: calc(100% - 22px); + width: 100%; + z-index: 9000; + position: absolute; + filter: blur(8px) contrast(0.9) brightness(1.0); + background: url('./../images/backgrounds/0.jpg') no-repeat center center fixed; + transform: scale(1.2); + background-size: cover; +} +*/ + +/******************************************************************************* + * * + * Waiting View (waiting.ejs) * + * * + ******************************************************************************/ + +#waitingContainer { + position: relative; + display: flex; + justify-content: center; + align-items: center; + height: 100%; + width: 100%; + transition: filter 0.25s ease; + background: rgba(0, 0, 0, 0.50); +} + +#waitingContent { + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + width: 50%; + top: -10%; + position: relative; +} + +.waitingSpinner:before { + transform: rotateX(60deg) rotateY(45deg) rotateZ(45deg); + animation: 750ms rotateBefore infinite linear reverse; +} +.waitingSpinner:after { + transform: rotateX(240deg) rotateY(45deg) rotateZ(45deg); + animation: 750ms rotateAfter infinite linear; +} +.waitingSpinner:before, +.waitingSpinner:after { + box-sizing: border-box; + content: ''; + display: block; + position: fixed; + top: calc(50% - 5em); + /* left: 50%; */ + margin-top: -5em; + margin-left: -5em; + width: 10em; + height: 10em; + transform-style: preserve-3d; + transform-origin: 50%; + transform: rotateY(50%); + perspective-origin: 50% 50%; + perspective: 340px; + background-size: 10em 10em; + background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjxzdmcgd2lkdGg9IjI2NnB4IiBoZWlnaHQ9IjI5N3B4IiB2aWV3Qm94PSIwIDAgMjY2IDI5NyIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWxuczpza2V0Y2g9Imh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaC9ucyI+CiAgICA8dGl0bGU+c3Bpbm5lcjwvdGl0bGU+CiAgICA8ZGVzY3JpcHRpb24+Q3JlYXRlZCB3aXRoIFNrZXRjaCAoaHR0cDovL3d3dy5ib2hlbWlhbmNvZGluZy5jb20vc2tldGNoKTwvZGVzY3JpcHRpb24+CiAgICA8ZGVmcz48L2RlZnM+CiAgICA8ZyBpZD0iUGFnZS0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiBza2V0Y2g6dHlwZT0iTVNQYWdlIj4KICAgICAgICA8cGF0aCBkPSJNMTcxLjUwNzgxMywzLjI1MDAwMDM4IEMyMjYuMjA4MTgzLDEyLjg1NzcxMTEgMjk3LjExMjcyMiw3MS40OTEyODIzIDI1MC44OTU1OTksMTA4LjQxMDE1NSBDMjE2LjU4MjAyNCwxMzUuODIwMzEgMTg2LjUyODQwNSw5Ny4wNjI0OTY0IDE1Ni44MDA3NzQsODUuNzczNDM0NiBDMTI3LjA3MzE0Myw3NC40ODQzNzIxIDc2Ljg4ODQ2MzIsODQuMjE2MTQ2MiA2MC4xMjg5MDY1LDEwOC40MTAxNTMgQy0xNS45ODA0Njg1LDIxOC4yODEyNDcgMTQ1LjI3NzM0NCwyOTYuNjY3OTY4IDE0NS4yNzczNDQsMjk2LjY2Nzk2OCBDMTQ1LjI3NzM0NCwyOTYuNjY3OTY4IC0yNS40NDkyMTg3LDI1Ny4yNDIxOTggMy4zOTg0Mzc1LDEwOC40MTAxNTUgQzE2LjMwNzA2NjEsNDEuODExNDE3NCA4NC43Mjc1ODI5LC0xMS45OTIyOTg1IDE3MS41MDc4MTMsMy4yNTAwMDAzOCBaIiBpZD0iUGF0aC0xIiBmaWxsPSIjZmZmZmZmIiBza2V0Y2g6dHlwZT0iTVNTaGFwZUdyb3VwIj48L3BhdGg+CiAgICA8L2c+Cjwvc3ZnPg==); +} + +#waitingTextContainer { + position: fixed; + top: 50%; +} + +@keyframes rotateBefore { + from { + transform: rotateX(60deg) rotateY(45deg) rotateZ(0deg); + } + to { + transform: rotateX(60deg) rotateY(45deg) rotateZ(-360deg); + } +} + +@keyframes rotateAfter { + from { + transform: rotateX(240deg) rotateY(45deg) rotateZ(0deg); + } + to { + transform: rotateX(240deg) rotateY(45deg) rotateZ(360deg); + } +} + +/******************************************************************************* + * * + * Login Options View (loginOptions.ejs) * + * * + ******************************************************************************/ + +#loginOptionsContainer { + position: relative; + display: flex; + justify-content: center; + align-items: center; + height: 100%; + width: 100%; + transition: filter 0.25s ease; + background: rgba(0, 0, 0, 0.50); +} + +#loginOptionsContent { + border-radius: 3px; + position: relative; + top: -5%; +} + +.loginOptionsMainContent { + display: flex; + flex-direction: column; + align-items: center; +} + +.loginOptionActions { + display: flex; + flex-direction: column; + row-gap: 10px; +} + +.loginOptionButtonContainer { + width: 16em; +} + +.loginOptionButton { + background: rgba(0, 0, 0, 0.25); + border: 1px solid rgba(126, 126, 126, 0.57); + border-radius: 3px; + height: 50px; + width: 100%; + text-align: left; + padding: 0px 25px; + cursor: pointer; + outline: none; + transition: 0.25s ease; + display: flex; + align-items: center; + column-gap: 5px; +} +.loginOptionButton:hover, +.loginOptionButton:focus { + background: rgba(54, 54, 54, 0.25); + text-shadow: 0px 0px 20px white; +} + +#loginOptionCancelContainer { + position: absolute; + bottom: -100px; +} + +#loginOptionCancelButton { + background: none; + border: none; + padding: 2px 0px; + font-size: 16px; + font-weight: bold; + color: lightgrey; + cursor: pointer; + outline: none; + transition: 0.25s ease; +} +#loginOptionCancelButton:hover, +#loginOptionCancelButton:focus { + text-shadow: 0px 0px 20px lightgrey; +} +#loginOptionCancelButton:active { + text-shadow: 0px 0px 20px rgba(211, 211, 211, 0.75); + color: rgba(211, 211, 211, 0.75); +} +#loginOptionCancelButton:disabled { + color: rgba(211, 211, 211, 0.75); + pointer-events: none; +} + + +/******************************************************************************* + * * + * Settings View (sttings.ejs) * + * * + ******************************************************************************/ + +/* Main settings container. */ +#settingsContainer { + position: relative; + height: 100%; + display: flex; + background-color: rgba(0, 0, 0, 0.50); + transition: background-color 0.25s cubic-bezier(.02, .01, .47, 1); +} + +/* Drop shadow displayed when content is scrolled out of view. */ +#settingsContainer:before { + content: ''; + background: linear-gradient(rgba(0, 0, 0, 0.25), transparent); + width: 100%; + height: 5px; + position: absolute; + opacity: 0; + transition: opacity 0.25s ease; +} +#settingsContainer[scrolled]:before { + opacity: 1; +} + +/* Left hand side of the settings UI, for navigation. */ +#settingsContainerLeft { + padding-top: 4%; + height: 100%; + width: 25%; + box-sizing: border-box; +} + +/* Settings navigation container. */ +#settingsNavContainer { + height: 100%; + display: flex; + flex-direction: column; +} + +/* Navigation header styles. */ +#settingsNavHeader { + height: 15%; + display: flex; + justify-content: center; +} +#settingsNavHeaderText { + font-size: 20px; +} + +/* Navigation items outer container. */ +#settingsNavItemsContainer { + height: 85%; + display: flex; + justify-content: center; + box-sizing: border-box; +} + +/* Navigation items content container. */ +#settingsNavItemsContent { + height: 100%; + display: flex; + flex-direction: column; + position: relative; +} + +/* Navigation item shared styles. */ +.settingsNavItem { + background: none; + border: none; + text-align: left; + margin: 5px 0px; + padding: 0px 20px; + color: grey; + cursor: pointer; + outline: none; + transition: 0.25s ease; +} +.settingsNavItem:hover, +.settingsNavItem:focus { + color: #c1c1c1; + text-shadow: 0px 0px 20px #c1c1c1; +} +.settingsNavItem[selected] { + cursor: default; + color: white; + text-shadow: none; +} + +/* Div to add some space between nav items. */ +.settingsNavSpacer { + height: 25px; +} + +/* Content container for the done button. */ +#settingsNavContentBottom { + position: absolute; + top: 65%; +} + +/* Settings navigational divider. */ +.settingsNavDivider { + width: 75%; + height: 1px; + background: rgba(126, 126, 126, 0.57); + margin-left: auto; + margin-bottom: 25px; +} + +/* Settings done button styles. */ +#settingsNavDone { + background: none; + border: none; + text-align: left; + margin: 5px 0px; + padding: 0px 20px; + color: white; + cursor: pointer; + outline: none; + transition: 0.25s ease; +} +#settingsNavDone:hover, +#settingsNavDone:focus { + text-shadow: 0px 0px 20px white, 0px 0px 20px white, 0px 0px 20px white; +} +#settingsNavDone:active { + text-shadow: 0px 0px 20px rgba(255, 255, 255, 0.75), 0px 0px 20px rgba(255, 255, 255, 0.75), 0px 0px 20px rgba(255, 255, 255, 0.75); + color: rgba(255, 255, 255, 0.75); +} +#settingsNavDone:disabled { + color: rgba(255, 255, 255, 0.75); + pointer-events: none; +} + +/* Right hand side of the settings container, for tabs. */ +#settingsContainerRight { + height: 100%; + width: 75%; + box-sizing: border-box; +} + +/* Settings tab shared styles. */ +.settingsTab { + width: 100%; + height: 100%; + overflow-y: auto; +} +.settingsTab::-webkit-scrollbar { + width: 2px; +} +.settingsTab::-webkit-scrollbar-track { + display: none; +} +.settingsTab::-webkit-scrollbar-thumb { + border-radius: 10px; + box-shadow: inset 0 0 10px rgba(255, 255, 255, 0.50); +} + +/* Add spacing to the top of each settings tab. */ +.settingsTab > *:first-child { + margin-top: 5%; +} + +/* Add spacing to the bottom of each settings tab. */ +.settingsTab > *:last-child { + margin-bottom: 20%; +} + +/* Tab header shared styles. */ +.settingsTabHeader { + display: flex; + flex-direction: column; + margin-bottom: 20px; +} +.settingsTabHeaderText { + font-size: 20px; + font-family: 'Avenir Medium'; +} +.settingsTabHeaderDesc { + font-size: 12px; +} + +/* Selected server content container */ +.settingsSelServContainer { + background: rgba(0, 0, 0, 0.25); + width: 75%; + border-radius: 3px; + display: flex; + justify-content: space-between; + margin: 15px 0px; +} + +/* Div which will be populated with the selected server's information. */ +.settingsSelServContent { + display: flex; + align-items: center; + justify-content: flex-start; + padding: 5px 0px; +} + +/* Wrapper container for the switch server button. */ +.settingsSwitchServerContainer { + display: flex; + align-items: center; + padding: 15px; +} + +/* Button to switch server configurations on the mods tab. */ +.settingsSwitchServerButton { + opacity: 0; + border: 1px solid rgb(255, 255, 255); + color: rgb(255, 255, 255); + background: none; + font-size: 12px; + border-radius: 3px; + font-family: 'Avenir Medium'; + transition: 0.25s ease; + cursor: pointer; + outline: none; +} +.settingsSwitchServerButton:hover, +.settingsSwitchServerButton:focus { + box-shadow: 0px 0px 20px rgb(255, 255, 255); + background: rgba(255, 255, 255, 0.25); +} +.settingsSwitchServerButton:active { + box-shadow: 0px 0px 20px rgb(187, 187, 187); + background: rgba(187, 187, 187, 0.25); + border: 1px solid rgb(187, 187, 187); + color: rgb(187, 187, 187); +} +.settingsSelServContainer:hover .settingsSwitchServerButton { + opacity: 1; +} + +/* Remove spin button from number inputs. */ +#settingsContainer input[type=number]::-webkit-inner-spin-button { + -webkit-appearance: none; +} + +/* Default styles for text/number inputs. */ +#settingsContainer input[type=number], +#settingsContainer input[type=text] { + color: white; + background: rgba(0, 0, 0, 0.25); + border-radius: 3px; + border: 1px solid rgba(126, 126, 126, 0.57); + font-family: 'Avenir Book'; + transition: 0.25s ease; +} +#settingsContainer input[type=number]:focus, +#settingsContainer input[type=text]:focus { + outline: none; + border-color: rgba(126, 126, 126, 0.87); +} +#settingsContainer input[type=number][error] { + border-color: rgb(255, 27, 12); + background: rgba(236, 0, 0, 0.25); + color: rgb(255, 27, 12); +} + +/* Styles for a generic settings entry. */ +.settingsFieldContainer { + display: flex; + align-items: center; + justify-content: space-between; + padding: 20px 0px; + width: 75%; + border-bottom: 1px solid rgba(255, 255, 255, 0.50); +} +.settingsFieldLeft { + display: flex; + flex-direction: column; +} +.settingsFieldTitle { + font-size: 14px; + font-family: 'Avenir Medium'; + color: rgba(255, 255, 255, 0.95); +} +.settingsFieldDesc { + font-size: 12px; + color: rgba(255, 255, 255, .95); + margin-top: 5px; +} +.settingsDivider { + height: 1px; + width: 75%; + background: rgba(255, 255, 255, 0.25); +} + +/* Toggle Switch */ +.toggleSwitch { + position: relative; + display: inline-block; + width: 40px; + height: 20px; + border-radius: 50px; + box-sizing: border-box; +} +.toggleSwitch input { + display:none; +} +.toggleSwitchSlider { + position: absolute; + cursor: pointer; + top: 0; + left: 0; + right: 0; + bottom: 0; + background-color: rgba(255, 255, 255, 0.35); + transition: .4s; + border-radius: 50px; + border: 1px solid rgba(126, 126, 126, 0.57); +} +.toggleSwitchSlider:before { + position: absolute; + content: ""; + height: 13px; + width: 16px; + left: 3px; + bottom: 3px; + background-color: white; + box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.75); + border-radius: 50px; + transition: .4s; +} +input:checked + .toggleSwitchSlider { + background-color: rgb(31, 140, 11); + /* box-shadow: inset 2px 1px 20px black; */ + border: 1px solid rgb(31, 140, 11); +} +input:checked + .toggleSwitchSlider:before { + transform: translateX(15px); +} + +/* Range Slider styles. */ +.rangeSlider { + width: 35%; + height: 5px; + margin: 15px 0px; + background: grey; + border-radius: 3px; + position: relative; +} +.rangeSliderBar { + position: absolute; + background: #8be88b; + width: 50%; + height: 5px; + border-radius: 3px 0px 0px 3px; + transition: background 0.25s ease; +} +.rangeSliderTrack { + position: absolute; + top: -7.5px; + width: 7px; + height: 20px; + background: white; + border-radius: 3px; + left: 50%; + cursor: ew-resize; +} + +/* File selectors */ + +/* Main container for File selectors. */ +.settingsFileSelContainer { + display: flex; + flex-direction: column; + border-bottom: 1px solid rgba(255, 255, 255, 0.50); + margin-bottom: 20px; + margin-top: 20px; + width: 75%; +} + +/* File selector title. */ +.settingsFileSelTitle { + margin-bottom: 10px; +} + +/* Wrapper container for the actionable elements. */ +.settingsFileSelActions { + display: flex; + width: 90%; +} + +/* File selector icon settings. */ +.settingsFileSelIcon { + display: flex; + align-items: center; + background: rgba(126, 126, 126, 0.57); + border-radius: 3px 0px 0px 3px; + padding: 5px; + transition: 0.25s ease; +} +.settingsFileSelSVG { + width: 20px; + height: 20px; + fill: white; +} + +/* Disabled text field which stores the selected file path. */ +.settingsFileSelVal { + border-radius: 0px !important; + width: 100%; + padding: 5px 10px; + font-size: 12px; + height: 30px; +} + +/* File selection button. */ +.settingsFileSelButton { + border: 0px; + border-radius: 0px 3px 3px 0px; + font-size: 12px; + padding: 0px 5px; + cursor: pointer; + background: rgba(126, 126, 126, 0.57); + transition: 0.25s ease; + white-space: nowrap; + outline: none; +} +.settingsFileSelButton:hover, +.settingsFileSelButton:focus { + text-shadow: 0px 0px 20px white; +} +.settingsFileSelButton:active { + text-shadow: 0px 0px 20px rgba(255, 255, 255, 0.75); + color: rgba(255, 255, 255, 0.75); +} + +/* Description for the file selector. */ +.settingsFileSelDesc { + font-size: 10px; + margin: 20px 0px; + color: lightgrey; + width: 89%; +} +.settingsFileSelDesc strong { + font-family: 'Avenir Medium'; +} + +/* * * +* Settings View (Account Tab) +* * */ + +.settingsAuthAccountTypeContainer { + display: flex; + width: 75%; + flex-direction: column; +} + +.settingsAuthAccountTypeHeader { + display: flex; + align-items: center; + width: 100%; + justify-content: space-between; + padding: 10px 0px; + border-bottom: 1px solid #ffffff85; + margin-bottom: 30px; +} + +.settingsAuthAccountTypeHeaderLeft { + display: flex; + column-gap: 5px; +} + +/* Settings add account button styles. */ +.settingsAddAuthAccount { + background: none; + border: none; + text-align: left; + padding: 2px 0px; + color: white; + cursor: pointer; + outline: none; + transition: 0.25s ease; +} +.settingsAddAuthAccount:hover, +.settingsAddAuthAccount:focus { + text-shadow: 0px 0px 20px white, 0px 0px 20px white, 0px 0px 20px white; +} +.settingsAddAuthAccount:active { + text-shadow: 0px 0px 20px rgba(255, 255, 255, 0.75), 0px 0px 20px rgba(255, 255, 255, 0.75), 0px 0px 20px rgba(255, 255, 255, 0.75); + color: rgba(255, 255, 255, 0.75); +} +.settingsAddAuthAccount:disabled { + color: rgba(255, 255, 255, 0.75); + pointer-events: none; +} + +/* Auth account list container styles. */ +.settingsCurrentAccounts { + margin-bottom: 5%; +} +.settingsCurrentAccounts > .settingsAuthAccount:not(:last-child) { + margin-bottom: 10px; +} +.settingsCurrentAccounts > .settingsAuthAccount:not(:first-child) { + margin-top: 10px; +} + +/* Auth account shared styles. */ +.settingsAuthAccount { + display: flex; + background: rgba(0, 0, 0, 0.25); + border-radius: 3px; + border: 1px solid rgba(126, 126, 126, 0.57); +} + +/* Left hand side of an auth account element, for the skin image. */ +.settingsAuthAccountLeft { + padding: 5px 5px 5px 20px; +} + +/* Image of the auth account's skin. */ +.settingsAuthAccountImage { + height: 115px; +} + +/* Right hand side of the auth account, for info + actions. */ +.settingsAuthAccountRight { + display: flex; + width: 100%; +} + +/* Account details container. */ +.settingsAuthAccountDetails { + display: flex; + flex-direction: column; + justify-content: center; + margin-left: 20px; + width: 100%; +} +.settingsAuthAccountDetails > *:not(:last-child) { + margin-bottom: 20px; +} + +/* Account detail element styles. */ +.settingsAuthAccountDetailPane { + display: flex; + flex-direction: column; +} +.settingsAuthAccountDetailTitle { + font-size: 12px; + color: grey; + font-weight: bold; + font-family: 'Avenir Medium'; +} +.settingsAuthAccountDetailValue { + font-size: 14px; + -webkit-user-select: initial; +} + +/* Account actions container. */ +.settingsAuthAccountActions { + display: flex; + flex-direction: column; + justify-content: space-between; + align-items: flex-end; + padding: 10px; +} + +/* Account select button shared styles. */ +.settingsAuthAccountSelect { + opacity: 0; + border: none; + white-space: nowrap; + background: none; + font-family: 'Avenir Medium'; + outline: none; + transition: 0.25s ease; +} +.settingsAuthAccountSelect:hover:not([selected]), +.settingsAuthAccountSelect:focus:not([selected]) { + text-shadow: 0px 0px 20px white, 0px 0px 20px white; + cursor: pointer; +} +.settingsAuthAccount:hover .settingsAuthAccountSelect:not([selected]), +.settingsAuthAccountSelect[selected] { + opacity: 1; +} +.settingsAuthAccountSelect[selected] { + pointer-events: none; +} + +/* Account logout button shared styles. */ +.settingsAuthAccountLogOut { + opacity: 0; + border: 1px solid rgb(241, 55, 55); + color: rgb(241, 55, 55); + background: none; + font-size: 12px; + border-radius: 3px; + font-family: 'Avenir Medium'; + transition: 0.25s ease; + cursor: pointer; + outline: none; +} +.settingsAuthAccountLogOut:hover, +.settingsAuthAccountLogOut:focus { + box-shadow: 0px 0px 20px rgb(241, 55, 55); + background: rgba(241, 55, 55, 0.25); +} +.settingsAuthAccountLogOut:active { + box-shadow: 0px 0px 20px rgb(185, 47, 47); + background: rgba(185, 47, 47, 0.25); + border: 1px solid rgb(185, 47, 47); + color: rgb(185, 47, 47); +} +.settingsAuthAccount:hover .settingsAuthAccountLogOut { + opacity: 1; +} + +/* * * +* Settings View (Minecraft Tab) +* * */ + +/* Game resolution UI elements. */ +#settingsGameResolutionContainer { + display: flex; + flex-direction: column; + padding-bottom: 20px; + border-bottom: 1px solid rgba(255, 255, 255, 0.50); + width: 75%; +} +#settingsGameResolutionContent { + display: flex; + align-items: center; + padding-top: 10px; +} +#settingsGameResolutionCross { + color: grey; + padding: 0px 15px; +} +#settingsGameWidth, +#settingsGameHeight { + padding: 7.5px 5px; + width: 75px; +} + +/* * * +* Settings View (Mods Tab) +* * */ + +/* Main content container for the mod elements. */ +#settingsModsContainer { + width: 75%; +} + +/* Mod sub-container header text. */ +.settingsModsHeader { + padding-bottom: 10px; + border-bottom: 1px solid rgba(255, 255, 255, 0.5); + margin-bottom: 10px; +} + +/* Mod elements sub-containers. */ +#settingsReqModsContainer, +#settingsOptModsContainer, +#settingsDropinModsContainer { + padding-bottom: 25px; +} + +/* Main content containers for mod elements. */ +#settingsReqModsContent, +#settingsOptModsContent, +#settingsDropinModsContent { + font-size: 12px; + background: rgba(0, 0, 0, 0.25); + border-radius: 3px; + color: white; +} + +/* Mod elements. */ +.settingsMod, +.settingsDropinMod { + padding: 10px; +} +.settingsSubMod { + padding: 10px 0px 10px 15px; + margin-left: 20px; + border-left: 1px solid rgba(255, 255, 255, 0.5); +} + +/* Main content container for mod element information. */ +.settingsModContent { + display: flex; + align-items: center; + justify-content: space-between; + transition: opacity 0.25s ease; +} + +/* Wrapper container for the left side of a mod element. */ +.settingsModMainWrapper { + display: flex; + align-items: center; +} + +/* Mod enabled/disabled status. */ +.settingsModStatus { + width: 7px; + height: 7px; + border-radius: 50%; + background-color: #c32625; + margin-right: 15px; + transition: 0.25s ease; +} + +/* Mod details container. */ +.settingsModDetails { + display: flex; + flex-direction: column; +} + +/* The version of the mod. */ +.settingsModVersion { + color: grey; + font-size: 10px; +} + +/* Disabled toggleswitch for required mods. */ +.toggleSwitch[reqmod] { + filter: grayscale(49%) brightness(60%); + pointer-events: none; +} + +/* Set the status color of an enabled mod. */ +.settingsBaseMod[enabled] > .settingsModContent > .settingsModMainWrapper > .settingsModStatus { + background-color: rgb(165, 195, 37); +} + +/* Add opacity to submods of a disabled mod. */ +.settingsBaseMod:not([enabled]) > .settingsSubModContainer .settingsModContent { + opacity: 0.5; +} + +/* Curve the left border for submods. */ +.settingsSubModContainer > .settingsSubMod:first-child { + border-top-left-radius: 10px; +} +.settingsSubModContainer > .settingsSubMod:last-child { + border-bottom-left-radius: 10px; +} +.settingsSubModContainer > .settingsSubMod:only-child { + border-top-left-radius: 10px; + border-bottom-left-radius: 10px; +} + +/* Wrapper container for all submods. */ +.settingsSubModContainer { + margin-top: 10px; +} + +/* Button to open the mods folder for drop-in mods. */ +#settingsDropinFileSystemButton { + background: rgba(0, 0, 0, 0.25); + border: 1px solid rgba(126, 126, 126, 0.57); + border-radius: 3px; + height: 50px; + width: 100%; + text-align: left; + padding: 0px 50px; + cursor: pointer; + outline: none; + transition: 0.25s ease; + margin-bottom: 10px; +} +#settingsDropinFileSystemButton:hover, +#settingsDropinFileSystemButton:focus, +#settingsDropinFileSystemButton[drag] { + background: rgba(54, 54, 54, 0.25); + text-shadow: 0px 0px 20px white; +} +/* Refresh instructions on the file system button. */ +#settingsDropinRefreshNote { + font-size: 10px; + pointer-events: none; +} + +/* Button to remove drop-in mods. */ +.settingsDropinRemoveButton { + background: none; + border: none; + font-size: 10px; + text-align: left; + padding: 0px; + color: #c32625; + font-weight: bold; + cursor: pointer; + outline: none; + transition: 0.25s ease; +} +.settingsDropinRemoveButton:hover, +.settingsDropinRemoveButton:focus { + text-shadow: 0px 0px 20px #c32625, 0px 0px 20px #c32625, 0px 0px 20px #c32625; +} +.settingsDropinRemoveButton:active { + color: #9b1f1f; + text-shadow: 0px 0px 20px #9b1f1f, 0px 0px 20px #9b1f1f, 0px 0px 20px #9b1f1f; +} + +/* Shaderpack settings description. */ +#settingsShaderpackDesc { + font-size: 10px; + margin: 10px 0px; + color: lightgrey; + font-weight: bold; + width: 89%; +} + +/* Wrapper container. */ +#settingsShaderpackWrapper { + display: flex; +} + +/* Button to add shaderpacks. */ +#settingsShaderpackButton { + background: rgba(0, 0, 0, 0.25); + border: 1px solid rgba(126, 126, 126, 0.57); + border-radius: 3px; + cursor: pointer; + outline: none; + transition: 0.25s ease; + font-size: 14px; + padding: 6px 11px; + margin-right: 5px; +} +#settingsShaderpackButton:hover, +#settingsShaderpackButton:focus, +#settingsShaderpackButton[drag] { + background: rgba(54, 54, 54, 0.25); + text-shadow: 0px 0px 20px white; +} + +/* Main select container. */ +.settingsSelectContainer { + position: relative; + width: 50%; +} + +/* Div which displays the selected option. */ +.settingsSelectSelected { + border-radius: 3px; + border-width: 1px; + font-size: 14px; + padding: 6px 16px; +} + +/* Style the arrow inside the select element. */ +.settingsSelectSelected:after { + position: absolute; + content: ""; + top: calc(50% - 3px); + right: 10px; + width: 0; + height: 0; + border: 6px solid transparent; + border-color: rgba(126, 126, 126, 0.57) transparent transparent transparent; +} + +/* Point the arrow upwards when the select box is open (active). */ +.settingsSelectSelected.select-arrow-active:after { + border-color: transparent transparent rgba(126, 126, 126, 0.57) transparent; + top: 7px; +} +.settingsSelectSelected.select-arrow-active { + border-radius: 3px 3px 0px 0px; +} + +/* Options content container. */ +.settingsSelectOptions { + position: absolute; + top: 100%; + left: 0; + right: 0; + z-index: 99; + max-height: 300%; + overflow-y: scroll; + border: 1px solid rgba(126, 126, 126, 0.57); + border-top: none; + border-radius: 0px 0px 3px 3px; +} +/* Hide the items when the select box is closed. */ +.settingsSelectOptions[hidden] { + display: none; +} +.settingsSelectOptions::-webkit-scrollbar { + width: 2px; +} +.settingsSelectOptions::-webkit-scrollbar-track { + display: none; +} +.settingsSelectOptions::-webkit-scrollbar-thumb { + border-radius: 10px; + box-shadow: inset 0 0 10px rgba(255, 255, 255, 0.50); +} + +/* Shared styles between options and selection div. */ +.settingsSelectOptions div, +.settingsSelectSelected { + background: rgba(0, 0, 0, 0.25); + border-style: solid; + border-color: rgba(126, 126, 126, 0.57); + color: #ffffff; + cursor: pointer; +} +.settingsSelectOptions div { + border-width: 0px 0px 1px 0px; + font-size: 12px; + padding: 4px 16px; +} +.settingsSelectOptions div:last-child { + border-bottom: none; +} + +/* Hover + selected styles. */ +.settingsSelectOptions div:hover, .settingsSelectOptions div[selected] { + background-color: rgba(255, 255, 255, 0.25) !important; +} + +/* * * +* Settings View (Java Tab) +* * */ + +/* Style links on the Java tab. */ +#settingsTabJava a, +.settingsChangelogText a { + color: rgba(202, 202, 202, 0.75); + transition: 0.25s ease; + outline: none; +} +#settingsTabJava a:hover, +#settingsTabJava a:focus, +.settingsChangelogText a:hover, +.settingsChangelogText a:focus { + color: rgba(255, 255, 255, 0.75); +} +#settingsTabJava a:active, +.settingsChangelogText a:active { + color: rgba(165, 165, 165, 0.75); +} + +/* Main container for memory management. */ +#settingsMemoryContainer { + width: 75%; + display: flex; + flex-direction: column; + border-bottom: 1px solid rgba(255, 255, 255, 0.50); + margin-bottom: 20px; +} + +/* Memory management title. */ +#settingsMemoryTitle { + margin-bottom: 10px; + padding-bottom: 5px; + border-bottom: 1px solid rgba(255, 255, 255, 0.5); +} + +/* Memory management content. */ +#settingsMemoryContent { + display: flex; + justify-content: space-between; + width: 100%; +} +#settingsMemoryContentLeft { + width: 69%; +} +#settingsMemoryContentRight { + display: flex; + align-items: center; + margin-right: 10%; +} + +/* Header for memory sliders. */ +.settingsMemoryHeader { + font-size: 14px; +} + +/* Wrapper container for a memory slider and label. */ +.settingsMemoryActionContainer { + display: flex; + align-items: center; + justify-content: space-between; +} + +/* Label which displays a memory slider's value. */ +.settingsMemoryLabel { + font-size: 14px; + margin-right: 2%; +} + +/* Range sliders for min and max memory settings. */ +#settingsMaxRAMRange, +#settingsMinRAMRange { + width: 85%; +} + +/* Memory status elements. */ +#settingsMemoryStatus { + display: flex; + flex-direction: column; +} +#settingsMemoryStatus > .settingsMemoryStatusContainer:not(:last-child){ + margin-bottom: 50%; +} +.settingsMemoryStatusContainer { + display: flex; + flex-direction: column; + align-items: center; +} +.settingsMemoryStatusTitle { + font-size: 12px; + color: grey; + font-weight: bold; +} +.settingsMemoryStatusValue { + color: lightgrey; + font-size: 16px; +} + +/* Description for memory management. */ +#settingsMemoryDesc { + font-size: 10px; + margin: 20px 0px; + color: lightgrey; + font-weight: bold; +} + +/* Status text which displays details on the selected executable. */ +#settingsJavaExecDetails { + font-weight: bold; + color: grey; + font-size: 12px; +} + +/* Main container for the JVM options setting. */ +#settingsJVMOptsContainer { + width: 75%; +} + +/* JVM options title. */ +#settingsJVMOptsTitle { + margin-bottom: 10px; +} + +/* Wrapper container for the actionable elements. */ +#settingsJVMOptsContent { + display: flex; + width: 90%; +} + +/* Text field to input the JVM options. */ +#settingsJVMOptsVal { + border-radius: 0px 3px 3px 0px !important; + width: 100%; + padding: 5px 10px; + font-size: 12px; +} +#settingsJVMOptsContent:focus-within > .settingsJavaIcon { + background: rgba(126, 126, 126, 0.87); +} + +/* Description for the JVM options setting. */ +#settingsJVMOptsDesc { + font-size: 10px; + margin: 20px 0px; + color: lightgrey; + font-weight: bold; + width: 89%; +} + +/* * * +* Settings View (Launcher Tab) +* * */ + +/* Tailored style for the data directory header. */ +#settingsDataDirTitle { + margin-bottom: 10px; +} + +/* * * +* Settings View (About Tab) +* * */ + +/* Main about content container. */ +#settingsAboutCurrentContainer { + display: flex; + flex-direction: column; + background: rgba(0, 0, 0, 0.25); + border: 1px solid rgba(126, 126, 126, 0.57); + border-radius: 3px; + width: 75%; + margin-bottom: 20px; +} + +/* About content. */ +#settingsAboutCurrentContent { + display: flex; + flex-direction: column; + padding: 15px; +} + +/* About header elements. */ +#settingsAboutCurrentHeadline { + display: flex; + align-items: center; + padding-bottom: 5px; + border-bottom: 1px solid rgba(126, 126, 126, 0.57); +} +#settingsAboutLogo { + width: 30px; + height: 30px; + padding: 5px; +} +#settingsAboutTitle { + font-size: 23px; + padding-left: 10px; +} + +/* Current version container. */ +#settingsAboutCurrentVersion { + display: flex; + align-items: center; + padding-top: 10px; +} + +/* Checkmark next to the version information. */ +#settingsAboutCurrentVersionCheck { + border-radius: 50%; + background: #23aa23; + text-align: center; + font-weight: bold; + margin: 11px 12px; + color: white; + height: 15px; + width: 15px; + font-size: 12px; + line-height: 17px; +} + +/* Current version details container. */ +#settingsAboutCurrentVersionDetails { + margin-left: 10px; +} + +/* Release type text. */ +#settingsAboutCurrentVersionTitle { + font-size: 12px; + font-family: 'Avenir Medium'; + color: #23aa23; + font-weight: bold; +} + +/* Current version text. */ +#settingsAboutCurrentVersionLine { + font-size: 10px; + color: grey; + font-weight: bold; +} + +/* About information links. */ +#settingsAboutButtons { + display: flex; + padding: 0px 15px; + margin-bottom: 5px; +} +.settingsAboutButton { + background: none; + border: none; + font-size: 10px; + color: grey; + padding: 0px 5px; + transition: 0.25s ease; + outline: none; + text-decoration: none; +} +.settingsAboutButton:hover, +.settingsAboutButton:focus { + color: rgb(165, 165, 165); +} +.settingsAboutButton:active { + color: rgba(124, 124, 124, 0.75); +} + +/* Main changelog container. */ +.settingsChangelogContainer { + display: flex; + flex-direction: column; + background: rgba(0, 0, 0, 0.25); + border: 1px solid rgba(126, 126, 126, 0.57); + border-radius: 3px; + width: 75%; + margin-bottom: 20px; +} + +/* Changelog content container. */ +.settingsChangelogContent { + display: flex; + flex-direction: column; + padding: 15px; +} + +/* Changelog header container. */ +.settingsChangelogHeadline { + padding-bottom: 10px; + margin-bottom: 10px; + border-bottom: 1px solid rgba(126, 126, 126, 0.57); +} +/* Changelog header label. */ +.settingsChangelogLabel { + font-size: 12px; + color: grey; + font-weight: bold; +} + +/* Changelog text content container. */ +.settingsChangelogText { + font-size: 12px; +} + +/* Styles for the changelog elements. */ +.settingsChangelogText p { + margin-bottom: 16px; + line-height: 1.5; +} +.settingsChangelogText blockquote { + border-left: 0.25em solid rgba(126, 126, 126, 0.95); + margin: 0px; + padding: 0 0 0 1em; + color: rgba(255, 255, 255, 0.85); +} +.settingsChangelogText code { + padding: 0.1em 0.4em; + font-size: 85%; + background-color: rgba(255, 255, 255, 0.25); + color: white; + border-radius: 3px; + font-family: 'Avenir Book'; +} +.settingsChangelogText li+li { + margin-top: .25em; +} +.settingsChangelogText a.commit-link { + font-weight: 400; + color: #ffffff; + text-decoration: none; +} +.settingsChangelogText a.commit-link:hover { + text-decoration: underline !important; + text-decoration-color: black; +} +.settingsChangelogText tt { + padding: 0.1em 0.4em; + font-size: 86%; + background-color: white; + border-radius: 3px; + color: black; + font-weight: bold; +} +.settingsChangelogText a.commit-link:hover tt { + text-decoration: underline; + text-decoration-color: black; +} +.settingsChangelogText .highlight { + background: rgba(0, 0, 0, 0.30); + user-select: initial; + padding: 5px 10px; +} +.settingsChangelogText .highlight pre { + margin: 0px; +} + +/* Container for the changelog button. */ +.settingsChangelogActions { + padding: 0px 15px 5px 15px; +} + +/* Open changelog on GitHub. */ +.settingsChangelogButton { + padding: 0px; +} + +/* * * +* Settings View (Updates Tab) +* * */ + +/* Main about content container. */ +#settingsUpdateStatusContainer { + display: flex; + flex-direction: column; + background: rgba(0, 0, 0, 0.25); + border: 1px solid rgba(126, 126, 126, 0.57); + border-radius: 3px; + width: 75%; + margin-bottom: 20px; +} + +/* Update content. */ +#settingsUpdateStatusContent { + display: flex; + flex-direction: column; + padding: 15px; +} + +/* Update header elements. */ +#settingsUpdateStatusHeadline { + display: flex; + align-items: center; + padding-bottom: 5px; + border-bottom: 1px solid rgba(126, 126, 126, 0.57); +} +#settingsUpdateTitle { + font-size: 16px; + padding-left: 10px; + font-weight: bold; +} + +/* Update version container. */ +#settingsUpdateVersion { + display: flex; + align-items: center; + padding: 10px 0px; + border-bottom: 1px solid rgba(126, 126, 126, 0.57); +} + +/* Checkmark next to the version information. */ +#settingsUpdateVersionCheck { + border-radius: 50%; + background: #23aa23; + text-align: center; + font-weight: bold; + margin: 11px 12px; + color: white; + height: 15px; + width: 15px; + font-size: 12px; + line-height: 17px; +} + +/* Update version details container. */ +#settingsUpdateVersionDetails { + margin-left: 10px; +} + +/* Release type text. */ +#settingsUpdateVersionTitle { + font-size: 12px; + font-family: 'Avenir Medium'; + color: #23aa23; + font-weight: bold; +} + +/* Current version text. */ +#settingsUpdateVersionLine { + font-size: 10px; + color: grey; + font-weight: bold; +} + +/* Update action container. */ +#settingsUpdateActionContainer { + padding-top: 10px; + font-size: 14px; + font-weight: bold; +} + +/* Update action button styles. */ +#settingsUpdateActionButton { + display: flex; + flex-direction: column; + padding-left: 10px; + background: none; + border: none; + font-size: 14px; + font-weight: bold; + cursor: pointer; + outline: none; + text-align: left; + transition: 0.25s ease; +} +#settingsUpdateActionButton:hover, +#settingsUpdateActionButton:focus { + text-shadow: 0px 0px 20px white, 0px 0px 20px white, 0px 0px 20px white; +} +#settingsUpdateActionButton:active { + text-shadow: 0px 0px 20px #c7c7c7, 0px 0px 20px #c7c7c7, 0px 0px 20px #c7c7c7; + color: #c7c7c7; +} +#settingsUpdateActionButton:disabled { + pointer-events: none; +} + +/******************************************************************************* + * * + * Landing View (Structural Styles) * + * * + ******************************************************************************/ + +/* Main content container. */ +#landingContainer { + height: 100%; + position: relative; + transition: background 2s ease; + overflow-y: hidden; +} + +/* Upper content container. */ +#landingContainer > #upper { + position: relative; + transition: top 2s ease; + top: 0px; + height: 77%; + display: flex; +} +#landingContainer > #upper > #left { + display: inline-flex; + width: 15%; + height: 100%; + justify-content: flex-end; +} +#landingContainer > #upper > #content { + display: inline-flex; + width: 70%; + height: 100%; +} +#landingContainer > #upper > #right { + display: inline-flex; + width: 15%; + height: 100%; +} + +/* Lower content container. */ +#landingContainer > #lower { + height: 23%; + display: flex; + background: linear-gradient(to top, rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0)); +} +#landingContainer > #lower > #left { + position: relative; + transition: top 2s ease; + top: 0px; + height: 100%; + width: 33%; + display: inline-flex; + justify-content: center; +} +#landingContainer > #lower > #left #content { + position: relative; + top: 25px; + display: inline-flex; + line-height: 24px; + left: 50px; +} +#landingContainer > #lower > #center { + position: relative; + transition: top 2s ease; + top: 0px; + height: 100%; + width: 34%; + display: inline-flex; + justify-content: center; +} +#landingContainer > #lower > #center #content { + position: relative; + z-index: 500; + transition: top 2s ease; + top: 10px; +} +#landingContainer > #lower > #right { + position: relative; + transition: top 2s ease; + top: 0px; + height: 100%; + width: 33%; + display: inline-flex; +} + +/******************************************************************************* + * * + * Landing View (News Styles) * + * * + ******************************************************************************/ + +/* Main container. */ +#newsContainer { + position: absolute; + top: 100%; + height: 100%; + width: 100%; + transition: top 2s ease; + display: flex; + align-items: flex-end; + justify-content: center; +} + +/* News content container. */ +#newsContent { + height: 82vh; + width: 100%; + display: flex; + -webkit-user-select: initial; + position: relative; +} + +/* Drop shadow displayed when content is scrolled out of view. */ +#newsContent:before { + content: ''; + background: linear-gradient(rgba(0, 0, 0, 0.25), transparent); + width: 100%; + height: 5px; + position: absolute; + opacity: 0; + transition: opacity 0.25s ease; +} +#newsContent[scrolled]:before { + opacity: 1; +} + +/* News article status container (left). */ +#newsStatusContainer { + width: calc(30% - 60px); + height: calc(100% - 30px); + padding: 15px 15px 15px 45px; + display: flex; + flex-direction: column; + justify-content: space-between; + position: relative; +} + +/* News status content. */ +#newsStatusContent { + display: flex; + flex-direction: column; + align-items: flex-end; +} + +/* News title wrapper. */ +#newsTitleContainer { + display: flex; + max-width: 90%; +} + +/* News article title styles. */ +#newsArticleTitle { + font-size: 18px; + font-weight: bold; + font-family: 'Avenir Medium'; + color: white; + text-decoration: none; + transition: 0.25s ease; + outline: none; + text-align: right; +} +#newsArticleTitle:hover, +#newsArticleTitle:focus { + text-shadow: 0px 0px 20px white; +} +#newsArticleTitle:active { + color: #c7c7c7; + text-shadow: 0px 0px 20px #c7c7c7; +} + +/* News meta container. */ +#newsMetaContainer { + display: flex; + flex-direction: column; +} + +/* Date and author wrappers. */ +#newsArticleDateWrapper, +#newsArticleAuthorWrapper { + display: flex; + justify-content: flex-end; +} + +/* Date and author shared styles. */ +#newsArticleDate, +#newsArticleAuthor { + display: inline-block; + font-size: 10px; + padding: 0px 5px; + font-weight: bold; + border-radius: 2px; +} + +/* Date styles. */ +#newsArticleDate { + background: white; + color: black; + margin-top: 5px; +} + +/* Author styles. */ +#newsArticleAuthor { + background: #a02d2a; +} + +/* News article comments styles. */ +#newsArticleComments { + margin-top: 5px; + display: inline-block; + font-size: 10px; + color: #ffffff; + text-decoration: none; + transition: 0.25s ease; + outline: none; + text-align: right; +} +#newsArticleComments:focus, +#newsArticleComments:hover { + color: #e0e0e0; +} +#newsArticleComments:active { + color: #c7c7c7; +} + +/* Article content container (right). */ +#newsArticleContainer { + width: calc(100% - 25px); + height: 100%; + margin: 0px 0px 0px 25px; +} + +/* Article content styles. */ +#newsArticleContentScrollable { + font-size: 12px; + overflow-y: scroll; + height: 100%; + padding: 0px 15px 0px 15px; +} +#newsArticleContentScrollable img, +#newsArticleContentScrollable iframe { + max-width: 95%; + display: block; + margin: 0 auto; +} +#newsArticleContentScrollable a { + color: rgba(202, 202, 202, 0.75); + transition: 0.25s ease; + outline: none; +} +#newsArticleContentScrollable a:hover, +#newsArticleContentScrollable a:focus { + color: rgba(255, 255, 255, 0.75); +} +#newsArticleContentScrollable a:active { + color: rgba(165, 165, 165, 0.75); +} +#newsArticleContentScrollable::-webkit-scrollbar { + width: 2px; +} +#newsArticleContentScrollable::-webkit-scrollbar-track { + display: none; +} +#newsArticleContentScrollable::-webkit-scrollbar-thumb { + border-radius: 10px; + box-shadow: inset 0 0 10px rgba(255, 255, 255, 0.50); +} +.bbCodeSpoilerButton { + background: none; + border: none; + outline: none; + cursor: pointer; + font-size: 16px; + transition: 0.25s ease; + width: 100%; + border-bottom: 1px solid white; + padding-bottom: 15px; +} +.bbCodeSpoilerButton:hover, +.bbCodeSpoilerButton:focus { + text-shadow: 0px 0px 20px #ffffff, 0px 0px 20px #ffffff, 0px 0px 20px #ffffff; +} +.bbCodeSpoilerButton:active { + color: #c7c7c7; + text-shadow: 0px 0px 20px #c7c7c7, 0px 0px 20px #c7c7c7, 0px 0px 20px #c7c7c7; +} +.bbCodeSpoilerText { + display: none; + padding: 15px 0px; + border-bottom: 1px solid white; +} + + +#newsArticleContentWrapper { + width: 80%; +} + +.newsArticleSpacerTop { + height: 15px; +} + +/* Div to add spacing at the end of a news article. */ +.newsArticleSpacerBot { + height: 30px; +} + +/* News navigation container. */ +#newsNavigationContainer { + display: flex; + justify-content: center; + align-items: center; + margin-bottom: 10px; + -webkit-user-select: none; + position: absolute; + bottom: 15px; + right: 0px; +} + +/* Navigation status span. */ +#newsNavigationStatus { + font-size: 12px; + margin: 0px 15px; +} + +/* Left and right navigation button styles. */ +#newsNavigateLeft, +#newsNavigateRight { + background: none; + border: none; + outline: none; + height: 20px; + cursor: pointer; +} +#newsNavigateLeft:hover #newsNavigationLeftSVG, +#newsNavigateLeft:focus #newsNavigationLeftSVG, +#newsNavigateRight:hover #newsNavigationRightSVG, +#newsNavigateRight:focus #newsNavigationRightSVG { + -webkit-filter: drop-shadow(0px 0px 2px #fff); +} +#newsNavigateLeft:active #newsNavigationLeftSVG .arrowLine, +#newsNavigateRight:active #newsNavigationRightSVG .arrowLine { + stroke: #c7c7c7; +} +#newsNavigateLeft:active #newsNavigationLeftSVG, +#newsNavigateRight:active #newsNavigationRightSVG { + -webkit-filter: drop-shadow(0px 0px 2px #c7c7c7); +} +#newsNavigateLeft:disabled #newsNavigationLeftSVG .arrowLine, +#newsNavigateRight:disabled #newsNavigationRightSVG .arrowLine { + stroke: rgba(255, 255, 255, 0.75); +} +#newsNavigationLeftSVG { + transform: rotate(-90deg); + width: 15px; +} +#newsNavigationRightSVG { + transform: rotate(90deg); + width: 15px; +} + +/* News error (message) container. */ +#newsErrorContainer { + height: 100%; + display: flex; + align-items: center; + flex-direction: column; + justify-content: center; +} +#newsErrorFailed { + display: flex; + align-items: center; + flex-direction: column; + justify-content: center; +} + +/* News error content (message). */ +.newsErrorContent { + font-size: 20px; +} +#newsErrorLoading { + display: flex; + width: 168.92px; +} +#nELoadSpan { + white-space: pre; +} +/* News error retry button styles. */ +#newsErrorRetry { + font-size: 12px; + font-weight: bold; + cursor: pointer; + background: none; + border: none; + outline: none; + transition: 0.25s ease; +} +#newsErrorRetry:focus, +#newsErrorRetry:hover { + text-shadow: 0px 0px 20px white; +} +#newsErrorRetry:active { + color: #c7c7c7; + text-shadow: 0px 0px 20px #c7c7c7; +} + +/******************************************************************************* + * * + * Landing View (Top Styles) * + * * + ******************************************************************************/ + +/* * * +* Landing View (Top Styles) | Left Content +* * */ + +/* Logo image. */ +#image_seal { + height: 70px; + width: auto; + position: relative; + border: 2px solid white; + box-sizing: border-box; + border-radius: 50%; +} + +/* Logo container styles. */ +#image_seal_container { + position: relative; + height: 70px; + width: 70px; + border-radius: 50%; + margin-top: 50px; +} + +/* Logo container styles w/ update. */ +#image_seal_container[update]{ + cursor: pointer +} +#image_seal_container[update]:before, +#image_seal_container[update]:after { + cursor: pointer; + position: absolute; + content: ''; + height: 100%; + width: 100%; + top: 0%; + left: 0%; + border-radius: 50%; + box-shadow: 0 0 15px #43c628; + animation: glow-grow 4s ease-out infinite; + background: rgba(0, 0, 0, 0.15); +} +#image_seal_container[update]:before { + animation-delay: 2s; +} + +/* Update available tooltip styles. */ +#updateAvailableTooltip { + cursor: pointer; + visibility: hidden; + opacity: 0; + width: 100px; + height: 15px; + background-color: rgb(0, 0, 0); + color: #fff; + text-align: center; + border-radius: 4px; + padding: 2px; + position: absolute; + z-index: 1; + top: 115%; + left: -17.5px; + font-family: 'Avenir Medium'; + font-size: 12px; + transition: visibility 0s linear 0.25s, opacity 0.25s ease; +} +#updateAvailableTooltip::after { + content: " "; + position: absolute; + left: 50%; + bottom: 100%; + margin-left: -5px; + border-width: 5px; + border-style: solid; + border-color: transparent transparent rgb(0, 0, 0) transparent; +} +#image_seal_container[update]:hover #updateAvailableTooltip { + visibility: visible; + opacity: 1; + transition-delay: 0s; +} + +/* Update available animation. */ +@keyframes glow-grow { + 0% { + opacity: 0; + transform: scale(1); + } + 80% { + opacity: 1; + } + 100% { + transform: scale(1.5); + opacity: 0; + } +} + +/* * * +* Landing View (Bottom Styles) | Right Content +* * */ + +/* Wrapper container for top, right content. */ +#rightContainer { + display: flex; + flex-direction: column; + position: relative; + top: 50px; + align-items: flex-start; + height: calc(100% - 50px); +} + +/* Right hand user content container. */ +#user_content { + display: flex; + align-items: center; + justify-content: center; + box-sizing: border-box; + position: relative; +} + +/* User profile avatar container. */ +#avatarContainer { + border-radius: 50%; + border: 2px solid #cad7e1; + box-sizing: border-box; + background: rgba(1, 2, 1, 0.5); + height: 70px; + width: 70px; + box-shadow: 0px 0px 10px 0px rgb(0, 0, 0); + overflow: hidden; + position: relative; + background-position: center; + background-repeat: no-repeat; + background-size: contain; +} + +/* Avatar edit overlay. */ +#avatarOverlay { + opacity: 0; + position: absolute; + z-index: 1; + display: flex; + justify-content: center; + align-items: center; + transition: 0.25s ease; + font-weight: bold; + letter-spacing: 2px; + background-color: rgba(0, 0, 0, 0.35); + -webkit-user-select: none; + border: none; + cursor: pointer; + width: 100%; + height: 100%; + border-radius: 50%; +} +#avatarOverlay:hover, +#avatarOverlay:focus { + opacity: 1; +} +#avatarOverlay:active { + background-color: rgba(0, 0, 0, 0.45); +} + +/* User profile name text. */ +#user_text { + font-size: 12px; + min-width: 135px; + font-weight: 900; + letter-spacing: 1px; + text-shadow: 0px 0px 20px black; + position: absolute; + right: 95px; + text-align: right; + -webkit-user-select: initial; +} + +/* Social media icon content container. */ +#mediaContent { + position: relative; + display: flex; + flex-direction: column; + margin-top: 25px; + height: calc(100% - 95px); + width: 70px; + align-items: center; +} + +/* Social Media Icon division containers. */ +#internalMedia, #externalMedia { + display: flex; + flex-direction: column; +} + +/* Container object which wraps an icon to ensure fluid transitions. */ +.mediaContainer { + display: flex; + justify-content: center; + align-items: center; + height: 27px; +} + +/* Divider bar between the external and internal icons. */ +.mediaDivider { + height: 1px; + width: 14px; + background: rgb(255, 255, 255); + margin: 10px 0px; +} + +/* Social media icon shared styles. */ +.mediaSVG { + fill: #ffffff; + height: 12px; + transition: 0.25s ease; + cursor: pointer; + height: 12px; + width: 25px; +} +.mediaSVG:hover, +.mediaURL:focus .mediaSVG, +.mediaSVG:active { + height: 20px; +} + +/* Social media URL shared styles. */ +.mediaURL { + outline: none; +} + +/* Internal media button shared styles. */ +.mediaButton { + background: none; + border: none; + padding: 0px; + display: flex; + align-items: center; + outline: none; +} + +#settingsMediaContainer { + position: relative; +} + +/* Settings icon colors. */ +#settingsSVG { + stroke: #ffffff; + height: 15px; +} +.mediaButton:hover #settingsSVG, +.mediaButton:focus #settingsSVG, +.mediaButton:active #settingsSVG { + height: 23px; +} + +/* Settings tooltip styles. */ +#settingsTooltip { + visibility: hidden; + opacity: 0; + width: 75px; + height: 20px; + background-color: rgba(0, 0, 0, 0.75); + text-align: center; + border-radius: 4px; + position: absolute; + z-index: 1; + right: 130%; + font-size: 12px; + line-height: 20px; + transition: visibility 0s linear 0.25s, opacity 0.25s ease; +} +#settingsTooltip::after { + content: " "; + position: absolute; + top: 50%; + left: 100%; + margin-top: -5px; + border-width: 5px; + border-style: solid; + border-color: transparent transparent transparent rgba(0, 0, 0, 0.75); +} +.mediaButton:hover #settingsTooltip, +.mediaButton:focus #settingsTooltip, +.mediaButton:active #settingsTooltip { + visibility: visible; + opacity: 1; + transition-delay:0s; +} + +/* X icon colors. */ +#xSVG:hover, +#xURL:focus #xSVG { + fill: #000000; +} +#xSVG:active { + fill: #090909; +} + +/* Instagram icon colors. */ +#instagramSVG:hover, +#instagramURL:focus #instagramSVG { + fill: url('#instaFill') + /*fill: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%); */ +} +#instagramSVG:active { + fill: url('#instaFill') +} + +/* Youtube icon colors. */ +#youtubeSVG:hover, +#youtubeURL:focus #youtubeSVG { + fill: #f00; +} +#youtubeSVG:active { + fill: #ea0202; +} + +/* Discord icon colors. */ +#discordSVG:hover, +#discordURL:focus #discordSVG { + fill: #7288d9; +} +#discordSVG:active { + fill: #657ac4; +} + +/******************************************************************************* + * * + * Landing View (Bottom Styles) * + * * + ******************************************************************************/ + +/* Style for a general label on the bottom of the landing view. */ +.bot_label { + font-size: 9px; + letter-spacing: 1px; + font-weight: bold; + text-shadow: 0px 0px 0px #bebcbb; +} + +/* Divider used on the bottom of the landing view. */ +.bot_divider { + height: 25px; + width: 2px; + background: rgba(107, 105, 105, 0.7); + margin-left: 20px; + margin-right: 20px; +} + +/* * * +* Landing View (Bottom Styles) | Left Content +* * */ + +/* Maintains maximum width on the status bar. */ +#server_status_wrapper { + display: inline-flex; + width: 75px; +} + +/* Span which displays the player count of the selected server. */ +#player_count { + color: #949494; + font-size: 8px; + font-weight: 900; + text-shadow: 0px 0px 20px #949494; + margin-left: 10px; +} + +/* Wrapper container for the mojang status bar. */ +#mojangStatusWrapper { + position: relative; + display: flex; + cursor: pointer; +} + +/* Icon which displays the status of the mojang services. */ +#mojang_status_icon { + font-size: 30px; + color: #848484; + margin-left: 15px; + font-family: 'sans-serif'; +} + +/* Tooltip which displays more details about the mojang statuses. */ +#mojangStatusTooltip { + position: absolute; + visibility: hidden; + opacity: 0; + width: 145px; + min-height: 150px; + background-color: rgba(0, 0, 0, 0.75); + color: #fff; + border-radius: 4px; + padding: 5px 10px; + z-index: 1; + font-family: 'Avenir Medium'; + font-size: 12px; + transition: visibility 0s linear 0.25s, opacity 0.25s ease; + bottom: calc(100% + 15px); + transform: translateX(-50%); + margin-left: 50%; + box-shadow: 0px 0px 20px rgb(0, 0, 0); + cursor: default; +} +#mojangStatusTooltip:after { + content: " "; + position: absolute; + left: 50%; + top: 100%; + margin-left: -5px; + border-width: 5px; + border-style: solid; + border-color: rgba(0, 0, 0, 0.75) transparent transparent transparent; +} +#mojangStatusWrapper:hover #mojangStatusTooltip { + visibility: visible; + opacity: 1; + transition-delay: 0s; +} + +/* Tooltip title for the mojang statuses. */ +#mojangStatusTooltipTitle { + width: 100%; + text-align: center; + margin-bottom: 5px; + letter-spacing: 1px; +} + +/* Wrapper container for the non essential services title. */ +#mojangStatusNEContainer { + display: flex; + align-items: center; + margin: 10px 0px; +} + +/* White bar which surrounds the non essential service title. */ +.mojangStatusNEBar { + height: 1px; + width: 100%; + background: white; +} + +/* Non essential service title text. */ +#mojangStatusNETitle { + font-size: 10px; + padding: 0px 3px; + text-align: center; + letter-spacing: 1px; +} + +/* Wrapper container for mojang service information. */ +.mojangStatusContainer { + display: flex; +} + +/* Displays the name of the mojang service. */ +.mojangStatusName { + width: 100%; + font-size: 10px; + letter-spacing: 1px; + line-height: 12px; + padding: 6px 0px; +} + +/* Displays the status of the mojang service. */ +.mojangStatusIcon { + margin-right: 10px; + font-size: 18.5px; + color: #848484; +} + +/* * * +* Landing View (Bottom Styles) | Center Content +* * */ + +/* Button which opens the news view. */ +#newsButton { + background: none; + border: none; + cursor: pointer; + outline: none; +} +#newsButton:hover #newsButtonText, +#newsButton:focus #newsButtonText { + text-shadow: 0px 0px 20px #fff, 0px 0px 20px #fff; +} +#newsButton:active { + color: #c7c7c7; + text-shadow: 0px 0px 20px #c7c7c7, 0px 0px 20px #c7c7c7; +} + +#newsButton:hover #newsButtonSVG, +#newsButton:focus #newsButtonSVG { + -webkit-filter: drop-shadow(0px 0px 2px #fff); +} +#newsButton:active #newsButtonSVG .arrowLine { + stroke: #c7c7c7; +} +#newsButton:active #newsButtonSVG { + -webkit-filter: drop-shadow(0px 0px 2px #c7c7c7); +} +#newsButton:disabled #newsButtonSVG .arrowLine { + stroke: rgba(255, 255, 255, 0.75); +} + +/* Icon which indicates there is new news. */ +#newsButtonAlert { + width: 5px; + height: 5px; + position: absolute; + border-radius: 50%; + background: red; + right: -1px; + top: 50%; +} + +/* Arrow image which floats above the news button. */ +#newsButtonSVG { + height: 11px; + margin-left: -2px; + transition: 0.25s ease; +} + +/* Span which contains the news button text. */ +#newsButtonText { + color: white; + font-weight: 900; + letter-spacing: 2px; + text-shadow: 0px 0px 0px #bebcbb; + font-size: 11px; + line-height: 30px; + display: flex; + transition: 0.25s ease; +} + +/* * * +* Landing View (Bottom Styles) | Right Content +* * */ + +/* Main launch content container. */ +#landingContainer > #lower > #right #launch_content { + position: relative; + top: 25px; + display: inline-flex; +} + +/* The launch button. */ +#launch_button { + background: none; + border: none; + cursor: pointer; + font-weight: 900; + letter-spacing: 2px; + text-shadow: 0px 0px 0px #bebcbb; + font-size: 20px; + padding: 0px; + transition: 0.25s ease; + outline: none; +} +#launch_button:hover, +#launch_button:focus { + text-shadow: 0px 0px 20px #fff, 0px 0px 20px #fff; +} +#launch_button:active { + color: #c7c7c7; + text-shadow: 0px 0px 20px #c7c7c7, 0px 0px 20px #c7c7c7; +} +#launch_button:disabled { + color: #c7c7c7; + cursor: default; + pointer-events: none; +} + +/* Launch details main container, hidden until launch processing begins. */ +#launch_details { + position: relative; + top: 25px; + display: none; +} + +/* Left side of launch details container, displays percentage and a divider. */ +#launch_details_left { + display: flex; +} + +/* Span which displays percentage complete. */ +#launch_progress_label { + font-weight: 900; + letter-spacing: 1px; + text-shadow: 0px 0px 0px #bebcbb; + font-size: 20px; + min-width: 53.21px; + max-width: 53.21px; + text-align: right; +} + +/* Right side of launch details container, displays progress bar and details. */ +#launch_details_right { + display: flex; + flex-direction: column; + justify-content: center; +} + +/* Button which opens the server selection view. */ +#server_selection_button { + background: none; + border: none; + outline: none; + cursor: pointer; + line-height: 24px; + padding: 0px; + transition: 0.25s ease; +} +#server_selection_button:hover, +#server_selection_button:focus { + text-shadow: 0px 0px 20px #fff, 0px 0px 20px #fff, 0px 0px 20px #fff; +} +#server_selection_button:active { + color: #c7c7c7; + text-shadow: 0px 0px 20px #c7c7c7, 0px 0px 20px #c7c7c7, 0px 0px 20px #c7c7c7; +} + +/* Progress bar styles. */ +#launch_progress[value] { + height: 3px; + width: 265px; + -webkit-appearance: none; +} +#launch_progress[value]::-webkit-progress-bar { + background-color: transparent; +} +#launch_progress[value]::-webkit-progress-value { + background-color: #fff; +} + +/* Span which displays information about the status of the launch process. */ +#launch_details_text { + font-size: 11px; + text-overflow: ellipsis; + white-space: nowrap; + overflow: hidden; +} + +/******************************************************************************* + * * + * Overlay View (overlay.ejs) * + * * + ******************************************************************************/ + +/* * * +* Overlay View (Main Content) +* * */ + +/* Overlay container, placed over the main div. */ +#overlayContainer { + position: absolute; + z-index: 500; + top: 22px; + display: flex; + align-items: center; + justify-content: center; + width: 100%; + height: calc(100% - 22px); + background: rgba(0, 0, 0, 0.50); +} + +/* Main overlay content. */ +#overlayContent { + position: relative; + display: flex; + flex-direction: column; + align-items: center; + /*justify-content: space-between;*/ + width: 300px; + /*height: 35%;*/ + box-sizing: border-box; + padding: 15px 0px; + /* background-color: #424242; */ + text-align: center; +} + +/* Main overlay content anchor styles. */ +#overlayContent a, +#overlayDismiss { + color: rgba(202, 202, 202, 0.75); + transition: 0.25s ease; +} +#overlayContent a:hover, +#overlayContent a:focus, +#overlayDismiss:focus { + color: rgba(255, 255, 255, 0.75); +} +#overlayContent a:active, +#overlayDismiss:active { + color: rgba(165, 165, 165, 0.75); +} + +/* Add spacing between overlay content elements. */ +#overlayContent > *:first-child { + margin-top: 0px !important; +} +#overlayContent > *:last-child { + margin-bottom: 0px !important; +} +#overlayContent > * { + margin: 8px 0px; +} + +/* Overlay title styles. */ +#overlayTitle { + font-family: 'Avenir Medium'; + font-size: 20px; + font-weight: bold; + letter-spacing: 1px; + -webkit-user-select: initial; +} + +/* Overlay description styles. */ +#overlayDesc { + font-size: 12px; + font-weight: bold; + -webkit-user-select: initial; +} + +/* Div which contains action buttons. */ +#overlayActionContainer { + display: flex; + flex-direction: column; + justify-content: center; +} + +/* Overlay acknowledge button styles. */ +#overlayAcknowledge { + background: none; + border: 1px solid #ffffff; + color: white; + font-family: 'Avenir Medium'; + font-weight: bold; + border-radius: 2px; + padding: 0px 8.1px; + cursor: pointer; + transition: 0.25s ease; +} +#overlayAcknowledge:hover, +#overlayAcknowledge:focus { + box-shadow: 0px 0px 10px 0px #fff; + outline: none; +} +#overlayAcknowledge:active { + border-color: rgba(255, 255, 255, 0.75); + color: rgba(255, 255, 255, 0.75); +} + +/* Overlay dismiss option styles. */ +#overlayDismiss { + font-weight: bold; + font-size: 10px; + text-decoration: none; + padding-top: 2.5px; + background: none; + border: none; + outline: none; + cursor: pointer; +} +#overlayDismiss:hover { + color: rgba(255, 255, 255, 0.75); +} +#overlayDismiss:active { + color: rgba(165, 165, 165, 0.75); +} + +/* * * +* Overlay View (Server + Account Selection Content) +* * */ + +/* Server selection content container. */ +#serverSelectContent, +#accountSelectContent { + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + height: 75%; +} + +/* Server selection header. */ +#serverSelectHeader, +#accountSelectHeader { + font-family: 'Avenir Medium'; + font-size: 20px; + font-weight: bold; + color: #fff; + margin-bottom: 25px; +} + +/* Wrapper div for the list of available servers. */ +#serverSelectList, +#accountSelectList { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + max-height: 65%; + min-height: 40%; +} + +/* Scrollable div which lists the available servers. */ +#serverSelectListScrollable, +#accountSelectListScrollable { + padding: 0px 5px; + overflow-y: scroll; +} +#serverSelectListScrollable::-webkit-scrollbar, +#accountSelectListScrollable::-webkit-scrollbar { + width: 2px; +} +#serverSelectListScrollable::-webkit-scrollbar-track, +#accountSelectListScrollable::-webkit-scrollbar-track { + display: none; +} +#serverSelectListScrollable::-webkit-scrollbar-thumb, +#accountSelectListScrollable::-webkit-scrollbar-thumb { + border-radius: 10px; + box-shadow: inset 0 0 10px rgba(255, 255, 255, 0.50); +} + +/* Content container for a server listing. */ +.serverListing { + border: none; + padding: 0px; + width: 375px; + min-height: 60px; + display: flex; + justify-content: flex-start; + align-items: center; + opacity: 0.6; + transition: 0.25s ease; + cursor: pointer; + position: relative; + background: rgba(131, 131, 131, 0.25); +} +.serverListing[selected] { + cursor: default; + opacity: 1.0; +} +.serverListing:hover, +.serverListing:focus { + outline: none; + opacity: 1.0; +} + +.accountListing { + color: white; + border: 1px solid rgba(126, 126, 126, 0.57); + border-radius: 3px; + padding: 5px 45px; + width: 250px; + display: flex; + justify-content: flex-start; + align-items: center; + opacity: 0.6; + transition: 0.25s ease; + cursor: pointer; + position: relative; + background: rgba(0, 0, 0, 0.25); +} +.accountListing[selected] { + cursor: default; + opacity: 1.0; +} +.accountListing:hover, +.accountListing:focus { + outline: none; + opacity: 1.0; +} + +.accountListingName { + display: flex; + height: 100%; + width: 100%; + padding-left: 10px; +} + +/* Add spacing between server listings. */ +#serverSelectListScrollable > .serverListing:not(:first-child):not(:last-child), +#accountSelectListScrollable > .accountListing:not(:first-child):not(:last-child) { + margin: 5px 0px; +} +#serverSelectListScrollable > .serverListing:first-child, +#accountSelectListScrollable > .accountListing:first-child { + margin-bottom: 5px; +} +#serverSelectListScrollable > .serverListing:last-child, +#accountSelectListScrollable > .accountListing:last-child { + margin-top: 5px; +} + +/* Server listing image. */ +.serverListingImg { + margin: 0px 10px 0px 5px; + border: 1px solid #fff; + height: 50px; + width: 50px; +} + +/* Content container for the server listing's details. */ +.serverListingDetails { + display: flex; + flex-direction: column; + align-items: flex-start; + justify-content: space-between; + height: 50px; +} + +/* The name of the server listing. */ +.serverListingName { + font-size: 14px; + font-weight: bold; +} + +/* Description for the server listing. */ +.serverListingDescription { + font-size: 10px; + line-height: 10px; + font-weight: bold; + text-align: left; +} + +/* Content container for the server listing's information. */ +.serverListingInfo { + width: 100%; + display: flex; + justify-content: flex-start; +} + +/* The minecraft version of the server listing. */ +.serverListingVersion { + font-size: 10px; + text-align: center; + display: flex; + justify-content: center; + align-items: center; + line-height: 12px; + height: 12px; + border-radius: 2px; + background: rgba(31, 140, 11, 0.8); + padding: 0px 2px; +} + +/* The revision version of the server's manifest. */ +.serverListingRevision { + color: #969696; + font-size: 10px; + line-height: 12px; + padding: 0px 5px; +} + +/* Star which indicates the default (main) server. */ +.serverListingStarWrapper { + display: flex; + align-items: center; + cursor: pointer; + height: 12px; + position: relative; +} +/* Tooltip which displays when hovering over the star. */ +.serverListingStarTooltip { + visibility: hidden; + opacity: 0; + width: 65px; + background-color: rgba(0, 0, 0, 0.40); + text-align: center; + border-radius: 4px; + position: absolute; + z-index: 1; + left: 130%; + font-size: 10px; + transition: visibility 0s linear 0.25s, opacity 0.25s ease; +} +.serverListingStarTooltip::after { + content: " "; + position: absolute; + top: 50%; + right: 100%; /* To the left of the tooltip */ + margin-top: -5px; + border-width: 5px; + border-style: solid; + border-color: transparent rgba(0, 0, 0, 0.40) transparent transparent; +} +.serverListingStarWrapper:hover .serverListingStarTooltip { + visibility: visible; + opacity: 1; + transition-delay:0s; +} + +/* Content container which contains the server select actions. */ +#serverSelectActions, +#accountSelectActions { + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + margin-top: 25px; +} + +/* Server selection confirm button styles. */ +#serverSelectConfirm, +#accountSelectConfirm { + background: none; + border: 1px solid #ffffff; + color: white; + font-family: 'Avenir Medium'; + font-weight: bold; + border-radius: 2px; + padding: 0px 8.1px; + cursor: pointer; + transition: 0.25s ease; + min-height: 20.67px; +} +#serverSelectConfirm:hover, +#serverSelectConfirm:focus, +#accountSelectConfirm:hover, +#accountSelectConfirm:focus { + box-shadow: 0px 0px 10px 0px #fff; + outline: none; +} +#serverSelectConfirm:active, +#accountSelectConfirm:active { + border-color: rgba(255, 255, 255, 0.75); + color: rgba(255, 255, 255, 0.75); +} + +/* Server selection cancel button styles. */ +#serverSelectCancel, +#accountSelectCancel { + font-weight: bold; + font-size: 10px; + text-decoration: none; + padding-top: 2.5px; + color: rgba(202, 202, 202, 0.75); + transition: 0.25s ease; + background: none; + border: none; + outline: none; + cursor: pointer; +} +#serverSelectCancel:hover, +#serverSelectCancel:focus, +#accountSelectCancel:hover, +#accountSelectCancel:focus { + color: rgba(255, 255, 255, 0.75); +} +#serverSelectCancel:active, +#accountSelectCancel:active { + color: rgba(165, 165, 165, 0.75); +} + +/******************************************************************************* + * * + * Loading Element (app.ejs) * + * * + ******************************************************************************/ + +/* Loading container, placed above everything. */ +#loadingContainer { + position: absolute; + z-index: 400; + display: flex; + align-items: center; + justify-content: center; + width: 100%; + height: calc(100% - 22px); +} + +/* Loading content container. */ +#loadingContent { + position: relative; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; +} + +/* Spinner container. */ +#loadSpinnerContainer { + position: relative; + display: flex; + align-items: center; + justify-content: center; +} + +/* Stationary image for the spinner. */ +#loadCenterImage { + position: absolute; + width: 277px; + height: auto; +} + +/* Rotating image for the spinner. */ +#loadSpinnerImage { + width: 280px; + height: auto; + z-index: 400; +} + +/* Rotating animation for the spinner. */ +@keyframes rotating { + from { + transform: rotate(0deg); + } + to { + transform: rotate(360deg); + } +} + +/* Class which is applied when the spinner image is spinning. */ +.rotating { + animation: rotating 10s linear infinite; +} \ No newline at end of file diff --git a/launcher/app/assets/fonts/Avenir-Black.ttf b/launcher/app/assets/fonts/Avenir-Black.ttf new file mode 100644 index 0000000000000000000000000000000000000000..9da575255b18d91160a9d6f3bf1d15506801fe82 GIT binary patch literal 91016 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

TT+HZwsCh>t)`2k<}) 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%0A9y!3gW~@$jNOb67z~-;f!0fD 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%0DkM7Dz%Adv&0fCm@fTVQ^N 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 z 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ν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�_f%;2?iDL49N}#34QQpVF?BS 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 z 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 literal 0 HcmV?d00001 diff --git a/launcher/app/assets/fonts/Avenir-Heavy.ttf b/launcher/app/assets/fonts/Avenir-Heavy.ttf new file mode 100644 index 0000000000000000000000000000000000000000..67738068410f6311e359e79b0203872b7bc67150 GIT binary patch literal 134548 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

V-)2VNzdMzTl?8cnSlKxQrG+iQ=O8dJ9$Xr%!T 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 xI6^+H<VD+@Ax!^9 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 Ui8^S6lHpKz-b|3_h0-sA0Ja?7*8l(j literal 0 HcmV?d00001 diff --git a/launcher/app/assets/fonts/Avenir-HeavyOblique.ttf b/launcher/app/assets/fonts/Avenir-HeavyOblique.ttf new file mode 100644 index 0000000000000000000000000000000000000000..d3588cd1052f8448512ba82a8a4f0080f5c5bb5b GIT binary patch literal 60008 zcmZQzWME(rWMp7qVGwY03-Qe;?A*h^@XCjQfkDRI#np{LgRzT&;kFF}1B0A-257sy86!M+Iz`!_zfq@|*IXAK3t{4j& z0|N&K0|WE2@>1_s_W3=GU%xrr48%ySrjGB7Y!fZUgtn49X;`Fs)s!=XJ43@MdCX*v1sV;KLNapvm0Lkj(Uy!I@EmVLqbGX*f1F$FLNOZdm}W7QGR<}?O-kT_Ek zSiLex4`VBX3*#OJMaEVJMCdu(x0eV8~z!U~pmzV6bEgV2EP4$Dqs<$Y8|C!l2Boz~ICf%aFjt&fvf_ ziy;pb_Fyp<22;if424Xy7@Qaz8Qd8g8G;#E7#1gG88aZG88jcg2Ry)9PXg7N5jl7{{I4pH7FjCFgPASaUsTF&nU*=#`K-R z3KkEbxIo5CvlwET9T_yiaRG`C7>2|JD2^?_;SLIWG|U{rV95B0!3`7-$e0o2XK-9F zNQ1%#9R79;E?^oI7sz-PLn2cWg9??El{}l`$xT;soq}kli5vBhzac{J?1e z7Y$0Ipmg$`!3q@jpfm_}Cn&7!7+i7j!Rfh-K@JxUO6%Zs^%R_zT^Pj}>=;=Xq`~3N z!eGuQ_Wvs*%m2$zz8lkj1|P;J3~r#j0ZyNw{2|HU0?H$xGz+2szk$#UZeY3rOiMAc zFvx=94rCuX&1A>G0g6jdxMI*R7$TVGG1!9g8z{{~X*MYB!eqyw3Cag}=qSck1|v{D zh2|9y-w~WnKyd_0Cq&SoybaD@p!5WZQ%D|v#GnMu>&SG#|2IhP0oi8+3NLWjvM?Ax z)0HVB3quzp3qu|w%l{XQEDVy2EDY96YZ*A0zBA~7^Hm^&1LGG4Y33IU(u^7mMNq87 z#LiFw#hOfk3`tCZ4Cahq7)qI6FvPL+Gx#xTFgP%3Fc>l{{~yhi#GuFcg~5jT1w$Rk zT*fa9I!rnY_F#LSGT1S7Fi3*RS&&*#9%hpK|AkqfL6<3+A)09xgD2B0a5?PHG>gHX zDUiXHkp)~P?PX+PFk@t4@MdITFkxh2uw`Un2w-Gk2xMeo=wM`F2xDYnSi;Ei|2rcK zLn)~IX9{F+1Yt%NhH?f524*Ohfz(Efa~PPxEExtC#s&rkh8PA1237_c2403bMr}rO zMo-2%#z{=lOy*3-nNBj@WuC&kl6epF0R<5SDFrzNB?UDF0|hGu7lk#7!iq|YYKnSF zOiFA@{7OPfqDoRqa!T4t9!d#Hsj8~q3=0_b7%drn7$-4F zFqtzQV>-!n18%yof`o#Mf&$odODv`fDv2sd!c9+6J@uI3G0%_xzZw7k|Nr&>`d{wf?SB{lo%px!q0K|fhZYabADTSWeyIFV>cQp*z7Oml z*gP=3pL9R|e)#>c`yuxO@B7_%y03Ph|31&{6>`OLMI4Q64d8GBRi(7SY)o7rgBigs z3lIyA8R2aXP=vyTu`odGJWw37Ft9SPF|admFmN((F>o{RFz_<)G4L}8FbFaTF$gn= zFo-gUF^DrrFi0{;F-SAWFvv2lzF&HzLFqkr!F_<%0Fjz8JF<3L$FxWEKG1xOWFgP+eF*q~0Ft{?fF}O2$ zFnBU}F?cihF!(a~G59kCFa$CLF$6P&FoZIMF@!TjFhnv$F+?-OFvK#%F~l<@FeEZC zFtjnWGjuX^GfZZf!7z_uF~cH;B@D|LmNG17Sjn)OVHLv~hP4dq8P+juVA#m8nPDr# z7KUvMI~cYz>|xl=u$N&UV>m+*LkdGGLndP+Lj}V^h609c#zclPhAhT>h7N{Vj5!R& zj0KE^4CxHzj46!ijA@L1jJXUs3^j~C3@aFRF*GtHGvqO5GuklbF{U!)GSo6gF(ffG zF|;yFXXIxTVDx7UU<_dlWej8tV%W)8#Bh+&lrfGmo-u|oma&nsi7|qqk};Suj4_&_ zg`tO`nW2}Vi=m%k0>eaxK8C3b(-<2VrZCK5n9DGm;Ul9HqbEZlqbs8uqdP+tqZgwG zqca1;4h9At?;Q-B0TCM+8T%r4F#d1d!QdjhlYx_gIX+Hz2Lq#yf`V(N%Lc{--5m@} zIy)E`wG?%CFfi*VxNTrobqk76j#TJU=<-bIQgBnqNKDzlq6(&iB9v3RBJ~wEFa$?r zDr{f~iBR0&5Gf63rbb3u>F!`)0hz-BHm566!A&6xYC=|GN>GGySET-5-5m_9I^GH! znAHLz0wXpwxJYksaEX*wR8(-?a3COJ!vPm*#mGqA9Sm%6mntZ@)@DjT-OR4DgMm#; zcLxIp#FXHO4Gq#893s2AKxPI|kJ43y#>ptm?Xh zu^}KrS#bwrgR-JDNI+RpSus*tG15hM2Lq>$cW{KOi?pI*q%Js&wHbCXfbtfTHsdY^ zW(H;kCT+%j49pCA3~CH=3}Os?3>@0~7+4t081xua;CxmFEhKq{eGH5Y#z+GD7?>EW zz#62%1~BYmU}IomVAtNkzyJvW1_lNZh8%_jh6;u>h86}k28sVN3_Oev7XM0iA8M5;s=9my`qds1;y zbENi22S{&|36o`zT_VRMS0ndG-b21d{+fb}LY=}EMI}WW#Z`*$6yGVCDD6?!QtnXx zrXrzoN>xiuOl_UoIkji%OzN*RI5ZY$T+vj}JfrzRD?@9V)){Rx?F8+8+V^z4bhhZu z(Ua5D(lgU@((}`c(o54jqMx9jqhF!lqCY`@j{XY$E&2xx6by6>EDT%>0t{jdG7P2} zCK=`#RvES#PBNTl_{ylrsLrU%XqwR?qjg5RjQdPHOhQZ&Oma*rOj=APn9MO*VLHKd zj_C^1Ev5%d&zRmYlQKJFcEjw6*$1;f<{aj$%(s~zGCya2%lw%|o@I<>hGmImgJqB9 z49g{!8!Y!&p0K=PWn%Tp>YFu_HJ`PVwVJh&^(mVLHfwBl*c`FBU~|Xjh0PaR23sCm z30oCg1KTXy2exl)f7r3u3D{-Wy|VjeFJ`Y~uV-&%?`9ulA7`IsUuNHA-)BF|ewqCy z`+W{94t5S+4q*;S4tWk$4s8yT9OgN!a@gi@$l;vBEyn;S9VZJX7pDNH7^e)U5~l{I z9;X>jOPu3e#9WkI^jxf5++2cO;#@Yl8o1iHdbozTCb;IfR=BpfPH>&$y28!G?Sk7K zw-;_-+!@??+$G#q+zs4q+&$bw-1oSjaKGaI!2OMffk%Qzm&XE+N1h^{UYNq9_rgIF;42le@44Mp^b}^_jXfQBq?*dn2%-Xvdm>EFI zShRODNHMT5@G`Jy?_yAAP-0*PWjTQz46GM+FtF-7ax-u;@G?j;@G@vJ@G@93@G^KZ z@G`K*?qFaR*ukK9VF!bv{tgCpfgKFmcR(euYs3x)HGS!w3~CHKc9A<67(fE*AOUp- zHoM5(;G%Gv8 zG&NCER$^mUw_`Lm5)&0+V`pP$6BQR!6l4@s6uf6)%EZeqCa55!D=)9hX2kAgX67cT zrpm^)|6dB@xql3$&d#NR7LvTOf^y12Duz1793GDDHVUT7iozl$JD4*6PG_3)*NEvH zB-p(F|6(*|I>NxrAjl8~3MW=$-EMr9>EruP*t70*~r6&18tSWOiL zq(wOIF+Tg-q@bsxprFSiA_E%y*v7br@e|lx>Yq z<<& zmY`rYH#S!`H#RqB2V-_+c4KyBc4c#Ac4c99WAkNEJgLf2JgL?Z*6G&a)=@lZN>My1 zHsRJ8*5PNA(v>cTRE1o;co9l5&abKhwF))=uVqSO7Glt0FlDe~XoiIZMo4Rc{HcW$ z5+Wc05s=5BAt4SD5C;kDW-w!5WDo@>D+Ym`3>*xMe|9j43+!Z&1G6{;b~5NNF#g%a zpvxf6z#u4Oxr@OR$}%tnWdd<_Jw|1AaXDsoK4yMKWpg$)b#pmJadUM&W^+4cdq!h+ zK1OynIVN#oJ4SOeJtlR=#hk{eN(my?%CamPewMQA?D}pI23%%bP9^FYBJP@UtePIi zlI(1H&cWK8X8tO+Y|PwZ@`CKzE^N$v(#nEN7nGG^C1p=Aa?9wt7#sPTE3kUFGin*c zDygtsX5^98cQ(@XFjZi2-oU1>CN3kw%kgh3hp~>BoCqHq0|NsqL-PLz%w0@R7=#&= z8O#~n8N3-Lz`{}!6fl}dLFWw;@CJnxH0bz20{kF>-3+V@Obp`S62zH-iNP2gi2MRO z8RQw5Ael~{L7YLJL7hRK!JI*!!JR=KTwZAk>}0TpDB)nRW{_a8X3$`;X0TweX7FIJ z2IosvJ7!}eIVN^KW>BV7HB(bo;$vcG6EillV`9W3rz*~<&LqgHZt0<}Zm%QE%BE)J zuCDH&Ey5_ps-q^XEF;7WrT@Akse-5ntI|~yRzj#^jQ0Ke({G)+v$3qKv9mgiRx{y~ zP!tA}jMXqf7!4MNNIq2itE2|*u{!^M$IQTVjX|Bkl);%{?`{Td24--wbL3`VW6)+0 zW6)+$W6)+WW6)-BW6)+`jorl{z#z(?EhuCOiyUbFMU>`@ptxWJ#RW8S*gyhoAOVnW zHU=qhdR1qDuy!y=3G8IhfRupj)3>si)!Jxt5!Jq+-95#WS3=R+_>I@DH<_r!D?x4PPtbw7bxUxE=v^2M4HU}qjXk@XAn;WYtv9Ys>iQ6%oo2fDLF@uu6 zv5}cMQ)ts{2jdJE{a|ZZc2-40TSY!e0d^KPZ988L4Oc@6HdX~a3z@`(-hZ=|%~@Gg zMFdn8#F<$%tAy1Q#F&|Rq}9Z=oaL7<4>UHAHuW`Du{Bob5mr&tkx44XoxVVOlfQ}S+%zHlL9!4#2*{ubt0YPOqsNQ1) z)w5X3Zl*hs;`s=)SY}{kaQ~meSjKdRfscWkVHc>8%)qQ|V8{s0=VGAZ08~{nmN9xH z^6{w~L|f;flH zUU0$9XfDn!&aTd`Zmw=FZf?w&*vsGN>f@SXlh&-(C=$YCrW2r3YE)KiT&N$Q-^akn zkjS9G)XQYYz|A1bu$uuiN5Bd$20(QO1E}F5u!Di~f`K6;s49R|0p^U}@@evS`0jv7 z#-uxU((c?zV_;+u`QOCwlc9@&nL!py+<=_P1P&o{V`k<0s;cZRa0SW8V9Rir(TP!$ zftf)bRI#x#FoK-`Y9+AVVE_q%#uZq!4GdM4&5apNzVm%Q46@Jr|1XA53{x0*8RB*` zuraVQfLcS~{K&>2#=yp)#=yp4#=yql29k{3!N4Z4gMlBONT318W*4~=GzJAJ@R%9I z8JHQ=8JHQ&8JHQ|8JNMPnK^O`!xyD>;fB<*U|?YU|MmX`#urTA7?>GUc7coqw*sL) zfo5`ORPxwG8W@VJGm1O=F)r~pkYnahU|?eK{r`n2mFWV5G=n}vIxID?gW{SUsZ})aKNJs5pvL=WCeu-D<~X5nphc_A(?<( z9hAfvW2RfZ&rPmivZ@Z=^cOU_$iT>8&A`Bv!gPT_jv)vZxaDqcvR$wQCGy@~3rOgN~H6aabXa&f~_* z=)-8qCo3hy%x0#g>%>#TZRi?iU=Uy~!OrPz_MOp#|DRetBNvafoT8A9p@|Ncp|_Eg zq@jJys6;@_8W=#HfS%5L7!y%nNU8KUB>E`AM<&1m(S>#M$lKS@u9PW<)zc9rx9br&q zn7EsPi-DOznt??d-2anikYtc%&}5Kiuw;;C@MMq%Cm=3?9SrL5M6LpgMHQsvh}vRf zWKaM{tBSx*kY#^%F)%SGFtCDi3#jcT2FdH};PF*426YB826F~626qNANbD)Hg9eE&Tb=hqfC2{IF7=P>b2HVe(+ZDKdklQvM5U||)}v{FMhHt*XZ;5Mcllm+S~ zf`%NRC7v3C1cMrb27?-d1%n!c2ZI_o!3qoPWUzsyGaCkR1{(%-1{(%*1{(%<1{+9t zgIoWM?4sa)6{r&cYHOP6F`C;ki-TL3kbqZXhII_gK%FbbUR`ff2{sNV3rQ_mUKS1m z&uBxVU`uHZ7C9|rDPv6zHXX-cIX!DuHXU6NRXI^+R{dZJJrzl24r>z=Zw_W&Sxu%3 zlKQT?mSF-+tn#{6il+W%($Z%Brixa&@~lh(VV1hC`jTlD8d{e8(kh}F7XR)F$Z1L# z+dCLZXvzsNfYNOS0|Qe&(*Iah5eF*#5o2NO zAkVRbJO^sffLcR47(gvJUYMhK86+5Z88jGp87vrh89cxvhz5qB<_?NmLCxz-6c={= z`@tlRW-{6e zFmii5%$q(vkAaCHgkcfWEXF+y%;14JM9%@z@&Gm94GbCC70p@M70sDu@%??o$HdD2 z_Yptip0uVTBKO4012WkYef$e8xXEoPlG-s;h`uj|PG5z0R0mfjc z1Hk#T^8YU;Tc&Fa$_$1K*|3riTF@bKjxH!jbwMTH4hB%c#RCgU9tH^p9tI5t9tH~r z9tIBv9&p*FE3lJ69ijv@+$heV4u<9o>J07->fj_|&j=b9GBby@ffymV2|R$rgq&jD zb1-uXNC-v9va)KcYuR(wOZFz{dK!tbvr4GwN(zVxa51wk0L2n~u=1k0n7pL8fS;7Q zx}l{eS3;JQp{Ks0k(Qb$uZXC$uv#}F2ALS#{=Z{(V!Fm4$PmZqvV$RBe+NT?{tkwC zP&eno4hDV@UtkA=%AK7IJ`607LdSr)di8U@*9_ zi@}b8fx!wa=Ky8xV2~Hs$q)z|k_u#yUWqc7|vM zafWCHb%tmLbB1UJcZO(i#4>{FB6#=5OidU*N&<~xWhFIpWh6l{anSH6XnYVnvIVNa z5QV9kIpal1Ed^0#Mka1~c^OS8Mrd<$JNf&GX~{D& zi8~r77|HXnvZ>qn>uVTtGx5hcvT`voa|#G3%8IjbNZCeP+U10padOJJq}y92Ycie? zR@9N?ke3q|Q`Q#MF!{IF%hx=qGcced#Zo(@+CLz{L_kSIL`hP|PE{w+UR6q7_b8tX zzmTw?s)f2uw4J<`Pll~ihKIU>EU4ZCWvWX|M;O={xDX=|(256p{IyxMh>?#`;ok$$_&76z zKLZ0(FVhhQQ3g2%O$J|BPR6hqF$}z$L7agR+6?3Z72)6n0;(}&!K1z+;6Y4KmrPg@ zr6HotC=43RGE>uLWQI0Cv>7)sifDLS$gpz+SSp$*^RaSR1|=K)-&t($#>#H(k>Oe* zVPT-c%Hix=$#g_m+r_}fPmqa4R@Yj|%2!{6afzXZp6)*pHZe_Q3mtH|=J)>{(_5x% z42pXgbU;n z&@eY6Xbv1a9k&y-?)A?O1}^Aa0mxnKiZHl|@v6YTl@g4u0{?bPGiD0>lVmzlw65qt z5jb8!_Es|;Vc=wd59wm0QRuV|xSa+X$YKL`)<7wf3D%ki+s3TCiSeYszpYY?76SiH zXx1?uDcV)^?-tk|zyI%;`I)XUs4$em{D(0)gvf=v8I&0q8I-{G@CfW=5QbD<91Ow? z5)8r&8Vte=77W4+9t^_ZVvtE-Cj%&xfcr|a4B`y34C)NB4CV~74DJlF;9^jf4ccBe zHUbZaA{A-&jLPPUOsD%6B9cyEhhdg%j2R+v8AK>cOcY?`H*tfdAa$cSMHN`u5)xhx z3Qh(_P?}=;3694=m_ISX6J^#7wX}iOF~~6uT1&>k02(P2HfB}?&&nw>D{rdPVD#3g zORm%Yw^h52>Bzrlj8cDX7%l#t0F^(C3_c7DjJn`4Wpga!mQZUjT!x4N1MvLc`nu#g zP}v4CQ}X{iCSIl^41x@PyFo(<3?OI0d?^4*oB~Lt0b(3$Cj+#7!p^|MAkM(Upw7U< zV9vn9;0|t|7#OO8rc|K)b~AHfW5%OwYPO-KAqlKijOvPJhMdlIN3{H`mHk3xl(jq^ z7;i(|&R^Ka+BX2zI*OJMnzi|GghD}y#HL@+`Z8t>rIS!m8NW>#cZ z+*B9Ls4MU=^_W^l`c2g(9@UYHRy`wR9wv+~vh<&3QRk}HCk{#}n~WeTcbI`U6|@xxym zCZE4sKp2wlnGL|{J{qT+q5em>8BxnZorp;HptxXzI+2qB!U8#r(HN8iz>%_?k(bG< zE_uPfcT7H@RQidD@2?G${NIP5dLLBYgfd-c5N1$Ej5$NY2;l%|mlPZ$l8`cnok5a8 zoI#R7ok5bpoI#SoodGnA1DZ((^^l=M2+9l+49W}|49W}^49W~1;2tt)%$eEP3_J?O zuB69gjy4bz1+J8Wo5NIic)W@x1%pbPiQt;cJi*I=gI&}t)ErdcFvf!_C`RL?uF&9) zBy&d7#ExiC{iWfSU}+lTs;=%D1F5^1CVAPX5#_rX_!$@(xWOeVsN@Fu z78IV~mISjlBeOCiyar?6^v*cOQGtWgDkRe)O0$lUN!r?2m6b(I(^N7_hUtiizQ46| zkgmYL+l&)gL^MtV>wAz>C|ViE_6A~Ew2@$ekR6$s!ma+X0gs{YR<7{rcq9+ zp!5f-SLcAsN;!s3$k+gARvJ8F3QAt$44Mq$43-Sy44&XlI%srOoB`BFgp3U+z{dul zA%h4iXuXMOtU`-kaQ!UAz{tP{9tY!Q;A0Siw;^R9HMKD$zS)J9nUzta{F`yCvmz&} zyrGlE#2HmFT6K()(&qX~tSqAHMiRNwOh<(E{A|>mj1<`Z9cR?}cZG2VtFXGVyqYlE z0Z{p;`TreLBGWYneMI|E2UODPAk_%S?L!^n+J~Sy2ym?~%^=Po&7jU8&0x+T&EO6m zWi~KGv=3Rp1NG241l$y3F$cxEm^kAPK|573Z52soRvq_XS9MMfGyfzLrxMj1VOK3N zU3D22khqHmCx=B~lA%SaGLw$1G?$pNgo>Jsl%9{hWvGRWj!BHNI*){^gu0fjl&-hE zd4Q>uk~+xWQ49=Bv%vieb6DDjR-%XqLoVh(O%(=kd!FS2Xc?7(A*l7i4vGxpn*vM* z0yl%}n1YIm{;q@6aq0ixF}-9u!XU{IzZ=vjX5eCAf!8n?xkv&OoJ)N8^ec?g^ih3aax7v+S(>N$#UA)*|BiQ zS?cOKX-lx!)iJU-q*mT z5H%F2kP>DzW>ij?SjH&S@vlCY>B!%gOyc0lFGhxB1_l-jrXvje47lq`jCu#!phd(G zqTYd)qfU$U?EU@d0g~1S1DKRT2ciA#MuL)tg-0<&wMI_Vv z5~d^nm>BAz1Q;REWIen+h@p(`g4uEKCPM%xA9ZjdwC85qG8IVWg^8DzAH z*;tywcVKZZ?9GzqdwzQP&4&k_P>kZK7ld=1Jhj8z6VB< zfJPO#uwxe3$-oHCI~)Q#8Q8!jnmMDQxgtAgI?|YN@4p@aCP9IJ4vftLe;*eyJ}4^s zrvPo2>-#tE5?hpab)tULovxr6d0Xo5`Gm@zggEsFa< z%>kyqzbbyrpbe1>j0~CoFEDn4=ftH!3!a(5=0R6%z=k;u45b;_nGc)}Kh5;*&ks3f zHU`jMiWEjGm^)Y**unastMot(btZ7H4m9@21X_ftZD1&FEUXL~3+043W4|BM9lt*v zp!h0f3}P` zQn`dE0U`5wpuki&W@Lz~>|inh?O!F%e=x2s8(PW1j)k zQ&IxuOC?ag1Wj}@F{pss7c2rh8T4VpVEPQ=4EhY}4EhY_4EhZ24Eo>!K1K!>27PdC z2wHC>3{i}|KM7ir0Uv0vW<(hhWoBb%RyIfKJeo6BGAo1{DB9|Xv2wU2Wb4W?vRfFa zxk;Pp7FrrRYYMTjGO6W=OG?^XYOyf!h{^EVxv)EFstT!?saQEHaq#NuN{icTs)(!T z8|VuDdvl$IUsg&`T!7u$7*s?sfaV*En7)ALZFYld0A>bB$b2LA$(9`qyaGEI^x&-r zX#PP2DPox+w5WqF6#$1ZC|^M*9kI{2fYKQUgB&;@L6h*%guBJ3QxZgJ+u zK_X0CMU3lNc;pQg70tDzSs*M6Eh(li|JL(Jit(wt#F(1KxTtIBczlpC(U6ePFp+`M z42%q}|GzLvg40x2Y0wvW-KqlN zri+*WWUL6>bRlwR3%sfj)@Io)q%DE)u8gsWi>Q&2u7Fvztqcc;SwO0pUW6=TfS44_ zv*Kc5LQ(?kDo(MMma$GM%4(oCD9G<~plN3_WUiVMl6LUVRYNO3M4G|KhRBHsl=+}( zhMfW1L^Y^>!*&?bO+@_##2m+vBnlbCL$c{ z2JX?uN=7OY9Lxq4Sw+9$Nd=l{%(bLFbTnY;g-=Y9hcWOk4@RN^=Q~i?IWxXtkYZ2- z&GUnn`U)bIaM1LC2qHwId^dw4eCQuEcEt)QYuFiBK@EM-bPIzy11p0&11q=>14=4# z5GB~NoPi;vCy6%v$sU*fD!7HgK!o|#!&zEmn!B~~%Viag4&z{E2A|S0I5}x+24V1p+{tGabGQI&% ziVdzHg43 zbFpriyr;3You&jU3zK}5u350D7(2V3d#nYxjGd!kt|iOD!mnT`r)Z%i&C21(_~4(n zW2UEul5UcsiiDQ6in6k@x>J-fw5&}KRW((RHBu83Q#FyZ_XD*FTo@RbG?~6INHHYC zf*M+KAcC3;6x84`Y-sg^9I~LIL=X~e91MaC5)6V28VrIA77T(69t?uuU<1|Tg5Z!4 zHU>>g$}xc|WZ0@ccF>lEZ%jgd76$f89IRRuO3X~$3i5I~^1{q26asa$zrIesKLr=q^PLM_~4%cQ?snLro6nSHUrcD z-Twu^?i6B>W0<*%K@v0$tG$CkQeX!IV#okmI^l68bZ`)nz!52)z-a9b22hCw8cqN& z%aCD^V31+ZV31+3V31+(V32|IC7GeA6f%VxSWtmqLPStZnxCD? zgALWk%(}jo3M{M{tip0Cf{gzb!@SSH$N)-XK}=s5xEZ`)X$;zDK%_CKU%*iSZZ#qj z9jIT)23}IRivcvO2x=*V8z<(*?83^RM#;Jg=c}{cZl6DwNvVSA%RklQxBmV5`W4(? z0i_WQrY{W43~HdJF)W2ZTm8`VjEH}*xylx8E79LApl(~g76)59u6S@-7o=8kltCr6 zF*`Vm!4{b@E5jGofS8c&56sFwBx zhj0diRzQfN5HXwzi4(l7Gf2XLbch5Hja%FuA^~XQRv4PQ;Gw7v8UsY@5w#a_F)73u zn+F>UvvcTyTeqqb9L$;(j29r`iP9rte1O)x{db@73YIW+{VxM=cPv?zg_S{- z4QTl*GiY+x*xZ;E-u{6s1Y{Dd&}8P8hx9DPI1sI#qJII9aJ0~pLUaNdYr=T@2BFvzRyTGM2Qqz)y0o$@TP;z5qfb5Hbr69z7HnVbj1visa zpaHiCw;-PkpO%FpAEQbI;{zWpJr?E?7FKx;4X%IxL2Wg~|6dr-F}`8YLyXsJgPLaA zNUdOGmuU-tRvAD`P$mWm2GB}nCI$-zCI%1C(#=@NLNqBzPllaAib0$~ib0)0iou*g ziou;h3eqlsR2pocjTy|KQ2=x3whS{p_;7uRj5Uvx7(WxUvW26mJUg4NgO933lzg;^ zz8bHrln@h(vW26WJUg4FjfaXsq&Q==Asdefub2oQzr2~gwzZ0Yf|j?GA{(D5pQHpo zudIolhP9fIq6PyagX8}%jO&=P86**F5TK)Ch}gg=IFSQ^5xPDdv_WO6cR7NQ1LvMg-! zj8$pf-D#IpwAeXPIoUM!F=5bVQfM>^8#DeY;$jj7 zSCX8p+7(L7%-r${;Obws!dJyq-qb~vQ6Jv;W@H1UMK=ZpCU?dM44}Pz(8?R?Foe@F zIuZ!KK->k|1`BF&fyUw)mED>HnKo4aXJ}x2@NWZS0A!7g8v_G#4C4bVa|L+pftFwh z6^O$ATTq=<#m{ zXuOz#fysgK0RuM!d|n+R&0>TNw3h;oR&YEc+zbjV%y|M~bz^Zz3z%K`N&6(9n$E*> zC#6p7V`REFVZyzC|JJMljSav1F941wafSj|JA-gML8qV*RRXj@%K=)3z|6o6o?6+- z0PXg%GYB$>GYB%MGYB%6GYB%cgS&n3cm);ou&p@ujBYLAOv`KkofcBlx7IMwlH-#V z5R(@d=8|W8@NYAt@86wD#>#>`Ijrm)g3`j4kbI-Wz`*#O@c{!DV!aba@Ii}caPWb; zq)gz$2RH>lJNLnd4=|c4Lnj>!8P&h?F}CslyUHlQ`!6YX6OLyBI(k zpo!bajtR6**P4+XGH}Aj4BCsp&&Vbs#|ReGW3p!iH6ir46cr_zWmuGT^#r21%|)dJ z*cqi+rIeI;cod`sSfrS^#6``yqXo27L|LVo1*H|Z7=76IWkioD87c~d@QF%r?~zp# z=VD}HM_XsEPbLQW90Uz?FZ;y)WBH`6=NhGCFnLA$P5Kxe;zRx5#b zo-!*7GjjK)^)kKtBLP1Bk@5eD|0#?vu<$Tu;DLq*4}&o{Jd9!C!NxAps)DD#geM3lU{e7Ep-DbAQ1I5HT($909_}(9dw4 zDW0*BL6JcoH2ovUz^u)%n*nqp7%SNQV$jtW28Q5yRyB3VHbi!H&`_9|IJEp^iszG2 zR2P@g7Z)>C7L*kiW|!cSR@9J?wUClB65*GY5aVXl6_A(U7v|#=c_cs_ z(3qITeOdcLA+RhQiCgBd6?9QvWgUwBYLA&yt7#NsVGhJYiXQ+UA64B%1-v?>NVkHK8+`hk5$z%&dw}BAx_vpK}Jtm zjG1Q<&m#H1y#G`aZil3(`Z;RKD~5}Riz?|zM1|Z26?F_u43-S>OjS&242lf84C)NK z8B`e<8RWnzA2c}34jvo^4GHsJ0B!!*!JvJ?z|fu%v~`LRw5=OF0w!)Q&JG#|1MT(( zO~9$M3qu-8;DK&S3t@gXHdPrd7cJ!gZEX)(3lj@<9#)t@h>b-Qmy5G=6c?AXvvc%p zLj@mgEnfvgYXfmfNpS;fLziF>*Tzs>%FvLJ#WgtC)io#xTuy`5a4ZM!>Fe0dAPhP= z1-gKSnE}+=fyEWHT0q1Vw84cCfOe4B>>@!MykUo#fR48X6#}~$xEWZ%hmq`H;1GZu zX9Ak}g&k)i42>(%3!oWDb7OOL(7Z2b0v|LH4IUXKqPoB#OQwklONMH21kZqhCI+L8Y_c2Y@8k2 zEZQyx69#jzM`1x{1IoZQpmiyblpzI94>sV5G-#g!+Zu7S1wM@I$op}jYu!N|2S#&H zLIQ8w6=$|%1g*o?X9VqFkYf^Oyvt^wz%M5$#KfX*=Vhb9&Ss@9CC#$XXk#bDb1XWM<|OmEsMSQe|c45tHF#GLuu{ z5Rep6}C$>6|X$>6}?2|fd42ZN5l4hC;{6$d?53LFsNI>Hc?2n``K zR&t;|E4X;#XJBFwgSyEOJjt?y!4Pp63_F80gE)gVgF1sXgE@mWgFE;z7|5Yiu8__y z2ZJkv1cNJs27@bu1%oSt2ZJl5vkPji!iOc4K@~n5Y$pTiSu&6bKJcnF@Ww@^Qf>`X zJ4JmrZBU74>1W^)#T3V+DQ#uL!NM-4Dy3k=@z0FguXuv5Z+*BrH@9y|KZvD~%^_nS zZ)KGoX34<`V=-!~S*nXDTKVbf`C7<(cq&V|naLQah{&s3`nIQ9Tc@`B!f2aJKV4nF zOdBW-&ie_BD;ei9f$A(BhNZh1WEohXGkvls!)zL$u+>1Sp`lATctAxVs6D3x&hZ)o zJ3$8`fVORMFt9L4FtC6&yf9cWurPQqus|nxG#DV~BoJJv0Xa%R?!pcRIsF|B@)ve6 z$m@fant@$)FlOE59X3TvyeFfv|~6k!)umR8mfVdW4M5ac%%7qhlqS;fS`$ICCE zEDdTFGcYkYFo-cpGu~ieW#9&%!~)v+2P$RF#o5)(<(b&k&BZsw1Xu2G2?mot)*C;1 zV7wMgg6pC@hRNVPh^!2t^*5l_G^iLbFa#}gVpe8S`{%*OB&U_e7?$?$I;ihV-Z>*I z@cb&sAje?D;KsDU_Vfw zn2Di~aRTFRrVHS+w+@2#^MY2AIZ89IF>o=6F>o=cF>o=MF>o=sF>o=2F>o=YF>o=I zF>o=oF>o%FL!&L?@hNlc%3{0`0O-VZ#RN;j(#*h?r zybWAROA72{;D<#LKZ67VKZ6DXKZ6AWKZ6GYKR6y)!JFWqO$K=e2?luv4F-7z3kG=x z5AaD|kX86bXt8AmUc|-6RK}`gXs4)Xt}4jNst92T1v7C9%Lpo&v9f9^2`WemG8rgZ z=}1cISSiA2K{+vA10^K`UNJdvndrozz%&DVz7RjSt;-8ta}5e-(EK!uHl$<%4G@B& zfD3fikTLAEIdfysYDLEEG?CkUw?)!K?(*IJ_mfGE@9!ffyZ*HP{{9h_t3E>aIq=|J?U%*187wZJ1pRE^x{B=Lx9`S&~p;m+4vbnjoB4LPVp-+ zG0BNbtFgxOr?@!zadJA&KF0HJFJr?D9vOa7A$f5&cV`C&2i+W|5KwwyWC&)IX57wn zfx#GbW|%qy3$%+a!@$Cz3u&`(GUzf$GJv+Z>M~d|=rVXR=zVY zRwul0Gsymc=C*YiAc{@l=?6MD1NOfb0~3QHxL5!+pp3v33}^}l zZ%BZQHG*~kq1z@wi)g^za8ROQ?Bd#DI&ZHqADGxASNy?CM77$3F;{@FfuG+GGSZ@UQ?-qdwv-@;>H8&xkEM)f!5D3 zN_H%aV>$v_TgeEXGXsqcOEOG@r5mU&L=PI;cR>h1`!0xaI%raZbg4mWU_?MgGV+Oq z&}9Z-6`;+WpcT2`MKNp);tXsIpd;SQ8Q2)y!ADi?Vi05y0dH^sZK8*7NCvHcfD9$8 zvnvZT{6`ruc7}{4D~c*qq%b}}8a4i>;HzTFejj`%2O~q$|0bpi@Lmfkn18uIZsh`X zICe7dflmx&gzf`TWL5@keqdBJ^fnS@W7l?xG-2c|jmpl>j$#awHgr}u^3WCivybW5 zU+~y;7Q=N$LB>MR*#tzi${~9<_(6kupsE|R+7478fsSN^4)*7uY>j7BM(llOWDx%^ zz$nSUz#z*|0qXp-GVnm#r99xXaCR}sg7(XSvk$1>C=bsS(D4y)M1Y&RQ15eqT3?{d z0or;3DvIIdD?0-}gE#}I_~K_UXW(aW2bZq~hT^c2Q{5c0bOTysm>aJU(^e2*VUgD{ z7PHiqQP$xQ73O7PRute8;u80^vSATal$BN!xK=T6Yd=AF8UGi?i!9ftrbov!jD6w!4IY$#3AMA*_MO!cg%4 z0dq0a69zU0K?YF(_$=2kN}-m35~upevEAY8A3uC^_e=Dtf5CyGB7g~|9`;T1NN6ZgEB)1 zPG2F$$DrOsJ|Ik#fr)_+nrGyo{sV19mw}W3PMU?aSCK)CL6Jd?L6O0XL6N}?e9Rqafszq}A~?Hq>hA;{#QbL$ zxU~)vg9Q+DT_(8w1kULc}hp%ca&pb8q4vA{JVwtde#81xCP`~($(e9Ziepwml1frvN& z0d$Nn6Re{P9+hW|W@qLCoy;P`#;T*PWye(~*#kP6MVy^Q5_B?)xBw^QWEPZRdr@<7 zInd!Ok{Zy%StN}RhqFkDfDUKj5s`ro>4WbXVPLw%+#;mLpu)f)z|L6A@SK4Gi+BkR z@lq7=8n`*-DB=k7D^SE&!_`-V#2J|W|6*WZ5d!c35@yJPWeVtw9wJj97Ue-R1)_1Y zn?V42U>;~sJ0p0c3e|hWAjn9Hk0RbO+06Atsno*gVN&DZI zo|#M^SIb2&6t#RzhzHfagd+3vIBRzhT+$r;MkaVC$ae zF3Szx2aV-$4r@j&Y^?}y4x9LTAJCp?V_ODrS_AE^Z3m}84QLwNfK|MN0lRo94)F@8 zIQZ-Yu=zR+3<7M7#heg(LE=Y|#7m&!_6!V+tC7S@q2i$RqC1epD?sAlt1KA6=Z*+4 zC^7`&Ota8|TsBY}ju~1q?_l5;fXtOck|=0%+1wc0$t2(&XpIw( zlNRn1N~CV^+>m8-31QU1IH+V-$R$WP_%kpt8!&_Nt|2)5%NcpV;Sb((5B9GSSiG1~ z9;4)IbHagg~CbIMV~L1hC(yaFW7z{n8Gpv%F;1L*5AQkB(Q@);{s?!C#c253L1O@-3}ziz|Nq?z|LUCz|POsKXA4oL zLC*j~2tdcs5Dh+P*#Q;+9RUXFE`m!8?CZBc=S}f3fKNDJXW(NHXW(N{XW(NnXW(OS zXW)a3k%8B5iHeBHL(kJSHBmQbmtzza;bUS~QUjgQtjB0-V#j1`CMIsqq;D5!9_gSg zA*L(uqiY`Jplr52Oy9^Nr7PIALO;|fTwC8FxiiSQ*dUzATo-hfihhuyp`rEg67oO zp`(r3jO@z7&_0JYBm1U0;R5K{3!#}7QKEJ4QIB5e6oH<-Fo%%?ar6QMBZI~NFHF(Q z3=GB$<*+<}XzxSo5+hLMVgzalLIt2{3R=W4GU$O@rs@og465K(G!KI+bVfvs@CiHM zStRff3TROZJ81F)zD>m(bU2kcs09P*Pckdl3wKm%`8;fd* z@bgIV%UkHkuyT1j^YL-$I@wOPP)cfew0O5MXC;W>^U>i$LN!NaAIn)0+SP2k%D} zLWnauA&ILq?SYxY=!qn5j8M;z#V{XkJ}1*xxO#VxdIn~Y`OFcF?->jkoESVAPQv0y z4HPA6NUcZcp$UkB3%Y&^oQc5=d}#X;9BH5{4nXq*pk1G!1`Bv#l$`i+^G8Fu3U(7^*6Q*4IE* zP=FS6!keVljF6}X-O6GnCT_m==^pYLQF zCZd*YqhO;e&dSrApTwbO2HH=nS750XETI@+Vily%&;EC%oRO*+Gn0*^sh$Ee6Q8&Y z<2P0lQzH+qGqU=Mf~qps#=1r-hAM)}W@@2srgq>>woJ-u3hIm+uCb=`MC3I^d02TR zMFb`I*)D>PN(Ghoj0|r71;G179T;}O;t1meKt#5I<|AWJEE*$aEa-+ZaH|b;kqszg z?O?Da+-d{mGXi_dK-bwsK#TvC)j)X_yw?((mpnja zErT<|TyS1O7cavu&gg_)oFNM;Zpy&G$OAV2Bd9&c;LHPQ$AH>r(~-o>zCpyL85kJb z5#o$aprrBtKZ7y@189z3NR8nm*qkhoICPIk3bO=*7K0t5&<+NB{T&Prpk0s9%XHZE zcQDvPudNXPi3{vxFaRF{3%amILLV{)V+GmP!Ny?4AjV+DpvGXuV8&p@;KpDDp7?-F z$bohO3V=tiVTlu?>VaS?8dQ(W9&%t2IAi-eDpuu3uV8LL@ z;K5)D?j=Yvh%%Uhr~c#_xS^AP3Q!j0lpg3&{OkoMvxva6fxF@qL!ikmY-D?nJez!X<2XR6H0!Kv??;Q-n_!ogwYmtd@DA_cc49Hmf$i!5R@JnJ)!9clpf>3=^_Xu&fv_j9;_Z+ zybQZIqZ5ias7?W!!{~`34yv=j;tW|JaRz3FLer2DOSg83Y+583Y+L83Y+D83Y+T!Ap8U1B!|akj-X_0y`MgK-Cev zv5T=4K^9cPLa#4?Y()UKQ#ly0H)TQB7l1nLILBT<*2{t~vN14Z1UG8g+2k3aL*C#f zEwljxN~NIly}`+rag&@Lcvn7~kdmw(IN`AgYzPn&X6G>TPc_r?l?_n#6^9jwesY0~ z8Q|jxbd@#5K`Bi~X^y)>kRd2JN{PE`x+p+OK`99ja5@67=?AB;2x$6(l!G8~J0x*f zIS3NBMTo=8K{Rn#IrtyEejBVl25f#ALlbyDQyH|!3VKe!ZZh^*L6_nqN*Ii}B;>JZ z&^`muQcQ491ly_JyBL@m*cc#Nfk30v1kacdfN!Z{25(pdHA2CsDPY@DwXVW|Njiqu zEmcfk{;g9{Lq0M9+n%cb|1rWg3lz5Saj``BxK$;?6L4IE+M!ZR3t{a&4%ETRs;Xhb4M2)I>= zF}VkwPXISz6rmH`pgBBd=%HeuwPmufW(c-3H+L~8FhCR=7_!2eh0NyQ^K*?sd$zz= zXPKFEGcipSHq7&7FSRef}E;5J@;G?ue^*16O*_wpB!(O%Zwv}qTJ$&Vj`Mq zioA;!fsUo*mQ_^Z7nbJXWLyY2d6$X7@V^-NTp1e%Z$_rw;MGN-VQ%nbGw3)!a|TTY za|TNWa|Tb)F%0k%KcMTC5NTKmRN{b7nt?X*plcYx)h0N|pxr6Nj45>35!^Bdt$DHq zPf3Gz5O}}>3UnenXj8ujgE@l-1L!he)>zPRI}3vcc%Yw%HBUz1%Wt49eQY)EE(SdY zBk(m_pmn71kVjn%B?msq26Pn`XfYJh$-4I7>v2F+U!bNV^mH2=9dWeNZS)G@r`zZu zMUxOpOu~-6;TDtSw|C-j(o#V^_C`w?cI*v2CJm7y`8o@~oFwclod5qBz-JJH^M)EY z50o%6f%6Qg{&fK74L6WDLm9L$hOWMpQ3|eJ8=;=jiD3y?99?}al6pxb^=>%Smm#T# zl*?fEFgi0V2AdBWH{$`jUmfI5#xjP}U~$*~Uzn?zz6gOD@SrjEW+o$0F~DHOFoeem zq3zf{sN29V!LBHHM7=+l&`l@rB5X&^=g)tOp(51Lri*4O5UlFzECm zHArI?Gzf>;GXmX<$-$ro&S{`crUnqj91I2w5)1|m8Vm*u77PXq9-!uV>@M))dIPXx zP|sKL!VU%naK{<6#t?K06g+Ez#&X1s!7J;H*^R+FPLNu(Oefs^i?~ovsZlgmm0)KU zZRBngs1R`f`w7b~R3_8Er#*Dlk?WpGeuahqaxr%Fg8ER9F>z2m0~r&qWY`BwTTIU2 zdIr+BDr8s%7Kf+@jio}=S1}v}i-Yo#GdQh-)ib){P+!Y%7OQ$Ukb2O0u>ZxFK<8Pj zGVBD+u&^-5!&U~#Gf0A#5HiR!STe{nc!F1L!D1exHv=t}5oIiN92b!k5Tl-;H4~VJ zVuM!xLH2-fUVvOS2tE7@*Ct0X1}Sh4%fL_=F~OsZrKB`hL_b>F8fQuPZxVF+2WvqG z&MRU}){Ji$j2WyL{_X~?qXM6<4B06FS>g(wDb{5WW6)(#W6)(VW6))AgRZNxV&GuV zMY^;A+5ki3AVh5rt<5l61ke?{;4Edrzyw<9s|^`eQiN4r*e_!PH3SS`N(>mp84MWI z84MWA84MWQp&7}Tftf)ZoRL76n3_Wrb1;}QNHBm-3o~Z`E!G58iJe=gLlr_KIdUsxpom+8o?6ateIlM#g3{8#|N# z|G{Ix$n#HS42R))!38PrID_&6q~2oY2bcR=;Bvndw94oIe+KaRMPT(_U~wmgqhNDD z^C-ybs~Dxh;^^vKaj36ll) z;wRYs+F*Bbg`acIBKU8sAk&e^NXS{|jH`-^L4z=mb74Sd z4=FL!!U_|pjfhMDUGs);0%C+5v^x#73J=p0@@k`Iv@fvl&U1K zg8{U`icuNI;UU7xklo*mJ&mGFLcW&RP7(2U=XMvU5NKpFoq_F~B2&M@LQq+6$H2gN z5Ip||nV&4@LX2C@1CLvP$EO%QK|cEbAAA=4VrEd?08w8FI_Ks8e+F{~2F50E-2hh4 zPzX{FzVA^Ce0IDno^#cqT?|CQjHr^KB@ALw8t6V!Ay}De%#5`xRbF40timS;ZSTwT zKpK)#+|0~k3aUafD6M_uHX;K9)Bnr=#lUAG$uMXzw8CN^T9qJTA9|)AqEke=7Zku{ z80h>zXfuO@0o!F_pj3?Am*6=P=%`F*g|iiUeW48Q1IeojAsqpw208)?YqbGC7YZ83 zLEtyxEyo_706OhTJ!n;j#+}~hyds$HPAeY zE+aQM?}Nt4`It@%sDV&*1X!A5##xP3#9&Uk5tJ6?h0^O zxM~3jkRPIpYAt0<8%ISgyO@Le&5J$E3;l zMo5hTq#hKnEnsnU^UI*=6=c2**c^y@XNE;!^&H?c>p)|!AaORv=7|t{L3MB_xXgsC zHK=5i1*-?OkK@5*CS;7Z5Hv;$t>Z(%{(`8lLQxMgAFQ6ym0=^;9Eka#_BTX*4YbY% znZFwBPKbIhP+yaQi6Mf4frW$V2!jZNGD8(;9~LVp5rA&sWMhzJ5Mz*KP-Bo~Fk_Hq za0B0X0?J09$b_C2hA8!*wIaBk$H)NMS_7-|Sinas3qr43*}))sVF!cQ1<*p19Sop# z37|8~i7Gpnu1}=0J>!z114U*Djovtm%5kc!5M4=BI#X$%l@)oq3g4P1y z@Gt}osDTGhWGA-yg&hp$`a2k81a>kw z!up$z3=#~E3>plM3>FNI3?2-Q;MEnX*r!s#ry7BV@Imch@S&f4Ozap(99ggmfM-yp zybbc5Y(m7fl1!m9CjqHuW)bpgiDux5Q`Q`IGXqgQbs5%wwJbbxhKfoS+R`j6-10_B ziWXYZXQXu$K(nV7dK#)4s<6ouH4P0l(6p&yh^Z~VjJAw{oVliigr>P1l!oLPP+2$! zoCi!HWiT`kgU(613{KObAaRB=(C`MREdTe9X%1K%q#l%q`@wmG?cYDf-Qc_pR?k?+ zkIj5`#xjOoVD%vLUx3YlsCNeKYx@760emL`*ga<8x}}6+8dyE(?4#FU^Q5DjyrlbFyiPGHw{4%SmeOb1)( z$SCV@hzRq+_5s+~XDWklRnSwHM!8kNGFb)fRs~~!b46BNwAo=10TyOS4<=nh?6)m| z>MX_o0^oD2yb)pU0Sa>uq%{=KHR6c2DPqY4G!hIzS_~i)_8x>!wvrRr$shs_bI@gr z=8#O!&S1_U&S1`<&R`CP?%?rc#B`DzIYC|`ZG(LH6|175je<6w5O**MmLu+DEEN+~ zQ5F+y0q)17sE+l-EKq%oo+n^)PoO;X4Jl7J$3XH>)W3hA`!Iw+3lczMnRN`)!FkB& z-#^gVTS96K;h;RnSZ57Y54t}CoJY;Uc@$bT1-_88H6S-~KsJp)hKzVFfHpxu#{0k>IMBI2%IwBW zI@2ubEGBSI5P;m-Aux?`%D)`ODSib-MFrrsy|A;!6d5Kn>|l_BwXL8RbRb-UQDY%0 zDA0&0s7D5>pCR=Tc+M01LDHa$oOr;4{*XSY(1jfgpm|l$rVa^#oeYpWbwC42pcSI3 z%FrPc@T4&4)F4pr6oet$6pa}RGr3q%&m!aY=Jw`HhMiQ#nfcxw=~S{nKU>g2WwzkB zhODUrt>1*K%`0bk0~UwOOM>RT!SkDpo(v1X;t=(q{wYL#CBtK|I7B^Yjts1xp^#w? zSRA4r)OLcXuR>7|YHNYjGrB_O0U+u@YsVq#s~KK^&4HK?TB`+7?+%(%gRCKBW(KE8 zi253ahj8^Xz-b<$-ira$SY%{K|1SoOiK$AYq43LwN;Uj2_=6cMaO*-Iqg&p{67d~co z(7_nsNgu`ouz@pHQw7UdJ88rfFOE8(D_-n53_M~?r1V)Jb8yhHG9?!&W=;1LJJf4m z{yA92yXmrvTT6k)%D{Ob{J$9Zj5=e6Ik5T>BmF}?iO3Kb;es(z2|d^WF^q#~!tG>` zhgFF34B`y(4C)N>4CV~-4DR4zX3$}LLeM){L1U7jdZ6VhJ_h; zu9AyM%olVZEXG-P&L&8GduYIcXD)rQ9D?^x0p7m{mAT+MZNTZz3S1_ZGG>C)ANc$_ zaQce^i#suLfyL3+s+KbB0g0o}NyFDPqN}d}t!;&@Z(^DYw$~PHehI@okU0#XGt>Tp z?TrPM-3(>WvL1YY3zGU;XrCCQ{ySVfsP7Buo1v>OgRZw%Vqjq6gsW#`bj}Bl>HUB6 zzm%zu33LxU{Omhu`T_6q<7Qw4Ul|TMQU+E|f+lMCFYI7Y1)bUrI&q%x72=G_%%F)J zHSj(MGjnh;58CiACe99C7{bqJ%*5Z7q>%0>Wh`nbETyg?5M9XAtj4Qk=%k}yCS@%l zBPK7#&n8#J81U~wLNpIg44<_wBX3l`sagyp%21f803uvrIh`|Mx-!R5{pxr;hyOTh7_(0e2 zLYBn{V>`H;@xec|!@3z58Kjv^K#k{YQh9i8_9L;Z;; zUZFKS*jPx%mKC%!0(8ouvic&6puG0hIHn^I6G3Jo&QE}xy8%g1*v?A;owZ=X*w1u? zftSG#Eu0bdL&F&&AOIPk0k3%BVvt|}UGK}qV8Ot};K9Jfz#0p>Di?IHpfKndI5Tr& zaC$VaV=`0IHWhRdO7-vvW@9>{CL^Kc<>u-QE?c{pOu%Eb+ziGrH$Y2Hu$S?k`h&71 zS*;J-$v)uu=R77&Mqj3{4BQOj4B`yC89@7wm>EF32RWhVaDYy;V+36w4eFkXu|wu# zz%wsngs=vZ6oip$H3i_3$KRA6BI|Kh(G!#W1g zy(I7%1E_xx&3Hsj0NTaR3_S)HX-}Lne3otko8NFXNvb3~ZpY z)YpqvCUA2j~8l<5R`$rb!wIp_(aki-ibMS@xgKE|09 zJkn^)Xe`XgtjNJwRJ`NguMdoAOeg+YFuDFyW&mv?U|?oox`=!iAaooCn~Bga8FIfE zG_=AEsmM7PxEUlExEVAUxEU-MxEVY^hp5FuE{}$^X>~8`V9>i@V5n$r#|%2J1+s`# zOq^ZO+!)mU0hQ(86=9$g)EHMvsXG|Rv9by2yX)x(*=wj=d&jqiRohB|gN@52 zrOw5r&`+6*UEajgfORe3UUqd0S5;kq8)api0A0Uak-b?8d?s!odak7*`g%bnZu+5a zrhE!n49Mp$OoHV}Xuu(wH_+xiLI65di%8|r&I+P=gR$Hk5mcZx|IkhW_BH=BJ9EL| z|4*hC@cF}0Fuy`Ky&${>&AgMshD4hG2HO3(qH%nbbCZHcO& zf)Lz00Ug?4uE?&;4mmi&oXJ(pL|jo_kdZ}YyJ@MZ8y}MypT80lBP$=DxHvBtmx!`~ z%)ftaj8$oAZ@EPTxwt@OyfnixCRs)`=-p|u0-0gVtbDhsDx2xZzaOA`vi~)#J>`Ch@ehY56NFEax>;{J0K_k!|1a!m$0Qj+1$ z4hBe18R8j`hdxzRWoJM=_3sBGXnv7_i2>Ps+_#IPmR&m-nC^h8e?;lUXw0n4Y|O08 zxD9Fv$k&VWUVR+H2tfa?O#j0xVqN-}6CBzD6F(#=x7|6&NIH*Et z@c4h+|6k1W8KyAsGDtIMGPDqJ?g}j0pht8fN*rkEiV%SIH^Bm+6P=kM)eJj$hJl$u zoq?IboPn9aoq-v=?E+LLfd)*>Aq^Zzd8CSylYn}}0a_x1Jqs2;l2<8G8mM z@PVF?2@B9VH_&cTyr&yNHX?h&Mnb(A#2LI9)ET@P%o)5H+!?&Vffs&Z2ScF14u)7z z{zFL%sK*~NqR5$p+mGM_yVw|!*sMrwM$lOun^;xMT~t(TwS++l%2h?hR#S*^A{N2F zQlJC}l1EY*&#I}WX2Hs;rKV=i7{#igre+D{v?Fo;eFU8xu~Y?;N>x-GL8;YI1&z-* zA5B0-&CpOy&A{MaJd~jZrI{qb$Ad6}&Ix3+0iOdS3tG1ZJEa-ah-3%lA(V3ip+^Qn z4hsbLjTsCX#29s8`k6s@$$=ZBpt=XFA9k(`=x|+j^*u;u$$<6$kN*FFaXr%$2G9xY zI~YLM&@h3{P6UN(lJDPNe(+;2K<&Bz@0gY{U1P9fF;6?V&GmhLFGx z@UCr5(9LuLI~WWu>|!uvV1^Eyf==ZHZFXb^A1DZISXnS&9w=yF2yL2xj_5TpvuCtp z1eL>}bSwrsQySa`Rb*G>V+0+}E~?0`EXQnYWX|NRkYMJL;-tbFqM^&k$jrpT;-O_O z<{p(}V-O^1BI=|nXK$g$$Ecw3?E+#BR)v}0sE7#Ql|&dF)dq?oV7rflq>VsFpMU63Wn z%poAgqhZR#A|x!V%qC@KWoYl~;9z1O`bEptSjN}MXIe;=sH`Bn8siyxEq(2s#_8a8 zOC6&Ii!%7mZ7~K9nBSmYLHG^2Xc!>?ZGD0Tn7}uAF#Ulv62LFBdcQ)B9Ovu9FEW6Fw(`nQj9&c82=JpWP{dBF4+aDA@_ zx-D|V^?#TcbpF3*GGqeX)2_s@Xa|F`KIr^{9Sq9Qu{c5fouKOd&khC^&@$>fpoGT! z2hvniya0v%&?q+nPEEvGsAIEn;&#Cn0<_zvbesvgSvIRi;9X%ytP%li&~+5NQez1^Hyt1dr=i*MSgAX6f3J# zFKtcFR9lsaHa4Is0R|=p`~RPrY?&@HC^MKLPIrMG$N)}(;L;Cz`XzYr0q7uNb?~-( z(B15y4$uw;&}6R!q>{ycdmE_A-pODHQNqrE?W#%87!7zg6!_9EF>y#AnGJFbq#P6U z5O~lE4)FXhlL@D~d#=BckD)L-yOv|9ftG_T3mdbfsgAOPoS|NbnP0pCXNQ=nmb{^g z7z+!Vn1-CPrIr*kW12%twu`cDu%SVqwW6$)jEcXLjo0QDaw|7$T7FoUW$aR$g? zL7;sHpz0g4?A*Xm+?12iR8drslTlGrl2QNPJto_KQH;X>ZZjUe7Rk7facX4xzp8&Z zpkj=Hks*=c4^uB=5-4qgR_224HfI32fstL&9I{Unv>%i7`WkU&A!IC*k%6Rx2tj4o z|1bZwm{ggC7&sV2q2a`?4;sv6U|GoHu!F%A)Y1{*V*>R`)KPQ4IH(GjV`4V}5B;-)YHc%B zJ!WMkHc=7qFgP=lxQ?BMyqUh1u&Ac4se-zLj)b_jow}mAzNUzcYxe+N#28%JPitYEDKn!txqoVjA*7G6qg+s!j$nB8uAL z;@V0gG6qf>Dn^1*^1S@A;`|0mymC^4#!9NX{Nl06(eblfj*7CgTwX zX$Eu1nQHnw7=-nAFerj9M$`wLPR9s6olXKe-2=IF3$)%5RQN%Lk3i$FpaU(W^+AWK z?O*_1cOe5ZMPLVm)`cAmT44501{3huB_kxxK|`|25HErTYN7Q2nkdsu4ry&GRXG=D zYY`b$4tI7LElU-7dwV-M86{2)4jCb4ao~o zAsvvA99RfcuB0&tF?BF`GYB)-Ge9m(W`veWkn)9#fssJ~+`I=(Z!up09T)()f{Y7# zNF!*tKoHc+Vpj*XL(P@V70t!L$2}RdGe*P(IW+NaHN4Ho$QKjhSj)G;@EZT33A)K? zerf$WAd&%et_=&*T&8gFna>&wI~bTiSrat;!wzbXvx7R7yBJs)*cq6>O+?W02m?c5 zb5(X;Ms`+nMfPfbCSiep9gN}pe?Rdv{^Dn}%Gp?0R#4EBoegfY`7^LEwLr}`VgQx8 z(B?g&%MO|&;sl@C2r6hGEYO~E#y49xC5Q|GJsBeeF0BXF*0~FePP@R*T)1JZUm1P$nFMd zoO2o`kU0%?6$PX@4JeQ42Y4z2V@|`C=?mj}<`(e0k}Sh+22hBCYADFiDQNl@bW;qz zn<<O&>Jb>H&cM(FMwH?aW-=zJpNGT_9lSOLT45Rtr=usWC&#X!nlgL zg@Knr9$F`Jfx{Sd^C~mA1_9+k(1;@HWZg_gbMR!HaEgaV5G!*FXtK`R6*O7L#L&TX zpD~?zH3Kh$BzPVTbRrCBm>1HY1zjr-YNJ8s(LjqmQRdMS*ue8>%%Tb!;<~2h%(CL* z>dcV&G*?|q3tcfaX#teEG$w{HrY}rN;B?5&0197F7=Vu5g`_Z069|-IzRh-S_0aC~UQq07_bdG_UL6Jd~L6e~l zbPS3H1GDyS(4nZ{!?i#S4J8I<(0XW2a5(caXfp6JSTgW3crx&UN2AmQb}(qehvlKe z42Y&UVpYj*22cb+3S4!8oeWCgXjc>1$)F5AN7mfbSX7_U1ayq79iu6zr2uVAi;0S` zv9qzWiHZv<3Ni{R3f{9YW#VNQ6I2k=m6z9LGh+8LGjo$vQ)Oe@|1X8{+&_j=XXjEu z3rSvCK{;h16+<0k4i86n8wFEkMPU(>9ZZ>jr!&p@Ys7R86a>r+jtmS;z03>@QVeno zS`0ftWeli<#+X}U0u|XzNDCq{j)0K{sgOoef!GNJEtU}nZa`YP{NP*w={AGr7C||b z8#IUlDoF%(Fo=T|TYwI)12^ZuLnqkpZiPfIxGw@5DFIE)fiAx_W>!YtAhRTyFPV#7 zQs2u$Q%Q_Rf>%;ego~LcpD*9Eg0Z5)xxx#P{8SmM(p-!Jt>oF$m{|m*RYbzm{madw6M%n-yV2xYS{XfXCe*{lqFjG%G_q?e6BjS)070AjNZ#NZU#Nxqfj;vgBKq!lr6x(!&eVw3o=OYO@Xq77&Q3yF*q~i zGZZjXG88dnGNdzPFqAN?WKdu*VlV)2pH*P+VaR02W5{PHVW?y%U`S<9U~p&1Wk>>V zFHm482SYuE95hvW49N`n47m(?3G&O~tKU0ZoTBg93vEgC2tcLkfc_Ln?y_14slEaE1&f47v=43SLkfceSWhK`0z(owO%*YuGNgmeE&-KNAmB*mKkPH?nVMqk0F$IP!hEi}^ zDrQJw$Ye-nC}GHC$Y;o7CUa=kno@~H?l1xFtl>&Ai z$fF7jZVW{XrC=wfgT2Avm{OFPn5W=YR9cdmo?1jmy#hFZi@}*Q51dgz848qTUkQW?q_Kt)9+LkU9$mgJ$s zpums;P6i^rT^WiPlE6tDWF92hx`AU8lmHVMK<-Wg^I>jC zWXNGCW&pVclqIskekuhQb1*Yuwx%*vfQwU5v75?}2M$MsEydvC7F4K$SfE4>@gFGO zbHD|5E(1tc2~xbmOfF$4hsuFM9wZ9MLU{}&;EYoVE|f!{Azsdq&rk#oanxcHWIia& zL2<9nkOuZ8$k(Y1>hRP7O4}e;B!goWq#Bg5Gr-vt;xdr!pqK)M4(+((HK<)+E z0}45iy&y4AF#?JakT@bW6)=Db3Q$o1%k&_VLE()YFQ7`t3G8A8hEj$+a5{j*1+pqo z?4kM@QnW!TI|YUUaA<+jAE=lDA!WQHs zkb4vu(!k*ds%Sus7*P2G@?8Z3B!z<1f!qp8ouJALl;=P`hxigwrh)2o0|patQwCqz zj&K_+?m&J8g*_XL>5*aEPKrsSJHJ~OH zsB8t92TEZef52=;P1!JCCWG@2C`UpnSnR6(7(k^HC?&zd4yG=EAqQIWg5o@vK>^%+ z1U2sQ*bRxN-P358r(`tN{bS86p~6yKqe&S6z41CCT6E9loqFgoDb5PT2YW%l$n~B zoC?-bTvC~nSzMBttdNpgmYS1akeixU0`@CNaY=b#9El8P1b@=Fv7N{do+DizXG^K(;6 ziZYX}6*5Z{G7^gw%2JC;GLsW?6pBlV^0QNm6~OLDEJ{@<$;eF3PAvinK*BR4zbLaR zKd&S)r&tFR6H56?AjuL?Qw?NCqC!DxQCezpi9&K_QF2ZyNKuMHaYlYoNh&DWBo-&9 z=B1<-6@$a4I8`C9G%+tZwO9cZ!r4IGQ0Zc0jKQEGBYei0}gpfm~<6dbcNixL&Q^OF)Q6N@u46^c^J^NX@mQ^0Ws z%@LqBX>w6&VhO6SUus1O*mWR#0&)^dGV@Av6`b>Pa#F#qQ#}O+aJQ|5p@6}PL7zb% z+$Ae#z}+ch$S5f(u+rB@?@*Cyjy||-1+^aehqQ8S$%pv-E82X@LjHVs5)&Bnv28RF54501cpiu)9%-8~& zhXk$W1YHWqz{bGNz`?-Dz{SALz{9}Hz{kMPAiyBVAjBZdAi^NZAjSaN6DP?a#URZf z!ywBb#~{z3z@W&W#GuTe!k`L1BpWodsKubopu?ccpvR!kV8CF=V8md|V8UR^U!3@R4C2!zzZa3||<&F)U(O%W#t6IKw)I zB!*;$2@EL=rx{WiPB5HeIL~l~;Vi>BhL;R!43`-$FkEC<&yddWfng%UHHIq;R~a%G zUNgL9=w!%Z$YjW7$Ysc3$YWT*kk3%a0BXn;gPUk&4CM^37%CX57%Ca68EP477jHRWmIESXVhTS zWYl8##c-Wbn^A{Rml1Rxv;m_bqY3>z3WGP*IkGkP$3GI}w3Gx{+4GWs$4GyG=w!|;URDPsU*AY%|? zFk=W~C}S97IAa83Bx4j~G-C{7EMpvFJYxc5B4ZL`GGhv3D#LEZG{$ts48}}`XAI97 zmN8~AW;5n6<}&6n++cXfn9p#V;SR%Hh6fBc8SXO{FcvZvG0bMz#ITuR8^d;nBMe&@ zwlW-LXks|T(9W=$;TXd{hW!kC7>gN87M$9V=ZGHV?AR7V4q5V=Kb}hJ%c4?4@~`1_q7> zP}+svF*h-}C_j%q5kj*$CKaWYrLrZ0DR#&F^!&WkZ1zM5&Fu^-)Jt>Ia#Aa}lM!q# z=al@C#AHy-$CV6cvbiKD7Uk!$r9dc`Jr;?7Gf$Ol#b1sSRA{!ky~LufXCaOAM%gDGDBjMBXH#G=yNoW#-+ z-h5;pTM*b%wjwaa6NF?PPZ1J_EeLEWTM>i`1}kSP22wo)*~8d{W@m(E%WB6&lR{lr^} z%wrFQ#4dX&gys%MxRARXi5-c=u0*ieqQIVHs{&J8QSgMxRRw4A1S5Hlrx=L?&bCH| zj!@c(BPG8iC$+dZ3nJib38sxLO(3)*l<(xs;#yji&zYE(nQ3NdWMRpfT3nKu3u>Z( z6dD;BnnGzy&h(S*Lv3OE4Q;SlIGmAkSE=T}_ zn4I9i1+h3lAq!#%AO|N%fEVs@5RV(lyZlIOy~LankR#nJ+}xlpNX#h#*Xs-npi3CU zz-t2-8JHNG!L!+*SsG9)fRTZLfr~+gL5_jZ#my%KwB{Ei3^`95s-KHNjzI@Q9;A~o zJGCf}0kjDP%mdvx51t|5;dsV%kAab+fB`h8Xv|Q+u!`XhBOjv!V-iyX^E8$k);2a4 z);2aV);6{^Y}?olfIGFIj%@)$0ZR?r0hkEeF@`%J$nL`Ez$OOANsLMChnT0aZ3C%g zsbNgwaNuxb;A61-e~2OS|2u~H|F<#h|NoBR;Qx1w^8c4GD*j)>X!!p*qtX9&jK=@B zF`E2;$7uS08>9XIC5%D;w=wWA@c*x8X!?JWq51zwhL-;)8Cw6JWN7<;lA-VX*wagkk>wi46Py-)1=Y|2C36CmD_ZPh>Rtf1APw|G$l)L;tri9QnVE;n@Fej8Xr? z88{d$!F~am{f<%b|2sxQu=_#g-e$D_{|@j3!f^Ee9EM~6moOavKZoJu|A`Ez z|4(E%`+p+C`Tr9cuKu6MaQ**8hMWHT$DiHuzTCo=NfGwk_)n_=(&+YI~u--e}0aB4aXO;JZ7sfywF z|C0ixgXXz>3wIL(7n zt|bHi|7{Gi|KBml{eQ=h|NjX?)BooT&HtY>wETb0(E9&5L)-u74DJ7)Gj#la&amkJ zZHC4FZ!;|Uf16?H|Jw}9{@-R;{{J?^ivPD6R{ej+u=@WyhBg1+F|7Unj$zCHcMMzq zzhl_;{~g2j|L+)f{C~%=>;F53-T&V)?D_wWVekKU4Ez4SV>tBxIm6-qw;7K7f6j39 z|80h2|DQ7)|9_j|>i>5P*Z;p`xcUDb!|ng?81DXm$H?{n9V5^GcZ_`h-!TgOf5#~F z{~e>q|96aH|KBmH{eQ=(@&6s8*8g{mI{)7>>ivJmXz>3XW7Pj`3{DLE;GD69LGJ$& zhT#9J7()KfV2J#Gk|F>9M7+6h(f=h3i~lcSSn_`f!_xmt7?%BC!m#}R5{4E3moTjQ zzl34+|0N7-{x4xz`+o_;y8qu9*8l&`u;KrAhK>KfGi>?4gkkIdB@EmCFJajJe+k2m z|4SHl{a?bc`~ND2J^xoR?ESxrVc-8%;GBN={}OO+Kl*i;DS*Z(hJ zxcPqx!|ne|81DXG!tnb4cZRqBzcal5|DECE|L+W+|9@xX`oDyc=l>E$zW+-Y1^zE# zRQtb*QRDwAMy>y=7GOYan4kJBn`u~n$GlLM$banFoJBHK$ z-!Yv1|Bm7O|91=*|G#6n{Qn)+bi~Xc#K_7Z#K_JdgpsDA{x1RTvIm#C+rTVP8Gn+2 z5$sY>_)TD7WthOg#V~{1_%M_%lpk2xq8ZSjRAd zVLihHh7Al87&bCYV0g|jf#Eg71ctW^6BynzOknuRFoEGa!vuz(3=C&nNKC&my4C&o|) zCs1no4=P>5|G#6D_`i)&>i;%Ing81u<^FGDRQUgnQR)9XM!Wyp7#%<<>^~^A8Z)Rc zXfo(C7&DlH@1C$?uwig#@MQ332xSNdj~T=;G%+-T#|hdP+8O3E>}NR0aERdu!!d@7 z3_lotG5lfpi_*)M2luBD{bhSlUzdTAaS^y>qsb7%kj7BJFbfP);|E82*9b2Sx!#IXE_9G+|6*EMc6+08)F7(S&gh0~3Sb|9S?M|0lt$a0ZqC+ZebQ z1pc3di@W?k$>8z-B!dqF7emnhlMJE%Z!<*vzs(Ty{~ZG}gAW5E!$$^2hR@(t?t=e8 zDO&LV5=KxeXJs(|zl6c+|8oYL|JxX%{=Wn3;b0K>KaoN3|3t7|F8`M>c>G_&;Pd}G zL(u;v3=#iVflZyj@R4Bx!)JyG3@lJnPBPg1pU4pN|2AkV=l^#MR{!5I*!;iEzzTKk z5(c;b?-)G(zhemc|Biu&LEwKq)RrX-F8}8+xc#5V;PHPVL(u<;459y*FogY|$Pn>= z2?MC^j`=?kY^xK)M+PT`&kRlsAXh$N0QpDd|8oYH|F_{LhyH)Z5b^&V10#dre^9Os z`@fBWkwKF|lfjt5lEIz99~}3T$9xb26LS?P-We4bw=i%p2r@AIU-JL?|84)@{eK5) zHDkm7m;48{e;EGX#wH6A1L?*s3sM2W|0n*R_`m-D#Q#hF&jGVRtcm}ZKxAR$|0n;q z{eKQJ4{Yu`1_pGuf%SrFD3I&Hy8o~G{~e|uME^etF%@P4NDLkSKZz~^?qNuP2WJ@> zOc_kUdtE_06s#Dm7+4r=7;G3=8A2IC8Q2)27@`>18Rj$0XJBRc!2sG>|BK-l10%y9 zhCd9TQ7%CSCPpDfAqF-^VMbvFCPooP5e7C!QASY)CPpzvF$Ok9c}95#W=2IuMFwU@ zLqdq#WE1|$Y=1_1^E1~vvk20;eU4b3VHpcC=U z85kKrE@J|_jG4iO!G(d7!HvNUd{_+V^a~#b9|i%2Aci0Y97$O+> z!G2(2h+&9fU}eZ>$Y)?hFuK17+X>XW(Qw$#9Z^i{UiGX$CHavkYe$xERheoM+%-xXN&qft%qv!*vF3 zhMNpG8Mqm4Gu&q2X1L36mw}t%HN$HL0fx5>Zy5v_-ZQ*s5McPo@R31);WNW$1_4Gc zMlJ>(Mjl2U1|CK}Mm`1}Mgc|v1|D!6@Pb317aZ=qj1r6z41A1Ij8Y7Ij53Te44_jY z`0jJ6yM3=9hX!TLsRJG~+p7#L?TFfb$}=Oz{`2#?Wa zVBp|jU|^n?TvnpM`hfKt1A_nq0|SFcT0wd)!@k~K3=G^W7#NtYrsq_qo$L8OpMgO* zgn?18BO^62<*Vc5Cb83qOhvy6$12yu{qpw5SjN85mXWFfa)4733F} zoSXgUCIh3%8wLjUUj;>}1x~e}pEEGJFdPbx zUJCNSh0-rd|0DmiF~4A5!N9=4!N3F(Wncj5V}9{(5(5MCi~o`TBbi@-M4)nDim@3a z!q~!4!@$lE#=rvNF)%QQFfcGNFrQ~&Vqj!oX5wblVPIuoVd`RvU|?YIhR}?03`UF+ z3=B-%EKE#H%uGxy4GawH0~i#%zy>ogF!*@-`7<~$@cw3Ee(`TN$PJ9H3JeUhLGp~} zn2vx#f`JLlVGH5fhFa$9cF>o?*Fi0_RFvK%)Fla)tIFy!w(jajeuzD5-Bc@pl zK_GKLG~;;&eP#s)9j3JmtW0GLiA)C=jG3M?L@)(1Br@qRBrajf5fSz#OdJeWOdJf{OrYF!k0G3i zgTaB}!~d7e3JfxgfecEF4;k!1;RXtOkQl><|6dp}HB! zumOcP!v_XM#vle~#wM_ScV;dI6=p658D=g95ytZjs^D-3g*_T(p7;MZI4(e8ii8{DAxo zvKyT~z+eov9~TWuqo8#1lz|Hr_t5leMu-Nd=VS&OTr?=HgVGz6=3r#`|D55&|9gxq z|Nk<4`2UrWg+Y+v0|PrF3qu&g2Zku7BMga*#~Hjqc>|O_!TIAMLjdC!1`mc03~r#j z!tjB?9!f`nXvP2r5G~2@fq@MaccAb=r&J;luwIkbDl#M_dda{@($GInz7_ex?@;`k-)PGGz&Wzb}jXGjH!GtFX%fa5@hc(gnL@(ak_ zFOmEt4e|%nZ<-7r7_>lX15^hvu`>uU2!Uz=24)5ZFqVPTMvPM!n87R=1{QGr8O7kh zz{()Sz{^m_sLg23=*d{eIEhJ`$(-pp(@Cbg%u|?GGVftNpdg|kr68xEq@bo?pkSro zqOe9$SW!t)O;JyYNr_E~Ur9(wR7pxnPDxwILn%QiRrSmvWePI8<=7H(`r2Fyr!|#XP54j(B-|xQDeYN}i_jzuwkSpeBVrvA45IFc~K(H}! zflOrtwweLXj%EG|Pz{bGNz`?-Dz{SALz{9}Hz{kMPAiyBV zAjBZdAi^NZAjTlhAi*HXAjKffAj2TbAjcrjpunKWpv0iepu(WapvIuipuwQYpv9og zpu?ccpvR!kV8CF=V8md|V8UR^V8&q1V8LL?V8vj~V8dX`V8>w3;K1O>;Kbm};KJa_ z;Ktz2;KAU@;Kkt0;KSg{;K$(45Wo<~5X2D75W*135XKPB5Wx`15XBJ95W^755XTVD zkid}0z`)SP(9Y1w(9JNJVFtrIhQ$nv7?v zRg7MY9*oWm3_BPYbi8*ka0WzdWMu4%+`;(2bq9ls>`n$w2IlxU-5m^!ItmJ|nJya` z6LfblFzM`IVAN97-NC@Dqu{oIS=B8lLOD{QOQFj%rAxt0AtNzm1B)t{4vJ7t?TXY_ z*uW4Rk*TnOAtXX^gF~b=oS7OKX{Eb^fdym^3)q~lNCh{AET{=ti77!5%3YEAe|2{- zu(BLAy!NDa`T2WEKb;E&xhz$o^q!lA0b$2kZ!Ck7L;98q00d+IG z&JG4PE!`aq91v52BQ`WhZ*Yk0>H?V=9HFeZ;XqfHbeD1@jK71C0bRfWDzJlrSuHqX z1GB2@4#tLn2xY|`j19_)(jWn4MP!rOLJ(7eBQ`ilZ(u+U z;Ra~T~st36+Qjjx%(lwVh<1Pj^1~CR6ZN~i!;tVkio(#4O+6;0G3=Bfr z`xzt{iWwpqd>O3aB9aVg43Q{mq!>b=xo@lFtBUyU|@i_6x8Q5W6)wSV6b7ZVK87YV{rQai-G6A3DyV805HJyYRP z)luV8*V16p2-BRUrKHuP?V;VEJxynxuA5$l{tSZ?hA~E6#xlkyjK7#zm=u_NFqJWF zGo5F~W#(n(Wwy#Z&HR(aJxedkBCA){eYR3|N_Jj$S$1s>at>yW5{@BG49-l>D$b8w zlw68jUbynO`MH(3%eX)ARPf^SlJZjXGV-$X^70Dv+T>&Af{4InjgfB!YL@jht=(^Bdp~pfmh29H&6_ymfEPPY=zVK7w*TNq~az%eT9f>FYZM2AG5#E8U{#Dc_6Nt=@PCEZDSk@O{*A(QW`r z^3tl(+R`Sa%}ZOAwk_>Y+PSn_Y0olRvJ|p(vMjP(vI4SVvNE#vWM^fUWjAH_WzWi9 zmc1!^U-qf&YuS%-PUIfSJ(qhc_gU_z+<$pod184=d3t$Pd2V^<@^0ll%lnk~FFz-L zLH@1$PX$^9RfTGWZH3p0#EPtnok|!=3`$%|B1)=CW|eFy`BG|9npV1?^jn!nIZx%h z$~~3Wsu-%xY6@y@)jq0gslQhLt3j>7uOX{pO2d;zhQ@DAeoc3p)tbGU^O{#RA85YS z!qlSHQr0TfYSbFh#?ofi*48$wZCl&9_5~eL9iZ_Q7En8kiGk@H12cmngDQh2qs(pw zRR%T&4F(qN-3-DEYz!h`mLdZiXoyF9H-i)d8v`#`Or3#^L5YDydj|unzzzn63p*GX z^mi~Q3hZEDy0C+RN#7CD2G?TXWne0FRAk^};AN0x;APNc;AOC6;AQY+;AMzp;AO~U z;AN;};AQA!;ANP}z{{|bftO(?124l#2404n47?048F(3fGVn48#5yvA4Ph+Y!Jsa% zgF*WasI}o5v4eqEUmB!?*Di7g0|Q7v1SBBBfDn)Z2}mIcsDT9382IfXcQYt4Ff*uw z{RAor8Ne)Y24)5UuC5UQ&wVQSGQv{HWCvR zVPj`wXA>0{R1{KvP z{_kesV&Gt4VPMgA1VsuLgBSxBgBk-DgBb%CgBt@ELl^@WLmC4YLm2}XLmLAZ!!!mi zhGh&~4BHsE7>+S;F=1W> z3<0}KjDej&je(tksnEdCTv^bV*~API@&(x|4yCf%VT022Oz;46Ju{GO!?dlL6#S1|)B?fCN~e z0-!{GX9ok@g&hp+7Yq!AjYXBsjYX9g+Sqj2*f1S=^5h8v69X>;1LJR|BMj0E@(hg( zI~c_DcQ8olLqm-NWE=<7I8c)10SWMc1a>npgZsCjEXdBl436v_4D13s7`Q<83G86t zyRd_SMPLVmz=a(Q%mOXn82DeF5S>T`28*VF!bqzzzm?coC%yie7C{^gHjsfisEsOU11V-jcAV^kItmtz(c;bUSKRc4fwF;EfV z5LTAfHjvO(6tU13l(sO{6S9=>(RNqWmE=$~b5b;rG}6}=F&B4NaTC*16<0L(P&3eC z6jw8r<5!TA;u2s?U=dT+moYUHWc!!GE3Gc2uBp$&s3gU!W1uIfe10O>g10O>f10O>h10TaQ z20n&m415gR82A{DG4L^5W8hF$M_+H3kU= zGX@C;HwFoYFa`;RGzJNVG6o5THUbr>WWbQm-lbQmldbQnAtbQmHTbQm%jbQmfb zbQn4rbQoqb=rF8g&|%ogpu=#IL5JZcgAT(>1|5c<3_1{dI2m*x_DC^!F=#P(!Ho7| zkYw;;&}8spuw?K8k7q6C}WiB)|+3U30Q*!b~6|< zFf#aqBU6@vkwF+-&2kFtWKd^d{No5J57Zen8Pp-Z;9yW^kN}V8s54kFs55vls53+` zs54|Rs54YBs55jhs58u9P-j@dpw6&^L7m|QgF3?v26cuP4C)L&7}O!Y02u=Eg|)y= z23L?JpgPKxL7c&rL7l;s!JNUB!JWaCA)LXLA)UdMp`5{$p`F2%VLF2=!*T{!hV2Zl z496K<8Ll(9GCXH+W%$nE3Ne=*WE!aM6k~8@P-Acf*HMh(jOxrLc1*@ba!jCnrmUpL zWG*7dWNc)|1j?q$N_I>{1uU5(n2-|q*zj0K}bkJTM|nDOD3QIT;^No-Lf?3)O91Ic+EZVym)EW2~lwbw2HiH<0HiH_2HiH?1HiH|3HbWSLHbWYN zHbWVMHbWbOHp4UqZH8qG+6>zmv>A>uXfs@6&}MkXpv~}&K^qd@Yz*3vgf7aU&7jJl z4N4-Q3}woo#b65JfHIURgCv6~gC>J1gC&D0gC~P2LnMPKLnebMLnVVLLnnhN!%PNK zhLsGa3_BT28BQ{oGTdY^Wq8S8%J7rH6k-o2gDJ=!Pz%eJL5#tcL5;zd!HmI{!HvO| zA&kM6A&tS7p^U+np^d?oVH$%i!!ib2hHVVC496I38LlzdGCX6jW%$Nm3o(t2!4_m1 zsD)+Apvqv&z*GopP050Cg)CCOfi^P`wE#3{aoR=hVqjq4WRMjUvfRbM1ZSy3SvweH z1$KfO?vNY=8vfLPga`+N27?5H1{hi}XfSv%XfQ-DXfR|jXfRYTXfSjzXfVuR&|p}> zpuw<%L4)B0g9gJ51`UQ63>pkS7&IV$02u*F_<$rF}O20 zF@!TXF{Cp%F_benF|;!{F-&K0Vpz`L#IT*giQzbd6T@`|Cx+(?P7L1}oFL}1GdMxQ zMvTFUL5;x)oP$)&joHPO)%h4fSqEHwL25Brj$&t4ViOgSV-g3|durfH50bsi8K0-Q zG%SqF(oXl%^|w-z(Y2E2mzNNbHFQ*#x6+l8*0qph*R|spm*y7LQ0L(;m&#oII1#6Nz#LxkV+G8gF*BT1E{el%)qQ|Ubf>1Ej?Y8sg(&U=S3tgvA)N zf5UGVX<#U9F3v8_uFkG*u5K=FYW#fy|Ac7OxJZrYNqmzHm~;#b^s8iRYh|m9bPYf& zOBfma7z~(vnDiL98O(PxurRQJ#@e(Yjd%77I~W)Rb}(>WU;srmGXopA9)xwK*}(06 zPy#VE7Bv=C7F9M?_Iqyd{JFt%Mt2bT95mZv^uLT@7ef>SGlMXw)5gretjz!_Cz!xN zV{Xi@T;k?y9rXmHR-54xqY@(r12cmxNG$^cvo^#9talhd2^BO~!vabO#-hsF-@h|* zm_gz==>IQC+zhvNGq5p$CjFtkPta&68-p4H8-p1G8-p7I8$%ca8$%ic8$%fb z8$%ld8^bgPHil&kYz*5N*cgs6urXX?U}Jd3z{c>6fen)X*+5|eszF5=*uX;%h_Vq; z^6domf*>7BP(u;aTW4l4XJBSkP~c&l#8*zJq%7pfLncp9-7}#2A zSm^Iyu+-ndU;*wMK}Jw4K^?q1I~W)Qc7jG*LEdI#kYNyGkYP|`kYO-mkYR9RkYNa8 zkYPw;kYOlekYQ+JkYSj{Aj7bXL55))gABtl1{sEH3^EMQ7-Sf}G04C|S_V?miZaMB zs4~caJ2QL&I~lYXI6!rV6oVERLI-QK7$h0Az;kGp3|b7H3|b743|b7C3|b783|b7G z3|b5`8MGKyGH5Y?OgPD)#c-2Bi{T}M7Q;^lEr^Yr3|b6~@T!g-RMoK~Rdu2u0Z~wk z5Hi359ym~D5NA+kP-jqPFlSI^aA#0v2xm}cNM}%HC}&V+XlGDnn9iWgu$)1eVLO8| z!*K>>hU*N<49^*q8NM?pL#$;74cCB@lo*3DgBpV}*rV(MJ3-A(kVhpM3>h>T3}Ka{ zA%g^iA%g~kA%g{jA%h2lAwvX%Awvd(Awva&Awvg)A;Sy?LxvR$h73Cx3>i)^7&6>o zFl2baV94-;!4P622gv9`14CgGI~HRjITle7J{DyqJr;8jITm9hI~G$DJr-ppJ{Bo< zVMP;9BO^}}MPYViwi64FxT=|&s=2B-4-1HGt_oo@CaHx6dRizdT6hMAs;P&-*dgjN z&aO_z^76(`uFf*jE-j zwF=;3c_*lR0EIDVm{5y>4HCwj3~UUN3~UUV3~UUR3~UUZ3~UUM3~UUU3~UUQ3~UUY z3~UTD8Q2(BGO#g#OgPEF#&DB?jo~E&8^cdnK>;!Z)Bpix3uy+9KRXyi1$HoiMmS{j zVcAgtl%fPcNo+R*Xmx-rxI`5Y0L?x^dlsAwnhcx}XMtvzB^WpvG#EG;EEqT$JQz3` zA{aOsG8i}+Di}B!Iv6+^W-xFvtYF||*ulWbaDsu8;RXXI!wUvZh93-^u&C!`U<3_J zF@oD7@F77+)1RMFQB+ZrkxNKLRw%&M+=tsuup~&+%R*67(^UE{W63`+H%3VzO*wQ88{eDGH@{5WZ+V>MMdeq!J98knX!8xNjrD0BTT6Fjz21FnBOXFhnp&Fk~=DFjO!|Fmy0TFw9_( zU|7K*!LWltg5d;%1j7vm35FL85)40JBLkog5-7AaKm*(0>}M{=2TFgFs{b5AOIRSy#pGCV*Rs&fgd#d2_EBzjHa?chaI^=VgjI%cy`cm zF=((AJQ@$J6v1QdeBgyBEZRF5_&}qsP@U`-b}{gP+M(c}P*pT#G!_K6c?6Z2jTt@v zonw>^&dIT1`t@g>JLCC(3TEq=n*Jp*!1Bit26aa59Sj=!I~X+ecQ9xO>|jv6u!BKW ze2`3q38E!JjGQ4DvW%$V;3ro(jNL3wTasir*`9aB;ACin& z85qH1T00m(GYbq1pn*Lm1|ZA)G;iA)P^j zp`1a2p`Ag3VLF2Z!*T`*hV2Xz496KH7_Ku&Fg$0FVE7J8XzZXg45Qj@tHGbF|7F@Z`jVMWHn|L!o0n@Jf5TFPrW1*rRF%Gzm+&{A_Yl9d)^%mk+=ng3rH-!L6v zkYdndT(E;dUw;RKf&LB#eSsYe!WVWh2!r^bcJLigt5leQ6C4i00y`NLK(PhtgDWtI zF(@#oF(@#YF(@#&F(@#EF(@#kF(@#UF(@#!F(@!hV^CmN#-PBkjX{Co7=r@CH3kKS zXABAq-xw4i5yZxz0BijyFsL#pfExv%adHX$T?|qTFl#~GTROFeBtdCH5~-}?0}1d! z5(#LfwKRALg^@v;fdw2SpthPSs6YZG4OIql22}=i22}=g22}=k233Y|233Z1233Y~ z233Z3233aX45|#v8B`gzGpI5gXHaFh&Y;ThoI#c0JA*1DNZ1)vAwePrUNWT$ZU+k+ zBc}{KCUEat*qB*~j|tS{hNY4fOhUF&`T|}6ZILY9`aFfA>;U$9$ z!%qemNceIxxPWIRxENd*M8Pr0r4R1PYcYs1XfdcUXfc46G`KNnF@!N_F{CkQF_bZA zF|;vgF-&97VpztY#juS*i{Ti97Q;0LErw?dS`6P{O=~uA(;7T!r^TSkpaq_^vtnRi z&;nazrN5Iwo`K`fE(QSxd9dZX7*wIG9SmFoI~hzsc?;xg69z2?6PT|}7$g}?7&IA7 z7%Uk~7(5wF7$O-=7%~}57%CY|7&;kD7-lkm{c2MigA6~H|q6}IhLMLQ7LG!Qr42%q(;KVM#;K`s59^g`ivOu%TkZBG_P(5tU zpvhnkaV-Y}s8BR#&;T#yGiUH%FlUHhFlWeMFlVS>FlXpsFlU&-V9v0D!JJ_SgE_+q z26KiR4CV|k7|a=dFqlJJ3o-=Ms+1Dg$zTu5TlNg%4E7A_4E7A>4E7A}4E7A+4E7A^ z4E7A=4E7A|4E7Au8SELBGuSh1XRv2D&S1}Qoxz^rIfFgJcLsZix$Gd*AjPgdgBpW9 zByS-N`XcIbXdW}wV@3=TgDQSzv>{_BITLqHO?MMH0a-06C1YhFMe6{4{Qzr4A!TDF zDJ@w6Ct*c>Ss4RGVNY{&Pf0Ni3uR>s4KWE#3k3xWO$jCmO&0@cX#*EcNkeS~c1Ct( zLu&;CUo$y5GhYJ*YeQvrMs@{lLrH0UWl>ROeQ9fV_kTqS7Fv>$S{4e*mYQN>nwFrx z026}@0|Vn5rVHTmydSkZ=ez)!V>JMk?cnm9lR;Qe$P!wXgVLJcNPH@4#g8@;NL#zZ%>w=(Bd21%8>?*^MF${XhnfE zI8VZhZ%{f`Wzb{*6}XO|_9SR#NR>f@L6yORL6yOSL6sqbL6sqcL6xC`L6xC{L6u*sT-d?D2A&0n^#h>|PQ>yL#83lh!W`5cWC8V3B^hYb9R&4FcQWw9hROLE#2NS* z)EW30%o+F@+!^>8!WsA((i!*}${F|>+8Ov6rZey}EN9?n*v`PuaGZgk;W`69!*d3H zhVP(-&yX=Iepp@2&!EP@4=qm+3n2utjbDMrut1n`33MRq-z+Et6kp)6L&huMbtTV` z)|G&ADGP%ZXe}UQ-3|+bBm)bBCIbtDB?Aknq-Ka@U}4B)U}30aU}5NFU}2caz{0SS zfrSCIhT z#lgVKAi==Ppuxb)V8Ou4;K9Jl5W&F9kio#qP{F{<(80jVFoS`YVFd#(!wv>sh7%0D z3^y2f8D22(GW-Dbu0Ym<3<3AjjoFojkwOYIIH~{&ArOvw!lVZe9tK8+AO>9~4<J-Zg$qWn3|@iT zzkUqonS2=g8JIz@^Xd!S>?9H4=6kZGW%6lkc28SGwjT}D$@QPv>F1OFTt zzy0Hihq{)DLI3|R##Kz$7~~nW8L#eU5M$r~`CEH8gBk+|g950f1Zt0~F^Dm!fuR|L z8iN~y8bcU^8bca`8bcX_8bcd{8pAXOHHKvjY7E;L)EJI2s4-k)P-A$;pvLfxK@Czt zf`*O3gRr6uYT)K4Xw?w|sFe>cEEyon$JiOPzzcuCl?6M4Bm+BxCIdTzB?CKyCj&b} zBm+A`CIdS|B?CJ{Cj&dfOa^v_l??0*poK^$8Q2+aGO#neWMF6b30qUd$-vIQSP1IH zf%>sx0y`LV;Y}1lP^(f9)T)FwQ8YmUnxOXh4hBJiouFk>kV1otK@+@83S4+|F-S0Q zF=#MwF<3BgF?cX=F+?zMF=Q}sF;p;cF?29+G0b4#Vpzez#jt~ci{S(V7sCw(E`}Ej zTns;8E3h~~Mi=g2&;+kEgRY>W%|Iw*j1qb68n_e4BFm`Ej+8IXh%0L-i`$u-I&(Yn zWqGT+7|KYfXsJlp2!b*S2s8328fmC#8Yr4MJD70zhKlPrXlhyMsHz((J4}G(A|?i% z|L>T-FkNHdXGmaX+|8iMz|LR=o+D;pU}XpevxFJg8GOJj7Y24vX9u#fje!9)ou&rb zPs_l-;Ksnf5XQj3kjB8kPzK&-!N4$$fq`Ke0|Uc01_p*>3=9m{7#J9yF)%QEV_<-# zF$PGXDaydWpbE;1g*zC81$HoSTmUTx15Z;)GiWhLLmHHv4AKme4AKmm4AKmi4AKmq z4AKmd4AKml4AKmh4AKmp4AKlU8KfCjGDtJ*WRPY!$so;elR=u{C4)4>PX=j-oghOP zLB%F$HUrkNGGkC>aAQzq2xCxXNMlfCC}U7%Xk$=in8u*Wu#7>KVH<-g!!ZU`hHDI} z49^%;8NR`)b&w&@T%yVVf}mVtz#z@w0-96@71TZqS`0og_xmtNGWalPGWal9GWalf zGWak=GWalLGWal5GWalbGWameWbk2F$>77Vlfj4KB!dsbO$Hx^mkd4(KN);r?)L$A zTH+Y2z?SS{NPx0-Ft`ZpU`T@J7kg0lut&--rXT@RP<{aw9FQjcZiXlZMh0&1I4mf; zF<;ohU=QxvGehzcr1b|a=@l3x7!(*Z7!(*R7!(*h7!(*H7!(*X7!(*P7!(*f7!(+0 zFeosrU{GM#!Jxo!f~_3kC&-AF$>isFVUV=uN>B8_b}_AE*!!XV79$XV79W zXV7ABXV78@XV79uXV79OXV7A3XV7Ap&Y;DxoI#6WJA)R(aRx1h>kL{9&l$8BzQa0P zAVa`00c%D=V#1R_4BTDuWiVy12bWx)0y`K2F6?56gNlFxkeeY2Te;*^!tOqG!vcVgnk=EnbY)s^k^q|~+4?DZrW`B~XG z1*I$vZJA^chV+>v$n^le-!C!K2~OnP^S$JQg^Kftq`g44PnQ$)L&L z$)L#)$)L%Q$)L$l$)L&5$)L$FlR=YVC4(lzP6kbelMI>+HyJb;UNUGh{AAFCWf4tq z76DCY@Pp%=O@9{yXa^jK2c5J7o;8>}~~%_s~> zpn6Q&jDiSe;u(z~M@6#4N3Ar)uk~BfvOGQbkix)lin_?-m&?ePPfTG-#~H`2Rbm6-?I{lo>;IgXb$CX$+DK%NQgXwlPRD9Al7V zxW*vK@Qgu{;TwY_B!WP*P2ju=nx{}@kVINRR`SrU0(iX*ufR@Fs6h%Q5e7{L z5lF$x!63pQ!63q*!63q5!63rm!63pA!63qr!63p=!63rW!63pggF%F01%n8~4h9j1 z6AU5@HyA`1UNDF-{9q7)I0|G4s9<6i*vTLV>lw%~h%?ABs58hhm@~*RxHHHxgfqx7 zq%+7dlrzXNv@^&tOlOc|Sk55Fu$@7U;W&dF!*vEZhUW}&4Br{#Am*|&$U!POF$OsX zH3m6w&p;Kmpa8Aj;|XIf$0<`>wWU}l!k9_Uf4Z>E@T=9=%PrRA6JDs5$MB%JSR zW1id@7}$|)VQiyoq-PLP*c=4v2yua1JD|;0 zkR=}=4=_RUBe;<-swk)^s+h>Q@!v$oh<_^>>;Ks^9kKai^Y4ufDDQymFM z6cz?$aAO0MmqkI@3^dvTnX3fX02~aW3=#~Y3>plg3>FNc3?2-k3=s^X3>gff3>6Hb z3>^%j3^N!+8CEceGVEXwWjMhg%5Z~0l;H(~D8mofd_25|;? z26YB`26F~^26qN|hHwUXhI9sbhH?gZhIR&dhUpCQ49gkh8MZUXGaP4-XSmKF&+wc< zp5Z%#JR|_v8RQ`WAjTlipvEANnU_J!vp{VJ&>)Vnk(s%vvZ*oCO1oB9SZ+e3rV~KP4F{<_AWCOg41#K4hA0m9SpqskQMHb zeLXuF7{OESyr4Nd@JzmWdToPgQ_1v zML}ahWkE$jUnEn4d#zye&zzLu=UL4>(J+OR<(c^=TQgec~vT(!Vm777Fftx{{ft$gc zft$gdftw+mftw+nft#V6ft#V7ftz7E12@BR25yG!4BQOI8Mqm)GjKCJXW(Y|&cF?e zS8iCmg0?7dL*i8gI`;-?6ABtLHgc-_y81=)J4wVT8_MxHT~P3I)%SPeNfg&GS6~7i zzygk^e5NA|JPe+o;Q>fkKvr>aU0~S3z^=c8ft$!!0IeYfk1ZGr8Z#P$rcjhY(ZI$S z9{q0?V^#dWnQYL=__ya@17jZOpde6~CNeNEzGXVXzzSM7#|T{y1`AU}TtFfkv{MNj zE1(k1iP7s{3Dc3k72t9#ih+Sy9=!gp7ct8Wnp=jXIml8!);pj%AO`U4C}?d6DBVHI z9?;<5P6i%G(ZCAb+yhFsXlVkP0-+T>c+m?J11oq^X%~2N3TUw(X!;o<268MXBPdZS zGb%GG3o1t?GcqwU#W^wk`y~7C9TO;Ntz!!MYr|CVcLE5*(kRnPaQ-R9mVb6IfN~Do z9ngFg$OjDIB`M%S4b&PYKHso|n{uGFFd$chM$L9GaD#Usfo9AF!46IgWn9nX6#6d^ z?A9qvIe%@Ka{f*M*W1Sb-!bzuU1JbtPzS9)L!L2*g*s%e91^-Bu+m+GL5x9!K@Gge zR)oQgL4+ZUL4+ZVL4=`=M0hz-(k&9&^Q&?qp*f7Xx9)cY-|TqA1O0vf|sR%2auE*Bp8$#G#Hc_ zEEtp-JQ$Q2A{dkzG8mK@Dj1X*IvA80W-ur-tYA=P*ukL8aDqXZ;Rb^;!wUvwh99sM zZyewiZw8?CXLxrV7=zk-u$lryJAqn!u&M$?GbVxBd=|+afq|XL=AcRg)a-**7X~3k z3{2oMND!QFr5SebV35(@!62)@gFyzV?I$a+gMkgYh7qz@3o=L#S`GwVY)G30MW7*I z%;FESb_g;G0m^z(kj56QYpu;FsEpL_Nj#$(=&Y@5?W;A@$!VI5nU<8awuQ_jrXzw{ zp5_K_x?=w}F!u1u8Yn9n$n!BUF&Hy2FzYg11MOg9tlq((qrZbeSAPeC4k!#jQxhOQ zXtUm(T?}HN)okEC7#nz<2Xu0ZHd~EA1?Wx&P}>PS(xt?p#h?Uhek(CZGAJ=4GAJ=bGAJ=*GAJ=rGAJ>0GAJ?3WKd#Q$)LmlGT|hH62nafC5D#_N(?_4lpvKF zCxa3LVo0AGRKatDMuT=Ufcl)E`Sl$P;sQGuWH0Ps;0AB*fe!AgGtgplkAa~kqY`8; z6&A1TqQ;D9lc>zP|Ej#&(`=1nTZ4jHV~r*BoHXzL_0SE>cXrA2P}T6xb#=}4)-Z{0 z3-WDEw6I8Q_0^9JvKL@t)VIqIGB6IwwRXr4($fpd2aUZ$@&afKf`>tY;p7emMg1KN zO8Pq(MDIZADsaGqCLd|B5)!o4n)d>zsRpSALF-s}!IS+v800{W0cmKj3|t{1+RdPb z0}BIWZ6v6f3~K3sc8}~}kh%ccp$e)2q4R~>jOx(!tW4~}%FN1w%8PqU994LERUA!v zoObaUSXk-FDVsXTp7TCl?Znt4rKTe!q@yNf!^9<~<)CNmq$$GkZw=p;@?hLHd7m?D^t zFi0}&2W5>N44^#4aAyaD6lg`^g&hoB`k-k`Sep(s)&YxgM2QHEaS2e2OCTiyXp01# z1cYEoK!`z{L5M+}L5RVeL5RVfL5LxoL5LxpL5QK8L5QK9L5N{GgAl`V1|f#+3_=XY z8H5&agAjungAlm8!3ged=rNfJ8VkY-ML}bx2r1iS z507M9DJMQnZ#z40O+F_^e#?vi1A~AJOUAALV${OC3=F)&)EJjAFfjiA%fP@C0$!tK z%&>z2)anL@ETYv9^(&&a4Ozeg8Qx$vmIjUPGP^%{=JxM1s3kp_Dfh1pWRn#0YNjI$ z{0ttj@WU_@(T9Xug4jd98#GJFzyhboh4wRF^RR|HZ(- zfrG&vv3dezGy`~=8R{NzcoXFo14Cg(aDWRc|NHmH|JrS@e}9}94H+l@+rSv` zFZbVh21W*P1_mZkCeTJ_CRO)Fp(RX8nmvdAS!CwG^RCwUKlV}fclxN|L-tng7@2ihE>6CgQf{i&|WN7c1Cl?Ow)fC zO@xG)eu0k$WMokJpTe*UW-lA)SO5kVZSd|U&@4FULVq{?Q0H<+1P~VdcybckxcZ&(!a$^EbAYvJHH!x&076!+)ncfqN!-p)H zj{LJ>?E6;)@(aWNX2vi7w=ys@@IqY!aRX>ppYh8-9&aOP8elSE0FA3MGbro=ci5P< zVfg`3dhK9f0PP%9RyW>c)E2;GG6AHQiNX5+7sdmOw-{6yOc}TAU@+6)!Cak*ech0%5p?E~AcG2cwU!nGD`@5n)N+B%cTsbxBBW6W z>NJ3yVghQbz>5+^P&QLUI;jPEFa~&~AZW*yDzppC!=MO`4@CjcWGr-hhctNh7FxGS zGe|H~=>&9H+(n&AY4G{X%B zX@(aJ(hNUf)43cB(%{vMJOVoz^kM4*^%=w&^cmC{^cl<<^cmb4^clh#^cm6_^cl(- z^cmV2^ckiz=rb&5&}Z1rpwDoeL7(9|gFeG^27QL_4EnGlS|2tdq|cznpbsvhRY6-? zl~JbotRd&jz>b+=hg7EEt>m_hjN2KRn3*lun52BI<*f8%&HN*k+`KFTY?T$0bVE`q z)Z8tVgymF)4eV6;4k?-GX^1Fk>T2;Tny8xE$#crsn3!lPDEdcub4h5(i7JY6%jjCl z%0tqU^ZzeQx=dfdYy9@0uJMD66M#ws&>9NRgf2651vl><$Vim|SGN>|C zGN>|iGN>}lWKd;T$)L)xlR=f?B!eo$O$Jqlmkg>5KN+BFn?Z(vJ16kvdC&L+Az*1qN{j1qO8n1qO2l1qOEp1%_}21%`A61%`44 z1%`G81%~Mi3Jl8`6d1NMC@>snP++*upuq5)L4n~rY*v~byhzazw1*e6jvX{4zyY43 zh9+FdRy%0I)nbrf&|=VF&|gl&|-*S&|=77&|;`y&|>Id&|;XupvAC)L5pDr zgBHUH1}%mg3|b5?7_=CEz~-w#O=-}ICt+hjV>@P8j|eoWtgbAoj96(3nRs@#VdB#= zG?OxobW~Asj5L)pGt}Z^vN4l0ansatF_4rraM99qGm&HZ@~=}uS)3cB2Bel-Tv;OU zxw@;doSd<%I+O;LcV_>;FkWT6#h?h8-(v+2_<|Qd(`9}S5zElp3~7E38sM~@--9Nd zftcSjGiSW46lP=^<)EVC5M^o{u4Eu(rvi&bHG6RvO?6oOX{o8mD#D^p88o%Wz{Fto z{|l1>X5N>)1Dfpt<#|R>PKNH_0PXn!4LF0^!=e{;o4c0mPDQ4boaqt)^h z(D08I$P&=Zkro4JYE+%d%To*tRh3bfk%$|ECR@x+AbB1#g=ELX_yn5wp$P_>_ifnF zGk+j@&SxzD%Y%{m!Rd$b8{;ho83uJmOVnLiu#tPv7_-nF(C#tNj5{bz34wd4AQogx z=MDxDfgKF$pr!%1!Jx!& zgF%Vm1%nd957-z22Y6V`zz}5$UyezZQ4!p0Gc#9*#UJAf<#apKFgryhyAWg3Ky#UY zHT)XRrg~xGOrRqz3?0=3!cFy593#z4A{6<`>Uu`d zsoIQ=%%Jsl$-5auKvN^&eiUeZDyVh`#e)DS9zLl}c8LmGoALm7i9LmPuB!!!m{hGh(<4BHq?8ICcS zGF)RYWq8J5%J2<#4h$RQ92n5aEv5{r;3H;0^DWRhHUZFZHtU}q44@)T95n0)PO_lM z@?8uX4D#SPCeT{&9SoYFq7igv;e{Ox+VK6#&=sbLfK&mMO)5x@U+544Hz;JS7#JC( zz)=I5OyC10Kv3zy#~{wY2R>=XoPm$Qoq>-boPm!aoq>;`oPm#_oq>;GIs+fWat1zz z?F@Vj#~Jt-t~2m4JZIoz_zpV)i=6>_1eO@|FfGvHHgN`4aBl$Q6$onwgNndT1_O}A zpppju3>FLq3?2*y3=s?l3>gdt3>6Fp3>^#x3^N!E7*;SC zFzjG3U^u~Gz;J`XfZ+v$0mBal0|xNfjvOGP3k?iap(7Qb1I$3X=WQ9$*S(n%M1EeUmfeJx%GEdy1@Fhj#I2Q>pNzlX?*WeuId{lfqT2F5$!`f)#` zB@3DXk%rHHptp=c^CCQVK%+#UqylOQOMr3{Xp$Y?IEB_p;05u_3_Rfe{!RvASV#*q zXfg=HLRy$Xf)^&ABe-!Ws4NH#Qdvgj02?Nu5DPOGb$%NzNnI61 zYi&szP}5J%T*=%+?cZBQ0U1**NpXF5gXauP4BiY33`?0df%g&22Cd|y!}*j93@i+g z^C=nhApwqMK>)ZsVrPKt8aFT$HWpMyK07kX#)e-?SXc^#8PEMQVrqr3r5Kq0Kl(2K z_LCrkETbIgL^=)zAd_LJTh%gcyFphU+*Pguv?w`5A;5B*4uk zezY?;G1@TfpmKtpfg3)TiCj*IGO#d6!^;USP$B}A6I=}93|tKA3|tK63|tKE3|tK1 z3|tK93|tK53|tKD3|tJ;8MqjhGjK6%XW(Ku&cMZRoq>ztIRh8Nci2L8cJM-Va5o0D zoD+0ZsDYt4IJ>Hw!kj*%<+FDM;zT)h123+O%_MusQ`28L-&Ul^Df1QGUulM-0Fa+Hk? z)0e+I;C%1Rz`)GHc#FY^u^uva0qF_vU;ypj0FPgQOGi*H2OSIwaw=#a9BfY49Kcdb#R)H0%_F;t&oD~kYWI9jfaUGfH6LR z8K9k?>I_og(Hu$e9(Z+uoeXMVmZZQA1{2T-7O4DD)8D~h2&zUw>vo{Y2vH$nG`oaB zDNh(wLxCJ8$-oP4Jqv(N_66HT^OmzVs10GF$7E_O$0!cotSlxD-Li}*!$d($@FHta zX~x9JWW&hF#4HqIq30tg7H$A9*|f~$d2RF!!37+n53j14BBzuAyPCPasfht{Q73O; zA^GnQqnLvqq|k$<2gW;~J}$#6$gH0-X!Z|Y51^(Cd2qYzcpw^9t6;01KxB?eLq5)4ud8Vphl z77S7h9t=_p5e!lc84OYk6%0}g9Sl+oGZ>^8Rxn60>|l^$IKd#raDzdL;RS;f!w=Zn zJPuH*0v~aM9Q1Nb;E;xNDA0l$9>^G>iyX4>@C5f8m}D4l5x+JC+Rmfx+7wpMa$qS2 zIeM&3LF7BswJ9|2&w!efpcAgaJFIE7HpLui^D}4|3VjI53^Z5)8dCy~O+-1U*nkF| zV8a$5`Z-({I!Xl{Z$gYaF)=v*mtoRnyagV&yfu`^Ey0-{I^BUt78rw=&_g5;4FS|q zO-cBuCWJM7Mm0q-Ml}VMg`u4R*deRLj%qTV!x-B5cbf4uM)CrWjmd!fprEr%kkZ%C z8XE(rEpbpqE)J^5p|hzNjZBQR1?{DPk0NCRt#$*~{bEoSWVsQ|>;C~7IRi};3PXEH zl#iSR{`JF_z8FD$DMm-eTMUv6S3&EjVC`Q}+Y#2v1g)upv?D+>b`0P>J)nc8aJJ!~ z6KIH11X{U(+s&K|5)3@x1}12V3%m*e)VGIpX`p?3AqLQ_hz5fYg9U>Sg9n2ULj;2m zLk5EoLj{8nLkEKp!wd!?h7}A#3_BQv7)~$w#{qSpz|#@1mK&(a zCI%h>;$uQ;IEZ_ga0+s=^Kh$MstVa4nq-NwGy%c^=`(|lHlxz{Xge4{O?rON<}2u0BFMQDpv_pI!WG&iq0NCs zu$f?t+bwiJd07WEqzzhN3~epYYAun70L|xHk=GKjKn4r3t|bZ-_RG&NG}aVQmVt;#>)R;WBukg6s`H4+izp}v@k$%$C>bdVXz3~_C~^tO2+7L{ z@<@n&L+}Y_paDOeaRFWBgUD^r><6BK zk`Mr`JYxI<+FJp-%>WuztPG&RHgyJ826F~h26qNlhHwT}hI9s2hH?g0hIR&4hUpBf z49gi<8MZU9G8|`MWw_43%J7_lmEk+=Y+rWJS_jC1GpwL)9{4~Y4h9|u5pd>a0H2Qm zI&cegMu;G2+o_qkICPhoAZSR|Sk#!&s6|OmP+5RgP)ATfPlh)o#ioUE#=pz*N}TLw zY+S+$+LDaAX05FZj11oYzcAimJjbBO@EOtf0j-OIl~N1>pc9CY`@+b59wn%Aguojo zg&06*pFsvwkyjNV`kK%xN&%G46_DyIX!jIcBXKeCLi z_kf2yAiJAD=cj=t>P40H7}a3|lZZ7{wv5J%*O5A$X0Gadh(WX_L>Cj(31Srf_W?1I z2AVhJXJBAFz<7>h2KNE~ZA1^|g%6|3KJ?vFcwNxZGxAU|_t>c#eUa0oVE}g!KsbfF|hK8PL~PnX4O% zn}ZJuXIDP9)VHDDd+{;9h4VaqU0J{W%CCzT!T$a)01i)4hE1>>igARi;*+bToT@ti0;+NxN}Na&KIIhZU8rZEgQKARJ1p9;^#_l8m7Uyll7iJ8j39?-F*42%p;|5F%+nC>v>GXz3T^8?kt!q6*m zKvks5g&ho_14Mbj;~v5SpiLT}(m)Gz+O;GDGk7LrH-kR>rW;iTW(F1TStpFjN}x6Y z_=XZWW?9e@ZfizSWhFIRMomeIt_nvqdRoL`ieO-MqVl~r6qh>cg2U))Gb zk4->YR8(4kO;5{+X^o(?vT(1urJ4v66SIh_rFx%`vb3Oqqs1gyb8RUDDQyeciIxtK zd9d*RYz*y8?--aFL_uSLY~Z6;z^7?5f=|;H7E~5&H(+}AM*?)cIwOPi{}e`Ua2P}) z!T{uVNb76|gQ36<2Gu*D#n~XALyjl{9aXfGK^q(@a-gtaWMF2{2X6?KVqgaCL($&N zpaMQ)8niY}9JE2z7Ia&Lxv3sAH~_$>gNlKJ#aI*)Qf%6c)`Ws0hscm%WJqWD#AM8v z!ywBb4_br94?0sEbnzD>co83HiV$+5gMlF#=onKob0%XB zaXEEK8EY9?BVjpBK_yf!qmQ7XB)Tw`Eic*elO@C|kp5gP*wWa$-XoLm)r$`Qz$T+mY%;qwW*L5IzP)|G05$~sW* zk_~hQ19)_MHqy0Ij5>e6F(IF;Wb%JK;}s@(@ToArASaS)fp*V=&rfCh13Kqr2Los| zl%zhW4FGL2g4PB>YHl+sp6?Gi3>CD%57Ytx&B20bxeE|+1<;T>xa^k$74>qUq8?gG zU@XIf7MtK^3|I@a*aWX$1{I2siBZsMJPq)rM2w*O1mu|H8SNO&#o5?Jl}$l63qY(+@>cOVv7^JTsXs^lU;m)Y3q9P^F3@Yob7#NsXm@Y8LG3?*XAkDx5JqHOi z;|6M#fM)2#;2uV-&PE&+4O%r0IRqcEn+dd9MG(}U0QHIl88pF{K!FEU1sNn51Q|3K z1Q{$C1Q|RS1Q{Y21Q{|I1Q{wA1Q|LQ1Q}*92r{f-5MH6%99#LN^U44X)ck>w`I%jxb0tbb}7uf$Vnx?c3bJz=l%I?V5H9f_yMGQ= zu84xtE~qo1u54-yS^W;WV@?!&l=I_Nt2h_7?RPnF*l~Z`Le5pIoVFPF3K%d3|69Qr z@o%kxfUm(8ke3+3{|7R(Gc5+MsaHkR#E@A)SOQ|Z0Ir!?;Waa)b~Z3zTKsPjW86O; z5DBSI9R3$Do&fK84P|24%^<)4+AaxN3hvFo0lE#lXrS!{80>gRw%+ zG^5Ssci^>^0t{jd0-zJt7|a+17~B{H7{V9?7}6L77|Iv~7}^*F7^X1@Ff3ybVA#eW zz;KK~fZ-a00K+o|0fui30+6KvYzzXh+ED7FAd9ke@ba<0;rr z+WI>g?7*_1jjJHp9Sp7lI~c-2(~F_7At?h;ax(z!d;tw=u`mRH)0757D1!mm6a#^s zprZvrGcA$~pmTXF8K6T?mJAXMmJAvUmf-u^Js2z*A{ZBSpgwA zNntikRsnH&5j7RQySlnOk}48Py2^^Ww)&D93gVn%HoEFo8Y0|cDw0Y{N<0#(5(?VN ziaItrdXAzZ_8J;?+G2ciy7J)k{{JOY3?n++oD4h+k_W8F&~n8F&~f z8F&~v8F(0GGVn00WZ+={HJ(p0@G#tD;9+>lz{Bv9fd>++AVU}n!8=M=K$k^>yD*S? z1azGzs3byO>w$c|i#X`~IuPCmB0!j_2YO;1^d?am@Lgvz|KBmQfbTl9X7FdS+Rb3Y zzz(`#OM5r?R7B7Q%H0e`4D6t0DCEpK4hAvs6_^|hW(*t*ZVVg@VGJA$X$%|;Wegk) zZ44X?(-=4ymN9TJY-8YHIL5%iaE*b3;TZ!5!#CJ9450gUz~@C&9H;Po8bh5H^U7EZ-y5P z-V8q&ydgG%3;_*#GwLy_LrM|w#trn--Nac5OpP+ha5|ZT?;+E)QIpnH6lF1ERWPzw zHV!b8l{E`6R<<`%VEuc_I{MwMw=Ohl{h(-gc-qT#`T(ZjIu_Ks;W+gvVyXz zqN*0^B1(3_Mus7FN+RkOswmn)#vto93M&DZFAPeID;V{eE-}X0Phh|fR5T}Gq6GS9MR^U zK#29m@D2cU|1Dy;3AqWR%D@EbWNJgkY1tTA>M?`6-k@`UWf?`p#Ff=d;DeH&R3#2hci^R2 zwv4|RIfUgUzCA6wZiDn`FbV3%`7yLHfzHci z1)aMK+P2349)Aa2bj%Jq9~V?WfP@STK_gXy%1koL;Onie!A%)%23ZEsGA+!!rg$hHtRjtJuJ|S2=O$KX*mkibnKN+kc#UUqyHMm{?-QDg6uNRa+)qoOGy?~g^ z+6}%48?=;hH-jJpGjv%wp8#m20Tj|Y;JZaZCvEIxFas6hpqj#rL7c&iL7l;j!JNU2 z!JWa3A)LXCA)UdDp`5{tp`F2uVLF2u!*T{QhV2Yy496MF7_KvzF+685WB3kgHG_he z9b_7$rU0F9YzD3=lmvD%IDjkx)f5g4nhXw*py6O}V31&NV9;Q2V6b3tVDMmYV2EIF zV8~!_V5nelVCZ0QV3@(+z_5bBfnf)O1H%ah2ZkFA4h%0C92kBuI6#61WC*CHP*oNL zUv19E1iJrH8F~#6=rBe?bp)fm*-}qCK{<7?2HOT-S1}!BF+pi%!GwQztqD~Ny^L#Z zt>m<11zGm&F<|DGl@^s2U|)e;lYopsuL>Cde_@Ja_`}o(8ZQM6pn(QS!R;~lzFtLB z#XtXkFmf=(8GyziEEqR1MlfAq5N42POa+zxkn=J?!ve730ML;Zpn60cR2P8KAZTL@ zEzS%C&6&u8ECJ;qSq3o%Sq3!*Sq3u(Sq3)-S%xqMS%x$QS%xwOS%x+SS%zs0vJA@@ zWEr+G$TA#bkY%{WAj|NKL6+eg>j>}k`ZN)Wl#lQEd-ly-~uIZE>Hpo4V^*) z2XgR{6a(}ST$(M`Lpu;f-N+1b^s}gl*a^PqpdHtcgAQ4t ziz7ip;as5l%NTLDrMRM~qTdsPSFa47uz=1aXDr{o-C+Cn=b%YhMh0<4MMi6;3k)(0 ze|9r~PK*YfD+VrGX>(FNoygT_JG8FXQ* z+;thW7<3^;94CV=gCv74gC>J6gC&D5gC~P7LnMPPLnebRLnVVQLnnhS!%PNUhLsGu z3_BTg8BQ|jGTda)Wq8S;%kYyy7gEH53<2GECd#18AR{Pb3ECWH#~npU*CE)cZ) z!W3)NX)rJ|D1s+mKvOVA;5G(m?;j^D5;oorE9)4Eshi3hdI;%rYpDw=N(uvVb-trX%392SDoqWFYGSK=(s}PCx>!g(hu1 z0HntNYCj4itp|XN)(U{OOo7IW!Cgth>jI#Y6^I#J)P(|q&@P7*s6GcZ8fddn0JH|5 z7rX}Fzz}uGfSS6fGVV14nie9~Sl0}Q2>oN)gt}yafsw)He-qc9jHIZ$PmQH$FPYpkAa(^2-G@;j6;LRBWW|b1a4$N z27L?+k#F+|0*&Q>FryuGJO?~ZuJ~Vr;R6E$gDk@&ko(vfL}6tdZO)+E0ltk!9#rVa z=!3?aK~pfG@n+Cv9-vVUP%e`I?^ZD|lxGC>-9W{-vJz|$jftAF66h}08YW&L1!ECK z4Phf)K1FRVF<~AR5phugdo>3pb`=$I1raV$1wmFW0UmK-4*m#G-^ZCzk>NShDF!wM zHBjvgx*ZcVmICTKFLk}BB-7QIfAeuoZyWhb~w(O1n;|164SC$QL@&SkkGbPQnAt!GZ2u~l#tMr6SOs! z(2x^gvQacs7ZX)CQv%Uq>Sl_fYI1^tvT9zChytTNm_iv?U|~@Ce~;-I6X^DFE(Xxa@NW?(dV$U-0PS@K zon!(UBL{6GXJG)HnFE?N76zA{ARcW0I%Eyh4hBAbNaGMReF+j1yReHvoPirWRR$WY zVFp(;nE4J`ts;tEr~tIDfNhc;bWA=ocnQ{SP)C?S96a#Az`zAANFdwg1@1sb-a+&I zAm<2O0JTd&ccU2?3PUnF=u&c3WmC}3Ptcw6g39d1lfZeOai!irb6v*2`*vD8IG8cD zbwCRP#-lQSMPzbx8AboSGe~1hI0YRWzsK|r8kXveY^b~Zv4fuF&WfuF&XfuA9gfuA9hfuEt0fuEt1fuCU}10=tJOgPEF&v280 zpW!6~Kf_N*_F-lK83H<$8*~UghHn=UQJ*pgDSY*L=Iw{4fQTaXs-Z=cETDQt#*{aH^kL~XJHWee~;-K(=!HR z26F}{1~U-t-bSw9SqL;yBJ&; z*ccqZvxlxw7DSx~sGbDJ4WeHKjT=)?&)F2zbA}2arVOA0jvy6|kU0c524)5el=l2? z21Fa*nt=s;((Gs`@#}It3*LlV4${+0(c?}dIO6Z__|YYcbF4=wTBvmCW9J-C4(A+ zCxaS8B!e15CW9J7C4(A6CxaTpOa?WEl?-YOp#7>R8PphVGN>`UWKd)H37Xml4bXuM z0re$8gEk7_zN9R4$27Rv2^ybeXHa7RjpKo4=hzv-7}y!o7}y!g7}y!w7}y!6F|ac% zV_;|4#=y>SjDelu8Us7SGX{2sZ?FzG8~CCy@R%s*np}3ID?|`|i{0Qm@gVmNz%K{` zbth=G)ml}Aj|F^X5Mu4Ni5-hAqp`UNVr?2DGr`NdZV;HeyK_E;km>Y!D7*rS- z1lSpi8SXPMU=c6DAzq3io(?ys97VhWE?$8mz635_4H9Qy`v04OfjJr6&k<(G0?om4 zfU85uk`z##1FG`CCzXJU6GWeNH)w(wd^#j(?1+Vd2V6>E-iQGjm4hs90j&fAEp8FK z0GebF1>ed6x|72cbT5%Iqax!8#>xL~Gm89s!>Idj;=dEsZj3*9{{3bYgj}ET26RhN z$G-wd|H$~i2KcTUXC~hr3@-XR7+m#1Gb1}0WEh||A#K*4fR+L6U;s5~Ko@sufY$u! zgSN+OFhDkKgAN@Bu^@}xbT2@Ttp*L4m|TD?6Vm{%%YYtI4VtY0ilMbOqFKZSD)+%>I6*4{Wsra}q#_V!U;XW7)%&mFqkm>fL(qJG6d8F0kt3PK$d_?13LzB z20I3I20I3G20I3K20Mmu20Mmy20Mmw20Mm!20Mo740a658SEIgGuSa4XRu?q&S1yz zoWYLaJA)mlQO?Z3&R_?c@Byt6wPR3Yu!9^I$j7Lx#i-6Mj_r(4~>k1u$F;TChta zIT^SZBpD#LNLn&*F?cd?F+?(OF=R4uF;p^eF?2F;G0bG(Vpz$*#Q-wlBm)=2O$IK8 zmkeACKVfHafD8d8HPE&s5qQ@gdeJR-Y#LO+fmYOmme9eLwTgoKub`ukK}8(M*`Nt} zVNg3nQB)D>#xG{j(Wua~zge^yXE8GU`-iv^$;r>}Hp+ELj6G)mp22QL`ghKZ(E|C- zBuG4f;&~-As2(r`$A38^FF1aTL3dJs|hYQ1KDq(!T>E= zRT#t=R2V?@tQms}gBybiLl}b!LmGn$Lm7h#LmPt%!!!mJhGh&Y4BHq~7>+ThFkE9$ zVR*)%!tjkj1yVw=F{nUF2vG(V22}YV&!7c9XB2#FjXr}UgFb^M zgFb^LgFfi0b%sa=eTGa1eTGT~eTGg3eTJC~`V1=>^cg_so}OgTXSm6r&+w8#pW!F$ z2vbhbfvAPBzAZ*S3bC95T0}!nKt~kfh%4YhRXAw781#U0c?M1J-ACYY6?p~;26^yl zS{4lQ3?2;f3=s_S3>gga3>6IW3>^&e3^N$y8CEdJGwfiHXE?zi&v1i5p5X<9Ji`yz zwMwAEACy%(;P{>1c!Jjia03$ zK+LIth(pe+2Ag98Hot^nIe7gpD4&Dw2Las;cNp8t)ktxiR5D1z>b;{`VlLFZJE0KX{&R1F3E|HUN1%)nsD=m44`Wd#l8XoLFfkWq8c`Zrbv zW7zn#F@qL^F=T9ylfjrllEIiklfjt5lEIk4lfjrFlEIiElfjswlEIjvlfjr_CWA4< zN(N(woeahdCmDA_BP(TN_fhfV$ngz*h)>_UP?k09|#j2b){b zV-RQ1V^C+%V=!mXV{m8CV+d!^V@PMvV<>0PV`yj4W0=mM$FQ71k6}B59>Z}4J%;NH zdJNAQ^ccP~=t11g&Y%Y=+{7647}OZ_z|9{ zVC3Sr@%FUTv{2%=kv8);R(CO!HPe-`(34eliZbI7=i!y&({MJBk~eix6=gi-YGdyp zXX2{%_cN22ahRR5gs!u;bs!%TtAv5Cm075j922t@D~p7#gSx((t{9|_vj&~P&2&Ua zjll(!Cm5U=dcb)OUAzptIHMDa_-dFrjGidsdtl-WSt#N!VB(DKAaMp}&{?j`8jQCX zOc`7m0vNySX0T>p1#f29%@DxA%3umk>SEvxM=aW)H8rLT0pJdGfBFI$Ff;sMV1}ekkRhP4 z2p$F%22OC$feuNOg{6L32652ZFa}u$a|T%kcLrI8a0Xe1bOu?5at2w3b_Q97=?tJ#pn)Y&hYfTtgxLj1 zDe7DVwW_GK#x+f({W_ZD1%t=`pLGitYXU`&S1-+&S1-6&S1;n z&S1+B&S1-s&S1+>&S1;X&S1+hoxzr2IfE_3b_QF9;|#V8*BNXXo-^1od}pwQ1Qt7k zEv%xjWl&?V1y>Z{lXS`GCPNR>=44gF(Mh({_Ar(K9b09L?Tl?kQ!HKNKz2>LKz-0b zR%l0W|Njpvs~Nw6>kbcS-7ybbcYw}PM;0$*z$(t@gdz^ABOvBvLBv7rHPGD>LTU^j zLH%O}XVCD}|Njhj3=E+4A8_$9i1`1P3=E9yVE2I4GdiJ&gUknuGh~6p!Dl0VVUl5H zU{GhUX7bv>V57f-!B&3bsSjM2iu#G{3;TVGk!!-sChGz^K4Br?uAZZ4)h8vo}G#FGFG{8M4eu13~Mj%T- zJtrduEe0b% zcQTlRauH}q%bY=z!5rdP4hC}u2?lcp4F+=t3kGur4+e9F2nKV83kj|jXP|l#s(9WRCFr7h{VL5{?!*&K;hT{yn z4A&WS8J;ufGJJ=v5d$qh14o4zgD!&_c=?%up|Bn!=m-RGZ;Bbxn}SqTpm8m8Jw|nQ zb!N1Emw&}ggiXXvL^4#e#9SOeM_`-6j>FgTR$x*KQ_YrFMn7JTX^N;epPZn!h=rV` zh(~IZpIwTpD)=zENJkYZStjRfMN7qh-DszR{r?X>v*`{KsI3+V%D0T3ko*S9&rCAl z{1XHcXK;p&Q-RLcM;0%`F3#wLA`UViY!0I*ia01Ag2frKK;jI{41NqrOg@Z%!29Q= z8K!}TL1}&>?+ykQ&=rTE3$X-tFo=N;HV|fDfgWeT&Hy=r7t~n*t$_g@Y#^*Cs))QP zOVGs3+(=9mJdfeW`0pRn897l=Ib_V}ZmHq%kNnlrbnXv@s|%Ok+@H zSjM2tu#G{P;TVH5!!-tFhGz`Q4BtSz9zoMjY~brQ!EIP&237D)o`_{JpaC9%JD^b$ z=s{Gp8F$&i0J-`PHvR$~Zb7sK*g;KUcBCEs(4j$aTYw#W9tX5?mjmCj3a#Ab7$g|v z7&I8<7%Uj%7(5u{7$O+t7%~{-7%CX#7&;i_7-lfYF|1&aW7xqU$8dr{j^PG_9K#C+ zIffswYgaiKKsVBZ&OP7BK=V5eKwGjwJwM!|En>*SExG2P`dZ&#-c`X}S{9VM4Fcp` z6d23It&~A$ObQ9fiCL?FSi(Y{4soE0T1L`M)?Gf(0L+$hm1V3F76o0Ip=cwnAOdD7 z+lYha#lUAGf%AI=G`~aYX>@T|{f#CLufHMUpnMH62U>qK@c$QJJODO723&uaf#;W) zAZK2J&m-4kJUQggyo3%UA`&umJr-gu=SVr?67%97L9&my1fAZFetielGcN!Cho&=7 z`h%piEKoXw&-?nr=VdDy9)jDakg<(E*w_O@A;S!?I4c7K(+cK7xcVxFFJN(qdiWR# zqbo=~=#seq8cf@njxfkFC@?Gpow?4+0NOSHUgZzEiHsI^sDd^{D}hEFKzG=HR&xo# zMg6iDFqc_eSQvR z-hVaVaa8O78jKGaZ!uUgcr!_ZR`Yf>vP!y384N%@2qT zsd#oV@G*!nXbK8hf`^727{nMH7}OXX7|a+P7~B{f7{VAF7}6LV7|IwN7}^*d7^X2e zFf3zmVA#gsz;KMgf#Dj11H&^02ZnF3O;Bv0{Z)`XG!6`^;QdvQ(G0H(kTY|9VG*Sd zizMjUEJR@e9U=nvZ_UBm$3OuFTDAq*sK>`3$e;!ur2#G5qWNK^pa~dPSOeLWL7c&r zL7l;s!JNUB!JWaCA)LXLA)UdMp`5{$p`F2%VLF2=!*T{!hV2Zl496K<8Ll(9GCXH+ zW%$nE3Tce9Gq}R~x2_Co46fk*EmBIvb9Ws0z$kHLSQ=#p4eCIf&9;n;58=s`jY-PK z1~i6a<{zQ#=4lBT^a)8}WMpCHh9%&B?=jWen%R_JZ2^cbUEj zsWG^N#p{?r2aS!+BU3bw3>|04VEO{OsG0E&=V{T&R7cR*K_gC;dV*9|d(ZodTY z6op*Y1De)AzMl+ocO*y@v?CovgEo7C_8)@op91lfFYI7Y)`#3(t_$lu=rX{%re+Mf z3~mg%3}Fnq3~3Cy3}p*7t#=Sb8e**rs3Ky7F8qbvT($#z6EWzHb}y9TIL59;)5xSPlYqBn+4m{wJp z{@smnof&-H3aH%!S#MIwa1xfk8NV@s+C7kQwnAum0Gj_)0=Ii0>Z?%HgUS!EdPY|i z^`P*C-$cfUe=8X4O<>iKFud0Kw*a>C4pz~q!JAj0y#$~+ z1JIpx1`O7qHPTWHu$fnFcw0(>ftA4!yjYBrfe(BU54d4No6{(EF&IECfn;Fo3p*G< zZBbiL69+sBh_T5HIvob?zk^k1fO_~EkjXAxcw5Ji0dzDwi}nr%(6pC4tnnewAkHAq zpw1xAV9p@V;Lae=5Y8aakj@~_P|hIF(9R&wFr7i3VL5|5!*&LFhT{zK4A&Xt8J;u9 zGkk|FqhM!{hZJ054Dt+W;1wF6-4D>c_n@&yGX_lt&~ABfX=BD90UneE&3u?KcrchT zL@<~!WH6X9R4|w^bTF7P%wRBMSixY%u!F&j;RJ&j!wm*Ah8GNG3_oBS@j>V4fVRED zS~zCruoZ3KIV@=N1$2%vJ0GK{2&nB1Kck(o1)Ml^WlTbC&~C^R*VRbDYU{BJ*(mArb1=?FT%ZRpA3*H|Nd7HD$-jvF z4r?!f+Ak}aLF%=@?SfK9b#QqCzTXbq-thv9J26}Yi$m0d`cV+|RXEhUqNoRzClK|u zDC$Aw3B-IixOz#Zl}y)!K&!Mt>wN1`)PEOJV}Ph{V7Lx;52$=A1iN1w?9Niq?z;c~ z83I7}qA{-!QUi^M3a~SlGBktg9`L%qLhzmH{0tL!FbIHlB%Ld2XyNw`0QcOfhzht7~nUvBZ?j9QX}Ze!QfSJJPa)0%V!}Y zl)QI9Q^CxCb};aQjRNh#6;%Ws?k}h)sLW`pD4OWR*yH5%uf&P*+`kg0Bl-D%Z5RXo zZD8z~IgakR33}mft+*=%Ah+K zz(;V3fSNC`1^{%K1^9ekW(GzE&`~Fl*<8@MvJ9ZLGT_twL>TzM9U0JK3u#a`2jxK8 z+<$FgC=9Q7MZtG2VO;#<;bF6A5tduyTtW5f32Ya~fzs0d=L`&t^58XrkhPZO+~9Q- z|L-v{Fp7c4)WLI1jGjyo@xKfVjI7L{x)`Fqk`p5Sm4SibFSsrSt7j+#g&PASgW!J+ zhC@t87^E21Bkt;B1fRqTN@JkiT_WJqiFPt@z}k4AEesqCY7C&#hl7Dyr+9((eKUe@ zgaltN204=rT#h4>FKDQq89XNoN|%Dz>Otj1Ctl3zj{|uC0lDS_)qU*$H5hgYxIpJ>gZ(YXzydvL z8gwNftVfL0*g(4`kP9=wSy65d#B6iG?-Km~pCOEafnggns62+G*;-HjUZo4DYPGu#HLX9)N&$@m1^r}YD?uP+DZKL*emYl!*!U~%XgYX&z428Ms&I>8?z z&Y=M|C-J`|<6E%#Aoc8w^$eT9;`aX~88(5Ww^G-o$87c>?$7i9-EV-r0*oNnA;^!iuw+`-YFaqhoad+qi< zu>q|CWMg1pc*XREftx`QWEbdo6s&e}>4SD{!VDEujtU8}2??=bbP071Wz79|KFm4v zUp=(_0clS_)>W4lqe<#X_ALTDU9)PveR5cO3k>Ot))uzE&U6!oBX6-0dvqdk)O2=!hJpgpWi4Au+` z%%x067(^Hp8O|bZu>ftN1@)vrV*s%Iz5)WEIvZ4DaDZ<=fv($@W)NeLW>900W-w!r zW^iMWW(Z@DW=La@W+-EjW@uxOW|+nx&9IC?nqeD*G{Z3lX@+YI(hScSq#3?3NJB>S z*chZCjcQQ_X$DmWX{6;nyrA|yFKGKCsCZxj^_R4FgLbws2!jtR0bN7Q&j4D>4;t7I zgEo&8E*Kc9DvBy9K_|(vvfjiY>Z-?10q@?b#4CGFj^>ig2(11ke)2i$JZ=@Jai;PMr8i3z0D0@{(qbzv8SG=nn(H+b=YE|dlCThVGuk-5MQ z20wUD3ffOXjHnoa0@es=Y7}}G7NTnfU4j7~M&@FG9CyEi!AJmfUORNwl$Ak~ffcsS zf|UW(d(>cH1ugwz@L*tNh+tr4$Y5Y)s9<1a=wM)Fn8Coxu!4aVbiE0~2?kb%8w{)r zFBn)Ee!wnp;Q(LYvV%cfU?=DZUeHm9>I?#))ff!!3<3<{3<3=43<3=0 z3<3=83<3<(83Y)XGYBwjXAodG&LF^Wok4)%IfDShci4fxAVZ*QDj-J#gH{hpGl(;2 zK;r|#f^1F&9nj0(h+r?And*q(9wcMa!l~$grL(+AS>D-`k0krtNqZ{2QtZK zI2nc5Dl6ND7#X?gNwaav>DZ`&mJcMwefz^jW+>?S`eJQk@LsQS_ln7dY#mHd#UxV>G z(=`TPrp(<8ptc=kai0kTJ2YQvFmQmoLf{!S+T4!?&en!#Bt&6re*N6=B7q zB7-XUfQwxW`V4~LR10>$GlLd`GbI0UGB`6xGB`76GB`6>GB`7MGB`6tGB`72GB`6- zGB`7IGB`8LWN>C!$>7YelfjwcB!e@;644MowkT3$BbS}Xl!=S++!(hQ6!{EUn!w|tB!;rxs!%)E>!_dJX!!UzE zhG7MR48slv8HN)KG7L8uWEfsB$T0k1kb#5|$PiE%>4OfM1Yc2O4qso-1{$UVEy-dB zpZ_5$BF6$+ti{iWXL}-}dWlq!nWB}pq`ZlvtD}j$s(p~IRkDhuVWfhUwv<_5e4v?< zrMCvkE=46R$U!(_Vgg3?nQG0tIwC5@3aSS3Vq!A7E=KyEhLV~Fnr?!MMoOlZijrF1 zPI?|jGECSuEV{E8K<~4W`LDqUx=+prly?*uSQ+@iH5uqiE)Foun1P+a3AQhThIxlJ zH^=Q_&|}~SpHK?UJ5CH*3{H@A!O7snAj#mwpvmCGV9DUb;K|^`5Xs=gkjdc0P|4uL z(8=J$Fq6TFVI_kT!%hY#hLa3V3^y5^7+x|sG5ln3f}{(OA)s^tI<^CJ3@T_9G;$3L zUBHN_fuSpx5qZZGly^KKdB>K433`x&0Rt0*E4Zx#T8+#M8sq@2G^ADD0WD{w@kk0N zB3v0jr`{8D#~p#p6DaJdg?as*krw>=I|)rQId$a4%Sd_0+$>zOjNrX^ipDA;OxPAO z`!eh5{{PQ_UZ=sjpx54lM%SCGY8j!^`Jdt|Nk@a{g-4kX9^ZlV+aS; zfsFN_#m4{tGw?7lFd2dCOo;k2hSlIY7Ia5nIM^JJdQiU)v^16xq8@xkK*??fCI;kw z9B4cdyt@e${4F5sy zWCaiUKu&4{HReGhp`aUrK<z zAZJ;#!ZHyp?;Ml>4@`oFDnTa@fhJW!gKRPapaYFTmmh+rTtRmb$%C4j%BUw=*fN5K z8bKI5&nIfks9cJ2D`9vz=w8B>Qby5LNEZ{XG6*(nZ8Zyq?|TI81BUEZgq=45Syu;I zM+;t8$LPs07o3(L`yoMNiV*dcpz|ic?Y=LJcfkEpuzH3<6!oBfDMWo0ih58#6Re)m z6-7PhJPU|=@Oc(+^Fe#IAnM&w)Pwr55cM?-FTw5vx&IkB%|q0Cf$|OmBSXl44W=Fn)u721A%HQ(g?y|7=qw**aAg3R*b)P^aX^)U7=t*27=t>4 z7=t;37=t^57(+ON7(+UP7(+RO7(+XQ7{hc1F^1&~Vhr0E#2AhyTEf!h_f0^K}-0h19tEt22l@d8$i^9 z+zC++ZW}N#{{Qg5fbk{M1qKy{xv&KV(6ztNi9FDe44~WqI@Ap^z67dbKPClUC4{eSS09EqL;I*HiT`AxxXJu1kb30~ZBgj>4Z2XMIjNPRk+|G`onu2oN zGJG1UTn;&3}#80YDvlIa`Kp} z&IOI}oBo#s_2-4u7$D;X^$d%^=|bkeB&e?<1S+pV=bY3-bMVF(D2}6*Qj4EoZDDA;BpoAR)`o zY7?kpr6ta3${{GNBEqD?!1(_qlL=^EgMp2~Wfubz0~-Ug_AUk%1~vvJaPb9dS8;%f zFK~MbF#)%Of$0uN9RpMysFlYCTAX4muB^_k9O{{k^K%13~2io zoaI2Pp1B}rAb|S$X6D9_gfGNquC8myrN!=VV;#WEbVNfh4o(Jbn*p6R2+CP{Oy;0%;%tz%xHP|{l8CU9Bp;uolCX%9 zB>yx8Nl67o2}uQ}PGMy!egSDEVId_c0e&fEVM!%rNl8T|21W+1{~8RS1SZB%25N^w z)~JIA1O*wyKTDolLb+zKKh zYJ!3ad}3lODoi}0vLYg?LPCoC;^M4Ku7aw3{K5j99Q<-ZLaMSt0vsFyazdbV`~NGG z38OvuoOX7GNYKTCpp)7`ok?c!dFi_tK&L%}Zc>L_&d7{xTs@SHaBKhjtyut`UN@SeFEr^cP0ij)~3(E4mJn0zk!3+dqBVmQ~=Z!0Cj3WE6+gpm{H~8#2pNvJMTfAUC`OL z2GCs$#_)K79$x`2YV{c)VYh<;bbJIisCNTu!*DZbGH^r69nfiq5)9l78VuYF77W}B z9t_+J5e(c684TPE6%5=A9SqzIGZ?rTRxogbat6Z*25yEM4BQMa7`PdJFmOZ49grcQ z6JS6MC(w+cKKPgq14Bhq&?%&l$s5otp|~ih2aZ^62O7#{7c~}T+@$NOFRtzqV`>`X zqAsrQs{8w>zNfL2aYTuuLrJ)?l#!>w(XAYsc7D2MQI0CAj!~vM{&rgITdjh4%{(Iv zoC^YVbps2W3?jWud4sG#^%;Zr|Ixbxq#)gBF=+V@nxhk7pu^n(YX5&R@i3lakOn6j z&{>h(`UZyJ6BG29OhKpr3xbETK>Z<5TbGH4UrJC~j*t0;i5uf1A0|#g0S;kKPIe9< zc?~f}vww+<^Y!)r9p(`e;9`L+Uc1Ejg%LCi$IAek#fF?iXJ80AOq21;KORO7&;UGW zvDPK#7dX^0zxX2oQ)kEcfZ-Up4AcOf9l*%I488b~6`re5T3L5M%_wu@HV+>g#s^Qp z8S}2{Hq;(hy+=qE!T1dBd(;>*;IFbOfgVe;LCuhA0MR&~0a+yF-xlgGM2l zz<1Ju%21HDs3)K`Sec9u80UlC4KBMucZq>oq@W;T2hYQ@f(}#yw;9<5b}%5yZWQ0R zM(ki<0~NSzpaK_iUo_~F4ak5b#H-@U=Ej>meXa97eXSWEJb40gG!p}w{fwZxLK_r< z?BJ_NK(z^k1-T{u=hZIzPcHn@`fde*-XAO=YH~701l9ph0 z3WM&x5Ck2W3m%~Y=?B>fqCw-%pz&PLI#v+P3m?bj07WGSC@LX0oq^o28x%7Ppxcdh zFo045*9FMJRnQ1C$aSFe(LkmOK(AUBM7YoxbfEjQ0|&tFJaE9q(||Dqkb%*RNyt1I1JKqe24;rx|G$_E8KS^<*D5p0?qE;>jV)c+ z!2nu3$Ohim0P;Q09Y*vTLS)&Xj!NkDW+z;r+v4;Y|~ z05D@GgB)0gD!eqo7?MQZMh|WQDS~2A5j1rLS|_%Xf#y@Zpvwk8w?85upP*_2IRqAT z3^X#k9Mt^*VMbpN3Bm}L7W9@B*sZrPnt`1`>i<3F-AvCIKvQkn4E7Ac4CxHj%;$H5 z@3#yAx6&j)Ei*8SkAaOr3Cwa}U}Mk$v&=f!1hQn=rCw8=)jEDVUT3d zVbEmIVX$P-Ven+oVTfeVVaR0AVW?!#Vd!MgVVKFF!?2P;hhZm!4#PIt(uv zbQpdz=)jEDfz;Kgu~!HeN0gBQa~1}}!63|=s!y})-|$1$)lKqg<}^uZ0=3a@GKLI>Hiis_X$%<*%NQ~kwlQQd9An5}xWE_yW+*uhW>&nk$n0JN%z1m%oKQ27QG$OQ@H zA`J&)99RY2^@5lfwgzdj2IVeLna<3h4lZAX1wdy=GD8+g(dLLXP-fo2U4Rksk zXw2LH!VZR9ft?J=uuH;{88jJ^Au-9pkjx;#kj$XLkj!Agkj&u0kjxOlkj#+5kjzlQ zkj&7*kjyZHA(>$XLo&k-hGd2l49N^P7?K%YFeEelU`U39HpmcA13gk;Cqp^Rl5z%3 zhH{uCk;*J%bX%7x4Ww(vUGjW^G7a%?_#wL4(zxnh^QETgZhppt{(d zL5blHSg$asp~J$!tjz#w1c4f~28NIuZ6J5q!1er({C|(pA6zDzf?80Z-an+ZhG@59 zWI;p*GcW|jHlrdaHXxw{a);#q4~#pRt}qxgUfIpS!@vQ~U*M91he3>ihe3^jhrx`2 zhrx}3harrCharuDhoOvthoOyuhhZ8655qDB9)@iUJPgMeco?oR@Gv}M;9>X%yQ7^A zR11SPb&4|ZFsOpBe+NxMLvCs32VE&8u!BMI!VU&SC|m2o4hAjwG4KYUtZ#r+e6WE8 z*pP}3=rR(-Ts?F~5j^iL0A26DgTa9I=Rbn3B?2u504)yy&2x)_I`E+BNl^xI22loe z22loc22log22qA^22qA|22qA`22qA~22qCT45AFn8AKVjGl()AXAot$&LGP0oI#Y~ zJA){sNB~_}2CkCC7(^M=7(~I7tP-G0ioyK_P@57IhynsT7(jcLIRthvfC5q*G`S8L zbTVdF2JMd%6E|j8hKxyphsyMr)RoPR^%zY}%*>U|!TWl|#2HueYRkFC3f||v#l*zO zc!GO7Pn@fQzA%rVm6maUwHk*#j{y@S6O%Q!i9~&Zg1I15Cp&jWngOpeKes%$L1L}| zwWAI{-gOquk3~~&T43J}rEE(h&JQ?H|A{pcuG8yC;DjDP$IvL~`W-`bz ztYna50JY#wGRQI9WRPQc$sot@6LKmMI|H&I%!Q!2>75LM3=&@;F(=9(`31840<@J{ zRv$9Pr*dHzgDL|XgCIPhH9@tVAgCV(T^6Eb7rBE0EC9`FGIo)WkvP!qtep%}3?g3~ zK?#B4D+bv?%`ygY1}O%01}O$+P`-i<6EhV;&fHaG5dPxG%?ql-)sBWqxUqovpE@EI~Hq8tK3 zOk7%q*7ol`x*3=lLKroeyO@qJfTsAHKqHi}kwp;(cJNwQ&?(I9;1v^)J`w0b4A8xe z4B$&LAln2bK#>k^>tpoB5nVWF6NejAMsY(5EhYif6+@s7I%r*xpfaPeG@~(SbcI=& zSy@o|W-FsZs~IC}SW{!L8B?D^ACno=6a#~QQyAy`+rjAZFNHDl-*gZL*E^%*r_it- z9X|!l3oz*Xf6rvdB+ekspu}(&byq6rf(OvO6b#^AEohcp8hjc6XeSG(AFT)v%&?q+nPEEvGsAHPW`^qw%nZ*Nm>Ir9j!g#L;7r&MPEZ*)je(hA8TiCz14Cg^ zF;EF1&c_TIQ-CZumSYlCHw9goDLU6W%sxgR$e_+($;7yW!AgGzgSGw+ z2GHP|mB0=L&?pReyD@kl5cDhsTHPKBTF4*-st5&kG8n-2OByhUF&HqYF&HqIF&Hqo zF&Hp}F&HqUF&HqEF&HqkF&HpRV=!P?#$dp(jlqE77=r=BH3kEQXAA}m-xv%a?Fcpo z16W7SfI*eP0DRCXa&-r}A_z7!3?0{iOiqJpJm_pSxN*hLz{sEtJ}g0qffc&HQ&9j^ z-9fjlZ zEoJ1PXBZ~WD5&XbqHHXsqTr@&;AN&N#^ov9uQokVlJg)B`;@VC}-di1ZqD~YyQpszZO#?vk(J2 zgW(Pa4*eYroccQ$*x`GkLG4G-a4QS+J{tzmrMWENYu*hESwY+61r-IE?EiT=F zUiBvoG(HdMOK34UF$;mm?m(S&$b=TC(giKN08h}Ga)P$lD{?X_ib^ti{yWOV|Idxl z^xqD~o7c=44>0buu>0rx&&?Jxw(7?y&g8=gDqUnj{T+_tW;AA0aay7$kuqplc3>plP3>plX3>plT3>plb3>pkG88jGHGH5V> zOgPD)!Elp7gW)BE2E$L-sY0C4Q-wea@SR{Ko)d!@gA;=qgA;=p=xR#_Cx$QvCx$cz zCx$WxCx$i#Cx&SZP7KQ!oEWw-I58Y!aALT|;KcBZ!HMA;Y+nK!gA=U8b7D{hZ+T$Y z4Z8GzffYPRsSGW}K*b8AR|+~t2ej~7Qhx`7Ht6O?&`pi{up0^t3{{~egF0#z1lOuEhih*{af)3(^Ob5#`iVA{#t!4^ptAk5CMiWzW zK@&C5qBl7v#%ZDge0-c7>^ywz%#4goVnzm{>cV`ye4HF?ynL*TOw8QUy2{*=qP$EG z1O<8cd8O3#v=vzYaVSIvS&B*W3Gwjp=vo@Hi88(yx3RY|kY(i&29Ux4=To-!xow5Mv?0(TN28N8F_*GK}74vND${>G=iNku% zNUJ$eWSD%J1!Xj4q%~yaJ=Ih^Zyo|@$rf4Dz3&R2r6qM{(oR{V*JY>%n$$#8PGypa6c3}1|(w_30j2%+CL8p9?+G? z>yXfDofEUL_|D9Whjt>rLt zllNanabHcxdE0#$nd|yQD-HS#CW=)X^cjHLp%Dx`OioO)49pB%45Cn1vFU?KYKS8Y z49!gyMHx+1MR^%TBN$)(6Jvb!FOYFPkG?*mqQwrAg$s;P%mK|z!OUUN2OV4?$^h~L z$Q)fpQ&v$>T@t~#{$C)(tWx6z3r%)d{JXEO4>l+M|6RsUOs^SO88{i7L4#{d;5kP& z&{3n{IadxS3zAT{L8Eq{Itw&03)-X40#(Go0AhhlQ(gecH zW^89{|5wTA`fvBY-HfiF`sWwZ2Zl||4Ghc-;ITcBtqh>4R>;_%u(G=GCZo0hrVkSs z7#ZxCJ}`U(tCa@TaVTSYpn*YF)U+XW7x*P#&C>*jo}&t8w2QW@ox-l zkd`GI0~@UJVFQmMfktU01$Hn9-Ps8mYK7co&%>Yv9vB5zr92Fh3_J{)3_J{$3_J{; z3_J{x3_J{(3_J{#3_J{-3_J`o8F(00GVm~fOgPEF!*G*?P_L9>G(ybnZxFtZ2R3?XRz;r|zAd4@mC z{tV0vqM#%SO4eZen8Ay-3=D-8O%?zA`@zV;EDvsvyN-DHAYNe1c(6SsDg*%fu| zrjiJ3?IzRzuS_2p?ZM>`czp)wOcGEr2wL3&T2TmUQbJZ4Ldr@`P+7?UTB@K8sW?E# z>@x`LV1Se}s4EDW8zxKum37|C5)7-s`ERhS3x=m}P`YN&Wa4I+3tpqc1FEz@i%Sz!-2eL+m>J{{>R`QQ=m;S<=*%9_aC?lSovG7Ou=#FG zK@7W?KqDX`pv2Ds?ovTc_F{#uQ)&m<69iHYUJl5>#J~hP9|*JsUXxK~H@Fzl05@HQ z8Q9>bII%&Svr^Et-Mbmop)>N3*n*U9I~WuNb})bxQ)Qab2&|=_)jj;1FNHXv; zXfp6JSTgW3crx%ZL^AL)WHRtFR5I`~bTaTV%w*tYSjoW4u#? z4iXSc95jdoo(BdU;;hWT_y^P^Fc#HkG%*LSy+yuH9aPYgH9*PhH1LGcM5R0Edjgfgbg9_+84{!`|ftu2w6%e4X zW?|4`V1b1-_+AX~-QkuDEDW9uEDVthEDV_pEDV(lEDW6tEDSRlSQu6^urPqm!aK>p z!f=y;h2bRw3&T$a7FbxbfG7MJKxb=$XD2`lWI(5DK^80vUjQv61syL3S)8K*iVx7H zS5;8o4m6qrUD$;Pb?DYCgaC8^2z+>!Bm*P(hN#^Pu**C^$q8~&$qok4Fe7N{Nd+|J zWGsksd=@)sff9I*SR8aRfGnf2sIs6kW1)=={0OZN2?^2~hGJUMJR(YgIXU1%uHXk~ z-7=f5Ypuf1W5QM4X!b7ye77?L<6340@M8H!#Hntev)o`Q9n`)B^;kt1SpV!`0PPS0 zU283I2XwC_>mP<445HA=A9++C;d4PyniT}4S$4KHY)==<2optje&>p0+h|p5XRIEWpgm_GW~tz zD4Ux>oOc71&BLI|2NM@yVB_5o0-9hQ4q>zVUS=fhq752_!#Fw*=!6FjN71Wc7`>KccE+!1}UaTP&Oxn z95WA;&Bb<&*#^qyX3*mWwZB1b;9>CM1+7^Ju>}}-_^hC61R1#aKy4V1xDbN`Um}Au zLq08(=!N|bCT)`(ZFTbR+AXULVH_1asp}f3YF9#~5mzwta^bAr=Q%$TDj0_A-bPWx3jVy87f})oJ%|ZsKQK;H=!EuD*M_s5NQG+6r0Tl3w z3GP2NQCmU7)rs(pqL?rA(J7Qp@bomA)g_Sp%@hX(CEo5R!CGR zDN0O9%}p%IR>)67O$Q2zc_|9HiIoaTsR~7@>6yhPsYR(N3YmEd$*DypiJ5r{S*1mp z#VMJ|C7Jno#d-|j(82B{29y*A3e^;_^FSU|U~pq7VkiYWF&*p;2FH}5%)~qex1!RL z%=A=nQo*NQ0UW@^;Cz(_PUE1w07~t!vt3Jit}mJAjQ7U2Ap$dJYW2}T8mN`_Q$ zBT0}0K1h9qz) zkUuqau|vkK&}C0iEOZ+O2H)*%uJZAsSFk1k`Pp4 zrZVJ#!x3RiF}S1zm4_e}D3L?_2a5L`a9Nwn0Mb;;K|iV;wZfW$#59FjT<7(fLDs3?GC zdXUMW@J5aoP<`P9cCi9ODMKDO9YEp&SrsVNq52tA{3t-{DFucCaA<+jAE=lD%aFYzL`8ga;^1LQ)?nypq8x zKs60S1t=$hSRfS{;26qer~(&qAisms7|8XY_)%a`V#sGu0vE?1cYyK=sy{$QHK@)l zVgThPP;m(=QbF}vGD8kSDmWE`Oac|k#S9SJK%ouFIUun_hGKB)1f_paO$*8Gkn{s8 z6+j_Y3N9x=sSM;xP(cmS35qvRE(BGPnG8t`nc$cJr2s@~NoU9e*R<%R8pzck{}eIg zg8dE3nV_76&|p8wzzrQx-pgYsWyobv0Jr==Ei;JEK(UkuE?>~=Ifaze;>`5C z)D#6+4V|Z8XlY@gqmYVH$}>wc;1#`&LPn}Wabji)h)zq*DFLa?Ps+(m zPXtx!3MKhaHz_14hqrsgH5g0&QvROVzBmt-a@q@cX3!>uSa zFF6BjdPXM5u#$|#5{R=a3sOO$qmW;oTC7lQ9qyvwnVuif?5`}`&qSTy9h4j??+|-hy%w%hY%o2r+#A1cA)S{Bi z;*z5L?9^ffusafqQWZ)vGLy4Yi$DU9@XW|B%B;%ID@n{L)&a$YQoa&MvP2;hVn?Dv zL26N2YI2D}a%NF-PAW)Iib8Qleo;v(DA^2e^A+IzsFFCbX0TjcT zc?vnH>6uBHIhiGu;9yD5EK7y?B2ghDu_!k`FEhWi7%W+wnpd2el#{BESWu9fSOhXh zAuYd1At}EkL!l(Kq6DHWBQ-GvlrkVG&B(yOL;C>@|Q z3KbL_vonhl6}sk;p_l=e9r|hcc_q-Ypr{zsS_ajckhUze+X889L%Ska`yik~6Dki4 zJE$_y+$U%pfZ=~LgAtg4MliO3#}k=ATaCa61A&$@ax!o+a5L~Q@G|f*@G}T72r>vU z2s4N5j2+N2Jiz}I5XX3$~KWzb{L zXE0zeWH4edW-wteWiSI@A8g5B#bC`~!(hu`$6(Lkz~IQ>#Nf=}!r;o_#^BE20p7Rb z&EUh}%izc0&k(>6$PmO3%n-s5$`Hm7&Je*6$q>a5%@D&7%Miy9&yc{7$jHR7n4yKC zm0>T#G=>)pZ47-3-3)UXRx&JMWM=4MxW&-SFqz>K!)JzGhUp9)42K!+F??j0$FPdw zE5jFtZw!kV)-s%AIL@$+A&DWGVFE)6!)b<8h7$~@7|t`CVK~chj^QOk8pCCV3k(+- z)-$9td|;T!aE;*#!&Qb1hSv;l89EuV7%~~M8FCqN81fhvFyu27GJslU#o#tq8ACb4 zD~1Y&DuzmiYKB^d8ipMV3mNJe>KGar8X4X&ykpqK$im3V$i~Rd$ic|T@R#8qBNrn# zBM&1l!+%BwMm|PEXHic9L8M6Jcb(#4;k|rZZq6rxXbW>;U>d<#sbDd z#v+E<44W7>Gi+nn&Txcb3&U21qYO<9hZx!!Rx=!9*vGJ+VGm<5V+lhK!+ge4h8YYi z7-lidWO&b5##qjqfn4g}XmzvF< z2%)*1L8WwQZdy)i1$Q!n&E=euUy_&%s>-;M;Y>D{KpIE}~3bBYi z6+*MQf^A|;1yfwEaNS&~a3;Ge#CrBr2+igSF)lo+X(%DXDCkV2a%n;sf?fDD4Sx9eXB( zX7co6%FN>SLYTyzg<$h|BU#Opjl^N|NlY#+NoC6cQ#?LMQam|G95x@Y_t|p56pK$v zehEuXN`48OA6O$>9+=|sL(;;Nhs0s?18Zc<15@02i3Rzf`n(_`mE9leqkIU><`0e> zwtO(f>z`4Ym!4QunwyhYTEd%;%wr1zTgp}hrg(yotm7#{;;;pQEoCc$P{Cm3Y{g)T zI~Wm4+{FksPY99$JS9jRwh)LhC18pr1QcH-p!f;}M-*Erm|_ow_=dd{LbHW}y~9=t zrdUIZGV{_|OF<-WD6*e;OObi(p^(^RFNM(D;RqLUmm{$wk=T_8Hd_?flWbLBiYp49 zFuAJWOrBsQ&+!x^alqNu$j}i=J8`7sm*k`t7iU2PoGrn$v84%wc7*bsoLO8;i}E=W z(=s#742>)-Ia7;EGIK#~4v<14BSTXtZONHllvtLkmz-F@33eff#fNY{h|38MW-tpJ zupkysN@i+NYH?;Uh{FX5U=WiN9JnAB2PkAg3<2ce1PSoMJr3eQO;5}z;YRW}KN4Fn zF{cFNTsI3h&}|u@vk*X20%G7bEQ}0HjLo2lLNE{14gkq>G01@K*miOA2?0+sLC#wP z$%57fF)(m3$T8?JFrvwWbTVeA7UeO34jTmXKyy;y(Rv*%wm;ep+UMdu`oM9J$iLi??+yO!MDU1$m zX>gp!n8zW+e2kq9q?Y9jV;;u@j%f^h43_`TF+~1<$1wl@HirHG-!UBg|Bg}q{~kug z|9cn>|Nmw*`u~p6`2RLWlmG7+P5*CWwEw?{G3fs)1|A0f|Md(_|4%YB|3Asl^8X}5 z>;IDsZU0X)wEsWJ(DDBy!=e8t8IJrv$#CrdNye!E^`JEs|Ccb#|38so|Nq+z2mjw@ zl>fhkQStv0M#KLn8IAu>WHkAIo6+?DL`M7nOBjRxPXybM&d~IK8$z|COEz{W8D|7V8%3=#|n86+6x z8Q2&V8Q2&N8Q2(&|9@sQVUS=n{r{QKo`H=afPw%2LqKapYU|A`FS{!e7s z{(mCFj{g%GcKx5ou>1cKhCTn6Fzo%mgkj(RB@FxjPh>dwe;XQ){!$$@QhR+NVj9mXGGV=VN$jJA9BBQ|niHt)3moSR_U&1K%e+i?+ z|A~xJ|0goa{GZ4u_kSXz+W#et8vmCtYW-irsPlgbqu&1|j0XRgFdBhlX(FTD|A~xI z|0goIf>VL)|5FTd|4%XG|38U0MJ)P%l40@xlMGA#pJZ72|0Kh*|0fxi|3AsF;{Qp8 zRsT;itp0zJVa@-O3~T?NWLU?*#;~4&jbQ@=8^cBhHij+#Pcm%%f0AL_|C0>c|DR;o z@&6>luKy<)cK^T4u;>46hQ0r9Gwl0+8|J#gO|8Fzu{J+hp_y0Dd!T;OfJOWDTjtu<&w=u~6f5#yA z{~bfq|91?{|KBmR{C~&L`u`n6+y8eA?f>5~bo_tEu;~A7hQ`u{tIHUHl+to{EEOL}_8u=W2thHd}fF>L?;j$z0DcMQA! zzhl__{~g1g|L+*~{(r}?@Bcf7L;v3~9R7cs;mH4Y3`hUpW;pi$9mDbew;8Vff5&kB z|2u}8|KBm({{N2Q?*Df<(#<|CccA{=bc3&;M-< zd;f1^*as~+4*y>QE@s6!f^Hf5{B#lmoVJ?zl7oT|0N7}|1V*9{r@M! z+y6fq-v9r}@bUjohR^?hGIIT2!pQS~2_xVCC5!_9moTdR-^Qr%e;cFL|80yq|F<#f z{olrD04|m0GRQN4R_}ujm;qg70y?S9m4T7L6Li`v10#bk10#bU10#b!10zE?10%ya z21bVU42%q*`QMEUj112i7#Tn}B)w%|WO&cO$nceck>NW7Bg0PyMuy)Ej0}Gn7#S59 z7#Woq7#STH7#RZ@7#V{Y7#Twt7{PPYEDWCi-!TR;2r)MOf5!+)iK-0z|Ccbh|9{8e z_5U41$p3fXoV)V>JB&29>Hj;1E&s8nvy=bdF`WMYj^XV8cMRwMzhk)g{~g2S|L?G- ztNZ`oF+BYLj^XkDcMMPezhmV3kD8{U{x4x*0_7TT$^o%Jb;d~sMzBjk;g`g~%8CcKa|Q{NJpGkHg5f)Z1jA1T35MSc5)6MCBp4MK_!yNK_!u1+ z_!t8joEU=`oESqGco;)L3mF*$|F2}=VhI0#2cwQq_Hi&YUEuKl4r9>&l?;pw z#tbS9nhg33#tfzm<_w@Q3mXP^22TcmhERrZ@EAl4LlZ+Yc-*0lp`Bqq!+wT?42Kww zFdSpJ$nb;V7sDThzbL(Sd2s(6(f_sw^_>|Q8CQW@N}3EY3~3An470#+1;aXq9Z2vT z!#cRg2Zn!O_<>P?Q3;MM7%dp{7;6~kF@V&bW3*rdr9{F1^$aTiPckqu2>wrJQ27r! zcSqp=Nd}m>%m0%M9{*1=_%N_B1pPnB5c>Z%L&X2v3^D)TF)%auFfcNFWME|Y%)kh~ z0dX7HoF$B)RL;s^{(ldH)&JiNHvhLVME!pU*2BRd@P8tM;QzT`yIlS+Vet6Bgu&lgVtgAFjO#nWT;^H%uvC=!eIV?34_)DlMFWhCo;tRzYP*$U}LaiU}LcP z|Cu2Md>sI#=QnCN_41)hBGN}CD!{G9NB7@uii3}e9Co=dj zNHBm}U7`P%FogY|$Pn>=2?MB(kNH0l>?e3jf`NlU@c%XjmH+P;T>jq%n+(zWjv@5_ zJBEn=@4&tW zw*T+`zk@WxG0Fc+{)5_14F7Lq%0Wfg7})-QW?*2Dfbwxr|0n*R_`m-D#Q%H1tceT~ z|0n)m0>Y>o!0x%t!0`Vag9OB7sIL1z@&DZapqh%||C0Yd|1SaQ{=W@G!tno-P*JeI zP<12Jz*tB$6N3bJ6qk{~6tt&~!5q9()QZ81frY__!G?jAA(SDMfsG-GA&P;WVLror z@Ksnp7#JCTG5lg+Wcb7IhXFKtCdk0VD8wklz{V)dD9pgbD8eYhz{V)bD9XUZD8?wp zz{V)gD9^ymsK}_uz|3gKXvo0AXvAp5z|LsQXw1OMXv%2Hz{+UPXb;*!%HYi)06y4L zkU@}vok4{`g@FU?GDZfF%b36}V`gw+aADwNa08!&~21W zForM&eufB!2nGSLA6OV-7-AS$8S)wO8Q2(_7&;g@z`kN;Sj4b`fs|y|&jJJaGrsS;VQ#b z25yGy4A&XB8E!J%WZ-7F&2XE6o8d0QT?TH3*9@;2co^O?yk+2Fc+c>jfrsHE!$$@l zhR+P28F(1E7`YgD8F?6a7Pzy}U}K5)46F-kB>Fz_=EqNO`tKy%xK4G$G{JcKSstVMo?N|WKd#IVbBMc?^X;p4518B qXeBzNGzXXE7$rHR95)5s3zK!JgQnJYK3qJViBi#!7ZV+F{4d5O8Hj@CE#GBEr&!@wZWT##Q} za&GdUn+%Mc0SpZ6zY2;{3(j1du#SO&uYrMqF&Z2;j0_Bi6n8(4=ePOFAkX}Qfq{YH zP4J>Ff#D|W@3KvZ#T#djIIg{ z46{MZ+CJqK&CJqKYW_^Y{rUMLqj4TYx8Ce*j z7+L=RX57P2!ZeGal#zu&j?tIFgOPFARyyl?+kLTnvfKP7IMu zc3?URs>hMZjv<|C4MP!AAVUK428Il#WClhiJBC;$9R_hm76uc>B8F^676v}BU%vc* z&+vgEmWiFgohg~YneicmA5$`eACnG)AEO3?H&Zf$0h10x0K*4{D25OJ4>3N3u$e;` z0zl$SL16VtAU%w}3;~R*7}Obk8Qht47!nxIGx#$dVDM*r$iT*U{{IigRSeRMz6|LM z_ZW;BeHm1lW-;_KLc+e9iG#rp8g`0I91KAW_ZaM$I2ddgJ}@{kD=;`Q1~Q~FK4eH> zn#EAh=*yrD5@Yzl;K?|Fp#>a{K@9ecK@9#39~gR>bQrXlA{gozSs1DrJ}|H{1~JTL zY+}e|e8>>U%*9Z|%*Bw&%*Eirc%DHN9PXg7N5jnX{{Ln=zyJwTP+UMUI37T8!2*uY zM5d<=+W60vQ6p;SLIWG|U{r;KcZl!5knt>rQl=mVbx>R&V^CZ$B{L|2X^_7`cB9h=7$U)G z0T&HQqo8#1l)(xV_t3QGM~DWe=VS&0Tr?=HgVWU|aQY8mWMK$q_`skK3U`JN3|@>Z z|9>)k`2QZtk77E)kjQwPAqtc?Kih_IFF#x zj^K2n!;nBM4bIyK82mwb8yuIQbOp-es~Dugc^#SN`2PUz9;m&b@M8D?PDh@gyu|Q< z!HwYq!(xUH48;r|{(oZlz@W?Ufx(4o9s@tq3kH2~zA|P=VEn=$%lv{tmXU>_5sI~# zI2hJIaVQf9LmCqYg8}0ghEnDi3{}im85|j{84?(+83Gwr{EuY3#$e6(g&~Le9>WHZ zxr|>JbQnJ{n1Ss%&fv}z!ypMNo4{&W7^)fH{{O-BltGh8o*|WK7DF`CEQU;`Sqzb2 z9LNyQ@PVP6;RC~Rh7Sxu3?CSh89p$0FnnN$Vfet1!tjA1j^P7CH5&C+ zN^DB}NWO4O4>>uN(oA-s;3_F{`mi!>HmKQ1_oXR1%?HTdW@EgK8%x?B$&*Z zjxn8Nx&b#^SV2NTMnM5=wj~y`1(igVB;jVKsGfSv@Zgem-~17-^G6?{_T5c^U(64#Y6LlCJ(hADnFEZu=#=S1N#Ry4@~bT z-H*Q?en0Gf$o;_ke)pa3tKH|n&vSc)Tro!zTO&Axz`;iYf{lp_WGW-LMFC>LF(bUK z0g6PpFct==eFutH76w)ZHU@SE4hBvJE(UG}9tK_pJ_ddU0R}+^AqHUv5e88PF$Qr4 z2?j|9DF$f<83tJfIR<$K1qMY1B?e^%6$VuXH3oGC4F*jHEe34{9R^(nJqCRS0|r9| zBL-sz69!WTGX`@83kFLDD+X%@8wOhjI|h3O2L?w5CkAH*7Y0`bHwJeG4+c*LF9vT0 z9|m6rKL&q>0ER$@AckOu5Qb2OFotl32!=?8D28Z;7=~DeIEHwJ1cpQg28K3~~Vn|^~WyoZVWT;?R$WXwL&6vng#*oFB&(Ogzi!q0xn6ZGdkRhF+ zoH2zloiUBkk1>}ahoOeihhYW7E`~;iWQIJ(Y(^W#JjPUpT!vc4D2614CWcmq>5Tl0 z0*wBQ0gNGxp^SlyK@2+?ix>_vnli>Q#xuq+#xgcBHZw*rR5AuLhA~Dnv@rBAG&A%v zbTRZZOkkME(8n;9VH#s2!xV-&409P~Gkj!pV)SGvWOQY8V{~VzV)SD4V030+*ulV{ zOoa^$ArXoj z93rLR%+$z8E8QIoEFg1Oz~*#CD!3_RK~2a?ObLom?uyj^tGk1NRmWRl1G8E{L}0{* z1{diK4la?>ii!%Z8x90SY&hT|tr!`pyMuuZ?otH>*V;@8sGHe!b}+DM>F!|QfS3{- zv7teFgF|Fj7s$-u2xY|$2fDhXyObkg{2h!8=mHKxDDl0}xD@MBL?qJ~5@eYn~b&*z71UZZge+YBK-L1QWfk$Tt12;H?c|jpV zg%IWgnL{Xq`5|FLAcO_rE=37pL7g280-z8Uf|wEHX0!!#t;KF z8fK0-gB625gDQhG%(7h!QVc8%g4#P61R;ra2LppP!!8C!1{MY;kjq&ijC~BO3^5Fz z47Lo~3^EKH+WQ#Tz}ERPm_zyOU`He5IT%8a)HCd3U_?{E#L&!;!vHcs1#BQQnt?1R z7BcK&;ACK7VAtNkzyNV6s6T1Opv7RoV8dX;V8CF;-~o~MH zesS7yUf@dMn!v-wvw*jT_XQshpAKILzkooRzyd)x!7oBKLKQ-5gp-7q37-?O5UCSc zBJxkvP4tJDlh`?NJ@I!EauU-dPD!ds7D%p;yeGvbr6lDcRV39WwM4o@CQOz|_LAHT zxep3F3VjM^6eAR;DQ;6*r0k;nP34U05;Y68Z|Xf71{z5kdo-Cen>2T53213(HE12s zI-vDVJ3;%Mj-SpZolAOBdM*0z3?3PB8EP528ErDUU|eRr!X&^n%(TKx%Ph`pi@B9~ ziiMd)g2g4vCaV?JI@T7}F4h6oG1eK@CDxa08EkoMC2Un}4Qy>}J#0g46Ks#zUa-Am z`@;5%9fKW@oryi4y_CJ0y^+10y_fwo2M>o3hXjWlhYE)lhY5~YE;$ZwtBF27@bm;3|#pZI?WkP1)>Fbc2>@CpbEND9acs0wHc zm=rKCU{%1jfJ1>CfhK_tfj)r|fhmCnfi;00fl~q(1g;6(5qKojr>l;8!yYl3$K9|`#prWIxu<`m`^78RBjRupzDydu0Md_wq~@D<@(!ViR>3BM8k zB>Y3fiO4&VFCxE0F+}l1Nkpkc8ARDcc|?UoB}Bc5`V!3$%@ZvV-4(qr`bUgdj9<)> z*r3>5aU5|TaYgYi@!t|$5+V|E5_%HWBpgd*OY}&rN?eurA;~G3A=M`}E43wcUD~$v zdFk&m4rC@}S!5+;^<{0#x|H=NJ19FZCnaZ3u2=4~+&#IE^5pW&@`CcJ@)qR1%a6&g z%3o06Q_xUwt>8@|Q=wSlhoXX_3k(blETHxk69dyZ24)6D22}=4M%~>Estjxl8VoGj zyBUNT*ce2>EJX%3(9n(cZU!j^HU?g>m^uR+gAxOa_6`PCfgKDC7j`f(=8rpBWBj3(xGjOKQXrY362N^I=vc8tbG zVxl5!>}>38qT+&zf{cQSg7+*;nRwa71QmpI<>htRjM%-*%-kf^RN2_}|4U&!_m82} z*|}8ELXuZjP)=D$#ZbqX!^6?tM!{5BQCP%e2UF(X=}dF}8Zn(?U}EU`|BKOz=?DWe z13$yGT@1_&EDX%rI~bS+b}$ISgM9VR6ILBojCE^;RWI|IufM@0s926hH<26hH@ z26hH>26hH_@ZcRgLplRHLpcLGLpuXI!*m9AhUES;qo;(2!Na`{$FxfF3VUT8!XP6C3 zLL4BYIG{#>k`NC_fCouH3?v{1N+8fg22E4o6vGVeX@W8hJ2*l>*@9hQ2Ll(#H3B;r z_%7^VU=i5CAaDT^Q9_{XBCvx&1WHRlXl`t-Y;J6B%nruv%IwDM%IwPK z%IwOF%IwB7bJ&V?a@dRQOzgYuP3&{ni?wsuitSA7y6sFDO}n(ao*K+Cc>MVBV}m&c zPoF+z+&Bl6-I*Em{%>T`VisoLW)Np^XE?Q+L6Ct1oZ}rq*<6r8j6sk=jX{vXj6smW zjX{thj6skgjX{v1j6sm0jX{uM8iOFiG6q40Z4818#~1_|t}zHQJYx`K_{JazNfK-f zf(+m!A<7`gpvoY~z*GneW?fJq>LP`z0Z70ANk9T5Ab}Ljt{?$dkibsRQ1qW&3_J`H z47!3smOB^}FYI725ZK9J3C@nHcFg8xdQAF^!hFo^Y;sKUjLb@UOzP%xjN-!Tdd%i_ z%=V1N>_&1-;_P~i%FN<&%uzIR?=pM zntXObZd#ho${Iq9Ol;aV?n;~noRS7Q>H;>xjw%|?qFVC&Y;4+g-s)TiT8!dq#&Y}$ za#CCZj0r4a%K9==>T;qSZ2wYtrPZa>HT9Vom85ue4DU_(a?4^l4WvcU}ebre~(#(=@|nvgE)gWgFQnqqbe*28A0K}h!kR+AOTJ!0cMZ@ zGbqHMDb*SzU=0%3&0xsD$lwny+hiFS8HB-Q8>hfd26YC;KaQ*nk__q$nhffYBAbIj zok0TJM^U{GhsU{GhMU{Gi1U{Gh6!Jy8tf?RWC^I?ab*x^aAilZuL!rVuNu ziW!KdA!N0k0!Bk6U<$w^T7LiEF&$^R#-Pq%$>7OYxtl?kfrCMUfkhjf ze{~te7<3ub7<3uT7<3uj7<3uJ7<3uZ7<3uR7<3uh7<3t?G3YWZW6)*T#-Ph^j6s*- z8iOvwGX`CTZw$JSkY!`gh2>ve22}=Kr2H!jN=dRvX$@KgbHeLUXlmrNi`>P)z`)5M zD=1{Si-8Hs+QA?zuoG0+K++m$@I?cb)-)I-7&O4pf<^RdZu@abfKiNJN>xlqO+|s1TS`e=M$7cyNj?R2LwO}Lbx|QXbumz#z{s$i z@c|<VFDj6w@6BP|dOn zOfqX57&1b9F3t`L9Y%A;D0O>%1$GW5VPy$p88uNR4#7-+rahXeIe8}5*=dP}at66Y zC6?tcVnK!d|KI;p7=FRc09sRZbeRiHr;- zjA@Kdn2s>;F^Is*Q)t78-!9U?kkMS6U7TH=UEN&WT-@B4(RCW) zCLIF<{VLhoTG=WiU4t16j0~j=227PqdJNnQx}a7IH@wxtdxv2+xEaF+E@43p8Bi0M z4csOG1s$kXht%fP&lL?6pR<8UM)&8>4W2&-`JF-Te;LCuhA0MR25C_L9MU3!#t0~H zF@eJZ)W&IW%e9Vr0*V6-Eb zgDFP%K`T>?`WI2%8W@7=AI617|5A;ZUI_hV69Tn29shq}(qy{8AkART@EVrt*g*v; zJ5oU^3K9?n)zOgN1-N~#%plI7%%IMo%wW!-%;3(T%n;6?%#hBY%uvpt%+SuD%rKon znPEADGQ)NTWrpJn$_&>Tlo_5gC^LL#P=*9PJE*S$sV0>f)EJZ*m{*3r)}eBWaOeN#?H#hir{guy0fq{@yQvgsaoqQi1D(purc$=8L6sT z>nMovF(#>n26|d3Dq463hN`KDz}O+`GS03}#`5yUPOi=}(k?Kz3pkChV_;xh!gPdz zoxu~7S3&s+6349Iwj?NvBKjK8dJWM(WCO(y8z_E2n%Edv1cfXO3>lT#)y<8Wl^J6g z`{fQBC)+R;Wa{<*wE^WtO$G)gZKewhatu>ou`U2IL;xw)q4g=a`V44e!v7&sYzFmS>mg_8kPGlHsLX>e=VoDo!ts=@oL;1&}{(oT-XS%>(%E%1!w>-$-@<{$R0tpy_LUT8$e+?c|*uh{V04fC-X;}*FV2~Hs z$shr0hk_cr5)7IQ60l&FU;sf-GsJ>Hg2979f+2!If+2%Jf}w&zf}w*!f?)=O1j7mj z35FdE5)3C8Bp7ZmNHDx$kYM=1AOQ#0ck>0jLjvqEELo&lm%?~6^vCZJ$2O-%#Fl#UG%IX1)10s4Q!OOyv!Ax zJs3dckv;Y7jG;3mY>-TfvZYug7$sNyJ`C-`hx(ja|2~J}i`2L4m@G6iU#F8(h}1LQ5J0Lrz9zMn!W)Cb56r z&Wu(6)^IRRV(R-_#MEa7nq{_ymSvg@)(rkk!aEoO^mi}>>hE9(KpOK51U2gJ>|kIJ z*uh|PVF!ba{w@Xq1{(%0aMwo_$^yynWYA*Z02Oa+3|b6g3|b6o3|b7JISn@kEru`# zErv7(Erv1%ErvD*Erw|fS`5n=v>3KAXfYgP&|%GMF&DWH4d)$zTGp5o8D>d@u(igpo(Y^cff# zyus;EfWezV9~u-87HG(LCxbbx5H@GfWH5)gl7j)1Va*vdz%%dW3?2;T3=s_G3>ggO z3>6IK3>^&S3^N$a8CEcuGwfh6XE?!N&TxaloZ$t7Il~VIbBHTJhJfliDS@2~jvz}w zMS>%PID;dDI)fvFIfEmEJA)%bID;cYI)fuaIfElZJA)&`bOuL;~%-kO@ux}t2%;wpO5ih44fEbKZ?A^Q40#^UTO(pnbElB(jIt}HyVIXIxR z_U6(?>QcU}d`hOu$~JnktgHemCJGAH`U*@Enl1*?(grS?l7`v}?2PQnhSmxOzGiZA zX1)dr)`rULjO+^9hLY0y%A%sm`qI|!!b%4JCMZ~FNlI#2C@5QMiiv4jGB7d3FfcG# zGF@PhV$egBInW{oQ9nq6vX>;J%#j9bBa%3Cxa>|@IlqADuX72DlCRo z86+4~88jGF87vr789W$N86p@|88R4D87df589EqL8D=o3GOS<#jd-atoM2F8xWS;x z@Pa{=;Rk~%BqlgOMi+vbU+~^Htl!P7EQ~bT1L}b@c0&psL*zn-MMP4T_l?hFB}Zdr zR#pL3D^*noBSltLL3Im83)Esq#zD}7#KPk7#Ls3(S8WeA!Ih5JE7`VXm4WKHM8C+`b zVBkWTO<@Nmc6QM8(JrudW^G6xiWlTvPy&ZcYk}jMgMpVpf`J#@1hin_W$<9&Wr$$l zWyoOQWvF1_W$0kwWthRh%dmohmthA3FT)82UWOYCybLcGco}|xnvEd8gA8E=O{5sJ zD+`0_RWXQ{K|TF^B(Fw2VbVkRi;P7lOY2egFL9a51Pzp(Pr4iz=q^OHgJ25 zk(ZHO)m)XS|DQ7BV)lR9Y)s;e|1VrHdS&p6fr%lT;XG3dV?P5kc!~%yk^wT588(KX z$PR{WjQ`mGG4V0}WBbR%*l&SQS>qY+{)=U2yvp|XWjxe1pf+pW|6h!MnXWM?GUzhAht=@HpjZ(` zs^PUk0@|Q5X$OO_z)l7(Soy=npvk}mD}T5cBpA3DG#I!TEEu>LJQ%nbA{e+BG8niR zDj2vJIvBVZW-xFutYF|`*ulWXaDsu0;RXX2!wUv3h93-EkgUi7GP-aFgEqL3gHEQY zGKe#%GN?1CGMF={GPpCSGK4dzGNd!8GL$o@GPE5?Gb)2yqR?dVkyTDpS5uai z!_?f=SI~h++tO84-9cNJjZHyIUrUaa(?$(BPw*)kX{cx#D4IDtm~g1sXo-pIIB05F z>8Pq3DmzR-q$ehZp#SffEtsw`@H50SF4)Z=!~j}e$)XLO+x2G9V(^9pDkpJFgC&DEgC~PGLnMPYLnebaLnVVZLnnhb!%PNmhLsH73_BUT8BQ{IGu&kGW_Zcq z&G3`K8xp7>LlBJ%J5XHOAw{kUNWcUXxw{!e85kKnz>^q}42%ri;2}0qfgKFY7j`h% z3G8H$XJCeub@B|F4Dt{+axlmxRWH87xR4~XhbTG&> z%wUjbSivCAu!BLK;RJ&`!wm*`h8GO-3_lp;A#Ma20%}^A2<&9g1X%)VT4*wegXc^@ ztr$%PcLq&{a0X3=bOud^at2L?b_Pv`=?t0-%NaBowliol9B0sExXz%-@SH)D;X8vS z#9Vd;O;}l{$)Lud$-q>&i$R~kgFzJBaPna=VXy;Ns~!S782m5nVu*!`>|%&#;AV(~ zWN9`rNIM(c+F)g4hw=58K+O+OT?m#phR%$@TQ158g-cD6BPXY#cb=1~ue-g3m8@?>f_`9As46$N zZ*jk`XL*1MC#Qv9l$MkNE0eg7x{|&O7c0BIXPmjB83&W14WopXsh+F9qJf#7Tacv^ zABT{RYnYZrtdpu~WT}I5S){RuvVp9YlfI-?YKNa+d#a^gK%RqLPJphWlBAZnrm37s zMv#fBo&#tMn~8yyfq`iS6KH&gi@^a_MqtbtLnp?;y#Vl90X9&&0uSu$X5eCA0YT8P zwXv|Wx+1$WBeNpoT$kfs#{W9ATp8EiVRU6W^4Dh19;TXqH4Mz4wVX^zOh*_*8I&0G z8FoQh05YJt7*+-;1{nq|1{p}|<7ALwkYtcy&}5Kduw;;7@MMr-h-8pq$YhXVsAP~~ z=wy&#n8_f+u#!QBVJCwO!$}4ihMNpB3@;gE7=ALyKvD_F5K!s^wEzs^H9v+Ip{pOj z6Vu`hEDU?4FUV)vU`3O)`h%mfh5MlViAOZ<$kRhO;W)|4V zAP1`DK^a|+L7YL3L7hR4!JI*k!JR>lA)G;uA)P^vp`1aEp`AgFVLF2x!*T{WhV2Y; z496Md7_KwOF+69GWBAS>2QinOK@OJDGun)4_4yl z@yzcF^e9uakxDXkEsL_^Uu@KL9wJ}fb3=Hf@wlKEQHPkl|_uGClF9lkzs%(5b#(od=v{bptbvUOqI7P z4>J=JpR!F{d(3UG4!8PLCvI*P|1!4@rX#v;p?>zfy!L*fZn`$g9{D~#`5wv)jNp7z z%5;Q*o52~UYq&relM7PdgBmiBnG}$Vn80oW^>jHPZUeVN*cF)-*%gm4ZshnkQH3#r zcWC3UwUIiHq^l`JA*Tc+zMt>Sp2rz{Ig+DS&jisHPm zv@Im@&IX#6u7J~0AS|pgibOoa`OuODIkkb7RB=G($(R*|jhU5&6`7TfIO#C<=r|=i z>HjMM#rD4wj23@w7z6%+q8#E5MmF#qD$cnh40j=FBTx|xvLo3ERKbA8v?Tt&1J6|o zF-+Laz{$YD0CEz{hk~HYA&AsGf)2)j*LQKlq87Bohnqp2ft$gcft$gdftw+mftw+n zft#V6ft#V7ftz7E12@BR25yG!4BQOI8Mqm)GjKCJXW(Y|&cF>xGVBc8u&Cu`P-EbR z7Ff*S;ZI0=L)e&c9;=8!h^t=!n+sQ*vWbc)tEbZi1wU7Pe(vQZg`s*A_tLG?|SVjX~pi%AkPMVPkBL{+Gk(8vpMM zo3Rtq5m0>n+w-r1F%Ptr73>zquS`c6SQ)fop^6bd&~yV1RZyt|jwMhj;}p&4#qqC% z>B!#-P#TP4U|?ls7ilAXet{>_%%%@htwRO^_6{@O4V{G9;8ko3w7S~bnh z5RKE#Q2!&`jA$)EoruUcyTH9V2C&088Q2&=ERe$(jX^mGH+4O7nFDWE=Hb4dnq@X94g26F~U26qNY zhHwT+hI9r=hH?f;hIR%?hUpBF49giL8MZS>G8|`+WVp^C$?%*(lHogpBrKgv!qT}U zgBpV*crcX}+CFjw6~@X8n&9bEM@0q>24w~b24w~f24w~d24w~h24#i_24#i}24#i{ z24#j024#jB49W~E7?c@yFeo#eU{Geb!Jy3Wfw}bexIxuFsKE3E*ZYuyQqn2Y6~tmp0@eK%$sK`#oyq2)0uxmI!-`6SkRtHF1*rZ5 zwO9EVr18{%h-3$uor83+7zB2LHV+^gi_F@L%*sgZ#3N@^{cROF*mWHPv}Wo%RZf$! z&{Je(6;U^nnZ$HNP|MTYz)e@|-v-7WUReWWB?Earu$w@6$ByY5c%>VBrWBgR5%CVq zn&6x$2Cn~QFYI982CrO$4s5A|dtuN)7|`SoXm=OIE7uGRH5ozc$l$TWE^5q(Hj>M% z`>)EYK1z#+%PqS%D5%z7fs0+u(p&rP-(pT#*Gy-Zf)Eo1U!60>E2ZNM8D04!`O0^l)jg913*!h^*g~0{L ztsWCsO<`tcc6nQq9;;n^2Igj(B5dqB*3NSCy=PSGJ2Cc1sp$v_>8MHBFmZ`#Ip`TX zX^OD?TZ5<%9sj>$a%H;4V2sGk&^5FO*F%?of@75#mYZp_{$mG&n7~d@Xh1p)vJ9FG zvaqI=EQ17tEQ1DvEQ1AuEQ1GwEJFl?EJFr^EJFo@EJFu_EW->2S%wu1vJ5*IWEoB{ z$THkukY#wmAj|NBK^9Vea4^U+fO0cpzL(7$lw`!fi%lWzc{cExL^bs`5g$`UTLT4F zRtbH3M>}0Hc6I}|P+hB7S$h#XJp~&BMOHRRJ$pwxJu!B6eV1Tuw*tjxT^$h>V+B%XbrWpxgxtVvod4kCk`exj!)4}OdU2he?f;&FfcL{ z{eQ=_o9PI+aD}Elj9d#{&5N)QTAqU=TnHB7LJZ;zLJaB*LJZ~%LJaN?ILpL!8CW~$@R^vLq?h%w^kuywL#Wt4ZZvkNkjVzqW+l& zFGelQ%fP@ZOpS2~Bs>!s7?`$$=NNI1F5s!-L6g<2@Jdmb(U?&=!M&H!*6rT}Q0+XK zDHpVCgn^MEgMopCkLd^lKLhTz1V+6K?X(~Q8c{Dp;|4l|18z$&GjM@j0@|nsWAQ@8 zK&67PF{si8IgweJQ8~jUf{BqkB$|nl!{y)kz-Xp_Ujvzr{Ox5b24fqhvcFvnjG#3F zOzXhyaCm!y5mY!KuT{oyH%8kI;cifSf}Md8+Ma;03=A2Wjinil8HJUZ8I>9B5Bn|o z=>PBG<)AJ9zW6hiFb4d4z^L$V!@nLzhkpkc7#U(27?_qb9bw==j0ln9CWI5f7K0*< zS(#DewEuEOF0X%wwVW6Y87KeSz!>l^_uqL?n_ZlNfhiZYe~FPKpiu>G&Vq&)7{Rp} zhrmt-HgIp&95f%z4qAvK$N1@A1_$F?j(%t!JiIL_?0p;FlB@Dm>wv;)I&XZC-*-bNt1W0_1C8NvNG1$6(Tl$&=z0jX}x$Y@j) zz+^H398~WAzc9XIyv3l(V8*Bh@+v!M_ab!0!va23rv%CmN}zcps232$Ayfcbzk_RU z(B>mG=-3@EgAzCdlmtMdgV04{kl{pVgGYuzfC1`N{~3>cO(7%*&SFkm>&V8C#l z!GPg8g8{>L1_M~(Yyc~q4H(oI48Vo6Dj&0`vYHvvz_T?Yc%B2gg^HgMQfY!$@7psn zUSefuVX|OkVrEhZwwANd5@ls~2#!*6W8rYJ2y~HEOVbUBE!34!8O2-FAzl^8+{9N1NC)|qfHXn~tH!p6+T zpe7A;`I8=#I%qc%T2pwfjVY6$zNxvCX^4e5JBNW+oT-$FzA6_Jw@nzEh^~{SmWR1A z8=HWJgO;YZwK~(6f1MJ_;@m2Zk*21Rjw;;Z$`XOk)m@F{Fc9aRA1L&CD6^Xha*ChMG%oup4^Dn;Hkonu=Sf zAVOKqMcPGE9TvV?YAUjdu%K0z1@$vP;o1dF^YB&i(3Pr)ki|&zh^8ZG-kgm=0G#GQ zi^V~#9Sor5tl)GHN|Fi;n&6ZQ?mH_mNH8ccXfP-+STHCscrYk1L@+2YWH2Z&R4^zo zbTB9|%wSMpSizvcu!BK?;RJ&M!wm)nh8GM93_oC*fCH4Jz-u8uORAv3uf-tFpv9oh zpv7R$pvBJ*StY%4@9gX z^22UW{{*_<3)Je61mz4+`A(~`6HxY30$Boze4%H$A5G!*)^YV;j5Exp z>sqVu^O$f|H=6y+U|?b}_%Fbez<7&6gTaQe3s#>&w>l#ngsWM?4d2xT?Z<)3RnVXq z4=7?msfUL_oPmcyoq>nJoPmeIoq>lToPmcSoq>m;oPmd-oq>m8Is*^Gat0oT?F>8& z#~FASt~2m3JZIox_|CusiA#0{9$1CO!=T2%1D^X9Wncxjcy=+UL0LN(Ky4pAkj0=B zrN^Mjpa)A)dJGZ_dJGy2dJGl}dJG;6dJGW^dJGv1dJGi|dJG*5dJHod^cYq!=rQbI z&|^5kpvQ27L66}DgC4^V20e%?I2iQ6Z667NoeUNrOF+J}U=Rmye6#>BM|5YfUU}$HsV3^Ke!LXdcf?+#@1;cR$3x?|q77WiBEEv8sSU}8W2bl(0G-$z~ z#$W+!`+&#K$@9(wqG$YF+?#iFfuW10`If8hpiDqUl|7N zgCOz}H2Z@a@azmM;GGR%_o1xgnq}i)hRDy*HL zvJ12h88o{i&OnPPB5_ci3EF!NUPmBo3^^A8vWl&XRanJLT~bVdOOQ)KUYL{F*TxVj zFalMqw8S}0Sy%+6RYaInw!?yjfsp}}E;*RKFmN$=!O|tPibKQzqG19}mxyT zpaN>~FoVl}=zct?O^C>cMEMb$EE}dTe|f-j!T}5n%=(PC7)%%~b}*Rg?_e;~-@#xC z-B7`*59jXu`+;`>g`}K6WGBZbO%<~?_dxT05y8p|A1n02ZQm2 z9Sp|s763HH5upK{FF^=EYafIFBHKcJp#kd6XfS{ad+@NKF-X7|Bmi=jGy^|40EHMJ ztQ`!Xm7g@O>US{cf@(uMW^-dcMsaXAL`)pCFj9_*9g*X~Oz`R_en#awCKhI9MjIwJ zMrLpkpy$RZ8)tx05NKJci!!U&sB@|qLdyh3A6`{8MNTOLc2LQnZ)#$ITsp`bSV;c+ z!zkw92QMceX_B4s7K1XwHPHGWR`5wFpn!tKA80H@>B0^MCDLOF5eLvZ8a#Z*#UKif zgB=W@T`w}Q!j(3|0iXqlNTH4r-dI8zC48|4Dsq5Af)Ucjb!NPUb?y(5QlV)XJa|m= z_A98F13Kn~rgMMbrX9RLjo2>$X}yMldvu77G^m&70`58^x_2Pfb5PG2*24qQ(0(&= z|CxzF>Awt92;(jA*oGpk^u(yYFsgZI#}84dpbmCOf~)ym44`usLBk%yXRw1ET*|;B zM_rj&Ss27`?uKrx{OU#1<$&$bj4JQVe>ClRu#Q zz7Y8VS0^12SBSb0RAouRJLwSCu5U?T*e2>@INaDqBsV54~iAglGj z1(hI!CiuV|@IZ?og9L*hg9d{jg9U>ig9n2kLj;2$Lk5E&Lj{8%LkEK(!wd#Nh7}Bg z3_BPE8BQ<=GTdMgWO%_K$nXPpmJbK`EFVN20IG7qT~R(Jl)_)u-$X!&pPO6VMn{TO z*#=RKYMQWGvq6oG^4eeIVw9 zL38e)zF;Dsi>9!KqBt|Nu!_EszB1?x5F;yDOJ6~2UR_NA6$LS778Pq(OGP$TWn+6q zn^=)DRdpUQc@YU&As%i48Er)+BSir%T?GY2E+H8qc{xEIX=8mAQxzdS14#Q7G)Gay z6wDyWa23>}03D^Vi-Chdm_ZVpj6i)0={vA`0lJ155i8IU0E7TExq@3LpiVPrL+%a+ zP-0{SHAq0+XI2Jr237`j237`h237`l23Ce}23Cf223Cf023Cf423CgY46F>x8CV&% zGq5roXJBQx&cMp>oPm|$I|D1M`^*X(9AE_x1%MXDb1?8Qh=3gp+HwgxOG_9$Tg?nw z@NQ-f?qujOnS;kpjM*_-YRG7RAiG7RYqG7RMm zG7RkuG7QrhWEhq+$S`bYkYPB^Aj5E-L5ATugABuW*vt+)cxDGYt|`Ny240j7TA<0y zu58Ds4jbM?Oq1I)8Z*8`Yd&LZ*fk+HmO<@0M&W-S5Z!3dNmHQ9AI>qbA?9B(S{xW1 zI7Ik>`fG?eb7{~DH-DGpv$o&t7|;DHX6*fE1U}7*f$1aTIV|(#h#-f~J0k=znmJsc zQU|=+7}^VhmcHP^mhgPJurUaNmfkTd`#V`NZMO_&T5NN|E|h5-$gQ=E&Hq5yh_UKl z8v`Q)8|aP?#&ZlvYww`*(g-JFxEb2LN2D8sn?VCEkQs8&v8fQ2fuXs&u{h+AB6j7M z9ljaUy$>w*YuWAb>&p7|SAJc*2rd`?|M)M!#K3rtL6l(=EcauKEMOD|(1rz~r2&ma zZo5e6zAI45}8;9^K;;9@9e;9_WJ;9{80z{Rkffs0`~ z0~f<_1}=u{3|tJ)8Mqj}!?s$ngST3NQ!W>S8h95M=x`xs20?J&T^zJ@UJW+RU=LXx zuvgsKh+meMmq&_EKw4Cg-Ll#_`Lsj7t_drP1q(Z$m^5ED^cgXtl#1$j}xW^e_!Yb4Bo+y#k}>zn|=kQLO)VFerr7W zF;n^113G4hfsrBoe+pv-(;WtV21SP543Z4YpcQr6yBYN1=Lf2S#uvbAj~PJ=rujkV zCyB~2^MjV0Su?ULE2-Ht+A-=eDw`YGF@c!YjEqI%{1Sp(%p$B(a#E};qQYEkBFv1O z!u;ZFMp~*IA}mZ?;-YM#@?v}}A{^#gMoeo2rIm$y)h*RTn3$MFR4vu}gp{QP4IC{d z$(n0R8Axec$WF9$0F{Hr|JfKmFuh}7W)OzYiG$J_BlzqgVP<9F54{GxOz-|kfUc5Z zWKjK|!e|EfA0q=Zc=HM9*idE$(5VEw8B`dU8C1dk69D)00yQ!C7_}L-k-f(%LdbhLMEVZozg~t%Y_ z`UomY@=NgW3TsIz2q;JiK$xJs$HY+mUx`tR@eO#4Q5Lk)0WzutIx12Sw2FflbObUu zv_NZUg~5p(a*WYY8!ye6F`?{n_4~h`iJM6tyw@=vmb2wR#he_{3Is)v zfFhCrH1C6xI=FU%=6!Iln~MQ7LBV|ibkHm495)b80kj|ja>|!HqaCBUI2%8sGUPBc z(0Pk;jGz^8>Wo&(*4i?xtUU4t3i>McQkq`LTn1dat~x?&?3(t0dRzuvhQ89KBF3tW z3t5$n>=YGkjg;A0nUtl~e3@N6*t8sj^z{SnHQ7Ae88uZ@q~w`F@n^-rz?29+V`mr4 zhZt+n5NGUw7G^+Bzyd9U1g&-hxgWHKR1nl;0S!>oru__QBY@ifpcO2V&;wMYFYI8D z0Uh)SUJe5u3IGKaB-ECjD>`Os#(k$fvBvkwuxAc*}n&%!iI@Kks*`GlPQ`(k-?NfoMAWUgh%iIFld__ zBZDD0Rhg@qn}NNu#Yds=C*!C6NgVq+c5RV}2XrKK!X%@zFh^!ydz z{3{x6CUSBnZW>S;ls6a|f*2rcfg~78U~vl_$wjPkgEm4D0*EfsZqSxz@Hu9?89)c3 zv4U69aD!$~!A(aF0m!kepq3o$SXR)i8>mSs3W^ob(W~m9bxNQGXP|{s;Mq5J0C%+SD)Y4N{BjB)>XKqP2>-sXP+lLUBO zd?@409SmXmI~c|jv7u!BKae8%0`VhjQdY77DlW()!hZVUnp zVGIHcX$%4kWefrgZ43eo(-;I8mN5u0Y-12$IL08raE(EL;TeMf!#4&2NQ;||K>*U? z7G)3s?Mnu)FHwe`RVxCrTwn)-_Z?9ClmoPsmR8#wcY#;edxPUj0Ce2*g&hpq`a2k8 z1a>f3Uf984slSWCgTb3YMo)FX0owT(0G?TeoDd6LByP!|$zaI14H=Xv!Iet43v>T)tkAQ9t-$rNJen>h8{f&S=ht^%4wkd20o`$ zoiT_{PEweOiAzX=+f`6iUW}PlNve$7Mqf-||zTw6twg;mws-Aaj#-C9ddk(Euu%1uSyQcsC}J-dj6tbmZ5q%fN%tAMz? zh?)xDU0q!sNfiktU1ddGTYX6l1#wO>8(noP4H0fJ6-gx}B_0V?2?cFsMI9R*Jx5Uy zdkqacZ81JMU3pM?bYzNQOl8^wI`e{|2{htO`_lqJd6@;eq7HPe4!h5W`pe6wFq0HtW z0dvp@%x(r=24?W#vb#a2pM%b5)CM)b%^7sT8PlBhN9^oi&=mlk82}xlfgCab&A;9Z z5)9r98VueH77X6t(jbDtn<0b2o1ucio1ufjn_&inH^T}BZ-yNV-V7%gycupVcr(0U z@Mib{J9U7A!5h4igi()C9g;7Zz!}#VG=B*`$p^GET9nledh`M~v!V~wGet04nyWb& z%CoZaC|jsW>#IqznQ>{DJ1HA`>j|>6YubkxE8FTw{N2y(S3JSjw?15*o7=afAH>pd zUvDA@%Y8HU&?iKtts`uet~ zT3e^K!)d3IFe9U|5+^9lz{HTsxPq~R=>mf?gAt=QXpV3PgNZ)qjQE`lq6}<*b}$$V z>|l_)u!BKPA9R=j8)!b5jX{$^i~({4ff+chX)=T{XfmWRXfl*BXfm`hXfjM=&}3M~ zpvka}L6hMagC@f@22F-%44MqzV22ri41u0Yr3t!K0O|Z-9Z<^BL27M6yRhIATbY50 zK?Pi5gSPgvFff6tmzfMK3@br*l7Q|I;9y_@B}P!rWUydh0i6NC5W&F0kio#hP{F{$ z(80jMFoS`GVFd#V!wv=(h7$}d3^y297+x^2F#G^r2^#At3|c%z&=AhT9Sl0)aaE>2 zyBNe6bQnN~dF^131dTI+SE;hGtD6}cfjcYWsLNQ5#lh(ayf@OGkT&tOjb>dLyLt+R6s~vP)eQ`R4y?vF(fc3F7QMtt*GFCRa39WL9SK{b$6^_)pD%G2Y#rd#aL@#~sIvBV=n=FGEDW$Rn4dw0!GOVqiGK%!tNsoKH~k$9t^zw4K-;}!L41K7 z4C;4wF>o`;g3DmgA%qat4)Ed9h79bGlx)Z##$d>x#$d=`#$d?c#$d=0#$d>h#$d=$ z#$d?M#$d=Wjlqy%8G|9iHU>k6V+@82*BA^Lo-r6Qe1jcj$_75l)RC1zl);ce6?{r6 z=!J46x!J46y!J1(v zgEhlS25Sb82`3q>8E!IIGrVN5X86fq4XFt@8LSx)hoC@*4iU{;X#N4OE&;`aG;K1;L!GYlig99W;K!$*JR;elr8yks%wy23KgWBcrt!wzp zX2u{h+ohhS94r!wT4JfTslIHkV!EnQEX=%;N`eXhjuKfS_cE@vwUX146=d17$AFn% zR$5eAfPDp_QW%sUJelGc!bHZl4M|I&}3j`uw-Cm@MK_Rh-6@8$Yfw; zsAOPe=wx7Jn90D(u#$n5VJ8DC!$}5K2HsfE;(;9uh;eJ=l2`;f90gkKw39&wbkGeb zW@)v+0Cj(*Iyhp%t2o%%#28uR43+p$vqHHVP-Z14G~p25oT5c z#tq`?rgCy7>SAK*CUSD7>f#3cQpzG477!BDp9GzOVZhV?KC2saFd3v}16q0s8WjMY zN5ul&u7T^EZqR;_rYBMcQm@!wNg7B#kzxGC{*Q~XeEW8T?c1M&B8-v2o>7r;8q);^ z8HNv_`*T1Gz@Voku`p=CYBA8gR+0=X44Moq43-Qm44w=u43P{h44Dip43!Kl44n)t z46tf%Cj$$^Nd^{%n+z-rFBw=EenM(7&`mfj;HI1~s1k=a<)Aad;ObNgbaFVjIt4Ao zW`{*0=%^ufSoQ>+atdnbf>tTAGk7qtGej`3Gh{HZGgL6JGjuSpGt6LMXIR0&&ai`l zo#6xnJHrhIc7_)W>=!k}w#%+wIWW8lj*jM)`kkI3t=vZ!mQ>2e!$ zt7z*ATe-3`i^-{pOt{1T?+&BS3Mm6+8D$l57Fl%(Zc7shEfpofN>FezFf#ZvN;9@F zU0^U~EC!wW#17gb1xo)?44}g=*&yBkZ8n!=0JS>U7%Ums7(5x+7$O}m47v<28FU$b!tPk$1mCd$S~|6Z!4zxsX@DYy0IBa#yqk(@L+ zA{sO`Xbj#Q2&$oBSrK}#5oj?4BR?aw(+VGU2Q7!tW;`X%uPi6V%%Z9+YbdB9>835M zC(qB!YOcblt;NP7qhl^_=)`TvuBI-iBrC$i%qOcMCdeegAt);%m5iFMO}Xfom&Fem!KO8 zK+B~WIRj=HF&zQz(_&=M`Y*#I4xZQh3d;7ND?~xZR&s&vw-N;1C<7V|B6nU7dLA8O zP6RQL1)Wnuo#+z=Cp1v`3f;g!n~A<%3_=Y2;9(N9DL*xJcF;Xd&;dSdbAFnpLMqmY zsHS0G+!9zSseDKny2%02O)kp$=)3fzb{+$^fc+7#UdqYcM=uU|^7ESP2@9 z1l_v@trtLBR>WcD80ZuW&{=Zg43-Sy44w?)43P}t44Dk#43!Mx44n+(3^N(T8CEig zGwfs#XE@0q&Tx}KoZ%&dIKxi{aY$$8KgI8ujIs%IDA_h7E0B%7FF))GG zCxeDpn7}hppo}F2J&{qK(G1k}1@Bo`HwSlTz&#((iTA~fd_n@UqFl_(lFC}bMq0vh z+Faryd`!%WBI06vK57n3?3_ZT}*z4mEiM5!K-HY86+6^88jI987vt189W&H z86p_?88R6787dg~89EsF8D=o>Gpu0XXV}5O&v1f)pWy}rKf?D;X3aDS?AQkwJn%kwJq&k->sNk->vOks*RXks*UYk)eV?k)eY@ zkzoddBEt#>&_X^%h7$~m3^y1Q8D20bGW=jrggJt+A)MfQ8n6#-fLmZiEb@AGDoPe= z0<5g^hIUFS<|_QA%-oV{5)#_VV$5tN#uD0!VoWxQX6j<1>SjtHT1?$cQB+M%P*7G) zOxIRWP7Ra?m>2>Xlo$^q`l)OTpqPheD$tb-kXc1l@bxRKV3JXGnObkGKBF+0LhY%7 z?k_C*e~;-m6X>=P(3)6DhDO*-0V3T%i(W*L0~LU_cd^ZLflj<UO*^D6gB$6ErLZBte&_pWEsIIDP4%(Lhy5&V!ncesu zB-t{)1YI%3#Iuj>fwh_gy91w@A=9D`XkunO3c4sNN0(9b-#dde#)MN0%nX_T?=j0l z{iw-sX*Yuc13T!TT}V5KpFstbbK%vK&epp_Il~n`OrZnPG z)zTG~)mP+aW)_nNwJO>E-9ZUXLzEUKzl??yQX7+n!Q=luW^Sfu48{!R3{DJgC@oFU zoC@e3aZv^}22lnx22ln#22qAE22qAI22qAG22qAK22qA-45AFn7(^MiF^Do8V-RJy z#vsb@j6sy)8|>UQHt@M?;Bf>|237EpZo3#TTbi)Mi)h6|L)#QIY-Wmd+81Jk7OKJ# zq{0z0WD9FA?q)!=A*~r$7@XNDHb+`Wz^KS7r=h1I2RS@g$U(BqTip?Ibg+S@JS(S-DpIrN2J*?lzMgp8Ab4x`+`0Gi<@h&I>fec}ZcHIO{|+$< zLQau<13F^1<6i-2{3zy38Tc7MCx}AZj&clI;1fi_ol-dlNd`FvO$Ipz zO9nXxPX;-LNCr8EOa?iIN(MQGP6j!KnGA9aD;eY%Kqs1>WRPRH$sot@l0lB)C+u)i zP6p87q_E)82Nfy$NQDlxPDRw1Y#|`)wfX>N+W*R^PiQwj!8G{6a8G{Cc8G{9b8G{Fd8AAkv8AAqx8AAnw z8AAty8N&<)GlmrmW(+$R%ot8Em@(X7Fk^VZV8-wRHb%(-9-{;eTJL0V09gVW`*dIs zXK-LpXK-LJXK-L}XK-K$XK-LhXK-LBXK-L>XK-Mc&fvhXoWX%%JA(tmaRvv5>kJMI z&lwyTzQaZ$*%=&QW1kKTYT!XmP!?lU)?!p=7suIJ2HkweY;1&l5)>17j)@6$vMW0; zy9VCYw4-x|vlJKj7&x3~zcT7$ZE$;Y+9%X`24X!F7Mvdw85o#K!TD4Jnol=k6)$1H zE?$Zv4$6-Zb1D$xjH+Psbr=`~*cgks7+~fz)*^|QK*eJi7#ORN#7m*#i3|*koy;Kf zA?8$o#2J_vK3ZON`ptD|?!EpsS30c|P7<5uH^dQ`ej7;qR{%If|d7JCU?x%x( zC@y1<*}rG7({KNsGh?(sJ{K2ME+#TCF!L~j$~i-DJd`u?g2M@XCL%aIjKJc>jG9=* zOK^ynqKJdchnQ22A`S{yhkJEnB}IEVx_N8J9uV~%9H!640`&S1<4+HU}k7>rgV#(Ey; ziE)TB2XV&?sAmg0>K$5$$kXVkchC+2ZCD|q4L+q%ok5$yoI#txok5!+oI#r*ok5$S zoI#tRok5#nI)gUDat3XN?F`xs#~HL4t}|#eJZI2m_|BjW>Xv~nRM3VMBH9dU4BFrg z;pTdf1tRb@Sm5(j+0{V{Jt4D+@}M=5kl{G>xoUEdv!LDbwZde>G!(eOM?-oPX@<)& zBm`H7nKzSxFc_q*>k@i`d zii#>AmP4KgR&B@D~K zeR)us zq*F5LIhAu@2UTwQfOJeHXz%g=UrhGQpbK1f!b%$Gc^in-2|Zc?A)o~+dbA)#j|c-J z=<0QC$Rwx*xIY9saS(LG8Dv@!e7XUsveIJ^XV7C%XV7CXXV7DCXV7B^XV7CvXV7CP zXV7D4XV7Dq&Y;JzoI#IaJA)p>aRxnx>kN7f&l&U>zQYbQUUoy`Z{HVa$S02;fgrGkV%`7(Tm?El!Md3Qqx9Dg3Z&$n_b;5#8}-y zN0^PnQJ+!TR9%>Z!_X_vj7OY@lSh(I!_7>Em0e8FQB{=jl&g)sgPe)0+TYJiV#Z;1 z$`ZQH+SY-5OsokXNDfE z;$_&y8J&>C|1+(InZxLbB>s_U4@{gP3rYMP(+ik5qdQ2PftkVS{}<+9##;>L4DJj; zjIVYu1nci$2+`lc5G=5R!SKQk21EUw47LockQrxN1~CR(1~mp-1~Ud*1~&#Q8N|T*uR*tVf>=8lJQ!I2z>*|%i6mms3)=fY2&jRQ zq#7tmLR)Rflgb_pj11!7ej?}&WoFo%E;H!13)t8cGlK*JGq`VQ!NAPm!NANA!NAOr z!NAN=!NAPW!NANggMpc01q0~%M`nf-49pBS7?>GAm#Y4N-OmbIkO>;44(ivnK${A!C+8JaSrZdPgEN75q*v=r! zaGXJw;W~pX!*d2%hVQWRIN3qx-4ue8zbu0q_^8ia;Ds#^>pTQ@Fqnb%;|c6wu($wP zIk1Dl=>n+9xP!qL)N%*SWI<0N6Nh9I_~|m{;-IxbYTzZZpdJ;oH6v)TI&71nxhnMh z33kTyoEF}J;Iql>Lxlyj4U8qUJdDIRSpUso<5INL)b^6r64x^@Q?QK?R4aA@A8N)d zVHWLPTx05_Ccp?j$4t-7P==K;n}t)(L`~UBSC)lQ+{F`gfSIPbgo*@@q*veCvJ9RKvJ8<7vJ9CFvJ90BvJ9OJvJ5jBWEoa6 z$TEOVRz1le%W#uHmfUxg%IhFzS|2}K-KMnlZW zf{KIA-(Uor^AXgSU~mQvEC2rwKBpxTNxTdyZo$C77={pMbb^XIGBAMFuL`L#K+MSk zi8FxqTz_HmVrF1aXRv0JgC$sKaf;|mK<7^oDHyRm0yK*u0#1vdZF~^c4hA^^nqPIe zi$Mu=CkeP56%hcY@(VSJW&lUM|Bz0z;oaRhM>ig=5mbS4FiyN z1GpRn^>NMh7}eR;;pgo_i$cao5j{Z*5q-e|g(6`qLm6&PL$7#K(0K-sQ|q+cWte5% z6^f<9u^ex}G(}XKPfk!<#6r$e#3QxI&o0GP6?Du2C?!hCGC5}}S}OkQ#@I&x|3CP= z7(sA5AP|%$89kwC36v(C!D%B1B+lRr?XRMXmthxYbV3mawKKrxFnXehgVHcqoFNM& z&cMu2%8|ij`-@#xgu!Di=!VU%|ebCj+I~e%yfRYv~ zXjP^Z1FaTBa9!BJz@-lwM%&4t1Z!9+F^DlJF{m*pF_h zVhsjy1`P(#q4uB)Qr#Ie7{VDe7}6Ou7|Izm7}^;$7^X95Ff3=#VA#%}!El^GgW)=Z z2E%g(4TkRw8nD_%16JE;FsLzTfNL9bHSp#HF;I2}t*-<10#Li2u*qNbay?#fy`k?d z<1Za(zz06x)4)gCSB7!5h`BQ8FcLOaE`CW(HwcrP&(kp$luczM-DKVE6TwU=S6Rj? zVNuX2l!`Xu3Ys8>vW+;X&k5dl4bGPl(0mE0L(s)xbqJa`ybghggYqB59B3T^+3N~6 zKL%Wflofyqf9TmL&@(Uzp8JYe;4xB;Lcuuq74s+*oaeq`KMDnO_8R&LnApxj`Trjp zXP~%*#90<7&fs$i{_wH>N`{Bv_6DdA`JSl{)|X=_WS9XK2j36JTnJZR#qb3z?*9J^ z6EiqXxPa0eqbo=~0~2V?2KYWXSq25rtg8g*EDzYtZnRo`roh0)AOWt&B?NXbD8c7n zF=hmzyBrbCWW-bjw5&p;&D{*3rGU)fsziYSGK*ng$O@eUVm1fgb7w594BEM5Y-DE6 z&8WyUS4c-jLywJFR8B<@a`)W~m*cWLveF{VY}%r-9Cz<9x^Cwa)=?8xQq5im*OE2Q%-#8U`i?_x~E;GqG(Ld>QZUVDQu5!Qc<7RX{gogLXjb?_lr~*uenm z+_Hhh1$Hvw{JXfLcz_zO^}n7=t;38iP4_@v<9(IYStOIYSzQIYSwP zIYS$RIm0vtbB1LM<_y~y%o&a`m@`~sFlTtiV9xLjb}uv==*nqOmrxXZLnr9UX-Fjp zxwLx+gE?rf^1==VTlf+Z=p;6xO27zrLr@)Ih}4^g_P41d*1IE|O$L zKhGO<;5RIdAzut{&&YTjDY-GRF)0MufIGvi3i=k-7UFI!9FCTdesoAAj{qw>DAvK;jH#4C}$-;JXWv)WgQz(bO|KF|0#U4;mANm|qJTcZc?&c);URVDlN> zP}GCwQz7chkkpGH+{5S$RS&-J59}UwkUJU67|w(3_51&Y*@5Yc5Gdk6^RjhJpvyCd z$vg_Q4|kC13#g&Ur~>Q5K?_erCWh{LM--ljiA+#g2^j$cwawYU2WIVHkb>?%5f|9O zAb$aJY?cNnQ-Ruk8Vs7?h7@@AQiDN)K?4je7&I6>7&I6n7&I6%7&I6v7&I6<7&I7W zFlaEWV9;RL!Jxr#f$3`Pvw8H^Z?GZ-;kXE0)T&S1pwoxuo} zbB!3l+p@$Mj2P4yjKDcp6?XUwWQAY zHJCtmRVpzg!BP~)Yy`&20Ynl5O;5lMzreO~Kv7^PXiFOSuf9n&7Qa;4*+}D;N-sG)BmI8lV|1 zhp6j&PO^I9iC@F^%Epdm7(M*L>`3IPoVnp2e^LH z0@qKajOyS#4nD6OT%UP?#hn-~g2f@~L2Y-4`YIgiT~XA7@;F3&EsAY|kQxI-eLaf$??P$}5cLfV*TL=ql{r_y?$-vpvy|ZjSR8adF+1}LAvFeXsCYA| zZUC2QkUL8G8PaiI;L&p!Pij=-!?Spgo&n&>9uAC5gtPC(y(5 z!F3t@EKkH)!TgNM3q3eI1Z@NtaV(O7o)T`afO$%|E2y$M0XhyCbix_hLE-=ZGXyg* zFwO+8-GHo3Dd&c)anWaBU@QfXJ%Y!X89kXG;-IxGHQ@RUqP`Mzx4{4ZpcKX!0j}S` z>KO__p~%4a|L1=V@V&B93`;?K2Ux+YsvJQpQ#lyK7&sWz7(nZtI2ha*I2ghhI2h6x zI2g(pI2hU(I2fiea4;-m;9%Isz`<~gfrH^10|&!11`dXA3>=U~0UHAcq){Nsz`>x( zz=5<^8>5nA0>v>CD2}125xT&h6Lj1L7Xvfs&S-5=x?{#tbtxZlO6EnYt#sL#MdVZj zIgmS#$Q2dS|M&kjz~`V#F{m-D9|+$gY9XS0zZ-N}ICv8~&Tv59F*3`>feSNCMCFtP zSh9x z69>5O;s;h=Uk-H-0|Vn%u=)C6aoAci(0oxpxGeUEh|6ez%}M+(3A*=JNR0uco}ICt zVG~$f?!P1>1K50s`g&0$^TFd3v`D%;x+|itLJwft-O>PDYkiMd!K;s zM^|THU^Hd=!oUqW^jD(hWXI0GjC$Rgi(9FwAg9X65z-u6Pq0?F7yQGaE*i zQ0Gv_+<)i8oJ0TBL((TR4>*n>>)T2gCBR__t}nr11)iT_C}Wre7Ek;y3A&qD2()`2 z)K9Hv}quzJRNhQ(lU$oe@@`vYQr8KVGL9ArK>!hA+&hNWCGpT442{e!MfdY=+F|6hh+~q8`*PfvB%SQ4ebOfYmd)qNoSC z6QaI`(H?Go4%j^q^d0!j>yTJAEwHj7+|a1|0u1+^a&= zxp_h=CV4S#;P`h#g;AX2-%Bw+)8bSwZVo{WO9v;}5E~n#*yezUmPlQjKQ@dON*?*X z=3!2{vY-=WT>gJy?qa;fz{Oz2;K%5@8@x{)(nhcp*ufA0FN>h-r4VJ238>OBK{_!+ z5+oprR0}D91Qb95pryu;^ZIr$moI!x$JM8Q&cG%fluv5H1r`>`UVQ7K#yFP;?1BkVQ!2xtbtH2HhFYr+)6rYI|q zvZ1{iWF5<2ZdN{3YYh!&6Gb*QFw4b6iIESs(!>m9U5bSjY|d6%Rh>sfQ&AMWc7}+yu;8P9o zto3J9Zxiu0L%ZEs-z^M$yR&*E>gCRCI*xvt7_0x~wZMC6S(HRXCHQRY6XkK-{p^Nv z^|PLbkqi^|Z2;~p2B0G$85kMV|7(EHUk?DKGjr&9W{#kPY-n@T7+N|*6zkB1V2E_) z3rc6ckaXtAz{Fq!o~|-tU;-VFp}m6vw73hr91%1cO4}R4p_K-0=Jak1(Ly;gUS7{qP7i%i7)m;GG7AtcBjQAPMPn5a zChW_@e3^B1|Nmz|FDqel^`NrvFjCp)91AHc)Bj6??kN`n&Fz8PdZ2aS|Nk?%|CeMe zVhR>gV+aS8t&H`c1zi9CGo*v=H3yf)=HRlpjA1pn>;}#I?gE<+QV(j6?*i{P2df94 zN01Fmj?gwNqS%8Dv>?(abUGCwfM{dwVBizj30gVxX9ol1rgY@(UpyCfFz|wEWzcmY zps{rD9qR1HOajxaoUEp>O_7G&r7k^KR>8)PwdbLey8I zs0Xb_hp2Z)Q4i`rK-AYTyac-w8qzotbf*R)vq6(5LI7icA9*wp zw1*kAb^$W1F9vD_fT{p725|;426gbN05Jx41~G~=hIj+*6m=h(g#h8 z>|oGCS}|dTv|<8OCGw%Hn9u{AjR(FF78J)j8BAac=u8;I7)%({7)%(<7)%)47)%(# z7)%(_7)%(-7)%)27)%(ZF_9l0fW8gzNfET(u3sG!BH^d+WFcwf?v;+`~>~=GlL1%YBN1ur>NP!DN&oA)G;xA)P^yp`1aHp`AgIVLF2%!*T{ihV2ZB496K1 z8Ll%ZGCXHcWcUs_Cj+!0OA+ERF$P5jHSiG}h=~_wb6gi>F!M1Zrsx>&L(&6yy$lmO z6XeD@Y*%LJfv?rzM~wP`QwMkz4fN7E&?qy?JsSVEfUntrjR1nmu?z+V7CvwtXa%kV zOBoZu<$yl}1Jg%vIS>UFcY>A==zFb7LFEH{Z560o0Shou=~ zoWU$9Q!ObuT}~cT)w$rdmn5hkDFiy05z>}g1Wp&~|0O}~ej!lF4%&xX4~-v^+FlHd zpfOwUc(NeF@?8vq&|66b1$Hn9!&@U5b4Bc+)(ATTV$~#ciw8Zf3NbJQ4~D>wFA_HH zVii_4(~uMs5aXAS69L^k3cYQV19I6Y10#b4lL=_w00SF?3ux~v=(KjwIYn#?OyJ@N zv-;>FNF^%a6 z0~!$l%80#+VHrr?%Y9z`(!;-f{`cb;#iWb|17w4bFz3lS;WD z$7MmT%rFLL2J=!zLv>v<0WJPW8*4XKrXw0^N;)=9PBxJ6S)wG8PX z4EQPHAh$9x6f2YL4OB>qW%sB&>=dY<0KhCe1RPdTz7Udh%m50 zR?v$uXfcQ|fCnWx8AKQ)8AKQ~8AKQ?8AKR78AKQ&8AKQ|8AKQ=8AKR58AKRnGKes& zWDsEhnQ)RpgyANG2*XPT5r&@(B9ICiWC&y74hB#vkOEl(nj(~95MuyMo=Gv7fzK0{ zVhCf9Vn}0 zkD?4x45|!Lpr#$@HhCuSAw-~K^q9a~2EmuafmSGhPYlyz0`D_rgS6($n1y9kM1&PU zCx!{jstAk7i*e0lmX?%MWoD6)kW^*r6jqkv7m!vG7E+QD;FnSsmQ+%flvGq=VEq5- zzXroX2GE`B&AS-{VXJUKo)cscV-RFeV-RF8V-RF;V-RErV-RFWV-RF0V-RF$V-RGR z#vsVBj6slL8-pOjF$O_~YYc)6&lm(5zQOLdV*}rB2i_JS$e;?oIuDkl5iJ$a;UAzh z%%Tk{Pe6MuKxg_J!`3n`1l9e}xlCOiIVtE8S!l(sB+J7gC9euv7z;`(j10O=u8hS@ zs~O}NtamX8fI5=epcQ31KsP&sX7w2vM8P9#q5?Y@K#7M(Ujh>uTEL_|e^U!G4)icN)8KvF?OL`hIko?l#=gUMA; zm5*OofRlq?PDn^qR!D$@LqHC68k`H03F9L08H?-;k)R{FK)X{wE8&|lUe2ELJol>s!%Wz1+S%*?3B&sgiV`}MywjK`Ty{Iy_e z{kxNa5j4xk^nvLjgCV2PZqQ8`4Dz6{RZ#j70QCewJs1XR-j)G#Hgw}6HfKYp(x9WS z;6X6ZX%yU`&JCy;!p)$`zzr!HI2gDYBpA3EG#I!UEEu>MJQ%ncA{e+CG8niSDj2vK zIvBVaW-xFwtYF|~*ulWfaDsuG;RXXY!wUv(h93;vkSq)`1XMJD&N7eyPYLN?*uh|M z!N5=vl#-#Fv_Q-J#6f%I5sQt$qn*a=jGH9&yv>!_*rlw)O-&PhP1xCZ)a-R6e{&q= z)^*b0W9M{Eu6A_D^H%0$SF;H+V4XM}-s zL7=W~V1biCq?ajgkQHb@>gc(gNLTUE=v>Z(|G$_#7|$_CGgyNTKjr`z-#ZvU%Y`5- z?qLZRV^1!kB!nDyqol_OYQi!r3xfx@nAt=iWe^jufV7~rG&eJ|&I>COD>pXAM{GX2 zOl$%I9Ku|j>>NV!8e)uQ{}LJJ>+AnJ%p)ei#lj3J6J;4LF-d~YjOS$lEmVM?5wFOu zsLJ?-;~x(rhZzGSgDk@(7G7NHm|t-Gk$|XcWPHG=2`{NR*}-KmE9m?Pa2u3eU_zwlTCT8xTHI`qlbb-zRfapTkxGbH#g)yCzk23c`+MeEGd_6o1mtKY24wqVL9S+J zVAclN&&~ikp#oGJKv!&1)O8D}!xGg4z-VvV@T#?SB&!C~a^v=)qDv z!oi@`YoIjAqK&?K4b+Jo@d(4-Zo-u$X)YKWQ8N3~!SOM$ zflpch-HF5ox_L!=H-izVa|~-mNic{pNHC~@k8P7+aAS~Q2xE|7NMn#-C}WUdXk(CI zn8qN%u#7>1VH<-4!!ghu*$fg4&ln^azA;EZ+9zxb60k0Y1cNGr1gPl)nv_&v&|**k zaTFOi859^K859^a859^S859^i859^I859^Y859^Q859^g859_1GAJ;tWKduL-9dkn zL4n~Wg95`#1_g$n3t0KWwF~&Df6%Q>h4A_dqg5OTD)j>)r9L?6CW8c$k*0w#Dt72ndqiqS zoGZGUfs=um0diEOu)t2x5w4&^ZrB;58N|WIcu6yuGe|SIGe|RpGe|R}Ge|R(Ge|SE zGe|Q`XOL!C&LGXOok5!6ID<69bp~mM=M2&e-x;JK9s(Hx4l6MRX$Cb0Y49O8pcBG% zFYI8D1|JE!gF#tf2ZQ^C9Sq3=I~k&3XWmCMXfi}Yf|i3Jnn8jgnn8mhn!$o0n!$r1 znjwNAnjwQBnxTRrnxTUsnqdY*G{XvpXoejO(F`XTq8V;5L^Hf#h-Ub~5Djq&$PiG& zI8b0GLpIEkYz9q+Y?vk43=$043>pmC3>FO83?2;G3=s_33>ggB3>6I73>^&F3^N$A z8CEcW<`%OVPB3IM++fINc)^g(@Pi>6W=S^qh6F~?xuu{%Kk%ux%Ahq@ptCvcAU$P1 zCiHtuV7snCtFajI=wm7ZA7skHqNs1JAaANHz`~-SZzHc@q9S0zW~w8mp#VClSw~Dm zQH)WA2t|KqAr!I78(4!(5;SEq0h_=KrJ0_Ajz66&Z=oe2p=BYjU=E_q6?AL`WYxrU zYz1Z1#PG;5PQfF|zzDw6NE>`sH2C~EP`w3O&<4JP2-GY99V%~Nh#mH}n z++<(~idx1_t-t3rA>jgYhxPvtOwvqO7>pT9LCf+$XJ3L^6+!|#7(it_zy2-;Ee1sf zA*AUO#QlY+Ejh&W3G}QcgaC9h4ZH?hfB~`wdj|vP%0p(@pf+s|Z-UG)aWH_k9Dt^B zMM0fc(9E1DgE)gIgE|9fm#rv+JA)`gID;rdI)f-fIfE!eJA)|0bOup|+ZjX| zjx&fdTxSqvc+Mco@EvwuGCPAPq&^U1fSkMxS_dZqx)%!E`~?j-D_#JddLqMM02TpV z5DB^r6LhJk)`cAm+Mtbk%ftgjn!JvM0;X_ zf~f#gCp&jWngOpeKes%$L1L}|wzc?~8{A5rDMFi+raAgL@BJlPmWd;cbWd;of zWd;idWd;uhWrhd_Wrhp}Wrhj{Wrhw0Wri6H$_y(Qlo@s~C^MX3P-eKnpv>@sL7CwP zgEFW@lxN^zAm0%F!d(pNpmW5)OK89+C8^mnva6d5gNjHoc0NYewm3oyW!&MFHlL#~u(G;L*PbYO2aHe<983t1m*WoFEDP$8Ph z*oNPlgF!_f()IxzLo28cN*^45K!?@tV33Ahx(n&*DqetfVvtw&h%qpM$2UROb%ORA zfodGkIv-}xEfb*98Pw8e24^6124)6#24;qE24;qI24;qG24;qK24;ro49pD68JHQi zGcYq8XJBTy&cMv@oPn9)J1EnEE>HxG0gE%>H-r;Zs7zyEW?06+3|?0uEGhvswpe6i_WzUvyV|z7S}g-P`8eEQBiS;x3-FRQ7g0$39(^h-fC@W zFREg!$gl04Vr7-;rLF0iYO6BQ#%3Y|6NB0RFHB5K7a7zUEEz#Z4uadh&=n-$Tm}|k z2Q`M-A?phT85kL~!G|%3Ft9TygKH3F0q8|Mpz&8322F5T2rlnr7(g|T27?TP1%nKO z2ZIbl1cMAi27?Sk1%nJj2ZId53-!q(ro3S4yZ{0TBgUM z585Ef@rMC4z`(-52%e8*6;u>d7E}~uvj6Ah#AJ1idDWjV<`;h?K;@_8e=Q~_W+Cvn z1gJN}0^ZaJn(tx(b&f%EL8hFHri!A9oQ#U1l8m1JjxzE8b7M69w}bKKHFL%Tj5{st z{`vlMvxSTcl`@JmRWgEdoGeBg6Ex<@%z!xK3v!khqq_kEq;2X?Y1>p$@1MCYqHQ{a z?oRsui#&82cF18O#|x85MUhc*gA;=qgA;=p=*kfWCx$QvCx$czCx$WxCx$i#Cx&SZP7KQ!oEWw-I58Y! zaALT|;KcBZ!HMA;gA=4kVPkLtwah?QlR7b|GB`nIWlb4a7(f@@?*_Hoz-1g{q7KyI z0ClJ(K?`2=cQ9zfPrBK`U@8E*ox{LTRfLZTRB)(+PB%pq(a?<}>?V*U@N&$?MrNvd z%%D!Gs0g@=%CtvB#Y92YL|;o-OiR~TPQh4JL|DaGLDp1XTSPJ zFQBZhDXymV?-aj^rk1F%oCvp$hNz~x${%?%4RK+4HDMt&c@Z&nQ+YWvO>t30bzxx* zMNu(zGbJ@MVOa%UJ~=4?BUN5`8DV}&1tB#fK`D6#Muyb?+Kkhfg&2$&6d`kbY78ve z44|uWn835CyFuq4gLg|C7&3~mfxHRwfE=T!AlTPxrY7Ly`;Cq47)?yg1x?gIrKcPd z<1|qLK0Zzkb{;-b?U+t}L}$g=VXgUZ2ZhFGQ+#$Ehf^lm1XRe&{Gx_=i?JIP>|G95f$U(6W3K-jZF|# z?q>e~z*NfkmqC~z02(sfplho^Jtb%#Tne<|7<8u&12}jZwBR;{bL3AQ6#ti{V&V8_%{YUdM_->&(PD?m!Ue{l_y?I)!XyhGiHDiRq7T~OEXu&n05MCK z(VUeXv~fR!o$=VebPmP~9Dm<}j4d@@u+U_O#lQRdpe8;;{QtX*pO{`VurhEmID-Z{ zn85QkpcO@sIeQM!VP@b)4(N76ZqS%Ls4fFd?y!OCH1OmS=-Oz|zEN<=Dr_vw%_z;t z=x)DqrTywt9UYy@jO~o=|0)?>|Ly*_o6!{%PvuM>7^RsT7?>H5$5|kgZJ>^fx-p}) zQBeTX2hi1v42%rRnLaQUgVjr8)PJy99MB2n?8=PF0ke#l8=(4vm_9HTFgGx;G3er1 zkA*N2GOl=f1X|_vP zILRQyaFaoZ;U$9*!%qew1_97Ac90>UF>FvXMgn9BXlV;=CS@2vSGggt`vR?0LY?_j zLtgeZ0cqKnkgSTZy8dhy8A(YM78Y3vNfl;SaZnW3``7hOdlBcfXfQ-JTNP0 z8Mrnii$lsZP#+Y;f>eZ@pfZgCG*+e!*{%*cwiZ+wK*|BgYNK1Q)ke$>6F{qtK59Z*_DGFLrtBQ zGB7gCWC~(bVFLB;`JuHM=)hkFeaKpYTaIC-OhHQ-Ks5#f69W_IED1#hRR&E)-QD19 zuK}JV6lP!ppGyMTU&ID&f`Tq-h8$q5&Hy@omj&s9ZBWhtZ3F^E6q7!92O=+n76UIV z#CaJc8F(2q8F(2i8F(2y8F(2Y8F(2o8F(2g8F(2w8F(3HGVn62WZ-20of>(PftTSX z124l%2404r47{)q=LLtjI?7Fk(9QFR0d(kg1B3v^9tJhg(19A##2R!{19;4x5gan0 zCFY|)TsxS9ZHD3$S#fuXsnv8X0pyKRm%1WS{9zlbj8*LnHkPkrl_c4JzL5xjV*H}zTN<>&ONI*D; zJ;%}pbSMe@7?fLP({-&?_<2mYsvFJzWq`+MLH-wK2CW^HLY%t<^$Nmof}jW%M4BkY zSOoyxQ~-`~P6kE>(7o|H7(i!hGBAKvWHMgZ!61BL2ZIQxg2U=1V`k;mI6RSQlV!s= z1J(6RU;gqiFfb@EwlRQ@0b*caaAoL$vO(v5yn(Wr7}yy>E&`Pi%nX{0sZeni1`$Tk z>PL_`D+4>@J*YSvgD?{xl+Df%#&iM7=3wAuc80P!8TgqCp=>VZY_3Qso0~zL_bZgm z!=TCs6Bl4$VN!ys;b4$r22Bfq#5oz{ zm;<5WTx{2v8=-7&20h-RP&N;P7a! zaLzBNEXqvJC|RjsWME*f;FFn`Us73+s^FfRViWE z>P}R>pcN^g*h^$kU?^cIVn}32VMt}jWk_TwV#sDtV8~}kgN8ZwG^4$45>GN=?r! zE=es)O;O0qQ%FuNDoM=DQ^+bU$}CRFOfJdH&nwnr00$X%FEOAbQ&4cFfSm{Or~-o< zLlHwM*oo<2Z!kEf6lEsnDYzAtmSm=<77sj$T+%kj9V*jvP?HgO)6TA`9YckeeXpfow`;Cv*z;;K|iV;wZfW$%Z1xZZ>44{GnR20B6J;-EGcq7LPsM2u)yI6stlpzlsj*z%ORs~9R zsD1_&KMK&wPJy8S99p3C2P&pOxffKSfkG4%XUX8w9^^s=22hRyxf2vSMc{Oq%m7LW zpfm?cUHJ?k+d(Q2;Q>mMpmYEd0mUy!1*p0L@j)R8@)sn;GQcsE$xsC@h0I>}e z+Mt{R5=&$#2B%I?`Uh3lklYSQKcG?p6k?^|asrgfK)wVO)F7Rpcmw4^NYS3ekO__n zPzpe#bWouW3ODpp4diN&e~K7#!Ttv2Oi)fj=mgmfD)ckKWdbNH6B!D?c?uM^ARmF; zqri{`4nGBkByb}JRQ`Z`SHS>Dp&)f2w}QeNRGC241!fYLdrPB&mM0XJpv zmF)<(fnpKlB9LD}VGqi^pb$?5S684M2TS9)n^y{8`?A5!7*J?E&)}`#ff>v3dN~KnQ0237GYXqa%!=jf@dCFU0G&oxk7nn zNd~;4*HOqwRVYr(OaakpsW~MewfRXondyn3N?oBOAL=HBM1`Epywt=Z1+Xodc?u;N zso=&#CRky9nu2RlQeqLf(co5EQd*R#qmWcu0x}^nr#N3BH!(X^p|m&^qWM-!-K!kMQkyNaZmtUe#P+F9lQ>l=i znxC6mQk0o&t&mxwkdaudP?lO$l9`;CqflH@l%JhitN?aLVo|C>Nk(RJc4`qw01}=V z`9+yk`FSOYImJ4lm{7`B0!fyDnra|B5)}$ki_%h)OB9kbi;{CvL5floiZk+yN>V|| zCb2jP+!;>@I+RE5NXg4Dz!kU0uz`9%sz`6U?&C8-r95M>#ui7B9z0ZC~_ z1_mYyXstJ}Y2a7{byHF@i&B$I@{2&}0Hsl=px~IDS(K>You8CgnOK~WsZf+!o?n!m zngWh9XpR82Nt26G6H8Eq{ZcDRz^((?6OfZwl9^YUtKgiUlamT=o$4ttfV*ua3I5L#s6`CL47lvjPs`6MftCeD z#h}(NsPu=lWubi=_&w92uM#oEcmgTp8RL+!;I=JQ=(gycv8Ld>Q;0 z{22lm0vUoBf*C>>LK(ss!WkkMA{n9>q8VZsVj1EX;u#Vc5*e8o7BjRkv@+~vn8xse zp^c%Bp_^eY!%BuFjLZyO47V7X874D)V))F^%P^gxgW)j4J%*1A^B7h!d}a8;@Qq;+ z!&-)u496MPF(ff0GfZGeVK~i@%5Z|=6vKIjGYn@L&M~}XNMpFnaDm|>!+M5vh7SxA z8Lly0VYteW!SI^lEkh?m7DFaOHbX8$4nrQp0)~8sLIzMnt{B`zD`O~Uc*Rh`P{mNm zP|Z-wP{Xi;VIf03Lmfi{LnFf*hIb6R7+Dxu8QB=w895j^8U8Z-W8`AwX5?YyW%$p? zzzA9pDZt3cD99+pD9k9rD9R|tD9$LsD9I?rD9s33rSy|gmQjvTo>75Okx_|JnNfvN zl~IjRol%2PlTnM|7sGW%ZAKkNT}C}deMSRDLq;P;V@4B3Q${mJb4Ck>M+}b{Eg7vC ztr=|?Z5izt?HL^y9T}Y%of%yiT^TkoY-Ds}bZ7Kn^knp6^k(#7^kwv8^k?|Z@Q2|E z!&Alp#z4j(#$d(}#!$vE#&E_6#z@8}#%RVE##qKU#(2gA#ze*>#$?76##DygjA@MN zj2VoX49^&zGc04wV$5dDVa#RBW4OWakTIX(Hp3l;y9^H)ZZh0wEMP2TEMl0=u!&(a z!#0NP3`ZEYFl=Qw%Fx7ch@qWfHN!E6eGK~<_AnMRmN4`%%x5fRn8C1uVHU$ohWCtR zjO7eV8748zVOY-4&oG5yD#K333dTytD#mKY8pc}2I>vg&2F6ClCdOvQ7RFY_HiiQX z2iZ&WG7StI4WP6OyJK!*a#4OBdm@Bpb4)5qElXuf1XJve`RVz2soCs_5SrT=RH&Ec zrsbqoa3>?!T+S)^C5g$PnvW|P&SY~*PAtmLV@rWhF3Cmti6!i=5R2GTAvBvS*e14A zFvaBx*Ugm*XR^COtY=S!&}^;{6H~zyw>!ci-0285mpj}5u5>t)$2~beH#ZUDSe|qw z4z~wFFLwrl&Ek=iSj3W%lvu>(S(2HPlFF6|rr13pK48y;(w-34v1dYPCQmP>%q(s% zgh||42sV#5lGQxfNE|kw#N^VFRJI&2#p8n{#gl`?Ve4`<9xjBiYCA|5_JhmXPrEEoDiYExkI-VjV4qFh|Qnn%p6%1C+Rt%=NgAt*`U5sG! zgdiEfQ-Z`{3xOC@0;X6(K=D-qimy;`M6s2EDfUo^Z`eyAG+QXxJ8Y$3iZ!$-GcTRB z6h!idBKwKA6q&~!3W;6zQV7i*j&LD&ITAY(iCu|cvqgbD$yNoXxT4?*ldB5O~4g6GuvZNlt2UaTY|t*%C|}Tbe*oVD4#PiEi=>1(8$7) zGqt!RGZ)lE0Vy;xGBkzKmYnHDiDjvJ$%zG=U>AZ|dPQz z#&U-B8e0hKHMTU?Yixhm+1LfZomx=Gwt%64x4s`Dq!~Fl-820~v$8hlfJ4X5cdl(h}?_o6j|C`b1 z|2szG|JxW%{=Z{1{lAUT{{J4vp#Q5Fco_Kq*E2NzKgrPi|0F}p|C0=@|4%Zs{Xfaj z{{JLH$N!TIhyI^rIP(7_!?FJ-8KeH!Gw?82{$Ii{|NlgW{r_(>9Q=QqQU3oDM#cY2 z7!CiQWHkOikIl`BmcKC9Q(hGG3tLh12=;u0~^Eq|DPH5Ge|HTWRPH#XJBJgWME@7 zWME@7{{NZLgh7JQ^#5l@dj>X!00#d56B%UxPh^n$Kan9H?4Lah&Hwi>wEW-0(E5K5 zL)-s74DJ8-Fm(Li!?5W8M25xxCo(MgKapYS|A`FC{!e6B{(mCFivJTCR{o#JuM!m#)M5{7;MmoV)AKat_!|A`ET{_kNp{C^_Dk^g%bj{cv>aP0pc zhU5PyGMxNBk>T|Ji414|Ph>d%e&jC%iM{-0!6{{JMyivK4WR{cN8u=@W= zhBg0BGOYc7l3^VK8^d}AHiiuhYz!M2*ci6_KgqE5|4D{z|4%Y(|9_HU$N!TIyZ)bK z*!}-D!=C@Q8TS6a&9LwPZCDxxr@q6`6nGSp3K@?7Kgn?Q|4D}H|4%a9{C|?+_WzR% zcmJPcc+J4Z@Ros%;XMNz!$$@-hR+Oaj9mXuGV=UC$;kKrB%{FplZ-c|KBk* z|9{8O^8Xz}>;HEQZU5gfwEus{(DDBr!=nGU85aM)&9LPEZHA@)Z!;|Wf16?X|Jw{J z{@-R;_5U5i>i_Q;*8G3Ru=f8uEa~YT!`A=r7`FX?$FTkXJBA(q-!bg^|Bhkz|91>~ z{=Z|``~MxozW?tS4*h?}aQOdih9m#qF&zDWo8j31cMQk>-)6Y_{~g2i|L+)X{(r}C z`~N$JyZ_(eNH^~odH%m+9M7+6r(f=h3 zi~lcSSn_`f!_xmt7?%BC!m#}R5{4E3moTjQzl34+|0N7-{x4xz`+o_;y8k~J*8l&> zu;KqthK>J!GHm(3gkkIdB@EmCFJajJe+k2m|4SHl{a?bc`~NnEJ^!~c?ESxuVIQ>Q zIQ)MJxb!&se+j4rVL1MO3B%R@OBk;IU&3(n{}P7V|Ccb_{lA3a_5Ys?Z~y;fc>n(= z!^i(W89x92$;kD82_w({C5(LkmoN(aU&5&Ne;cF5|80y~|F<#f{NKi?_kSCs0k~9} z3)-3jK9Y}-fs26=bR#o^D+42gCj%pcHv=PsF9Rck9|I$UKLaB}I0GZYItE6D^$d&* zp!wvD42%rV85kK}GcYo|Wng4@&%nq4nv4F^v|CcZ@fpQHv<$zeAI^!e*BiN<#3@i*u46F=E3|tHo7?c<$ zFt{>QFnBUlFnBXmF!(Z5F!(W4F!(c6FoZKyFsx&!U|7#k!LWg$f?*>=1;cZO3WnDV z6%20~Dj41~R4{yHs9^ZcP{Ht%p@QKzLj}WMh6+Xnh6+X{h6+Xph6=_&h6#*83=${@ku$sobt%^<mqCJ2fq{=viGh#Nfq{=Pkim&D zh{1_5gn@@Klz|77n*Mh(a504ce}_>=DExoNsPz9GxGr!2rLg~<42%rM3@Qwo4EhYl z;2l1oF$)_8cLq-ee}+(oaPSyJ3_}w`GkDygjiH@kKEr;7gA9iljxZc!xXAE>;TOXn zhQBDic6o6B9MS)_2lbs97#UZATS}S?F$`%81q`#ma0SCUh8;-o9K$-e$OndhVEBPi zfKdsKEf_5r^B8Lw=P`iPo@2CN1f@j5|Md(i|4%Y7F$n%oXHfYMIuAtP|49azxXb^O z3?BbaGWamCF$DcT$q@SgHbcb!+YB-P-!U*V_%JXsd}Lr`_{_k_z{nu@e;e4GC5)g{ z&dOl^e-DGz|KAKY|FdX%@c6%k!RP-^hM@mT7$W{} z1DjgG@R6Z{;WI-80}F%s|0N7o|4%a5{GZ4W^ZzzTgn^C0ih+&6=Kp7g7zWU79}pKW zVQ~BZj=|&qJBFbD??B7M{?{`I{-4O8@_!G5%m0ZCZvQ7Tc>JHp;KLxn0BUuG{$Iin z_J1Nn#Q!A>pgKP0|3t9u@RkGv2iQ+4|KBmV{J#x08KU{X#o&G=Z|HS|G|0n+617=NRkoZ6G{}K>JRS$L#=pLtc z3=$BRp}Ow>#Q$^ugK8><|4aV={J#XG`~Nl&3B&(SLPf#;Le-5>17ji4Obim>L0?7& zQ_v1M26F~;24)5;1}g>@1{($&23CephEN7JhA4(826l$|4D-P^z5HNcWcbDKi-D2h z55pe@(CC>U0~4bVqYwidqcEc|0~4bNqX+{VqbQ>&0~4bdqZk7lqdcQL12dx{qap({ zqamXq0}G=OqY(o;qcNi~11qB`qbUO`qdlWNXh$T2H|Wk62GH??pkq{37*rTIz%FA1 zy9{*yfeiyQgA0QT11EzU_=Fx0@Y!!Z3_c7z3_%P*47^}>^D%@mgfZ|lL@-1!2!Q>- z!Vtp{!@$ar&ydf+#?Zvj!N39b6*I#kh7}B)3@aH{GH@}hVpz+-&9IJPBLfe^7KR-R zybQY-b}@iX-`d9@z_6cTKLabnL5712tPF=34l!^r9A-Goz{zlg;RpiE#44e$d z7(h459cMVsz{zlu;UohW!)b=o3|tIn8O}0rF`Q>O&%niSmEkG_H^X&?>kQlsHyLg+ za5LOyxXr-LaF^jO12@BKhSv-{3~w3UGVn0GXL!%R!|;*eBLfe^XNJ!VJd9k7TnxO7 zJd8XHyo`K|d*cO4Q3v&g84iVqJprZP3#DJQ0CP|K$p8QV literal 0 HcmV?d00001 diff --git a/launcher/app/assets/fonts/Avenir-Medium.ttf b/launcher/app/assets/fonts/Avenir-Medium.ttf new file mode 100644 index 0000000000000000000000000000000000000000..09770bbaf7a67b44b3306504cbf65af3c34c72d5 GIT binary patch literal 138892 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%0DNej7l+r>wYx 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 WGsD#->Kq_mjq0KT5PhNaixB`&;=KU? literal 0 HcmV?d00001 diff --git a/launcher/app/assets/fonts/Avenir-MediumOblique.ttf b/launcher/app/assets/fonts/Avenir-MediumOblique.ttf new file mode 100644 index 0000000000000000000000000000000000000000..0a68d909bdf52e5a0cb7eaa1214369ddafc83fef GIT binary patch literal 129120 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 Hzc>K^ff@?V literal 0 HcmV?d00001 diff --git a/launcher/app/assets/fonts/Avenir-Roman.ttf b/launcher/app/assets/fonts/Avenir-Roman.ttf new file mode 100644 index 0000000000000000000000000000000000000000..295a5525766a5e01216c491827404b14d107adf4 GIT binary patch literal 101228 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

  • _2q-!0K_kmvI#X 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 WaCM0~sAtM>D7*k9#&DtZix&XDo!1rs literal 0 HcmV?d00001 diff --git a/launcher/app/assets/fonts/ringbearer.ttf b/launcher/app/assets/fonts/ringbearer.ttf new file mode 100644 index 0000000000000000000000000000000000000000..5fb3a09bfbae41178e7d79414b817410ceef4ca9 GIT binary patch literal 107280 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 zY2cKT22MF?;FOaFPC04dl#>QdIceaOlLk&XY2cKT22MF?;FOaFPC04dl#>QdIceaO zlLk&XY2cKT22MF?;FOaFPC04dl#>QdIceaOlLk&XY2cKT22MF?;FOaFPC04dl#>Qd zIceaOlLk&XY2cKT22MHY;FOaNPC4n|l#>olIqBe(lMYTf>EM);4o*4g;FOaNPC4n| zl#>olIqBe(lMYTf>EM);4o*4g;FOaNPC4n|l#>olIqBe(lMYTf>EM);4o*4g;FOaN zPC4n|l#>olIqBe(lMYTf>EM);4o*4g;FOaNPC4n|l#>olIqBe(lMYTf>EM);4o*4g z;FOaNPC4n|l#>olIqBe(lMYTf>EM);4o*4g;FOaNPC4n|l#>olIqBe(lMYTf>EM); z4o*4g;FOaNPC4n|l#>olIqBe(lMYTf>EM);4o*4g;FOaNPC4n|l#>olIqBe(lMYTf z>EM);4o*4g;FOaNPC4n|l#>olIqBe(lMYTf>EM);4o*4g;FOaNPC4n|l#>olIqBe( zlMYTf>EM);4o*4g;FOaNPC4n|l#>olIqBe(lMYTf>EM);0Zus?;FOaAPB|Iil#>BY zIT_%TlL1aS8Q_$Y0Zus?;FOaAPB|Iil#>BYIT_%TlL1aS8Q_$Y0Zus?;FOaAPB|Ii zl#>BYIT_%TlL1aS8Q_$Y0Zus?;FOaAPB|Iil#>BYIT_%TlL1aS8Q_$Y0Zus?;FOaA zPB|Iil#>BYIT_%TlL1aS8Q_$Y0Zus?;FOaAPB|Iil#>BYIT_%TlL1aS8Q_$Y0Zus? z;FOaAPB|Iil#>BYIT_%TlL1aS8Q_$Y0Zus?;FOaAPB|Iil#>BYIT_%TlL1aS8Q_$Y z0Zus?;FOaAPB|Iil#>BYIT_%TlL1aS8Q_$Y0Zus?;FOaAPB|Iil#>BYIT_%TlL1aS z8Q_$Y0Zus?;FOaAPB|Iil#>BYIT_%TlL1aS8Q_$Y0Zus?;FOaAPB|Iil#>BYIT_%T zlL1aSnc$R@2~Ihg;FOaIPC1$2l#>ZgIho*;lL<~anc$R@2~Ihg;FOaIPC1$2l#>Zg zIho*;lL<~anc$R@2~Ihg;FOaIPC1$2l#>ZgIho*;lL<~anc$R@2~Ihg;FOaIPC1$2 zl#>ZgIho*;lL<~anc$R@2~Ihg;FOaIPC1$2l#>ZgIho*;lL<~anc$R@2~Ihg;FOaI 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 literal 0 HcmV?d00001 diff --git a/launcher/app/assets/images/LoadingSeal.png b/launcher/app/assets/images/LoadingSeal.png new file mode 100644 index 0000000000000000000000000000000000000000..afe2c4d404deff2bdedd1ffe21b4c697867848d7 GIT binary patch literal 249314 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%0ADJnIMAW1wWTzJ+0aro$HL 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 M6maZ#AQOr>06kjgL;wH) literal 0 HcmV?d00001 diff --git a/launcher/app/assets/js/authmanager.js b/launcher/app/assets/js/authmanager.js new file mode 100644 index 0000000..5d67bbb --- /dev/null +++ b/launcher/app/assets/js/authmanager.js @@ -0,0 +1,425 @@ +/** + * AuthManager + * + * This module aims to abstract login procedures. Results from Mojang's REST api + * are retrieved through our Mojang module. These results are processed and stored, + * if applicable, in the config using the ConfigManager. All login procedures should + * be made through this module. + * + * @module authmanager + */ +// Requirements +const ConfigManager = require('./configmanager') +const { LoggerUtil } = require('helios-core') +const { RestResponseStatus } = require('helios-core/common') +const { MojangRestAPI, MojangErrorCode } = require('helios-core/mojang') +const { MicrosoftAuth, MicrosoftErrorCode } = require('helios-core/microsoft') +const { AZURE_CLIENT_ID } = require('./ipcconstants') +const Lang = require('./langloader') + +const log = LoggerUtil.getLogger('AuthManager') + +// Error messages + +function microsoftErrorDisplayable(errorCode) { + switch (errorCode) { + case MicrosoftErrorCode.NO_PROFILE: + return { + title: Lang.queryJS('auth.microsoft.error.noProfileTitle'), + desc: Lang.queryJS('auth.microsoft.error.noProfileDesc') + } + case MicrosoftErrorCode.NO_XBOX_ACCOUNT: + return { + title: Lang.queryJS('auth.microsoft.error.noXboxAccountTitle'), + desc: Lang.queryJS('auth.microsoft.error.noXboxAccountDesc') + } + case MicrosoftErrorCode.XBL_BANNED: + return { + title: Lang.queryJS('auth.microsoft.error.xblBannedTitle'), + desc: Lang.queryJS('auth.microsoft.error.xblBannedDesc') + } + case MicrosoftErrorCode.UNDER_18: + return { + title: Lang.queryJS('auth.microsoft.error.under18Title'), + desc: Lang.queryJS('auth.microsoft.error.under18Desc') + } + case MicrosoftErrorCode.UNKNOWN: + return { + title: Lang.queryJS('auth.microsoft.error.unknownTitle'), + desc: Lang.queryJS('auth.microsoft.error.unknownDesc') + } + } +} + +function mojangErrorDisplayable(errorCode) { + switch(errorCode) { + case MojangErrorCode.ERROR_METHOD_NOT_ALLOWED: + return { + title: Lang.queryJS('auth.mojang.error.methodNotAllowedTitle'), + desc: Lang.queryJS('auth.mojang.error.methodNotAllowedDesc') + } + case MojangErrorCode.ERROR_NOT_FOUND: + return { + title: Lang.queryJS('auth.mojang.error.notFoundTitle'), + desc: Lang.queryJS('auth.mojang.error.notFoundDesc') + } + case MojangErrorCode.ERROR_USER_MIGRATED: + return { + title: Lang.queryJS('auth.mojang.error.accountMigratedTitle'), + desc: Lang.queryJS('auth.mojang.error.accountMigratedDesc') + } + case MojangErrorCode.ERROR_INVALID_CREDENTIALS: + return { + title: Lang.queryJS('auth.mojang.error.invalidCredentialsTitle'), + desc: Lang.queryJS('auth.mojang.error.invalidCredentialsDesc') + } + case MojangErrorCode.ERROR_RATELIMIT: + return { + title: Lang.queryJS('auth.mojang.error.tooManyAttemptsTitle'), + desc: Lang.queryJS('auth.mojang.error.tooManyAttemptsDesc') + } + case MojangErrorCode.ERROR_INVALID_TOKEN: + return { + title: Lang.queryJS('auth.mojang.error.invalidTokenTitle'), + desc: Lang.queryJS('auth.mojang.error.invalidTokenDesc') + } + case MojangErrorCode.ERROR_ACCESS_TOKEN_HAS_PROFILE: + return { + title: Lang.queryJS('auth.mojang.error.tokenHasProfileTitle'), + desc: Lang.queryJS('auth.mojang.error.tokenHasProfileDesc') + } + case MojangErrorCode.ERROR_CREDENTIALS_MISSING: + return { + title: Lang.queryJS('auth.mojang.error.credentialsMissingTitle'), + desc: Lang.queryJS('auth.mojang.error.credentialsMissingDesc') + } + case MojangErrorCode.ERROR_INVALID_SALT_VERSION: + return { + title: Lang.queryJS('auth.mojang.error.invalidSaltVersionTitle'), + desc: Lang.queryJS('auth.mojang.error.invalidSaltVersionDesc') + } + case MojangErrorCode.ERROR_UNSUPPORTED_MEDIA_TYPE: + return { + title: Lang.queryJS('auth.mojang.error.unsupportedMediaTypeTitle'), + desc: Lang.queryJS('auth.mojang.error.unsupportedMediaTypeDesc') + } + case MojangErrorCode.ERROR_GONE: + return { + title: Lang.queryJS('auth.mojang.error.accountGoneTitle'), + desc: Lang.queryJS('auth.mojang.error.accountGoneDesc') + } + case MojangErrorCode.ERROR_UNREACHABLE: + return { + title: Lang.queryJS('auth.mojang.error.unreachableTitle'), + desc: Lang.queryJS('auth.mojang.error.unreachableDesc') + } + case MojangErrorCode.ERROR_NOT_PAID: + return { + title: Lang.queryJS('auth.mojang.error.gameNotPurchasedTitle'), + desc: Lang.queryJS('auth.mojang.error.gameNotPurchasedDesc') + } + case MojangErrorCode.UNKNOWN: + return { + title: Lang.queryJS('auth.mojang.error.unknownErrorTitle'), + desc: Lang.queryJS('auth.mojang.error.unknownErrorDesc') + } + default: + throw new Error(`Unknown error code: ${errorCode}`) + } +} + +// Functions + +/** + * Add a Mojang account. This will authenticate the given credentials with Mojang's + * authserver. The resultant data will be stored as an auth account in the + * configuration database. + * + * @param {string} username The account username (email if migrated). + * @param {string} password The account password. + * @returns {Promise.} Promise which resolves the resolved authenticated account object. + */ +exports.addMojangAccount = async function(username, password) { + try { + const response = await MojangRestAPI.authenticate(username, password, ConfigManager.getClientToken()) + console.log(response) + if(response.responseStatus === RestResponseStatus.SUCCESS) { + + const session = response.data + if(session.selectedProfile != null){ + const ret = ConfigManager.addMojangAuthAccount(session.selectedProfile.id, session.accessToken, username, session.selectedProfile.name) + if(ConfigManager.getClientToken() == null){ + ConfigManager.setClientToken(session.clientToken) + } + ConfigManager.save() + return ret + } else { + return Promise.reject(mojangErrorDisplayable(MojangErrorCode.ERROR_NOT_PAID)) + } + + } else { + return Promise.reject(mojangErrorDisplayable(response.mojangErrorCode)) + } + + } catch (err){ + log.error(err) + return Promise.reject(mojangErrorDisplayable(MojangErrorCode.UNKNOWN)) + } +} + +const AUTH_MODE = { FULL: 0, MS_REFRESH: 1, MC_REFRESH: 2 } + +/** + * Perform the full MS Auth flow in a given mode. + * + * AUTH_MODE.FULL = Full authorization for a new account. + * AUTH_MODE.MS_REFRESH = Full refresh authorization. + * AUTH_MODE.MC_REFRESH = Refresh of the MC token, reusing the MS token. + * + * @param {string} entryCode FULL-AuthCode. MS_REFRESH=refreshToken, MC_REFRESH=accessToken + * @param {*} authMode The auth mode. + * @returns An object with all auth data. AccessToken object will be null when mode is MC_REFRESH. + */ +async function fullMicrosoftAuthFlow(entryCode, authMode) { + try { + + let accessTokenRaw + let accessToken + if(authMode !== AUTH_MODE.MC_REFRESH) { + const accessTokenResponse = await MicrosoftAuth.getAccessToken(entryCode, authMode === AUTH_MODE.MS_REFRESH, AZURE_CLIENT_ID) + if(accessTokenResponse.responseStatus === RestResponseStatus.ERROR) { + return Promise.reject(microsoftErrorDisplayable(accessTokenResponse.microsoftErrorCode)) + } + accessToken = accessTokenResponse.data + accessTokenRaw = accessToken.access_token + } else { + accessTokenRaw = entryCode + } + + const xblResponse = await MicrosoftAuth.getXBLToken(accessTokenRaw) + if(xblResponse.responseStatus === RestResponseStatus.ERROR) { + return Promise.reject(microsoftErrorDisplayable(xblResponse.microsoftErrorCode)) + } + const xstsResonse = await MicrosoftAuth.getXSTSToken(xblResponse.data) + if(xstsResonse.responseStatus === RestResponseStatus.ERROR) { + return Promise.reject(microsoftErrorDisplayable(xstsResonse.microsoftErrorCode)) + } + const mcTokenResponse = await MicrosoftAuth.getMCAccessToken(xstsResonse.data) + if(mcTokenResponse.responseStatus === RestResponseStatus.ERROR) { + return Promise.reject(microsoftErrorDisplayable(mcTokenResponse.microsoftErrorCode)) + } + const mcProfileResponse = await MicrosoftAuth.getMCProfile(mcTokenResponse.data.access_token) + if(mcProfileResponse.responseStatus === RestResponseStatus.ERROR) { + return Promise.reject(microsoftErrorDisplayable(mcProfileResponse.microsoftErrorCode)) + } + return { + accessToken, + accessTokenRaw, + xbl: xblResponse.data, + xsts: xstsResonse.data, + mcToken: mcTokenResponse.data, + mcProfile: mcProfileResponse.data + } + } catch(err) { + log.error(err) + return Promise.reject(microsoftErrorDisplayable(MicrosoftErrorCode.UNKNOWN)) + } +} + +/** + * Calculate the expiry date. Advance the expiry time by 10 seconds + * to reduce the liklihood of working with an expired token. + * + * @param {number} nowMs Current time milliseconds. + * @param {number} epiresInS Expires in (seconds) + * @returns + */ +function calculateExpiryDate(nowMs, epiresInS) { + return nowMs + ((epiresInS-10)*1000) +} + +/** + * Add a Microsoft account. This will pass the provided auth code to Mojang's OAuth2.0 flow. + * The resultant data will be stored as an auth account in the configuration database. + * + * @param {string} authCode The authCode obtained from microsoft. + * @returns {Promise.} Promise which resolves the resolved authenticated account object. + */ +exports.addMicrosoftAccount = async function(authCode) { + + const fullAuth = await fullMicrosoftAuthFlow(authCode, AUTH_MODE.FULL) + + // Advance expiry by 10 seconds to avoid close calls. + const now = new Date().getTime() + + const ret = ConfigManager.addMicrosoftAuthAccount( + fullAuth.mcProfile.id, + fullAuth.mcToken.access_token, + fullAuth.mcProfile.name, + calculateExpiryDate(now, fullAuth.mcToken.expires_in), + fullAuth.accessToken.access_token, + fullAuth.accessToken.refresh_token, + calculateExpiryDate(now, fullAuth.accessToken.expires_in) + ) + ConfigManager.save() + + return ret +} + +/** + * Remove a Mojang account. This will invalidate the access token associated + * with the account and then remove it from the database. + * + * @param {string} uuid The UUID of the account to be removed. + * @returns {Promise.} Promise which resolves to void when the action is complete. + */ +exports.removeMojangAccount = async function(uuid){ + try { + const authAcc = ConfigManager.getAuthAccount(uuid) + const response = await MojangRestAPI.invalidate(authAcc.accessToken, ConfigManager.getClientToken()) + if(response.responseStatus === RestResponseStatus.SUCCESS) { + ConfigManager.removeAuthAccount(uuid) + ConfigManager.save() + return Promise.resolve() + } else { + log.error('Error while removing account', response.error) + return Promise.reject(response.error) + } + } catch (err){ + log.error('Error while removing account', err) + return Promise.reject(err) + } +} + +/** + * Remove a Microsoft account. It is expected that the caller will invoke the OAuth logout + * through the ipc renderer. + * + * @param {string} uuid The UUID of the account to be removed. + * @returns {Promise.} Promise which resolves to void when the action is complete. + */ +exports.removeMicrosoftAccount = async function(uuid){ + try { + ConfigManager.removeAuthAccount(uuid) + ConfigManager.save() + return Promise.resolve() + } catch (err){ + log.error('Error while removing account', err) + return Promise.reject(err) + } +} + +/** + * Validate the selected account with Mojang's authserver. If the account is not valid, + * we will attempt to refresh the access token and update that value. If that fails, a + * new login will be required. + * + * @returns {Promise.} Promise which resolves to true if the access token is valid, + * otherwise false. + */ +async function validateSelectedMojangAccount(){ + const current = ConfigManager.getSelectedAccount() + const response = await MojangRestAPI.validate(current.accessToken, ConfigManager.getClientToken()) + + if(response.responseStatus === RestResponseStatus.SUCCESS) { + const isValid = response.data + if(!isValid){ + const refreshResponse = await MojangRestAPI.refresh(current.accessToken, ConfigManager.getClientToken()) + if(refreshResponse.responseStatus === RestResponseStatus.SUCCESS) { + const session = refreshResponse.data + ConfigManager.updateMojangAuthAccount(current.uuid, session.accessToken) + ConfigManager.save() + } else { + log.error('Error while validating selected profile:', refreshResponse.error) + log.info('Account access token is invalid.') + return false + } + log.info('Account access token validated.') + return true + } else { + log.info('Account access token validated.') + return true + } + } + +} + +/** + * Validate the selected account with Microsoft's authserver. If the account is not valid, + * we will attempt to refresh the access token and update that value. If that fails, a + * new login will be required. + * + * @returns {Promise.} Promise which resolves to true if the access token is valid, + * otherwise false. + */ +async function validateSelectedMicrosoftAccount(){ + const current = ConfigManager.getSelectedAccount() + const now = new Date().getTime() + const mcExpiresAt = current.expiresAt + const mcExpired = now >= mcExpiresAt + + if(!mcExpired) { + return true + } + + // MC token expired. Check MS token. + + const msExpiresAt = current.microsoft.expires_at + const msExpired = now >= msExpiresAt + + if(msExpired) { + // MS expired, do full refresh. + try { + const res = await fullMicrosoftAuthFlow(current.microsoft.refresh_token, AUTH_MODE.MS_REFRESH) + + ConfigManager.updateMicrosoftAuthAccount( + current.uuid, + res.mcToken.access_token, + res.accessToken.access_token, + res.accessToken.refresh_token, + calculateExpiryDate(now, res.accessToken.expires_in), + calculateExpiryDate(now, res.mcToken.expires_in) + ) + ConfigManager.save() + return true + } catch(_err) { + return false + } + } else { + // Only MC expired, use existing MS token. + try { + const res = await fullMicrosoftAuthFlow(current.microsoft.access_token, AUTH_MODE.MC_REFRESH) + + ConfigManager.updateMicrosoftAuthAccount( + current.uuid, + res.mcToken.access_token, + current.microsoft.access_token, + current.microsoft.refresh_token, + current.microsoft.expires_at, + calculateExpiryDate(now, res.mcToken.expires_in) + ) + ConfigManager.save() + return true + } + catch(_err) { + return false + } + } +} + +/** + * Validate the selected auth account. + * + * @returns {Promise.} Promise which resolves to true if the access token is valid, + * otherwise false. + */ +exports.validateSelected = async function(){ + const current = ConfigManager.getSelectedAccount() + + if(current.type === 'microsoft') { + return await validateSelectedMicrosoftAccount() + } else { + return await validateSelectedMojangAccount() + } + +} diff --git a/launcher/app/assets/js/configmanager.js b/launcher/app/assets/js/configmanager.js new file mode 100644 index 0000000..c5bf22d --- /dev/null +++ b/launcher/app/assets/js/configmanager.js @@ -0,0 +1,793 @@ +const fs = require('fs-extra') +const { LoggerUtil } = require('helios-core') +const os = require('os') +const path = require('path') + +const logger = LoggerUtil.getLogger('ConfigManager') + +const sysRoot = process.env.APPDATA || (process.platform == 'darwin' ? process.env.HOME + '/Library/Application Support' : process.env.HOME) + +const dataPath = path.join(sysRoot, '.surviepote') + +const launcherDir = require('@electron/remote').app.getPath('userData') + +/** + * Retrieve the absolute path of the launcher directory. + * + * @returns {string} The absolute path of the launcher directory. + */ +exports.getLauncherDirectory = function(){ + return launcherDir +} + +/** + * Get the launcher's data directory. This is where all files related + * to game launch are installed (common, instances, java, etc). + * + * @returns {string} The absolute path of the launcher's data directory. + */ +exports.getDataDirectory = function(def = false){ + return !def ? config.settings.launcher.dataDirectory : DEFAULT_CONFIG.settings.launcher.dataDirectory +} + +/** + * Set the new data directory. + * + * @param {string} dataDirectory The new data directory. + */ +exports.setDataDirectory = function(dataDirectory){ + config.settings.launcher.dataDirectory = dataDirectory +} + +const configPath = path.join(exports.getLauncherDirectory(), 'config.json') +const configPathLEGACY = path.join(dataPath, 'config.json') +const firstLaunch = !fs.existsSync(configPath) && !fs.existsSync(configPathLEGACY) + +exports.getAbsoluteMinRAM = function(ram){ + if(ram?.minimum != null) { + return ram.minimum/1024 + } else { + // Legacy behavior + const mem = os.totalmem() + return mem >= (6*1073741824) ? 3 : 2 + } +} + +exports.getAbsoluteMaxRAM = function(_ram){ + const mem = os.totalmem() + const gT16 = mem-(16*1073741824) + return Math.floor((mem-(gT16 > 0 ? (Number.parseInt(gT16/8) + (16*1073741824)/4) : mem/4))/1073741824) +} + +function resolveSelectedRAM(ram) { + if(ram?.recommended != null) { + return `${ram.recommended}M` + } else { + // Legacy behavior + const mem = os.totalmem() + return mem >= (8*1073741824) ? '4G' : (mem >= (6*1073741824) ? '3G' : '2G') + } +} + +/** + * Three types of values: + * Static = Explicitly declared. + * Dynamic = Calculated by a private function. + * Resolved = Resolved externally, defaults to null. + */ +const DEFAULT_CONFIG = { + settings: { + game: { + resWidth: 1280, + resHeight: 720, + fullscreen: false, + autoConnect: true, + launchDetached: true + }, + launcher: { + allowPrerelease: false, + dataDirectory: dataPath + } + }, + newsCache: { + date: null, + content: null, + dismissed: false + }, + clientToken: null, + selectedServer: null, // Resolved + selectedAccount: null, + authenticationDatabase: {}, + modConfigurations: [], + javaConfig: {} +} + +let config = null + +// Persistance Utility Functions + +/** + * Save the current configuration to a file. + */ +exports.save = function(){ + fs.writeFileSync(configPath, JSON.stringify(config, null, 4), 'UTF-8') +} + +/** + * Load the configuration into memory. If a configuration file exists, + * that will be read and saved. Otherwise, a default configuration will + * be generated. Note that "resolved" values default to null and will + * need to be externally assigned. + */ +exports.load = function(){ + let doLoad = true + + if(!fs.existsSync(configPath)){ + // Create all parent directories. + fs.ensureDirSync(path.join(configPath, '..')) + if(fs.existsSync(configPathLEGACY)){ + fs.moveSync(configPathLEGACY, configPath) + } else { + doLoad = false + config = DEFAULT_CONFIG + exports.save() + } + } + if(doLoad){ + let doValidate = false + try { + config = JSON.parse(fs.readFileSync(configPath, 'UTF-8')) + doValidate = true + } catch (err){ + logger.error(err) + logger.info('Configuration file contains malformed JSON or is corrupt.') + logger.info('Generating a new configuration file.') + fs.ensureDirSync(path.join(configPath, '..')) + config = DEFAULT_CONFIG + exports.save() + } + if(doValidate){ + config = validateKeySet(DEFAULT_CONFIG, config) + exports.save() + } + } + logger.info('Successfully Loaded') +} + +/** + * @returns {boolean} Whether or not the manager has been loaded. + */ +exports.isLoaded = function(){ + return config != null +} + +/** + * Validate that the destination object has at least every field + * present in the source object. Assign a default value otherwise. + * + * @param {Object} srcObj The source object to reference against. + * @param {Object} destObj The destination object. + * @returns {Object} A validated destination object. + */ +function validateKeySet(srcObj, destObj){ + if(srcObj == null){ + srcObj = {} + } + const validationBlacklist = ['authenticationDatabase', 'javaConfig'] + const keys = Object.keys(srcObj) + for(let i=0; i} An array of each stored authenticated account. + */ +exports.getAuthAccounts = function(){ + return config.authenticationDatabase +} + +/** + * Returns the authenticated account with the given uuid. Value may + * be null. + * + * @param {string} uuid The uuid of the authenticated account. + * @returns {Object} The authenticated account with the given uuid. + */ +exports.getAuthAccount = function(uuid){ + return config.authenticationDatabase[uuid] +} + +/** + * Update the access token of an authenticated mojang account. + * + * @param {string} uuid The uuid of the authenticated account. + * @param {string} accessToken The new Access Token. + * + * @returns {Object} The authenticated account object created by this action. + */ +exports.updateMojangAuthAccount = function(uuid, accessToken){ + config.authenticationDatabase[uuid].accessToken = accessToken + config.authenticationDatabase[uuid].type = 'mojang' // For gradual conversion. + return config.authenticationDatabase[uuid] +} + +/** + * Adds an authenticated mojang account to the database to be stored. + * + * @param {string} uuid The uuid of the authenticated account. + * @param {string} accessToken The accessToken of the authenticated account. + * @param {string} username The username (usually email) of the authenticated account. + * @param {string} displayName The in game name of the authenticated account. + * + * @returns {Object} The authenticated account object created by this action. + */ +exports.addMojangAuthAccount = function(uuid, accessToken, username, displayName){ + config.selectedAccount = uuid + config.authenticationDatabase[uuid] = { + type: 'mojang', + accessToken, + username: username.trim(), + uuid: uuid.trim(), + displayName: displayName.trim() + } + return config.authenticationDatabase[uuid] +} + +/** + * Update the tokens of an authenticated microsoft account. + * + * @param {string} uuid The uuid of the authenticated account. + * @param {string} accessToken The new Access Token. + * @param {string} msAccessToken The new Microsoft Access Token + * @param {string} msRefreshToken The new Microsoft Refresh Token + * @param {date} msExpires The date when the microsoft access token expires + * @param {date} mcExpires The date when the mojang access token expires + * + * @returns {Object} The authenticated account object created by this action. + */ +exports.updateMicrosoftAuthAccount = function(uuid, accessToken, msAccessToken, msRefreshToken, msExpires, mcExpires) { + config.authenticationDatabase[uuid].accessToken = accessToken + config.authenticationDatabase[uuid].expiresAt = mcExpires + config.authenticationDatabase[uuid].microsoft.access_token = msAccessToken + config.authenticationDatabase[uuid].microsoft.refresh_token = msRefreshToken + config.authenticationDatabase[uuid].microsoft.expires_at = msExpires + return config.authenticationDatabase[uuid] +} + +/** + * Adds an authenticated microsoft account to the database to be stored. + * + * @param {string} uuid The uuid of the authenticated account. + * @param {string} accessToken The accessToken of the authenticated account. + * @param {string} name The in game name of the authenticated account. + * @param {date} mcExpires The date when the mojang access token expires + * @param {string} msAccessToken The microsoft access token + * @param {string} msRefreshToken The microsoft refresh token + * @param {date} msExpires The date when the microsoft access token expires + * + * @returns {Object} The authenticated account object created by this action. + */ +exports.addMicrosoftAuthAccount = function(uuid, accessToken, name, mcExpires, msAccessToken, msRefreshToken, msExpires) { + config.selectedAccount = uuid + config.authenticationDatabase[uuid] = { + type: 'microsoft', + accessToken, + username: name.trim(), + uuid: uuid.trim(), + displayName: name.trim(), + expiresAt: mcExpires, + microsoft: { + access_token: msAccessToken, + refresh_token: msRefreshToken, + expires_at: msExpires + } + } + return config.authenticationDatabase[uuid] +} + +/** + * Remove an authenticated account from the database. If the account + * was also the selected account, a new one will be selected. If there + * are no accounts, the selected account will be null. + * + * @param {string} uuid The uuid of the authenticated account. + * + * @returns {boolean} True if the account was removed, false if it never existed. + */ +exports.removeAuthAccount = function(uuid){ + if(config.authenticationDatabase[uuid] != null){ + delete config.authenticationDatabase[uuid] + if(config.selectedAccount === uuid){ + const keys = Object.keys(config.authenticationDatabase) + if(keys.length > 0){ + config.selectedAccount = keys[0] + } else { + config.selectedAccount = null + config.clientToken = null + } + } + return true + } + return false +} + +/** + * Get the currently selected authenticated account. + * + * @returns {Object} The selected authenticated account. + */ +exports.getSelectedAccount = function(){ + return config.authenticationDatabase[config.selectedAccount] +} + +/** + * Set the selected authenticated account. + * + * @param {string} uuid The UUID of the account which is to be set + * as the selected account. + * + * @returns {Object} The selected authenticated account. + */ +exports.setSelectedAccount = function(uuid){ + const authAcc = config.authenticationDatabase[uuid] + if(authAcc != null) { + config.selectedAccount = uuid + } + return authAcc +} + +/** + * Get an array of each mod configuration currently stored. + * + * @returns {Array.} An array of each stored mod configuration. + */ +exports.getModConfigurations = function(){ + return config.modConfigurations +} + +/** + * Set the array of stored mod configurations. + * + * @param {Array.} configurations An array of mod configurations. + */ +exports.setModConfigurations = function(configurations){ + config.modConfigurations = configurations +} + +/** + * Get the mod configuration for a specific server. + * + * @param {string} serverid The id of the server. + * @returns {Object} The mod configuration for the given server. + */ +exports.getModConfiguration = function(serverid){ + const cfgs = config.modConfigurations + for(let i=0; i 8) { + return defaultJavaConfig17(ram) + } else { + return defaultJavaConfig8(ram) + } +} + +function defaultJavaConfig8(ram) { + return { + minRAM: resolveSelectedRAM(ram), + maxRAM: resolveSelectedRAM(ram), + executable: null, + jvmOptions: [ + '-XX:+UseConcMarkSweepGC', + '-XX:+CMSIncrementalMode', + '-XX:-UseAdaptiveSizePolicy', + '-Xmn128M' + ], + } +} + +function defaultJavaConfig17(ram) { + return { + minRAM: resolveSelectedRAM(ram), + maxRAM: resolveSelectedRAM(ram), + executable: null, + jvmOptions: [ + '-XX:+UnlockExperimentalVMOptions', + '-XX:+UseG1GC', + '-XX:G1NewSizePercent=20', + '-XX:G1ReservePercent=20', + '-XX:MaxGCPauseMillis=50', + '-XX:G1HeapRegionSize=32M' + ], + } +} + +/** + * Ensure a java config property is set for the given server. + * + * @param {string} serverid The server id. + * @param {*} mcVersion The minecraft version of the server. + */ +exports.ensureJavaConfig = function(serverid, effectiveJavaOptions, ram) { + if(!Object.prototype.hasOwnProperty.call(config.javaConfig, serverid)) { + config.javaConfig[serverid] = defaultJavaConfig(effectiveJavaOptions, ram) + } +} + +/** + * Retrieve the minimum amount of memory for JVM initialization. This value + * contains the units of memory. For example, '5G' = 5 GigaBytes, '1024M' = + * 1024 MegaBytes, etc. + * + * @param {string} serverid The server id. + * @returns {string} The minimum amount of memory for JVM initialization. + */ +exports.getMinRAM = function(serverid){ + return config.javaConfig[serverid].minRAM +} + +/** + * Set the minimum amount of memory for JVM initialization. This value should + * contain the units of memory. For example, '5G' = 5 GigaBytes, '1024M' = + * 1024 MegaBytes, etc. + * + * @param {string} serverid The server id. + * @param {string} minRAM The new minimum amount of memory for JVM initialization. + */ +exports.setMinRAM = function(serverid, minRAM){ + config.javaConfig[serverid].minRAM = minRAM +} + +/** + * Retrieve the maximum amount of memory for JVM initialization. This value + * contains the units of memory. For example, '5G' = 5 GigaBytes, '1024M' = + * 1024 MegaBytes, etc. + * + * @param {string} serverid The server id. + * @returns {string} The maximum amount of memory for JVM initialization. + */ +exports.getMaxRAM = function(serverid){ + return config.javaConfig[serverid].maxRAM +} + +/** + * Set the maximum amount of memory for JVM initialization. This value should + * contain the units of memory. For example, '5G' = 5 GigaBytes, '1024M' = + * 1024 MegaBytes, etc. + * + * @param {string} serverid The server id. + * @param {string} maxRAM The new maximum amount of memory for JVM initialization. + */ +exports.setMaxRAM = function(serverid, maxRAM){ + config.javaConfig[serverid].maxRAM = maxRAM +} + +/** + * Retrieve the path of the Java Executable. + * + * This is a resolved configuration value and defaults to null until externally assigned. + * + * @param {string} serverid The server id. + * @returns {string} The path of the Java Executable. + */ +exports.getJavaExecutable = function(serverid){ + return config.javaConfig[serverid].executable +} + +/** + * Set the path of the Java Executable. + * + * @param {string} serverid The server id. + * @param {string} executable The new path of the Java Executable. + */ +exports.setJavaExecutable = function(serverid, executable){ + config.javaConfig[serverid].executable = executable +} + +/** + * Retrieve the additional arguments for JVM initialization. Required arguments, + * such as memory allocation, will be dynamically resolved and will not be included + * in this value. + * + * @param {string} serverid The server id. + * @returns {Array.} An array of the additional arguments for JVM initialization. + */ +exports.getJVMOptions = function(serverid){ + return config.javaConfig[serverid].jvmOptions +} + +/** + * Set the additional arguments for JVM initialization. Required arguments, + * such as memory allocation, will be dynamically resolved and should not be + * included in this value. + * + * @param {string} serverid The server id. + * @param {Array.} jvmOptions An array of the new additional arguments for JVM + * initialization. + */ +exports.setJVMOptions = function(serverid, jvmOptions){ + config.javaConfig[serverid].jvmOptions = jvmOptions +} + +// Game Settings + +/** + * Retrieve the width of the game window. + * + * @param {boolean} def Optional. If true, the default value will be returned. + * @returns {number} The width of the game window. + */ +exports.getGameWidth = function(def = false){ + return !def ? config.settings.game.resWidth : DEFAULT_CONFIG.settings.game.resWidth +} + +/** + * Set the width of the game window. + * + * @param {number} resWidth The new width of the game window. + */ +exports.setGameWidth = function(resWidth){ + config.settings.game.resWidth = Number.parseInt(resWidth) +} + +/** + * Validate a potential new width value. + * + * @param {number} resWidth The width value to validate. + * @returns {boolean} Whether or not the value is valid. + */ +exports.validateGameWidth = function(resWidth){ + const nVal = Number.parseInt(resWidth) + return Number.isInteger(nVal) && nVal >= 0 +} + +/** + * Retrieve the height of the game window. + * + * @param {boolean} def Optional. If true, the default value will be returned. + * @returns {number} The height of the game window. + */ +exports.getGameHeight = function(def = false){ + return !def ? config.settings.game.resHeight : DEFAULT_CONFIG.settings.game.resHeight +} + +/** + * Set the height of the game window. + * + * @param {number} resHeight The new height of the game window. + */ +exports.setGameHeight = function(resHeight){ + config.settings.game.resHeight = Number.parseInt(resHeight) +} + +/** + * Validate a potential new height value. + * + * @param {number} resHeight The height value to validate. + * @returns {boolean} Whether or not the value is valid. + */ +exports.validateGameHeight = function(resHeight){ + const nVal = Number.parseInt(resHeight) + return Number.isInteger(nVal) && nVal >= 0 +} + +/** + * Check if the game should be launched in fullscreen mode. + * + * @param {boolean} def Optional. If true, the default value will be returned. + * @returns {boolean} Whether or not the game is set to launch in fullscreen mode. + */ +exports.getFullscreen = function(def = false){ + return !def ? config.settings.game.fullscreen : DEFAULT_CONFIG.settings.game.fullscreen +} + +/** + * Change the status of if the game should be launched in fullscreen mode. + * + * @param {boolean} fullscreen Whether or not the game should launch in fullscreen mode. + */ +exports.setFullscreen = function(fullscreen){ + config.settings.game.fullscreen = fullscreen +} + +/** + * Check if the game should auto connect to servers. + * + * @param {boolean} def Optional. If true, the default value will be returned. + * @returns {boolean} Whether or not the game should auto connect to servers. + */ +exports.getAutoConnect = function(def = false){ + return !def ? config.settings.game.autoConnect : DEFAULT_CONFIG.settings.game.autoConnect +} + +/** + * Change the status of whether or not the game should auto connect to servers. + * + * @param {boolean} autoConnect Whether or not the game should auto connect to servers. + */ +exports.setAutoConnect = function(autoConnect){ + config.settings.game.autoConnect = autoConnect +} + +/** + * Check if the game should launch as a detached process. + * + * @param {boolean} def Optional. If true, the default value will be returned. + * @returns {boolean} Whether or not the game will launch as a detached process. + */ +exports.getLaunchDetached = function(def = false){ + return !def ? config.settings.game.launchDetached : DEFAULT_CONFIG.settings.game.launchDetached +} + +/** + * Change the status of whether or not the game should launch as a detached process. + * + * @param {boolean} launchDetached Whether or not the game should launch as a detached process. + */ +exports.setLaunchDetached = function(launchDetached){ + config.settings.game.launchDetached = launchDetached +} + +// Launcher Settings + +/** + * Check if the launcher should download prerelease versions. + * + * @param {boolean} def Optional. If true, the default value will be returned. + * @returns {boolean} Whether or not the launcher should download prerelease versions. + */ +exports.getAllowPrerelease = function(def = false){ + return !def ? config.settings.launcher.allowPrerelease : DEFAULT_CONFIG.settings.launcher.allowPrerelease +} + +/** + * Change the status of Whether or not the launcher should download prerelease versions. + * + * @param {boolean} launchDetached Whether or not the launcher should download prerelease versions. + */ +exports.setAllowPrerelease = function(allowPrerelease){ + config.settings.launcher.allowPrerelease = allowPrerelease +} \ No newline at end of file diff --git a/launcher/app/assets/js/discordwrapper.js b/launcher/app/assets/js/discordwrapper.js new file mode 100644 index 0000000..21ada52 --- /dev/null +++ b/launcher/app/assets/js/discordwrapper.js @@ -0,0 +1,4 @@ +// Discord RPC supprimĂ© (SurviePote) — stub no-op pour compat. +exports.initRPC = function(){} +exports.updateDetails = function(){} +exports.shutdownRPC = function(){} diff --git a/launcher/app/assets/js/distromanager.js b/launcher/app/assets/js/distromanager.js new file mode 100644 index 0000000..0a5c898 --- /dev/null +++ b/launcher/app/assets/js/distromanager.js @@ -0,0 +1,18 @@ +const { DistributionAPI } = require('helios-core/common') + +const ConfigManager = require('./configmanager') + +// Old WesterosCraft url. +// exports.REMOTE_DISTRO_URL = 'http://mc.westeroscraft.com/WesterosCraftLauncher/distribution.json' +// SurviePote prod: distribution.json servi en raw depuis le git (Gitea). +exports.REMOTE_DISTRO_URL = 'https://git.kisakay.com/k/mc/raw/branch/main/atlas/root/distribution.json' + +const api = new DistributionAPI( + ConfigManager.getLauncherDirectory(), + null, // Injected forcefully by the preloader. + null, // Injected forcefully by the preloader. + exports.REMOTE_DISTRO_URL, + false +) + +exports.DistroAPI = api \ No newline at end of file diff --git a/launcher/app/assets/js/dropinmodutil.js b/launcher/app/assets/js/dropinmodutil.js new file mode 100644 index 0000000..f816a20 --- /dev/null +++ b/launcher/app/assets/js/dropinmodutil.js @@ -0,0 +1,238 @@ +const fs = require('fs-extra') +const path = require('path') +const { ipcRenderer, shell } = require('electron') +const { SHELL_OPCODE } = require('./ipcconstants') + +// Group #1: File Name (without .disabled, if any) +// Group #2: File Extension (jar, zip, or litemod) +// Group #3: If it is disabled (if string 'disabled' is present) +const MOD_REGEX = /^(.+(jar|zip|litemod))(?:\.(disabled))?$/ +const DISABLED_EXT = '.disabled' + +const SHADER_REGEX = /^(.+)\.zip$/ +const SHADER_OPTION = /shaderPack=(.+)/ +const SHADER_DIR = 'shaderpacks' +const SHADER_CONFIG = 'optionsshaders.txt' + +/** + * Validate that the given directory exists. If not, it is + * created. + * + * @param {string} modsDir The path to the mods directory. + */ +exports.validateDir = function(dir) { + fs.ensureDirSync(dir) +} + +/** + * Scan for drop-in mods in both the mods folder and version + * safe mods folder. + * + * @param {string} modsDir The path to the mods directory. + * @param {string} version The minecraft version of the server configuration. + * + * @returns {{fullName: string, name: string, ext: string, disabled: boolean}[]} + * An array of objects storing metadata about each discovered mod. + */ +exports.scanForDropinMods = function(modsDir, version) { + const modsDiscovered = [] + if(fs.existsSync(modsDir)){ + let modCandidates = fs.readdirSync(modsDir) + let verCandidates = [] + const versionDir = path.join(modsDir, version) + if(fs.existsSync(versionDir)){ + verCandidates = fs.readdirSync(versionDir) + } + for(let file of modCandidates){ + const match = MOD_REGEX.exec(file) + if(match != null){ + modsDiscovered.push({ + fullName: match[0], + name: match[1], + ext: match[2], + disabled: match[3] != null + }) + } + } + for(let file of verCandidates){ + const match = MOD_REGEX.exec(file) + if(match != null){ + modsDiscovered.push({ + fullName: path.join(version, match[0]), + name: match[1], + ext: match[2], + disabled: match[3] != null + }) + } + } + } + return modsDiscovered +} + +/** + * Add dropin mods. + * + * @param {FileList} files The files to add. + * @param {string} modsDir The path to the mods directory. + */ +exports.addDropinMods = function(files, modsdir) { + + exports.validateDir(modsdir) + + for(let f of files) { + if(MOD_REGEX.exec(f.name) != null) { + fs.moveSync(f.path, path.join(modsdir, f.name)) + } + } + +} + +/** + * Delete a drop-in mod from the file system. + * + * @param {string} modsDir The path to the mods directory. + * @param {string} fullName The fullName of the discovered mod to delete. + * + * @returns {Promise.} True if the mod was deleted, otherwise false. + */ +exports.deleteDropinMod = async function(modsDir, fullName){ + + const res = await ipcRenderer.invoke(SHELL_OPCODE.TRASH_ITEM, path.join(modsDir, fullName)) + + if(!res.result) { + shell.beep() + console.error('Error deleting drop-in mod.', res.error) + return false + } + + return true +} + +/** + * Toggle a discovered mod on or off. This is achieved by either + * adding or disabling the .disabled extension to the local file. + * + * @param {string} modsDir The path to the mods directory. + * @param {string} fullName The fullName of the discovered mod to toggle. + * @param {boolean} enable Whether to toggle on or off the mod. + * + * @returns {Promise.} A promise which resolves when the mod has + * been toggled. If an IO error occurs the promise will be rejected. + */ +exports.toggleDropinMod = function(modsDir, fullName, enable){ + return new Promise((resolve, reject) => { + const oldPath = path.join(modsDir, fullName) + const newPath = path.join(modsDir, enable ? fullName.substring(0, fullName.indexOf(DISABLED_EXT)) : fullName + DISABLED_EXT) + + fs.rename(oldPath, newPath, (err) => { + if(err){ + reject(err) + } else { + resolve() + } + }) + }) +} + +/** + * Check if a drop-in mod is enabled. + * + * @param {string} fullName The fullName of the discovered mod to toggle. + * @returns {boolean} True if the mod is enabled, otherwise false. + */ +exports.isDropinModEnabled = function(fullName){ + return !fullName.endsWith(DISABLED_EXT) +} + +/** + * Scan for shaderpacks inside the shaderpacks folder. + * + * @param {string} instanceDir The path to the server instance directory. + * + * @returns {{fullName: string, name: string}[]} + * An array of objects storing metadata about each discovered shaderpack. + */ +exports.scanForShaderpacks = function(instanceDir){ + const shaderDir = path.join(instanceDir, SHADER_DIR) + const packsDiscovered = [{ + fullName: 'OFF', + name: 'Off (Default)' + }] + if(fs.existsSync(shaderDir)){ + let modCandidates = fs.readdirSync(shaderDir) + for(let file of modCandidates){ + const match = SHADER_REGEX.exec(file) + if(match != null){ + packsDiscovered.push({ + fullName: match[0], + name: match[1] + }) + } + } + } + return packsDiscovered +} + +/** + * Read the optionsshaders.txt file to locate the current + * enabled pack. If the file does not exist, OFF is returned. + * + * @param {string} instanceDir The path to the server instance directory. + * + * @returns {string} The file name of the enabled shaderpack. + */ +exports.getEnabledShaderpack = function(instanceDir){ + exports.validateDir(instanceDir) + + const optionsShaders = path.join(instanceDir, SHADER_CONFIG) + if(fs.existsSync(optionsShaders)){ + const buf = fs.readFileSync(optionsShaders, {encoding: 'utf-8'}) + const match = SHADER_OPTION.exec(buf) + if(match != null){ + return match[1] + } else { + console.warn('WARNING: Shaderpack regex failed.') + } + } + return 'OFF' +} + +/** + * Set the enabled shaderpack. + * + * @param {string} instanceDir The path to the server instance directory. + * @param {string} pack the file name of the shaderpack. + */ +exports.setEnabledShaderpack = function(instanceDir, pack){ + exports.validateDir(instanceDir) + + const optionsShaders = path.join(instanceDir, SHADER_CONFIG) + let buf + if(fs.existsSync(optionsShaders)){ + buf = fs.readFileSync(optionsShaders, {encoding: 'utf-8'}) + buf = buf.replace(SHADER_OPTION, `shaderPack=${pack}`) + } else { + buf = `shaderPack=${pack}` + } + fs.writeFileSync(optionsShaders, buf, {encoding: 'utf-8'}) +} + +/** + * Add shaderpacks. + * + * @param {FileList} files The files to add. + * @param {string} instanceDir The path to the server instance directory. + */ +exports.addShaderpacks = function(files, instanceDir) { + + const p = path.join(instanceDir, SHADER_DIR) + + exports.validateDir(p) + + for(let f of files) { + if(SHADER_REGEX.exec(f.name) != null) { + fs.moveSync(f.path, path.join(p, f.name)) + } + } + +} \ No newline at end of file diff --git a/launcher/app/assets/js/ipcconstants.js b/launcher/app/assets/js/ipcconstants.js new file mode 100644 index 0000000..4aa535e --- /dev/null +++ b/launcher/app/assets/js/ipcconstants.js @@ -0,0 +1,29 @@ +// NOTE FOR THIRD-PARTY +// TODO(SurviePote): crĂ©e une app Entra ID et remplace cet ID. +// SEE https://github.com/dscalzi/HeliosLauncher/blob/master/docs/MicrosoftAuth.md +// Docs: launcher/docs/MicrosoftAuth.md +exports.AZURE_CLIENT_ID = '1ce6e35a-126f-48fd-97fb-54d143ac6d45' // TODO: remplacer par ton Application (client) ID +// SEE NOTE ABOVE. + + +// Opcodes +exports.MSFT_OPCODE = { + OPEN_LOGIN: 'MSFT_AUTH_OPEN_LOGIN', + OPEN_LOGOUT: 'MSFT_AUTH_OPEN_LOGOUT', + REPLY_LOGIN: 'MSFT_AUTH_REPLY_LOGIN', + REPLY_LOGOUT: 'MSFT_AUTH_REPLY_LOGOUT' +} +// Reply types for REPLY opcode. +exports.MSFT_REPLY_TYPE = { + SUCCESS: 'MSFT_AUTH_REPLY_SUCCESS', + ERROR: 'MSFT_AUTH_REPLY_ERROR' +} +// Error types for ERROR reply. +exports.MSFT_ERROR = { + ALREADY_OPEN: 'MSFT_AUTH_ERR_ALREADY_OPEN', + NOT_FINISHED: 'MSFT_AUTH_ERR_NOT_FINISHED' +} + +exports.SHELL_OPCODE = { + TRASH_ITEM: 'TRASH_ITEM' +} \ No newline at end of file diff --git a/launcher/app/assets/js/isdev.js b/launcher/app/assets/js/isdev.js new file mode 100644 index 0000000..1ed55e5 --- /dev/null +++ b/launcher/app/assets/js/isdev.js @@ -0,0 +1,5 @@ +'use strict' +const getFromEnv = parseInt(process.env.ELECTRON_IS_DEV, 10) === 1 +const isEnvSet = 'ELECTRON_IS_DEV' in process.env + +module.exports = isEnvSet ? getFromEnv : (process.defaultApp || /node_modules[\\/]electron[\\/]/.test(process.execPath)) \ No newline at end of file diff --git a/launcher/app/assets/js/langloader.js b/launcher/app/assets/js/langloader.js new file mode 100644 index 0000000..b1f13c9 --- /dev/null +++ b/launcher/app/assets/js/langloader.js @@ -0,0 +1,43 @@ +const fs = require('fs-extra') +const path = require('path') +const toml = require('toml') +const merge = require('lodash.merge') + +let lang + +exports.loadLanguage = function(id){ + lang = merge(lang || {}, toml.parse(fs.readFileSync(path.join(__dirname, '..', 'lang', `${id}.toml`))) || {}) +} + +exports.query = function(id, placeHolders){ + let query = id.split('.') + let res = lang + for(let q of query){ + res = res[q] + } + let text = res === lang ? '' : res + if (placeHolders) { + Object.entries(placeHolders).forEach(([key, value]) => { + text = text.replace(`{${key}}`, value) + }) + } + return text +} + +exports.queryJS = function(id, placeHolders){ + return exports.query(`js.${id}`, placeHolders) +} + +exports.queryEJS = function(id, placeHolders){ + return exports.query(`ejs.${id}`, placeHolders) +} + +exports.setupLanguage = function(){ + // Load Language Files + exports.loadLanguage('en_US') + // Uncomment this when translations are ready + //exports.loadLanguage('xx_XX') + + // Load Custom Language File for Launcher Customizer + exports.loadLanguage('_custom') +} \ No newline at end of file diff --git a/launcher/app/assets/js/preloader.js b/launcher/app/assets/js/preloader.js new file mode 100644 index 0000000..95ead73 --- /dev/null +++ b/launcher/app/assets/js/preloader.js @@ -0,0 +1,67 @@ +const {ipcRenderer} = require('electron') +const fs = require('fs-extra') +const os = require('os') +const path = require('path') + +const ConfigManager = require('./configmanager') +const { DistroAPI } = require('./distromanager') +const LangLoader = require('./langloader') +const { LoggerUtil } = require('helios-core') +// eslint-disable-next-line no-unused-vars +const { HeliosDistribution } = require('helios-core/common') + +const logger = LoggerUtil.getLogger('Preloader') + +logger.info('Loading..') + +// Load ConfigManager +ConfigManager.load() + +// Yuck! +// TODO Fix this +DistroAPI['commonDir'] = ConfigManager.getCommonDirectory() +DistroAPI['instanceDir'] = ConfigManager.getInstanceDirectory() + +// Load Strings +LangLoader.setupLanguage() + +/** + * + * @param {HeliosDistribution} data + */ +function onDistroLoad(data){ + if(data != null){ + + // Resolve the selected server if its value has yet to be set. + if(ConfigManager.getSelectedServer() == null || data.getServerById(ConfigManager.getSelectedServer()) == null){ + logger.info('Determining default selected server..') + ConfigManager.setSelectedServer(data.getMainServer().rawServer.id) + ConfigManager.save() + } + } + ipcRenderer.send('distributionIndexDone', data != null) +} + +// Ensure Distribution is downloaded and cached. +DistroAPI.getDistribution() + .then(heliosDistro => { + logger.info('Loaded distribution index.') + + onDistroLoad(heliosDistro) + }) + .catch(err => { + logger.info('Failed to load an older version of the distribution index.') + logger.info('Application cannot run.') + logger.error(err) + + onDistroLoad(null) + }) + +// Clean up temp dir incase previous launches ended unexpectedly. +fs.remove(path.join(os.tmpdir(), ConfigManager.getTempNativeFolder()), (err) => { + if(err){ + logger.warn('Error while cleaning natives directory', err) + } else { + logger.info('Cleaned natives directory.') + } +}) \ No newline at end of file diff --git a/launcher/app/assets/js/processbuilder.js b/launcher/app/assets/js/processbuilder.js new file mode 100644 index 0000000..a0bdb0f --- /dev/null +++ b/launcher/app/assets/js/processbuilder.js @@ -0,0 +1,892 @@ +const AdmZip = require('adm-zip') +const child_process = require('child_process') +const crypto = require('crypto') +const fs = require('fs-extra') +const { LoggerUtil } = require('helios-core') +const { getMojangOS, isLibraryCompatible, mcVersionAtLeast } = require('helios-core/common') +const { Type } = require('helios-distribution-types') +const os = require('os') +const path = require('path') + +const ConfigManager = require('./configmanager') + +const logger = LoggerUtil.getLogger('ProcessBuilder') + + +/** + * Only forge and fabric are top level mod loaders. + * + * Forge 1.13+ launch logic is similar to fabrics, for now using usingFabricLoader flag to + * change minor details when needed. + * + * Rewrite of this module may be needed in the future. + */ +class ProcessBuilder { + + constructor(distroServer, vanillaManifest, modManifest, authUser, launcherVersion){ + this.gameDir = path.join(ConfigManager.getInstanceDirectory(), distroServer.rawServer.id) + this.commonDir = ConfigManager.getCommonDirectory() + this.server = distroServer + this.vanillaManifest = vanillaManifest + this.modManifest = modManifest + this.authUser = authUser + this.launcherVersion = launcherVersion + this.forgeModListFile = path.join(this.gameDir, 'forgeMods.list') // 1.13+ + this.fmlDir = path.join(this.gameDir, 'forgeModList.json') + this.llDir = path.join(this.gameDir, 'liteloaderModList.json') + this.libPath = path.join(this.commonDir, 'libraries') + + this.usingLiteLoader = false + this.usingFabricLoader = false + this.llPath = null + } + + /** + * Convienence method to run the functions typically used to build a process. + */ + build(){ + fs.ensureDirSync(this.gameDir) + const tempNativePath = path.join(os.tmpdir(), ConfigManager.getTempNativeFolder(), crypto.pseudoRandomBytes(16).toString('hex')) + process.throwDeprecation = true + this.setupLiteLoader() + logger.info('Using liteloader:', this.usingLiteLoader) + this.usingFabricLoader = this.server.modules.some(mdl => mdl.rawModule.type === Type.Fabric) + logger.info('Using fabric loader:', this.usingFabricLoader) + const modObj = this.resolveModConfiguration(ConfigManager.getModConfiguration(this.server.rawServer.id).mods, this.server.modules) + + // Mod list below 1.13 + // Fabric only supports 1.14+ + if(!mcVersionAtLeast('1.13', this.server.rawServer.minecraftVersion)){ + this.constructJSONModList('forge', modObj.fMods, true) + if(this.usingLiteLoader){ + this.constructJSONModList('liteloader', modObj.lMods, true) + } + } + + const uberModArr = modObj.fMods.concat(modObj.lMods) + let args = this.constructJVMArguments(uberModArr, tempNativePath) + + if(mcVersionAtLeast('1.13', this.server.rawServer.minecraftVersion)){ + //args = args.concat(this.constructModArguments(modObj.fMods)) + args = args.concat(this.constructModList(modObj.fMods)) + } + + // Hide access token + const loggableArgs = [...args] + loggableArgs[loggableArgs.findIndex(x => x === this.authUser.accessToken)] = '**********' + + logger.info('Launch Arguments:', loggableArgs) + + const child = child_process.spawn(ConfigManager.getJavaExecutable(this.server.rawServer.id), args, { + cwd: this.gameDir, + detached: ConfigManager.getLaunchDetached() + }) + + if(ConfigManager.getLaunchDetached()){ + child.unref() + } + + child.stdout.setEncoding('utf8') + child.stderr.setEncoding('utf8') + + child.stdout.on('data', (data) => { + data.trim().split('\n').forEach(x => console.log(`\x1b[32m[Minecraft]\x1b[0m ${x}`)) + + }) + child.stderr.on('data', (data) => { + data.trim().split('\n').forEach(x => console.log(`\x1b[31m[Minecraft]\x1b[0m ${x}`)) + }) + child.on('close', (code) => { + logger.info('Exited with code', code) + fs.remove(tempNativePath, (err) => { + if(err){ + logger.warn('Error while deleting temp dir', err) + } else { + logger.info('Temp dir deleted successfully.') + } + }) + }) + + return child + } + + /** + * Get the platform specific classpath separator. On windows, this is a semicolon. + * On Unix, this is a colon. + * + * @returns {string} The classpath separator for the current operating system. + */ + static getClasspathSeparator() { + return process.platform === 'win32' ? ';' : ':' + } + + /** + * Determine if an optional mod is enabled from its configuration value. If the + * configuration value is null, the required object will be used to + * determine if it is enabled. + * + * A mod is enabled if: + * * The configuration is not null and one of the following: + * * The configuration is a boolean and true. + * * The configuration is an object and its 'value' property is true. + * * The configuration is null and one of the following: + * * The required object is null. + * * The required object's 'def' property is null or true. + * + * @param {Object | boolean} modCfg The mod configuration object. + * @param {Object} required Optional. The required object from the mod's distro declaration. + * @returns {boolean} True if the mod is enabled, false otherwise. + */ + static isModEnabled(modCfg, required = null){ + return modCfg != null ? ((typeof modCfg === 'boolean' && modCfg) || (typeof modCfg === 'object' && (typeof modCfg.value !== 'undefined' ? modCfg.value : true))) : required != null ? required.def : true + } + + /** + * Function which performs a preliminary scan of the top level + * mods. If liteloader is present here, we setup the special liteloader + * launch options. Note that liteloader is only allowed as a top level + * mod. It must not be declared as a submodule. + */ + setupLiteLoader(){ + for(let ll of this.server.modules){ + if(ll.rawModule.type === Type.LiteLoader){ + if(!ll.getRequired().value){ + const modCfg = ConfigManager.getModConfiguration(this.server.rawServer.id).mods + if(ProcessBuilder.isModEnabled(modCfg[ll.getVersionlessMavenIdentifier()], ll.getRequired())){ + if(fs.existsSync(ll.getPath())){ + this.usingLiteLoader = true + this.llPath = ll.getPath() + } + } + } else { + if(fs.existsSync(ll.getPath())){ + this.usingLiteLoader = true + this.llPath = ll.getPath() + } + } + } + } + } + + /** + * Resolve an array of all enabled mods. These mods will be constructed into + * a mod list format and enabled at launch. + * + * @param {Object} modCfg The mod configuration object. + * @param {Array.} mdls An array of modules to parse. + * @returns {{fMods: Array., lMods: Array.}} An object which contains + * a list of enabled forge mods and litemods. + */ + resolveModConfiguration(modCfg, mdls){ + let fMods = [] + let lMods = [] + + for(let mdl of mdls){ + const type = mdl.rawModule.type + if(type === Type.ForgeMod || type === Type.LiteMod || type === Type.LiteLoader || type === Type.FabricMod){ + const o = !mdl.getRequired().value + const e = ProcessBuilder.isModEnabled(modCfg[mdl.getVersionlessMavenIdentifier()], mdl.getRequired()) + if(!o || (o && e)){ + if(mdl.subModules.length > 0){ + const v = this.resolveModConfiguration(modCfg[mdl.getVersionlessMavenIdentifier()].mods, mdl.subModules) + fMods = fMods.concat(v.fMods) + lMods = lMods.concat(v.lMods) + if(type === Type.LiteLoader){ + continue + } + } + if(type === Type.ForgeMod || type === Type.FabricMod){ + fMods.push(mdl) + } else { + lMods.push(mdl) + } + } + } + } + + return { + fMods, + lMods + } + } + + _lteMinorVersion(version) { + return Number(this.modManifest.id.split('-')[0].split('.')[1]) <= Number(version) + } + + /** + * Test to see if this version of forge requires the absolute: prefix + * on the modListFile repository field. + */ + _requiresAbsolute(){ + try { + if(this._lteMinorVersion(9)) { + return false + } + const ver = this.modManifest.id.split('-')[2] + const pts = ver.split('.') + const min = [14, 23, 3, 2655] + for(let i=0; i min[i]){ + return true + } + } + } catch (_err) { + // We know old forge versions follow this format. + // Error must be caused by newer version. + } + + // Equal or errored + return true + } + + /** + * Construct a mod list json object. + * + * @param {'forge' | 'liteloader'} type The mod list type to construct. + * @param {Array.} mods An array of mods to add to the mod list. + * @param {boolean} save Optional. Whether or not we should save the mod list file. + */ + constructJSONModList(type, mods, save = false){ + const modList = { + repositoryRoot: ((type === 'forge' && this._requiresAbsolute()) ? 'absolute:' : '') + path.join(this.commonDir, 'modstore') + } + + const ids = [] + if(type === 'forge'){ + for(let mod of mods){ + ids.push(mod.getExtensionlessMavenIdentifier()) + } + } else { + for(let mod of mods){ + ids.push(mod.getMavenIdentifier()) + } + } + modList.modRef = ids + + if(save){ + const json = JSON.stringify(modList, null, 4) + fs.writeFileSync(type === 'forge' ? this.fmlDir : this.llDir, json, 'UTF-8') + } + + return modList + } + + // /** + // * Construct the mod argument list for forge 1.13 + // * + // * @param {Array.} mods An array of mods to add to the mod list. + // */ + // constructModArguments(mods){ + // const argStr = mods.map(mod => { + // return mod.getExtensionlessMavenIdentifier() + // }).join(',') + + // if(argStr){ + // return [ + // '--fml.mavenRoots', + // path.join('..', '..', 'common', 'modstore'), + // '--fml.mods', + // argStr + // ] + // } else { + // return [] + // } + + // } + + /** + * Construct the mod argument list for forge 1.13 and Fabric + * + * @param {Array.} mods An array of mods to add to the mod list. + */ + constructModList(mods) { + const writeBuffer = mods.map(mod => { + return this.usingFabricLoader ? mod.getPath() : mod.getExtensionlessMavenIdentifier() + }).join('\n') + + if(writeBuffer) { + fs.writeFileSync(this.forgeModListFile, writeBuffer, 'UTF-8') + return this.usingFabricLoader ? [ + '--fabric.addMods', + `@${this.forgeModListFile}` + ] : [ + '--fml.mavenRoots', + path.join('..', '..', 'common', 'modstore'), + '--fml.modLists', + this.forgeModListFile + ] + } else { + return [] + } + + } + + _processAutoConnectArg(args){ + if(ConfigManager.getAutoConnect() && this.server.rawServer.autoconnect){ + if(mcVersionAtLeast('1.20', this.server.rawServer.minecraftVersion)){ + args.push('--quickPlayMultiplayer') + args.push(`${this.server.hostname}:${this.server.port}`) + } else { + args.push('--server') + args.push(this.server.hostname) + args.push('--port') + args.push(this.server.port) + } + } + } + + /** + * Construct the argument array that will be passed to the JVM process. + * + * @param {Array.} mods An array of enabled mods which will be launched with this process. + * @param {string} tempNativePath The path to store the native libraries. + * @returns {Array.} An array containing the full JVM arguments for this process. + */ + constructJVMArguments(mods, tempNativePath){ + if(mcVersionAtLeast('1.13', this.server.rawServer.minecraftVersion)){ + return this._constructJVMArguments113(mods, tempNativePath) + } else { + return this._constructJVMArguments112(mods, tempNativePath) + } + } + + /** + * Construct the argument array that will be passed to the JVM process. + * This function is for 1.12 and below. + * + * @param {Array.} mods An array of enabled mods which will be launched with this process. + * @param {string} tempNativePath The path to store the native libraries. + * @returns {Array.} An array containing the full JVM arguments for this process. + */ + _constructJVMArguments112(mods, tempNativePath){ + + let args = [] + + // Classpath Argument + args.push('-cp') + args.push(this.classpathArg(mods, tempNativePath).join(ProcessBuilder.getClasspathSeparator())) + + // Java Arguments + if(process.platform === 'darwin'){ + args.push('-Xdock:name=HeliosLauncher') + args.push('-Xdock:icon=' + path.join(__dirname, '..', 'images', 'minecraft.icns')) + } + args.push('-Xmx' + ConfigManager.getMaxRAM(this.server.rawServer.id)) + args.push('-Xms' + ConfigManager.getMinRAM(this.server.rawServer.id)) + args = args.concat(ConfigManager.getJVMOptions(this.server.rawServer.id)) + args.push('-Djava.library.path=' + tempNativePath) + + // Main Java Class + args.push(this.modManifest.mainClass) + + // Forge Arguments + args = args.concat(this._resolveForgeArgs()) + + return args + } + + /** + * Construct the argument array that will be passed to the JVM process. + * This function is for 1.13+ + * + * Note: Required Libs https://github.com/MinecraftForge/MinecraftForge/blob/af98088d04186452cb364280340124dfd4766a5c/src/fmllauncher/java/net/minecraftforge/fml/loading/LibraryFinder.java#L82 + * + * @param {Array.} mods An array of enabled mods which will be launched with this process. + * @param {string} tempNativePath The path to store the native libraries. + * @returns {Array.} An array containing the full JVM arguments for this process. + */ + _constructJVMArguments113(mods, tempNativePath){ + + const argDiscovery = /\${*(.*)}/ + + // JVM Arguments First + let args = this.vanillaManifest.arguments.jvm + + // Debug securejarhandler + // args.push('-Dbsl.debug=true') + + if(this.modManifest.arguments.jvm != null) { + for(const argStr of this.modManifest.arguments.jvm) { + args.push(argStr + .replaceAll('${library_directory}', this.libPath) + .replaceAll('${classpath_separator}', ProcessBuilder.getClasspathSeparator()) + .replaceAll('${version_name}', this.modManifest.id) + ) + } + } + + //args.push('-Dlog4j.configurationFile=D:\\WesterosCraft\\game\\common\\assets\\log_configs\\client-1.12.xml') + + // Java Arguments + if(process.platform === 'darwin'){ + args.push('-Xdock:name=HeliosLauncher') + args.push('-Xdock:icon=' + path.join(__dirname, '..', 'images', 'minecraft.icns')) + } + args.push('-Xmx' + ConfigManager.getMaxRAM(this.server.rawServer.id)) + args.push('-Xms' + ConfigManager.getMinRAM(this.server.rawServer.id)) + args = args.concat(ConfigManager.getJVMOptions(this.server.rawServer.id)) + + // Main Java Class + args.push(this.modManifest.mainClass) + + // Vanilla Arguments + args = args.concat(this.vanillaManifest.arguments.game) + + for(let i=0; i { + return arg != null + }) + + return args + } + + /** + * Resolve the arguments required by forge. + * + * @returns {Array.} An array containing the arguments required by forge. + */ + _resolveForgeArgs(){ + const mcArgs = this.modManifest.minecraftArguments.split(' ') + const argDiscovery = /\${*(.*)}/ + + // Replace the declared variables with their proper values. + for(let i=0; i} list Array of classpath entries. + */ + _processClassPathList(list) { + + const ext = '.jar' + const extLen = ext.length + for(let i=0; i -1 && extIndex !== list[i].length - extLen) { + list[i] = list[i].substring(0, extIndex + extLen) + } + } + + } + + /** + * Resolve the full classpath argument list for this process. This method will resolve all Mojang-declared + * libraries as well as the libraries declared by the server. Since mods are permitted to declare libraries, + * this method requires all enabled mods as an input + * + * @param {Array.} mods An array of enabled mods which will be launched with this process. + * @param {string} tempNativePath The path to store the native libraries. + * @returns {Array.} An array containing the paths of each library required by this process. + */ + classpathArg(mods, tempNativePath){ + let cpArgs = [] + + if(!mcVersionAtLeast('1.17', this.server.rawServer.minecraftVersion) || this.usingFabricLoader) { + // Add the version.jar to the classpath. + // Must not be added to the classpath for Forge 1.17+. + const version = this.vanillaManifest.id + cpArgs.push(path.join(this.commonDir, 'versions', version, version + '.jar')) + } + + + if(this.usingLiteLoader){ + cpArgs.push(this.llPath) + } + + // Resolve the Mojang declared libraries. + const mojangLibs = this._resolveMojangLibraries(tempNativePath) + + // Resolve the server declared libraries. + const servLibs = this._resolveServerLibraries(mods) + + // Merge libraries, server libs with the same + // maven identifier will override the mojang ones. + // Ex. 1.7.10 forge overrides mojang's guava with newer version. + const finalLibs = {...mojangLibs, ...servLibs} + cpArgs = cpArgs.concat(Object.values(finalLibs)) + + this._processClassPathList(cpArgs) + + return cpArgs + } + + /** + * Resolve the libraries defined by Mojang's version data. This method will also extract + * native libraries and point to the correct location for its classpath. + * + * TODO - clean up function + * + * @param {string} tempNativePath The path to store the native libraries. + * @returns {{[id: string]: string}} An object containing the paths of each library mojang declares. + */ + _resolveMojangLibraries(tempNativePath){ + const nativesRegex = /.+:natives-([^-]+)(?:-(.+))?/ + const libs = {} + + const libArr = this.vanillaManifest.libraries + fs.ensureDirSync(tempNativePath) + for(let i=0; i -1){ + shouldExclude = true + } + }) + + // Extract the file. + if(!shouldExclude){ + fs.writeFile(path.join(tempNativePath, fileName), zipEntries[i].getData(), (err) => { + if(err){ + logger.error('Error while extracting native library:', err) + } + }) + } + + } + } + // 1.19+ logic + else if(lib.name.includes('natives-')) { + + const regexTest = nativesRegex.exec(lib.name) + // const os = regexTest[1] + const arch = regexTest[2] ?? 'x64' + + if(arch != process.arch) { + continue + } + + // Extract the native library. + const exclusionArr = lib.extract != null ? lib.extract.exclude : ['META-INF/', '.git', '.sha1'] + const artifact = lib.downloads.artifact + + // Location of native zip. + const to = path.join(this.libPath, artifact.path) + + let zip = new AdmZip(to) + let zipEntries = zip.getEntries() + + // Unzip the native zip. + for(let i=0; i -1){ + shouldExclude = true + } + }) + + const extractName = fileName.includes('/') ? fileName.substring(fileName.lastIndexOf('/')) : fileName + + // Extract the file. + if(!shouldExclude){ + fs.writeFile(path.join(tempNativePath, extractName), zipEntries[i].getData(), (err) => { + if(err){ + logger.error('Error while extracting native library:', err) + } + }) + } + + } + } + // No natives + else { + const dlInfo = lib.downloads + const artifact = dlInfo.artifact + const to = path.join(this.libPath, artifact.path) + const versionIndependentId = lib.name.substring(0, lib.name.lastIndexOf(':')) + libs[versionIndependentId] = to + } + } + } + + return libs + } + + /** + * Resolve the libraries declared by this server in order to add them to the classpath. + * This method will also check each enabled mod for libraries, as mods are permitted to + * declare libraries. + * + * @param {Array.} mods An array of enabled mods which will be launched with this process. + * @returns {{[id: string]: string}} An object containing the paths of each library this server requires. + */ + _resolveServerLibraries(mods){ + const mdls = this.server.modules + let libs = {} + + // Locate Forge/Fabric/Libraries + for(let mdl of mdls){ + const type = mdl.rawModule.type + if(type === Type.ForgeHosted || type === Type.Fabric || type === Type.Library){ + libs[mdl.getVersionlessMavenIdentifier()] = mdl.getPath() + if(mdl.subModules.length > 0){ + const res = this._resolveModuleLibraries(mdl) + libs = {...libs, ...res} + } + } + } + + //Check for any libraries in our mod list. + for(let i=0; i 0){ + const res = this._resolveModuleLibraries(sm) + libs = {...libs, ...res} + } + } + return libs + } + +} + +module.exports = ProcessBuilder \ No newline at end of file diff --git a/launcher/app/assets/js/scripts/landing.js b/launcher/app/assets/js/scripts/landing.js new file mode 100644 index 0000000..3e86286 --- /dev/null +++ b/launcher/app/assets/js/scripts/landing.js @@ -0,0 +1,1000 @@ +/** + * Script for landing.ejs + */ +// Requirements +const { URL } = require('url') +const { + MojangRestAPI, + getServerStatus +} = require('helios-core/mojang') +const { + RestResponseStatus, + isDisplayableError, + validateLocalFile +} = require('helios-core/common') +const { + FullRepair, + DistributionIndexProcessor, + MojangIndexProcessor, + downloadFile +} = require('helios-core/dl') +const { + validateSelectedJvm, + ensureJavaDirIsRoot, + javaExecFromRoot, + discoverBestJvmInstallation, + latestOpenJDK, + extractJdk +} = require('helios-core/java') + +// Internal Requirements +const DiscordWrapper = require('./assets/js/discordwrapper') +const ProcessBuilder = require('./assets/js/processbuilder') + +// Launch Elements +const launch_content = document.getElementById('launch_content') +const launch_details = document.getElementById('launch_details') +const launch_progress = document.getElementById('launch_progress') +const launch_progress_label = document.getElementById('launch_progress_label') +const launch_details_text = document.getElementById('launch_details_text') +const server_selection_button = document.getElementById('server_selection_button') +const user_text = document.getElementById('user_text') + +const loggerLanding = LoggerUtil.getLogger('Landing') + +/* Launch Progress Wrapper Functions */ + +/** + * Show/hide the loading area. + * + * @param {boolean} loading True if the loading area should be shown, otherwise false. + */ +function toggleLaunchArea(loading){ + if(loading){ + launch_details.style.display = 'flex' + launch_content.style.display = 'none' + } else { + launch_details.style.display = 'none' + launch_content.style.display = 'inline-flex' + } +} + +/** + * Set the details text of the loading area. + * + * @param {string} details The new text for the loading details. + */ +function setLaunchDetails(details){ + launch_details_text.innerHTML = details +} + +/** + * Set the value of the loading progress bar and display that value. + * + * @param {number} percent Percentage (0-100) + */ +function setLaunchPercentage(percent){ + launch_progress.setAttribute('max', 100) + launch_progress.setAttribute('value', percent) + launch_progress_label.innerHTML = percent + '%' +} + +/** + * Set the value of the OS progress bar and display that on the UI. + * + * @param {number} percent Percentage (0-100) + */ +function setDownloadPercentage(percent){ + remote.getCurrentWindow().setProgressBar(percent/100) + setLaunchPercentage(percent) +} + +/** + * Enable or disable the launch button. + * + * @param {boolean} val True to enable, false to disable. + */ +function setLaunchEnabled(val){ + document.getElementById('launch_button').disabled = !val +} + +// Bind launch button +document.getElementById('launch_button').addEventListener('click', async e => { + loggerLanding.info('Launching game..') + try { + const server = (await DistroAPI.getDistribution()).getServerById(ConfigManager.getSelectedServer()) + const jExe = ConfigManager.getJavaExecutable(ConfigManager.getSelectedServer()) + if(jExe == null){ + await asyncSystemScan(server.effectiveJavaOptions) + } else { + + setLaunchDetails(Lang.queryJS('landing.launch.pleaseWait')) + toggleLaunchArea(true) + setLaunchPercentage(0, 100) + + const details = await validateSelectedJvm(ensureJavaDirIsRoot(jExe), server.effectiveJavaOptions.supported) + if(details != null){ + loggerLanding.info('Jvm Details', details) + await dlAsync() + + } else { + await asyncSystemScan(server.effectiveJavaOptions) + } + } + } catch(err) { + loggerLanding.error('Unhandled error in during launch process.', err) + showLaunchFailure(Lang.queryJS('landing.launch.failureTitle'), Lang.queryJS('landing.launch.failureText')) + } +}) + +// Bind settings button +document.getElementById('settingsMediaButton').onclick = async e => { + await prepareSettings() + switchView(getCurrentView(), VIEWS.settings) +} + +// Bind avatar overlay button. +document.getElementById('avatarOverlay').onclick = async e => { + await prepareSettings() + switchView(getCurrentView(), VIEWS.settings, 500, 500, () => { + settingsNavItemListener(document.getElementById('settingsNavAccount'), false) + }) +} + +// Bind selected account +function updateSelectedAccount(authUser){ + let username = Lang.queryJS('landing.selectedAccount.noAccountSelected') + if(authUser != null){ + if(authUser.displayName != null){ + username = authUser.displayName + } + if(authUser.uuid != null){ + document.getElementById('avatarContainer').style.backgroundImage = `url('https://mc-heads.net/body/${authUser.uuid}/right')` + } + } + user_text.innerHTML = username +} +updateSelectedAccount(ConfigManager.getSelectedAccount()) + +// Bind selected server +function updateSelectedServer(serv){ + if(getCurrentView() === VIEWS.settings){ + fullSettingsSave() + } + ConfigManager.setSelectedServer(serv != null ? serv.rawServer.id : null) + ConfigManager.save() + server_selection_button.innerHTML = '• ' + (serv != null ? serv.rawServer.name : Lang.queryJS('landing.noSelection')) + if(getCurrentView() === VIEWS.settings){ + animateSettingsTabRefresh() + } + setLaunchEnabled(serv != null) +} +// Real text is set in uibinder.js on distributionIndexDone. +server_selection_button.innerHTML = '• ' + Lang.queryJS('landing.selectedServer.loading') +server_selection_button.onclick = async e => { + e.target.blur() + await toggleServerSelection(true) +} + +// Update Mojang Status Color +const refreshMojangStatuses = async function(){ + loggerLanding.info('Refreshing Mojang Statuses..') + + let status = 'grey' + let tooltipEssentialHTML = '' + let tooltipNonEssentialHTML = '' + + const response = await MojangRestAPI.status() + let statuses + if(response.responseStatus === RestResponseStatus.SUCCESS) { + statuses = response.data + } else { + loggerLanding.warn('Unable to refresh Mojang service status.') + statuses = MojangRestAPI.getDefaultStatuses() + } + + greenCount = 0 + greyCount = 0 + + for(let i=0; i + • + ${service.name} + ` + if(service.essential){ + tooltipEssentialHTML += tooltipHTML + } else { + tooltipNonEssentialHTML += tooltipHTML + } + + if(service.status === 'yellow' && status !== 'red'){ + status = 'yellow' + } else if(service.status === 'red'){ + status = 'red' + } else { + if(service.status === 'grey'){ + ++greyCount + } + ++greenCount + } + + } + + if(greenCount === statuses.length){ + if(greyCount === statuses.length){ + status = 'grey' + } else { + status = 'green' + } + } + + document.getElementById('mojangStatusEssentialContainer').innerHTML = tooltipEssentialHTML + document.getElementById('mojangStatusNonEssentialContainer').innerHTML = tooltipNonEssentialHTML + document.getElementById('mojang_status_icon').style.color = MojangRestAPI.statusToHex(status) +} + +const refreshServerStatus = async (fade = false) => { + loggerLanding.info('Refreshing Server Status') + const serv = (await DistroAPI.getDistribution()).getServerById(ConfigManager.getSelectedServer()) + + let pLabel = Lang.queryJS('landing.serverStatus.server') + let pVal = Lang.queryJS('landing.serverStatus.offline') + + try { + + const servStat = await getServerStatus(47, serv.hostname, serv.port) + console.log(servStat) + pLabel = Lang.queryJS('landing.serverStatus.players') + pVal = servStat.players.online + '/' + servStat.players.max + + } catch (err) { + loggerLanding.warn('Unable to refresh server status, assuming offline.') + loggerLanding.debug(err) + } + if(fade){ + $('#server_status_wrapper').fadeOut(250, () => { + document.getElementById('landingPlayerLabel').innerHTML = pLabel + document.getElementById('player_count').innerHTML = pVal + $('#server_status_wrapper').fadeIn(500) + }) + } else { + document.getElementById('landingPlayerLabel').innerHTML = pLabel + document.getElementById('player_count').innerHTML = pVal + } + +} + +refreshMojangStatuses() +// Server Status is refreshed in uibinder.js on distributionIndexDone. + +// Refresh statuses every hour. The status page itself refreshes every day so... +let mojangStatusListener = setInterval(() => refreshMojangStatuses(true), 60*60*1000) +// Set refresh rate to once every 5 minutes. +let serverStatusListener = setInterval(() => refreshServerStatus(true), 300000) + +/** + * Shows an error overlay, toggles off the launch area. + * + * @param {string} title The overlay title. + * @param {string} desc The overlay description. + */ +function showLaunchFailure(title, desc){ + setOverlayContent( + title, + desc, + Lang.queryJS('landing.launch.okay') + ) + setOverlayHandler(null) + toggleOverlay(true) + toggleLaunchArea(false) +} + +/* System (Java) Scan */ + +/** + * Asynchronously scan the system for valid Java installations. + * + * @param {boolean} launchAfter Whether we should begin to launch after scanning. + */ +async function asyncSystemScan(effectiveJavaOptions, launchAfter = true){ + + setLaunchDetails(Lang.queryJS('landing.systemScan.checking')) + toggleLaunchArea(true) + setLaunchPercentage(0, 100) + + const jvmDetails = await discoverBestJvmInstallation( + ConfigManager.getDataDirectory(), + effectiveJavaOptions.supported + ) + + if(jvmDetails == null) { + // If the result is null, no valid Java installation was found. + // Show this information to the user. + setOverlayContent( + Lang.queryJS('landing.systemScan.noCompatibleJava'), + Lang.queryJS('landing.systemScan.installJavaMessage', { 'major': effectiveJavaOptions.suggestedMajor }), + Lang.queryJS('landing.systemScan.installJava'), + Lang.queryJS('landing.systemScan.installJavaManually') + ) + setOverlayHandler(() => { + setLaunchDetails(Lang.queryJS('landing.systemScan.javaDownloadPrepare')) + toggleOverlay(false) + + try { + downloadJava(effectiveJavaOptions, launchAfter) + } catch(err) { + loggerLanding.error('Unhandled error in Java Download', err) + showLaunchFailure(Lang.queryJS('landing.systemScan.javaDownloadFailureTitle'), Lang.queryJS('landing.systemScan.javaDownloadFailureText')) + } + }) + setDismissHandler(() => { + $('#overlayContent').fadeOut(250, () => { + //$('#overlayDismiss').toggle(false) + setOverlayContent( + Lang.queryJS('landing.systemScan.javaRequired', { 'major': effectiveJavaOptions.suggestedMajor }), + Lang.queryJS('landing.systemScan.javaRequiredMessage', { 'major': effectiveJavaOptions.suggestedMajor }), + Lang.queryJS('landing.systemScan.javaRequiredDismiss'), + Lang.queryJS('landing.systemScan.javaRequiredCancel') + ) + setOverlayHandler(() => { + toggleLaunchArea(false) + toggleOverlay(false) + }) + setDismissHandler(() => { + toggleOverlay(false, true) + + asyncSystemScan(effectiveJavaOptions, launchAfter) + }) + $('#overlayContent').fadeIn(250) + }) + }) + toggleOverlay(true, true) + } else { + // Java installation found, use this to launch the game. + const javaExec = javaExecFromRoot(jvmDetails.path) + ConfigManager.setJavaExecutable(ConfigManager.getSelectedServer(), javaExec) + ConfigManager.save() + + // We need to make sure that the updated value is on the settings UI. + // Just incase the settings UI is already open. + settingsJavaExecVal.value = javaExec + await populateJavaExecDetails(settingsJavaExecVal.value) + + // TODO Callback hell, refactor + // TODO Move this out, separate concerns. + if(launchAfter){ + await dlAsync() + } + } + +} + +async function downloadJava(effectiveJavaOptions, launchAfter = true) { + + // TODO Error handling. + // asset can be null. + const asset = await latestOpenJDK( + effectiveJavaOptions.suggestedMajor, + ConfigManager.getDataDirectory(), + effectiveJavaOptions.distribution) + + if(asset == null) { + throw new Error(Lang.queryJS('landing.downloadJava.findJdkFailure')) + } + + let received = 0 + await downloadFile(asset.url, asset.path, ({ transferred }) => { + received = transferred + setDownloadPercentage(Math.trunc((transferred/asset.size)*100)) + }) + setDownloadPercentage(100) + + if(received != asset.size) { + loggerLanding.warn(`Java Download: Expected ${asset.size} bytes but received ${received}`) + if(!await validateLocalFile(asset.path, asset.algo, asset.hash)) { + log.error(`Hashes do not match, ${asset.id} may be corrupted.`) + // Don't know how this could happen, but report it. + throw new Error(Lang.queryJS('landing.downloadJava.javaDownloadCorruptedError')) + } + } + + // Extract + // Show installing progress bar. + remote.getCurrentWindow().setProgressBar(2) + + // Wait for extration to complete. + const eLStr = Lang.queryJS('landing.downloadJava.extractingJava') + let dotStr = '' + setLaunchDetails(eLStr) + const extractListener = setInterval(() => { + if(dotStr.length >= 3){ + dotStr = '' + } else { + dotStr += '.' + } + setLaunchDetails(eLStr + dotStr) + }, 750) + + const newJavaExec = await extractJdk(asset.path) + + // Extraction complete, remove the loading from the OS progress bar. + remote.getCurrentWindow().setProgressBar(-1) + + // Extraction completed successfully. + ConfigManager.setJavaExecutable(ConfigManager.getSelectedServer(), newJavaExec) + ConfigManager.save() + + clearInterval(extractListener) + setLaunchDetails(Lang.queryJS('landing.downloadJava.javaInstalled')) + + // TODO Callback hell + // Refactor the launch functions + asyncSystemScan(effectiveJavaOptions, launchAfter) + +} + +// Keep reference to Minecraft Process +let proc +// Discord RPC supprimĂ© (SurviePote) — hasRPC toujours false. +let hasRPC = false +// Joined server regex +// Change this if your server uses something different. +const GAME_JOINED_REGEX = /\[.+\]: Sound engine started/ +const GAME_LAUNCH_REGEX = /^\[.+\]: (?:MinecraftForge .+ Initialized|ModLauncher .+ starting: .+|Loading Minecraft .+ with Fabric Loader .+)$/ +const MIN_LINGER = 5000 + +async function dlAsync(login = true) { + + // Login parameter is temporary for debug purposes. Allows testing the validation/downloads without + // launching the game. + + const loggerLaunchSuite = LoggerUtil.getLogger('LaunchSuite') + + setLaunchDetails(Lang.queryJS('landing.dlAsync.loadingServerInfo')) + + let distro + + try { + distro = await DistroAPI.refreshDistributionOrFallback() + onDistroRefresh(distro) + } catch(err) { + loggerLaunchSuite.error('Unable to refresh distribution index.', err) + showLaunchFailure(Lang.queryJS('landing.dlAsync.fatalError'), Lang.queryJS('landing.dlAsync.unableToLoadDistributionIndex')) + return + } + + const serv = distro.getServerById(ConfigManager.getSelectedServer()) + + if(login) { + if(ConfigManager.getSelectedAccount() == null){ + loggerLanding.error('You must be logged into an account.') + return + } + } + + setLaunchDetails(Lang.queryJS('landing.dlAsync.pleaseWait')) + toggleLaunchArea(true) + setLaunchPercentage(0, 100) + + const fullRepairModule = new FullRepair( + ConfigManager.getCommonDirectory(), + ConfigManager.getInstanceDirectory(), + ConfigManager.getLauncherDirectory(), + ConfigManager.getSelectedServer(), + DistroAPI.isDevMode() + ) + + fullRepairModule.spawnReceiver() + + fullRepairModule.childProcess.on('error', (err) => { + loggerLaunchSuite.error('Error during launch', err) + showLaunchFailure(Lang.queryJS('landing.dlAsync.errorDuringLaunchTitle'), err.message || Lang.queryJS('landing.dlAsync.errorDuringLaunchText')) + }) + fullRepairModule.childProcess.on('close', (code, _signal) => { + if(code !== 0){ + loggerLaunchSuite.error(`Full Repair Module exited with code ${code}, assuming error.`) + showLaunchFailure(Lang.queryJS('landing.dlAsync.errorDuringLaunchTitle'), Lang.queryJS('landing.dlAsync.seeConsoleForDetails')) + } + }) + + loggerLaunchSuite.info('Validating files.') + setLaunchDetails(Lang.queryJS('landing.dlAsync.validatingFileIntegrity')) + let invalidFileCount = 0 + try { + invalidFileCount = await fullRepairModule.verifyFiles(percent => { + setLaunchPercentage(percent) + }) + setLaunchPercentage(100) + } catch (err) { + loggerLaunchSuite.error('Error during file validation.') + showLaunchFailure(Lang.queryJS('landing.dlAsync.errorDuringFileVerificationTitle'), err.displayable || Lang.queryJS('landing.dlAsync.seeConsoleForDetails')) + return + } + + + if(invalidFileCount > 0) { + loggerLaunchSuite.info('Downloading files.') + setLaunchDetails(Lang.queryJS('landing.dlAsync.downloadingFiles')) + setLaunchPercentage(0) + try { + await fullRepairModule.download(percent => { + setDownloadPercentage(percent) + }) + setDownloadPercentage(100) + } catch(err) { + loggerLaunchSuite.error('Error during file download.') + showLaunchFailure(Lang.queryJS('landing.dlAsync.errorDuringFileDownloadTitle'), err.displayable || Lang.queryJS('landing.dlAsync.seeConsoleForDetails')) + return + } + } else { + loggerLaunchSuite.info('No invalid files, skipping download.') + } + + // Remove download bar. + remote.getCurrentWindow().setProgressBar(-1) + + fullRepairModule.destroyReceiver() + + setLaunchDetails(Lang.queryJS('landing.dlAsync.preparingToLaunch')) + + const mojangIndexProcessor = new MojangIndexProcessor( + ConfigManager.getCommonDirectory(), + serv.rawServer.minecraftVersion) + const distributionIndexProcessor = new DistributionIndexProcessor( + ConfigManager.getCommonDirectory(), + distro, + serv.rawServer.id + ) + + const modLoaderData = await distributionIndexProcessor.loadModLoaderVersionJson(serv) + const versionData = await mojangIndexProcessor.getVersionJson() + + if(login) { + const authUser = ConfigManager.getSelectedAccount() + loggerLaunchSuite.info(`Sending selected account (${authUser.displayName}) to ProcessBuilder.`) + let pb = new ProcessBuilder(serv, versionData, modLoaderData, authUser, remote.app.getVersion()) + setLaunchDetails(Lang.queryJS('landing.dlAsync.launchingGame')) + + // const SERVER_JOINED_REGEX = /\[.+\]: \[CHAT\] [a-zA-Z0-9_]{1,16} joined the game/ + const SERVER_JOINED_REGEX = new RegExp(`\\[.+\\]: \\[CHAT\\] ${authUser.displayName} joined the game`) + + const onLoadComplete = () => { + toggleLaunchArea(false) + proc.stdout.removeListener('data', tempListener) + proc.stderr.removeListener('data', gameErrorListener) + } + const start = Date.now() + + // Attach a temporary listener to the client output. + // Will wait for a certain bit of text meaning that + // the client application has started, and we can hide + // the progress bar stuff. + const tempListener = function(data){ + if(GAME_LAUNCH_REGEX.test(data.trim())){ + const diff = Date.now()-start + if(diff < MIN_LINGER) { + setTimeout(onLoadComplete, MIN_LINGER-diff) + } else { + onLoadComplete() + } + } + } + + // Discord RPC supprimĂ© (SurviePote). + + const gameErrorListener = function(data){ + data = data.trim() + if(data.indexOf('Could not find or load main class net.minecraft.launchwrapper.Launch') > -1){ + loggerLaunchSuite.error('Game launch failed, LaunchWrapper was not downloaded properly.') + showLaunchFailure(Lang.queryJS('landing.dlAsync.errorDuringLaunchTitle'), Lang.queryJS('landing.dlAsync.launchWrapperNotDownloaded')) + } + } + + try { + // Build Minecraft process. + proc = pb.build() + + // Bind listeners to stdout. + proc.stdout.on('data', tempListener) + proc.stderr.on('data', gameErrorListener) + + setLaunchDetails(Lang.queryJS('landing.dlAsync.doneEnjoyServer')) + + // Discord RPC supprimĂ© (SurviePote) — pas de hook. + + } catch(err) { + + loggerLaunchSuite.error('Error during launch', err) + showLaunchFailure(Lang.queryJS('landing.dlAsync.errorDuringLaunchTitle'), Lang.queryJS('landing.dlAsync.checkConsoleForDetails')) + + } + } + +} + +/** + * News Loading Functions + */ + +// DOM Cache +const newsContent = document.getElementById('newsContent') +const newsArticleTitle = document.getElementById('newsArticleTitle') +const newsArticleDate = document.getElementById('newsArticleDate') +const newsArticleAuthor = document.getElementById('newsArticleAuthor') +const newsArticleComments = document.getElementById('newsArticleComments') +const newsNavigationStatus = document.getElementById('newsNavigationStatus') +const newsArticleContentScrollable = document.getElementById('newsArticleContentScrollable') +const nELoadSpan = document.getElementById('nELoadSpan') + +// News slide caches. +let newsActive = false +let newsGlideCount = 0 + +/** + * Show the news UI via a slide animation. + * + * @param {boolean} up True to slide up, otherwise false. + */ +function slide_(up){ + const lCUpper = document.querySelector('#landingContainer > #upper') + const lCLLeft = document.querySelector('#landingContainer > #lower > #left') + const lCLCenter = document.querySelector('#landingContainer > #lower > #center') + const lCLRight = document.querySelector('#landingContainer > #lower > #right') + const newsBtn = document.querySelector('#landingContainer > #lower > #center #content') + const landingContainer = document.getElementById('landingContainer') + const newsContainer = document.querySelector('#landingContainer > #newsContainer') + + newsGlideCount++ + + if(up){ + lCUpper.style.top = '-200vh' + lCLLeft.style.top = '-200vh' + lCLCenter.style.top = '-200vh' + lCLRight.style.top = '-200vh' + newsBtn.style.top = '130vh' + newsContainer.style.top = '0px' + //date.toLocaleDateString('en-US', {month: 'short', day: 'numeric', year: 'numeric', hour: 'numeric', minute: 'numeric'}) + //landingContainer.style.background = 'rgba(29, 29, 29, 0.55)' + landingContainer.style.background = 'rgba(0, 0, 0, 0.50)' + setTimeout(() => { + if(newsGlideCount === 1){ + lCLCenter.style.transition = 'none' + newsBtn.style.transition = 'none' + } + newsGlideCount-- + }, 2000) + } else { + setTimeout(() => { + newsGlideCount-- + }, 2000) + landingContainer.style.background = null + lCLCenter.style.transition = null + newsBtn.style.transition = null + newsContainer.style.top = '100%' + lCUpper.style.top = '0px' + lCLLeft.style.top = '0px' + lCLCenter.style.top = '0px' + lCLRight.style.top = '0px' + newsBtn.style.top = '10px' + } +} + +// Bind news button. +document.getElementById('newsButton').onclick = () => { + // Toggle tabbing. + if(newsActive){ + $('#landingContainer *').removeAttr('tabindex') + $('#newsContainer *').attr('tabindex', '-1') + } else { + $('#landingContainer *').attr('tabindex', '-1') + $('#newsContainer, #newsContainer *, #lower, #lower #center *').removeAttr('tabindex') + if(newsAlertShown){ + $('#newsButtonAlert').fadeOut(2000) + newsAlertShown = false + ConfigManager.setNewsCacheDismissed(true) + ConfigManager.save() + } + } + slide_(!newsActive) + newsActive = !newsActive +} + +// Array to store article meta. +let newsArr = null + +// News load animation listener. +let newsLoadingListener = null + +/** + * Set the news loading animation. + * + * @param {boolean} val True to set loading animation, otherwise false. + */ +function setNewsLoading(val){ + if(val){ + const nLStr = Lang.queryJS('landing.news.checking') + let dotStr = '..' + nELoadSpan.innerHTML = nLStr + dotStr + newsLoadingListener = setInterval(() => { + if(dotStr.length >= 3){ + dotStr = '' + } else { + dotStr += '.' + } + nELoadSpan.innerHTML = nLStr + dotStr + }, 750) + } else { + if(newsLoadingListener != null){ + clearInterval(newsLoadingListener) + newsLoadingListener = null + } + } +} + +// Bind retry button. +newsErrorRetry.onclick = () => { + $('#newsErrorFailed').fadeOut(250, () => { + initNews() + $('#newsErrorLoading').fadeIn(250) + }) +} + +newsArticleContentScrollable.onscroll = (e) => { + if(e.target.scrollTop > Number.parseFloat($('.newsArticleSpacerTop').css('height'))){ + newsContent.setAttribute('scrolled', '') + } else { + newsContent.removeAttribute('scrolled') + } +} + +/** + * Reload the news without restarting. (dĂ©sactivĂ© — SurviePote) + */ +function _reloadNews_disabled(){ + return new Promise((resolve, reject) => { + $('#newsContent').fadeOut(250, () => { + $('#newsErrorLoading').fadeIn(250) + initNews().then(() => { + resolve() + }) + }) + }) +} + +let newsAlertShown = false + +/** + * Show the news alert indicating there is new news. (dĂ©sactivĂ© — SurviePote) + */ +function _showNewsAlert_disabled(){ + newsAlertShown = true + $(newsButtonAlert).fadeIn(250) +} + +async function digestMessage(str) { + const msgUint8 = new TextEncoder().encode(str) + const hashBuffer = await crypto.subtle.digest('SHA-1', msgUint8) + const hashArray = Array.from(new Uint8Array(hashBuffer)) + const hashHex = hashArray + .map((b) => b.toString(16).padStart(2, '0')) + .join('') + return hashHex +} + +/** + * News supprimĂ© (SurviePote) — stubs no-op. + */ +async function initNews(){ return } +function reloadNews(){ return } +function showNewsAlert(){ return } +async function loadNews(){ return null } +async function _initNews_disabled(){ + + setNewsLoading(true) + + const news = await loadNews() + + newsArr = news?.articles || null + + if(newsArr == null){ + // News Loading Failed + setNewsLoading(false) + + await $('#newsErrorLoading').fadeOut(250).promise() + await $('#newsErrorFailed').fadeIn(250).promise() + + } else if(newsArr.length === 0) { + // No News Articles + setNewsLoading(false) + + ConfigManager.setNewsCache({ + date: null, + content: null, + dismissed: false + }) + ConfigManager.save() + + await $('#newsErrorLoading').fadeOut(250).promise() + await $('#newsErrorNone').fadeIn(250).promise() + } else { + // Success + setNewsLoading(false) + + const lN = newsArr[0] + const cached = ConfigManager.getNewsCache() + let newHash = await digestMessage(lN.content) + let newDate = new Date(lN.date) + let isNew = false + + if(cached.date != null && cached.content != null){ + + if(new Date(cached.date) >= newDate){ + + // Compare Content + if(cached.content !== newHash){ + isNew = true + showNewsAlert() + } else { + if(!cached.dismissed){ + isNew = true + showNewsAlert() + } + } + + } else { + isNew = true + showNewsAlert() + } + + } else { + isNew = true + showNewsAlert() + } + + if(isNew){ + ConfigManager.setNewsCache({ + date: newDate.getTime(), + content: newHash, + dismissed: false + }) + ConfigManager.save() + } + + const switchHandler = (forward) => { + let cArt = parseInt(newsContent.getAttribute('article')) + let nxtArt = forward ? (cArt >= newsArr.length-1 ? 0 : cArt + 1) : (cArt <= 0 ? newsArr.length-1 : cArt - 1) + + displayArticle(newsArr[nxtArt], nxtArt+1) + } + + document.getElementById('newsNavigateRight').onclick = () => { switchHandler(true) } + document.getElementById('newsNavigateLeft').onclick = () => { switchHandler(false) } + await $('#newsErrorContainer').fadeOut(250).promise() + displayArticle(newsArr[0], 1) + await $('#newsContent').fadeIn(250).promise() + } + + +} + +/** + * Add keyboard controls to the news UI. Left and right arrows toggle + * between articles. If you are on the landing page, the up arrow will + * open the news UI. + */ +document.addEventListener('keydown', (e) => { + if(newsActive){ + if(e.key === 'ArrowRight' || e.key === 'ArrowLeft'){ + document.getElementById(e.key === 'ArrowRight' ? 'newsNavigateRight' : 'newsNavigateLeft').click() + } + // Interferes with scrolling an article using the down arrow. + // Not sure of a straight forward solution at this point. + // if(e.key === 'ArrowDown'){ + // document.getElementById('newsButton').click() + // } + } else { + if(getCurrentView() === VIEWS.landing){ + if(e.key === 'ArrowUp'){ + document.getElementById('newsButton').click() + } + } + } +}) + +/** + * Display a news article on the UI. + * + * @param {Object} articleObject The article meta object. + * @param {number} index The article index. + */ +function displayArticle(articleObject, index){ + newsArticleTitle.innerHTML = articleObject.title + newsArticleTitle.href = articleObject.link + newsArticleAuthor.innerHTML = 'by ' + articleObject.author + newsArticleDate.innerHTML = articleObject.date + newsArticleComments.innerHTML = articleObject.comments + newsArticleComments.href = articleObject.commentsLink + newsArticleContentScrollable.innerHTML = '
    ' + articleObject.content + '
    ' + Array.from(newsArticleContentScrollable.getElementsByClassName('bbCodeSpoilerButton')).forEach(v => { + v.onclick = () => { + const text = v.parentElement.getElementsByClassName('bbCodeSpoilerText')[0] + text.style.display = text.style.display === 'block' ? 'none' : 'block' + } + }) + newsNavigationStatus.innerHTML = Lang.query('ejs.landing.newsNavigationStatus', {currentPage: index, totalPages: newsArr.length}) + newsContent.setAttribute('article', index-1) +} + +/** + * Load news — dĂ©sactivĂ© (SurviePote, originel renommĂ©). + */ +async function _loadNews_disabled(){ + + const distroData = await DistroAPI.getDistribution() + if(!distroData.rawDistribution.rss) { + loggerLanding.debug('No RSS feed provided.') + return null + } + + const promise = new Promise((resolve, reject) => { + + const newsFeed = distroData.rawDistribution.rss + const newsHost = new URL(newsFeed).origin + '/' + $.ajax({ + url: newsFeed, + success: (data) => { + const items = $(data).find('item') + const articles = [] + + for(let i=0; i { + resolve({ + articles: null + }) + }) + }) + + return await promise +} diff --git a/launcher/app/assets/js/scripts/login.js b/launcher/app/assets/js/scripts/login.js new file mode 100644 index 0000000..30ff893 --- /dev/null +++ b/launcher/app/assets/js/scripts/login.js @@ -0,0 +1,234 @@ +/** + * Script for login.ejs + */ +// Validation Regexes. +const validUsername = /^[a-zA-Z0-9_]{1,16}$/ +const basicEmail = /^\S+@\S+\.\S+$/ +//const validEmail = /^(([^<>()\[\]\.,;:\s@\"]+(\.[^<>()\[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})$/i + +// Login Elements +const loginCancelContainer = document.getElementById('loginCancelContainer') +const loginCancelButton = document.getElementById('loginCancelButton') +const loginEmailError = document.getElementById('loginEmailError') +const loginUsername = document.getElementById('loginUsername') +const loginPasswordError = document.getElementById('loginPasswordError') +const loginPassword = document.getElementById('loginPassword') +const checkmarkContainer = document.getElementById('checkmarkContainer') +const loginRememberOption = document.getElementById('loginRememberOption') +const loginButton = document.getElementById('loginButton') +const loginForm = document.getElementById('loginForm') + +// Control variables. +let lu = false, lp = false + + +/** + * Show a login error. + * + * @param {HTMLElement} element The element on which to display the error. + * @param {string} value The error text. + */ +function showError(element, value){ + element.innerHTML = value + element.style.opacity = 1 +} + +/** + * Shake a login error to add emphasis. + * + * @param {HTMLElement} element The element to shake. + */ +function shakeError(element){ + if(element.style.opacity == 1){ + element.classList.remove('shake') + void element.offsetWidth + element.classList.add('shake') + } +} + +/** + * Validate that an email field is neither empty nor invalid. + * + * @param {string} value The email value. + */ +function validateEmail(value){ + if(value){ + if(!basicEmail.test(value) && !validUsername.test(value)){ + showError(loginEmailError, Lang.queryJS('login.error.invalidValue')) + loginDisabled(true) + lu = false + } else { + loginEmailError.style.opacity = 0 + lu = true + if(lp){ + loginDisabled(false) + } + } + } else { + lu = false + showError(loginEmailError, Lang.queryJS('login.error.requiredValue')) + loginDisabled(true) + } +} + +/** + * Validate that the password field is not empty. + * + * @param {string} value The password value. + */ +function validatePassword(value){ + if(value){ + loginPasswordError.style.opacity = 0 + lp = true + if(lu){ + loginDisabled(false) + } + } else { + lp = false + showError(loginPasswordError, Lang.queryJS('login.error.invalidValue')) + loginDisabled(true) + } +} + +// Emphasize errors with shake when focus is lost. +loginUsername.addEventListener('focusout', (e) => { + validateEmail(e.target.value) + shakeError(loginEmailError) +}) +loginPassword.addEventListener('focusout', (e) => { + validatePassword(e.target.value) + shakeError(loginPasswordError) +}) + +// Validate input for each field. +loginUsername.addEventListener('input', (e) => { + validateEmail(e.target.value) +}) +loginPassword.addEventListener('input', (e) => { + validatePassword(e.target.value) +}) + +/** + * Enable or disable the login button. + * + * @param {boolean} v True to enable, false to disable. + */ +function loginDisabled(v){ + if(loginButton.disabled !== v){ + loginButton.disabled = v + } +} + +/** + * Enable or disable loading elements. + * + * @param {boolean} v True to enable, false to disable. + */ +function loginLoading(v){ + if(v){ + loginButton.setAttribute('loading', v) + loginButton.innerHTML = loginButton.innerHTML.replace(Lang.queryJS('login.login'), Lang.queryJS('login.loggingIn')) + } else { + loginButton.removeAttribute('loading') + loginButton.innerHTML = loginButton.innerHTML.replace(Lang.queryJS('login.loggingIn'), Lang.queryJS('login.login')) + } +} + +/** + * Enable or disable login form. + * + * @param {boolean} v True to enable, false to disable. + */ +function formDisabled(v){ + loginDisabled(v) + loginCancelButton.disabled = v + loginUsername.disabled = v + loginPassword.disabled = v + if(v){ + checkmarkContainer.setAttribute('disabled', v) + } else { + checkmarkContainer.removeAttribute('disabled') + } + loginRememberOption.disabled = v +} + +let loginViewOnSuccess = VIEWS.landing +let loginViewOnCancel = VIEWS.settings +let loginViewCancelHandler + +function loginCancelEnabled(val){ + if(val){ + $(loginCancelContainer).show() + } else { + $(loginCancelContainer).hide() + } +} + +loginCancelButton.onclick = (e) => { + switchView(getCurrentView(), loginViewOnCancel, 500, 500, () => { + loginUsername.value = '' + loginPassword.value = '' + loginCancelEnabled(false) + if(loginViewCancelHandler != null){ + loginViewCancelHandler() + loginViewCancelHandler = null + } + }) +} + +// Disable default form behavior. +loginForm.onsubmit = () => { return false } + +// Bind login button behavior. +loginButton.addEventListener('click', () => { + // Disable form. + formDisabled(true) + + // Show loading stuff. + loginLoading(true) + + AuthManager.addMojangAccount(loginUsername.value, loginPassword.value).then((value) => { + updateSelectedAccount(value) + loginButton.innerHTML = loginButton.innerHTML.replace(Lang.queryJS('login.loggingIn'), Lang.queryJS('login.success')) + $('.circle-loader').toggleClass('load-complete') + $('.checkmark').toggle() + setTimeout(() => { + switchView(VIEWS.login, loginViewOnSuccess, 500, 500, async () => { + // Temporary workaround + if(loginViewOnSuccess === VIEWS.settings){ + await prepareSettings() + } + loginViewOnSuccess = VIEWS.landing // Reset this for good measure. + loginCancelEnabled(false) // Reset this for good measure. + loginViewCancelHandler = null // Reset this for good measure. + loginUsername.value = '' + loginPassword.value = '' + $('.circle-loader').toggleClass('load-complete') + $('.checkmark').toggle() + loginLoading(false) + loginButton.innerHTML = loginButton.innerHTML.replace(Lang.queryJS('login.success'), Lang.queryJS('login.login')) + formDisabled(false) + }) + }, 1000) + }).catch((displayableError) => { + loginLoading(false) + + let actualDisplayableError + if(isDisplayableError(displayableError)) { + msftLoginLogger.error('Error while logging in.', displayableError) + actualDisplayableError = displayableError + } else { + // Uh oh. + msftLoginLogger.error('Unhandled error during login.', displayableError) + actualDisplayableError = Lang.queryJS('login.error.unknown') + } + + setOverlayContent(actualDisplayableError.title, actualDisplayableError.desc, Lang.queryJS('login.tryAgain')) + setOverlayHandler(() => { + formDisabled(false) + toggleOverlay(false) + }) + toggleOverlay(true) + }) + +}) \ No newline at end of file diff --git a/launcher/app/assets/js/scripts/loginOptions.js b/launcher/app/assets/js/scripts/loginOptions.js new file mode 100644 index 0000000..cdb1bc8 --- /dev/null +++ b/launcher/app/assets/js/scripts/loginOptions.js @@ -0,0 +1,50 @@ +const loginOptionsCancelContainer = document.getElementById('loginOptionCancelContainer') +const loginOptionMicrosoft = document.getElementById('loginOptionMicrosoft') +const loginOptionMojang = document.getElementById('loginOptionMojang') +const loginOptionsCancelButton = document.getElementById('loginOptionCancelButton') + +let loginOptionsCancellable = false + +let loginOptionsViewOnLoginSuccess +let loginOptionsViewOnLoginCancel +let loginOptionsViewOnCancel +let loginOptionsViewCancelHandler + +function loginOptionsCancelEnabled(val){ + if(val){ + $(loginOptionsCancelContainer).show() + } else { + $(loginOptionsCancelContainer).hide() + } +} + +loginOptionMicrosoft.onclick = (e) => { + switchView(getCurrentView(), VIEWS.waiting, 500, 500, () => { + ipcRenderer.send( + MSFT_OPCODE.OPEN_LOGIN, + loginOptionsViewOnLoginSuccess, + loginOptionsViewOnLoginCancel + ) + }) +} + +loginOptionMojang.onclick = (e) => { + switchView(getCurrentView(), VIEWS.login, 500, 500, () => { + loginViewOnSuccess = loginOptionsViewOnLoginSuccess + loginViewOnCancel = loginOptionsViewOnLoginCancel + loginCancelEnabled(true) + }) +} + +loginOptionsCancelButton.onclick = (e) => { + switchView(getCurrentView(), loginOptionsViewOnCancel, 500, 500, () => { + // Clear login values (Mojang login) + // No cleanup needed for Microsoft. + loginUsername.value = '' + loginPassword.value = '' + if(loginOptionsViewCancelHandler != null){ + loginOptionsViewCancelHandler() + loginOptionsViewCancelHandler = null + } + }) +} \ No newline at end of file diff --git a/launcher/app/assets/js/scripts/overlay.js b/launcher/app/assets/js/scripts/overlay.js new file mode 100644 index 0000000..0d6ab2a --- /dev/null +++ b/launcher/app/assets/js/scripts/overlay.js @@ -0,0 +1,324 @@ +/** + * Script for overlay.ejs + */ + +/* Overlay Wrapper Functions */ + +/** + * Check to see if the overlay is visible. + * + * @returns {boolean} Whether or not the overlay is visible. + */ +function isOverlayVisible(){ + return document.getElementById('main').hasAttribute('overlay') +} + +let overlayHandlerContent + +/** + * Overlay keydown handler for a non-dismissable overlay. + * + * @param {KeyboardEvent} e The keydown event. + */ +function overlayKeyHandler (e){ + if(e.key === 'Enter' || e.key === 'Escape'){ + document.getElementById(overlayHandlerContent).getElementsByClassName('overlayKeybindEnter')[0].click() + } +} +/** + * Overlay keydown handler for a dismissable overlay. + * + * @param {KeyboardEvent} e The keydown event. + */ +function overlayKeyDismissableHandler (e){ + if(e.key === 'Enter'){ + document.getElementById(overlayHandlerContent).getElementsByClassName('overlayKeybindEnter')[0].click() + } else if(e.key === 'Escape'){ + document.getElementById(overlayHandlerContent).getElementsByClassName('overlayKeybindEsc')[0].click() + } +} + +/** + * Bind overlay keydown listeners for escape and exit. + * + * @param {boolean} state Whether or not to add new event listeners. + * @param {string} content The overlay content which will be shown. + * @param {boolean} dismissable Whether or not the overlay is dismissable + */ +function bindOverlayKeys(state, content, dismissable){ + overlayHandlerContent = content + document.removeEventListener('keydown', overlayKeyHandler) + document.removeEventListener('keydown', overlayKeyDismissableHandler) + if(state){ + if(dismissable){ + document.addEventListener('keydown', overlayKeyDismissableHandler) + } else { + document.addEventListener('keydown', overlayKeyHandler) + } + } +} + +/** + * Toggle the visibility of the overlay. + * + * @param {boolean} toggleState True to display, false to hide. + * @param {boolean} dismissable Optional. True to show the dismiss option, otherwise false. + * @param {string} content Optional. The content div to be shown. + */ +function toggleOverlay(toggleState, dismissable = false, content = 'overlayContent'){ + if(toggleState == null){ + toggleState = !document.getElementById('main').hasAttribute('overlay') + } + if(typeof dismissable === 'string'){ + content = dismissable + dismissable = false + } + bindOverlayKeys(toggleState, content, dismissable) + if(toggleState){ + document.getElementById('main').setAttribute('overlay', true) + // Make things untabbable. + $('#main *').attr('tabindex', '-1') + $('#' + content).parent().children().hide() + $('#' + content).show() + if(dismissable){ + $('#overlayDismiss').show() + } else { + $('#overlayDismiss').hide() + } + $('#overlayContainer').fadeIn({ + duration: 250, + start: () => { + if(getCurrentView() === VIEWS.settings){ + document.getElementById('settingsContainer').style.backgroundColor = 'transparent' + } + } + }) + } else { + document.getElementById('main').removeAttribute('overlay') + // Make things tabbable. + $('#main *').removeAttr('tabindex') + $('#overlayContainer').fadeOut({ + duration: 250, + start: () => { + if(getCurrentView() === VIEWS.settings){ + document.getElementById('settingsContainer').style.backgroundColor = 'rgba(0, 0, 0, 0.50)' + } + }, + complete: () => { + $('#' + content).parent().children().hide() + $('#' + content).show() + if(dismissable){ + $('#overlayDismiss').show() + } else { + $('#overlayDismiss').hide() + } + } + }) + } +} + +async function toggleServerSelection(toggleState){ + await prepareServerSelectionList() + toggleOverlay(toggleState, true, 'serverSelectContent') +} + +/** + * Set the content of the overlay. + * + * @param {string} title Overlay title text. + * @param {string} description Overlay description text. + * @param {string} acknowledge Acknowledge button text. + * @param {string} dismiss Dismiss button text. + */ +function setOverlayContent(title, description, acknowledge, dismiss = Lang.queryJS('overlay.dismiss')){ + document.getElementById('overlayTitle').innerHTML = title + document.getElementById('overlayDesc').innerHTML = description + document.getElementById('overlayAcknowledge').innerHTML = acknowledge + document.getElementById('overlayDismiss').innerHTML = dismiss +} + +/** + * Set the onclick handler of the overlay acknowledge button. + * If the handler is null, a default handler will be added. + * + * @param {function} handler + */ +function setOverlayHandler(handler){ + if(handler == null){ + document.getElementById('overlayAcknowledge').onclick = () => { + toggleOverlay(false) + } + } else { + document.getElementById('overlayAcknowledge').onclick = handler + } +} + +/** + * Set the onclick handler of the overlay dismiss button. + * If the handler is null, a default handler will be added. + * + * @param {function} handler + */ +function setDismissHandler(handler){ + if(handler == null){ + document.getElementById('overlayDismiss').onclick = () => { + toggleOverlay(false) + } + } else { + document.getElementById('overlayDismiss').onclick = handler + } +} + +/* Server Select View */ + +document.getElementById('serverSelectConfirm').addEventListener('click', async () => { + const listings = document.getElementsByClassName('serverListing') + for(let i=0; i 0){ + const serv = (await DistroAPI.getDistribution()).getServerById(listings[i].getAttribute('servid')) + updateSelectedServer(serv) + toggleOverlay(false) + } +}) + +document.getElementById('accountSelectConfirm').addEventListener('click', async () => { + const listings = document.getElementsByClassName('accountListing') + for(let i=0; i 0){ + const authAcc = ConfigManager.setSelectedAccount(listings[0].getAttribute('uuid')) + ConfigManager.save() + updateSelectedAccount(authAcc) + if(getCurrentView() === VIEWS.settings) { + await prepareSettings() + } + toggleOverlay(false) + validateSelectedAccount() + } +}) + +// Bind server select cancel button. +document.getElementById('serverSelectCancel').addEventListener('click', () => { + toggleOverlay(false) +}) + +document.getElementById('accountSelectCancel').addEventListener('click', () => { + $('#accountSelectContent').fadeOut(250, () => { + $('#overlayContent').fadeIn(250) + }) +}) + +function setServerListingHandlers(){ + const listings = Array.from(document.getElementsByClassName('serverListing')) + listings.map((val) => { + val.onclick = e => { + if(val.hasAttribute('selected')){ + return + } + const cListings = document.getElementsByClassName('serverListing') + for(let i=0; i { + val.onclick = e => { + if(val.hasAttribute('selected')){ + return + } + const cListings = document.getElementsByClassName('accountListing') + for(let i=0; i + +
    + ${serv.rawServer.name} + ${serv.rawServer.description} +
    +
    ${serv.rawServer.minecraftVersion}
    +
    ${serv.rawServer.version}
    + ${serv.rawServer.mainServer ? `
    + + + + + + + + ${Lang.queryJS('settings.serverListing.mainServer')} +
    ` : ''} +
    +
    + ` + } + document.getElementById('serverSelectListScrollable').innerHTML = htmlString + +} + +function populateAccountListings(){ + const accountsObj = ConfigManager.getAuthAccounts() + const accounts = Array.from(Object.keys(accountsObj), v=>accountsObj[v]) + let htmlString = '' + for(let i=0; i + +
    ${accounts[i].displayName}
    + ` + } + document.getElementById('accountSelectListScrollable').innerHTML = htmlString + +} + +async function prepareServerSelectionList(){ + await populateServerListings() + setServerListingHandlers() +} + +function prepareAccountSelectionList(){ + populateAccountListings() + setAccountListingHandlers() +} \ No newline at end of file diff --git a/launcher/app/assets/js/scripts/settings.js b/launcher/app/assets/js/scripts/settings.js new file mode 100644 index 0000000..81a65a7 --- /dev/null +++ b/launcher/app/assets/js/scripts/settings.js @@ -0,0 +1,1583 @@ +// Requirements +const os = require('os') +const semver = require('semver') + +const DropinModUtil = require('./assets/js/dropinmodutil') +const { MSFT_OPCODE, MSFT_REPLY_TYPE, MSFT_ERROR } = require('./assets/js/ipcconstants') + +const settingsState = { + invalid: new Set() +} + +function bindSettingsSelect(){ + for(let ele of document.getElementsByClassName('settingsSelectContainer')) { + const selectedDiv = ele.getElementsByClassName('settingsSelectSelected')[0] + + selectedDiv.onclick = (e) => { + e.stopPropagation() + closeSettingsSelect(e.target) + e.target.nextElementSibling.toggleAttribute('hidden') + e.target.classList.toggle('select-arrow-active') + } + } +} + +function closeSettingsSelect(el){ + for(let ele of document.getElementsByClassName('settingsSelectContainer')) { + const selectedDiv = ele.getElementsByClassName('settingsSelectSelected')[0] + const optionsDiv = ele.getElementsByClassName('settingsSelectOptions')[0] + + if(!(selectedDiv === el)) { + selectedDiv.classList.remove('select-arrow-active') + optionsDiv.setAttribute('hidden', '') + } + } +} + +/* If the user clicks anywhere outside the select box, +then close all select boxes: */ +document.addEventListener('click', closeSettingsSelect) + +bindSettingsSelect() + + +function bindFileSelectors(){ + for(let ele of document.getElementsByClassName('settingsFileSelButton')){ + + ele.onclick = async e => { + const isJavaExecSel = ele.id === 'settingsJavaExecSel' + const directoryDialog = ele.hasAttribute('dialogDirectory') && ele.getAttribute('dialogDirectory') == 'true' + const properties = directoryDialog ? ['openDirectory', 'createDirectory'] : ['openFile'] + + const options = { + properties + } + + if(ele.hasAttribute('dialogTitle')) { + options.title = ele.getAttribute('dialogTitle') + } + + if(isJavaExecSel && process.platform === 'win32') { + options.filters = [ + { name: Lang.queryJS('settings.fileSelectors.executables'), extensions: ['exe'] }, + { name: Lang.queryJS('settings.fileSelectors.allFiles'), extensions: ['*'] } + ] + } + + const res = await remote.dialog.showOpenDialog(remote.getCurrentWindow(), options) + if(!res.canceled) { + ele.previousElementSibling.value = res.filePaths[0] + if(isJavaExecSel) { + await populateJavaExecDetails(ele.previousElementSibling.value) + } + } + } + } +} + +bindFileSelectors() + + +/** + * General Settings Functions + */ + +/** + * Bind value validators to the settings UI elements. These will + * validate against the criteria defined in the ConfigManager (if + * any). If the value is invalid, the UI will reflect this and saving + * will be disabled until the value is corrected. This is an automated + * process. More complex UI may need to be bound separately. + */ +function initSettingsValidators(){ + const sEls = document.getElementById('settingsContainer').querySelectorAll('[cValue]') + Array.from(sEls).map((v, index, arr) => { + const vFn = ConfigManager['validate' + v.getAttribute('cValue')] + if(typeof vFn === 'function'){ + if(v.tagName === 'INPUT'){ + if(v.type === 'number' || v.type === 'text'){ + v.addEventListener('keyup', (e) => { + const v = e.target + if(!vFn(v.value)){ + settingsState.invalid.add(v.id) + v.setAttribute('error', '') + settingsSaveDisabled(true) + } else { + if(v.hasAttribute('error')){ + v.removeAttribute('error') + settingsState.invalid.delete(v.id) + if(settingsState.invalid.size === 0){ + settingsSaveDisabled(false) + } + } + } + }) + } + } + } + + }) +} + +/** + * Load configuration values onto the UI. This is an automated process. + */ +async function initSettingsValues(){ + const sEls = document.getElementById('settingsContainer').querySelectorAll('[cValue]') + + for(const v of sEls) { + const cVal = v.getAttribute('cValue') + const serverDependent = v.hasAttribute('serverDependent') // Means the first argument is the server id. + const gFn = ConfigManager['get' + cVal] + const gFnOpts = [] + if(serverDependent) { + gFnOpts.push(ConfigManager.getSelectedServer()) + } + if(typeof gFn === 'function'){ + if(v.tagName === 'INPUT'){ + if(v.type === 'number' || v.type === 'text'){ + // Special Conditions + if(cVal === 'JavaExecutable'){ + v.value = gFn.apply(null, gFnOpts) + await populateJavaExecDetails(v.value) + } else if (cVal === 'DataDirectory'){ + v.value = gFn.apply(null, gFnOpts) + } else if(cVal === 'JVMOptions'){ + v.value = gFn.apply(null, gFnOpts).join(' ') + } else { + v.value = gFn.apply(null, gFnOpts) + } + } else if(v.type === 'checkbox'){ + v.checked = gFn.apply(null, gFnOpts) + } + } else if(v.tagName === 'DIV'){ + if(v.classList.contains('rangeSlider')){ + // Special Conditions + if(cVal === 'MinRAM' || cVal === 'MaxRAM'){ + let val = gFn.apply(null, gFnOpts) + if(val.endsWith('M')){ + val = Number(val.substring(0, val.length-1))/1024 + } else { + val = Number.parseFloat(val) + } + + v.setAttribute('value', val) + } else { + v.setAttribute('value', Number.parseFloat(gFn.apply(null, gFnOpts))) + } + } + } + } + } + +} + +/** + * Save the settings values. + */ +function saveSettingsValues(){ + const sEls = document.getElementById('settingsContainer').querySelectorAll('[cValue]') + Array.from(sEls).map((v, index, arr) => { + const cVal = v.getAttribute('cValue') + const serverDependent = v.hasAttribute('serverDependent') // Means the first argument is the server id. + const sFn = ConfigManager['set' + cVal] + const sFnOpts = [] + if(serverDependent) { + sFnOpts.push(ConfigManager.getSelectedServer()) + } + if(typeof sFn === 'function'){ + if(v.tagName === 'INPUT'){ + if(v.type === 'number' || v.type === 'text'){ + // Special Conditions + if(cVal === 'JVMOptions'){ + if(!v.value.trim()) { + sFnOpts.push([]) + sFn.apply(null, sFnOpts) + } else { + sFnOpts.push(v.value.trim().split(/\s+/)) + sFn.apply(null, sFnOpts) + } + } else { + sFnOpts.push(v.value) + sFn.apply(null, sFnOpts) + } + } else if(v.type === 'checkbox'){ + sFnOpts.push(v.checked) + sFn.apply(null, sFnOpts) + // Special Conditions + if(cVal === 'AllowPrerelease'){ + changeAllowPrerelease(v.checked) + } + } + } else if(v.tagName === 'DIV'){ + if(v.classList.contains('rangeSlider')){ + // Special Conditions + if(cVal === 'MinRAM' || cVal === 'MaxRAM'){ + let val = Number(v.getAttribute('value')) + if(val%1 > 0){ + val = val*1024 + 'M' + } else { + val = val + 'G' + } + + sFnOpts.push(val) + sFn.apply(null, sFnOpts) + } else { + sFnOpts.push(v.getAttribute('value')) + sFn.apply(null, sFnOpts) + } + } + } + } + }) +} + +let selectedSettingsTab = 'settingsTabAccount' + +/** + * Modify the settings container UI when the scroll threshold reaches + * a certain poin. + * + * @param {UIEvent} e The scroll event. + */ +function settingsTabScrollListener(e){ + if(e.target.scrollTop > Number.parseFloat(getComputedStyle(e.target.firstElementChild).marginTop)){ + document.getElementById('settingsContainer').setAttribute('scrolled', '') + } else { + document.getElementById('settingsContainer').removeAttribute('scrolled') + } +} + +/** + * Bind functionality for the settings navigation items. + */ +function setupSettingsTabs(){ + Array.from(document.getElementsByClassName('settingsNavItem')).map((val) => { + if(val.hasAttribute('rSc')){ + val.onclick = () => { + settingsNavItemListener(val) + } + } + }) +} + +/** + * Settings nav item onclick lisener. Function is exposed so that + * other UI elements can quickly toggle to a certain tab from other views. + * + * @param {Element} ele The nav item which has been clicked. + * @param {boolean} fade Optional. True to fade transition. + */ +function settingsNavItemListener(ele, fade = true){ + if(ele.hasAttribute('selected')){ + return + } + const navItems = document.getElementsByClassName('settingsNavItem') + for(let i=0; i { + $(`#${selectedSettingsTab}`).fadeIn({ + duration: 250, + start: () => { + settingsTabScrollListener({ + target: document.getElementById(selectedSettingsTab) + }) + } + }) + }) + } else { + $(`#${prevTab}`).hide(0, () => { + $(`#${selectedSettingsTab}`).show({ + duration: 0, + start: () => { + settingsTabScrollListener({ + target: document.getElementById(selectedSettingsTab) + }) + } + }) + }) + } +} + +const settingsNavDone = document.getElementById('settingsNavDone') + +/** + * Set if the settings save (done) button is disabled. + * + * @param {boolean} v True to disable, false to enable. + */ +function settingsSaveDisabled(v){ + settingsNavDone.disabled = v +} + +function fullSettingsSave() { + saveSettingsValues() + saveModConfiguration() + ConfigManager.save() + saveDropinModConfiguration() + saveShaderpackSettings() +} + +/* Closes the settings view and saves all data. */ +settingsNavDone.onclick = () => { + fullSettingsSave() + switchView(getCurrentView(), VIEWS.landing) +} + +/** + * Account Management Tab + */ + +const msftLoginLogger = LoggerUtil.getLogger('Microsoft Login') +const msftLogoutLogger = LoggerUtil.getLogger('Microsoft Logout') + +// Bind the add mojang account button. +document.getElementById('settingsAddMojangAccount').onclick = (e) => { + switchView(getCurrentView(), VIEWS.login, 500, 500, () => { + loginViewOnCancel = VIEWS.settings + loginViewOnSuccess = VIEWS.settings + loginCancelEnabled(true) + }) +} + +// Bind the add microsoft account button. +document.getElementById('settingsAddMicrosoftAccount').onclick = (e) => { + switchView(getCurrentView(), VIEWS.waiting, 500, 500, () => { + ipcRenderer.send(MSFT_OPCODE.OPEN_LOGIN, VIEWS.settings, VIEWS.settings) + }) +} + +// Bind reply for Microsoft Login. +ipcRenderer.on(MSFT_OPCODE.REPLY_LOGIN, (_, ...arguments_) => { + if (arguments_[0] === MSFT_REPLY_TYPE.ERROR) { + + const viewOnClose = arguments_[2] + console.log(arguments_) + switchView(getCurrentView(), viewOnClose, 500, 500, () => { + + if(arguments_[1] === MSFT_ERROR.NOT_FINISHED) { + // User cancelled. + msftLoginLogger.info('Login cancelled by user.') + return + } + + // Unexpected error. + setOverlayContent( + Lang.queryJS('settings.msftLogin.errorTitle'), + Lang.queryJS('settings.msftLogin.errorMessage'), + Lang.queryJS('settings.msftLogin.okButton') + ) + setOverlayHandler(() => { + toggleOverlay(false) + }) + toggleOverlay(true) + }) + } else if(arguments_[0] === MSFT_REPLY_TYPE.SUCCESS) { + const queryMap = arguments_[1] + const viewOnClose = arguments_[2] + + // Error from request to Microsoft. + if (Object.prototype.hasOwnProperty.call(queryMap, 'error')) { + switchView(getCurrentView(), viewOnClose, 500, 500, () => { + // TODO Dont know what these errors are. Just show them I guess. + // This is probably if you messed up the app registration with Azure. + let error = queryMap.error // Error might be 'access_denied' ? + let errorDesc = queryMap.error_description + console.log('Error getting authCode, is Azure application registered correctly?') + console.log(error) + console.log(errorDesc) + console.log('Full query map: ', queryMap) + setOverlayContent( + error, + errorDesc, + Lang.queryJS('settings.msftLogin.okButton') + ) + setOverlayHandler(() => { + toggleOverlay(false) + }) + toggleOverlay(true) + + }) + } else { + + msftLoginLogger.info('Acquired authCode, proceeding with authentication.') + + const authCode = queryMap.code + AuthManager.addMicrosoftAccount(authCode).then(value => { + updateSelectedAccount(value) + switchView(getCurrentView(), viewOnClose, 500, 500, async () => { + await prepareSettings() + }) + }) + .catch((displayableError) => { + + let actualDisplayableError + if(isDisplayableError(displayableError)) { + msftLoginLogger.error('Error while logging in.', displayableError) + actualDisplayableError = displayableError + } else { + // Uh oh. + msftLoginLogger.error('Unhandled error during login.', displayableError) + actualDisplayableError = Lang.queryJS('login.error.unknown') + } + + switchView(getCurrentView(), viewOnClose, 500, 500, () => { + setOverlayContent(actualDisplayableError.title, actualDisplayableError.desc, Lang.queryJS('login.tryAgain')) + setOverlayHandler(() => { + toggleOverlay(false) + }) + toggleOverlay(true) + }) + }) + } + } +}) + +/** + * Bind functionality for the account selection buttons. If another account + * is selected, the UI of the previously selected account will be updated. + */ +function bindAuthAccountSelect(){ + Array.from(document.getElementsByClassName('settingsAuthAccountSelect')).map((val) => { + val.onclick = (e) => { + if(val.hasAttribute('selected')){ + return + } + const selectBtns = document.getElementsByClassName('settingsAuthAccountSelect') + for(let i=0; i { + val.onclick = (e) => { + let isLastAccount = false + if(Object.keys(ConfigManager.getAuthAccounts()).length === 1){ + isLastAccount = true + setOverlayContent( + Lang.queryJS('settings.authAccountLogout.lastAccountWarningTitle'), + Lang.queryJS('settings.authAccountLogout.lastAccountWarningMessage'), + Lang.queryJS('settings.authAccountLogout.confirmButton'), + Lang.queryJS('settings.authAccountLogout.cancelButton') + ) + setOverlayHandler(() => { + processLogOut(val, isLastAccount) + toggleOverlay(false) + }) + setDismissHandler(() => { + toggleOverlay(false) + }) + toggleOverlay(true, true) + } else { + processLogOut(val, isLastAccount) + } + + } + }) +} + +let msAccDomElementCache +/** + * Process a log out. + * + * @param {Element} val The log out button element. + * @param {boolean} isLastAccount If this logout is on the last added account. + */ +function processLogOut(val, isLastAccount){ + const parent = val.closest('.settingsAuthAccount') + const uuid = parent.getAttribute('uuid') + const prevSelAcc = ConfigManager.getSelectedAccount() + const targetAcc = ConfigManager.getAuthAccount(uuid) + if(targetAcc.type === 'microsoft') { + msAccDomElementCache = parent + switchView(getCurrentView(), VIEWS.waiting, 500, 500, () => { + ipcRenderer.send(MSFT_OPCODE.OPEN_LOGOUT, uuid, isLastAccount) + }) + } else { + AuthManager.removeMojangAccount(uuid).then(() => { + if(!isLastAccount && uuid === prevSelAcc.uuid){ + const selAcc = ConfigManager.getSelectedAccount() + refreshAuthAccountSelected(selAcc.uuid) + updateSelectedAccount(selAcc) + validateSelectedAccount() + } + if(isLastAccount) { + loginOptionsCancelEnabled(false) + loginOptionsViewOnLoginSuccess = VIEWS.settings + loginOptionsViewOnLoginCancel = VIEWS.loginOptions + switchView(getCurrentView(), VIEWS.loginOptions) + } + }) + $(parent).fadeOut(250, () => { + parent.remove() + }) + } +} + +// Bind reply for Microsoft Logout. +ipcRenderer.on(MSFT_OPCODE.REPLY_LOGOUT, (_, ...arguments_) => { + if (arguments_[0] === MSFT_REPLY_TYPE.ERROR) { + switchView(getCurrentView(), VIEWS.settings, 500, 500, () => { + + if(arguments_.length > 1 && arguments_[1] === MSFT_ERROR.NOT_FINISHED) { + // User cancelled. + msftLogoutLogger.info('Logout cancelled by user.') + return + } + + // Unexpected error. + setOverlayContent( + Lang.queryJS('settings.msftLogout.errorTitle'), + Lang.queryJS('settings.msftLogout.errorMessage'), + Lang.queryJS('settings.msftLogout.okButton') + ) + setOverlayHandler(() => { + toggleOverlay(false) + }) + toggleOverlay(true) + }) + } else if(arguments_[0] === MSFT_REPLY_TYPE.SUCCESS) { + + const uuid = arguments_[1] + const isLastAccount = arguments_[2] + const prevSelAcc = ConfigManager.getSelectedAccount() + + msftLogoutLogger.info('Logout Successful. uuid:', uuid) + + AuthManager.removeMicrosoftAccount(uuid) + .then(() => { + if(!isLastAccount && uuid === prevSelAcc.uuid){ + const selAcc = ConfigManager.getSelectedAccount() + refreshAuthAccountSelected(selAcc.uuid) + updateSelectedAccount(selAcc) + validateSelectedAccount() + } + if(isLastAccount) { + loginOptionsCancelEnabled(false) + loginOptionsViewOnLoginSuccess = VIEWS.settings + loginOptionsViewOnLoginCancel = VIEWS.loginOptions + switchView(getCurrentView(), VIEWS.loginOptions) + } + if(msAccDomElementCache) { + msAccDomElementCache.remove() + msAccDomElementCache = null + } + }) + .finally(() => { + if(!isLastAccount) { + switchView(getCurrentView(), VIEWS.settings, 500, 500) + } + }) + + } +}) + +/** + * Refreshes the status of the selected account on the auth account + * elements. + * + * @param {string} uuid The UUID of the new selected account. + */ +function refreshAuthAccountSelected(uuid){ + Array.from(document.getElementsByClassName('settingsAuthAccount')).map((val) => { + const selBtn = val.getElementsByClassName('settingsAuthAccountSelect')[0] + if(uuid === val.getAttribute('uuid')){ + selBtn.setAttribute('selected', '') + selBtn.innerHTML = Lang.queryJS('settings.authAccountSelect.selectedButton') + } else { + if(selBtn.hasAttribute('selected')){ + selBtn.removeAttribute('selected') + } + selBtn.innerHTML = Lang.queryJS('settings.authAccountSelect.selectButton') + } + }) +} + +const settingsCurrentMicrosoftAccounts = document.getElementById('settingsCurrentMicrosoftAccounts') +const settingsCurrentMojangAccounts = document.getElementById('settingsCurrentMojangAccounts') + +/** + * Add auth account elements for each one stored in the authentication database. + */ +function populateAuthAccounts(){ + const authAccounts = ConfigManager.getAuthAccounts() + const authKeys = Object.keys(authAccounts) + if(authKeys.length === 0){ + return + } + const selectedUUID = ConfigManager.getSelectedAccount().uuid + + let microsoftAuthAccountStr = '' + let mojangAuthAccountStr = '' + + authKeys.forEach((val) => { + const acc = authAccounts[val] + + const accHtml = `
    +
    + ${acc.displayName} +
    +
    +
    +
    +
    ${Lang.queryJS('settings.authAccountPopulate.username')}
    +
    ${acc.displayName}
    +
    +
    +
    ${Lang.queryJS('settings.authAccountPopulate.uuid')}
    +
    ${acc.uuid}
    +
    +
    +
    + +
    + +
    +
    +
    +
    ` + + if(acc.type === 'microsoft') { + microsoftAuthAccountStr += accHtml + } else { + mojangAuthAccountStr += accHtml + } + + }) + + settingsCurrentMicrosoftAccounts.innerHTML = microsoftAuthAccountStr + settingsCurrentMojangAccounts.innerHTML = mojangAuthAccountStr +} + +/** + * Prepare the accounts tab for display. + */ +function prepareAccountsTab() { + populateAuthAccounts() + bindAuthAccountSelect() + bindAuthAccountLogOut() +} + +/** + * Minecraft Tab + */ + +/** + * Disable decimals, negative signs, and scientific notation. + */ +document.getElementById('settingsGameWidth').addEventListener('keydown', (e) => { + if(/^[-.eE]$/.test(e.key)){ + e.preventDefault() + } +}) +document.getElementById('settingsGameHeight').addEventListener('keydown', (e) => { + if(/^[-.eE]$/.test(e.key)){ + e.preventDefault() + } +}) + +/** + * Mods Tab + */ + +const settingsModsContainer = document.getElementById('settingsModsContainer') + +/** + * Resolve and update the mods on the UI. + */ +async function resolveModsForUI(){ + const serv = ConfigManager.getSelectedServer() + + const distro = await DistroAPI.getDistribution() + const servConf = ConfigManager.getModConfiguration(serv) + + const modStr = parseModulesForUI(distro.getServerById(serv).modules, false, servConf.mods) + + document.getElementById('settingsReqModsContent').innerHTML = modStr.reqMods + document.getElementById('settingsOptModsContent').innerHTML = modStr.optMods +} + +/** + * Recursively build the mod UI elements. + * + * @param {Object[]} mdls An array of modules to parse. + * @param {boolean} submodules Whether or not we are parsing submodules. + * @param {Object} servConf The server configuration object for this module level. + */ +function parseModulesForUI(mdls, submodules, servConf){ + + let reqMods = '' + let optMods = '' + + for(const mdl of mdls){ + + if(mdl.rawModule.type === Type.ForgeMod || mdl.rawModule.type === Type.LiteMod || mdl.rawModule.type === Type.LiteLoader || mdl.rawModule.type === Type.FabricMod){ + + if(mdl.getRequired().value){ + + reqMods += `
    +
    +
    +
    +
    + ${mdl.rawModule.name} + v${mdl.mavenComponents.version} +
    +
    + +
    + ${mdl.subModules.length > 0 ? `
    + ${Object.values(parseModulesForUI(mdl.subModules, true, servConf[mdl.getVersionlessMavenIdentifier()])).join('')} +
    ` : ''} +
    ` + + } else { + + const conf = servConf[mdl.getVersionlessMavenIdentifier()] + const val = typeof conf === 'object' ? conf.value : conf + + optMods += `
    +
    +
    +
    +
    + ${mdl.rawModule.name} + v${mdl.mavenComponents.version} +
    +
    + +
    + ${mdl.subModules.length > 0 ? `
    + ${Object.values(parseModulesForUI(mdl.subModules, true, conf.mods)).join('')} +
    ` : ''} +
    ` + + } + } + } + + return { + reqMods, + optMods + } + +} + +/** + * Bind functionality to mod config toggle switches. Switching the value + * will also switch the status color on the left of the mod UI. + */ +function bindModsToggleSwitch(){ + const sEls = settingsModsContainer.querySelectorAll('[formod]') + Array.from(sEls).map((v, index, arr) => { + v.onchange = () => { + if(v.checked) { + document.getElementById(v.getAttribute('formod')).setAttribute('enabled', '') + } else { + document.getElementById(v.getAttribute('formod')).removeAttribute('enabled') + } + } + }) +} + + +/** + * Save the mod configuration based on the UI values. + */ +function saveModConfiguration(){ + const serv = ConfigManager.getSelectedServer() + const modConf = ConfigManager.getModConfiguration(serv) + modConf.mods = _saveModConfiguration(modConf.mods) + ConfigManager.setModConfiguration(serv, modConf) +} + +/** + * Recursively save mod config with submods. + * + * @param {Object} modConf Mod config object to save. + */ +function _saveModConfiguration(modConf){ + for(let m of Object.entries(modConf)){ + const tSwitch = settingsModsContainer.querySelectorAll(`[formod='${m[0]}']`) + if(!tSwitch[0].hasAttribute('dropin')){ + if(typeof m[1] === 'boolean'){ + modConf[m[0]] = tSwitch[0].checked + } else { + if(m[1] != null){ + if(tSwitch.length > 0){ + modConf[m[0]].value = tSwitch[0].checked + } + modConf[m[0]].mods = _saveModConfiguration(modConf[m[0]].mods) + } + } + } + } + return modConf +} + +// Drop-in mod elements. + +let CACHE_SETTINGS_MODS_DIR +let CACHE_DROPIN_MODS + +/** + * Resolve any located drop-in mods for this server and + * populate the results onto the UI. + */ +async function resolveDropinModsForUI(){ + const serv = (await DistroAPI.getDistribution()).getServerById(ConfigManager.getSelectedServer()) + CACHE_SETTINGS_MODS_DIR = path.join(ConfigManager.getInstanceDirectory(), serv.rawServer.id, 'mods') + CACHE_DROPIN_MODS = DropinModUtil.scanForDropinMods(CACHE_SETTINGS_MODS_DIR, serv.rawServer.minecraftVersion) + + let dropinMods = '' + + for(dropin of CACHE_DROPIN_MODS){ + dropinMods += `
    +
    +
    +
    +
    + ${dropin.name} +
    + +
    +
    +
    + +
    +
    ` + } + + document.getElementById('settingsDropinModsContent').innerHTML = dropinMods +} + +/** + * Bind the remove button for each loaded drop-in mod. + */ +function bindDropinModsRemoveButton(){ + const sEls = settingsModsContainer.querySelectorAll('[remmod]') + Array.from(sEls).map((v, index, arr) => { + v.onclick = async () => { + const fullName = v.getAttribute('remmod') + const res = await DropinModUtil.deleteDropinMod(CACHE_SETTINGS_MODS_DIR, fullName) + if(res){ + document.getElementById(fullName).remove() + } else { + setOverlayContent( + Lang.queryJS('settings.dropinMods.deleteFailedTitle', { fullName }), + Lang.queryJS('settings.dropinMods.deleteFailedMessage'), + Lang.queryJS('settings.dropinMods.okButton') + ) + setOverlayHandler(null) + toggleOverlay(true) + } + } + }) +} + +/** + * Bind functionality to the file system button for the selected + * server configuration. + */ +function bindDropinModFileSystemButton(){ + const fsBtn = document.getElementById('settingsDropinFileSystemButton') + fsBtn.onclick = () => { + DropinModUtil.validateDir(CACHE_SETTINGS_MODS_DIR) + shell.openPath(CACHE_SETTINGS_MODS_DIR) + } + fsBtn.ondragenter = e => { + e.dataTransfer.dropEffect = 'move' + fsBtn.setAttribute('drag', '') + e.preventDefault() + } + fsBtn.ondragover = e => { + e.preventDefault() + } + fsBtn.ondragleave = e => { + fsBtn.removeAttribute('drag') + } + + fsBtn.ondrop = async e => { + fsBtn.removeAttribute('drag') + e.preventDefault() + + DropinModUtil.addDropinMods(e.dataTransfer.files, CACHE_SETTINGS_MODS_DIR) + await reloadDropinMods() + } +} + +/** + * Save drop-in mod states. Enabling and disabling is just a matter + * of adding/removing the .disabled extension. + */ +function saveDropinModConfiguration(){ + for(dropin of CACHE_DROPIN_MODS){ + const dropinUI = document.getElementById(dropin.fullName) + if(dropinUI != null){ + const dropinUIEnabled = dropinUI.hasAttribute('enabled') + if(DropinModUtil.isDropinModEnabled(dropin.fullName) != dropinUIEnabled){ + DropinModUtil.toggleDropinMod(CACHE_SETTINGS_MODS_DIR, dropin.fullName, dropinUIEnabled).catch(err => { + if(!isOverlayVisible()){ + setOverlayContent( + Lang.queryJS('settings.dropinMods.failedToggleTitle'), + err.message, + Lang.queryJS('settings.dropinMods.okButton') + ) + setOverlayHandler(null) + toggleOverlay(true) + } + }) + } + } + } +} + +// Refresh the drop-in mods when F5 is pressed. +// Only active on the mods tab. +document.addEventListener('keydown', async (e) => { + if(getCurrentView() === VIEWS.settings && selectedSettingsTab === 'settingsTabMods'){ + if(e.key === 'F5'){ + await reloadDropinMods() + saveShaderpackSettings() + await resolveShaderpacksForUI() + } + } +}) + +async function reloadDropinMods(){ + await resolveDropinModsForUI() + bindDropinModsRemoveButton() + bindDropinModFileSystemButton() + bindModsToggleSwitch() +} + +// Shaderpack + +let CACHE_SETTINGS_INSTANCE_DIR +let CACHE_SHADERPACKS +let CACHE_SELECTED_SHADERPACK + +/** + * Load shaderpack information. + */ +async function resolveShaderpacksForUI(){ + const serv = (await DistroAPI.getDistribution()).getServerById(ConfigManager.getSelectedServer()) + CACHE_SETTINGS_INSTANCE_DIR = path.join(ConfigManager.getInstanceDirectory(), serv.rawServer.id) + CACHE_SHADERPACKS = DropinModUtil.scanForShaderpacks(CACHE_SETTINGS_INSTANCE_DIR) + CACHE_SELECTED_SHADERPACK = DropinModUtil.getEnabledShaderpack(CACHE_SETTINGS_INSTANCE_DIR) + + setShadersOptions(CACHE_SHADERPACKS, CACHE_SELECTED_SHADERPACK) +} + +function setShadersOptions(arr, selected){ + const cont = document.getElementById('settingsShadersOptions') + cont.innerHTML = '' + for(let opt of arr) { + const d = document.createElement('DIV') + d.innerHTML = opt.name + d.setAttribute('value', opt.fullName) + if(opt.fullName === selected) { + d.setAttribute('selected', '') + document.getElementById('settingsShadersSelected').innerHTML = opt.name + } + d.addEventListener('click', function(e) { + this.parentNode.previousElementSibling.innerHTML = this.innerHTML + for(let sib of this.parentNode.children){ + sib.removeAttribute('selected') + } + this.setAttribute('selected', '') + closeSettingsSelect() + }) + cont.appendChild(d) + } +} + +function saveShaderpackSettings(){ + let sel = 'OFF' + for(let opt of document.getElementById('settingsShadersOptions').childNodes){ + if(opt.hasAttribute('selected')){ + sel = opt.getAttribute('value') + } + } + DropinModUtil.setEnabledShaderpack(CACHE_SETTINGS_INSTANCE_DIR, sel) +} + +function bindShaderpackButton() { + const spBtn = document.getElementById('settingsShaderpackButton') + spBtn.onclick = () => { + const p = path.join(CACHE_SETTINGS_INSTANCE_DIR, 'shaderpacks') + DropinModUtil.validateDir(p) + shell.openPath(p) + } + spBtn.ondragenter = e => { + e.dataTransfer.dropEffect = 'move' + spBtn.setAttribute('drag', '') + e.preventDefault() + } + spBtn.ondragover = e => { + e.preventDefault() + } + spBtn.ondragleave = e => { + spBtn.removeAttribute('drag') + } + + spBtn.ondrop = async e => { + spBtn.removeAttribute('drag') + e.preventDefault() + + DropinModUtil.addShaderpacks(e.dataTransfer.files, CACHE_SETTINGS_INSTANCE_DIR) + saveShaderpackSettings() + await resolveShaderpacksForUI() + } +} + +// Server status bar functions. + +/** + * Load the currently selected server information onto the mods tab. + */ +async function loadSelectedServerOnModsTab(){ + const serv = (await DistroAPI.getDistribution()).getServerById(ConfigManager.getSelectedServer()) + + for(const el of document.getElementsByClassName('settingsSelServContent')) { + el.innerHTML = ` + +
    + ${serv.rawServer.name} + ${serv.rawServer.description} +
    +
    ${serv.rawServer.minecraftVersion}
    +
    ${serv.rawServer.version}
    + ${serv.rawServer.mainServer ? `
    + + + + + + + + ${Lang.queryJS('settings.serverListing.mainServer')} +
    ` : ''} +
    +
    + ` + } +} + +// Bind functionality to the server switch button. +Array.from(document.getElementsByClassName('settingsSwitchServerButton')).forEach(el => { + el.addEventListener('click', async e => { + e.target.blur() + await toggleServerSelection(true) + }) +}) + +/** + * Save mod configuration for the current selected server. + */ +function saveAllModConfigurations(){ + saveModConfiguration() + ConfigManager.save() + saveDropinModConfiguration() +} + +/** + * Function to refresh the current tab whenever the selected + * server is changed. + */ +function animateSettingsTabRefresh(){ + $(`#${selectedSettingsTab}`).fadeOut(500, async () => { + await prepareSettings() + $(`#${selectedSettingsTab}`).fadeIn(500) + }) +} + +/** + * Prepare the Mods tab for display. + */ +async function prepareModsTab(first){ + await resolveModsForUI() + await resolveDropinModsForUI() + await resolveShaderpacksForUI() + bindDropinModsRemoveButton() + bindDropinModFileSystemButton() + bindShaderpackButton() + bindModsToggleSwitch() + await loadSelectedServerOnModsTab() +} + +/** + * Java Tab + */ + +// DOM Cache +const settingsMaxRAMRange = document.getElementById('settingsMaxRAMRange') +const settingsMinRAMRange = document.getElementById('settingsMinRAMRange') +const settingsMaxRAMLabel = document.getElementById('settingsMaxRAMLabel') +const settingsMinRAMLabel = document.getElementById('settingsMinRAMLabel') +const settingsMemoryTotal = document.getElementById('settingsMemoryTotal') +const settingsMemoryAvail = document.getElementById('settingsMemoryAvail') +const settingsJavaExecDetails = document.getElementById('settingsJavaExecDetails') +const settingsJavaReqDesc = document.getElementById('settingsJavaReqDesc') +const settingsJvmOptsLink = document.getElementById('settingsJvmOptsLink') + +// Bind on change event for min memory container. +settingsMinRAMRange.onchange = (e) => { + + // Current range values + const sMaxV = Number(settingsMaxRAMRange.getAttribute('value')) + const sMinV = Number(settingsMinRAMRange.getAttribute('value')) + + // Get reference to range bar. + const bar = e.target.getElementsByClassName('rangeSliderBar')[0] + // Calculate effective total memory. + const max = os.totalmem()/1073741824 + + // Change range bar color based on the selected value. + if(sMinV >= max/2){ + bar.style.background = '#e86060' + } else if(sMinV >= max/4) { + bar.style.background = '#e8e18b' + } else { + bar.style.background = null + } + + // Increase maximum memory if the minimum exceeds its value. + if(sMaxV < sMinV){ + const sliderMeta = calculateRangeSliderMeta(settingsMaxRAMRange) + updateRangedSlider(settingsMaxRAMRange, sMinV, + ((sMinV-sliderMeta.min)/sliderMeta.step)*sliderMeta.inc) + settingsMaxRAMLabel.innerHTML = sMinV.toFixed(1) + 'G' + } + + // Update label + settingsMinRAMLabel.innerHTML = sMinV.toFixed(1) + 'G' +} + +// Bind on change event for max memory container. +settingsMaxRAMRange.onchange = (e) => { + // Current range values + const sMaxV = Number(settingsMaxRAMRange.getAttribute('value')) + const sMinV = Number(settingsMinRAMRange.getAttribute('value')) + + // Get reference to range bar. + const bar = e.target.getElementsByClassName('rangeSliderBar')[0] + // Calculate effective total memory. + const max = os.totalmem()/1073741824 + + // Change range bar color based on the selected value. + if(sMaxV >= max/2){ + bar.style.background = '#e86060' + } else if(sMaxV >= max/4) { + bar.style.background = '#e8e18b' + } else { + bar.style.background = null + } + + // Decrease the minimum memory if the maximum value is less. + if(sMaxV < sMinV){ + const sliderMeta = calculateRangeSliderMeta(settingsMaxRAMRange) + updateRangedSlider(settingsMinRAMRange, sMaxV, + ((sMaxV-sliderMeta.min)/sliderMeta.step)*sliderMeta.inc) + settingsMinRAMLabel.innerHTML = sMaxV.toFixed(1) + 'G' + } + settingsMaxRAMLabel.innerHTML = sMaxV.toFixed(1) + 'G' +} + +/** + * Calculate common values for a ranged slider. + * + * @param {Element} v The range slider to calculate against. + * @returns {Object} An object with meta values for the provided ranged slider. + */ +function calculateRangeSliderMeta(v){ + const val = { + max: Number(v.getAttribute('max')), + min: Number(v.getAttribute('min')), + step: Number(v.getAttribute('step')), + } + val.ticks = (val.max-val.min)/val.step + val.inc = 100/val.ticks + return val +} + +/** + * Binds functionality to the ranged sliders. They're more than + * just divs now :'). + */ +function bindRangeSlider(){ + Array.from(document.getElementsByClassName('rangeSlider')).map((v) => { + + // Reference the track (thumb). + const track = v.getElementsByClassName('rangeSliderTrack')[0] + + // Set the initial slider value. + const value = v.getAttribute('value') + const sliderMeta = calculateRangeSliderMeta(v) + + updateRangedSlider(v, value, ((value-sliderMeta.min)/sliderMeta.step)*sliderMeta.inc) + + // The magic happens when we click on the track. + track.onmousedown = (e) => { + + // Stop moving the track on mouse up. + document.onmouseup = (e) => { + document.onmousemove = null + document.onmouseup = null + } + + // Move slider according to the mouse position. + document.onmousemove = (e) => { + + // Distance from the beginning of the bar in pixels. + const diff = e.pageX - v.offsetLeft - track.offsetWidth/2 + + // Don't move the track off the bar. + if(diff >= 0 && diff <= v.offsetWidth-track.offsetWidth/2){ + + // Convert the difference to a percentage. + const perc = (diff/v.offsetWidth)*100 + // Calculate the percentage of the closest notch. + const notch = Number(perc/sliderMeta.inc).toFixed(0)*sliderMeta.inc + + // If we're close to that notch, stick to it. + if(Math.abs(perc-notch) < sliderMeta.inc/2){ + updateRangedSlider(v, sliderMeta.min+(sliderMeta.step*(notch/sliderMeta.inc)), notch) + } + } + } + } + }) +} + +/** + * Update a ranged slider's value and position. + * + * @param {Element} element The ranged slider to update. + * @param {string | number} value The new value for the ranged slider. + * @param {number} notch The notch that the slider should now be at. + */ +function updateRangedSlider(element, value, notch){ + const oldVal = element.getAttribute('value') + const bar = element.getElementsByClassName('rangeSliderBar')[0] + const track = element.getElementsByClassName('rangeSliderTrack')[0] + + element.setAttribute('value', value) + + if(notch < 0){ + notch = 0 + } else if(notch > 100) { + notch = 100 + } + + const event = new MouseEvent('change', { + target: element, + type: 'change', + bubbles: false, + cancelable: true + }) + + let cancelled = !element.dispatchEvent(event) + + if(!cancelled){ + track.style.left = notch + '%' + bar.style.width = notch + '%' + } else { + element.setAttribute('value', oldVal) + } +} + +/** + * Display the total and available RAM. + */ +function populateMemoryStatus(){ + settingsMemoryTotal.innerHTML = Number((os.totalmem()-1073741824)/1073741824).toFixed(1) + 'G' + settingsMemoryAvail.innerHTML = Number(os.freemem()/1073741824).toFixed(1) + 'G' +} + +/** + * Validate the provided executable path and display the data on + * the UI. + * + * @param {string} execPath The executable path to populate against. + */ +async function populateJavaExecDetails(execPath){ + const server = (await DistroAPI.getDistribution()).getServerById(ConfigManager.getSelectedServer()) + + const details = await validateSelectedJvm(ensureJavaDirIsRoot(execPath), server.effectiveJavaOptions.supported) + + if(details != null) { + settingsJavaExecDetails.innerHTML = Lang.queryJS('settings.java.selectedJava', { version: details.semverStr, vendor: details.vendor }) + } else { + settingsJavaExecDetails.innerHTML = Lang.queryJS('settings.java.invalidSelection') + } +} + +function populateJavaReqDesc(server) { + settingsJavaReqDesc.innerHTML = Lang.queryJS('settings.java.requiresJava', { major: server.effectiveJavaOptions.suggestedMajor }) +} + +function populateJvmOptsLink(server) { + const major = server.effectiveJavaOptions.suggestedMajor + settingsJvmOptsLink.innerHTML = Lang.queryJS('settings.java.availableOptions', { major: major }) + if(major >= 12) { + settingsJvmOptsLink.href = `https://docs.oracle.com/en/java/javase/${major}/docs/specs/man/java.html#extra-options-for-java` + } + else if(major >= 11) { + settingsJvmOptsLink.href = 'https://docs.oracle.com/en/java/javase/11/tools/java.html#GUID-3B1CE181-CD30-4178-9602-230B800D4FAE' + } + else if(major >= 9) { + settingsJvmOptsLink.href = `https://docs.oracle.com/javase/${major}/tools/java.htm` + } + else { + settingsJvmOptsLink.href = `https://docs.oracle.com/javase/${major}/docs/technotes/tools/${process.platform === 'win32' ? 'windows' : 'unix'}/java.html` + } +} + +function bindMinMaxRam(server) { + // Store maximum memory values. + const SETTINGS_MAX_MEMORY = ConfigManager.getAbsoluteMaxRAM(server.rawServer.javaOptions?.ram) + const SETTINGS_MIN_MEMORY = ConfigManager.getAbsoluteMinRAM(server.rawServer.javaOptions?.ram) + + // Set the max and min values for the ranged sliders. + settingsMaxRAMRange.setAttribute('max', SETTINGS_MAX_MEMORY) + settingsMaxRAMRange.setAttribute('min', SETTINGS_MIN_MEMORY) + settingsMinRAMRange.setAttribute('max', SETTINGS_MAX_MEMORY) + settingsMinRAMRange.setAttribute('min', SETTINGS_MIN_MEMORY) +} + +/** + * Prepare the Java tab for display. + */ +async function prepareJavaTab(){ + const server = (await DistroAPI.getDistribution()).getServerById(ConfigManager.getSelectedServer()) + bindMinMaxRam(server) + bindRangeSlider(server) + populateMemoryStatus() + populateJavaReqDesc(server) + populateJvmOptsLink(server) +} + +/** + * About Tab + */ + +const settingsTabAbout = document.getElementById('settingsTabAbout') +const settingsAboutChangelogTitle = settingsTabAbout.getElementsByClassName('settingsChangelogTitle')[0] +const settingsAboutChangelogText = settingsTabAbout.getElementsByClassName('settingsChangelogText')[0] +const settingsAboutChangelogButton = settingsTabAbout.getElementsByClassName('settingsChangelogButton')[0] + +// Bind the devtools toggle button. +document.getElementById('settingsAboutDevToolsButton').onclick = (e) => { + let window = remote.getCurrentWindow() + window.toggleDevTools() +} + +/** + * Return whether or not the provided version is a prerelease. + * + * @param {string} version The semver version to test. + * @returns {boolean} True if the version is a prerelease, otherwise false. + */ +function isPrerelease(version){ + const preRelComp = semver.prerelease(version) + return preRelComp != null && preRelComp.length > 0 +} + +/** + * Utility method to display version information on the + * About and Update settings tabs. + * + * @param {string} version The semver version to display. + * @param {Element} valueElement The value element. + * @param {Element} titleElement The title element. + * @param {Element} checkElement The check mark element. + */ +function populateVersionInformation(version, valueElement, titleElement, checkElement){ + valueElement.innerHTML = version + if(isPrerelease(version)){ + titleElement.innerHTML = Lang.queryJS('settings.about.preReleaseTitle') + titleElement.style.color = '#ff886d' + checkElement.style.background = '#ff886d' + } else { + titleElement.innerHTML = Lang.queryJS('settings.about.stableReleaseTitle') + titleElement.style.color = null + checkElement.style.background = null + } +} + +/** + * Retrieve the version information and display it on the UI. + */ +function populateAboutVersionInformation(){ + populateVersionInformation(remote.app.getVersion(), document.getElementById('settingsAboutCurrentVersionValue'), document.getElementById('settingsAboutCurrentVersionTitle'), document.getElementById('settingsAboutCurrentVersionCheck')) +} + +/** + * Fetches the GitHub atom release feed and parses it for the release notes + * of the current version. This value is displayed on the UI. + */ +function populateReleaseNotes(){ + $.ajax({ + url: 'https://github.com/dscalzi/HeliosLauncher/releases.atom', + success: (data) => { + const version = 'v' + remote.app.getVersion() + const entries = $(data).find('entry') + + for(let i=0; i { + settingsAboutChangelogText.innerHTML = Lang.queryJS('settings.about.releaseNotesFailed') + }) +} + +/** + * Prepare account tab for display. + */ +function prepareAboutTab(){ + populateAboutVersionInformation() + populateReleaseNotes() +} + +/** + * Update Tab + */ + +const settingsTabUpdate = document.getElementById('settingsTabUpdate') +const settingsUpdateTitle = document.getElementById('settingsUpdateTitle') +const settingsUpdateVersionCheck = document.getElementById('settingsUpdateVersionCheck') +const settingsUpdateVersionTitle = document.getElementById('settingsUpdateVersionTitle') +const settingsUpdateVersionValue = document.getElementById('settingsUpdateVersionValue') +const settingsUpdateChangelogTitle = settingsTabUpdate.getElementsByClassName('settingsChangelogTitle')[0] +const settingsUpdateChangelogText = settingsTabUpdate.getElementsByClassName('settingsChangelogText')[0] +const settingsUpdateChangelogCont = settingsTabUpdate.getElementsByClassName('settingsChangelogContainer')[0] +const settingsUpdateActionButton = document.getElementById('settingsUpdateActionButton') + +/** + * Update the properties of the update action button. + * + * @param {string} text The new button text. + * @param {boolean} disabled Optional. Disable or enable the button + * @param {function} handler Optional. New button event handler. + */ +function settingsUpdateButtonStatus(text, disabled = false, handler = null){ + settingsUpdateActionButton.innerHTML = text + settingsUpdateActionButton.disabled = disabled + if(handler != null){ + settingsUpdateActionButton.onclick = handler + } +} + +/** + * Populate the update tab with relevant information. + * + * @param {Object} data The update data. + */ +function populateSettingsUpdateInformation(data){ + if(data != null){ + settingsUpdateTitle.innerHTML = isPrerelease(data.version) ? Lang.queryJS('settings.updates.newPreReleaseTitle') : Lang.queryJS('settings.updates.newReleaseTitle') + settingsUpdateChangelogCont.style.display = null + settingsUpdateChangelogTitle.innerHTML = data.releaseName + settingsUpdateChangelogText.innerHTML = data.releaseNotes + populateVersionInformation(data.version, settingsUpdateVersionValue, settingsUpdateVersionTitle, settingsUpdateVersionCheck) + + if(process.platform === 'darwin'){ + settingsUpdateButtonStatus(Lang.queryJS('settings.updates.downloadButton'), false, () => { + shell.openExternal(data.darwindownload) + }) + } else { + settingsUpdateButtonStatus(Lang.queryJS('settings.updates.downloadingButton'), true) + } + } else { + settingsUpdateTitle.innerHTML = Lang.queryJS('settings.updates.latestVersionTitle') + settingsUpdateChangelogCont.style.display = 'none' + populateVersionInformation(remote.app.getVersion(), settingsUpdateVersionValue, settingsUpdateVersionTitle, settingsUpdateVersionCheck) + settingsUpdateButtonStatus(Lang.queryJS('settings.updates.checkForUpdatesButton'), false, () => { + if(!isDev){ + ipcRenderer.send('autoUpdateAction', 'checkForUpdate') + settingsUpdateButtonStatus(Lang.queryJS('settings.updates.checkingForUpdatesButton'), true) + } + }) + } +} + +/** + * Prepare update tab for display. + * + * @param {Object} data The update data. + */ +function prepareUpdateTab(data = null){ + populateSettingsUpdateInformation(data) +} + +/** + * Settings preparation functions. + */ + +/** + * Prepare the entire settings UI. + * + * @param {boolean} first Whether or not it is the first load. + */ +async function prepareSettings(first = false) { + if(first){ + setupSettingsTabs() + initSettingsValidators() + prepareUpdateTab() + } else { + await prepareModsTab() + } + await initSettingsValues() + prepareAccountsTab() + await prepareJavaTab() + prepareAboutTab() +} + +// Prepare the settings UI on startup. +//prepareSettings(true) diff --git a/launcher/app/assets/js/scripts/uibinder.js b/launcher/app/assets/js/scripts/uibinder.js new file mode 100644 index 0000000..b68777c --- /dev/null +++ b/launcher/app/assets/js/scripts/uibinder.js @@ -0,0 +1,463 @@ +/** + * Initialize UI functions which depend on internal modules. + * Loaded after core UI functions are initialized in uicore.js. + */ +// Requirements +const path = require('path') +const { Type } = require('helios-distribution-types') + +const AuthManager = require('./assets/js/authmanager') +const ConfigManager = require('./assets/js/configmanager') +const { DistroAPI } = require('./assets/js/distromanager') + +let rscShouldLoad = false +let fatalStartupError = false + +// Mapping of each view to their container IDs. +const VIEWS = { + landing: '#landingContainer', + loginOptions: '#loginOptionsContainer', + login: '#loginContainer', + settings: '#settingsContainer', + welcome: '#welcomeContainer', + waiting: '#waitingContainer' +} + +// The currently shown view container. +let currentView + +/** + * Switch launcher views. + * + * @param {string} current The ID of the current view container. + * @param {*} next The ID of the next view container. + * @param {*} currentFadeTime Optional. The fade out time for the current view. + * @param {*} nextFadeTime Optional. The fade in time for the next view. + * @param {*} onCurrentFade Optional. Callback function to execute when the current + * view fades out. + * @param {*} onNextFade Optional. Callback function to execute when the next view + * fades in. + */ +function switchView(current, next, currentFadeTime = 500, nextFadeTime = 500, onCurrentFade = () => {}, onNextFade = () => {}){ + currentView = next + $(`${current}`).fadeOut(currentFadeTime, async () => { + await onCurrentFade() + $(`${next}`).fadeIn(nextFadeTime, async () => { + await onNextFade() + }) + }) +} + +/** + * Get the currently shown view container. + * + * @returns {string} The currently shown view container. + */ +function getCurrentView(){ + return currentView +} + +async function showMainUI(data){ + + if(!isDev){ + loggerAutoUpdater.info('Initializing..') + ipcRenderer.send('autoUpdateAction', 'initAutoUpdater', ConfigManager.getAllowPrerelease()) + } + + await prepareSettings(true) + updateSelectedServer(data.getServerById(ConfigManager.getSelectedServer())) + refreshServerStatus() + setTimeout(() => { + document.getElementById('frameBar').style.backgroundColor = 'rgba(0, 0, 0, 0.5)' + document.body.style.backgroundImage = `url('assets/images/backgrounds/${document.body.getAttribute('bkid')}.jpg')` + $('#main').show() + + const isLoggedIn = Object.keys(ConfigManager.getAuthAccounts()).length > 0 + + // If this is enabled in a development environment we'll get ratelimited. + // The relaunch frequency is usually far too high. + if(!isDev && isLoggedIn){ + validateSelectedAccount() + } + + if(ConfigManager.isFirstLaunch()){ + currentView = VIEWS.welcome + $(VIEWS.welcome).fadeIn(1000) + } else { + if(isLoggedIn){ + currentView = VIEWS.landing + $(VIEWS.landing).fadeIn(1000) + } else { + loginOptionsCancelEnabled(false) + loginOptionsViewOnLoginSuccess = VIEWS.landing + loginOptionsViewOnLoginCancel = VIEWS.loginOptions + currentView = VIEWS.loginOptions + $(VIEWS.loginOptions).fadeIn(1000) + } + } + + setTimeout(() => { + $('#loadingContainer').fadeOut(500, () => { + $('#loadSpinnerImage').removeClass('rotating') + }) + }, 250) + + }, 750) + // News supprimĂ© (SurviePote) — pas d'init. +} + +function showFatalStartupError(){ + setTimeout(() => { + $('#loadingContainer').fadeOut(250, () => { + document.getElementById('overlayContainer').style.background = 'none' + setOverlayContent( + Lang.queryJS('uibinder.startup.fatalErrorTitle'), + Lang.queryJS('uibinder.startup.fatalErrorMessage'), + Lang.queryJS('uibinder.startup.closeButton') + ) + setOverlayHandler(() => { + const window = remote.getCurrentWindow() + window.close() + }) + toggleOverlay(true) + }) + }, 750) +} + +/** + * Common functions to perform after refreshing the distro index. + * + * @param {Object} data The distro index object. + */ +function onDistroRefresh(data){ + updateSelectedServer(data.getServerById(ConfigManager.getSelectedServer())) + refreshServerStatus() + // News supprimĂ© (SurviePote). + syncModConfigurations(data) + ensureJavaSettings(data) +} + +/** + * Sync the mod configurations with the distro index. + * + * @param {Object} data The distro index object. + */ +function syncModConfigurations(data){ + + const syncedCfgs = [] + + for(let serv of data.servers){ + + const id = serv.rawServer.id + const mdls = serv.modules + const cfg = ConfigManager.getModConfiguration(id) + + if(cfg != null){ + + const modsOld = cfg.mods + const mods = {} + + for(let mdl of mdls){ + const type = mdl.rawModule.type + + if(type === Type.ForgeMod || type === Type.LiteMod || type === Type.LiteLoader || type === Type.FabricMod){ + if(!mdl.getRequired().value){ + const mdlID = mdl.getVersionlessMavenIdentifier() + if(modsOld[mdlID] == null){ + mods[mdlID] = scanOptionalSubModules(mdl.subModules, mdl) + } else { + mods[mdlID] = mergeModConfiguration(modsOld[mdlID], scanOptionalSubModules(mdl.subModules, mdl), false) + } + } else { + if(mdl.subModules.length > 0){ + const mdlID = mdl.getVersionlessMavenIdentifier() + const v = scanOptionalSubModules(mdl.subModules, mdl) + if(typeof v === 'object'){ + if(modsOld[mdlID] == null){ + mods[mdlID] = v + } else { + mods[mdlID] = mergeModConfiguration(modsOld[mdlID], v, true) + } + } + } + } + } + } + + syncedCfgs.push({ + id, + mods + }) + + } else { + + const mods = {} + + for(let mdl of mdls){ + const type = mdl.rawModule.type + if(type === Type.ForgeMod || type === Type.LiteMod || type === Type.LiteLoader || type === Type.FabricMod){ + if(!mdl.getRequired().value){ + mods[mdl.getVersionlessMavenIdentifier()] = scanOptionalSubModules(mdl.subModules, mdl) + } else { + if(mdl.subModules.length > 0){ + const v = scanOptionalSubModules(mdl.subModules, mdl) + if(typeof v === 'object'){ + mods[mdl.getVersionlessMavenIdentifier()] = v + } + } + } + } + } + + syncedCfgs.push({ + id, + mods + }) + + } + } + + ConfigManager.setModConfigurations(syncedCfgs) + ConfigManager.save() +} + +/** + * Ensure java configurations are present for the available servers. + * + * @param {Object} data The distro index object. + */ +function ensureJavaSettings(data) { + + // Nothing too fancy for now. + for(const serv of data.servers){ + ConfigManager.ensureJavaConfig(serv.rawServer.id, serv.effectiveJavaOptions, serv.rawServer.javaOptions?.ram) + } + + ConfigManager.save() +} + +/** + * Recursively scan for optional sub modules. If none are found, + * this function returns a boolean. If optional sub modules do exist, + * a recursive configuration object is returned. + * + * @returns {boolean | Object} The resolved mod configuration. + */ +function scanOptionalSubModules(mdls, origin){ + if(mdls != null){ + const mods = {} + + for(let mdl of mdls){ + const type = mdl.rawModule.type + // Optional types. + if(type === Type.ForgeMod || type === Type.LiteMod || type === Type.LiteLoader || type === Type.FabricMod){ + // It is optional. + if(!mdl.getRequired().value){ + mods[mdl.getVersionlessMavenIdentifier()] = scanOptionalSubModules(mdl.subModules, mdl) + } else { + if(mdl.hasSubModules()){ + const v = scanOptionalSubModules(mdl.subModules, mdl) + if(typeof v === 'object'){ + mods[mdl.getVersionlessMavenIdentifier()] = v + } + } + } + } + } + + if(Object.keys(mods).length > 0){ + const ret = { + mods + } + if(!origin.getRequired().value){ + ret.value = origin.getRequired().def + } + return ret + } + } + return origin.getRequired().def +} + +/** + * Recursively merge an old configuration into a new configuration. + * + * @param {boolean | Object} o The old configuration value. + * @param {boolean | Object} n The new configuration value. + * @param {boolean} nReq If the new value is a required mod. + * + * @returns {boolean | Object} The merged configuration. + */ +function mergeModConfiguration(o, n, nReq = false){ + if(typeof o === 'boolean'){ + if(typeof n === 'boolean') return o + else if(typeof n === 'object'){ + if(!nReq){ + n.value = o + } + return n + } + } else if(typeof o === 'object'){ + if(typeof n === 'boolean') return typeof o.value !== 'undefined' ? o.value : true + else if(typeof n === 'object'){ + if(!nReq){ + n.value = typeof o.value !== 'undefined' ? o.value : true + } + + const newMods = Object.keys(n.mods) + for(let i=0; i 0 + ? Lang.queryJS('uibinder.validateAccount.failedMessage', { 'account': selectedAcc.displayName }) + : Lang.queryJS('uibinder.validateAccount.failedMessageSelectAnotherAccount', { 'account': selectedAcc.displayName }), + Lang.queryJS('uibinder.validateAccount.loginButton'), + Lang.queryJS('uibinder.validateAccount.selectAnotherAccountButton') + ) + setOverlayHandler(() => { + + const isMicrosoft = selectedAcc.type === 'microsoft' + + if(isMicrosoft) { + // Empty for now + } else { + // Mojang + // For convenience, pre-populate the username of the account. + document.getElementById('loginUsername').value = selectedAcc.username + validateEmail(selectedAcc.username) + } + + loginOptionsViewOnLoginSuccess = getCurrentView() + loginOptionsViewOnLoginCancel = VIEWS.loginOptions + + if(accLen > 0) { + loginOptionsViewOnCancel = getCurrentView() + loginOptionsViewCancelHandler = () => { + if(isMicrosoft) { + ConfigManager.addMicrosoftAuthAccount( + selectedAcc.uuid, + selectedAcc.accessToken, + selectedAcc.username, + selectedAcc.expiresAt, + selectedAcc.microsoft.access_token, + selectedAcc.microsoft.refresh_token, + selectedAcc.microsoft.expires_at + ) + } else { + ConfigManager.addMojangAuthAccount(selectedAcc.uuid, selectedAcc.accessToken, selectedAcc.username, selectedAcc.displayName) + } + ConfigManager.save() + validateSelectedAccount() + } + loginOptionsCancelEnabled(true) + } else { + loginOptionsCancelEnabled(false) + } + toggleOverlay(false) + switchView(getCurrentView(), VIEWS.loginOptions) + }) + setDismissHandler(() => { + if(accLen > 1){ + prepareAccountSelectionList() + $('#overlayContent').fadeOut(250, () => { + bindOverlayKeys(true, 'accountSelectContent', true) + $('#accountSelectContent').fadeIn(250) + }) + } else { + const accountsObj = ConfigManager.getAuthAccounts() + const accounts = Array.from(Object.keys(accountsObj), v => accountsObj[v]) + // This function validates the account switch. + setSelectedAccount(accounts[0].uuid) + toggleOverlay(false) + } + }) + toggleOverlay(true, accLen > 0) + } else { + return true + } + } else { + return true + } +} + +/** + * Temporary function to update the selected account along + * with the relevent UI elements. + * + * @param {string} uuid The UUID of the account. + */ +function setSelectedAccount(uuid){ + const authAcc = ConfigManager.setSelectedAccount(uuid) + ConfigManager.save() + updateSelectedAccount(authAcc) + validateSelectedAccount() +} + +// Synchronous Listener +document.addEventListener('readystatechange', async () => { + + if (document.readyState === 'interactive' || document.readyState === 'complete'){ + if(rscShouldLoad){ + rscShouldLoad = false + if(!fatalStartupError){ + const data = await DistroAPI.getDistribution() + await showMainUI(data) + } else { + showFatalStartupError() + } + } + } + +}, false) + +// Actions that must be performed after the distribution index is downloaded. +ipcRenderer.on('distributionIndexDone', async (event, res) => { + if(res) { + const data = await DistroAPI.getDistribution() + syncModConfigurations(data) + ensureJavaSettings(data) + if(document.readyState === 'interactive' || document.readyState === 'complete'){ + await showMainUI(data) + } else { + rscShouldLoad = true + } + } else { + fatalStartupError = true + if(document.readyState === 'interactive' || document.readyState === 'complete'){ + showFatalStartupError() + } else { + rscShouldLoad = true + } + } +}) + +// Util for development +async function devModeToggle() { + DistroAPI.toggleDevMode(true) + const data = await DistroAPI.refreshDistributionOrFallback() + ensureJavaSettings(data) + updateSelectedServer(data.servers[0]) + syncModConfigurations(data) +} diff --git a/launcher/app/assets/js/scripts/uicore.js b/launcher/app/assets/js/scripts/uicore.js new file mode 100644 index 0000000..dae725f --- /dev/null +++ b/launcher/app/assets/js/scripts/uicore.js @@ -0,0 +1,213 @@ +/** + * Core UI functions are initialized in this file. This prevents + * unexpected errors from breaking the core features. Specifically, + * actions in this file should not require the usage of any internal + * modules, excluding dependencies. + */ +// Requirements +const $ = require('jquery') +const {ipcRenderer, shell, webFrame} = require('electron') +const remote = require('@electron/remote') +const isDev = require('./assets/js/isdev') +const { LoggerUtil } = require('helios-core') +const Lang = require('./assets/js/langloader') + +const loggerUICore = LoggerUtil.getLogger('UICore') +const loggerAutoUpdater = LoggerUtil.getLogger('AutoUpdater') + +// Log deprecation and process warnings. +process.traceProcessWarnings = true +process.traceDeprecation = true + +// Disable eval function. +window.eval = global.eval = function () { + throw new Error('Sorry, this app does not support window.eval().') +} + +// Display warning when devtools window is opened. +remote.getCurrentWebContents().on('devtools-opened', () => { + console.log('%cThe console is dark and full of terrors.', 'color: white; -webkit-text-stroke: 4px #a02d2a; font-size: 60px; font-weight: bold') + console.log('%cIf you\'ve been told to paste something here, you\'re being scammed.', 'font-size: 16px') + console.log('%cUnless you know exactly what you\'re doing, close this window.', 'font-size: 16px') +}) + +// Disable zoom, needed for darwin. +webFrame.setZoomLevel(0) +webFrame.setVisualZoomLevelLimits(1, 1) + +// Initialize auto updates in production environments. +let updateCheckListener +if(!isDev){ + ipcRenderer.on('autoUpdateNotification', (event, arg, info) => { + switch(arg){ + case 'checking-for-update': + loggerAutoUpdater.info('Checking for update..') + settingsUpdateButtonStatus(Lang.queryJS('uicore.autoUpdate.checkingForUpdateButton'), true) + break + case 'update-available': + loggerAutoUpdater.info('New update available', info.version) + + if(process.platform === 'darwin'){ + info.darwindownload = `https://github.com/dscalzi/HeliosLauncher/releases/download/v${info.version}/Helios-Launcher-setup-${info.version}${process.arch === 'arm64' ? '-arm64' : '-x64'}.dmg` + showUpdateUI(info) + } + + populateSettingsUpdateInformation(info) + break + case 'update-downloaded': + loggerAutoUpdater.info('Update ' + info.version + ' ready to be installed.') + settingsUpdateButtonStatus(Lang.queryJS('uicore.autoUpdate.installNowButton'), false, () => { + if(!isDev){ + ipcRenderer.send('autoUpdateAction', 'installUpdateNow') + } + }) + showUpdateUI(info) + break + case 'update-not-available': + loggerAutoUpdater.info('No new update found.') + settingsUpdateButtonStatus(Lang.queryJS('uicore.autoUpdate.checkForUpdatesButton')) + break + case 'ready': + updateCheckListener = setInterval(() => { + ipcRenderer.send('autoUpdateAction', 'checkForUpdate') + }, 1800000) + ipcRenderer.send('autoUpdateAction', 'checkForUpdate') + break + case 'realerror': + if(info != null && info.code != null){ + if(info.code === 'ERR_UPDATER_INVALID_RELEASE_FEED'){ + loggerAutoUpdater.info('No suitable releases found.') + } else if(info.code === 'ERR_XML_MISSED_ELEMENT'){ + loggerAutoUpdater.info('No releases found.') + } else { + loggerAutoUpdater.error('Error during update check..', info) + loggerAutoUpdater.debug('Error Code:', info.code) + } + } + break + default: + loggerAutoUpdater.info('Unknown argument', arg) + break + } + }) +} + +/** + * Send a notification to the main process changing the value of + * allowPrerelease. If we are running a prerelease version, then + * this will always be set to true, regardless of the current value + * of val. + * + * @param {boolean} val The new allow prerelease value. + */ +function changeAllowPrerelease(val){ + ipcRenderer.send('autoUpdateAction', 'allowPrereleaseChange', val) +} + +function showUpdateUI(info){ + //TODO Make this message a bit more informative `${info.version}` + document.getElementById('image_seal_container').setAttribute('update', true) + document.getElementById('image_seal_container').onclick = () => { + /*setOverlayContent('Update Available', 'A new update for the launcher is available. Would you like to install now?', 'Install', 'Later') + setOverlayHandler(() => { + if(!isDev){ + ipcRenderer.send('autoUpdateAction', 'installUpdateNow') + } else { + console.error('Cannot install updates in development environment.') + toggleOverlay(false) + } + }) + setDismissHandler(() => { + toggleOverlay(false) + }) + toggleOverlay(true, true)*/ + switchView(getCurrentView(), VIEWS.settings, 500, 500, () => { + settingsNavItemListener(document.getElementById('settingsNavUpdate'), false) + }) + } +} + +/* jQuery Example +$(function(){ + loggerUICore.info('UICore Initialized'); +})*/ + +document.addEventListener('readystatechange', function () { + if (document.readyState === 'interactive'){ + loggerUICore.info('UICore Initializing..') + + // Bind close button. + Array.from(document.getElementsByClassName('fCb')).map((val) => { + val.addEventListener('click', e => { + const window = remote.getCurrentWindow() + window.close() + }) + }) + + // Bind restore down button. + Array.from(document.getElementsByClassName('fRb')).map((val) => { + val.addEventListener('click', e => { + const window = remote.getCurrentWindow() + if(window.isMaximized()){ + window.unmaximize() + } else { + window.maximize() + } + document.activeElement.blur() + }) + }) + + // Bind minimize button. + Array.from(document.getElementsByClassName('fMb')).map((val) => { + val.addEventListener('click', e => { + const window = remote.getCurrentWindow() + window.minimize() + document.activeElement.blur() + }) + }) + + // Remove focus from social media buttons once they're clicked. + Array.from(document.getElementsByClassName('mediaURL')).map(val => { + val.addEventListener('click', e => { + document.activeElement.blur() + }) + }) + + } else if(document.readyState === 'complete'){ + + //266.01 + //170.8 + //53.21 + // Bind progress bar length to length of bot wrapper + //const targetWidth = document.getElementById("launch_content").getBoundingClientRect().width + //const targetWidth2 = document.getElementById("server_selection").getBoundingClientRect().width + //const targetWidth3 = document.getElementById("launch_button").getBoundingClientRect().width + + document.getElementById('launch_details').style.maxWidth = 266.01 + document.getElementById('launch_progress').style.width = 170.8 + document.getElementById('launch_details_right').style.maxWidth = 170.8 + document.getElementById('launch_progress_label').style.width = 53.21 + + } + +}, false) + +/** + * Open web links in the user's default browser. + */ +$(document).on('click', 'a[href^="http"]', function(event) { + event.preventDefault() + shell.openExternal(this.href) +}) + +/** + * Opens DevTools window if you hold (ctrl + shift + i). + * This will crash the program if you are using multiple + * DevTools, for example the chrome debugger in VS Code. + */ +document.addEventListener('keydown', function (e) { + if((e.key === 'I' || e.key === 'i') && e.ctrlKey && e.shiftKey){ + let window = remote.getCurrentWindow() + window.toggleDevTools() + } +}) \ No newline at end of file diff --git a/launcher/app/assets/js/scripts/welcome.js b/launcher/app/assets/js/scripts/welcome.js new file mode 100644 index 0000000..ed0399c --- /dev/null +++ b/launcher/app/assets/js/scripts/welcome.js @@ -0,0 +1,9 @@ +/** + * Script for welcome.ejs + */ +document.getElementById('welcomeButton').addEventListener('click', e => { + loginOptionsCancelEnabled(false) // False by default, be explicit. + loginOptionsViewOnLoginSuccess = VIEWS.landing + loginOptionsViewOnLoginCancel = VIEWS.loginOptions + switchView(VIEWS.welcome, VIEWS.loginOptions) +}) \ No newline at end of file diff --git a/launcher/app/assets/js/serverstatus.js b/launcher/app/assets/js/serverstatus.js new file mode 100644 index 0000000..9729f9c --- /dev/null +++ b/launcher/app/assets/js/serverstatus.js @@ -0,0 +1,65 @@ +const net = require('net') + +/** + * Retrieves the status of a minecraft server. + * + * @param {string} address The server address. + * @param {number} port Optional. The port of the server. Defaults to 25565. + * @returns {Promise.} A promise which resolves to an object containing + * status information. + */ +exports.getStatus = function(address, port = 25565){ + + if(port == null || port == ''){ + port = 25565 + } + if(typeof port === 'string'){ + port = parseInt(port) + } + + return new Promise((resolve, reject) => { + const socket = net.connect(port, address, () => { + let buff = Buffer.from([0xFE, 0x01]) + socket.write(buff) + }) + + socket.setTimeout(2500, () => { + socket.end() + reject({ + code: 'ETIMEDOUT', + errno: 'ETIMEDOUT', + address, + port + }) + }) + + socket.on('data', (data) => { + if(data != null && data != ''){ + let server_info = data.toString().split('\x00\x00\x00') + const NUM_FIELDS = 6 + if(server_info != null && server_info.length >= NUM_FIELDS){ + resolve({ + online: true, + version: server_info[2].replace(/\u0000/g, ''), + motd: server_info[3].replace(/\u0000/g, ''), + onlinePlayers: server_info[4].replace(/\u0000/g, ''), + maxPlayers: server_info[5].replace(/\u0000/g,'') + }) + } else { + resolve({ + online: false + }) + } + } + socket.end() + }) + + socket.on('error', (err) => { + socket.destroy() + reject(err) + // ENOTFOUND = Unable to resolve. + // ECONNREFUSED = Unable to connect to port. + }) + }) + +} \ No newline at end of file diff --git a/launcher/app/assets/lang/_custom.toml b/launcher/app/assets/lang/_custom.toml new file mode 100644 index 0000000..4155266 --- /dev/null +++ b/launcher/app/assets/lang/_custom.toml @@ -0,0 +1,20 @@ +# Custom Language File for Launcher Customizer - SurviePote + +[ejs.app] +title = "SurviePote" + +[ejs.landing] +mediaGitHubURL = "https://git.kisakay.com/k/mc" +mediaXURL = "#" +mediaInstagramURL = "#" +mediaYouTubeURL = "#" +mediaDiscordURL = "#TODO-DISCORD-INVITE" + +[ejs.settings] +sourceGithubLink = "https://git.kisakay.com/k/mc" +supportLink = "https://git.kisakay.com/k/mc/issues" + +[ejs.welcome] +welcomeHeader = "BIENVENUE SUR SURVIEPOTE" +welcomeDescription = "Serveur survie moddĂ© Fabric. Rejoins mcpv.ihorizon.org en un clic, mods et mises Ă  jour automatiques." +welcomeDescCTA = "Tu es Ă  quelques clics du serveur." diff --git a/launcher/app/assets/lang/en_US.toml b/launcher/app/assets/lang/en_US.toml new file mode 100644 index 0000000..b9f64cf --- /dev/null +++ b/launcher/app/assets/lang/en_US.toml @@ -0,0 +1,344 @@ +[ejs.landing] +updateAvailableTooltip = "Update Available" +usernamePlaceholder = "Username" +usernameEditButton = "Edit" +settingsTooltip = "Settings" +serverStatus = "SERVER" +serverStatusPlaceholder = "OFFLINE" +mojangStatus = "MOJANG STATUS" +mojangStatusTooltipTitle = "Services" +mojangStatusNETitle = "Non Essential" +newsButton = "NEWS" +launchButton = "PLAY" +launchButtonPlaceholder = "• No Server Selected" +launchDetails = "Please wait.." +newsNavigationStatus = "{currentPage} of {totalPages}" +newsErrorLoadSpan = "Checking for News.." +newsErrorFailedSpan = "Failed to Load News" +newsErrorRetryButton = "Try Again" +newsErrorNoneSpan = "No News" + +[ejs.login] +loginCancelText = "Cancel" +loginSubheader = "MINECRAFT LOGIN" +loginEmailError = "* Invalid Value" +loginEmailPlaceholder = "EMAIL OR USERNAME" +loginPasswordError = "* Required" +loginPasswordPlaceholder = "PASSWORD" +loginForgotPasswordLink = "https://minecraft.net/password/forgot/" +loginForgotPasswordText = "forgot password?" +loginRememberMeText = "remember me?" +loginButtonText = "LOGIN" +loginNeedAccountLink = "https://minecraft.net/store/minecraft-java-edition/" +loginNeedAccountText = "Need an Account?" +loginPasswordDisclaimer1 = "Your password is sent directly to mojang and never stored." +loginPasswordDisclaimer2 = "{appName} is not affiliated with Mojang AB." + +[ejs.loginOptions] +loginOptionsTitle = "Login Options" +loginWithMicrosoft = "Login with Microsoft" +loginWithMojang = "Login with Mojang" +cancelButton = "Cancel" + +[ejs.overlay] +serverSelectHeader = "Available Servers" +serverSelectConfirm = "Select" +serverSelectCancel = "Cancel" +accountSelectHeader = "Select an Account" +accountSelectConfirm = "Select" +accountSelectCancel = "Cancel" + +[ejs.settings] +navHeaderText = "Settings" +navAccount = "Account" +navMinecraft = "Minecraft" +navMods = "Mods" +navJava = "Java" +navLauncher = "Launcher" +navAbout = "About" +navUpdates = "Updates" +navDone = "Done" +tabAccountHeaderText = "Account Settings" +tabAccountHeaderDesc = "Add new accounts or manage existing ones." +microsoftAccount = "Microsoft" +addMicrosoftAccount = "+ Add Microsoft Account" +mojangAccount = "Mojang" +addMojangAccount = "+ Add Mojang Account" +minecraftTabHeaderText = "Minecraft Settings" +minecraftTabHeaderDesc = "Options related to game launch." +gameResolutionTitle = "Game Resolution" +launchFullscreenTitle = "Launch in fullscreen." +autoConnectTitle = "Automatically connect to the server on launch." +launchDetachedTitle = "Launch game process detached from launcher." +launchDetachedDesc = "If the game is not detached, closing the launcher will also close the game." +tabModsHeaderText = "Mod Settings" +tabModsHeaderDesc = "Enable or disable mods." +switchServerButton = "Switch" +requiredMods = "Required Mods" +optionalMods = "Optional Mods" +dropinMods = "Drop-in Mods" +addMods = "Add Mods" +dropinRefreshNote = "(F5 to Refresh)" +shaderpacks = "Shaderpacks" +shaderpackDesc = "Enable or disable shaders. Please note, shaders will only run smoothly on powerful setups. You may add custom packs here." +selectShaderpack = "Select Shaderpack" +tabJavaHeaderText = "Java Settings" +tabJavaHeaderDesc = "Manage the Java configuration (advanced)." +memoryTitle = "Memory" +maxRAM = "Maximum RAM" +minRAM = "Minimum RAM" +memoryDesc = "The recommended minimum RAM is 3 gigabytes. Setting the minimum and maximum values to the same value may reduce lag." +memoryTotalTitle = "Total" +memoryAvailableTitle = "Available" +javaExecutableTitle = "Java Executable" +javaExecSelDialogTitle = "Select Java Executable" +javaExecSelButtonText = "Choose File" +javaExecDesc = "The Java executable is validated before game launch." +javaPathDesc = "The path should end with {pathSuffix}." +jvmOptsTitle = "Additional JVM Options" +jvmOptsDesc = "Options to be provided to the JVM at runtime. -Xms and -Xmx should not be included." +launcherTabHeaderText = "Launcher Settings" +launcherTabHeaderDesc = "Options related to the launcher itself." +allowPrereleaseTitle = "Allow Pre-Release Updates." +allowPrereleaseDesc = "Pre-Releases include new features which may have not been fully tested or integrated.
    This will always be true if you are using a pre-release version." +dataDirectoryTitle = "Data Directory" +selectDataDirectory = "Select Data Directory" +chooseFolder = "Choose Folder" +dataDirectoryDesc = "All game files and local Java installations will be stored in the data directory.
    Screenshots and world saves are stored in the instance folder for the corresponding server configuration." +aboutTabHeaderText = "About" +aboutTabHeaderDesc = "View information and release notes for the current version." +aboutTitle = "{appName}" +stableRelease = "Stable Release" +versionText = "Version " +sourceGithub = "Source (GitHub)" +support = "Support" +devToolsConsole = "DevTools Console" +releaseNotes = "Release Notes" +changelog = "Changelog" +noReleaseNotes = "No Release Notes" +viewReleaseNotes = "View Release Notes on GitHub" +launcherUpdatesHeaderText = "Launcher Updates" +launcherUpdatesHeaderDesc = "Download, install, and review updates for the launcher." +checkForUpdates = "Check for Updates" +whatsNew = "What's New" +updateReleaseNotes = "Update Release Notes" + +[ejs.waiting] +waitingText = "Waiting for Microsoft.." + +[ejs.welcome] +continueButton = "CONTINUE" + + +[js.discord] +waiting = "Waiting for Client.." +state = "Server: {shortId}" + +[js.index] +microsoftLoginTitle = "Microsoft Login" +microsoftLogoutTitle = "Microsoft Logout" + +[js.login] +login = "LOGIN" +loggingIn = "LOGGING IN" +success = "SUCCESS" +tryAgain = "Try Again" + +[js.login.error] +invalidValue = "* Invalid Value" +requiredValue = "* Required" + +[js.login.error.unknown] +title = "Unknown Error During Login" +desc = "An unknown error has occurred. Please see the console for details." + +[js.landing.launch] +pleaseWait = "Please wait.." +failureTitle = "Error During Launch" +failureText = "See console (CTRL + Shift + i) for more details." +okay = "Okay" + +[js.landing.selectedAccount] +noAccountSelected = "No Account Selected" + +[js.landing.selectedServer] +noSelection = "No Server Selected" +loading = "Loading.." + +[js.landing.serverStatus] +server = "SERVER" +offline = "OFFLINE" +players = "PLAYERS" + +[js.landing.systemScan] +checking = "Checking system info.." +noCompatibleJava = "No Compatible
    Java Installation Found" +installJavaMessage = "In order to launch Minecraft, you need a 64-bit installation of Java {major}. Would you like us to install a copy?" +installJava = "Install Java" +installJavaManually = "Install Manually" +javaDownloadPrepare = "Preparing Java Download.." +javaDownloadFailureTitle = "Error During Java Download" +javaDownloadFailureText = "See console (CTRL + Shift + i) for more details." +javaRequired = "Java is Required
    to Launch" +javaRequiredMessage = 'A valid x64 installation of Java {major} is required to launch.

    Please refer to our Java Management Guide for instructions on how to manually install Java.' +javaRequiredDismiss = "I Understand" +javaRequiredCancel = "Go Back" + +[js.landing.downloadJava] +findJdkFailure = "Failed to find OpenJDK distribution." +javaDownloadCorruptedError = "Downloaded JDK has a bad hash, the file may be corrupted." +extractingJava = "Extracting Java" +javaInstalled = "Java Installed!" + +[js.landing.dlAsync] +loadingServerInfo = "Loading server information.." +fatalError = "Fatal Error" +unableToLoadDistributionIndex = "Could not load a copy of the distribution index. See the console (CTRL + Shift + i) for more details." +pleaseWait = "Please wait.." +errorDuringLaunchTitle = "Error During Launch" +seeConsoleForDetails = "See console (CTRL + Shift + i) for more details." +validatingFileIntegrity = "Validating file integrity.." +errorDuringFileVerificationTitle = "Error During File Verification" +downloadingFiles = "Downloading files.." +errorDuringFileDownloadTitle = "Error During File Download" +preparingToLaunch = "Preparing to launch.." +launchingGame = "Launching game.." +launchWrapperNotDownloaded = "The main file, LaunchWrapper, failed to download properly. As a result, the game cannot launch.

    To fix this issue, temporarily turn off your antivirus software and launch the game again.

    If you have time, please submit an issue and let us know what antivirus software you use. We'll contact them and try to straighten things out." +doneEnjoyServer = "Done. Enjoy the server!" +checkConsoleForDetails = "Please check the console (CTRL + Shift + i) for more details." + +[js.landing.news] +checking = "Checking for News" + +[js.landing.discord] +loading = "Loading game.." +joining = "Sailing to Westeros!" +joined = "Exploring the Realm!" + +[js.overlay] +dismiss = "Dismiss" + +[js.settings.fileSelectors] +executables = "Executables" +allFiles = "All Files" + +[js.settings.mstfLogin] +errorTitle = "Something Went Wrong" +errorMessage = "Microsoft authentication failed. Please try again." +okButton = "OK" + +[js.settings.mstfLogout] +errorTitle = "Something Went Wrong" +errorMessage = "Microsoft logout failed. Please try again." +okButton = "OK" + +[js.settings.authAccountSelect] +selectButton = "Select Account" +selectedButton = "Selected Account ✔" + +[js.settings.authAccountLogout] +lastAccountWarningTitle = "Warning
    This is Your Last Account" +lastAccountWarningMessage = "In order to use the launcher you must be logged into at least one account. You will need to login again after.

    Are you sure you want to log out?" +confirmButton = "I'm Sure" +cancelButton = "Cancel" + +[js.settings.authAccountPopulate] +username = "Username" +uuid = "UUID" +selectAccount = "Select Account" +selectedAccount = "Selected Account ✓" +logout = "Log Out" + +[js.settings.dropinMods] +removeButton = "Remove" +deleteFailedTitle = "Failed to Delete
    Drop-in Mod {fullName}" +deleteFailedMessage = "Make sure the file is not in use and try again." +failedToggleTitle = "Failed to Toggle
    One or More Drop-in Mods" +okButton = "Okay" + +[js.settings.serverListing] +mainServer = "Main Server" + +[js.settings.java] +selectedJava = "Selected: Java {version} ({vendor})" +invalidSelection = "Invalid Selection" +requiresJava = "Requires Java {major} x64." +availableOptions = "Available Options for Java {major} (HotSpot VM)" + +[js.settings.about] +preReleaseTitle = "Pre-release" +stableReleaseTitle = "Stable Release" +releaseNotesFailed = "Failed to load release notes." + +[js.settings.updates] +newReleaseTitle = "New Release Available" +newPreReleaseTitle = "New Pre-release Available" +downloadingButton = "Downloading.." +downloadButton = 'Download from GitHubClose the launcher and run the dmg to update.' +latestVersionTitle = "You Are Running the Latest Version" +checkForUpdatesButton = "Check for Updates" +checkingForUpdatesButton = "Checking for Updates.." + +[js.settings.msftLogin] +errorTitle = "Microsoft Login Failed" +errorMessage = "We were unable to authenticate your Microsoft account. Please try again." +okButton = "OK" + +[js.uibinder.startup] +fatalErrorTitle = "Fatal Error: Unable to Load Distribution Index" +fatalErrorMessage = "A connection could not be established to our servers to download the distribution index. No local copies were available to load.

    The distribution index is an essential file which provides the latest server information. The launcher is unable to start without it. Ensure you are connected to the internet and relaunch the application." +closeButton = "Close" + +[js.uibinder.validateAccount] +failedMessageTitle = "Failed to Refresh Login" +failedMessage = "We were unable to refresh the login for {account}. Please select another account or login again." +failedMessageSelectAnotherAccount = "We were unable to refresh the login for {account}. Please login again." +loginButton = "Login" +selectAnotherAccountButton = "Select Another Account" + +[js.uicore.autoUpdate] +checkingForUpdateButton = "Checking for Updates..." +installNowButton = "Install Now" +checkForUpdatesButton = "Check for Updates" + +[js.auth.microsoft.error] +noProfileTitle = "Error During Login:
    Profile Not Set Up" +noProfileDesc = "Your Microsoft account does not yet have a Minecraft profile set up. If you have recently purchased the game or redeemed it through Xbox Game Pass, you have to set up your profile on Minecraft.net.

    If you have not yet purchased the game, you can also do that on Minecraft.net." +noXboxAccountTitle = "Error During Login:
    No Xbox Account" +noXboxAccountDesc = "Your Microsoft account has no Xbox account associated with it." +xblBannedTitle = "Error During Login:
    Xbox Live Unavailable" +xblBannedDesc = "Your Microsoft account is from a country where Xbox Live is not available or banned." +under18Title = "Error During Login:
    Parental Approval Required" +under18Desc = "Accounts for users under the age of 18 must be added to a Family by an adult." +unknownTitle = "Unknown Error During Login" +unknownDesc = "An unknown error has occurred. Please see the console for details." + +[js.auth.mojang.error] +methodNotAllowedTitle = "Internal Error:
    Method Not Allowed" +methodNotAllowedDesc = "Method not allowed. Please report this error." +notFoundTitle = "Internal Error:
    Not Found" +notFoundDesc = "The authentication endpoint was not found. Please report this issue." +accountMigratedTitle = "Error During Login:
    Account Migrated" +accountMigratedDesc = "You've attempted to login with a migrated account. Try again using the account email as the username." +invalidCredentialsTitle = "Error During Login:
    Invalid Credentials" +invalidCredentialsDesc = "The email or password you've entered is incorrect. Please try again." +tooManyAttemptsTitle = "Error During Login:
    Too Many Attempts" +tooManyAttemptsDesc = "There have been too many login attempts with this account recently. Please try again later." +invalidTokenTitle = "Error During Login:
    Invalid Token" +invalidTokenDesc = "The provided access token is invalid." +tokenHasProfileTitle = "Error During Login:
    Token Has Profile" +tokenHasProfileDesc = "Access token already has a profile assigned. Selecting profiles is not implemented yet." +credentialsMissingTitle = "Error During Login:
    Credentials Missing" +credentialsMissingDesc = "Username/password was not submitted or password is less than 3 characters." +invalidSaltVersionTitle = "Error During Login:
    Invalid Salt Version" +invalidSaltVersionDesc = "Invalid salt version." +unsupportedMediaTypeTitle = "Internal Error:
    Unsupported Media Type" +unsupportedMediaTypeDesc = "Unsupported media type. Please report this error." +accountGoneTitle = "Error During Login:
    Account Migrated" +accountGoneDesc = "Account has been migrated to a Microsoft account. Please log in with Microsoft." +unreachableTitle = "Error During Login:
    Unreachable" +unreachableDesc = "Unable to reach the authentication servers. Ensure that they are online and you are connected to the internet." +gameNotPurchasedTitle = "Error During Login:
    Game Not Purchased" +gameNotPurchasedDesc = "The account you are trying to login with has not purchased a copy of Minecraft. You may purchase a copy on Minecraft.net" +unknownErrorTitle = "Unknown Error During Login" +unknownErrorDesc = "An unknown error has occurred. Please see the console for details." diff --git a/launcher/app/frame.ejs b/launcher/app/frame.ejs new file mode 100644 index 0000000..1151f91 --- /dev/null +++ b/launcher/app/frame.ejs @@ -0,0 +1,33 @@ +
    +
    +
    +
    + <%if (process.platform === 'darwin') { %> +
    +
    + + + +
    +
    + <% } else{ %> +
    +
    + <%= lang('app.title') %> +
    +
    + + + +
    +
    + <% } %> +
    +
    +
    \ No newline at end of file diff --git a/launcher/app/landing.ejs b/launcher/app/landing.ejs new file mode 100644 index 0000000..b9e0aab --- /dev/null +++ b/launcher/app/landing.ejs @@ -0,0 +1,162 @@ + \ No newline at end of file diff --git a/launcher/app/login.ejs b/launcher/app/login.ejs new file mode 100644 index 0000000..2da8072 --- /dev/null +++ b/launcher/app/login.ejs @@ -0,0 +1,65 @@ + \ No newline at end of file diff --git a/launcher/app/loginOptions.ejs b/launcher/app/loginOptions.ejs new file mode 100644 index 0000000..20aa67c --- /dev/null +++ b/launcher/app/loginOptions.ejs @@ -0,0 +1,34 @@ + \ No newline at end of file diff --git a/launcher/app/overlay.ejs b/launcher/app/overlay.ejs new file mode 100644 index 0000000..7faab15 --- /dev/null +++ b/launcher/app/overlay.ejs @@ -0,0 +1,41 @@ + \ No newline at end of file diff --git a/launcher/app/settings.ejs b/launcher/app/settings.ejs new file mode 100644 index 0000000..3fda82a --- /dev/null +++ b/launcher/app/settings.ejs @@ -0,0 +1,393 @@ + \ No newline at end of file diff --git a/launcher/app/waiting.ejs b/launcher/app/waiting.ejs new file mode 100644 index 0000000..c64726f --- /dev/null +++ b/launcher/app/waiting.ejs @@ -0,0 +1,8 @@ + \ No newline at end of file diff --git a/launcher/app/welcome.ejs b/launcher/app/welcome.ejs new file mode 100644 index 0000000..4b3fee4 --- /dev/null +++ b/launcher/app/welcome.ejs @@ -0,0 +1,25 @@ + \ No newline at end of file diff --git a/launcher/build/icon.png b/launcher/build/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..1e2a22eee4ff1737ee770dc63f591faac9604ecb GIT binary patch literal 6784 zcmeAS@N?(olHy`uVBq!ia0y~yU}OMc4mJh`hM1xiX&_#HkzWYo`9CMOLjP-W4ze>LU|F?WfkeB9CDiUQ;{I*{%Y&iR{-f<~QLy#AP22P5}fk8u+fu$h` zli?ot{eJ!b4-cC8`S|Vs6qp;FWahUqkgEUp^SN8$vokY$lV067Q~$%ZVy~E5#gmEd z|Aci}jyWhWOu3bm_+hfT|2%P9fgVQ(292#ptG--xZ$Bc#kuXbG-A~7fL1XLFsy7>t zw{bNZ3WRX5FdUJu|D(t-S{MSdPJj9FxS#)skw6GXf=n2H2UkNW z$apIk+mA(LzMPppPqIUdW$#Kyg$cHdj1Ip4t4kRe7hG}Gc@#J^ zJ*6+PI<4;8&2(|M^^2|7|NZrP{qv*w`~Pk;D6RYVbb36W94M?GE}vf~RrlxP@rS?P z@0Z{A``zw`z2^5M?o~dY`}xt@?f0Vg%(JNd_2t92+xhdw_qgTkn)%{h_4~UTf7n*8 zWq0T*PJX5ySM_q~!=KOR+w*hi@A+`(&<7Wu`HSM>{23Y?9<;?aAo=`+N_z$cZUyEa-)`rNtMM^>I&mWI^8d1~fW`^4 z9M^YxFlcObS@K`x*|BH;4QXHic9PshW(OmNGd&-(Ll_c1$uS58Gt6LS zWL)qqYKHyi|C$U5|D+fidlt-^AF`iG;n^C71q>&YOBom%9^SA2|F?Ms!-}ts8#59& zzgp)6(xY?Ikaxw^zZA<4t zg=;qLjbK=@SFHN;=CJ)b+%Fs#=>1IG#GoL+!LUhaf{%hWW2x^xRtIa_2gYwd#~s^v zN|Kq$;q6uphHL-+hAwAfXsE0WV_5aEa-LE`tggZjV}}K~PZ$}_{GR;px+c^7v!83W zrAcp{ydhRpqPc+~AdO*ZbpB0~1x^jm85*|iV^UDdW<2nmi6M*8fgxC(iP4B*+W%Ku z8m^z8XIuSY=79xsi@q#l3f>A13K52tj5?>8q8Of3o@EGPIdiL?)nQfxQ^OTzEe58> zl7FdF`XAc=`EZz(MM#w4?Uu!9FpVaRtPGhPuN)VgWfGFS$=q=3&t)ctfGe5|>l5E( zW!3o=2h5d9_}6duE92wLh6U^m+ZcAfnFF@+3nK%AQ6pFLy;TnU45rK+EJBTp>z6Zc zcqhmpbM+4+gQUZ=Kb&X&e>^U)FUP6CAW_ATVcfWqX(2;EweB>=&A!w1OSZi`ca|yX z**3)$O%3yBeinWyk;2+wFa9|BMbDcQhO2+}wEeXI`D8LP#~DTk{V0Yz#pi9iAJkXN zu{PXVt;w+1{`cqidp@62oZDEcWw2EzVmU)F!-7ZtD$EPm8+sP>{hKjs;`~?jruOUW zf4yAJ&cMOKaKQfmpUpxnw{#R3RwxKCWaS^3SGJ9Lv-$sTxAWzTZl?2nJfmrMlIxZ& zv**)j1{S8se}_NlGE8Dj`Eq{6xj*}x7!NZyI5aRYFfcLrI4)ps)?`@2#kk+`RY2+E zUUR-9yykZdo>V?sHajos$XWCIHg~FCukGIPbXv4n|BSiE&)faZ`SEJ?da?eVJ@f1T z{e1L%{r-Qy6!!gmHoJMn`pq-jzy1o3ul>3pegE}!r(eI3PGA@|;RhfV-cJ(!1U7_qiU~l44bUr|`HExHw>V7SG1O^!YjilcCLG z?Zvu_wG9%k{QY!VpTEcN!tVLUk7%#oW3=bruh-p`)zjW=v8Sshv# z&U?1bEH}QCUfHW8v;L}5%-rS7%_+PM4HspcH`_`SAO9fA;3KRdv8j5(`45qN5)aSo zoo0B&cbKb@LE$^^vr`*c?5}VB9mR2{^m;6lL+<`b|MX8YR7E-%HHb01+>^cdkb-w% z&nt;pf^x;h1s>IH^1&=;&ZjrBK6_s5!s_71n|1kroalZgg`=lZnD@9T7H4@)$ZWW; zuvI*`Ax^A;(ZJ}XZT}TUriNR^_nRG>L>srTKc65V_j+e-&zCh442>z=Gv+%ba5tDK zXUwh)I(q)Mgza{IRpAq&DKmw>7%^^QU|g^*?s`n|*@CxQuk&4xEx)T&b<=^n;YjZG zyW0$EuU)GKg$fq~(_~@IAA&tUD)m=0iZK4%+4tjX-vBy@o_a&80Q`crFI+3|v zFJLpnGKae6D`Br!tzIY9v3mW!Uk?lm|NQvq%FxNhv0%bdN1ypq=Dn(a|K^V-!v*;Z z?}T_*Bp%KbV`$jJZ(vZrV8XWtOTLuqJKDx8C@3heU^wuGq2c%!{SW!4RF?z`BuG6l z_jt>~5cQdzVTL`!f&dS-11ILkF)&O>wU@ixvzdpf(}dmEQQ3U%UThyY{cF;X8T)%hc(es> z@ho6(h*6%#?Z)wnVb8QWT)iF%CSkJ`}$+$w`gw_EWuv3^Bp8YI7<1fr}@N>@Q z-k-^zd{}?XJT~7@LFMfFhPS ztHu5@9N2Wl{+arUrsQ`U7uYXoQjBfbGwpcK3zlc=#5-6Rc6v`Z@PpHCwkAW``r94B zA70OWWIUCzhjBr;umbl7=_O@i49U-q|LB}y*(Tq;XZ|mTO>JAgUQ1|s{xyZ|tIAJS?mI7?&wHh&?dRDCTXKiPq)uDn2(g zJkCXYswj9;m-7ap=cP{+Pav+SG*`VnA8GBZSe>}amCAS14 z^V3t_zCE4adp^5H?dZmyMV7)FdP{CEeQFkv5U$|%Y@-`@%de=vGPXbe#4r-WEv}QwT;?!gRo$}>I**TD zXk<+1*%I)=)lWI@_#Y+*hMd3R4ZSw2m;B>g#*@Op&>(2vYs%tq;)VR@>(6B4PW$cs zaz1(40S4n`%k2VAw9Ve~cT(mDYs=^Q*J}jl{P9k;SGINF;EB@sU|Dy3)5ZE%wQtoK zwne?}`FE1x#p~loBxYGT_}zV2X=?9lZ79oX=P;q${E~bBLCsqqjjtBQdEd_Y^>$`j z$}9$!AF-Bq#UEcjb2!;SKqKML6{dS0E0DqL#bPR(-}qvm9zee z6DC@2e|7B7j6M_D%|bnUB*!684k#Np8W6fx6{+&&h%e2)N0GQ{BOqo-UAB9*0WcH z9Nzxyyiwe?FKWyuGVOLUsO(qnZ)kWvlZ}DpUyM{yRa^RIzgm9=j)u8x2Vy>NXIQ}3 zAX&UL%&l(P-K0ZVf4CZE*r)%P$a^JFZgFv!Ki_|!vx@0|LqC64igf6i-=;LHzGCm& zGuh>@XEJg$%w<1tr{gDQ7CR#YTPoLt%QX?j{u6VvzVI_-Jvn2?)V#gD=Gueu=L-E* z&*P06#rP!TK3`wy)N{A*-<&(A>;9%NtYhM6*vsZ%THh4faOQULTr=s4OY!&n{u$c8 zf4=9xj`*=BC)HMbxW3ZS_Nn=^^BeE&?RfdRxPf7Y(XW0+hR4heR;&UHOb!etk_=}Z zR{og$DL6IX{qH@I2Gw0}UL1aL=H=vD$$6Ll@0w#VjnTlic_TxQJa^_{IT3N4fKy7}^{j0`x*7wyn@l5wNV{V9h z;$xq1;8%TD(@dieGcMOu37ptjYjgZfq}-X}hEVSMm@}O}J^v?H$St4MxMe=WjYx(s zKIfHv9eSpiyf;{MUh|tO!?73!0h8Y>Oglwq=sC)rl#sZ%d8zq!mhDF!76iNhPf_`^ zJGtl^%Le_X|FL_*{NG7>|G#@qo1sjM!S?g=|MT_h&7NQR{p%TnLiMj`1_M?P{ezp< zC|L9V{Co4|^wi^b%;s1*pX2pNSNOlqq2a(0k-tTu;w$S-EAQ^V&vxNL9aF+{h6~2_ z?X?LLzPw2P|9i&I;|vE%7G7hJIC}ZcNM#pokE0%LTXIUsBWmq$f@v`9z1_qJ8 zGtL>X&e*Ma!r8W*h2bkhcj==Ij72w7r}G|pIz9d#uT)J@sra+J`}w;c7~S`k>N%;g zjkZ$Uk7&va?`I`QM0X--?X$nGR>m zGj6!dknm+$`g~REgbVxP^Eam^^GH{1(s5s?yZozK6+^~Zd)5Y%Ur#2Si(BR}Z9++% zBuCM!fOiTfRvy_|V$}4tE3F-_6Y>W&JYzO}A{ciW{e4@;k562Izd7m8i z>u0vrU8aQ4&+0`JpWg^+yuP`4{a%YDZnjA_>b$}Y3Yk@=_KWT2GYg1)WI5o+xPYCp z>f7;4^-WXeo6P4?U{6i6m0SGm)H-fnhNk<0yV9zsnKMCgyMA@7 z`DpBVVv56WP-bK}Yjq@|wxQBOwANvQ>h_!?2hYUZGMvVkV*P#>gTk>h_n95J>b_Lz|MlipiSabX z7%he^1}82lvmV)%7GM71>zVWQ>u1cr{{Qd$dCnnejt|Awya}Eg z(iq(t87%LuKKFC;Om*ohErvuN7n796x{A0y&0j znJl+N7)t*$F0Q-w&G^#wP)4IB2c?D+zd^ZHm!U|}<2Kuz*;TJh6e1m}n4U2t=&@Xr z{F+>6_Q#yES)nw{B`#(}HMe2g}FRSqUtC|9P$|q zw~9Y-Vq)05`APf3&E*R2HQ|@9JKF^DpZHwDwM^S!W)sMHdwDFj{b6UQ*uPy;!@J3H z`u;S=FRWMm_H^?$-1#(_+cv3go^T{%hU2tH34T94FRq_;Ka_!S!{y+HjR{#3t~PEw zt-r}~g&yZKA%4IAXG0ViB2wKSEbDbB-Cg+mz5lEEsRt$Yrq?klFnkkY2>HL+GDC;i zL$~4Y|F@EVP1sqPf+Y{gaKv=jHGFfqpTc5TbC*Ztar#z=-)}4#E@|)2OW}UCYvarP z^YzR1FNxo0J9gmAnU6m$|65ypP(Jvjf!C!|XLe{YBip9tTOwDwzs-7QmUN`_@cR8i z4BAW$J8O15JH{~KUM0hU&)Y5>`_jZcq{Z;#bBe$p*`9x^84`GyR?o6;uVZ7X`#Y6k1}EdQcWcfDACNxHV4*Xa%l=^I zp&5GBuYT^nBrL$NH0A=1e692CgQ~ zo*6m}3`>j)-mKWLQ$gbOhMu3vKg^^b*d77}yfNc}JM$)5`#R_{7+8I-b*sFm%)CNC zLHfb{Gu1kbpUQpbid(QV72jHWdyT?Ftp;#R1zNKnh+}h@<Gne+bubtSH6K0 z_Ul(O70Jizea<+0Ps;xM@t%D=9N!o<7&jyd8pJl}GGy^H9D7#$XJ-mSX+1;#41@ao zSB!H+3!a^s$tuv`c#h{mmSLXwBU3(+mEye&jo1F{-TF^;_Qoj;0u03r4u$=xd*avx z1U~%C5$XDQTSsAb^N;Eq;S4M{Zca}=vN?6eW@ZM4XYYOaE8?DiX4&7IB=2g^xPavV zYYyu?CWp67K5PMu0g4ku8UNWFV`oZX=y{jII7f+xV@Ifj#D^2V_xLfeZDN`i9Nux$ zu&yqBnbc_`Mo{RlnZS6Z*I}>Jfe5w$#tECh{>b6uJb2;jEj_m%b5v@+y}9X{(&fOw zD);lZ#T=E(+;Xpr=1VqMU1B)-a@Xr)%l7Y=+A?cP?~-?4J{rGTwjlg=3nTN@T0aK0 zwdY@2Rq8K)b3x_E)q5$zGTPIu*|N?wKHvZU_f#PUaV~~nfrL(eh6zRA85|PcTwd<4 z&sDuMdp)az8FQh62g8KqW6x&UKfLbG+2GB>ne;0axYKX^eG$r!eerVK@;Mf9*psdqy>@fkpOjh6cg9EUp8al2{$G7}G%RabyVi zdwhqT>>f0H?%Y?WhJ@h_PD#9u~T2Bt zzOt~eB{Q5TQn*_u%CMF1f*$j_%Y1J@!R^d+AcAc|ro%dx=au@*D;QS1+z%>QIv5fp zS&lI{h#hE?f5l*_w1$=8J##~uenT*WDnl6q!%oi`JL|X^mT{EoJDmShtnlEv|65ZB z2}|=%-}?Wo97|am7y`T)I2b5kylU$1)-mg}WH0hLx{U44xBC6}9dHczV@?6!7P)jl z{4m4pfB(2Y)E{(XvnhLX!wod-(CgHo!KlE%(jWwCHxtQZ05!5X85k89K$)7!0iAi} z;+37n&)a+-Jvlj9`lz76hs5j~p8}X17&sU}K4G91vsAF;(UH!?$rh!ruDCs{XT&*a kf^R~F*qNN^4*%KbO*%biz1Z4w3=9kmp00i_>zopr09%=F$N&HU literal 0 HcmV?d00001 diff --git a/launcher/dev-app-update.yml b/launcher/dev-app-update.yml new file mode 100644 index 0000000..13e9c3e --- /dev/null +++ b/launcher/dev-app-update.yml @@ -0,0 +1,7 @@ +# Releases SurviePote — https://git.kisakay.com/k/mc +# Gitea n'a pas de provider natif dans electron-updater : +# on utilise le provider gĂ©nĂ©rique (latest.yml + artefacts servis par les releases Gitea). +owner: k +repo: mc +provider: generic +url: https://git.kisakay.com/k/mc/releases/download/ diff --git a/launcher/docs/MicrosoftAuth.md b/launcher/docs/MicrosoftAuth.md new file mode 100644 index 0000000..d7f1c09 --- /dev/null +++ b/launcher/docs/MicrosoftAuth.md @@ -0,0 +1,52 @@ +# Microsoft Authentication + +Authenticating with Microsoft is fully supported by Helios Launcher. + +## Acquiring an Entra Client ID + +1. Navigate to https://portal.azure.com +2. In the search bar, search for **Microsoft Entra ID**. +3. In Microsoft Entra ID, go to **App Registrations** on the left pane (Under *Manage*). +4. Click **New Registration**. + - Set **Name** to be your launcher's name. + - Set **Supported account types** to *Accounts in any organizational directory (Any Microsoft Entra ID tenant - Multitenant) and personal Microsoft accounts (e.g. Skype, Xbox)* + - Leave **Redirect URI** blank. + - Register the application. +5. You should be on the application's management page. If not, Navigate back to **App Registrations**. Select the application you just registered. +6. Click **Authentication** on the left pane (Under *Manage*). +7. Click **Add Platform**. + - Select **Mobile and desktop applications**. + - Choose `https://login.microsoftonline.com/common/oauth2/nativeclient` as the **Redirect URI**. + - Select **Configure** to finish adding the platform. +8. Go to **Certificates & secrets**. + - Select **Client secrets**. + - Click **New client secret**. + - Set a description. + - Click **Add**. + - Don't copy the client secret, adding one is just a requirement from Microsoft. +8. Navigate back to **Overview**. +9. Copy **Application (client) ID**. + + +## Adding the Entra Client ID to Helios Launcher. + +In `app/assets/js/ipcconstants.js` you'll find **`AZURE_CLIENT_ID`**. Set it to your application's id. + +Note: Entra Client ID is NOT a secret value and **can** be stored in git. Reference: https://stackoverflow.com/questions/57306964/are-azure-active-directorys-tenantid-and-clientid-considered-secrets + +Then relaunch your app, and login. You'll be greeted with an error message, because the app isn't whitelisted yet. Microsoft needs some activity on the app before whitelisting it. __Trying to log in before requesting whitelist is mandatory.__ + +## Requesting whitelisting from Microsoft + +1. Ensure you have completed every step of this doc page. +2. Fill [this form](https://aka.ms/mce-reviewappid) with the required information. Remember this is a new appID for approval. You can find both the Client ID and the Tenant ID on the overview page in the Azure Portal. +3. Give Microsoft some time to review your app. +4. Once you have received Microsoft's approval, allow up to 24 hours for the changes to apply. + +---- + +You can now authenticate with Microsoft through the launcher. + +References: +- https://docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-register-app +- https://help.minecraft.net/hc/en-us/articles/16254801392141 diff --git a/launcher/docs/distro.md b/launcher/docs/distro.md new file mode 100644 index 0000000..762bb81 --- /dev/null +++ b/launcher/docs/distro.md @@ -0,0 +1,592 @@ +# Distribution Index + +You can use [Nebula](https://github.com/dscalzi/Nebula) to automate the generation of a distribution index. + +The most up to date and accurate descriptions of the distribution spec can be viewed in [helios-distribution-types](https://github.com/dscalzi/helios-distribution-types). + +The distribution index is written in JSON. The general format of the index is as posted below. + +```json +{ + "version": "1.0.0", + "discord": { + "clientId": "12334567890123456789", + "smallImageText": "WesterosCraft", + "smallImageKey": "seal-circle" + }, + "rss": "https://westeroscraft.com/articles/index.rss", + "servers": [ + { + "id": "Example_Server", + "name": "WesterosCraft Example Client", + "description": "Example WesterosCraft server. Connect for fun!", + "icon": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/example_icon.png", + "version": "0.0.1", + "address": "mc.westeroscraft.com:1337", + "minecraftVersion": "1.11.2", + "discord": { + "shortId": "Example", + "largeImageText": "WesterosCraft Example Server", + "largeImageKey": "server-example" + }, + "mainServer": true, + "autoconnect": true, + "modules": [ + "Module Objects Here" + ] + } + ] +} +``` + +## Distro Index Object + +#### Example +```JSON +{ + "version": "1.0.0", + "discord": { + "clientId": "12334567890123456789", + "smallImageText": "WesterosCraft", + "smallImageKey": "seal-circle" + }, + "rss": "https://westeroscraft.com/articles/index.rss", + "servers": [] +} +``` + +### `DistroIndex.version: string/semver` + +The version of the index format. Will be used in the future to gracefully push updates. + +### `DistroIndex.discord: object` + +Global settings for [Discord Rich Presence](https://discordapp.com/developers/docs/rich-presence/how-to). + +**Properties** + +* `discord.clientId: string` - Client ID for th Application registered with Discord. +* `discord.smallImageText: string` - Tootltip for the `smallImageKey`. +* `discord.smallImageKey: string` - Name of the uploaded image for the small profile artwork. + + +### `DistroIndex.rss: string/url` + +A URL to a RSS feed. Used for loading news. + +--- + +## Server Object + +#### Example +```JSON +{ + "id": "Example_Server", + "name": "WesterosCraft Example Client", + "description": "Example WesterosCraft server. Connect for fun!", + "icon": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/example_icon.png", + "version": "0.0.1", + "address": "mc.westeroscraft.com:1337", + "minecraftVersion": "1.11.2", + "discord": { + "shortId": "Example", + "largeImageText": "WesterosCraft Example Server", + "largeImageKey": "server-example" + }, + "mainServer": true, + "autoconnect": true, + "modules": [] +} +``` + +### `Server.id: string` + +The ID of the server. The launcher saves mod configurations and selected servers by ID. If the ID changes, all data related to the old ID **will be wiped**. + +### `Server.name: string` + +The name of the server. This is what users see on the UI. + +### `Server.description: string` + +A brief description of the server. Displayed on the UI to provide users more information. + +### `Server.icon: string/url` + +A URL to the server's icon. Will be displayed on the UI. + +### `Server.version: string/semver` + +The version of the server configuration. + +### `Server.address: string/url` + +The server's IP address. + +### `Server.minecraftVersion: string` + +The version of minecraft that the server is running. + +### `Server.discord: object` + +Server specific settings used for [Discord Rich Presence](https://discordapp.com/developers/docs/rich-presence/how-to). + +**Properties** + +* `discord.shortId: string` - Short ID for the server. Displayed on the second status line as `Server: shortId` +* `discord.largeImageText: string` - Ttooltip for the `largeImageKey`. +* `discord.largeImageKey: string` - Name of the uploaded image for the large profile artwork. + +### `Server.mainServer: boolean` + +Only one server in the array should have the `mainServer` property enabled. This will tell the launcher that this is the default server to select if either the previously selected server is invalid, or there is no previously selected server. If this field is not defined by any server (avoid this), the first server will be selected as the default. If multiple servers have `mainServer` enabled, the first one the launcher finds will be the effective value. Servers which are not the default may omit this property rather than explicitly setting it to false. + +### `Server.autoconnect: boolean` + +Whether or not the server can be autoconnected to. If false, the server will not be autoconnected to even when the user has the autoconnect setting enabled. + +### `Server.javaOptions: JavaOptions` + +**OPTIONAL** + +Sever-specific Java options. If not provided, defaults are used by the client. + +### `Server.modules: Module[]` + +An array of module objects. + +--- + +## JavaOptions Object + +Server-specific Java options. + +#### Example +```JSON +{ + "supported": ">=17", + "suggestedMajor": 17, + "platformOptions": [ + { + "platform": "darwin", + "architecture": "arm64", + "distribution": "CORRETTO" + } + ], + "ram": { + "recommended": 3072, + "minimum": 2048 + } +} +``` + +### `JavaOptions.platformOptions: JavaPlatformOptions[]` + +**OPTIONAL** + +Platform-specific java rules for this server configuration. Validation rules will be delegated to the client for any undefined properties. Java validation can be configured for specific platforms and architectures. The most specific ruleset will be applied. + +Maxtrix Precedence (Highest - Lowest) + - Current platform, current architecture (ex. win32 x64). + - Current platform, any architecture (ex. win32). + - Java Options base properties. + - Client logic (default logic in the client). + +Properties: + + - `platformOptions.platform: string` - The platform that this validation matrix applies to. + - `platformOptions.architecture: string` - Optional. The architecture that this validation matrix applies to. If omitted, applies to all architectures. + - `platformOptions.distribution: string` - Optional. See `JavaOptions.distribution`. + - `platformOptions.supported: string` - Optional. See `JavaOptions.supported`. + - `platformOptions.suggestedMajor: number` - Optional. See `JavaOptions.suggestedMajor`. + +### `JavaOptions.ram: object` + +**OPTIONAL** + +This allows you to require a minimum and recommended amount of RAM per server instance. The minimum is the smallest value the user can select in the settings slider. The recommended value will be the default value selected for that server. These values are specified in megabytes and must be an interval of 512. This allows configuration in intervals of half gigabytes. In the above example, the recommended ram value is 3 GB (3072 MB) and the minimum is 2 GB (2048 MB). + + - `ram.recommended: number` - The recommended amount of RAM in megabytes. Must be an interval of 512. + - `ram.minimum: number` - The absolute minimum amount of RAM in megabytes. Must be an interval of 512. + +### `JavaOptions.distribution: string` + +**OPTIONAL** + +Preferred JDK distribution to download if no applicable installation could be found. If omitted, the client will decide (decision may be platform-specific). + +### `JavaOptions.supported: string` + +**OPTIONAL** + +A semver range of supported JDK versions. + +Java version syntax is platform dependent. + +JDK 8 and prior +``` +1.{major}.{minor}_{patch}-b{build} +Ex. 1.8.0_152-b16 +``` + +JDK 9+ +``` +{major}.{minor}.{patch}+{build} +Ex. 11.0.12+7 +``` + +For processing, all versions will be translated into a semver compliant string. JDK 9+ is already semver. For versions 8 and below, `1.{major}.{minor}_{patch}-b{build}` will be translated to `{major}.{minor}.{patch}+{build}`. + +If specified, you must also specify suggestedMajor. + +If omitted, the client will decide based on the game version. + +### `JavaOptions.suggestedMajor: number` + +**OPTIONAL** + +The suggested major Java version. The suggested major should comply with the version range specified by supported, if defined. This will be used in messages displayed to the end user, and to automatically fetch a Java version. + +NOTE If supported is specified, suggestedMajor must be set. The launcher's default value may not comply with your custom major supported range. + +Common use case: + - supported: '>=17.x' + - suggestedMajor: 17 + +More involved: + - supported: '>=16 <20' + - suggestedMajor: 17 + +Given a wider support range, it becomes necessary to specify which major version in the range is the suggested. + +--- + +## Module Object + +A module is a generic representation of a file required to run the minecraft client. + +#### Example +```JSON +{ + "id": "com.example:artifact:1.0.0@jar.pack.xz", + "name": "Artifact 1.0.0", + "type": "Library", + "artifact": { + "size": 4231234, + "MD5": "7f30eefe5c51e1ae0939dab2051db75f", + "url": "http://files.site.com/maven/com/example/artifact/1.0.0/artifact-1.0.0.jar.pack.xz" + }, + "subModules": [ + { + "id": "examplefile", + "name": "Example File", + "type": "File", + "artifact": { + "size": 23423, + "MD5": "169a5e6cf30c2cc8649755cdc5d7bad7", + "path": "examplefile.txt", + "url": "http://files.site.com/examplefile.txt" + } + } + ] +} +``` + +The parent module will be stored maven style, it's destination path will be resolved by its id. The sub module has a declared `path`, so that value will be used. + +### `Module.id: string` + +The ID of the module. All modules that are not of type `File` **MUST** use a maven identifier. Version information and other metadata is pulled from the identifier. Modules which are stored maven style use the identifier to resolve the destination path. If the `extension` is not provided, it defaults to `jar`. + +**Template** + +`my.group:arifact:version@extension` + +`my/group/artifact/version/artifact-version.extension` + +**Example** + +`net.minecraft:launchwrapper:1.12` OR `net.minecraft:launchwrapper:1.12@jar` + +`net/minecraft/launchwrapper/1.12/launchwrapper-1.12.jar` + +If the module's artifact does not declare the `path` property, its path will be resolved from the ID. + +### `Module.name: string` + +The name of the module. Used on the UI. + +### `Module.type: string` + +The type of the module. + +### `Module.classpath: boolean` + +**OPTIONAL** + +If the module is of type `Library`, whether the library should be added to the classpath. Defaults to true. + +### `Module.required: Required` + +**OPTIONAL** + +Defines whether or not the module is required. If omitted, then the module will be required. + +Only applicable for modules of type: +* `ForgeMod` +* `LiteMod` +* `LiteLoader` + + +### `Module.artifact: Artifact` + +The download artifact for the module. + +### `Module.subModules: Module[]` + +**OPTIONAL** + +An array of sub modules declared by this module. Typically, files which require other files are declared as submodules. A quick example would be a mod, and the configuration file for that mod. Submodules can also declare submodules of their own. The file is parsed recursively, so there is no limit. + + +## Artifact Object + +The format of the module's artifact depends on several things. The most important factor is where the file will be stored. If you are providing a simple file to be placed in the root directory of the client files, you may decided to format the module as the `examplefile` module declared above. This module provides a `path` option, allowing you to directly set where the file will be saved to. Only the `path` will affect the final downloaded file. + +Other times, you may want to store the files maven-style, such as with libraries and mods. In this case you must declare the module as the example artifact above. The module `id` will be used to resolve the final path, effectively replacing the `path` property. It must be provided in maven format. More information on this is provided in the documentation for the `id` property. + +The resolved/provided paths are appended to a base path depending on the module's declared type. + +| Type | Path | +| ---- | ---- | +| `ForgeHosted` | ({`commonDirectory`}/libraries/{`path` OR resolved}) | +| `Fabric` | ({`commonDirectory`}/libraries/{`path` OR resolved}) | +| `LiteLoader` | ({`commonDirectory`}/libraries/{`path` OR resolved}) | +| `Library` | ({`commonDirectory`}/libraries/{`path` OR resolved}) | +| `ForgeMod` | ({`commonDirectory`}/modstore/{`path` OR resolved}) | +| `LiteMod` | ({`commonDirectory`}/modstore/{`path` OR resolved}) | +| `FabricMod` | ({`commonDirectory`}/mods/fabric/{`path` OR resolved}) | +| `File` | ({`instanceDirectory`}/{`Server.id`}/{`path` OR resolved}) | + +The `commonDirectory` and `instanceDirectory` values are stored in the launcher's config.json. + +### `Artifact.size: number` + +The size of the artifact. + +### `Artifact.MD5: string` + +The MD5 hash of the artifact. This will be used to validate local artifacts. + +### `Artifact.path: string` + +**OPTIONAL** + +A relative path to where the file will be saved. This is appended to the base path for the module's declared type. + +If this is not specified, the path will be resolved based on the module's ID. + +### `Artifact.url: string/url` + +The artifact's download url. + +## Required Object + +### `Required.value: boolean` + +**OPTIONAL** + +If the module is required. Defaults to true if this property is omited. + +### `Required.def: boolean` + +**OPTIONAL** + +If the module is enabled by default. Has no effect unless `Required.value` is false. Defaults to true if this property is omited. + +--- + +## Module Types + +### ForgeHosted + +The module type `ForgeHosted` represents forge itself. Currently, the launcher only supports modded servers, as vanilla servers can be connected to via the mojang launcher. The `Hosted` part is key, this means that the forge module must declare its required libraries as submodules. + +Ex. + +```json +{ + "id": "net.minecraftforge:forge:1.11.2-13.20.1.2429", + "name": "Minecraft Forge 1.11.2-13.20.1.2429", + "type": "ForgeHosted", + "artifact": { + "size": 4450992, + "MD5": "3fcc9b0104f0261397d3cc897e55a1c5", + "url": "http://files.minecraftforge.net/maven/net/minecraftforge/forge/1.11.2-13.20.1.2429/forge-1.11.2-13.20.1.2429-universal.jar" + }, + "subModules": [ + { + "id": "net.minecraft:launchwrapper:1.12", + "name": "Mojang (LaunchWrapper)", + "type": "Library", + "artifact": { + "size": 32999, + "MD5": "934b2d91c7c5be4a49577c9e6b40e8da", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/launchwrapper-1.12.jar" + } + } + ] +} +``` + +All of forge's required libraries are declared in the `version.json` file found in the root of the forge jar file. These libraries MUST be hosted and declared a submodules or forge will not work. + +There were plans to add a `Forge` type, in which the required libraries would be resolved by the launcher and downloaded from forge's servers. The forge servers are down at times, however, so this plan was stopped half-implemented. + +--- + +### Fabric + +The module type `Fabric` represents the fabric mod loader. Currently, the launcher only supports modded servers, as vanilla servers can be connected to via the mojang launcher. + +Ex. + +```json +{ + "id": "net.fabricmc:fabric-loader:0.15.0", + "name": "Fabric (fabric-loader)", + "type": "Fabric", + "artifact": { + "size": 1196222, + "MD5": "a43d5a142246801343b6cedef1c102c4", + "url": "http://localhost:8080/repo/lib/net/fabricmc/fabric-loader/0.15.0/fabric-loader-0.15.0.jar" + }, + "subModules": [ + { + "id": "1.20.1-fabric-0.15.0", + "name": "Fabric (version.json)", + "type": "VersionManifest", + "artifact": { + "size": 2847, + "MD5": "69a2bd43452325ba1bc882fa0904e054", + "url": "http://localhost:8080/repo/versions/1.20.1-fabric-0.15.0/1.20.1-fabric-0.15.0.json" + } + } +} +``` + +Fabric works similarly to Forge 1.13+. + +--- + +### LiteLoader + +The module type `LiteLoader` represents liteloader. It is handled as a library and added to the classpath at runtime. Special launch conditions are executed when liteloader is present and enabled. This module can be optional and toggled similarly to `ForgeMod` and `Litemod` modules. + +Ex. +```json +{ + "id": "com.mumfrey:liteloader:1.11.2", + "name": "Liteloader (1.11.2)", + "type": "LiteLoader", + "required": { + "value": false, + "def": false + }, + "artifact": { + "size": 1685422, + "MD5": "3a98b5ed95810bf164e71c1a53be568d", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/liteloader-1.11.2.jar" + }, + "subModules": [ + "All LiteMods go here" + ] +} +``` + +--- + +### Library + +The module type `Library` represents a library file which will be required to start the minecraft process. Each library module will be dynamically added to the `-cp` (classpath) argument while building the game process. + +Ex. + +```json +{ + "id": "net.sf.jopt-simple:jopt-simple:4.6", + "name": "Jopt-simple 4.6", + "type": "Library", + "artifact": { + "size": 62477, + "MD5": "13560a58a79b46b82057686543e8d727", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/jopt-simple-4.6.jar" + } +} +``` + +--- + +### ForgeMod + +The module type `ForgeMod` represents a mod loaded by the Forge Mod Loader (FML). These files are stored maven-style and passed to FML using forge's [Modlist format](https://github.com/MinecraftForge/FML/wiki/New-JSON-Modlist-format). + +Ex. +```json +{ + "id": "com.westeroscraft:westerosblocks:3.0.0-beta-6-133", + "name": "WesterosBlocks (3.0.0-beta-6-133)", + "type": "ForgeMod", + "artifact": { + "size": 16321712, + "MD5": "5a89e2ab18916c18965fc93a0766cc6e", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/prod-1.11.2/mods/WesterosBlocks.jar" + } +} +``` + +--- + +### LiteMod + +The module type `LiteMod` represents a mod loaded by liteloader. These files are stored maven-style and passed to liteloader using forge's [Modlist format](https://github.com/MinecraftForge/FML/wiki/New-JSON-Modlist-format). Documentation for liteloader's implementation of this can be found on [this issue](http://develop.liteloader.com/liteloader/LiteLoader/issues/34). + +Ex. +```json +{ + "id": "com.mumfrey:macrokeybindmod:0.14.4-1.11.2@litemod", + "name": "Macro/Keybind Mod (0.14.4-1.11.2)", + "type": "LiteMod", + "required": { + "value": false, + "def": false + }, + "artifact": { + "size": 1670811, + "MD5": "16080785577b391d426c62c8d3138558", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/prod-1.11.2/mods/macrokeybindmod.litemod" + } +} +``` + +--- + +### File + +The module type `file` represents a generic file required by the client, another module, etc. These files are stored in the server's instance directory. + +Ex. + +```json +{ + "id": "com.westeroscraft:westeroscraftrp:2017-08-16", + "name": "WesterosCraft Resource Pack (2017-08-16)", + "type": "file", + "artifact": { + "size": 45241339, + "MD5": "ec2d9fdb14d5c2eafe5975a240202f1a", + "path": "resourcepacks/WesterosCraft.zip", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/prod-1.11.2/resourcepacks/WesterosCraft.zip" + } +} +``` diff --git a/launcher/docs/sample_distribution.json b/launcher/docs/sample_distribution.json new file mode 100644 index 0000000..57bdb24 --- /dev/null +++ b/launcher/docs/sample_distribution.json @@ -0,0 +1,1584 @@ +{ + "version": "1.0.0", + "discord": { + "clientId": "385581240906022916", + "smallImageText": "WesterosCraft", + "smallImageKey": "seal-circle" + }, + "java": { + "oracle": "http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html" + }, + "rss": "https://forum.westeroscraft.com/forum/news.2/index.rss", + "servers": [ + { + "id": "WesterosCraft-1.11.2", + "name": "WesterosCraft Production Server", + "description": "Main WesterosCraft server. Connect to enter the Realm.", + "icon": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/server-prod.png", + "version": "3.9.4", + "address": "mc.westeroscraft.com", + "minecraftVersion": "1.11.2", + "discord": { + "shortId": "Production", + "largeImageText": "WesterosCraft Production Server", + "largeImageKey": "server-prod" + }, + "mainServer": true, + "autoconnect": true, + "modules": [ + { + "id": "net.minecraftforge:forge:1.11.2-13.20.1.2429", + "name": "Minecraft Forge", + "type": "ForgeHosted", + "artifact": { + "size": 4450992, + "MD5": "3fcc9b0104f0261397d3cc897e55a1c5", + "url": "http://files.minecraftforge.net/maven/net/minecraftforge/forge/1.11.2-13.20.1.2429/forge-1.11.2-13.20.1.2429-universal.jar" + }, + "subModules": [ + { + "id": "net.minecraft:launchwrapper:1.12", + "name": "Mojang (LaunchWrapper)", + "type": "Library", + "artifact": { + "size": 32999, + "MD5": "934b2d91c7c5be4a49577c9e6b40e8da", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/launchwrapper-1.12.jar" + } + }, + { + "id": "org.ow2.asm:asm-all:5.0.3", + "name": "Mojang (ASM)", + "type": "Library", + "artifact": { + "size": 241639, + "MD5": "c5cc4613bbdfba3ccf5f0ab85390d0b8", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/asm-all-5.0.3.jar" + } + }, + { + "id": "org.scala-lang:scala-library:2.11.1@jar.pack.xz", + "name": "Minecraft Forge (scala-library)", + "type": "Library", + "artifact": { + "size": 1474672, + "MD5": "379c15c4f724421c6d5d7aecedaf87a6", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/scala-library-2.11.1.jar.pack.xz" + } + }, + { + "id": "org.scala-lang:scala-compiler:2.11.1@jar.pack.xz", + "name": "Minecraft Forge (scala-compiler)", + "type": "Library", + "artifact": { + "size": 3076920, + "MD5": "7d89e952f2d5c74577310cd2c28e3f20", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/scala-compiler-2.11.1.jar.pack.xz" + } + }, + { + "id": "org.scala-lang:scala-actors-migration_2.11:1.1.0@jar.pack.xz", + "name": "Minecraft Forge (scala-actors-migration)", + "type": "Library", + "artifact": { + "size": 21324, + "MD5": "04e3428b2600ace33c7ae2bf1f6c0a4c", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/scala-actors-migration_2.11-1.1.0.jar.pack.xz" + } + }, + { + "id": "org.scala-lang.plugins:scala-continuations-library_2.11:1.0.2@jar.pack.xz", + "name": "Minecraft Forge (scala-continuations-library)", + "type": "Library", + "artifact": { + "size": 7956, + "MD5": "ed9b1d27aba8ac4090a3749c4dfc895a", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/scala-continuations-library_2.11-1.0.2.jar.pack.xz" + } + }, + { + "id": "org.scala-lang.plugins:scala-continuations-plugin_2.11.1:1.0.2@jar.pack.xz", + "name": "Minecraft Forge (scala-continuations-plugin)", + "type": "Library", + "artifact": { + "size": 46140, + "MD5": "a8232db22a72a981de6b1399eb86dff7", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/scala-continuations-plugin_2.11.1-1.0.2.jar.pack.xz" + } + }, + { + "id": "org.scala-lang:scala-parser-combinators_2.11:1.0.1@jar.pack.xz", + "name": "Minecraft Forge (scala-parser-combinators)", + "type": "Library", + "artifact": { + "size": 85568, + "MD5": "2e50a7df17680daadacca69f07f8a16d", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/scala-parser-combinators_2.11-1.0.1.jar.pack.xz" + } + }, + { + "id": "org.scala-lang:scala-reflect:2.11.1@jar.pack.xz", + "name": "Minecraft Forge (scala-reflect)", + "type": "Library", + "artifact": { + "size": 1070312, + "MD5": "84e5dc81c10e2bd74c579c9d0332fdd9", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/scala-reflect-2.11.1.jar.pack.xz" + } + }, + { + "id": "org.scala-lang:scala-swing_2.11:1.0.1", + "name": "Minecraft Forge (scala-swing)", + "type": "Library", + "artifact": { + "size": 736795, + "MD5": "1d360289e697022a3f57abaad344b28f", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/scala-swing_2.11-1.0.1.jar" + } + }, + { + "id": "org.scala-lang:scala-xml_2.11:1.0.2@jar.pack.xz", + "name": "Minecraft Forge (scala-xml)", + "type": "Library", + "artifact": { + "size": 217812, + "MD5": "cc891b094a4c32dedc56bfefe9b072ff", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/scala-xml_2.11-1.0.2.jar.pack.xz" + } + }, + { + "id": "com.typesafe.akka:akka-actor_2.11:2.3.3@jar.pack.xz", + "name": "Minecraft Forge (akka-actor)", + "type": "Library", + "artifact": { + "size": 746612, + "MD5": "25cb22c3078e9fb3f7a861c912924862", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/akka-actor_2.11-2.3.3.jar.pack.xz" + } + }, + { + "id": "com.typesafe:config:1.2.1@jar.pack.xz", + "name": "Minecraft Forge (typesafe-config)", + "type": "Library", + "artifact": { + "size": 56636, + "MD5": "10ec4ccabc4e68aac9cf87165ead5d7d", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/config-1.2.1.jar.pack.xz" + } + }, + { + "id": "lzma:lzma:0.0.1", + "name": "Mojang (LZMA)", + "type": "Library", + "artifact": { + "size": 5762, + "MD5": "a3e3c3186e41c4a1a3027ba2bb23cdc6", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/lzma-0.0.1.jar" + } + }, + { + "id": "net.sf.trove4j:trove4j:3.0.3", + "name": "Trove4J", + "type": "Library", + "artifact": { + "size": 2523218, + "MD5": "8fc4d4e0129244f9fd39650c5f30feb2", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/trove4j-3.0.3.jar" + } + }, + { + "id": "java3d:vecmath:1.5.2", + "name": "Vecmath", + "type": "Library", + "artifact": { + "size": 318956, + "MD5": "e5d2b7f46c4800a32f62ce75676a5710", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/vecmath-1.5.2.jar" + } + }, + { + "id": "net.sf.jopt-simple:jopt-simple:4.6", + "name": "Jopt-simple", + "type": "Library", + "artifact": { + "size": 62477, + "MD5": "13560a58a79b46b82057686543e8d727", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/jopt-simple-4.6.jar" + } + }, + { + "id": "net.minecraftforge:MercuriusUpdater:1.11.2", + "name": "MercuriusUpdater", + "type": "Library", + "artifact": { + "size": 15146, + "MD5": "7556d06064ebbfa3b334a15092d725d0", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/MercuriusUpdater-1.11.2.jar" + } + } + ] + }, + { + "id": "com.westeroscraft:westerosblocks:3.2.0-beta-1-190", + "name": "WesterosBlocks", + "type": "ForgeMod", + "artifact": { + "size": 17376788, + "MD5": "370f4f1804c93f498f31af8dac509605", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/prod-1.11.2/mods/WesterosBlocks.jar" + } + }, + { + "id": "com.westeroscraft:westeroscraftrp:2019-01-21", + "name": "WesterosCraft Resource Pack", + "type": "File", + "artifact": { + "size": 46999843, + "MD5": "309eb9e5296e9f55cfecb7d4058245a4", + "path": "resourcepacks/WesterosCraft.zip", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/prod-1.11.2/resourcepacks/WesterosCraft.zip" + } + }, + { + "id": "net.optifine:optifine:1.11.2_HD_U_C7", + "name": "Optifine", + "type": "ForgeMod", + "artifact": { + "size": 2254712, + "MD5": "0dd7761e908f9b245bb0dc0fac5649f5", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/prod-1.11.2/mods/OptiFine.jar" + } + }, + { + "id": "mezz:jei:1.11.2-4.5.0.290", + "name": "JustEnoughItems", + "type": "ForgeMod", + "artifact": { + "size": 538740, + "MD5": "f4d931f6db6210621a86fa1e7eae8016", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/prod-1.11.2/mods/jei.jar" + } + }, + { + "id": "org.blockartistry:dynsurround:1.11.2-3.4.9.3", + "name": "DynamicSurroundings", + "type": "ForgeMod", + "required": { + "value": false + }, + "artifact": { + "size": 22291385, + "MD5": "65403c66d8b3655b372f58047941d206", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/prod-1.11.2/mods/DynamicSurroundings.jar" + }, + "subModules": [ + { + "id": "dsurround.cfg", + "name": "DynamicSurroundings General Configuration File", + "type": "File", + "artifact": { + "size": 20258, + "path": "/config/dsurround/dsurround.cfg", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/prod-1.11.2/config/dsurround/dsurround.cfg" + } + }, + { + "id": "westeros.json", + "name": "DynamicSurroundings WesterosCraft Configuration File", + "type": "File", + "artifact": { + "size": 608, + "MD5": "44eab112ff24d0bd29974c270de868ba", + "path": "/config/dsurround/westeros.json", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/prod-1.11.2/config/dsurround/westeros.json" + } + } + ] + }, + { + "id": "octarine-noise:betterfoliage:1.11.2-2.1.10", + "name": "BetterFoliage", + "type": "ForgeMod", + "required": { + "value": false + }, + "artifact": { + "size": 4675903, + "MD5": "522fdf73b6e4343cb6243872fb7b4b6c", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/prod-1.11.2/mods/BetterFoliage.jar" + }, + "subModules": [ + { + "id": "betterfoliage.cfg", + "name": "BetterFoliage Configuration File", + "type": "File", + "artifact": { + "size": 7878, + "MD5": "6dd38f873c4129af05a2d6c500cbe954", + "path": "/config/betterfoliage.cfg", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/prod-1.11.2/config/betterfoliage.cfg" + } + } + ] + }, + { + "id": "techbrew:journeymap:1.11.2-5.4.7", + "name": "JourneyMap", + "type": "ForgeMod", + "required": { + "value": false + }, + "artifact": { + "size": 1735525, + "MD5": "1c3380502eb7b9a495581b2402d144df", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/prod-1.11.2/mods/journeymap.jar" + } + }, + { + "id": "com.github.hexomod:worldeditcuife2:2.1.1-mf-1.11.2-13.20.0.2228", + "name": "WorldEditCUI", + "type": "ForgeMod", + "required": { + "value": false + }, + "artifact": { + "size": 461691, + "MD5": "439f82b69f3464969163c188818c677b", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/prod-1.11.2/mods/worldeditcuife.jar" + } + }, + { + "id": "mcp.mobius:waila:1.7.1_1.11.2", + "name": "Waila", + "type": "ForgeMod", + "required": { + "value": false + }, + "artifact": { + "size": 542744, + "MD5": "26258a3557bf333e8f4ce8b1e9481031", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/prod-1.11.2/mods/Waila.jar" + } + }, + { + "id": "com.mumfrey:liteloader:1.11.2", + "name": "Liteloader", + "type": "LiteLoader", + "required": { + "value": false, + "def": false + }, + "artifact": { + "size": 1685422, + "MD5": "3a98b5ed95810bf164e71c1a53be568d", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/liteloader.jar" + }, + "subModules": [ + { + "id": "com.mumfrey:macrokeybindmod:0.14.4-1.11.2@litemod", + "name": "Macro/Keybind Mod", + "type": "LiteMod", + "required": { + "value": false, + "def": false + }, + "artifact": { + "size": 1670811, + "MD5": "16080785577b391d426c62c8d3138558", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/prod-1.11.2/mods/macrokeybindmod.litemod" + } + } + ] + }, + { + "id": "com.sonicether:seus:11.0", + "name": "Sonic Ether's Unbelievable Shaders", + "type": "File", + "artifact": { + "size": 175159, + "MD5": "bfa8c31d1da8131b59917bb2460205b1", + "path": "shaderpacks/SEUS v11.0.zip", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/prod-1.11.2/shaderpacks/SEUS.zip" + } + }, + { + "id": "options.txt", + "name": "Default Client Options", + "type": "File", + "artifact": { + "size": 1973, + "path": "options.txt", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/options-1.11.2.txt" + } + }, + { + "id": "servers.dat", + "name": "Saved Client Servers", + "type": "File", + "artifact": { + "size": 84, + "MD5": "71d99e229d7d2b8d2a6423e46832a4b8", + "path": "servers.dat", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/prod-1.11.2/servers.dat" + } + } + ] + }, + { + "id": "WesterosCraftTest-1.11.2", + "name": "WesterosCraft Test Server", + "description": "Main testing server. Experimental changes are live here.", + "icon": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/server-test.png", + "version": "3.9.4", + "address": "mc.westeroscraft.com:4444", + "minecraftVersion": "1.11.2", + "discord": { + "shortId": "Test Server", + "largeImageText": "WesterosCraft Test Server", + "largeImageKey": "server-test" + }, + "mainServer": false, + "autoconnect": true, + "modules": [ + { + "id": "net.minecraftforge:forge:1.11.2-13.20.1.2476", + "name": "Minecraft Forge", + "type": "ForgeHosted", + "artifact": { + "size": 4455536, + "MD5": "7cef816cc01d53a04a180f0214d2982a", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/forge-1.11.2-13.20.1.2476-universal.jar" + }, + "subModules": [ + { + "id": "net.minecraft:launchwrapper:1.12", + "name": "Mojang (LaunchWrapper)", + "type": "Library", + "artifact": { + "size": 32999, + "MD5": "934b2d91c7c5be4a49577c9e6b40e8da", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/launchwrapper-1.12.jar" + } + }, + { + "id": "org.ow2.asm:asm-all:5.0.3", + "name": "Mojang (ASM)", + "type": "Library", + "artifact": { + "size": 241639, + "MD5": "c5cc4613bbdfba3ccf5f0ab85390d0b8", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/asm-all-5.0.3.jar" + } + }, + { + "id": "org.scala-lang:scala-library:2.11.1@jar.pack.xz", + "name": "Minecraft Forge (scala-library)", + "type": "Library", + "artifact": { + "size": 1474672, + "MD5": "379c15c4f724421c6d5d7aecedaf87a6", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/scala-library-2.11.1.jar.pack.xz" + } + }, + { + "id": "org.scala-lang:scala-compiler:2.11.1@jar.pack.xz", + "name": "Minecraft Forge (scala-compiler)", + "type": "Library", + "artifact": { + "size": 3076920, + "MD5": "7d89e952f2d5c74577310cd2c28e3f20", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/scala-compiler-2.11.1.jar.pack.xz" + } + }, + { + "id": "org.scala-lang:scala-actors-migration_2.11:1.1.0@jar.pack.xz", + "name": "Minecraft Forge (scala-actors-migration)", + "type": "Library", + "artifact": { + "size": 21324, + "MD5": "04e3428b2600ace33c7ae2bf1f6c0a4c", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/scala-actors-migration_2.11-1.1.0.jar.pack.xz" + } + }, + { + "id": "org.scala-lang.plugins:scala-continuations-library_2.11:1.0.2@jar.pack.xz", + "name": "Minecraft Forge (scala-continuations-library)", + "type": "Library", + "artifact": { + "size": 7956, + "MD5": "ed9b1d27aba8ac4090a3749c4dfc895a", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/scala-continuations-library_2.11-1.0.2.jar.pack.xz" + } + }, + { + "id": "org.scala-lang.plugins:scala-continuations-plugin_2.11.1:1.0.2@jar.pack.xz", + "name": "Minecraft Forge (scala-continuations-plugin)", + "type": "Library", + "artifact": { + "size": 46140, + "MD5": "a8232db22a72a981de6b1399eb86dff7", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/scala-continuations-plugin_2.11.1-1.0.2.jar.pack.xz" + } + }, + { + "id": "org.scala-lang:scala-parser-combinators_2.11:1.0.1@jar.pack.xz", + "name": "Minecraft Forge (scala-parser-combinators)", + "type": "Library", + "artifact": { + "size": 85568, + "MD5": "2e50a7df17680daadacca69f07f8a16d", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/scala-parser-combinators_2.11-1.0.1.jar.pack.xz" + } + }, + { + "id": "org.scala-lang:scala-reflect:2.11.1@jar.pack.xz", + "name": "Minecraft Forge (scala-reflect)", + "type": "Library", + "artifact": { + "size": 1070312, + "MD5": "84e5dc81c10e2bd74c579c9d0332fdd9", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/scala-reflect-2.11.1.jar.pack.xz" + } + }, + { + "id": "org.scala-lang:scala-swing_2.11:1.0.1", + "name": "Minecraft Forge (scala-swing)", + "type": "Library", + "artifact": { + "size": 736795, + "MD5": "1d360289e697022a3f57abaad344b28f", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/scala-swing_2.11-1.0.1.jar" + } + }, + { + "id": "org.scala-lang:scala-xml_2.11:1.0.2@jar.pack.xz", + "name": "Minecraft Forge (scala-xml)", + "type": "Library", + "artifact": { + "size": 217812, + "MD5": "cc891b094a4c32dedc56bfefe9b072ff", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/scala-xml_2.11-1.0.2.jar.pack.xz" + } + }, + { + "id": "com.typesafe.akka:akka-actor_2.11:2.3.3@jar.pack.xz", + "name": "Minecraft Forge (akka-actor)", + "type": "Library", + "artifact": { + "size": 746612, + "MD5": "25cb22c3078e9fb3f7a861c912924862", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/akka-actor_2.11-2.3.3.jar.pack.xz" + } + }, + { + "id": "com.typesafe:config:1.2.1@jar.pack.xz", + "name": "Minecraft Forge (typesafe-config)", + "type": "Library", + "artifact": { + "size": 56636, + "MD5": "10ec4ccabc4e68aac9cf87165ead5d7d", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/config-1.2.1.jar.pack.xz" + } + }, + { + "id": "lzma:lzma:0.0.1", + "name": "Mojang (LZMA)", + "type": "Library", + "artifact": { + "size": 5762, + "MD5": "a3e3c3186e41c4a1a3027ba2bb23cdc6", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/lzma-0.0.1.jar" + } + }, + { + "id": "net.sf.trove4j:trove4j:3.0.3", + "name": "Trove4J", + "type": "Library", + "artifact": { + "size": 2523218, + "MD5": "8fc4d4e0129244f9fd39650c5f30feb2", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/trove4j-3.0.3.jar" + } + }, + { + "id": "java3d:vecmath:1.5.2", + "name": "Vecmath", + "type": "Library", + "artifact": { + "size": 318956, + "MD5": "e5d2b7f46c4800a32f62ce75676a5710", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/vecmath-1.5.2.jar" + } + }, + { + "id": "net.sf.jopt-simple:jopt-simple:4.6", + "name": "Jopt-simple", + "type": "Library", + "artifact": { + "size": 62477, + "MD5": "13560a58a79b46b82057686543e8d727", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/jopt-simple-4.6.jar" + } + }, + { + "id": "net.minecraftforge:MercuriusUpdater:1.11.2", + "name": "MercuriusUpdater", + "type": "Library", + "artifact": { + "size": 15146, + "MD5": "7556d06064ebbfa3b334a15092d725d0", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/MercuriusUpdater-1.11.2.jar" + } + } + ] + }, + { + "id": "com.westeroscraft:westerosblocks:3.2.0-beta-1-190", + "name": "WesterosBlocks", + "type": "ForgeMod", + "artifact": { + "size": 17376788, + "MD5": "370f4f1804c93f498f31af8dac509605", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.11.2/mods/WesterosBlocks.jar" + } + }, + { + "id": "com.westeroscraft:westeroscraftrp:2019-01-21", + "name": "WesterosCraft Resource Pack", + "type": "File", + "artifact": { + "size": 46999843, + "MD5": "309eb9e5296e9f55cfecb7d4058245a4", + "path": "resourcepacks/WesterosCraft.zip", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.11.2/resourcepacks/WesterosCraft.zip" + } + }, + { + "id": "net.optifine:optifine:1.11.2_HD_U_C7", + "name": "Optifine", + "type": "ForgeMod", + "artifact": { + "size": 2254712, + "MD5": "0dd7761e908f9b245bb0dc0fac5649f5", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.11.2/mods/OptiFine.jar" + } + }, + { + "id": "mezz:jei:1.11.2-4.5.1.296", + "name": "JustEnoughItems", + "type": "ForgeMod", + "artifact": { + "size": 542399, + "MD5": "584b3099d34c9a1b8649385b90831b34", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.11.2/mods/jei.jar" + } + }, + { + "id": "org.blockartistry:dynsurround:1.11.2-3.4.9.3", + "name": "DynamicSurroundings", + "type": "ForgeMod", + "required": { + "value": false + }, + "artifact": { + "size": 22291385, + "MD5": "65403c66d8b3655b372f58047941d206", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.11.2/mods/DynamicSurroundings.jar" + }, + "subModules": [ + { + "id": "dsurround.cfg", + "name": "DynamicSurroundings General Configuration File", + "type": "File", + "artifact": { + "size": 20849, + "path": "/config/dsurround/dsurround.cfg", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.11.2/config/dsurround/dsurround.cfg" + } + }, + { + "id": "westeros.json", + "name": "DynamicSurroundings WesterosCraft Configuration File", + "type": "File", + "artifact": { + "size": 608, + "MD5": "44eab112ff24d0bd29974c270de868ba", + "path": "/config/dsurround/westeros.json", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.11.2/config/dsurround/westeros.json" + } + } + ] + }, + { + "id": "octarine-noise:betterfoliage:1.11.2-2.1.10", + "name": "BetterFoliage", + "type": "ForgeMod", + "required": { + "value": false + }, + "artifact": { + "size": 4675903, + "MD5": "522fdf73b6e4343cb6243872fb7b4b6c", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.11.2/mods/BetterFoliage.jar" + }, + "subModules": [ + { + "id": "betterfoliage.cfg", + "name": "BetterFoliage Configuration File", + "type": "File", + "artifact": { + "size": 7878, + "MD5": "6dd38f873c4129af05a2d6c500cbe954", + "path": "/config/betterfoliage.cfg", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.11.2/config/betterfoliage.cfg" + } + } + ] + }, + { + "id": "techbrew:journeymap:1.11.2-5.5.2", + "name": "JourneyMap", + "type": "ForgeMod", + "required": { + "value": false + }, + "artifact": { + "size": 1799560, + "MD5": "4315e9939bf64bfa963c8674cb13e838", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.11.2/mods/journeymap.jar" + } + }, + { + "id": "com.github.hexomod:worldeditcuife2:2.1.2-mf-1.11.2-13.20.0.2228", + "name": "WorldEditCUI", + "type": "ForgeMod", + "required": { + "value": false + }, + "artifact": { + "size": 461696, + "MD5": "53f6eef360af5329d9e52b5351657908", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.11.2/mods/worldeditcuife.jar" + } + }, + { + "id": "mcp.mobius:waila:1.7.1_1.11.2", + "name": "Waila", + "type": "ForgeMod", + "required": { + "value": false + }, + "artifact": { + "size": 542744, + "MD5": "26258a3557bf333e8f4ce8b1e9481031", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.11.2/mods/Waila.jar" + } + }, + { + "id": "com.mumfrey:liteloader:1.11.2", + "name": "Liteloader", + "type": "LiteLoader", + "required": { + "value": false, + "def": false + }, + "artifact": { + "size": 1685422, + "MD5": "3a98b5ed95810bf164e71c1a53be568d", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.11.2/liteloader.jar" + }, + "subModules": [ + { + "id": "com.mumfrey:macrokeybindmod:0.14.4-1.11.2@litemod", + "name": "Macro/Keybind Mod", + "type": "LiteMod", + "required": { + "value": false, + "def": false + }, + "artifact": { + "size": 1670811, + "MD5": "16080785577b391d426c62c8d3138558", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.11.2/mods/macrokeybindmod.litemod" + } + } + ] + }, + { + "id": "com.sonicether:seus:11.0", + "name": "Sonic Ether's Unbelievable Shaders", + "type": "File", + "artifact": { + "size": 175159, + "MD5": "bfa8c31d1da8131b59917bb2460205b1", + "path": "shaderpacks/SEUS v11.0.zip", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.11.2/shaderpacks/SEUS.zip" + } + }, + { + "id": "options.txt", + "name": "Default Client Options", + "type": "File", + "artifact": { + "size": 1973, + "path": "options.txt", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/options-1.11.2.txt" + } + }, + { + "id": "servers.dat", + "name": "Saved Client Servers", + "type": "File", + "artifact": { + "size": 87, + "MD5": "594de6063df993b5fde31c7290226ee4", + "path": "servers.dat", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.11.2/servers.dat" + } + } + ] + }, + { + "id": "WesterosCraftTest-1.12.2", + "name": "WesterosCraft 1.12.2 Test Server", + "description": "Tests for our version change to 1.12.2 are live here.", + "icon": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/server-test.png", + "version": "4.2.1", + "address": "mc.westeroscraft.com:4445", + "minecraftVersion": "1.12.2", + "discord": { + "shortId": "1.12.2 Test Server", + "largeImageText": "WesterosCraft 1.12.2 Test Server", + "largeImageKey": "server-test" + }, + "mainServer": false, + "autoconnect": true, + "modules": [ + { + "id": "net.minecraftforge:forge:1.12.2-14.23.5.2797", + "name": "Minecraft Forge", + "type": "ForgeHosted", + "artifact": { + "size": 4937218, + "MD5": "5320593704af58b3906e7106d27e41c8", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/forge-1.12.2-14.23.5.2797-universal.jar" + }, + "subModules": [ + { + "id": "net.minecraft:launchwrapper:1.12", + "name": "Mojang (LaunchWrapper)", + "type": "Library", + "artifact": { + "size": 32999, + "MD5": "934b2d91c7c5be4a49577c9e6b40e8da", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/launchwrapper-1.12.jar" + } + }, + { + "id": "org.ow2.asm:asm-all:5.2", + "name": "Mojang (ASM)", + "type": "Library", + "artifact": { + "size": 247787, + "MD5": "f5ad16c7f0338b541978b0430d51dc83", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/asm-all-5.2.jar" + } + }, + { + "id": "jline:jline:2.13", + "name": "Mojang (jline)", + "type": "Library", + "artifact": { + "size": 248566, + "MD5": "f251ba666cccb260ff7215b2cbeee8d4", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/jline-2.13.jar" + } + }, + { + "id": "org.scala-lang:scala-library:2.11.1@jar.pack.xz", + "name": "Minecraft Forge (scala-library)", + "type": "Library", + "artifact": { + "size": 1474672, + "MD5": "379c15c4f724421c6d5d7aecedaf87a6", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/scala-library-2.11.1.jar.pack.xz" + } + }, + { + "id": "org.scala-lang:scala-compiler:2.11.1@jar.pack.xz", + "name": "Minecraft Forge (scala-compiler)", + "type": "Library", + "artifact": { + "size": 3076920, + "MD5": "7d89e952f2d5c74577310cd2c28e3f20", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/scala-compiler-2.11.1.jar.pack.xz" + } + }, + { + "id": "org.scala-lang:scala-actors-migration_2.11:1.1.0@jar.pack.xz", + "name": "Minecraft Forge (scala-actors-migration)", + "type": "Library", + "artifact": { + "size": 21324, + "MD5": "04e3428b2600ace33c7ae2bf1f6c0a4c", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/scala-actors-migration_2.11-1.1.0.jar.pack.xz" + } + }, + { + "id": "org.scala-lang.plugins:scala-continuations-library_2.11:1.0.2@jar.pack.xz", + "name": "Minecraft Forge (scala-continuations-library)", + "type": "Library", + "artifact": { + "size": 7956, + "MD5": "ed9b1d27aba8ac4090a3749c4dfc895a", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/scala-continuations-library_2.11-1.0.2.jar.pack.xz" + } + }, + { + "id": "org.scala-lang.plugins:scala-continuations-plugin_2.11.1:1.0.2@jar.pack.xz", + "name": "Minecraft Forge (scala-continuations-plugin)", + "type": "Library", + "artifact": { + "size": 46140, + "MD5": "a8232db22a72a981de6b1399eb86dff7", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/scala-continuations-plugin_2.11.1-1.0.2.jar.pack.xz" + } + }, + { + "id": "org.scala-lang:scala-parser-combinators_2.11:1.0.1@jar.pack.xz", + "name": "Minecraft Forge (scala-parser-combinators)", + "type": "Library", + "artifact": { + "size": 85568, + "MD5": "2e50a7df17680daadacca69f07f8a16d", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/scala-parser-combinators_2.11-1.0.1.jar.pack.xz" + } + }, + { + "id": "org.scala-lang:scala-reflect:2.11.1@jar.pack.xz", + "name": "Minecraft Forge (scala-reflect)", + "type": "Library", + "artifact": { + "size": 1070312, + "MD5": "84e5dc81c10e2bd74c579c9d0332fdd9", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/scala-reflect-2.11.1.jar.pack.xz" + } + }, + { + "id": "org.scala-lang:scala-swing_2.11:1.0.1", + "name": "Minecraft Forge (scala-swing)", + "type": "Library", + "artifact": { + "size": 736795, + "MD5": "1d360289e697022a3f57abaad344b28f", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/scala-swing_2.11-1.0.1.jar" + } + }, + { + "id": "org.scala-lang:scala-xml_2.11:1.0.2@jar.pack.xz", + "name": "Minecraft Forge (scala-xml)", + "type": "Library", + "artifact": { + "size": 217812, + "MD5": "cc891b094a4c32dedc56bfefe9b072ff", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/scala-xml_2.11-1.0.2.jar.pack.xz" + } + }, + { + "id": "com.typesafe.akka:akka-actor_2.11:2.3.3@jar.pack.xz", + "name": "Minecraft Forge (akka-actor)", + "type": "Library", + "artifact": { + "size": 746612, + "MD5": "25cb22c3078e9fb3f7a861c912924862", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/akka-actor_2.11-2.3.3.jar.pack.xz" + } + }, + { + "id": "com.typesafe:config:1.2.1@jar.pack.xz", + "name": "Minecraft Forge (typesafe-config)", + "type": "Library", + "artifact": { + "size": 56636, + "MD5": "10ec4ccabc4e68aac9cf87165ead5d7d", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/config-1.2.1.jar.pack.xz" + } + }, + { + "id": "lzma:lzma:0.0.1", + "name": "Mojang (LZMA)", + "type": "Library", + "artifact": { + "size": 5762, + "MD5": "a3e3c3186e41c4a1a3027ba2bb23cdc6", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/lzma-0.0.1.jar" + } + }, + { + "id": "net.sf.trove4j:trove4j:3.0.3", + "name": "Trove4J", + "type": "Library", + "artifact": { + "size": 2523218, + "MD5": "8fc4d4e0129244f9fd39650c5f30feb2", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/trove4j-3.0.3.jar" + } + }, + { + "id": "java3d:vecmath:1.5.2", + "name": "Vecmath", + "type": "Library", + "artifact": { + "size": 318956, + "MD5": "e5d2b7f46c4800a32f62ce75676a5710", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/vecmath-1.5.2.jar" + } + }, + { + "id": "net.sf.jopt-simple:jopt-simple:5.0.3", + "name": "Jopt-simple", + "type": "Library", + "artifact": { + "size": 78175, + "MD5": "0a5ec84e23df9d7cfb4063bc55f2744c", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/jopt-simple-5.0.3.jar" + } + }, + { + "id": "org.apache.maven:maven-artifact:3.5.3", + "name": "maven-artifact", + "type": "Library", + "artifact": { + "size": 54961, + "MD5": "7741ebf29690ee7d9dde9cf4376347fc", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/maven-artifact-3.5.3.jar" + } + }, + { + "id": "net.minecraftforge:MercuriusUpdater:1.12.2", + "name": "MercuriusUpdater", + "type": "Library", + "artifact": { + "size": 15098, + "MD5": "6eb9e61097bee3103a2fdc42746b76a4", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/MercuriusUpdater-1.12.2.jar" + } + } + ] + }, + { + "id": "com.westeroscraft:westerosblocks:4.0.0-beta-1-66", + "name": "WesterosBlocks", + "type": "ForgeMod", + "artifact": { + "size": 17286330, + "MD5": "e5c38ef42e9cc4b957122207dcf95f4f", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.12.2/mods/WesterosBlocks.jar" + } + }, + { + "id": "com.westeroscraft:westeroscraftrp:2019-01-21", + "name": "WesterosCraft Resource Pack", + "type": "File", + "artifact": { + "size": 47002312, + "MD5": "86b169611ca0e51fdc47384d8423c402", + "path": "resourcepacks/WesterosCraft.zip", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.12.2/resourcepacks/WesterosCraft.zip" + } + }, + { + "id": "net.optifine:optifine:1.12.2_HD_U_E3", + "name": "Optifine", + "type": "ForgeMod", + "artifact": { + "size": 2444057, + "MD5": "7ec95c57ac1a224d6eb93bd370e4ac37", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.12.2/mods/OptiFine.jar" + } + }, + { + "id": "mezz:jei:1.12.2-4.14.3.242", + "name": "JustEnoughItems", + "type": "ForgeMod", + "artifact": { + "size": 620682, + "MD5": "ae6d0e6e873ef6c20f41097dc7fee8c6", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.12.2/mods/jei.jar" + } + }, + { + "id": "org.blockartistry:dynsurround:1.12.2-3.4.10.5", + "name": "DynamicSurroundings", + "type": "ForgeMod", + "required": { + "value": false + }, + "artifact": { + "size": 22507134, + "MD5": "3d75602c66b7ccfc23c342e8d5e07469", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.12.2/mods/DynamicSurroundings.jar" + }, + "subModules": [ + { + "id": "dsurround.cfg", + "name": "DynamicSurroundings General Configuration File", + "type": "File", + "artifact": { + "size": 22179, + "path": "/config/dsurround/dsurround.cfg", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.12.2/config/dsurround/dsurround.cfg" + } + }, + { + "id": "westeros.json", + "name": "DynamicSurroundings WesterosCraft Configuration File", + "type": "File", + "artifact": { + "size": 608, + "MD5": "44eab112ff24d0bd29974c270de868ba", + "path": "/config/dsurround/westeros.json", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.12.2/config/dsurround/westeros.json" + } + } + ] + }, + { + "id": "octarine-noise:betterfoliage:1.12-2.2.0", + "name": "BetterFoliage", + "type": "ForgeMod", + "required": { + "value": false + }, + "artifact": { + "size": 926081, + "MD5": "e05a720c5900b9bac4e01179abe8eef6", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.12.2/mods/BetterFoliage.jar" + }, + "subModules": [ + { + "id": "betterfoliage.cfg", + "name": "BetterFoliage Configuration File", + "type": "File", + "artifact": { + "size": 7878, + "MD5": "6dd38f873c4129af05a2d6c500cbe954", + "path": "/config/betterfoliage.cfg", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.12.2/config/betterfoliage.cfg" + } + } + ] + }, + { + "id": "forgelin:forgelin:1.8.2", + "name": "Forgelin", + "type": "ForgeMod", + "artifact": { + "size": 5124663, + "MD5": "59035365f7af35f599d1c4baade64d8b", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.12.2/mods/Forgelin.jar" + } + }, + { + "id": "techbrew:journeymap:1.12.2-5.5.3", + "name": "JourneyMap", + "type": "ForgeMod", + "required": { + "value": false + }, + "artifact": { + "size": 1831161, + "MD5": "d3b5a672d2393f9fe63903598d50c769", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.12.2/mods/journeymap.jar" + } + }, + { + "id": "com.github.hexomod:worldeditcuife2:2.2.0-mf-1.12.2-14.23.5.2768", + "name": "WorldEditCUI", + "type": "ForgeMod", + "required": { + "value": false + }, + "artifact": { + "size": 459294, + "MD5": "2b8c1c3bc48c2d80b71daa658f656edb", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.12.2/mods/worldeditcuife.jar" + } + }, + { + "id": "com.mumfrey:liteloader:1.12.2", + "name": "Liteloader", + "type": "LiteLoader", + "required": { + "value": false, + "def": false + }, + "artifact": { + "size": 1680383, + "MD5": "1420785ecbfed5aff4a586c5c9dd97eb", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/1.12.2/liteloader.jar" + }, + "subModules": [ + { + "id": "com.mumfrey:macrokeybindmod:0.15.4-1.12.1@litemod", + "name": "Macro/Keybind Mod", + "type": "LiteMod", + "required": { + "value": false, + "def": false + }, + "artifact": { + "size": 1726452, + "MD5": "9ba3ed960bbb676743a3b6c2e1efc484", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.12.2/mods/macrokeybindmod.litemod" + } + } + ] + }, + { + "id": "com.sonicether:seus-renewed:1.0.0", + "name": "Sonic Ether's Unbelievable Shaders Renewed", + "type": "File", + "artifact": { + "size": 7062491, + "MD5": "e68cc9f8ffc8fad66583b9b2cc05356f", + "path": "shaderpacks/SEUS-Renewed.zip", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.12.2/shaderpacks/SEUS-Renewed.zip" + } + }, + { + "id": "options.txt", + "name": "Default Client Options", + "type": "File", + "artifact": { + "size": 1973, + "path": "options.txt", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/options-1.12.2.txt" + } + }, + { + "id": "servers.dat", + "name": "Saved Client Servers", + "type": "File", + "artifact": { + "size": 87, + "MD5": "64dc1db90935997f07dfac422206f1de", + "path": "servers.dat", + "url": "http://mc.westeroscraft.com/WesterosCraftLauncher/test-1.12.2/servers.dat" + } + } + ] + }, + { + "id": "WesterosCraftTest-1.13.2", + "name": "WesterosCraft 1.13.2 Test Server", + "description": "Tests for our version change to 1.13.2 are live here.", + "icon": "http://mc.westeroscraft.com/WesterosCraftLauncher/files/server-test.png", + "version": "5.0.0", + "address": "mc.westeroscraft.com:4445", + "minecraftVersion": "1.13.2", + "discord": { + "shortId": "1.13.2 Test Server", + "largeImageText": "WesterosCraft 1.13.2 Test Server", + "largeImageKey": "server-test" + }, + "mainServer": false, + "autoconnect": false, + "modules": [ + { + "id": "net.minecraftforge:forge:1.13.2-25.0.219", + "name": "Minecraft Forge (base jar)", + "type": "ForgeHosted", + "artifact": { + "size": 159918, + "MD5": "c5a9c40711feb2b4ab0329c48256e30d", + "url": "" + }, + "subModules": [ + { + "id": "net.minecraftforge:forge:1.13.2-25.0.219:universal", + "name": "Minecraft Forge (universal jar)", + "type": "Library", + "artifact": { + "size": 2343272 , + "MD5": "338c495d266da44ac1955caf91cc14c4", + "url": "" + } + }, + { + "id": "net.minecraftforge:forge:1.13.2-25.0.219:client", + "name": "Minecraft Forge (client jar)", + "type": "Library", + "artifact": { + "size": 3065519, + "MD5": "df63f7288a8118c9b8836a3e53827aac", + "url": "" + } + }, + { + "id": "net.minecraft:client:1.13.2:extra", + "name": "Minecraft Forge (client extra)", + "type": "Library", + "artifact": { + "size": 9622361, + "MD5": "dc66e2219e3de6e7ca05847fd3c7746d", + "url": "" + } + }, + { + "id": "net.minecraft:client:1.13.2-20190213.203750:srg", + "name": "Minecraft Forge (client srg)", + "type": "Library", + "artifact": { + "size": 8198877, + "MD5": "80f355cffe270d2c2943301b96d98fa6", + "url": "" + } + }, + { + "id": "1.13.2-forge-25.0.219", + "name": "Minecraft Forge (version.json)", + "type": "VersionManifest", + "artifact": { + "size": 11511, + "MD5": "f13f9e20324d0a55c646d5fb8876b2bb", + "url": "" + } + }, + { + "id": "com.paulscode:soundsystem:201809301515", + "name": "Minecraft Forge (Paul's Code Soundsystem)", + "type": "Library", + "artifact": { + "size": 66607, + "MD5": "bf43e7b9f628534614b3fc5e4e69d209", + "url": "" + } + }, + { + "id": "org.ow2.asm:asm:6.2", + "name": "Minecraft Forge (asm)", + "type": "Library", + "artifact": { + "size": 111214, + "MD5": "7abdce94068615d690495f45eb6eb980", + "url": "" + } + }, + { + "id": "org.ow2.asm:asm-commons:6.2", + "name": "Minecraft Forge (asm-commons)", + "type": "Library", + "artifact": { + "size": 78919, + "MD5": "a031c9a32770c02c2f91d2bcbeceabcd", + "url": "" + } + }, + { + "id": "org.ow2.asm:asm-tree:6.2", + "name": "Minecraft Forge (asm-tree)", + "type": "Library", + "artifact": { + "size": 50370, + "MD5": "e7279981c6764dcd73a99705acf5c9a6", + "url": "" + } + }, + { + "id": "cpw.mods:modlauncher:2.1.1", + "name": "Minecraft Forge (modlauncher)", + "type": "Library", + "artifact": { + "size": 101586, + "MD5": "089ae3cf5afe10e96bb930b70dd99402", + "url": "" + } + }, + { + "id": "cpw.mods:grossjava9hacks:1.1.0", + "name": "Minecraft Forge (Gross Java 9 Hacks)", + "type": "Library", + "artifact": { + "size": 1759, + "MD5": "1adde27730734a786f461ed048d440a0", + "url": "" + } + }, + { + "id": "net.minecraftforge:accesstransformers:0.16.0-shadowed", + "name": "Minecraft Forge (Access Transformers)", + "type": "Library", + "artifact": { + "size": 444428, + "MD5": "dbe346d662c7bdff0988f941342932e6", + "url": "" + } + }, + { + "id": "net.minecraftforge:eventbus:0.9.2-service", + "name": "Minecraft Forge (EventBus)", + "type": "Library", + "artifact": { + "size": 38908, + "MD5": "77c6c079914a8369a185e11ae1a7a878", + "url": "" + } + }, + { + "id": "net.minecraftforge:forgespi:0.13.0", + "name": "Minecraft Forge (Forge SPI)", + "type": "Library", + "artifact": { + "size": 16607, + "MD5": "5634ba7001f8501a2b553430e2068751", + "url": "" + } + }, + { + "id": "net.minecraftforge:coremods:0.5.0", + "name": "Minecraft Forge (coremods)", + "type": "Library", + "artifact": { + "size": 12284, + "MD5": "d3da5879965cf6f37413d6d1a80d92a7", + "url": "" + } + }, + { + "id": "net.minecraftforge:unsafe:0.2.0", + "name": "Minecraft Forge (unsafe)", + "type": "Library", + "artifact": { + "size": 2834, + "MD5": "2d1016ebe4c1a63dd50a59d26bd12db1", + "url": "" + } + }, + { + "id": "com.electronwill.night-config:core:3.6.0", + "name": "Minecraft Forge (night-config core)", + "type": "Library", + "artifact": { + "size": 199763, + "MD5": "841adeca8f5e5e092c7bafb412dcb615", + "url": "" + } + }, + { + "id": "com.electronwill.night-config:toml:3.6.0", + "name": "Minecraft Forge (night-config toml)", + "type": "Library", + "artifact": { + "size": 31256, + "MD5": "2d1d5f1fa4735b4e654613b493512432", + "url": "" + } + }, + { + "id": "org.jline:jline:3.9.0", + "name": "Minecraft Forge (jline)", + "type": "Library", + "artifact": { + "size": 707273, + "MD5": "2db9aae140f810a72fc4a5cb5aa5cf9b", + "url": "" + } + }, + { + "id": "org.apache.maven:maven-artifact:3.6.0", + "name": "Minecraft Forge (maven-artifact)", + "type": "Library", + "artifact": { + "size": 55051, + "MD5": "89e95013b11f347e48c0525965600404", + "url": "" + } + }, + { + "id": "net.jodah:typetools:0.6.0", + "name": "Minecraft Forge (typetools)", + "type": "Library", + "artifact": { + "size": 14734, + "MD5": "9f65b6e90eb986fe25afc39b8ed3f43b", + "url": "" + } + }, + { + "id": "java3d:vecmath:1.5.2", + "name": "Minecraft Forge (vecmath)", + "type": "Library", + "artifact": { + "size": 318956, + "MD5": "e5d2b7f46c4800a32f62ce75676a5710", + "url": "" + } + }, + { + "id": "org.apache.logging.log4j:log4j-api:2.11.2", + "name": "Minecraft Forge (log4j-api)", + "type": "Library", + "artifact": { + "size": 266283, + "MD5": "3f7ee51e3dd0830de799dae0b90243dd", + "url": "" + } + }, + { + "id": "org.apache.logging.log4j:log4j-core:2.11.2", + "name": "Minecraft Forge (log4j-core)", + "type": "Library", + "artifact": { + "size": 1629585, + "MD5": "c8bd8b5c5aaaa07a3dcbf57de01c9266", + "url": "" + } + }, + { + "id": "net.minecrell:terminalconsoleappender:1.1.1", + "name": "Minecraft Forge (terminalconsoleappender)", + "type": "Library", + "artifact": { + "size": 15240, + "MD5": "a190e88073a41dfa1b1d47854c41230b", + "url": "" + } + }, + { + "id": "net.sf.jopt-simple:jopt-simple:5.0.4", + "name": "Minecraft Forge (jopt-simple)", + "type": "Library", + "artifact": { + "size": 78146, + "MD5": "eb0d9dffe9b0eddead68fe678be76c49", + "url": "" + } + } + + ] + }, + { + "id": "squeek:appleskin:1.0.11", + "name": "AppleSkin (test mod)", + "type": "ForgeMod", + "artifact": { + "size": 27382, + "MD5": "a1c0cfed77b2cb7b6699e59ba0252a50", + "url": "" + } + }, + { + "id": "com.blamejared:controlling:4.0.1", + "name": "Controlling (Test Mod)", + "type": "ForgeMod", + "artifact": { + "size": 34914, + "MD5": "b4dc10b9039518ce00845ca962e6a136", + "url": "" + } + } + ] + } + ] +} \ No newline at end of file diff --git a/launcher/electron-builder.yml b/launcher/electron-builder.yml new file mode 100644 index 0000000..1c7e438 --- /dev/null +++ b/launcher/electron-builder.yml @@ -0,0 +1,51 @@ +appId: 'org.surviepote.launcher' +productName: 'SurviePote' +artifactName: '${productName}-setup-${version}.${ext}' + +copyright: 'Copyright © 2026 SurviePote' + +asar: true +compression: 'maximum' + +files: + - '!{dist,.gitignore,.vscode,docs,dev-app-update.yml,.nvmrc,eslint.config.mjs}' + +extraResources: + - 'libraries' + +# Windows Configuration +win: + target: + - target: 'nsis' + arch: 'x64' + +# Windows Installer Configuration +nsis: + oneClick: false + perMachine: false + allowElevation: true + allowToChangeInstallationDirectory: true + +# macOS Configuration +mac: + target: + - target: 'dmg' + arch: + - 'x64' + - 'arm64' + artifactName: '${productName}-setup-${version}-${arch}.${ext}' + category: 'public.app-category.games' + +# Linux Configuration +linux: + target: 'AppImage' + maintainer: 'SurviePote' + vendor: 'SurviePote' + synopsis: 'Launcher officiel SurviePote' + description: 'Launcher SurviePote - Rejoins mcpv.ihorizon.org. Mods, configs et updates automatiques.' + category: 'Game' + + +directories: + buildResources: 'build' + output: 'dist' \ No newline at end of file diff --git a/launcher/eslint.config.mjs b/launcher/eslint.config.mjs new file mode 100644 index 0000000..9a628f1 --- /dev/null +++ b/launcher/eslint.config.mjs @@ -0,0 +1,55 @@ +import js from '@eslint/js'; +import { defineConfig } from 'eslint/config'; +import stylistic from '@stylistic/eslint-plugin'; +import globals from 'globals'; + +export default defineConfig( + { + ignores: ['**/dist/**', 'node_modules', 'eslint.config.mjs'], + }, + js.configs.recommended, + { + languageOptions: { + globals: globals.node, + ecmaVersion: 2024 + } + }, + { + files: ['**/*.js'], + plugins: { + '@stylistic': stylistic, + }, + rules: { + '@stylistic/semi': ['error', 'never'], + '@stylistic/quotes': ['error', 'single'], + '@stylistic/indent': ['error', 4], + '@stylistic/member-delimiter-style': ['error', { + multiline: { + delimiter: 'none', + requireLast: false + }, + singleline: { + delimiter: 'comma', + requireLast: false + } + }], + '@stylistic/linebreak-style': ['error', 'windows'], + 'no-var': ['error'], + 'no-control-regex': 'off', + 'no-unused-vars': ['error', { + vars: 'all', + args: 'after-used', + caughtErrorsIgnorePattern: '^_', + ignoreRestSiblings: false, + argsIgnorePattern: '^_|^reject$' + }], + } + }, + { + files: ['app/assets/js/scripts/*.js'], + rules: { + 'no-unused-vars': 'off', + 'no-undef': 'off' + } + } +); \ No newline at end of file diff --git a/launcher/index.js b/launcher/index.js new file mode 100644 index 0000000..1e515b0 --- /dev/null +++ b/launcher/index.js @@ -0,0 +1,359 @@ +const remoteMain = require('@electron/remote/main') +remoteMain.initialize() + +// Requirements +const { app, BrowserWindow, ipcMain, Menu, shell } = require('electron') +const autoUpdater = require('electron-updater').autoUpdater +const ejse = require('ejs-electron') +const fs = require('fs') +const isDev = require('./app/assets/js/isdev') +const path = require('path') +const semver = require('semver') +const { pathToFileURL } = require('url') +const { AZURE_CLIENT_ID, MSFT_OPCODE, MSFT_REPLY_TYPE, MSFT_ERROR, SHELL_OPCODE } = require('./app/assets/js/ipcconstants') +const LangLoader = require('./app/assets/js/langloader') + +// Setup Lang +LangLoader.setupLanguage() + +// Setup auto updater. +function initAutoUpdater(event, data) { + + if(data){ + autoUpdater.allowPrerelease = true + } else { + // Defaults to true if application version contains prerelease components (e.g. 0.12.1-alpha.1) + // autoUpdater.allowPrerelease = true + } + + if(isDev){ + autoUpdater.autoInstallOnAppQuit = false + autoUpdater.updateConfigPath = path.join(__dirname, 'dev-app-update.yml') + } + if(process.platform === 'darwin'){ + autoUpdater.autoDownload = false + } + autoUpdater.on('update-available', (info) => { + event.sender.send('autoUpdateNotification', 'update-available', info) + }) + autoUpdater.on('update-downloaded', (info) => { + event.sender.send('autoUpdateNotification', 'update-downloaded', info) + }) + autoUpdater.on('update-not-available', (info) => { + event.sender.send('autoUpdateNotification', 'update-not-available', info) + }) + autoUpdater.on('checking-for-update', () => { + event.sender.send('autoUpdateNotification', 'checking-for-update') + }) + autoUpdater.on('error', (err) => { + event.sender.send('autoUpdateNotification', 'realerror', err) + }) +} + +// Open channel to listen for update actions. +ipcMain.on('autoUpdateAction', (event, arg, data) => { + switch(arg){ + case 'initAutoUpdater': + console.log('Initializing auto updater.') + initAutoUpdater(event, data) + event.sender.send('autoUpdateNotification', 'ready') + break + case 'checkForUpdate': + autoUpdater.checkForUpdates() + .catch(err => { + event.sender.send('autoUpdateNotification', 'realerror', err) + }) + break + case 'allowPrereleaseChange': + if(!data){ + const preRelComp = semver.prerelease(app.getVersion()) + if(preRelComp != null && preRelComp.length > 0){ + autoUpdater.allowPrerelease = true + } else { + autoUpdater.allowPrerelease = data + } + } else { + autoUpdater.allowPrerelease = data + } + break + case 'installUpdateNow': + autoUpdater.quitAndInstall() + break + default: + console.log('Unknown argument', arg) + break + } +}) +// Redirect distribution index event from preloader to renderer. +ipcMain.on('distributionIndexDone', (event, res) => { + event.sender.send('distributionIndexDone', res) +}) + +// Handle trash item. +ipcMain.handle(SHELL_OPCODE.TRASH_ITEM, async (event, ...args) => { + try { + await shell.trashItem(args[0]) + return { + result: true + } + } catch(error) { + return { + result: false, + error: error + } + } +}) + +// Disable hardware acceleration. +// https://electronjs.org/docs/tutorial/offscreen-rendering +app.disableHardwareAcceleration() + + +const REDIRECT_URI_PREFIX = 'https://login.microsoftonline.com/common/oauth2/nativeclient?' + +// Microsoft Auth Login +let msftAuthWindow +let msftAuthSuccess +let msftAuthViewSuccess +let msftAuthViewOnClose +ipcMain.on(MSFT_OPCODE.OPEN_LOGIN, (ipcEvent, ...arguments_) => { + if (msftAuthWindow) { + ipcEvent.reply(MSFT_OPCODE.REPLY_LOGIN, MSFT_REPLY_TYPE.ERROR, MSFT_ERROR.ALREADY_OPEN, msftAuthViewOnClose) + return + } + msftAuthSuccess = false + msftAuthViewSuccess = arguments_[0] + msftAuthViewOnClose = arguments_[1] + msftAuthWindow = new BrowserWindow({ + title: LangLoader.queryJS('index.microsoftLoginTitle'), + backgroundColor: '#222222', + width: 520, + height: 600, + frame: true, + icon: getPlatformIcon('SealCircle') + }) + + msftAuthWindow.on('closed', () => { + msftAuthWindow = undefined + }) + + msftAuthWindow.on('close', () => { + if(!msftAuthSuccess) { + ipcEvent.reply(MSFT_OPCODE.REPLY_LOGIN, MSFT_REPLY_TYPE.ERROR, MSFT_ERROR.NOT_FINISHED, msftAuthViewOnClose) + } + }) + + msftAuthWindow.webContents.on('did-navigate', (_, uri) => { + if (uri.startsWith(REDIRECT_URI_PREFIX)) { + let queryMap = {} + + new URL(uri).searchParams.forEach((v, k) => { + queryMap[k] = v; + }); + + ipcEvent.reply(MSFT_OPCODE.REPLY_LOGIN, MSFT_REPLY_TYPE.SUCCESS, queryMap, msftAuthViewSuccess) + + msftAuthSuccess = true + msftAuthWindow.close() + msftAuthWindow = null + } + }) + + msftAuthWindow.removeMenu() + msftAuthWindow.loadURL(`https://login.microsoftonline.com/consumers/oauth2/v2.0/authorize?prompt=select_account&client_id=${AZURE_CLIENT_ID}&response_type=code&scope=XboxLive.signin%20offline_access&redirect_uri=https://login.microsoftonline.com/common/oauth2/nativeclient`) +}) + +// Microsoft Auth Logout +let msftLogoutWindow +let msftLogoutSuccess +let msftLogoutSuccessSent +ipcMain.on(MSFT_OPCODE.OPEN_LOGOUT, (ipcEvent, uuid, isLastAccount) => { + if (msftLogoutWindow) { + ipcEvent.reply(MSFT_OPCODE.REPLY_LOGOUT, MSFT_REPLY_TYPE.ERROR, MSFT_ERROR.ALREADY_OPEN) + return + } + + msftLogoutSuccess = false + msftLogoutSuccessSent = false + msftLogoutWindow = new BrowserWindow({ + title: LangLoader.queryJS('index.microsoftLogoutTitle'), + backgroundColor: '#222222', + width: 520, + height: 600, + frame: true, + icon: getPlatformIcon('SealCircle') + }) + + msftLogoutWindow.on('closed', () => { + msftLogoutWindow = undefined + }) + + msftLogoutWindow.on('close', () => { + if(!msftLogoutSuccess) { + ipcEvent.reply(MSFT_OPCODE.REPLY_LOGOUT, MSFT_REPLY_TYPE.ERROR, MSFT_ERROR.NOT_FINISHED) + } else if(!msftLogoutSuccessSent) { + msftLogoutSuccessSent = true + ipcEvent.reply(MSFT_OPCODE.REPLY_LOGOUT, MSFT_REPLY_TYPE.SUCCESS, uuid, isLastAccount) + } + }) + + msftLogoutWindow.webContents.on('did-navigate', (_, uri) => { + if(uri.startsWith('https://login.microsoftonline.com/common/oauth2/v2.0/logoutsession')) { + msftLogoutSuccess = true + setTimeout(() => { + if(!msftLogoutSuccessSent) { + msftLogoutSuccessSent = true + ipcEvent.reply(MSFT_OPCODE.REPLY_LOGOUT, MSFT_REPLY_TYPE.SUCCESS, uuid, isLastAccount) + } + + if(msftLogoutWindow) { + msftLogoutWindow.close() + msftLogoutWindow = null + } + }, 5000) + } + }) + + msftLogoutWindow.removeMenu() + msftLogoutWindow.loadURL('https://login.microsoftonline.com/common/oauth2/v2.0/logout') +}) + +// Keep a global reference of the window object, if you don't, the window will +// be closed automatically when the JavaScript object is garbage collected. +let win + +function createWindow() { + + win = new BrowserWindow({ + width: 980, + height: 552, + icon: getPlatformIcon('SealCircle'), + frame: false, + webPreferences: { + preload: path.join(__dirname, 'app', 'assets', 'js', 'preloader.js'), + nodeIntegration: true, + contextIsolation: false + }, + backgroundColor: '#171614' + }) + remoteMain.enable(win.webContents) + + const data = { + bkid: Math.floor((Math.random() * fs.readdirSync(path.join(__dirname, 'app', 'assets', 'images', 'backgrounds')).length)), + lang: (str, placeHolders) => LangLoader.queryEJS(str, placeHolders) + } + Object.entries(data).forEach(([key, val]) => ejse.data(key, val)) + + win.loadURL(pathToFileURL(path.join(__dirname, 'app', 'app.ejs')).toString()) + + /*win.once('ready-to-show', () => { + win.show() + })*/ + + win.removeMenu() + + win.resizable = true + + win.on('closed', () => { + win = null + }) +} + +function createMenu() { + + if(process.platform === 'darwin') { + + // Extend default included application menu to continue support for quit keyboard shortcut + let applicationSubMenu = { + label: 'Application', + submenu: [{ + label: 'About Application', + selector: 'orderFrontStandardAboutPanel:' + }, { + type: 'separator' + }, { + label: 'Quit', + accelerator: 'Command+Q', + click: () => { + app.quit() + } + }] + } + + // New edit menu adds support for text-editing keyboard shortcuts + let editSubMenu = { + label: 'Edit', + submenu: [{ + label: 'Undo', + accelerator: 'CmdOrCtrl+Z', + selector: 'undo:' + }, { + label: 'Redo', + accelerator: 'Shift+CmdOrCtrl+Z', + selector: 'redo:' + }, { + type: 'separator' + }, { + label: 'Cut', + accelerator: 'CmdOrCtrl+X', + selector: 'cut:' + }, { + label: 'Copy', + accelerator: 'CmdOrCtrl+C', + selector: 'copy:' + }, { + label: 'Paste', + accelerator: 'CmdOrCtrl+V', + selector: 'paste:' + }, { + label: 'Select All', + accelerator: 'CmdOrCtrl+A', + selector: 'selectAll:' + }] + } + + // Bundle submenus into a single template and build a menu object with it + let menuTemplate = [applicationSubMenu, editSubMenu] + let menuObject = Menu.buildFromTemplate(menuTemplate) + + // Assign it to the application + Menu.setApplicationMenu(menuObject) + + } + +} + +function getPlatformIcon(filename){ + let ext + switch(process.platform) { + case 'win32': + ext = 'ico' + break + case 'darwin': + case 'linux': + default: + ext = 'png' + break + } + + return path.join(__dirname, 'app', 'assets', 'images', `${filename}.${ext}`) +} + +app.on('ready', createWindow) +app.on('ready', createMenu) + +app.on('window-all-closed', () => { + // On macOS it is common for applications and their menu bar + // to stay active until the user quits explicitly with Cmd + Q + if (process.platform !== 'darwin') { + app.quit() + } +}) + +app.on('activate', () => { + // On macOS it's common to re-create a window in the app when the + // dock icon is clicked and there are no other windows open. + if (win === null) { + createWindow() + } +}) diff --git a/launcher/package-lock.json b/launcher/package-lock.json new file mode 100644 index 0000000..409ce17 --- /dev/null +++ b/launcher/package-lock.json @@ -0,0 +1,5830 @@ +{ + "name": "surviepote-launcher", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "surviepote-launcher", + "version": "1.0.0", + "license": "MIT", + "dependencies": { + "@electron/remote": "^2.1.3", + "adm-zip": "^0.5.16", + "ejs": "^3.1.10", + "ejs-electron": "^3.0.0", + "electron-updater": "^6.7.3", + "fs-extra": "^11.3.3", + "github-syntax-dark": "^0.5.0", + "got": "^11.8.5", + "helios-core": "~2.3.0", + "helios-distribution-types": "^1.3.0", + "jquery": "^3.7.1", + "lodash.merge": "^4.6.2", + "semver": "^7.7.3", + "toml": "^3.0.0" + }, + "devDependencies": { + "@stylistic/eslint-plugin": "^5.6.1", + "electron": "^39.2.7", + "electron-builder": "^26.4.0", + "eslint": "^9.39.2" + }, + "engines": { + "node": "22.x.x" + } + }, + "node_modules/@colors/colors": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.6.0.tgz", + "integrity": "sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==", + "license": "MIT", + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@dabh/diagnostics": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.8.tgz", + "integrity": "sha512-R4MSXTVnuMzGD7bzHdW2ZhhdPC/igELENcq5IjEverBvq5hn1SXCWcsi6eSsdWP0/Ur+SItRRjAktmdoX/8R/Q==", + "license": "MIT", + "dependencies": { + "@so-ric/colorspace": "^1.1.6", + "enabled": "2.0.x", + "kuler": "^2.0.0" + } + }, + "node_modules/@develar/schema-utils": { + "version": "2.6.5", + "resolved": "https://registry.npmjs.org/@develar/schema-utils/-/schema-utils-2.6.5.tgz", + "integrity": "sha512-0cp4PsWQ/9avqTVMCtZ+GirikIA36ikvjtHweU4/j8yLtgObI0+JUPhYFScgwlteveGB1rt3Cm8UhN04XayDig==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.0", + "ajv-keywords": "^3.4.1" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/@electron/asar": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/@electron/asar/-/asar-3.4.1.tgz", + "integrity": "sha512-i4/rNPRS84t0vSRa2HorerGRXWyF4vThfHesw0dmcWHp+cspK743UanA0suA5Q5y8kzY2y6YKrvbIUn69BCAiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "commander": "^5.0.0", + "glob": "^7.1.6", + "minimatch": "^3.0.4" + }, + "bin": { + "asar": "bin/asar.js" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/@electron/asar/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, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@electron/fuses": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@electron/fuses/-/fuses-1.8.0.tgz", + "integrity": "sha512-zx0EIq78WlY/lBb1uXlziZmDZI4ubcCXIMJ4uGjXzZW0nS19TjSPeXPAjzzTmKQlJUZm0SbmZhPKP7tuQ1SsEw==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.1.1", + "fs-extra": "^9.0.1", + "minimist": "^1.2.5" + }, + "bin": { + "electron-fuses": "dist/bin.js" + } + }, + "node_modules/@electron/fuses/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@electron/get": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@electron/get/-/get-2.0.3.tgz", + "integrity": "sha512-Qkzpg2s9GnVV2I2BjRksUi43U5e6+zaQMcjoJy0C+C5oxaKl+fmckGDQFtRpZpZV0NQekuZZ+tGz7EA9TVnQtQ==", + "license": "MIT", + "dependencies": { + "debug": "^4.1.1", + "env-paths": "^2.2.0", + "fs-extra": "^8.1.0", + "got": "^11.8.5", + "progress": "^2.0.3", + "semver": "^6.2.0", + "sumchecker": "^3.0.1" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "global-agent": "^3.0.0" + } + }, + "node_modules/@electron/get/node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/@electron/get/node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "license": "MIT", + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@electron/get/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@electron/get/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "license": "MIT", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/@electron/notarize": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@electron/notarize/-/notarize-2.5.0.tgz", + "integrity": "sha512-jNT8nwH1f9X5GEITXaQ8IF/KdskvIkOFfB2CvwumsveVidzpSc+mvhhTMdAGSYF3O+Nq49lJ7y+ssODRXu06+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.1.1", + "fs-extra": "^9.0.1", + "promise-retry": "^2.0.1" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@electron/notarize/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@electron/osx-sign": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@electron/osx-sign/-/osx-sign-1.3.3.tgz", + "integrity": "sha512-KZ8mhXvWv2rIEgMbWZ4y33bDHyUKMXnx4M0sTyPNK/vcB81ImdeY9Ggdqy0SWbMDgmbqyQ+phgejh6V3R2QuSg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "compare-version": "^0.1.2", + "debug": "^4.3.4", + "fs-extra": "^10.0.0", + "isbinaryfile": "^4.0.8", + "minimist": "^1.2.6", + "plist": "^3.0.5" + }, + "bin": { + "electron-osx-flat": "bin/electron-osx-flat.js", + "electron-osx-sign": "bin/electron-osx-sign.js" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@electron/osx-sign/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@electron/osx-sign/node_modules/isbinaryfile": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", + "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, + "node_modules/@electron/rebuild": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@electron/rebuild/-/rebuild-4.0.1.tgz", + "integrity": "sha512-iMGXb6Ib7H/Q3v+BKZJoETgF9g6KMNZVbsO4b7Dmpgb5qTFqyFTzqW9F3TOSHdybv2vKYKzSS9OiZL+dcJb+1Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@malept/cross-spawn-promise": "^2.0.0", + "chalk": "^4.0.0", + "debug": "^4.1.1", + "detect-libc": "^2.0.1", + "got": "^11.7.0", + "graceful-fs": "^4.2.11", + "node-abi": "^4.2.0", + "node-api-version": "^0.2.1", + "node-gyp": "^11.2.0", + "ora": "^5.1.0", + "read-binary-file-arch": "^1.0.6", + "semver": "^7.3.5", + "tar": "^6.0.5", + "yargs": "^17.0.1" + }, + "bin": { + "electron-rebuild": "lib/cli.js" + }, + "engines": { + "node": ">=22.12.0" + } + }, + "node_modules/@electron/remote": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@electron/remote/-/remote-2.1.3.tgz", + "integrity": "sha512-XlpxC8S4ttj/v2d+PKp9na/3Ev8bV7YWNL7Cw5b9MAWgTphEml7iYgbc7V0r9D6yDOfOkj06bchZgOZdlWJGNA==", + "license": "MIT", + "peerDependencies": { + "electron": ">= 13.0.0" + } + }, + "node_modules/@electron/universal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@electron/universal/-/universal-2.0.3.tgz", + "integrity": "sha512-Wn9sPYIVFRFl5HmwMJkARCCf7rqK/EurkfQ/rJZ14mHP3iYTjZSIOSVonEAnhWeAXwtw7zOekGRlc6yTtZ0t+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@electron/asar": "^3.3.1", + "@malept/cross-spawn-promise": "^2.0.0", + "debug": "^4.3.1", + "dir-compare": "^4.2.0", + "fs-extra": "^11.1.1", + "minimatch": "^9.0.3", + "plist": "^3.1.0" + }, + "engines": { + "node": ">=16.4" + } + }, + "node_modules/@electron/universal/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/@electron/universal/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, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@electron/windows-sign": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@electron/windows-sign/-/windows-sign-1.2.2.tgz", + "integrity": "sha512-dfZeox66AvdPtb2lD8OsIIQh12Tp0GNCRUDfBHIKGpbmopZto2/A8nSpYYLoedPIHpqkeblZ/k8OV0Gy7PYuyQ==", + "dev": true, + "license": "BSD-2-Clause", + "optional": true, + "peer": true, + "dependencies": { + "cross-dirname": "^0.1.0", + "debug": "^4.3.4", + "fs-extra": "^11.1.1", + "minimist": "^1.2.8", + "postject": "^1.0.0-alpha.6" + }, + "bin": { + "electron-windows-sign": "bin/electron-windows-sign.js" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.1.tgz", + "integrity": "sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/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-community/regexpp": { + "version": "4.12.2", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz", + "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/config-array": { + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.1.tgz", + "integrity": "sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/object-schema": "^2.1.7", + "debug": "^4.3.1", + "minimatch": "^3.1.2" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/config-array/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, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@eslint/config-helpers": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.2.tgz", + "integrity": "sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^0.17.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/core": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.17.0.tgz", + "integrity": "sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.3.tgz", + "integrity": "sha512-Kr+LPIUVKz2qkx1HAMH8q1q6azbqBAsXJUxBl/ODDuVPX45Z9DfwB8tPjTi6nNZ8BuM3nbJxC5zCAg5elnBUTQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^10.0.1", + "globals": "^14.0.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.1", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/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, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@eslint/js": { + "version": "9.39.2", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.2.tgz", + "integrity": "sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + } + }, + "node_modules/@eslint/object-schema": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.7.tgz", + "integrity": "sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/plugin-kit": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz", + "integrity": "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^0.17.0", + "levn": "^0.4.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@humanfs/core": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", + "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.7", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.7.tgz", + "integrity": "sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanfs/core": "^0.19.1", + "@humanwhocodes/retry": "^0.4.0" + }, + "engines": { + "node": ">=18.18.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, + "license": "Apache-2.0", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/retry": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", + "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@isaacs/balanced-match": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz", + "integrity": "sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/@isaacs/brace-expansion": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@isaacs/brace-expansion/-/brace-expansion-5.0.0.tgz", + "integrity": "sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@isaacs/balanced-match": "^4.0.1" + }, + "engines": { + "node": "20 || >=22" + } + }, + "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, + "license": "ISC", + "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.2.2", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz", + "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/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, + "license": "MIT" + }, + "node_modules/@isaacs/cliui/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, + "license": "MIT", + "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/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.2.tgz", + "integrity": "sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/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, + "license": "MIT", + "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/@isaacs/fs-minipass": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz", + "integrity": "sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^7.0.4" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@malept/cross-spawn-promise": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@malept/cross-spawn-promise/-/cross-spawn-promise-2.0.0.tgz", + "integrity": "sha512-1DpKU0Z5ThltBwjNySMC14g0CkbyhCaz9FkhxqNsZI6uAPJXFS8cMXlBKo26FJ8ZuW6S9GCMcR9IO5k2X5/9Fg==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/malept" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/subscription/pkg/npm-.malept-cross-spawn-promise?utm_medium=referral&utm_source=npm_fund" + } + ], + "license": "Apache-2.0", + "dependencies": { + "cross-spawn": "^7.0.1" + }, + "engines": { + "node": ">= 12.13.0" + } + }, + "node_modules/@malept/flatpak-bundler": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@malept/flatpak-bundler/-/flatpak-bundler-0.4.0.tgz", + "integrity": "sha512-9QOtNffcOF/c1seMCDnjckb3R9WHcG34tky+FHpNKKCW0wc/scYLwMtO+ptyGUfMW0/b/n4qRiALlaFHc9Oj7Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.1.1", + "fs-extra": "^9.0.0", + "lodash": "^4.17.15", + "tmp-promise": "^3.0.2" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@malept/flatpak-bundler/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@npmcli/agent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-3.0.0.tgz", + "integrity": "sha512-S79NdEgDQd/NGCay6TCoVzXSj74skRZIKJcpJjC5lOq34SZzyI6MqtiiWoiVWoVrTcGjNeC4ipbh1VIHlpfF5Q==", + "dev": true, + "license": "ISC", + "dependencies": { + "agent-base": "^7.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.1", + "lru-cache": "^10.0.1", + "socks-proxy-agent": "^8.0.3" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/agent/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, + "license": "ISC" + }, + "node_modules/@npmcli/fs": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-4.0.0.tgz", + "integrity": "sha512-/xGlezI6xfGO9NwuJlnwz/K14qD1kCSAGtacBHnGzeAIuJGazcp45KP5NuyARXoKb7cwulAGWVsbeSxdG/cb0Q==", + "dev": true, + "license": "ISC", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "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, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@sindresorhus/is": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", + "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, + "node_modules/@so-ric/colorspace": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/@so-ric/colorspace/-/colorspace-1.1.6.tgz", + "integrity": "sha512-/KiKkpHNOBgkFJwu9sh48LkHSMYGyuTcSFK/qMBdnOAlrRJzRSXAOFB5qwzaVQuDl8wAvHVMkaASQDReTahxuw==", + "license": "MIT", + "dependencies": { + "color": "^5.0.2", + "text-hex": "1.0.x" + } + }, + "node_modules/@stylistic/eslint-plugin": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/@stylistic/eslint-plugin/-/eslint-plugin-5.6.1.tgz", + "integrity": "sha512-JCs+MqoXfXrRPGbGmho/zGS/jMcn3ieKl/A8YImqib76C8kjgZwq5uUFzc30lJkMvcchuRn6/v8IApLxli3Jyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.9.0", + "@typescript-eslint/types": "^8.47.0", + "eslint-visitor-keys": "^4.2.1", + "espree": "^10.4.0", + "estraverse": "^5.3.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "peerDependencies": { + "eslint": ">=9.0.0" + } + }, + "node_modules/@szmarczak/http-timer": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", + "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", + "license": "MIT", + "dependencies": { + "defer-to-connect": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@types/cacheable-request": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz", + "integrity": "sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==", + "license": "MIT", + "dependencies": { + "@types/http-cache-semantics": "*", + "@types/keyv": "^3.1.4", + "@types/node": "*", + "@types/responselike": "^1.0.0" + } + }, + "node_modules/@types/debug": { + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/ms": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/fs-extra": { + "version": "9.0.13", + "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-9.0.13.tgz", + "integrity": "sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/http-cache-semantics": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz", + "integrity": "sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==", + "license": "MIT" + }, + "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/keyv": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz", + "integrity": "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/ms": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz", + "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "22.19.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.3.tgz", + "integrity": "sha512-1N9SBnWYOJTrNZCdh/yJE+t910Y128BoyY+zBLWhL3r0TYzlTmFdXrPwHL9DyFZmlEXNQQolTZh3KHV31QDhyA==", + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/plist": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/plist/-/plist-3.0.5.tgz", + "integrity": "sha512-E6OCaRmAe4WDmWNsL/9RMqdkkzDCY1etutkflWk4c+AcjDU07Pcz1fQwTX0TQz+Pxqn9i4L1TU3UFpjnrcDgxA==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@types/node": "*", + "xmlbuilder": ">=11.0.1" + } + }, + "node_modules/@types/responselike": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.3.tgz", + "integrity": "sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/triple-beam": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.5.tgz", + "integrity": "sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==", + "license": "MIT" + }, + "node_modules/@types/verror": { + "version": "1.10.11", + "resolved": "https://registry.npmjs.org/@types/verror/-/verror-1.10.11.tgz", + "integrity": "sha512-RlDm9K7+o5stv0Co8i8ZRGxDbrTxhJtgjqjFyVh/tXQyl/rYtTKlnTvZ88oSTeYREWurwx20Js4kTuKCsFkUtg==", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/@types/yauzl": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.3.tgz", + "integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==", + "license": "MIT", + "optional": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@typescript-eslint/types": { + "version": "8.51.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.51.0.tgz", + "integrity": "sha512-TizAvWYFM6sSscmEakjY3sPqGwxZRSywSsPEiuZF6d5GmGD9Gvlsv0f6N8FvAAA0CD06l3rIcWNbsN1e5F/9Ag==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@xmldom/xmldom": { + "version": "0.8.11", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.11.tgz", + "integrity": "sha512-cQzWCtO6C8TQiYl1ruKNn2U6Ao4o4WBBcbL61yJl84x+j5sOWWFU9X7DpND8XZG3daDppSsigMdfAIl2upQBRw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/7zip-bin": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/7zip-bin/-/7zip-bin-5.2.0.tgz", + "integrity": "sha512-ukTPVhqG4jNzMro2qA9HSCSSVJN3aN7tlb+hfqYCt3ER0yWroeA2VR38MNrOHLQ/cVj+DaIMad0kFCtWWowh/A==", + "dev": true, + "license": "MIT" + }, + "node_modules/abbrev": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-3.0.1.tgz", + "integrity": "sha512-AO2ac6pjRB3SJmGJo+v5/aK6Omggp6fsLrs6wN9bd35ulu4cCwaAU9+7ZhXjeqHVkaHThLuzH0nZr0YpCDhygg==", + "dev": true, + "license": "ISC", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/acorn": { + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", + "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/adm-zip": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.16.tgz", + "integrity": "sha512-TGw5yVi4saajsSEgz25grObGHEUaDrniwvA2qwSC060KfqGPdglhvPMA2lPIoxs3PQIItj2iag35fONcQqgUaQ==", + "license": "MIT", + "engines": { + "node": ">=12.0" + } + }, + "node_modules/agent-base": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 14" + } + }, + "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", + "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, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "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, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/app-builder-bin": { + "version": "5.0.0-alpha.12", + "resolved": "https://registry.npmjs.org/app-builder-bin/-/app-builder-bin-5.0.0-alpha.12.tgz", + "integrity": "sha512-j87o0j6LqPL3QRr8yid6c+Tt5gC7xNfYo6uQIQkorAC6MpeayVMZrEDzKmJJ/Hlv7EnOQpaRm53k6ktDYZyB6w==", + "dev": true, + "license": "MIT" + }, + "node_modules/app-builder-lib": { + "version": "26.4.0", + "resolved": "https://registry.npmjs.org/app-builder-lib/-/app-builder-lib-26.4.0.tgz", + "integrity": "sha512-Uas6hNe99KzP3xPWxh5LGlH8kWIVjZixzmMJHNB9+6hPyDpjc7NQMkVgi16rQDdpCFy22ZU5sp8ow7tvjeMgYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@develar/schema-utils": "~2.6.5", + "@electron/asar": "3.4.1", + "@electron/fuses": "^1.8.0", + "@electron/notarize": "2.5.0", + "@electron/osx-sign": "1.3.3", + "@electron/rebuild": "4.0.1", + "@electron/universal": "2.0.3", + "@malept/flatpak-bundler": "^0.4.0", + "@types/fs-extra": "9.0.13", + "async-exit-hook": "^2.0.1", + "builder-util": "26.3.4", + "builder-util-runtime": "9.5.1", + "chromium-pickle-js": "^0.2.0", + "ci-info": "4.3.1", + "debug": "^4.3.4", + "dotenv": "^16.4.5", + "dotenv-expand": "^11.0.6", + "ejs": "^3.1.8", + "electron-publish": "26.3.4", + "fs-extra": "^10.1.0", + "hosted-git-info": "^4.1.0", + "isbinaryfile": "^5.0.0", + "jiti": "^2.4.2", + "js-yaml": "^4.1.0", + "json5": "^2.2.3", + "lazy-val": "^1.0.5", + "minimatch": "^10.0.3", + "plist": "3.1.0", + "resedit": "^1.7.0", + "semver": "~7.7.3", + "tar": "^6.1.12", + "temp-file": "^3.4.0", + "tiny-async-pool": "1.3.0", + "which": "^5.0.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "dmg-builder": "26.4.0", + "electron-builder-squirrel-windows": "26.4.0" + } + }, + "node_modules/app-builder-lib/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "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==", + "license": "Python-2.0" + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "license": "MIT" + }, + "node_modules/async-exit-hook": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/async-exit-hook/-/async-exit-hook-2.0.1.tgz", + "integrity": "sha512-NW2cX8m1Q7KPA7a5M2ULQeZ2wR5qI5PAbw5L0UOMxdioVk9PMZ0h1TmyZEkPYrCvYjDlFICusOu1dlEKAAeXBw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/b4a": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.7.3.tgz", + "integrity": "sha512-5Q2mfq2WfGuFp3uS//0s6baOJLMoVduPYVeNmDYxu5OUA1/cBfvr2RIS7vi62LdNj/urk1hfmj867I3qt6uZ7Q==", + "license": "Apache-2.0", + "peerDependencies": { + "react-native-b4a": "*" + }, + "peerDependenciesMeta": { + "react-native-b4a": { + "optional": true + } + } + }, + "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==", + "license": "MIT" + }, + "node_modules/bare-events": { + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.8.2.tgz", + "integrity": "sha512-riJjyv1/mHLIPX4RwiK+oW9/4c3TEUeORHKefKAKnZ5kyslbN+HXowtbaVEqt4IMUB7OXlfixcs6gsFeo/jhiQ==", + "license": "Apache-2.0", + "peerDependencies": { + "bare-abort-controller": "*" + }, + "peerDependenciesMeta": { + "bare-abort-controller": { + "optional": true + } + } + }, + "node_modules/bare-fs": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/bare-fs/-/bare-fs-4.5.2.tgz", + "integrity": "sha512-veTnRzkb6aPHOvSKIOy60KzURfBdUflr5VReI+NSaPL6xf+XLdONQgZgpYvUuZLVQ8dCqxpBAudaOM1+KpAUxw==", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "bare-events": "^2.5.4", + "bare-path": "^3.0.0", + "bare-stream": "^2.6.4", + "bare-url": "^2.2.2", + "fast-fifo": "^1.3.2" + }, + "engines": { + "bare": ">=1.16.0" + }, + "peerDependencies": { + "bare-buffer": "*" + }, + "peerDependenciesMeta": { + "bare-buffer": { + "optional": true + } + } + }, + "node_modules/bare-os": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/bare-os/-/bare-os-3.6.2.tgz", + "integrity": "sha512-T+V1+1srU2qYNBmJCXZkUY5vQ0B4FSlL3QDROnKQYOqeiQR8UbjNHlPa+TIbM4cuidiN9GaTaOZgSEgsvPbh5A==", + "license": "Apache-2.0", + "optional": true, + "engines": { + "bare": ">=1.14.0" + } + }, + "node_modules/bare-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bare-path/-/bare-path-3.0.0.tgz", + "integrity": "sha512-tyfW2cQcB5NN8Saijrhqn0Zh7AnFNsnczRcuWODH0eYAXBsJ5gVxAUuNr7tsHSC6IZ77cA0SitzT+s47kot8Mw==", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "bare-os": "^3.0.1" + } + }, + "node_modules/bare-stream": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/bare-stream/-/bare-stream-2.7.0.tgz", + "integrity": "sha512-oyXQNicV1y8nc2aKffH+BUHFRXmx6VrPzlnaEvMhram0nPBrKcEdcyBg5r08D0i8VxngHFAiVyn1QKXpSG0B8A==", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "streamx": "^2.21.0" + }, + "peerDependencies": { + "bare-buffer": "*", + "bare-events": "*" + }, + "peerDependenciesMeta": { + "bare-buffer": { + "optional": true + }, + "bare-events": { + "optional": true + } + } + }, + "node_modules/bare-url": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/bare-url/-/bare-url-2.3.2.tgz", + "integrity": "sha512-ZMq4gd9ngV5aTMa5p9+UfY0b3skwhHELaDkhEHetMdX0LRkW9kzaym4oo/Eh+Ghm0CCDuMTsRIGM/ytUc1ZYmw==", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "bare-path": "^3.0.0" + } + }, + "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==", + "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" + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/boolean": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/boolean/-/boolean-3.2.0.tgz", + "integrity": "sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "license": "MIT", + "optional": true + }, + "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/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "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", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "license": "MIT", + "engines": { + "node": "*" + } + }, + "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" + }, + "node_modules/builder-util": { + "version": "26.3.4", + "resolved": "https://registry.npmjs.org/builder-util/-/builder-util-26.3.4.tgz", + "integrity": "sha512-aRn88mYMktHxzdqDMF6Ayj0rKoX+ZogJ75Ck7RrIqbY/ad0HBvnS2xA4uHfzrGr5D2aLL3vU6OBEH4p0KMV2XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/debug": "^4.1.6", + "7zip-bin": "~5.2.0", + "app-builder-bin": "5.0.0-alpha.12", + "builder-util-runtime": "9.5.1", + "chalk": "^4.1.2", + "cross-spawn": "^7.0.6", + "debug": "^4.3.4", + "fs-extra": "^10.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.0", + "js-yaml": "^4.1.0", + "sanitize-filename": "^1.6.3", + "source-map-support": "^0.5.19", + "stat-mode": "^1.0.0", + "temp-file": "^3.4.0", + "tiny-async-pool": "1.3.0" + } + }, + "node_modules/builder-util-runtime": { + "version": "9.5.1", + "resolved": "https://registry.npmjs.org/builder-util-runtime/-/builder-util-runtime-9.5.1.tgz", + "integrity": "sha512-qt41tMfgHTllhResqM5DcnHyDIWNgzHvuY2jDcYP9iaGpkWxTUzV6GQjDeLnlR1/DtdlcsWQbA7sByMpmJFTLQ==", + "license": "MIT", + "dependencies": { + "debug": "^4.3.4", + "sax": "^1.2.4" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/builder-util/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/cacache": { + "version": "19.0.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", + "integrity": "sha512-hdsUxulXCi5STId78vRVYEtDAjq99ICAUktLTeTYsLoTE6Z8dS0c8pWNCxwdrk9YfJeobDZc2Y186hD/5ZQgFQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "@npmcli/fs": "^4.0.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^7.0.2", + "ssri": "^12.0.0", + "tar": "^7.4.3", + "unique-filename": "^4.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/cacache/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/cacache/node_modules/chownr": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", + "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/cacache/node_modules/glob": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", + "integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==", + "dev": true, + "license": "ISC", + "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/cacache/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, + "license": "ISC" + }, + "node_modules/cacache/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, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/tar": { + "version": "7.5.2", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.2.tgz", + "integrity": "sha512-7NyxrTE4Anh8km8iEy7o0QYPs+0JKBTj5ZaqHg6B39erLg0qYXN3BijtShwbsNSvQ+LN75+KV+C4QR/f6Gwnpg==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/fs-minipass": "^4.0.0", + "chownr": "^3.0.0", + "minipass": "^7.1.2", + "minizlib": "^3.1.0", + "yallist": "^5.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/cacache/node_modules/yallist": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", + "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/cacheable-lookup": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", + "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==", + "license": "MIT", + "engines": { + "node": ">=10.6.0" + } + }, + "node_modules/cacheable-request": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.4.tgz", + "integrity": "sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==", + "license": "MIT", + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^4.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^6.0.1", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "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/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "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/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/chromium-pickle-js": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/chromium-pickle-js/-/chromium-pickle-js-0.2.0.tgz", + "integrity": "sha512-1R5Fho+jBq0DDydt+/vHWj5KJNJCKdARKOCwZUen84I5BreWoLqRLANH1U87eJy1tiASPtMnGqJJq0ZsLoRPOw==", + "dev": true, + "license": "MIT" + }, + "node_modules/ci-info": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.3.1.tgz", + "integrity": "sha512-Wdy2Igu8OcBpI2pZePZ5oWjPC38tmDVx5WKUXKwlLYkA0ozo85sLsLvkBbBn/sZaSCMFOGZJ14fvW9t5/d7kdA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-spinners": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/clone-response": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", + "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "license": "MIT", + "dependencies": { + "mimic-response": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/color": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/color/-/color-5.0.3.tgz", + "integrity": "sha512-ezmVcLR3xAVp8kYOm4GS45ZLLgIE6SPAFoduLr6hTDajwb3KZ2F46gulK3XpcwRFb5KKGCSezCBAY4Dw4HsyXA==", + "license": "MIT", + "dependencies": { + "color-convert": "^3.1.3", + "color-string": "^2.1.3" + }, + "engines": { + "node": ">=18" + } + }, + "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/color-string": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-2.1.4.tgz", + "integrity": "sha512-Bb6Cq8oq0IjDOe8wJmi4JeNn763Xs9cfrBcaylK1tPypWzyoy2G3l90v9k64kjphl/ZJjPIShFztenRomi8WTg==", + "license": "MIT", + "dependencies": { + "color-name": "^2.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/color-string/node_modules/color-name": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-2.1.0.tgz", + "integrity": "sha512-1bPaDNFm0axzE4MEAzKPuqKWeRaT43U/hyxKPBdqTfmPF+d6n7FSoTFxLVULUJOmiLp01KjhIPPH+HrXZJN4Rg==", + "license": "MIT", + "engines": { + "node": ">=12.20" + } + }, + "node_modules/color/node_modules/color-convert": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-3.1.3.tgz", + "integrity": "sha512-fasDH2ont2GqF5HpyO4w0+BcewlhHEZOFn9c1ckZdHpJ56Qb7MHhH/IcJZbBGgvdtwdwNbLvxiBEdg336iA9Sg==", + "license": "MIT", + "dependencies": { + "color-name": "^2.0.0" + }, + "engines": { + "node": ">=14.6" + } + }, + "node_modules/color/node_modules/color-name": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-2.1.0.tgz", + "integrity": "sha512-1bPaDNFm0axzE4MEAzKPuqKWeRaT43U/hyxKPBdqTfmPF+d6n7FSoTFxLVULUJOmiLp01KjhIPPH+HrXZJN4Rg==", + "license": "MIT", + "engines": { + "node": ">=12.20" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", + "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/compare-version": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/compare-version/-/compare-version-0.1.2.tgz", + "integrity": "sha512-pJDh5/4wrEnXX/VWRZvruAGHkzKdr46z11OlTPN+VrATlWWhSKewNCJ1futCO5C7eJB3nPMFZA1LeYtcFboZ2A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "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, + "license": "MIT" + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/crc": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/crc/-/crc-3.8.0.tgz", + "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "buffer": "^5.1.0" + } + }, + "node_modules/cross-dirname": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/cross-dirname/-/cross-dirname-0.1.0.tgz", + "integrity": "sha512-+R08/oI0nl3vfPcqftZRpytksBXDzOUveBq/NBVx0sUp1axwzPQrKinNx5yd5sxPu8j1wIy8AfnVQ+5eFdha6Q==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cross-spawn/node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/cross-spawn/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "license": "MIT", + "dependencies": { + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/decompress-response/node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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, + "license": "MIT" + }, + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/defer-to-connect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", + "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "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==", + "license": "MIT", + "optional": 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==", + "license": "MIT", + "optional": 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/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "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==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=8" + } + }, + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "license": "MIT", + "optional": true + }, + "node_modules/dir-compare": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/dir-compare/-/dir-compare-4.2.0.tgz", + "integrity": "sha512-2xMCmOoMrdQIPHdsTawECdNPwlVFB9zGcz3kuhmBO6U3oU+UQjsue0i8ayLKpgBcm+hcXPMVSGUN9d+pvJ6+VQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "minimatch": "^3.0.5", + "p-limit": "^3.1.0 " + } + }, + "node_modules/dir-compare/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, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/dmg-builder": { + "version": "26.4.0", + "resolved": "https://registry.npmjs.org/dmg-builder/-/dmg-builder-26.4.0.tgz", + "integrity": "sha512-ce4Ogns4VMeisIuCSK0C62umG0lFy012jd8LMZ6w/veHUeX4fqfDrGe+HTWALAEwK6JwKP+dhPvizhArSOsFbg==", + "dev": true, + "license": "MIT", + "dependencies": { + "app-builder-lib": "26.4.0", + "builder-util": "26.3.4", + "fs-extra": "^10.1.0", + "iconv-lite": "^0.6.2", + "js-yaml": "^4.1.0" + }, + "optionalDependencies": { + "dmg-license": "^1.0.11" + } + }, + "node_modules/dmg-builder/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/dmg-license": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/dmg-license/-/dmg-license-1.0.11.tgz", + "integrity": "sha512-ZdzmqwKmECOWJpqefloC5OJy1+WZBBse5+MR88z9g9Zn4VY+WYUkAyojmhzJckH5YbbZGcYIuGAkY5/Ys5OM2Q==", + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "dependencies": { + "@types/plist": "^3.0.1", + "@types/verror": "^1.10.3", + "ajv": "^6.10.0", + "crc": "^3.8.0", + "iconv-corefoundation": "^1.1.7", + "plist": "^3.0.4", + "smart-buffer": "^4.0.2", + "verror": "^1.10.0" + }, + "bin": { + "dmg-license": "bin/dmg-license.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dotenv": { + "version": "16.6.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.6.1.tgz", + "integrity": "sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, + "node_modules/dotenv-expand": { + "version": "11.0.7", + "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-11.0.7.tgz", + "integrity": "sha512-zIHwmZPRshsCdpMDyVsqGmgyP0yT8GAgXUnkdAoJisxvf33k7yO6OuoKmcTGuXPWSsm8Oh88nZicRLA9Y0rUeA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "dotenv": "^16.4.5" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "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, + "license": "MIT" + }, + "node_modules/ejs": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", + "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", + "license": "Apache-2.0", + "dependencies": { + "jake": "^10.8.5" + }, + "bin": { + "ejs": "bin/cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ejs-electron": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ejs-electron/-/ejs-electron-3.0.0.tgz", + "integrity": "sha512-U84psVz+oyyo06N+dOvb6FRVyZj/Pl2MLt7Iayq8DnlOz8jc1pfnGbxCeBQqbqNCkJpiS6MOPcPbRMvaLukf3g==", + "license": "MIT", + "dependencies": { + "ejs": "^3.1.9", + "mime": "^3.0.0" + } + }, + "node_modules/electron": { + "version": "39.2.7", + "resolved": "https://registry.npmjs.org/electron/-/electron-39.2.7.tgz", + "integrity": "sha512-KU0uFS6LSTh4aOIC3miolcbizOFP7N1M46VTYVfqIgFiuA2ilfNaOHLDS9tCMvwwHRowAsvqBrh9NgMXcTOHCQ==", + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "@electron/get": "^2.0.0", + "@types/node": "^22.7.7", + "extract-zip": "^2.0.1" + }, + "bin": { + "electron": "cli.js" + }, + "engines": { + "node": ">= 12.20.55" + } + }, + "node_modules/electron-builder": { + "version": "26.4.0", + "resolved": "https://registry.npmjs.org/electron-builder/-/electron-builder-26.4.0.tgz", + "integrity": "sha512-FCUqvdq2AULL+Db2SUGgjOYTbrgkPxZtCjqIZGnjH9p29pTWyesQqBIfvQBKa6ewqde87aWl49n/WyI/NyUBog==", + "dev": true, + "license": "MIT", + "dependencies": { + "app-builder-lib": "26.4.0", + "builder-util": "26.3.4", + "builder-util-runtime": "9.5.1", + "chalk": "^4.1.2", + "ci-info": "^4.2.0", + "dmg-builder": "26.4.0", + "fs-extra": "^10.1.0", + "lazy-val": "^1.0.5", + "simple-update-notifier": "2.0.0", + "yargs": "^17.6.2" + }, + "bin": { + "electron-builder": "cli.js", + "install-app-deps": "install-app-deps.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/electron-builder-squirrel-windows": { + "version": "26.4.0", + "resolved": "https://registry.npmjs.org/electron-builder-squirrel-windows/-/electron-builder-squirrel-windows-26.4.0.tgz", + "integrity": "sha512-7dvalY38xBzWNaoOJ4sqy2aGIEpl2S1gLPkkB0MHu1Hu5xKQ82il1mKSFlXs6fLpXUso/NmyjdHGlSHDRoG8/w==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "app-builder-lib": "26.4.0", + "builder-util": "26.3.4", + "electron-winstaller": "5.4.0" + } + }, + "node_modules/electron-builder/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/electron-publish": { + "version": "26.3.4", + "resolved": "https://registry.npmjs.org/electron-publish/-/electron-publish-26.3.4.tgz", + "integrity": "sha512-5/ouDPb73SkKuay2EXisPG60LTFTMNHWo2WLrK5GDphnWK9UC+yzYrzVeydj078Yk4WUXi0+TaaZsNd6Zt5k/A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/fs-extra": "^9.0.11", + "builder-util": "26.3.4", + "builder-util-runtime": "9.5.1", + "chalk": "^4.1.2", + "form-data": "^4.0.0", + "fs-extra": "^10.1.0", + "lazy-val": "^1.0.5", + "mime": "^2.5.2" + } + }, + "node_modules/electron-publish/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/electron-publish/node_modules/mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "dev": true, + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/electron-updater": { + "version": "6.7.3", + "resolved": "https://registry.npmjs.org/electron-updater/-/electron-updater-6.7.3.tgz", + "integrity": "sha512-EgkT8Z9noqXKbwc3u5FkJA+r48jwZ5DTUiOkJMOTEEH//n5Am6wfQGz7nvSFEA2oIAMv9jRzn5JKTyWeSKOPgg==", + "license": "MIT", + "dependencies": { + "builder-util-runtime": "9.5.1", + "fs-extra": "^10.1.0", + "js-yaml": "^4.1.0", + "lazy-val": "^1.0.5", + "lodash.escaperegexp": "^4.1.2", + "lodash.isequal": "^4.5.0", + "semver": "~7.7.3", + "tiny-typed-emitter": "^2.1.0" + } + }, + "node_modules/electron-updater/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/electron-winstaller": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/electron-winstaller/-/electron-winstaller-5.4.0.tgz", + "integrity": "sha512-bO3y10YikuUwUuDUQRM4KfwNkKhnpVO7IPdbsrejwN9/AABJzzTQ4GeHwyzNSrVO+tEH3/Np255a3sVZpZDjvg==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@electron/asar": "^3.2.1", + "debug": "^4.1.1", + "fs-extra": "^7.0.1", + "lodash": "^4.17.21", + "temp": "^0.9.0" + }, + "engines": { + "node": ">=8.0.0" + }, + "optionalDependencies": { + "@electron/windows-sign": "^1.1.2" + } + }, + "node_modules/electron-winstaller/node_modules/fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/electron-winstaller/node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "dev": true, + "license": "MIT", + "peer": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/electron-winstaller/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "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, + "license": "MIT" + }, + "node_modules/enabled": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz", + "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==", + "license": "MIT" + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.5.tgz", + "integrity": "sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==", + "license": "MIT", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "dev": true, + "license": "MIT" + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "devOptional": true, + "license": "MIT", + "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==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "license": "MIT", + "optional": true + }, + "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==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "9.39.2", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.2.tgz", + "integrity": "sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.8.0", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.21.1", + "@eslint/config-helpers": "^0.4.2", + "@eslint/core": "^0.17.0", + "@eslint/eslintrc": "^3.3.1", + "@eslint/js": "9.39.2", + "@eslint/plugin-kit": "^0.4.1", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.2", + "@types/estree": "^1.0.6", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.6", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.4.0", + "eslint-visitor-keys": "^4.2.1", + "espree": "^10.4.0", + "esquery": "^1.5.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^8.0.0", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "jiti": "*" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + } + } + }, + "node_modules/eslint-scope": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz", + "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/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, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/espree": { + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", + "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^8.15.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.7.0.tgz", + "integrity": "sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==", + "dev": true, + "license": "BSD-3-Clause", + "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, + "license": "BSD-2-Clause", + "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, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/events-universal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/events-universal/-/events-universal-1.0.1.tgz", + "integrity": "sha512-LUd5euvbMLpwOF8m6ivPCbhQeSiYVNb8Vs0fQ8QjXo0JTkEHpz8pxdQf0gStltaPpw0Cca8b39KxvK9cfKRiAw==", + "license": "Apache-2.0", + "dependencies": { + "bare-events": "^2.7.0" + } + }, + "node_modules/exponential-backoff": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.3.tgz", + "integrity": "sha512-ZgEeZXj30q+I0EN+CbSSpIyPaJ5HVQD18Z1m+u1FXbAeT94mr1zw50q4q6jiiC447Nl/YTcIYSAftiGqetwXCA==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "license": "BSD-2-Clause", + "dependencies": { + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" + }, + "engines": { + "node": ">= 10.17.0" + }, + "optionalDependencies": { + "@types/yauzl": "^2.9.1" + } + }, + "node_modules/extsprintf": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.1.tgz", + "integrity": "sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "license": "MIT", + "optional": true + }, + "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-fifo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", + "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==", + "license": "MIT" + }, + "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, + "license": "MIT" + }, + "node_modules/fastq": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.20.1.tgz", + "integrity": "sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==", + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", + "license": "MIT", + "dependencies": { + "pend": "~1.2.0" + } + }, + "node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/fecha": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz", + "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==", + "license": "MIT" + }, + "node_modules/file-entry-cache": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "flat-cache": "^4.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/filelist": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", + "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", + "license": "Apache-2.0", + "dependencies": { + "minimatch": "^5.0.1" + } + }, + "node_modules/filelist/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==", + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/filelist/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "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, + "license": "MIT", + "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": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.4" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/flatted": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", + "dev": true, + "license": "ISC" + }, + "node_modules/fn.name": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz", + "integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==", + "license": "MIT" + }, + "node_modules/foreground-child": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", + "dev": true, + "license": "ISC", + "dependencies": { + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/foreground-child/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, + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/form-data": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.5.tgz", + "integrity": "sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==", + "dev": true, + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.2", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fs-extra": { + "version": "11.3.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.3.tgz", + "integrity": "sha512-VWSRii4t0AFm6ixFFmLLx1t7wS1gh+ckoa84aOeapGum0h+EZd1EhEumSB+ZdDLnEPuucsVB9oB7cxJHap6Afg==", + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/fs-minipass": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", + "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "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, + "license": "ISC" + }, + "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, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "license": "MIT", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/github-syntax-dark": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/github-syntax-dark/-/github-syntax-dark-0.5.0.tgz", + "integrity": "sha512-RoFaoOEmvX25k0FEV4PJ0y5McWZOI6ZKfFee7YzxKUzz2SErzFec9f2IpW2zbijzImx8s9Zsd5YvO01XxX7xVg==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "license": "MIT" + }, + "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, + "license": "ISC", + "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, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/glob/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, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/global-agent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-3.0.0.tgz", + "integrity": "sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==", + "license": "BSD-3-Clause", + "optional": true, + "dependencies": { + "boolean": "^3.0.1", + "es6-error": "^4.1.1", + "matcher": "^3.0.0", + "roarr": "^2.15.3", + "semver": "^7.3.2", + "serialize-error": "^7.0.1" + }, + "engines": { + "node": ">=10.0" + } + }, + "node_modules/globals": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", + "dev": true, + "license": "MIT", + "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==", + "license": "MIT", + "optional": true, + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/got": { + "version": "11.8.6", + "resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz", + "integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==", + "license": "MIT", + "dependencies": { + "@sindresorhus/is": "^4.0.0", + "@szmarczak/http-timer": "^4.0.5", + "@types/cacheable-request": "^6.0.1", + "@types/responselike": "^1.0.0", + "cacheable-lookup": "^5.0.3", + "cacheable-request": "^7.0.2", + "decompress-response": "^6.0.0", + "http2-wrapper": "^1.0.0-beta.5.2", + "lowercase-keys": "^2.0.0", + "p-cancelable": "^2.0.0", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=10.19.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/got?sponsor=1" + } + }, + "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==", + "license": "ISC" + }, + "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==", + "license": "MIT", + "optional": true, + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "dev": true, + "license": "MIT", + "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, + "license": "MIT", + "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, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/helios-core": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/helios-core/-/helios-core-2.3.0.tgz", + "integrity": "sha512-duePk0XCqpZartpluj2Z9sc9EAlOVk7It7jD2RdbwuGAblH6gL9wga+9eCIy1/z2oRlURaSWZDyx/EucpoLrTQ==", + "license": " LGPL-3.0-only", + "dependencies": { + "fastq": "^1.20.1", + "fs-extra": "^11.3.3", + "got": "^11.8.6", + "luxon": "^3.7.2", + "node-stream-zip": "^1.15.0", + "semver": "^7.7.3", + "tar-fs": "^3.1.1", + "triple-beam": "^1.4.1", + "winreg": "^1.2.5", + "winston": "^3.19.0" + } + }, + "node_modules/helios-distribution-types": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/helios-distribution-types/-/helios-distribution-types-1.3.0.tgz", + "integrity": "sha512-MP66JRHvmuE9yDoZoKeFDh3stsHger0w/cRcJAlV7UYw5ztR3m/uLbWdbfFV68B1Yc0+hDIiuFsuJT/Ve9xuiw==", + "license": "UNLICENSED" + }, + "node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz", + "integrity": "sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==", + "license": "BSD-2-Clause" + }, + "node_modules/http-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", + "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/http2-wrapper": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", + "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", + "license": "MIT", + "dependencies": { + "quick-lru": "^5.1.1", + "resolve-alpn": "^1.0.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/iconv-corefoundation": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/iconv-corefoundation/-/iconv-corefoundation-1.1.7.tgz", + "integrity": "sha512-T10qvkw0zz4wnm560lOEg0PovVqUXuOFhhHAkixw8/sycy7TJt7v/RrkEKEQnAw2viPSJu6iAkErxnzR0g8PpQ==", + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "dependencies": { + "cli-truncate": "^2.1.0", + "node-addon-api": "^1.6.3" + }, + "engines": { + "node": "^8.11.2 || >=10" + } + }, + "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==", + "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": "BSD-3-Clause" + }, + "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, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "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, + "license": "MIT", + "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, + "license": "ISC", + "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==", + "license": "ISC" + }, + "node_modules/ip-address": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.1.0.tgz", + "integrity": "sha512-XXADHxXmvT9+CRxhXg56LJovE+bmWnEWB78LB83VZTprKTmaC5QfruXocxzTZ2Kl0DNwKuBdlIhjL8LeY8Sf8Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 12" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "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, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/isbinaryfile": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-5.0.7.tgz", + "integrity": "sha512-gnWD14Jh3FzS3CPhF0AxNOJ8CxqeblPTADzI38r0wt8ZyQl5edpy75myt08EG2oKvpyiqSqsx+Wkz9vtkbTqYQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 18.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, + "node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=16" + } + }, + "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, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jake": { + "version": "10.9.4", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.4.tgz", + "integrity": "sha512-wpHYzhxiVQL+IV05BLE2Xn34zW1S223hvjtqk0+gsPrwd/8JNLXJgZZM/iPFsYc1xyphF+6M6EvdE5E9MBGkDA==", + "license": "Apache-2.0", + "dependencies": { + "async": "^3.2.6", + "filelist": "^1.0.4", + "picocolors": "^1.1.1" + }, + "bin": { + "jake": "bin/cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jiti": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.6.1.tgz", + "integrity": "sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==", + "dev": true, + "license": "MIT", + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, + "node_modules/jquery": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", + "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==", + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", + "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", + "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==", + "license": "MIT" + }, + "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, + "license": "MIT" + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "license": "ISC", + "optional": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "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==", + "license": "MIT", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/kuler": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz", + "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==", + "license": "MIT" + }, + "node_modules/lazy-val": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/lazy-val/-/lazy-val-1.0.5.tgz", + "integrity": "sha512-0/BnGCCfyUMkBpeDgWihanIAF9JmZhHBgUhEqzvf+adhNGLoP6TaiI5oF8oyb3I45P+PcnrqihSf01M0l0G5+Q==", + "license": "MIT" + }, + "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, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "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, + "license": "MIT", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.escaperegexp": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.escaperegexp/-/lodash.escaperegexp-4.1.2.tgz", + "integrity": "sha512-TM9YBvyC84ZxE3rgfefxUWiQKLilstD6k7PTGt6wfbtXF8ixIJLOL3VYyV/z+ZiPLsVxAsKAFVwWlWeb2Y8Yyw==", + "license": "MIT" + }, + "node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==", + "deprecated": "This package is deprecated. Use require('node:util').isDeepStrictEqual instead.", + "license": "MIT" + }, + "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==", + "license": "MIT" + }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/logform": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/logform/-/logform-2.7.0.tgz", + "integrity": "sha512-TFYA4jnP7PVbmlBIfhlSe+WKxs9dklXMTEGcBCIvLhE/Tn3H6Gk1norupVW7m5Cnd4bLcr08AytbyV/xj7f/kQ==", + "license": "MIT", + "dependencies": { + "@colors/colors": "1.6.0", + "@types/triple-beam": "^1.3.2", + "fecha": "^4.2.0", + "ms": "^2.1.1", + "safe-stable-stringify": "^2.3.1", + "triple-beam": "^1.3.0" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/luxon": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/luxon/-/luxon-3.7.2.tgz", + "integrity": "sha512-vtEhXh/gNjI9Yg1u4jX/0YVPMvxzHuGgCm6tC5kZyb08yjGWGnqAjGJvcXbqQR2P3MyMEFnRbpcdFS6PBcLqew==", + "license": "MIT", + "engines": { + "node": ">=12" + } + }, + "node_modules/make-fetch-happen": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.3.tgz", + "integrity": "sha512-QMjGbFTP0blj97EeidG5hk/QhKQ3T4ICckQGLgz38QF7Vgbk6e6FTARN8KhKxyBbWn8R0HU+bnw8aSoFPD4qtQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "@npmcli/agent": "^3.0.0", + "cacache": "^19.0.1", + "http-cache-semantics": "^4.1.1", + "minipass": "^7.0.2", + "minipass-fetch": "^4.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^1.0.0", + "proc-log": "^5.0.0", + "promise-retry": "^2.0.1", + "ssri": "^12.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/matcher": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz", + "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", + "license": "MIT", + "optional": true, + "dependencies": { + "escape-string-regexp": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/mime": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", + "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "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", + "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", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/minimatch": { + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.1.1.tgz", + "integrity": "sha512-enIvLvRAFZYXJzkCYG5RKmPfrFArdLv+R+lbQ53BmIMLIry74bjKzX6iHAm8WYamJkhSSEabrWN5D97XnKObjQ==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/brace-expansion": "^5.0.0" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minipass-collect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", + "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minipass-fetch": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-4.0.1.tgz", + "integrity": "sha512-j7U11C5HXigVuutxebFadoYBbd7VSdZWggSe64NVdvWNBqGAiXPL2QVCehjmw7lY1oF9gOllYbORh+hiNgfPgQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^3.0.1" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-flush/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.1.0.tgz", + "integrity": "sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "minipass": "^7.1.2" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "license": "MIT", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "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, + "license": "MIT" + }, + "node_modules/negotiator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz", + "integrity": "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/node-abi": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-4.24.0.tgz", + "integrity": "sha512-u2EC1CeNe25uVtX3EZbdQ275c74zdZmmpzrHEQh2aIYqoVjlglfUpOX9YY85x1nlBydEKDVaSmMNhR7N82Qj8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.6.3" + }, + "engines": { + "node": ">=22.12.0" + } + }, + "node_modules/node-addon-api": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-1.7.2.tgz", + "integrity": "sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/node-api-version": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/node-api-version/-/node-api-version-0.2.1.tgz", + "integrity": "sha512-2xP/IGGMmmSQpI1+O/k72jF/ykvZ89JeuKX3TLJAYPDVLUalrshrLHkeVcCCZqG/eEa635cr8IBYzgnDvM2O8Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.3.5" + } + }, + "node_modules/node-gyp": { + "version": "11.5.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-11.5.0.tgz", + "integrity": "sha512-ra7Kvlhxn5V9Slyus0ygMa2h+UqExPqUIkfk7Pc8QTLT956JLSy51uWFwHtIYy0vI8cB4BDhc/S03+880My/LQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^14.0.3", + "nopt": "^8.0.0", + "proc-log": "^5.0.0", + "semver": "^7.3.5", + "tar": "^7.4.3", + "tinyglobby": "^0.2.12", + "which": "^5.0.0" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/node-gyp/node_modules/chownr": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", + "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/node-gyp/node_modules/tar": { + "version": "7.5.2", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.2.tgz", + "integrity": "sha512-7NyxrTE4Anh8km8iEy7o0QYPs+0JKBTj5ZaqHg6B39erLg0qYXN3BijtShwbsNSvQ+LN75+KV+C4QR/f6Gwnpg==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/fs-minipass": "^4.0.0", + "chownr": "^3.0.0", + "minipass": "^7.1.2", + "minizlib": "^3.1.0", + "yallist": "^5.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/node-gyp/node_modules/yallist": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", + "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/node-stream-zip": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/node-stream-zip/-/node-stream-zip-1.15.0.tgz", + "integrity": "sha512-LN4fydt9TqhZhThkZIVQnF9cwjU3qmUH9h78Mx/K7d3VvfRqqwthLwJEUOEL0QPZ0XQmNN7be5Ggit5+4dq3Bw==", + "license": "MIT", + "engines": { + "node": ">=0.12.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/antelle" + } + }, + "node_modules/nopt": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-8.1.0.tgz", + "integrity": "sha512-ieGu42u/Qsa4TFktmaKEwM6MQH0pOWnaB3htzh0JRtx84+Mebc0cbZYN5bC+6WTZ4+77xrL9Pn5m7CV6VIkV7A==", + "dev": true, + "license": "ISC", + "dependencies": { + "abbrev": "^3.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">= 0.4" + } + }, + "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==", + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/one-time": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/one-time/-/one-time-1.0.0.tgz", + "integrity": "sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==", + "license": "MIT", + "dependencies": { + "fn.name": "1.x.x" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "license": "MIT", + "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/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-cancelable": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", + "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "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, + "license": "MIT", + "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, + "license": "MIT", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-map": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-7.0.4.tgz", + "integrity": "sha512-tkAQEw8ysMzmkhgw8k+1U/iPhWNhykKnSk4Rd5zLoPJCuJaGRPo6YposrZgaxHKzDHdDWWZvE/Sk7hsL2X/CpQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true, + "license": "BlueOak-1.0.0" + }, + "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/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, + "license": "MIT", + "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, + "license": "MIT", + "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==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "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, + "license": "BlueOak-1.0.0", + "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, + "license": "ISC" + }, + "node_modules/pe-library": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/pe-library/-/pe-library-0.4.1.tgz", + "integrity": "sha512-eRWB5LBz7PpDu4PUlwT0PhnQfTQJlDDdPa35urV4Osrm0t0AqQFGn+UIkU3klZvwJ8KPO3VbBFsXquA6p6kqZw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12", + "npm": ">=6" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jet2jet" + } + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", + "license": "MIT" + }, + "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": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/plist": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/plist/-/plist-3.1.0.tgz", + "integrity": "sha512-uysumyrvkUX0rX/dEVqt8gC3sTBzd4zoWfLeS29nb53imdaXVvLINYXTI2GNqzaMuvacNx4uJQ8+b3zXR0pkgQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@xmldom/xmldom": "^0.8.8", + "base64-js": "^1.5.1", + "xmlbuilder": "^15.1.1" + }, + "engines": { + "node": ">=10.4.0" + } + }, + "node_modules/postject": { + "version": "1.0.0-alpha.6", + "resolved": "https://registry.npmjs.org/postject/-/postject-1.0.0-alpha.6.tgz", + "integrity": "sha512-b9Eb8h2eVqNE8edvKdwqkrY6O7kAwmI8kcnBv1NScolYJbo59XUF0noFq+lxbC1yN20bmC0WBEbDC5H/7ASb0A==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { + "commander": "^9.4.0" + }, + "bin": { + "postject": "dist/cli.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/postject/node_modules/commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "engines": { + "node": "^12.20.0 || >=14" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/proc-log": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", + "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", + "dev": true, + "license": "ISC", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dev": true, + "license": "MIT", + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/pump": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.3.tgz", + "integrity": "sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==", + "license": "MIT", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.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/quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-binary-file-arch": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/read-binary-file-arch/-/read-binary-file-arch-1.0.6.tgz", + "integrity": "sha512-BNg9EN3DD3GsDXX7Aa8O4p92sryjkmzYYgmgTAc6CA4uGLEDzFfxOxugu21akOxpcXHiEgsYkC6nPsQvLLLmEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.3.4" + }, + "bin": { + "read-binary-file-arch": "cli.js" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resedit": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/resedit/-/resedit-1.7.2.tgz", + "integrity": "sha512-vHjcY2MlAITJhC0eRD/Vv8Vlgmu9Sd3LX9zZvtGzU5ZImdTN3+d6e/4mnTyV8vEbyf1sgNIrWxhWlrys52OkEA==", + "dev": true, + "license": "MIT", + "dependencies": { + "pe-library": "^0.4.1" + }, + "engines": { + "node": ">=12", + "npm": ">=6" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jet2jet" + } + }, + "node_modules/resolve-alpn": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", + "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==", + "license": "MIT" + }, + "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/responselike": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", + "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==", + "license": "MIT", + "dependencies": { + "lowercase-keys": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/roarr": { + "version": "2.15.4", + "resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.4.tgz", + "integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==", + "license": "BSD-3-Clause", + "optional": true, + "dependencies": { + "boolean": "^3.0.1", + "detect-node": "^2.0.4", + "globalthis": "^1.0.1", + "json-stringify-safe": "^5.0.1", + "semver-compare": "^1.0.0", + "sprintf-js": "^1.1.2" + }, + "engines": { + "node": ">=8.0" + } + }, + "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==", + "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" + }, + "node_modules/safe-stable-stringify": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz", + "integrity": "sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "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-filename": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/sanitize-filename/-/sanitize-filename-1.6.3.tgz", + "integrity": "sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==", + "dev": true, + "license": "WTFPL OR ISC", + "dependencies": { + "truncate-utf8-bytes": "^1.0.0" + } + }, + "node_modules/sax": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.3.tgz", + "integrity": "sha512-yqYn1JhPczigF94DMS+shiDMjDowYO6y9+wB/4WgO0Y19jWYk0lQ4tuG5KI7kj4FTp1wxPj5IFfcrz/s1c3jjQ==", + "license": "BlueOak-1.0.0" + }, + "node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", + "license": "MIT", + "optional": true + }, + "node_modules/serialize-error": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", + "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", + "license": "MIT", + "optional": true, + "dependencies": { + "type-fest": "^0.13.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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==", + "dev": true, + "license": "MIT", + "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==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/simple-update-notifier": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-2.0.0.tgz", + "integrity": "sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks": { + "version": "2.8.7", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.7.tgz", + "integrity": "sha512-HLpt+uLy/pxB+bum/9DzAgiKS8CX1EvbWxI4zlmgGCExImLdiad2iCwXT5Z4c9c3Eq8rP2318mPW2c+QbtjK8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ip-address": "^10.0.1", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "8.0.5", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz", + "integrity": "sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==", + "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "^4.3.4", + "socks": "^2.8.3" + }, + "engines": { + "node": ">= 14" + } + }, + "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", + "engines": { + "node": ">=0.10.0" + } + }, + "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", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "license": "BSD-3-Clause", + "optional": true + }, + "node_modules/ssri": { + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-12.0.0.tgz", + "integrity": "sha512-S7iGNosepx9RadX82oimUkvr0Ct7IjJbEbs4mJcTxst8um95J3sDYU1RBEOvdu6oL1Wek2ODI5i4MAw+dZ6cAQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==", + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/stat-mode": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stat-mode/-/stat-mode-1.0.0.tgz", + "integrity": "sha512-jH9EhtKIjuXZ2cWxmXS8ZP80XyC3iasQxMDV8jzhNJpfDb7VbQLVW4Wvsxz9QZvzV+G4YoSfBUVKDOyxLzi/sg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/streamx": { + "version": "2.23.0", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.23.0.tgz", + "integrity": "sha512-kn+e44esVfn2Fa/O0CPFcex27fjIL6MkVae0Mm6q+E6f0hWv578YCERbv+4m02cjxvDsPKLnmxral/rR6lBMAg==", + "license": "MIT", + "dependencies": { + "events-universal": "^1.0.0", + "fast-fifo": "^1.3.2", + "text-decoder": "^1.1.0" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "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, + "license": "MIT", + "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": { + "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, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "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, + "license": "MIT", + "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, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "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/sumchecker": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/sumchecker/-/sumchecker-3.0.1.tgz", + "integrity": "sha512-MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==", + "license": "Apache-2.0", + "dependencies": { + "debug": "^4.1.0" + }, + "engines": { + "node": ">= 8.0" + } + }, + "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, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "dev": true, + "license": "ISC", + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar-fs": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.1.1.tgz", + "integrity": "sha512-LZA0oaPOc2fVo82Txf3gw+AkEd38szODlptMYejQUhndHMLQ9M059uXR+AfS7DNo0NpINvSqDsvyaCrBVkptWg==", + "license": "MIT", + "dependencies": { + "pump": "^3.0.0", + "tar-stream": "^3.1.5" + }, + "optionalDependencies": { + "bare-fs": "^4.0.1", + "bare-path": "^3.0.0" + } + }, + "node_modules/tar-stream": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz", + "integrity": "sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==", + "license": "MIT", + "dependencies": { + "b4a": "^1.6.4", + "fast-fifo": "^1.2.0", + "streamx": "^2.15.0" + } + }, + "node_modules/tar/node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/tar/node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=8" + } + }, + "node_modules/tar/node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "license": "MIT", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/tar/node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/temp": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/temp/-/temp-0.9.4.tgz", + "integrity": "sha512-yYrrsWnrXMcdsnu/7YMYAofM1ktpL5By7vZhf15CrXijWWrEYZks5AXBudalfSWJLlnen/QUJUB5aoB0kqZUGA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "mkdirp": "^0.5.1", + "rimraf": "~2.6.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/temp-file": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/temp-file/-/temp-file-3.4.0.tgz", + "integrity": "sha512-C5tjlC/HCtVUOi3KWVokd4vHVViOmGjtLwIh4MuzPo/nMYTV/p1urt3RnMz2IWXDdKEGJH3k5+KPxtqRsUYGtg==", + "dev": true, + "license": "MIT", + "dependencies": { + "async-exit-hook": "^2.0.1", + "fs-extra": "^10.0.0" + } + }, + "node_modules/temp-file/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/temp/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/text-decoder": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.3.tgz", + "integrity": "sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA==", + "license": "Apache-2.0", + "dependencies": { + "b4a": "^1.6.4" + } + }, + "node_modules/text-hex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz", + "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==", + "license": "MIT" + }, + "node_modules/tiny-async-pool": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/tiny-async-pool/-/tiny-async-pool-1.3.0.tgz", + "integrity": "sha512-01EAw5EDrcVrdgyCLgoSPvqznC0sVxDSVeiOz09FUpjh71G79VCqneOr+xvt7T1r76CF6ZZfPjHorN2+d+3mqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^5.5.0" + } + }, + "node_modules/tiny-async-pool/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/tiny-typed-emitter": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tiny-typed-emitter/-/tiny-typed-emitter-2.1.0.tgz", + "integrity": "sha512-qVtvMxeXbVej0cQWKqVSSAHmKZEHAvxdF8HEUBFWts8h+xEo5m/lEiPakuyZ3BnCBjOD8i24kzNOiOLLgsSxhA==", + "license": "MIT" + }, + "node_modules/tinyglobby": { + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tmp": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.5.tgz", + "integrity": "sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.14" + } + }, + "node_modules/tmp-promise": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/tmp-promise/-/tmp-promise-3.0.3.tgz", + "integrity": "sha512-RwM7MoPojPxsOBYnyd2hy0bxtIlVrihNs9pj5SUvY8Zz1sQcQG2tG1hSr8PDxfgEB8RNKDhqbIlroIarSNDNsQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "tmp": "^0.2.0" + } + }, + "node_modules/toml": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/toml/-/toml-3.0.0.tgz", + "integrity": "sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w==", + "license": "MIT" + }, + "node_modules/triple-beam": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.4.1.tgz", + "integrity": "sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==", + "license": "MIT", + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/truncate-utf8-bytes": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz", + "integrity": "sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ==", + "dev": true, + "license": "WTFPL", + "dependencies": { + "utf8-byte-length": "^1.0.1" + } + }, + "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, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "license": "(MIT OR CC0-1.0)", + "optional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "license": "MIT" + }, + "node_modules/unique-filename": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-4.0.0.tgz", + "integrity": "sha512-XSnEewXmQ+veP7xX2dS5Q4yZAvO40cBN2MWkJ7D/6sW4Dg6wYBNwM1Vrnz1FhH5AdeLIlUXRI9e28z1YZi71NQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "unique-slug": "^5.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/unique-slug": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-5.0.0.tgz", + "integrity": "sha512-9OdaqO5kwqR+1kVgHAhsp5vPNU0hnxRa26rBFNfNgM7M6pNtgzeBn3s/xbyCQL3dcjzOatcef6UUHpB/6MaETg==", + "dev": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "license": "MIT", + "engines": { + "node": ">= 10.0.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/utf8-byte-length": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/utf8-byte-length/-/utf8-byte-length-1.0.5.tgz", + "integrity": "sha512-Xn0w3MtiQ6zoz2vFyUVruaCL53O/DwUvkEeOvj+uulMm0BkUGYWmBYVyElqZaSLhY6ZD0ulfU3aBra2aVT4xfA==", + "dev": true, + "license": "(WTFPL OR MIT)" + }, + "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==", + "license": "MIT" + }, + "node_modules/verror": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.1.tgz", + "integrity": "sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "dev": true, + "license": "MIT", + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/which": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-5.0.0.tgz", + "integrity": "sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/winreg": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/winreg/-/winreg-1.2.5.tgz", + "integrity": "sha512-uf7tHf+tw0B1y+x+mKTLHkykBgK2KMs3g+KlzmyMbLvICSHQyB/xOFjTT8qZ3oeTFyU7Bbj4FzXitGG6jvKhYw==", + "license": "BSD-2-Clause" + }, + "node_modules/winston": { + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/winston/-/winston-3.19.0.tgz", + "integrity": "sha512-LZNJgPzfKR+/J3cHkxcpHKpKKvGfDZVPS4hfJCc4cCG0CgYzvlD6yE/S3CIL/Yt91ak327YCpiF/0MyeZHEHKA==", + "license": "MIT", + "dependencies": { + "@colors/colors": "^1.6.0", + "@dabh/diagnostics": "^2.0.8", + "async": "^3.2.3", + "is-stream": "^2.0.0", + "logform": "^2.7.0", + "one-time": "^1.0.0", + "readable-stream": "^3.4.0", + "safe-stable-stringify": "^2.3.1", + "stack-trace": "0.0.x", + "triple-beam": "^1.3.0", + "winston-transport": "^4.9.0" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/winston-transport": { + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.9.0.tgz", + "integrity": "sha512-8drMJ4rkgaPo1Me4zD/3WLfI/zPdA9o2IipKODunnGDcuqbHwjsbB79ylv04LCGGzU0xQ6vTznOMpQGaLhhm6A==", + "license": "MIT", + "dependencies": { + "logform": "^2.7.0", + "readable-stream": "^3.6.2", + "triple-beam": "^1.3.0" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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, + "license": "MIT", + "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": { + "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, + "license": "MIT", + "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/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "license": "ISC" + }, + "node_modules/xmlbuilder": { + "version": "15.1.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", + "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.0" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "license": "ISC" + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "license": "MIT", + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "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, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git a/launcher/package.json b/launcher/package.json new file mode 100644 index 0000000..5f17a14 --- /dev/null +++ b/launcher/package.json @@ -0,0 +1,51 @@ +{ + "name": "surviepote-launcher", + "version": "1.0.0", + "productName": "SurviePote", + "description": "Launcher officiel SurviePote - Rejoins mcpv.ihorizon.org", + "author": "SurviePote", + "license": "MIT", + "homepage": "https://git.kisakay.com/k/mc", + "bugs": { + "url": "https://github.com/dscalzi/HeliosLauncher/issues" + }, + "private": true, + "main": "index.js", + "scripts": { + "start": "electron .", + "dist": "electron-builder build", + "dist:win": "npm run dist -- -w", + "dist:mac": "npm run dist -- -m", + "dist:linux": "npm run dist -- -l", + "lint": "eslint ." + }, + "engines": { + "node": "22.x.x" + }, + "dependencies": { + "@electron/remote": "^2.1.3", + "adm-zip": "^0.5.16", + "ejs": "^3.1.10", + "ejs-electron": "^3.0.0", + "electron-updater": "^6.7.3", + "fs-extra": "^11.3.3", + "github-syntax-dark": "^0.5.0", + "got": "^11.8.5", + "helios-core": "~2.3.0", + "helios-distribution-types": "^1.3.0", + "jquery": "^3.7.1", + "lodash.merge": "^4.6.2", + "semver": "^7.7.3", + "toml": "^3.0.0" + }, + "devDependencies": { + "@stylistic/eslint-plugin": "^5.6.1", + "electron": "^39.2.7", + "electron-builder": "^26.4.0", + "eslint": "^9.39.2" + }, + "repository": { + "type": "git", + "url": "git+https://git.kisakay.com/k/mc.git" + } +}

    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 literal 0 HcmV?d00001 diff --git a/launcher/app/assets/images/LoadingText.png b/launcher/app/assets/images/LoadingText.png new file mode 100644 index 0000000000000000000000000000000000000000..5e55b332450bf97f3412489d8ffe84e1a468d344 GIT binary patch literal 126664 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 literal 0 HcmV?d00001 diff --git a/launcher/app/assets/images/SealCircle.ico b/launcher/app/assets/images/SealCircle.ico new file mode 100644 index 0000000000000000000000000000000000000000..7394928172a89b4bc787b884efc7bf5c00bf0c95 GIT binary patch literal 6806 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 DI{9#$ literal 0 HcmV?d00001 diff --git a/launcher/app/assets/images/SealCircle.png b/launcher/app/assets/images/SealCircle.png new file mode 100644 index 0000000000000000000000000000000000000000..1e2a22eee4ff1737ee770dc63f591faac9604ecb GIT binary patch literal 6784 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 literal 0 HcmV?d00001 diff --git a/launcher/app/assets/images/icons/arrow.svg b/launcher/app/assets/images/icons/arrow.svg new file mode 100644 index 0000000..9332605 --- /dev/null +++ b/launcher/app/assets/images/icons/arrow.svg @@ -0,0 +1,7 @@ + + + + + arrow + + \ No newline at end of file diff --git a/launcher/app/assets/images/icons/discord.svg b/launcher/app/assets/images/icons/discord.svg new file mode 100644 index 0000000..8727128 --- /dev/null +++ b/launcher/app/assets/images/icons/discord.svg @@ -0,0 +1,10 @@ + + + + + + discord + + + + \ No newline at end of file diff --git a/launcher/app/assets/images/icons/instagram.svg b/launcher/app/assets/images/icons/instagram.svg new file mode 100644 index 0000000..00c70bd --- /dev/null +++ b/launcher/app/assets/images/icons/instagram.svg @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/launcher/app/assets/images/icons/link.svg b/launcher/app/assets/images/icons/link.svg new file mode 100644 index 0000000..df151d4 --- /dev/null +++ b/launcher/app/assets/images/icons/link.svg @@ -0,0 +1,11 @@ + + + + + + link + + + + + \ No newline at end of file diff --git a/launcher/app/assets/images/icons/lock.svg b/launcher/app/assets/images/icons/lock.svg new file mode 100644 index 0000000..47a5343 --- /dev/null +++ b/launcher/app/assets/images/icons/lock.svg @@ -0,0 +1,12 @@ + + + + + + + + Lock + + + + \ No newline at end of file diff --git a/launcher/app/assets/images/icons/microsoft.svg b/launcher/app/assets/images/icons/microsoft.svg new file mode 100644 index 0000000..78a4ed9 --- /dev/null +++ b/launcher/app/assets/images/icons/microsoft.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/launcher/app/assets/images/icons/mojang.svg b/launcher/app/assets/images/icons/mojang.svg new file mode 100644 index 0000000..e1116b4 --- /dev/null +++ b/launcher/app/assets/images/icons/mojang.svg @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/launcher/app/assets/images/icons/news.svg b/launcher/app/assets/images/icons/news.svg new file mode 100644 index 0000000..775578d --- /dev/null +++ b/launcher/app/assets/images/icons/news.svg @@ -0,0 +1,14 @@ + + + + + News + + + + + + + + + \ No newline at end of file diff --git a/launcher/app/assets/images/icons/profile.svg b/launcher/app/assets/images/icons/profile.svg new file mode 100644 index 0000000..6526c65 --- /dev/null +++ b/launcher/app/assets/images/icons/profile.svg @@ -0,0 +1,10 @@ + + + + + + Profile + + + + \ No newline at end of file diff --git a/launcher/app/assets/images/icons/settings.svg b/launcher/app/assets/images/icons/settings.svg new file mode 100644 index 0000000..1a0ec76 --- /dev/null +++ b/launcher/app/assets/images/icons/settings.svg @@ -0,0 +1,10 @@ + + + + + + settings + + + + \ No newline at end of file diff --git a/launcher/app/assets/images/icons/sevenstar.svg b/launcher/app/assets/images/icons/sevenstar.svg new file mode 100644 index 0000000..4f55ef4 --- /dev/null +++ b/launcher/app/assets/images/icons/sevenstar.svg @@ -0,0 +1,13 @@ + + + + + Seven Pointed Star + + + + + + + + \ No newline at end of file diff --git a/launcher/app/assets/images/icons/sevenstar_circle.svg b/launcher/app/assets/images/icons/sevenstar_circle.svg new file mode 100644 index 0000000..9e8c8a8 --- /dev/null +++ b/launcher/app/assets/images/icons/sevenstar_circle.svg @@ -0,0 +1,14 @@ + + + + + Seven Pointed Star with Circle + + + + + + + + + \ No newline at end of file diff --git a/launcher/app/assets/images/icons/sevenstar_circle_extended.svg b/launcher/app/assets/images/icons/sevenstar_circle_extended.svg new file mode 100644 index 0000000..8651baa --- /dev/null +++ b/launcher/app/assets/images/icons/sevenstar_circle_extended.svg @@ -0,0 +1,8 @@ + + + + + Seven Pointed Star Extended with Circle + + + \ No newline at end of file diff --git a/launcher/app/assets/images/icons/sevenstar_circle_hole.svg b/launcher/app/assets/images/icons/sevenstar_circle_hole.svg new file mode 100644 index 0000000..65250d4 --- /dev/null +++ b/launcher/app/assets/images/icons/sevenstar_circle_hole.svg @@ -0,0 +1,15 @@ + + + + + Seven Pointed Star with Circle and Hole + + + + + + + + + + \ No newline at end of file diff --git a/launcher/app/assets/images/icons/sevenstar_circle_hole_extended.svg b/launcher/app/assets/images/icons/sevenstar_circle_hole_extended.svg new file mode 100644 index 0000000..e549b4d --- /dev/null +++ b/launcher/app/assets/images/icons/sevenstar_circle_hole_extended.svg @@ -0,0 +1,9 @@ + + + + + Seven Pointed Star Extended with Circle and Hole + + + + \ No newline at end of file diff --git a/launcher/app/assets/images/icons/sevenstar_extended.svg b/launcher/app/assets/images/icons/sevenstar_extended.svg new file mode 100644 index 0000000..b8e2824 --- /dev/null +++ b/launcher/app/assets/images/icons/sevenstar_extended.svg @@ -0,0 +1,7 @@ + + + + + Seven Pointed Star Extended + + \ No newline at end of file diff --git a/launcher/app/assets/images/icons/x.svg b/launcher/app/assets/images/icons/x.svg new file mode 100644 index 0000000..c3b5162 --- /dev/null +++ b/launcher/app/assets/images/icons/x.svg @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/launcher/app/assets/images/icons/youtube.svg b/launcher/app/assets/images/icons/youtube.svg new file mode 100644 index 0000000..38a2e8b --- /dev/null +++ b/launcher/app/assets/images/icons/youtube.svg @@ -0,0 +1,10 @@ + + + + + + youtube + + + + \ No newline at end of file diff --git a/launcher/app/assets/images/minecraft.icns b/launcher/app/assets/images/minecraft.icns new file mode 100644 index 0000000000000000000000000000000000000000..60ce69d7919dc216556525fb9e4189ccfdbb28cc GIT binary patch literal 120723 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