From 7511903df8e93061ec28da6a52ce70e5274aa526 Mon Sep 17 00:00:00 2001 From: Botond Gal Date: Mon, 28 Jul 2025 10:15:48 +0200 Subject: [PATCH 01/15] first draft with puppeteer --- .gitignore | 3 +- docusaurus-pdf.config.ts | 105 + package-lock.json | 19433 +++++++++++++++++++++++++++++++++++++ package.json | 4 +- scripts/render_pdf.js | 25 + 5 files changed, 19568 insertions(+), 2 deletions(-) create mode 100644 docusaurus-pdf.config.ts create mode 100644 package-lock.json create mode 100644 scripts/render_pdf.js diff --git a/.gitignore b/.gitignore index cdaabea..13b5ec7 100644 --- a/.gitignore +++ b/.gitignore @@ -4,7 +4,8 @@ # Production /build -# Generated files +# Generated files and folders +/pdf .docusaurus .cache-loader diff --git a/docusaurus-pdf.config.ts b/docusaurus-pdf.config.ts new file mode 100644 index 0000000..9a76d16 --- /dev/null +++ b/docusaurus-pdf.config.ts @@ -0,0 +1,105 @@ +import { themes as prismThemes } from "prism-react-renderer"; +import type { Config } from "@docusaurus/types"; +import type * as Preset from "@docusaurus/preset-classic"; + +// This runs in Node.js - Don't use client-side code here (browser APIs, JSX...) + +const commonDocsOptions = { + breadcrumbs: false, + showLastUpdateAuthor: false, + showLastUpdateTime: true, +}; + +const image_url = { + "Gerrit Schwerthelm": "https://github.com/gerrit91.png", + valentin: "https://github.com/vknabel.png", + stefan: "https://github.com/majst01.png", + markus: "https://github.com/mwindower.png", + grigoriy: "https://github.com/GrigoriyMikhalkin.png", +}; + +const config: Config = { + title: "metal-stack docs", + tagline: "Docs for metal-stack.", + favicon: "img/favicon.ico", + + // Set the production url of your site here + url: "https://your-docusaurus-site.example.com", + // Set the // pathname under which your site is served + // For GitHub pages deployment, it is often '//' + baseUrl: "/", + + // GitHub pages deployment config. + // If you aren't using GitHub pages, you don't need these. + organizationName: "metal-stack", // Usually your GitHub org/user name. + projectName: "docs-new", // Usually your repo name. + + onBrokenLinks: "warn", + onBrokenMarkdownLinks: "warn", + + // Even if you don't use internationalization, you can use this field to set + // useful metadata like html lang. For example, if your site is Chinese, you + // may want to replace "en" with "zh-Hans". + i18n: { + defaultLocale: "en", + locales: ["en"], + }, + + markdown: { + format: "detect", + }, + + plugins: [["./src/plugins/tailwind-config.js", {}]], + + presets: [ + [ + "classic", + { + docs: { + // sidebarPath: "./sidebars.ts", + // Please change this to your repo. + // Remove this to remove the "edit this page" links. + // editUrl: + // "https://github.com/metal-stack/docs-new/tree/main/", + }, + theme: { + customCss: "./src/css/custom.css", + }, + } satisfies Preset.Options, + ], + ], + + themeConfig: { + colorMode: { + respectPrefersColorScheme: true, + }, + // Replace with your project's social card + image: "img/metal-stack.png", + navbar: { + title: "metal-stack", + logo: { + alt: "metal-stack-log", + src: "img/metal-stack.png", + }, + items: [ + { type: "docsVersionDropdown" }, + { + type: "doc", + label: "Docs", + position: "left", + docId: "docs/introduction", + } + ], + }, + footer: { + style: "dark", + links: [] + }, + prism: { + theme: prismThemes.github, + darkTheme: prismThemes.dracula, + }, + } satisfies Preset.ThemeConfig, +}; + +export default config; diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..0aafff6 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,19433 @@ +{ + "name": "docs", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "docs", + "version": "0.0.0", + "dependencies": { + "@docusaurus/core": "3.7.0", + "@docusaurus/plugin-content-blog": "^3.7.0", + "@docusaurus/preset-classic": "3.7.0", + "@mdx-js/react": "^3.0.0", + "@tailwindcss/postcss": "^4.1.6", + "axios": "^1.9.0", + "clsx": "^2.0.0", + "postcss": "^8.5.3", + "prism-react-renderer": "^2.3.0", + "puppeteer": "^24.12.1", + "react": "^19.0.0", + "react-dom": "^19.0.0", + "tailwindcss": "^4.1.6" + }, + "devDependencies": { + "@docusaurus/module-type-aliases": "3.7.0", + "@docusaurus/tsconfig": "3.7.0", + "@docusaurus/types": "3.7.0", + "typescript": "~5.6.2", + "yaml": "^2.8.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@algolia/autocomplete-core": { + "version": "1.17.9", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.17.9.tgz", + "integrity": "sha512-O7BxrpLDPJWWHv/DLA9DRFWs+iY1uOJZkqUwjS5HSZAGcl0hIVCQ97LTLewiZmZ402JYUrun+8NqFP+hCknlbQ==", + "license": "MIT", + "dependencies": { + "@algolia/autocomplete-plugin-algolia-insights": "1.17.9", + "@algolia/autocomplete-shared": "1.17.9" + } + }, + "node_modules/@algolia/autocomplete-plugin-algolia-insights": { + "version": "1.17.9", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-plugin-algolia-insights/-/autocomplete-plugin-algolia-insights-1.17.9.tgz", + "integrity": "sha512-u1fEHkCbWF92DBeB/KHeMacsjsoI0wFhjZtlCq2ddZbAehshbZST6Hs0Avkc0s+4UyBGbMDnSuXHLuvRWK5iDQ==", + "license": "MIT", + "dependencies": { + "@algolia/autocomplete-shared": "1.17.9" + }, + "peerDependencies": { + "search-insights": ">= 1 < 3" + } + }, + "node_modules/@algolia/autocomplete-preset-algolia": { + "version": "1.17.9", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.17.9.tgz", + "integrity": "sha512-Na1OuceSJeg8j7ZWn5ssMu/Ax3amtOwk76u4h5J4eK2Nx2KB5qt0Z4cOapCsxot9VcEN11ADV5aUSlQF4RhGjQ==", + "license": "MIT", + "dependencies": { + "@algolia/autocomplete-shared": "1.17.9" + }, + "peerDependencies": { + "@algolia/client-search": ">= 4.9.1 < 6", + "algoliasearch": ">= 4.9.1 < 6" + } + }, + "node_modules/@algolia/autocomplete-shared": { + "version": "1.17.9", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.17.9.tgz", + "integrity": "sha512-iDf05JDQ7I0b7JEA/9IektxN/80a2MZ1ToohfmNS3rfeuQnIKI3IJlIafD0xu4StbtQTghx9T3Maa97ytkXenQ==", + "license": "MIT", + "peerDependencies": { + "@algolia/client-search": ">= 4.9.1 < 6", + "algoliasearch": ">= 4.9.1 < 6" + } + }, + "node_modules/@algolia/client-abtesting": { + "version": "5.32.0", + "resolved": "https://registry.npmjs.org/@algolia/client-abtesting/-/client-abtesting-5.32.0.tgz", + "integrity": "sha512-HG/6Eib6DnJYm/B2ijWFXr4txca/YOuA4K7AsEU0JBrOZSB+RU7oeDyNBPi3c0v0UDDqlkBqM3vBU/auwZlglA==", + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.32.0", + "@algolia/requester-browser-xhr": "5.32.0", + "@algolia/requester-fetch": "5.32.0", + "@algolia/requester-node-http": "5.32.0" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/client-analytics": { + "version": "5.32.0", + "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-5.32.0.tgz", + "integrity": "sha512-8Y9MLU72WFQOW3HArYv16+Wvm6eGmsqbxxM1qxtm0hvSASJbxCm+zQAZe5stqysTlcWo4BJ82KEH1PfgHbJAmQ==", + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.32.0", + "@algolia/requester-browser-xhr": "5.32.0", + "@algolia/requester-fetch": "5.32.0", + "@algolia/requester-node-http": "5.32.0" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/client-common": { + "version": "5.32.0", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-5.32.0.tgz", + "integrity": "sha512-w8L+rgyXMCPBKmEdOT+RfgMrF0mT6HK60vPYWLz8DBs/P7yFdGo7urn99XCJvVLMSKXrIbZ2FMZ/i50nZTXnuQ==", + "license": "MIT", + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/client-insights": { + "version": "5.32.0", + "resolved": "https://registry.npmjs.org/@algolia/client-insights/-/client-insights-5.32.0.tgz", + "integrity": "sha512-AdWfynhUeX7jz/LTiFU3wwzJembTbdLkQIOLs4n7PyBuxZ3jz4azV1CWbIP8AjUOFmul6uXbmYza+KqyS5CzOA==", + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.32.0", + "@algolia/requester-browser-xhr": "5.32.0", + "@algolia/requester-fetch": "5.32.0", + "@algolia/requester-node-http": "5.32.0" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/client-personalization": { + "version": "5.32.0", + "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-5.32.0.tgz", + "integrity": "sha512-bTupJY4xzGZYI4cEQcPlSjjIEzMvv80h7zXGrXY1Y0KC/n/SLiMv84v7Uy+B6AG1Kiy9FQm2ADChBLo1uEhGtQ==", + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.32.0", + "@algolia/requester-browser-xhr": "5.32.0", + "@algolia/requester-fetch": "5.32.0", + "@algolia/requester-node-http": "5.32.0" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/client-query-suggestions": { + "version": "5.32.0", + "resolved": "https://registry.npmjs.org/@algolia/client-query-suggestions/-/client-query-suggestions-5.32.0.tgz", + "integrity": "sha512-if+YTJw1G3nDKL2omSBjQltCHUQzbaHADkcPQrGFnIGhVyHU3Dzq4g46uEv8mrL5sxL8FjiS9LvekeUlL2NRqw==", + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.32.0", + "@algolia/requester-browser-xhr": "5.32.0", + "@algolia/requester-fetch": "5.32.0", + "@algolia/requester-node-http": "5.32.0" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/client-search": { + "version": "5.32.0", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-5.32.0.tgz", + "integrity": "sha512-kmK5nVkKb4DSUgwbveMKe4X3xHdMsPsOVJeEzBvFJ+oS7CkBPmpfHAEq+CcmiPJs20YMv6yVtUT9yPWL5WgAhg==", + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.32.0", + "@algolia/requester-browser-xhr": "5.32.0", + "@algolia/requester-fetch": "5.32.0", + "@algolia/requester-node-http": "5.32.0" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/events": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@algolia/events/-/events-4.0.1.tgz", + "integrity": "sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ==", + "license": "MIT" + }, + "node_modules/@algolia/ingestion": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/@algolia/ingestion/-/ingestion-1.32.0.tgz", + "integrity": "sha512-PZTqjJbx+fmPuT2ud1n4vYDSF1yrT//vOGI9HNYKNA0PM0xGUBWigf5gRivHsXa3oBnUlTyHV9j7Kqx5BHbVHQ==", + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.32.0", + "@algolia/requester-browser-xhr": "5.32.0", + "@algolia/requester-fetch": "5.32.0", + "@algolia/requester-node-http": "5.32.0" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/monitoring": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/@algolia/monitoring/-/monitoring-1.32.0.tgz", + "integrity": "sha512-kYYoOGjvNQAmHDS1v5sBj+0uEL9RzYqH/TAdq8wmcV+/22weKt/fjh+6LfiqkS1SCZFYYrwGnirrUhUM36lBIQ==", + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.32.0", + "@algolia/requester-browser-xhr": "5.32.0", + "@algolia/requester-fetch": "5.32.0", + "@algolia/requester-node-http": "5.32.0" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/recommend": { + "version": "5.32.0", + "resolved": "https://registry.npmjs.org/@algolia/recommend/-/recommend-5.32.0.tgz", + "integrity": "sha512-jyIBLdskjPAL7T1g57UMfUNx+PzvYbxKslwRUKBrBA6sNEsYCFdxJAtZSLUMmw6MC98RDt4ksmEl5zVMT5bsuw==", + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.32.0", + "@algolia/requester-browser-xhr": "5.32.0", + "@algolia/requester-fetch": "5.32.0", + "@algolia/requester-node-http": "5.32.0" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/requester-browser-xhr": { + "version": "5.32.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-5.32.0.tgz", + "integrity": "sha512-eDp14z92Gt6JlFgiexImcWWH+Lk07s/FtxcoDaGrE4UVBgpwqOO6AfQM6dXh1pvHxlDFbMJihHc/vj3gBhPjqQ==", + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.32.0" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/requester-fetch": { + "version": "5.32.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-fetch/-/requester-fetch-5.32.0.tgz", + "integrity": "sha512-rnWVglh/K75hnaLbwSc2t7gCkbq1ldbPgeIKDUiEJxZ4mlguFgcltWjzpDQ/t1LQgxk9HdIFcQfM17Hid3aQ6Q==", + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.32.0" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/requester-node-http": { + "version": "5.32.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-5.32.0.tgz", + "integrity": "sha512-LbzQ04+VLkzXY4LuOzgyjqEv/46Gwrk55PldaglMJ4i4eDXSRXGKkwJpXFwsoU+c1HMQlHIyjJBhrfsfdyRmyQ==", + "license": "MIT", + "dependencies": { + "@algolia/client-common": "5.32.0" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@alloc/quick-lru": { + "version": "5.2.0", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "license": "Apache-2.0", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.27.1", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.28.0.tgz", + "integrity": "sha512-60X7qkglvrap8mn1lh2ebxXdZYtUcpd7gsmy9kLaBJ4i/WdY8PqTSdxyA8qraikqKQK5C1KRBKXqznrVapyNaw==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.0.tgz", + "integrity": "sha512-UlLAnTPrFdNGoFtbSXwcGFQBtQZJCNjaN6hQNP3UPvuNXT1i82N26KL3dZeIpNalWywr9IuQuncaAfUaS1g6sQ==", + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.28.0", + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-module-transforms": "^7.27.3", + "@babel/helpers": "^7.27.6", + "@babel/parser": "^7.28.0", + "@babel/template": "^7.27.2", + "@babel/traverse": "^7.28.0", + "@babel/types": "^7.28.0", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/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/@babel/generator": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.0.tgz", + "integrity": "sha512-lJjzvrbEeWrhB4P3QBsH7tey117PjLZnDbLiQEKjQ/fNJTjuq4HSqgFA+UNSwZT8D7dxxbnuSBMsa1lrWzKlQg==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.28.0", + "@babel/types": "^7.28.0", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz", + "integrity": "sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.27.3" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz", + "integrity": "sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==", + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.27.2", + "@babel/helper-validator-option": "^7.27.1", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets/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/@babel/helper-create-class-features-plugin": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.27.1.tgz", + "integrity": "sha512-QwGAmuvM17btKU5VqXfb+Giw4JcN0hjuufz3DYnpeVDvZLAObloM77bhMXiqry3Iio+Ai4phVRDwl6WU10+r5A==", + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-member-expression-to-functions": "^7.27.1", + "@babel/helper-optimise-call-expression": "^7.27.1", + "@babel/helper-replace-supers": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", + "@babel/traverse": "^7.27.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin/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/@babel/helper-create-regexp-features-plugin": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.27.1.tgz", + "integrity": "sha512-uVDC72XVf8UbrH5qQTc18Agb8emwjTiZrQE11Nv3CuBEZmVvTwwE9CBUEvHku06gQCAyYf8Nv6ja1IN+6LMbxQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.1", + "regexpu-core": "^6.2.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin/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/@babel/helper-define-polyfill-provider": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.5.tgz", + "integrity": "sha512-uJnGFcPsWQK8fvjgGP5LZUZZsYGIoPeRjSF5PGwrelYgq7Q15/Ft9NGFp1zglwgIv//W0uG4BevRuSJRyylZPg==", + "license": "MIT", + "dependencies": { + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-plugin-utils": "^7.27.1", + "debug": "^4.4.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.22.10" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/helper-globals": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", + "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.27.1.tgz", + "integrity": "sha512-E5chM8eWjTp/aNoVpcbfM7mLxu9XGLWYise2eBKGQomAk/Mb4XoxyqXTZbuTohbsl8EKqdlMhnDI2CCLfcs9wA==", + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz", + "integrity": "sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==", + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.27.3.tgz", + "integrity": "sha512-dSOvYwvyLsWBeIRyOeHXp5vPj5l1I011r52FM1+r1jCERv+aFXYk4whgQccYEGYxK2H3ZAIA8nuPkQ0HaUo3qg==", + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1", + "@babel/traverse": "^7.27.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.27.1.tgz", + "integrity": "sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz", + "integrity": "sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.27.1.tgz", + "integrity": "sha512-7fiA521aVw8lSPeI4ZOD3vRFkoqkJcS+z4hFo82bFSH/2tNd6eJ5qCVMS5OzDmZh/kaHQeBaeyxK6wljcPtveA==", + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-wrap-function": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.27.1.tgz", + "integrity": "sha512-7EHz6qDZc8RYS5ElPoShMheWvEgERonFCs7IAonWLLUTXW59DP14bCZt89/GKyreYn8g3S83m21FelHKbeDCKA==", + "license": "MIT", + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.27.1", + "@babel/helper-optimise-call-expression": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.27.1.tgz", + "integrity": "sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg==", + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", + "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", + "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.27.1.tgz", + "integrity": "sha512-NFJK2sHUvrjo8wAU/nQTWU890/zB2jj0qBcCbZbbf+005cAsv6tMjXz31fBign6M5ov1o0Bllu+9nbqkfsjjJQ==", + "license": "MIT", + "dependencies": { + "@babel/template": "^7.27.1", + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.27.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.6.tgz", + "integrity": "sha512-muE8Tt8M22638HU31A3CgfSUciwz1fhATfoVai05aPXGor//CdWDCbnlY1yvBPo07njuVOCNGCSp/GTt12lIug==", + "license": "MIT", + "dependencies": { + "@babel/template": "^7.27.2", + "@babel/types": "^7.27.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.0.tgz", + "integrity": "sha512-jVZGvOxOuNSsuQuLRTh13nU0AogFlw32w/MT+LV6D3sP5WdbW61E77RnkbaO2dUvmPAYrBDJXGn5gGS6tH4j8g==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.0" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.27.1.tgz", + "integrity": "sha512-QPG3C9cCVRQLxAVwmefEmwdTanECuUBMQZ/ym5kiw3XKCGA7qkuQLcjWWHcrD/GKbn/WmJwaezfuuAOcyKlRPA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-class-field-initializer-scope": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.27.1.tgz", + "integrity": "sha512-qNeq3bCKnGgLkEXUuFry6dPlGfCdQNZbn7yUAPCInwAJHMU7THJfrBSozkcWq5sNM6RcF3S8XyQL2A52KNR9IA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.27.1.tgz", + "integrity": "sha512-g4L7OYun04N1WyqMNjldFwlfPCLVkgB54A/YCXICZYBsvJJE3kByKv9c9+R/nAfmIfjl2rKYLNyMHboYbZaWaA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.27.1.tgz", + "integrity": "sha512-oO02gcONcD5O1iTLi/6frMJBIwWEHceWGSGqrpCmEL8nogiS6J9PBlE48CaK20/Jx1LuRml9aDftLgdjXT8+Cw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", + "@babel/plugin-transform-optional-chaining": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.27.1.tgz", + "integrity": "sha512-6BpaYGDavZqkI6yT+KSPdpZFfpnd68UKXbcjI9pJ13pvHhPrCKWOOLp+ysvMeA+DxnhuPpgIaRpxRxo5A9t5jw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.27.1.tgz", + "integrity": "sha512-UT/Jrhw57xg4ILHLFnzFpPDlMbcdEicaAtjPQpbj9wa8T4r5KVWCimHcL/460g8Ht0DMxDyjsLgiWSkVjnwPFg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.27.1.tgz", + "integrity": "sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.27.1.tgz", + "integrity": "sha512-y8YTNIeKoyhGd9O0Jiyzyyqk8gdjnumGTQPsz0xOZOQ2RmkVJeZ1vmmfIvFEKqucBG6axJGBZDE/7iI5suUI/w==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.27.1.tgz", + "integrity": "sha512-xfYCBMxveHrRMnAWl1ZlPXOZjzkN82THFvLhQhFXFt81Z5HnN+EtUkZhv/zcKpmT3fzmWZB0ywiBrbC3vogbwQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.27.1.tgz", + "integrity": "sha512-8Z4TGic6xW70FKThA5HYEKKyBpOOsucTOD1DjU3fZxDg+K3zBJcXMFnt/4yQiZnf5+MiOMSXQ9PaEK/Ilh1DeA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.28.0.tgz", + "integrity": "sha512-BEOdvX4+M765icNPZeidyADIvQ1m1gmunXufXxvRESy/jNNyfovIqUyE7MVgGBjWktCoJlzvFA1To2O4ymIO3Q==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-remap-async-to-generator": "^7.27.1", + "@babel/traverse": "^7.28.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.27.1.tgz", + "integrity": "sha512-NREkZsZVJS4xmTr8qzE5y8AfIPqsdQfRuUiLRTEzb7Qii8iFWCyDKaUV2c0rCuh4ljDZ98ALHP/PetiBV2nddA==", + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-remap-async-to-generator": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.27.1.tgz", + "integrity": "sha512-cnqkuOtZLapWYZUYM5rVIdv1nXYuFVIltZ6ZJ7nIj585QsjKM5dhL2Fu/lICXZ1OyIAFc7Qy+bvDAtTXqGrlhg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.28.0.tgz", + "integrity": "sha512-gKKnwjpdx5sER/wl0WN0efUBFzF/56YZO0RJrSYP4CljXnP31ByY7fol89AzomdlLNzI36AvOTmYHsnZTCkq8Q==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.27.1.tgz", + "integrity": "sha512-D0VcalChDMtuRvJIu3U/fwWjf8ZMykz5iZsg77Nuj821vCKI3zCyRLwRdWbsuJ/uRwZhZ002QtCqIkwC/ZkvbA==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.27.1.tgz", + "integrity": "sha512-s734HmYU78MVzZ++joYM+NkJusItbdRcbm+AGRgJCt3iA+yux0QpD9cBVdz3tKyrjVYWRl7j0mHSmv4lhV0aoA==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.28.0.tgz", + "integrity": "sha512-IjM1IoJNw72AZFlj33Cu8X0q2XK/6AaVC3jQu+cgQ5lThWD5ajnuUAml80dqRmOhmPkTH8uAwnpMu9Rvj0LTRA==", + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.3", + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-globals": "^7.28.0", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-replace-supers": "^7.27.1", + "@babel/traverse": "^7.28.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.27.1.tgz", + "integrity": "sha512-lj9PGWvMTVksbWiDT2tW68zGS/cyo4AkZ/QTp0sQT0mjPopCmrSkzxeXkznjqBxzDI6TclZhOJbBmbBLjuOZUw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/template": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.28.0.tgz", + "integrity": "sha512-v1nrSMBiKcodhsyJ4Gf+Z0U/yawmJDBOTpEB3mcQY52r9RIyPneGyAS/yM6seP/8I+mWI3elOMtT5dB8GJVs+A==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/traverse": "^7.28.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.27.1.tgz", + "integrity": "sha512-gEbkDVGRvjj7+T1ivxrfgygpT7GUd4vmODtYpbs0gZATdkX8/iSnOtZSxiZnsgm1YjTgjI6VKBGSJJevkrclzw==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.27.1.tgz", + "integrity": "sha512-MTyJk98sHvSs+cvZ4nOauwTTG1JeonDjSGvGGUNHreGQns+Mpt6WX/dVzWBHgg+dYZhkC4X+zTDfkTU+Vy9y7Q==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-named-capturing-groups-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.27.1.tgz", + "integrity": "sha512-hkGcueTEzuhB30B3eJCbCYeCaaEQOmQR0AdvzpD4LoN0GXMWzzGSuRrxR2xTnCrvNbVwK9N6/jQ92GSLfiZWoQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.27.1.tgz", + "integrity": "sha512-MHzkWQcEmjzzVW9j2q8LGjwGWpG2mjwaaB0BNQwst3FIjqsg8Ct/mIZlvSPJvfi9y2AC8mi/ktxbFVL9pZ1I4A==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-explicit-resource-management": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-explicit-resource-management/-/plugin-transform-explicit-resource-management-7.28.0.tgz", + "integrity": "sha512-K8nhUcn3f6iB+P3gwCv/no7OdzOZQcKchW6N389V6PD8NUWKZHzndOd9sPDVbMoBsbmjMqlB4L9fm+fEFNVlwQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/plugin-transform-destructuring": "^7.28.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.27.1.tgz", + "integrity": "sha512-uspvXnhHvGKf2r4VVtBpeFnuDWsJLQ6MF6lGJLC89jBR1uoVeqM416AZtTuhTezOfgHicpJQmoD5YUakO/YmXQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.27.1.tgz", + "integrity": "sha512-tQvHWSZ3/jH2xuq/vZDy0jNn+ZdXJeM8gHvX4lnJmsc3+50yPlWdZXIc5ay+umX+2/tJIqHqiEqcJvxlmIvRvQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.27.1.tgz", + "integrity": "sha512-BfbWFFEJFQzLCQ5N8VocnCtA8J1CLkNTe2Ms2wocj75dd6VpiqS5Z5quTYcUoo4Yq+DN0rtikODccuv7RU81sw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.27.1.tgz", + "integrity": "sha512-1bQeydJF9Nr1eBCMMbC+hdwmRlsv5XYOMu03YSWFwNs0HsAmtSxxF1fyuYPqemVldVyFmlCU7w8UE14LupUSZQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-compilation-targets": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.27.1.tgz", + "integrity": "sha512-6WVLVJiTjqcQauBhn1LkICsR2H+zm62I3h9faTDKt1qP4jn2o72tSvqMwtGFKGTpojce0gJs+76eZ2uCHRZh0Q==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.27.1.tgz", + "integrity": "sha512-0HCFSepIpLTkLcsi86GG3mTUzxV5jpmbv97hTETW3yzrAij8aqlD36toB1D0daVFJM8NK6GvKO0gslVQmm+zZA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.27.1.tgz", + "integrity": "sha512-SJvDs5dXxiae4FbSL1aBJlG4wvl594N6YEVVn9e3JGulwioy6z3oPjx/sQBO3Y4NwUu5HNix6KJ3wBZoewcdbw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.27.1.tgz", + "integrity": "sha512-hqoBX4dcZ1I33jCSWcXrP+1Ku7kdqXf1oeah7ooKOIiAdKQ+uqftgCFNOSzA5AMS2XIHEYeGFg4cKRCdpxzVOQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.27.1.tgz", + "integrity": "sha512-iCsytMg/N9/oFq6n+gFTvUYDZQOMK5kEdeYxmxt91fcJGycfxVP9CnrxoliM0oumFERba2i8ZtwRUCMhvP1LnA==", + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.27.1.tgz", + "integrity": "sha512-OJguuwlTYlN0gBZFRPqwOGNWssZjfIUdS7HMYtN8c1KmwpwHFBwTeFZrg9XZa+DFTitWOW5iTAG7tyCUPsCCyw==", + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.27.1.tgz", + "integrity": "sha512-w5N1XzsRbc0PQStASMksmUeqECuzKuTJer7kFagK8AXgpCMkeDMO5S+aaFb7A51ZYDF7XI34qsTX+fkHiIm5yA==", + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.27.1.tgz", + "integrity": "sha512-iQBE/xC5BV1OxJbp6WG7jq9IWiD+xxlZhLrdwpPkTX3ydmXdvoCpyfJN7acaIBZaOqTfr76pgzqBJflNbeRK+w==", + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.27.1.tgz", + "integrity": "sha512-SstR5JYy8ddZvD6MhV0tM/j16Qds4mIpJTOd1Yu9J9pJjH93bxHECF7pgtc28XvkzTD6Pxcm/0Z73Hvk7kb3Ng==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.27.1.tgz", + "integrity": "sha512-f6PiYeqXQ05lYq3TIfIDu/MtliKUbNwkGApPUvyo6+tc7uaR4cPjPe7DFPr15Uyycg2lZU6btZ575CuQoYh7MQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.27.1.tgz", + "integrity": "sha512-aGZh6xMo6q9vq1JGcw58lZ1Z0+i0xB2x0XaauNIUXd6O1xXc3RwoWEBlsTQrY4KQ9Jf0s5rgD6SiNkaUdJegTA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.27.1.tgz", + "integrity": "sha512-fdPKAcujuvEChxDBJ5c+0BTaS6revLV7CJL08e4m3de8qJfNIuCc2nc7XJYOjBoTMJeqSmwXJ0ypE14RCjLwaw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.28.0.tgz", + "integrity": "sha512-9VNGikXxzu5eCiQjdE4IZn8sb9q7Xsk5EXLDBKUYg1e/Tve8/05+KJEtcxGxAgCY5t/BpKQM+JEL/yT4tvgiUA==", + "license": "MIT", + "dependencies": { + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/plugin-transform-destructuring": "^7.28.0", + "@babel/plugin-transform-parameters": "^7.27.7", + "@babel/traverse": "^7.28.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.27.1.tgz", + "integrity": "sha512-SFy8S9plRPbIcxlJ8A6mT/CxFdJx/c04JEctz4jf8YZaVS2px34j7NXRrlGlHkN/M2gnpL37ZpGRGVFLd3l8Ng==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-replace-supers": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.27.1.tgz", + "integrity": "sha512-txEAEKzYrHEX4xSZN4kJ+OfKXFVSWKB2ZxM9dpcE3wT7smwkNmXo5ORRlVzMVdJbD+Q8ILTgSD7959uj+3Dm3Q==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.27.1.tgz", + "integrity": "sha512-BQmKPPIuc8EkZgNKsv0X4bPmOoayeu4F1YCwx2/CfmDSXDbp7GnzlUH+/ul5VGfRg1AoFPsrIThlEBj2xb4CAg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.27.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.27.7.tgz", + "integrity": "sha512-qBkYTYCb76RRxUM6CcZA5KRu8K4SM8ajzVeUgVdMVO9NN9uI/GaVmBg/WKJJGnNokV9SY8FxNOVWGXzqzUidBg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.27.1.tgz", + "integrity": "sha512-10FVt+X55AjRAYI9BrdISN9/AQWHqldOeZDUoLyif1Kn05a56xVBXb8ZouL8pZ9jem8QpXaOt8TS7RHUIS+GPA==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.27.1.tgz", + "integrity": "sha512-5J+IhqTi1XPa0DXF83jYOaARrX+41gOewWbkPyjMNRDqgOCqdffGh8L3f/Ek5utaEBZExjSAzcyjmV9SSAWObQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-create-class-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.27.1.tgz", + "integrity": "sha512-oThy3BCuCha8kDZ8ZkgOg2exvPYUlprMukKQXI1r1pJ47NCvxfkEy8vK+r/hT9nF0Aa4H1WUPZZjHTFtAhGfmQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-constant-elements": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.27.1.tgz", + "integrity": "sha512-edoidOjl/ZxvYo4lSBOQGDSyToYVkTAwyVoa2tkuYTSmjrB1+uAedoL5iROVLXkxH+vRgA7uP4tMg2pUJpZ3Ug==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-display-name": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.28.0.tgz", + "integrity": "sha512-D6Eujc2zMxKjfa4Zxl4GHMsmhKKZ9VpcqIchJLvwTxad9zWIYulwYItBovpDOoNLISpcZSXoDJ5gaGbQUDqViA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.27.1.tgz", + "integrity": "sha512-2KH4LWGSrJIkVf5tSiBFYuXDAoWRq2MMwgivCf+93dd0GQi8RXLjKA/0EvRnVV5G0hrHczsquXuD01L8s6dmBw==", + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/plugin-syntax-jsx": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-development": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.27.1.tgz", + "integrity": "sha512-ykDdF5yI4f1WrAolLqeF3hmYU12j9ntLQl/AOG1HAS21jxyg1Q0/J/tpREuYLfatGdGmXp/3yS0ZA76kOlVq9Q==", + "license": "MIT", + "dependencies": { + "@babel/plugin-transform-react-jsx": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-pure-annotations": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.27.1.tgz", + "integrity": "sha512-JfuinvDOsD9FVMTHpzA/pBLisxpv1aSf+OIV8lgH3MuWrks19R27e6a6DipIg4aX1Zm9Wpb04p8wljfKrVSnPA==", + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.28.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.28.1.tgz", + "integrity": "sha512-P0QiV/taaa3kXpLY+sXla5zec4E+4t4Aqc9ggHlfZ7a2cp8/x/Gv08jfwEtn9gnnYIMvHx6aoOZ8XJL8eU71Dg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regexp-modifiers": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.27.1.tgz", + "integrity": "sha512-TtEciroaiODtXvLZv4rmfMhkCv8jx3wgKpL68PuiPh2M4fvz5jhsA7697N1gMvkvr/JTF13DrFYyEbY9U7cVPA==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.27.1.tgz", + "integrity": "sha512-V2ABPHIJX4kC7HegLkYoDpfg9PVmuWy/i6vUM5eGK22bx4YVFD3M5F0QQnWQoDs6AGsUWTVOopBiMFQgHaSkVw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.28.0.tgz", + "integrity": "sha512-dGopk9nZrtCs2+nfIem25UuHyt5moSJamArzIoh9/vezUQPmYDOzjaHDCkAzuGJibCIkPup8rMT2+wYB6S73cA==", + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "babel-plugin-polyfill-corejs2": "^0.4.14", + "babel-plugin-polyfill-corejs3": "^0.13.0", + "babel-plugin-polyfill-regenerator": "^0.6.5", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime/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/@babel/plugin-transform-shorthand-properties": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.27.1.tgz", + "integrity": "sha512-N/wH1vcn4oYawbJ13Y/FxcQrWk63jhfNa7jef0ih7PHSIHX2LB7GWE1rkPrOnka9kwMxb6hMl19p7lidA+EHmQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.27.1.tgz", + "integrity": "sha512-kpb3HUqaILBJcRFVhFUs6Trdd4mkrzcGXss+6/mxUd273PfbWqSDHRzMT2234gIg2QYfAjvXLSquP1xECSg09Q==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.27.1.tgz", + "integrity": "sha512-lhInBO5bi/Kowe2/aLdBAawijx+q1pQzicSgnkB6dUPc1+RC8QmJHKf2OjvU+NZWitguJHEaEmbV6VWEouT58g==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.27.1.tgz", + "integrity": "sha512-fBJKiV7F2DxZUkg5EtHKXQdbsbURW3DZKQUWphDum0uRP6eHGGa/He9mc0mypL680pb+e/lDIthRohlv8NCHkg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.27.1.tgz", + "integrity": "sha512-RiSILC+nRJM7FY5srIyc4/fGIwUhyDuuBSdWn4y6yT6gm652DpCHZjIipgn6B7MQ1ITOUnAKWixEUjQRIBIcLw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.28.0.tgz", + "integrity": "sha512-4AEiDEBPIZvLQaWlc9liCavE0xRM0dNca41WtBeM3jgFptfUOSG9z0uteLhq6+3rq+WB6jIvUwKDTpXEHPJ2Vg==", + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.3", + "@babel/helper-create-class-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", + "@babel/plugin-syntax-typescript": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.27.1.tgz", + "integrity": "sha512-Ysg4v6AmF26k9vpfFuTZg8HRfVWzsh1kVfowA23y9j/Gu6dOuahdUVhkLqpObp3JIv27MLSii6noRnuKN8H0Mg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.27.1.tgz", + "integrity": "sha512-uW20S39PnaTImxp39O5qFlHLS9LJEmANjMG7SxIhap8rCHqu0Ik+tLEPX5DKmHn6CsWQ7j3lix2tFOa5YtL12Q==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.27.1.tgz", + "integrity": "sha512-xvINq24TRojDuyt6JGtHmkVkrfVV3FPT16uytxImLeBZqW3/H52yN+kM1MGuyPkIQxrzKwPHs5U/MP3qKyzkGw==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.27.1.tgz", + "integrity": "sha512-EtkOujbc4cgvb0mlpQefi4NTPBzhSIevblFevACNLUspmrALgmEBdL/XfnyyITfd8fKBZrZys92zOWcik7j9Tw==", + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.28.0.tgz", + "integrity": "sha512-VmaxeGOwuDqzLl5JUkIRM1X2Qu2uKGxHEQWh+cvvbl7JuJRgKGJSfsEF/bUaxFhJl/XAyxBe7q7qSuTbKFuCyg==", + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.28.0", + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-validator-option": "^7.27.1", + "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.27.1", + "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.27.1", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.27.1", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.27.1", + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.27.1", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-import-assertions": "^7.27.1", + "@babel/plugin-syntax-import-attributes": "^7.27.1", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.27.1", + "@babel/plugin-transform-async-generator-functions": "^7.28.0", + "@babel/plugin-transform-async-to-generator": "^7.27.1", + "@babel/plugin-transform-block-scoped-functions": "^7.27.1", + "@babel/plugin-transform-block-scoping": "^7.28.0", + "@babel/plugin-transform-class-properties": "^7.27.1", + "@babel/plugin-transform-class-static-block": "^7.27.1", + "@babel/plugin-transform-classes": "^7.28.0", + "@babel/plugin-transform-computed-properties": "^7.27.1", + "@babel/plugin-transform-destructuring": "^7.28.0", + "@babel/plugin-transform-dotall-regex": "^7.27.1", + "@babel/plugin-transform-duplicate-keys": "^7.27.1", + "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.27.1", + "@babel/plugin-transform-dynamic-import": "^7.27.1", + "@babel/plugin-transform-explicit-resource-management": "^7.28.0", + "@babel/plugin-transform-exponentiation-operator": "^7.27.1", + "@babel/plugin-transform-export-namespace-from": "^7.27.1", + "@babel/plugin-transform-for-of": "^7.27.1", + "@babel/plugin-transform-function-name": "^7.27.1", + "@babel/plugin-transform-json-strings": "^7.27.1", + "@babel/plugin-transform-literals": "^7.27.1", + "@babel/plugin-transform-logical-assignment-operators": "^7.27.1", + "@babel/plugin-transform-member-expression-literals": "^7.27.1", + "@babel/plugin-transform-modules-amd": "^7.27.1", + "@babel/plugin-transform-modules-commonjs": "^7.27.1", + "@babel/plugin-transform-modules-systemjs": "^7.27.1", + "@babel/plugin-transform-modules-umd": "^7.27.1", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.27.1", + "@babel/plugin-transform-new-target": "^7.27.1", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.27.1", + "@babel/plugin-transform-numeric-separator": "^7.27.1", + "@babel/plugin-transform-object-rest-spread": "^7.28.0", + "@babel/plugin-transform-object-super": "^7.27.1", + "@babel/plugin-transform-optional-catch-binding": "^7.27.1", + "@babel/plugin-transform-optional-chaining": "^7.27.1", + "@babel/plugin-transform-parameters": "^7.27.7", + "@babel/plugin-transform-private-methods": "^7.27.1", + "@babel/plugin-transform-private-property-in-object": "^7.27.1", + "@babel/plugin-transform-property-literals": "^7.27.1", + "@babel/plugin-transform-regenerator": "^7.28.0", + "@babel/plugin-transform-regexp-modifiers": "^7.27.1", + "@babel/plugin-transform-reserved-words": "^7.27.1", + "@babel/plugin-transform-shorthand-properties": "^7.27.1", + "@babel/plugin-transform-spread": "^7.27.1", + "@babel/plugin-transform-sticky-regex": "^7.27.1", + "@babel/plugin-transform-template-literals": "^7.27.1", + "@babel/plugin-transform-typeof-symbol": "^7.27.1", + "@babel/plugin-transform-unicode-escapes": "^7.27.1", + "@babel/plugin-transform-unicode-property-regex": "^7.27.1", + "@babel/plugin-transform-unicode-regex": "^7.27.1", + "@babel/plugin-transform-unicode-sets-regex": "^7.27.1", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "babel-plugin-polyfill-corejs2": "^0.4.14", + "babel-plugin-polyfill-corejs3": "^0.13.0", + "babel-plugin-polyfill-regenerator": "^0.6.5", + "core-js-compat": "^3.43.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env/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/@babel/preset-modules": { + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/preset-react": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.27.1.tgz", + "integrity": "sha512-oJHWh2gLhU9dW9HHr42q0cI0/iHHXTLGe39qvpAZZzagHy0MzYLCnCVV0symeRvzmjHyVU7mw2K06E6u/JwbhA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-validator-option": "^7.27.1", + "@babel/plugin-transform-react-display-name": "^7.27.1", + "@babel/plugin-transform-react-jsx": "^7.27.1", + "@babel/plugin-transform-react-jsx-development": "^7.27.1", + "@babel/plugin-transform-react-pure-annotations": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-typescript": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.27.1.tgz", + "integrity": "sha512-l7WfQfX0WK4M0v2RudjuQK4u99BS6yLHYEmdtVPP7lKV013zr9DygFuWNlnbvQ9LR+LS0Egz/XAvGx5U9MX0fQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-validator-option": "^7.27.1", + "@babel/plugin-syntax-jsx": "^7.27.1", + "@babel/plugin-transform-modules-commonjs": "^7.27.1", + "@babel/plugin-transform-typescript": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.27.1", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/runtime-corejs3": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.28.0.tgz", + "integrity": "sha512-nlIXnSqLcBij8K8TtkxbBJgfzfvi75V1pAKSM7dUXejGw12vJAqez74jZrHTsJ3Z+Aczc5Q/6JgNjKRMsVU44g==", + "license": "MIT", + "dependencies": { + "core-js-pure": "^3.43.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", + "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.2", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.0.tgz", + "integrity": "sha512-mGe7UK5wWyh0bKRfupsUchrQGqvDbZDbKJw+kcRGSmdHVYrv+ltd0pnpDTVpiTqnaBru9iEvA8pz8W46v0Amwg==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.28.0", + "@babel/helper-globals": "^7.28.0", + "@babel/parser": "^7.28.0", + "@babel/template": "^7.27.2", + "@babel/types": "^7.28.0", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.28.1", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.1.tgz", + "integrity": "sha512-x0LvFTekgSX+83TI28Y9wYPUfzrnl2aT5+5QLnO6v7mSJYtEEevuDRN0F0uSHRk1G1IWZC43o00Y0xDDrpBGPQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@colors/colors": { + "version": "1.5.0", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@csstools/cascade-layer-name-parser": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@csstools/cascade-layer-name-parser/-/cascade-layer-name-parser-2.0.5.tgz", + "integrity": "sha512-p1ko5eHgV+MgXFVa4STPKpvPxr6ReS8oS2jzTukjR74i5zJNyWO1ZM1m8YKBXnzDKWfBN1ztLYlHxbVemDD88A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + } + }, + "node_modules/@csstools/color-helpers": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.0.2.tgz", + "integrity": "sha512-JqWH1vsgdGcw2RR6VliXXdA0/59LttzlU8UlRT/iUUsEeWfYq8I+K0yhihEUTTHLRm1EXvpsCx3083EU15ecsA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": ">=18" + } + }, + "node_modules/@csstools/css-calc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.4.tgz", + "integrity": "sha512-3N8oaj+0juUw/1H3YwmDDJXCgTB1gKU6Hc/bB502u9zR0q2vd786XJH9QfrKIEgFlZmhZiq6epXl4rHqhzsIgQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + } + }, + "node_modules/@csstools/css-color-parser": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.0.10.tgz", + "integrity": "sha512-TiJ5Ajr6WRd1r8HSiwJvZBiJOqtH86aHpUjq5aEKWHiII2Qfjqd/HCWKPOW8EP4vcspXbHnXrwIDlu5savQipg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "dependencies": { + "@csstools/color-helpers": "^5.0.2", + "@csstools/css-calc": "^2.1.4" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + } + }, + "node_modules/@csstools/css-parser-algorithms": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.5.tgz", + "integrity": "sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-tokenizer": "^3.0.4" + } + }, + "node_modules/@csstools/css-tokenizer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz", + "integrity": "sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/@csstools/media-query-list-parser": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-4.0.3.tgz", + "integrity": "sha512-HAYH7d3TLRHDOUQK4mZKf9k9Ph/m8Akstg66ywKR4SFAigjs3yBiUeZtFxywiTm5moZMAp/5W/ZuFnNXXYLuuQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + } + }, + "node_modules/@csstools/postcss-cascade-layers": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-5.0.2.tgz", + "integrity": "sha512-nWBE08nhO8uWl6kSAeCx4im7QfVko3zLrtgWZY4/bP87zrSPpSyN/3W3TDqz1jJuH+kbKOHXg5rJnK+ZVYcFFg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/selector-specificity": "^5.0.0", + "postcss-selector-parser": "^7.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-cascade-layers/node_modules/@csstools/selector-specificity": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-5.0.0.tgz", + "integrity": "sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss-selector-parser": "^7.0.0" + } + }, + "node_modules/@csstools/postcss-cascade-layers/node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@csstools/postcss-color-function": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-4.0.10.tgz", + "integrity": "sha512-4dY0NBu7NVIpzxZRgh/Q/0GPSz/jLSw0i/u3LTUor0BkQcz/fNhN10mSWBDsL0p9nDb0Ky1PD6/dcGbhACuFTQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-color-parser": "^3.0.10", + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4", + "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/utilities": "^2.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-color-mix-function": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@csstools/postcss-color-mix-function/-/postcss-color-mix-function-3.0.10.tgz", + "integrity": "sha512-P0lIbQW9I4ShE7uBgZRib/lMTf9XMjJkFl/d6w4EMNHu2qvQ6zljJGEcBkw/NsBtq/6q3WrmgxSS8kHtPMkK4Q==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-color-parser": "^3.0.10", + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4", + "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/utilities": "^2.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-color-mix-variadic-function-arguments": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-color-mix-variadic-function-arguments/-/postcss-color-mix-variadic-function-arguments-1.0.0.tgz", + "integrity": "sha512-Z5WhouTyD74dPFPrVE7KydgNS9VvnjB8qcdes9ARpCOItb4jTnm7cHp4FhxCRUoyhabD0WVv43wbkJ4p8hLAlQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-color-parser": "^3.0.10", + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4", + "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/utilities": "^2.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-content-alt-text": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@csstools/postcss-content-alt-text/-/postcss-content-alt-text-2.0.6.tgz", + "integrity": "sha512-eRjLbOjblXq+byyaedQRSrAejKGNAFued+LcbzT+LCL78fabxHkxYjBbxkroONxHHYu2qxhFK2dBStTLPG3jpQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4", + "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/utilities": "^2.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-exponential-functions": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@csstools/postcss-exponential-functions/-/postcss-exponential-functions-2.0.9.tgz", + "integrity": "sha512-abg2W/PI3HXwS/CZshSa79kNWNZHdJPMBXeZNyPQFbbj8sKO3jXxOt/wF7juJVjyDTc6JrvaUZYFcSBZBhaxjw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-calc": "^2.1.4", + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-font-format-keywords": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-4.0.0.tgz", + "integrity": "sha512-usBzw9aCRDvchpok6C+4TXC57btc4bJtmKQWOHQxOVKen1ZfVqBUuCZ/wuqdX5GHsD0NRSr9XTP+5ID1ZZQBXw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/utilities": "^2.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-gamut-mapping": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@csstools/postcss-gamut-mapping/-/postcss-gamut-mapping-2.0.10.tgz", + "integrity": "sha512-QDGqhJlvFnDlaPAfCYPsnwVA6ze+8hhrwevYWlnUeSjkkZfBpcCO42SaUD8jiLlq7niouyLgvup5lh+f1qessg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-color-parser": "^3.0.10", + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-gradients-interpolation-method": { + "version": "5.0.10", + "resolved": "https://registry.npmjs.org/@csstools/postcss-gradients-interpolation-method/-/postcss-gradients-interpolation-method-5.0.10.tgz", + "integrity": "sha512-HHPauB2k7Oits02tKFUeVFEU2ox/H3OQVrP3fSOKDxvloOikSal+3dzlyTZmYsb9FlY9p5EUpBtz0//XBmy+aw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-color-parser": "^3.0.10", + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4", + "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/utilities": "^2.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-hwb-function": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-4.0.10.tgz", + "integrity": "sha512-nOKKfp14SWcdEQ++S9/4TgRKchooLZL0TUFdun3nI4KPwCjETmhjta1QT4ICQcGVWQTvrsgMM/aLB5We+kMHhQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-color-parser": "^3.0.10", + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4", + "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/utilities": "^2.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-ic-unit": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@csstools/postcss-ic-unit/-/postcss-ic-unit-4.0.2.tgz", + "integrity": "sha512-lrK2jjyZwh7DbxaNnIUjkeDmU8Y6KyzRBk91ZkI5h8nb1ykEfZrtIVArdIjX4DHMIBGpdHrgP0n4qXDr7OHaKA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/utilities": "^2.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-initial": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-initial/-/postcss-initial-2.0.1.tgz", + "integrity": "sha512-L1wLVMSAZ4wovznquK0xmC7QSctzO4D0Is590bxpGqhqjboLXYA16dWZpfwImkdOgACdQ9PqXsuRroW6qPlEsg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-is-pseudo-class": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-5.0.3.tgz", + "integrity": "sha512-jS/TY4SpG4gszAtIg7Qnf3AS2pjcUM5SzxpApOrlndMeGhIbaTzWBzzP/IApXoNWEW7OhcjkRT48jnAUIFXhAQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/selector-specificity": "^5.0.0", + "postcss-selector-parser": "^7.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-is-pseudo-class/node_modules/@csstools/selector-specificity": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-5.0.0.tgz", + "integrity": "sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss-selector-parser": "^7.0.0" + } + }, + "node_modules/@csstools/postcss-is-pseudo-class/node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@csstools/postcss-light-dark-function": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@csstools/postcss-light-dark-function/-/postcss-light-dark-function-2.0.9.tgz", + "integrity": "sha512-1tCZH5bla0EAkFAI2r0H33CDnIBeLUaJh1p+hvvsylJ4svsv2wOmJjJn+OXwUZLXef37GYbRIVKX+X+g6m+3CQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4", + "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/utilities": "^2.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-logical-float-and-clear": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-logical-float-and-clear/-/postcss-logical-float-and-clear-3.0.0.tgz", + "integrity": "sha512-SEmaHMszwakI2rqKRJgE+8rpotFfne1ZS6bZqBoQIicFyV+xT1UF42eORPxJkVJVrH9C0ctUgwMSn3BLOIZldQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-logical-overflow": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-logical-overflow/-/postcss-logical-overflow-2.0.0.tgz", + "integrity": "sha512-spzR1MInxPuXKEX2csMamshR4LRaSZ3UXVaRGjeQxl70ySxOhMpP2252RAFsg8QyyBXBzuVOOdx1+bVO5bPIzA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-logical-overscroll-behavior": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-logical-overscroll-behavior/-/postcss-logical-overscroll-behavior-2.0.0.tgz", + "integrity": "sha512-e/webMjoGOSYfqLunyzByZj5KKe5oyVg/YSbie99VEaSDE2kimFm0q1f6t/6Jo+VVCQ/jbe2Xy+uX+C4xzWs4w==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-logical-resize": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-logical-resize/-/postcss-logical-resize-3.0.0.tgz", + "integrity": "sha512-DFbHQOFW/+I+MY4Ycd/QN6Dg4Hcbb50elIJCfnwkRTCX05G11SwViI5BbBlg9iHRl4ytB7pmY5ieAFk3ws7yyg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-logical-viewport-units": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@csstools/postcss-logical-viewport-units/-/postcss-logical-viewport-units-3.0.4.tgz", + "integrity": "sha512-q+eHV1haXA4w9xBwZLKjVKAWn3W2CMqmpNpZUk5kRprvSiBEGMgrNH3/sJZ8UA3JgyHaOt3jwT9uFa4wLX4EqQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-tokenizer": "^3.0.4", + "@csstools/utilities": "^2.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-media-minmax": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/@csstools/postcss-media-minmax/-/postcss-media-minmax-2.0.9.tgz", + "integrity": "sha512-af9Qw3uS3JhYLnCbqtZ9crTvvkR+0Se+bBqSr7ykAnl9yKhk6895z9rf+2F4dClIDJWxgn0iZZ1PSdkhrbs2ig==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "dependencies": { + "@csstools/css-calc": "^2.1.4", + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4", + "@csstools/media-query-list-parser": "^4.0.3" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-media-queries-aspect-ratio-number-values": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@csstools/postcss-media-queries-aspect-ratio-number-values/-/postcss-media-queries-aspect-ratio-number-values-3.0.5.tgz", + "integrity": "sha512-zhAe31xaaXOY2Px8IYfoVTB3wglbJUVigGphFLj6exb7cjZRH9A6adyE22XfFK3P2PzwRk0VDeTJmaxpluyrDg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4", + "@csstools/media-query-list-parser": "^4.0.3" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-nested-calc": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-nested-calc/-/postcss-nested-calc-4.0.0.tgz", + "integrity": "sha512-jMYDdqrQQxE7k9+KjstC3NbsmC063n1FTPLCgCRS2/qHUbHM0mNy9pIn4QIiQGs9I/Bg98vMqw7mJXBxa0N88A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/utilities": "^2.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-normalize-display-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.0.tgz", + "integrity": "sha512-HlEoG0IDRoHXzXnkV4in47dzsxdsjdz6+j7MLjaACABX2NfvjFS6XVAnpaDyGesz9gK2SC7MbNwdCHusObKJ9Q==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-oklab-function": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-4.0.10.tgz", + "integrity": "sha512-ZzZUTDd0fgNdhv8UUjGCtObPD8LYxMH+MJsW9xlZaWTV8Ppr4PtxlHYNMmF4vVWGl0T6f8tyWAKjoI6vePSgAg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-color-parser": "^3.0.10", + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4", + "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/utilities": "^2.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-progressive-custom-properties": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-4.1.0.tgz", + "integrity": "sha512-YrkI9dx8U4R8Sz2EJaoeD9fI7s7kmeEBfmO+UURNeL6lQI7VxF6sBE+rSqdCBn4onwqmxFdBU3lTwyYb/lCmxA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-random-function": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-random-function/-/postcss-random-function-2.0.1.tgz", + "integrity": "sha512-q+FQaNiRBhnoSNo+GzqGOIBKoHQ43lYz0ICrV+UudfWnEF6ksS6DsBIJSISKQT2Bvu3g4k6r7t0zYrk5pDlo8w==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-calc": "^2.1.4", + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-relative-color-syntax": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@csstools/postcss-relative-color-syntax/-/postcss-relative-color-syntax-3.0.10.tgz", + "integrity": "sha512-8+0kQbQGg9yYG8hv0dtEpOMLwB9M+P7PhacgIzVzJpixxV4Eq9AUQtQw8adMmAJU1RBBmIlpmtmm3XTRd/T00g==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-color-parser": "^3.0.10", + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4", + "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/utilities": "^2.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-scope-pseudo-class": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-scope-pseudo-class/-/postcss-scope-pseudo-class-4.0.1.tgz", + "integrity": "sha512-IMi9FwtH6LMNuLea1bjVMQAsUhFxJnyLSgOp/cpv5hrzWmrUYU5fm0EguNDIIOHUqzXode8F/1qkC/tEo/qN8Q==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "postcss-selector-parser": "^7.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-scope-pseudo-class/node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@csstools/postcss-sign-functions": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@csstools/postcss-sign-functions/-/postcss-sign-functions-1.1.4.tgz", + "integrity": "sha512-P97h1XqRPcfcJndFdG95Gv/6ZzxUBBISem0IDqPZ7WMvc/wlO+yU0c5D/OCpZ5TJoTt63Ok3knGk64N+o6L2Pg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-calc": "^2.1.4", + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-stepped-value-functions": { + "version": "4.0.9", + "resolved": "https://registry.npmjs.org/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-4.0.9.tgz", + "integrity": "sha512-h9btycWrsex4dNLeQfyU3y3w40LMQooJWFMm/SK9lrKguHDcFl4VMkncKKoXi2z5rM9YGWbUQABI8BT2UydIcA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-calc": "^2.1.4", + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-text-decoration-shorthand": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@csstools/postcss-text-decoration-shorthand/-/postcss-text-decoration-shorthand-4.0.2.tgz", + "integrity": "sha512-8XvCRrFNseBSAGxeaVTaNijAu+FzUvjwFXtcrynmazGb/9WUdsPCpBX+mHEHShVRq47Gy4peYAoxYs8ltUnmzA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/color-helpers": "^5.0.2", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-trigonometric-functions": { + "version": "4.0.9", + "resolved": "https://registry.npmjs.org/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-4.0.9.tgz", + "integrity": "sha512-Hnh5zJUdpNrJqK9v1/E3BbrQhaDTj5YiX7P61TOvUhoDHnUmsNNxcDAgkQ32RrcWx9GVUvfUNPcUkn8R3vIX6A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-calc": "^2.1.4", + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/postcss-unset-value": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-unset-value/-/postcss-unset-value-4.0.0.tgz", + "integrity": "sha512-cBz3tOCI5Fw6NIFEwU3RiwK6mn3nKegjpJuzCndoGq3BZPkUjnsq7uQmIeMNeMbMk7YD2MfKcgCpZwX5jyXqCA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@csstools/utilities": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@csstools/utilities/-/utilities-2.0.0.tgz", + "integrity": "sha512-5VdOr0Z71u+Yp3ozOx8T11N703wIFGVRgOWbOZMKgglPJsWA54MRIoMNVMa7shUToIhx5J8vX4sOZgD2XiihiQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/@discoveryjs/json-ext": { + "version": "0.5.7", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@docsearch/css": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.9.0.tgz", + "integrity": "sha512-cQbnVbq0rrBwNAKegIac/t6a8nWoUAn8frnkLFW6YARaRmAQr5/Eoe6Ln2fqkUCZ40KpdrKbpSAmgrkviOxuWA==", + "license": "MIT" + }, + "node_modules/@docsearch/react": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.9.0.tgz", + "integrity": "sha512-mb5FOZYZIkRQ6s/NWnM98k879vu5pscWqTLubLFBO87igYYT4VzVazh4h5o/zCvTIZgEt3PvsCOMOswOUo9yHQ==", + "license": "MIT", + "dependencies": { + "@algolia/autocomplete-core": "1.17.9", + "@algolia/autocomplete-preset-algolia": "1.17.9", + "@docsearch/css": "3.9.0", + "algoliasearch": "^5.14.2" + }, + "peerDependencies": { + "@types/react": ">= 16.8.0 < 20.0.0", + "react": ">= 16.8.0 < 20.0.0", + "react-dom": ">= 16.8.0 < 20.0.0", + "search-insights": ">= 1 < 3" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "react": { + "optional": true + }, + "react-dom": { + "optional": true + }, + "search-insights": { + "optional": true + } + } + }, + "node_modules/@docusaurus/babel": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/babel/-/babel-3.7.0.tgz", + "integrity": "sha512-0H5uoJLm14S/oKV3Keihxvh8RV+vrid+6Gv+2qhuzbqHanawga8tYnsdpjEyt36ucJjqlby2/Md2ObWjA02UXQ==", + "license": "MIT", + "dependencies": { + "@babel/core": "^7.25.9", + "@babel/generator": "^7.25.9", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-transform-runtime": "^7.25.9", + "@babel/preset-env": "^7.25.9", + "@babel/preset-react": "^7.25.9", + "@babel/preset-typescript": "^7.25.9", + "@babel/runtime": "^7.25.9", + "@babel/runtime-corejs3": "^7.25.9", + "@babel/traverse": "^7.25.9", + "@docusaurus/logger": "3.7.0", + "@docusaurus/utils": "3.7.0", + "babel-plugin-dynamic-import-node": "^2.3.3", + "fs-extra": "^11.1.1", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/babel/node_modules/@docusaurus/logger": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.7.0.tgz", + "integrity": "sha512-z7g62X7bYxCYmeNNuO9jmzxLQG95q9QxINCwpboVcNff3SJiHJbGrarxxOVMVmAh1MsrSfxWkVGv4P41ktnFsA==", + "license": "MIT", + "dependencies": { + "chalk": "^4.1.2", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/babel/node_modules/@docusaurus/utils": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.7.0.tgz", + "integrity": "sha512-e7zcB6TPnVzyUaHMJyLSArKa2AG3h9+4CfvKXKKWNx6hRs+p0a+u7HHTJBgo6KW2m+vqDnuIHK4X+bhmoghAFA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "escape-string-regexp": "^4.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^11.1.1", + "github-slugger": "^1.5.0", + "globby": "^11.1.0", + "gray-matter": "^4.0.3", + "jiti": "^1.20.0", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "micromatch": "^4.0.5", + "prompts": "^2.4.2", + "resolve-pathname": "^3.0.0", + "shelljs": "^0.8.5", + "tslib": "^2.6.0", + "url-loader": "^4.1.1", + "utility-types": "^3.10.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/babel/node_modules/@docusaurus/utils-common": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.7.0.tgz", + "integrity": "sha512-IZeyIfCfXy0Mevj6bWNg7DG7B8G+S6o6JVpddikZtWyxJguiQ7JYr0SIZ0qWd8pGNuMyVwriWmbWqMnK7Y5PwA==", + "license": "MIT", + "dependencies": { + "@docusaurus/types": "3.7.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/bundler": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/bundler/-/bundler-3.7.0.tgz", + "integrity": "sha512-CUUT9VlSGukrCU5ctZucykvgCISivct+cby28wJwCC/fkQFgAHRp/GKv2tx38ZmXb7nacrKzFTcp++f9txUYGg==", + "license": "MIT", + "dependencies": { + "@babel/core": "^7.25.9", + "@docusaurus/babel": "3.7.0", + "@docusaurus/cssnano-preset": "3.7.0", + "@docusaurus/logger": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils": "3.7.0", + "babel-loader": "^9.2.1", + "clean-css": "^5.3.2", + "copy-webpack-plugin": "^11.0.0", + "css-loader": "^6.8.1", + "css-minimizer-webpack-plugin": "^5.0.1", + "cssnano": "^6.1.2", + "file-loader": "^6.2.0", + "html-minifier-terser": "^7.2.0", + "mini-css-extract-plugin": "^2.9.1", + "null-loader": "^4.0.1", + "postcss": "^8.4.26", + "postcss-loader": "^7.3.3", + "postcss-preset-env": "^10.1.0", + "react-dev-utils": "^12.0.1", + "terser-webpack-plugin": "^5.3.9", + "tslib": "^2.6.0", + "url-loader": "^4.1.1", + "webpack": "^5.95.0", + "webpackbar": "^6.0.1" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "@docusaurus/faster": "*" + }, + "peerDependenciesMeta": { + "@docusaurus/faster": { + "optional": true + } + } + }, + "node_modules/@docusaurus/bundler/node_modules/@docusaurus/logger": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.7.0.tgz", + "integrity": "sha512-z7g62X7bYxCYmeNNuO9jmzxLQG95q9QxINCwpboVcNff3SJiHJbGrarxxOVMVmAh1MsrSfxWkVGv4P41ktnFsA==", + "license": "MIT", + "dependencies": { + "chalk": "^4.1.2", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/bundler/node_modules/@docusaurus/utils": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.7.0.tgz", + "integrity": "sha512-e7zcB6TPnVzyUaHMJyLSArKa2AG3h9+4CfvKXKKWNx6hRs+p0a+u7HHTJBgo6KW2m+vqDnuIHK4X+bhmoghAFA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "escape-string-regexp": "^4.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^11.1.1", + "github-slugger": "^1.5.0", + "globby": "^11.1.0", + "gray-matter": "^4.0.3", + "jiti": "^1.20.0", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "micromatch": "^4.0.5", + "prompts": "^2.4.2", + "resolve-pathname": "^3.0.0", + "shelljs": "^0.8.5", + "tslib": "^2.6.0", + "url-loader": "^4.1.1", + "utility-types": "^3.10.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/bundler/node_modules/@docusaurus/utils-common": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.7.0.tgz", + "integrity": "sha512-IZeyIfCfXy0Mevj6bWNg7DG7B8G+S6o6JVpddikZtWyxJguiQ7JYr0SIZ0qWd8pGNuMyVwriWmbWqMnK7Y5PwA==", + "license": "MIT", + "dependencies": { + "@docusaurus/types": "3.7.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/core": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-3.7.0.tgz", + "integrity": "sha512-b0fUmaL+JbzDIQaamzpAFpTviiaU4cX3Qz8cuo14+HGBCwa0evEK0UYCBFY3n4cLzL8Op1BueeroUD2LYAIHbQ==", + "license": "MIT", + "dependencies": { + "@docusaurus/babel": "3.7.0", + "@docusaurus/bundler": "3.7.0", + "@docusaurus/logger": "3.7.0", + "@docusaurus/mdx-loader": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "@docusaurus/utils-validation": "3.7.0", + "boxen": "^6.2.1", + "chalk": "^4.1.2", + "chokidar": "^3.5.3", + "cli-table3": "^0.6.3", + "combine-promises": "^1.1.0", + "commander": "^5.1.0", + "core-js": "^3.31.1", + "del": "^6.1.1", + "detect-port": "^1.5.1", + "escape-html": "^1.0.3", + "eta": "^2.2.0", + "eval": "^0.1.8", + "fs-extra": "^11.1.1", + "html-tags": "^3.3.1", + "html-webpack-plugin": "^5.6.0", + "leven": "^3.1.0", + "lodash": "^4.17.21", + "p-map": "^4.0.0", + "prompts": "^2.4.2", + "react-dev-utils": "^12.0.1", + "react-helmet-async": "npm:@slorber/react-helmet-async@1.3.0", + "react-loadable": "npm:@docusaurus/react-loadable@6.0.0", + "react-loadable-ssr-addon-v5-slorber": "^1.0.1", + "react-router": "^5.3.4", + "react-router-config": "^5.1.1", + "react-router-dom": "^5.3.4", + "semver": "^7.5.4", + "serve-handler": "^6.1.6", + "shelljs": "^0.8.5", + "tslib": "^2.6.0", + "update-notifier": "^6.0.2", + "webpack": "^5.95.0", + "webpack-bundle-analyzer": "^4.10.2", + "webpack-dev-server": "^4.15.2", + "webpack-merge": "^6.0.1" + }, + "bin": { + "docusaurus": "bin/docusaurus.mjs" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "@mdx-js/react": "^3.0.0", + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/core/node_modules/@docusaurus/logger": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.7.0.tgz", + "integrity": "sha512-z7g62X7bYxCYmeNNuO9jmzxLQG95q9QxINCwpboVcNff3SJiHJbGrarxxOVMVmAh1MsrSfxWkVGv4P41ktnFsA==", + "license": "MIT", + "dependencies": { + "chalk": "^4.1.2", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/core/node_modules/@docusaurus/mdx-loader": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-3.7.0.tgz", + "integrity": "sha512-OFBG6oMjZzc78/U3WNPSHs2W9ZJ723ewAcvVJaqS0VgyeUfmzUV8f1sv+iUHA0DtwiR5T5FjOxj6nzEE8LY6VA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-validation": "3.7.0", + "@mdx-js/mdx": "^3.0.0", + "@slorber/remark-comment": "^1.0.0", + "escape-html": "^1.0.3", + "estree-util-value-to-estree": "^3.0.1", + "file-loader": "^6.2.0", + "fs-extra": "^11.1.1", + "image-size": "^1.0.2", + "mdast-util-mdx": "^3.0.0", + "mdast-util-to-string": "^4.0.0", + "rehype-raw": "^7.0.0", + "remark-directive": "^3.0.0", + "remark-emoji": "^4.0.0", + "remark-frontmatter": "^5.0.0", + "remark-gfm": "^4.0.0", + "stringify-object": "^3.3.0", + "tslib": "^2.6.0", + "unified": "^11.0.3", + "unist-util-visit": "^5.0.0", + "url-loader": "^4.1.1", + "vfile": "^6.0.1", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/core/node_modules/@docusaurus/utils": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.7.0.tgz", + "integrity": "sha512-e7zcB6TPnVzyUaHMJyLSArKa2AG3h9+4CfvKXKKWNx6hRs+p0a+u7HHTJBgo6KW2m+vqDnuIHK4X+bhmoghAFA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "escape-string-regexp": "^4.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^11.1.1", + "github-slugger": "^1.5.0", + "globby": "^11.1.0", + "gray-matter": "^4.0.3", + "jiti": "^1.20.0", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "micromatch": "^4.0.5", + "prompts": "^2.4.2", + "resolve-pathname": "^3.0.0", + "shelljs": "^0.8.5", + "tslib": "^2.6.0", + "url-loader": "^4.1.1", + "utility-types": "^3.10.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/core/node_modules/@docusaurus/utils-common": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.7.0.tgz", + "integrity": "sha512-IZeyIfCfXy0Mevj6bWNg7DG7B8G+S6o6JVpddikZtWyxJguiQ7JYr0SIZ0qWd8pGNuMyVwriWmbWqMnK7Y5PwA==", + "license": "MIT", + "dependencies": { + "@docusaurus/types": "3.7.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/core/node_modules/@docusaurus/utils-validation": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-3.7.0.tgz", + "integrity": "sha512-w8eiKk8mRdN+bNfeZqC4nyFoxNyI1/VExMKAzD9tqpJfLLbsa46Wfn5wcKH761g9WkKh36RtFV49iL9lh1DYBA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "fs-extra": "^11.2.0", + "joi": "^17.9.2", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/core/node_modules/image-size": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.2.1.tgz", + "integrity": "sha512-rH+46sQJ2dlwfjfhCyNx5thzrv+dtmBIhPHk0zgRUukHzZ/kRueTJXoYYsclBaKcSMBWuGbOFXtioLpzTb5euw==", + "license": "MIT", + "dependencies": { + "queue": "6.0.2" + }, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=16.x" + } + }, + "node_modules/@docusaurus/core/node_modules/webpack-merge": { + "version": "6.0.1", + "license": "MIT", + "dependencies": { + "clone-deep": "^4.0.1", + "flat": "^5.0.2", + "wildcard": "^2.0.1" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@docusaurus/cssnano-preset": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-3.7.0.tgz", + "integrity": "sha512-X9GYgruZBSOozg4w4dzv9uOz8oK/EpPVQXkp0MM6Tsgp/nRIU9hJzJ0Pxg1aRa3xCeEQTOimZHcocQFlLwYajQ==", + "license": "MIT", + "dependencies": { + "cssnano-preset-advanced": "^6.1.2", + "postcss": "^8.4.38", + "postcss-sort-media-queries": "^5.2.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/logger": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.8.1.tgz", + "integrity": "sha512-2wjeGDhKcExEmjX8k1N/MRDiPKXGF2Pg+df/bDDPnnJWHXnVEZxXj80d6jcxp1Gpnksl0hF8t/ZQw9elqj2+ww==", + "license": "MIT", + "dependencies": { + "chalk": "^4.1.2", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/mdx-loader": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-3.8.1.tgz", + "integrity": "sha512-DZRhagSFRcEq1cUtBMo4TKxSNo/W6/s44yhr8X+eoXqCLycFQUylebOMPseHi5tc4fkGJqwqpWJLz6JStU9L4w==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.8.1", + "@docusaurus/utils": "3.8.1", + "@docusaurus/utils-validation": "3.8.1", + "@mdx-js/mdx": "^3.0.0", + "@slorber/remark-comment": "^1.0.0", + "escape-html": "^1.0.3", + "estree-util-value-to-estree": "^3.0.1", + "file-loader": "^6.2.0", + "fs-extra": "^11.1.1", + "image-size": "^2.0.2", + "mdast-util-mdx": "^3.0.0", + "mdast-util-to-string": "^4.0.0", + "rehype-raw": "^7.0.0", + "remark-directive": "^3.0.0", + "remark-emoji": "^4.0.0", + "remark-frontmatter": "^5.0.0", + "remark-gfm": "^4.0.0", + "stringify-object": "^3.3.0", + "tslib": "^2.6.0", + "unified": "^11.0.3", + "unist-util-visit": "^5.0.0", + "url-loader": "^4.1.1", + "vfile": "^6.0.1", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/module-type-aliases": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-3.7.0.tgz", + "integrity": "sha512-g7WdPqDNaqA60CmBrr0cORTrsOit77hbsTj7xE2l71YhBn79sxdm7WMK7wfhcaafkbpIh7jv5ef5TOpf1Xv9Lg==", + "license": "MIT", + "dependencies": { + "@docusaurus/types": "3.7.0", + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router-config": "*", + "@types/react-router-dom": "*", + "react-helmet-async": "npm:@slorber/react-helmet-async@*", + "react-loadable": "npm:@docusaurus/react-loadable@6.0.0" + }, + "peerDependencies": { + "react": "*", + "react-dom": "*" + } + }, + "node_modules/@docusaurus/plugin-content-blog": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-3.8.1.tgz", + "integrity": "sha512-vNTpMmlvNP9n3hGEcgPaXyvTljanAKIUkuG9URQ1DeuDup0OR7Ltvoc8yrmH+iMZJbcQGhUJF+WjHLwuk8HSdw==", + "license": "MIT", + "dependencies": { + "@docusaurus/core": "3.8.1", + "@docusaurus/logger": "3.8.1", + "@docusaurus/mdx-loader": "3.8.1", + "@docusaurus/theme-common": "3.8.1", + "@docusaurus/types": "3.8.1", + "@docusaurus/utils": "3.8.1", + "@docusaurus/utils-common": "3.8.1", + "@docusaurus/utils-validation": "3.8.1", + "cheerio": "1.0.0-rc.12", + "feed": "^4.2.2", + "fs-extra": "^11.1.1", + "lodash": "^4.17.21", + "schema-dts": "^1.1.2", + "srcset": "^4.0.0", + "tslib": "^2.6.0", + "unist-util-visit": "^5.0.0", + "utility-types": "^3.10.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "@docusaurus/plugin-content-docs": "*", + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/plugin-content-blog/node_modules/@docusaurus/babel": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/babel/-/babel-3.8.1.tgz", + "integrity": "sha512-3brkJrml8vUbn9aeoZUlJfsI/GqyFcDgQJwQkmBtclJgWDEQBKKeagZfOgx0WfUQhagL1sQLNW0iBdxnI863Uw==", + "license": "MIT", + "dependencies": { + "@babel/core": "^7.25.9", + "@babel/generator": "^7.25.9", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-transform-runtime": "^7.25.9", + "@babel/preset-env": "^7.25.9", + "@babel/preset-react": "^7.25.9", + "@babel/preset-typescript": "^7.25.9", + "@babel/runtime": "^7.25.9", + "@babel/runtime-corejs3": "^7.25.9", + "@babel/traverse": "^7.25.9", + "@docusaurus/logger": "3.8.1", + "@docusaurus/utils": "3.8.1", + "babel-plugin-dynamic-import-node": "^2.3.3", + "fs-extra": "^11.1.1", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-content-blog/node_modules/@docusaurus/bundler": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/bundler/-/bundler-3.8.1.tgz", + "integrity": "sha512-/z4V0FRoQ0GuSLToNjOSGsk6m2lQUG4FRn8goOVoZSRsTrU8YR2aJacX5K3RG18EaX9b+52pN4m1sL3MQZVsQA==", + "license": "MIT", + "dependencies": { + "@babel/core": "^7.25.9", + "@docusaurus/babel": "3.8.1", + "@docusaurus/cssnano-preset": "3.8.1", + "@docusaurus/logger": "3.8.1", + "@docusaurus/types": "3.8.1", + "@docusaurus/utils": "3.8.1", + "babel-loader": "^9.2.1", + "clean-css": "^5.3.3", + "copy-webpack-plugin": "^11.0.0", + "css-loader": "^6.11.0", + "css-minimizer-webpack-plugin": "^5.0.1", + "cssnano": "^6.1.2", + "file-loader": "^6.2.0", + "html-minifier-terser": "^7.2.0", + "mini-css-extract-plugin": "^2.9.2", + "null-loader": "^4.0.1", + "postcss": "^8.5.4", + "postcss-loader": "^7.3.4", + "postcss-preset-env": "^10.2.1", + "terser-webpack-plugin": "^5.3.9", + "tslib": "^2.6.0", + "url-loader": "^4.1.1", + "webpack": "^5.95.0", + "webpackbar": "^6.0.1" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "@docusaurus/faster": "*" + }, + "peerDependenciesMeta": { + "@docusaurus/faster": { + "optional": true + } + } + }, + "node_modules/@docusaurus/plugin-content-blog/node_modules/@docusaurus/core": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-3.8.1.tgz", + "integrity": "sha512-ENB01IyQSqI2FLtOzqSI3qxG2B/jP4gQPahl2C3XReiLebcVh5B5cB9KYFvdoOqOWPyr5gXK4sjgTKv7peXCrA==", + "license": "MIT", + "dependencies": { + "@docusaurus/babel": "3.8.1", + "@docusaurus/bundler": "3.8.1", + "@docusaurus/logger": "3.8.1", + "@docusaurus/mdx-loader": "3.8.1", + "@docusaurus/utils": "3.8.1", + "@docusaurus/utils-common": "3.8.1", + "@docusaurus/utils-validation": "3.8.1", + "boxen": "^6.2.1", + "chalk": "^4.1.2", + "chokidar": "^3.5.3", + "cli-table3": "^0.6.3", + "combine-promises": "^1.1.0", + "commander": "^5.1.0", + "core-js": "^3.31.1", + "detect-port": "^1.5.1", + "escape-html": "^1.0.3", + "eta": "^2.2.0", + "eval": "^0.1.8", + "execa": "5.1.1", + "fs-extra": "^11.1.1", + "html-tags": "^3.3.1", + "html-webpack-plugin": "^5.6.0", + "leven": "^3.1.0", + "lodash": "^4.17.21", + "open": "^8.4.0", + "p-map": "^4.0.0", + "prompts": "^2.4.2", + "react-helmet-async": "npm:@slorber/react-helmet-async@1.3.0", + "react-loadable": "npm:@docusaurus/react-loadable@6.0.0", + "react-loadable-ssr-addon-v5-slorber": "^1.0.1", + "react-router": "^5.3.4", + "react-router-config": "^5.1.1", + "react-router-dom": "^5.3.4", + "semver": "^7.5.4", + "serve-handler": "^6.1.6", + "tinypool": "^1.0.2", + "tslib": "^2.6.0", + "update-notifier": "^6.0.2", + "webpack": "^5.95.0", + "webpack-bundle-analyzer": "^4.10.2", + "webpack-dev-server": "^4.15.2", + "webpack-merge": "^6.0.1" + }, + "bin": { + "docusaurus": "bin/docusaurus.mjs" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "@mdx-js/react": "^3.0.0", + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/plugin-content-blog/node_modules/@docusaurus/core/node_modules/webpack-merge": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-6.0.1.tgz", + "integrity": "sha512-hXXvrjtx2PLYx4qruKl+kyRSLc52V+cCvMxRjmKwoA+CBbbF5GfIBtR6kCvl0fYGqTUPKB+1ktVmTHqMOzgCBg==", + "license": "MIT", + "dependencies": { + "clone-deep": "^4.0.1", + "flat": "^5.0.2", + "wildcard": "^2.0.1" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@docusaurus/plugin-content-blog/node_modules/@docusaurus/cssnano-preset": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-3.8.1.tgz", + "integrity": "sha512-G7WyR2N6SpyUotqhGznERBK+x84uyhfMQM2MmDLs88bw4Flom6TY46HzkRkSEzaP9j80MbTN8naiL1fR17WQug==", + "license": "MIT", + "dependencies": { + "cssnano-preset-advanced": "^6.1.2", + "postcss": "^8.5.4", + "postcss-sort-media-queries": "^5.2.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-content-blog/node_modules/@docusaurus/types": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-3.8.1.tgz", + "integrity": "sha512-ZPdW5AB+pBjiVrcLuw3dOS6BFlrG0XkS2lDGsj8TizcnREQg3J8cjsgfDviszOk4CweNfwo1AEELJkYaMUuOPg==", + "license": "MIT", + "dependencies": { + "@mdx-js/mdx": "^3.0.0", + "@types/history": "^4.7.11", + "@types/react": "*", + "commander": "^5.1.0", + "joi": "^17.9.2", + "react-helmet-async": "npm:@slorber/react-helmet-async@1.3.0", + "utility-types": "^3.10.0", + "webpack": "^5.95.0", + "webpack-merge": "^5.9.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/plugin-content-docs": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.8.1.tgz", + "integrity": "sha512-oByRkSZzeGNQByCMaX+kif5Nl2vmtj2IHQI2fWjCfCootsdKZDPFLonhIp5s3IGJO7PLUfe0POyw0Xh/RrGXJA==", + "license": "MIT", + "peer": true, + "dependencies": { + "@docusaurus/core": "3.8.1", + "@docusaurus/logger": "3.8.1", + "@docusaurus/mdx-loader": "3.8.1", + "@docusaurus/module-type-aliases": "3.8.1", + "@docusaurus/theme-common": "3.8.1", + "@docusaurus/types": "3.8.1", + "@docusaurus/utils": "3.8.1", + "@docusaurus/utils-common": "3.8.1", + "@docusaurus/utils-validation": "3.8.1", + "@types/react-router-config": "^5.0.7", + "combine-promises": "^1.1.0", + "fs-extra": "^11.1.1", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "schema-dts": "^1.1.2", + "tslib": "^2.6.0", + "utility-types": "^3.10.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/plugin-content-docs/node_modules/@docusaurus/babel": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/babel/-/babel-3.8.1.tgz", + "integrity": "sha512-3brkJrml8vUbn9aeoZUlJfsI/GqyFcDgQJwQkmBtclJgWDEQBKKeagZfOgx0WfUQhagL1sQLNW0iBdxnI863Uw==", + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/core": "^7.25.9", + "@babel/generator": "^7.25.9", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-transform-runtime": "^7.25.9", + "@babel/preset-env": "^7.25.9", + "@babel/preset-react": "^7.25.9", + "@babel/preset-typescript": "^7.25.9", + "@babel/runtime": "^7.25.9", + "@babel/runtime-corejs3": "^7.25.9", + "@babel/traverse": "^7.25.9", + "@docusaurus/logger": "3.8.1", + "@docusaurus/utils": "3.8.1", + "babel-plugin-dynamic-import-node": "^2.3.3", + "fs-extra": "^11.1.1", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-content-docs/node_modules/@docusaurus/bundler": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/bundler/-/bundler-3.8.1.tgz", + "integrity": "sha512-/z4V0FRoQ0GuSLToNjOSGsk6m2lQUG4FRn8goOVoZSRsTrU8YR2aJacX5K3RG18EaX9b+52pN4m1sL3MQZVsQA==", + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/core": "^7.25.9", + "@docusaurus/babel": "3.8.1", + "@docusaurus/cssnano-preset": "3.8.1", + "@docusaurus/logger": "3.8.1", + "@docusaurus/types": "3.8.1", + "@docusaurus/utils": "3.8.1", + "babel-loader": "^9.2.1", + "clean-css": "^5.3.3", + "copy-webpack-plugin": "^11.0.0", + "css-loader": "^6.11.0", + "css-minimizer-webpack-plugin": "^5.0.1", + "cssnano": "^6.1.2", + "file-loader": "^6.2.0", + "html-minifier-terser": "^7.2.0", + "mini-css-extract-plugin": "^2.9.2", + "null-loader": "^4.0.1", + "postcss": "^8.5.4", + "postcss-loader": "^7.3.4", + "postcss-preset-env": "^10.2.1", + "terser-webpack-plugin": "^5.3.9", + "tslib": "^2.6.0", + "url-loader": "^4.1.1", + "webpack": "^5.95.0", + "webpackbar": "^6.0.1" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "@docusaurus/faster": "*" + }, + "peerDependenciesMeta": { + "@docusaurus/faster": { + "optional": true + } + } + }, + "node_modules/@docusaurus/plugin-content-docs/node_modules/@docusaurus/core": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-3.8.1.tgz", + "integrity": "sha512-ENB01IyQSqI2FLtOzqSI3qxG2B/jP4gQPahl2C3XReiLebcVh5B5cB9KYFvdoOqOWPyr5gXK4sjgTKv7peXCrA==", + "license": "MIT", + "peer": true, + "dependencies": { + "@docusaurus/babel": "3.8.1", + "@docusaurus/bundler": "3.8.1", + "@docusaurus/logger": "3.8.1", + "@docusaurus/mdx-loader": "3.8.1", + "@docusaurus/utils": "3.8.1", + "@docusaurus/utils-common": "3.8.1", + "@docusaurus/utils-validation": "3.8.1", + "boxen": "^6.2.1", + "chalk": "^4.1.2", + "chokidar": "^3.5.3", + "cli-table3": "^0.6.3", + "combine-promises": "^1.1.0", + "commander": "^5.1.0", + "core-js": "^3.31.1", + "detect-port": "^1.5.1", + "escape-html": "^1.0.3", + "eta": "^2.2.0", + "eval": "^0.1.8", + "execa": "5.1.1", + "fs-extra": "^11.1.1", + "html-tags": "^3.3.1", + "html-webpack-plugin": "^5.6.0", + "leven": "^3.1.0", + "lodash": "^4.17.21", + "open": "^8.4.0", + "p-map": "^4.0.0", + "prompts": "^2.4.2", + "react-helmet-async": "npm:@slorber/react-helmet-async@1.3.0", + "react-loadable": "npm:@docusaurus/react-loadable@6.0.0", + "react-loadable-ssr-addon-v5-slorber": "^1.0.1", + "react-router": "^5.3.4", + "react-router-config": "^5.1.1", + "react-router-dom": "^5.3.4", + "semver": "^7.5.4", + "serve-handler": "^6.1.6", + "tinypool": "^1.0.2", + "tslib": "^2.6.0", + "update-notifier": "^6.0.2", + "webpack": "^5.95.0", + "webpack-bundle-analyzer": "^4.10.2", + "webpack-dev-server": "^4.15.2", + "webpack-merge": "^6.0.1" + }, + "bin": { + "docusaurus": "bin/docusaurus.mjs" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "@mdx-js/react": "^3.0.0", + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/plugin-content-docs/node_modules/@docusaurus/core/node_modules/webpack-merge": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-6.0.1.tgz", + "integrity": "sha512-hXXvrjtx2PLYx4qruKl+kyRSLc52V+cCvMxRjmKwoA+CBbbF5GfIBtR6kCvl0fYGqTUPKB+1ktVmTHqMOzgCBg==", + "license": "MIT", + "peer": true, + "dependencies": { + "clone-deep": "^4.0.1", + "flat": "^5.0.2", + "wildcard": "^2.0.1" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@docusaurus/plugin-content-docs/node_modules/@docusaurus/cssnano-preset": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-3.8.1.tgz", + "integrity": "sha512-G7WyR2N6SpyUotqhGznERBK+x84uyhfMQM2MmDLs88bw4Flom6TY46HzkRkSEzaP9j80MbTN8naiL1fR17WQug==", + "license": "MIT", + "peer": true, + "dependencies": { + "cssnano-preset-advanced": "^6.1.2", + "postcss": "^8.5.4", + "postcss-sort-media-queries": "^5.2.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-content-docs/node_modules/@docusaurus/module-type-aliases": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-3.8.1.tgz", + "integrity": "sha512-6xhvAJiXzsaq3JdosS7wbRt/PwEPWHr9eM4YNYqVlbgG1hSK3uQDXTVvQktasp3VO6BmfYWPozueLWuj4gB+vg==", + "license": "MIT", + "peer": true, + "dependencies": { + "@docusaurus/types": "3.8.1", + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router-config": "*", + "@types/react-router-dom": "*", + "react-helmet-async": "npm:@slorber/react-helmet-async@1.3.0", + "react-loadable": "npm:@docusaurus/react-loadable@6.0.0" + }, + "peerDependencies": { + "react": "*", + "react-dom": "*" + } + }, + "node_modules/@docusaurus/plugin-content-docs/node_modules/@docusaurus/types": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-3.8.1.tgz", + "integrity": "sha512-ZPdW5AB+pBjiVrcLuw3dOS6BFlrG0XkS2lDGsj8TizcnREQg3J8cjsgfDviszOk4CweNfwo1AEELJkYaMUuOPg==", + "license": "MIT", + "peer": true, + "dependencies": { + "@mdx-js/mdx": "^3.0.0", + "@types/history": "^4.7.11", + "@types/react": "*", + "commander": "^5.1.0", + "joi": "^17.9.2", + "react-helmet-async": "npm:@slorber/react-helmet-async@1.3.0", + "utility-types": "^3.10.0", + "webpack": "^5.95.0", + "webpack-merge": "^5.9.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/plugin-content-pages": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-3.7.0.tgz", + "integrity": "sha512-YJSU3tjIJf032/Aeao8SZjFOrXJbz/FACMveSMjLyMH4itQyZ2XgUIzt4y+1ISvvk5zrW4DABVT2awTCqBkx0Q==", + "license": "MIT", + "dependencies": { + "@docusaurus/core": "3.7.0", + "@docusaurus/mdx-loader": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-validation": "3.7.0", + "fs-extra": "^11.1.1", + "tslib": "^2.6.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/plugin-content-pages/node_modules/@docusaurus/logger": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.7.0.tgz", + "integrity": "sha512-z7g62X7bYxCYmeNNuO9jmzxLQG95q9QxINCwpboVcNff3SJiHJbGrarxxOVMVmAh1MsrSfxWkVGv4P41ktnFsA==", + "license": "MIT", + "dependencies": { + "chalk": "^4.1.2", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-content-pages/node_modules/@docusaurus/mdx-loader": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-3.7.0.tgz", + "integrity": "sha512-OFBG6oMjZzc78/U3WNPSHs2W9ZJ723ewAcvVJaqS0VgyeUfmzUV8f1sv+iUHA0DtwiR5T5FjOxj6nzEE8LY6VA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-validation": "3.7.0", + "@mdx-js/mdx": "^3.0.0", + "@slorber/remark-comment": "^1.0.0", + "escape-html": "^1.0.3", + "estree-util-value-to-estree": "^3.0.1", + "file-loader": "^6.2.0", + "fs-extra": "^11.1.1", + "image-size": "^1.0.2", + "mdast-util-mdx": "^3.0.0", + "mdast-util-to-string": "^4.0.0", + "rehype-raw": "^7.0.0", + "remark-directive": "^3.0.0", + "remark-emoji": "^4.0.0", + "remark-frontmatter": "^5.0.0", + "remark-gfm": "^4.0.0", + "stringify-object": "^3.3.0", + "tslib": "^2.6.0", + "unified": "^11.0.3", + "unist-util-visit": "^5.0.0", + "url-loader": "^4.1.1", + "vfile": "^6.0.1", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/plugin-content-pages/node_modules/@docusaurus/utils": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.7.0.tgz", + "integrity": "sha512-e7zcB6TPnVzyUaHMJyLSArKa2AG3h9+4CfvKXKKWNx6hRs+p0a+u7HHTJBgo6KW2m+vqDnuIHK4X+bhmoghAFA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "escape-string-regexp": "^4.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^11.1.1", + "github-slugger": "^1.5.0", + "globby": "^11.1.0", + "gray-matter": "^4.0.3", + "jiti": "^1.20.0", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "micromatch": "^4.0.5", + "prompts": "^2.4.2", + "resolve-pathname": "^3.0.0", + "shelljs": "^0.8.5", + "tslib": "^2.6.0", + "url-loader": "^4.1.1", + "utility-types": "^3.10.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-content-pages/node_modules/@docusaurus/utils-common": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.7.0.tgz", + "integrity": "sha512-IZeyIfCfXy0Mevj6bWNg7DG7B8G+S6o6JVpddikZtWyxJguiQ7JYr0SIZ0qWd8pGNuMyVwriWmbWqMnK7Y5PwA==", + "license": "MIT", + "dependencies": { + "@docusaurus/types": "3.7.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-content-pages/node_modules/@docusaurus/utils-validation": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-3.7.0.tgz", + "integrity": "sha512-w8eiKk8mRdN+bNfeZqC4nyFoxNyI1/VExMKAzD9tqpJfLLbsa46Wfn5wcKH761g9WkKh36RtFV49iL9lh1DYBA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "fs-extra": "^11.2.0", + "joi": "^17.9.2", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-content-pages/node_modules/image-size": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.2.1.tgz", + "integrity": "sha512-rH+46sQJ2dlwfjfhCyNx5thzrv+dtmBIhPHk0zgRUukHzZ/kRueTJXoYYsclBaKcSMBWuGbOFXtioLpzTb5euw==", + "license": "MIT", + "dependencies": { + "queue": "6.0.2" + }, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=16.x" + } + }, + "node_modules/@docusaurus/plugin-debug": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-3.7.0.tgz", + "integrity": "sha512-Qgg+IjG/z4svtbCNyTocjIwvNTNEwgRjSXXSJkKVG0oWoH0eX/HAPiu+TS1HBwRPQV+tTYPWLrUypYFepfujZA==", + "license": "MIT", + "dependencies": { + "@docusaurus/core": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils": "3.7.0", + "fs-extra": "^11.1.1", + "react-json-view-lite": "^1.2.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/plugin-debug/node_modules/@docusaurus/logger": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.7.0.tgz", + "integrity": "sha512-z7g62X7bYxCYmeNNuO9jmzxLQG95q9QxINCwpboVcNff3SJiHJbGrarxxOVMVmAh1MsrSfxWkVGv4P41ktnFsA==", + "license": "MIT", + "dependencies": { + "chalk": "^4.1.2", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-debug/node_modules/@docusaurus/utils": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.7.0.tgz", + "integrity": "sha512-e7zcB6TPnVzyUaHMJyLSArKa2AG3h9+4CfvKXKKWNx6hRs+p0a+u7HHTJBgo6KW2m+vqDnuIHK4X+bhmoghAFA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "escape-string-regexp": "^4.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^11.1.1", + "github-slugger": "^1.5.0", + "globby": "^11.1.0", + "gray-matter": "^4.0.3", + "jiti": "^1.20.0", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "micromatch": "^4.0.5", + "prompts": "^2.4.2", + "resolve-pathname": "^3.0.0", + "shelljs": "^0.8.5", + "tslib": "^2.6.0", + "url-loader": "^4.1.1", + "utility-types": "^3.10.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-debug/node_modules/@docusaurus/utils-common": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.7.0.tgz", + "integrity": "sha512-IZeyIfCfXy0Mevj6bWNg7DG7B8G+S6o6JVpddikZtWyxJguiQ7JYr0SIZ0qWd8pGNuMyVwriWmbWqMnK7Y5PwA==", + "license": "MIT", + "dependencies": { + "@docusaurus/types": "3.7.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-debug/node_modules/react-json-view-lite": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/react-json-view-lite/-/react-json-view-lite-1.5.0.tgz", + "integrity": "sha512-nWqA1E4jKPklL2jvHWs6s+7Na0qNgw9HCP6xehdQJeg6nPBTFZgGwyko9Q0oj+jQWKTTVRS30u0toM5wiuL3iw==", + "license": "MIT", + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "react": "^16.13.1 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/@docusaurus/plugin-google-analytics": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-3.7.0.tgz", + "integrity": "sha512-otIqiRV/jka6Snjf+AqB360XCeSv7lQC+DKYW+EUZf6XbuE8utz5PeUQ8VuOcD8Bk5zvT1MC4JKcd5zPfDuMWA==", + "license": "MIT", + "dependencies": { + "@docusaurus/core": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils-validation": "3.7.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/plugin-google-analytics/node_modules/@docusaurus/logger": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.7.0.tgz", + "integrity": "sha512-z7g62X7bYxCYmeNNuO9jmzxLQG95q9QxINCwpboVcNff3SJiHJbGrarxxOVMVmAh1MsrSfxWkVGv4P41ktnFsA==", + "license": "MIT", + "dependencies": { + "chalk": "^4.1.2", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-google-analytics/node_modules/@docusaurus/utils": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.7.0.tgz", + "integrity": "sha512-e7zcB6TPnVzyUaHMJyLSArKa2AG3h9+4CfvKXKKWNx6hRs+p0a+u7HHTJBgo6KW2m+vqDnuIHK4X+bhmoghAFA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "escape-string-regexp": "^4.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^11.1.1", + "github-slugger": "^1.5.0", + "globby": "^11.1.0", + "gray-matter": "^4.0.3", + "jiti": "^1.20.0", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "micromatch": "^4.0.5", + "prompts": "^2.4.2", + "resolve-pathname": "^3.0.0", + "shelljs": "^0.8.5", + "tslib": "^2.6.0", + "url-loader": "^4.1.1", + "utility-types": "^3.10.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-google-analytics/node_modules/@docusaurus/utils-common": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.7.0.tgz", + "integrity": "sha512-IZeyIfCfXy0Mevj6bWNg7DG7B8G+S6o6JVpddikZtWyxJguiQ7JYr0SIZ0qWd8pGNuMyVwriWmbWqMnK7Y5PwA==", + "license": "MIT", + "dependencies": { + "@docusaurus/types": "3.7.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-google-analytics/node_modules/@docusaurus/utils-validation": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-3.7.0.tgz", + "integrity": "sha512-w8eiKk8mRdN+bNfeZqC4nyFoxNyI1/VExMKAzD9tqpJfLLbsa46Wfn5wcKH761g9WkKh36RtFV49iL9lh1DYBA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "fs-extra": "^11.2.0", + "joi": "^17.9.2", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-google-gtag": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-3.7.0.tgz", + "integrity": "sha512-M3vrMct1tY65ModbyeDaMoA+fNJTSPe5qmchhAbtqhDD/iALri0g9LrEpIOwNaoLmm6lO88sfBUADQrSRSGSWA==", + "license": "MIT", + "dependencies": { + "@docusaurus/core": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils-validation": "3.7.0", + "@types/gtag.js": "^0.0.12", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/plugin-google-gtag/node_modules/@docusaurus/logger": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.7.0.tgz", + "integrity": "sha512-z7g62X7bYxCYmeNNuO9jmzxLQG95q9QxINCwpboVcNff3SJiHJbGrarxxOVMVmAh1MsrSfxWkVGv4P41ktnFsA==", + "license": "MIT", + "dependencies": { + "chalk": "^4.1.2", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-google-gtag/node_modules/@docusaurus/utils": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.7.0.tgz", + "integrity": "sha512-e7zcB6TPnVzyUaHMJyLSArKa2AG3h9+4CfvKXKKWNx6hRs+p0a+u7HHTJBgo6KW2m+vqDnuIHK4X+bhmoghAFA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "escape-string-regexp": "^4.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^11.1.1", + "github-slugger": "^1.5.0", + "globby": "^11.1.0", + "gray-matter": "^4.0.3", + "jiti": "^1.20.0", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "micromatch": "^4.0.5", + "prompts": "^2.4.2", + "resolve-pathname": "^3.0.0", + "shelljs": "^0.8.5", + "tslib": "^2.6.0", + "url-loader": "^4.1.1", + "utility-types": "^3.10.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-google-gtag/node_modules/@docusaurus/utils-common": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.7.0.tgz", + "integrity": "sha512-IZeyIfCfXy0Mevj6bWNg7DG7B8G+S6o6JVpddikZtWyxJguiQ7JYr0SIZ0qWd8pGNuMyVwriWmbWqMnK7Y5PwA==", + "license": "MIT", + "dependencies": { + "@docusaurus/types": "3.7.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-google-gtag/node_modules/@docusaurus/utils-validation": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-3.7.0.tgz", + "integrity": "sha512-w8eiKk8mRdN+bNfeZqC4nyFoxNyI1/VExMKAzD9tqpJfLLbsa46Wfn5wcKH761g9WkKh36RtFV49iL9lh1DYBA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "fs-extra": "^11.2.0", + "joi": "^17.9.2", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-google-tag-manager": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-3.7.0.tgz", + "integrity": "sha512-X8U78nb8eiMiPNg3jb9zDIVuuo/rE1LjGDGu+5m5CX4UBZzjMy+klOY2fNya6x8ACyE/L3K2erO1ErheP55W/w==", + "license": "MIT", + "dependencies": { + "@docusaurus/core": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils-validation": "3.7.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/plugin-google-tag-manager/node_modules/@docusaurus/logger": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.7.0.tgz", + "integrity": "sha512-z7g62X7bYxCYmeNNuO9jmzxLQG95q9QxINCwpboVcNff3SJiHJbGrarxxOVMVmAh1MsrSfxWkVGv4P41ktnFsA==", + "license": "MIT", + "dependencies": { + "chalk": "^4.1.2", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-google-tag-manager/node_modules/@docusaurus/utils": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.7.0.tgz", + "integrity": "sha512-e7zcB6TPnVzyUaHMJyLSArKa2AG3h9+4CfvKXKKWNx6hRs+p0a+u7HHTJBgo6KW2m+vqDnuIHK4X+bhmoghAFA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "escape-string-regexp": "^4.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^11.1.1", + "github-slugger": "^1.5.0", + "globby": "^11.1.0", + "gray-matter": "^4.0.3", + "jiti": "^1.20.0", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "micromatch": "^4.0.5", + "prompts": "^2.4.2", + "resolve-pathname": "^3.0.0", + "shelljs": "^0.8.5", + "tslib": "^2.6.0", + "url-loader": "^4.1.1", + "utility-types": "^3.10.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-google-tag-manager/node_modules/@docusaurus/utils-common": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.7.0.tgz", + "integrity": "sha512-IZeyIfCfXy0Mevj6bWNg7DG7B8G+S6o6JVpddikZtWyxJguiQ7JYr0SIZ0qWd8pGNuMyVwriWmbWqMnK7Y5PwA==", + "license": "MIT", + "dependencies": { + "@docusaurus/types": "3.7.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-google-tag-manager/node_modules/@docusaurus/utils-validation": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-3.7.0.tgz", + "integrity": "sha512-w8eiKk8mRdN+bNfeZqC4nyFoxNyI1/VExMKAzD9tqpJfLLbsa46Wfn5wcKH761g9WkKh36RtFV49iL9lh1DYBA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "fs-extra": "^11.2.0", + "joi": "^17.9.2", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-sitemap": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-3.7.0.tgz", + "integrity": "sha512-bTRT9YLZ/8I/wYWKMQke18+PF9MV8Qub34Sku6aw/vlZ/U+kuEuRpQ8bTcNOjaTSfYsWkK4tTwDMHK2p5S86cA==", + "license": "MIT", + "dependencies": { + "@docusaurus/core": "3.7.0", + "@docusaurus/logger": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "@docusaurus/utils-validation": "3.7.0", + "fs-extra": "^11.1.1", + "sitemap": "^7.1.1", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/plugin-sitemap/node_modules/@docusaurus/logger": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.7.0.tgz", + "integrity": "sha512-z7g62X7bYxCYmeNNuO9jmzxLQG95q9QxINCwpboVcNff3SJiHJbGrarxxOVMVmAh1MsrSfxWkVGv4P41ktnFsA==", + "license": "MIT", + "dependencies": { + "chalk": "^4.1.2", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-sitemap/node_modules/@docusaurus/utils": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.7.0.tgz", + "integrity": "sha512-e7zcB6TPnVzyUaHMJyLSArKa2AG3h9+4CfvKXKKWNx6hRs+p0a+u7HHTJBgo6KW2m+vqDnuIHK4X+bhmoghAFA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "escape-string-regexp": "^4.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^11.1.1", + "github-slugger": "^1.5.0", + "globby": "^11.1.0", + "gray-matter": "^4.0.3", + "jiti": "^1.20.0", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "micromatch": "^4.0.5", + "prompts": "^2.4.2", + "resolve-pathname": "^3.0.0", + "shelljs": "^0.8.5", + "tslib": "^2.6.0", + "url-loader": "^4.1.1", + "utility-types": "^3.10.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-sitemap/node_modules/@docusaurus/utils-common": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.7.0.tgz", + "integrity": "sha512-IZeyIfCfXy0Mevj6bWNg7DG7B8G+S6o6JVpddikZtWyxJguiQ7JYr0SIZ0qWd8pGNuMyVwriWmbWqMnK7Y5PwA==", + "license": "MIT", + "dependencies": { + "@docusaurus/types": "3.7.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-sitemap/node_modules/@docusaurus/utils-validation": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-3.7.0.tgz", + "integrity": "sha512-w8eiKk8mRdN+bNfeZqC4nyFoxNyI1/VExMKAzD9tqpJfLLbsa46Wfn5wcKH761g9WkKh36RtFV49iL9lh1DYBA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "fs-extra": "^11.2.0", + "joi": "^17.9.2", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-svgr": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-svgr/-/plugin-svgr-3.7.0.tgz", + "integrity": "sha512-HByXIZTbc4GV5VAUkZ2DXtXv1Qdlnpk3IpuImwSnEzCDBkUMYcec5282hPjn6skZqB25M1TYCmWS91UbhBGxQg==", + "license": "MIT", + "dependencies": { + "@docusaurus/core": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-validation": "3.7.0", + "@svgr/core": "8.1.0", + "@svgr/webpack": "^8.1.0", + "tslib": "^2.6.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/plugin-svgr/node_modules/@docusaurus/logger": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.7.0.tgz", + "integrity": "sha512-z7g62X7bYxCYmeNNuO9jmzxLQG95q9QxINCwpboVcNff3SJiHJbGrarxxOVMVmAh1MsrSfxWkVGv4P41ktnFsA==", + "license": "MIT", + "dependencies": { + "chalk": "^4.1.2", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-svgr/node_modules/@docusaurus/utils": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.7.0.tgz", + "integrity": "sha512-e7zcB6TPnVzyUaHMJyLSArKa2AG3h9+4CfvKXKKWNx6hRs+p0a+u7HHTJBgo6KW2m+vqDnuIHK4X+bhmoghAFA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "escape-string-regexp": "^4.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^11.1.1", + "github-slugger": "^1.5.0", + "globby": "^11.1.0", + "gray-matter": "^4.0.3", + "jiti": "^1.20.0", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "micromatch": "^4.0.5", + "prompts": "^2.4.2", + "resolve-pathname": "^3.0.0", + "shelljs": "^0.8.5", + "tslib": "^2.6.0", + "url-loader": "^4.1.1", + "utility-types": "^3.10.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-svgr/node_modules/@docusaurus/utils-common": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.7.0.tgz", + "integrity": "sha512-IZeyIfCfXy0Mevj6bWNg7DG7B8G+S6o6JVpddikZtWyxJguiQ7JYr0SIZ0qWd8pGNuMyVwriWmbWqMnK7Y5PwA==", + "license": "MIT", + "dependencies": { + "@docusaurus/types": "3.7.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/plugin-svgr/node_modules/@docusaurus/utils-validation": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-3.7.0.tgz", + "integrity": "sha512-w8eiKk8mRdN+bNfeZqC4nyFoxNyI1/VExMKAzD9tqpJfLLbsa46Wfn5wcKH761g9WkKh36RtFV49iL9lh1DYBA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "fs-extra": "^11.2.0", + "joi": "^17.9.2", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/preset-classic": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-3.7.0.tgz", + "integrity": "sha512-nPHj8AxDLAaQXs+O6+BwILFuhiWbjfQWrdw2tifOClQoNfuXDjfjogee6zfx6NGHWqshR23LrcN115DmkHC91Q==", + "license": "MIT", + "dependencies": { + "@docusaurus/core": "3.7.0", + "@docusaurus/plugin-content-blog": "3.7.0", + "@docusaurus/plugin-content-docs": "3.7.0", + "@docusaurus/plugin-content-pages": "3.7.0", + "@docusaurus/plugin-debug": "3.7.0", + "@docusaurus/plugin-google-analytics": "3.7.0", + "@docusaurus/plugin-google-gtag": "3.7.0", + "@docusaurus/plugin-google-tag-manager": "3.7.0", + "@docusaurus/plugin-sitemap": "3.7.0", + "@docusaurus/plugin-svgr": "3.7.0", + "@docusaurus/theme-classic": "3.7.0", + "@docusaurus/theme-common": "3.7.0", + "@docusaurus/theme-search-algolia": "3.7.0", + "@docusaurus/types": "3.7.0" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/preset-classic/node_modules/@docusaurus/logger": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.7.0.tgz", + "integrity": "sha512-z7g62X7bYxCYmeNNuO9jmzxLQG95q9QxINCwpboVcNff3SJiHJbGrarxxOVMVmAh1MsrSfxWkVGv4P41ktnFsA==", + "license": "MIT", + "dependencies": { + "chalk": "^4.1.2", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/preset-classic/node_modules/@docusaurus/mdx-loader": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-3.7.0.tgz", + "integrity": "sha512-OFBG6oMjZzc78/U3WNPSHs2W9ZJ723ewAcvVJaqS0VgyeUfmzUV8f1sv+iUHA0DtwiR5T5FjOxj6nzEE8LY6VA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-validation": "3.7.0", + "@mdx-js/mdx": "^3.0.0", + "@slorber/remark-comment": "^1.0.0", + "escape-html": "^1.0.3", + "estree-util-value-to-estree": "^3.0.1", + "file-loader": "^6.2.0", + "fs-extra": "^11.1.1", + "image-size": "^1.0.2", + "mdast-util-mdx": "^3.0.0", + "mdast-util-to-string": "^4.0.0", + "rehype-raw": "^7.0.0", + "remark-directive": "^3.0.0", + "remark-emoji": "^4.0.0", + "remark-frontmatter": "^5.0.0", + "remark-gfm": "^4.0.0", + "stringify-object": "^3.3.0", + "tslib": "^2.6.0", + "unified": "^11.0.3", + "unist-util-visit": "^5.0.0", + "url-loader": "^4.1.1", + "vfile": "^6.0.1", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/preset-classic/node_modules/@docusaurus/plugin-content-blog": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-3.7.0.tgz", + "integrity": "sha512-EFLgEz6tGHYWdPU0rK8tSscZwx+AsyuBW/r+tNig2kbccHYGUJmZtYN38GjAa3Fda4NU+6wqUO5kTXQSRBQD3g==", + "license": "MIT", + "dependencies": { + "@docusaurus/core": "3.7.0", + "@docusaurus/logger": "3.7.0", + "@docusaurus/mdx-loader": "3.7.0", + "@docusaurus/theme-common": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "@docusaurus/utils-validation": "3.7.0", + "cheerio": "1.0.0-rc.12", + "feed": "^4.2.2", + "fs-extra": "^11.1.1", + "lodash": "^4.17.21", + "reading-time": "^1.5.0", + "srcset": "^4.0.0", + "tslib": "^2.6.0", + "unist-util-visit": "^5.0.0", + "utility-types": "^3.10.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "@docusaurus/plugin-content-docs": "*", + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/preset-classic/node_modules/@docusaurus/plugin-content-docs": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.7.0.tgz", + "integrity": "sha512-GXg5V7kC9FZE4FkUZA8oo/NrlRb06UwuICzI6tcbzj0+TVgjq/mpUXXzSgKzMS82YByi4dY2Q808njcBCyy6tQ==", + "license": "MIT", + "dependencies": { + "@docusaurus/core": "3.7.0", + "@docusaurus/logger": "3.7.0", + "@docusaurus/mdx-loader": "3.7.0", + "@docusaurus/module-type-aliases": "3.7.0", + "@docusaurus/theme-common": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "@docusaurus/utils-validation": "3.7.0", + "@types/react-router-config": "^5.0.7", + "combine-promises": "^1.1.0", + "fs-extra": "^11.1.1", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "tslib": "^2.6.0", + "utility-types": "^3.10.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/preset-classic/node_modules/@docusaurus/theme-common": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-3.7.0.tgz", + "integrity": "sha512-8eJ5X0y+gWDsURZnBfH0WabdNm8XMCXHv8ENy/3Z/oQKwaB/EHt5lP9VsTDTf36lKEp0V6DjzjFyFIB+CetL0A==", + "license": "MIT", + "dependencies": { + "@docusaurus/mdx-loader": "3.7.0", + "@docusaurus/module-type-aliases": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router-config": "*", + "clsx": "^2.0.0", + "parse-numeric-range": "^1.3.0", + "prism-react-renderer": "^2.3.0", + "tslib": "^2.6.0", + "utility-types": "^3.10.0" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "@docusaurus/plugin-content-docs": "*", + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/preset-classic/node_modules/@docusaurus/utils": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.7.0.tgz", + "integrity": "sha512-e7zcB6TPnVzyUaHMJyLSArKa2AG3h9+4CfvKXKKWNx6hRs+p0a+u7HHTJBgo6KW2m+vqDnuIHK4X+bhmoghAFA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "escape-string-regexp": "^4.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^11.1.1", + "github-slugger": "^1.5.0", + "globby": "^11.1.0", + "gray-matter": "^4.0.3", + "jiti": "^1.20.0", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "micromatch": "^4.0.5", + "prompts": "^2.4.2", + "resolve-pathname": "^3.0.0", + "shelljs": "^0.8.5", + "tslib": "^2.6.0", + "url-loader": "^4.1.1", + "utility-types": "^3.10.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/preset-classic/node_modules/@docusaurus/utils-common": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.7.0.tgz", + "integrity": "sha512-IZeyIfCfXy0Mevj6bWNg7DG7B8G+S6o6JVpddikZtWyxJguiQ7JYr0SIZ0qWd8pGNuMyVwriWmbWqMnK7Y5PwA==", + "license": "MIT", + "dependencies": { + "@docusaurus/types": "3.7.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/preset-classic/node_modules/@docusaurus/utils-validation": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-3.7.0.tgz", + "integrity": "sha512-w8eiKk8mRdN+bNfeZqC4nyFoxNyI1/VExMKAzD9tqpJfLLbsa46Wfn5wcKH761g9WkKh36RtFV49iL9lh1DYBA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "fs-extra": "^11.2.0", + "joi": "^17.9.2", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/preset-classic/node_modules/image-size": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.2.1.tgz", + "integrity": "sha512-rH+46sQJ2dlwfjfhCyNx5thzrv+dtmBIhPHk0zgRUukHzZ/kRueTJXoYYsclBaKcSMBWuGbOFXtioLpzTb5euw==", + "license": "MIT", + "dependencies": { + "queue": "6.0.2" + }, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=16.x" + } + }, + "node_modules/@docusaurus/theme-classic": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-3.7.0.tgz", + "integrity": "sha512-MnLxG39WcvLCl4eUzHr0gNcpHQfWoGqzADCly54aqCofQX6UozOS9Th4RK3ARbM9m7zIRv3qbhggI53dQtx/hQ==", + "license": "MIT", + "dependencies": { + "@docusaurus/core": "3.7.0", + "@docusaurus/logger": "3.7.0", + "@docusaurus/mdx-loader": "3.7.0", + "@docusaurus/module-type-aliases": "3.7.0", + "@docusaurus/plugin-content-blog": "3.7.0", + "@docusaurus/plugin-content-docs": "3.7.0", + "@docusaurus/plugin-content-pages": "3.7.0", + "@docusaurus/theme-common": "3.7.0", + "@docusaurus/theme-translations": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "@docusaurus/utils-validation": "3.7.0", + "@mdx-js/react": "^3.0.0", + "clsx": "^2.0.0", + "copy-text-to-clipboard": "^3.2.0", + "infima": "0.2.0-alpha.45", + "lodash": "^4.17.21", + "nprogress": "^0.2.0", + "postcss": "^8.4.26", + "prism-react-renderer": "^2.3.0", + "prismjs": "^1.29.0", + "react-router-dom": "^5.3.4", + "rtlcss": "^4.1.0", + "tslib": "^2.6.0", + "utility-types": "^3.10.0" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/theme-classic/node_modules/@docusaurus/logger": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.7.0.tgz", + "integrity": "sha512-z7g62X7bYxCYmeNNuO9jmzxLQG95q9QxINCwpboVcNff3SJiHJbGrarxxOVMVmAh1MsrSfxWkVGv4P41ktnFsA==", + "license": "MIT", + "dependencies": { + "chalk": "^4.1.2", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/theme-classic/node_modules/@docusaurus/mdx-loader": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-3.7.0.tgz", + "integrity": "sha512-OFBG6oMjZzc78/U3WNPSHs2W9ZJ723ewAcvVJaqS0VgyeUfmzUV8f1sv+iUHA0DtwiR5T5FjOxj6nzEE8LY6VA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-validation": "3.7.0", + "@mdx-js/mdx": "^3.0.0", + "@slorber/remark-comment": "^1.0.0", + "escape-html": "^1.0.3", + "estree-util-value-to-estree": "^3.0.1", + "file-loader": "^6.2.0", + "fs-extra": "^11.1.1", + "image-size": "^1.0.2", + "mdast-util-mdx": "^3.0.0", + "mdast-util-to-string": "^4.0.0", + "rehype-raw": "^7.0.0", + "remark-directive": "^3.0.0", + "remark-emoji": "^4.0.0", + "remark-frontmatter": "^5.0.0", + "remark-gfm": "^4.0.0", + "stringify-object": "^3.3.0", + "tslib": "^2.6.0", + "unified": "^11.0.3", + "unist-util-visit": "^5.0.0", + "url-loader": "^4.1.1", + "vfile": "^6.0.1", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/theme-classic/node_modules/@docusaurus/plugin-content-blog": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-3.7.0.tgz", + "integrity": "sha512-EFLgEz6tGHYWdPU0rK8tSscZwx+AsyuBW/r+tNig2kbccHYGUJmZtYN38GjAa3Fda4NU+6wqUO5kTXQSRBQD3g==", + "license": "MIT", + "dependencies": { + "@docusaurus/core": "3.7.0", + "@docusaurus/logger": "3.7.0", + "@docusaurus/mdx-loader": "3.7.0", + "@docusaurus/theme-common": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "@docusaurus/utils-validation": "3.7.0", + "cheerio": "1.0.0-rc.12", + "feed": "^4.2.2", + "fs-extra": "^11.1.1", + "lodash": "^4.17.21", + "reading-time": "^1.5.0", + "srcset": "^4.0.0", + "tslib": "^2.6.0", + "unist-util-visit": "^5.0.0", + "utility-types": "^3.10.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "@docusaurus/plugin-content-docs": "*", + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/theme-classic/node_modules/@docusaurus/plugin-content-docs": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.7.0.tgz", + "integrity": "sha512-GXg5V7kC9FZE4FkUZA8oo/NrlRb06UwuICzI6tcbzj0+TVgjq/mpUXXzSgKzMS82YByi4dY2Q808njcBCyy6tQ==", + "license": "MIT", + "dependencies": { + "@docusaurus/core": "3.7.0", + "@docusaurus/logger": "3.7.0", + "@docusaurus/mdx-loader": "3.7.0", + "@docusaurus/module-type-aliases": "3.7.0", + "@docusaurus/theme-common": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "@docusaurus/utils-validation": "3.7.0", + "@types/react-router-config": "^5.0.7", + "combine-promises": "^1.1.0", + "fs-extra": "^11.1.1", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "tslib": "^2.6.0", + "utility-types": "^3.10.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/theme-classic/node_modules/@docusaurus/theme-common": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-3.7.0.tgz", + "integrity": "sha512-8eJ5X0y+gWDsURZnBfH0WabdNm8XMCXHv8ENy/3Z/oQKwaB/EHt5lP9VsTDTf36lKEp0V6DjzjFyFIB+CetL0A==", + "license": "MIT", + "dependencies": { + "@docusaurus/mdx-loader": "3.7.0", + "@docusaurus/module-type-aliases": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router-config": "*", + "clsx": "^2.0.0", + "parse-numeric-range": "^1.3.0", + "prism-react-renderer": "^2.3.0", + "tslib": "^2.6.0", + "utility-types": "^3.10.0" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "@docusaurus/plugin-content-docs": "*", + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/theme-classic/node_modules/@docusaurus/utils": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.7.0.tgz", + "integrity": "sha512-e7zcB6TPnVzyUaHMJyLSArKa2AG3h9+4CfvKXKKWNx6hRs+p0a+u7HHTJBgo6KW2m+vqDnuIHK4X+bhmoghAFA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "escape-string-regexp": "^4.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^11.1.1", + "github-slugger": "^1.5.0", + "globby": "^11.1.0", + "gray-matter": "^4.0.3", + "jiti": "^1.20.0", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "micromatch": "^4.0.5", + "prompts": "^2.4.2", + "resolve-pathname": "^3.0.0", + "shelljs": "^0.8.5", + "tslib": "^2.6.0", + "url-loader": "^4.1.1", + "utility-types": "^3.10.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/theme-classic/node_modules/@docusaurus/utils-common": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.7.0.tgz", + "integrity": "sha512-IZeyIfCfXy0Mevj6bWNg7DG7B8G+S6o6JVpddikZtWyxJguiQ7JYr0SIZ0qWd8pGNuMyVwriWmbWqMnK7Y5PwA==", + "license": "MIT", + "dependencies": { + "@docusaurus/types": "3.7.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/theme-classic/node_modules/@docusaurus/utils-validation": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-3.7.0.tgz", + "integrity": "sha512-w8eiKk8mRdN+bNfeZqC4nyFoxNyI1/VExMKAzD9tqpJfLLbsa46Wfn5wcKH761g9WkKh36RtFV49iL9lh1DYBA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "fs-extra": "^11.2.0", + "joi": "^17.9.2", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/theme-classic/node_modules/image-size": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.2.1.tgz", + "integrity": "sha512-rH+46sQJ2dlwfjfhCyNx5thzrv+dtmBIhPHk0zgRUukHzZ/kRueTJXoYYsclBaKcSMBWuGbOFXtioLpzTb5euw==", + "license": "MIT", + "dependencies": { + "queue": "6.0.2" + }, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=16.x" + } + }, + "node_modules/@docusaurus/theme-common": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-3.8.1.tgz", + "integrity": "sha512-UswMOyTnPEVRvN5Qzbo+l8k4xrd5fTFu2VPPfD6FcW/6qUtVLmJTQCktbAL3KJ0BVXGm5aJXz/ZrzqFuZERGPw==", + "license": "MIT", + "dependencies": { + "@docusaurus/mdx-loader": "3.8.1", + "@docusaurus/module-type-aliases": "3.8.1", + "@docusaurus/utils": "3.8.1", + "@docusaurus/utils-common": "3.8.1", + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router-config": "*", + "clsx": "^2.0.0", + "parse-numeric-range": "^1.3.0", + "prism-react-renderer": "^2.3.0", + "tslib": "^2.6.0", + "utility-types": "^3.10.0" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "@docusaurus/plugin-content-docs": "*", + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/theme-common/node_modules/@docusaurus/module-type-aliases": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-3.8.1.tgz", + "integrity": "sha512-6xhvAJiXzsaq3JdosS7wbRt/PwEPWHr9eM4YNYqVlbgG1hSK3uQDXTVvQktasp3VO6BmfYWPozueLWuj4gB+vg==", + "license": "MIT", + "dependencies": { + "@docusaurus/types": "3.8.1", + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router-config": "*", + "@types/react-router-dom": "*", + "react-helmet-async": "npm:@slorber/react-helmet-async@1.3.0", + "react-loadable": "npm:@docusaurus/react-loadable@6.0.0" + }, + "peerDependencies": { + "react": "*", + "react-dom": "*" + } + }, + "node_modules/@docusaurus/theme-common/node_modules/@docusaurus/types": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-3.8.1.tgz", + "integrity": "sha512-ZPdW5AB+pBjiVrcLuw3dOS6BFlrG0XkS2lDGsj8TizcnREQg3J8cjsgfDviszOk4CweNfwo1AEELJkYaMUuOPg==", + "license": "MIT", + "dependencies": { + "@mdx-js/mdx": "^3.0.0", + "@types/history": "^4.7.11", + "@types/react": "*", + "commander": "^5.1.0", + "joi": "^17.9.2", + "react-helmet-async": "npm:@slorber/react-helmet-async@1.3.0", + "utility-types": "^3.10.0", + "webpack": "^5.95.0", + "webpack-merge": "^5.9.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/theme-search-algolia": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-3.7.0.tgz", + "integrity": "sha512-Al/j5OdzwRU1m3falm+sYy9AaB93S1XF1Lgk9Yc6amp80dNxJVplQdQTR4cYdzkGtuQqbzUA8+kaoYYO0RbK6g==", + "license": "MIT", + "dependencies": { + "@docsearch/react": "^3.8.1", + "@docusaurus/core": "3.7.0", + "@docusaurus/logger": "3.7.0", + "@docusaurus/plugin-content-docs": "3.7.0", + "@docusaurus/theme-common": "3.7.0", + "@docusaurus/theme-translations": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-validation": "3.7.0", + "algoliasearch": "^5.17.1", + "algoliasearch-helper": "^3.22.6", + "clsx": "^2.0.0", + "eta": "^2.2.0", + "fs-extra": "^11.1.1", + "lodash": "^4.17.21", + "tslib": "^2.6.0", + "utility-types": "^3.10.0" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/theme-search-algolia/node_modules/@docusaurus/logger": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.7.0.tgz", + "integrity": "sha512-z7g62X7bYxCYmeNNuO9jmzxLQG95q9QxINCwpboVcNff3SJiHJbGrarxxOVMVmAh1MsrSfxWkVGv4P41ktnFsA==", + "license": "MIT", + "dependencies": { + "chalk": "^4.1.2", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/theme-search-algolia/node_modules/@docusaurus/mdx-loader": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-3.7.0.tgz", + "integrity": "sha512-OFBG6oMjZzc78/U3WNPSHs2W9ZJ723ewAcvVJaqS0VgyeUfmzUV8f1sv+iUHA0DtwiR5T5FjOxj6nzEE8LY6VA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-validation": "3.7.0", + "@mdx-js/mdx": "^3.0.0", + "@slorber/remark-comment": "^1.0.0", + "escape-html": "^1.0.3", + "estree-util-value-to-estree": "^3.0.1", + "file-loader": "^6.2.0", + "fs-extra": "^11.1.1", + "image-size": "^1.0.2", + "mdast-util-mdx": "^3.0.0", + "mdast-util-to-string": "^4.0.0", + "rehype-raw": "^7.0.0", + "remark-directive": "^3.0.0", + "remark-emoji": "^4.0.0", + "remark-frontmatter": "^5.0.0", + "remark-gfm": "^4.0.0", + "stringify-object": "^3.3.0", + "tslib": "^2.6.0", + "unified": "^11.0.3", + "unist-util-visit": "^5.0.0", + "url-loader": "^4.1.1", + "vfile": "^6.0.1", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/theme-search-algolia/node_modules/@docusaurus/plugin-content-docs": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.7.0.tgz", + "integrity": "sha512-GXg5V7kC9FZE4FkUZA8oo/NrlRb06UwuICzI6tcbzj0+TVgjq/mpUXXzSgKzMS82YByi4dY2Q808njcBCyy6tQ==", + "license": "MIT", + "dependencies": { + "@docusaurus/core": "3.7.0", + "@docusaurus/logger": "3.7.0", + "@docusaurus/mdx-loader": "3.7.0", + "@docusaurus/module-type-aliases": "3.7.0", + "@docusaurus/theme-common": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "@docusaurus/utils-validation": "3.7.0", + "@types/react-router-config": "^5.0.7", + "combine-promises": "^1.1.0", + "fs-extra": "^11.1.1", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "tslib": "^2.6.0", + "utility-types": "^3.10.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/theme-search-algolia/node_modules/@docusaurus/theme-common": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-3.7.0.tgz", + "integrity": "sha512-8eJ5X0y+gWDsURZnBfH0WabdNm8XMCXHv8ENy/3Z/oQKwaB/EHt5lP9VsTDTf36lKEp0V6DjzjFyFIB+CetL0A==", + "license": "MIT", + "dependencies": { + "@docusaurus/mdx-loader": "3.7.0", + "@docusaurus/module-type-aliases": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router-config": "*", + "clsx": "^2.0.0", + "parse-numeric-range": "^1.3.0", + "prism-react-renderer": "^2.3.0", + "tslib": "^2.6.0", + "utility-types": "^3.10.0" + }, + "engines": { + "node": ">=18.0" + }, + "peerDependencies": { + "@docusaurus/plugin-content-docs": "*", + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/theme-search-algolia/node_modules/@docusaurus/utils": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.7.0.tgz", + "integrity": "sha512-e7zcB6TPnVzyUaHMJyLSArKa2AG3h9+4CfvKXKKWNx6hRs+p0a+u7HHTJBgo6KW2m+vqDnuIHK4X+bhmoghAFA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/types": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "escape-string-regexp": "^4.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^11.1.1", + "github-slugger": "^1.5.0", + "globby": "^11.1.0", + "gray-matter": "^4.0.3", + "jiti": "^1.20.0", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "micromatch": "^4.0.5", + "prompts": "^2.4.2", + "resolve-pathname": "^3.0.0", + "shelljs": "^0.8.5", + "tslib": "^2.6.0", + "url-loader": "^4.1.1", + "utility-types": "^3.10.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/theme-search-algolia/node_modules/@docusaurus/utils-common": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.7.0.tgz", + "integrity": "sha512-IZeyIfCfXy0Mevj6bWNg7DG7B8G+S6o6JVpddikZtWyxJguiQ7JYr0SIZ0qWd8pGNuMyVwriWmbWqMnK7Y5PwA==", + "license": "MIT", + "dependencies": { + "@docusaurus/types": "3.7.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/theme-search-algolia/node_modules/@docusaurus/utils-validation": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-3.7.0.tgz", + "integrity": "sha512-w8eiKk8mRdN+bNfeZqC4nyFoxNyI1/VExMKAzD9tqpJfLLbsa46Wfn5wcKH761g9WkKh36RtFV49iL9lh1DYBA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.7.0", + "@docusaurus/utils": "3.7.0", + "@docusaurus/utils-common": "3.7.0", + "fs-extra": "^11.2.0", + "joi": "^17.9.2", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/theme-search-algolia/node_modules/image-size": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.2.1.tgz", + "integrity": "sha512-rH+46sQJ2dlwfjfhCyNx5thzrv+dtmBIhPHk0zgRUukHzZ/kRueTJXoYYsclBaKcSMBWuGbOFXtioLpzTb5euw==", + "license": "MIT", + "dependencies": { + "queue": "6.0.2" + }, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=16.x" + } + }, + "node_modules/@docusaurus/theme-translations": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-3.7.0.tgz", + "integrity": "sha512-Ewq3bEraWDmienM6eaNK7fx+/lHMtGDHQyd1O+4+3EsDxxUmrzPkV7Ct3nBWTuE0MsoZr3yNwQVKjllzCMuU3g==", + "license": "MIT", + "dependencies": { + "fs-extra": "^11.1.1", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/tsconfig": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/tsconfig/-/tsconfig-3.7.0.tgz", + "integrity": "sha512-vRsyj3yUZCjscgfgcFYjIsTcAru/4h4YH2/XAE8Rs7wWdnng98PgWKvP5ovVc4rmRpRg2WChVW0uOy2xHDvDBQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@docusaurus/types": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-3.7.0.tgz", + "integrity": "sha512-kOmZg5RRqJfH31m+6ZpnwVbkqMJrPOG5t0IOl4i/+3ruXyNfWzZ0lVtVrD0u4ONc/0NOsS9sWYaxxWNkH1LdLQ==", + "license": "MIT", + "dependencies": { + "@mdx-js/mdx": "^3.0.0", + "@types/history": "^4.7.11", + "@types/react": "*", + "commander": "^5.1.0", + "joi": "^17.9.2", + "react-helmet-async": "npm:@slorber/react-helmet-async@1.3.0", + "utility-types": "^3.10.0", + "webpack": "^5.95.0", + "webpack-merge": "^5.9.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/utils": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.8.1.tgz", + "integrity": "sha512-P1ml0nvOmEFdmu0smSXOqTS1sxU5tqvnc0dA4MTKV39kye+bhQnjkIKEE18fNOvxjyB86k8esoCIFM3x4RykOQ==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.8.1", + "@docusaurus/types": "3.8.1", + "@docusaurus/utils-common": "3.8.1", + "escape-string-regexp": "^4.0.0", + "execa": "5.1.1", + "file-loader": "^6.2.0", + "fs-extra": "^11.1.1", + "github-slugger": "^1.5.0", + "globby": "^11.1.0", + "gray-matter": "^4.0.3", + "jiti": "^1.20.0", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "micromatch": "^4.0.5", + "p-queue": "^6.6.2", + "prompts": "^2.4.2", + "resolve-pathname": "^3.0.0", + "tslib": "^2.6.0", + "url-loader": "^4.1.1", + "utility-types": "^3.10.0", + "webpack": "^5.88.1" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/utils-common": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.8.1.tgz", + "integrity": "sha512-zTZiDlvpvoJIrQEEd71c154DkcriBecm4z94OzEE9kz7ikS3J+iSlABhFXM45mZ0eN5pVqqr7cs60+ZlYLewtg==", + "license": "MIT", + "dependencies": { + "@docusaurus/types": "3.8.1", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/utils-common/node_modules/@docusaurus/types": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-3.8.1.tgz", + "integrity": "sha512-ZPdW5AB+pBjiVrcLuw3dOS6BFlrG0XkS2lDGsj8TizcnREQg3J8cjsgfDviszOk4CweNfwo1AEELJkYaMUuOPg==", + "license": "MIT", + "dependencies": { + "@mdx-js/mdx": "^3.0.0", + "@types/history": "^4.7.11", + "@types/react": "*", + "commander": "^5.1.0", + "joi": "^17.9.2", + "react-helmet-async": "npm:@slorber/react-helmet-async@1.3.0", + "utility-types": "^3.10.0", + "webpack": "^5.95.0", + "webpack-merge": "^5.9.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@docusaurus/utils-validation": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-3.8.1.tgz", + "integrity": "sha512-gs5bXIccxzEbyVecvxg6upTwaUbfa0KMmTj7HhHzc016AGyxH2o73k1/aOD0IFrdCsfJNt37MqNI47s2MgRZMA==", + "license": "MIT", + "dependencies": { + "@docusaurus/logger": "3.8.1", + "@docusaurus/utils": "3.8.1", + "@docusaurus/utils-common": "3.8.1", + "fs-extra": "^11.2.0", + "joi": "^17.9.2", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/utils/node_modules/@docusaurus/types": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-3.8.1.tgz", + "integrity": "sha512-ZPdW5AB+pBjiVrcLuw3dOS6BFlrG0XkS2lDGsj8TizcnREQg3J8cjsgfDviszOk4CweNfwo1AEELJkYaMUuOPg==", + "license": "MIT", + "dependencies": { + "@mdx-js/mdx": "^3.0.0", + "@types/history": "^4.7.11", + "@types/react": "*", + "commander": "^5.1.0", + "joi": "^17.9.2", + "react-helmet-async": "npm:@slorber/react-helmet-async@1.3.0", + "utility-types": "^3.10.0", + "webpack": "^5.95.0", + "webpack-merge": "^5.9.0" + }, + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + } + }, + "node_modules/@hapi/hoek": { + "version": "9.3.0", + "license": "BSD-3-Clause" + }, + "node_modules/@hapi/topo": { + "version": "5.1.0", + "license": "BSD-3-Clause", + "dependencies": { + "@hapi/hoek": "^9.0.0" + } + }, + "node_modules/@isaacs/fs-minipass": { + "version": "4.0.1", + "license": "ISC", + "dependencies": { + "minipass": "^7.0.4" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", + "license": "MIT", + "dependencies": { + "@sinclair/typebox": "^0.27.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/types": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.12", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.12.tgz", + "integrity": "sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.6", + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.29", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.29.tgz", + "integrity": "sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@leichtgewicht/ip-codec": { + "version": "2.0.5", + "license": "MIT" + }, + "node_modules/@mdx-js/mdx": { + "version": "3.1.0", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/mdx": "^2.0.0", + "collapse-white-space": "^2.0.0", + "devlop": "^1.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "estree-util-scope": "^1.0.0", + "estree-walker": "^3.0.0", + "hast-util-to-jsx-runtime": "^2.0.0", + "markdown-extensions": "^2.0.0", + "recma-build-jsx": "^1.0.0", + "recma-jsx": "^1.0.0", + "recma-stringify": "^1.0.0", + "rehype-recma": "^1.0.0", + "remark-mdx": "^3.0.0", + "remark-parse": "^11.0.0", + "remark-rehype": "^11.0.0", + "source-map": "^0.7.0", + "unified": "^11.0.0", + "unist-util-position-from-estree": "^2.0.0", + "unist-util-stringify-position": "^4.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@mdx-js/react": { + "version": "3.1.0", + "license": "MIT", + "dependencies": { + "@types/mdx": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + }, + "peerDependencies": { + "@types/react": ">=16", + "react": ">=16" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@pnpm/config.env-replace": { + "version": "1.1.0", + "license": "MIT", + "engines": { + "node": ">=12.22.0" + } + }, + "node_modules/@pnpm/network.ca-file": { + "version": "1.0.2", + "license": "MIT", + "dependencies": { + "graceful-fs": "4.2.10" + }, + "engines": { + "node": ">=12.22.0" + } + }, + "node_modules/@pnpm/network.ca-file/node_modules/graceful-fs": { + "version": "4.2.10", + "license": "ISC" + }, + "node_modules/@pnpm/npm-conf": { + "version": "2.3.1", + "license": "MIT", + "dependencies": { + "@pnpm/config.env-replace": "^1.1.0", + "@pnpm/network.ca-file": "^1.0.1", + "config-chain": "^1.1.11" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@polka/url": { + "version": "1.0.0-next.29", + "license": "MIT" + }, + "node_modules/@puppeteer/browsers": { + "version": "2.10.5", + "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.10.5.tgz", + "integrity": "sha512-eifa0o+i8dERnngJwKrfp3dEq7ia5XFyoqB17S4gK8GhsQE4/P8nxOfQSE0zQHxzzLo/cmF+7+ywEQ7wK7Fb+w==", + "license": "Apache-2.0", + "dependencies": { + "debug": "^4.4.1", + "extract-zip": "^2.0.1", + "progress": "^2.0.3", + "proxy-agent": "^6.5.0", + "semver": "^7.7.2", + "tar-fs": "^3.0.8", + "yargs": "^17.7.2" + }, + "bin": { + "browsers": "lib/cjs/main-cli.js" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@sideway/address": { + "version": "4.1.5", + "license": "BSD-3-Clause", + "dependencies": { + "@hapi/hoek": "^9.0.0" + } + }, + "node_modules/@sideway/formula": { + "version": "3.0.1", + "license": "BSD-3-Clause" + }, + "node_modules/@sideway/pinpoint": { + "version": "2.0.0", + "license": "BSD-3-Clause" + }, + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "license": "MIT" + }, + "node_modules/@sindresorhus/is": { + "version": "4.6.0", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, + "node_modules/@slorber/remark-comment": { + "version": "1.0.0", + "license": "MIT", + "dependencies": { + "micromark-factory-space": "^1.0.0", + "micromark-util-character": "^1.1.0", + "micromark-util-symbol": "^1.0.1" + } + }, + "node_modules/@svgr/babel-plugin-add-jsx-attribute": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-8.0.0.tgz", + "integrity": "sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g==", + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-remove-jsx-attribute": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-8.0.0.tgz", + "integrity": "sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA==", + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-remove-jsx-empty-expression": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-8.0.0.tgz", + "integrity": "sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA==", + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-replace-jsx-attribute-value": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-8.0.0.tgz", + "integrity": "sha512-KVQ+PtIjb1BuYT3ht8M5KbzWBhdAjjUPdlMtpuw/VjT8coTrItWX6Qafl9+ji831JaJcu6PJNKCV0bp01lBNzQ==", + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-svg-dynamic-title": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-8.0.0.tgz", + "integrity": "sha512-omNiKqwjNmOQJ2v6ge4SErBbkooV2aAWwaPFs2vUY7p7GhVkzRkJ00kILXQvRhA6miHnNpXv7MRnnSjdRjK8og==", + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-svg-em-dimensions": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-8.0.0.tgz", + "integrity": "sha512-mURHYnu6Iw3UBTbhGwE/vsngtCIbHE43xCRK7kCw4t01xyGqb2Pd+WXekRRoFOBIY29ZoOhUCTEweDMdrjfi9g==", + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-transform-react-native-svg": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-8.1.0.tgz", + "integrity": "sha512-Tx8T58CHo+7nwJ+EhUwx3LfdNSG9R2OKfaIXXs5soiy5HtgoAEkDay9LIimLOcG8dJQH1wPZp/cnAv6S9CrR1Q==", + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-transform-svg-component": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-8.0.0.tgz", + "integrity": "sha512-DFx8xa3cZXTdb/k3kfPeaixecQLgKh5NVBMwD0AQxOzcZawK4oo1Jh9LbrcACUivsCA7TLG8eeWgrDXjTMhRmw==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-preset": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-8.1.0.tgz", + "integrity": "sha512-7EYDbHE7MxHpv4sxvnVPngw5fuR6pw79SkcrILHJ/iMpuKySNCl5W1qcwPEpU+LgyRXOaAFgH0KhwD18wwg6ug==", + "license": "MIT", + "dependencies": { + "@svgr/babel-plugin-add-jsx-attribute": "8.0.0", + "@svgr/babel-plugin-remove-jsx-attribute": "8.0.0", + "@svgr/babel-plugin-remove-jsx-empty-expression": "8.0.0", + "@svgr/babel-plugin-replace-jsx-attribute-value": "8.0.0", + "@svgr/babel-plugin-svg-dynamic-title": "8.0.0", + "@svgr/babel-plugin-svg-em-dimensions": "8.0.0", + "@svgr/babel-plugin-transform-react-native-svg": "8.1.0", + "@svgr/babel-plugin-transform-svg-component": "8.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/core": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/core/-/core-8.1.0.tgz", + "integrity": "sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA==", + "license": "MIT", + "dependencies": { + "@babel/core": "^7.21.3", + "@svgr/babel-preset": "8.1.0", + "camelcase": "^6.2.0", + "cosmiconfig": "^8.1.3", + "snake-case": "^3.0.4" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/hast-util-to-babel-ast": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-8.0.0.tgz", + "integrity": "sha512-EbDKwO9GpfWP4jN9sGdYwPBU0kdomaPIL2Eu4YwmgP+sJeXT+L7bMwJUBnhzfH8Q2qMBqZ4fJwpCyYsAN3mt2Q==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.21.3", + "entities": "^4.4.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/plugin-jsx": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-8.1.0.tgz", + "integrity": "sha512-0xiIyBsLlr8quN+WyuxooNW9RJ0Dpr8uOnH/xrCVO8GLUcwHISwj1AG0k+LFzteTkAA0GbX0kj9q6Dk70PTiPA==", + "license": "MIT", + "dependencies": { + "@babel/core": "^7.21.3", + "@svgr/babel-preset": "8.1.0", + "@svgr/hast-util-to-babel-ast": "8.0.0", + "svg-parser": "^2.0.4" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@svgr/core": "*" + } + }, + "node_modules/@svgr/plugin-svgo": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-8.1.0.tgz", + "integrity": "sha512-Ywtl837OGO9pTLIN/onoWLmDQ4zFUycI1g76vuKGEz6evR/ZTJlJuz3G/fIkb6OVBJ2g0o6CGJzaEjfmEo3AHA==", + "license": "MIT", + "dependencies": { + "cosmiconfig": "^8.1.3", + "deepmerge": "^4.3.1", + "svgo": "^3.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@svgr/core": "*" + } + }, + "node_modules/@svgr/webpack": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-8.1.0.tgz", + "integrity": "sha512-LnhVjMWyMQV9ZmeEy26maJk+8HTIbd59cH4F2MJ439k9DqejRisfFNGAPvRYlKETuh9LrImlS8aKsBgKjMA8WA==", + "license": "MIT", + "dependencies": { + "@babel/core": "^7.21.3", + "@babel/plugin-transform-react-constant-elements": "^7.21.3", + "@babel/preset-env": "^7.20.2", + "@babel/preset-react": "^7.18.6", + "@babel/preset-typescript": "^7.21.0", + "@svgr/core": "8.1.0", + "@svgr/plugin-jsx": "8.1.0", + "@svgr/plugin-svgo": "8.1.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@szmarczak/http-timer": { + "version": "5.0.1", + "license": "MIT", + "dependencies": { + "defer-to-connect": "^2.0.1" + }, + "engines": { + "node": ">=14.16" + } + }, + "node_modules/@tailwindcss/node": { + "version": "4.1.6", + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.3.0", + "enhanced-resolve": "^5.18.1", + "jiti": "^2.4.2", + "lightningcss": "1.29.2", + "magic-string": "^0.30.17", + "source-map-js": "^1.2.1", + "tailwindcss": "4.1.6" + } + }, + "node_modules/@tailwindcss/node/node_modules/jiti": { + "version": "2.4.2", + "license": "MIT", + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, + "node_modules/@tailwindcss/oxide": { + "version": "4.1.6", + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "detect-libc": "^2.0.4", + "tar": "^7.4.3" + }, + "engines": { + "node": ">= 10" + }, + "optionalDependencies": { + "@tailwindcss/oxide-android-arm64": "4.1.6", + "@tailwindcss/oxide-darwin-arm64": "4.1.6", + "@tailwindcss/oxide-darwin-x64": "4.1.6", + "@tailwindcss/oxide-freebsd-x64": "4.1.6", + "@tailwindcss/oxide-linux-arm-gnueabihf": "4.1.6", + "@tailwindcss/oxide-linux-arm64-gnu": "4.1.6", + "@tailwindcss/oxide-linux-arm64-musl": "4.1.6", + "@tailwindcss/oxide-linux-x64-gnu": "4.1.6", + "@tailwindcss/oxide-linux-x64-musl": "4.1.6", + "@tailwindcss/oxide-wasm32-wasi": "4.1.6", + "@tailwindcss/oxide-win32-arm64-msvc": "4.1.6", + "@tailwindcss/oxide-win32-x64-msvc": "4.1.6" + } + }, + "node_modules/@tailwindcss/oxide-linux-x64-gnu": { + "version": "4.1.6", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/oxide-linux-x64-musl": { + "version": "4.1.6", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tailwindcss/postcss": { + "version": "4.1.6", + "license": "MIT", + "dependencies": { + "@alloc/quick-lru": "^5.2.0", + "@tailwindcss/node": "4.1.6", + "@tailwindcss/oxide": "4.1.6", + "postcss": "^8.4.41", + "tailwindcss": "4.1.6" + } + }, + "node_modules/@tootallnate/quickjs-emscripten": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz", + "integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==", + "license": "MIT" + }, + "node_modules/@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", + "license": "ISC", + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/@types/body-parser": { + "version": "1.19.5", + "license": "MIT", + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/bonjour": { + "version": "3.5.13", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.38", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect-history-api-fallback": { + "version": "1.5.4", + "license": "MIT", + "dependencies": { + "@types/express-serve-static-core": "*", + "@types/node": "*" + } + }, + "node_modules/@types/debug": { + "version": "4.1.12", + "license": "MIT", + "dependencies": { + "@types/ms": "*" + } + }, + "node_modules/@types/eslint": { + "version": "9.6.1", + "license": "MIT", + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.7", + "license": "MIT", + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.7", + "license": "MIT" + }, + "node_modules/@types/estree-jsx": { + "version": "1.0.5", + "license": "MIT", + "dependencies": { + "@types/estree": "*" + } + }, + "node_modules/@types/express": { + "version": "4.17.21", + "license": "MIT", + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "5.0.6", + "license": "MIT", + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } + }, + "node_modules/@types/express/node_modules/@types/express-serve-static-core": { + "version": "4.19.6", + "license": "MIT", + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } + }, + "node_modules/@types/gtag.js": { + "version": "0.0.12", + "resolved": "https://registry.npmjs.org/@types/gtag.js/-/gtag.js-0.0.12.tgz", + "integrity": "sha512-YQV9bUsemkzG81Ea295/nF/5GijnD2Af7QhEofh7xu+kvCN6RdodgNwwGWXB5GMI3NoyvQo0odNctoH/qLMIpg==", + "license": "MIT" + }, + "node_modules/@types/hast": { + "version": "3.0.4", + "license": "MIT", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/history": { + "version": "4.7.11", + "license": "MIT" + }, + "node_modules/@types/html-minifier-terser": { + "version": "6.1.0", + "license": "MIT" + }, + "node_modules/@types/http-cache-semantics": { + "version": "4.0.4", + "license": "MIT" + }, + "node_modules/@types/http-errors": { + "version": "2.0.4", + "license": "MIT" + }, + "node_modules/@types/http-proxy": { + "version": "1.17.16", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", + "license": "MIT" + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "license": "MIT" + }, + "node_modules/@types/mdast": { + "version": "4.0.4", + "license": "MIT", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/mdx": { + "version": "2.0.13", + "license": "MIT" + }, + "node_modules/@types/mime": { + "version": "1.3.5", + "license": "MIT" + }, + "node_modules/@types/ms": { + "version": "2.1.0", + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "22.15.17", + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/node-forge": { + "version": "1.3.11", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/parse-json": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", + "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==", + "license": "MIT" + }, + "node_modules/@types/prismjs": { + "version": "1.26.5", + "license": "MIT" + }, + "node_modules/@types/qs": { + "version": "6.9.18", + "license": "MIT" + }, + "node_modules/@types/range-parser": { + "version": "1.2.7", + "license": "MIT" + }, + "node_modules/@types/react": { + "version": "19.1.3", + "license": "MIT", + "dependencies": { + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-router": { + "version": "5.1.20", + "license": "MIT", + "dependencies": { + "@types/history": "^4.7.11", + "@types/react": "*" + } + }, + "node_modules/@types/react-router-config": { + "version": "5.0.11", + "license": "MIT", + "dependencies": { + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router": "^5.1.0" + } + }, + "node_modules/@types/react-router-dom": { + "version": "5.3.3", + "license": "MIT", + "dependencies": { + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router": "*" + } + }, + "node_modules/@types/retry": { + "version": "0.12.0", + "license": "MIT" + }, + "node_modules/@types/sax": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/sax/-/sax-1.2.7.tgz", + "integrity": "sha512-rO73L89PJxeYM3s3pPPjiPgVVcymqU490g0YO5n5By0k2Erzj6tay/4lr1CHAAU4JyOWd1rpQ8bCf6cZfHU96A==", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/send": { + "version": "0.17.4", + "license": "MIT", + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "node_modules/@types/serve-index": { + "version": "1.9.4", + "license": "MIT", + "dependencies": { + "@types/express": "*" + } + }, + "node_modules/@types/serve-static": { + "version": "1.15.7", + "license": "MIT", + "dependencies": { + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" + } + }, + "node_modules/@types/sockjs": { + "version": "0.3.36", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/unist": { + "version": "3.0.3", + "license": "MIT" + }, + "node_modules/@types/ws": { + "version": "8.18.1", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/yargs": { + "version": "17.0.33", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.33.tgz", + "integrity": "sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==", + "license": "MIT", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", + "license": "MIT" + }, + "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/@ungap/structured-clone": { + "version": "1.3.0", + "license": "ISC" + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.14.1", + "license": "MIT", + "dependencies": { + "@webassemblyjs/helper-numbers": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.13.2", + "license": "MIT" + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.13.2", + "license": "MIT" + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.14.1", + "license": "MIT" + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.13.2", + "license": "MIT", + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.13.2", + "@webassemblyjs/helper-api-error": "1.13.2", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.13.2", + "license": "MIT" + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.14.1", + "license": "MIT", + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/wasm-gen": "1.14.1" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.13.2", + "license": "MIT", + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.13.2", + "license": "Apache-2.0", + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.13.2", + "license": "MIT" + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.14.1", + "license": "MIT", + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/helper-wasm-section": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-opt": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1", + "@webassemblyjs/wast-printer": "1.14.1" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.14.1", + "license": "MIT", + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.14.1", + "license": "MIT", + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.14.1", + "license": "MIT", + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-api-error": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.14.1", + "license": "MIT", + "dependencies": { + "@webassemblyjs/ast": "1.14.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "license": "BSD-3-Clause" + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "license": "Apache-2.0" + }, + "node_modules/accepts": { + "version": "1.3.8", + "license": "MIT", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/accepts/node_modules/negotiator": { + "version": "0.6.3", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.14.1", + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "license": "MIT", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.3.4", + "license": "MIT", + "dependencies": { + "acorn": "^8.11.0" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/address": { + "version": "1.2.2", + "license": "MIT", + "engines": { + "node": ">= 10.0.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==", + "license": "MIT", + "engines": { + "node": ">= 14" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "license": "MIT", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "8.17.1", + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats": { + "version": "2.1.1", + "license": "MIT", + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ajv-keywords": { + "version": "5.1.0", + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/algoliasearch": { + "version": "5.32.0", + "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-5.32.0.tgz", + "integrity": "sha512-84xBncKNPBK8Ae89F65+SyVcOihrIbm/3N7to+GpRBHEUXGjA3ydWTMpcRW6jmFzkBQ/eqYy/y+J+NBpJWYjBg==", + "license": "MIT", + "dependencies": { + "@algolia/client-abtesting": "5.32.0", + "@algolia/client-analytics": "5.32.0", + "@algolia/client-common": "5.32.0", + "@algolia/client-insights": "5.32.0", + "@algolia/client-personalization": "5.32.0", + "@algolia/client-query-suggestions": "5.32.0", + "@algolia/client-search": "5.32.0", + "@algolia/ingestion": "1.32.0", + "@algolia/monitoring": "1.32.0", + "@algolia/recommend": "5.32.0", + "@algolia/requester-browser-xhr": "5.32.0", + "@algolia/requester-fetch": "5.32.0", + "@algolia/requester-node-http": "5.32.0" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/algoliasearch-helper": { + "version": "3.26.0", + "resolved": "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.26.0.tgz", + "integrity": "sha512-Rv2x3GXleQ3ygwhkhJubhhYGsICmShLAiqtUuJTUkr9uOCOXyF2E71LVT4XDnVffbknv8XgScP4U0Oxtgm+hIw==", + "license": "MIT", + "dependencies": { + "@algolia/events": "^4.0.1" + }, + "peerDependencies": { + "algoliasearch": ">= 3.1 < 6" + } + }, + "node_modules/ansi-align": { + "version": "3.0.1", + "license": "ISC", + "dependencies": { + "string-width": "^4.1.0" + } + }, + "node_modules/ansi-align/node_modules/string-width": { + "version": "4.2.3", + "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/ansi-align/node_modules/string-width/node_modules/emoji-regex": { + "version": "8.0.0", + "license": "MIT" + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "license": "MIT", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-html-community": { + "version": "0.0.8", + "engines": [ + "node >= 0.8.0" + ], + "license": "Apache-2.0", + "bin": { + "ansi-html": "bin/ansi-html" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", + "license": "MIT" + }, + "node_modules/argparse": { + "version": "2.0.1", + "license": "Python-2.0" + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "license": "MIT" + }, + "node_modules/array-union": { + "version": "2.1.0", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ast-types": { + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz", + "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==", + "license": "MIT", + "dependencies": { + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/astring": { + "version": "1.9.0", + "license": "MIT", + "bin": { + "astring": "bin/astring" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "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==", + "license": "ISC", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/autoprefixer": { + "version": "10.4.21", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.21.tgz", + "integrity": "sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "browserslist": "^4.24.4", + "caniuse-lite": "^1.0.30001702", + "fraction.js": "^4.3.7", + "normalize-range": "^0.1.2", + "picocolors": "^1.1.1", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/axios": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.10.0.tgz", + "integrity": "sha512-/1xYAC4MP/HEG+3duIhFr4ZQXR4sQXOIe+o6sdqzeykGLx6Upp/1p8MHqhINOvGeP7xyNHe7tsiJByc4SSVUxw==", + "license": "MIT", + "dependencies": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/b4a": { + "version": "1.6.7", + "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.7.tgz", + "integrity": "sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg==", + "license": "Apache-2.0" + }, + "node_modules/babel-loader": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-9.2.1.tgz", + "integrity": "sha512-fqe8naHt46e0yIdkjUZYqddSXfej3AHajX+CSO5X7oy0EmPc6o5Xh+RClNoHjnieWz9AW4kZxW9yyFMhVB1QLA==", + "license": "MIT", + "dependencies": { + "find-cache-dir": "^4.0.0", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0", + "webpack": ">=5" + } + }, + "node_modules/babel-plugin-dynamic-import-node": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "license": "MIT", + "dependencies": { + "object.assign": "^4.1.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.14", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.14.tgz", + "integrity": "sha512-Co2Y9wX854ts6U8gAAPXfn0GmAyctHuK8n0Yhfjd6t30g7yvKjspvvOo9yG+z52PZRgFErt7Ka2pYnXCjLKEpg==", + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.27.7", + "@babel/helper-define-polyfill-provider": "^0.6.5", + "semver": "^6.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2/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/babel-plugin-polyfill-corejs3": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.13.0.tgz", + "integrity": "sha512-U+GNwMdSFgzVmfhNm8GJUX88AadB3uo9KpJqS3FaqNIPKgySuvMb+bHPsOmmuWyIcuqZj/pzt1RUIUZns4y2+A==", + "license": "MIT", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.6.5", + "core-js-compat": "^3.43.0" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.5.tgz", + "integrity": "sha512-ISqQ2frbiNU9vIJkzg7dlPpznPZ4jOiUQ1uSmB0fEHeowtN3COYRsXr/xexn64NpU13P06jc/L5TgiJXOgrbEg==", + "license": "MIT", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.6.5" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/bail": { + "version": "2.0.2", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "license": "MIT" + }, + "node_modules/bare-events": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.6.0.tgz", + "integrity": "sha512-EKZ5BTXYExaNqi3I3f9RtEsaI/xBSGjE0XZCZilPzFAV/goswFHuPd9jEZlPIZ/iNZJwDSao9qRiScySz7MbQg==", + "license": "Apache-2.0", + "optional": true + }, + "node_modules/bare-fs": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/bare-fs/-/bare-fs-4.1.6.tgz", + "integrity": "sha512-25RsLF33BqooOEFNdMcEhMpJy8EoR88zSMrnOQOaM3USnOK2VmaJ1uaQEwPA6AQjrv1lXChScosN6CzbwbO9OQ==", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "bare-events": "^2.5.4", + "bare-path": "^3.0.0", + "bare-stream": "^2.6.4" + }, + "engines": { + "bare": ">=1.16.0" + }, + "peerDependencies": { + "bare-buffer": "*" + }, + "peerDependenciesMeta": { + "bare-buffer": { + "optional": true + } + } + }, + "node_modules/bare-os": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/bare-os/-/bare-os-3.6.1.tgz", + "integrity": "sha512-uaIjxokhFidJP+bmmvKSgiMzj2sV5GPHaZVAIktcxcpCyBFFWO+YlikVAdhmUo2vYFvFhOXIAlldqV29L8126g==", + "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.6.5", + "resolved": "https://registry.npmjs.org/bare-stream/-/bare-stream-2.6.5.tgz", + "integrity": "sha512-jSmxKJNJmHySi6hC42zlZnq00rga4jjxcgNZjY9N5WlOe/iOoGRtdwGsHzQv2RlH2KOYMwGUXhf2zXd32BA9RA==", + "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/basic-ftp": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.5.tgz", + "integrity": "sha512-4Bcg1P8xhUuqcii/S0Z9wiHIrQVPMermM1any+MX5GeGD7faD3/msQUDGLol9wOcz4/jbg/WJnGqoJF6LiBdtg==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/batch": { + "version": "0.6.1", + "license": "MIT" + }, + "node_modules/big.js": { + "version": "5.2.2", + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/body-parser": { + "version": "1.20.3", + "license": "MIT", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.13.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/bytes": { + "version": "3.1.2", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "license": "MIT" + }, + "node_modules/bonjour-service": { + "version": "1.3.0", + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "license": "ISC" + }, + "node_modules/boxen": { + "version": "6.2.1", + "license": "MIT", + "dependencies": { + "ansi-align": "^3.0.1", + "camelcase": "^6.2.0", + "chalk": "^4.1.2", + "cli-boxes": "^3.0.0", + "string-width": "^5.0.1", + "type-fest": "^2.5.0", + "widest-line": "^4.0.1", + "wrap-ansi": "^8.0.1" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.25.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.1.tgz", + "integrity": "sha512-KGj0KoOMXLpSNkkEI6Z6mShmQy0bc1I+T7K9N81k4WWMrfz+6fQ6es80B/YLAeRoKvjYE1YSHHOW1qe9xIVzHw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "caniuse-lite": "^1.0.30001726", + "electron-to-chromium": "^1.5.173", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.3" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "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", + "license": "MIT" + }, + "node_modules/bytes": { + "version": "3.0.0", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cacheable-lookup": { + "version": "7.0.0", + "license": "MIT", + "engines": { + "node": ">=14.16" + } + }, + "node_modules/cacheable-request": { + "version": "10.2.14", + "license": "MIT", + "dependencies": { + "@types/http-cache-semantics": "^4.0.2", + "get-stream": "^6.0.1", + "http-cache-semantics": "^4.1.1", + "keyv": "^4.5.3", + "mimic-response": "^4.0.0", + "normalize-url": "^8.0.0", + "responselike": "^3.0.0" + }, + "engines": { + "node": ">=14.16" + } + }, + "node_modules/call-bind": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", + "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.0", + "es-define-property": "^1.0.0", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/camel-case": { + "version": "4.1.2", + "license": "MIT", + "dependencies": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "node_modules/camelcase": { + "version": "6.3.0", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/caniuse-api": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", + "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", + "license": "MIT", + "dependencies": { + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001727", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001727.tgz", + "integrity": "sha512-pB68nIHmbN6L/4C6MH1DokyR3bYqFwjaSs/sWDHGj4CTcFtQUQMuJftVwWkXq7mNWOybD3KhUv3oWHoGxgP14Q==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/ccount": { + "version": "2.0.1", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "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/char-regex": { + "version": "1.0.2", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/character-entities": { + "version": "2.0.2", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-html4": { + "version": "2.1.0", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-legacy": { + "version": "3.0.0", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-reference-invalid": { + "version": "2.0.1", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/cheerio": { + "version": "1.0.0-rc.12", + "license": "MIT", + "dependencies": { + "cheerio-select": "^2.1.0", + "dom-serializer": "^2.0.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "htmlparser2": "^8.0.1", + "parse5": "^7.0.0", + "parse5-htmlparser2-tree-adapter": "^7.0.0" + }, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/cheeriojs/cheerio?sponsor=1" + } + }, + "node_modules/cheerio-select": { + "version": "2.1.0", + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "^1.0.0", + "css-select": "^5.1.0", + "css-what": "^6.1.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "license": "MIT", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chownr": { + "version": "3.0.0", + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.4", + "license": "MIT", + "engines": { + "node": ">=6.0" + } + }, + "node_modules/chromium-bidi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-5.1.0.tgz", + "integrity": "sha512-9MSRhWRVoRPDG0TgzkHrshFSJJNZzfY5UFqUMuksg7zL1yoZIZ3jLB0YAgHclbiAxPI86pBnwDX1tbzoiV8aFw==", + "license": "Apache-2.0", + "dependencies": { + "mitt": "^3.0.1", + "zod": "^3.24.1" + }, + "peerDependencies": { + "devtools-protocol": "*" + } + }, + "node_modules/ci-info": { + "version": "3.9.0", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/clean-css": { + "version": "5.3.3", + "license": "MIT", + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 10.0" + } + }, + "node_modules/clean-css/node_modules/source-map": { + "version": "0.6.1", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-boxes": { + "version": "3.0.0", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-table3": { + "version": "0.6.5", + "license": "MIT", + "dependencies": { + "string-width": "^4.2.0" + }, + "engines": { + "node": "10.* || >= 12.*" + }, + "optionalDependencies": { + "@colors/colors": "1.5.0" + } + }, + "node_modules/cli-table3/node_modules/string-width": { + "version": "4.2.3", + "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/cli-table3/node_modules/string-width/node_modules/emoji-regex": { + "version": "8.0.0", + "license": "MIT" + }, + "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==", + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/cliui/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==", + "license": "MIT" + }, + "node_modules/cliui/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==", + "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/cliui/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==", + "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/clone-deep": { + "version": "4.0.1", + "license": "MIT", + "dependencies": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/clsx": { + "version": "2.1.1", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/collapse-white-space": { + "version": "2.1.0", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "license": "MIT" + }, + "node_modules/colord": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", + "license": "MIT" + }, + "node_modules/colorette": { + "version": "2.0.20", + "license": "MIT" + }, + "node_modules/combine-promises": { + "version": "1.2.0", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/comma-separated-tokens": { + "version": "2.0.3", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/commander": { + "version": "5.1.0", + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/common-path-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz", + "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==", + "license": "ISC" + }, + "node_modules/compressible": { + "version": "2.0.18", + "license": "MIT", + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.8.0", + "license": "MIT", + "dependencies": { + "bytes": "3.1.2", + "compressible": "~2.0.18", + "debug": "2.6.9", + "negotiator": "~0.6.4", + "on-headers": "~1.0.2", + "safe-buffer": "5.2.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/bytes": { + "version": "3.1.2", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "license": "MIT" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "license": "MIT" + }, + "node_modules/config-chain": { + "version": "1.1.13", + "license": "MIT", + "dependencies": { + "ini": "^1.3.4", + "proto-list": "~1.2.1" + } + }, + "node_modules/configstore": { + "version": "6.0.0", + "license": "BSD-2-Clause", + "dependencies": { + "dot-prop": "^6.0.1", + "graceful-fs": "^4.2.6", + "unique-string": "^3.0.0", + "write-file-atomic": "^3.0.3", + "xdg-basedir": "^5.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/yeoman/configstore?sponsor=1" + } + }, + "node_modules/connect-history-api-fallback": { + "version": "2.0.0", + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/consola": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/consola/-/consola-3.4.2.tgz", + "integrity": "sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==", + "license": "MIT", + "engines": { + "node": "^14.18.0 || >=16.10.0" + } + }, + "node_modules/content-disposition": { + "version": "0.5.2", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "license": "MIT" + }, + "node_modules/cookie": { + "version": "0.7.1", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "license": "MIT" + }, + "node_modules/copy-text-to-clipboard": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/copy-text-to-clipboard/-/copy-text-to-clipboard-3.2.0.tgz", + "integrity": "sha512-RnJFp1XR/LOBDckxTib5Qjr/PMfkatD0MUCQgdpqS8MdKiNUzBjAQBEN6oUy+jW7LI93BBG3DtMB2KOOKpGs2Q==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/copy-webpack-plugin": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", + "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", + "license": "MIT", + "dependencies": { + "fast-glob": "^3.2.11", + "glob-parent": "^6.0.1", + "globby": "^13.1.1", + "normalize-path": "^3.0.0", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + } + }, + "node_modules/copy-webpack-plugin/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==", + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/copy-webpack-plugin/node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "license": "MIT", + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/copy-webpack-plugin/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/core-js": { + "version": "3.42.0", + "hasInstallScript": true, + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-compat": { + "version": "3.44.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.44.0.tgz", + "integrity": "sha512-JepmAj2zfl6ogy34qfWtcE7nHKAJnKsQFRn++scjVS2bZFllwptzw61BZcZFYBPpUznLfAvh0LGhxKppk04ClA==", + "license": "MIT", + "dependencies": { + "browserslist": "^4.25.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-pure": { + "version": "3.44.0", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.44.0.tgz", + "integrity": "sha512-gvMQAGB4dfVUxpYD0k3Fq8J+n5bB6Ytl15lqlZrOIXFzxOhtPaObfkQGHtMRdyjIf7z2IeNULwi1jEwyS+ltKQ==", + "hasInstallScript": true, + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "license": "MIT" + }, + "node_modules/cosmiconfig": { + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", + "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", + "license": "MIT", + "dependencies": { + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/crypto-random-string": { + "version": "4.0.0", + "license": "MIT", + "dependencies": { + "type-fest": "^1.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/crypto-random-string/node_modules/type-fest": { + "version": "1.4.0", + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/css-blank-pseudo": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-7.0.1.tgz", + "integrity": "sha512-jf+twWGDf6LDoXDUode+nc7ZlrqfaNphrBIBrcmeP3D8yw1uPaix1gCC8LUQUGQ6CycuK2opkbFFWFuq/a94ag==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "postcss-selector-parser": "^7.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/css-blank-pseudo/node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/css-declaration-sorter": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-7.2.0.tgz", + "integrity": "sha512-h70rUM+3PNFuaBDTLe8wF/cdWu+dOZmb7pJt8Z2sedYbAcQVQV/tEchueg3GWxwqS0cxtbxmaHEdkNACqcvsow==", + "license": "ISC", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.0.9" + } + }, + "node_modules/css-has-pseudo": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-7.0.2.tgz", + "integrity": "sha512-nzol/h+E0bId46Kn2dQH5VElaknX2Sr0hFuB/1EomdC7j+OISt2ZzK7EHX9DZDY53WbIVAR7FYKSO2XnSf07MQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/selector-specificity": "^5.0.0", + "postcss-selector-parser": "^7.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/css-has-pseudo/node_modules/@csstools/selector-specificity": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-5.0.0.tgz", + "integrity": "sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss-selector-parser": "^7.0.0" + } + }, + "node_modules/css-has-pseudo/node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/css-loader": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.11.0.tgz", + "integrity": "sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g==", + "license": "MIT", + "dependencies": { + "icss-utils": "^5.1.0", + "postcss": "^8.4.33", + "postcss-modules-extract-imports": "^3.1.0", + "postcss-modules-local-by-default": "^4.0.5", + "postcss-modules-scope": "^3.2.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "@rspack/core": "0.x || 1.x", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true + }, + "webpack": { + "optional": true + } + } + }, + "node_modules/css-minimizer-webpack-plugin": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-5.0.1.tgz", + "integrity": "sha512-3caImjKFQkS+ws1TGcFn0V1HyDJFq1Euy589JlD6/3rV2kj+w7r5G9WDMgSHvpvXHNZ2calVypZWuEDQd9wfLg==", + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.18", + "cssnano": "^6.0.1", + "jest-worker": "^29.4.3", + "postcss": "^8.4.24", + "schema-utils": "^4.0.1", + "serialize-javascript": "^6.0.1" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "@parcel/css": { + "optional": true + }, + "@swc/css": { + "optional": true + }, + "clean-css": { + "optional": true + }, + "csso": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "lightningcss": { + "optional": true + } + } + }, + "node_modules/css-minimizer-webpack-plugin/node_modules/jest-worker": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", + "license": "MIT", + "dependencies": { + "@types/node": "*", + "jest-util": "^29.7.0", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/css-minimizer-webpack-plugin/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/css-prefers-color-scheme": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-10.0.0.tgz", + "integrity": "sha512-VCtXZAWivRglTZditUfB4StnsWr6YVZ2PRtuxQLKTNRdtAf8tpzaVPE9zXIF3VaSc7O70iK/j1+NXxyQCqdPjQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/css-select": { + "version": "5.1.0", + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-tree": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", + "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==", + "license": "MIT", + "dependencies": { + "mdn-data": "2.0.30", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" + } + }, + "node_modules/css-what": { + "version": "6.1.0", + "license": "BSD-2-Clause", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cssdb": { + "version": "8.3.1", + "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-8.3.1.tgz", + "integrity": "sha512-XnDRQMXucLueX92yDe0LPKupXetWoFOgawr4O4X41l5TltgK2NVbJJVDnnOywDYfW1sTJ28AcXGKOqdRKwCcmQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + } + ], + "license": "MIT-0" + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "license": "MIT", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssnano": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-6.1.2.tgz", + "integrity": "sha512-rYk5UeX7VAM/u0lNqewCdasdtPK81CgX8wJFLEIXHbV2oldWRgJAsZrdhRXkV1NJzA2g850KiFm9mMU2HxNxMA==", + "license": "MIT", + "dependencies": { + "cssnano-preset-default": "^6.1.2", + "lilconfig": "^3.1.1" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/cssnano" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/cssnano-preset-advanced": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-6.1.2.tgz", + "integrity": "sha512-Nhao7eD8ph2DoHolEzQs5CfRpiEP0xa1HBdnFZ82kvqdmbwVBUr2r1QuQ4t1pi+D1ZpqpcO4T+wy/7RxzJ/WPQ==", + "license": "MIT", + "dependencies": { + "autoprefixer": "^10.4.19", + "browserslist": "^4.23.0", + "cssnano-preset-default": "^6.1.2", + "postcss-discard-unused": "^6.0.5", + "postcss-merge-idents": "^6.0.3", + "postcss-reduce-idents": "^6.0.3", + "postcss-zindex": "^6.0.2" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/cssnano-preset-default": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-6.1.2.tgz", + "integrity": "sha512-1C0C+eNaeN8OcHQa193aRgYexyJtU8XwbdieEjClw+J9d94E41LwT6ivKH0WT+fYwYWB0Zp3I3IZ7tI/BbUbrg==", + "license": "MIT", + "dependencies": { + "browserslist": "^4.23.0", + "css-declaration-sorter": "^7.2.0", + "cssnano-utils": "^4.0.2", + "postcss-calc": "^9.0.1", + "postcss-colormin": "^6.1.0", + "postcss-convert-values": "^6.1.0", + "postcss-discard-comments": "^6.0.2", + "postcss-discard-duplicates": "^6.0.3", + "postcss-discard-empty": "^6.0.3", + "postcss-discard-overridden": "^6.0.2", + "postcss-merge-longhand": "^6.0.5", + "postcss-merge-rules": "^6.1.1", + "postcss-minify-font-values": "^6.1.0", + "postcss-minify-gradients": "^6.0.3", + "postcss-minify-params": "^6.1.0", + "postcss-minify-selectors": "^6.0.4", + "postcss-normalize-charset": "^6.0.2", + "postcss-normalize-display-values": "^6.0.2", + "postcss-normalize-positions": "^6.0.2", + "postcss-normalize-repeat-style": "^6.0.2", + "postcss-normalize-string": "^6.0.2", + "postcss-normalize-timing-functions": "^6.0.2", + "postcss-normalize-unicode": "^6.1.0", + "postcss-normalize-url": "^6.0.2", + "postcss-normalize-whitespace": "^6.0.2", + "postcss-ordered-values": "^6.0.2", + "postcss-reduce-initial": "^6.1.0", + "postcss-reduce-transforms": "^6.0.2", + "postcss-svgo": "^6.0.3", + "postcss-unique-selectors": "^6.0.4" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/cssnano-utils": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-4.0.2.tgz", + "integrity": "sha512-ZR1jHg+wZ8o4c3zqf1SIUSTIvm/9mU343FMR6Obe/unskbvpGhZOo1J6d/r8D1pzkRQYuwbcH3hToOuoA2G7oQ==", + "license": "MIT", + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/csso": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz", + "integrity": "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==", + "license": "MIT", + "dependencies": { + "css-tree": "~2.2.0" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/csso/node_modules/css-tree": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.2.1.tgz", + "integrity": "sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==", + "license": "MIT", + "dependencies": { + "mdn-data": "2.0.28", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/csso/node_modules/mdn-data": { + "version": "2.0.28", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.28.tgz", + "integrity": "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==", + "license": "CC0-1.0" + }, + "node_modules/csstype": { + "version": "3.1.3", + "license": "MIT" + }, + "node_modules/data-uri-to-buffer": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-6.0.2.tgz", + "integrity": "sha512-7hvf7/GW8e86rW0ptuwS3OcBGDjIi6SZva7hCyWC0yYry2cOPmLIjXAUHI6DK2HsnwJd9ifmt57i8eV2n4YNpw==", + "license": "MIT", + "engines": { + "node": ">= 14" + } + }, + "node_modules/debounce": { + "version": "1.2.1", + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", + "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decode-named-character-reference": { + "version": "1.1.0", + "license": "MIT", + "dependencies": { + "character-entities": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/decompress-response": { + "version": "6.0.0", + "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", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "license": "MIT", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/default-gateway": { + "version": "6.0.3", + "license": "BSD-2-Clause", + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/defer-to-connect": { + "version": "2.0.1", + "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", + "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-lazy-prop": { + "version": "2.0.0", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "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", + "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/degenerator": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-5.0.1.tgz", + "integrity": "sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==", + "license": "MIT", + "dependencies": { + "ast-types": "^0.13.4", + "escodegen": "^2.1.0", + "esprima": "^4.0.1" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/del": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", + "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", + "license": "MIT", + "dependencies": { + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/depd": { + "version": "2.0.0", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/dequal": { + "version": "2.0.3", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "license": "MIT", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-libc": { + "version": "2.0.4", + "license": "Apache-2.0", + "engines": { + "node": ">=8" + } + }, + "node_modules/detect-node": { + "version": "2.1.0", + "license": "MIT" + }, + "node_modules/detect-port": { + "version": "1.6.1", + "license": "MIT", + "dependencies": { + "address": "^1.0.1", + "debug": "4" + }, + "bin": { + "detect": "bin/detect-port.js", + "detect-port": "bin/detect-port.js" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/detect-port-alt": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz", + "integrity": "sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==", + "license": "MIT", + "dependencies": { + "address": "^1.0.1", + "debug": "^2.6.0" + }, + "bin": { + "detect": "bin/detect-port", + "detect-port": "bin/detect-port" + }, + "engines": { + "node": ">= 4.2.1" + } + }, + "node_modules/detect-port-alt/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/detect-port-alt/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" + }, + "node_modules/devlop": { + "version": "1.1.0", + "license": "MIT", + "dependencies": { + "dequal": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/devtools-protocol": { + "version": "0.0.1464554", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1464554.tgz", + "integrity": "sha512-CAoP3lYfwAGQTaAXYvA6JZR0fjGUb7qec1qf4mToyoH2TZgUFeIqYcjh6f9jNuhHfuZiEdH+PONHYrLhRQX6aw==", + "license": "BSD-3-Clause" + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "license": "MIT", + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dns-packet": { + "version": "5.6.1", + "license": "MIT", + "dependencies": { + "@leichtgewicht/ip-codec": "^2.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/dom-converter": { + "version": "0.2.0", + "license": "MIT", + "dependencies": { + "utila": "~0.4" + } + }, + "node_modules/dom-serializer": { + "version": "2.0.0", + "license": "MIT", + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "license": "BSD-2-Clause" + }, + "node_modules/domhandler": { + "version": "5.0.3", + "license": "BSD-2-Clause", + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "3.2.2", + "license": "BSD-2-Clause", + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/dot-case": { + "version": "3.0.4", + "license": "MIT", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/dot-prop": { + "version": "6.0.1", + "license": "MIT", + "dependencies": { + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/dot-prop/node_modules/is-obj": { + "version": "2.0.0", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "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/duplexer": { + "version": "0.1.2", + "license": "MIT" + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "license": "MIT" + }, + "node_modules/ee-first": { + "version": "1.1.1", + "license": "MIT" + }, + "node_modules/electron-to-chromium": { + "version": "1.5.182", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.182.tgz", + "integrity": "sha512-Lv65Btwv9W4J9pyODI6EWpdnhfvrve/us5h1WspW8B2Fb0366REPtY3hX7ounk1CkV/TBjWCEvCBBbYbmV0qCA==", + "license": "ISC" + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "license": "MIT" + }, + "node_modules/emojilib": { + "version": "2.4.0", + "license": "MIT" + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/emoticon": { + "version": "4.1.0", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/encodeurl": { + "version": "2.0.0", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "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/enhanced-resolve": { + "version": "5.18.1", + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/entities": { + "version": "4.5.0", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "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/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-module-lexer": { + "version": "1.7.0", + "license": "MIT" + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "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/esast-util-from-estree": { + "version": "2.0.0", + "license": "MIT", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "devlop": "^1.0.0", + "estree-util-visit": "^2.0.0", + "unist-util-position-from-estree": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/esast-util-from-js": { + "version": "2.0.1", + "license": "MIT", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "acorn": "^8.0.0", + "esast-util-from-estree": "^2.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-goat": { + "version": "4.0.0", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "license": "MIT" + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "license": "BSD-2-Clause", + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/escodegen/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/escodegen/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==", + "license": "BSD-3-Clause", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "license": "BSD-2-Clause", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-util-attach-comments": { + "version": "3.0.0", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/estree-util-build-jsx": { + "version": "3.0.1", + "license": "MIT", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "devlop": "^1.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "estree-walker": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/estree-util-is-identifier-name": { + "version": "3.0.0", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/estree-util-scope": { + "version": "1.0.0", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "devlop": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/estree-util-to-js": { + "version": "2.0.0", + "license": "MIT", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "astring": "^1.8.0", + "source-map": "^0.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/estree-util-value-to-estree": { + "version": "3.4.0", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/remcohaszing" + } + }, + "node_modules/estree-util-visit": { + "version": "2.0.0", + "license": "MIT", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/estree-walker": { + "version": "3.0.3", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.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==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eta": { + "version": "2.2.0", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "url": "https://github.com/eta-dev/eta?sponsor=1" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/eval": { + "version": "0.1.8", + "dependencies": { + "@types/node": "*", + "require-like": ">= 0.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "license": "MIT" + }, + "node_modules/events": { + "version": "3.3.0", + "license": "MIT", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "license": "MIT", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/express": { + "version": "4.21.2", + "license": "MIT", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.3", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.7.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.3.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.12", + "proxy-addr": "~2.0.7", + "qs": "6.13.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.19.0", + "serve-static": "1.16.2", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/express/node_modules/content-disposition": { + "version": "0.5.4", + "license": "MIT", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "license": "MIT" + }, + "node_modules/express/node_modules/path-to-regexp": { + "version": "0.1.12", + "license": "MIT" + }, + "node_modules/express/node_modules/range-parser": { + "version": "1.2.1", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "license": "MIT" + }, + "node_modules/extend-shallow": { + "version": "2.0.1", + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.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/extract-zip/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/fast-deep-equal": { + "version": "3.1.3", + "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-glob": { + "version": "3.3.3", + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "license": "MIT" + }, + "node_modules/fast-uri": { + "version": "3.0.6", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/fastq": { + "version": "1.19.1", + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fault": { + "version": "2.0.1", + "license": "MIT", + "dependencies": { + "format": "^0.2.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/faye-websocket": { + "version": "0.11.4", + "license": "Apache-2.0", + "dependencies": { + "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "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/feed": { + "version": "4.2.2", + "license": "MIT", + "dependencies": { + "xml-js": "^1.6.11" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/file-loader": { + "version": "6.2.0", + "license": "MIT", + "dependencies": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/file-loader/node_modules/schema-utils": { + "version": "3.3.0", + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/file-loader/node_modules/schema-utils/node_modules/ajv": { + "version": "6.12.6", + "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/file-loader/node_modules/schema-utils/node_modules/ajv-keywords": { + "version": "3.5.2", + "license": "MIT", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/file-loader/node_modules/schema-utils/node_modules/ajv/node_modules/json-schema-traverse": { + "version": "0.4.1", + "license": "MIT" + }, + "node_modules/filesize": { + "version": "8.0.7", + "resolved": "https://registry.npmjs.org/filesize/-/filesize-8.0.7.tgz", + "integrity": "sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ==", + "license": "BSD-3-Clause", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.3.1", + "license": "MIT", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "license": "MIT" + }, + "node_modules/find-cache-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-4.0.0.tgz", + "integrity": "sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==", + "license": "MIT", + "dependencies": { + "common-path-prefix": "^3.0.0", + "pkg-dir": "^7.0.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/find-up": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", + "license": "MIT", + "dependencies": { + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat": { + "version": "5.0.2", + "license": "BSD-3-Clause", + "bin": { + "flat": "cli.js" + } + }, + "node_modules/follow-redirects": { + "version": "1.15.9", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "license": "MIT", + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/fork-ts-checker-webpack-plugin": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.3.tgz", + "integrity": "sha512-SbH/l9ikmMWycd5puHJKTkZJKddF4iRLyW3DeZ08HTI7NGyLS38MXd/KGgeWumQO7YNQbW2u/NtPT2YowbPaGQ==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.8.3", + "@types/json-schema": "^7.0.5", + "chalk": "^4.1.0", + "chokidar": "^3.4.2", + "cosmiconfig": "^6.0.0", + "deepmerge": "^4.2.2", + "fs-extra": "^9.0.0", + "glob": "^7.1.6", + "memfs": "^3.1.2", + "minimatch": "^3.0.4", + "schema-utils": "2.7.0", + "semver": "^7.3.2", + "tapable": "^1.0.0" + }, + "engines": { + "node": ">=10", + "yarn": ">=1.0.0" + }, + "peerDependencies": { + "eslint": ">= 6", + "typescript": ">= 2.7", + "vue-template-compiler": "*", + "webpack": ">= 4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + }, + "vue-template-compiler": { + "optional": true + } + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "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/fork-ts-checker-webpack-plugin/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==", + "license": "MIT", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/cosmiconfig": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", + "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==", + "license": "MIT", + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.7.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/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==", + "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/fork-ts-checker-webpack-plugin/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==", + "license": "MIT" + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/schema-utils": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", + "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.4", + "ajv": "^6.12.2", + "ajv-keywords": "^3.4.1" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "license": "ISC", + "engines": { + "node": ">= 6" + } + }, + "node_modules/form-data": { + "version": "4.0.2", + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/form-data-encoder": { + "version": "2.1.4", + "license": "MIT", + "engines": { + "node": ">= 14.17" + } + }, + "node_modules/format": { + "version": "0.2.2", + "engines": { + "node": ">=0.4.x" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", + "license": "MIT", + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-extra": { + "version": "11.3.0", + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/fs-monkey": { + "version": "1.0.6", + "license": "Unlicense" + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "license": "ISC" + }, + "node_modules/function-bind": { + "version": "1.1.2", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "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==", + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "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-own-enumerable-property-symbols": { + "version": "3.0.2", + "license": "ISC" + }, + "node_modules/get-proto": { + "version": "1.0.1", + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-uri": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-6.0.5.tgz", + "integrity": "sha512-b1O07XYq8eRuVzBNgJLstU6FYc1tS6wnMtF1I1D9lE8LxZSOGZ7LhxN54yPP6mGw5f2CkXY2BQUL9Fx41qvcIg==", + "license": "MIT", + "dependencies": { + "basic-ftp": "^5.0.2", + "data-uri-to-buffer": "^6.0.2", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/github-slugger": { + "version": "1.5.0", + "license": "ISC" + }, + "node_modules/glob": { + "version": "7.2.3", + "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": "5.1.2", + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "license": "BSD-2-Clause" + }, + "node_modules/global-dirs": { + "version": "3.0.1", + "license": "MIT", + "dependencies": { + "ini": "2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/global-dirs/node_modules/ini": { + "version": "2.0.0", + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/global-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "license": "MIT", + "dependencies": { + "global-prefix": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "license": "MIT", + "dependencies": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/global-prefix/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "license": "MIT", + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/got": { + "version": "12.6.1", + "license": "MIT", + "dependencies": { + "@sindresorhus/is": "^5.2.0", + "@szmarczak/http-timer": "^5.0.1", + "cacheable-lookup": "^7.0.0", + "cacheable-request": "^10.2.8", + "decompress-response": "^6.0.0", + "form-data-encoder": "^2.1.2", + "get-stream": "^6.0.1", + "http2-wrapper": "^2.1.10", + "lowercase-keys": "^3.0.0", + "p-cancelable": "^3.0.0", + "responselike": "^3.0.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sindresorhus/got?sponsor=1" + } + }, + "node_modules/got/node_modules/@sindresorhus/is": { + "version": "5.6.0", + "license": "MIT", + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "license": "ISC" + }, + "node_modules/gray-matter": { + "version": "4.0.3", + "license": "MIT", + "dependencies": { + "js-yaml": "^3.13.1", + "kind-of": "^6.0.2", + "section-matter": "^1.0.0", + "strip-bom-string": "^1.0.0" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/gray-matter/node_modules/js-yaml": { + "version": "3.14.1", + "license": "MIT", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/gray-matter/node_modules/js-yaml/node_modules/argparse": { + "version": "1.0.10", + "license": "MIT", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/gzip-size": { + "version": "6.0.0", + "license": "MIT", + "dependencies": { + "duplexer": "^0.1.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/handle-thing": { + "version": "2.0.1", + "license": "MIT" + }, + "node_modules/has-flag": { + "version": "4.0.0", + "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", + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-yarn": { + "version": "3.0.0", + "license": "MIT", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hast-util-from-parse5": { + "version": "8.0.3", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "devlop": "^1.0.0", + "hastscript": "^9.0.0", + "property-information": "^7.0.0", + "vfile": "^6.0.0", + "vfile-location": "^5.0.0", + "web-namespaces": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-parse-selector": { + "version": "4.0.0", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-raw": { + "version": "9.1.0", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "@ungap/structured-clone": "^1.0.0", + "hast-util-from-parse5": "^8.0.0", + "hast-util-to-parse5": "^8.0.0", + "html-void-elements": "^3.0.0", + "mdast-util-to-hast": "^13.0.0", + "parse5": "^7.0.0", + "unist-util-position": "^5.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-estree": { + "version": "3.1.3", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "devlop": "^1.0.0", + "estree-util-attach-comments": "^3.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "hast-util-whitespace": "^3.0.0", + "mdast-util-mdx-expression": "^2.0.0", + "mdast-util-mdx-jsx": "^3.0.0", + "mdast-util-mdxjs-esm": "^2.0.0", + "property-information": "^7.0.0", + "space-separated-tokens": "^2.0.0", + "style-to-js": "^1.0.0", + "unist-util-position": "^5.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-jsx-runtime": { + "version": "2.3.6", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "devlop": "^1.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "hast-util-whitespace": "^3.0.0", + "mdast-util-mdx-expression": "^2.0.0", + "mdast-util-mdx-jsx": "^3.0.0", + "mdast-util-mdxjs-esm": "^2.0.0", + "property-information": "^7.0.0", + "space-separated-tokens": "^2.0.0", + "style-to-js": "^1.0.0", + "unist-util-position": "^5.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-parse5": { + "version": "8.0.0", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "devlop": "^1.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-parse5/node_modules/property-information": { + "version": "6.5.0", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/hast-util-whitespace": { + "version": "3.0.0", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hastscript": { + "version": "9.0.1", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-parse-selector": "^4.0.0", + "property-information": "^7.0.0", + "space-separated-tokens": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/he": { + "version": "1.2.0", + "license": "MIT", + "bin": { + "he": "bin/he" + } + }, + "node_modules/history": { + "version": "4.10.1", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.1.2", + "loose-envify": "^1.2.0", + "resolve-pathname": "^3.0.0", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.0", + "value-equal": "^1.0.1" + } + }, + "node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "license": "BSD-3-Clause", + "dependencies": { + "react-is": "^16.7.0" + } + }, + "node_modules/hpack.js": { + "version": "2.1.6", + "license": "MIT", + "dependencies": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, + "node_modules/hpack.js/node_modules/readable-stream": { + "version": "2.3.8", + "license": "MIT", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/hpack.js/node_modules/readable-stream/node_modules/isarray": { + "version": "1.0.0", + "license": "MIT" + }, + "node_modules/hpack.js/node_modules/readable-stream/node_modules/safe-buffer": { + "version": "5.1.2", + "license": "MIT" + }, + "node_modules/hpack.js/node_modules/readable-stream/node_modules/string_decoder": { + "version": "1.1.1", + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/html-entities": { + "version": "2.6.0", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/mdevils" + }, + { + "type": "patreon", + "url": "https://patreon.com/mdevils" + } + ], + "license": "MIT" + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "license": "MIT" + }, + "node_modules/html-minifier-terser": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-7.2.0.tgz", + "integrity": "sha512-tXgn3QfqPIpGl9o+K5tpcj3/MN4SfLtsx2GWwBC3SSd0tXQGyF3gsSqad8loJgKZGM3ZxbYDd5yhiBIdWpmvLA==", + "license": "MIT", + "dependencies": { + "camel-case": "^4.1.2", + "clean-css": "~5.3.2", + "commander": "^10.0.0", + "entities": "^4.4.0", + "param-case": "^3.0.4", + "relateurl": "^0.2.7", + "terser": "^5.15.1" + }, + "bin": { + "html-minifier-terser": "cli.js" + }, + "engines": { + "node": "^14.13.1 || >=16.0.0" + } + }, + "node_modules/html-minifier-terser/node_modules/commander": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", + "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", + "license": "MIT", + "engines": { + "node": ">=14" + } + }, + "node_modules/html-tags": { + "version": "3.3.1", + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/html-void-elements": { + "version": "3.0.0", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/html-webpack-plugin": { + "version": "5.6.3", + "license": "MIT", + "dependencies": { + "@types/html-minifier-terser": "^6.0.0", + "html-minifier-terser": "^6.0.2", + "lodash": "^4.17.21", + "pretty-error": "^4.0.0", + "tapable": "^2.0.0" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/html-webpack-plugin" + }, + "peerDependencies": { + "@rspack/core": "0.x || 1.x", + "webpack": "^5.20.0" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true + }, + "webpack": { + "optional": true + } + } + }, + "node_modules/html-webpack-plugin/node_modules/html-minifier-terser": { + "version": "6.1.0", + "license": "MIT", + "dependencies": { + "camel-case": "^4.1.2", + "clean-css": "^5.2.2", + "commander": "^8.3.0", + "he": "^1.2.0", + "param-case": "^3.0.4", + "relateurl": "^0.2.7", + "terser": "^5.10.0" + }, + "bin": { + "html-minifier-terser": "cli.js" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/html-webpack-plugin/node_modules/html-minifier-terser/node_modules/commander": { + "version": "8.3.0", + "license": "MIT", + "engines": { + "node": ">= 12" + } + }, + "node_modules/htmlparser2": { + "version": "8.0.2", + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "license": "MIT", + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "entities": "^4.4.0" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.2.0", + "license": "BSD-2-Clause" + }, + "node_modules/http-deceiver": { + "version": "1.2.7", + "license": "MIT" + }, + "node_modules/http-errors": { + "version": "2.0.0", + "license": "MIT", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-parser-js": { + "version": "0.5.10", + "license": "MIT" + }, + "node_modules/http-proxy": { + "version": "1.18.1", + "license": "MIT", + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "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==", + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/http-proxy-middleware": { + "version": "2.0.9", + "license": "MIT", + "dependencies": { + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "@types/express": "^4.17.13" + }, + "peerDependenciesMeta": { + "@types/express": { + "optional": true + } + } + }, + "node_modules/http-proxy-middleware/node_modules/is-plain-obj": { + "version": "3.0.0", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/http2-wrapper": { + "version": "2.2.1", + "license": "MIT", + "dependencies": { + "quick-lru": "^5.1.1", + "resolve-alpn": "^1.2.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==", + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "license": "Apache-2.0", + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "license": "ISC", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/ignore": { + "version": "5.3.2", + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/image-size": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-2.0.2.tgz", + "integrity": "sha512-IRqXKlaXwgSMAMtpNzZa1ZAe8m+Sa1770Dhk8VkSsP9LS+iHD62Zd8FQKs8fbPiagBE7BzoFX23cxFnwshpV6w==", + "license": "MIT", + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=16.x" + } + }, + "node_modules/immer": { + "version": "9.0.21", + "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.21.tgz", + "integrity": "sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/immer" + } + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "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/import-lazy": { + "version": "4.0.0", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/infima": { + "version": "0.2.0-alpha.45", + "resolved": "https://registry.npmjs.org/infima/-/infima-0.2.0-alpha.45.tgz", + "integrity": "sha512-uyH0zfr1erU1OohLk0fT4Rrb94AOhguWNOcD9uGrSpRvNB+6gZXUoJX5J0NtvzBO10YZ9PgvA4NFgt+fYg8ojw==", + "license": "MIT", + "engines": { + "node": ">=12" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "license": "ISC" + }, + "node_modules/ini": { + "version": "1.3.8", + "license": "ISC" + }, + "node_modules/inline-style-parser": { + "version": "0.2.4", + "license": "MIT" + }, + "node_modules/interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/invariant": { + "version": "2.2.4", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.0.0" + } + }, + "node_modules/ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", + "license": "MIT", + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/ip-address/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" + }, + "node_modules/ipaddr.js": { + "version": "2.2.0", + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, + "node_modules/is-alphabetical": { + "version": "2.0.1", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-alphanumerical": { + "version": "2.0.1", + "license": "MIT", + "dependencies": { + "is-alphabetical": "^2.0.0", + "is-decimal": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "license": "MIT" + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "license": "MIT", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-ci": { + "version": "3.0.1", + "license": "MIT", + "dependencies": { + "ci-info": "^3.2.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-decimal": { + "version": "2.0.1", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "license": "MIT", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-hexadecimal": { + "version": "2.0.1", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-installed-globally": { + "version": "0.4.0", + "license": "MIT", + "dependencies": { + "global-dirs": "^3.0.0", + "is-path-inside": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-npm": { + "version": "6.0.0", + "license": "MIT", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-obj": { + "version": "1.0.1", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-path-cwd": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-obj": { + "version": "4.1.0", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "license": "MIT", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-regexp": { + "version": "1.0.0", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-root": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", + "integrity": "sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "license": "MIT" + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "license": "MIT", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-yarn-global": { + "version": "0.4.1", + "license": "MIT", + "engines": { + "node": ">=12" + } + }, + "node_modules/isarray": { + "version": "0.0.1", + "license": "MIT" + }, + "node_modules/isexe": { + "version": "2.0.0", + "license": "ISC" + }, + "node_modules/isobject": { + "version": "3.0.1", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jest-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker": { + "version": "27.5.1", + "license": "MIT", + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/jiti": { + "version": "1.21.7", + "license": "MIT", + "bin": { + "jiti": "bin/jiti.js" + } + }, + "node_modules/joi": { + "version": "17.13.3", + "license": "BSD-3-Clause", + "dependencies": { + "@hapi/hoek": "^9.3.0", + "@hapi/topo": "^5.1.0", + "@sideway/address": "^4.1.5", + "@sideway/formula": "^3.0.1", + "@sideway/pinpoint": "^2.0.0" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", + "license": "MIT" + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "license": "MIT" + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "license": "MIT" + }, + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "license": "MIT" + }, + "node_modules/json5": { + "version": "2.2.3", + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "license": "MIT", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/latest-version": { + "version": "7.0.0", + "license": "MIT", + "dependencies": { + "package-json": "^8.1.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/launch-editor": { + "version": "2.10.0", + "license": "MIT", + "dependencies": { + "picocolors": "^1.0.0", + "shell-quote": "^1.8.1" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/lightningcss": { + "version": "1.29.2", + "license": "MPL-2.0", + "dependencies": { + "detect-libc": "^2.0.3" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "lightningcss-darwin-arm64": "1.29.2", + "lightningcss-darwin-x64": "1.29.2", + "lightningcss-freebsd-x64": "1.29.2", + "lightningcss-linux-arm-gnueabihf": "1.29.2", + "lightningcss-linux-arm64-gnu": "1.29.2", + "lightningcss-linux-arm64-musl": "1.29.2", + "lightningcss-linux-x64-gnu": "1.29.2", + "lightningcss-linux-x64-musl": "1.29.2", + "lightningcss-win32-arm64-msvc": "1.29.2", + "lightningcss-win32-x64-msvc": "1.29.2" + } + }, + "node_modules/lightningcss-linux-x64-gnu": { + "version": "1.29.2", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-musl": { + "version": "1.29.2", + "cpu": [ + "x64" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lilconfig": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.3.tgz", + "integrity": "sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==", + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "license": "MIT" + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "license": "MIT", + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "license": "MIT", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/locate-path": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", + "license": "MIT", + "dependencies": { + "p-locate": "^6.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "license": "MIT" + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "license": "MIT" + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "license": "MIT" + }, + "node_modules/lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==", + "license": "MIT" + }, + "node_modules/longest-streak": { + "version": "3.1.0", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "license": "MIT", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lower-case": { + "version": "2.0.2", + "license": "MIT", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/lowercase-keys": { + "version": "3.0.0", + "license": "MIT", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/lru-cache/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "license": "ISC" + }, + "node_modules/magic-string": { + "version": "0.30.17", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0" + } + }, + "node_modules/markdown-extensions": { + "version": "2.0.0", + "license": "MIT", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/markdown-table": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-2.0.0.tgz", + "integrity": "sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==", + "license": "MIT", + "dependencies": { + "repeat-string": "^1.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/mdast-util-directive": { + "version": "3.1.0", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "ccount": "^2.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "parse-entities": "^4.0.0", + "stringify-entities": "^4.0.0", + "unist-util-visit-parents": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-find-and-replace": { + "version": "3.0.2", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "escape-string-regexp": "^5.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-find-and-replace/node_modules/escape-string-regexp": { + "version": "5.0.0", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/mdast-util-from-markdown": { + "version": "2.0.2", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark": "^4.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-decode-string": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-from-markdown/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/mdast-util-frontmatter": { + "version": "2.0.1", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "escape-string-regexp": "^5.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "micromark-extension-frontmatter": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-frontmatter/node_modules/escape-string-regexp": { + "version": "5.0.0", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/mdast-util-gfm": { + "version": "3.1.0", + "license": "MIT", + "dependencies": { + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-gfm-autolink-literal": "^2.0.0", + "mdast-util-gfm-footnote": "^2.0.0", + "mdast-util-gfm-strikethrough": "^2.0.0", + "mdast-util-gfm-table": "^2.0.0", + "mdast-util-gfm-task-list-item": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-autolink-literal": { + "version": "2.0.1", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "ccount": "^2.0.0", + "devlop": "^1.0.0", + "mdast-util-find-and-replace": "^3.0.0", + "micromark-util-character": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-autolink-literal/node_modules/micromark-util-character": { + "version": "2.1.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/mdast-util-gfm-autolink-literal/node_modules/micromark-util-character/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/mdast-util-gfm-footnote": { + "version": "2.1.0", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.1.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-strikethrough": { + "version": "2.0.0", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-table": { + "version": "2.0.0", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "markdown-table": "^3.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-gfm-table/node_modules/markdown-table": { + "version": "3.0.4", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/mdast-util-gfm-task-list-item": { + "version": "2.0.0", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-mdx": { + "version": "3.0.0", + "license": "MIT", + "dependencies": { + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-mdx-expression": "^2.0.0", + "mdast-util-mdx-jsx": "^3.0.0", + "mdast-util-mdxjs-esm": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-mdx-expression": { + "version": "2.0.1", + "license": "MIT", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-mdx-jsx": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "ccount": "^2.0.0", + "devlop": "^1.1.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "parse-entities": "^4.0.0", + "stringify-entities": "^4.0.0", + "unist-util-stringify-position": "^4.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-mdxjs-esm": { + "version": "2.0.1", + "license": "MIT", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-phrasing": { + "version": "4.1.0", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-hast": { + "version": "13.2.0", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "@ungap/structured-clone": "^1.0.0", + "devlop": "^1.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "trim-lines": "^3.0.0", + "unist-util-position": "^5.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-markdown": { + "version": "2.1.2", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "longest-streak": "^3.0.0", + "mdast-util-phrasing": "^4.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-decode-string": "^2.0.0", + "unist-util-visit": "^5.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-string": { + "version": "4.0.0", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdn-data": { + "version": "2.0.30", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz", + "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==", + "license": "CC0-1.0" + }, + "node_modules/media-typer": { + "version": "0.3.0", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memfs": { + "version": "3.6.0", + "license": "Unlicense", + "dependencies": { + "fs-monkey": "^1.0.4" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.3", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "license": "MIT" + }, + "node_modules/merge2": { + "version": "1.4.1", + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromark": { + "version": "4.0.2", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "@types/debug": "^4.0.0", + "debug": "^4.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-core-commonmark": { + "version": "2.0.3", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-factory-destination": "^2.0.0", + "micromark-factory-label": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-factory-title": "^2.0.0", + "micromark-factory-whitespace": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-html-tag-name": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-core-commonmark/node_modules/micromark-factory-space": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-core-commonmark/node_modules/micromark-util-character": { + "version": "2.1.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-core-commonmark/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-extension-directive": { + "version": "3.0.2", + "license": "MIT", + "dependencies": { + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-factory-whitespace": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "parse-entities": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-directive/node_modules/micromark-factory-space": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-directive/node_modules/micromark-util-character": { + "version": "2.1.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-directive/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-extension-frontmatter": { + "version": "2.0.0", + "license": "MIT", + "dependencies": { + "fault": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-frontmatter/node_modules/micromark-util-character": { + "version": "2.1.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-frontmatter/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-extension-gfm": { + "version": "3.0.0", + "license": "MIT", + "dependencies": { + "micromark-extension-gfm-autolink-literal": "^2.0.0", + "micromark-extension-gfm-footnote": "^2.0.0", + "micromark-extension-gfm-strikethrough": "^2.0.0", + "micromark-extension-gfm-table": "^2.0.0", + "micromark-extension-gfm-tagfilter": "^2.0.0", + "micromark-extension-gfm-task-list-item": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-autolink-literal": { + "version": "2.1.0", + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-autolink-literal/node_modules/micromark-util-character": { + "version": "2.1.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-gfm-autolink-literal/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-extension-gfm-footnote": { + "version": "2.1.0", + "license": "MIT", + "dependencies": { + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-factory-space": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-util-character": { + "version": "2.1.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-extension-gfm-strikethrough": { + "version": "2.1.0", + "license": "MIT", + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-strikethrough/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-extension-gfm-table": { + "version": "2.1.1", + "license": "MIT", + "dependencies": { + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-table/node_modules/micromark-factory-space": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-gfm-table/node_modules/micromark-util-character": { + "version": "2.1.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-gfm-table/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-extension-gfm-tagfilter": { + "version": "2.0.0", + "license": "MIT", + "dependencies": { + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-task-list-item": { + "version": "2.1.0", + "license": "MIT", + "dependencies": { + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-gfm-task-list-item/node_modules/micromark-factory-space": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-gfm-task-list-item/node_modules/micromark-util-character": { + "version": "2.1.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-gfm-task-list-item/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-extension-mdx-expression": { + "version": "3.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "devlop": "^1.0.0", + "micromark-factory-mdx-expression": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-events-to-acorn": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-mdx-expression/node_modules/micromark-factory-space": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-mdx-expression/node_modules/micromark-util-character": { + "version": "2.1.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-mdx-expression/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-extension-mdx-jsx": { + "version": "3.0.2", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "devlop": "^1.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "micromark-factory-mdx-expression": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-events-to-acorn": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-mdx-jsx/node_modules/micromark-factory-space": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-mdx-jsx/node_modules/micromark-util-character": { + "version": "2.1.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-mdx-jsx/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-extension-mdx-md": { + "version": "2.0.0", + "license": "MIT", + "dependencies": { + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-mdxjs": { + "version": "3.0.0", + "license": "MIT", + "dependencies": { + "acorn": "^8.0.0", + "acorn-jsx": "^5.0.0", + "micromark-extension-mdx-expression": "^3.0.0", + "micromark-extension-mdx-jsx": "^3.0.0", + "micromark-extension-mdx-md": "^2.0.0", + "micromark-extension-mdxjs-esm": "^3.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-mdxjs-esm": { + "version": "3.0.0", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-events-to-acorn": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-position-from-estree": "^2.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-extension-mdxjs-esm/node_modules/micromark-util-character": { + "version": "2.1.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-mdxjs-esm/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-factory-destination": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-destination/node_modules/micromark-util-character": { + "version": "2.1.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-destination/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-factory-label": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-label/node_modules/micromark-util-character": { + "version": "2.1.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-label/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-factory-mdx-expression": { + "version": "2.0.3", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-events-to-acorn": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-position-from-estree": "^2.0.0", + "vfile-message": "^4.0.0" + } + }, + "node_modules/micromark-factory-mdx-expression/node_modules/micromark-factory-space": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-mdx-expression/node_modules/micromark-util-character": { + "version": "2.1.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-mdx-expression/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-factory-space": { + "version": "1.1.0", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "node_modules/micromark-factory-space/node_modules/micromark-util-types": { + "version": "1.1.0", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-factory-title": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-title/node_modules/micromark-factory-space": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-title/node_modules/micromark-util-character": { + "version": "2.1.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-title/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-factory-whitespace": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-whitespace/node_modules/micromark-factory-space": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-whitespace/node_modules/micromark-util-character": { + "version": "2.1.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-whitespace/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-character": { + "version": "1.2.0", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "node_modules/micromark-util-character/node_modules/micromark-util-types": { + "version": "1.1.0", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-chunked": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-chunked/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-classify-character": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-classify-character/node_modules/micromark-util-character": { + "version": "2.1.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-classify-character/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-combine-extensions": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-chunked": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-numeric-character-reference": { + "version": "2.0.2", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-numeric-character-reference/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-decode-string": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-string/node_modules/micromark-util-character": { + "version": "2.1.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-string/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-encode": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-events-to-acorn": { + "version": "2.0.3", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "@types/unist": "^3.0.0", + "devlop": "^1.0.0", + "estree-util-visit": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "vfile-message": "^4.0.0" + } + }, + "node_modules/micromark-util-events-to-acorn/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-html-tag-name": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-normalize-identifier": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-normalize-identifier/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-resolve-all": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-sanitize-uri": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-sanitize-uri/node_modules/micromark-util-character": { + "version": "2.1.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-sanitize-uri/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-subtokenize": { + "version": "2.1.0", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-subtokenize/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-symbol": { + "version": "1.1.0", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark-util-types": { + "version": "2.0.2", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromark/node_modules/micromark-factory-space": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark/node_modules/micromark-util-character": { + "version": "2.1.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark/node_modules/micromark-util-symbol": { + "version": "2.0.1", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT" + }, + "node_modules/micromatch": { + "version": "4.0.8", + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/mimic-response": { + "version": "4.0.0", + "license": "MIT", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/mini-css-extract-plugin": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.9.2.tgz", + "integrity": "sha512-GJuACcS//jtq4kCtd5ii/M0SZf7OZRH+BxdqXZHaJfb8TJiVl+NgQRPwiYt2EuqeSkNydn/7vP+bcE27C5mb9w==", + "license": "MIT", + "dependencies": { + "schema-utils": "^4.0.0", + "tapable": "^2.2.1" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "license": "ISC" + }, + "node_modules/minimatch": { + "version": "3.1.2", + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "7.1.2", + "license": "ISC", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minizlib": { + "version": "3.0.2", + "license": "MIT", + "dependencies": { + "minipass": "^7.1.2" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/mitt": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", + "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", + "license": "MIT" + }, + "node_modules/mkdirp": { + "version": "3.0.1", + "license": "MIT", + "bin": { + "mkdirp": "dist/cjs/src/bin.js" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/mrmime": { + "version": "2.0.1", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "license": "MIT" + }, + "node_modules/multicast-dns": { + "version": "7.2.5", + "license": "MIT", + "dependencies": { + "dns-packet": "^5.2.2", + "thunky": "^1.0.2" + }, + "bin": { + "multicast-dns": "cli.js" + } + }, + "node_modules/nanoid": { + "version": "3.3.11", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/negotiator": { + "version": "0.6.4", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/neo-async": { + "version": "2.6.2", + "license": "MIT" + }, + "node_modules/netmask": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", + "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==", + "license": "MIT", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/no-case": { + "version": "3.0.4", + "license": "MIT", + "dependencies": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node_modules/node-emoji": { + "version": "2.2.0", + "license": "MIT", + "dependencies": { + "@sindresorhus/is": "^4.6.0", + "char-regex": "^1.0.2", + "emojilib": "^2.4.0", + "skin-tone": "^2.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/node-forge": { + "version": "1.3.1", + "license": "(BSD-3-Clause OR GPL-2.0)", + "engines": { + "node": ">= 6.13.0" + } + }, + "node_modules/node-releases": { + "version": "2.0.19", + "license": "MIT" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-url": { + "version": "8.0.1", + "license": "MIT", + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "license": "MIT", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nprogress": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz", + "integrity": "sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==", + "license": "MIT" + }, + "node_modules/nth-check": { + "version": "2.1.1", + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/null-loader": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/null-loader/-/null-loader-4.0.1.tgz", + "integrity": "sha512-pxqVbi4U6N26lq+LmgIbB5XATP0VdZKOG25DhHi8btMmJJefGArFyDg1yc4U3hWCJbMqSrw0qyrz1UQX+qYXqg==", + "license": "MIT", + "dependencies": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/null-loader/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "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/null-loader/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==", + "license": "MIT", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/null-loader/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==", + "license": "MIT" + }, + "node_modules/null-loader/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.4", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", + "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/obuf": { + "version": "1.1.2", + "license": "MIT" + }, + "node_modules/on-finished": { + "version": "2.4.1", + "license": "MIT", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open": { + "version": "8.4.2", + "license": "MIT", + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/opener": { + "version": "1.5.2", + "license": "(WTFPL OR MIT)", + "bin": { + "opener": "bin/opener-bin.js" + } + }, + "node_modules/p-cancelable": { + "version": "3.0.0", + "license": "MIT", + "engines": { + "node": ">=12.20" + } + }, + "node_modules/p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "license": "MIT", + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", + "license": "MIT", + "dependencies": { + "p-limit": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "license": "MIT", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-queue": { + "version": "6.6.2", + "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-6.6.2.tgz", + "integrity": "sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==", + "license": "MIT", + "dependencies": { + "eventemitter3": "^4.0.4", + "p-timeout": "^3.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-retry": { + "version": "4.6.2", + "license": "MIT", + "dependencies": { + "@types/retry": "0.12.0", + "retry": "^0.13.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-timeout": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz", + "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==", + "license": "MIT", + "dependencies": { + "p-finally": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/pac-proxy-agent": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.2.0.tgz", + "integrity": "sha512-TEB8ESquiLMc0lV8vcd5Ql/JAKAoyzHFXaStwjkzpOpC5Yv+pIzLfHvjTSdf3vpa2bMiUQrg9i6276yn8666aA==", + "license": "MIT", + "dependencies": { + "@tootallnate/quickjs-emscripten": "^0.23.0", + "agent-base": "^7.1.2", + "debug": "^4.3.4", + "get-uri": "^6.0.1", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.6", + "pac-resolver": "^7.0.1", + "socks-proxy-agent": "^8.0.5" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/pac-resolver": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-7.0.1.tgz", + "integrity": "sha512-5NPgf87AT2STgwa2ntRMr45jTKrYBGkVU36yT0ig/n/GMAa3oPqhZfIQ2kMEimReg0+t9kZViDVZ83qfVUlckg==", + "license": "MIT", + "dependencies": { + "degenerator": "^5.0.0", + "netmask": "^2.0.2" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/package-json": { + "version": "8.1.1", + "license": "MIT", + "dependencies": { + "got": "^12.1.0", + "registry-auth-token": "^5.0.1", + "registry-url": "^6.0.0", + "semver": "^7.3.7" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/param-case": { + "version": "3.0.4", + "license": "MIT", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "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==", + "license": "MIT", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-entities": { + "version": "4.0.2", + "license": "MIT", + "dependencies": { + "@types/unist": "^2.0.0", + "character-entities-legacy": "^3.0.0", + "character-reference-invalid": "^2.0.0", + "decode-named-character-reference": "^1.0.0", + "is-alphanumerical": "^2.0.0", + "is-decimal": "^2.0.0", + "is-hexadecimal": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/parse-entities/node_modules/@types/unist": { + "version": "2.0.11", + "license": "MIT" + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse-numeric-range": { + "version": "1.3.0", + "license": "ISC" + }, + "node_modules/parse5": { + "version": "7.3.0", + "license": "MIT", + "dependencies": { + "entities": "^6.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-htmlparser2-tree-adapter": { + "version": "7.1.0", + "license": "MIT", + "dependencies": { + "domhandler": "^5.0.3", + "parse5": "^7.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5/node_modules/entities": { + "version": "6.0.0", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/pascal-case": { + "version": "3.1.2", + "license": "MIT", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", + "license": "MIT", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-is-inside": { + "version": "1.0.2", + "license": "(WTFPL OR MIT)" + }, + "node_modules/path-key": { + "version": "3.1.1", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "license": "MIT" + }, + "node_modules/path-to-regexp": { + "version": "1.9.0", + "license": "MIT", + "dependencies": { + "isarray": "0.0.1" + } + }, + "node_modules/path-type": { + "version": "4.0.0", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "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", + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pkg-dir": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-7.0.0.tgz", + "integrity": "sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==", + "license": "MIT", + "dependencies": { + "find-up": "^6.3.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-up": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", + "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", + "license": "MIT", + "dependencies": { + "find-up": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-up/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "license": "MIT", + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-up/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "license": "MIT", + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-up/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-up/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "license": "MIT", + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-up/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss": { + "version": "8.5.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", + "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.11", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-attribute-case-insensitive": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-7.0.1.tgz", + "integrity": "sha512-Uai+SupNSqzlschRyNx3kbCTWgY/2hcwtHEI/ej2LJWc9JJ77qKgGptd8DHwY1mXtZ7Aoh4z4yxfwMBue9eNgw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "dependencies": { + "postcss-selector-parser": "^7.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-attribute-case-insensitive/node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-calc": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-9.0.1.tgz", + "integrity": "sha512-TipgjGyzP5QzEhsOZUaIkeO5mKeMFpebWzRogWG/ysonUlnHcq5aJe0jOjpfzUU8PeSaBQnrE8ehR0QA5vs8PQ==", + "license": "MIT", + "dependencies": { + "postcss-selector-parser": "^6.0.11", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.2.2" + } + }, + "node_modules/postcss-clamp": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-clamp/-/postcss-clamp-4.1.0.tgz", + "integrity": "sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==", + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=7.6.0" + }, + "peerDependencies": { + "postcss": "^8.4.6" + } + }, + "node_modules/postcss-color-functional-notation": { + "version": "7.0.10", + "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-7.0.10.tgz", + "integrity": "sha512-k9qX+aXHBiLTRrWoCJuUFI6F1iF6QJQUXNVWJVSbqZgj57jDhBlOvD8gNUGl35tgqDivbGLhZeW3Ongz4feuKA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-color-parser": "^3.0.10", + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4", + "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/utilities": "^2.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-color-hex-alpha": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-10.0.0.tgz", + "integrity": "sha512-1kervM2cnlgPs2a8Vt/Qbe5cQ++N7rkYo/2rz2BkqJZIHQwaVuJgQH38REHrAi4uM0b1fqxMkWYmese94iMp3w==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "dependencies": { + "@csstools/utilities": "^2.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-color-rebeccapurple": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-10.0.0.tgz", + "integrity": "sha512-JFta737jSP+hdAIEhk1Vs0q0YF5P8fFcj+09pweS8ktuGuZ8pPlykHsk6mPxZ8awDl4TrcxUqJo9l1IhVr/OjQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/utilities": "^2.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-colormin": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-6.1.0.tgz", + "integrity": "sha512-x9yX7DOxeMAR+BgGVnNSAxmAj98NX/YxEMNFP+SDCEeNLb2r3i6Hh1ksMsnW8Ub5SLCpbescQqn9YEbE9554Sw==", + "license": "MIT", + "dependencies": { + "browserslist": "^4.23.0", + "caniuse-api": "^3.0.0", + "colord": "^2.9.3", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-convert-values": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-6.1.0.tgz", + "integrity": "sha512-zx8IwP/ts9WvUM6NkVSkiU902QZL1bwPhaVaLynPtCsOTqp+ZKbNi+s6XJg3rfqpKGA/oc7Oxk5t8pOQJcwl/w==", + "license": "MIT", + "dependencies": { + "browserslist": "^4.23.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-custom-media": { + "version": "11.0.6", + "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-11.0.6.tgz", + "integrity": "sha512-C4lD4b7mUIw+RZhtY7qUbf4eADmb7Ey8BFA2px9jUbwg7pjTZDl4KY4bvlUV+/vXQvzQRfiGEVJyAbtOsCMInw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "dependencies": { + "@csstools/cascade-layer-name-parser": "^2.0.5", + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4", + "@csstools/media-query-list-parser": "^4.0.3" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-custom-properties": { + "version": "14.0.6", + "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-14.0.6.tgz", + "integrity": "sha512-fTYSp3xuk4BUeVhxCSJdIPhDLpJfNakZKoiTDx7yRGCdlZrSJR7mWKVOBS4sBF+5poPQFMj2YdXx1VHItBGihQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "dependencies": { + "@csstools/cascade-layer-name-parser": "^2.0.5", + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4", + "@csstools/utilities": "^2.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-custom-selectors": { + "version": "8.0.5", + "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-8.0.5.tgz", + "integrity": "sha512-9PGmckHQswiB2usSO6XMSswO2yFWVoCAuih1yl9FVcwkscLjRKjwsjM3t+NIWpSU2Jx3eOiK2+t4vVTQaoCHHg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "dependencies": { + "@csstools/cascade-layer-name-parser": "^2.0.5", + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4", + "postcss-selector-parser": "^7.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-custom-selectors/node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-dir-pseudo-class": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-9.0.1.tgz", + "integrity": "sha512-tRBEK0MHYvcMUrAuYMEOa0zg9APqirBcgzi6P21OhxtJyJADo/SWBwY1CAwEohQ/6HDaa9jCjLRG7K3PVQYHEA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "postcss-selector-parser": "^7.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-dir-pseudo-class/node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-discard-comments": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-6.0.2.tgz", + "integrity": "sha512-65w/uIqhSBBfQmYnG92FO1mWZjJ4GL5b8atm5Yw2UgrwD7HiNiSSNwJor1eCFGzUgYnN/iIknhNRVqjrrpuglw==", + "license": "MIT", + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-discard-duplicates": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-6.0.3.tgz", + "integrity": "sha512-+JA0DCvc5XvFAxwx6f/e68gQu/7Z9ud584VLmcgto28eB8FqSFZwtrLwB5Kcp70eIoWP/HXqz4wpo8rD8gpsTw==", + "license": "MIT", + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-discard-empty": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-6.0.3.tgz", + "integrity": "sha512-znyno9cHKQsK6PtxL5D19Fj9uwSzC2mB74cpT66fhgOadEUPyXFkbgwm5tvc3bt3NAy8ltE5MrghxovZRVnOjQ==", + "license": "MIT", + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-discard-overridden": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-6.0.2.tgz", + "integrity": "sha512-j87xzI4LUggC5zND7KdjsI25APtyMuynXZSujByMaav2roV6OZX+8AaCUcZSWqckZpjAjRyFDdpqybgjFO0HJQ==", + "license": "MIT", + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-discard-unused": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-6.0.5.tgz", + "integrity": "sha512-wHalBlRHkaNnNwfC8z+ppX57VhvS+HWgjW508esjdaEYr3Mx7Gnn2xA4R/CKf5+Z9S5qsqC+Uzh4ueENWwCVUA==", + "license": "MIT", + "dependencies": { + "postcss-selector-parser": "^6.0.16" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-double-position-gradients": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-6.0.2.tgz", + "integrity": "sha512-7qTqnL7nfLRyJK/AHSVrrXOuvDDzettC+wGoienURV8v2svNbu6zJC52ruZtHaO6mfcagFmuTGFdzRsJKB3k5Q==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/utilities": "^2.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-focus-visible": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-10.0.1.tgz", + "integrity": "sha512-U58wyjS/I1GZgjRok33aE8juW9qQgQUNwTSdxQGuShHzwuYdcklnvK/+qOWX1Q9kr7ysbraQ6ht6r+udansalA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "postcss-selector-parser": "^7.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-focus-visible/node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-focus-within": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-9.0.1.tgz", + "integrity": "sha512-fzNUyS1yOYa7mOjpci/bR+u+ESvdar6hk8XNK/TRR0fiGTp2QT5N+ducP0n3rfH/m9I7H/EQU6lsa2BrgxkEjw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "postcss-selector-parser": "^7.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-focus-within/node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-font-variant": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz", + "integrity": "sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==", + "license": "MIT", + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-gap-properties": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-6.0.0.tgz", + "integrity": "sha512-Om0WPjEwiM9Ru+VhfEDPZJAKWUd0mV1HmNXqp2C29z80aQ2uP9UVhLc7e3aYMIor/S5cVhoPgYQ7RtfeZpYTRw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-image-set-function": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-7.0.0.tgz", + "integrity": "sha512-QL7W7QNlZuzOwBTeXEmbVckNt1FSmhQtbMRvGGqqU4Nf4xk6KUEQhAoWuMzwbSv5jxiRiSZ5Tv7eiDB9U87znA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/utilities": "^2.0.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-lab-function": { + "version": "7.0.10", + "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-7.0.10.tgz", + "integrity": "sha512-tqs6TCEv9tC1Riq6fOzHuHcZyhg4k3gIAMB8GGY/zA1ssGdm6puHMVE7t75aOSoFg7UD2wyrFFhbldiCMyyFTQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/css-color-parser": "^3.0.10", + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4", + "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/utilities": "^2.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-loader": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.3.4.tgz", + "integrity": "sha512-iW5WTTBSC5BfsBJ9daFMPVrLT36MrNiC6fqOZTTaHjBNX6Pfd5p+hSBqe/fEeNd7pc13QiAyGt7VdGMw4eRC4A==", + "license": "MIT", + "dependencies": { + "cosmiconfig": "^8.3.5", + "jiti": "^1.20.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "postcss": "^7.0.0 || ^8.0.1", + "webpack": "^5.0.0" + } + }, + "node_modules/postcss-logical": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-8.1.0.tgz", + "integrity": "sha512-pL1hXFQ2fEXNKiNiAgtfA005T9FBxky5zkX6s4GZM2D8RkVgRqz3f4g1JUoq925zXv495qk8UNldDwh8uGEDoA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-merge-idents": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-6.0.3.tgz", + "integrity": "sha512-1oIoAsODUs6IHQZkLQGO15uGEbK3EAl5wi9SS8hs45VgsxQfMnxvt+L+zIr7ifZFIH14cfAeVe2uCTa+SPRa3g==", + "license": "MIT", + "dependencies": { + "cssnano-utils": "^4.0.2", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-merge-longhand": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-6.0.5.tgz", + "integrity": "sha512-5LOiordeTfi64QhICp07nzzuTDjNSO8g5Ksdibt44d+uvIIAE1oZdRn8y/W5ZtYgRH/lnLDlvi9F8btZcVzu3w==", + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.2.0", + "stylehacks": "^6.1.1" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-merge-rules": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-6.1.1.tgz", + "integrity": "sha512-KOdWF0gju31AQPZiD+2Ar9Qjowz1LTChSjFFbS+e2sFgc4uHOp3ZvVX4sNeTlk0w2O31ecFGgrFzhO0RSWbWwQ==", + "license": "MIT", + "dependencies": { + "browserslist": "^4.23.0", + "caniuse-api": "^3.0.0", + "cssnano-utils": "^4.0.2", + "postcss-selector-parser": "^6.0.16" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-minify-font-values": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-6.1.0.tgz", + "integrity": "sha512-gklfI/n+9rTh8nYaSJXlCo3nOKqMNkxuGpTn/Qm0gstL3ywTr9/WRKznE+oy6fvfolH6dF+QM4nCo8yPLdvGJg==", + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-minify-gradients": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-6.0.3.tgz", + "integrity": "sha512-4KXAHrYlzF0Rr7uc4VrfwDJ2ajrtNEpNEuLxFgwkhFZ56/7gaE4Nr49nLsQDZyUe+ds+kEhf+YAUolJiYXF8+Q==", + "license": "MIT", + "dependencies": { + "colord": "^2.9.3", + "cssnano-utils": "^4.0.2", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-minify-params": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-6.1.0.tgz", + "integrity": "sha512-bmSKnDtyyE8ujHQK0RQJDIKhQ20Jq1LYiez54WiaOoBtcSuflfK3Nm596LvbtlFcpipMjgClQGyGr7GAs+H1uA==", + "license": "MIT", + "dependencies": { + "browserslist": "^4.23.0", + "cssnano-utils": "^4.0.2", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-minify-selectors": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-6.0.4.tgz", + "integrity": "sha512-L8dZSwNLgK7pjTto9PzWRoMbnLq5vsZSTu8+j1P/2GB8qdtGQfn+K1uSvFgYvgh83cbyxT5m43ZZhUMTJDSClQ==", + "license": "MIT", + "dependencies": { + "postcss-selector-parser": "^6.0.16" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-modules-extract-imports": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz", + "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==", + "license": "ISC", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.2.0.tgz", + "integrity": "sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw==", + "license": "MIT", + "dependencies": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^7.0.0", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-local-by-default/node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-modules-scope": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.2.1.tgz", + "integrity": "sha512-m9jZstCVaqGjTAuny8MdgE88scJnCiQSlSrOWcTQgM2t32UBe+MUmFSO5t7VMSfAf/FJKImAxBav8ooCHJXCJA==", + "license": "ISC", + "dependencies": { + "postcss-selector-parser": "^7.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-scope/node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "license": "ISC", + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-nesting": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-13.0.2.tgz", + "integrity": "sha512-1YCI290TX+VP0U/K/aFxzHzQWHWURL+CtHMSbex1lCdpXD1SoR2sYuxDu5aNI9lPoXpKTCggFZiDJbwylU0LEQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/selector-resolve-nested": "^3.1.0", + "@csstools/selector-specificity": "^5.0.0", + "postcss-selector-parser": "^7.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-nesting/node_modules/@csstools/selector-resolve-nested": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@csstools/selector-resolve-nested/-/selector-resolve-nested-3.1.0.tgz", + "integrity": "sha512-mf1LEW0tJLKfWyvn5KdDrhpxHyuxpbNwTIwOYLIvsTffeyOf85j5oIzfG0yosxDgx/sswlqBnESYUcQH0vgZ0g==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss-selector-parser": "^7.0.0" + } + }, + "node_modules/postcss-nesting/node_modules/@csstools/selector-specificity": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-5.0.0.tgz", + "integrity": "sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss-selector-parser": "^7.0.0" + } + }, + "node_modules/postcss-nesting/node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-normalize-charset": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-6.0.2.tgz", + "integrity": "sha512-a8N9czmdnrjPHa3DeFlwqst5eaL5W8jYu3EBbTTkI5FHkfMhFZh1EGbku6jhHhIzTA6tquI2P42NtZ59M/H/kQ==", + "license": "MIT", + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-display-values": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-6.0.2.tgz", + "integrity": "sha512-8H04Mxsb82ON/aAkPeq8kcBbAtI5Q2a64X/mnRRfPXBq7XeogoQvReqxEfc0B4WPq1KimjezNC8flUtC3Qz6jg==", + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-positions": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-6.0.2.tgz", + "integrity": "sha512-/JFzI441OAB9O7VnLA+RtSNZvQ0NCFZDOtp6QPFo1iIyawyXg0YI3CYM9HBy1WvwCRHnPep/BvI1+dGPKoXx/Q==", + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-repeat-style": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-6.0.2.tgz", + "integrity": "sha512-YdCgsfHkJ2jEXwR4RR3Tm/iOxSfdRt7jplS6XRh9Js9PyCR/aka/FCb6TuHT2U8gQubbm/mPmF6L7FY9d79VwQ==", + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-string": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-6.0.2.tgz", + "integrity": "sha512-vQZIivlxlfqqMp4L9PZsFE4YUkWniziKjQWUtsxUiVsSSPelQydwS8Wwcuw0+83ZjPWNTl02oxlIvXsmmG+CiQ==", + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-timing-functions": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-6.0.2.tgz", + "integrity": "sha512-a+YrtMox4TBtId/AEwbA03VcJgtyW4dGBizPl7e88cTFULYsprgHWTbfyjSLyHeBcK/Q9JhXkt2ZXiwaVHoMzA==", + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-unicode": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-6.1.0.tgz", + "integrity": "sha512-QVC5TQHsVj33otj8/JD869Ndr5Xcc/+fwRh4HAsFsAeygQQXm+0PySrKbr/8tkDKzW+EVT3QkqZMfFrGiossDg==", + "license": "MIT", + "dependencies": { + "browserslist": "^4.23.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-url": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-6.0.2.tgz", + "integrity": "sha512-kVNcWhCeKAzZ8B4pv/DnrU1wNh458zBNp8dh4y5hhxih5RZQ12QWMuQrDgPRw3LRl8mN9vOVfHl7uhvHYMoXsQ==", + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-whitespace": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-6.0.2.tgz", + "integrity": "sha512-sXZ2Nj1icbJOKmdjXVT9pnyHQKiSAyuNQHSgRCUgThn2388Y9cGVDR+E9J9iAYbSbLHI+UUwLVl1Wzco/zgv0Q==", + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-opacity-percentage": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-opacity-percentage/-/postcss-opacity-percentage-3.0.0.tgz", + "integrity": "sha512-K6HGVzyxUxd/VgZdX04DCtdwWJ4NGLG212US4/LA1TLAbHgmAsTWVR86o+gGIbFtnTkfOpb9sCRBx8K7HO66qQ==", + "funding": [ + { + "type": "kofi", + "url": "https://ko-fi.com/mrcgrtz" + }, + { + "type": "liberapay", + "url": "https://liberapay.com/mrcgrtz" + } + ], + "license": "MIT", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-ordered-values": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-6.0.2.tgz", + "integrity": "sha512-VRZSOB+JU32RsEAQrO94QPkClGPKJEL/Z9PCBImXMhIeK5KAYo6slP/hBYlLgrCjFxyqvn5VC81tycFEDBLG1Q==", + "license": "MIT", + "dependencies": { + "cssnano-utils": "^4.0.2", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-overflow-shorthand": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-6.0.0.tgz", + "integrity": "sha512-BdDl/AbVkDjoTofzDQnwDdm/Ym6oS9KgmO7Gr+LHYjNWJ6ExORe4+3pcLQsLA9gIROMkiGVjjwZNoL/mpXHd5Q==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-page-break": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-3.0.4.tgz", + "integrity": "sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==", + "license": "MIT", + "peerDependencies": { + "postcss": "^8" + } + }, + "node_modules/postcss-place": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-10.0.0.tgz", + "integrity": "sha512-5EBrMzat2pPAxQNWYavwAfoKfYcTADJ8AXGVPcUZ2UkNloUTWzJQExgrzrDkh3EKzmAx1evfTAzF9I8NGcc+qw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-preset-env": { + "version": "10.2.4", + "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-10.2.4.tgz", + "integrity": "sha512-q+lXgqmTMdB0Ty+EQ31SuodhdfZetUlwCA/F0zRcd/XdxjzI+Rl2JhZNz5US2n/7t9ePsvuhCnEN4Bmu86zXlA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "@csstools/postcss-cascade-layers": "^5.0.2", + "@csstools/postcss-color-function": "^4.0.10", + "@csstools/postcss-color-mix-function": "^3.0.10", + "@csstools/postcss-color-mix-variadic-function-arguments": "^1.0.0", + "@csstools/postcss-content-alt-text": "^2.0.6", + "@csstools/postcss-exponential-functions": "^2.0.9", + "@csstools/postcss-font-format-keywords": "^4.0.0", + "@csstools/postcss-gamut-mapping": "^2.0.10", + "@csstools/postcss-gradients-interpolation-method": "^5.0.10", + "@csstools/postcss-hwb-function": "^4.0.10", + "@csstools/postcss-ic-unit": "^4.0.2", + "@csstools/postcss-initial": "^2.0.1", + "@csstools/postcss-is-pseudo-class": "^5.0.3", + "@csstools/postcss-light-dark-function": "^2.0.9", + "@csstools/postcss-logical-float-and-clear": "^3.0.0", + "@csstools/postcss-logical-overflow": "^2.0.0", + "@csstools/postcss-logical-overscroll-behavior": "^2.0.0", + "@csstools/postcss-logical-resize": "^3.0.0", + "@csstools/postcss-logical-viewport-units": "^3.0.4", + "@csstools/postcss-media-minmax": "^2.0.9", + "@csstools/postcss-media-queries-aspect-ratio-number-values": "^3.0.5", + "@csstools/postcss-nested-calc": "^4.0.0", + "@csstools/postcss-normalize-display-values": "^4.0.0", + "@csstools/postcss-oklab-function": "^4.0.10", + "@csstools/postcss-progressive-custom-properties": "^4.1.0", + "@csstools/postcss-random-function": "^2.0.1", + "@csstools/postcss-relative-color-syntax": "^3.0.10", + "@csstools/postcss-scope-pseudo-class": "^4.0.1", + "@csstools/postcss-sign-functions": "^1.1.4", + "@csstools/postcss-stepped-value-functions": "^4.0.9", + "@csstools/postcss-text-decoration-shorthand": "^4.0.2", + "@csstools/postcss-trigonometric-functions": "^4.0.9", + "@csstools/postcss-unset-value": "^4.0.0", + "autoprefixer": "^10.4.21", + "browserslist": "^4.25.0", + "css-blank-pseudo": "^7.0.1", + "css-has-pseudo": "^7.0.2", + "css-prefers-color-scheme": "^10.0.0", + "cssdb": "^8.3.0", + "postcss-attribute-case-insensitive": "^7.0.1", + "postcss-clamp": "^4.1.0", + "postcss-color-functional-notation": "^7.0.10", + "postcss-color-hex-alpha": "^10.0.0", + "postcss-color-rebeccapurple": "^10.0.0", + "postcss-custom-media": "^11.0.6", + "postcss-custom-properties": "^14.0.6", + "postcss-custom-selectors": "^8.0.5", + "postcss-dir-pseudo-class": "^9.0.1", + "postcss-double-position-gradients": "^6.0.2", + "postcss-focus-visible": "^10.0.1", + "postcss-focus-within": "^9.0.1", + "postcss-font-variant": "^5.0.0", + "postcss-gap-properties": "^6.0.0", + "postcss-image-set-function": "^7.0.0", + "postcss-lab-function": "^7.0.10", + "postcss-logical": "^8.1.0", + "postcss-nesting": "^13.0.2", + "postcss-opacity-percentage": "^3.0.0", + "postcss-overflow-shorthand": "^6.0.0", + "postcss-page-break": "^3.0.4", + "postcss-place": "^10.0.0", + "postcss-pseudo-class-any-link": "^10.0.1", + "postcss-replace-overflow-wrap": "^4.0.0", + "postcss-selector-not": "^8.0.1" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-pseudo-class-any-link": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-10.0.1.tgz", + "integrity": "sha512-3el9rXlBOqTFaMFkWDOkHUTQekFIYnaQY55Rsp8As8QQkpiSgIYEcF/6Ond93oHiDsGb4kad8zjt+NPlOC1H0Q==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "dependencies": { + "postcss-selector-parser": "^7.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-pseudo-class-any-link/node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-reduce-idents": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-6.0.3.tgz", + "integrity": "sha512-G3yCqZDpsNPoQgbDUy3T0E6hqOQ5xigUtBQyrmq3tn2GxlyiL0yyl7H+T8ulQR6kOcHJ9t7/9H4/R2tv8tJbMA==", + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-reduce-initial": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-6.1.0.tgz", + "integrity": "sha512-RarLgBK/CrL1qZags04oKbVbrrVK2wcxhvta3GCxrZO4zveibqbRPmm2VI8sSgCXwoUHEliRSbOfpR0b/VIoiw==", + "license": "MIT", + "dependencies": { + "browserslist": "^4.23.0", + "caniuse-api": "^3.0.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-reduce-transforms": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-6.0.2.tgz", + "integrity": "sha512-sB+Ya++3Xj1WaT9+5LOOdirAxP7dJZms3GRcYheSPi1PiTMigsxHAdkrbItHxwYHr4kt1zL7mmcHstgMYT+aiA==", + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-replace-overflow-wrap": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz", + "integrity": "sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==", + "license": "MIT", + "peerDependencies": { + "postcss": "^8.0.3" + } + }, + "node_modules/postcss-selector-not": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-8.0.1.tgz", + "integrity": "sha512-kmVy/5PYVb2UOhy0+LqUYAhKj7DUGDpSWa5LZqlkWJaaAV+dxxsOG3+St0yNLu6vsKD7Dmqx+nWQt0iil89+WA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "dependencies": { + "postcss-selector-parser": "^7.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-selector-not/node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-sort-media-queries": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/postcss-sort-media-queries/-/postcss-sort-media-queries-5.2.0.tgz", + "integrity": "sha512-AZ5fDMLD8SldlAYlvi8NIqo0+Z8xnXU2ia0jxmuhxAU+Lqt9K+AlmLNJ/zWEnE9x+Zx3qL3+1K20ATgNOr3fAA==", + "license": "MIT", + "dependencies": { + "sort-css-media-queries": "2.2.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "postcss": "^8.4.23" + } + }, + "node_modules/postcss-svgo": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-6.0.3.tgz", + "integrity": "sha512-dlrahRmxP22bX6iKEjOM+c8/1p+81asjKT+V5lrgOH944ryx/OHpclnIbGsKVd3uWOXFLYJwCVf0eEkJGvO96g==", + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.2.0", + "svgo": "^3.2.0" + }, + "engines": { + "node": "^14 || ^16 || >= 18" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-unique-selectors": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-6.0.4.tgz", + "integrity": "sha512-K38OCaIrO8+PzpArzkLKB42dSARtC2tmG6PvD4b1o1Q2E9Os8jzfWFfSy/rixsHwohtsDdFtAWGjFVFUdwYaMg==", + "license": "MIT", + "dependencies": { + "postcss-selector-parser": "^6.0.16" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "license": "MIT" + }, + "node_modules/postcss-zindex": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-6.0.2.tgz", + "integrity": "sha512-5BxW9l1evPB/4ZIc+2GobEBoKC+h8gPGCMi+jxsYvd2x0mjq7wazk6DrP71pStqxE9Foxh5TVnonbWpFZzXaYg==", + "license": "MIT", + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/pretty-error": { + "version": "4.0.0", + "license": "MIT", + "dependencies": { + "lodash": "^4.17.20", + "renderkid": "^3.0.0" + } + }, + "node_modules/pretty-time": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pretty-time/-/pretty-time-1.1.0.tgz", + "integrity": "sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/prism-react-renderer": { + "version": "2.4.1", + "license": "MIT", + "dependencies": { + "@types/prismjs": "^1.26.0", + "clsx": "^2.0.0" + }, + "peerDependencies": { + "react": ">=16.0.0" + } + }, + "node_modules/prismjs": { + "version": "1.30.0", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.30.0.tgz", + "integrity": "sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "license": "MIT" + }, + "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/prompts": { + "version": "2.4.2", + "license": "MIT", + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/prop-types": { + "version": "15.8.1", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "node_modules/property-information": { + "version": "7.1.0", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/proto-list": { + "version": "1.2.4", + "license": "ISC" + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "license": "MIT", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-addr/node_modules/ipaddr.js": { + "version": "1.9.1", + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-agent": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.5.0.tgz", + "integrity": "sha512-TmatMXdr2KlRiA2CyDu8GqR8EjahTG3aY3nXjdzFyoZbmB8hrBsTyMezhULIXKnC0jpfjlmiZ3+EaCzoInSu/A==", + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "^4.3.4", + "http-proxy-agent": "^7.0.1", + "https-proxy-agent": "^7.0.6", + "lru-cache": "^7.14.1", + "pac-proxy-agent": "^7.1.0", + "proxy-from-env": "^1.1.0", + "socks-proxy-agent": "^8.0.5" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/proxy-agent/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "license": "MIT" + }, + "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", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/pupa": { + "version": "3.1.0", + "license": "MIT", + "dependencies": { + "escape-goat": "^4.0.0" + }, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/puppeteer": { + "version": "24.12.1", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-24.12.1.tgz", + "integrity": "sha512-+vvwl+Xo4z5uXLLHG+XW8uXnUXQ62oY6KU6bEFZJvHWLutbmv5dw9A/jcMQ0fqpQdLydHmK0Uy7/9Ilj8ufwSQ==", + "hasInstallScript": true, + "license": "Apache-2.0", + "dependencies": { + "@puppeteer/browsers": "2.10.5", + "chromium-bidi": "5.1.0", + "cosmiconfig": "^9.0.0", + "devtools-protocol": "0.0.1464554", + "puppeteer-core": "24.12.1", + "typed-query-selector": "^2.12.0" + }, + "bin": { + "puppeteer": "lib/cjs/puppeteer/node/cli.js" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/puppeteer-core": { + "version": "24.12.1", + "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-24.12.1.tgz", + "integrity": "sha512-8odp6d3ERKBa3BAVaYWXn95UxQv3sxvP1reD+xZamaX6ed8nCykhwlOiHSaHR9t/MtmIB+rJmNencI6Zy4Gxvg==", + "license": "Apache-2.0", + "dependencies": { + "@puppeteer/browsers": "2.10.5", + "chromium-bidi": "5.1.0", + "debug": "^4.4.1", + "devtools-protocol": "0.0.1464554", + "typed-query-selector": "^2.12.0", + "ws": "^8.18.3" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/puppeteer-core/node_modules/ws": { + "version": "8.18.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", + "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/puppeteer/node_modules/cosmiconfig": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.0.tgz", + "integrity": "sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==", + "license": "MIT", + "dependencies": { + "env-paths": "^2.2.1", + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/qs": { + "version": "6.13.0", + "license": "BSD-3-Clause", + "dependencies": { + "side-channel": "^1.0.6" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/queue": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz", + "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==", + "license": "MIT", + "dependencies": { + "inherits": "~2.0.3" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "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/quick-lru": { + "version": "5.1.1", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/randombytes": { + "version": "2.1.0", + "license": "MIT", + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/range-parser": { + "version": "1.2.0", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.2", + "license": "MIT", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/raw-body/node_modules/bytes": { + "version": "3.1.2", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/rc": { + "version": "1.2.8", + "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/rc/node_modules/strip-json-comments": { + "version": "2.0.1", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react": { + "version": "19.1.0", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dev-utils": { + "version": "12.0.1", + "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-12.0.1.tgz", + "integrity": "sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.16.0", + "address": "^1.1.2", + "browserslist": "^4.18.1", + "chalk": "^4.1.2", + "cross-spawn": "^7.0.3", + "detect-port-alt": "^1.1.6", + "escape-string-regexp": "^4.0.0", + "filesize": "^8.0.6", + "find-up": "^5.0.0", + "fork-ts-checker-webpack-plugin": "^6.5.0", + "global-modules": "^2.0.0", + "globby": "^11.0.4", + "gzip-size": "^6.0.0", + "immer": "^9.0.7", + "is-root": "^2.1.0", + "loader-utils": "^3.2.0", + "open": "^8.4.0", + "pkg-up": "^3.1.0", + "prompts": "^2.4.2", + "react-error-overlay": "^6.0.11", + "recursive-readdir": "^2.2.2", + "shell-quote": "^1.7.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/react-dev-utils/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==", + "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/react-dev-utils/node_modules/loader-utils": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.3.1.tgz", + "integrity": "sha512-FMJTLMXfCLMLfJxcX9PFqX5qD88Z5MRGaZCVzfuqeZSPsyiBzs+pahDQjbIWz2QIzPZz0NX9Zy4FX3lmK6YHIg==", + "license": "MIT", + "engines": { + "node": ">= 12.13.0" + } + }, + "node_modules/react-dev-utils/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==", + "license": "MIT", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react-dev-utils/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==", + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react-dev-utils/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==", + "license": "MIT", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react-dev-utils/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==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/react-dev-utils/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==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react-dom": { + "version": "19.1.0", + "license": "MIT", + "dependencies": { + "scheduler": "^0.26.0" + }, + "peerDependencies": { + "react": "^19.1.0" + } + }, + "node_modules/react-error-overlay": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.1.0.tgz", + "integrity": "sha512-SN/U6Ytxf1QGkw/9ve5Y+NxBbZM6Ht95tuXNMKs8EJyFa/Vy/+Co3stop3KBHARfn/giv+Lj1uUnTfOJ3moFEQ==", + "license": "MIT" + }, + "node_modules/react-fast-compare": { + "version": "3.2.2", + "license": "MIT" + }, + "node_modules/react-helmet-async": { + "name": "@slorber/react-helmet-async", + "version": "1.3.0", + "license": "Apache-2.0", + "dependencies": { + "@babel/runtime": "^7.12.5", + "invariant": "^2.2.4", + "prop-types": "^15.7.2", + "react-fast-compare": "^3.2.0", + "shallowequal": "^1.1.0" + }, + "peerDependencies": { + "react": "^16.6.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^16.6.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/react-is": { + "version": "16.13.1", + "license": "MIT" + }, + "node_modules/react-loadable": { + "name": "@docusaurus/react-loadable", + "version": "6.0.0", + "license": "MIT", + "dependencies": { + "@types/react": "*" + }, + "peerDependencies": { + "react": "*" + } + }, + "node_modules/react-loadable-ssr-addon-v5-slorber": { + "version": "1.0.1", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.10.3" + }, + "engines": { + "node": ">=10.13.0" + }, + "peerDependencies": { + "react-loadable": "*", + "webpack": ">=4.41.1 || 5.x" + } + }, + "node_modules/react-router": { + "version": "5.3.4", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.12.13", + "history": "^4.9.0", + "hoist-non-react-statics": "^3.1.0", + "loose-envify": "^1.3.1", + "path-to-regexp": "^1.7.0", + "prop-types": "^15.6.2", + "react-is": "^16.6.0", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.0" + }, + "peerDependencies": { + "react": ">=15" + } + }, + "node_modules/react-router-config": { + "version": "5.1.1", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.1.2" + }, + "peerDependencies": { + "react": ">=15", + "react-router": ">=5" + } + }, + "node_modules/react-router-dom": { + "version": "5.3.4", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.12.13", + "history": "^4.9.0", + "loose-envify": "^1.3.1", + "prop-types": "^15.6.2", + "react-router": "5.3.4", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.0" + }, + "peerDependencies": { + "react": ">=15" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "license": "MIT", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/reading-time": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/reading-time/-/reading-time-1.5.0.tgz", + "integrity": "sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==", + "license": "MIT" + }, + "node_modules/rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "dependencies": { + "resolve": "^1.1.6" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/recma-build-jsx": { + "version": "1.0.0", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-util-build-jsx": "^3.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/recma-jsx": { + "version": "1.0.0", + "license": "MIT", + "dependencies": { + "acorn-jsx": "^5.0.0", + "estree-util-to-js": "^2.0.0", + "recma-parse": "^1.0.0", + "recma-stringify": "^1.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/recma-parse": { + "version": "1.0.0", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "esast-util-from-js": "^2.0.0", + "unified": "^11.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/recma-stringify": { + "version": "1.0.0", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-util-to-js": "^2.0.0", + "unified": "^11.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/recursive-readdir": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz", + "integrity": "sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==", + "license": "MIT", + "dependencies": { + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "license": "MIT" + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.0.tgz", + "integrity": "sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==", + "license": "MIT", + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regexpu-core": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-6.2.0.tgz", + "integrity": "sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA==", + "license": "MIT", + "dependencies": { + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.2.0", + "regjsgen": "^0.8.0", + "regjsparser": "^0.12.0", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/registry-auth-token": { + "version": "5.1.0", + "license": "MIT", + "dependencies": { + "@pnpm/npm-conf": "^2.1.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/registry-url": { + "version": "6.0.1", + "license": "MIT", + "dependencies": { + "rc": "1.2.8" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==", + "license": "MIT" + }, + "node_modules/regjsparser": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.12.0.tgz", + "integrity": "sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==", + "license": "BSD-2-Clause", + "dependencies": { + "jsesc": "~3.0.2" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", + "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/rehype-raw": { + "version": "7.0.0", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "hast-util-raw": "^9.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/rehype-recma": { + "version": "1.0.0", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "@types/hast": "^3.0.0", + "hast-util-to-estree": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/relateurl": { + "version": "0.2.7", + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/remark-directive": { + "version": "3.0.1", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-directive": "^3.0.0", + "micromark-extension-directive": "^3.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-emoji": { + "version": "4.0.1", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.2", + "emoticon": "^4.0.1", + "mdast-util-find-and-replace": "^3.0.1", + "node-emoji": "^2.1.0", + "unified": "^11.0.4" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/remark-frontmatter": { + "version": "5.0.0", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-frontmatter": "^2.0.0", + "micromark-extension-frontmatter": "^2.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-gfm": { + "version": "4.0.1", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-gfm": "^3.0.0", + "micromark-extension-gfm": "^3.0.0", + "remark-parse": "^11.0.0", + "remark-stringify": "^11.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-mdx": { + "version": "3.1.0", + "license": "MIT", + "dependencies": { + "mdast-util-mdx": "^3.0.0", + "micromark-extension-mdxjs": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-parse": { + "version": "11.0.0", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-from-markdown": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-rehype": { + "version": "11.1.2", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "mdast-util-to-hast": "^13.0.0", + "unified": "^11.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-stringify": { + "version": "11.0.0", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-to-markdown": "^2.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/renderkid": { + "version": "3.0.0", + "license": "MIT", + "dependencies": { + "css-select": "^4.1.3", + "dom-converter": "^0.2.0", + "htmlparser2": "^6.1.0", + "lodash": "^4.17.21", + "strip-ansi": "^6.0.1" + } + }, + "node_modules/renderkid/node_modules/css-select": { + "version": "4.3.0", + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/renderkid/node_modules/css-select/node_modules/domhandler": { + "version": "4.3.1", + "license": "BSD-2-Clause", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/renderkid/node_modules/css-select/node_modules/domutils": { + "version": "2.8.0", + "license": "BSD-2-Clause", + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/renderkid/node_modules/css-select/node_modules/domutils/node_modules/dom-serializer": { + "version": "1.4.1", + "license": "MIT", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/renderkid/node_modules/css-select/node_modules/domutils/node_modules/dom-serializer/node_modules/entities": { + "version": "2.2.0", + "license": "BSD-2-Clause", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/renderkid/node_modules/htmlparser2": { + "version": "6.1.0", + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "license": "MIT", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + }, + "node_modules/renderkid/node_modules/htmlparser2/node_modules/domhandler": { + "version": "4.3.1", + "license": "BSD-2-Clause", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/renderkid/node_modules/htmlparser2/node_modules/domutils": { + "version": "2.8.0", + "license": "BSD-2-Clause", + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/renderkid/node_modules/htmlparser2/node_modules/domutils/node_modules/dom-serializer": { + "version": "1.4.1", + "license": "MIT", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/renderkid/node_modules/htmlparser2/node_modules/entities": { + "version": "2.2.0", + "license": "BSD-2-Clause", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", + "license": "MIT", + "engines": { + "node": ">=0.10" + } + }, + "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==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-like": { + "version": "0.1.2", + "engines": { + "node": "*" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "license": "MIT" + }, + "node_modules/resolve": { + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-alpn": { + "version": "1.2.1", + "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==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-pathname": { + "version": "3.0.0", + "license": "MIT" + }, + "node_modules/responselike": { + "version": "3.0.0", + "license": "MIT", + "dependencies": { + "lowercase-keys": "^3.0.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/retry": { + "version": "0.13.1", + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/reusify": { + "version": "1.1.0", + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rtlcss": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-4.3.0.tgz", + "integrity": "sha512-FI+pHEn7Wc4NqKXMXFM+VAYKEj/mRIcW4h24YVwVtyjI+EqGrLc2Hx/Ny0lrZ21cBWU2goLy36eqMcNj3AQJig==", + "license": "MIT", + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0", + "postcss": "^8.4.21", + "strip-json-comments": "^3.1.1" + }, + "bin": { + "rtlcss": "bin/rtlcss.js" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "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": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "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/safer-buffer": { + "version": "2.1.2", + "license": "MIT" + }, + "node_modules/sax": { + "version": "1.4.1", + "license": "ISC" + }, + "node_modules/scheduler": { + "version": "0.26.0", + "license": "MIT" + }, + "node_modules/schema-dts": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/schema-dts/-/schema-dts-1.1.5.tgz", + "integrity": "sha512-RJr9EaCmsLzBX2NDiO5Z3ux2BVosNZN5jo0gWgsyKvxKIUL5R3swNvoorulAeL9kLB0iTSX7V6aokhla2m7xbg==", + "license": "Apache-2.0" + }, + "node_modules/schema-utils": { + "version": "4.3.2", + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/search-insights": { + "version": "2.17.3", + "resolved": "https://registry.npmjs.org/search-insights/-/search-insights-2.17.3.tgz", + "integrity": "sha512-RQPdCYTa8A68uM2jwxoY842xDhvx3E5LFL1LxvxCNMev4o5mLuokczhzjAgGwUZBAmOKZknArSxLKmXtIi2AxQ==", + "license": "MIT", + "peer": true + }, + "node_modules/section-matter": { + "version": "1.0.0", + "license": "MIT", + "dependencies": { + "extend-shallow": "^2.0.1", + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/select-hose": { + "version": "2.0.0", + "license": "MIT" + }, + "node_modules/selfsigned": { + "version": "2.4.1", + "license": "MIT", + "dependencies": { + "@types/node-forge": "^1.3.0", + "node-forge": "^1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver-diff": { + "version": "4.0.0", + "license": "MIT", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/send": { + "version": "0.19.0", + "license": "MIT", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "license": "MIT" + }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/send/node_modules/range-parser": { + "version": "1.2.1", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.2", + "license": "BSD-3-Clause", + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-handler": { + "version": "6.1.6", + "license": "MIT", + "dependencies": { + "bytes": "3.0.0", + "content-disposition": "0.5.2", + "mime-types": "2.1.18", + "minimatch": "3.1.2", + "path-is-inside": "1.0.2", + "path-to-regexp": "3.3.0", + "range-parser": "1.2.0" + } + }, + "node_modules/serve-handler/node_modules/mime-types": { + "version": "2.1.18", + "license": "MIT", + "dependencies": { + "mime-db": "~1.33.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-handler/node_modules/mime-types/node_modules/mime-db": { + "version": "1.33.0", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-handler/node_modules/path-to-regexp": { + "version": "3.3.0", + "license": "MIT" + }, + "node_modules/serve-index": { + "version": "1.9.1", + "license": "MIT", + "dependencies": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/node_modules/debug": { + "version": "2.6.9", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/serve-index/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "license": "MIT" + }, + "node_modules/serve-index/node_modules/http-errors": { + "version": "1.6.3", + "license": "MIT", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/http-errors/node_modules/depd": { + "version": "1.1.2", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/http-errors/node_modules/inherits": { + "version": "2.0.3", + "license": "ISC" + }, + "node_modules/serve-index/node_modules/http-errors/node_modules/setprototypeof": { + "version": "1.1.0", + "license": "ISC" + }, + "node_modules/serve-index/node_modules/http-errors/node_modules/statuses": { + "version": "1.5.0", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-static": { + "version": "1.16.2", + "license": "MIT", + "dependencies": { + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.19.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "license": "ISC" + }, + "node_modules/shallow-clone": { + "version": "3.0.1", + "license": "MIT", + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shallowequal": { + "version": "1.1.0", + "license": "MIT" + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.8.2", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/shelljs": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", + "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", + "license": "BSD-3-Clause", + "dependencies": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + }, + "bin": { + "shjs": "bin/shjs" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/side-channel": { + "version": "1.1.0", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "license": "ISC" + }, + "node_modules/sirv": { + "version": "2.0.4", + "license": "MIT", + "dependencies": { + "@polka/url": "^1.0.0-next.24", + "mrmime": "^2.0.0", + "totalist": "^3.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "license": "MIT" + }, + "node_modules/sitemap": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/sitemap/-/sitemap-7.1.2.tgz", + "integrity": "sha512-ARCqzHJ0p4gWt+j7NlU5eDlIO9+Rkr/JhPFZKKQ1l5GCus7rJH4UdrlVAh0xC/gDS/Qir2UMxqYNHtsKr2rpCw==", + "license": "MIT", + "dependencies": { + "@types/node": "^17.0.5", + "@types/sax": "^1.2.1", + "arg": "^5.0.0", + "sax": "^1.2.4" + }, + "bin": { + "sitemap": "dist/cli.js" + }, + "engines": { + "node": ">=12.0.0", + "npm": ">=5.6.0" + } + }, + "node_modules/sitemap/node_modules/@types/node": { + "version": "17.0.45", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz", + "integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==", + "license": "MIT" + }, + "node_modules/skin-tone": { + "version": "2.0.0", + "license": "MIT", + "dependencies": { + "unicode-emoji-modifier-base": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/slash": { + "version": "3.0.0", + "license": "MIT", + "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==", + "license": "MIT", + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/snake-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz", + "integrity": "sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==", + "license": "MIT", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/sockjs": { + "version": "0.3.24", + "license": "MIT", + "dependencies": { + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" + } + }, + "node_modules/socks": { + "version": "2.8.6", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.6.tgz", + "integrity": "sha512-pe4Y2yzru68lXCb38aAqRf5gvN8YdjP1lok5o0J7BOHljkyCGKVz7H3vpVIXKD27rj2giOJ7DwVyk/GWrPHDWA==", + "license": "MIT", + "dependencies": { + "ip-address": "^9.0.5", + "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==", + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "^4.3.4", + "socks": "^2.8.3" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/sort-css-media-queries": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/sort-css-media-queries/-/sort-css-media-queries-2.2.0.tgz", + "integrity": "sha512-0xtkGhWCC9MGt/EzgnvbbbKhqWjl1+/rncmhTh5qCpbYguXh6S/qwePfv/JQ8jePXXmqingylxoC49pCkSPIbA==", + "license": "MIT", + "engines": { + "node": ">= 6.3.0" + } + }, + "node_modules/source-map": { + "version": "0.7.4", + "license": "BSD-3-Clause", + "engines": { + "node": ">= 8" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/space-separated-tokens": { + "version": "2.0.2", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/spdy": { + "version": "4.0.2", + "license": "MIT", + "dependencies": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/spdy-transport": { + "version": "3.0.0", + "license": "MIT", + "dependencies": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "license": "BSD-3-Clause" + }, + "node_modules/srcset": { + "version": "4.0.0", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/statuses": { + "version": "2.0.1", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/std-env": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.9.0.tgz", + "integrity": "sha512-UGvjygr6F6tpH7o2qyqR6QYpwraIjKSdtzyBdyytFOHmPZY917kwdwLG0RbOjWOnKmnm3PeHjaoLLMie7kPLQw==", + "license": "MIT" + }, + "node_modules/streamx": { + "version": "2.22.1", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.22.1.tgz", + "integrity": "sha512-znKXEBxfatz2GBNK02kRnCXjV+AA4kjZIUxeWSr3UGirZMJfTE9uiwKHobnbgxWyL/JWro8tTq+vOqAK1/qbSA==", + "license": "MIT", + "dependencies": { + "fast-fifo": "^1.3.2", + "text-decoder": "^1.1.0" + }, + "optionalDependencies": { + "bare-events": "^2.2.0" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "5.1.2", + "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/string-width/node_modules/strip-ansi": { + "version": "7.1.0", + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/string-width/node_modules/strip-ansi/node_modules/ansi-regex": { + "version": "6.1.0", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/stringify-entities": { + "version": "4.0.4", + "license": "MIT", + "dependencies": { + "character-entities-html4": "^2.0.0", + "character-entities-legacy": "^3.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/stringify-object": { + "version": "3.3.0", + "license": "BSD-2-Clause", + "dependencies": { + "get-own-enumerable-property-symbols": "^3.0.0", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom-string": { + "version": "1.0.0", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "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==", + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/style-to-js": { + "version": "1.1.16", + "license": "MIT", + "dependencies": { + "style-to-object": "1.0.8" + } + }, + "node_modules/style-to-object": { + "version": "1.0.8", + "license": "MIT", + "dependencies": { + "inline-style-parser": "0.2.4" + } + }, + "node_modules/stylehacks": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-6.1.1.tgz", + "integrity": "sha512-gSTTEQ670cJNoaeIp9KX6lZmm8LJ3jPB5yJmX8Zq/wQxOsAFXV3qjWzHas3YYk1qesuVIyYWWUpZ0vSE/dTSGg==", + "license": "MIT", + "dependencies": { + "browserslist": "^4.23.0", + "postcss-selector-parser": "^6.0.16" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/svg-parser": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz", + "integrity": "sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==", + "license": "MIT" + }, + "node_modules/svgo": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-3.3.2.tgz", + "integrity": "sha512-OoohrmuUlBs8B8o6MB2Aevn+pRIH9zDALSR+6hhqVfa6fRwG/Qw9VUMSMW9VNg2CFc/MTIfabtdOVl9ODIJjpw==", + "license": "MIT", + "dependencies": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^5.1.0", + "css-tree": "^2.3.1", + "css-what": "^6.1.0", + "csso": "^5.0.5", + "picocolors": "^1.0.0" + }, + "bin": { + "svgo": "bin/svgo" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/svgo" + } + }, + "node_modules/svgo/node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, + "node_modules/tailwindcss": { + "version": "4.1.6", + "license": "MIT" + }, + "node_modules/tapable": { + "version": "2.2.1", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/tar": { + "version": "7.4.3", + "license": "ISC", + "dependencies": { + "@isaacs/fs-minipass": "^4.0.0", + "chownr": "^3.0.0", + "minipass": "^7.1.2", + "minizlib": "^3.0.1", + "mkdirp": "^3.0.1", + "yallist": "^5.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/tar-fs": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.1.0.tgz", + "integrity": "sha512-5Mty5y/sOF1YWj1J6GiBodjlDc05CUR8PKXrsnFAiSG0xA+GHeWLovaZPYUDXkH/1iKRf2+M5+OrRgzC7O9b7w==", + "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/terser": { + "version": "5.39.0", + "license": "BSD-2-Clause", + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.14", + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.25", + "jest-worker": "^27.4.5", + "schema-utils": "^4.3.0", + "serialize-javascript": "^6.0.2", + "terser": "^5.31.1" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "license": "MIT" + }, + "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-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "license": "MIT" + }, + "node_modules/thunky": { + "version": "1.1.0", + "license": "MIT" + }, + "node_modules/tiny-invariant": { + "version": "1.3.3", + "license": "MIT" + }, + "node_modules/tiny-warning": { + "version": "1.0.3", + "license": "MIT" + }, + "node_modules/tinypool": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-1.1.1.tgz", + "integrity": "sha512-Zba82s87IFq9A9XmjiX5uZA/ARWDrB03OHlq+Vw1fSdt0I+4/Kutwy8BP4Y/y/aORMo61FQ0vIb5j44vSo5Pkg==", + "license": "MIT", + "engines": { + "node": "^18.0.0 || >=20.0.0" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "license": "MIT", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/totalist": { + "version": "3.0.1", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/trim-lines": { + "version": "3.0.1", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/trough": { + "version": "2.2.0", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "license": "0BSD" + }, + "node_modules/type-fest": { + "version": "2.19.0", + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "license": "MIT", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typed-query-selector": { + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/typed-query-selector/-/typed-query-selector-2.12.0.tgz", + "integrity": "sha512-SbklCd1F0EiZOyPiW192rrHZzZ5sBijB6xM+cpmrwDqObvdtunOHHIk9fCGsoK5JVIYXoyEp4iEdE3upFH3PAg==", + "license": "MIT" + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "license": "MIT", + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/typescript": { + "version": "5.6.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz", + "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==", + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undici-types": { + "version": "6.21.0", + "license": "MIT" + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz", + "integrity": "sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-emoji-modifier-base": { + "version": "1.0.0", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "license": "MIT", + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.0.tgz", + "integrity": "sha512-4IehN3V/+kkr5YeSSDDQG8QLqO26XpL2XP3GQtqwlT/QYSECAwFztxVHjlbh0+gjJ3XmNLS0zDsbgs9jWKExLg==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/unified": { + "version": "11.0.5", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "bail": "^2.0.0", + "devlop": "^1.0.0", + "extend": "^3.0.0", + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unique-string": { + "version": "3.0.0", + "license": "MIT", + "dependencies": { + "crypto-random-string": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/unist-util-is": { + "version": "6.0.0", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-position": { + "version": "5.0.0", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-position-from-estree": { + "version": "2.0.0", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-stringify-position": { + "version": "4.0.0", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit": { + "version": "5.0.0", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit-parents": { + "version": "6.0.1", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/universalify": { + "version": "2.0.1", + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.1.3", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/update-notifier": { + "version": "6.0.2", + "license": "BSD-2-Clause", + "dependencies": { + "boxen": "^7.0.0", + "chalk": "^5.0.1", + "configstore": "^6.0.0", + "has-yarn": "^3.0.0", + "import-lazy": "^4.0.0", + "is-ci": "^3.0.1", + "is-installed-globally": "^0.4.0", + "is-npm": "^6.0.0", + "is-yarn-global": "^0.4.0", + "latest-version": "^7.0.0", + "pupa": "^3.1.0", + "semver": "^7.3.7", + "semver-diff": "^4.0.0", + "xdg-basedir": "^5.1.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/yeoman/update-notifier?sponsor=1" + } + }, + "node_modules/update-notifier/node_modules/boxen": { + "version": "7.1.1", + "license": "MIT", + "dependencies": { + "ansi-align": "^3.0.1", + "camelcase": "^7.0.1", + "chalk": "^5.2.0", + "cli-boxes": "^3.0.0", + "string-width": "^5.1.2", + "type-fest": "^2.13.0", + "widest-line": "^4.0.1", + "wrap-ansi": "^8.1.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/update-notifier/node_modules/boxen/node_modules/camelcase": { + "version": "7.0.1", + "license": "MIT", + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/update-notifier/node_modules/chalk": { + "version": "5.4.1", + "license": "MIT", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/url-loader": { + "version": "4.1.1", + "license": "MIT", + "dependencies": { + "loader-utils": "^2.0.0", + "mime-types": "^2.1.27", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "file-loader": "*", + "webpack": "^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "file-loader": { + "optional": true + } + } + }, + "node_modules/url-loader/node_modules/schema-utils": { + "version": "3.3.0", + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/url-loader/node_modules/schema-utils/node_modules/ajv": { + "version": "6.12.6", + "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/url-loader/node_modules/schema-utils/node_modules/ajv-keywords": { + "version": "3.5.2", + "license": "MIT", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/url-loader/node_modules/schema-utils/node_modules/ajv/node_modules/json-schema-traverse": { + "version": "0.4.1", + "license": "MIT" + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "license": "MIT" + }, + "node_modules/utila": { + "version": "0.4.0", + "license": "MIT" + }, + "node_modules/utility-types": { + "version": "3.11.0", + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "license": "MIT", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "license": "MIT", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/value-equal": { + "version": "1.0.1", + "license": "MIT" + }, + "node_modules/vary": { + "version": "1.1.2", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/vfile": { + "version": "6.0.3", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-location": { + "version": "5.0.3", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-message": { + "version": "4.0.2", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/watchpack": { + "version": "2.4.2", + "license": "MIT", + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/wbuf": { + "version": "1.7.3", + "license": "MIT", + "dependencies": { + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/web-namespaces": { + "version": "2.0.1", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/webpack": { + "version": "5.99.8", + "license": "MIT", + "dependencies": { + "@types/eslint-scope": "^3.7.7", + "@types/estree": "^1.0.6", + "@types/json-schema": "^7.0.15", + "@webassemblyjs/ast": "^1.14.1", + "@webassemblyjs/wasm-edit": "^1.14.1", + "@webassemblyjs/wasm-parser": "^1.14.1", + "acorn": "^8.14.0", + "browserslist": "^4.24.0", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.17.1", + "es-module-lexer": "^1.2.1", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.11", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^4.3.2", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.3.11", + "watchpack": "^2.4.1", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-bundle-analyzer": { + "version": "4.10.2", + "license": "MIT", + "dependencies": { + "@discoveryjs/json-ext": "0.5.7", + "acorn": "^8.0.4", + "acorn-walk": "^8.0.0", + "commander": "^7.2.0", + "debounce": "^1.2.1", + "escape-string-regexp": "^4.0.0", + "gzip-size": "^6.0.0", + "html-escaper": "^2.0.2", + "opener": "^1.5.2", + "picocolors": "^1.0.0", + "sirv": "^2.0.3", + "ws": "^7.3.1" + }, + "bin": { + "webpack-bundle-analyzer": "lib/bin/analyzer.js" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/webpack-bundle-analyzer/node_modules/commander": { + "version": "7.2.0", + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, + "node_modules/webpack-dev-middleware": { + "version": "5.3.4", + "license": "MIT", + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/webpack-dev-middleware/node_modules/range-parser": { + "version": "1.2.1", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/webpack-dev-server": { + "version": "4.15.2", + "license": "MIT", + "dependencies": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.5", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "launch-editor": "^2.6.0", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.1.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^5.3.4", + "ws": "^8.13.0" + }, + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.37.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + }, + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-server/node_modules/ws": { + "version": "8.18.2", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/webpack-merge": { + "version": "5.10.0", + "license": "MIT", + "dependencies": { + "clone-deep": "^4.0.1", + "flat": "^5.0.2", + "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "license": "MIT", + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpackbar": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/webpackbar/-/webpackbar-6.0.1.tgz", + "integrity": "sha512-TnErZpmuKdwWBdMoexjio3KKX6ZtoKHRVvLIU0A47R0VVBDtx3ZyOJDktgYixhoJokZTYTt1Z37OkO9pnGJa9Q==", + "license": "MIT", + "dependencies": { + "ansi-escapes": "^4.3.2", + "chalk": "^4.1.2", + "consola": "^3.2.3", + "figures": "^3.2.0", + "markdown-table": "^2.0.0", + "pretty-time": "^1.1.0", + "std-env": "^3.7.0", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=14.21.3" + }, + "peerDependencies": { + "webpack": "3 || 4 || 5" + } + }, + "node_modules/webpackbar/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==", + "license": "MIT" + }, + "node_modules/webpackbar/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==", + "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/webpackbar/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==", + "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/websocket-driver": { + "version": "0.7.4", + "license": "Apache-2.0", + "dependencies": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/websocket-extensions": { + "version": "0.1.4", + "license": "Apache-2.0", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/widest-line": { + "version": "4.0.1", + "license": "MIT", + "dependencies": { + "string-width": "^5.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/wildcard": { + "version": "2.0.1", + "license": "MIT" + }, + "node_modules/wrap-ansi": { + "version": "8.1.0", + "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/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "7.1.0", + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/strip-ansi/node_modules/ansi-regex": { + "version": "6.1.0", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "license": "ISC" + }, + "node_modules/write-file-atomic": { + "version": "3.0.3", + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/ws": { + "version": "7.5.10", + "license": "MIT", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xdg-basedir": { + "version": "5.1.0", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/xml-js": { + "version": "1.6.11", + "license": "MIT", + "dependencies": { + "sax": "^1.2.4" + }, + "bin": { + "xml-js": "bin/cli.js" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "5.0.0", + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/yaml": { + "version": "2.8.0", + "dev": true, + "license": "ISC", + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14.6" + } + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "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==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs/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==", + "license": "MIT" + }, + "node_modules/yargs/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==", + "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/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": "1.2.1", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.2.1.tgz", + "integrity": "sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg==", + "license": "MIT", + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zod": { + "version": "3.25.76", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz", + "integrity": "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + }, + "node_modules/zwitch": { + "version": "2.0.4", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + } + } +} diff --git a/package.json b/package.json index 8052173..1ba764b 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,8 @@ "write-translations": "docusaurus write-translations", "write-heading-ids": "docusaurus write-heading-ids", "typecheck": "tsc", - "fetch-readmes": "bun ./scripts/fetch-readmes.js" + "fetch-readmes": "bun ./scripts/fetch-readmes.js", + "create-pdf": "bun ./scripts/render_pdf.js" }, "dependencies": { "@docusaurus/core": "3.7.0", @@ -25,6 +26,7 @@ "clsx": "^2.0.0", "postcss": "^8.5.3", "prism-react-renderer": "^2.3.0", + "puppeteer": "^24.12.1", "react": "^19.0.0", "react-dom": "^19.0.0", "tailwindcss": "^4.1.6" diff --git a/scripts/render_pdf.js b/scripts/render_pdf.js new file mode 100644 index 0000000..d0e13fb --- /dev/null +++ b/scripts/render_pdf.js @@ -0,0 +1,25 @@ +import puppeteer from 'puppeteer'; + +const fs = require("fs"); + +if (!fs.existsSync("pdf")) { + fs.mkdirSync("pdf"); + } + +(async () => { + // Launch the browser and open a new blank page + const browser = await puppeteer.launch(); + const page = await browser.newPage(); + await page.goto('http://localhost:3033/docs/architecture', { + waitUntil: 'networkidle2', + }); + // Saves the PDF to hn.pdf. + await page.pdf({ + path: 'pdf/architecture.pdf', + format: 'A4', + margin: {top: "20mm", left: "20mm", right: "20mm", bottom: "15mm"}, + displayHeaderFooter: false + }); + + await browser.close(); +})(); \ No newline at end of file From 483bdf1905ca7ebb7241ddbff5136833d801e1ea Mon Sep 17 00:00:00 2001 From: Botond Gal Date: Wed, 30 Jul 2025 10:37:39 +0200 Subject: [PATCH 02/15] evaluate typst --- Inter.ttf | Bin 0 -> 874708 bytes docu.typ | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 Inter.ttf create mode 100644 docu.typ diff --git a/Inter.ttf b/Inter.ttf new file mode 100644 index 0000000000000000000000000000000000000000..e31b51e3e9388ae61767c692885e5d77ff7b5346 GIT binary patch literal 874708 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≷9WK0CApUWn4bB=meh;stxvU@ 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 z

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 z zX~Ph|ZdhLrh7HBXc)D^g1YD8;FR7SAN1k+n5s8;U#1eL1?>yV^>DGQe=CjA=^-Ex@;Ub%*zekqre2zp#^3y{e>cc7tzCcvO2- z`@X=+WuX$^#c3%a0STc2GoAH}riTg#oQe|W)(7tDt=Ul#IJH7AWL0Z^QH+0hu!d&r zR6W=>@6ngI;Dkw>UqLG7H37*qV$7Gwh`Oa38gC@!6X{6bBwS&0vS^kxEk$H*Wn~fZ z%+Q6yGel-iECWf|kf-|&fh=g{;W&8To$bf8dF%yTu zQfJ0Z@zW3Z?zdHk?)_Rb2_$S;-tM04jAD;g80TIx>FGMs4YJkC4h;5eHd zDx4=`N|4arMKxnPIZu%WC(Xl*sX~dk;f#e6d2n-u{Ci3!Iu+KY6?fZuxXW}Iey))J zV{t`Z!7dRX<$8ik(-j(5ANEU}nvWgw3&;IR*eNCDLB(OR`02@;D4Xc+O{sD7W(Ajo z3)@i6H~3{P@Pzy`7KMUBVETcf5*PhmkQ@xaQ56i!Jx+Fzjr&fH%;6A{7o`bB1Y+^@ zSTt5-4~s}*xc;<(e{8I*ZCoBkr-?MXNlby8x1GI1iaI(?oU4lS0!nIUVk(ia-;N7c zn;BwmB>O$d#bkWA8Uw!mVf>N`cq=XmeH_5!fv5iy{@$^%f_r?dtZaU>v$C+Wv#_#r zcr1MEN#N#v@bzj3sMZyH$jNA!DZ9|<>se~)ms#&{jSG;(mz3s-y6}W7sue+(Ko3Dv)RkDjSh~<__ z@%}QeLQdtE%vs@EJEad0 z5fWM^BaWqUda422tnqQ;_3Me3MY~0p6F>bFzA)e2?d)Ax-`DleKTG=S7xZ`D1r_0A zVJL-#AA#leC(e@lGINKT0v1M*=m$L#$$l4}qqyfE^8}!sB*8x$>0VycB`1aJf>V~- zh-Jwa;ZShuJ4HSG2+{petwmi;9T`Ej;M&wn)Xb3)RL#``(>fTuM?l&6FQ#=!D4?G- z7bk*3#5`%qPEqMcDsvyK1aI!6lwUCSC{58{oI>)5F_~zlYJ>7E_7l=5Z&OB!&Q355 za$s^V{znf08R(N>qGNoEV3{9pa39z5|1bd%xc6ksF>saqvnBvmXgA#T?jg2^Z@h8` z&{>VMppW+`5d9MU{DeIow9VyDnB*zJS8yx54FIj049?*An7@a_xKPi!4<3I`RN2Sx zgO4EVrk-rol$Zi;KLcd$yh&oXe{x=Qc}xD2Q$v-jZTpaZrYD+Dk7!&40|cNxIVn_#TTie&~dz-Jud2;r_cb4DpWH>AZM<=I(9Z%$wES8@=9O7%21Ec5LsxYpC9<(1q;Ayb4BC?J@9ACJTyCcpxtRJ;+B?% zhL$dkTPbpi>q(Bx&W=p(i38HK0P9m%ltHjI|9}AruFq5S;t+gEnF~9TK+wriaw9Wfo$Os^wB2;R)K!%d12kGCCk!^i!+xMK2w@*%djP-B+0*@ zSLPUer*lAM_E%|odva#HF%1Qq=*n}Q#*QFW_gqV-?{XmdQ0bt{p@iW1zrLlOJq=Ajajdmr7=)d0sCK2-o$Z;*{=P z%WiWP;`P#n6|Q1;3i%b@&5&?>%)>KK=1P%Zb4~o?^UsIm{G{t`fyR_xzxwvqYgBa! zp4|0MCW32+tC-y9NyrC6>`Neg&WyEw!OuUx{gz}?VBesgS+3$YSA6@eqkptOm#8Xo z9DU)G>t6JyP#5a`7$y5UBh=A$Vf4I^p9J(&wUM_L49{_$36B;>%bForo^WB2{J1L# zf3v_|uh{whhl27ZDD1^cBLvPu8hFSeypl=6D;Xa5yL#45x}FtXZlq@2B$MX(gNoi= ztu%u|ft!hV{s`Uaeo}qJV{`mZcF^EH*77sym6o3=4`WxV_^V%`Ad_4_b!E9%gSq8G z#CPof$Dqo^A8M$xw* zi4T5#Yt}tx)D5AJOztOOL?gJsc|W3 zsmP~B_=9Vg_%d$d`1utr%NWJ=08A*!L-E|GYn!{;J>GMpIE&{Gy0q>m-K#t|ihnib z+gu*=Y`-0}WQog-k3HkTzx)?$@xAoH|Kp>Cr$&r$RX!k8$)AoAWKa)z{slGDa%H#Uq+Uq8h;7fJ{PZ_{&_C4SCpxdU7*1 z4MSnC*ouEOXWfQ^cHZhLd)KbL@Td0Q>>?A^NoYRnXeLLHNk%)pg(e!A>~FuvkjMt~ z+a(wf^uXpJHluHMrH21Y_KSuHSL)4`%Z3e?_U!gc#}JUSw=7r=ibemZKt86x5bG*q z3cl6uN~OrUu;;Q7#a9@-L9dh&aiEH}->X-W|77yZ=k|W+dNn062|q`YQX;6X?*wCf zdZs=;1Fx^J0N}6UYZ#31S9@ssFKYYo7dDdMzYO3NHX{9N+fo2w0w2?eWa$SXB2x^6U@fzlp2VRFox>Ro=yAxx(_7ssT?FRSn6` z9#U2GMDmqZgZ!=V@sjMj?#eECyij=Nl64>=87&`?oZUWY`GLa$`&Ke7S}Dt#(j-=>?s)SGr?}CZdfI z>ztgWb_k3W;i#GhUZH-x65CaKAJZqUBqU!!_go?%fozo*3Ki(N*+2|`sIqmfl@VOk zOv_yjVi)%wG@eIEx9>KgkFA!53a{eN+F0b<)V|fiPiF+n&VwjzHOlA-!I+JOVd-QK z9{$u*!7~u2W%;2);4o76+F<{_` zcV0Fl!8GYp;n$vV1pn_p&p2Y5exQAFybZ&M%;%pn6=&DqvmS+*gzcPt@JAJFt0TGD z^B|i)|KiK_eBabku{yZ#B)aPP$|bk2YwUa59mTy%XFEykIm~*eEV%-Z#CY& zq+-r*T>aOtr(fEOXN?|}`Pjhvf4(>Bp>^Y5yRg_b19CnCITvy{V@o!d^B5TmFVMR~ z&TLbXAk9~P;u0RNQiZH(@HGKXl;0M2<-qCjL+S3J2#XSzi>oC)S9b7=6061K)zt{7 z6`z;7N;mrgY7y}Kj2Q^15|#^nWKRl+qiPAZidA2zK*(Zj$^8de&fc8i8y@)1(Bk_t zgoqbFO<(Tni3nyuvo`|U!Y(~lC}5n~8eRoxBk4R(m}%8pEUd~^#gh&a_LF5?3V24C z=$X{mpz|2fF8ygzkHDU`pQPj$pI_`6q^kJ8^P;=PEIacWp2CnuVTG)U>v(I0w@lv0 z;@)NR5vV#rDM@;4VAdn0(e}GyZ+BMSmG#KIF{WX{ij;zh27@I%aqxo%LlQU*bblmgsqy?0Oib6I7fqJ& zrDhTD(=ocd-yP!~i=;zEGd`+;-5*{<=)Rub(ehUbn-EBdkT2X#U+4XzMe-lJ+ZHzp z<14zGx(3{$Ge^?bTi&0!R8bZPG^Gf-j}Lq)W8`u8JX>Ful`dZnb-xaN>F(F0^HMz) zKHx8V**n43^&?y^?2SfWq3WUeZ#T|cuXn&pI&0&;HUT3 z44k=i$;^R;xs#u*ot*2xYB2ACJBK_n|I?RWJ@MKvZqLj$w6Z1XU~3W1E97c8*NlIX6A6i;mx)r$EAz>nqTZeknP_p17xS@u;7f=WgA7Nr7B44MkT z`wZwpPcgE`JlZmC+Bu=zg^%u?&k_De!o`PK`^hFC;pcA?AI1ci^B*u$cAEQqAwKn3GW+b9iH)%@X(+B zTz;S;Ecll6{K)w9J{3KB^vo=b&S5(;%;Ey+J_*YeAr)k8mg2+(^X7R268!_HH-LyQ znrgmiLL#CjS0SYFJ>LLkHvaWD!6PYNC?=0%K` zhwcqUuOcv)SBf}6kb#gJGzcTM+^FGOiIB6qcqjaQ{jqH+=Sa?O_$P8uj+~vhABDer zDAwWR4!^4${;Y@2@;-!>pYg^Syghfru7q5B4vRfHSBLzt2{Q`Za3;H!d9LqoM5xG9 zs5#619TD<#NEY};=B~(d<~HV?$=jY=l{*utciwE~a%bn2<=5j{pIe_-lDjBxW!?zp za#wKInA_?Qx51kR`4#DTe)knj%x^9@k-s8;FWl<4Q{l?|P5GM&0t*5`IgGpy z^Q%4u#{8{?-C9#L=QD@0fiKI6=f-luHOfK6$_6H%$DCEm@bWwplIrjek0D!s?y8ER ztru4XQ}$jd*nMEifh&di=HteHa>Fj=R%3*i&6!wXGxO->CjP~NXb1DPdqqj$MD^t$2M{lD| zY4Kq(AarU>18^P~ddAQ%`c#8i_Su3kLUcwt3^WJg|>0RDoow~uf zlN)J&9W9%?s-rQ{@A|dr9Z&UR#Vp4Qo9q3R<9+N8`IU!WZ)*4Q%Tu~*E0?*4lt)}1 z;-R>U%JuFYQ;XWdEB$(zHY!8z`f{_of4Ti)>cv;?56V+7rg*O0&E;%#bj2Uj2lwC0 z3oegPvHD_K`2gQFPvciwpH8`($~XJs@N@6-!EU@;a+ea~`i4=;hq+6qT77Zc4V6qg{IDd3kl#y`X%AdwuyB|2XbP+OFJT<;UBuzz~h0ex@zB=?!} z3LlM~-2=<3{IA=^QRUU`(*Ng)d=)cvJDUwJx8zcilzwY#c( z&ZXl+cFhl4d8@^^j+QUHIGz7h8}{!@E-k0qYccHp-JiFm=_qplxqKOmd(l|p*7B9U z^!{{@jru|^KfAtnRNs~cZ6elHcz@c+3FmE*zn)qmetmaC`!&xKw(miF}-OwRu8 zrmrpSXi44n@@*Z7>*nom`!Ug`?rcBga;p2i^4*tHFQ)kG&cz{@U!mRI$EdKKgO}-e zL-~=*Q(R2Bl0ICCesSu5@71OE)6v{6>&KePPjxiywZwDpoO*&C9Zyq!w&QVscueS} z3+0nBf7AKbr~C7%L5%yg+DdzAz$@5SQumgrc*@=ObJtJp({^=rgq8%9*Q!> zyZqX8|1ncXx%l@T9ZmC}k9TeJM*n9;KVI3dQbuRnIP=FU&-K{Ak5#t+rhMFoD(AG7 z=gM;}7RTK*)!7#JMx)A$#(p=N`;F%J@0G=kEiIc*`v3lavJH3h)O2?5{?Do}lEtB^ z?aY4sV_b~?FUZb+%y9AD{olXxJzMhVL)-I}|HQb!eSGSWb|v0>>LoKkPb~M|c4Plr zi5K?||JJOoiMjiG-)MD&-PDm+i-qy^*sF!#=rH$zsS`TRb81<~<6eJEch%HKuRry_ zKc%~N>hynCF7CZkXa2i*|F`kI(eDEP+wSjr%X4vmKXulne4rz9FQs+#+TAd99?~!J zkAJo2QU38R##5JHeC@lMy2^+C7tYsr?;X9fscSkK^S>pY`(Ks+w)YP=(%vt&k^dIy zwO@`a%>&wxeQi{KIr!c~TpNeWV}IW>WB+lh|G3`2ESGcjym#z~EIJaWJ^sG@{max| zynhD`&m1>)l<&2?C+jHB8y9ctmK(?G+Bl(o*nXuHm{ae%QrQ0--8^;Ae{Y$m?*H#C zTgOXwX}|8jHi2<*Z~cB=?)l#z=f{lUKJdeHbG1x8l=;Rd#8o*=jj`r z&-L&_InEI*4fpTQu7{5=&87XO`zv1v^zC?s(sp&_XM_H6eAqpyqLU9_-?^gemD64S zdlHnZ_m%nH_z?G*iZIky%=K}usJk?syRV1B)=aRqNZ0ziY<APT^rMiGe_ls3a=%wm($ToSckbj#;YwI>6hB#cO3c8FD^}WW!tP2FN=H0T8&G?J9_Ptr*Azuw+rtW z+sDHri%N~}+IMyz^dacXGal^Qk9Muk^Ddny`{eKbds`k?L{XQAxTjTiyPSICDDH;J zmHyn^eyc#;zw-~dcI^JL{WR`YD`-EQQ-j;W+O6%TIX}{il z(59qbn)cFm(LWrvmF0hZHSBJxECBxjSBvxiTbO%i<(M0B&+apogKq>MLMn&d7(U;} zrEVNn)ZdlRXUv#jq zzhOCE10x}geMd*oy#$|lF#D(`D0Q5ofiLRr(A~+tOOqz!2m}RxXRUmxoKU~j-lUta z!#4nx&#`j{-;hehY%C4gr|EEDB%jtB2gdnn_<%E!m80y>aWw}ueDNRi4lop&8nii90O-oJ7OBwTh;8m-8PB%;Uyl%Gc1>J9SYjlme1G-b-K8Ssl&|3nMhG*Alc>9os{xoeQ zj-lQ&+P$=L?=cjveVs^HiHQ2o$k`H z_|q!o1=5X`T6voE22TMW@FTWfIInmAIc+@X_;{oBD5QaZP2*oB3Ltg(3ejTn2YgfM zeeyYZN6-n+ko`ifuv8c(yega!CJ85nbHYaHTj@LD16h>^3Oi^f%@jj4F0Cy7L>sKN zh@sj_?NTvSyG^@8d;tG5*5F={rm(!N_|B4&>t0~3P>S9EvQ`m^CZV2A(tg~}Wj>LV zb?!sfk;>cLZ)84bi*X*HtN@R}%Ioll5n0yaT%uaIpU8bD^NCC|+<#A9M04DyQkT;g zz;%^^cXFv~2vweTr=%`aR=68emm!}9Ybf$zek1c)?Yh^e*3kXj|BU(SS>|j0$o(DM z|B(6QCW;zN9ZB=JKO6p7r2Zha45^v_8S@nl=o1u_6h3M{bprT-4t~tv!Tk@J4^4`c zwX_dSrWv#!&7y^LHEr-{8~r=|LZM1erBHcVS**OOysoTM-c}k_{12w;R8!PcHBC)d zGt^<~S=Hsy%z!-7MW`X!DF=mTnNP#HpTKvCOmx*P}}%RXJ}wO@be5q=6?qcV;DZ@h{^EtnBg-Y|8xvG zK6k4GxW7>X@eW_4yIh~sk6ifg5*7k(3?U{`PHqkT9Qp$qt1U=730gAS-K4w#9(CZM zpd{<*HXNumaG0!~$N2*CQKXmfN6F8-C)3}!3Cf;C&$yTJGO37PkNEYVzM;rGzx7C0 zk97EUEWRkelzzzLF4YL`r5e$_R2zt+Gwxi4)*Xk=9j68EDsW#4?zP~Pqfpm+qQQMU zNV9M>;Mj&dces<7oq~H3xF-=Ueck;AG-xvJXEN?*GD=hrZJ7*RnG8*ttoac4u0`4^ z`T=6>!1+%&@8)+_rMBRF!Cj@g5G#Pm88Ls2n6-%cYs9QY%v$9526Fs0V%H+}uMxYJ z1ffh-h@C^XLt4;uq{yL%arX+OpyCK{H=|yfmCnGc-Ah@0fJ+WIa^3K4yAC7DsIXH50-8r-EQ$r~ua8;S-p(BkL> z+#Tnhko;}r4{8$bAsL6K6mOsu&?a)9^b+jnHX2UjsevYWttf})!jh`!6LdO#l2+51 z^cngreV)EZm%_T%(YI+MeTS~6zo(n&Hu?eGPX9=E&_B`Lt(JF~enF4ZFX;*T6+J~y z({Jc^^c+1;Tc{f!lf^gmV43(oXGNoE6`c~GbW#G9&PsRX7Gh=pfjQcE+F~j4s=-ek(u~j>0t`Hl@Vku9`BP*o`q{-wr zQn@shG)a$1v&jb8C>zNxd7wOyd?bG%e?gjQ2n``0(_3gSd{Zs5&RFs7wXT|pOfS2By|$`Qhi*lA}7>U>MC+lU9GMrU#n}>HRP1~uDX%@ zOFf~UAm6B`)idObCO{KFzS9J1x{!04Zkk}?(!^=Zf}k0s86>EhyEH=ujpkm>eL^Qq zh2{yNvu3eosnA37y5@DEr{=es-wL;A-qE}x^wO-?tQT(8%34|It<`Be2|v|FY9oa{ z+Ei_-&{sQM`=k)2eL?%85TSiV`-%{)eN&77jny`48wI^~y>^2Tr`@RCC>XTcwL1i( zc9*tUuxL+fPYVe;StkpLf;}ntQfDtu3U;oz9%rBKTw!mv*V^msi|i}yYwa8D+w9G) zoNAmGIs5*$Yx_z2Ifv{Bbc8tiIP{JLN4oup{iL(zQmV7YQQ%zDzHcDNiar^eaU*~=N>G~z#Yvz#T)Af|isC8E7|N6Q&8% z$Y;U|;eB#I*emQME@7YW6>$sa#oqYvXJ0WxaEL?1A;J*Wk_dN;zZKUAQ^mF7R-sb- zqqtL;CGHYG66Q$3Qm!ypxZFf^KT3zCGomV;lg^1fVG26&7TG4- z#9negxu1Be{Fb~`>`en`fM}#$Xcy7MS{u=<1S>s6ixRGci#FD(hzUxZ5+^1q7R4gk z6^G&w9ZHIlB0819%3v{xwJ>6`QmT}SDauG?q?oFVRmO^G%6MhGn9f=oF+-J9SQm}dVt;j|x>6j#S|Rav z^-c9n{5!=v>O0~c>Uwp(I7t1S`aAJX^*!}Haj-_xXvDi%TO{7A>7nT<-mmGSi4sR? zESe;7oF-F~B~I4lX>J$GS-T`o*9_N;6st9lXeNu#YNl&y#5tN5G%t$tHFcT=;zG?b z&1&&g&6}Dx#RkpWns>zCYTnhnE3VaS(rgmn(!8hHBCgZCulYc1)O@b_TwJg1qwOPZ z(Au;K;=8QX5`U+CSo^TJNjq2jlK6Y=FSWlE-_tJAE)ut}R!jT?Yqi9!+TUw8i`%q+ z(EdT(u05zdB>qwRPwhX&o!VpCW8#O}o3-C+zZE~$p3|Na zcWYa;E#jZGZmnC~qr+4{{3M`XKtFLWwC*V!82^$Ck_QbOM26wZmiM8@DngI-2Qr_$ z5B*ysbjBZLd?SQF3(qqx6ov{_LXB__<`XXqqghXe`NXTx$w#4)-w6#|BX>a~^Muo^ zZxeemy%fX6`{5$QpTR{k9TlU*r^RQ*Jn=bkwpc9A5toX$vz`y(E5tS8Na*hS;v-CV z#V48WBK98fu=tF4L~If3MVFK-z9AJ#L&Wc-d!&()%KAvD3+p4LQ1p>=r9RN?Lz0te zw)8a9Y-ygcE%Hw({z+YqX4WFd z&_Eg}$1V9$EI-U_L;g8zW4t_3ouE#ZC#h4^O1T17Q7u0XOZbiajQYCzru?k>mimr7 z2R5)p{-t_UJtHrM_Uq&ZO(#v1+^C7s43hs0EgwmV<^jzcG*GifvzFe)^q3B1dQ9(S zdQ3~19@G1n9@G1w$H(YM%oID((b^Dg2%W6$sqIP2pxNPc3hR$)CDU*EDAR8`O`EID zrH^ax*4|C4pzDv&C$vv$pQJOiPidc`PibG&zC^2;-qUBaFKb_>HQM>w`Se-sLhV9Y z3rko+pVO|@uBEe?J$RU~KcNe>pK3p)uV_EhenuC< zPX11R#q5MG)qbJryGOM_UydeaWm9T_qLRW4BQ@IVyfDP;w=5X!b1?|rhPD1a8i>cxW zxI3ZAPl8$LKGo%)#_cCRAFDuad0%$Yz9z(7E(0LuxcsWr1xja#hk|)WNva%)+^ zt>xD=2-dO^e>iZnyoz?G-R0L|Ilbi7+*;m*wHV~J+*%r8ElKh_G=-+g?_!RSD{rFt zG++KbEvCitX4;<)kl&+s(Yxe7(7Wl~@>XtF@58RrMv+^FjS@}TufOc2@ zr2L5nE1xQ#(jFKu%QS>pDZLd|`ZVpWKBLx9hx&s00!>n1R9~dYu+l%!6!m>|8@*fo zQ2mhJqkg1*M29geh1E&0$#JmB59m(Ke$9Txq&ccNrkI)4DK=(xN*1i{7A0HTTN|q6 zYQwZ)N&&MyrI6X4Qp9XeDbc2DGnD??e%gM@?aU69fy@q-J79+sltFmH^SClZ`-Ju> zZ%9rv0@tNxMe-mQn%R+p0`sqh{qfW^c-DW^c+|*xTQg zmza$y3z>~6zhX9~EP{=Ft1M>Lr7UOGrMw2~Qj`_Cv%0g&DrQ~E>jC)z`O4~mI|BwQ zZ-{@f%=@9vaM*CdaMmaqI~jwGp~e^=Kf^u`YA1Y;VEl!aKwS&n_bGq#u%Q;?~r zDa;gavYRql3R973Fi&~Va>JZyfoZsDtZ9;InrWtK4&!TD(8k@g9C+Ceai#`qulAkk zxV4w5$+X3^)3lexFdbqP%jzHIOlQ35@kaqa$TeCT&BOx#dYsj1U3hKIth1c9oVJ!Q zXYS@XU%!7f4v@-bk2Cl7p=&!^hggT0qnLkv&a#6!v)OZQ-!~_N4sEnXbSRH3bB@($ z9$+479%&wLE;mm%*P83hi_9y{Yt0+Y+sw`8{pKU)ljd{gb7(IPT4YP0CB)LlqPHYi z(k%s+L6%a>7|TS;5;nDS0`}WsnuO|8F1+Q&iEw@t# zTu%O4jI@`@+_DEP3gl!t2CXZxX0^qDK8>@utQyd}@^X!XG>y1o@mS0f9+$OgBXE>i ztH8eo$6V_|+K^cBL!Ciq=w|3`h%%TB$%Y)m03SaC@t}6YXC!iG7-|^Fkh70ryt7Z6 zvmdg@Uyn1C+v5$}4ATv@hC0I{!%D+i!$!k4AE(4w%o&>PW7~0)?3cO3`iq@mf7`X; zq~RPM-vt^&jD3uHV}dc=aKvyjvHntOV!h)WbH)PCxqaWh95Gho7-TFpjxkO&K5DEs z&Nj~DDVMPj$2oh^_d8>wakFuUagXt!@tENn-YJJGadG%caR_A z61OvFI^j9T^lHyJi0Q29Y~t?3-DZ*b*W(;@i3jY%&7JJSnKK95hbJCzbi3S{L(QR% zBOYgOus4`vd{=E}=a?(G#G{Ev{lm;w&y_jVKG;6kImo`i-jYHxobA93|k25bZ zFL4li6LaQO=2aeaiND2uMQ2`T-)Y}z-o*S%++O=-F0sYq%-enF+Rm(Q&AZ!b_*#)& zF(0ria6$GU^HJveoMWZO*?Tf)KIJ*L@0(jd54+4|TE^mmsbcAA3A4mo?3PSRk!7%D zxFzT^%2>xxd!}WQquepxGR-p6F%m7)w(D@sj%#yXd%3FAPCBm1S>`b3NQN`Fx|NPa zmIapOj#~Si=+hRAFf2{>v5p+e7S_{Sc3SpY4q1*zyDVp{#HzD)vktKKwnkaa)?{lA z@KEbW>v(Iqb-K0IT4!BkU1?ow-DurrZMN=@(O8dIPg>96p>~2T&=z9rW77kr+X`%h zY^Am_wu!b!ZPm8fwt2Q?w$-*q`?SOgd!}u(ZHH}-?V#gn^mJsj)JF7La1eG%({JUtKVQBXeb*x{nS1TA_@ zuhv$YwXt9wnagwi9iw18)N^w`q^X*@Kvkd2I^z``Eo{rnkKzhWX1CMTw z-i|0}Zn7f>63gK-JLeb*n?x?4Opod1s6{-M8_RE{V{J@V^nP6(8)31{pfQ=91Ya34 z55Wjl?@Vx}I}4nHVtS#?AEW#>=a6BAp_d`TV9eQ)bBH;^+?*!(PL8t-C59nh`Ut}~ zjd7gjdG=T%7FNEI&?w5um49`#aQo@Ws_FEA}PH5ATd&hw-I=e_JXLGIAp zp{6rtV%FsjHFv|&n^8Q@Y&IvGb1s?-Mw!isa|tzfXvti2tz``SIvn1)BIbhWxbn^z zOXk9zEt$(^hivxP-nwq$U{*GQpU0&gD4bKW##&aghPmAF%*QOP2IpODmR7RM=L#2C zS6J7;-(cNp-Bq~2=WL>NpY^Quu=RxXtW9Lp+(oucw$ZtZa2{rxkXvgDwRHjx#t~|Z zu~~UYD)ZZ%EzdTPU)9eZKr@*au*dYPf&0KCG<=PONcLAp1ToO_JqvBhJ>Po!SILU7+cuD96KjWDrzoj zPMC&cCPO&SNm$@Pxkqx3B%Db&p0GTjA(13BC2V07&~|#xKzkDo`LH+ac*2?7BZ&lu zu4G|iw~~c| zXp0h8Caz7~n79q0`xB28?axb3JehdTF53h1(p%kZdr00Gd!M{9d9&?$dxAYZZ=$^b z#~}9qdG=EKGWZCCKM}{H_G-`n>Un(oZ2LT*G4^Hl&GyyyM*HTXDEp3rQ2U;OP@seM zWA@VpF?Lr$j6+itRTSmu>gWYOf@33)(~-rn$2m&!mNDlT;uyis{Y8&+)HudD${baW z8g`wxnYp4U&)G58b8hvIIXgKPIz`8dyd91;&S1xeykm~7j$Mv@dB=Rt8O)I5u;YZ| zET`?rJLVLfot(kNjm}U!dWgZ1ha(mKz@nkdIfpq%J15{=;hf=|<*aws=lAls!luF| z=aT$h&Q;EJ&P_OP_t2Ay`o}nTCuPDvz;IHL^QiNbvn5GM3Sw7DJ(I$c;u*qW$8{!- z!AZlD#=@G*Hz{xmrk_RLY zEhz&U$^15#JU+RcT_N`LuhJ!hcCl+8Zu4cn2j2Xv$>sY>mdax8s$%IOpr zuqJ&$NmZLm?Zt3vR~$g8MjR384W4jzRZ^9|Ce@jmmA@u`S87S>kkk>W<5J5~tMYf{ z?<(n)T9Z1rq*sBMdIHD7)D@{~QV*wY0Nz@FmwBnXaO?wxg`VYWi;sdH%$#qPF~dc5 zxr@@4V7+l_+j`@)8ELc9>it(BdnrrOR;8^=+f-DSwmofk+U}xlX$Oi<<}T`QO*@L? zRM9!+(pu7$^dPvN>0#;dMRn=+^vsNr=|x4&B^~;u4^AKM7jZ}lT>9AbvFz;UMwDEe z8&?9CK8g7kyYy-4Gd+~_IUdI(e{oHD>IBr~zWOPtxi(ikh`IEp^rqtK^ex4u={w=} zrXOOiXgXZE&lS%u=~cX%x%A_3XEI2JE~8uVpp4$d^NNx)q6!-_%sGcLk_)G?u}x8P zMh+Y4WDLz1kTIZW8_pv$re}=LD2HF0QJ1kOV`awLjEx!FGMY2?XB^2mnQ<;t&J2VL z$?TJ<$DbjmXBK1*$}G(slQ}W-(ah@1*_rb)m%**hY|Px8xg&E==E2NknWr;d{WSf$ z_UqLz0?yda*)OYKNxvceM)VukudH8HznXq?`z`FZqTiZ+8{oF~+tqJhzr+1b^gEj+ zW_8L6&I--S%Nm#!lV#0H#hKxOS;MkMXHCeeD4dgXD0flTjI3E%^;t`@R%NZr+LX0D zdvMn7tOHp`vrc8TWGmT0**&wvvg5Pu*_qiz*@F#1*~4*+#W5*+TK3HBIoS)cmuEL* zH)U_h-kH5O`%uoL?Bm&Ia!8IYr&~_%ocJ7jPG(L~&fuKkIb(As8G>`B;h2eIPR;`S zuWSQGX*1c#1mlV2g=iU>Lp#S>lf8u)d15@f6C=>QIF9F>$tAhElC8Pj3P$Jl#(2=2 zo1B}IJ0N#x!Gw~zxg$&FGETYUbIVJ1Q2g+--$8axn(T z-G6bfo_nNZVeZM?b9r)JU|vXGpFBPK;{^1=1qHh?@*0F=Oy0!2N70+I9(Er3ztwq- z=+$=Q?a4ccUg~t7D_@h}6@7~_KcasOe52={3i9%u{e$zf3Y+pv3Kg`%Lp<$m{)qf> zy!}MmnP0_@{F?l^g?sZCUfjCjYEAxz{HKlqU2ve_Xu+w1 zmO`a4sIX^YSYdpjy)d(|h+8OcI|~OF4lf*AIO*#3Rd^ikOc5#46?H4>jnP$9k-50B zD7h%7XaM@>kwxQSZ_|rs7u6Nj;;1WHRJ4*=Q_)(Ck~S7?;~3+klDS1kicS`tE0&7` zi$jY06zhu&u77Z-4gE-fBYJhAxE;_Cil@$BMx#miu~jm4XbcNFg_K3IH=^^V1^ z5=}|hl3pbdu-AwZV~MlBSmG?nLK`;(Z5V5f%D7Z&FfLz+QQ8_dL%|q$U&-N;6D4Oc zhUtV}IkbOFe{28L{&`q)EL35E2ML9*A)Po5thEiapf$e_qX1D}xF;Hx~oLMX6?U_mZ?hE?tdkwjpDmn}%F0}c`n@;Dy;zu__2 zU0{hX{G0ea29hY?Ad!`yl5X&IB!N?AGoNEf1z1bCltj-xcIPo=_<B+Fb>OGLl zCrFIonALt~UP5RArxd~uAToUHOM)LHKF9qR;OqFk;|z>{4u_AwOXvPi;LE&J0_QJs zi3N#apa*a)@_G*v_Hqi#s}sLR!plZTG$^f@e+NB=xIHD zg~ZWc(O(e@T}+n|D_u^P6FXf&R}cq%ovtQM>{9qGNybiv^(2+POW!3~Y_9^z#%_fV zNiOy&>?ZxOSK%``~}Me$MtLkaFx! z=uRrIpXe4+siY|-vDo>yil&ydAf#Z*gPQ=V65lNHK~%3QKisZ)MQ zRw=J2zap!ZrOGn$TV=Jfn!Jg@xca_EjaL{!&m+ z>8PhP(u1a>wtkA*$|8w0n`VQ8-6DvYhdo^uwi*nS0$PALg|rZLP=tCl@p{$rde!oJ z)uKk9#15uvS`971{u1D4QO6Rm;}FzwJqe>P)0asIok!;Z&!_WASGs^MfR?-h4d}`> z;AUvRV&Elo3Fz1jgB@nepc7iI6I!kl*ds(=Cu!Ijwi@@+KpU{HXdQhAc{R}{5`%p# z>w%emNYIaMBoI4VKEQ4u>}r8_?w~tB`4jyUC_AA&I<7qdTzgcmJrvq=h){YMI@Ad| zbcFPw|D^vUed$qp6!>#!RbOb;SGdPh^b~Tzei-2IXbXHdbz={fporMvg&i>@nC*!n zU9c=t2YP@KK%%fa20JXFh3F@+OQtj8FkS2dUF?aawYNYct(NGS%T1bS@ddK?Zt#x60XOerJ1l_^R&@Kj|g zaD`F&bZ0w$umkQkSc1SULBlOU150ocjfx#W>$ zmZ<7?>N!HOGw3`C#O|OL5`Y~-7l2)`nE-AxI@rv1(uwUEBC6(3nw^AdK77i||3t?jDq3VgHnX5enHw9eepD7Q3;TN?TiQqL_-5=V)n zNM~+uR&H+r+}`52y>;gHCVAUGwl7HHHimtiu(9sk#zOsUEQ;G$2=+7fLui|&#j_Qc zpfF1d<(3x3EiJ^)(tgU@OMzRLNN3Qepkd6$D1Dkf4a_V}q&2h#nAsbpv*~QuCu>=| zajWait*#rly58L0x^PSD!fmVzWj3bzS(L;rDwh5hEv^8&Y64GYQF`9)3f!)!pIvq0 zc6F1VU3K!at4`dmG_b2f*o*jg%Jx7qySjRGZPPj0q#m+O%k^avG?N zhrS9lk%xu=jpvB*8_Po%0F7n{2eFOd=vyTiZ#El|??Rv*w$(%uhXW0>Ed%Xy`mt?@ zZ8>O^er-zzZ%MqDHroauXNjBzN=MG1DI!8=fcC8-*?QWlkoGljiMJJbQJ5_m=qb=b zZ37sh=WM~)p^g-Cscooj0cZ<>2HWPa63C_2eYTmPeGaq-cZ?DsG}ShVN|JsD6pwEYNK#jz80!Hq zim>iRS(=blx&_X73grP>0C2SeBrT?1NI9(prSAVcIUgz79KFyiC^7-EL$x*Kzm!7Zhh3U4Y|d;Pg%BDb^&z)+GN=Zw7~t1WwSL0DX>4?veB9h zgnP5#PI2eIAp%xt?(@<%G8+4CfhUyCM2dPV#!%?@h-EHMu>>h*TUK~!wLHa4gyKM1 zx+8Rkr3UhY)GXDEM!p4_&XD*x5N|ESIY1Sh76HUt3*il*iJS{70oNh%mq7D)JmhW} z&XDvV&@fIL3N(Zv;X5D?=j|wSfd!T)VL!hm#{!GTxMHJaoF&gAE6V^&7DJF^j>U=4 zIHb+v{6+y~F+^EO(_2w;E3z}BtV5`kqn$uTjv!Bqo}X5Lx|jX-A^P22%=nxox7 zCmE8#)qI>Il+ApUBjjm@h9VRtG9P3}dIV^HE85GDh&nQZ6A z#*oqlXbVTMY4awIAOrITj?fC2QAU(`0?^u4)WDGRSI|~5B-aA1U`Sad9yKrHXf4np zhSZZl3mC$V$fM?ZPCE@Wm!lS-*$gQU0f7@z%mBZc4AFGqym^MD7I{EU<|-bq2lc%|k48kPCFrJc!2|DMnf5nbD`n z{XqkFhJ+>NJPRyYgf5%27)|(xTxw1?SW(i!VieYek4J9N;>%{cWf9OU*>1L)nRfnO znr@zEWWCTga(A=dY)0Bp(Bh5gg`^(xTjm(E5l8_|Z)Ckt08o^1I7{nlHfI`P3*tBK zQKploGc2vE*>uW?UPwaEU^-zs&C-H)(#TrY0HEVW*0O#iJzzR&Isy5?R!zrPnblti z7Sj>aamHDy@Px`g6StX;8PKw7^oVza$Aev(4lzVe0G(t=6DA%-N`@kVw)1#@7S5Xv zo6tV!%G@SE88({)Z)Fn$hgdrLO#Pts|b7C66Lk9vC0pUw0+^=R-5w&3pY(=_Oq%b5$ zB2?rk4Lz5OBiy_797kw!tY;XKzze;p522R98Eu2{D5ot2I?NGdYdpw9M+5EWG&Vxm z%n=(QY-EU!5Slo$fwqn#HbPj#5gQ?JP2eL0t_e~-Xv77&-N^e!O=E?p@Ih)b6vE?w-GC$K2SSr5de zD?xr1Pm1wCJcSHNSa=E<^0e?2GVa5|Q^@OpjxjEHibyO+TG1iS8TVy5z>pLUw2#wX zLvGa^!8c52NDe_LxC4a(ZDfc-`@ACr$i#wtKpPIUh9hXb1*HJzPk?xBv2m4UIiuk# zA;b{R(c3^V9HD*;5geUIJYFC2%b+1|aQ+gg8%NL=1LOso6{r(KQZclg>zX`(ka#X3 zu?UDuh*@>~nRv7?Y5>q#mO{J-dGOqXJkYp=giN3#JTx1~BcW2cH2y#|T3+%yS7Q9W z_=BkP`_O)$LRbzl4{BYG9-E1(s|3E&JZj9jzo_N35h~hUB{t zx{4vpwn=;#LsBqk{C)-KPdu(5jrYWtJ*Ls zPj~}J6OFN;uv(gK8X1lLkDQaH$DNC2v#*fHuWp9L_m! zj>7mKU$U4Uw=rrHP%uza6nZWJy?ords8v9(OVf>eqFDV71Z_nW8~@J(ZClhVPrh;U zqGo``xYR{KUxYcX=D5%(rY}2zdPSjs5#9g_i5dp9+SP2F6g3bfI0u?8ij9IBE_{Jc zUUXum0!(1=Dt^jsq(tGG?SBC-nl_X=8pbxaS~j7ASz2ZD9$>wGi= z*B92K>t}M>e4rT|!DjR;IeHUZxP7ozO3y6-PxZVlA?rJD8QRK^TMru_8n}*Av}XEr zU#K@ND~rc^fD8k9=q#X;R#Xr-5+!9N$l)}!2l`Bo=0dYuIGRF8>~W5I0v+Y(X@nkT zNKOZBAE(U$+QSjb9NWxMHPB9uCL#qShuqMf#%|(hI%u9dN4%cXIE`^$z)=lQJx92X zMR|}Gp|Q9ZFRJyS_%e>3LJH)AP=>}s(h{DQlGw4FRs}SgA#pQ82Xn+qI)owNW+2{f zh-VR+%0tly#5)<1z6MI*G?X&d%uyUrJV&U7*cgsb=kaK5z^?$bUJQ}buK3uH*xo>B zSz~*~hN1+ezEBaPn>a30DF?JbmO?^_Vs)HfIFP~-T0K}V3zZ0oK^cL9Kx<@3K>HQ9 zmZM27Ys^802;#)-XGo$zdt1?NhQv)s!8MWfgE5>ln+wN4HVDlI+Q^WQ2-L)B_X4eB zh|Qy8)^J)h&}trUD$q)fAcL6YJQR8rvxK9EfEF?&$;daD(?)~F>r$)&;&mxbaOK9# zj6wS%OaiTj#|wi_9^+^z&=H1Mi>^P!X?2LlbzFQKXe18}1scvnPaxhVjpC}p3344LNjvNtd7!?_;ikHVq2_e3qh-i zJ!@rcAwyQHFEqx=+QQB1{MgXAO&m>$Jqn?KruihcQyiNeZr1FH72^^-DCTTzBhdTm z_}I0vO`Ntec3rH8b8gH&JT<}ipEgHxeFx{Vn5|ayAe@GxdJuXwAUTpYM?sf?(tu8L z6bp2cBMZ=Rh9uk<`aB=v@}===ZtMUv=8ix$vFVnB4AJJ;WEM|+Qk@cOk4QOZq}D@G%9Ah zehx#LPog)*ZsTZA^x9aA3&csZ*<+8=UubhAmy7f_ATAerD-f3pwE=nLavRV=R#F-b zOR;7KQKHgQ`Kr{FG=^^mi)1ZAF|9SB-Q#Gbxs0PJF`;_s8mHBTA5T;h1ytw9$vmI*xL&(?Le5&Z;$0(~Qf#Xp)KP)mfz7#3gxFEsGj%4n&IHv^j!n zle7xRqfK3axYXoVP~_TMfjehBs@?5nO6`qt+b3r6zv^w2R4rqa9q5 zy`b$`3<-AwrE_#MlO$%w=zW0j6$%eB9W)%}XjF6zT1^%@B{~BA9*<|*Y=rDt3R9yA zIteu2v^pjVclj_l%RINqKmfSQ-@+=m9Z4SmaXXUU0`lDXyFea&2?FAGE-}RKoaZsf zxRK|PYbr26ro#IO<@YA)f%v^4UYSX6gq;gpAp4DM?!ZwKpF4mS8Da?Lv{6y3qIYmK zC29qF7#=U;oB?{pQbe3IrgAht;s_fpOQUIXIC>?Z@j$Z}!nbXj!+FnuZ`3r0S92Qb zBYZkX>wwTlBc2whq7{`f#Pg^%9Oo!EVtPEY%W}j+e~diBfzZeB(6We;tQMqcxFZ>J z3m{mA+Ck1Q9>`;5FGCu84UFH*>XgXc z(U6)XtD_=!MXlwiCUS?t=|SNqFiT^hHIW-JD`jX(WK;A^FKwNnD@VEUz2h++Mrc`l zH})KlrHI!V6ozPXJPH65q}GJj#-H+{>6l9~T5fnbn;r1b@t7SlG(UVK8!ZD(i5wE$ zlOfF~;R7NEakM8qCvpG}t%)p(hfX5isK~s?GhSL2W_XyZ)8?>XmaiNN)RiGR42ZY) z6zx@*j?;z%DIARf5*d;{q0N0=90jRmVSD38AZ-(9Tu;SX$o@!t2xMQYPKh|g<{e@! z?Ck(gu?%P*Lvm-JJq(G@B1LoD5f6%sj~nYnVR5Vs;EZ!>2JXpM%zDwe| zaWubgeT3dai-^LIl!r!y={@{LMTADMzVeIshBqFd$D-(0K}WikT?TnnH|d{J_9AFjVSfdViv}hdC^=pwiM%);P6R3_A{i8 zh^Y==1Z1J-!bkU5#%T%RBf{%F@nXjGSiosNiz$upgpPw8S+w8$7e?{VVk$1#0+Fg=Z@Ux#<=!8B)(TpAwKV-t@j#>hROuJNJ)#&wnKy(T2O3Aug&hq($!Q5;$HESK;>9csKFVo7iR@IcERU7J&;y{zm?5mk5g$P5OM*9W^mW*r zVAQnmB5akn#o{96-LRUlB?uj*1c%HCW^x_{evbw-xiH$a;9(vVHa?i?K@L)k4VwUT zk6aoW#W~-Dd`AQqF&h0iba!wGL*OzfcmPMip__t(y=Yx<7)Ozzt76!_-9x_)Gj~75 zkovRG`f#QP_oyR6XN9%!c)?*kJ)w#iTG9QShZZ`aJ7gu)D?w3Jak!A77Q z(9Q-&0L=#NSa2^!Q{U=)q&wsy)B_#r4*S5H{ov@K-K)K5K=-*ENqx6>U*M%BcSo(V zczri?XZL$A{Wv zRuFMdDQ-j&sWpgu6mY>55w}zkkswkRE-G~)iik@Qky=o+R;^Xs5fLl3RLSrCd~Q&* zwqNb{|9kyj|JQlVJ5Ofj%$b?znVILDd+uDWae015i*!l8my$Zal!sQyx3TluJX&t~ zIzt5|H=^4v8o(%rcW zly76%g52GyH{~u;>ON)l_N2?Ky<$f05|h$SE}K?SCuu_2mF*_EoT?!cIJ#OIcUbDy?f=XYLU9+ zSPeRpFDGXcQU=$^%q^yrQAp{z38aFw))n!J97!2_?W*9qXsdPmFWXZxQby^b_FR{~ z_x3t5XBN`6L3R5rIWH-$V6Up2F(xtB_0Ku2C9YS_xE85PPPZ1RT~1#~`|MSq6$kyc zzc;5-Dz*KRoHCPQpS53rk+x=UZjm-;(=V3Vep>e1Ez-H! zuS(jd?X#NOt-RB+7ZcZq@)qT^LpqGOW3%adzcTK1oRf{c_yb6-&%v6AE9iJpHaa({ zeeY~EBdKRLnnCj0cgwD)l#!rci0fv?opx`vdyly3X+t``*K*V3O7kKMzU1yq9EVI8phEiMz-o zFNr@?)o}vS&BRT%IP(rW_EzeB#EqB4eRl`l*#uUXF&5`$B8^h&jYz{x@?S=(l*D~S z%G>14p$)~0l#e_AcHNYU@7P8y_qLK+r_?`k4YkNS4V~|uWwXF(^nKf`1xO`9b@`WB z+iV12CB<3T3sOPHMAk(nkuRP#jeN7ow<&84662%z$ShkCvB~1ftg$A=HWv5ILg#*e z=Fa&lnK!vQ+>&(@sa-jDL6%w5Ye@65%$g=6HCW01Fr*u@CKLAwXIzkV3et4quE;tb zsXKAUTgkyOL3PpVS(U_{OzPw;8)cSSmemvK)L7fZy7KXq$4p%$Kg>MZa`mY<1u501 zS0JfRz4Mu~2dIbe3d;L_Bk37{$CHHeUWy}Mc@LA^XJT)acP-~??kBOgicTzNOuIM7 zJ}K|gt{pY-+lcFBwUm|sh|EWAtjy=1Na&AsJ zd72BeipZs_m8Kcp?+3i;rmhG}0a&IjQ%4nPWu-h*yqm1?3y}-S-bVun|NK4&*g_&iWkh*xC zOShJ?HoA|x{Ytl4$?QqJt8`0QHPTw|fYJ|2w_3jt_fgp}>le3Q!K-DraK_`D@p{=D zq~8&@w(JU|&BU!Q!=BxhNNdZ^K^lVeY}rJlxk#&3@+SBB(v_u8x8z%8CA;@g%B->h z)-U9HpsY7>w-9$xSy!ax#4ReTK%$kU3(AU+UZGa=N|z%&gVa!ZH_{78HQORd-Hk!F`#uU&vNuhe>NE>c73BBbk)rj}aUu8M6a9WP5{UMoFO61H1< ztVyvW$v3u?w#6nQ9a(B^yMWXY%EwqJtuiU?d{U1nrEPxqxK~<9x*z9mF_jwUX-}!1 z_V|ay4k#T^%6Q{@4jb|{|MA}ThSGyeza-Ae)A)#uLDKl(9qtYIi&htAxY7zqw0i zB%Mv%Ic-0pysMEWD=r)93`tj#?*d8O+qadrVmBeBv}M;Ft5jyBwnv&2e;rBMik-u` zseTzqTz}=eoH(r?dJdjW9KZWiXRWa-rCN=C+7>AHEaLKZpVv0k)|sRRisOv72&r>( zw@V^5ck4ION0O*p$(xcWujDmJJOe4&Bnc}lN%cF=KuXqIoIQWfU5*8%q`OOAl~kF# zpzVMb>829KuE!Iw+p5;8_uXN8HE%ebt<79_Jk=nql8%tsWR6qVeYdhjX7Vc_VsC% zZF`iorQ~b4?yQm=NkdBNN_ryAA?~7LoBM7eU%O)FG@gM}=FC?r&o**yuu^zZQJFKR zq^w1{qL^9L|BTd&bd43HZY#0gHR-)#<_DfdRF-Ti-qIqiE2h_Yc2HS7shGLXo5AWo zK_$~0#aoMQ?t7YZhZWo0_cSFBP{}+AC?1eDmorT2oi@cJ&h45usYR+tV;=Fk1=Ynx zX={-d#OsUmii=H(6&0tq%|kjhwjnw)&GcJIs@LW#lVU|}zAV{+#65EMinIcgVjHrT zrCAS|v^Xu(q@X%`o?Vwa)ERBo#di{S5;b@vzKt0k4Yql@*w#RkRH}DN0)iirH-vZ*!gi@yPEjjKpkT%EB zKGMcEuf@%B_-vugrubyy3gWM~+0cgGkhG?a^#=88(}(XcAqCZKdc+?-yT>*pcJd7>d>5o`_U$S>;SEJQV%Bn#?0bJmcsp;$k44&- zxHtJ83KDTI#cgcyyra!IvDaFpiLpma;=0u_Yq?2dd5g_@ZAfB$5w*gndp+@V5$lPh z6-5ikcWGK>qN}CaSSapTG@rPw#8nm1SN<#X_!ULg8y6s5UQ|aMqoU}HqNzxXg{&P# zW+iJmqixXyBt~+ZE=5-7)kx!tMv?C{q%lR*+3YWCZBZXmkEMR+#%Q_UA8ASqUApKp z%?YgK*1HpeElAi^)?0zKoW5!^Hh2|jG}4j5dL*8_wHXmSjg(BQEPSo-Eo&Qb;{sZ4 zrDWY5ET-gsu?>Z5f`v$|6NOI)4P2M<3ReZQiTe}MW5Eoh%Cs4Uj|3Nx%JcWa<*Ctw zBwO=VQC^PX0;Eih9xJaw5^GGMMzUE%;hccpb?-r{56sp&BVENix%L!cV&RNJ`jnbZ z%<5H0pL)!(g{g7Qr&5K}RNiAq=cc5zS%qg5GCsV=iJPRjXZ+_2Cl*d7?sQ5%Bj|~A zDbi^Hw&tCWG|`^RdFRIq3ablGLHZSO;{&rbtKW$%0=_$#^0XFt9fRu3L4{*UJszpQ zPmlX~NPT?k@r$TI-@@@GamK-_!F|N_DjY!^Yd~QS#Z4!!YvC~B{)p76up1KoN1?n9 zkCm^mo$@`5WQ&hk*sQ{ig+)kHiOW+e>q06OOPtzzWueW9ucS>a_=f{zNY9BgfB!FvT}In13rNwije5icm%?A>irP+jnr&s<{nErpIZFC`Uh z@X(Ccm3-^H%aOVxt@WmH#y|K~gGt^?NN;fNW8PY>L65iY<*h>MPrl{eIL;WY)O(S5 zDpqidhplBvQ}yZ2dSj?qzKEY<9#i zD>%&ykwzm;aCaenf>iDP%~FHvj7NB5lh1Ey<&o+&^qXyBP^9$(ZCazxanBO>|$R_PJb* zi;;?sGLDzD0%@E{mYS~~_p^{TEA>pIw@mVXL%v=nIiJM+{0**I>;aU#w>uT715$-M zDK&mG*>hc;?FMil%yrsJ?g0~Sqj;S78}VkCuJ6t#oNC1^fCWxl zlN}zDan?BTT$t^Iir-H$%I|EF{DRTDMXAc~tdTrK90s!-SM(H9DfSb)imSzSBDZi{ z-D;lDcit23(I&gKM(-qXGW7NRq=Y+Hsh=zUE~C>O#`LZEgvVsgxvdp{us9p$IRnMM zFxPQJt6`y&Cb$azkG zm~gDjY{z;g+p+#HP&oxossz(}uIg5((sI?ex!S8CSKn95b#lm)=M;<94|z(>b2{r> z>+M{9n=M~GpR0S2ycX?SYJtirZ~|oJbkVGc`CBww%5RB}At$ttN4A*fbW@%-qFH91 za|p~;D{>u;S?4{)`4p1nU1Q_!LvYj48+v+^7ZTd8#k=Qzc`Z1h%% zw<|_7h9|4=hAMusxIomb;tfO2b~;*&^S9brZ7NJf{P4UW;XRm%KmBmPKW26y&$q zbEci;YD{@`k{=cy5*Hbrly%w2%4@L-J1bW@@|^&=K=#kK8)|>65?9j$F{)eTyeT~k!l1)^;ht~#-8n|@m*PO!s$~wbnIYk+ z-(0OzZWA%BHCH6ul(nB_d7SmiSs;0<(M|QkBZ~P-F;7UY6}u?r4)K1)TwwHWlYEVM zB+PIE$EtBv9rCtIv zHD_i>%bBTJ#k*9gk=u z&^%lq%PCOL7f5$`S`G8mKM5z*S0`{*fn)kAaI81-v>#NS*6YHSx@n$q?j$u|eV(iQ z30)=8vQF)#bIm66w8G|TXQyn{A-m=3HpcTb2j)qGc}}1h(|Ddr&TGlpj+lHWP<$aw zNKQCrQ3YE23MA*L6?u+nHn(N|>8AXjh&PKi2PT}WV1~|0IL|5ORHHXa@<{P5qdP|O z46%=RohUsz*P869PrUJx4-!X<(v)|(PdH|V$3QMUTaZx_EZPY=HZ0b2y|7wW8@F;a($NE&dv^&xgtKA`&Vm;n+Hoso5am zoT5~n>!d8D{B$l#bdfzD(>W4in2^Yx!)s(t_V|e`nU7;pD(<$9ghbb8Nz`LQc4g z#k0jTjLz%gU&M{#YvNMax~1Q&J{j_AqLlCCq_lINa{gX?Kpbjxw}_vKTNN)^Uqnwh zzf_Fs;2bS^jB?Hvr77=9$pgi8VydsQO?KWCH;8`{-w^*OzA7#gRf2XqOlY@{1e+aM z3G>ATqU_nZMe^;?myN~Lw+ZKGiXRTMTkb?sGmLCc_EVtVF3?$ddj627JG(@S->VtJ zy?_#OQ={IKjkyP^mfUh zDaO{gjMQxAOjXPw;v#XSD4lvq$#cXr#Z*6ZmYlN5k0hTi{sCsB>hH?Zyona?9cy$g zHBa`R*Rn=@t@u|I-wOIIW2CLcJ0FOeb5i$E&KHUqZS>9&JyG`Koh5mIxLPzzNO)sm zrc)`oMto8{LQKtIDN7!q7_;rxsa3$Uc_wU`!DNl@cI7!5W;#P89|bdXPmz`CRZl(R zEmi7Z@pn1r>zUtsiu^7kNp75@M zv6Kyamnr9qN^MfAddV$NyxCiJ>MG8~is=VqP9XU`qodw%drDT_+$ECDwlh}2lMlL%HKcI*H}!7 z-%tDA|CJF(foReXAL(ljdSLI>*x8%kYU;cTf9YGJ%5Y*h@!z-m-=v)TZ{mMYAK|h+bMxQp zI;<`!>3iJWo*(!3d-m}!w)H=yGb=93ofa-j9~bUSUz1f8?#v5p>?GFP>_DFr8?6?p zF><8^JHnm2+eH~$cFWNYTJ>XUVP&Z0;WX0=C5ZO7CA^-JT8-ga(qm z`CHB~4eoiEZd3E2=E2kqXtucfFukDT-CCwsm!;BdbnYIXj8$@w=R0Rf6FR>|vl^HG z*%~NynU&OH?K>mtEz1g1dgTf&)_l4E*ekSvI z_npn-M~>rcXe}MF%?WHzfsvEEPvAM;RyZvlgO@mga(7bhPSpRTk==C8Y9|P?nu|tu z4GwKij@(-{J2Bda8Xf5b)~*q+2Qg~fH;5apjU(RXI<1=LjqK*-Hs3L_msi|;_Q*b7 zQ}eSU2avMbaYk(OuY~JjA2laOY={TVO(QltF{Nx$$^%MyBz_(#e~V8uIx+W6{(kAc zCH_@>+nBbidD)0v_}|YtgGX$z7LJ%>EgW%^wQ$5d`iOWZuG)69+K!lQwH+~Awe7`K z>PI}yRUn_k?A2T|Vv%zoyxZvwmpKQ+hnz#;V@@Bq+KIdKIDd(Io00yh9xw&pcMeKF) z4G}#IKhg9sd~({C785=%t`q-YbTYX1;NhFOw()UsrMOPCn)k4p58q%lAHL3NK74~} z-j~{NRye`vwD#U?t{c9<|BLvR_*e05WALH)kuk;xu#iV?5ZfAdcX+MI;T&W1tdaZN zS&lPwr`y};{a#!n{z2RzGImLQNqpJpryJQD8HT4CqeG3TkLr<|@M5Y%Zy$I>WVdJeAA-yLh3qnh1C^O*P$z{u8_Jy>RPqZ>N<3V)ph6!tLxAe+(FNBMpw5*%m%7HG8?GcW;RfDyxG7|&un0*$5RPxv}&cz2vxnzQmabC1!}Njo}8PlkeT{3?A~L_kj4I z_^|khxI%0aSrf_mgt$s%eI({-@fq=1@pG7M~HH6`vPhFj5OhEsQ6Nr-<{6PJyl4gYQNc9V%Z$ z7si?5mEtV%e(`bf9dVoZnfST5L;PCYWkeT7Ukr@s!k8hpHlhniU#w}KS2@moPFyQK z-&|jLq`OXhL0m8XL3~mCqcP}g`GbSR(Z;Z^*w0eK{^DWA=vs@9J{Gr#pNLzH)Pi+$ z@Dy7&;fCfFgEzSw#h1jF#ZBTXMq674U&PvKGHdJL%WZ8PJT)9(G2uXQnK7CvHi+}Y zJH&0`XX19FQ|P|h+;qfJ_fO($;-AIW#WzH}4f6a&#OFZ9=YaSe5DyS;7T*=$6F(NW zh@Tomd^vcyc!V)xeuT`AM=Yf-`OP(l&vkDV=ZUw8^Tpf61>zmzLa|ZAKjd8eLwJ`l zz(0Y9iG##3#wk z8L5l$FwuIUe=x>KT_ANa_B2u#<8<+QBfrvec60UNV;C>Snc|h=Eb)HvagkMmJln+2 z#LvYY;@9FXBjd&Bi-CAvbJ3uO@ckfThg8Onv9*!01DztXmqC}9y+G^*VlNPTf!GVg zULf`Yu@{KFKW7l^$Ky2QNMK{L#123=xS1F@PxmzdQ+tY*+9 zPLZvr11H$pJ8-qFy#rU%UrmE|qSfUV`pfv4__?@4{90uFA9M@- zW%R|sNFNz9#MVao2+~LS&D8@oVLQfo;%(x5@pf^6c!#)9Y!vSl7mIfpZQKu(H$89( zc4RS!iG##3Ml8tK(})Ebr;FDcRip6(#!(~VJn=ShzIeO1K)gd-C^m}RJ8>5GPVg=x zwJ;tg4id*0v1UkJj6IFi#W-EOUgYlUux(BovylP4%{m~~0kMt&z0qC6fRE6fai(~s zI7_@=d|Z4-+$Me|elC73?lPh^qb~+Vv}Vi@TZ>rPfWGLC_*A_Pn{V}k)C*Ft!{$@3 zWdC*4%ZUE~@gE@m1H^xT_zw{O0pdSE{0E5t0P!3koMc}Q*8ZpSX}jrt6p){D{i)a*ebJih^<3x9b)ScTZh;>#MU9U4zYEJtwU@b zV(SoFKWr7XGh*uyTR&`-**e75A+`>!b{S^zhplo-%nR@TnvKMMZ~Az)$auC8&lcj@ z!mpZ}`u8`V8gd=jY&4%5x}qm?Wn#E8WL!hWHN-dW|C;&6{a-WR7~&g4X1#u!%{T7< zn)$|%8KQrG^Sk@^H$S=mYfcCAllx6IKdA4Q<|p@?YTgjU8-jR45N`p&&jK#6O34QvIfym)>ux(}5N^{g%-JoNda%o6zOQA> z5L=6dB2T7>Z(~gR!Wf<=>gu7c9_s25{nz*HXn;6SREwe$B~KC6Khf_@b`GYu$_`yY zZyC{apT*vzlAjaTitmbOsL#E2&(!Au_Gh>JpNZSW&yDn-ahk|4iXmShUMOB9UMyZB zUMkj!mx-5))5RI$Oz{dM{byV*zAx(P^dIr`pD{yhEf$JJVjFRe(d?bdI z)=5Qk5Zyy`4>QFqF(GD)IbyDuC+3RNpvav(Wga9REFL2E5xEa1 zwXfJu>@OZBV(|xW@;8b*jG_8JRR4$S|4{uOs{cdve{`1RjII{%H9BJ*uetu7c=8FYlp;#og5sSqVv8`AtmWkzJJF&f3 zA$AZuihGHBi~ES3#Li+DabK~kxS!Zf>@M~Y_ZNGL2Z+7I1I6CrLE^#UAz~l#P_eJb zoi07hoi5}~7Y;Dm>VME!f1~6bMq9fNT5fAMRBzi#ebDhdWv)4BDR&w$O*Ki=b<=dM zP`V4HyHL6drMpnN3#Gg0EGs{{TD;fjoaEiv+|+xuc_O{X`S=vQSNr%B@H%m>$Q>0i zcn1*g0Ny0tEH;S05pNN>|056gfABVOzR3L_F$=^y#D!v`xJXoe{Kb;F3nc#%@wejL z;yvQM;(g*$F)1z+@!>cZuZnizRYANeh*t&ist#OXUKPZvf_PO2t}w3((gP5$3gT5k zyef!hAew=ARlUcVSJiu*c~uav3X;FK?xlLqHUARM6!9;S@h_p(ZLay3@EsBV5*hyz z;$K4iOGphNHS9gt{7Y!%&o%$D_gwQYA^s)AzwA9Xyd16$r;B#=)uCN|b$Eqnbyyu< zC0;FBeO8+f*n6D$fDkPoxWaruh@aYfu6csJ$F&+{Ii2gglIE9tHF&$kW~1+kz8Hux zF)pTwp%{s+#0;^um?>t72{BvD5p%^nakw}_93}otJW@PL94j6zjuVd;PY_QOPZF!e zpNr$gUx*XLlf_fS2aLgFu}-{9yj+|v&JbscSBO`NSBY1Pv&3t}dhyrdZ1Gxgj(D9o zSG-=lLA+7CNxWHHDkjBc;{D?9#D~O(#YeUNRHt{oYhxm8#OYtA#PVt}OSK`;km@F+Oi;BsjVzQ`MmQrOi zFC!}BlTpoQSmPsow**K%l^GRJY?8x^zpDDD?DU{hph0B z6&|v}Lsoc*hXwJiAifpEw}SXq5Z?;oTS0s)h;Ie)tsuS?94?L!M~OcZj}(s*$BIXb zs^s&;Y2x{! zdL~pqglc=Jwuir0>T||OHHlP{NOl;h%xIBP?-cJ6mx#X=?-A9{k;;$MpV3Cezhrdo zveDLcg*_M8Z@oPifDel36B&I%Gzn=dq`r_+A*DjJ2dOpW3J{IK=fxL9Ml)AwHri;0 zz8HuxF)q^gq|#zYi(xA^i{nK`Gcgmylf_d+da~;Z8_lpzWHcjRE>0I`h%?12#4E+C z#H&R{GiO~R){DOuXN%X0bHwY!x#IQW4I-nN5^fT27MF@iahZtr$-`)d4~b|W8SO(x zGsFfUHUO~!$Y_R)W{5pN>;YmAaJ7gk1pqP!?sQ8Ce!(Po4H#Z)2JmS&ofqWZ8_3>8>kmOvBHO zA-djgy*+z^=og-;_(|efqI7Meoc!mBjB;c~Ih?1n)Ni4B$;LYI>KPmB$j=#VtV7k) z#yYY}wy}ofD&NLB`8SF$8F^0e0HLqrIAb^t<=*#1{=0xIM4Dt<2h%YGsXF%v(Y)%+2p+DoaemmyyINtyytx2%y2&9xYCVyE_#)l#m*sD zyOnOO^Mreedx`U@d#ihwv(0_peaZRS-Q<4irn&$0irw~JTd&L==ymYMxkq@%ddIob zyc4|f?gidy-b}a7yVASbUEp2g)w_+}9Pc{!PH(<{xNmyzdY`**dtb1d$!Fd!zD)HGHbRWKU-^-r&PFU5exB#~1%4ZTbF##*^0NG4 z{*hike~drIJHj99AL9-7kMmFQhWgX|^Sz_}3;hedWBiN#>%C+7o%f~Q+5R&B0q<&m zqrcIs_uup1_kQi~@OQAUY#4;zoFF|&_pS>vf-G-tuy4@SyD8`vbYoxM{ezy~Z-QRI z!QQRGp~0cvf}npez`G+D6b$he1;c~k-rd2N;3)5&;8($~y!(QCf_uEB!F|E~UNU$v zSmP}Z-VHwR)&?I3pLpwoPlHdrKL(!%&EAHX7t8Vf63dI_^P4Dzu_A9fzdm2;{Vi4= zEBAK9Dq-Ztf%)6``vkOXKY|>AbY(}j7{{uik%TV!}~fmDK^R5Wxpfu zHQO)9`wsiuUFqvrf6IRN-2ZF%Vfdl{cEsyv{yR}Tiv0JYR#ArkQB)ii`&*)Y zqJ8{NqW)2Te`|Djbh!U%G&&mNZ;OtLj`O!iXGN3!&!Z{P6#t9p!l=&Q5lxS#`(H&f zqbvQdqpPD?ffHRH-57Y$%~3-Ti*AkP1!>V8(H%h)HAYK<^yr@G-XIYzkA4^AL@T1l zg1qR7=$W7}`hE0VP!_!(eHgTlwnW>5j=aabBiOgqpjLx|uKeEm&|p93J$n&s$&S*$OM^<}ZXEY_FB`m$JG7VFDmeOat8i}ic!x(A5|i-(AP#6v|{tS^i8WwE|2 z)|bWlvRHqRavm-oAr2NR#UWyqI8>B{`?6kN)*Hxr16gk%>kYkVYRfvh)>^#-!uK-L?`dIMQ+AnOfey@9MZko5+#-aytH$a;eZb;aL{ zYs8PmW@9WN=8Lk5nDid1MWI?0szsq%6skp`S`?~9q1qB^bc7lmp+-lj(GmX2N)FEz zYsH(yo5cq4H{va#tTcR7^5f!4VIk_loz4OU0zPOyq4$`h>SJA#YaJ%_xp33+1^J}IsipAw%IpAnxG*NV@Je3H&t ze-t-}8^ulHE8?r-pTrNukBn}Xm=LqY95GkS6AQ#bu}Ewq7K>zd&_Y(IO_YpgZoy9KVzG7E#Ke3zGUF;$5FZL7<5POLSiU)}Yi-(AP#6!itVn4CJ zc$hdqJWre^o-bY?$|l{5BwsAniI<6&i_=Bftt-2AWw);E)|K75vRikSa>{z$ddasK zy+Ps;;$X2-93obULq(P5sT_Xg+|E@w-mfKJE6x{h7Z->cDeR|d`886!MUpilyt^ge zBi<`&M0gqzo<@YH5#h62#J`JQivJLIivJY9GWsLMsiHK_H#{s}z3NLxzWUZz-}>rX zUw!M(R!;S>KgZ-CO$@~hv5UB`C|hMuS<5L~4SGwKWd^dqK(-eQRQ%zhY#@;KgDS-g z6NejP8b>je6H_^{K8ly7;w2`>n~iC*^E6#0O?IB9Yo+O0X(uX=`Z-PgoTh$GQ$MGv zhtswx&u5}~IE+jV(?zv6Y%Muc%n}o#W|&YjOsKgf%vXGY*hVZCRp+p+?^DbJqI!(S zH1tE{ik|3;F)=R6HX`*>q&X_mxQ@d1n@*43u z@qO_F@k23HPw6p|?pjq@e5;{G_g3>h*pGRTh}|J$caSXNr@=v&6~b+2R!O zm*P3%uf%i3T5+n#=%+O1dw9NxPLOAaGez`3%$4F*;??3c;vFKELLMvyE)wq)7mIg^ zOT^!bcZ>Ik_lnpT=Q4s}QbZ5P_lwva@`K`X@ps}w;=|%2;-lgUu}OSPd|X^9J|V6W zpA=V%Pl->9&xp^8YsKfqb>bhz4dO;|llY4Gs`w}I0})FsTxQ+}WNv`W4KPQ{74yUb zu}~}$+lb5)Npm>mYuy}~rM?6&QEA|uni-(B=#Ph^y;`!nQqHNN<4_bY(SSMa4UM@}- zWw+*ikW+SR-UqVm*1QkoS)#1hyboe-F`D-Qj}QlomEsVwN*pSxH1j^luX4=$KxSrw z*NXGS+rSerNc>pbB7P!n6+adKCVnCA5dSWIDgHy; zDgIOZ%IG_yD~=SWin0XrO30($Hm?L(eQsU}vijV-66D#UdfvPeVy+YCir0%bh&PHi zi8qT4;%`J*f`6;zdE#xNwCPKmzO?B}o4&N^OPjv5=}VjbVx4uDD9!rPtS`;_(yTAd z`qHc~&HB=;FU|V*+qvdj!BET)yNLUW8j0pxkw+uZd@JNbM2#==t%w;Y9xlql&9@@H zN*pE*H^zK%FHxnLhedoJQS~$rt8kflScS{X!-Be&d05E0qIp=zCyF15AB(ad^RP&j z<(P+s{F%7JXdV_!7u9O>u!zYNv&4j$Eov4u4~sncVu9F3EEZK~^RUQMDwc`mVmqEKyb$&X;_< zD60!)b)l@z{4(k$`w1VA{E^Z8GU$q)D4j+z$#GG3Wquhs)j#H)ArBVSQuEG;xk$WJ ztP?L2RsTpeH}8y`_2REZjjU*m}#Z+x&1LmC-E^9SNtP+PBy)^UDGDn$@ z1`ijpUu0?uv0^wx+I8m$-&k)ZPCy8f?lf|>eDdI21bHrbX=ZdxBRFS!m`mid(^F=g+j5WcTBHBQ{ zQoKsMTD(TQLtH3gHRN0*-YG5??-G}YzZLHm?-B16u{F+R4uDCKxeEDy5gSB)P+Ttl zPJBpwSbRi$R9qo8iI0hoiz~$^#8u*x;%f0J@oDiH@mX=L_`JAI{G+%*+$e4mUlCsw z|0I4OVvm`l%twRFE|A#;=7_mso>(9jibY}@kH5|Nn(xl}9@%f)tLd$B_7Aa)e@ z689GO5j%;U#V+E$VpnlLv76Xk>>=(i_7o2gdx-~%2Z;xZhlqW|L&d&gKe4}fm^eT@ zPn;&6FJ2(ZCe25q)fbC(;$`CH;&f4VYd#t|Ww+*|AcBj%lvM`OgiGvpf-^BQcxI%0a&GHBFPLXkyXx2W6cZ!T=;e&Xm z$Y{1bh;I-XWy$98aV^=fd3?x!7GD?N5dR{+CH_@>TYN{{EWRhcFMc3?C~8D_A4}dM zej;uaKNbHbej)A<|1N$h{zKd;{!{!)+y$$6CkpaTl+hOhF($^vG%*w-v6Yx1wiYwR zEYU`86>m5iZRA$*hNIC&ZWZrD8ApgC;V6HU;_>1M;)&u(Vzu~l zalH5oae{cVc#1d`j`B5v%(q3Bt(tF(EQ>YY7P(&hwK!Y6R-7Z6T~(QHm^sRPLukD* zD(E8aD{2NX-;j9C0OlJaYrNZYH{=20K=E+#2vH-;d_(dK6RqDy1(RV_P$ym{UM@}- zXNWegtAZ;;YhzVlZLA8cja9s%X|y(01=hx@z}i?9SR1PXYhzVlZLA8e6X%N8i#Lcj ziZ_Wji%Z3%xJTq)Xktm2(6l>i61y8W%lKF$1L>|ajW>LxJ~>_{9HNzCVnCAP`r(!s=&rk z74Lc(Z5&kvHjb(S8%I^a*GAs;G6rlB+M74NOg5{i;*Bq3D>x{YX(jXCm&Ig@8W+6x zMNHa9aFjg*g;wWL=AlEY?I`omq1AR2?}l0a&qb@}DD&1~x|kuh7BfY=;;1ko+I2_S z^H6Bl9cA7+ED+m>#bSxrRxB0E#B#Bn*k0@`b`kd#yNYAPqeL60qe2^}qe2^}qj;;0 zKH;r4<0<0lik~Rfh-Zjr!m4nRc$PR>oGRK_t_r7#=Zo{;pzt<0%KUeDySPBSLtH2} ziuZ{Rh_XZ8k+U*oX}lw6^6$mxL}|)={LE42<3rQ_sK^&><{TBpMYDuayi-RByi;eC zcFfZ!ez16?;?-BYYiD^bRQyHarDC0UnP}sBlzIJdmRK+TTD0*vinsNwoIAz4#3kZy z#e2jjM75N+^(_AyI4ZI>j^fQdi+M?WUojtuABw3SkY(C^L*^)Zo{Q(1a5vZ4ub47H zv3G2`JFR$ncbO1D>LCe2($I8K?(0p#oJXfwS#h@+E}39Z*jCkaE?mOQB87GPL7j7{v2IB z$B82cY8~%kB8Te3K=F=#6Dd=_JQFz`N%fSWPk1L<~I*UDYk7{%oyyw4u+BT$~S&ixM0^_NxEOeCb{GJfe#1?U^5BZ_nPIby4}f`D@x0 z`Ppjne|tm?KjtW%(X&r9!;ZwOKPLZw%9Ea%I-=R>nbGWwoqO(i+G_Hi|Fy_wPl?RM ztvlr$iA5%`PmAf*x>M_iBqa()MG2)?njPd$rN9;6NDHHHkJ-rm$+;%n&Y7vR+S>K7 z`xcGlJVbnpyvN@})R5aYx9xvw;r~93p4me$ZPrDdbXaXt()XBN`Ar*kx8*A$s_R%6p&Yc&=+-#rwUnK8ru{<|YR(^4Ylo0LU;%Z}sNBmAPMqU@%qqRX(12{wAe z*IF&Mc_*sKTHosF@HNu}+}%4ie>7xF(EnA@Pd?I*4c`mjiWRnSMrk+kbat z42Z_i>n%0O9~O1`F}-Q|x#mwiTF=!Xf+h_jj-#WC7b_@va%!is4UE7^1S z+UBI?Z*EX3yAa!FiMAJU^RtR4HMpm_7P224yAMC)j3&ou{62hi+b`1bY`0zePC9!G zb49Lw4br8}4M78?T3j9H)*|gk+y~9|oWb|rIjc^46ermyD~a?cQaf8ICV79P?pE>` zO0H#R5w7OF?TpqH{oS=-H_g$hG>f-SFxa=4{qJ0MwxiS<$LH#mwkxt~z;6sYC(+^t z$|a3lb>yleriowreVmqYw?$vPzZrR z{z>?nx&{H?#^2-oq+@yN$Wuq2I`Y(MSL9@HUvq7+y!lXe{HkXMlCquWnA@pc%CLxRdN;AtPM-4e@NUb5YhSVBTYuGvY`z5FPrr!F-3EAhk5ltu2 zIX2zg#LmWz>}%W@t|R<`{t4B~XE)dH)}!@wjQu`hRn7J4@sMwiB>f`FF`H|o?(B0$ z+iSQ&oq8qWDm7fChO2zjS6r!vE7fqN8m?61MC=*S@SR?IhrVEM)p)S$i*NLm{vUJg z*{7{+r&`6-4J^h`J?9UvF-HdZtKhVj=lVt zzG(e}wdwuCHDd3u!KziJ`sO(_@B-mmi#LsY+mqkgcvBjCgs@**6TA9;Ux)17*fInB zi$2j@6Pjy6b4_TjiF)|`6wEUjmE$9nd5)SSS+j`h*?EhRTl zaswqdP;vt$H&Ai|B{xuV10^?5aswqdP;vt$H&Ai|CEIG&K*5UHlG2lu zo}~07r6(ypN$KpBYCEOcKB=}#s_l_#JEUrL{0o2gSRq}!2zN69JGT8$Z8ucg3)TG; zD`UqR+yB&dKefG2ZRb;`@W)sk`vN7|4=5S1-{emk9c{idQh6%+&0N{r8T>EvCA)!p zJkMphJ)F`a4@@V=3@&#(QbD8R^PWD z^zg$r^j}}a{I(x`m15fRzqZspeTjc-wI%=6?C{-r`Uh9A@6Y&}HQKuA%^7Yh0&Ah$ znvltwXe+_@XW{S7c>lHSm2<@;S4?unBv(vw#iaLBXTv`;*QY$5XDhF3Ad) zWQ9wrz2)+=&SqVlL6}KkuPNK@D#rd?w%?WQcJ&=khmmW$s@k4cw&RugownPR?R8~4 zUD-ZY_y|q$rOrvV&z0?RWqVw4_3wB_wnvrI{zvsJ>$&atW&3^EZeNV%%XMu-!B!kTD1X4!sOPQ`ad|G)E+?q_848IQdSU~dB0djRY#GMIfuQfoJ#hj@G% zqBWfL%I@zI;1j|0ZVvmKv&OSe?KYr{i_h)>7 z*9qne`~~|kf8ei#w+SCLn_p0iR>q|LgIRs2Y-0?zF(!NgdA)38Ot_K1FE=OC?cSlg z%N`Z(R|NK_aM=^ZWk(bq(R15JK=61O)Z@9l$5VPQPGIi}k53{zKJ4<+39Sejgw}*i z0()3^2?D!Vct3~!|%>Uf?_223H z8|dd73D492|49eE*v&u5Uj9jUEnx$5@J7N*gqI1M2(J)cWu4(poRzqNmAHYGxPg_p zft9#{eaahHi5s|AZE)Wv;NP7@!6fkKc8>`;X=Yigo_E65H2O~ zQIYL%>t9ZoPMATMNw|VfjqW2XC%jLfOxw*ihIO(Ns}sXAV_01btFs+!V{;sCrkmek z?^VZkv1Q*?$3C#K{cCOa+Gqe_Ab~pBuC?s2>O{21_N#UJutwIh-q+%9)#7i};&0XB zZ`I;&)#7i};&0XBZ`I;&)#A<7;&0WW-zN0ignpaQV=a2DMUS=Uu@*hnqQ_eFSc@KO z(PJ%otVNHt=&=?()}qH+^jM1?YtdsZdaT9wueIkh=&^|vz7~J37Jsf5oi^dq)#A_9 z;?LEhU-Q0d(Q7Swt;N5q#lNdXuTA)Pwdl4M-PWSdCiK~aKAX^IlXEC7{mGuCzk&Oh zmk2KtutFaz^sz!8EA-zd@T9>1knj-!tMsu-{}aMi0@mrX7rM_*=>B#Bd!hS(BYZ*F zN%$w$Yfnlg zcc*AOQQAI~A^w2vL1{ZshWG@w`($`E0pGy(l;nF>>@e=~_J{2*&Ns0JyR2X?Z%w$o zGvV^agu8%n2Z47b+(rWL6S#{ByiveAd86$OyKh$1<^0cYsp;w9zpk#MH7~3r{kyBI zJ@xzUD$9Q4_~oOu+OFfTt+?z(Zab0NKIFCwx$Qx2JCFx`oWa3igh2$}pU|qzZsch^ zGYR)6^d#5{{R?L_Pg6#Jvr@A&xvkdGKJx2FN7MOxJ*)R%4;^{v$a|E)81@*$-n#_+ zB@che+fKk|@{c1-Bb-mTfN&wIjz+(1(vceDvX?4s4;YQlSj4+uQp zXq5HS0$;>qj-~M>Xq5HS0$;>qj-~M>Xq5HS0$; z>qj-~M-A&o4eLjZ%acf#Cz0+81fHe3Jdt!?B>a)EfhQgt2`>>|CTt?SLU^^gk~OE2 zHK&p_r;;_Nk~OE2HK&p_r;;_Nk~OE2HK&p_r;;_Nk~OE2HK&p_r;;_Nk~OE&-Nw`8 z&j{NIpA-H@_=2#5@OJ{gHs}6>u#;!d_N2daa}Cd?oAkuL7k>}pe}4aiwW^x6swNmr z+-Uyt3n0Oz+)MBqAgo!{tXVZ-KSF;3zkY*%QjdR9&pKAgI#$U#Rv8X%t_v#(%k(6t znl-H&f2E#vt%h~2nsu#`b*&Pgr5>N99-pP2HLiv=u7)+PhBdARpQRq3r5>N9-l;`1 zKl#}bnyEuGb!esz%_PxG63ryhOcKo`(M%G}B+)<(8mK`7HE5s)4b-548Z=OY25Qhi z4H~FH12t%%1`X7pff_VWg9d8QKn)tGVSR04eQjcWZSpq}ULpL6!1EcO`(yug!W)D) z3GWa#6PT@7f16l;n^=FFSbv*Xf16l;n^=FFSbv*Xf16l;n^=FFSbv*Xf16l;n^=FF zSbv*Xf16l;o6u?vTCGEqb!hV2=W3(*pJ!{V!A-2eP4NPrh8Gfw2yO5%Tb{Y0**Y|v zM6*dWn?$2EXtV~6*05eTh4qAA6J`@waap^YSi758yX(=gX}1pT)}!4Tv|GbE-o!fI z#5&%@I^Kka>(Fo=8m>dbb__NE=uYTC;F+AmGdbq~LNCIBgx&;vcYen*$*))@`3=jY z!>@Td`0)-s%dX~0_B2mA1F*Uucna}fT6qIj-hh=iFb5==1Cq=EN#=kgb3l?gAjuq% zWDZC&2PByTlFR`~c2ZCJ#ItjH63eN_avHE4dv3a?<=C^+`q(nOw>A7-M_AwN@EMWA zGm7rq?RMvGw>!J6C(~#*JFMIDO1snQ&gXaae12EYXGsp9B{}T7o@Cec|HIz7z}Zyo z5B#_HUi+NAXU3Su`m;$ zXQXbqa)lIEa$Q&U|GU@BF=uAZJP1Ah&V0W6{MK*1erxT0_FliW_g?clYp%b}itDdC z>}OV6k39Nja^85I^M>!0HFMTNir0*LP{KVZ(MQ?M_%i;H_5k0HFgo;)wgt$HRynd} za%9cq$ePL8gBQ`u-Qi;B0hhp~a2fQ35cGn}VXCZ>hxmRN9)W4_C`^aP0AEp_fEn;4 zz2~2cTFEM-BXTFW06GKK8(42#2;Bf13~Vs4!N3Ls8w_kPu))9v0~-u%FtEYs4Oc)P zxDxupRnQNvhW;=BlHeK`2-m_OxDE!x^)Li(fT3_B41=3sIM92>2)G4C!mTh0{sg1p zHW&jF;4V1KxqRa#^1KYMz^lNXF_{2+MzIYYm(p8K_S1}e{#aMI|W6@QNMOQHvUB$UN ziF0)l=jtTR#YvotlQt9w|epyMZk2jkCsyA1)Ql8O%8q>cMGHA5Mn` z5I(P;h1?RT*J%a(QXT4cI72!7Vja#=Uvm*0v0B|gRXVs!7oUm*qPJARo-{4$gHWhTj1*2Q0n50`8* zel{8J;>#uD%OzVTGNU<5feir&f&(rv{cqk7Ea1ta!1*ixYLl3wVE`y$M zIrN4rpbzwetAR1JH2{*}8W;%I!XUT~2E(J+HXS(E;9Dl+TPEXMCgWQs<69=baphKz!xJzAo`eOk5MGBx@CLjMT*VbvafJ_~@L|*vSPIMF zZ}2|+9hSofumV1Wm9Pp{!#A)Q81X1ZJZc9px=}yCPS^$ihQ06~*a!awMmNeI-QX#x zpBce$obbORl3Cq;DQnv=wK+Ce*M6zZalo4POIgu=sofSj@I1o>d|wFNk!e43?6=w2 z%{45JYgioDu(n*o+HwtR%Z%+rW^5-iV>^)<+llyQbL?-u_4sFV>}`B+_qqmbu4}vT z&wkYN>us6Ioybh?M6PjhT;t+cJAbJ&9Bu~o7i;D(b#8~Ta0g7{ddT$)Uq2aNKN(*? z8DBpcUq2aNKN(*?*`ZHaO@AqC=`Up^{iUpFCYMt$ob1v!K7EJjoG z1FP#Vd`rfA3^c`p1 zZcLC@Skw0k677vy^+ma@)o_OZ)4WRSNXkHukw4pUgh@z^D*-=<3ZN?oo6Jo*6(uTF>?hg{w`p} z-yGvz^KN^03K!Sw>=cse_8o=k9b5%#x$$UX|R^7}O^-91CR7l;-8o;-xk*xSTO5J6yRXj6h zZcww-Eb|LBTg^7VRL`h+=0DVYRtWxv6@oXJJ6R$4TkB+22==VHwrK~gbL?2VoOPa^ zU?*A~>`Hbe>jJx~UDfJrSGTKMUHo-|t*-t$!B#iBf!)Bm$X_AY>Tb8S+gcafo$bz6 z54)>

>Hp*`91&WTj>HKem$WwRVa%(9X0ot-xZ|kqlm8|l+oK=2ruvR%YvC3~MtNcF9s=bf0%I{9+Iac{SpjY|z zoHv~}mEo`Qt4x2DUu8KfoR5^_ukWkkoll(m0wkfRelXs*|l9;RdpTL zRn`2pepL-O-Yu_cxmDaM>SVW?TV2(0>$&w*U4Qjob*jJmFYE8J`mZ|8?dkSX_5Ia< zRYQOEU)9K8{Z}<%_20YH8SdTgJ*ow(|K6w0cJF8P-&XD;?jx#=JDoLv+xpK&s`K?4 zz#a4&z@1nF_+@p0UIVzhyVzZHG_PIs3Y6jLdtk{TS-ET*}-Uat*&gRzj+2tuqy5Mm{Q5ObIz=IuhPK@egEf{=8B z-f#uK5)hWlX(JOKU^3;tR0Id~rC!aR5Z=EIBd z61)trz^kwTUW0{z{~?Qj{}3sQf&UK43Xvh!hYYbgWQa3xh?OBjtP2?u{!gSV1^!2* z@Z2S7<1DI(az)br9 zX4(fZ(>{Qi_5sYa4`8N!05k0am}wutO#1+{6EohOp$l|{3!xia1k}M>_95P}5AlY5 zi1+J5yj>qM=fE@YEO1QmPJM_s>O;IwAJQ}T97nuKAL2dw5O2|kOpYVopbzo>e2BN_ z3(xHP&nx;f`_b>4a}4Qc7z@tq=RVIEdH+28#EpL+o#!0$X7;=I&&owUdBc14A(LZ@ zcj`mDQ6J)c`jGi0`~$v*jqp#{1mD1B*aF|eR@esH;XBv?-@^~E6ZXJQuowOV`{2K@ zAN~gi^qqw+tj-v+#sK@Dx5PudBOc-n@euEahj=?Y#Jk}kRy_)_=26I^zgh1nq=Mi; z95jN)!12fX-yz=q4)N}Hh&R9eyA}g@_dCR$ivfybjCFxR+`$;2F5sK}%&I^k-un*m z)^|u<483@AnCA^_j(yf!46znah?RgsHv5ZJfI@jsDTP=CD8w2-Ayxni1u2)+fBZWk z1A_herayx8N09yq(jP(kf;WmoyiXho(iglx9OCWakb~{4^Alo~pO8}?5`f<@?+b@` zTR6nK!Xe%i4ms7JI#56B`Gi=_C*;(Ilc5fr0u6zFVEvvDtM`PsBQt#mL*~Oc$;@(^S_SP$6K1oQ!0EaX7&n~>8)R%TYsLy>y_Ep8}vSh)i>&{TEqAX)-ej{4U`2^*m`7<xnQSr=L;g8?1hx73!rgbQszVNYF zI9?>@@uIpyngJ)Peq!%^IxQ{B-v}7QtI{7<7u+uKGEAyT|leOI_dRVVsi3rY>-pak0o7Q{k<`# zfo|jajQ)|ia^)Nqsq?mFaXrcVRLp5g8EwKr{arh!Wf5J01o;7PT}}tCO~dmwxspD1 zinO6{s@#3zeUpPoy1n#Y;m-gRv_Gsae0+rUzxnScfAbdpG6TD0 zMZcCGVX6Lk?g+CUm28p6nSXx!we2}7jq(dAqyOZO(aQcwnOgR=M=9l`^yl+SN|}%^ zAE}gb?~&&G<@uuYUze0=zo^_gDGR-?QqrYP%6h*XeXXsN@)g&C8HdWPlQR2|oG0k9 z`RggqOU0Ce^9YnzByD&+RwpHYOi(A~EuHS9lqLGROUiQpJNLS;HF~_DuRR=N__nLD z@he!H8=Jq?Y5X>n^3iQ0jW;t*UvEoEUV3z1pB+j#Aa4w#`|pr8Pe|E}?T6Z5-0y}l zR+MW#MZ}~Wh@5ZGW4qd^br`E08uR7XnDekN>oJ5sR(d@}pCiNV*XbxPKmFlIsivRW zo1f~0bLsP*KOUS2bD0yVofBB4l6q(inx8teLB4z#68%>+ zb!z=cUF7+_fWCzDo_Aep3vW?sd-f&IeP-nL*Da|{BHM8=Gc6{6d``&?Qu}*JX`8&& zIjO9A5%r_Y|gZM#Oulq4~{>~4}w$!2en@zZny}79)!aBbU${ekKmlIRR zX+38@U4O(r@#4_=eg^%S`$?S~mI{CSZ8*3!b$VgFA3kIQxwXG0X$ihw+cDFZ^3&vo zqHn|HgwyLjo1QucUutk<4v+o|hkbv~{}^`aE4dPN<@IZ>-$$77lK=5$r}Dg4t{mPL z4(oIga}MEjT3_gVu74+aZH-JBh(zd*L*5-2z~ zbR<eFi_ESmMr-E(B z9a}}(!<=oQ{_|rC&f|vXyb9*~V~2_x3;dB=9sSr&&5Ufb9_QVdx*<~M%ifZ-9))#< z!`{r?`93eg+wo?mZY-QGGF%5GM^>^gBZep(P#P)D{Ao~3Y=I+}^mg4QrF5)+MJF>e+rYW4KU|gY)Kc5`+ zQ=C0f6PHQpjZWQCri8~ZQNjMp)_za)>Pm`>o+DE0C1+KQ4F6)e%aNCWFSg^zbN@Oy zkEH*?&zKyJ#nG>0hf~7QO?xD5IJy=bUTH_tf3)$3+*&gCglqHmX6_Hmg}=R&EL2&6 z!uqm=y|1#EWr*_8=e_*;qogQNmEVRElO2`FV%u<7r5}F(g~tir($syCRfYF?I6gAY zm%URNwAD%F?H}YFX{vC%P7^U+h#EgJPrHyZ3e_JieQ~1I6gj_FN}m+S7bOtwxf4HG!MP9S#r!$hLh~L`ii@HudEO{WhTpxaaNqrs z21WWZ(aYhPfO%n|MRy@Dx@FjTB>QCfLvUBfBD*P3ux zBqDBgt~T=dyVCZz_j+32@ce_{PepyFyfP2tS=Gq;^X)8~RN^z!OEM2#Z6dE@k#gZ$ zyxn>Bug{zx8RzANy}UBLfoZ+`wukkRX$!~^*C$`^_g{hd-%FrDIwOg^Pn+zGVet?1 zU1&f3(sp_4vziwzBjOpnqLGI*-cQ+!4h0TZD8|o?ZqMNs{>MrmK6ezpCKtHhPLsW* zX-Qt&v?*S%w85qIK;iSPcUyMe86`4jb`w7ou0JxSuwjZ9PSt^x2Cj*kG#e|LeBj5A6ft9_W}1i z=H!Q>Oa46(@5Agv&t-&DmF4*Te(BD!LZ!y@TQPHOFXO#Wd|x_|NVUw?ONP*&NEFder+@k!^@fU6Ne7 zT}QZ|N~$z3?r{1qT%5lyfVU*Q74KEI&PxBE&5zc z_&HZUHvf~}JS-owwMBZpTpjhd4aZWa|9m;`godwA`7uSMlGZkeOzpS9tC!x$*X3Ue z(Z&zNc1F z5xMJDq_g5>#_rsAggMq`rVotF<3AT(c)o!&L;N(w9q&3%;rBIar{5bcw?IBUE~oys z;aJM$*Q(#Uj?m@D7L@!p96XRds-QME#9ADAVxZ`u2bOP{OHKIqNO?o)D_!;g&| z2Oaz>*Ph6IS6qp?Z743bpx#SLpIuOMq@mnCJF?u_2M;S>cwM0`=}Qjf8+u48UI?cy z@V+L=!{tTZr^rvcoVDhGj7)ySa%uPb!flA`v&hP#^`Ebsl)n5> zvT&dHib(lTf;^$5xWZ|pgrmKe6D8RRRWUtqy!x;3*smCKil_@*lZwQiP?V(yBG;@b zDZR(LnMb;xN-FpF5a)fIzSg(XTbr&ORmSD(kEPw-H|boZ!=EEtH%I4Y-JIM~%Jv+1 zN$ci>tttLHL(j{F<0F0Iu&$)<$T3Pu>B<%txo%GJIS%=VQIhlt#m|DTD7Bt@7}*4UutW8e2?^%u$RS zZ9H5|(&MEr+;_jEUhnmc_TI{j&c3f3?niH3M(gmt3V;8iI+zD2{X_i`^A~zug05V% z^WJSMDZk%_lHw!dyyRle0g;KyAm{d384~(QBG#cQxj!=sy+c;U@=qkA2XZ)Cj^vZk z^GI^#=E>;eeP3`59dA>{h{*EzEln>FUY{{2G8~pUo<@h|BmFL1m(Su+dkN(y`HGv-9b zd#f|%MTQUh&$pdjQ0K>&>G`|7eBt}?Wyup+ccknk=f0oduRU4#i;N4)rIis*7y0d9$Gxl!{^JyL$y+lPNv(``eEHC|qE?1}R>r$7V?|l6`K6^P zEk4pVU*=!j7ds~(nYOfR_TknWS$1K$@V$e=@ns1g>faI)N7~HqZB007$@5Mb>%!@d z=l8*gu|-Ms9*w>$sr=tkT-3F6F);ESHodM_8P;2l)-L}ZS5bZbddo%Q{wSKGyQa?J z&cz(-Ui9rLi%lhub&s``$ESR6QKkylRMI^;-tmbEr#qhC2buAVeAd6Xx+Bl!#ijW@ z>v`uYA#8u{n%(~Mg_$+OI^+hv%sb_E^L4*e3O~ye{w_;-hx^=PS<3wXm!{Nr>dMe1 zjMrO+la)4p3#W_x=2&VI87@iwe{rr{l6izadPzO^3*%a3cKC%Q9JlP8!+uf!9r`~$ zzmfkdR8q(N7Jd&$`hSH=YFBA--nPt#y@>x$QCj-r6<^ZWCensuyWcWrMb>rv<;-Vu z*ObeA_L$e*rfm0okGUPcMg^rk!}M#|bfV5EJy3LA+bD@jR7IXI%HmU&SlBU${4Lsa z44Qe|iaZ+Q^5bUg@4TWvx=;Um-aX#v%$44h%+zojyp@@s_~EdQ?*)EbI2=xQINycy z5?-8F=DTGr2fN-cF0J2&;^K~#zHpnu_4xf4mZNhrdfs{hNucpQYao{-yRrUq|iNTi5NEw&z6t-&+r4 zwL4;qgIV_;ao!>sv!)hN6;Wgt`wU}|q=gj6^8ZK`s_I0rOg)g*jWy&iEmP7HiH<`L zWc5A{m7J)eNDpN7E226AMR9Wtkwy7)fJgG|LSz{yCo;R%Xzw_7I2$ytZ-{CTkEO*&*9qu!?ztpDxcfW_GSp&~vYf zk5<`bd3P*YUEaW~QHAy1u&l9#b$^ubFa16JQTpNdv?FW6@u{a^E#9W}rOe3`O#lBr z^c(SW!|#fD{{QpNd*{pBR&?)#b;bQ}+3^3QD4O$^X~H)BvQmEkxxEQl)0o%O>xmsa zkTtuw7I}TLo-Z!$g#Os~fVU)TVS!rOWxZ7(Ts!Nf0^#3aphz2jO&bgM->+%QF|OO& zlC`A7DuP+dON>8)Nbl3E)kl!6Ko;-Q9R1vfRLokNACbkIL3y86VIlmT6>(=hPggPP zt8i>_-yD~li;FuR`oe2r{o3{%k2W9EI(lYpKc?mX(F^~b_h00^%n2Xyw|lTg?x)|b zmA_5PyiM7ek(PNkX6^DuXYGyDl~s;5uNX~N*7ANo>9P*|B3rv;J34=t>=uVrPIx`J zP_|hhU%0#i%Dg~Hb#%#&&(BiII#JKdf`2V0p zs0xbyJ1}K=6S;7E9?bo}a0Ls?3;AV6rVsa@A6?QrHzmaV-mVMbdnI{2@~eLxpZ+WE zU9#-PhU`I+;e7e< zpQrOa%^nevUyp8b!`b8V^;|19WlxL@`!fIkaI#d)PA;rJ((qCJ|Acu)M84x0eeJTM z@3|h0aYS*?b{tmU49K2&Sm~oAF6$VCeK{ve_5v!>9Jl}XS)k(Ib)ew?`}|!uCBk^` zpAms$AbKAbJ@@m!QddN;Dtk?I{cl^V*Saj}7v3&=-EX@EMXf75=TbC9&f`UOzn;dM zpS|JNtNldHg?r$rTsI3BdKAJ(XCBsH-#2^XQ84E>Rm740Kegl4h_bG4biC~Ob?V7c z-j1A@f_3L4NK8)UL%IezHGP?MdUn#=nA4!Fp)4zPf2n4*8h5vx2=@_l~5_ChqkU# zPOqb7CG$glqn1@ECn>7FBxR+Xk%yuy&HyVZOVDLsK3clh47|G%C5 zPt@c7^_*wJ>2gy=-_zl0rGzzf#S|v|4XpDaDsBCBBqs@B5rD3n%fmZQ|dta|-PGEhYu>M3iw+FmW*ThnM3->R+P=ynn8*dc5mB8t=m%diJFH`bI}=e=&KzmFt@yahbo7jDLhS{6@O+ zu*~qjJFMh??8L5^6GalF6jNz+j6?D7-^@|MdMQ_vC+ER(F(q$&<*m&{xOM>xF z9qZd!MaPQxbye1TfsqAroNh&B-7|5zuK2vVd}|YA3EQCVJzF1p98+i&@!u4U`$UW(Io#Y;ytqK__9@7Z{L49Dv<38r6{NE5d4`uMSR&tn}LC$}x~ zo{l|5Z`*6Ve`J=^_KR*yIeo;&<=OTiu`#+WiK39>r6yZ)uuafyNifrW+4!0*$2;3{ zx+mkcoFIQfQ$-)=O7GuzxeQIbbY~lz_shBz*%ie$UV5A*HNw;#+o$O-05t$60>oQWKp+b8C`$mMmP#OSkSj6Rm)CHEJth;_7u z@p*f>9vacHj_#!d;~!{TU0S?!(Xlq$px$4OK7L|zEi|*xCzzRR%jx}FKCeI5YyD$- zo540F?>IRhxx8*;Z0^xz`oEeOeax5Bd4sxFW3+8ST}z_wpBUYrqR&q8ayGf#yrcJV zWXbz|wL%VvVr%NYiqZWOlXoQeX8>2%Zs;C}k!EO4(!Y)b^GW0wsmC_K9K_bqeNtZA zvGELeVt%V^HUm|*p}0lxVgVj^I9}9a<10<``Xa0uyx)9b2OSb-G}kg8CmlB z+27ZuF2~e0np&Tz>k?^9Y$YwnNONS-`&8*;+s-?}{bR4Zt}9j)a)Q~At*K=ZU*??0 z*42Gw>phZSEhj=9FKZifo)I}TSK?5ir%{V z4DaZkPcT;!n_zt9Z_RpaMIXuWx`Y_<&tufdHePbCFa9~u(fv?f{PSMCuD4uXY44!n zY^1mTH6pm-)mlzqTQ2v^VEE@ZS6@|KU2lSsh9*AmI@?6Y`fZ8H>zQ2H zzYf~E1XCX~G5TB`qkkiD`g~<;+0HG~d|Q`LpKZK8t}5w0DEgX`D1N`W+Conpkw{LlVG;c+b6Wfzfy}nuGs&`w(ccc+mm3nLKCZd$&~5r=_g71oUD-< z@`-Gh_l+1MQ@%E`%`1#o%q#h8WM0KzWAkeBIlw$>8WUUjpU zs*6<*YqjdBZnf5^KdC=i+tn;J%lb~uRKQf9`d-afZ&*L7H`OM~Q=9EX)y%GF zS5--Nb-Sjz&OXgPO%1Wnu$!qH>=t$lHOy{hw^BFR=i2SmaQl3_gBodfwl7qp?2GIk zYK%S99;(LK!|Y+|PJ6gLT#dJHv2Rg-wkO&TstNWJ_7iHVJ=1<#J!n5;KcgPCpR?zw z>GphkzM5gbWWS`Iv|qCqs+sm8`wcbAe#c&_X4`+W|E8X|Kd@J*x%L`6MZI8W+L`J# z`wROYYN7qL{k3|--ehl9i|sA;Hubi>!``djv;P~g)XG305T{ZC@qzLxJ5VW5L#+?g z4>VR^2hIpISN{r}6=<)v1v&;gshAdDFviCTPoj2`$&U?;# z_I_uXv)ullv%>i(AkN25N+95*IT?X+&NgRzAi+8491J8f;EW4YaO2%dfjVw=w|by~ zTidN2Xy~5qo*roAwsczt8oTY?_JJnu1?~lbGu$q2mq1gur`s#g%)QFJD$v61@AeOz z<=*U$2()xZx+4Rv+&kTS0_V8*xl;oj+=twU0$trl+(!Zzx{ta~1iHCTx-$cpxKFvW z1DCnaxz7bc?p*ifKri=IcR}DPcd@%TaJBoE`);7WyTn}oJ6JnahG!NVr+bOnF;O^LNu@?mIpdJtatHFA{26kuJivA;e>LSn{tS7D->2gDxf=N+ex+6Tm99npOj424Bm+59 zvXHaobL21ht0J4_Uu?JXXUI1Gs_@I+E(X7CMyN)4qat!8qmq<2DjR1bw=!BuP2(J+ z19C@Wj40!FE=_UoMX;I^Md(;IOcrwMG2TMnTyc8VZJFRnQxiz$f@RE&3BRCGv6b2iMb5(s~Pj zBcHF%NA93HB6m`qkS|c3k-Mlal+#spMZQp7NZxLWU!3Z$E@s<9^*|F+AxiG0dXejL zb+edigc>21x<%b0SE-R|q_k7Fs#_&ajZ&kewttO59<3%I-=*%78`VVhB8NM--3 z!)LG!WtSO%(3 z)IX)1+N3r~jQU1>BbTYoY71$;Ro{|+tJ*4!)i$+VPFCNk@5r@7{hQd`YB#Yzs-KA6 ztA0jvP#r|$DNjsWY(q}AO`Fl7&7U~7vXz8v+YU(34%!@Pc8nb(0Xx=?m6Pl^8=t|B zx8tR;UEVHFY=WIYIVagCAt&025@%PiIVSB&c4hQc>}sU1ZdaEWyM|pudf7GYnsSzZ zeU(c7^;PQmS61Y6?KW)N+HIwc-Og?&UAfAhFBjPz><)6CeSv)e`p$M|8Dw{{yU6AC zh4zJLy4l@Gd69h)DZAU-S9QWdFtf3-T;`7V=Z} zQ_{+wZO@i-Y_4p`T-}kMv!6qL-hLi=u05AFzF@yV?JwFdvVGZpneA)#YjVB4&|XNZ z7uk#CQu_`24eEWzUP8S~?WNMw9|55Gz+Qo7jlD)%*dN;;%Nh13_NUU+UTd#K^O^k_ znss)HH1Nj<$czulZK{S75-wl|Z0i@ilU*x%aUN=JLEy%l+zy$yMXy^~h& zvj0uW-S%$k`qBOod5`@Q`n~pE0_|jI;Jmu;L5-)5*rv9xJ{}CZV!x=_JMJMameEX5Ii7f1b+_xjC?S7P|jckW=aFca+q0gT!(o&C)UBQbK;yt~PC>5gG(g|bX@Y!)(_AVzXF4sUymOY*R$Ql@(@ttR=Q-y~U8jT7 zQ7Sr}oX!&ObaA>$bw+z32|B%;%gNi@=_jUhwR5#Jar!&`kq0=}pdaWAl#`rmok4P{ zbDc97`FiJisp$-HhDgAVL8Ql#F-{1JC8b#p?TbSLTWfO9Ip7zY-cv*Kkdw=%-5XP*e-My($d$R*JE>2&E3joWEEoIZU@7m9gGtlY zZ7Vey4WBQj+rjNfUPi;{d%BDb+>jfR3*26AFEosdiDhKW_Gb5HvE30aeeREs(cI~d zC(T{%-E1ehld$t1_a17w&%IA7x|7|>=%=`hxZDTa2gp0sor;|7GVbz6(o)Nv=1wEm zbay)2$K1!r`?&jr#51;jk~A~jnUwRC`xLRW-Py>Dv)RsbU%-a>?tE-`(R~^DRrgi4 z3)}_N!pK`<7)v+XCe1tUU(qaem!bK)%bs#Sa6d#|<*q_r?XH%S-H+Ul(5!Jk zre4PAq|b0OiT%R;0{yox`@;Rs{Q;YIx{SfxUG8oyVeBr3KX#Wo{@7ir`D1r+7`u0q zO0gHkG8Sb-S%(pPJ4W#5F^&)FaeO7l@gb=#z4%j%=r2d^E&Y)PNRm{RYZ%`L8Qo7| z`v7D5mW=6Vu)52W{8f=xWdSGI*Z35+XEJ+i+@kL;^3vS&XTe_?!INssRHD!3uG;KhOk!0B^@!bI22LwI|R-djc+=KsK>C_yEvO<*83vZzw-ooXS(;J^5#=6qFk`nq_ebM;- zgQ@+880|kKX#b%S{=*&AIL;bJnmesKk;hx(7jZX3-(Ds$EU3(Yx@h-lh{LR+CB-YwuZNbiO@i$_%zfn*78?n{_ z%VTWKk4sKd2EIpS=87Cf%)al@JkR%tRk0Gx^F4g8qY++5BdMest0tuMeUJ0C?@?3x z9_{fxT1ZuO79L2YJm16jI^rU{j`Q(1IK!%rcpB$xPs3213wakw%t(d3i))yd>M8BD zkI@JpgR7(JjgL`Y`xuq9k8y+cF$QTLBSCu?hV~_DXkVg+_9bd)U!sQgC2X}oEs#4S zJPHF};w}7yd@sV#Uc@chi#SPp5wZ9WnX*V_C~sBZ=|R8L;j@wkS=yt{E%+i1L>kYke=EDxlMZ@H~I5| zjM14FWXrrDTi*jo)E-C$?SUj}52TLvKoYeFQbBtliP{6HqkWIA+V{9Z`yO4j?{S6p zJvwRM;{xq_bke@Z1-9>dbke@Z1={y$W6!haQSW?vK3nD*+4{c680~vBw0+;Bx%NF0 z@jc$dXIO#5)J&@Mg136cFAnmjV(pq~UXK4?lwe~=o`7@Mw z9h>k&nrc5JQTrk1YCoix_Cqe$en>Cvhg`1xkP6xlNz{Hw9qorCYCoic_Cpf2A5ua4 zA&J@#siXanMD2%Ezz?zTMtnb{v-U$eYCoio_Cxw=KctQJL;7kzq_g%zI%+?pt@cA2 zYCq&=Jdo4zPZ|Uo$fbdX_#tO&KV*pZLqd2UO&Q-e3pA4(1I_V3F2(m~NgChl2x+fl zr1m;SX|Lntc>>OVx@;a7t7Z7 zL;7exMa7W+{WZx&LroEAB+8e2+{gA=T+H&_J=mxnX z%G_-o82jb~DhQFy#_5?(|iUP?>trPS5_NiC;_Q$wmcHJw_F^}}9DLuu?Z!dI!H zeU*yZS1E_DaxNZ18>fw&>9oafakSskNc$}fwBJ%w`z>+WZ#h-_Ehc^oBMs+D{1!v| zE%mhDa*Fm_OzpS0+HYxs-*P>^P}pO+0nf+xSWG;YG331+k0nNXEC~@Fi={o5SnaW# zu059e+GB~;9!q8Iu~^z;aq(E5mU_-}_$>kLw*{)l_Wc><&+bbl?bVdiUQI=RcAs%Mv-_0k`!fmJpQ*0>8C&}^W`sYJ5aG|5+MkKR zpP3-#@MrGA^1JbB8f&knw)SeuX|JZHd%t@>wfJ65ZM>SP_#50Az!Kk|X~dm@N2R^? zXKHJIrkwU?;&2h!H=43mNU zCkLP_5I%Xm$SLoOoH`Atqux3m8X|9f^ru$@>^OZ2Q10optpWYifPQH}+J>!REW8W* zcxZ`mBf^acHzM4)C5#68xG{a&gg$RF3Kqi-_F*F!39rC*k*0*34gnAmhph?EguGKY1IiP0rj>f{#-|-?F`5k zX;%>_vmJfVE>+|_>N~He$oa!zzDTDLun>L_xu7Xv;|17w0XBBV#?I8)dA&%Ns?Zl6 zhjk)d;{ltxZWQT8zHXG)?In?m*caWG0JdC=T^CdD#T!I=Gza!ck1s_oLB0fgFUb_S zv;j}g>SRvAfa38{bD6h{#!2T;+!5H8;=u5qQhrlwCs}ceED(dYQ1KnXNd?j*q zOCav*`6B)61MTn6KJ34nNhWlHNw7lX9>Vt!zK8HVewecEC44X8dkNo1J@<8hi9mi#kjaE6 z6P~;r_KV!#1~BOUB|vxz;VH?mR^)*=!1f0SKY(phW1t<-H&ee9d9Xgvjt6OHGX0xO z8;Ed!FAU@lQn{u&2_|2h>2zf1Vtu0R{!T>|?>-fIK2<2~B( z-X4)9tzZni1G_|))q(9Ie`^FoME>3rsPFICx}4*0d0)WxPl%Ul7`)B!{J$xj70tuFW*@l57||r7jPV86ZTho z$)RmI*qXCOWW9pkFb$~dbL#%QGho-}%K$q!P~V0T@CvXmzo-iXVK%H6`LZHV=9kl9 zoyb38M7}2N*VMO>`ZrSk<^<>gQ(%e67LMyJ{`X#yZz=!VN$@`G7unhhMgi^Jx?N-& zeYb54EQTLMwl@Oy(RSLj{VS30sN*~8_>MMwM;ms~h8^tx9hA9)GIvns_mufPWqwbY zJJIi4A@Xn7gWY?`x91a)pXiIdv}fNek^SREehvVA@iTq#Gkx(hwjRXRgV=KLCD_2| zYBqey{2TLeHuoKZbHs>w7xsw}+XhAh&m_d|5F@TW3>71Or5NQC#7HDhBF|V<90-(C zc|4G}@*Xj&G>73ZA2x|mwKm|#RGk6oVpJo4wH`19R=@!^Ai&0&8^owpQH@Gz_sqciq)?h2EDI=UnP>ATRE zUDk`ymG*U|EnR6#S8TnI^cRx;LegLOKI|8xTX&!>7j**KaM4;Zx(9%8_X$A0i@O2s z??J!y*eJ#&HK8wH|0VR%rIlf;7(GY8JlHHos2(K2Ofh;56XWs@Fcnsd(c6UfVqDQ$ zj6Tnc(YFnZgC($AjH_Az{dd)Jz{Y+p#kjgIjD+{a=pQFW5^YQB1=E4PxF#O3^BUTI z4Sh9`z8FXw1`eZ#Q(CdwXuK#URe*{yxV_){b357_>v zOfg1N*61EE1y;a8F>b^5+bCnqGBL)|r(-7pw%s9O+=;z+V(Xm?fbz#v_xOQ;ZR4rq z&sAYCJPTinF@f-e-Y^Z;ig6cqa*a0bnh2DC*IqFu(kBz?--)ll7BTL|=DSD1Lf9_G zr21mq*AwXD`>=U(06GCSPNtocDdT?1xSular;Ph4V+v(FKwnLzzNyqVl{O?d1=2iB zcv^Qcrc>5qwEr>M{}^RGL77id-mH3JJk?5!+55zJy0sW{+KcgQoEXm~it#+(bBUXa zeRHX6E_KbLu6ao?3n=r21~6ER`PBI$X45`;3YBMd|r&VY4>0Iit+9^F_vKSQsVyBMvUb{#rWV}F;--Y@nL1?12bTQ7%S=X zm4sJ54(r8OwONdhW&!dV(yqA_9)>kyd~8BH7%#>ra{&84jTd7rWv#0tM#@-t3wDW- z+60EdeApyLT5aeDq)kf~Bb|Kd*qA;UR=`0qGFrnJSOh!7$ZQ1kO(w@j=2v25)db4m zKkym+XDcI{dUB{|J;%p-j*s>G#Q3}=jDS~QqZk{=vtc022HNyRMYt5E!fG-8fertd z0xQM%iuQfg0mj3-ut$uqTfj)brmwMSBYnPc5K!Jf`--uN@;71ACT!ZA1arjLG6d$s z7BRjh{kMd_od@*ow$3mKmILK~M>#ua$M;Re*x6HzU8}|Tw}MVUx_^`I-}KGyb}$y+ z0rLIW04Vpz`9QgQ>Wc9b>3>=w#$NL8rJlWn|3h2%#RFykm*e1nwD-VUK%GBR=g-4| zzWRBK7zgW#;dKJ;wn=rKV_YYu$|`^BunTP9UT z0r!Qg60WvG%<4^HpqMp?tFcSWT3yAg-3EpOvoUo{F;7Vsvo2-S#r{)Qi&+m{y$)iY z)=td&lVGoyr?(Wd!APL&hM$Ppm@=Cz7qcmL;4_;oVt}$+kiI3HGe^ueoy2U{90rMr zuWO!{Eav%?(QyV)XD4jx)E#J7rxkEe%nMq>XjlZ;-x>QmlczIvblxLomsT(qmcRiq zyOO>u>ASuIyT!b)C6N9?(s!>c=EbI%my8kfvbAFNWJa#n5SS@uZ~EuT5n}dx7by4Y z=0Km|N19h}60<*dV*B?KGpUJ~*YJJK48Z1r*gO!M2V(O;Y#xZs*R}!bxRyGvrK~}% z02>D_0c^akJxm1B59Xb!!5v@{ye~YyDdv!=V%|Xd8{UFlOes<4Q0yE!2R4X#V`bWw2jNd_407(!W6Z7fJI{ zU%-}EDvJ5)G*~OFFU&N?yQTQ24j%3nr#%h(5hTPf!9 z_F}H6E#`-H#az`w%+(9UToWhe$Jp~J`)}<6F+bz`v!P%rQiuo;V-Bwl1?TOG`%=LU^6Bq*Isk5OVr!E((9&J7?4lWg|K7Chz zlvoXB1NJwpBUWSjt;v^SHSI4}Gtx9~4aA>G-DgtInbgsedRtW%>)icfwV{kQLxDbQ zlPOkP_CZ^0YCA!!cJ0JE?+3BkQ%3tqut}`*vG089JbxkV5vv3FJJ9Y9gga7C$1P&v zGgzJ0i*>;?pq-t0E3k7b7!I=_Rje-bVHe8nLf!ZZRu^<#1%?6gg`~d_d+`x?nFZ+o zZZlw?SQlZ}MKfW8Slt`Iz3`=27uN>rxR^S7!~=OQA@3zUVLD`sb!kl)1aHA^u`X)? zXoX6>Add@0lppz3+;3ALZN+4+O-TO8E~S5bGi8eK=XHY1r{7_D>%v)??&( zoIZJ+zL-I}CrLAtx@L_Q>#03r&E7879QyYecozA&MPkkEFV;Njm`{JqUnbUzJH&b! z8(&Tr>y;T|y^2k*Vc+Yc#9Gt_kQY<#TeR_=20$6_RTXP#O|h1}CDz}t>HWd5T&%yN z`}=rcUoCG617SL>guP;YK>iQ<0eL>a<`3vA&V|;Boe{_Cqic!124e_u|A4}4nUheng{g98VB0IaF_$B zVlke#K5hv^VK$)qgf@Lj-n9>l^%>=SMq5(In|e^Jbn4BZ{!H>^%@iwVvRI!BOcLvh ztz!LyKL48Xzox#8l(TWPSpTG5o9e<6vA#jKnX>;?9q5C9k^f)IV7FLX8bA`ze_Pf7 z^?i$N-wuOkfikyZ&(=;rpKPW5TQ`ffjk2~;);7x8UK=LD`*1+4@2Km$X+XLit>9ju zobQ_eZTX(I{XqZyFbEclwUc)4>;vH2Pu2Ar~r3C1DC>NSOPzY;{Lq~ZW6`Qy2>GsGY9sH za!KcI5EVn7Sl+bY=|mN~2BZzh?JTIzNeNnY%iK;`{rzDH2 zN4WlSQKwU0!#Gim9v9W5j;J$8-@LD=7KB@3drR7NHuas|3ns!s_)=6W+SdvjTMYry zwxX<7J4BsR9ccGC_X4_e4v1<^y4H(Coy+&R;{kme1*B_({cX{=r9ax$g_W>b)Ok~Z z_MEq0)cM%lfpR-ybI1O$L{ul*e8B`!U8uk7`=Yv0?nQlpdM}zMs(S~ZEf>!h)nl2c zp3Q;sLfwHnF5fPy_h_Jx`qUJ4Wdi&lsxS6jHA7UtVepQqt4V+LYEhhnRsVER1Nw?`JX z)b+h#GQ11eHUyi7TnZCmF>DrfLuH`PZWsp(;44u>v3qDIpe;jb>(KS0Zj6C;Faogi zM(iGj&BI#3P?!bSJq#Of!p57h@g{7%2^(+PD{6QXKsS7bsGGNn8i6ghQ2s5i0CkRx zhxRZMD1T(C@TeTL0s7+BIe>1I2`ym=%!E(ifT%w;g(R2;D`1bP(e=X3}agPvwWFb)Iw5Bi=mH>4=+6IV!^exyUYI;i`Je~B@ zN>>AERxL(SMK8&yUvw;vatth<}3kCn)a;%6o$HW>DUYaX|bG;-4h`N%B9r0Jeyl ziS0AT1N(9&w*Q6p{be$&6dt97&M*P!lUWBuJw@L>H3rzHPwf(gU!-P_0K(kwQcqL< z(<6aCdwP$kIn9B-nzImo5cNz;z@BH8i+Wa|Cp-&Zih8ap^oHq>E{Zum^*sCJ`6;kM z)Z9e46zJQz*f%c#oq&BdkMi)d)C;YE`d*;E7Y_a(b#DS6MVb5$SI>0!%;Zi8ApsI5 z9N|7h+hARXJAs4yt z`#z`t->07$5+DP^?tb3S`^!+%J;PKzS3ULAQ&mqjiR&x?l(#OC#IHR7Xy4ap-`8m* zt`7pt1E9S1$4UIAFW>>dDnJs68}R!LX#WN)U^f8c_bupui~7L-CT;{jY@7yI0yskA zcc|}oXwP?V1MvTFgNU0Z1D*%`2tfP49|Cw3uojR-;^r{GgMg0#sM8PVgC9_*A5e!M zP=_CV0J8vV0Hq{ui2y7Dd=Jr`dov04Q@S@V7ny_y};8#BFH9HuT{({QtH? zByLBYw@(8s0sI80C2_}Cz%zg!0re#QJPz^Q~>BfhZA?(N!$|!cm;sZd#XuH7y)=35D&;E5xSkYcL886iTj=f>?H9Q^wlqS z15!!+bv>Yv!~?*^zE*@zCLY9h2UAEq)En?10JIL3lXw{4A9)P0hQy<}BqojnJOx+< zs3q|j>Us=)aqI}7oy6m4=W*2QIB1_31y}^Y|DQ-E@#GUEo|*_)Okz@hzyl9Qxqg4gktc0qqpfOIZg%z0QXL<^xdHd6bok zaZN>gQ!y?VaJ>)*KpoRiUK-k$J{IsSi5U+8J|-~}Q;a@7i=c6D1gM`N)k&(08oAj$}h<$u^eqE2fd0660063u_lPbI{daCpBoxUY+g@d zE9%sWa#~SNJKAV}oFrNaNFYhKiX=n`OES)s7_&(7cnz?VB(HrW`MeFl)&DmD#DMu9 zCn?ZEQcs+54PHc2?~^3;SpwKVQs_jI!giBnCctEp!a;k$e3AwY0pPb05hM+nM$%A} zF+7Q+QJ<28J+1_sp)|Ibq+39D0)9I&jikxIpPE6^ZL>*=dX}W=sN0NGlHh}qVAGTC zI7HH{6q4@r1H44iUHHvCfh5h@MACh8N&2mkqA_Z#9zr`FE+lEu`v8>vNMFDMfK>pL^(bgQih4b|7y!DDW|QB%=p`U~j)4R}u<0HCj)K|7xT{b#lTno0WmIKbn8cmU`;i>xHi z&I17FS@g|wXcyL9={eNpxnz=_$NxY7AW2IGlC(4kfc{*HIxI~i>BZgv;J%38zKGwx zyn&=wKPJhFHpHSXap;HTH8=&>Z9KhRvlO(;V1EB72z5+-9w3D|_3ckddUqH}?}7IFUL<`GL(+$+--n?8Ad zX%og^Qw$)Mr0*91(1y)B0Hq}TFa+={U>g9Re?%L8d(FmA9 z(y@soA!b23F&6L?U;`kZq?40LN{Rs-05p>XzmSx?lB6?Z0BF-$+@Hh!Ib2hQ0MHjH zNhF;Q0?Y)UFH!>mpn1Uyu%4te3rXqtKK(~PB}p0RgUr5wSU@gGSy2G|?qYAiDIrZq%`r{-utRblpWi;ZxX)#I72_&@v&%T&snn$v*jb!~~k|mtelM_fb z%mus;$RgSJILRh6;8T)4XOrw@C4{;I-XUUO@o-t{3ow zSCQO%D&SGTMi<%dwt!+l9!6hQK$kCXh^Sd#zr8UTIrIOsir`aXejp9HW zg0{z^KVv5X(DvAm0ibE~0-#A0}NPc%Q$?t*w`?Vy0fU;MC&W9UG{%0WILBP9!Qj%9c zPV&Fd&VS+m{*7_?7-RMEev&^yn?FJMpCps~sR)=w^5;uQ{^EH6>acbc0QFtFljJW4 z0)Y2r7Rm9cB!6|5nbEImf`!kjsgw1QSxEp%Rqi?p9qC+bsk zbJHT#Y4(#=i~5Qn%Xqi-s4Z#fXsE5PZ!WGVtD)jzgMq40uiCOURc$G#r50T9tJZ+t zMo(W)PhYR*c6~!ba4>mkzdCpR{2Bb}Tt&q>8*jabnFzVaaKJ&2D{`oz^*TY&37%Vp zX=K%%MRS%}g%RkU^SIHm@^EPd!DZK>pyw3QIEBAlK_T~Q3i6e87|SWx8HHF!1&;9w zTwv(h__=JsO&q(Lmp|HBejO)(qvqFbK?A37fK%{wQW(i8SUM>fz(ZH|q7|oEx3a$S z;pin!^er5{@lp$n7z3jj`54iDqgmrtHU#K>jRLM32`WJs2z?2kH4;LjmoS=-ff3~! zF^aGPry*hj>H+>kF~rbyqz7P@{T|<73WAe`_aSP$&FSW zYXc*9lV?rN;!pSHz)|4f(LJfzmtMLr%>BT z!8w*)C5sg&zqPT{rnD7j;~lg5SB~Dn(6w33B{!cF4hgRDB04dM1jE0CfkZxRK7iE& ztAq>^8oY#<>qw+*UiWrh_esveD|zAVoppD~1(lq_9!|mNq%e+Cxc&b&g`2Kwg%>0O zvZo+3gC1Apbk^ibgB^ot6{ZE*toj3tl@uCiv+8^~ODkl=_ahlwE0lp-3uA4CVy?I1 zoaB95aYf%cW>_yb`u6|-6#P3|(S6^Z>C(5goqY>m6`Lu%Z`IDe4Y<5-C5)GZ@nRBO z!gxs-F9m}Yr=U~g6h;EK&=?fdBd&|o2M$|(y3VxUZpD0xq$>4afcFeV65)M@f zDhX%31cPI)p+pa0vz5mKC3>Jlef4PiO0m*lo8Iq5`UZC;HeJh6v>*xh$87r6_o)PT zfi``>FBFD5KPPX18cxGrqQ|E4!XNFy5DlTQ_OVxe@u6iMt7Nm?oS%sFFD{_xZrqpIba${GFyp?^rhmAc=HM>Crk`V`1-NT+jDEKizhD&S z;a9hHq1a~AJ;x}{#`h_pQ;u3$$-|}}Wv0ovGdTIle6?PtEhBDgB>$~Wr0I6(rK@#2 znXQD8l!N)zOp)qB%&$sJ76bg5 zAXXrVwVq%UndEe?`)oe}icAnIn23U3gF_M{S(Z&7GKq^~1)}&8QPC#qkpI*Nn+&$g z_5(#fQ1ruS`GJcW#YpvTHO3*08QDm6uR~bjN9<>!iv?*QqD!zxXE?-K^63 zt!wydpirBQp0m)0T8(F;hAB32&SECO6$o%~)JP`5l}i%5`&~pM-$fK~RnZKN(2Ns( zndr14bCh!z5sKChL2E~$UZLQ+P_)+fa=FR0BZJef0}Ia;CLJqNoUW3QajpzG7}u)} zIIz!jHQQ(kn89hXiSxZ&<}t+#|HssqK#xoZ6Y2Agx+ZB(c`=>6ayY8am z2Z&mytIyH~N~O;M{}w!kMN<)(=pFj2Vo?_fb9YW3~0q=mZm9* znx)B~wzI)|1SRA0HSJ}WDw^%o=A3f!D*WjjKb_;}aQurLzfUK=Q@Tqizf(6(WV-Nn z_V!oywwJxlR(QYPi+*SMss9Fyx#)M~up%)#yEMN#Hr&Hor}OvK>-7!!IVpuXxS_hj zl$183hbW3w4JmX{v3YxVsU9YKqprElv!`rVOwG;BHC}@DaS-`g)TGV-PnzxenuGiF&V7LVq5$^}Kg5dRRdw6wM=Kd+{; zQR%UK`SPEuJV#8PJo(6xBL$|ObC)h%YU{CaWB)OCJ@n8+3ucWQcQ>vN-7)133&je# z|B6!o!d|-9cV$Jw^cbtlKDa7MeV)C9HQD%$mHMI>-#)zt^)`7Rv59wxuc$=P8us#D zbmuLUmX^oCYQBhueu{5m}H>oGmN=py! zI9Xm^e(_i-riRVCv0i9w7ELlq&7wF%HFC6-yQ=2oI`Ci9q;R?LSEnEZ9$;_s;552HVFq}uaa(pU9F_&8<*#4^P zUdjI=vq}ul6>v;wOJ8P_@Ho$G5*6)&!zSUhXIzOn>7p=?ggZ3M-)fjYo)>WN>3q8| zq00`-jOY2F%u9MsSSfWVR_d^6+U&?&A)EAbnrJb;n{3nPX3@{M)7$hXgDDYrm5%oR z865o@iL?&1o&ZPx6&&q{e$GqH&OV=(pP%nOckA|z>J=*)42Iq#_PNLD-oe4adFyxX z{Pwd|t5)saJy(56U8u&W7VUKpR=K%&%~S7kd~-V(^%Hf3VeRUpN00ve#p+0P1U~IJ znG8;UAM5Q1z!Qp2TrezFdf|l^o_tVrb9(42D=RS_b_&lv8$;jFSM(`+;nRIoO3la$ zKSX;C6auK7+L0fge;y+EBN3s$FpD;b58rajE%#0*8?6&&;fwY3mbhTrv}ubXX}vHD zYe2rDTNj@e8>2p~y`EH;(z+X*RktK3Ctobh%`GbiBj3Ob(^-;BVx^Xrmcp|Z_hy^E zwY7DtMV&py&#x|c?AWn4F!^+o+cRUOva+(u`pIriL``3iz=urJzFZbxWWqO>z4c{p znysQ;;j;L~G3KHSL;%rZ@H&&;_mDt?+beRhamuM^M`*FpI_DYh3}NKa2s&2JYy zJiYx)Mj81PtCT_Q?M5$ZXn{1R)`q&eCcy}4(pE>_a(#V$lU?@oH0jlL+kmPj&)&Uz zdp1=GLS;(QA0AqGNAIeP&F{SP&iCn6z3*7?&>xb{Rm8$hp`bu&ZizJ%pUcK-G3@tI zO#V`=_{dN?`|l|A74|a3pYQ1CFb@lk^Ol;kjvqgs(=PRkyl>u|NcCCu6)FA<`Hy`$ zing$q^vX@X_M|T()mPQ$<+%_3^^X&107_|sMaVN&YAQUsb?fTs>NDzmb&mFWPWLN~ zpN{Mto3+J@npG*Y4-%=cR9LXlPPJqit|`yB@2Y z&|F?#QBhTueKGBPR|G9(T7@e zpyzFpB`NoO3Fm-kFrF`9Jm153K7;Xm3gbD!-{0TI6TU%NzL;5q3|wxH?=5xq_NJz$ zb`n(dxN5I+bG&b!GiOe4;hA3#9^AiU$AP4zBzMQ(S3jn=R^Xrh_{bxV+&xBrgA5U+ zKE+;+DVu`s*Kky7fQenhD>3|NW0!f7-Wm z=gyqGQ`@(1cbkiD@z#kLE0I(IGeOXKyUA4(ii(O-(~I=Awf3H}P*qjsHkbLfWfj%b z)HGAd+0&;_A3oCN7TfXl7vUyY>$wHTWbX9N#X?G0$GP+Wj9c?z-sxqCIud^ki{w%haH=B|Jr+;@KAdUq%JvKtff z{!!T;PyA!jkf8wt|adGnN)ZdpqJruvQt>W~|(jH`TUb zB{%8VTGb(lw!uPcK}t$WK`SJRuDAKUcR%<#MF@<1_~D160)_KmuX^`Ab8mLei7nwR z&15vh8bU^dW6?iQ0**$C~;Hmh7+ zQd(MCR;PrjSR=i>1A6+1iwTU%S$&|cTl;xvC$HBeXnPL4l>!~+p`Z%)yKcfy& z33%xRQGlM|lb)HLlbf5HnUS8Ak&>NYm7AN}R6#N>r#>Zlc?~`mY=LKlnaaxAt1n`x zFXY6>j~mAZ)C2qHFVl5HAH=pfmeI0zV0#o&QquEe47Mi^Xs;JM_coQ4k=LN{Luizq7_q_aq-2Bq){Z`p%lmxY{ z8I=m{($K`GE6z6obA%{t6n5KEAYjgI<-M#d;$5VrC|KBNOFkq^G20XTxIJb;Ab34eKI8 z9~q7BG6l9^!|vVReeuypA4RKAt54$fvf-m6#l^)Z*S&YA`ggqI)FtYl)CaZKL+YQ| zW{jO?x2Q`l+k<16Ek*b2SGw+- zv>}iL!e})&zw6u|^>^%#E{$HFZbq-`j>z>$y3`2j6EuxLS$V zKeJ(Y4ZEHVqkjUkVT{! zjq6?2w=_XOl9t43A)JJhIzb{KV!v>hga?N?qoTSiRX8q2LT%tCQ6AS`p*>wQ7T7j$qA8dp3~6TvUC z!}Kd>ho%Ik1fI3(jRxOlMIN_5{%HKEOsjtB?(xeNVdGr3B;5(S-}GQ8R*Qt$+hEL9 ze+De2L=+xPc$V z@#k~=Xpa9g$8U54zmnreaQx3Weh0@N<_3OWjz5j#f64KEIlf0Hes`R2)lH$ZY@C*I zDCYVXPu`Nv6{oy{Rw7U}1z*ybF}6{?59`Iv4$H8o zLtZf}Gm9W)D~eU$w-TMEuth~bmhtRz$dMU3#}xvT_Q-?UinHZcgR_` zwoK9L@VQopfEKp4c;Dw-TU_>A8}Iiqyx))UelO?!9_U8DhjDx#j<0fj$Bb`v10NmF z;-G6d{u+)ymY4sB|Eu_;uc|+byk;IU}K z13-$$`90u`?&ys3WBz!vS)_0?_xSsfU^L()qV{LVcC1|rU%SYE#IPSXj~lmte|-GW zqw(>lPNA^nhNVk)?;byX`SLh}>_Bw2s(~P1))c<18T=gUn$mS$bFQX6x?4@_x7+vG z_hB_{ZmGe#_)VWlfs=f&nl6t?T&l>64}Emvqcd1Y;VSrP7M4>*4k`5&eVee58kkT|~b< ziQdF-2HW&U!VuQMV)Wqcr-yNe2)*EP^2c4EO$UFxg{-*m8l%^h8j}?I!%6gS{05Hx zePQ$o?hqF8a0)^vwD3F!H4$|*(?iO&;^>~$A{}OGv@GgW7U!UbX!Ix_!igH)o({T4HM%(tx>jAe)*q;ClNsZ4buTd680*bzQ>|fC1(QZqzoeX= z#vN!@nJLOalj*Kb9%8yH8*dA()GcOx&kmE!LJ_|QTC>d}_y|KlE&`t_ZF&!|2>VHt zZjHuq<}MuMqau+69Qyl2^zB5<_&Jch6H(Gca6q5)=Tq9L0!C710?ACz%+40YloT(o zloZ;gSY*vv=Pe*CT)g{4qlfyYN5xv(GjjJil?H!&oLpcI@ub zJ`$qwc)&Mc2UuZz;Tc*KQCr(W&NlZcDJea$?+oe>t5i{5K_0BV?WLs|8KtF^je6(_ zetuFFN!1)Xv2aq=)RdIO_372is}T?I_4A8}h!{K|SoZU~`R0g-=xCf(e@^jLLwbjX zh7K}USN9L`@$oUlN?BRHzIAmDOS4P8q~|tGFPMftfKL56zj&f1_+$iO$4>oPW1jM3 z_J(YXd2`MMMcNy2&yagC=F3O?s0g?J#LO_80T^@oRIR4vidD?VW5_V(M&DkF^v9@s z#@>T5?_cBX81vs^%ok$J{|fG!hcRc-D*Y>~VEo7~s%vdS(kNsT?O|+hDT2E*JuSDg zqQz)5iDIn2sS?#5+}>`06;E?`wl&n$)Z1m4Nn2~lTY}lNrM*>$GjDd2+-@6M(d-3_ zk#}2z&{2|n?4c+Act@}LuP%Mu8wm zqaJh){BMJ)bfd$5YFghgZ20gkTZZ-Xiu3kt$$;Op#IxssNw?pATO=$|FNhx>>F7H- z8fH?>@hQGE+P7kTq`FjHYFbfQIb+6*iG8tJDKNa*4Te~`t*)%7=-@jshH+;9_z~KvUd=?aDC7(IG zW5@R0yZ7zecQlzkR|Xr6ZFm-+=KIup`uchaP25*m*8$!#iL%`;in^wDg!D94H-X(7 zOY)0qn%mnlQ?p8HD%(wPe)@O{9Tizw6}h>Mjg6`f!d4NRn{P=wWX!Ck^4W} zD_a>&>S$;XVRUZiw$Ljze4J|3HdcPwfZyn)P@^mp*aSPu^mgDBy|pqiReiu$_GD-&we4(0+DbbQX$xXnA0?!5EP9yuoy z_U+rVWy{`U$Bx|qFZl{L_0dXw{IN$Lee|B2gd1kADD@BQ)%(-DmH`&a*kEJ-+itt< zKV~>x(L2Xtg_fEa^*Qw)j2qRZx)tvf{U>}lY1_7KKkwdk_?KUPDK1S(NJzK=zMSAI z;Bm)By=vzI+}CYBom5v>mtR!pYqxuZ2YACye*=80YpH0AH5q)F7|u>P-*O{->{6zR z*_uqv<+jWqF8S*@vJXct<;WQf`P#OX|FGqk>TcmJ_u<7S@#2}(LeDjK z*8R$!yM#ZUiSsV6xbD*P^0;2bpGCqIvc%`WfdjuDPR&hDuBw_b z15vx~&U?dihF!bTPMxn%#B{a}#r69o(e)y9A#v;0C`9q#<@x5uUw3Z(dDpJJdl5W7 z{F>9;*T>ttwnZ-)={~kB#f{1;Zti|b@|Ih4b?NDt#p$VO)kQ@)ISmbnEp*Q3-rcNA zzKC&ct48>#_#j)K9Ga5L)hSO~oocn!$xB!w|~PTeRM{%4C-cWl}1qV?ag>VLU%UB$tpuUx+VBaWVOLkroJ z96s&J#q35o-qnic{tR#_UFAH-x>n2N@n#4MTs$y|aT$ThcD*>Ce2(u2=?08V96y8O z+ugtq;P^v0{*N5LlH+G};&;EY1w&+`)OwEW!;y*S#EVbj z#W!}=-DTfT|j2Ev6TY+6q|gQpF)3x`3PEqg_!Hq+Jm=R z<>emdt#0Hc+pk~pi5<+h5?m>mNm%bA;E^JAM})l?gJ5AQFPYi0!^|QLHg{*sPD(nI zd?fkM=L+W!lhJAI&>7c-^<6o3?bwwE^v2IQyL9V?dJG#gwy87t>xtel}2E~MIZRfug! zO-)U|n0b*IeAtKFTv&QAMps#SgpLlIAW3nd)2H7)XYTE@X3auOXYHVgw=!gwu%9K=?^PPF@Z(_^=OIS+MjR>BiE7 zC{mly))p7q(o&gPPy}k&51FLaVrKGTA8Ko1>k010)+2a%AyBi_p}{!ipVM#1v||>J zxrxo55K6-Zrdcal*ymzOW)~y%$A$UKo!FP}3-Zw8_}R;xHP3O@%;c=u!B|tnW&9Nm z{uz>i0497Ja6@ z-jaVmDk*8y@Sbt~TAN{1%qYgDrns10i(ACj8raH=%;?oYt%__k`1?{@n+=So_%xdW zd-duSXll;QrNBUgtzTG}2`tE>xfu6Bj}7cMVDRt}BSuV}I%RM#oGz2w+uPcywA2Rn zQ+xspDgp*oL%^6Z)Y{T+<1@Q^>-Y}lDyn2}KJ4uXdxH;28z<($yV6FlgN@#zGA~Tb zCEpP{ao_1XI)P8zcf|ZE+;`-QJE!l6QSIvO(N6ipcVtojhF@{-5v<1!@6r9Z=`g6AnEwnp9lXpm z5O-a3IxzmZjAGXjcTj8t#T^>OL%>E(hrn{mz#Vcrl$sG4*2$4qdbfN?aCo<3I=x%$ zAY7++t1mur?-pb>yjuc0;XEH-I{jO$-T(W!BZ2DG-rsA@VdgEk(hINOzL8Hi?JWP1 z)G&B!*jaw@4pR!9w6=&dmu^O=KCyX9Dob+eS4>|(K>>U48b++aSMKr6% z&wF$)GuQ1gjdmn`K%Z*UPdmh~li2*bI!iz&^+(hPH0pgE)W;!f0P_p?*QiI*Inqv( zW1qs$zptXtw0WqJA3B0f#4Bp=cUkRURk_@l;GjQIovG1}aL_+WuWOvi^6#)L1Xg-e zn~@s*rdBp3|10`6^n*rU)#wxQ>Dxfxf=}rEDx^;}IO#h_ll8tcN}~&ZOt6WGX>5in ze1_^~vtD0=kA*gI&=@vH70gl5%a=`31(Q@;Il85K8IL%rYO_>_B>xsV1biIb5A4V0 zsdjX~w1Q1kc648(+Pyy1!1Ww<#+m zEqXguS)qq-QHRZ!uyItZq=oS&;(xU;>ha17zK&iQ$EoRb$S`YB7c0=qQn6RVWfY_~ zE{U{?UB=@a?R9pwM(+Kqqf~~FNu$`M8S%-uc+vRl?z7rBzMbQza{LC4Z|Z`NeqcFv zoRJ$^b|oC`XJ>j#glqTR3(Y$99ZjeJ8fd)(_;R zPv`iHIQ~XndbJz)NgUsw<0o+ZYK}j!6TkbJ)Peeg+wS4W!#VOkj-1AjwOQ!0?si`G zP>#Nzqw6@j*jctqd^daECH{=d`tBWG{xM#@;70jX96y5Be-Fn`=lH*M13#1F_u=@Z z9RDK6_vyrUHD@q^VXcVJ=FBc_&Pa*OTH!g~X|0ejcduUk*D{qop1r-w-ZWi)kis?i z?lHEp-=(s*QS41iSTWv#;aYF`htgH&pMg)EIzQ9YxX#ZsOs?~f#GO;;cR6NmNRV_hFsk7J;NioyK>Lq%rMuvXLuRE;(LbGxI_N7huOmP z4(|D`fzgA`>}{rK$85OPu7T|nSPU1BISbS%I(H3a8cn`yV0nB%6}yIs*QCmK4J>wz zQRTY^F9%g^*C4PQbWFczyM_ljRqPsY9zmPA-Pe`x8g6k=<+}zy2UWgnXmU_xyM|eu zDs~McyPw)UDjQmK1W?H*U&{K$I8=?H~kN?UlB7UH!-P z(drcSeZXk3*+|A_Mb}r~HyXJ^{tkFST)vc+A__e#H7got%QgX4L?UEr5waF7V#i(5 za?|R{>rRNqW@<)QuNWlWI^xzy$470Zc|kj2+Gba~ABzZ}0~U2Ov!@HcLeFA(8j>RD@kS zKtbq1Liq{i85k4k^bB;x?|NE&8^a$=tVu6G&!cFDj~~aP22B16x=1K{*J(+avn3VI zmZUpdlE7P1*Vz)6{ZZ~>N?T0B0& z2(P|ugxfo*u)g&$UzH!5vN;j(Nl#8C5|7I?Qk>C;B!mPwDdu64wCOOWU z6gz8D%iA-evnFiDb;q$_d3Cg6#lSjRGuKJuD5p`=NyBALb~8*$?fn zIH+oxl>Ivg)h!y;$quUTgX$kR)mzN;d^dIN)OnuN>bk~3Rnw&GKRBpZcFXYSEFrO{+dJo@zca_FQQ%{DW9$PU?X%`rztU1&WPmEj?y?h|Z; zYH$xd3f4cCKLdJHu$g{`yRLc^8}rLFv#w))i6YaaKGJF!3Vdi%0p&@JE~9E2^?V{K4C}Y$?O=~j!N$fPU-Bk zuDi%fxd$Omu%Tmu8t;&=aSEge-Xax;KhkAS-;iF?3oROoRcj(_X}!=(!_9)Hhk(op z$j`+7c@z|7X67>Y>cwqVgWcZNf>?38LOl$Fy{D|CONn-xV09CFJo=6O-D`{E_c z>#qpIdd7K_ASF+EVPSQ3Rfg4|(@6$N2m2xQ@DBV)2~*s5LaTgQy8E17WSi-cy>3U(C>F+(0#q`#gydGOc6iV$dw)s^pQRfL$tICONm}Fw1z2}5Qitz2uSPLZxb4&5%!^qbY zR9sw?Ur?M=US7uh_(i3qIVIHZ)c(A&?V8O%a!%xC(7?CaDQTw$BHAU6Zcf30CZ@4()i&+;==`#SS8 zuq-P>z+<<7$5@t?LEy1~)YPP;)YOwFPo6(^^w{}RCr=`1>McQ4*45+o6sM#&>zE@%tU|mWHT)#Gczsa43hJnOG?VXNAOgvXG@D-hg@a`*~5qlXEell zvxtT@3ulB@oo;LCFj$bFFXg4<=%dq0Y@~XtdaJ3YTGOch<(X%eo>GLdo^hC4{9sI+ zE>D6czr-dL7&W~wlo)0 zo7b4>B+M(!>=RC}pH<&65CvO>Aa*!EdIn0j(!e;Y@WBEbx-8DB*Kb56tdxOUsSy={ z_TrcwuIe&qKg;9tu(K|=pf2AgGeJ=`7lMM<#T9PFegO+pOREsBwc{<4gaOIIVG{12 ziv$IoxSnR5F~6b@iuYqBA$_h<^Z3JCr5|#VhM>X~HX$RK#Xsuj;@#>h%8KQ5Dd#y| zus*Y#E(>{1mz^x9i$KF2vzqCPOv17VtxHeI((T^|d9Z{fG-&M)>pDzH+1Q!jBc2od zF}u#a4`+b6e|jM(ECYpAps)~fft`OCot=F+Ir&^l%9*oCr;?ISr|;j718nT?-07s` zl$4`sNlB-ZlTK!3Wo98O6YQ3;o~32g_MlTcsMJSh>5gJi@In29~SJsdG&{@ zzx?56Wa|9>yYIe(S0Of9^-xX7r~ezh^7h+t(a5el9N&1@VuVnk7uC^0dQVuoG=@H; z(@+J&g;0h4Pk$^e=jmVC|GYsvsZ0nILYZ{32z@zW!^;6HA<6Kv!l@b?Bcus?g#}3N^p3D( zNer^@*9s2_`-C)Gw7tS!s}55CqTiC3xH%f<9md&Jdxe7URZ=IaOY}b_CT@&|v7E>n)X)Wu>JR<<&LSl~o0HJB}%`zp|?8%F@y%rdL*0*XHKt<)V_5ge z9$5C*BhcT+!=o3@kotIgdISXY2wo#R3KVK(tlNWN7 z3auc{`Pik_I%KUT!@{_OT+m$6$UvRNWQ-3=>Y{OU>rrjy_!BvP9>+Iw{Kigv=RCeL z3b$b`lSj8`QMlQQnWo{H#l%rdm{ZemO2NzH98Z9+QNxFMu@iW)b-Y+TD^{Dm66TMD z`NL#y=L(|v#57OXVzzW-v9~bgTKe+;7Gn}>H4nAAAGMl=?- z{HMpBc`+K#UeaDrOf2-Z*V}Ks^VOjrHm>{f%P(mVo1%BCw_)*qUik3CXc)6^Rm0W6 zwrC*)iKjbgC*nDy>09U(1B71M6r{KwuYdOK*Xuuz|Kx)YK6viA&z@R%-=j-jWlH($ zh-1Xdij7I^9l}$>9l{_;)C+i>6}*J|g{N$H*po27g4BL$FT6rklReLVG7hb*DXD0% zi%pn9RaGr5#g!Mca#Mf_f`-G~FECZtXF_in2iG|1eiPag_lh&N4~w$OXjgpmv}>q240xwQ2B+HSbtnZHb1 z!JEIh*X(f@9ypvCnJUG+2Z*{D4mU?m4&_ql$8Rbt#%H zB_>CO@9*+Mr$M@(` z{mwPmsl#>EL+ZX}^M3Xq0eZ-`a5nF~FR*#v5#pTpt|UgEubI~HgogQmhPm|uQyPjw zoVyEGn0a3_ok2H9fX=WvT#!f@d4Z`6_k=)Y(0Y45X68RIGvhEb=VNBh$IKjgbsmFj z&eW^p-Ca#xY%Q+Lbl~1pzB&oQjm&MMmJ?wwEG>@1@ls?*;cl$C?oD`?0rfW`2u5C= zT;ZC6;p%h?t|Z0CtJ5!BQ*vCLkinHGxr{?z?aCp0_Uz6rJag#Kq20T8@BQ_cU#}y} zZ-7Ide){h(z4G_xpMSovurTc2NB{1wu>bEk#DB$#Rp0IX8hJLJc;bnn1t;VGKV}ZS zUd&3XXl-qU1|)Q-9oJbkZh$!?sWrc*4v9Np?}K($f1PE;edgfugRSf=PxOMWD?7CH zj3`|RX{je}^ zQxAX5S}3B?*Z6>1pRG3NK_a#E}z5c`uwc@h1PvSIR5B>cW_=D;>68 zOl!fyyNjf9TD{T24c3t4>z-9-(!>cUyD{X6WN3+ePF zyN2|JE6Y*S>1gpiXz@Z&nSu2>h6M7cD#^v^^4yZD#*Ww?9gS5r?UE$5*Hl&JBM(hJ z%RSStz1`$Z_0143NZIXeYR3c4k&cKxal@pij;4BBcx8hL)+vvM%EILR`}ZdoRt8MH z>#n<|22>vV0*PlnJIaEPMWY8bwcz0=O=L14Djg5h5I2@k5Hf7XvX?k71W9MubJPPo z?Ah3$XWKo3#^JczxFCUmT$w8ge{T15cW$ZzP`e`8C}n zIuwJmPCUoV3%bKJi9MKlvn~AedGsqvY9xZj{%o1ps2Tiq9f zpB@1}h1S(I$U!}^o#uZ!)!uSF7AsW5auIe%+fcI^OeTsQb>-LPxp6f$wSr#{Q%p<@ z9yyfJRGaY6jn`$vT!rQ>rzwiz=DTnX^1YFB<|XUe&v71PbHnZF2iqA$o#sYm>GG59_H&YKi2?U za(^`E-hP|`*K!72&l&JwC-=IKNXbOS%1K3vzb{=@Z4)`8sO>vH_(U)KLt zUWM(v3h8dNU(fM}@Fr~H_=h?E=*#h$#jLBfO|z8vGW=MMeUxM8aBO#a--nmp$niZm zeksR4dwJ>IS{Va4{&0@Jh2vLp{46){wc4{>OPV)+Gsmyt_&ILi|F`wO7Jj}PC+I#{YldV9u-0r2V%D0P&zZF*C*NtUamlweyyl_2=IOlV z$9T<)-Ke?B@v}Jo29EE~@o)aWitlq({hdCy%kv@2zK|VOVOkJ;ZUu~a6&i@!9~cAk ze8?V*iFrQc5sZ;L^C7z&k*Gq==IPI#J!!@B>tom@3CH$uX=I0duD6nL{C*sNEyrKa z@ejIzU&HZ3Iet3FKgRKk-M|mz_-!1Y1wLtdq*nivo%k+!xlrR}?FpEhV>Dh~qw(@K zCogv|$5%&PlH=`c6^7j2%a&nWN3wMo*ZbK*%;k9Zd#G%-Y0~0zg4o^X><#W~ZS`O~ zqAO$P^y{=toD^fzy@5bs^)bb&MS*>xv}FmkE6mXfrnEu8T_O+ zVmYH(q@aRt5qIdICff87W^KHfPqq74&fjTgZdp7iJHPUPb|Q8hJ_(2v{ES5kB84?S zzmfnOyW{*yA2YI1^VPR|sxvjJ%(=^`&e5oja8TW@QEhNg-P;+<8D&O5+O?=Ys!@$` zQ2mWYb&P}Rw;I(F2i0#u)e+5!W6j6^W2$GgSV@*anw{YJ5>y@WoJKPpa8Si#e6wtT_N=lm>;F?)vPW7z-PiT%$^637R8 z%k1lIc(N7S^*7anrcPbA?z%gg3`Ktgj~BjyeN0e!`TY4euyF}e^br{u5jVJ98N~YG zx_gt)(Gl0(jSNDvRlny@@Vabvgeixp-9&t_D<9NJ!G^D`fbiO&{ z>8D4}ia|`=H`*)K5HsM(Cl4Nc^2td0H-h9JeN?;ZAAFE*LQR_**%Rj+&lVH^Sw=nn z8#(T@hCbPsMvhl^Ao@S^s~=C!vl{4^Afk%9Ol0` zRz;Hmz7DS*Lf^iP62UJ{Vm*TB_M^ats`|Eiqy)m3^-cA)4S3FST!^1vm3I*G{Dhk2 z+ixFr^8h@baKP9RNI4Y&jJk^2mNGmv9S;no4g~fT6%{%33s-Y=^ifS8?8%>wbpo}8 zK9$F#%m#qw_4GlN9N+ARd7Ixfr8;%8G8s zC{)~MUNmAv{+9RI-;a5lHkB7pcz8G!R(||3LaKzc7z?~5!QGEn$onL&+OcEmxY=-S z-7$1zP*DE1m5QRQ++G;T93WPlIidcMhzNQX%C^gKb5_0kv13*5ZtM`p!2Vo}pBY## z$B(Ve5262_LI2G{|J{ZD8`Sk_d@lR(sM7UWeBJZCH>};4p2@d+_iUtCiB|hxdPTuD zHw~|s)aS(a@Z87uqSfbN@5V#ulot7hg<4r zD39jAz^1-B{=wq!2r^3*EaHi$q~(eyln(n}*sh<8E-#AHYTb02kc@E}9KG0elv^ zqvfr*zLq!iv9y6=+GDd9yP@eR!kQzBV6MLbWlwi9$|sWIXM)dEFf?@NXDbmT{j&t~`x# zeH!Dc3`H)uUi!A?>O$1MsHUY&4GQ$|Xw0j|;?Z2*Sd$BdC9_O4;A5<*BqbG*RV@;> z3b9Z|q}XtsPHk(m3vgf9Rh8=NE2=sIdSK<1g$|*;9?$F$6qBGijqD_vY!lb69WrFp z;69ScKM2w!xTmjozlc#oh8XSs!-fs(sgv_JzWL^x-{d4zZ(4 zoKj4ue)#y~kJqebrJJ9Be)Z}#pX~eP5DSGpo^<-yFMHRlS-pB-@wa%&=ns|sXT-o; z_PzFs3yAJ}e)a0rh^v?%dGC`iys%&_g1uwCii%{^z{6W^t*dK^)wd$l5}PL4EIt$3 zei5k#XS0{METw(qs}|af=YmHpQcR2f{EvV9W9dsmORa6!6Qj&=`QSUtbLAmtCG;Zuj=~*4G~T6)^}<3My-;Br~%z83{dcT&F2FHoU2(N%HZQP+(t^ z2?h4-p|4;Mf^E?X^zjMlub3uI9zA;Wh+(S1ho4!S3|?bdK<@yrUCIKQo$cAuh6l3L zm9(d&;mJ@4u#m_%C8ew^Cx=R)n3#NwIvrFj_S6)~=wZUG!cKRDcG0+UbL%Ti(6~%Y z%7mpk+?1(_mQSYknAJv5~bLw#XkPE8r|F_zcl zl$M@2ckw*3h}i;~YMT+7(9(iVrnctBCfq8}C0SfzMytN5smUni_3t0j&j%gp+b<*{ zBG@v$4+Q|Trm(c3>f*(VSgD(vN-ySs0dVxFJTGeT z7RNu$@tfSh_vHBD9Df(b&*AuYx`E%D;}7Kc`#8Rl%UUxYosTmSB zeE*Cwy+@5I+=@V8CTJKK~p^zogt?53f<>u4gD6iKNeI zO+a#D!cRX<95eH=#~zzLXy~+Q*+0G>g?%huy4SblM&l7oZ>X`5>hm5%qF5=oIK!*5 z^4e4OQX8)^aakK(P22%o5x?g2H3Q$(^yT)l81(*J^#1SA`!VSK81#Ps?6kDh^9UME zNjVR%b7l_yva`~VO)lkpGBXjJr5}{o9#~QF4}1N#wsxG860l7+#6li2uo=eH?)mJi zufBQ>52I3lgH*@6c1ewRjMU9yPA&4+wid9pXrX$ikXL6>AA$;w@a`Tx2AX>sdfXHh z1v!~2gx~!%)}>gXSFczhB*bRi7%_bIlTSYR$X_h!{P1MNEKO2w z#L0>0D3!|S3q*E*L7S}>!BdI#>(QgJs;asqH5ItibY;1pMd1h-Ua>;Iehh5=vkME0 zOAyXkT3S+2P?QHzcQHG+5b5zsODdUBpqx&ja#+pq4^K>zBvFT!w?l%)LV_}|_4mWM z2>d~72K!d0uLP5kI1q!QFmotl{FdJ=@pt*@VZ z=+LaF`Ae28xqrfxIdf_c{2M_;|2|kBNgvb4(yDhKe+rMv(;qn!6LW2@ceLf2Jio#v z&xdoKzs7>aHlWw$_{HeqzoCa;Lk~ZJ9)1!%JgzGL-08GahZ9a!H8tU}2p+z5l!SAf z2M;Etrl+Q67vv=+9Y1{d@Y>H)O8X4+MRZ_c0lIChPSEGL1poW~ZQn8~$XN$;e3?4G))SAs?0=8*x9ze(;oTT;>Ez2((Nq(=3f#scm2iqG~8!~di1JHVSd zvT*NJm)zvuZMj##nC3tL8&d*=gj5nzNpG7@3d!#3S`NvkZW3UDG*TcWA@m-KacDLe z_udP*cgsz(^!~XcxqywumiNAAC6;Xb&&-`UbLPycljqL8ZGN!Q&R@>RG*dH68(Xim z_X*lFQ&QkJb8t^u5?m}hbh@^>%SatvT-w&wg)Qal*O0e$!yY2-6_dQ2lbTL%+jguD zGfI+3Dc|*aTPW;F&X3*yaYqKwVY4L8y$1o$BHw>D7#5XPk1Lmw}|beFF+9UIr?s z`8=nRv}NPqdnmq`;{T+0cZz>*2yd35hWm|@TJd}h14kYV!<(AISqgU}@as!aH`x1d ze+!b*lkdHj4n2tW-9`I$7{6~6G9Z}<{3!ekg%41;*U*!XB>_p#6A8%cGz$snEH8ER z9VQZx^CM;nh|C#@KPRJBs7%$HA#jpW$1-25X~!E#$GFD`*!08f%NS6^P~T?h(LC#< z-aY@P6?E*brip*oH1TEp=n;#k9%^HBISllD-YkcCktyKgRE1~BG*CGVJmxSyl1No& zG95#5m>AD>t>uGHdw!Z|W1`77KB4j>9F^b+KYRf*@!oKLSXfTRew_2Uowlhew@zFsj;fcs4X zmk@y)N}PjYVsD-mDXXtM_Z_(9)(Zs%wS5AOqgY#jAct*V?(4{}{X?VC{NAFR5{IMU zpEhTc)4N<|Jo56(FW)o&u}9*~)&}dhqO910eY;+GZDlYf52fN5xxbwZm3=T4TE z9E!)~o@aTYgl*f-wI*1#7pCm|{@3HlS$)2X7ola!EVqJjf_(~ZaReue9xICr_R{eg1q=X+cJ2cE6j}6_zx?d%kUk+; zV6ZB1Rz!eb@PtW`fgxal(YMckczIM*)SO%5d~Mu(r$o-W4b4!V1I=;EMt~TLC)&LMYk(;fKc>%$#thieVlAEfHCs+^dN+>FB`k z3Vg#p60;KWCbCCnfN#J3?(0pPHhqh)_21^@A-jx5BvXo^AYl3vU|B)gn5k1^=700e zV&fv?Vu+EeX{7|bKW1Fa{_#hwak1zJp-}h(J}C0?dg|wQ{RA_|57;|bIum4TTD97) z_O@nif*nZURGaFqyY6b4vu4ejfUHDc#10j^y!qyIkDHzZ-MlcRbNckotj|CHJgbvs zQ!0rAG#^W#CdnJw^H&m3M_T&Jp{D5Bo=i`|Jm#O|C0XX#1QEA9-uSTb3G!k$<|GC} zSZip&dG7BQ2(t`4R22&H6aN+A4=xznLApF3kA0}u1}WFGknkIYb#dvb}wd`}(=*~Hi4$vn;a zF>K1+te9bMQL^U{;aKRbJ8LXr4L`KG`15iI@WPJJM+O;k&xC07A4~8d5pv-#yVG$Hs zP--!6YwT=^F&IZCzJ!G61Snaul=+!;W3rH2N66^$%3>EHsC_N#MeHHme0n28<=QnM zzE%AH&L}PH8SLW|5(u*Q@rgh=5PyHhmE(;a67aq&IkC`SL5s!oX@uZ;Cu5EGV*d>I zBL|a*hl`7o6V!CmsXapiZrai{vz%kg%Q>dpB)6IO38`&QDq;-VCw0X|HNUBaQsNVE z<(ID`rPGjB7D4GAgw7kg^O;5bD&l~o04YGEJK$A}_Ag6tNlh2=~+rBPxroQ|0% z)rQO#L-*n`+^2E9PWpXMUVeUNenv)JU4A}vjE6ZTQAumHEYXkZ`=Jz;afA^(9XWO<-o5I3CsX$#$9~emA1BLL0bwI7*kdJ_4)@VfYjVO&e z57`&+61?@uEAtTeyph=`e&?RNyubY|j{I79;snUtil~BT&wlQeciwpiyg)60HW<7B zIZ|LUN4Ap3H12W#3_kh7bRH;&k#wV*X>2VlwJ<0 zS>2oJaY}$c1%^!Zb#Mq6P^lUkl*;~oY$hd9&USXj%!CLYH4)0$GL9`PLpZx>eVlQc z_^L#V3uez5d`!u(a%?Hk7WtBh88LYmSMW>?mlQBH#wJ+5C3V=`h#VUm9S7$_%)b0w zpPAPsnt2^sB0>XdKl0p;Bq-_SWZoZUJFRDGT`9>og-N;! z!7~t>{(L+`D4v1X^sSMSgya$9)3=DMa!Jad^n$XooSYrJZXD%{QI?x=y*ywK9du%1 z;@0fTy}`HKa?9bvhmT!?3l>Jp8V5L8OZqozwfdX%7EU-|WCa>=ZT|70pjhE5uiAa_ z#+PZljRdv4oqCYqL?n?2t-U!m>Yn+`=gfZo^*MV_6esky7D_b32gi!7T2WQ2TgxXM zE3uMDq>RkQRw2W-aP@RW?kP7MYkuCIZjSuf<>BoE8A;UNuOHBHGChnS7^p$d33UVd zeyVwo!F(*jd_0Qzn1cBr5`u$0SyGlya$}wq`=T83HEeG7CI}FTGJJykpLinZ(MKPx zsj2C89AmB=IOeeg1eeH2aLE|6wt%;a+)Iye1u|OXoEU!|3pi#Aiq~c5l39>|;Lr{{#GpoE=@)j^7lQ zVm&nT=FtydcYft!DVow9$wx?^KbJl~T*u6mV{T#i+VL&a(-wT`{C!06rnssVL-?^I zPHa4ASDG%efecA^g(F!|LZn>V=<%dnJa`DhHuK0@9w{p!byM`w=DI0k^?7**$$XJ} zk%g4|eio5(CzTK>_kn1$lso3rnr6G1K5Z?1S{a=!{m|2niT9?nHJjomQT!o_?;OI9 zHF6LeX3Lj<=1=%%w&Q0@J~&%r_MA_9cA`BWrajlwo|QvAkBJZ6%ky{{F&UE7+I;Dq z7G?wa$%l!&noh2vv@nWy;qm+#!MAXhw$OZS3)fIuK5fB?j^HpIK|RGQEx`9vd&&i!6~?i~oFeo{av)ouf!RC%PCQo|sR#6lh+_Ld09BQtP5+Tij$OhB`) z7$$`zB@piglY}NOD8RiVzY+ETq5~kWzuWwNGK+y!1i!uw+fe~iW_|Cy@DCkTUXw3e z*xw)Itb(@#G|JnNm)P|}L2;{8X&Ro53XMvR#iTUQJdFOt+F zBsU}qRVv4jDpZ{2`tpP~!yvb#h?#`>@@541pJnW-D)LH8N~-gUOG~PAvq{E9X@{0% zLeO@sW!-FJjc>}ES__l1k8b@X@FT=-sFC_IVIC4Nw4mzQ!GrURiwrFW{Ap_ceB2FR zM77h6%%`IJm)-M9bsSU5xu*)!u z%Q1@~6%{!MS1&9?jDJy4d45T8NpUgK-yzj-US4HMQ8E52EY3rCP=Xxc>bQvsd)wQ% zVV^ZprJJ<0)TmGbVw%bP%7G zex0@(F6o`R?w;=6zRoVKR@o*#ko7-t)mEGDF#@KIVZY*k9eEhN~+L-yXhK*}Nc52a&KXScs zRJ(5G&BLjTKZ8xxppIkWL1zlk8SiWoMbp9YZ{tYtrb=Qxv<02Hg-f)B6!JDs3#M9P z^|Xa>a|_+Hg?nzTd+2_;6z)f8ft;;H@S+&CXd)} zq^=Y^07w*9poWoSBKa-X!f&}2Y&kj$3xFq{4&>&!0DEo$_MBfuX=!Z)}9W z$=x;=jvPFGVZT14xNoPKC31%W$fw6P^Ua6eSgDu z`}S@5*ZcU)u_4Df`5TYkd)v&JOYeH*jYOd~DoVM4l_T6?EAu^)*KQKW&Y3kmIwPJ* zX7=G#AuX6Sd&vWjz4S&rw%vLp)#+5nGP!8|wr!kz&D;0I-G2ML``?D%SQQww8jT}S^od&F>nmtPE+H|!Ay&_*s{!tNLz-fD(;@tC_z zMq4;fTbN*O!H%}jG}MCG9yolTl6p|Tk)Fj2jxh3}n~7!ZN#AwQMB>eZZ^xWv_3C`q zYC#8LX8?-={x9T15b(m zahWM+?N~d(?AcgQTTXZ{zBuu{XBwIQ-gx8F#%GN87;j_#ds8z0UhDOaz>EY(&?B?m?<>BG!?F|p!iKG9q zn$XRdlyBngddv+7@899=rV}cIw(#$qP^QzNg0^s-(}D1Ind+K4L2Mu?NC0JYG-)A@ z*#V-%PbcW1AfPARb!WkJy1390T<3Hda~@5ntb(?1ol|y9d62Jr=(v}KJZNh=oZR@s z=?XcVuD^<=nu{{p`&95RUP@@Er(@I5={UMHOZGm}c0gOiQ^7N4yy<+-8p4NR1){Lm zW?`>|VXuXey#`)FzDDwsB(R^W_=#l0hOVyBc*+NyxH~qs`)a;IUDBPLuFqb?y?gie zUd>|oFzn`7d9WVlS93nfF9f@k!*} zr5LmQXhf|TzJ5HdCMQ@&BHkBb4UnPx6_U3tmL+vz5b>_FBd)fjlB6>#6XTOP;(bgy zw0JL(QC%J7E;vVG=KqR*5a)iyhuMfvh;w%&G3g}22C+7hCZ-FY5a%ADA_>`ex*R;ZQR@*y?^$kz=;c&2L~TM9EUnB zFNps6{f=*8)O$m?e?OB0?DkdnFNuF?HGEb%`F-zwx$BS5{;?L)FI!U+YkXC<_EhEN zyraLhv@B(QV35O`6)0>!5#{WD6>5d zfBZT7>|OIAeSbs3i4joj-q+XIp>URqdOEtg?Cm|B2DGfTU!=1$Bf)sObF2ErLgF>U z$rTa4(gFUt65XAgw*T_Yzkd69^ZMT2!-w6xqT?n+goP%N%EW5^{0r(qvt47Q3Q5qSu1xMOK5N)B|+=4%C zfiF8eP76}nLOE@r)!f1y+Jd_UW3ae|vCdu>n)N4##o612IUpB9UkSMwUQ9Kgy<=hL zR1lAhg#=5~96a`%g!p6}Of~yt+yiLU*z6bOi=I5tcxMT)g+Egl4KuA!? z_2^pyXJG{7u$+<=A@m47JEPOP_uRR0OKy!rV!i$Q_c!@Q$5}xClFz8`>n-WK@(u1DWnVSDy$`{y^`!EFV>YNw9x-Ey71CN;WypmtV} zic|Wdn1QX7x$fR0oRHME9C>5xCwWSE1<&LhQh@`xWlejpo6`OHA-Wf%g==Mw3LVN=EM#TcGePs^25SLL2NiCmmXOfmO?;1}>x$%@Z^*!jy>A1yHcoqzoeG1c#| z{f0#OqYFa4Tx@l9moG!uVcXgk!Rv7Y(}oM}5D{rl-TFr=jW!`RDAq z{{C9HbGEkDRWaK*SA{~*)6rauDjPL5Rh5?uGZE^TdHyK$Lhnkqz%^jc*5n?}#b7Xs z6>zW7=`SM=r3n!#&F%fHP&2DpXAQrQrj#6MyB;5$`g4;1+_ULRCsFy?b2Y{LVLY(6 zca=3&UCQakzbZVZ%<#MT`6r)z^4$pt4l02FNmEk}oGL0WMk47+v5&m^>Z_}tSso_W zffF@WisLw!B};)!N!0$N;!s_%|Z_Y&`Y3Y(Z{q$UU?~$aG z^sLORf-cwSd!E+JG8$Tu;p^>&|#m@DeRWX&<6NN+of?X zNHU^DG8S!T%RqlmPoGZ5utt2)(EV?gzlK}d)Pl*NDxB*=A{eR#EG8Fkebi`XgMO*p zJvugmk2h2B8wgbMnE~nMT1&P zzG#4^g)7fSBQ!0X*c}bgv~bP{g~G@A)PsmT#lJU_|9eQM!KWX6&b4&T^Xbf0(wUn= zXDSL{QcLl zGp?S4(feIY=kF#uf4k|rRZwil;QWn_wW8QsiZxKI4aE+OgEdfW2gUYLtZAq9kAr0? z)|+ChDb|(ts~yCerC_4}7;arLZsRTJ2U%Fqvu`2tv%3S4pM`VG^7H6VYZ|c!?X`mT z>Op($9qe^W1UV|RVN1KPE1z{9xa@(jH2U|k11@wudDOOMWbr=WRO0j+v`v=7y zq1e9v3YO?45o>_|hh@nZwvq>4s}}l^`NI1jeuZPQh$B!LArtkyDPn|q*p7^Kc=jWtd zJa_bHrAV9p+tyQ1mgeWDXPo)t^hxs1*(Y}FIC=CCzD}G$pEn&ooOCfGx468bysW$e zwXxbEcXa4vaSQ!Taz}D9vCbbpc{2Iz+0w$C>^!&w!68?3^R~q>1$k*2g!E4;L4^IlAM_{F# zv2<>*UyzrbP3Fn(At!#kX?K2)7&j?rU)@R0<>0}>Uc*Z-E$KV>%Wpe(?>%s$+$i8!rKG=?uAbC(;wYrp1$-I1 zkC@F+l>CeJxqAVi(6r$7Gs9Ue_4bry|MuH&DFc{)_ugKCmBLok-Po#aZRphctUzLu z2WCxQdRJtE(0j6bH4(_{ZF)CtO74~|ik&fe;-raT*7fPXZGu4N6o3dOUu%gy+tGwC zEhF%Vjt&j?X1b-5qU2Z-2+pp3@St~0U)87~1 z?TCwC#FFJ_R#vd{!J;G* zOT-en4Zh(^-;{qS9hR)JOYKuQ7nw|~|U zUCd88k#sgK2jPUdsY%JHh_p^VfA&;zN^bVK?c4U8I$K;pDp>T@RN(?uS#=;=0B8>S#*ClkVbOK0BzDr}IOR?)D#n26lP*2O{R_oUd%%T_G4*350{CwDJ>U90W1 z)lbiHWIN9xzDnwl2wLgzty65zclMO<+vB%@` zlyB%X&I&$=yIMoR6)VKLL|V0HAaHHJXvw6w5qG&uKkk~x%Am?TEqE$WppjQ)XX5gf zk$G7Vk34918y6ZMwcc`}d*-9~x=EX|Yi%4Xmk+ym2RhfC%5SMUvu*F6sppz)i6?sK zhRUw2B*HJUaO9p zE^q{a*WGchh{Ta~Wu1&=)Ds@`0qxp_hT6f?2sb({2GCJaQd&LYB02Gqht8#+zH~*e zk;|MNacP{e;;q%O%t4RIb8lHVZ_ac?y-c}z!GgK7=EmPVJ!0bQdGqdhjc6LzO?-9H zEI;=!tZk295U!4%9*%CvTM`g%x@yk8Z-M9O{aREOmsZT_)f9$+ufg-0f~~nLEH`9tW4X6I|vFaGB7o>_SjgLB^$@x1|=PrIA9j zMQ69}xRiPcd?796QfV2OPH72-WQRgsT{U?mGNZ1$urN89bL#BOtrqF^owZe{Op}>e z(^{2xS+5E0=(R#fnpJm8ahqqbxA(@4US7c-ofSEk#rUG9EMs+X+ej0hj7kB^b%b&J?_uaei zZrQT^$1gWW8cu<=Bn?EOa@Kb!Z%tm`3La+Wa}tH3uT$XVk|4BIw6j) zwFoAE{XFAe$V;@jj0t!?mia~#YHQPjdFWL-EO=mcKt#m!>5-8Eb63VXxcgyy26#FM z+YuqxDMm7I8<9xc#@NciF0)S8*K3??Y^H{atgQt)fy@BHY3~tOE3Gx56Fuy3z}dJ* zExy^!-rL*9$IHthXz@~KH+Q%&API_8YHx3kXz7WZO-Bb@nJ%N8jHq847N!xkx7*4) zIBTI;pzntAw!Tr|>Ug~q%7apj05b|QGhhPnhOjX5W{nQ6M{UO_Rz$HS6sx3Ir*W`{ zDAq`^`4sC+vF?M|(QnJg>Hwzt4G~-$@i7ppj*<*CLiHO;2Q)J-h*zf4;RyMS5c|+?~ zHneVYhSqJK1?y(nSVmvB|2lTw)pIarGV%rDjZ**)I#a^LU9mTp) ztbQD9EycD|Y&XT4_FLaL*anLAqSy+G^{4%I4PwXAa@6rPoFkK1XgM+^ucfrtAlhrsV6UUklqVgrl48>-wuEAf$HAshtS!aLDAq`^hHM0tb4g?fLvDOruH4gR+#pYA& zB#M<%to=CH0*X~p>|u&MO|iZIL#%0)0%*T`Xuqduzd_^l+eF9QM6owhtZ5(B3}Wvz z$vm$QmwD2)y27(?l0=G))Iwcf#-($xeV$Fr_%r#!g$t*WGjcOiQ&Tgtk+M@P5>@4P zc51u|3%lzf_@w65bird+e>tzJ?J^{u{IaUrPDnhNm1$cyZ{JRGo^Jjr{YqBK0hn|S zq%`%pA-$4oZ&T?p2r5U5Fjk~;pYZ(i8n5;1b4ZkScPC?`fW-4liNS9LB%V9m4b{6o zfpg_&sMEa{nt*Sa?aX%e{P~5vGT~e1du9)_lUb*H^Vt{i^^VKst?$48{!cY73+Kbb zoAFB)L#$9}+pVlL!q!%WU4q!fOVHV85`mr%V9LKTi$Lr1nTXej2oxmEKT!l< zW|Ezwz3^C;M5c;~iSbiNoPv>aCd64X0Fk~MG3#z*TEeH<*l4`!>rZDw4wBn4ZCZ#x zN^3!P8zdlu48jmZAZdMrjjxM~Qt9UA>($>R@d<;iDa0#a(j=1BD=NU(2Oa>ven>(f z?&wfB^z~`10|LZ-kb{uzTh2lRam)IkL5)(gbKt9&|!?;YNt+^_{+P-=KR^4q7M zl7tJ!i_H{?PD~yhD?t-0AqT5L6Qlz4{g8tri!0L7ET;?jBS?@m*Am)@tPcI+3(M() zd7i_677>YX%6X&lzd$Lm#?>&auD)S{3A;Ed&pX5=FDKLtwGpa~c(TbdEv9KsV9ozjr??RJ zp#pMODlRC*-6;F_Ur!L{@$HmHbainPlamVycrI}vzowHF355*>RV@`@C7C5v^}WKZ zz8)wudvr*Ihh)EfS;*|$n7<2^8AC&N?D%PCVOvSo@tr$&9?xpixgsZ#OJ7^{Y5bgA z0nKH@;jJ4sZd~`#hZ~@}L>?(ZATPY2iCnji=OR5_DA~!ZTeq{!;Cm<7!ctem<^AjY zBb@mTAA1y)3l>NCgR5+04lu{?;M>7l_JXS{BB_t@({E5e9R~YQi(Y|V@r_s}QSMRu zQ(|J`kC#1eB_?YyA-w(}S%TRRFL`t^{13=4HenOJ1ZC$o@>1ib$rF*awZ^)nq`Mb> z-2%J*7Q%LZVtx|6=-Zo(oS-YnOO$Y-Hx&K+BuM@2LIT^@J|9Vo-b6BAyaXS7ma2&{ zr0vgWEF)D7Nhtxe;r3X|~M>k4bd zboBMvx(J(^p<~cP17qk5ZthNyOYJUKW6Zhv!6th(k+_Iww@d~7ziP0e4=dfmIx*m8 zj)a@x{dU66@NP%=8LOQRk9D4!$CB8Zw-CFOH!rd6;UzXdHzKhar<*0Vv5?MNh+o$% z9(fm!OmQP#UG>w=UR`6Hssp8|NP+raK2=G^@&Cc83VQv&b*diAYe%Zo|K6!8Z)|Zu z&L5HsE67*hB2z_xKEr&1CQn8>t?1|=KNb8R{Q{U6N|){J8tbqy>3FB=a?l}({(2Hz zak)u56q1%rYTp!Rr{$HGW}Z2llAf8FR#Xg)P;p^e#>LYoPMo?}Se(Or!*Tut?N1fqtY4I=X*RS7uA^EF= z{lO}k#>sP_9BjCJz;n)Xe_QjHUv{3UvGRLxK3Lfi{`IZRgMNz2Q@{T7?CLeo%x2;^ zB!7eS!Wt7KEth`!c=I5xbsqU;IX}&9~J8Q1!-2+4I8w)BRw{rgdy*ic%N)Em~`#0y4P|4QX z2AvHlJk#43{Nxg0VRd4Nvlj}yDBZoBtrbcye02M1S$HN3K{tz8{my?wocgFGGW znVFnKukYd(YR{?3<9MYZLPi=f8|c zJk}%F0rHq~f}dqVB;+2LZ+rzIpl^_ueEp7({|z=V!~OB6AA0^4V`y=vd?-TP2DV%NI;ma&oPIIMl&rA678#<>A9b;e+3=KT*4T{Heq6>$fV-9t82EeYSmTpwFkJlXNpJLGFtqDw zLsb;5qg#8vA?6)E z1U8O*;tP(>G+BFY9ATE~M%afkv-vV7SsB~6p3O^5O-e#4*0WoG%ea_kUmMtM1; zfwEHQN?;c;+lT65AJP!(P}MN&(B(F29cu02twTL6MeSZlU$}9jn_IAFXIai=iI(B&tn007{AGHo0pw^+Z-5b9Aaoe}wzWeUiUvK;Vi%k=ae?ke9 zY?!!eKC{JS9r{l22*l_i>yVw|E2 zU2(~9b8{3+U>%Z5p|u!h9qJPY1ZYrc&_OZGI#ky%XdP0hXvU6fG$T1wGZITRBL!45 z@&wh4cnxVrUd8$HD$bXWL8*f`Ja!wZ z-dS!0_ui6n0Yc-2b7#*(!F4`m%Mhtu&nO-PLX#?7CaY8v;-^Jn<}Ejp3yAu}bx3_O zL}}yM%!$62R6PC*C~Z*RdnP+O$#PBxFEmTfx5(0o6E|AUu~--b2Av?T$D;!67c6-9 zhS^aZx!K#iUUGo{h1_MQqplIHRNSEy=NC$1^=yVaH zlj%IPe(cUz1no?Wh>Fmk{t9xc=weQ{YIQtR#^m*(>V}Du3+(f_@6siMPh4D_uVSFO zBroI8rmUN$1tKa*(c8uh@-YjK%()XIL+P10Y2pOJ((BKL)VW?BM2Z7@^Y-$DzRMTRKOQcQ z_Aah&9zK44em>*TzideQyZ(5FnBaAeTe>qyw7dj6gTyZoJ+n+jGLQ>!i>ZU~{$3pX z9UtW4U>DfV;de8MY>0PTA{-9tnTeiSp&F^DE;s3^L#Un_M915_fsN-i)vn`esylg2 zwJWc0F6Z^lGk8t4<29PgPSTj`^zK&%|`%;q^89`jMXh2+{yOJe;Pws1bOAF(UkSmfG#a=JO!rW|~T_$Zn0 z$E5a&n%%<08s((JB<4N5K@lH|>aO_NjUh>s*y*O9NhW~T&;qeieTwyZ2Au3!v>-lm zgyT-0jDw}*P4>qhi971kA>(l`GxNgAaGYyaYHD)w>9*cpW=KG~-gQk}Q6UuO<}N_~ zfJaF!U=oQMYAJJqL?ztu)~l~_!j&I<`e}ki=bZTU*Q=`j`qu?a1yjL(%zlhyLS;9^ zV%SG8i&>nSd2k*o9KUFMkz>})!<_q-=-~71fJMWx1bLC2B=R5BlkBgX@NC3wP zU}xeS3|4UOvy5d-4G37i+}Zh#JM8W6zkfXTVCD`;_aXG}MqIB$jZ7qBEMf-yUM9If zNX&^@BZ0jBjGEa3g%I=*a-w@kS_cYUs}{`n;Ykv|aa#czU8`oM$1?v^6S6gFCN`q2 zuh3Q!==5Kp)AeX;?!n&=oJq|^imjqc>Cl|R!4zM`$k&Ls+^nn%$;sD0bghPI77lY> zN^4S|S?*x#MsmIDJ+mTD7X7 zVej5~&|f}p{QH#kkjoF`qMVDPr=eFU5!1UO_?U&%gfqTW|4oPGPkDDjem;;uRg|zuB6$)K%g51_yb;DoAw zfdJ0368%7LM@P3lL5afmmhG##vlh$_adU8oLLnm1K`2a3_4oJiu(h>8IYJj7KQ{;e zNY!<>o7FH~j2owD>qZp^VQ*7oX+wfdSX(EG;UFQusIR4^Pop&SqF$TXllM9Y^57o4 zHtIL$JPsx`o7bdK3u6m#I&n-RJ{D+kLUBwyK0e`(Q;NF9dPU)+LjCYz_Mf}46Cc7( zybC*#&$V&lOfI%xS@yY-icEMpB_$=NrJXr-?ou`+;;eJ1rgSmobkf<=C(tbyXwcS` zW)4Pu)YdjNpyUFL4q<3?NKA-rVpx}mSn=GXoqBBz{{8S_uLmETF7CX12q}HP_%W^1 z{ie9s!$-1OP=c5Xl-o)WSY-~z$ja(=y3HKAkwQZ^lAA<{u8O`&C=@R<&a)nPbmhvG z1qH@`{cC@V`}_sWT2qCnUm1Mob zCNp&FSv~A`GD z<`)qeHPhgT)`Z1*t z7xK|6-eedu-t76Gh|F*wcrm%@5*seD0Imcto`5H>xB)77&q6Agpnt((n^WM_nKNg` z1UrH;T16b7=85(H1}?uuo${W}CfEP<9$ zgdLd_6IC>fM->{&$zsCHnN?LcKpMpQ_aD=SFO_8jDQ)~lY2zZLjkZDB7+ntbp;#A+ zEuz>iiuD@@TSc)A6nm6nCsOQ+aj;Gldn?60NU_H#Ry!&dv4D`MA*Voi=4E#`iakvJ zI)Ng?Mny^oku4M%MUls7uMQL|9|!vh#okY`ODJ{<#RiRo{ZD3U`iPnO2kp0*_A42u z-*SqbK*xNDVjC%T)p=DXQgNVt!NFs!bDg^#;q6p7@wts%7+ zj8W#=3nMIfDzhc8mJlQ) z{Od&_Zz1;D2J$V6e5)~iy3RWPCtTh#>0vm1-59sM7jg%YJRbxPxEI`(mprSAFA#C_ zV&Ul|dIv1ahBsMZRvLUxE)~{P7vY+V-dg4Sy)83Ci{&=rpMnOvqk~-Z!`|deT$hRCEb2~)N zrIS3hxx}h{-+hzg;7zj0_T71|O}|2*T>E>6Z_KK{qpG?%C%;aCCBv~T6!!P(6TF>* zgX~nQl9H@}B`BPEi?lVoXGcOp!sq+aGAq0Eny}t(J#MTLeWTvk2``J9n#Rt~#w(3| zyfb}mO^+>8ns@$EgApVUf*5~=h!G(Ww!NSLzWZXafwgjQaBz}oZN04F%WJ6Fk=%ru zabY%MC4^2d7pF!@7hG|2BE=xA5tlC)iYT>)VbdG)!6|3b2z?I15T^Dw6te6+tVfgLc+M=8^{sbe0y z`OicLjNwXMMSH)fqNw9?A#wC21F&&IRH~?_yQu+waec-_2jW&2K7Glp%kR5?)#B;6 zr7%;`rmLHEf=noAs7EM!);=0ZITcSzGHuSolTN~uPQjB}ZQZKVp}NHBUHdkGkFS>f zykqmu6NvL*NN!liWa!SAtDl)KJ|gSxCgShjZ3q#6%J`J%!?kNa|9l=%J{ey`Lr-vO z_JtR?YbGL&c@Jt9DWQjnt6^>#}St#Zj5}`ZUFzd=E%iJ#`lRrDItp`g6Xs+A<|GOfGzoL!f@&mZ_Z;|j_M zqhWS&YDY>qCz7)>`OU&W51Xp70n4j8efZFxy(bU-`s0uDP>c{Sw!1sdu-UL#O=>nM z>GtXEdj4g8`!FwX%nKSBG->5*_^efki2oG1H{XOo=AX1!A+-3-OtYF zdXL~cE+im-+5L|^`{G>>Jof^Mk<1p0LqbReV4i9eVkrt>lP$(HaST)#q^jr;cQ;n_)c_S&_`jXTCHIe=!Ix*O`NYuf8eb8|s6b#-xui-wD8=EPVN zWK9Vt;*Q7v_Qo?qgu}+hqGAqHs%D-Xe|j*?f|Eb~eDKIuU;niIFqlqDi&Dw_H0JbB z`nh@G(x{k)JomA;U$KG-8Dn~`C)F951P)jGY1kWhO9i##treNM@n&G2!W)@eVr3vT z6^Kn{Q1)ieVtt>-U$7tH!@Jyj#LR=#@N59a;YhPE&tdK-<{i?;aCuY=Di(u^K^*UJ ziGl`ZGrspSuX2ef7C^q;&Lv(u>Y?iJWz?K97hE6X)PbM#owHR*Y&|Y+4q(QnUd{HA z5w`}U10@~5Cv2F8p5GJprlM>9xrOA-fbK^=w;4^XEB!$K6@S69`0xZl6o7x?%^Lg= zzYgG;9BqMkN|`M?BdlTUX@H+4_OJ(y%dnGQ+@g&1%WUsJXKo?fB1j^ItaL;~@c9*fJez;+9E#1JJbz7cg>SiO3Wd|Gr(~@i z&@Q?-W@jHf0p0nP`jRY?ZlS(2BO^K4+g_o_&MrXsQ69;)&`^+?nyr~psVZf=yjM7(*jmQKA$94y)?a0IIV}hCx!1ERV>4(%H@3pvikcFMhx6YqHCl~)!y zcXk$6Lr7?<>vuC{ZQvA(X1X(L)~xjH&RS=RRupe8>~_6tjb?_ps_!NY712TxD*6g~Z#><&{g(emCby@x0A_A*vcQH$n+nN5pwYHbF8 z)v}?XoTGR^&&0>y6sEEl8jVIRqndR~yh*3K4pjCvsO&dT*_YUzUto961xfswbn4)- zV}GpwVjC#xMyXC}%IWbfH}`6h+%K?VyhVN@o@eqAm`rj+wS1mDX3w-B_~D; z7$n|unT6yn9DDMqR9zm%JsS6P{smUbzN*$-=$VW7P->+I>%r_bUr zPQ3`V!-cGh)*fPdsU~smm%HG!72G+X^z`(!(RUBDvKB_maU!u8R&NJ#&(FjWH;k{z5jk+J2o-c(9;G{yS+yz5KCkz7NzSqkVNk~#%yOv3exVddAkQW~Z>wFdL)^)b}f`D$*@oPTSPm7Kb8BzpaC#J%)Zq zEORs{)v_g?VdoVYA*o0^e)8n8y?c*k?#s4p&GR{1aiCrP@4x@P_n^0@ySqDlAHHV9 zmJot>qtr$&wGF)O`R5;spK|+SOXB}6%6OcU)umMQ<6>s$o{x~LcWFj>!H;EiH%>A$ zqNap6$n0!Ake_eX>o2GpwyaC!H`if}K-crzBG-xjxwC6^H zlTRg|ICk(4_6Da| z<;$15c9k6ZfobQM2Zm3}zypxGauIWVWf9H#t<;5wy4GCJ5SF1RQ((vv}M($m>mJr^by24I2#tkplN} z9d=k#OJjWl$_y~w8d-Zgsgu&**UL$?&DfnyjT-3wluCbpd(Vl}X9Ypr#NZ@0*7k0U zC&#pDWKB(^q?(nj40#y3piOLUxSqwi3)6x_&lS&#Hx7fvn>9Men+Poq-J`Cy4)D1+ z8n^PfIMOM+k;0uRd=`PzdnEDAei-ZY7S@UQW)q8bb(kg6aCKE{MaUIdYR#9As$YnfG4l%)xsddrG??zw-}V=J(dI1&V7tZ#mP9HN5X zQDg9Y>l-(J{q@&-(m5gOgp62sg=yUrKgv5OIxwZ3;4_myTSM@CJ1qP z`O{Bhq7YO5YE$l{WINg&pJkdb&$8D23IhB0D^NAi`|vAQIh?0c-PSwj+Y z_1?C8wMXo8N9=P;S3lzNeK>-BSVm$oSF;k!Np1vN5reIeNT6{^aEQa)W#TY*gTo-P2@{?{v{ZR{ zD3(%)HTxXNx$~*4 zUI&S~zu%CYY|!>3hF4Te5P}c{bLB3mr%B3^O`CRo`^`7-DgE|~tvO;}=-(fu@Gt2*w=JA2278>3a{UdwWS~VSWZt6hlqf(%jzBPJ}##MusaINqR1Y$Y$jTjir;b#!V=+ zvg+$Yfzr$6-NfMF?(S@Brx0Qx7^Oz$V-v!k;~lXwT_=w9pua+kgx zJK;9$gpm4rqfsnWkW-^y+1EcXK=LEkcJyj-hO{*`H`HVC%gc#DD4@NaxPU_5#8x?e z{N$-WPaHy}wZkVXjz(MLg(t3*O$8}G%s2iO`6Bq2;+v!b z1FnA`e~e4I+OM(_b4n)l?v==E{me7ZG9=rw%x~V^ra9id7L?*0F<0g3f($9n4*ovQ za!#n6_2^$0!A4rlbedi#nGK@1;(UF5;}|`oSI07^VehcBn~)&Fyzl;a0ZsW!zq1B? zf>(u8QKECh~{jix&k5#A2tJ(NRHeSQ%R@*w>K% z0_F;PPVImyRdnIHnn>DdtyUmPuxhF4^))S{(&Rt%0@jh(9lpdmzJPUn9_u)@`U(3Nm9wwjp1H_TRNl2vj zjnN0EFvoT4v>lqMj!I9TM?5%qco`j%dS8!b>OYcU zhqZ*5Sc$<(($^=-`W%`H7h79n)wqm_1T4JQjfwBr%2%u} zq4&Z(dN1^$_riOI?uGv|yn*)bPx~*R{R?RS(xLu`TSbRQesyjoS=FYrv+xnDe3SSH z+7z?!($jmIz4XQ$xs3MQM0@U}J@?X{?Z)r<&#ffp%)OmeF>LXhEFu&KirJG4>*LAZ zOl2MOn6HVF+e-4e-9g422SI`#^?_oN(d~+-Iis5xT!r`tiosO|t-v@c6FCeQ-`*tO zipe)m?s}QXO?7Tnq=utfP{zDS)dl=dxZ9bu21I{ODnpWy66>)-#R>%^9co41K_;1F z#6*5V6Yn$Ui9+SY1O{PfaQPv>5tD49Xz6{m*#b`V4zO0^Z6Cy1VfL<#92p=rY&a$aAtI_qG(bHR%Wgs=yoVwT*!*uV;1AeNG{!Mg=w3I| z4Y8!iu^L4C3zq@5?;sn(u#Ksp8}_CbLF2!X=hc-58^3;74O5qfzkv zqFjQote+o^9X^U&`QNf+G%9{H?bp*rO{6p91Q1pvjn2#o`cvKD%#3cAnLx1;`qz4j zy+VI-9|zk`u|@Q+ODNVv-M5c}4WQVYDfVv^yOaLZJPtOUVrBHNizv2({^U0f*0cwg z(Z9Z(Vo9xJ%-qF6tl5`&WZfwQR`KBTu6vHw=z^^nP0?)|>uyA;p%`pY9w7TSBo8^sglpTS14xG&tMhl z+_dk?(FpYn7D@TvmT1(-8jQvU>lh5*cjSzb(}--g{~({alizpcWZ$vURGcx`eWBQW z^G))+FSvjYI9~{Mtq;&X49nOehAOwLOIB5-YpJZnxJ1dx$BKGz(`#!h&C}RU+P?kg zU(dG*1f9K;CP4(^1Upk&5=0+-@WFRGHB8Dp{*t*>@p`BrC#SL`C51eLAe`+=n1{~s zV(*F8*p@e-zRbnLWo2iwa5caK3+4yQ6GXU*1cYmB?L9m^qvk}}+S)7Z?U``$uQS~f zM7Y{by~Q;0tDoD8RDgPQ@^fVeF4$>`p2HB}8bA(6#EN=fGj;UaN6~F%YV~?%+`wC_!+r&08B}@zd zYG&&3ITK14yx1@J*O%;(Sj57-aXvFr}cv#zcY*F56l4Nv*@UIXqoJuuuZkM-2o zy)TopV)*i6HKgSzZeLc>ko3MnF2)*(gkt2QkmD+fN?z7VHxtZUbSw+{yB-i=Sb-8_TUHY~Tv?gORu?4-zyJOVNu2RnmkJq=xOUyo|gIR~P#nj4p2p&!K44i~{XI^&oYK~1wNo4;uJyF@vVAy-0 zy_pEjmof@Up}-NiL`HI~uWusj9h?XW+TYQ|-Ia*awoY#D%mhwgu(jpb0od*b=pKv5 z6WxL*dIC=rizk|cCsIK}b(L-A>L+x+S}SjQVkSA6BMZ5yDrQRj!$KqRX}(GN)X<3Sz8+ z`K&PC%Mw6HV24GZ6TD5u@*{@pB>6VM#2*zPM>ERo+r*3X9lx=2K;0!2T1KEGT_?cA zy$Nv2o5#dYq<9&{8z{bp;$4UEW1aB2--u*mm%!p|&wYbPHsX`y_AH!WzCDkH4ET-Q zVJGm&H+kgmC&>-Ad4l-{8;F?-2faoP-+{Tg^(EycQ0C|6W+M0q6DKHWY2oCRl|%!a zTwa%~5mZ*T!KGE;t`x)>R~lEc6%|OvDmv~Fj)xRvJp3@owmy;l!#h#X+FB6HY#02Q zSQQ6@{!TU{BbNC;)V&8>R9E%~{@(N%%Fu?6QUnnJyJDx=YfLoVB&P0~x+$jYZsyGp zO=7wx(U{_@F-?>KHzKu#{;p*hz z=;5JKjdoEvkQFFE@F}8dq8K4vfj)Sm5y%wzZ7b~mvtotvmMLc4(z9QK5fd*AcK$75 z;yS^uvV}JXAPtMS=_k8BU4HN#gB)71 z60GT8>#6qPNI#7l2DY2R8t7mDL1D%8leiC-}lVk60wkPQ0xOI%p2?G7Kpbzb%dlQBq#5$2}vzAzIgK0o+4%)=-D6Kb z^Yr5R;Y>IAPT=N7AUG+i9Gtm)DXCV&X8#Zdm2!dN?Aago!_T+p+>Npi?HbC8i;Bzm z6q>S%ipq+HvT7y7&ZSE+F_)vyoxOB1`bvz3QFuA|dLbsu&9>`QB;rnQm@FeR3r~!&r}XUnqLTc)-0XBf4;d7oxThvUYGC=;vO}eaJd;@B3Dk7gJ`gs;ofFD1xV|%Zm&0ic3n%s}VfO zdp5B`hpMr*)z{I%mh!oiqY6}VK@g0Cjg^Ist(}82c!PIkVto&J6aMr{_BNtvn(VVu z<9Xlu0&9&#iw%Z(>`GW@zhduWV;Q#V0^0(@L5*Z8huf8p^SipySY#AirBw7d5z#~8 zZ`UQHxVeT(ty=oWbBNR;Mm`8ZL!Zndk=BFe$_UyCG~s|}kSUXbqFc}{v74#F_gCD}y|1Z356a15T7v6G#>q?GY^p8kd1PTSwwhEM10=c~b*A1ss znY>A-H`;f|iOLdBOKcPhJgovxD|G8-3P1#dR*=vJsl1VY&salmLiQ(PuO)xbhuOA$L>YZk7Y?CguOwpcNL^GoSJI64+QmCckgI*#xGC-pper^Em&`xQ2{( zBOFC)vGa5Da7Df%nVZl`!B>tmz}@&QyMzg4>Eu{j2Q5Fff?~$umbOZtot0(Xg*S-5Zf9!Bi_TtaV`31Up^$g9bZA(8?$ouFbiOLeYsdG-#8J`jSAPEpdD<@sxO2er z^W3QA%a=?aWyhCKa~sp#Y&ZA0=bl^aXFzMF<%6-2z{bT!BXSLyzwVuIQz!f4;TCTa}n$W@O2UMu>k+Fl=bJYajc591nV2{s$%poZ&-2`7cQjKcPPe(hK7oN z4M*%UB3qT&=?JB%>yZQn&%0obB?Ai@dw{5h!tB(`fBp3r-nJPK2GZSCAQT=?#~Z{$ zXU1gLHOYH!Fl|6#XO~na)<`6%$L{GQ*9f`{V(pzg90)M{bhOL7J>j^epAbWOTx@f}XK z*X<#)y}F3U?x%||j#K>-fR z=||Nr(WRy7SD~d|FE3BI939QX#>FtP*W#{SX3%Hqr~Ui(9sKL$>6DbL%+#AnnMug5 zffSe`X-_(GZbnW@PfuHEX?+J?bxl2-lnp@PjSVv$IBCOF zyn7%dI0^=>dr<@8KiI3jMo8Np<|k$!`g#Aw?1i#-in)OQFEcSrG`Ym6py565agyu) z8@UiOU0^$TNd%*&J0B4BA*Zp4k1uIQ6j96Xzh`&iwXsRV{1AyIH8|hndX@e5Fvolx zi2@V!i&xlv@lmcWx1mge!hS}KxfE7aH&v8ZS63#d_itd8e|kk8#( zA@XAcoV>fEhw1L@=+ragZEON;echZ~oK<6FJ`UD4WCOLaL9;o9g*C#T>>+Jz?Np>< z2jdB3Sz5|v2)VNl2ynB)tEH7SCq?~GnM|&*G`+L1rX2JZc^G6)kfZ$pu1lPh|H;@mA zy@Zp35#r*m#m1Q4#axb>9UOkos#W(s{K!3E1h7NTU2(~P2wMRnY)8yC7Dz3I?MCLp zf+r# zI}QlB6(HpH?)dY5qeOZY{7EWN5{cyQMweH=SVF`HFOx*rVBJ#l^2_pa@^h}ll8kw( z8fU?HmYth_R2|qPE=JdIZZFm}sms{7;tI<;x2eE?zW$>XeDjF7^&iZtf~~ zsxhA|Z*_-2f>=uFa0mf!@-oTVS|Wfo0r|>ysF^FWQi?dKAsvM%zmKWqq_**R_w%*n zs4&7$_JXQ*U42DKd38!fJ}T12Ugo1a`AA&JbISv|u!O>?9Fo5EK&S$I2o;pbpQ%&b zN{)Fo5)zw!@hSW0)Tr^bwI#(lW#uKsW!;_i zP1Uf1kRLEWWd-aAMWo+cRYiFzSOgrQ5h~ye(ui0~OA!=rRwETlL20QN&x3?Oyb}qc zAcNYJ-D0_1X3^{1YiVz-v?ekLBF9l>3;9E`@RZgNJg8GlWKc^>dk2)s`t z&772U%V1Dqd{CUsU599NIvkr&8z!6EsVqJNuwb`liW-V$!s` zj}p(qq*@kkfLdaUC%%PvqH*?mnlw&Rl=vMvfrDok5wSaHHW8l{IC%EZuvvj4N(mY^ zD{$~+pP{k>2T$f1X;vWdJP~UVshhu_kW)r0(S$N@5_?fL`Kppn-X>8M_dz=$SzVhT z8Aw*w8bJDAi$~QXBwhZ#>pSQO=lDjkgX5i=y%lVq+1nf){L7qHk%0Yc(SQAQ@$%*9 zWMX<8oG#Qr-WO0T8koh`m(?X&YlG4%%W1AA)X}$LMA^re;`$PC){xcEE|$VLJc6_? zYFY1#7w$Bh#77dk+FM{0z`54e*9UsCpv`Rp-Qy1LVnN)dkr@^-YewU{TZS|T(i zWlEsnLE$r#t2cG(wD$Hc92Y@ecV{af^Q4s;pb$AZd3$masBlQm9GtZD6iIrEsSDf7(YIxLV^4lq0ZQ>Rf@!QSw!bp4$Qe!8a!P!Lo%KUanfC!@m_}J!O z8z02ax`)?|ZHW1--QcxsA+sC#1mrq)cLISMHKem*D48G9*{-7k0_it|Ghjw+*EQDb zT3XvlMpCzVrW(pCp*6E%gvh1vwh`%}kjr4(wNzMGNWq&zkyvU$@>a}q+|a`f&VIZd z$|PA{zE!g1=T#IH6-yPQ_acs|ykB(iJ!8P}mCpe;vv>PjdQJ!mnly9P1bRrwHqT81 zPNsKce)sJe7JfFxSFWVi_Lkvru)wI$-{od8;EXv`#y8n4ic7Kz3i3}LzeW!Syn}Xd zg{SMvB%1asp;&dX9HjJ^c`?6yd%TAFa5XQ-*l&C?Cx_4{HV?`is~G& zb`W)=mTDa~eOiY}uats=OffHg`ilM*eT8T*yvEWo3~V(Wx0%8g({cSM?80GS$5Plp z3Y$V?c_KXQv20=|Epr{tPFk{`*h#CJS=dQ)-XwO?pllX)(iN^IJ1Ozw z5bvj{=L{wWeRBUkxG5eX(R9tOOf+5vZ$1F!znpxNoy+VaudZ%PBxj7Xn}NHKnwzUY zQB{1CSg;x@ zQCuP;qag~V*Fp_1T8tXA=#f?TtiAvK`;(JlWmTjnAO7~&pNI*wi_^%s540Lh)JI!6 zt@Pd3H@*G#rkCH1QevG)eYtP%d;HIuHA!J8%l00-X;UOrL*qrPvzoa~B1LGMK z`<)Su4faxIoz5dNGSa=d zuHqC544y1!(n%dW3nZFCap~$5S;*1I_s48e;Chr5e001h`^S&9cJBHD5UoJ(K6CB* z_3PKpbT8Nuj?_V1!W{+f_eVnSKFMFZ1oxvx6e=4d!I(8@#Aw-uw_zxg^r`4k4@m>O zO=x>)cwO{sy~N|uQ07yuS6?q~Ju#C=dUZl6c21c{S4`|G#idLoH(Dk`t2dDWmJb7J zCK-@@>tLmCs6pagO{3o0L83aseeBe!Q^&e{jw6ZC6UTYFkknL_D;O1} zp!Rg8TYxQyxB|WomOz53;gbXI zJ@5oQP|`J1*e(j|IRLh204(vQ5?JD!rKdUrg>3*V{195=Ya*r21a=r2C8F>J+jocO zz(ddA4*$j-NMEvN!9$Z16I1_uf6F2K{PN2$2YxviKP*#y&)LMq$6vn=b8^h7Q_+`5 z?)|WAHo3mOwywUu4hAfw)gMl{Sv@S@<#NI`0=RZ%<1;hef@aO0yL?zalzVtsD3sDh zs5;@KYZ&u|W2B9f(_L}rERH#`84bBD{kpKIPTU2jPHt+dcbFRrz1<19%uQLYau(rd%j_i4fRv`04 zbdskK(LQ`{3m9<)?B*TF%E3;(o(zrGFfukPsAL6*SrVY<;w`y3rsyUTt78SZpcZZ> z2&1_<>j~1Zore*u;Z;D;#%JY(qRaz99{<6-bPO4Q`_Cy3vM3JZ!{DHZ!j7f*J5OP& zDD0!dz}8V%1BK0|u)>kyzLvtaQdl<%Ye`{&ydfoeBZUp1u$L(;qQQt{wj2i5IA`PY zUZk-06jnJ5?0+-opZtkPhd@&@9jEs-43ENk4hJPLc7!cL*EPyGK0cH-@GCOK+% z<|mgDmZW)-rGzbMo@6v(O`0beNZ6BhP3D91z&r7Ib$kJ`}0?qX&Zhh@>s6qA=R z%sjl9mn2@a`sgSMdxXNqQCQtDu!$7box;{q*g6X9*ay24IQSY`(jU;0zJWB{0ckk@ zuC=6u8;Lh=Bqk;$rKF%)^$i6=r*0%9T)TE1a~MQ@nl`kS4#zzyPXj|Ss>S zvxuT4=;*M5kxWEtzQ~2b)^_duyH?zE%}veCO-+p`vZkyt>C8lcdgM` zT3V5UKh{=OO6YVpGCtnK)>dh$oqyM=UQmGF7;n!}Zf-WVuA{yE6#fC@gC=>3*V}ZtDAgUqMiw2?_;;@P1j8IP$M0{sQG(^%62;bqpeO3iA?sTW6 zY6lmE0-fa7RPw8m{EFo0NqX@8pn=NtMO3D5p)%dLV-L6MmQh$4g(ZD!Ajr}%Dqe=$ z{jLlKYeivQhS^IxDeP=IZWSH3jKW$C18Y2U220O;}r*fnsEsQTC zw!io`HMO=5dyuWl)r<^3G#-gHR^j1qRDJrb(>SDSO08^45 zeU%wE+MTy0I=gz6mrv+Cip2LXj&+VBp(!ljRk@^ zA05{vN&62Xs5thMPohNAV`HcPgJb@ob#paEp(4zc&X7!x{>a;NF|+i%j`edR5!K0O z%rl>gAD_E^>WrdLW~XTCQ zQhf@`8g%LDb@er{o>o`YG^D4eqLsoO95{c?~ z-KgosNHl2t4P;Uuh>6kzVrBS5{7HnU>C7R#u(M$DzDYh;(sEFd%nBo|iC>J+`gO<> z;&ERMS%UhnnVB(Zot;THVv!COlaScjn}>jkq)XALT6r-#DeWeVX-O$)tf%&kj?T(z ztAb7ymtKmV?S)ez`T% z*b2M^OoI;$Jz*>bZH;iY>Scm%fu$CeaUC6fJi2NnqsF03X`WMme{1cYFXE#fdv2{xQ7N8r|7(|jDf z67eIY`vnrM-PSfj;s+wsvUsEn;Ay<|$hqJ(Z~>{0{4==VRdB(};DQjyumKeoM#>Sp zx#_o8UKlBNgkbSkpZM{s9Xqyf{qQSzzD6z!?r79ALau>4LiOw=gB5T1UkDB}CtSHx|TA`EHyd6*J6 zMyE?FhKy!gO4Iq)YHe9r(b33FsVL5eU-)KOV{v*Jw!)=)M7AAPPlPn5Ua6JSTVXb?20Vuou>Tw<3CFDF85$Ryx&Wo z`^(2#&wqaZ{r>-avGdq9%qcx5;m@zO?cM+FxBm<_T*7`Etq*=85_0n_fBhhM3<%>8 zfYa0pDc`9RxT7bUQqj@XKO{JKZ1^MLw$>zI zrbB7B@S!zV=c!nc=K{q6^FL4*z{z2 zY=4by0&Im^f4@MCwqE!CUTGTg&`GeUo*))MCK*LUB3W})DPeO z3Gpy;nksLXdm|-s2sZS}<9oM%_0<<2yuW?-?%g9N`WZxP5%mz8oPxwDzF*`1xa@?4 z=;-)((#G+QmW_M3(WE>_Lj&6vr`#`9DtW2GIY8KypxuQ@xRf^V!X@NrIfTfL9Xr0* zyydg)+rRiva|bVF+Uj!}-TXW}cI_jA=1rk05ze1s*bSBbFsi3l4dDfIEg6a9rg zxIVcH^VBqxW z)0aQ~=#1&p=S;G;;w6=h-GYbb`ivhxeR^P^&-{l%?OeRjQOn28PDlinP7FV~2cjMg zN@aifk$%yY4AG@^u(F!!FY1?HXk$s_SBOFiRs(}gnidg+glxxPD#*~YagMXChsUT< z$OH0Svh0qwjlrA;DPz*q)E^h!FWI_?WD`N$$(y-80asN+1RUkGAV@gUEqNh0Z9F90 zcxZO2!ot+l__$ww{%zNnUvB$m=N~w+r8A#%YTIZW!bvpkh4XRO!HikCH=5u6 z`5TwM*t+$T%LNICNkG!qoJQK!)dTw_!-gSaagwz=Au@8++O>~Ac<(GPlE%0U ze`;eR#U9WjwjoFB>Vk43Mo6aoYG8z9ge?a~mIEWcx7WQfgCUv_;NHK`pxEAlG2h!u z_7sH8B|+Fyq!W zap=(5vsYp(tIE(a!qDDP9E$)x+!2w00`!s7D1<_ikJeUI-V&`1L;mhd_6-fK=qHdO zwzQO|oQNw!oqT>-NF<~c7h?z`ZR5onjpnNpH;}}4kU3}%-7medyQQPCQR3k&EJi## zzYYQd~Gjgt7z8rn+YJMkb1Mus>#YKtWF|pVN z6&vkFdpks_X3w59Y04CLsT|Gns&yT<0qBs;uY<}g9hQWlctA;fjnWJ?{XJ=yx!HuLJq1h3b6nL7Lc{QXok{_u9K;1 z#kK1Qc|-owl^Dk1Ff3G~D$Znql`WcL4_>->_%LF8If2KN4UxpUiA%#o$>cIIyk#!|Cvt zB^DzwzVhZ*0b*h=UA}NR8rdB2@dwlv4QTRC)>&I?3*!(8XY8a=c8a>THl3x1&9udl zk<5J@r%cF3m$3$2XK!Z<(ploRlRnV=>CxMWg;~IYuMrCh6sE;!Qj8~*L#pLwW}@O$ zs#+Fv}9;Tq!rYPdKB*;m1_oyLx8K0|i6Y)&n6758A)VwpUWi2??AOb9ki@rbg< zu^_`~!-i*G`R6}hdgjG9B1{RjPR900VP|I6d+uHD0^$m;zPB@lcks(VSU%&pDW#QA2Sc6p9$)W|1Y zh8GgUAqJLB-V#$LqJ~1&QpivOsiAN^eQ<-1nL{BvC}chza~g$xdKlOV6!swsdyv8w zQ&@*#U^6M~Yzmu0VVf!JbHl(^P}q4CwvfWQP*|rvSaZ=$-JcUry4Tk%$q0Cz&x~y# zo^-=9lPBF2v2$CUEh`MGW*kvw#fv;LEyV(#jGAbY#xh%%Fbi6W#UR8?NGTS&-X*z|ZGk1IaR|T4u^Jm8hSW;~fO%V{eqrr5EGj>ZkDYU)w1 z0IkjHYAQHkVRUq%7UYrYf{bTX3IC=|;%Mu7jcK$43~mlW8s6goPx z&cK(d%gUNZlExb8X-X?pnzx0pwy?rDp7>8oIgof+9s!=nnPWZhv>td0N=?6+QkZum zHu*Y=6`r`9N;<$@Kl|6=3(*IDIsfPJlkl8fJ$&TIAAkID^fI%JS#k1&DJKerB`TC`E@!1V}jeSQ^+{H5= zfBf;~3d`{`X3Pzp;bkGxssrmv$|`Fr+6AOwgp;JM2wk?T4T>@2$M}u&542zqt<|P< z^1wds=LjG5c!k2jSs65j9JoE)I=l6T!jh^cg1O4N#B>AzHP+Y4#1bi54LK{cL2eHA zDw}cReZ}af<>c*dX@@~Pe8)dY#E`olEDOq>P5w^ta6BNiR;j96DXQlGHVUqcWOJV%M%K7ZQ_dfje^Upu~>c_ie z8%&@qv8j=_0qxqkgHGTsIEk+e8xG9i5 z_&XSF)7$SbT`f&_!+G-?>!{>Yc(_Y(!s~2pVD63==kn$v8{S-GK!iGu1b4-q^AD6k z#X&}oeUHS|*TciV_2^yl>s+*lE6Iy-fh6$r_4Z;Umdd;5;5Wd*Bq#d^aPTH@@Y{rg zOG^>3(f5OrPo;Os!O)Tg>_?37uGluGq$o2b`^LrO{a;?pZ67^<_1#K4#m-N*ehJ6( z2Vdl8YlNjocckBq{F6Mka{k-}%h5aWGiEmv&-`xj<{ay+OP4eMC;TcMH+jk9FTecq z8=;Jvo$8};4p_6&`>r?^8*kZwpVGVJSfNxZ7JL*azdJVd@Ngl=mj0i>yJS;z1Q!ZE zKx3M~>vzSTbcZDxHi?^*fA2JAxMS$J4#SLFL}6ViY#N32qp;3> zuqI9V_N;~cZA7nkI>|z>Pk)E#_2aCGUhg!?q}LCA0=h^?b)chG(NQII)PTNGZ-?bO z%?Qp>SQ`ra5rviVu%XO*>ON@GiGtLC?XTRMPac?_D4fVc^Ct>nI(cwgu3; zFp@xLsYoPhDJ?6^&B;kmOSy@|M$8}DKt~sG_SIj${PN3vr(=IdNs_bK?Jn-$eRuF$ zPLmB{gzTF;WgZ?LJ=w{>?Z%v)RBlAmb@iS&ZRX5LvYNAS@f=TUZ0pr1TgwX4<748I z^iE;W0-useVh-v{`%T`Yt?$$fWmA1?8Xe6fy63_MMMhoEZTt#*K*mi`eC034$pIB{zl6g@pw~ z5xkiQ7j$x3W>yYtRe5A$1mFXzDOL39>{OOf>4$qIV~BB==JEy(`$=&Z~-`t{de zZwcq?wZCo!tFtC*OH9m`i*VW>2sJ#cjEUinbRmnAEjfSS0BFUj1wo?~8ViY?o3yF9 zr>UZ{rd{KJ=(iK)t}9or1mSY!GoHk0>cNRoj07N8*@^e8V0JRs`Ky?z!Bx)`^4B%! zY&-2YY>4oMjnRMEh7HRCy0Hz}&s-Z0-w-Z@M}CVD>sop=7Q*(TW}&T>gNUhV(1e43 za9Q3zQG`Pfj=&Cim%a}-JV7q@!+lXeNfGq*riLcCd+KXYey+5#vZSPjHG2&gTLkky*+x3tx(WIGFN-xJY%6WOCjJa4;%m?#nojeaMsl2Hr)oRTz1*z%jhfY;gv;u(bY5_hvq%i)o)oBNqUpZz1$IiCGk`)EI3YyA`OLK0- zTur@Msd094-~9y$`*Tu8br;)KR#Ic|o)bpw3R*_`=9?gGvH!EHK-vHB*D)rMDdDf1 zu&95F8bjoI-(#KCxG7WT&l*3v3WQ21>4Nv6ofI*W`>%hKS;#SU99!1{_fK+WJ%fed zI&t>=189x_VY+)!TET9f=mIQk3VVvcIP5YALsUWvk! z4Jd_QS%%_*6%}PDHCR#t9kaNsyebvJKL(Vh)^ns3s>Zfgj}kCaR2C$}*8`c17fKP> zIHC@|`)ChX1XV6hj!sT0m7T4A4HvB^`8eSB%wKazuo+p=J``&LN z44bexR~a^lzxwlLb2EZ}S8{6h`R6rON4`;iwd2cedWnU+KK-ILjD($XO!;DznkCn7 zD0clZVr{-)zLUHb7A!0;M~Lor4(-j}Fub8*7vR*yTRBLDY>AvSfVK(Ns#vzWy8_WO zMTOJQrlB$Xd#tI{LbZD$pNN^HK<$|u(b~{%Wt!mLCu~>yA<3Bfa<-Lnverm-; zm5Nz}Kd!CSSk3iODwWpO?F^K48&7(kB|g-rfT8Dsp%uW;3Sh_=1#+xy3r^iAO~0`F z&%B%pGZ=GXd0#-zQ9HXMS0SFngJDpXot%9!mJUZ-^TFvo7lJR4V23x zZDEmbM+))~^zc=w94gD4=J?xrPG7gs#Z763K6c%`L^60SuC87(72fN1W)OP$&Ye5a z!8?4z{mU1xTm8(viv!Kj&yEcYhRtlviv~kzFt8wJ%+WI#^qdEJk|=>mpyx!w@i$?o ztcNO+j%1OX<0s;}yW`_wjYHUZYbk7ZRgm>vZQWv{pkPNy>lf(f>M`B4N) z8gDe*V|Yriv#l+RtaG?8R-<5aYx-4Av1glh=dN$R5n0+j&oR$yMH6}|Dk>tFEBv*G z{r9^>VyKxf+2X!bSpHFl7X5G-#wiDM@{Y2tX&QNUV^rNp-#(^^iQ3aJE}I zz%~!PO5j>qOVC(>eXFdrw6eCLskWxNw5YzcJHEgc+lXEyFbGgU1ck1oA_Gc@2r>oH zaX8JKENbsZschTHd>8@Z_G~4)V}OBW(?^9GHp##L=9e8Ge)!=ooi2=o;ISrLGkZAP zvh?DGFvCK_Ld(>1yLRn5n=ctZW|R)@vIw^E^Du+b@R}4AA>#AvMLozt;3)ywvPHDk z3e;F&q{d!s(3~}l(l0&#%JXx@x%;hDGoFaV-atE=UuP>S!pNWY(J7VlG#ENu?oUYQ z^+3V>QSzSRoV3K_J8p(d^#MD|+Zzn%yl5~{&DB~#hz1d3Z);~~t&oZp7M6A@nO%2) z&{p4T5cKF-J!wea+uPa0vKq0T(K9HR6fl;MZhSz%grMNy06!luzp?(oll+3kkFRxw zF-!qxogK#V-Toxam$!hgLa9rkZpJ~Dj?;2i|a);v6D*9Q)W=HJJ%Vim- zf84X<*s)_5ZuYUnQH~pjeX|$pt3W8Xv6=EXB-kn!ebGVa+TR|JZ9_bigRHIw7R>g7 z^PKIu(@+~ezI5Rta&)i9rqsi?iM6_%NoG!9N%D#viVPjaXFVD*gs_3^##fgEpU0SF zpnD;^k-r{cXR>Z!mLmd$2rWcl!$~HSIS(!JJhNBw_o*W6^nJYc4S4N6cKx$U5RsqA zbTU1x6C1%_A*|HIV61@D+hGhMu}~u}`ZX$QtHxAh=Z6Bu{vqOt#%1%`42v3Ar%Npz ztnt7WjxL;y=Q=#`>LvHDTefW3nustTk%n4J@d4>=>{d}T6yhn__UMq3xcJcu{Dp%cdf zA^zS9T{JO9FO)tF;YZF^Ac8_6V#N|{tqLLT%uA*DkKDTi6^oWGi<~`Y;gXP<^A|2( zwiM2b@d}~;s>dFCZ2d#){cfDx}~BXUf|Ky zLUxDQSS?{#Ekqv*B)da(b!ll5ye6g9kZN*iZ)I^ z($db(50>u0pt1JSx-RDcUq3%y6_Uv`Ry8FhT|Hgxyz*61q2=tu!zaU`Hd-O+YB6M# zbvaF*%xgjp4jQXVxlpKd&Ag7)SV(sR;vZZB+^hy}rU5t8fEyR0`Iymum<~?XF_^}~ zt2Vs&9+~ba>3Hg?j=|I#s=$m;jS=1W=%X7$t1d1?RWYNkAX!Ez8%#xUAu5R(wM0^i zsE5H+k$y`a=^HyBPfgGT-a>lX30`l;n-6&<7#6y@ASGUAgG$t%M{HE2`U|m9k-j=I zPjb{2uoDUZ9j0HSuZCqRjCBPi!kAvhiXFosdQ990PpnOMjz58pA8i_cwP}1M9lsx5 z;dv)KKY^eE7|Ebhn{J^u-9k=pAtFxIm^3CvGyZ4Oq%)+SqI zvbC9mUQ+;nH>0A^VGy-E^cgGS@orvZ@_3trb}c|%J?0>R_F|YCGPamur&_V7t@qHP zzS?@`o_+>>`s1djcQHM^fj+%u|I?G0)gVxCzER%r=dYNU%1TmtGd>18>rcNNK7F~c zkoj})^OtJhzPdWnoG>mc>EI9V?T9azq8L>aWXvGPfH3HpYC&XVU(dIXEnj@;-Phh- z=VOC9n&_uF%t@=OD05h8gr5T$w)BPAey@>JREs_a4-6V%wDoGV&h|r zQ5T;H#~+*1%vS>!Bfq@eiEtv?+5>GM#-D=ysc2Tqtl&xj6NPz4;^ zJ#_iaGIZH_$*{_0d!x|K3<^hdvQi?c?@Idq_qToj?kk%n^^~0+7RPscoI-7hqI{ca zUKTDBR?W9_keMOE$c|GXA>)-Eb01x^DB_-FPppg>YlcW8I!^V=FcK#;P=;Lxzd}^i zgA?CVqa_w;myFNT!7cntI9^DUksNEt)a6d%i8>Tig28M2C(O_%U|#sQ!4tx(2SIB1 z643Y!U^+IjPn%+th$jS#l!wF+9sJ0G$#h&9f#d=CQHk8T6^_J3@p4Q5Cy`qMZwg#U zfiWvGX+!_GL~iuW8snO(XLJ*AHYkc6!>}oQzg#N`kypa-TjkYYkUoEs_?%@tX+ls=**@{v7e?wtOGNz$7PD;dN;`)GH6QC6+l|fO?8A-%m z34v9QQZIZpaGfqECk^S|A{fb~GIaQ{hwJ<5Hj!r&qZa%P!BfzH7!W_wRIA*Da8PCbwrY&7+hIo@FJ0ed%oY_q->H5Xy zi7BSU3`Mvb^S%ZVPr@5Nz5o6Yl=aEUfyIdam?Lrl_n{do`&3qrGyRw&xIfBcy(g>f zkjaLidm!kr+!Nj|Pa#eUpo1stsNyZ<(83V<3z@>gk}iVJLsgiLu%*;wbYqB(xq%8( zi3nm!Kck4&cj2_$sgLgNL`79{gzx1TUw)Mw%V|}H(7Nn76~)E%9yrM@STJ*pw5{yw z;r;vf?9pmuCocR3Bl@owPH>`Yzaz(6BPqO&5DHtFMkKREzDN{<$T8E(h?3kJ;?aOZ z`a-gTa3N)!(8j8x7A}mYCYgWal4Vc68^NDJNPu%Fk~cN1C$h%hN5DC`wybi!y+Inh|9t}3OKr33+fas?16kXTzgx+(^}2i*zgfD&O?5i77FW`Pp3 zup-=HZ|JtPCk3N`;np@C$~@^RD;pbSGHVq1b*L{duQ#^_mz0Jway1JenocqH_WIiWuAVfkh>ZIF{6+j@mA3 zsD`IF;f%?XXAHsa{F79dRAK%wp0JFNREkHN9Z7wCC7wj4>+aSKF3{Zn`b#W6eJmdC zLyTKfT1r9@i;7|s3sNsIXE>Q=AaR+j98Xec4&e@vIxq^<0j-N)2%mh1d&VEcHk#6q%U$Y{}`md?9BL*IUvaeV7 z;Lu|!bO41;GeKYG%`<}hVW86}v_FL=`wTyJ1%*aEqd{hVs}{=7oYIC3r_dS-ThRw= z!u9R8o32E{my>hAm&9`OHQ`K20pZM^zAod$(n?Mh#Pb}C9h+nuIHlx~dQv!5WM!r# zCh*6KE0?Z;0vemn`snDo7QW?TOI>tyedl{lohoCS?n`x@5_GB~eT%N3Y=87gmZ zvMcBIqAu3nb622HRvJWF@vPA`I8T^5-fx#YGuyTpqeK|vwLcWBMUDluMhD*jj-C57 zX)W+Ge{E-tfOr@GR7da9_XtZUNo$BORWcHmjVO6@qAy(O`mOD*l;SChWy zq!df&iNacDZEua4ArX}_zCTD0S5gFXjlcG@ zuYko)aWbL^4UK;ONtm`Kstcj|mx#C&a3-@+kS8Ik&|q|MBZ^R2PA*l1O7lyrN@3B5 z+FRFP(u3}v9s{)kV}_7XD>UYg(PR%l;BxdROt%JLh%Y zVnC(0$I#My;68VV&e*umwe`(d4DK81ENmcf#jq3?qwHYC#? zC->~L#_%U_ggt8ew>bmJd&0*Y?0UIcmi53kIh39|vhfF>`#_DtICrB)Vd$It;IJbb z*BpIy{7yH8-|1-PnHAmX$m6Qb*JmE6)u&Kw8@2kvVP-sVm$am?#$8g_2fF~gLF^X9 z!aEa^iP$Z?Z?RjL5&toytrUK!*D< z?^@V5vT3CZgifQ-{uJ8M1YJR)5#e*23?|UGYB~Ja5(*tkp*0k?>JHd}d-1@NnT~S2 z@nqI7n@qDF2s=>gFQBkSt$%6XYB9kMeB#^Au~8%|6qGWaW6OqtzDcSh1I{0TsX!_Kl`W*Eg@B^QF;7Rxlow@NO+&d`jt+cw;E*eT;jk`$Ippg9* zhk>V#*>qInsiUC}*2LMj@0QKvq{OnkG@Z@o&EniZj!7OkCh^h~E<(lwQf)kV%L7u) z15!1gUGQ&@?^4<01i zqx6G)88tN-`##vro=gvA{*pa(-|FS7mM)l|ABI4ZR5dy(ahfnhuYM|gX~BY*!VoyJ zbF-x`qpYseAgr!yWh~q|Mu+=IYyaB2_pe&%W~Ef7l-s&`Ro1r~dgYdkE&0c$n>jf* zo28rix%&?`_sfUQT}6EF*^3viXI7?R?#QKOuN@>|ZcpQSi#>P^Uul&G4~C1aEaWLS z6Vi7E2lJ1x>EUrI)wqW@Z4P77nUk{2X|v`>gf3XRI+QsiNI#7QMjinXaxV)%KYbc; zS+5wL-K@5Dx0ZD48s%a}SDB&XAE8r4Fs16;tW?O6$I{j~&f68fFERfJoi-=~IzidF zc_@k2jCo^SbYohOXe;=k@!1l$$4d!rM71*$-EWs@bvubf^XJbn^_Vx2Xf8T(hH0}k z?W3fw$djP_bD;bZP<|OGKPDmb`qk^Cg30BWnBRXtbnw8TKYlxSaQANq4j=vNaH_$PItXDt|CBv#OJ=(Fq+qwvis|;rd_oafU_g-o4?5mHM0dUpey4 z4Z~9Yo8|gM{jb^x_8B$|q3qk(r=E&Hlx;oYjh=~Oe>#CecCxjrB10yRA3wG>lzCsa zY|)bN`IEfeQo@)EOoF1+!p_4#c;WKE^bZhY}yc*l`XZ~cAa z#^>L`JM9w0hptDRqt%AVxK`oaB{`RyeLg3c=}FHJ5eFDoc2 zt*kDuBBv=->ht$1n2R`FBKLVxtt-rp*7}xb{mmfrndmlVR_O6rzaPDN^K@)!oz`Bm&BH;c zt6{sUG7=x;8G&8LPG?TCk0L4gFoMSibP=!>gB0 z4)RhdD|tRJydnN@=a*l8p)m%SiMM?9<(J#v!zb+$1S|aq$^!TA6>305okppNoE5#@t1ln?%O z3m*&)Z)1WVOW~6#d^Cl392Q<_f_I_tEQPP8@Qa3pFEGJRq3|UXUPj?3+yalo(Ez_T zL>_UAGr2$jk%kjVr*}4!?@?)S6S9z*g+*YJhJ!zSf@$;_boA47^k3=dQ*If3E=G^Q zDq4zFGzZc&4ARsiFF!voB?E2Dv$D#va!G_~URG&QQAWn~j1&?hpv*!|h3iGgN$)7S z9vxj-!AV;Su3o-;wV*Xh*o_*Pp@#LUbHD%gQ$uw_{_Oof|NPVZl=7yIKaQVD2sJ#V zM(nVfjhoC#cbzV4X(>Csi(_YHaMIV;cv)L}t$964m>v_G63XnCJ-&9$3V+{V-=YYZ zFHlpNIUvjN4fG$k;+`e{N`6)}2a6b^`zmrr!J64}Xx4Ju|7PNY(e)YqcAxVYNFmt#9RIqCH(8xIeg zs_Ri6vhF5ZPq~umvJ_V}q?a>_%9P$ND^+!!RPW6+V&H@8IjQfcg%3TnXcU0g{=f-N zpZ}DU<$6=_>G{)915SMd^~r7;sbLLFV4sA{!-Ig=12HAMl;Z9Ktr!EL#S}V|LK6!o z5A98%Yx|(Zpe?Zq5bcWSbYjq!18fur$S7fd6)w^0R?=-@JtcTodSc2=snkLodhpx5C$gI*meA&;(rw$f ze7bu#Vlh7WPeNW^!tM_^K}vbo7FmwiZ_*66mTN}kIU;oC^cmC2BAJU!0j@ac&G*dd z!J{C`z?Rf!Bt7Ln5WEyFMu5>y<`dy73l^YG=ckyTAZ-3<4dOxEbxN7Fuv@IlC~4^I z71y=2Ggj`FsJT;&wW|4p(YpFH_BK2AnQ2Cnr${xZZ*?4WeX*(rG)XPOGCjtv&xJ zSftier%lD3=~{gp6d^fFAA%wz3zyVj3BH(-nS)v)Nr{OG`}ZD;y%uw3C>mvOfzd5G z5@FHS)z*TShKjuCp{N!dw)T-H7rEKXMGfdq+t8G8>BLZU6oAKq=gvbSVBpvVILU0I z1yq>#759x|%u!fUembVod(E>E$YLNVe4h(8J+p}vC-@G<8sbMx|E-)_@Zq6y4cpPU z06~DS@MZd5L%-YiJ{&1y1Y6o!G#1wurY2WZx%t^B+`MgvVwDS=+F8_)j&ROYcsB5o zXK-cAF;8%7b!F9#7NUq1V{SY-&iFa9O2}8J54oz#*aF zkoDk@x!{mcaEK>K#T|+#c5>Pw7p~`zKZb=3Mf4mL&fTy&C3M1q9eU$3(65&62=xj1=Foz-nHNEi!8OI652izdK~ zp#8tD>d|ynE9t5x`ry}C#|Q)GPpYMTt9o#IPzi;m)+4sf1U;2PyWRn<@VvEZgo;8h zAY&6%FAPa5s5vHxrr;+C_)rq5fx?fYbMG*X?o7es?-+fc_K-)RgD7;83HlU;P8tT< zlR|q?=n4~bGKD_U2W{?zU&f#CGx-z#14b`pH-Ex!m78?h!Et_rj_gK9_B4&$N=Hub z8+mZ(CJNn2q3<(68>RS}KIp-9rkzAb%HegUugO~-`6V~$OoNYjk&b9fM{F^TD53MM z?Hkbq{lDdrk?vZi(FgL#B0Bdubna5q+=X=RH~Z$kz^H|+yG09Oe}Izzrpu?tlJhPR zn^scFxr^toWmT5ur(Qk%<2Kw`nwXY!@#xjsBX=0MBn1g)Q62WG*1f1#(ovX{@bke? zv4u>Lnv$5lD|mj0H(QmKh)GF1UwHnlSDttr!K9lWo8sd$<*`kiAjnm+C5$=4d?9@0 z*~i}rM=`7$%tcw@-0=JEU;o5o8$y}GlJpZN~G(&!}i=YL<;s0wq#u zcTYn{OFDFnPP_T55HQ}!35r?EE$%fcz0k?FzJu-RY01xWc2HT_%X+1TtdsFX!boj9 z8|yl1u2=)kYLc(-BqiX4o^C`5qU)cmBAKT#*Tl0w*Tm;2JC8xkv^(=Y_g)yhxoG30 z7Mv%VKVB32P5`Eu>szTyBn~SjH&6@W2)r8WE);iw__N?41vT_W#A|iy9mpAiMA`Cp zSWE9*1TjkfwpJlu`weaj&WFZTepFh8xW6o=p z=%`G8Jc}2eB@lao$zp9;Sop^u@$ox%o;&x!2RO6;jZ@2eGH>2QZd-LzQ!VGU4URN_aNehOpYO9+!-QBNTnK-ez8ObW0xRI!#36Ifft5il=+1MaA(;*^4 zp;)$zc^LobhgbzpSYVBEkCYb)ClFqgVg9#tuVmD0B|me*d9yJ=@>)Z>daU173=u>3EcF0ja5H3nh+AEwM128?=b_= zA{oEGjK}616H% zPtV}cesqrUMb9ZTE|cGgi9(y*@6A zBwU1y-Zu=JgztT}3oGIQBwKCYzS6MF5N=qEMD8G5^O65eN=ZCsScg3DxrV>1`?-#N zOrsIGcy#BMY6L(q!f_R!TueEG(lFaTDs74a5BB3ZoZy)`FMeY*tC;cP8e~&evsSqL zkz8HOBr$ss6YvfSfc%AOKK~DG?*SM^)wPe`nVsz=o8FU6NJ1J!AoP+#KtNG!6bmY1 z<+H$R!}ex&gIKVOpx8i)2!hgk4TKsJ0_kPbdvCkRmfv%CHVD25U-|!cU}ux;xifR` zx#ymH%5yq!t9QcX(?mxDocq^E(4bMI&iX(2R)R`@w=gIeoG*Y7^anB&khzazJK4hy zar1v%QBLZwDc*1uSvF}vzT$dMHp)EGR4L@GyqyxnGJ zmxcc|ej~;Wj~$nM&m#*xJ)d7ZZ}iCcaTCW+8Zk^48vEBYVahamP7|Q>km%JIS-0TG zXb-g1)5BsiP|ioh!?oxjs`*bu*GND49I@jceu%{DCFtxYU8%w2)4zt@DG&rCbPq^f z7T|t_laqnrhJf%s-Wd}Uvth%AAHVwQho67`aoY_uLl77O*16`dLK@^c0m9f1B*OxN zLp5*Syoq7)_dNP&g6H+a=$I~|dGjzZ0;ak0uc{c=4^*-+Wzqt}C@c&5hu9Gi%r$?Nw;PXOzKY?Vy6By$s<_x z9X&Qc`!`=4QBm62go&ZFNvN^mpuTFR8B%SJ3}i@AKkOJCa<{Q6jM1@J;TWw8c$LZ? z3RppP1(Ay}w}_VI1mYB;_)3fR@M`2-0Bj1Gzjju{5#k@cdUbSt<(ciM8uaJ+%KG|B zlP?OWc=c4)ll8p86V*a0dwaT7z)1c5_umg2``kw$h222Nfh3Ac!yWJsPFm~)gVHWe z3ikI8Run>$EK~&h!~AFP96e^t2%WMAR_yYpo?7_GC}qW=9Xoayh(9uwjMde(bx2sE zxD3_RRWus10x-AGEDWfM$x;bIp|OxlFX8YJ<~@T8k|k(qOn^VRX|-;i(YzYp1XdKj z#Q+AM{MENKS6Btf?#LA;3@1Xzu%d!o<7OD2MOW9ycao)gG8WcYW~)o0{Yky3w!xS~ z%zBY`gmyG3(>q4V9sNxG-9c!{9TLPHyeT(UT)vu9URX$W^9F<%%47ycHi|*s(MGIxR6haC zwE-B7CezJ+B|I0+g_?`Ic?NfL7w%>n?nVR4Z(D1z6?7jFo*SmbKbWkOV@sf(!PmaZ<7m9P{LO)etV-Y!G<`0;DkwsgyZn5O7%skw|O zq{}reZWCtCoH@a*<@{PC-~4ozmS4{pJ2r#oWD3%YJRWl|kxL29U3`z*T2H(lNX7z# zgPZM38h}yup22I&mPLycHX}?yMw`Mbe#VR$@m`9C?~?^AEbjXTMJ)CWJLw^MI~KKg zMBzn6;i#F~jamnKu~G$7HA$v$^yC9}EIFM5!|^P~v6RgqW0PRo{KF8A*w!o*8wD4k z&f2+?KrTLcF8fkCp!m`+WnV4^ixpo+j*lT&CNp;ul?0$5u(5WUWm>I5L~K3i#%?PS zDYb@hY6|Q$J4C;^v#A=`2GvcSEfr9aDq1>wDS9;9ORD%~TsIn0=sgu^r<-WC8W}Nn zpq+LTk-2CE{ZorE(_+m0F=kqfnU*k83FSq+Bu7sjId$|@n#4?`8tC{ESrgYPYwD6L zCx=ForG#WoA-~!S$oKYK@-ulok^Gd(-n|>_^<=8V)M4&0bu>t%M9uVj8vuhzHweQE5|mU{X@!oQoJvF zYiqCjFgu&o?Be6f&;sshj79^mtaRzD5qI1%;@&s#8Ou<4`7~QGoVjyg%X}YN<21Y4 zR?VC{H_cXKSKIG~Ciy=8GRN*^D;AZPQ{;H%nrJUmO`V^=x~1T0UIKu$*B3wfEOk}v zB}S&vE6E;gpC(QHdHrV}LA6R_E?r83Cib}aqvMw@9sh{#02YcaT^cto86Y#2`SoVX9%orB~7B_WW-yfVs|4~NmV*uvH2 z7oERcr-=dXk*50Mg`)gwS3)MJUBKs-X}P8_|!Y^UYMM``2LZxF`>bp@v*Vw0ove+Vw1+d zszWw784Uteq^!bUBk3+igWB4>{E$H*AtBDa3AIDa1}8iZPM88tm;z3S0s-bA-cbq~ zGY0Qvg~dih9~+Ac%Ze!)dO>k%X;Bd%D!=eVI5U9$7$gH)tpGs;gcvQTZHO8&I0#}W zXz-9-2h-uqNDf0!>Y= z{^px+_S6u+886^9!;jSL`Np-i)zuJGlzRz6=u&Rc>_-31Yma`dGq6J2 z4N>?JGZpVX-afv*zIYe;xKgK=#??opP(yI56@Uk8O!o=X@$$&TqD_o@{l6A0=0<5VwplN z;^iC)#n2z*-16YC@4ox)+wV8+^p6+@w?_PLzx|dY57=?4FDxu}-MUzk3F1pteb}*! z#iG8dOT0Y&3{BbmYWtb=;*qrf+Q zE&qQLpydHR9 zaunu*r?S7bGUx2clP7nt`RJpJ47q&xgAYD9QreRDD>gG*uUsJ|uwpDE)p?lW_Dpvii`he+Ba@I~vNbIRYF>qr$_Qh5MP-#^g499MTIE41B}(*_xA%~^Ko}J*R=phfos2Xv zZiu%xuh9khyUMM=lC>&a{eyIA!W>dz4yiES*R7?5-QI>3?Ky0nQw;3tY4}X5mM{kL zCQPwd0xsgGI)ljDg_Pox-5?t3Le~Z&bvZNC7?xw>>+J-AwHwcu{sj)w>IgR{MF`tjy4s}Hs?Fq9Pen825Zw+E1j+Wh*qB# zT75!CCf~Bv7agreI9pxdXcfT&cyg*V(N^=Et$u`7?-N=bs=F3@Iq>{9-s`Pe{ms#; z-Px)htxgwOjnG}Q)KU(j<3oG(KSz7CLDUt5;Gt40(k(me76`2mj3e#$ z0WA3IIAgSd>*}ZTfX6%#O>w7feup1w08l!P&IBGaft#E}rvi_ua074L(B=)iG0__fu#}W3 z@os&6`}Zf&gi(+j!w*6#=XIP!uRZpMLUY?OnTPRQEl)xmX{iFzdO`zS2u58R1$KB0v|E;l4mEvPe=$8h-8gGxHj<7j~zqjmGw_=K2~`x6f(ri=$iA z4@J{Cx5anE1Mm&dKKA1{2v6^NjM5kI1R!x3*ZGW3or-I}i9veHalFf>ab`W2ztOnr zs-D7BO$9Qf@TZsXwMA*6O(=TR(%g*n*havpba%J6w03tx_3G{I?g2P!PY+$I<>o$` zHr&?-sBq3k@nWIe631^$ede@Koh~FaG$cf)(*^57!=s|YLkC4g!9X7q6BP|xI1oJV z`dcGV_xf!&G~yUHYA+dBtp-+8QFa@7AFB{Fyfmue1>!RUVYHHJcuW|6f`-SqkPG+( z4X@UPxZ%^l`bWKYe@7jp6O=Knq@G~r2wHp*Gn`REetbq}JclR7iPk!HdNJ<7UA+u$ zdIQq!T18hQf~)dSU*c*(Q3>o*(5Op`D{=?6+{M^xmJ}D!O`N2qot9&^>!miU&DwA3 zXyG+Bhc%UA?^^o%`fUbsY??g`yfYt=+n0m&V9ce{kw)E!>+_4i-F z&+_H>U#&_<*xxJ_mQn6l8Gg!5hEp3BxnR| z>|xkf9Iiuz?fgo1qx0Xvg&93Fl>8tX9~a zAD(f~+(nPZ8zSI9tgEN2R$E<(^0L^ERaBKW3~bS9#XoFE=)O_n<|3nlRWF4&MWIlQ z8?S+Q|cf342N%ViOHDQkd zW+5YW@YL!=L{!3vR(%{M`(stM^{nr>apQd1^-xgt@})~re&qb+lBRxMh7mbh#3Uyt8(g*Y zDozw9x`V~_w%(8Botu5voik?RgH&}QH8u5wN(7eH#HNayv1604 zyjY_leNE)XeV2!GZCAmGf(T*y5*Hh(J)iX;fLVIDnA-GHnI%j0iS`$mM5kq+Sdw67 ze^M{5GE)0K4+B3y3aE*neY$%m&G$?eEac-)M5zjm`{}~ zU;e}4tn4#9JPc{l<;#~YJ+tN44F*|mE{q+PK2z^x$mWBz)&rwZ2xjworoKJ}$jlcU z$tih|)hLaV?65X|BYJh3mj!!vYIqdf5^z_u7T5XMbs7AcnjABww6wOipdd37m9k4p zfO%fu0KXboPbvZGwVr{A5oShIYmg{p20xvS8qo3T@4tBQ#EIx=Yk4_foUookofn6M z=sabhffZ325@IwG6t8yfKEg2$wC?06^kO*pKOBAIo{bznV|mBb?4rDb=g#JztH>dn z`7}g=Fjl~a;UpHPQN?tDq@zPVFX7WG(_ptqw|m$u_L=rp$TSmt>52B)py}k9++12I zl9@FtEeX)pW4MJ2yNh#XK+LRw!)_OIjJe2c0*FUAd6!`!V!j8J3(t%h!xL|w`R=8HHFkA3N5sOHL?WJkx4%El-Do^>renYHYQd$PjJExk^Rx2E7JR9f z2N)PMOvjfTD-P8N>H2VE6xtcY^OPxjKc=jq!~`c})QrBbgrpk^Umgd9#UP|zGsjl%#~2G};3 z0CUMs{zKSd((|$g{|vi*$){t>)~`prq#ht^Jc5pxgoHF^>sG3j>zRqbEj)zE zF-MrQLma;Whwa2y@4L_O)jfOCaDj#f1*3LRGji0Q=WqdrNrUMvBBH}Jur<)t91(%u z(=%EvPb548FT3!35xCoE-0cuNUj*(p0(a|Hke^>b?-*s2axRy_rc8G5qW*r4(=!$e zPpl56kSkZOMj4%r8*@>#eUAMh$?DN(H*O?rc~M^8gAeK%BuHU@!aVt8ntb~F`O~*< zednF9qsf>hr^sb)|LAw#!IGT8i=KXZ<3>I6@WVW|O3bQNX>MTuTKY6KC}Go54r4B~ zeduHsiym0wJgVMN7I5=MMN3-4*b7B#f?U1*{2(m;<6DmLn1CmofG3=ZC#1PR6YzwA zd3pJH7>V3G#Ifh)8*A(HjmEsZ;>!G7R9xM~yFzcL!UdKt;7PXBG)p9UIv*H`BrR~& zs%<+qeY<+~_EN^K)J4W|+v4LlZ6bGle-7`bdDrKl_AwfDaQvi6r!z{sMm_hOo@s66 zndhEMgT*IpyB$kupMQ;Mop zjqUlne*Re(Qg>*jBL@e}FcI20QajQD>+9?4>tUCzudb}DuQL|p)zR{-RV8%|_4UX@ zcZHfwJ-l$-T3FW2&%LitPbUb|*OwLugSW3Q?4G`!?(V)mTDcVUe|&vC)INSF%o=w~ zT1T%&qE}OSGp;VGu7}>gAypFH>QVN(-`b_CNe^TG~?T z7XLsz*S9zWOq@DJ@aJIex-w%84sboPiJhbATjoL4kVgFPK;(NDiV(CmHKIqTL`4pW zivf2eLsZN%4=A<%fanZ_Q{HRb_;GQA0)oi|hZGI57i1a4Wo1%@l)I%YFw)6iOy9id z+t2i^$|(zOz9TJ%=zx@Yms(*`*;T}yp32Bsdh#SAaiVf$6ndBlo+pE%|#tv8o?)qUT-o32dGb@iybjyY(O86G7$DpnU-dmYC% z@-q~CiZ!3cJ^tXo{`C+Y@{f3S)?o26zs}BXlf`1{uv<8`rxQg(yF0+Geel*J6HN?t zMJBcIGD(N=3UXbmBs|Np45eyrt88ooRZBDHYm&HorOx(8|A`-!%# zO>6Mfv|WKy;YyoE6Eh7^Rnuai9XFzs^&9jMZ*0_PhP|FlHqb-*`mhZf-gpC6E>~f8X3OKDcL}F?09L9j-*@DTmM9S1LvoXmKgS06rJ8oQf`9EQ|v02`Oen z^i`-UX)VdatE82Dw{`+(+TB=8HvR{4P5EKk*Fm=P2M?v|p;khY@(TI2?~3F> z+qOrpPKeX|x+#?`;mLBI{on&4${qUV;Y1YOS@+vYT3h=~@;(%%hhf$E3G?E8%#Ir_ z(bV14)7aC^kQO~kV_?PM6}lJ33>q6cc1+6T$*?c;B!p+ij>QCll!$T4;bFM@81Qlo zc-gC@l=^=lISb($MuDlaii-SvvX7?@PX_yPT0R9%9TB_StG&+y{knSf>a~Tv?*9JX z=1G&bZG+pFn=oN)xQdr6TaO<Nb<6sJHOlu)wXdTSfOg*o-Hdw8OGAOI&y{%F7==>w2+60 zAy(URub3cINP@N!5gMw~y0}>28}{)5I^2z4U3Ss-w=uub)|XGV(ZN;2LyFT1Au6rT zfysg`|8VDs4`gx3bvMNPG9~*M4PgdXFf76POuZ(d2Bz{1(?J;bNW2T&HqhfEukUdh z2$r7@J3&clG1V-fGZ~Gv$FF-*R(R6(x=e&{AxbAv)_5r+<3hvw_3`nv$J5g@3cGlD zw`)Q|LY&`sJJXko0|!lf;DHBd!4DkLg2Ik5FTecs2!{$Nf_EOhK62z8K?+`8x$Vav ze>~E_jvl$(i^hG`)nQ*zSy4q51gKEB7xemdqYrmG9eu0Z6RRJ754#xjfmrW|2q5dD z*Khdh+rwFBuaCoA8HY7#3Z8u|xQ*h$xw&F~U=BE6pk!HBR5+%+d z+y-1wkgv3pS6GA+4Y6t!VAUronyuLo2P9}rKO9i2+7xzt5 z9Xon^mJBv$^GtRbPs*J8FzTy9r(yOAo(3?T6tU-cF`UGhTY9x5XJ;yF#$K9>U+=Zt zOrwu~NW~Z|*ORSNh~A!0*4n!P{QE{KjakBfy~Nm1(OB7hk=nVXdWkkd7A_4OlFEjV z5Fyg;<}#A*^)OM+kPmU95%0p!&9G(Q*MVfTbH-3zWGwEO#<){mWGu!#AS)|BKd01K z3h=vYr!mm zN%MVth7Ju6uD~mChMs)LJp;SYVQ7Qq7>q^#(@Jy0(EmO~HFY)U@9J8FWI#!- z#Dmn9mlhFVfZVj}eNL)6F6`N}=X^U#zO7%cibSNxm|)dOlEq7J+T}`Lqjb`vk3Kq4 zVs!3A6~=?_zyJPE8Ae|S(|_(~pX$Q=LI|Lu0))FXG*pyeDJm$dsD_$z^Dg%Bjqs)> zLC>+X=_23-V_TmMwWnb0mEN>#9c$lU^vXQ+?29@P8H`?eP{+8t5m&Goot|_9=a5Pw zH{^kq6y+5b7hOG{lV4U=oSOr?9_=HnLb3tgBt(aONzka2sVNH=o;!IWJ+szspEgtm zUXc!&_R1?ppoi_gym-lyARiU?5B*5wc>a?7tekzRunHj& zgM98jKcM(@?~&>N*be=xj(qgd6HgrZb}~%B^mv!saHN+e_e>#7Hi5p&Wmem>=K#y9|lEOAID)- zDE7vE;8lvBo&a9eK@D)c{+VZ&-<)aPQ(Q(2R-E35+FS2yDj|^Ibm_}wzkqz8c_3}0>#1g52Jq7BAHStv6-OT zOEjdT57BNi2EjhveFRo`GXTJ(7S3wr45`s=?VO+Pi_gE_luO)`o_zAjBzJOk(^sE= zq4Q%~TZy?Eyj^WRdp0f(dp2I`9UTn5$=l$JZ{pTmC6Nn~p-$nDJ`#-(FXPoZz1(bq zZ5cxeBiHbP5ZA?h)LzH?G*{;dCm{q|A4o;pk zXU-H907`dlUrDje>FSv$c{h%{B!5gBS+vo z{DP0-IM!4v)`gTwlsazsC2Nd?SBxzE+}u~#yQT) zty|~c9}m$KfB*a!sQ=or*B~FrUzk6sZSUT_ZIk9t#jf=dBc%u2R;j7v1*A0|Idb>1 z|5-qL6zwpo8UHte+G%8>=)V!!9)&FomM^XLzY*Q;FfiOM#QiUcnuzhH)$*uBrCN8O z+}*vfz6ueJm34(KF3t8HJWfk{soaKIiZmX_4VEq%UrHqjKC-M#BTs|X+2H+UXlPd6 zp&x$u;ZXkNs;VLtGE!n=RfS(tWG0;sDFvxC)WQv++)qsim6gJS4*h#{RA`_&4W0-C za@W{D{+K%zG1-5@Yed`UM$}m>FGf&e-l@#0s;a!4nnqh!Qx5`ncsD52G|-f4 z$oOcpnL2vYs4f}EHZ_?$MJUP0b(!1R;#?FcO7G%5itX#Ycp0h#?*LE^r^DB;?jN~Le1vq}9`|exPo^~kCs2JtQ z$a2zVl5#XbX$K_uo7YQl3lFY*_CPNcVuE`|SWmL+M6zGuPgIar)SiY6LtqjwWoAvk;k4^V$EB*uN zCVv#S`AvWHiN~|9HuK_R#|96k5*$}2CbM2zchv}{kAB1{ySW9C8$f`4IGXhY>-3r(^qpSooau zV~6(d+xzFvUAqsRETZX7wM8cn?b*HakG=a296o;GLQak#zmb`Pbq$gI5(KKs?KiA` zsGQl|Yh|4ByUF6%0-GR*n_F9v^8zjcPK#2hRhgU0QKY`P`tq484Gm}u@|){H!*YFa ze{WBJe{UO&w_wzykApaO*FvYN$g96zet!!2y$16+9pnEg=JRsQ=Y-bQ_Ac1u5S7u{ z(bm!gf!om7+}_m=HN#j@-zwx9RWx@YAQ#I{XFI+F?xwG%*0$EBdJZLa;dV^G<3Y2v zAo9Rb4XBUCSNGFr7CEw$u+Fo@(u*c~di(lmyf3U0fV}Dj(l1_J78c(%LA)ymYDR@u%wTh0zk6taTF*h@={3U!2Hk*r$cI!q!<*jo z{c=}%f8dU=L0_=!nC?q~jc1A#@Dkeovo*oa4armR}%)+vgK?)p4F)6`03kBm1h^{_H zt|Hi^i)>-285?0{ZraeO*ulQ8fpM@>j2Pq=5)q)%bKPA?oq|}SX;N>pr^#@td(Z@` zKgieWg+tt`w!pOen^EPP^vYBu@_dSfV0!#W*0Z7>Q(8iH_N5EwE?hvUz{Sk0%U7U6 z#f_g%8YatpGatSPL*v%3+$*?Xcz{*M$M`JDw3E|=H>L9f?82DwO zVG)rS?C7Y$gLE=@jo2XGP>F(c!xB!-KLjDWP{ z-P%z)==z%xbF7}TTcI5B!EJ3FeWahm0tt0V%=ALu_rkaA0w)xtwts-r!n6c)<5SFy z-@va+FgISt+!)REw_!T8bab|Lp^lTXwA9_rP2Am9TZyS&-Ofqe0(E}K){t`j;On;H zQ{CN1tNQy%BOmF=%IoR2;5nO4|4E&B`>&YMAN?IfEykDoSQQf7#dZs?I14B=D^2hy z-)Ycn-hLdB1gH0HUb|`~^1x}_=X|j>G_?QN+NlV!y3an@aXe`Mw|Mgfn{SXuqW$08 z`#=1#t0x)ZSvV9Qtp0MneUPhQRQyVAbldN z+7lJ^orr}<0eg- zgq>HO#V}g!6@p}_LBT;Gfm(3ph!L>js{%rzhf*Cwr&ij#+Iz*ERH5z%Z!zkSfPlfU z4#9*H$#K1%M4?39mBnM+z0_lQXRH(>BnFsGKSoSq>uPWB?q@h&VQ%TcFk!IlE{4%f zop#t|IHV|eY4EF#4oD|6OI+aBba&;t&FwYDY7th+HZksCixF#F@?ok3J3_eFZ!^ z7d-k9cr?1dmsT-Us}T!Y(@kOa@G{p{6=a^zE(0iSZEYLM0W(%?e99?X4m@Lw^BKD= z*FPgVqr=e|hUkFsC|JcGfBfj0H7BeA$%~+tJvY&#?dbZSHcuL(Q_DOw7CM#09thXv z<=U8WCr^$aKaOl2*nn-RC%&_t%qE>b6dsl8;%2?L55XidE=_8;R6+{v+)2MdQ;uJX z=`Z{w86XKb#2;ogtCC+zLR{ESF6U34yjhv zAF~M@@<-orGR-rR&ra3WHg;O{aJ*87PFnQt{h8>dUw%Pw=;edEf8UHSw=H|mUdYKW z%sYGf^qI3~kL}*Ref!S6`w*@No*0<4SDlkq#a%yXF}qQI4YS)2&2;p^vE}LM?(6F! zk@j_BE$ijnT)>W@94l3O`+G|1?1qIF;m!e-2e%?k)qJIex~lqHEGiZw-wAjLz+ba^ zv5Pxv>h4Puv~Mv+`#&Q*I~gsf>`lU_E845vh}e$$$EHWFGCH_!lIVNgfi)U@W8UKzk(I)0?(|e)=#$I z<2YU-X@(?nlAJWSmXuV~Akd<=wyvqI!&cRWqNq&2RnLLVO??Jt+&F`472F5drNVC^f+n1do_bCvL|rGNr;-Vy z3#N8rhv|-Goc=$-n8(1)fcOPAxU8m<=KA4PR#90~TUA?C21_GSn<~nRVdmQ(%!ozU zWHYoOgrc%YZ^y~b^!3whcY8k}F6yE84O9B-pv{C}VZUopB1sK?^MyMn%?4J3H`3Bf zR)zn4z}1}LuIN9B^tdy2n8Aj|-Rsf}TRl`LDeNikmb^UI>2qc=%@r?R#Y^R_QuXB4Gpo;$SRr`?xP$r7); z;*)>uIB_vEy(r_vpKHE5fQiPd%}rHB+0cf%Bc~@Ml=GhDZb5y(@V#1G-P8@8^78LH z%TJsr7jQrR#e91?Elwn&-gkGdzpA*d&w3{J6M1BaytBEdcssPS-^)-;oeheRf0lc$ zr?co>5h9mRJl4+I5e4lT=Goe+XU4sqM1CfpE8u^h6(FkGjy)62H%YO-Ko03SrSig_ z+%%1QAN91Bb}7Bx?2UC{NtlkGNDqS>+d}VqF~tD|Ln9%+m%jW!R3Ad)Pf=XZ_0q7s zQhQ)HS&WPJnOV6M?FEgVGR44Z>(?U^h#uV6h0tf$jbDc3~YeP0mb0+lkELQ3q2tT3H~ z-a4BG^dUQ4yYGh+?d|O*yWJ5OaQAzU8zwt6)zf4n^MK3{CwHX`;1LiqbmnufEr~iF zJEpYSq87vZjxb!8zUnShOIgvF*ux=jzj1$r1U?vEtx(&#x?yyvOJ8j;Oyb?_M}Iv} zrLhH=7?_aJ_e`+!#7?0%maz+myE>)p&G*wS7GMoU*SDQ4sKHV?gU)yHnQ>OtYE0oN#R-peHdtzDq~S-9h~0_{Dwp*lP>*(H1Bl(H1Bp(H1Bt(H1BxIa|0n4U>Qubat5f-ka}pJ>x4gPjS~0@ahX_}<3s>*I z-PH%Umr~QKQ*wHBN>8s&8*pBI5qNJ2WY$;EAYRn5*DS6f|P*=B{Z#c@nsMiu$!qu)yU zqbE+Bh@h%+d2rI}ufIM)yXuP-9~q?hO_3;U+P{)v8^oc0@2R`)n)f0clCQk@`XkRy z#_vAF_Wf(OSV<;!OJ%a;jYK&Hg-Z5mi?<8bU+8?HhcMxS4ZST|my!YG9e z8+QJDUR@tWuL_0ZNg`30T6;LTCMI!Qpr4YM%@R*C%Y1 zZgh!^3^ARh8!tu$KHDDtv6r)*OJ-yEySm%6C-=}!%cReH}c^WWMS@d9IM$! z$Sgdo#ML(#;Sde=#{A;C$~Nq=7dwu(H7kGLb2_iK%^Gk=thcL#B!P4l_hy1`$FIpW zZr}bUx2eN7@l8PW8pc#smeWZ?(}>}BE-mfza+As2Tr3FSyL$3`om6YXr`qbOiZbkY z9nc*xgx1x--oR_RkSA1p>C(uNu|XP{t5P3|U65U5(|W5dy&YGNovy6uCQ@l%W4#jw zuD-EPY8d10fgl8}D_j%yUKT;PgTfeJUnY1kW|%H4#AojFQ|Mgt^l)>5Jq0^GFPbIb zu43p99M*sTC7F>K=+|ln=5X1MPV06?YcC}a;cN&UIEXI-g+@Do|2nk>N%h6(KOu{Ib+T1!SGqb?hgMel~Em zj`Mn*xlI-1@8;$Ie~n15k*HmUKeBl7;_0Eimo8m$ zGYpPUmP3?RSnaisJvQ>r=iYnoz0rQMj_Trnzw_d>T9|mTkW{)yCBH($1@x;#by&W zcvx~phS8A`e&8#g=sO<)a8mFn#IW8yCfZ%*GV_6Z#?OnAY2bMYjf@V7Nw{;6XXLO+ za3HwDtV`zM2^HSHUT$uP{>E*#w27u=BAjua;C z0P@n!^|?ZD2voO`7&e?%3trg4csTszjVlWJ-0R>-s#VY^idUUd@H&oMu_7ZA40-5} zpTGM2^X2bx&sX3}x$yv);M?@Jwua8X*itKk|D-K;!F7xo z=Orq0GG<%b$a}$;<3sJ4d-lBi(!60#zN}FBMNfb7<(K#DIb(^t_b;w&Ya>%|+3UGd z<6z2UNn2YzO!xy#sTGNE*|I;bW6Lp8YYW&i>(JR|_?!q03KjLs0|Udt-9=aT?aqWf zvdzZX#9m=xfdR4}tGT1A$0`aBM?TvqnM~{DVXmqW_|nZMkQyN5u-^7x&z5q(AOKg| zuVc(HV}>H)%E6eAKdz1jUrxItC=4h}PfoeR$(MuT#)d>pe&UJv_@R-};~bp%_~Yai zp7*+*GaDR?DOYK=QXVK;UGx2fyHj}_7`UCt}bKf4n^$-DPwXa9m2*Vh9-{Q2jfe^37^JA3nX zu0wL@4!WXe2M9qm0}N(jZ; zs$#HW=D9T+4nbg^&nZ8D`bwq2qpXSz)P4W+@8@cjBSwty>u-}t4j@tSosds9Y}jzP z;DAKZCJPG-B_-!~ZH@3aP4)f#3`fu=fJb*LoWoOr8rv_}xgx|Gj>6w!yim-7nBn#ll-1B!%rP4Braf=!`^+~ioEz+wK5)*RMGt{3$ z+?#?%hxC>1!d>mSQqW}8OTuOKa5U6_zyKQLo}j~4M3R`93M*yG`*0$V~dR#(=7 z8FMq+JA0^Qy}N;PQ$tz~(me{ia!75>#x85Y12t$Ou|Eb<=D3MU*fOHsP{L={wVes4(ZnfjQ4Z-4oB(VY!#ZRy`)R1X;C0;~D@$=kXu5P;WMZ9!~XTR$iI zi`lq1kEYyQy0!T%_>HN9_x3x)<9So=WCw}{*43`(-@&g<<#>#e-VTtWm0E!L( zYVBoZ-s7jmV-fI@$CZ^aQjOMCAyr#wCTt68!$>>=0|Q3gd$%A6`}?7Axq#&YecS|& ztEe)2cxkWaI6Gieg8byy@!Xg(iHMqKQ$C?h{Wu@!(`{SJ&4b zg=ic(bz1Vo30iIJjC)5X-hKc5_b+&E8U&#}3Vt#bjfrRb8~%yqG`9zbNj$^t0C3C1_qyB3~Y1%2a->EP4odVMEv2JH9xKTWQP4Ac={iJwfugd$S2zGw2y<=|KWd> zjk?>)#zgxayz97e(Sf1T@4o-`P(?*WL1Dy@asNAkIhkBRmCdchz`ng`5zVo0BKMS9;{*Ub`i z-5x>LjS+O+CPCL_uIairr~Tt*v|$2m$Zcq=1llO!x=!qQ1lCa<+w-Qh6g@#ehPFw#Dr)%AD>)JC3xw;2--h;#Ks#EXy(;vw z^J#sq(T;|!dqM}yQk{s5#?#K#F-R+hiA+K*W!GLb#0IIQoXD?~=4n<|Rc7z|efxp^ z=~pW%kvs)xf|7h-)UkR`RxEC*?h^MPmsTo8KCR8x2OLu}1c^JNbnbD(BA`2 zmcUZN697^zS1lQoz3V6VM8EiA(QcO{kB z^q#iM#M!*%3x36|+vSWIRTcMsnPR)ys(r zM|^0MeL?>56Gsm1If&qBfF4}Ad^InZY~T@Yp*V3OJNp!r)H7$#@sf*I5k;1pXYg6K zE;4fSue&!MIdUxh?Af!(+V<`$-n$O?DrA;H79317jBV;jUNZU~n1P?Z-;e~e>_%XL z%z&MD4FH+epnumRDsG#A6e~u3J@L?)GzV^DDtUtf}CM5)Bb(vjp1e+t8l78Ldp972k%|CeS7e*R=@OH43!m+tBt3v?B%D zVu7|wpw-@n_NLc$J})o|ZrN87;ku9AaNWbgb>+9AtrTeO0_{fOp3e)k<8MQIUZCX! z+A4uoD$owP4Q+)$J4>L=yP=;g*Jy9ls#}()BeI)MH$5DLHdUl zD2v>z1~rfDCVQ#`SShfmo1K|G-OB%+ae;IY+Nf1s%OQm2^0(sHnT;)tz#K5w1Q$xH=D4Jcy*h2cdG%PVY4<`)c>!8VEVPsvI>yt3Dkvm#o>a$wmR2z{ z8j;?OS5;LZO)tx>I*>}2Du5iasEZ*2*oReQwqYF(uWhHLP5k8TwWX)vy4iKAv=-r^ z6DGLU9)`c>%fnl?1O@_^VUSGLZ(?n7F}9{+xs5gT!#|Ths3daHqD7GQs7(N;mX!d6(dS5&55-Se=YKdRi~7dg4iccwa>4M~*yi5FQd)oOl%%*U*%(hT_vm z!nUzMC4{$)J|KNiq-B$EM6^3zh`6UXFEW`#Y(a_b9*bBFkBSFiOhKXGQM1g3EOG$K zAQjFPiC9)qFSLwakyS3O@$;(@)=TPhjDmJS<3tCrw_H1&&>h9qS?5o$+g604<}NZ> zOV5cDMb&7cyS>*YGq}1$!9WBzv$5BBWbaQq+sJxeBxyUemnR<~XjIC7{mmDj_7RzZ zdt3=sWICZ<-i^qjq?M`-i28=o#lA!SO@SW#?%|m`m!u$goE|F>!|S4E4X$erV(j5; zI=toR<=mF?oq)y@^=adjygXuzzf7XkNB}JDYNgI3s0(g#Prp!Ae>(}MkQZ)1qzLzi z^G_yk?*#s(!xC`wIai41!}RjR1K?DPTf%7+E{0P$TDz5YU=e5&1lnH&T9H5tgu7eP zN(I^`fwo_uH4C(|8)&H&_xflllt`wudVzA3KzT->Y`!VwUpt@6f2Y(7bm|-E{vMx| z%1VU09U)v(EL<~Rpk;1DYZquE1lnqWwpgI`xee`2uj_nP`E6)5!gcSt;kvtp>$={C zwo#y^Yz;oxF5L4;fp+q3XmbSGZh^L0ptTFMF}I;@5NHv@Nv~_Xp`TH&^OhWSNuX5- zw8a8#yKr6If6(5DRWwMTo#dcRB&n$a_3r|8(|=Ik$d5{aI#IZCkwDum(B5tiIk}@l zpq(JlI_E*#ZLWJjxUN{B^%iKS{{6ZOAmtvw9HQBd4`97{fLfjFu58(N#iTt@*Isnt z*skAx*}wJk6#F7%{rzTt$G*g6+3K~w?>l-SKey=gxii^CaId|?rv`2J?XK#ui>%%7 zAvKuQH8Ot)XpsWq$4lCI_BXmZJdI;1^ZVJf$f3jB+(>mnxmCq>mmb;l)1|D6ei^B{ zQq;tRj!k5c-H}bp@6y5yVceX#i(Y;D>Goc%Nmgz6uN%Jl-xKbG4ek30;uK^q4ePlp<}t5T$Ft<0~rSj;kow~9#Z{*j{wxoX`|Z>+mnY&Ex5Vu?=;Ql%-nWjbr{xkO`k3p_av^ewIWRwPd)BZ--`zJZry;-yx7G}3+9zhoJnafwM z)MWqi%P-Y~620LVBVrg!E*G~O+)ce#kDMy*vC7>>J@CNT(CE7!U9gDveCCBElfy`M zcJ}1SlVw$h1}r8c*REZ=Y10pzcN{u&==en=&=g4V0kpbiXI0gYKgPu=$3Oe*v#~Bi zhV+htt94k%Su-3Rh~Y_P8~Q~COKCdB=#DKzDb<@(djv5;AB|KmaNf1_uZD2fz-iqxd4a(6F#D zgBqW3^;>jWdH%9~pp5n}z!&E0c z^VX|0VB-V!m71C)SY);_y}b@(5zKTzU{IB+y**)33g$IEmXS1xi;5*c%cB)+@ZXSV ze^vSsP{5GlM_pYmAFu!A;O>tpfLL?$(WB&7biX!S+1eU0%ugy-s3i=_7q$|H2Q<2C zVHMm4P&w<$s%6UV#*0l&2%EE4R>IKdVYA5;wY5V65ZB|PZSS&?+FHQzl5RoYq)6v8 zF*~0_Z_Y$--i_W2hn82In{_@N&aP7zGTTkX=W=ti&SW4d?9}P(tAO%6mwg2gda0pR zg%_bpUdXR#rL(Onud@?*osFgC^+wEx+>-LDc8eh#TB(nJ5`zo81jI*427vU2b04e&s&GkQ!;L0Xgm6T!17Bn7hy$b@>8 zy||MBOel#< z2w)n+J>`rEecfv(K0E?dB;YHln(d}#9wSG9<&as+VL`$q?Bhf>PGvxiU9B#{KOh8= zMB#pl)^^uW#4Scgqr_)yENaMNRs`u#c`Ma5Pw9(Rw7%Xxh;ZzXsoHVRDh<=xgsIun z4-{^v4f5uCbDaa$kQJdbp{e-cv2kj`UE(KK znU2CKv8brgN$DB&F~&mhQyslFqxJ!h;-`pf^s~Ti_k*6IY|a9=%>uVYBG&HLUoYkq zq05VMF6Ne%WS=^H_EL8C#lj-YvZ8{En>PFcVM^9gsh<{PZLcZF#4hmYmepU-kXx(^ z)vYzfbyU#z0c|T1;wV7b%s2uFnPzim{?4Dnhm063Z>~K6;e4RBSzBD@fppiS;dkqxyrcU0vKb{TL3qDIwc9Dk+#`Q-Si%hBubJ^+4Mp- z2?-=26o(!0m!K z);zU3_>Pq~Ah=7Uju3bN4B-PvHb|y52ATYQy*OWWttTi1j$YM>lq7K{C!=>0M(+`f z-f$Jlg!B0o;=uj%Q^=JOJ9-c(wu48{pFg^LH%Q$MokC}GG48giODFIjaCV>x9!|nERNVO^=&;72yd9W+uABmAH{xpyaeRa z9LqAEzCm-?Bab}&^zE^pybXx=f0O5lz2oVpAANM`q|hLp+^RA8NG4Xb&-BC-Pn&Mb zgwI?Yt}mF|Ox2$fx?3EYPpeI)#EfO2ky|#MdWb{9I^{)rAjV7>F^t)!2CrcSVd})e z-eK@IY)T{lr}*KA&D)Qht3$eJLJziU;5M6jq|#mDu-WT+7{XPiV0(I4lq!X5z)N*= za1$V>PNOu36PX=w%K{95EF1JPHyi>WakaH0SxR9^h>9a9rO=3w@#7DLATp0fSk!2! z2`MRH>IyZ*B71qHiAv$H+4c3&8b5P5fEI1d-L!uo$wk!C-7RfxWo6ykU_WP{XUOJG z!YC5H#)TNgahQYSFb9prHf-r`cTW$NoyOW`N8^cO7oiKNwA$9P)2GRhRkb3^v)9FF zEs7&HqNw(-TQ^itoB4LoEIMUWYNOwUEioY3(k8(E^{ zy%u9XA+&G`8er7Kv*auH!7#oXfnxIxl-cpvlwSZ0j4080>`7# zgp8dyA!F)-dC&~N(x{7SLn2&T+pLl3Fs*igW`=r6ieCCptky=(%E6n4AJ38><>W^M zC(e#*ugR?FKU^w$@T$=ci?K)a;2F_YT$6{dMr=4K#)QN~&7`GSY{!#!X0a7`e*Wi5 z-X~shiP-Xc@rr(8ThAY~Z4uiV#I`fUwim^=^?%TI$mf4`+aaI7><`-V;&tbX*Hwzw ztroBA`h&KEV%r&F+a|GXt=Lxo2W_u;-J$Obmj3_Q&vNm)_g!^eFffn-_WOgjbzsShKeo2#XG)1yyM@ldN=IP9b69@&%E>g&5R+XV2y$FrQn}#>=eXK95G%ou6Odj^&#~ zqMcrMSA7wX$Ed1pjX}=BlG&r8g0MFP$EAc52YXmlLIP8>9eBKhuJDw(&!nSd6b|K6 z(?bdBFnO2^|{e*Qx_7HrBr;HS2zRXRn0UahxSzb^95o{Pvoaw3Go!pu`ue==9p z$@#gcXvA8Rky%oQS~pmWGQ*1`U;FbS;OI$Lc=A3?V_H8>hbB~wD|?bU)ksc+|#OPp#m{@2C8K- zFq^mXv-#=5F$bu%hxryfpI|>fcI?>aX+UZ|tZZ@o0zG%1qopMc|Mf6%n@eyhrHXaB zNL0h^WK~Me0M%+^8Jl=FbmM35PGrkAy)9hI^A*#F(wX5H!kXyoK3Ll(h9-Pvs@wC(vEv&x9qcQkXEiIyUFcYJnhS6Vw(I+^d zsTlo;s(J^c7_$lGxeJO2u^Y^0D1cQ}n6f`}T%fDwR8G#t29m4c9BjCllXI#D^*TyQ zta@!kf*9@jrAfPPYb885nM3pCasEZwI;|F7jE|rqvjdm5a>}j0kh%i@{PCBq9J}?> z0L!kGy6P{(mQEKk``1ezAL&X%p`wk4)nQ;rW+km;ca z9nVRoN6Oxa2n+B>kH^HsjEo5z8yf?wcDt3{=^&ND@txf5sa1HUR(+;@+ttGt7`0a zTX9KAaY-r4xK)&w@68H!)>Y@9%sE{MKWS@8>tN$~SS}~d*Eu=qU~65wlL}*;GE6g5 zY|@7B)+3hrt8Y9=NHLc3sgKPa@;!V4we_6<#vjhGpfS_ON9e*vX-%Vv#x7@BW0*`y zqujf8M5wG1CpcDm^l0fZ{8A}11}QoJ0k>2Z9)uB$TX@3_H;iH}3cV8eTyIw zS-GUOljc}QMXxqv2r*Bm0w^R&9mdaRXuAsSa3nQ1N)%EvwK#(+q9@anL9KS9b;9`q z!nRV3G=y>_a5h(7JhprH?!$)<|NPy@VCa7LqmR~q`57Q*AAj}z;nPQc*}wD0-7pNE z#)W-e%GK-Sl+M2XK`%@qp8Ssar~rc03l-k&@`3%|ENw1F{i`OcUabRcS%+G0q2ZAb zlAr*Uc?3!fMg$v(6sdIJD<){J&=F%t2dN_hK`k~KR~hK>qRh0}Ad#^+wSw-Ai0Gy9 zi;`8Mu(}k+uD53ZQwepfGWkr}Tzn1B3aEF7(1~8LI?LZNa?tKJpaWND(Z#|S!ru(8 z_@BO&-&*&GttW`BCyTAu54UdngVy=iYF#kgTJs03tqlpmmGb`f0Is z^}qEwd!_a7Q6r@GC8=GU#lVNUm*6v!iM-&ooe0dDEQww0JG`SIB6AJg%kR!Xgyvf3 z5aouPg9y(5J_i{zxPZ0Hou0}q-2}{)1)0Iz=~!cmhj(JmH*Nc zWI-f%KvqO@2V_YkcOb5bct=AP#i2X+A8Sjjc>S5;_0JDqzY~qc6_t3L|GgJ~Cs(9B zxjs1oxxRP?a(!}&q3dTru880AF33a%=2-^O5-KaE(T^gZFm8p+D}X=fc-+d>h);PkWCO4emt! ze13_qlh;G*zFs(9$x21oj*}LA`uR53&78XBr!}9vXSG`2`Q#sGx;W`Qfv3LzSD{t$ zY!XPvt6F_sbK#@>Cnz1^@}|B~y#DNcbLY;z{=TvEp;cd^Y}6oVt`)RG2qIT<9AlU? z4}5%|!6mA`;V+A3rQLYrjnii>e>nrx0SFs0FD*(5utwL`BGig(^2!DWVaUWc2LZXw zZbP{^?B31wM7fjl5*DT*r-oNe@T}p7oZ(od9E#NH=)geG5o)wr4XUp~3pNCj^jvJt zs2T@FC@hFd_@h$@I@`k-jVCc0t1%i6VKg4bXiP!f5NH#&y2iH7&PHM`+w6^JebeLg$OyUk83w4?XnIO|i0?>`yKJA%gq4=;E1z{?M4{u<&%?tu|3>P0MHA@#M45z4XGf&%W^N zqxk&t$-y1FaIx$L?bO#ZM8%F;Ey+OPIZiDxjEyb)YD>AFzur&61^&AJlMg@qU>g!N zk3-)o>G!!jFfHDs-em8OabA8uoqv=Z>}OSyNZ3kmT0pZ(2!m}ECHd%P0wuFmm0Y@b z?lSJZ0VzQqb0A1AyZX>&P9$-YY}}?6%EqmgqGmC)F$<#7k+f{Eva-AnnwT10!J;An z*u&MpwyEVPmMv#3Q&15F|Eu$3y(rbDBEOEB6s6L}jT5WUtxq0r$XB1TOZ zjl{Ot1aJW2GN@|c@|j15s0sUhSah^ef_nj9u?I}Gtarczg%OXwUblo5qn6i0h89AG zZjWN{D#4ScVr|GyKxne0-j2B(7Lm|4hZcsBe!TfCPYC>^)i=Wr)lwa@x?8%I$iWgEMut?#*$dPeq>CjpTHRGhfNTZSYluA@PLbc7` zP6V4u>E{o$jW{l(nm1Xk)tK8uRef2(2xH2MY_&`-T>ebShEc`T3ubCTDurZ*Imjh7 zGxewwOu5WVP>9Y*)r-}Mf}+IA;Ch_P5GBDm5&tAc91;)U-y?~%QrJB>uQVr*oLRcG zgq&N_iL*=ov0&)@bQm_3myl*T)C7=DTr7+3beW|d5RT}K68NXgBDP?7w^I$>ze>=^ zS}LeovdfGgiyBCHZR-XHBZ)<3F~)XMusDl}bd!=ORLzhTK`;ta&=0raJft>~fKech z2F$arZlnV@basM~969*_WKcz%23EGaztvWeljCyHG$+U3xw#cBE=#DvFd{Z(X6o$u zn>T;{d1T}}@BAY<`NF}2U%_iAm#Hdqk*&MTOog5kH`1^$yva`2XI9b1|uc@ry zlt{t~mJ+(HEnT1l-HZwyPo|@a!n@R$u<3UJ2{0Fbtpne|2cQt%Nxg)91Ao(f1SBB* z%9zbBJx^AWP~2@(Lw$WiJ%Za^jg37$_|Xmk37A6VJj%)V8KPnVI+dYJANkwmiZ#jr zv+#OR^W5!rksu6eV#x6WgUC=4d`H;(o!4`qYvThhvdY znPMDY#n1Ph$KGt`$CGy?4hP7Z@5eTcnoFcs@$uurll(e!CV5(^B0}PPi8>~k)!)Ae zAg=;+poa3$w^IYW55MCbNq_&$RKZhn9;Y#KsMjkz$*%_vkf$}+PwHp%SEIg5pav`& zYT#tlYX2ZA8VzVpsKiRj72{V@S=Q^d1}hjvpvlhS{0iCG-)ryyKVOxP!il!NC)iNZInn zBXjC&YJ;pWze19j@k9nZEab3Ao_Xd~g5$%%Jhd3vY;gM}-1F?SucQ;YE$Tzn%JFJ| z(y* zReXPKZD|Skk}hdz7DMPzJLHV5BG9+ zXJ<>h7d6cZKHrkefZ&?(*M+MIlg1$L@6Qh)0L}O#l26jJRB9DA0aOXsVi!=!DJ_@8 zvK>X|&h--A4hEA%g4xP=oY+)ogTWsap524}z0FSE)sHj)W@!I4VQr3pe8fXOLLna^ zQ8cBH!{tU?Y>eF2Tx}~lSGYS%)<)$N7w1r#A5&7MeNWKopO5(wb^Nfzlu#ugEFQy; zS)EF4N9tPHeYv@r7?@4)ovEnpB!P`f^R@fhEopQF9kE)2;-jU|44a#~;NC|G5W2F` zLPtlhmZN$g9yB8hGw4vsJuwSBTLc#+Xq&?;I&#~{mu#r!jb&T=C~gL?H8Emt zM5hgB#@|soDv=wq9wIRpV)0!QafS$d*DJNVOR5Vl71&56Y|tIba&oGwa&l@oM7XU| z@=Y(brXxQ*lfRxF_-?}n%(>@KYWv(d4&G=wGt-JZJ|c&k=w~XxS53f`pLAAH8juO8pz9pTLlgdA$TlcT8K@x!o|4BP&TO!zB@TSlKyG>~X*UI3_ z@8S%ZnD(|VuWvvaJ1zg{;c6;sR%WKqA*44z;hl8zYx7{md?y@Ru@PxAO zy3$wG8R#n&={NL}l{0J`H*TDn;4Z)!>_ zMU$tt4leiR=EkblUUcOdF2aO~8?5yC-1YS=JuryM*lLrBnms!PtmY<@l@18N&KL3A zP2*tVu-*`LbQG)}Qyef|=yt6MEOZF28IbuR@wt7n*1W z;lpe4Z}G`up{^fY0{M89tjT#;lP};Gs>ywm3461K^E&FnvUHggykm^YCyJH6C{n5I_W028b*cHT4hz zBLUxd62391sXCkq6F?vzZg8CRxH?)o++hF5byQI30VetV{Oj-k@WXAZ(if(tMme ze?K#EKRrEeH!9Ym(wCf&0RcPCVDp;&`zabAm3qAdej=6Wje02y-&-6<_2S=u&ebva z)}zQc<6B>;p^in^>%+S2?Ewo-Z%;Q&HK?6g3MlYB&9z_*<5)0?)%C76^!L~E`T(uY zw0ZOR@$27vXX}N_Borz`LCp8R-m=ZYzVJeGWAAECHrQB_hk7Gv)JAF}mZEfQeH*Fo z*vDqiryk?7G6aoq9X7v*qHS2FfsvB*m)5N|;7(v8A|AysgM$)=0nQq_aTfLznI z%b-*MN4-jZoFzXJx!=|e(mPjQuTZ>Rynsg#R*miC`Yq!1!mm_}Cp)zct;2A=kSGZi z9z~OteCVN&Q&RC)xxJ#a$W~b0EYERN3&<=*$44^`Z5Vaxh7YnN4@^E}O+&W%yL22t zaGUsCYByc{A|}$~^wD|N-<_qmuA$l1Qe)4eJrb)D8!j=^@IbWH5FDZl4~%1asTQgD z&1R$biItRrdmFZrA}Wz@XRDDZ`?2!Fjs}H)sZcn%u&}xso3eEs_MKVRfz z7aht&lP4c~OEo#NtDvCPt?oq?@pNi8IoOxt;#MGTO?GIq``|66xERCZ*WK-;UwP^I z=b!)UeVpvR`0jZ}kIs85q87Q3w(9+R&%mt){6T#ks(Ume#~#?t8jPpk0K6CyQg;m+ zw~Y4;075T$Dzbxs?0KLUAv~{3SDsF}9t_g2m1Tf#N3~1;|C4oy;eK z559UnwL_cwxClLVua=7Xj>_YBR00~@La$X^!2=Ue z#8N(upD7$^`2AtNO$0?8IdbGP5fstZaPZ@gKR$p!{xB$FnFxw-37`lN-2oJ#M-iaS z07WdlACIK~MQr|Lt>U^79nh&dMqGC*9ZFB5AEI9uj)(AjD0Lm4%`mdR7moc@Gd^=2 zass{}2?IF3kUVnTb!m7r6nL3sS3nUK8ImmsJ|Z296At#4AX(4P1Wzm+?9V;2pj(h; zuy*tn0I^S@BhFccug9m=1H&8O@9VKw!}npUBYOz!MdaK95y1+G2%Z%X5s0Viw7$+B z_<{JIPM=mMUprc%7N|khAQM%9l}e$~EA(m>JP#RI=>dcNk+d+uDd+(ufsnlnZq92-4sV$Omd!C&K zfBhH8Jbnj?5f0{ovB++*_`UKf5_^_Tj1CG^`Ey6nnh(rJoED7cfymGH2eB^jY5Yq52^F#%o!aCTzSUhV5hODMnu5p8aHOb z7(I21mD+2O#xBShof7sx_q77*1X((QDUy;)@5R0*@S^*H`xS5Jqe_#wq73ihWS9C) zyDg%Ql8=Q0yN}j8(YhMHP|ZZQ4WY*UTibtM%l44A&mxBfFNdgm$%_ptJ6^O@JYEO_ zBpI?a7P3UNM3T8aHj1W#N(nRp)3B6q5+mkOQB#ApdoLG=EE!0Q-G*351(q1Q9crUB zsLL%vX?C@hJ32dy&sI*KzH=uwRwgCIuaooZJP!!_!Q+$1C8exoAH;3|ZHd^aoBZy5 zFd0tNn2G5-canlg|I7mI4|Czdz&PMyE7HmHFtX0SpU2y3t1URzgP z4Y%KEqH-b^+>dy<5pnT)eZI9?4Fx+()WXT$sR<5*p+UHJ0TK^R@Pncyq)|mmWkWv8 z-}n4)+7oegqoV>4*Fn#3L(jiO{%#VLs$i(yV*km0w_?lCe==Mi%0FGPm#(7dQRQ?W zMeFWB{X4quG>ttsFaZu#q31)Q{(HsxA)6ddzM|^Fssh_CHphj7V@GWWdXFWgnm1)h z;AAvYxpSdT)KQ!HMt}w1$pX<9d74qXzNW?AdXA(y%TT*M#6QAd8cUK|!v0t7`U0rw z_?DH_`{Y~K;#&*y*9sRa-ZovyLm_^}WJt{{NKG=nbuw0<;ELLUix8Si1sE;V=5}DD z99VYtaB^(u9Vo=;G=s?pI=9p30SeI)ym{-_pL~kP*IS9bzqJW@JWX4XkHpE5l(+v} zUQw%60mVDJjKUnWFd@m;Bee6iaAYypCl495%47|q6q@7^>N!rnYSpUSQ%42R)*+9R zbjbuAWYrQ}=jiT%1a)@{=4*?M_}E(NFdO7#bsccgj8y^I;JaJl8?pokw6qpLYV%uL zh@Dz@3fv2)>H=VE$_YD>t)as$e7wKrGEk?YuXQ^5gk*v(LZ3`RpAdvvI95^jfUlzk z?%tLT&?9wq4I(qbOAQXdaUvLA*X|ppzkmJug<#3M1721DY=(~O`8()>f^@+yyMz4* zSv()5;UmkTRoqQXGQ|Ve>NySt4dZ8lZ~L90eexY<#Vo?q2+K?{D;#qxd{#Wh+B$5a z{nu_3z7J2q5+mjqTx3$I%nfXvTgIcXqve`?8II3N<+hq!aH{6k*hs_DgFpWGkQv zHq!q7ty@b<77JuhE5Pb`Gr!=mcy7F3z#n$tmC-~MlX&kB9dDgM9R_pH$OoZ|njz8~Jxeyzcqgd+tC_qp!XJ$sxhCsogCGKpZYYSUz;Gymw z1Wu0)BDJ$?&;}5$t>}y&)^{%!yOx%IC&%VctvxU-BhQ~NP|uq;PmNep0Z6tFUoIdk z{-HzT#@%=$3P6-_S-{(_%dYW9LiT|J2a3yVs~J+rel4Z`>t9X%SY!K5QmN^-p^yP` z&xRI%>53Ib7J?w~}ojIM@I+A}ow}gtVlc zs~>KDOdlW6EKF%{Z>gxC-+>;y8>`L}Sat3|58i=QC-KthoD-KSs;f&cpGOiOlpy?h z{@ev5=bt-z_|&DdIRLHaoQ1w#Onu3537Qef6KEel<)Lf3qtj4P=4O zLuuU2jaDe4;$3^b$T_Z+`R7XcmDC+g?6)2G|t-FbvjGp$SJcEW$oSG zu#^cSCrt*Hdh(=^<0nKjpkqi(oi;LQ@{}o4CMTH^5=>MOda1UQS@dAM6NN_QI*q%z z0r51NF8+MiKx6=d`(D~T=mO3jWzFMb;$uyL`iZE!JQ5*8d`W~5V^XHgm}v}8NE#Cp zHUj+9Bf_Pe1eH=alLyrvT3g!&pL&wiz8#sIX(B7>Gm~GvAD0|C}9XqyUA3A*&8{gSn zY8@PVIXM_kyPb;|PErtuSjbT5BpC`MN4LRg0Y}l6EhkQ#JXzVrk{YdDm8W)W*|KG4 zZe^`z(xgdhdu7pPj^lnTMEuag%*f51!9^e$L9n}BBo_fW;mAZ7OEMAeg3Z10ZHwTa zL8Vdcs#Q*BW*kYll*eVR8V=g2UR{+bKMG!?qw>txGEwQWMmUa3UZd`Wm3C<1!b5^_ zjZ|H!IFtefG>g=Oj?L*}>H$j<5AH(Zfn}&yV6-^_R_W|=GFo_SLV`3*U@*3(5ChZG z1)Zt8j~e7GBZ(#bo1M)Ii3dX30le2j)`8aGZy7D1n{_wdm@*{^DrC}>l(AEh?mBgB z%Jfw7n4Us1#pB`Bn71R-q(*reAT3mo2E)-4FTg1A-(RRBf@Dr2i z;$`^EE?;&yDuPM8q~a6!bJ&nzGij$q%1~+~4;ewQc5I}MY@0;p~sCIvrk+q z6#!IqjX<7&^Aq-k#pr4(DK3ZKuN)zm^ZEFtv;euyoCK>RaY~MyIa3lm=l0ugpB*e| z`*q8fAAUG)vm@vRX0bukpCax_)U6qzggfcy;zm9ZgzrhxuC8`Fypa`kja`&dNxksG z8rAaUNhS~Gu`glHy#(z~NG6_qashyJA7Fvv@XkizurN0yEm$D9E*Wf2FLRnR$ZEo} zRJiT4&pz8x!>Rp^a1LpF?e@GgXDGqDzh>moqc-3l0S&8!+s$S}p=7$VjuhmqEG+?K z2ChteS1ZFRlu}ggHAF^6>&=W(qhKw-s;n6q9-d+%RbV|*T>#2Mu2?ZWEGnE7NLGzW z1)T$w#PvZyFZkiApjMg@w4mUpRxK>EyoV)>^212!~ZTnzP^A zm~upW5?+ht>`JnH+Y{5 z9237_rpo1pvrVb=lSwt1kF1(yCVd>y{nR~^#wSm@`Kjg0pStVDn{K*k{se7MkX9Rt zEPvn<0)H5+Z7C@0$1(&(d7!MWB>UaB%{01Iu-D11zG7&NC%gLXWLLkEe|8Ppg-hp7 z96o&PTxog1$&;5a3%mO8;{I>k3nY;rGm)N3B!-r;dh+P`C^YNK1zWNeVWC1H4nqFlcgQX;Q6noBXo>I{rdc1 zWm{p+!M{HH(!;Yvw|#at_VeKcGqaq~F}(BkI`hy*&SrPYLYHTVTRhTaUcsJ!*F+A3oU~V`}?3X{=r2|X)T5AoVO%iP0ir( z@^V9TWa8w>lM|z(4JxIajgJct)K8c&bt?9Acvc4meufc*pTVFUY{N28>F@-N!1f*> zA8c!F?I!UBi5OS0V5Hx~NT0y`v0$WEW2EPl6(K-jE5Cg9Y)KjX=;zNBOVpiMvoD=L zec~7%ySMG#xP8~jBPWj^-M{ZhUTHqqUe2C5oqGz(>$&_g3i>rSlXVH)8^Uhh>4d7R z4Acy|N$nq(+bQ$&wBxtI0i+?~rM=tfCESEvU42fx=e34w{RL_VRAO=L173P-t!mnB zOQ2SdY&iD$T>kDMm;7A*kr5w#`pdx!r^^rQJ#w_kKc@Tm@#7~>96NjnDs8DdklN32 z0Xl=A6CfLLEZe>pHJg5};^L#1J@d>n%c5yd!KP0?gJb67uPG1iq~hY`K0vEr127Dw zGpenAcgK@Vs*dpK)1R3S=4z1=;v4uEKA|?r|8BzCLC=5o7HR|4MC-``jbR(gZGVN& z67T(YSZ6!%-Y3*rSvA?0#fqV5I=VhwIYDENfe4~&e@Oc_}0@HmGUGwko`%3k)`a^C@yn^2jNXCWA68V#4fEqocwI-I6gV zSip-}h4PYegnk--kZcA3bFP)JUgXTNa^E0m zr-tuA227Q(wizMu(NQclE{dT7A@P9}?WY_HZNlDD!g1y4>g;mVmoxC-VLx!W5DOFn zUQnfJMp@q0sIn0ZG{h&`TEtZpQcmq0|ap*m46Ze ztuC-vkZXd+muEG2y=sJRc ze-QI?ynv8&54uZjozNeh?e+n8D|Wl`a;Rsv3VTyKNh-A$m((<%vUyE)DRqF8x3*Td zww5(Ea5CLg5s7)? zhKb3MYSuE|4Wbjb+vk@15pG4l%$9tFuET5VIwt`gI;qBe+z9?ni;q&;;i%zQq@wLk#RP+QA0ojZ_sHkqyb5J zij)E{3xN`PUn%xqu=DayQ$JXBrNwoXHP!aUmWGC2FvkP6VMgqu%V`G7uCvFglPUb= zfR$_g+uDo@Mh{r7nUPBSeP#w-ZySnVJ%exbJiZZOVt5+g=xKbTX%{Yl>aMQva@oaG zhc9*v3;>Gi=iftJ0y6{r;3egN_&aJZT{;K16Q{b$SPnsX#i0B;giqfNBP+=Z-c&%V7i*yeWtxR2cgFeN8sO@5@oYRNhHn& z48cbDl)gGu)1(+X^Sab&aYh-Y7K{BP`IT2*d0?6;Qd)gJXV->rkJU8~N-PRE8xoV$ zC5KPKtzmk7MM?s*ABniz^Dngn5uH=uHqE~OiAOhV=3_E5u)Az02mAcum8q|%VPE@) z49e_^+0+D1PHq4N0vF6Dh*z*kY#iFs)~OaoI`eW4ZT@E4>C!GU+i_~sCJ-cvH3eSN z?yZoIpEKvi%y^xDj1m)IT3_G!^Oq}II_kTelCI0A3EX$j&*zVJB6Na!1C0(WYvq-l zoxK?1$mr&xjUWGvFi2TBiiR?*$HQ{TttU2ZI@pM=mMP?VolK&Z%NdGnhSHeS)Mzww z@l0n!4^OEg0!@ZIHaglPB%=Kc`(ov$n*Ag$1jq zo<_L!OMl(*Q-!U*8OuGdr21(eZ`ZF+Ox&|4 zFpxa4$Ye2%V-Sm=$86#hn|7$xJEC5CDGI)mq%~-_{55m#mIb=44@ke=*q==vKT`R zzzzEuj6p#fkd%v0D)yS675yW3p$~{p*or>53o^bEeUOAwRjtkTnmR{yo3qPS+uv4I zXDcqPvG=JAa2%oTv)vBpMh#-#KmSbq%E1P5c6wO3)Ew4$eA}4@tezS*1LFW3yQl%| zbh$CPec&I*ZCa85RhTv@HYP~Y)l!<9lQ!4bS+nnpueN9BOGb@17<$9NUU%ZeiE@_# zw4}fY#J#t6?UwUWIpHQ{jU#8=N*sh^B)ON*?fd3E3bc?v<-v@o;TVBSUR7IL(%xE; z-x;1T=PzmS@UCNz2Z2G705oo32=J2}62@3k3P1*2Xm$uhO;uTWS!sD`>HaKQ>gA9kJ8ni_uY8oEpryFfah_}oH1h(pI8k2@;rQ&C#g!R5Y#7!z*0j#-jbC{8!$!QetU78 zH4{U-4zmFV^YG%g-{$C=ZnHwFc>A5V-g;|yjn#;{rM0#i#OaX^Q*Ezz)PtF*;ba!= zX22~glQM45II_?`dCG{uOrTDW$R-%*`~!kuAsK^%o^BO{+F8pYIhH$@vkF2@!PYhyn=qWC=HfF zJiWO$m4CvLM*Jv}-Mjfr)SD}UvHU*8Ns>x-1D&RNa)M7T4+Mx#pQ4^|MEn>v-zK#Ieo5)_`u3jeRI#NG`@@2-GkFN0)@_9!vXZhA+fT^x@v(9<)D)$JLRYQC(w7Fc=mGW(giGGY z;2+>u^09m@y<^8h{5BpO*I~jDg5MwFACdrtl*-TM)PaFe0{1j1$KC~Ssa2-*SF)H_rsTK^DjPzcf{C&}<>nifAldYjmHx1#SJgk%y;h+sK|I1-R5 z!kAUsDv@SiUIOn^NjZvoRl~Usx*ZHC;C)yi2%3WDf_cy|QM`<-Y6=-m`P{^(H0Yu& zSXU^NE%jRbtNa4`e(etE>lqbmWWAR^8d?d0KDz8>^wFcbx{0up2SKV}#Qmz%)2k0h zM;~@R`g{hABLSwz-V#W)WfS^!a=gyG`8jBZS(S$B?Ke{{i+08&b#PpOI`}qq{QPB0 zUdY6%Fd!T!j4v!%k{PF7cJs0&Y4HF##-}a0V;MD<13*s}OgS7>q%{-vw3z&VJ!>uU zjeLGCXo|(-YibSM)C)4rexFQcrnHvPWUC~TwboXP#C%61yg7}I+Pc~rc;f47YcZ2+ zYHG2VP{%odo`cZ~=pz@|H3wZhB|+jl=_=mBkoPSVV;LO~0Qjd)rw`NxB2ORMV|aLo zG0+gGhpWZ_*FJdwUZDrb@Xwu5uo*Kjx+F?S&?v(^3Ne*XIY9E^S$@pE7pW1YQkpRa?34GWWv|yraEENY?R)1b9+Da zcTQTHon1?PZDyGE(;p5IL7NqRvJQKD&9+Svjy`qB8dD2pud1e|x(fPU86>v`{}3pv zYd~USL#@543S%P$+Z<1MEXZdkd$U=Nfg+?49y3Ygj0r^Yi&l>rq(aA5?oo za5yRj2L=G$0L172JcT&N{4ojv7==)bfr52jKT^n=fHz)hT%SsDCez5?)u{e_b?RyW!jZMj*Dvl|4evJn3e zU5IYf(4XR!hp~cwSQ&qZW=i9)_Z~^n{#qysEEEN@(vXL?wyLZexulM|QhT|*{1o^Pz-7)$;oE@SO;Mn> z?fePR$ju$^y;tv$!|GMkHwrtFQYPEFl{~3$IbRZ`+5HU zCse8@ECdfCWZ?@+3Q8Dy8jn`J66iUr#UJ z@9p>Y{M&zveM|DYNX#n@Ju?bDGYU$Ip$snj;^LZ`i+QL3S&X$4fcO0zLvo<3tVAxy zK+z0uO~aM~s%`AsfJo3%X*y5y0el$!!3UTu^uhD#e6a5fACIXshGX_7C-1e=i|$CJ zT4;@iqZe0NF$Co64|N8*gOpJUpf2)mq!^~73ocWIl80`1Hl3b9FQ9LyfBmbODof{| z;O~d&N*_>xuOF`Hrl#uZu6B~pjy0^k9Udr#q&-<#pVJ9hq`kD&5Cqc7&`^K>=n-My z?83?fBP z?uV3(|MOPd_U(52_U(V(l9T(SQeSmLL$zi6pSR`)2Mq?;gMZ$llV9K0cRl~(kG$po zX4R>PRTn8d|Npk^o3KKk<(o?HUAb988E^q;o!==^++ zLD`ExZRyGFZnqs}8;CA|l zTx*m+<>N=W+k5o#_|8~=ixvyrxuWW`W_hzMnlS94^Rv)P^XHD~6 z;HNRDnNgO;&-Pug8sKddA5BhgUw3csU}IYg3aobECc9hQFozu7*0uiKu7EIw${#j^ zdeDP#fbhSC#l`vfUvcIdND75NE(b_WAhLbNN?bb*&NtGJedD+ke?OAMgAXVHgoyox)F&e!l}Q)D5Zp4fL*E zY5WaWUSE-ZhR*rnt9g7lERj&*SkAv9*>b5o1N^X4u?+qVy92{1UVQPj=Wd9INC-BM zVnfD-$Rroe_)l5-!pfEP^;+#`pLtLRvA@@C9N}s^kd>8nfKVBDEw@kww1%EXFQ=E# zH^b+*9=m7>43ri+kd7w@l3se*#{gSc4uBofn_hcOSp4vsj*O@RK!sj=<+X*-j}L%8 zb~-&rICS`rjr4tg&7ddHadZN$$x5X^z;X;bM)r>*%^e*fVP?NR1Z6ymSVdjM52^fL zcRR| z1^Ae&sSgl{)GouK01%e zf^*?bz?=kFc@|KtZ!V;tq!&UuC_*F*DOA(9(N9_y`Y!pp`5-=$55^I}D}A+C3VzoM zT}=q1u>+kbe$?S~HiEIlUeqA+Mw4F9tGxEpZQ6+F6pOOkPZN;jm3Vu*t)z_0&_l21 zd97}svmc5n3{{z44GsSO?Hz=stDy(;onj=qpg@Jk*+3$|W%l+qC!sE7&CEbMn7I<8Y_=#6 z>8PkaC#)#S4U|Q%5Bc+IS2v}RLI-kskf;b}s#4~$Bt=FR7PbvS5W_U?KHA%qclO@D zJ-9Hq_uSX0ee|zWZ2@zZFCSk}0Pd{PCaRNT$k~x|p`e^Dv%Iy!LDSN4cc%|o&C5cl z<}K->)vWxXZ%kt1&Yfc-)mA+~5K~o7QlPU*WgIzu{`@&yFS-znvsFQ+er@g zm1O_69|S0ra&3D%&>z!Glz#Y{NGFGRD0BB968P)8nQ)KXEF8~Cer4wn9}!@lRJQWv zP}r7BmW(p8)}+$XpMTD~OxWW}&!7A?=jfrs*_*fSJ8`NMu2V;SRbKw7ef#zvJb3iz z(bIX<*Ic44D$0g(qkWW$R2%g&z!IqG0eJseE!E@2_$pZhvEfJ^@F*-v2M%;~^>=~; zL(<<=*U&ZSaaWd9HFdRnlt310RkXLQs;W&Wy~Il>hGUMVrXGbeazLWfm`zBJhqJA} zM>x5s-9=7LdHecU);Z`I+E-Q%&DUoj4J#oHBzBaHFC#oWZ7@4+HEkY>g_{?J%vG$% zL1>~&P;kUgrO`q37#^G1+Bj5+Qx8dltFNbLfL1^n+&z>=25A`Z$y6#O!+R`==gzr2 zNxf;^}OfH!V0x^&OIcP$L-sK|yqY%lK!TX^Ta_gpG$Gea0w6RHthof?Ee+gNCW zyKM}XRMCTS|7fbK%e^(5zOVpSUE0p>XCi0XHRzVtSJkrRtCChJ4Lz%nRq~GOJ z`U!yM3c?_LZM?tl(znETdro%i-H$&w6*ll2>_8u-R+*&(^{035{&X%lL{x>gTK$fE}V ztZwV*uvM28S2gk)$bpJ#ww0AvR<=3vato+de1m?RSZNM(qiB=cGbjoG<&@w|sADgc z+KZdSDEtbH{wk~m&tmjfVDtq{UQ0`0;GZ7((Iia$CkH=4p*VW<&kp?1D)9ekP@K_yM3h)D-Hv)4eS<^_4l>va=^l$j<&@ z=h4fRMW^%b!cq|0RY{hD?8>gNMR%{dJFl!qChZy&7L36zsjR0AMT|mgR^ADPZq=Qc zUww7)Vp&-gNTkk{QVgANWqG)76jgX-dDv6};_ukxF!Ru2B5BO8v`|LXg}h@YyT&Y7 zv}p6@MT_RmOV%?IO>8<+&hFx$XTL3I341!7+DZ=g>9Cgke-WtoGJbhrl-}Fj)>20< zT3FlC-iK_A4iB^gZS=LhMi-k8=bjE%| zandDI`+EmG!wy;a_$8K@S|ID{tLp3Fh6Mtvy0)dIwgLsO5t0);wKewI!$!vI;SoiX zu@VYu`rx2Xg38a}7Ke6-oDDO&Iz}pyU;=@dR4OC-JfVPrM~DRKa1~q$QLjI78c|-f zke39=%V@|;aFm4762BkC;t~>x%x1gPSX{Hu%;0KB%LUh(@E9>-)27cp8$B9fV1;eo zJX=|6YS~MuRrnG|y<`DGZpib66O0>|GA^YEDKQ_?hnGr`pKSBx@URSWGMz4}S?BUIGgT;gD)?+J;vQWTONV1Uy9k*+i`{IF(}5MazOM8l zh+A`yodQrBd-bIg$9_G1_T0JL6DN+JI9~(}yej|KL#NK>{(3sU4E}Cg)foUr;9^Dj zXa-}t?fVU1ehhN_PyY4w@iW`j|M0`NUwj62^OH|DY(h|d{kNNNw@-0gcps>p0PU5so0Ieg&251^^rcA^k4%nUfs$nlcwgF{Gn`2MY%;JUk?p9kxX9GU#> zpe1|~L8M9iXhey|^DoQReGl~Ocb55(ZsNGGnqzyuK;ZKq?|+Kk z*zcX#7PjO`=;u%W{RJ5phD}?glXg#x3jxi6R;W&%cYG@Xl?OE(Q+o7-9XaTKTzfHS z4hWKpT7su9y7#XSEt@x50;p7bE1dx>g8Y%ly2|r`D_&ZFIP2qh?w~4$j?Ma~9=`LrKwLqCpF28~Rak45R;Ctf2AmpJ_HNse=r9{39N zOF(1vBLAGEsShRjyaVlxae9ea!z#5P;2V)J7KsTH7juLG@E!V&k=*~oa*=aRfjZ4r zR?*M}o=cP&X(uw?(COjb1AXv0fH>OI(+tmmy^~h*fH@4b*CXgkeKiu~H_c>>)kd0%{KXqg`>ci|h2!0kVeSGr%{TUhQW4bTy+rNK*YU=*|yY}w;;@Orth{qO!EKtjjP73D)?7+CZN;u|%l%^daEsTky`;c>PK!?6Mt`jJ)$bG-iR; z2u(}b36t+nrM}Ig0&#Vah8BUf5(HnM_}U?#U}5gQ`_?!!J9gHr>mtk&*+3B|x$wj4 zp-)h`mhh&AItTnGHFb^6w&s?WCX`!h#(@xJ(^)XpP(GK-D?xn`AW<2KS?a?ZJ}Nvk z*kFVsL~jTQ(}jhHhlYlShv7gNGBokOwi5P~85p~z(2?)Oo-&*b6k)rB-Qj#uQ6ZR| zi*4mt%r9JmOCuNT;Ag=x#33n@#wHBn0GSymFU$?_ALE_XRD34FRZ+Z>91AS+h2so;hCWSa({EtWdWQoW zRF%VMbZi^yVza>1E6|Nf7e#nH5hGVe*gCOJAZH5Yz?zzD4n$YFJK?$j58GfLl8-qh z`L3vSjjw42_b$FP=%^vwt0Qz#Bk@2wP(%c>gpdn5A|?vJd;kMR#ZlA#M@w-(H=*yR zVBXBfyfI-vH&L`!gBb($RG21E3N#4)R+kqOPVu5*+ny{Xh&VAn@DbWfg|7=V7-`$Z z{a+xOYcLoo+r_<~u3NWuEg&FYbDY9|%6$NcKQPUoBNRgTN|au|7ICm_SyOY1WX#;# zNVNWI#8|$OAzjXuICps_9KXc+14v6!UyqMkahj&X?`36Wy??ZcQ`FYMGuY8wSG!h& zXl>2^kGl7OkE%@Dho5uiOwD9UGMV&b5>g?A&;b$|4q6-Ceuxs;|1NJ0}ys z!e3X#)wLqhMVf`)0wDwl2_d~sdheOZB$@KRo--LB%Bt+X-}n2znanwpGv_?L-uHE1 zcYQNul5c4STNV694nkcHi4AZtP{V5dU^e9w5EQ5xJ>oZa&c(>NhjmSioCBkTP45TL zW3svAO`Mp;h&+p54Glg$c=%M3@Z94lu~$%HNq8=aF#dY?G7BXFAuq-kVWdIP=_@J# z)+q*7$6QrXTwPUGf>Ecg{(v5R2FoY_z2OK4l3@`eh=BV4~;7EO=m* zU>_~6s1!|FaOXUdhG~8;K5ImGFL?ibs%tc%OxEyBR22QB3gAVf|AYw!Ijc{Eap>eR zQBi6$2EgX9(bN9mrkxh1Y4V0iUt3$>U~U4y$6VdmR8ZjE*2WoPvmS_znGSjbmU zc20*&kgpOwP_cSV0H8e@t$%=8>*tRlM(Gvz@9r1I5(R39@}4O$mJIWr5z*)Xh}4XP zGl}ZQQB!`BY!XeDf#AqUHkd?(C!kw2Lai@4U?yXQZ|)XC_wE$+`xk^oB{x)#Co3so z7-;h9x-idrv#eH)sn=3hUD!~KFQm7juy9DGfXJ@XQV1#}QF&BUxyf6hbSdOcD{C9_ z@{>4uIpk8^N*x|&u~HeZQ6P+ItP)84Nt5~tj)2xB6E3(fX5h>5dcRFUnmKdkj1Sao z+LW~5w&dhwg>4h5;n#X=0=0o07-Kr?YP&nEyziPdYYujLB}|_Vqw2Hua=*J@d+jxo zKXpyDb7y4I9gjZx=|JU3o{&o;`6HQ0KO$s+Q70d@0T@ZE49kaIp=>E$3UH+z~~Umq(ert$mEu#>rWU z9FDi7JS~(!)`|Y%OqGbFG75$PI6{5(M2)3o7agNPha2>Yz9szI1wlNyNw5 ziJ(D)0J0SUXm0ZE>0)}ihD2hu%+fjt2MY*OT3=9rEeT|38l9FJsk-%GD^TZuL7jVe zv8n!4S6pnfnawOrdEMvVUjHBbrmCNol+@6`afc3h&Nt8u$RwT;wTdPYFb{)$IPJGJ zi%|&)qenwgq4J#n%O>){jWv;JO-*Odn$5?KdCoV`Tt4_sEk#sUr`Pl1#6;mdCNc2_ zTFnQ)t--iQiFs%-^Uz|JU_MxYQDPoiOvJFHAEPRq2HN}DI(lK_EhoJl&E;T9C~qd^ zJY02(Wn|ESvBEJ(z?g5f4gq6`+r&U%T1^qfT~wg&)meOUBlehI9WQR7?91|&;xn6J zTel^h#3h+GN)w+#9(`uOMTM zAON{g+|<#>VFMwyc60-)A{y%MXsyP4Q{9S;g+m&`kpV0Et95{gr7%#?DoJlA7C0yd zrB-E%=?P{~of zoV&OBqU-}v_JJ6ohphsMBqJj)uPis0C!1kJWVL$r13vRt*I%WuHk>daN+3mk9b%AA zi8O5vX1Bdk=yk#ONFL&0=yb2^UdE(OgFRtKM{8Ht36R94iU2H)pqF}jxkDjlMd zAI}uep}?yQo`7nJ{6a&66zCHmTjRX?D`E1J7Lk~!w)RuZTwvVfRMKnEtY zP8&z{0iCtE7m7-2;T+Xm2@MO=k0}SRx&do1Dd8vC?S6BXFQ4v3(<<^-N>Lt|VTPP`^ z+9d8bP_1<;TvGU`u+Vb!cC=d@Y1~+~`CJaAH2Bj0^*bl2@<4u;=^O)Y4NW8VSq<88 zDX>lXkbEpTpIIy(Gyk=@$_ce>WgCJm)uU@!}^bf7_SBdyVS; zsk+MJ$B#oi8{BbmPa1HD!uxOB7Y7e!x0}3rD$Sj+b@SHwt3+v2is6;#RCb=ZzNEYw zmha6q*pU|&LE{3hiiWPb-0U-1<*m(q-T1AtprD5CmfFq0(@f&H*5jKto#}(ArOeUW zHvnlLMi#L`#SLIQk;KfH5wApRvpH4F0DO6ne%PwPm64^mStfFbq>ipO3Iph~!-qn@ zr41t0wgHiUuv#gSibWDxKh_j5OBig&xvdvu{d|OEpt7>Qo7Qw!Q#%zdB05&8lA(Qw z)sf@Ih00RBSf3bgi9+V(Y;U#z9!Xg&N1=UDcK0N-uTf}U5e9~6j~oG<4UB3s&}j7c z3y3;q+5}z}6%{vO!Zb2<(i*A3Fsr#)_t8fJ@=xlGPO)|^`G{x6{RmMOq-v5qKmIt5 zsPor|%geVdSz=ESiXZSacp0?Y1+=4){Do%@E(Ndx2ssIS933RB32U@%ZBCs|(bk5} z2h_a3KMCR)wVu)<1?%-{qSdW|{WL(Em^g5hCk?g)z<#cii-fRP32+3%xow>(BK&UT zjINR?BAjZt;vC%-mvTV@)$ZVA=-3)Rz4=(?g)Kcj+YjtJ-!4~BLnQ!VNF`k0YT|FY zDTZSETrxF;2SGu#TmHd&OQl6c4r)!V)2gIQTHM*6A{eOJ2arf8%#GLrvR|ml%i{%|^ykrx4!Y`sM@xk zo_=(In|(`;o|pssg>}jom)vaV0z{%O?v_Q*!IFW=**k|0hoXmGeDR4}up#{xCX!o# z`NKXH?|0Z0AS(x1?c~LaA9{7znX2sRn}Qu@Hf`F3ebVcgo99qVA+L)U+aS;K4~>lS zm!`$#UoI*uH&?=Scu6xrOYM~xDvzEhYLAF$Y46CoP+ZpwcV^Cxa$o{^->%}bXG{B~ zQYmBWZlH94-JFW|9s;7Ng2KleTYCmvX>qOnKH&krTB)t0p&HBC;`{hXaF=%hugSX(Yp!jpmtwfjQ9K8x<*ZO786hse|1; zyVCs+G=(Oom zCqODWVFLEeMp$j6{+35loFLEn?nk;`O;ta+aDu)8+!rljv*tejKN(x+ zKm@^a_dNOJBY&sJ&J7Uo{0r7y^qs~&Kz`2~g}O|=;rdSa{`gUx`Ja3!GUUG z?Epb!18`{4_;}rDr*q+)ITPFW?LA$IHil89k2eNj0>0t;e-`z>3iZDp_5bYfoH)7k z@DEuKeHWa+SOx`oA%Ij3MVE_xGXgmW0`0=HpcTy)~xy9+Y={FoW4{63Wc?6zs#(#8K6{*mYTD^Oj~R6S`g7q z*SZx0VdH-{7Yl<;@O6H!&@q1T9k2|eBp_R`1o|A(*YC(-$Veba!TSxbhv!E3fSIAw zF!R2@&%%Vq(IT zLlQsetNf()p4!r)(#qOSsB$ODWF4jT3SSK+aAJJJ!zI{06KhUR75EN-BawqhT&-3q z3u^XA#;zH2kU~7mEL*#J&m7ANDbq07+&>aJ4j)l8?)E#$(g&jV;4y!FA`}bF0+lO~TCGp4O=#*9P~izj*ktS19$@^C*t=sjXb zlZChlk`;PUn6K9&C99E=uaJ_pNXcrXWOi94g$_1b!AFL(xzgRfPaHUK@*>(f+`9`# zc~s1Yg_{@i>*mr~QeuI4wlxDnA4D6E=22hqB+mJJLEC>y|EmR3F0YMpg;e|(LMzVQO ztzH&I&V2NRq@>{9!b9tgM&tTJg}ot3rrCvgNY{m&{KCScP$XQ;D-<}x+v$LWN~wU$ z30g_{mr*fzUB;Qd;2Sm{x}c&$l+ri+Y&36Zf*^%*aVp}XhH5b9^ybiVS!^Z5GORi= zTtVy%J^_Z2fpwU`acn=v-F~Ob;S!r>yR0^J5WC3F&xX4!R+pCoD@A!r%MkU$#Yx?! zM6gwdqF)Smw7>-mHly%zj**ga!o&z=F<>KN#?H84=nahESZV|*b-@FN1gI?nwnuD@ z1@|#%EFxeK1tm2B|;+m#L z(9TdjXLVJvjkKdU;5rJPbE)IpG8khNVO%R39?gfKi|hjOj0I;lynP zRh$YcXt9_@33&r@ji12mBQ}L(SGvODK6z&^bfBn5wQ`_)NR5^(u1e3?{mxwXAny0! zvBIJz&ez*fmz|OE{U>0R`5L_8JU^a+g=;2coJZnbd+nLKArhTA9yCb~!gSYlsb(&S zCRtgfHpAqVt6&MV;^t^Yb(V>n8Bm*@M}^#<>i#klTiVlS^Dm_z{{9$RMuR5i4zNXf z{84@2{qmBDA>FxF`a66!i8-T3EB^y6JLIl-EdwW+?CpOdS zs32=wr(I^T4A_VIyE;J~)z#5$v06-%z12SO;wo3gg@9H$%sX`U?a85Ng)FBaf;&B_ zFk;iOUaF8vydVbjl3?JT$Z^nJ4>_?7I)}B&8H%uMACe5%T=pSWApir`(Vz5a5B~;gNzk%4{9Peo(0MYHdE{8z+dN{PhDVNm!tBC_Zzo1^|Wh{;B=RwrcKzalD& zwkU_ne}lM8WVgZT%5RaGMWCi4P*VvQ2O>~Yqfk?t>gwj4GWdN`1}WRB^7FweWK_Is z+EOd0^S{lq2F9k6o~jO|QU+swS6UkE|BQ;KUtG52cfZ5_qN;w45>n0c2hRXL1nyF7 zD9}rcWGQc)4-a`ayT-T@T+>|BIOq!MtZOt?RYl$P@WlN6mhbbc+uA@pXH>lKw`HOI z)RUpiYmLTcYqNC1tDD}@-qylkrwp2+z`)V)C`{KFzz`41dpxb~apYwY@^TyU64h04 zxwN(*`)omTH*m7OVC~tlqpogfC_n$$u>!1<8=Bi;x~8|=LvCBXJXwod#KGa?C&tCa zjnZOuA#aTzH##xFpyTYOsG1g0(5QFU{wuwTjfjtrx1Gt5O8@vrfB#*(-hA_|4`9vx z9W5(fE0x*pHQ!>#`9s@4)a`H#(E`0Cb|}2;aS)n0*+C9wauZ12Sx8*ICZB6o-9Ap0 z3yS$;?ClKmQFH-D7Y7)DP@G$>Q-R|V!8?Unx>rCw6yXtF;3o)T*S`m~?ntS@h$)aA?gVCV2p_Gv- zez@gDptjUUj!c?%{J2a8*>tJ-494*@(JY#OEDap}%A9%`<1t zoHJ`ms06zeumCAvTo5NM#Tu_f95oMtziU$DUAl<4+AQ0@`9IjJg}k{Z`+PwO)>ip> zm*Iu`(xv=@%egr?XJ3RlFU0dA=RoK!5Az|LHy@FUm&L6OYMi?Q_dG+_nO+-L1) zy-aa^ja?X&TB_@PCfv3#(NReGBg(4VTk8w4r!TB;?S%hfsl5~Bf>npF?~t|D%!hP# zwpAdi!U}Vr2s#!Q_QkbOSk!g(^tt52yAN8k)N9cnQM31YYIcBC(mvAF*Y5-BKkwc? z*l?QbItTj%7gc?OF3@!AmDJx7Vq=CZUGCUADWI^Tt;5QI&CrS1fHH;enVvqU)D+iQ zo`tGxo}B9MumIIB^$$Zu`;yMGJ-`p{DeDx`^?Cw}9PlDW89bhHtPSxYmoGQM$)H&4 zuf*K*(o6S8E3IcXZ{D0~)5PBYl8Kpm+XCS7+$-?iAm=!%kzcxX;W)O|4F9qh8UtqB z3mLA!*W~ruy)z6pKre0KLai!g?Io3gyz;y6j-5urj;Eii8H8~xI6{=`4j0>EAWx1R zEI+yqG)Ja5(8i$-_wO3C>7#>s@{4oM(FT>5dp;X@%be`o%lSCNy(p>_Ja-~#-GPmK z$b%0qoB)Y-xJD&|cUy}~2_o%?hzNhBLhiDd;+ie(D4t%s?ff?%e6-7q2T{ZJt{%{v z`+)tlr=uEc(Q2Ve?e_LIvBKSb{6?YsjEOXO(_Iq-pXZ_ANDtA#YNOx1Dp`OUrMkJL zs8On$OF>_ausf^})?=EobJ)U)2JMUrhFdDe-cPHxr60gos+*IJ)Xmue@#p~KbdH9z@CT4t=TIl6q@*OO9j)hn_~D0htq29n5XlJb+_p**NwsrJBT419 zH%vbE%ex^j{5H=XL#K?}qU|MEHwwCU?$Z*x;i0)yBM)~|4;g4^bob{1_W(q%EczU9 zVcata2gK zC7nh|`lynwvyUh>DpLRu!PtRt6w2&A%OD#DvYzAV^;86c^#%-AuF=scHKeNt8=;;q zqEQa(==@O!VWcAg$fVCHa7;|W-uCBWqw7TKQ+Zwl?&O0b*9~l25Bcm2AnuW_o z=ACy;upx9S>%6yZTd?587hx}U^k^piRVV|~6`dXYP}2Sm*q%&QjMS}h>+QUwqb(L6 z9~g0Ydpm^7S9N#S(H9XoX|eHXY>#lP7LIXvERC(C$A7D5BCJ}tH&i&D7mo45bF{dB z>A4``-tofmsBm-%&kg>{b9&+4(ZVrHI0gvMNq*(I2;ttz!tu0l^b($LegEwBDAe&c~__GH}rAO zuH%>cdGvArDdykM*FF1=U+nODYxAJ`hB`fvc24fM_xxy!$`@O-U+w*#y~i()03qTK zFSt1WwNb#c_4vi1z};`6QD5<>FUqqQjrxKjmQatg)W>dhJ7`nF62hF_P*u5D);

Bd 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≠1AU|K%)`OS25Z{|o%e%0D+5{>04U9*Q*1!q^8U;HJTG%Y?XTKK#Ml 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 literal 0 HcmV?d00001 diff --git a/docu.typ b/docu.typ new file mode 100644 index 0000000..e8436a5 --- /dev/null +++ b/docu.typ @@ -0,0 +1,36 @@ +#import "@preview/cmarker:0.1.6" + +#set text( + size: 10pt, + font: ("inter") +) + += Metal-Stack Documentation + +#pagebreak() + +#outline(indent: auto, depth: 2) + +#pagebreak() + +#cmarker.render(read("./docs/docs/01-introduction.md")) +#cmarker.render(read("./docs/docs/02-quickstart.md")) + += Concepts +#cmarker.render(read("./docs/docs/03-Concepts/architecture.md"), h1-level: 2, + scope: (image: (path, alt: none) => image("docs/docs/03-Concepts/" + path, alt: alt))) +#cmarker.render(read("./docs/docs/03-Concepts/networking.md"), h1-level: 2, + scope: (image: (path, alt: none) => image("docs/docs/03-Concepts/" + path, alt: alt))) +#cmarker.render(read("./docs/docs/03-Concepts/kubernetes.md"), h1-level: 2) +#cmarker.render(read("./docs/docs/03-Concepts/isolated-kubernetes.md"), h1-level: 2, + scope: (image: (path, alt: none) => image("docs/docs/03-Concepts/" + path, alt: alt))) + + +#cmarker.render(read("./docs/docs/03-Concepts/comparison.md"), h1-level: 2) + += For Operators + + += For Users + += Release Notes \ No newline at end of file From 191648fa6e0cdfccee57dc4120611a1bd91e60b8 Mon Sep 17 00:00:00 2001 From: ostempel Date: Wed, 30 Jul 2025 11:06:12 +0200 Subject: [PATCH 03/15] docs-to-pdf docusaurus plugin --- README.md | 47 +++++++++++++++++-- docs/docs/03-Concepts/architecture.md | 12 +++-- docs/docs/05-For Users/01-client_libraries.md | 1 + 3 files changed, 52 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 1da967a..2c23e13 100644 --- a/README.md +++ b/README.md @@ -38,7 +38,7 @@ The used framework to generate docs is [docusaurus](https://docusaurus.io). In order to not break links of posts, blog articles and shared documents we want to provide full backwards-compatibility. This means we need to ensure existing links still work with the new documentation. -The file /static/_redirects contains a list of all paths of the old docs-sites. The file is formatted to create server-side-redirects on netlify, following the documentation here: https://docs.netlify.com/routing/redirects/ +The file /static/\_redirects contains a list of all paths of the old docs-sites. The file is formatted to create server-side-redirects on netlify, following the documentation here: https://docs.netlify.com/routing/redirects/ ## Docs @@ -95,43 +95,84 @@ tags: ``` + ## Setup & Build + Reqires Bun as .js runtime. Run the following command to install dependencies: + ``` bun install ``` To generate a local preview use: + ``` bun run start ``` To update the dependencies for the Reference pages: + ``` bun run fetch-readmes ``` + ## Component references -Ensure first, that all files in the docs folder are updated and ready to freeze. Also execute `bun run fetch-readmes` to update files from components and apis. + +Ensure first, that all files in the docs folder are updated and ready to freeze. Also execute `bun run fetch-readmes` to update files from components and apis. All components are referenced in the `/scripts/components.json` file. Use this minimal template to add a new component: + ```json { "name": "metalctl", // name of the component, will appear in the navigation "releasePath": "binaries.metal-stack.metalctl.version", // json-path of the version or tag in the release-vector - "repo": "metal-stack/metalctl", // component repository, + "repo": "metal-stack/metalctl", // component repository, "position": 1, // use this property to sort the navigation subdirectories "withDocs": true // set to true to retrieve further .md files from a /docs folder. With false, only the README.md will be retrieved. }, ``` + The `tag` property will be updated automatically from the release-vector file. + ## Document Versioning + You create a new version with: + ``` bun run docusaurus docs:version v0.21.6 ``` + Now, the new version will be create and the latest files will be copied to the "`versioned`" folders. +## PDF Generation + +For now we have different pdf-generation approaches: + +- typst +- pupeteer +- [docusuraus-plugin](https://github.com/jean-humann/docs-to-pdf) + +### Docusaurus Plugin + +The approach: + +- reference first doc-page +- plugin crawls through docs by using "Next"-Button +- gathers all rendered pages +- generates based on this a html and then a pdf + +In order to stop split the pdf we have two options: + +- `excludePaths` parameter: still every sub-url gets visited +- disable "Next"-Button on last section of page/pdf + +Command to test: + +```sh +npx docs-to-pdf --initialDocURLs="http://localhost:3000/docs/introduction" --contentSelector="article" --paginationSelector="a.pagination-nav__link.pagination-nav__link--next" --excludeSelectors=".margin-vert--xl a,[class^='tocCollapsible'],.breadcrumbs,.theme-edit-this-page" --coverImage="https://metal-stack.io/v1.0_metalstack_io_logo_RGB_combination_mark_for_black.svg" --coverTitle="Metal-Stack Documentation" --cssStyle="body{font-size: 10px}" +``` + ## Comparison ### Benefits diff --git a/docs/docs/03-Concepts/architecture.md b/docs/docs/03-Concepts/architecture.md index cf0b265..a1917e0 100644 --- a/docs/docs/03-Concepts/architecture.md +++ b/docs/docs/03-Concepts/architecture.md @@ -58,15 +58,17 @@ Some notes on this picture: A _partition_ is our term for describing hardware in the data center controlled by the metal-stack with all the hardware participating in the same network topology. Being in the same network topology causes the hardware inside a partition to build a failure domain. Even though the network topology for running the metal-stack is required to be redundant by design, you should consider setting up multiple partitions. With multiple partitions it is possible for users to maintain availability of their applications by spreading them across the partitions. Installing partitions in multiple data centers would be even better in regards of fail-safe application performance, which would even tolerate the meltdown of a data center. -!!! tip +:::tip - In our setups, we encode the name of a region and a zone name into our partition names. However, we do not have dedicated entities for regions and zones in our APIs. +In our setups, we encode the name of a region and a zone name into our partition names. However, we do not have dedicated entities for regions and zones in our APIs. - A **region** is a geographic area in which data centers are located. +A **region** is a geographic area in which data centers are located. - **Zones** are geographic locations in a region usually in different fire compartments. Regions can consist of several zones. +**Zones** are geographic locations in a region usually in different fire compartments. Regions can consist of several zones. - A zone can consist of several **partitions**. Usually, a partition spans a rack or a group of racks. +A zone can consist of several **partitions**. Usually, a partition spans a rack or a group of racks. + +::: We strongly advise to group your hardware into racks that are specifically assembled for running metal-stack. When using modular rack design, the amount of compute resources of a partition can easily be extended by adding more racks to your partition. diff --git a/docs/docs/05-For Users/01-client_libraries.md b/docs/docs/05-For Users/01-client_libraries.md index c426bc4..f94b8b1 100644 --- a/docs/docs/05-For Users/01-client_libraries.md +++ b/docs/docs/05-For Users/01-client_libraries.md @@ -1,6 +1,7 @@ --- slug: /client-libraries title: Client Libraries +pagination_next: null sidebar_position: 1 --- From 7197d7a09c7864011cc58229bb359bd350b1ed8e Mon Sep 17 00:00:00 2001 From: Botond Gal Date: Wed, 30 Jul 2025 14:54:37 +0200 Subject: [PATCH 04/15] takeover content from current docs --- docs/contributing/02-roadmap.md | 6 +- docs/contributing/Proposals/MEP18/README.md | 5 - docs/contributing/Proposals/MEP4/README.md | 33 +- docs/docs/01-home.md | 15 + .../01-quickstart.md} | 6 +- .../02-why metal stack.md} | 57 +- docs/docs/02-General/03-why bare metal.md | 30 ++ .../02-General/04-flavors-of-metalstack.md | 29 + .../{architecture.md => 01-architecture.md} | 22 +- docs/docs/03-Concepts/02-user-management.md | 67 +++ .../01-theory.md} | 27 +- .../03-Concepts/03-Network/02-firewalls.md | 3 + .../03-Network/2-layer-leaf-spine.drawio | 37 ++ .../03-Network/2-layer-leaf-spine.svg | 1 + .../03-Network/3-layer-leaf-spine.drawio | 55 ++ .../03-Network/3-layer-leaf-spine.svg | 1 + .../03-Concepts/03-Network/evpn-vtep.drawio | 50 ++ .../docs/03-Concepts/03-Network/evpn-vtep.svg | 1 + .../network-physical-wiring.drawio.svg | 510 ++++++++++++++++++ .../03-Network/network-vrfs.drawio.svg | 496 +++++++++++++++++ .../03-Concepts/03-Network/vrf-simple.drawio | 41 ++ .../03-Concepts/03-Network/vrf-simple.svg | 1 + .../01-gardener.md} | 81 +-- .../04-Kubernetes/02-cluster-api.md | 17 + .../03-cloud-controller-manager.md | 10 + .../04-firewall-controller-manager.md | 14 + .../05-isolated-clusters.md} | 57 +- .../04-Kubernetes/06-gpu-workers.md} | 10 +- .../04-Kubernetes/07-storage.md} | 11 +- .../isolated-kubernetes.drawio.svg | 284 ++++++++++ docs/docs/03-Concepts/comparison.md | 59 -- .../hardware.md => 01-hardware.md} | 57 +- .../02-Overview/_category_.json | 4 - ...ing-systems.md => 02-operating-systems.md} | 10 +- .../deployment.md => 03-deployment-guide.md} | 116 ++-- .../_category_.json | 4 - .../04-Installation-Administration/updates.md | 51 -- docs/docs/04-For Operators/04-maintenance.md | 35 ++ .../monitoring.md => 05-monitoring.md} | 4 +- .../troubleshoot.md => 06-troubleshoot.md} | 42 +- .../assets => }/mgmt_net_layer3.drawio | 0 .../assets => }/mgmt_net_layer3.png | 0 .../assets => }/monitoring-stack.svg | 0 docs/docs/04-For Operators/starter.jpg | Bin 0 -> 109351 bytes .../05-For CISOs/Security/01-principles.md | 52 ++ docs/docs/05-For CISOs/Security/02-sbom.md | 69 +++ .../05-For CISOs/Security/03-cryptography.md | 31 ++ docs/docs/05-For CISOs/artifacts-signing.md | 7 + .../docs/05-For CISOs/communication-matrix.md | 7 + docs/docs/05-For CISOs/integration-checks.md | 6 + docs/docs/05-For CISOs/network.md | 7 + docs/docs/05-For CISOs/rbac.md | 34 ++ docs/docs/05-For CISOs/remote-access.md | 6 + .../05-For CISOs/security-vulnerability.md | 6 + .../technologies-and-protocols.md | 6 + .../01-client_libraries.md | 0 .../v0.20.5.md | 0 .../v0.20.6.md | 0 .../API/masterdata-api/masterdata-api.md | 0 .../API/metal-api/metal-api.md | 0 .../API/metalctl/metalctl.md | 0 .../API/metalctl/metalctl_audit.md | 0 .../API/metalctl/metalctl_audit_describe.md | 0 .../API/metalctl/metalctl_audit_list.md | 0 .../API/metalctl/metalctl_completion.md | 0 .../API/metalctl/metalctl_completion_bash.md | 0 .../API/metalctl/metalctl_completion_fish.md | 0 .../metalctl_completion_powershell.md | 0 .../API/metalctl/metalctl_completion_zsh.md | 0 .../API/metalctl/metalctl_context.md | 0 .../API/metalctl/metalctl_context_short.md | 0 .../API/metalctl/metalctl_filesystemlayout.md | 0 .../metalctl_filesystemlayout_apply.md | 0 .../metalctl_filesystemlayout_create.md | 0 .../metalctl_filesystemlayout_delete.md | 0 .../metalctl_filesystemlayout_describe.md | 0 .../metalctl_filesystemlayout_edit.md | 0 .../metalctl_filesystemlayout_list.md | 0 .../metalctl_filesystemlayout_match.md | 0 .../metalctl/metalctl_filesystemlayout_try.md | 0 .../metalctl_filesystemlayout_update.md | 0 .../API/metalctl/metalctl_firewall.md | 0 .../API/metalctl/metalctl_firewall_create.md | 0 .../metalctl/metalctl_firewall_describe.md | 0 .../API/metalctl/metalctl_firewall_list.md | 0 .../API/metalctl/metalctl_firewall_ssh.md | 0 .../API/metalctl/metalctl_firmware.md | 0 .../API/metalctl/metalctl_firmware_delete.md | 0 .../API/metalctl/metalctl_firmware_list.md | 0 .../API/metalctl/metalctl_firmware_upload.md | 0 .../metalctl/metalctl_firmware_upload_bios.md | 0 .../metalctl/metalctl_firmware_upload_bmc.md | 0 .../API/metalctl/metalctl_health.md | 0 .../API/metalctl/metalctl_image.md | 0 .../API/metalctl/metalctl_image_apply.md | 0 .../API/metalctl/metalctl_image_create.md | 0 .../API/metalctl/metalctl_image_delete.md | 0 .../API/metalctl/metalctl_image_describe.md | 0 .../API/metalctl/metalctl_image_edit.md | 0 .../API/metalctl/metalctl_image_list.md | 0 .../API/metalctl/metalctl_image_update.md | 0 .../API/metalctl/metalctl_login.md | 0 .../API/metalctl/metalctl_logout.md | 0 .../API/metalctl/metalctl_machine.md | 0 .../API/metalctl/metalctl_machine_apply.md | 0 .../API/metalctl/metalctl_machine_console.md | 0 .../metalctl_machine_consolepassword.md | 0 .../API/metalctl/metalctl_machine_create.md | 0 .../API/metalctl/metalctl_machine_delete.md | 0 .../API/metalctl/metalctl_machine_describe.md | 0 .../API/metalctl/metalctl_machine_edit.md | 0 .../API/metalctl/metalctl_machine_identify.md | 0 .../metalctl/metalctl_machine_identify_off.md | 0 .../metalctl/metalctl_machine_identify_on.md | 0 .../API/metalctl/metalctl_machine_ipmi.md | 0 .../metalctl/metalctl_machine_ipmi_events.md | 0 .../API/metalctl/metalctl_machine_issues.md | 0 .../metalctl/metalctl_machine_issues_list.md | 0 .../API/metalctl/metalctl_machine_list.md | 0 .../API/metalctl/metalctl_machine_lock.md | 0 .../API/metalctl/metalctl_machine_logs.md | 0 .../API/metalctl/metalctl_machine_power.md | 0 .../metalctl/metalctl_machine_power_bios.md | 0 .../metalctl/metalctl_machine_power_cycle.md | 0 .../metalctl/metalctl_machine_power_disk.md | 0 .../metalctl/metalctl_machine_power_off.md | 0 .../API/metalctl/metalctl_machine_power_on.md | 0 .../metalctl/metalctl_machine_power_pxe.md | 0 .../metalctl/metalctl_machine_power_reset.md | 0 .../metalctl/metalctl_machine_reinstall.md | 0 .../API/metalctl/metalctl_machine_reserve.md | 0 .../metalctl_machine_update-firmware.md | 0 .../metalctl_machine_update-firmware_bios.md | 0 .../metalctl_machine_update-firmware_bmc.md | 0 .../API/metalctl/metalctl_machine_update.md | 0 .../API/metalctl/metalctl_markdown.md | 0 .../API/metalctl/metalctl_network.md | 0 .../API/metalctl/metalctl_network_allocate.md | 0 .../API/metalctl/metalctl_network_apply.md | 0 .../API/metalctl/metalctl_network_create.md | 0 .../API/metalctl/metalctl_network_delete.md | 0 .../API/metalctl/metalctl_network_describe.md | 0 .../API/metalctl/metalctl_network_edit.md | 0 .../API/metalctl/metalctl_network_free.md | 0 .../API/metalctl/metalctl_network_ip.md | 0 .../API/metalctl/metalctl_network_ip_apply.md | 0 .../metalctl/metalctl_network_ip_create.md | 0 .../metalctl/metalctl_network_ip_delete.md | 0 .../metalctl/metalctl_network_ip_describe.md | 0 .../API/metalctl/metalctl_network_ip_edit.md | 0 .../metalctl/metalctl_network_ip_issues.md | 0 .../API/metalctl/metalctl_network_ip_list.md | 0 .../metalctl/metalctl_network_ip_update.md | 0 .../API/metalctl/metalctl_network_list.md | 0 .../API/metalctl/metalctl_network_update.md | 0 .../API/metalctl/metalctl_partition.md | 0 .../API/metalctl/metalctl_partition_apply.md | 0 .../metalctl/metalctl_partition_capacity.md | 0 .../API/metalctl/metalctl_partition_create.md | 0 .../API/metalctl/metalctl_partition_delete.md | 0 .../metalctl/metalctl_partition_describe.md | 0 .../API/metalctl/metalctl_partition_edit.md | 0 .../API/metalctl/metalctl_partition_list.md | 0 .../API/metalctl/metalctl_partition_update.md | 0 .../API/metalctl/metalctl_project.md | 0 .../API/metalctl/metalctl_project_apply.md | 0 .../API/metalctl/metalctl_project_create.md | 0 .../API/metalctl/metalctl_project_delete.md | 0 .../API/metalctl/metalctl_project_describe.md | 0 .../API/metalctl/metalctl_project_edit.md | 0 .../API/metalctl/metalctl_project_list.md | 0 .../API/metalctl/metalctl_project_update.md | 0 .../API/metalctl/metalctl_size.md | 0 .../API/metalctl/metalctl_size_apply.md | 0 .../API/metalctl/metalctl_size_create.md | 0 .../API/metalctl/metalctl_size_delete.md | 0 .../API/metalctl/metalctl_size_describe.md | 0 .../API/metalctl/metalctl_size_edit.md | 0 .../metalctl/metalctl_size_imageconstraint.md | 0 .../metalctl_size_imageconstraint_apply.md | 0 .../metalctl_size_imageconstraint_create.md | 0 .../metalctl_size_imageconstraint_delete.md | 0 .../metalctl_size_imageconstraint_describe.md | 0 .../metalctl_size_imageconstraint_edit.md | 0 .../metalctl_size_imageconstraint_list.md | 0 .../metalctl_size_imageconstraint_try.md | 0 .../metalctl_size_imageconstraint_update.md | 0 .../API/metalctl/metalctl_size_list.md | 0 .../API/metalctl/metalctl_size_reservation.md | 0 .../metalctl_size_reservation_apply.md | 0 .../metalctl_size_reservation_create.md | 0 .../metalctl_size_reservation_delete.md | 0 .../metalctl_size_reservation_describe.md | 0 .../metalctl_size_reservation_edit.md | 0 .../metalctl_size_reservation_list.md | 0 .../metalctl_size_reservation_update.md | 0 .../metalctl_size_reservation_usage.md | 0 .../API/metalctl/metalctl_size_suggest.md | 0 .../API/metalctl/metalctl_size_update.md | 0 .../API/metalctl/metalctl_switch.md | 0 .../metalctl_switch_connected-machines.md | 0 .../API/metalctl/metalctl_switch_console.md | 0 .../API/metalctl/metalctl_switch_delete.md | 0 .../API/metalctl/metalctl_switch_describe.md | 0 .../API/metalctl/metalctl_switch_detail.md | 0 .../API/metalctl/metalctl_switch_edit.md | 0 .../API/metalctl/metalctl_switch_list.md | 0 .../API/metalctl/metalctl_switch_migrate.md | 0 .../API/metalctl/metalctl_switch_port.md | 0 .../metalctl/metalctl_switch_port_describe.md | 0 .../API/metalctl/metalctl_switch_port_down.md | 0 .../API/metalctl/metalctl_switch_port_up.md | 0 .../API/metalctl/metalctl_switch_replace.md | 0 .../API/metalctl/metalctl_switch_ssh.md | 0 .../API/metalctl/metalctl_switch_update.md | 0 .../API/metalctl/metalctl_tenant.md | 0 .../API/metalctl/metalctl_tenant_apply.md | 0 .../API/metalctl/metalctl_tenant_create.md | 0 .../API/metalctl/metalctl_tenant_delete.md | 0 .../API/metalctl/metalctl_tenant_describe.md | 0 .../API/metalctl/metalctl_tenant_edit.md | 0 .../API/metalctl/metalctl_tenant_list.md | 0 .../API/metalctl/metalctl_tenant_update.md | 0 .../API/metalctl/metalctl_update.md | 0 .../API/metalctl/metalctl_update_check.md | 0 .../API/metalctl/metalctl_update_do.md | 0 .../API/metalctl/metalctl_version.md | 0 .../API/metalctl/metalctl_vpn.md | 0 .../API/metalctl/metalctl_vpn_key.md | 0 .../API/metalctl/metalctl_whoami.md | 0 .../Network/go-ipam/go-ipam.md | 0 .../Network/metal-bmc/metal-bmc.md | 0 .../Network/metal-core/metal-core.md | 0 .../metal-console/metal-console.md | 0 .../metal-hammer/metal-hammer.md | 0 .../Storage/csi-lvm/csi-lvm.md | 0 .../Storage/duros-controller/MULTITENANCY.md | 0 .../assets/architecture.drawio.svg | 0 .../assets/dataplane.drawio.svg | 0 .../duros-controller/assets/nvme-over-tcp.jpg | Bin .../duros-controller/duros-controller.md | 0 docusaurus.config.ts | 2 +- scripts/fetch-readmes.js | 2 +- 243 files changed, 2163 insertions(+), 431 deletions(-) create mode 100644 docs/docs/01-home.md rename docs/docs/{02-quickstart.md => 02-General/01-quickstart.md} (90%) rename docs/docs/{01-introduction.md => 02-General/02-why metal stack.md} (56%) create mode 100644 docs/docs/02-General/03-why bare metal.md create mode 100644 docs/docs/02-General/04-flavors-of-metalstack.md rename docs/docs/03-Concepts/{architecture.md => 01-architecture.md} (93%) create mode 100644 docs/docs/03-Concepts/02-user-management.md rename docs/docs/03-Concepts/{networking.md => 03-Network/01-theory.md} (95%) create mode 100644 docs/docs/03-Concepts/03-Network/02-firewalls.md create mode 100644 docs/docs/03-Concepts/03-Network/2-layer-leaf-spine.drawio create mode 100644 docs/docs/03-Concepts/03-Network/2-layer-leaf-spine.svg create mode 100644 docs/docs/03-Concepts/03-Network/3-layer-leaf-spine.drawio create mode 100644 docs/docs/03-Concepts/03-Network/3-layer-leaf-spine.svg create mode 100644 docs/docs/03-Concepts/03-Network/evpn-vtep.drawio create mode 100644 docs/docs/03-Concepts/03-Network/evpn-vtep.svg create mode 100644 docs/docs/03-Concepts/03-Network/network-physical-wiring.drawio.svg create mode 100644 docs/docs/03-Concepts/03-Network/network-vrfs.drawio.svg create mode 100644 docs/docs/03-Concepts/03-Network/vrf-simple.drawio create mode 100644 docs/docs/03-Concepts/03-Network/vrf-simple.svg rename docs/docs/03-Concepts/{kubernetes.md => 04-Kubernetes/01-gardener.md} (74%) create mode 100644 docs/docs/03-Concepts/04-Kubernetes/02-cluster-api.md create mode 100644 docs/docs/03-Concepts/04-Kubernetes/03-cloud-controller-manager.md create mode 100644 docs/docs/03-Concepts/04-Kubernetes/04-firewall-controller-manager.md rename docs/docs/03-Concepts/{isolated-kubernetes.md => 04-Kubernetes/05-isolated-clusters.md} (95%) rename docs/docs/{04-For Operators/02-Overview/gpu-support.md => 03-Concepts/04-Kubernetes/06-gpu-workers.md} (96%) rename docs/docs/{04-For Operators/02-Overview/storage.md => 03-Concepts/04-Kubernetes/07-storage.md} (83%) create mode 100644 docs/docs/03-Concepts/04-Kubernetes/isolated-kubernetes.drawio.svg delete mode 100644 docs/docs/03-Concepts/comparison.md rename docs/docs/04-For Operators/{02-Overview/hardware.md => 01-hardware.md} (59%) delete mode 100644 docs/docs/04-For Operators/02-Overview/_category_.json rename docs/docs/04-For Operators/{02-Overview/operating-systems.md => 02-operating-systems.md} (90%) rename docs/docs/04-For Operators/{04-Installation-Administration/deployment.md => 03-deployment-guide.md} (88%) delete mode 100644 docs/docs/04-For Operators/04-Installation-Administration/_category_.json delete mode 100644 docs/docs/04-For Operators/04-Installation-Administration/updates.md create mode 100644 docs/docs/04-For Operators/04-maintenance.md rename docs/docs/04-For Operators/{04-Installation-Administration/monitoring.md => 05-monitoring.md} (97%) rename docs/docs/04-For Operators/{04-Installation-Administration/troubleshoot.md => 06-troubleshoot.md} (90%) rename docs/docs/04-For Operators/{04-Installation-Administration/assets => }/mgmt_net_layer3.drawio (100%) rename docs/docs/04-For Operators/{04-Installation-Administration/assets => }/mgmt_net_layer3.png (100%) rename docs/docs/04-For Operators/{04-Installation-Administration/assets => }/monitoring-stack.svg (100%) create mode 100644 docs/docs/04-For Operators/starter.jpg create mode 100644 docs/docs/05-For CISOs/Security/01-principles.md create mode 100644 docs/docs/05-For CISOs/Security/02-sbom.md create mode 100644 docs/docs/05-For CISOs/Security/03-cryptography.md create mode 100644 docs/docs/05-For CISOs/artifacts-signing.md create mode 100644 docs/docs/05-For CISOs/communication-matrix.md create mode 100644 docs/docs/05-For CISOs/integration-checks.md create mode 100644 docs/docs/05-For CISOs/network.md create mode 100644 docs/docs/05-For CISOs/rbac.md create mode 100644 docs/docs/05-For CISOs/remote-access.md create mode 100644 docs/docs/05-For CISOs/security-vulnerability.md create mode 100644 docs/docs/05-For CISOs/technologies-and-protocols.md rename docs/docs/{05-For Users => 06-For Users}/01-client_libraries.md (100%) rename docs/docs/{06-Release Notes => 07-Release Notes}/v0.20.5.md (100%) rename docs/docs/{06-Release Notes => 07-Release Notes}/v0.20.6.md (100%) rename docs/docs/{07-References => 08-References}/API/masterdata-api/masterdata-api.md (100%) rename docs/docs/{07-References => 08-References}/API/metal-api/metal-api.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_audit.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_audit_describe.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_audit_list.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_completion.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_completion_bash.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_completion_fish.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_completion_powershell.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_completion_zsh.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_context.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_context_short.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_filesystemlayout.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_filesystemlayout_apply.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_filesystemlayout_create.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_filesystemlayout_delete.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_filesystemlayout_describe.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_filesystemlayout_edit.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_filesystemlayout_list.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_filesystemlayout_match.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_filesystemlayout_try.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_filesystemlayout_update.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_firewall.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_firewall_create.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_firewall_describe.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_firewall_list.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_firewall_ssh.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_firmware.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_firmware_delete.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_firmware_list.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_firmware_upload.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_firmware_upload_bios.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_firmware_upload_bmc.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_health.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_image.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_image_apply.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_image_create.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_image_delete.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_image_describe.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_image_edit.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_image_list.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_image_update.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_login.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_logout.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_apply.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_console.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_consolepassword.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_create.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_delete.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_describe.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_edit.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_identify.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_identify_off.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_identify_on.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_ipmi.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_ipmi_events.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_issues.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_issues_list.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_list.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_lock.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_logs.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_power.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_power_bios.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_power_cycle.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_power_disk.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_power_off.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_power_on.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_power_pxe.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_power_reset.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_reinstall.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_reserve.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_update-firmware.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_update-firmware_bios.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_update-firmware_bmc.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_machine_update.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_markdown.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_network.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_network_allocate.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_network_apply.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_network_create.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_network_delete.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_network_describe.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_network_edit.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_network_free.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_network_ip.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_network_ip_apply.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_network_ip_create.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_network_ip_delete.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_network_ip_describe.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_network_ip_edit.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_network_ip_issues.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_network_ip_list.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_network_ip_update.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_network_list.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_network_update.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_partition.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_partition_apply.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_partition_capacity.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_partition_create.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_partition_delete.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_partition_describe.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_partition_edit.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_partition_list.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_partition_update.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_project.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_project_apply.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_project_create.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_project_delete.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_project_describe.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_project_edit.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_project_list.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_project_update.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_apply.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_create.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_delete.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_describe.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_edit.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_imageconstraint.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_imageconstraint_apply.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_imageconstraint_create.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_imageconstraint_delete.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_imageconstraint_describe.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_imageconstraint_edit.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_imageconstraint_list.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_imageconstraint_try.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_imageconstraint_update.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_list.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_reservation.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_reservation_apply.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_reservation_create.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_reservation_delete.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_reservation_describe.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_reservation_edit.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_reservation_list.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_reservation_update.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_reservation_usage.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_suggest.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_size_update.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_switch.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_switch_connected-machines.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_switch_console.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_switch_delete.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_switch_describe.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_switch_detail.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_switch_edit.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_switch_list.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_switch_migrate.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_switch_port.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_switch_port_describe.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_switch_port_down.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_switch_port_up.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_switch_replace.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_switch_ssh.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_switch_update.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_tenant.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_tenant_apply.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_tenant_create.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_tenant_delete.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_tenant_describe.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_tenant_edit.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_tenant_list.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_tenant_update.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_update.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_update_check.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_update_do.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_version.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_vpn.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_vpn_key.md (100%) rename docs/docs/{07-References => 08-References}/API/metalctl/metalctl_whoami.md (100%) rename docs/docs/{07-References => 08-References}/Network/go-ipam/go-ipam.md (100%) rename docs/docs/{07-References => 08-References}/Network/metal-bmc/metal-bmc.md (100%) rename docs/docs/{07-References => 08-References}/Network/metal-core/metal-core.md (100%) rename docs/docs/{07-References => 08-References}/Partition Management/metal-console/metal-console.md (100%) rename docs/docs/{07-References => 08-References}/Partition Management/metal-hammer/metal-hammer.md (100%) rename docs/docs/{07-References => 08-References}/Storage/csi-lvm/csi-lvm.md (100%) rename docs/docs/{07-References => 08-References}/Storage/duros-controller/MULTITENANCY.md (100%) rename docs/docs/{07-References => 08-References}/Storage/duros-controller/assets/architecture.drawio.svg (100%) rename docs/docs/{07-References => 08-References}/Storage/duros-controller/assets/dataplane.drawio.svg (100%) rename docs/docs/{07-References => 08-References}/Storage/duros-controller/assets/nvme-over-tcp.jpg (100%) rename docs/docs/{07-References => 08-References}/Storage/duros-controller/duros-controller.md (100%) diff --git a/docs/contributing/02-roadmap.md b/docs/contributing/02-roadmap.md index 5ea4757..7e243ce 100644 --- a/docs/contributing/02-roadmap.md +++ b/docs/contributing/02-roadmap.md @@ -26,9 +26,9 @@ The backlog contains ideas of what could become part of the roadmap in the futur We incorporate community feedback into the roadmap. If you think that important points are missing in the backlog, please share your ideas with us. We have a Slack channel. Please check out [metal-stack.io](https://metal-stack.io) for contact information. -!!! danger - - By no means this list is a promise of what is being worked on in the near future. It is just a summary of ideas that was agreed on to be "nice to have". It is up to the investors, maintainers and the community to choose topics from this list and to implement them or to remove them from the list. +:::danger +By no means this list is a promise of what is being worked on in the near future. It is just a summary of ideas that was agreed on to be "nice to have". It is up to the investors, maintainers and the community to choose topics from this list and to implement them or to remove them from the list. +::: - Add metal-stack to [Gardener conformance test grid](https://testgrid.k8s.io/gardener-all) - Autoscaler for metal control plane components diff --git a/docs/contributing/Proposals/MEP18/README.md b/docs/contributing/Proposals/MEP18/README.md index 0dc6d2b..7546b42 100644 --- a/docs/contributing/Proposals/MEP18/README.md +++ b/docs/contributing/Proposals/MEP18/README.md @@ -23,11 +23,6 @@ Regular Kubernetes updates to apply security fixes and feature updates must be p In this chapter, we propose a solution for setting up a metal-stack environment with an autonomous control plane that is independent of another cloud provider. -```@contents -Pages = ["autonomous-control-plane.md"] -Depth = 5 -``` - ## Use Your Own Dogfood The most obvious solution is to just deploy a Kubernetes cluster manually in your own data center by utilizing existing tooling for the deployment: diff --git a/docs/contributing/Proposals/MEP4/README.md b/docs/contributing/Proposals/MEP4/README.md index a76b022..c2aa9b1 100644 --- a/docs/contributing/Proposals/MEP4/README.md +++ b/docs/contributing/Proposals/MEP4/README.md @@ -5,10 +5,9 @@ sidebar_position: 4 --- # Multi-Tenancy for the metal-api - -!!! info - - This document is work in progress. +:::info +This document is work in progress. +::: In the past we decided to treat the metal-api as a "low-level API", i.e. the API does not specifically deal with projects and tenants. A user with editor access can for example assign machines to every project he desires, he can see all the machines available and can control them. We tried to keep the metal-api code base as small as possible and we added resource scoping to a "higher-level APIs". From there, a user would be able to only see his own clusters and IP addresses. @@ -22,13 +21,6 @@ Introducing multi-tenancy to the metal-api is a serious chance of making our pro - Gaining performance through resource scopes - Letting untrusted / third-parties work with the API -## Table of Contents - -```@contents -Pages = ["README.md"] -Depth = 5 -``` - ## Requirements These are some general requirements / higher objectives that MEP-4 has to fulfill. @@ -184,17 +176,16 @@ Requirements: Project was created, permissions are present 00000000-0000-0000-0000-ac1f6b7befb2 Phoned Home 20s 50d 4h test 793bb6cd-8b46-479d-9209-0fedca428fe1 c1-xlarge-x86 Ubuntu 20.04 20210415 fra-equ01 ``` -!!! warning - - A user **cannot** list all allocated machines for all projects. The user **must** always switch project context first and can only view the machines inside this project. Only admins can see all machines at once. - +:::warning +A user **cannot** list all allocated machines for all projects. The user **must** always switch project context first and can only view the machines inside this project. Only admins can see all machines at once. +::: ### Scopes for Resources The admins / operators of the metal-stack should be able to provide _global_ resources that users are able to use along with their own resources. In particular, users can view and use _global_ resources, but they are not allowed to create, modify or delete them. -!!! info - - When a project ID field is empty on a resource, the resource is considered _global_. +:::info +When a project ID field is empty on a resource, the resource is considered _global_. +::: Where possible, users should be capable of creating their own resource entities. @@ -215,6 +206,6 @@ Where possible, users should be capable of creating their own resource entities. | Switch | | | | Tenant | | yes | -!!! info - - Example: A user can make use of the file system layouts provided by the admins, but can also create own layouts. Same applies for images. As soon as a user creates own resources, the user takes over the responsibility for the machine provisioning to succeed. +:::info +Example: A user can make use of the file system layouts provided by the admins, but can also create own layouts. Same applies for images. As soon as a user creates own resources, the user takes over the responsibility for the machine provisioning to succeed. +::: \ No newline at end of file diff --git a/docs/docs/01-home.md b/docs/docs/01-home.md new file mode 100644 index 0000000..d75f722 --- /dev/null +++ b/docs/docs/01-home.md @@ -0,0 +1,15 @@ +--- +slug: /home +title: Home +sidebar_position: 1 +--- + +# Welcome to the metal-stack docs! + +metal-stack is an open source software that provides an API for provisioning and managing physical servers in the data center. To categorize this product, we use the terms _Metal-as-a-Service (MaaS)_ or _bare metal cloud_. + +From the perspective of a user, the metal-stack does not feel any different from working with a conventional cloud provider. Users manage their resources (machines, networks and ip addresses, etc.) by themselves, which effectively turns your data center into an elastic cloud infrastructure. + +The major difference to other cloud providers is that compute power and data reside in your own data center. + + diff --git a/docs/docs/02-quickstart.md b/docs/docs/02-General/01-quickstart.md similarity index 90% rename from docs/docs/02-quickstart.md rename to docs/docs/02-General/01-quickstart.md index d47f5b1..4d37537 100644 --- a/docs/docs/02-quickstart.md +++ b/docs/docs/02-General/01-quickstart.md @@ -1,7 +1,7 @@ --- -slug: /quickstart -title: Quickstart -sidebar_position: 2 +slug: /getting-started +title: Getting Started +sidebar_position: 1 --- # Getting Started diff --git a/docs/docs/01-introduction.md b/docs/docs/02-General/02-why metal stack.md similarity index 56% rename from docs/docs/01-introduction.md rename to docs/docs/02-General/02-why metal stack.md index 2a6cd51..a6b5893 100644 --- a/docs/docs/01-introduction.md +++ b/docs/docs/02-General/02-why metal stack.md @@ -1,44 +1,36 @@ --- -slug: /introduction -title: Welcome -sidebar_position: 1 +slug: /why-metal-stack +title: Why metal-stack? +sidebar_position: 2 --- -# Welcome to the metal-stack docs! - -metal-stack is an open source software that provides an API for provisioning and managing physical servers in the data center. To categorize this product, we use the terms _Metal-as-a-Service (MaaS)_ or _bare metal cloud_. - -From the perspective of a user, the metal-stack does not feel any different from working with a conventional cloud provider. Users manage their resources (machines, networks and ip addresses, etc.) by themselves, which effectively turns your data center into an elastic cloud infrastructure. - -The major difference to other cloud providers is that compute power and data reside in your own data center. - -## Why metal-stack? +# Why metal-stack? Before we started with our mission to implement the metal-stack, we decided on a couple of key characteristics and constraints that we think are unique in the domain (otherwise we would definitely have chosen an existing solution). We hope that the following properties appeal to you as well. -### On-Premise +## On-Premise Running on-premise gives you data sovereignty and usually a better price / performance ratio than with hyperscalers — especially the larger you grow your environment. Another benefit of running on-premise is an easier connectivity to existing company networks. -### Fast Provisioning +## Fast Provisioning Provisioning bare metal machines should not feel much different from virtual machines. metal-stack is capable of provisioning servers in less than a minute. The underlying network topology is based on BGP and allows announcing new routes to your host machines in a matter of seconds. -### No-Ops +## No-Ops Part of the metal-stack runs on dedicated switches in your data center. This way, it is possible to automate server inventorization, permanently reconcile network configuration and automatically manage machine lifecycles. Manual configuration is neither required nor wanted. -### Security +## Security Our networking approach was designed for highest standards on security. Also, we enforce firewalling on dedicated tenant firewalls before users can establish connections to other networks than their private tenant network. API authentication and authorization is done with the help of OIDC. -### API driven +## API driven The development of metal-stack is strictly API driven and offers self-service to end-users. This approach delivers the highest possible degree of automation, maintainability and performance. -### Ready for Kubernetes +## Ready for Kubernetes Not only does the metal-stack run smoothly on [Kubernetes](https://kubernetes.io/) (K8s). The major intent of metal-stack has always been to build a scalable machine infrastructure for _Kubernetes as a Service (KaaS)_. In partnership with the open-source project [Gardener](https://gardener.cloud/), we can provision Kubernetes clusters on metal-stack at scale. @@ -46,31 +38,6 @@ From the perspective of the Gardener, the metal-stack is just another cloud prov Of course, you can use metal-stack only for machine provisioning as well and just put something else on top of your metal infrastructure. -### Open Source - -The metal-stack is open source and free of constraints regarding vendors and third-party products. The stack is completely built on open source products. We have a community actively working on the metal-stack, which can assist you delivering all reasonable features you are gonna need. - -## Why Bare Metal? - -Bare metal has several advantages over virtual environments and overcomes several drawbacks of virtual machines. We also listed drawbacks of the bare metal approach. Bare in mind though that it is still possible to virtualize on bare metal environments when you have your stack up and running. - -### Virtual Environment Drawbacks - -- [Spectre and Meltdown](https://meltdownattack.com/) can only be mitigated with a "cluster per tenant" approach -- Missing isolation of multi-tenant change impacts -- Licensing restrictions -- Noisy-neighbors - -### Bare Metal Advantages - -- Guaranteed and fastest possible performance (especially disk i/o) -- Reduced stack depth (Host / VM / Application vs. Host / Container) - - Reduced attack surface - - Lower costs, higher performance - - No VM live-migrations -- Bigger hardware configurations possible (hypervisors have restrictions, e.g. it is not possible to assign all CPUs to a single VM) - -### Bare Metal Drawbacks +## Open Source -- Hardware defects have direct impact (should be considered by design) and can not be mitigated by live-migration as in virtual environments -- Capacity planning is more difficult (no resource overbooking possible) +The metal-stack is open source and free of constraints regarding vendors and third-party products. The stack is completely built on open source products. We have a community actively working on the metal-stack, which can assist you delivering all reasonable features you are gonna need. \ No newline at end of file diff --git a/docs/docs/02-General/03-why bare metal.md b/docs/docs/02-General/03-why bare metal.md new file mode 100644 index 0000000..5a8f651 --- /dev/null +++ b/docs/docs/02-General/03-why bare metal.md @@ -0,0 +1,30 @@ +--- +slug: /why-bare-metal +title: Why Bare Metal? +sidebar_position: 1 +--- + +# Why Bare Metal? + +Bare metal has several advantages over virtual environments and overcomes several drawbacks of virtual machines. We also listed drawbacks of the bare metal approach. Bare in mind though that it is still possible to virtualize on bare metal environments when you have your stack up and running. + +## Virtual Environment Drawbacks + +- [Spectre and Meltdown](https://meltdownattack.com/) can only be mitigated with a "cluster per tenant" approach +- Missing isolation of multi-tenant change impacts +- Licensing restrictions +- Noisy-neighbors + +## Bare Metal Advantages + +- Guaranteed and fastest possible performance (especially disk i/o) +- Reduced stack depth (Host / VM / Application vs. Host / Container) + - Reduced attack surface + - Lower costs, higher performance + - No VM live-migrations +- Bigger hardware configurations possible (hypervisors have restrictions, e.g. it is not possible to assign all CPUs to a single VM) + +## Bare Metal Drawbacks + +- Hardware defects have direct impact (should be considered by design) and can not be mitigated by live-migration as in virtual environments +- Capacity planning is more difficult (no resource overbooking possible) diff --git a/docs/docs/02-General/04-flavors-of-metalstack.md b/docs/docs/02-General/04-flavors-of-metalstack.md new file mode 100644 index 0000000..bd19567 --- /dev/null +++ b/docs/docs/02-General/04-flavors-of-metalstack.md @@ -0,0 +1,29 @@ +--- +slug: /flavors-of-metal-stack +title: Flavors of metal-stack +sidebar_position: 4 +--- + +# Flavors of metal-stack + +While metal-stack itself provides access to manage resources like machines, networks and ip addresses, it does not provide any higher abstractions on top when used on its own. + +As modern infrastructure and cloud native applications are designed with Kubernetes in mind, we provide two different layers on top of metal-stack to provide provisioning of clusters. + +## Plain + +Regardless which flavor of metal-stack you use, it is always possible to manually provision machines, networks and ip addresses. This is the most basic way of using metal-stack and is very similar to how traditional bare metal infrastructures are managed. + +Using plain metal-stack without additional layer was not a focus in the past. Therefore firewall and role management might be premature. These will be addressed by [MEP-4](../developers/proposals/MEP4/index.md) and [MEP-16](../developers/proposals/MEP16/index.md) in the future. + +## Gardener + +We recommend using metal-stack with our [Gardener integration](../concepts/kubernetes/gardener.md), which allows to manage Kubernetes clusters at scale. This integration is battle proof, well documented, used by many organizations in production and build on top of the open-source project [Gardener](https://gardener.cloud/). + +When compared to our Cluster API integration, this is more and provides a lot more features and stability. Clusters can more easily be created and managed. + +## Cluster API + +Our [Cluster API integration](https://github.com/metal-stack/cluster-api-provider-metal-stack) is a more experimental approach to provide Kubernetes clusters with metal-stack. It is based on the [Cluster API](https://cluster-api.sigs.k8s.io/) project. + +Resulting clusters are as minimal as possible and need to be configured manually after creation. With this approach there is no concept of service clusters. Each cluster is manually created and managed. diff --git a/docs/docs/03-Concepts/architecture.md b/docs/docs/03-Concepts/01-architecture.md similarity index 93% rename from docs/docs/03-Concepts/architecture.md rename to docs/docs/03-Concepts/01-architecture.md index a1917e0..39f6809 100644 --- a/docs/docs/03-Concepts/architecture.md +++ b/docs/docs/03-Concepts/01-architecture.md @@ -59,6 +59,7 @@ Some notes on this picture: A _partition_ is our term for describing hardware in the data center controlled by the metal-stack with all the hardware participating in the same network topology. Being in the same network topology causes the hardware inside a partition to build a failure domain. Even though the network topology for running the metal-stack is required to be redundant by design, you should consider setting up multiple partitions. With multiple partitions it is possible for users to maintain availability of their applications by spreading them across the partitions. Installing partitions in multiple data centers would be even better in regards of fail-safe application performance, which would even tolerate the meltdown of a data center. :::tip +<<<<<<< HEAD:docs/docs/03-Concepts/architecture.md In our setups, we encode the name of a region and a zone name into our partition names. However, we do not have dedicated entities for regions and zones in our APIs. @@ -68,17 +69,26 @@ A **region** is a geographic area in which data centers are located. A zone can consist of several **partitions**. Usually, a partition spans a rack or a group of racks. -::: +======= +In our setups, we encode the name of a region and a zone name into our partition names. However, we do not have dedicated entities for regions and zones in our APIs. -We strongly advise to group your hardware into racks that are specifically assembled for running metal-stack. When using modular rack design, the amount of compute resources of a partition can easily be extended by adding more racks to your partition. +A **region** is a geographic area in which data centers are located. -!!! info +**Zones** are geographic locations in a region usually in different fire compartments. Regions can consist of several zones. - The hardware that we currently support to be placed inside a partition is described in the [hardware](hardware.md) document. +A zone can consist of several **partitions**. Usually, a partition spans a rack or a group of racks. +>>>>>>> eb76c8d (takeover content from current docs):docs/docs/03-Concepts/01-architecture.md +::: -!!! info +We strongly advise to group your hardware into racks that are specifically assembled for running metal-stack. When using modular rack design, the amount of compute resources of a partition can easily be extended by adding more racks to your partition. - How large you can grow your partitions and how the network topology inside a partition looks like is described in the [networking](networking.md) document. +:::info +The hardware that we currently support to be placed inside a partition is described in the [hardware](hardware.md) document. +::: + +:::info +How large you can grow your partitions and how the network topology inside a partition looks like is described in the [networking](networking.md) document. +::: The metal-stack has microservices running on the leaf switches in a partition. For this reason, your leaf switches are required to run a Linux distribution that you have full access to. Additionally, there are a servers not added to the pool of user-allocatable machines, which are instead required for running metal-stack and we call them _management servers_. We also call the entirety of switches inside a partition the _switch plane_. diff --git a/docs/docs/03-Concepts/02-user-management.md b/docs/docs/03-Concepts/02-user-management.md new file mode 100644 index 0000000..3f5eaaf --- /dev/null +++ b/docs/docs/03-Concepts/02-user-management.md @@ -0,0 +1,67 @@ +--- +slug: /user-management +title: User Management +sidebar_position: 2 +--- + +# User Management + +At the moment, metal-stack can more or less be seen as a low-level API that does not scope access based on projects and tenants. +Fine-grained access control with full multi-tenancy support is actively worked on in [MEP4](.././developers/proposals/MEP4/README.md). + +Until then projects and tenants can be created, but have no effect on access control. + +## Default Users + +The current system provides three default users with their corresponding roles: + +- **Metal-Admin** is an **Admin** can perform all actions. +- **Metal-Edit** has the **Edit** role and may create, edit and delete most resources. +- **Metal-Viewer** is a **Viewer** and may only view resources and may access machines. + +Each of these users have a corresponding [HMAC](https://en.wikipedia.org/wiki/HMAC) token, which can be used to authenticate against the API. The tokens do not expire and can be used as long as the service is running. Be cautious with who you share the tokens with. + +## OIDC + +Currently the only way to act as a different user than the default ones, is by using OIDC authentication. Here the OIDC provider decides which role the user has. + +## Role Mapping + +The following table shows which role is required to access the endpoints of the various services at a high level. +Only the minimum role required to access the group of endpoints is shown. For the more in-depth documentation of all endpoints, head over to the [API documentation](../references/apidocs.md). + +| **Service** | **Group of Endpoints** | **Minimum Role** | +| ------------------------------- | ------------------------------- | ---------------- | +| **audit-service** | Reading audit traces | Viewer | +| **filesystem-service** | Reading filesystem layouts | Viewer | +| | Managing filesystem layouts | Admin | +| **firewall-service** | Reading firewalls | Viewer | +| | Allocating firewalls | Editor | +| **firmware-service** | All endpoints | Admin | +| **image-service** | Reading images | Viewer | +| | Managing images | Admin | +| **ip-service** | Reading IPs | Viewer | +| | Managing IPs | Editor | +| **machine-service** | Reading machines and issues | Viewer | +| | Managing machines and issues | Editor | +| | IPMI operations | Editor | +| | Updating, deleting machines | Admin | +| | Updating firmware | Admin | +| **network-service** | Reading networks | Viewer | +| | Allocating and freeing networks | Editor | +| | Managing networks | Admin | +| **partition-service** | Reading partitions | Viewer | +| | Managing partitions | Admin | +| **project-service** | Reading projects | Viewer | +| | Managing projects | Admin | +| **size-service** | Reading sizes | Viewer | +| | Managing reservations | Editor | +| | Managing sizes | Admin | +| **sizeimageconstraint-service** | Reading size image constraints | Viewer | +| | Managing size image constraints | Admin | +| **switch-service** | Reading switches | Viewer | +| | Managing switches | Admin | +| **tenant-service** | Reading tenants | Viewer | +| | Managing tenants | Admin | +| **user-service** | Getting user information | Viewer | +| **vpn-service** | Getting VPN auth key | Admin | diff --git a/docs/docs/03-Concepts/networking.md b/docs/docs/03-Concepts/03-Network/01-theory.md similarity index 95% rename from docs/docs/03-Concepts/networking.md rename to docs/docs/03-Concepts/03-Network/01-theory.md index aed4216..77e9555 100644 --- a/docs/docs/03-Concepts/networking.md +++ b/docs/docs/03-Concepts/03-Network/01-theory.md @@ -1,7 +1,6 @@ --- -slug: /networking title: Networking -sidebar_position: 2 +sidebar_position: 1 --- # Networking @@ -47,7 +46,7 @@ Evaluation of those parameters led to more specific requirements: - Internet Access is implemented with route leak on the firewall servers and during the PXE-Process with route leak on the exit switches. - MTU 9216 is used for VXLAN-facing interfaces, otherwise MTU 9000 is used. -Furthermore, requirements such as _operational simplicity_ and _network stability_ that _a small group of people can effectively support_ have been identified being a primary focus for building metal-stack. +Furthermore, requirements such as *operational simplicity* and *network stability* that *a small group of people can effectively support* have been identified being a primary focus for building metal-stack. ## Concept @@ -59,13 +58,13 @@ External BGP together with network overlay concepts as EVPN can address the esse A CLOS topology is named after the pioneer Charles Clos (short: **CLOS**) who first formalized this approach. CLOS defines a multistage network topology that is used today to improve performance and resilience while enabling a cost effective scalability. A CLOS topology comprises network switches aggregated into spine and leaf layers. Each leaf switch (short: **leaf**) is connected to all spine switches (short: **spine**) but there is no direct leaf-to-leaf or spine-to-spine connection (See: picture 1). -![2 Layer CLOS Topology](./assets/2-layer-leaf-spine.svg) +![2 Layer CLOS Topology](2-layer-leaf-spine.svg) > Picture 1: Fragment of CLOS to show leaf-spine layer. This data center network architecture, based on a leaf-spine architecture, is also know as "two-tier" CLOS topology. -![3 Layer CLOS Topology](./assets/3-layer-leaf-spine.svg) +![3 Layer CLOS Topology](3-layer-leaf-spine.svg) > Picture 2: Fragment to show a 3-stage, 2-layer CLOS topology. @@ -89,7 +88,7 @@ To sum it up: - There is no IPv6 deployment in the network required. - IPv6 just has to be enabled on the BGP peers to provide LLA and RA. -_In External BGP, ASN is how BGP peers know each other._ +*In External BGP, ASN is how BGP peers know each other.* #### ASN Numbering @@ -150,7 +149,7 @@ Required resources to establish the EVPN control plane: - VLAN-aware bridge: because router MAC addresses of remote VTEPs are installed over this interface. - VXLAN Interface / VXLAN Tunnel Endpoint: because the VRF to layer-3 VNI mapping has to be consistent across all VTEPs) -![EVPN VTEP](./assets/evpn-vtep.svg) +![EVPN VTEP](evpn-vtep.svg) > Picture 3: Required interfaces on the switch to wire up the vrf to swp 1 connectivity with a given vxlan @@ -166,13 +165,13 @@ It is common practice to set the MTU for VXLAN facing interfaces (e.g. inter-swi Routing is needed for communication between VXLAN tunnels or between a VXLAN tunnel and an external networks. VXLAN routing supports layer-3 multi-tenancy. All routing occurs in the context of a VRF. There is a 1:1 relation of a VRF to a tenant. Picture 3 illustrates this. Servers A and B belong to the same vrf VRF1. Server C is enslaved into VRF2. There is no communication possible between members of VRF1 and those of VRF2. -![Two routing tables](./assets/vrf-simple.svg) +![Two routing tables](vrf-simple.svg) > Picture 4: Illustration of two distinct routing tables of VRF1 (enslaved: servers A and B) and VRF2 (enslaved: server C) To leaverage the potential and power of BGP, VRF, EVPN/VXLAN without a vendor lock-in the implementation relies on hardware that is supported by open network operating system: SONiC. -## Network Implementation +## Implementation Implementation of the network operation requires the data center infrastructure to be in place. To implement a functional meaning for the parts of the CLOS network, all members must be wired accordingly. @@ -190,7 +189,7 @@ Reference: See the [CLOS overview picture](#CLOS) | Management Server | Jump-host to access all network switches within the CLOS topology for administrative purpose. | | Management Switch | Connected to the management port of each of the network switches. | -![Physical Wiring](./assets/network-physical-wiring.drawio.svg) +![Physical Wiring](network-physical-wiring.drawio.svg) > Picture 5: This illustration shows an example of a suitable physical wiring inside a metal-stack partition. @@ -198,7 +197,7 @@ Tenant servers are organized into a layer called projects. In case those tenant To operate the CLOS topology, software defined configuration to enable BGP, VRF, EVPN and VXLAN must be set up. -![Network VRFs across the different switch layers](./assets/network-vrfs.drawio.svg) +![Network VRFs across the different switch layers](network-vrfs.drawio.svg) > Picture 6: This illustration shows the VRF tenant separation and VRF termination happening on the firewall for the tenant VRF and external network VRFs. @@ -292,7 +291,7 @@ route-map only-self-out deny 99 > Listing 2: FRR configuration of a tenant server. -The frr configuration in Listing 2 starts with `frr defaults datacenter`. This is a marker that enables compile-time provided settings that e.g. set specific values for BGP session timers. This is followed by a directive to state that instead of several configuration files for different purposes a single _frr.conf_ file is used: `service integrated-vtysh-config`. The two interface specific blocks starting with `interface ...` enable the RA mechanism that is required for BGP unnumbered peer discovery. There is a global BGP instance configuration `router bgp 4200000001` that sets the private ASN. The BGP router configuration contains a setup that identifies the BGP speaker `bgp router-id 10.0.0.1`. This router id should be unique. It is a good practice to assign the local loopback IPv4 as router-id. To apply the same configuration to several interfaces a peer group named `TOR` is defined via `neighbor TOR peer-group`. `remote-as external` activates external BGP for this peer group. To have a fast convergence, limits of default timers are reduced by `timer 1 3` section. The two BGP-peer-facing interfaces are enslaved into the peer-group to inherit the peer-group's setup. Activation of IPv4 unicast protocol is completed with `address-family ipv4 unicast`. To prevent a tenant server from announcing other paths than `lo` interface a route-map `only-self-out` is defined. This route map is activated within the ipv4 address family: `neighbor TOR route-map only-self-out out`. +The frr configuration in Listing 2 starts with `frr defaults datacenter`. This is a marker that enables compile-time provided settings that e.g. set specific values for BGP session timers. This is followed by a directive to state that instead of several configuration files for different purposes a single *frr.conf* file is used: `service integrated-vtysh-config`. The two interface specific blocks starting with `interface ...` enable the RA mechanism that is required for BGP unnumbered peer discovery. There is a global BGP instance configuration `router bgp 4200000001` that sets the private ASN. The BGP router configuration contains a setup that identifies the BGP speaker `bgp router-id 10.0.0.1`. This router id should be unique. It is a good practice to assign the local loopback IPv4 as router-id. To apply the same configuration to several interfaces a peer group named `TOR` is defined via `neighbor TOR peer-group`. `remote-as external` activates external BGP for this peer group. To have a fast convergence, limits of default timers are reduced by `timer 1 3` section. The two BGP-peer-facing interfaces are enslaved into the peer-group to inherit the peer-group's setup. Activation of IPv4 unicast protocol is completed with `address-family ipv4 unicast`. To prevent a tenant server from announcing other paths than `lo` interface a route-map `only-self-out` is defined. This route map is activated within the ipv4 address family: `neighbor TOR route-map only-self-out out`. Application of the route map `only-self-out` enables to announce only local ip(s). This is to avoid that a tenant server announces paths to other servers (prevents unwanted traffic). To achieve this: @@ -399,7 +398,7 @@ A bridge is used to attach VXLAN interface `bridge-ports vni3981` and map its lo The Routed VLAN Interface or Switched Virtual Interface (SVI) `iface vlan1001` is configured corresponding to the per-tenant VXLAN interface. It is attached to the tenant VRF. Remote host routes are installed over this SVI. The `vlan-raw-device bridge` is used to associate the SVI with the VLAN aware bridge. For a packet received from a locally attached host the SVI interface corresponding to the VLAN determines the VRF `vrf vrf3981`. -The VXLAN interface `iface vni3981` defines a tunnel address that is used for the VXLAN tunnel header `vlxan-local-tunnelip 10.0.0.11`. This VTEP IP address is typically the loopback device address of the switch. When EVPN is provisioned, data plane MAC learning for VXLAN interfaces must be disabled because the purpose of EVPN is to exchange MACs between VTEPs in the control plane: `bridge-learning off`. EVPN is responsible for installing remote MACs. `bridge-arp-nd-suppress` suppresses ARP flooding over VXLAN tunnels. Instead, a local proxy handles ARP requests received from locally attached hosts for remote hosts. ARP suppression is the implementation for IPv4; ND suppression is the implementation for IPv6. It is recommended to enable ARP suppression on all VXLAN interfaces. Bridge Protocol Data Unit (BPDU) are not transmitted over VXLAN interfaces. So as a good practice bpduguard and pbdufilter are enabled with `mstpctl-bpduguard yes` and `mstpctl-portbpdufilter yes`. These settings filter BPDU and guard the spanning tree topology from unauthorized switches affecting the forwarding path. `vxlan-id 3981` specifies the VXLAN Network Identifier (VNI). The type of VNI can either be layer-2 (L2) or layer-3 (L3). This is an implicit thing. A VNI is a L3 VNI (L3VNI) when a mapping exists that maps the VNI to a VRF (configured in `/etc/frr/frr.conf`) otherwise it is a L2 VNI (L2VNI). +The VXLAN interface `iface vni3981` defines a tunnel address that is used for the VXLAN tunnel header `vlxan-local-tunnelip 10.0.0.11`. This VTEP IP address is typically the loopback device address of the switch. When EVPN is provisioned, data plane MAC learning for VXLAN interfaces must be disabled because the purpose of EVPN is to exchange MACs between VTEPs in the control plane: `bridge-learning off`. EVPN is responsible for installing remote MACs. `bridge-arp-nd-suppress` suppresses ARP flooding over VXLAN tunnels. Instead, a local proxy handles ARP requests received from locally attached hosts for remote hosts. ARP suppression is the implementation for IPv4; ND suppression is the implementation for IPv6. It is recommended to enable ARP suppression on all VXLAN interfaces. Bridge Protocol Data Unit (BPDU) are not transmitted over VXLAN interfaces. So as a good practice bpduguard and pbdufilter are enabled with `mstpctl-bpduguard yes` and `mstpctl-portbpdufilter yes`. These settings filter BPDU and guard the spanning tree topology from unauthorized switches affecting the forwarding path. `vxlan-id 3981` specifies the VXLAN Network Identifier (VNI). The type of VNI can either be layer-2 (L2) or layer-3 (L3). This is an implicit thing. A VNI is a L3 VNI (L3VNI) when a mapping exists that maps the VNI to a VRF (configured in `/etc/frr/frr.conf`) otherwise it is a L2 VNI (L2VNI). ```bash # /etc/frr/frr.conf @@ -437,7 +436,7 @@ route-map LOOPBACKS permit 10 > Listing 5: Leaf FRR configuration. -Listing 5 shows the required FRR configuration of the BGP control plane. Only content not discussed so far is explained. The section `vrf vrf3981` contains the mapping from layer-3 VNI to VRF. This is required to be able to install EVPN IP prefix routes (type-5 routes) into the routing table. Further the file contains a global BGP instance `router bgp 4200000011` definition. A new setting `redistribute connected route-map LOOPBACKS` is in place to filter the redistribution of routes that are not matching the local loopback interface. The route-map is defined with `route-map LOOPBACKS permit 10`. With the configuration line `address-family l2vpn evpn`, the EVPN address family is enabled between BGP neighbours. `advertise-all-vni` makes the switch a VTEP configures it in such a way, that all locally configured VNIs should be advertised by the BGP control plane. +Listing 5 shows the required FRR configuration of the BGP control plane. Only content not discussed so far is explained. The section `vrf vrf3981` contains the mapping from layer-3 VNI to VRF. This is required to be able to install EVPN IP prefix routes (type-5 routes) into the routing table. Further the file contains a global BGP instance `router bgp 4200000011` definition. A new setting `redistribute connected route-map LOOPBACKS` is in place to filter the redistribution of routes that are not matching the local loopback interface. The route-map is defined with `route-map LOOPBACKS permit 10`. With the configuration line `address-family l2vpn evpn`, the EVPN address family is enabled between BGP neighbours. `advertise-all-vni` makes the switch a VTEP configures it in such a way, that all locally configured VNIs should be advertised by the BGP control plane. The second BGP instance configuration is specific to the tenant VRF `router bgp 4200000011 vrf vrf3981`. This VRF BGP instance configures the l2vpn evpn address family with `advertise ipv4 unicast` to announce IP prefixes in BGP's routing information base (RIB). This is required to apply learned routes to the routing tables of connected hosts. The Maximum-Prefix feature is useful to avoid that a router receives more routes than the router memory can take. The maximum number of prefixes a tenant server is allowed to announce is limited to `100` with: `neighbor MACHINE maximum-prefix 100`. diff --git a/docs/docs/03-Concepts/03-Network/02-firewalls.md b/docs/docs/03-Concepts/03-Network/02-firewalls.md new file mode 100644 index 0000000..18e6f57 --- /dev/null +++ b/docs/docs/03-Concepts/03-Network/02-firewalls.md @@ -0,0 +1,3 @@ +# Firewalls + +(fire-walling in metal-stack, firewall-controller and headscale integration) diff --git a/docs/docs/03-Concepts/03-Network/2-layer-leaf-spine.drawio b/docs/docs/03-Concepts/03-Network/2-layer-leaf-spine.drawio new file mode 100644 index 0000000..7412dc9 --- /dev/null +++ b/docs/docs/03-Concepts/03-Network/2-layer-leaf-spine.drawio @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/docs/03-Concepts/03-Network/2-layer-leaf-spine.svg b/docs/docs/03-Concepts/03-Network/2-layer-leaf-spine.svg new file mode 100644 index 0000000..6806230 --- /dev/null +++ b/docs/docs/03-Concepts/03-Network/2-layer-leaf-spine.svg @@ -0,0 +1 @@ +
Spine 1
Spine 1
Spine 2
Spine 2
Leaf 2
Leaf 2
Leaf 1
Leaf 1
Viewer does not support full SVG 1.1
\ No newline at end of file diff --git a/docs/docs/03-Concepts/03-Network/3-layer-leaf-spine.drawio b/docs/docs/03-Concepts/03-Network/3-layer-leaf-spine.drawio new file mode 100644 index 0000000..fbdb6ea --- /dev/null +++ b/docs/docs/03-Concepts/03-Network/3-layer-leaf-spine.drawio @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/docs/03-Concepts/03-Network/3-layer-leaf-spine.svg b/docs/docs/03-Concepts/03-Network/3-layer-leaf-spine.svg new file mode 100644 index 0000000..40a4c28 --- /dev/null +++ b/docs/docs/03-Concepts/03-Network/3-layer-leaf-spine.svg @@ -0,0 +1 @@ +
Spine 1
Spine 1
Spine 2
Spine 2
Leaf 2
Leaf 2
Leaf 1
Leaf 1
Machine 2
Machine 2
Machine 1
Machine 1
Viewer does not support full SVG 1.1
\ No newline at end of file diff --git a/docs/docs/03-Concepts/03-Network/evpn-vtep.drawio b/docs/docs/03-Concepts/03-Network/evpn-vtep.drawio new file mode 100644 index 0000000..5c28d97 --- /dev/null +++ b/docs/docs/03-Concepts/03-Network/evpn-vtep.drawio @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/docs/03-Concepts/03-Network/evpn-vtep.svg b/docs/docs/03-Concepts/03-Network/evpn-vtep.svg new file mode 100644 index 0000000..5e71d81 --- /dev/null +++ b/docs/docs/03-Concepts/03-Network/evpn-vtep.svg @@ -0,0 +1 @@ +
leaf 1
leaf 1
«VLAN aware»
Bridge
«VLAN aware»...
lo: 10.0.0.41
lo: 10.0.0.41
vrf 104001
vrf 104001
«SVI»
vlan4001
«SVI»...
swp1
swp1
vni104001

VXLAN-Interface
VTEP-Endpoint: 10.0.0.41
vni104001...
Device 1
Device 1
Viewer does not support full SVG 1.1
\ No newline at end of file diff --git a/docs/docs/03-Concepts/03-Network/network-physical-wiring.drawio.svg b/docs/docs/03-Concepts/03-Network/network-physical-wiring.drawio.svg new file mode 100644 index 0000000..de80b9b --- /dev/null +++ b/docs/docs/03-Concepts/03-Network/network-physical-wiring.drawio.svg @@ -0,0 +1,510 @@ + + + + + + + + + + + + + +
+
+
+ Leaf Layer +
+
+
+
+ + Leaf La... + +
+
+ + + + +
+
+
+ Spine Layer +
+
+
+
+ + Spine L... + +
+
+ + + + + + +
+
+
+ Server Layer +
+
+
+
+ + Server... + +
+
+ + + + + + +
+
+
+ Leaf 1 +
+
+
+
+ + Leaf 1 + +
+
+ + + + +
+
+
+ Firewalls +
+ and +
+ Machines +
+
+
+
+ + Firewalls... + +
+
+ + + + + + +
+
+
+ Leaf 2 +
+
+
+
+ + Leaf 2 + +
+
+ + + + + + +
+
+
+ Spine 1 +
+
+
+
+ + Spine 1 + +
+
+ + + + + +
+
+
+ Exit 1 +
+
+
+
+ + Exit 1 + +
+
+ + + + + + + + +
+
+
+ Leaf 3 +
+
+
+
+ + Leaf 3 + +
+
+ + + + +
+
+
+ Firewalls +
+ and +
+ Machines +
+
+
+
+ + Firewalls... + +
+
+ + + + + + +
+
+
+ Leaf 4 +
+
+
+
+ + Leaf 4 + +
+
+ + + + + + +
+
+
+ Spine 2 +
+
+
+
+ + Spine 2 + +
+
+ + + + + +
+
+
+ Exit 1 +
+
+
+
+ + Exit 1 + +
+
+ + + + +
+
+
+ + External +
+ Networks +
+
+
+
+
+ + External... + +
+
+ + + + +
+
+
+ Exit Layer +
+
+
+
+ + Exit La... + +
+
+ + + + + + +
+
+
+ Management Leaf 1 +
+
+
+
+ + Management Le... + +
+
+ + + + + +
+
+
+ Management Leaf 2 +
+
+
+
+ + Management Le... + +
+
+ + + + + +
+
+
+ Management Spine 1 +
+
+
+
+ + Management Sp... + +
+
+ + + + + + +
+
+
+ Management Spine 2 +
+
+
+
+ + Management Sp... + +
+
+ + + + + +
+
+
+ Management Firewall 1 +
+
+
+
+ + Management Fi... + +
+
+ + + + + +
+
+
+ Management Firewall 2 +
+
+
+
+ + Management Fi... + +
+
+ + + + +
+
+
+ + metal-stack +
+ Control Plane +
+
+
+
+
+ + metal-stack... + +
+
+ + + + + + +
+
+
+ Management Server 1 +
+
+
+
+ + Management Se... + +
+
+ + + + + +
+
+
+ Management Server 2 +
+
+
+
+ + Management Se... + +
+
+ + + + +
+
+
+ Server BMCs +
+
+
+
+ + Server BMCs + +
+
+ + + + + + +
+
+
+ Switch +
+ Administration +
+
+
+
+ + Switch... + +
+
+
+ + + + + Text is not SVG - cannot display + + + +
diff --git a/docs/docs/03-Concepts/03-Network/network-vrfs.drawio.svg b/docs/docs/03-Concepts/03-Network/network-vrfs.drawio.svg new file mode 100644 index 0000000..a274bb0 --- /dev/null +++ b/docs/docs/03-Concepts/03-Network/network-vrfs.drawio.svg @@ -0,0 +1,496 @@ + + + + + + + + + + + + +
+
+
+ Leaf Layer +
+
+
+
+ + Leaf La... + +
+
+ + + + +
+
+
+ Spine Layer +
+
+
+
+ + Spine L... + +
+
+ + + + +
+
+
+ Exit Layer +
+
+
+
+ + Exit La... + +
+
+ + + + +
+
+
+ Server Layer +
+
+
+
+ + Server... + +
+
+ + + + + + +
+
+
+ Internet Pod +
+
+
+
+ + Internet Pod + +
+
+ + + + +
+
+
+ Data Center Pod +
+
+
+
+ + Data Center Pod + +
+
+ + + + +
+
+
+ Internet VRF +
+
+
+
+ + Internet VRF + +
+
+ + + + +
+
+
+ DC VRF +
+
+
+
+ + DC VRF + +
+
+ + + + +
+
+
+ + Firewall Tenant 1 + +
+
+
+
+ + Firewall Tenant 1 + +
+
+ + + + +
+
+
+ Internet VRF +
+
+
+
+ + Internet VRF + +
+
+ + + + +
+
+
+ Tenant 1 VRF +
+
+
+
+ + Tenant 1 VRF + +
+
+ + + + + +
+
+
+ Machine +
+ Tenant 1 +
+
+
+
+ + Machine... + +
+
+ + + + + +
+
+
+ Machine +
+ Tenant 1 +
+
+
+
+ + Machine... + +
+
+ + + + + +
+
+
+ Machine +
+ Tenant 1 +
+
+
+
+ + Machine... + +
+
+ + + + + +
+
+
+ Machine +
+ Tenant 2 +
+
+
+
+ + Machine... + +
+
+ + + + + +
+
+
+ Machine +
+ Tenant 2 +
+
+
+
+ + Machine... + +
+
+ + + + + +
+
+
+ Machine +
+ Tenant 2 +
+
+
+
+ + Machine... + +
+
+ + + + +
+
+
+ + VXLAN + +
+
+
+
+ + VXLAN + +
+
+ + + + +
+
+
+ Tenant 1 VRF +
+
+
+
+ + Tenant 1 VRF + +
+
+ + + + +
+
+
+ VXLAN +
+
+
+
+ + VXLAN + +
+
+ + + + +
+
+
+ Tenant 2 VRF +
+
+
+
+ + Tenant 2 VRF + +
+
+ + + + + + + + + + +
+
+
+ Firewall Tenant 2 +
+
+
+
+ + Firewall Tenant 2 + +
+
+ + + + +
+
+
+ Tenant 2 VRF +
+
+
+
+ + Tenant 2 VRF + +
+
+ + + + +
+
+
+ DC VRF +
+
+
+
+ + DC VRF + +
+
+ + + + + + + + + + +
+
+
+ VXLAN +
+
+
+
+ + VXLAN + +
+
+ + + + +
+
+
+ VXLAN +
+
+
+
+ + VXLAN + +
+
+
+ + + + + Text is not SVG - cannot display + + + +
diff --git a/docs/docs/03-Concepts/03-Network/vrf-simple.drawio b/docs/docs/03-Concepts/03-Network/vrf-simple.drawio new file mode 100644 index 0000000..edaefe2 --- /dev/null +++ b/docs/docs/03-Concepts/03-Network/vrf-simple.drawio @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/docs/03-Concepts/03-Network/vrf-simple.svg b/docs/docs/03-Concepts/03-Network/vrf-simple.svg new file mode 100644 index 0000000..1e31019 --- /dev/null +++ b/docs/docs/03-Concepts/03-Network/vrf-simple.svg @@ -0,0 +1 @@ +
Machine 2
Machine 2
Machine 1
Machine 1
leaf
leaf
VRF 1
VRF 1
VRF 2
VRF 2
Machine 3
Machine 3
Viewer does not support full SVG 1.1
\ No newline at end of file diff --git a/docs/docs/03-Concepts/kubernetes.md b/docs/docs/03-Concepts/04-Kubernetes/01-gardener.md similarity index 74% rename from docs/docs/03-Concepts/kubernetes.md rename to docs/docs/03-Concepts/04-Kubernetes/01-gardener.md index 789dc75..66aeeb0 100644 --- a/docs/docs/03-Concepts/kubernetes.md +++ b/docs/docs/03-Concepts/04-Kubernetes/01-gardener.md @@ -1,34 +1,9 @@ --- -slug: /kubernetes -title: Kubernetes -sidebar_position: 5 +title: Gardener +sidebar_position: 1 --- -# Kubernetes Integration - -One of the main motivations for starting with metal-stack was to use it as a foundation for provisioning Kubernetes clusters. In this chapter, we explain how we integrated metal-stack to set up fully automated provisioning of Kubernetes clusters, including autoscaling capabilities. - -## metal-stack Components for Kubernetes Integration - -The following components are generic, meaning that they are independent of the chosen Kubernetes orchestration engine. - -### metal-ccm - -CCM stands for [cloud-controller-manager](https://kubernetes.io/docs/concepts/architecture/cloud-controller/) and is the bridge between Kubernetes and a cloud-provider. - -We implemented the [cloud provider interface](https://github.com/kubernetes/cloud-provider/blob/master/cloud.go) in the [metal-ccm](https://github.com/metal-stack/metal-ccm) repository. With the help of the cloud-controller-controller we provide metal-stack-specific properties for Kubernetes clusters, e.g. load balancer configuration through MetalLB or node properties. - -### firewall-controller - -To make the firewalls created with metal-stack easily configurable through Kubernetes resources, we add our [firewall-controller](https://github.com/metal-stack/firewall-controller) to the firewall image. The controller watches special CRDs, enabling users to manage: - -- nftables rules -- Intrusion-detection with [suricata](https://suricata.io/) -- network metric collection - -Please check out the [guide](../external/firewall-controller/README.md) on how to use it. - -## Gardener +# Gardener [Gardener](https://gardener.cloud/) is an open source project for orchestrated Kubernetes cluster provisioning. It supports many different cloud providers, metal-stack being one of them. Using the Gardener project, metal-stack can act as a machine provider for Kubernetes worker nodes. @@ -38,11 +13,11 @@ Gardener's architecture is designed for multi-tenant environments, with a strong Gardener allocates machines from a cloud provider and automatically deploys a kubelet to those nodes, which then joins the appropriate control plane. Operators can also nest clusters so that newly provisioned clusters can be used to spin up more clusters, leading to nearly infinite scalability (also known as "kubeception" model). -### Terminology +## Terminology We would like to explain the most important Gardener terms. The terminology used in the Gardener project has many similarities to the architecture of Kubernetes. Additional information can also be found in the [official glossary](https://github.com/gardener/documentation/blob/master/website/documentation/glossary/_index.md). -#### Garden Cluster +### Garden Cluster The Garden Cluster is a Kubernetes cluster that runs the Gardener Control Plane. @@ -57,7 +32,7 @@ The control plane components can be deployed in the Garden Cluster through the G The Garden cluster can also be used as [seed](#seeds-and-soils) cluster. -#### Virtual Garden +### Virtual Garden A recommended way to deploy the Gardener is running a "virtual cluster" inside the Garden cluster. It is basically a Kubernetes control plane without any worker nodes, providing the Kubernetes API in an own ETCD. Its purpose is to store all Gardener resources (such that they reside inside a dedicated ETCD) and provide an individual update lifecycle from the Garden Cluster. End users can have access to own project namespaces in the virtual garden, too. @@ -69,23 +44,23 @@ The virtual garden consists of the following components: More details about the virtual garden can be found in the description of [`gardener-operator`](https://github.com/gardener/gardener/blob/master/docs/concepts/operator.md). -#### Seeds and Soils +### Seeds and Soils A seed cluster is a cluster in which an agent component called the `Gardenlet` is running. The gardenlet is connected to the Gardener Control Plane and is responsible for orchestrating the provisioning of new clusters inside the seed cluster. The control plane components for the new clusters run as pods in the seed cluster. A seed cluster can also be called a soil if the Gardenlet has been manually deployed by the operator and not by the Gardener. Clusters created on the soil can be turned into seed clusters by the operator using a Gardener resource called `ManagedSeed`. This resource causes Gardener to automatically deploy the Gardenlet to the new cluster, such that the resulting cluster is not called a soil. -#### Shoot +### Shoot Every Kubernetes cluster that is fully provisioned and managed by Gardener is called a `Shoot` cluster. It consists of the shoot control plane running on the seed cluster and worker nodes running the actual workload. -### Gardener Integration Components +## Gardener Integration Components During the provisioning flow of a cluster, Gardener emits resources that are expected to be reconciled by controllers of a cloud provider. This section briefly describes the controllers implemented by metal-stack to allow the creation of a Kubernetes cluster on metal-stack infrastructure. -If you want to learn how to deploy metal-stack with Gardener, please check out the [installation](../installation/deployment.md#Gardener-with-metal-stack-1) section. +If you want to learn how to deploy metal-stack with Gardener, please check out the corresponding [deployment-guide section](../../operators/deployment-guide.md#Gardener-with-metal-stack-1). -#### gardener-extension-provider-metal +### gardener-extension-provider-metal The [gardener-extension-provider-metal](https://github.com/metal-stack/gardener-extension-provider-metal) contains of a set of webhooks and controllers for reconciling cloud provider specific resources of `type: Metal`, which created by Gardener during the cluster provisioning flow. @@ -93,15 +68,15 @@ Primarily, its purpose is to reconcile `Infrastructure`, `ControlPlane`, and `Wo The project also introduces an own API (`ProviderConfiguration` resources) and consists of an admission-controller to validate them. This admission controller should be deployed in the Gardener control plane cluster. -#### os-metal-extension +### os-metal-extension Due to the reason metal-stack initially used ignition to provision operating system images (today, cloud-init is supported as well) there is an implementation of a controller that translates the generic `OperatingSystemConfig` format of Gardener into ignition userdata. It can be found on Github in the [os-metal-extension](https://github.com/metal-stack/os-metal-extension) repository. -#### machine-controller-manager-provider-metal +### machine-controller-manager-provider-metal Worker nodes are managed through Gardener's [machine-controller-manager](https://github.com/gardener/machine-controller-manager) (MCM). The MCM allows out-of-tree provider implementation via sidecar, which is what we implemented in the [machine-controller-manager-provider-metal](https://github.com/metal-stack/machine-controller-manager-provider-metal) repository. -### Initial Cluster Setup +## Initial Cluster Setup Before creating the `garden cluster`, a base K8s cluster needs to be in place. Some suggestions for the initial K8s cluster are: @@ -109,7 +84,7 @@ Some suggestions for the initial K8s cluster are: - GCP/GKE - metalstack.cloud -#### Initial Cluster on GCP +### Initial Cluster on GCP - A GCP account needs to be in place. - The Ansible [gcp-auth role](https://github.com/metal-stack/ansible-common/tree/master/roles/gcp-auth) can be used for authenticating against GCP. @@ -117,15 +92,15 @@ Some suggestions for the initial K8s cluster are: Suggestions for default values are: -- `gcp_machine_type`: e2-standard-8 -- `gcp_autoscaling_min_nodes`: 1 -- `gcp_autoscaling_max_nodes`: 3 + - `gcp_machine_type`: e2-standard-8 + - `gcp_autoscaling_min_nodes`: 1 + - `gcp_autoscaling_max_nodes`: 3 -#### Initial Cluster on metalstack.cloud +### Initial Cluster on metalstack.cloud - A Kubernetes cluster can be created on [metalstack.cloud](https://metalstack.cloud/de/documentation/UserManual#creating-a-cluster) via UI, CLI or Terraform. -### metal-stack Setup +## metal-stack Setup > **Attention:** Bootstrapping a metal-stack partition is out of scope and need to be done before focusing on the relationship between metal-stack and Gardener. This guide assumes a metal-stack partition (servers, switches, network, ...) is already in place. @@ -136,19 +111,19 @@ Start by deploying: This guide assumes, that metal-stack gets deployed on the same initial cluster as Gardener. On the initial cluster, the metal-stack control plane need to be deployed. This can be done as described in the metal-stack [documentation](https://docs.metal-stack.io/stable/installation/deployment/#Metal-Control-Plane-Deployment). -#### Garden Cluster Setup +### Garden Cluster Setup After setting up the initial K8s cluster and metal-stack, Gardener can be deployed with the [Gardener Ansible role](https://github.com/metal-stack/metal-roles/tree/master/control-plane/roles/gardener). This deploys the following components: -- virtual garden -- Gardener control plane components -- soil cluster -- managed seed cluster (into the metal-stack partition) + - virtual garden + - Gardener control plane components + - soil cluster + - managed seed cluster (into the metal-stack partition) In summary, this results in the following: -- `Garden cluster` created in the initial cluster -- `soil cluster` created in the initial cluster. This will be the `initial seed` used for spinning up `shooted seeds` in the metal-stack partition -- `shooted seed` inside the metal-stack partition, where all `shoots` are derived from + - `Garden cluster` created in the initial cluster + - `soil cluster` created in the initial cluster. This will be the `initial seed` used for spinning up `shooted seeds` in the metal-stack partition + - `shooted seed` inside the metal-stack partition, where all `shoots` are derived from diff --git a/docs/docs/03-Concepts/04-Kubernetes/02-cluster-api.md b/docs/docs/03-Concepts/04-Kubernetes/02-cluster-api.md new file mode 100644 index 0000000..057f815 --- /dev/null +++ b/docs/docs/03-Concepts/04-Kubernetes/02-cluster-api.md @@ -0,0 +1,17 @@ +--- +title: Cluster API +sidebar_position: 2 +--- + +# Cluster API + +[Cluster API](https://cluster-api.sigs.k8s.io/) is a Kubernetes project that aims to simplify the management of Kubernetes clusters. It provides a declarative way to create, configure, and manage clusters using Kubernetes-style APIs. + +We provide the [Cluster API provider for metal-stack (CAPMS)](https://github.com/metal-stack/cluster-api-provider-metal-stack) infrastructure provider that allows the declaration of Kubernetes clusters. + +:::warning "Early Development Stage" +This project is currently under heavy development and is not advised to be used in production any time soon. +Please use our stack on top of [Gardener](./gardener.md) for production workloads. +::: + +Due to the early development stage of the project, all docs are currently in the [README](https://github.com/metal-stack/cluster-api-provider-metal-stack/blob/main/README.md) of the provider repository. diff --git a/docs/docs/03-Concepts/04-Kubernetes/03-cloud-controller-manager.md b/docs/docs/03-Concepts/04-Kubernetes/03-cloud-controller-manager.md new file mode 100644 index 0000000..4a8f453 --- /dev/null +++ b/docs/docs/03-Concepts/04-Kubernetes/03-cloud-controller-manager.md @@ -0,0 +1,10 @@ +--- +title: Cloud Controller Manager +sidebar_position: 3 +--- + +# metal-ccm + +CCM stands for [cloud-controller-manager](https://kubernetes.io/docs/concepts/architecture/cloud-controller/) and is the bridge between Kubernetes and a cloud-provider. + +We implemented the [cloud provider interface](https://github.com/kubernetes/cloud-provider/blob/master/cloud.go) in the [metal-ccm](https://github.com/metal-stack/metal-ccm) repository. With the help of the cloud-controller-controller we provide metal-stack-specific properties for Kubernetes clusters, e.g. load balancer configuration through MetalLB or node properties. diff --git a/docs/docs/03-Concepts/04-Kubernetes/04-firewall-controller-manager.md b/docs/docs/03-Concepts/04-Kubernetes/04-firewall-controller-manager.md new file mode 100644 index 0000000..ae1c791 --- /dev/null +++ b/docs/docs/03-Concepts/04-Kubernetes/04-firewall-controller-manager.md @@ -0,0 +1,14 @@ +--- +title: Firewall Controller Manager +sidebar_position: 4 +--- + +# Firewall Management + +To make the firewalls created with metal-stack easily configurable through Kubernetes resources, we add our [firewall-controller](https://github.com/metal-stack/firewall-controller) to the firewall image. The controller watches special CRDs, enabling users to manage: + +- nftables rules +- Intrusion-detection with [suricata](https://suricata.io/) +- network metric collection + +Please check out the [guide](../../references/external/firewall-controller/README.md) on how to use it. diff --git a/docs/docs/03-Concepts/isolated-kubernetes.md b/docs/docs/03-Concepts/04-Kubernetes/05-isolated-clusters.md similarity index 95% rename from docs/docs/03-Concepts/isolated-kubernetes.md rename to docs/docs/03-Concepts/04-Kubernetes/05-isolated-clusters.md index fe82810..89bd9d9 100644 --- a/docs/docs/03-Concepts/isolated-kubernetes.md +++ b/docs/docs/03-Concepts/04-Kubernetes/05-isolated-clusters.md @@ -1,7 +1,6 @@ --- -slug: /isolated-kubernetes -title: Isolated Kubernetes -sidebar_position: 6 +title: Isolated Clusters +sidebar_position: 5 --- # Isolated Kubernetes Clusters @@ -26,7 +25,7 @@ In order to be able to restrict ingress and egress internet traffic, but still m - DNS and NTP configuration is also adopted to use the DNS and NTP servers on this private environment. - A list of networks which are allowed to reach is managed, this list reflects the networks of the cloud provider and is not modifiable by the cluster user. This list usually contains the internet prefixes of the provider and one or more RFC address ranges. -![Network Design](./assets/isolated-kubernetes.drawio.svg) +![Network Design](isolated-kubernetes.drawio.svg) Users are advised to attach an additional network to the Kubernetes cluster in order to be able to pull container images for the application workloads from private registries. @@ -61,7 +60,7 @@ The set of deployed CWNPs differs between `baseline` and `forbidden`/`restricted `baseline` CWNPs: | Rule Name | Destination | Purpose | -| :----------------- | :--------------------------------------------------- | :------------------------------------------------------------------------------------------- | +|:-------------------|:-----------------------------------------------------|:---------------------------------------------------------------------------------------------| | allow-to-http | 0.0.0.0/0 | egress via http | | allow-to-https | 0.0.0.0/0 | egress via https | | allow-to-apiserver | IP of the Kubernetes API Server on the control plane | API Server communication of kubelet and other controllers | @@ -73,7 +72,7 @@ The set of deployed CWNPs differs between `baseline` and `forbidden`/`restricted `forbidden` and `restricted` CWNPs: | Rule Name | Destination | Purpose | -| :----------------- | :--------------------------------------------------- | :------------------------------------------------------------------------------------------- | +|:-------------------|:-----------------------------------------------------|:---------------------------------------------------------------------------------------------| | allow-to-apiserver | IP of the Kubernetes API Server on the control plane | API Server communication of kubelet and other controllers | | allow-to-dns | IP of the private DNS Server | DNS resolution from the Kubernetes worker nodes and containers | | allow-to-ntp | IP of the private NTP Server | Time synchronization | @@ -261,33 +260,33 @@ type RegistryMirror struct { A sample configuration in the CloudProfile would look like: ```yaml -network-isolation: - allowedNetworks: - egress: + network-isolation: + allowedNetworks: + egress: - 1.2.3.0/24 # Internet CIDR of the Provider - 100.64.0.0/10 - 10.0.0.0/8 - ingress: + ingress: - 100.64.0.0/10 - dnsServers: - - "1.2.3.1" - - "1.2.3.2" - - "1.2.3.3" - ntpServers: - - "1.2.3.1" - - "1.2.3.2" - - "1.2.3.3" - registryMirrors: - - name: test registry - endpoint: https://some.private.registry - ip: "1.2.3.4" - port: 443 - mirrorOf: - - "docker.io" - - "quay.io" - - "eu.gcr.io" - - "ghcr.io" - - "registry.k8s.io" + dnsServers: + - "1.2.3.1" + - "1.2.3.2" + - "1.2.3.3" + ntpServers: + - "1.2.3.1" + - "1.2.3.2" + - "1.2.3.3" + registryMirrors: + - name: test registry + endpoint: https://some.private.registry + ip: "1.2.3.4" + port: 443 + mirrorOf: + - "docker.io" + - "quay.io" + - "eu.gcr.io" + - "ghcr.io" + - "registry.k8s.io" ``` The GEPM generates machine classes for the MCM that contain the NTP and DNS configuration for the machine. The machine-controller-manager-provider-metal implements machine creation containing these properties through the metal-api. diff --git a/docs/docs/04-For Operators/02-Overview/gpu-support.md b/docs/docs/03-Concepts/04-Kubernetes/06-gpu-workers.md similarity index 96% rename from docs/docs/04-For Operators/02-Overview/gpu-support.md rename to docs/docs/03-Concepts/04-Kubernetes/06-gpu-workers.md index b38ebfc..250ec82 100644 --- a/docs/docs/04-For Operators/02-Overview/gpu-support.md +++ b/docs/docs/03-Concepts/04-Kubernetes/06-gpu-workers.md @@ -1,10 +1,9 @@ --- -slug: /gpu-support -title: GPU Support -sidebar_position: 7 +title: GPU Workers +sidebar_position: 6 --- -# GPU Support +# GPU Workers For workloads which require the assistance of GPUs, support for GPUs in bare metal servers was added to metal-stack.io v0.18.0. @@ -50,9 +49,10 @@ Capacity: With this basic installation, the worker node is ready to process GPU workloads. -!!! warning +:::warning However, there is a caveat - only one 'Pod' can access the GPU. If this is all you need, no additional configuration is required. On the other hand, if you are planning to deploy multiple applications that require GPU support, and there are not that many GPUs available, you will need to configure the `gpu-operator` to allow the GPU to be shared between multiple `Pods`. +::: There are several approaches to sharing GPUs, please consult the official Nvidia documentation for further reference. diff --git a/docs/docs/04-For Operators/02-Overview/storage.md b/docs/docs/03-Concepts/04-Kubernetes/07-storage.md similarity index 83% rename from docs/docs/04-For Operators/02-Overview/storage.md rename to docs/docs/03-Concepts/04-Kubernetes/07-storage.md index 252bf4f..f4b10ee 100644 --- a/docs/docs/04-For Operators/02-Overview/storage.md +++ b/docs/docs/03-Concepts/04-Kubernetes/07-storage.md @@ -1,7 +1,6 @@ --- -slug: /storage title: Storage -sidebar_position: 8 +sidebar_position: 7 --- # Storage @@ -18,13 +17,13 @@ In the meantime, we have started to integrate third-party solutions into our met - Built-in multi-tenant capabilities - Configurable compression and replication factors -We are maintaining an open source integration for running LightOS in our [Gardener](/docs/kubernetes) cluster provisioning. You can enable it through the controller registration of the [gardener-extension-provider-metal](https://github.com/metal-stack/gardener-extension-provider-metal). +We are maintaining an open source integration for running LightOS in our [Gardener](gardener.md) cluster provisioning. You can enable it through the controller registration of the [gardener-extension-provider-metal](https://github.com/metal-stack/gardener-extension-provider-metal). With the integration in place, the extension-provider deploys a [duros-controller](https://github.com/metal-stack/duros-controller) along with a Duros Storage CRD into the seed's shoot namespace. The duros-controller takes care of creating projects and managing credentials at the Lightbits Duros API. It also provides storage classes as configured in the extension-provider's controller registration to the customer's shoot cluster such that users can start consuming the Lightbits storage immediately. ## Simple Node Local Storage with csi-driver-lvm -If you wish to quickly start off with cluster provisioning without caring so much about complex cloud storage solutions, we recommend using a small storage driver we wrote called [csi-driver-lvm](https://github.com/metal-stack/csi-driver-lvm). It provides a storage class that manages node-local storage through [LVM](). +If you wish to quickly start off with cluster provisioning without caring so much about complex cloud storage solutions, we recommend using a small storage driver we wrote called [csi-driver-lvm](https://github.com/metal-stack/csi-driver-lvm). It provides a storage class that manages node-local storage through [LVM](https://en.wikipedia.org/wiki/Logical_Volume_Manager_(Linux)). A definition of a PVC can look like this: @@ -35,11 +34,11 @@ metadata: name: csi-pvc spec: accessModes: - - ReadWriteOnce + - ReadWriteOnce resources: requests: storage: 100Mi storageClassName: csi-lvm-sc-linear ``` -The solution does not provide cloud-storage or whatsoever, but it improves the user's accessibility of local storage on bare-metal machines through Kubernetes. Check out the driver's documentation [here](../external/csi-driver-lvm/README.md). +The solution does not provide cloud-storage or whatsoever, but it improves the user's accessibility of local storage on bare-metal machines through Kubernetes. Check out the driver's documentation [here](../../references/external/csi-driver-lvm/README.md). diff --git a/docs/docs/03-Concepts/04-Kubernetes/isolated-kubernetes.drawio.svg b/docs/docs/03-Concepts/04-Kubernetes/isolated-kubernetes.drawio.svg new file mode 100644 index 0000000..a34a14d --- /dev/null +++ b/docs/docs/03-Concepts/04-Kubernetes/isolated-kubernetes.drawio.svg @@ -0,0 +1,284 @@ + + + + + + + + +
+
+
+ Isolated Cluster +
+
+
+
+ + Isolated Cluster + +
+
+ + + + +
+
+
+ Firewall +
+
+
+
+ + Firewall + +
+
+ + + + +
+
+
+ Service Type Loadbalancer +
+
+
+
+ + Service Type Load... + +
+
+ + + + + +
+
+
+ Pod +
+
+
+
+ + Pod + +
+
+ + + + +
+
+
+ Pod +
+
+
+
+ + Pod + +
+
+ + + + + + + +
+
+
+ CWNP +
+
+
+
+ + CWNP + +
+
+ + + + +
+
+
+ Infrastructure Cluster +
+
+
+
+ + Infrastructure Cluster + +
+
+ + + + +
+
+
+ NTP Server +
+
+
+
+ + NTP Server + +
+
+ + + + +
+
+
+ DNS Server +
+
+
+
+ + DNS Server + +
+
+ + + + +
+
+
+ Registry Mirror +
+
+
+
+ + Registry Mirror + +
+
+ + + + +
+
+
+ Firewall +
+
+
+
+ + Firewall + +
+
+ + + + + + + +
+
+
+ Ingress-Controller +
+
+
+
+ + Ingress-Controller + +
+
+ + + + +
+
+
+ + Internet + +
+
+
+
+ + Internet + +
+
+ + + + +
+
+
+ + Private Network + +
+
+
+
+ + Private Network + +
+
+ + + + + + + +
+
+
+ Private Registry +
+
+
+
+ + Private Registry + +
+
+ +
+ + + + + Text is not SVG - cannot display + + + +
\ No newline at end of file diff --git a/docs/docs/03-Concepts/comparison.md b/docs/docs/03-Concepts/comparison.md deleted file mode 100644 index a6208fa..0000000 --- a/docs/docs/03-Concepts/comparison.md +++ /dev/null @@ -1,59 +0,0 @@ ---- -slug: /comparision -title: Comparison -sidebar_position: 9 ---- - -# Comparison with Commercial Solutions - -As metal-stack is the foundation to build Kubernetes clusters on premise on bare metal, there are several commercial solutions available which offer management of Kubernetes. -In this document we describe the differences between some of the most popular solutions. It´s is not a complete list. - -Comparison between Gardener on Metal Stack and Openshift running on VMWare. - -## Gardener - -[Gardener](https://gardener.cloud) is a Kubernetes cluster manager to organize a fleet of Kubernetes clusters at scale. It is designed to scale to thousands of clusters at a variety of IaaS Providers regardless where - in the cloud or on premise, virtualized or bare metal. -It not only manages the creation and deletion of Kubernetes clusters, it also takes care of updating or upgrading Kubernetes and the operating system of the involved worker nodes in a automatic manner. Gardener is designed cloud-native and as such, it defines clusters, workers and all other components as Kubernetes resources (like pods and deployments) and reconciles these resources to the desired state. - -## Kubernetes - -[Kubernetes](https://kubernetes.io) is the de facto open-source standard for container scheduling and orchestration in the data center. - -## Openshift - -A fork of Kubernetes with proprietary addons, created by RedHat. For all details see: [https://en.wikipedia.org/wiki/OpenShift](https://en.wikipedia.org/wiki/OpenShift). - -## metal-stack - -Is an [IaaS](https://en.wikipedia.org/wiki/Infrastructure_as_a_service) provider for bare metal focused to create Kubernetes cluster on premise. Gardener support is built in. - -## VMWare - -The most used virtualization technology in the enterprise data centers. - -## Comparison of Gardener on Metal Stack vs. Openshift on VMWare - -| Feature | Gardener on Metal Stack | Openshift on VMWare | -| :----------------------------- | :------------------------------------------------------------------------------------------------------------ | :---------------------------------------------------------- | -| Container Runtime | docker, containerd, gvisor | cri-o | -| Host Operating System | Ubuntu, Debian , also see [OS](os.md) | RHEL, Fedora-Core | -| Network Plugins | Calico, Cilium(soon) | Openshift SDN | -| Storage | Local NVME, Lightbits NVMEoTCP, all CSI compatible Solutions, also see [Storage](storage.md) | CSI compatible | -| Loadbalancing | BGP built in | requires extra HW like F5, VMWare NSX | -| IO at Native Speed | Pods run on bare metal | all IO must go through the Hypervisor | -| Hard Multitenancy | Workers, firewall and load balancers are dedicated for every cluster on bare metal | Shared virtualization hosts, shared load balancers | -| UI | Gardener Dashboard | Openshift Console | -| Multi-cluster management | Yes (through Gardener) | Requires extra licences SW: Redhat Advanced Cluster Manager | -| Automatic Kubernetes Updates | Yes | Yes | -| Automatic Worker Nodes Updates | Yes | Yes | -| Supported IaaS Providers | GCP, AWS, Azure, Alibaba, Openstack, VMWare, metal-stack and more | GCP, AWS, Azure Openstack, VMWare | -| Monitoring / Logging Stack | Grafana/Loki, Kibana/Elastic | Kibana/Elastic | -| GitOPS | Tool of choice via Helm Install | Openshift GitOPS | -| Container Registry | all public accessible registries, private deployed registry of choice | all public accessible registries, in cluster registry | -| CI/CD | Tool of choice via Helm Install | Jenkins | -| Security | K8s control plane isolated from tenant, PSP enabled by default | Strong cluster defaults | -| CNCF Kubernetes certified | Yes (Gardener) | Yes | -| Local development | [minikube](https://minikube.sigs.k8s.io/docs/start/), [kind](https://kind.sigs.k8s.io/docs/user/quick-start/) | [minishift](https://github.com/minishift/minishift) | -| Proprietary extensions | No | DeploymentConfig and others | -| kubectl access | Yes | Yes | diff --git a/docs/docs/04-For Operators/02-Overview/hardware.md b/docs/docs/04-For Operators/01-hardware.md similarity index 59% rename from docs/docs/04-For Operators/02-Overview/hardware.md rename to docs/docs/04-For Operators/01-hardware.md index 0aebcf0..7a9a9f3 100644 --- a/docs/docs/04-For Operators/02-Overview/hardware.md +++ b/docs/docs/04-For Operators/01-hardware.md @@ -1,7 +1,7 @@ --- slug: /hardware -title: Hardware -sidebar_position: 3 +title: Hardware Support +sidebar_position: 1 --- # Hardware Support @@ -15,7 +15,7 @@ We came up with a repository called [go-hal](https://github.com/metal-stack/go-h The following server types are officially supported and verified by the metal-stack project: | Vendor | Series | Model | Board Type | Status | -| ---------- | ----------- | ---------------- | :------------- | :----- | +|------------|-------------|------------------|:---------------|:-------| | Supermicro | Big-Twin | SYS-2029BT-HNR | X11DPT-B | stable | | Supermicro | Big-Twin | SYS-220BT-HNTR | X12DPT-B6 | stable | | Supermicro | SuperServer | SSG-5019D8-TR12P | X11SDV-8C-TP8F | stable | @@ -33,29 +33,29 @@ Other server series and models might work but were not reported to us. The following GPU types are officially supported and verified by the metal-stack project: | Vendor | Model | Status | -| ------ | -------- | :----- | +|--------|----------|:-------| | NVIDIA | RTX 6000 | stable | | NVIDIA | H100 | stable | -Other GPU models might work but were not reported to us. For a detailed description howto use GPU support in a kubernetes cluster please check this [documentation](gpu-support.md) +Other GPU models might work but were not reported to us. For a detailed description howto use GPU support in a kubernetes cluster please check this [documentation](../concepts/kubernetes/gpu-workers.md) ## Network Cards The following network cards are officially supported and verified by the metal-stack project for usage in servers: -| Vendor | Series | Model | Status | -| -------- | ---------- | --------------------------- | :----- | -| Intel | XXV710 | DA2 DualPort 2x25G SFP28 | stable | -| Intel | E810 | DA2 DualPort 2x25G SFP28 | stable | -| Intel | E810 | CQDA2 DualPort 2x100G SFP28 | stable | -| Mellanox | ConnectX-5 | MCX512A-ACAT 2x25G SFP28 | stable | +| Vendor | Series | Model | Status | +|----------|------------|------------------------------|:-------| +| Intel | XXV710 | DA2 DualPort 2x25G SFP28 | stable | +| Intel | E810 | DA2 DualPort 2x25G SFP28 | stable | +| Intel | E810 | CQDA2 DualPort 2x100G QSFP28 | stable | +| Mellanox | ConnectX-5 | MCX512A-ACAT 2x25G SFP28 | stable | ## Switches The following switch types are officially supported and verified by the metal-stack project: | Vendor | Series | Model | OS | Status | -| :-------- | :------------ | :---------- | :------------- | :----- | +|:----------|:--------------|:------------|:---------------|:-------| | Edge-Core | AS4600 Series | AS4625-54T | Edgecore SONiC | stable | | Edge-Core | AS4600 Series | AS4630-54TE | Edgecore SONiC | stable | | Edge-Core | AS7700 Series | AS7712-32X | Cumulus 3.7.13 | stable | @@ -65,28 +65,29 @@ The following switch types are officially supported and verified by the metal-st Other switch series and models might work but were not reported to us. -!!! warning +:::warning - On our switches we run [SONiC](https://sonicfoundation.dev). The metal-core writes network configuration specifically implemented for this operating system. Please also consider running SONiC on your switches if you do not want to run into any issues with networking. +On our switches we run [SONiC](https://sonicfoundation.dev). The metal-core writes network configuration specifically implemented for this operating system. Please also consider running SONiC on your switches if you do not want to run into any issues with networking. - Our previous support for [Cumulus Linux](hhttps://www.nvidia.com/en-us/networking/ethernet-switching/cumulus-linux/) will come to an end. +Our previous support for [Cumulus Linux](hhttps://www.nvidia.com/en-us/networking/ethernet-switching/cumulus-linux/) will come to an end. - Of course, contributions for supporting other switch vendors and operating systems are highly appreciated. - -## Portable metal-stack Setup DIY +Of course, contributions for supporting other switch vendors and operating systems are highly appreciated. +::: +## Portable metal-stack Setup A minimal physical hardware setup may contain at least the following components: -!!! warning - - This setup should work as the components are very similar to the currently supported ones but it's currently untested. +:::warning +This setup dedicated to testing environments, getting to know the metal-stack software and discussing BOMs for production setups. +::: -| # | Vendor | Series | Model | Function | -| :-- | :--------- | :------------ | :------------------ | :----------------------------------------------------------------------- | -| 2x | Edge-Core | AS5500 Series | AS5512-54x (10G) | Leaf / Exit switches | -| 1x | Supermicro | Microcloud | SYS-5039MA16-H12RFT | Usable machines | -| 1x | Teltonika | Router | RUTXR1 | Front router for internet and out-of-band access to servers and switches | +| # | Vendor | Series | Model | Function | +|:---|:-----------|:--------------|:--------------------|:-------------------------------------------------------------------------| +| 1x | EdgeCore | AS5500 Series | AS4630-54x (1G) | Management Switch and Management Server | +| 2x | EdgeCore | AS5500 Series | AS4625-54x (1G) | Leaf switches | +| 1x | Supermicro | Microcloud | 3015MR-H8TNR | Usable machines | +| 1x | Teltonika | Router | RUTXR1 | Front router for internet and out-of-band access to servers and switches | -Besides that, a 6HE rack with 1000mm depth and a portable LTE modem is needed. +This setup will yield in 8 usable machines, one of them can be configured to provide persistent CSI storage. -This MVP will yield in 12 usable machines, one of them will be reserved as management server. +![Portable metal-stack Setup](starter.jpg) diff --git a/docs/docs/04-For Operators/02-Overview/_category_.json b/docs/docs/04-For Operators/02-Overview/_category_.json deleted file mode 100644 index 41f275f..0000000 --- a/docs/docs/04-For Operators/02-Overview/_category_.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "position": 2, - "label": "Overview" -} diff --git a/docs/docs/04-For Operators/02-Overview/operating-systems.md b/docs/docs/04-For Operators/02-operating-systems.md similarity index 90% rename from docs/docs/04-For Operators/02-Overview/operating-systems.md rename to docs/docs/04-For Operators/02-operating-systems.md index d95cf4e..17d91de 100644 --- a/docs/docs/04-For Operators/02-Overview/operating-systems.md +++ b/docs/docs/04-For Operators/02-operating-systems.md @@ -1,7 +1,7 @@ --- slug: /operating-systems title: Operating Systems -sidebar_position: 4 +sidebar_position: 2 --- # Operating Systems @@ -31,7 +31,7 @@ The supported images for firewalls are: It is fully possible to build your own operating system images and provide them through the metal-stack. -There are some conventions though that you need to follow in order to make your image installable through the metal-hammer. You should understand the [machine provisioning sequence](architecture.md#Machine-Provisioning-Sequence-1) before starting to write your own images. +There are some conventions though that you need to follow in order to make your image installable through the metal-hammer. You should understand the [machine provisioning sequence](../concepts/architecture.md#Machine-Provisioning-Sequence-1) before starting to write your own images. 1. Images need to be compressed to a tarball using the [lz4](https://de.wikipedia.org/wiki/LZ4) compression algorithm 1. An `md5` checksum file with the same name as the image archive needs to be provided in the download path along with the actual os image @@ -47,6 +47,6 @@ There are some conventions though that you need to follow in order to make your 1. For the time being, your image must be able to support [kexec](https://en.wikipedia.org/wiki/Kexec) into the new operating system kernel, the `kexec` command is issued by the metal-hammer after running the `install.sh`. We do this because `kexec` is _much_ faster than rebooting a machine. 1. We recommend building images from Dockerfiles as it is done in [metal-images](https://github.com/metal-stack/metal-images) repository. -!!! info - - Building own operating system images is an advanced topic. When you have just started with metal-stack, we recommend using the public operating system images first. +:::info +Building own operating system images is an advanced topic. When you have just started with metal-stack, we recommend using the public operating system images first. +::: diff --git a/docs/docs/04-For Operators/04-Installation-Administration/deployment.md b/docs/docs/04-For Operators/03-deployment-guide.md similarity index 88% rename from docs/docs/04-For Operators/04-Installation-Administration/deployment.md rename to docs/docs/04-For Operators/03-deployment-guide.md index a0370ab..4f2e4b7 100644 --- a/docs/docs/04-For Operators/04-Installation-Administration/deployment.md +++ b/docs/docs/04-For Operators/03-deployment-guide.md @@ -1,12 +1,12 @@ --- -slug: /deployment -title: Deployment -sidebar_position: 1 +slug: /deployment-guide +title: Deployment Guide +sidebar_position: 3 --- -# Deploying metal-stack +# Deployment Guide -We are bootstrapping the [metal control plane](../overview/architecture.md#Metal-Control-Plane-1) as well as our [partitions](../overview/architecture.md#Partitions-1) with [Ansible](https://www.ansible.com/) through CI. +We are bootstrapping the [metal control plane](../concepts/architecture.md#Metal-Control-Plane-1) as well as our [partitions](../concepts/architecture.md#Partitions-1) with [Ansible](https://www.ansible.com/) through CI. In order to build up your deployment, we recommend to make use of the same Ansible roles that we are using by ourselves in order to deploy the metal-stack. You can find them in the repository called [metal-roles](https://github.com/metal-stack/metal-roles). @@ -14,25 +14,25 @@ In order to wrap up deployment dependencies there is a special [deployment base This document will from now on assume that you want to use our Ansible deployment roles for setting up metal-stack. We will also use the deployment base image, so you should also have [Docker](https://docs.docker.com/get-started/get-docker/) installed. It is in the nature of software deployments to differ from site to site, company to company, user to user. Therefore, we can only describe you the way of how the deployment works for us. It is up to you to tweak the deployment described in this document to your requirements. -!!! warning +:::warning +Probably you need to learn writing Ansible playbooks if you want to be able to deploy the metal-stack as presented in this documentation. However, even when starting without any knowledge about Ansible it should be possible to follow these docs. In case you need further explanations regarding Ansible please refer to [docs.ansible.com](https://docs.ansible.com/). +::: - Probably you need to learn writing Ansible playbooks if you want to be able to deploy the metal-stack as presented in this documentation. However, even when starting without any knowledge about Ansible it should be possible to follow these docs. In case you need further explanations regarding Ansible please refer to [docs.ansible.com](https://docs.ansible.com/). +:::info +If you do not want to use Ansible for deployment, you need to come up with a deployment mechanism by yourself. However, you will probably be able to re-use some of our contents from our [metal-roles](https://github.com/metal-stack/metal-roles) repository, e.g. the Helm chart for deploying the metal control plane. +::: -!!! info - - If you do not want to use Ansible for deployment, you need to come up with a deployment mechanism by yourself. However, you will probably be able to re-use some of our contents from our [metal-roles](https://github.com/metal-stack/metal-roles) repository, e.g. the Helm chart for deploying the metal control plane. - -!!! tip - - You can use the [mini-lab](https://github.com/metal-stack/mini-lab) as a template project for your own deployment. It uses the same approach as described in this document. +:::tip +You can use the [mini-lab](https://github.com/metal-stack/mini-lab) as a template project for your own deployment. It uses the same approach as described in this document. +::: ## Metal Control Plane Deployment The metal control plane is typically deployed in a Kubernetes cluster. Therefore, this document will assume that you have a Kubernetes cluster ready for getting deployed. Even though it is theoretically possible to deploy metal-stack without Kubernetes, we strongly advise you to use the described method because we believe that Kubernetes gives you a lot of benefits regarding the stability and maintainability of the application deployment. -!!! tip - - For metal-stack it does not matter where your control plane Kubernetes cluster is located. You can of course use a cluster managed by a hyperscaler. This has the advantage of not having to setup Kubernetes by yourself and could even become beneficial in terms of fail-safe operation. However, we also describe a solution of how to setup metal-stack with a self-hosted, [Autonomous Control Plane](./autonomous-control-plane.md) cluster. The only requirement from metal-stack is that your partitions can establish network connections to the metal control plane. If you are interested, you can find a reasoning behind this deployment decision [here](../overview/architecture.md#Target-Deployment-Platforms). +:::tip +For metal-stack it does not matter where your control plane Kubernetes cluster is located. You can of course use a cluster managed by a hyperscaler. This has the advantage of not having to setup Kubernetes by yourself and could even become beneficial in terms of fail-safe operation. However, we also describe a solution of how to setup metal-stack with a self-hosted, [Autonomous Control Plane](../developers/proposals/MEP18/README.md) cluster. The only requirement from metal-stack is that your partitions can establish network connections to the metal control plane. If you are interested, you can find a reasoning behind this deployment decision [here](../concepts/architecture.md#Target-Deployment-Platforms). +::: Let's start off with a fresh folder for your deployment: @@ -218,9 +218,9 @@ This is how your `roles/ingress-controller/tasks/main.yaml` could look like: helm_target_namespace: ingress-nginx ``` -!!! tip - - The [ansible-common](https://github.com/metal-stack/ansible-common) repository contains very general roles and modules that you can also use when extending your deployment further. +:::tip +The [ansible-common](https://github.com/metal-stack/ansible-common) repository contains very general roles and modules that you can also use when extending your deployment further. +::: ### Deployment Parametrization @@ -235,7 +235,7 @@ metal_control_plane_ingress_dns: # if you do not have a DNS en We have several components in our stack that communicate over encrypted gRPC just like Kubernetes components do. -For the very basic setup you will need to create self-signed certificates for the communication between the following components (see [architecture](../overview/architecture.md) document): +For the very basic setup you will need to create self-signed certificates for the communication between the following components (see [architecture](../concepts/architecture.md) document): - [metal-api](https://github.com/metal-stack/metal-api) and [masterdata-api](https://github.com/metal-stack/masterdata-api) (in-cluster traffic communication) - [metal-api](https://github.com/metal-stack/metal-api) and [metal-hammer](https://github.com/metal-stack/metal-hammer) (partition to control plane communication) @@ -442,9 +442,9 @@ metal_api_grpc_certs_client_cert: "{{ lookup('file', 'certs/metal-api-grpc/clie metal_api_grpc_certs_ca_cert: "{{ lookup('file', 'certs/ca.pem') }}" ``` -!!! tip - - For the actual communication between the metal-api and the user clients (REST API, runs over the ingress-controller you deployed before), you can simply deploy a tool like [cert-manager](https://github.com/cert-manager/cert-manager) into your Kubernetes cluster, which will automatically provide your ingress domains with Let's Encrypt certificates. +:::tip +For the actual communication between the metal-api and the user clients (REST API, runs over the ingress-controller you deployed before), you can simply deploy a tool like [cert-manager](https://github.com/cert-manager/cert-manager) into your Kubernetes cluster, which will automatically provide your ingress domains with Let's Encrypt certificates. +::: ### Running the Deployment @@ -464,7 +464,7 @@ docker run --rm -it \ -e KUBECONFIG="${KUBECONFIG}" \ -e K8S_AUTH_KUBECONFIG="${KUBECONFIG}" \ -e ANSIBLE_INVENTORY=inventories/control-plane.yaml \ - metalstack/metal-deployment-base:%s \ + ghcr.io/metal-stack/metal-deployment-base:%s \ /bin/bash -ce \ "ansible-playbook obtain_role_requirements.yaml ansible-galaxy install -r requirements.yaml @@ -475,9 +475,9 @@ docker run --rm -it \ markdownTemplate(t, base_image) ```` -!!! tip - - If you are having issues regarding the deployment take a look at the [troubleshoot document](troubleshoot.md). Please give feedback such that we can make the deployment of the metal-stack easier for you and for others! +:::tip +If you are having issues regarding the deployment take a look at the [troubleshoot document](troubleshoot.md). Please give feedback such that we can make the deployment of the metal-stack easier for you and for others! +::: ### Providing Images @@ -501,9 +501,9 @@ metal_api_images: Then, re-run the deployment to apply your changes. Our playbooks are idempotent. -!!! info - - Image versions should be regularly checked for updates. +:::info +Image versions should be regularly checked for updates. +::: ### Setting up metalctl @@ -551,34 +551,26 @@ metal-stack currently supports two authentication methods: - user authentication through [OpenID Connect](https://openid.net/developers/how-connect-works/) (OIDC) - [HMAC](https://en.wikipedia.org/wiki/HMAC) auth, typically used for access by technical users (because we do not have service account tokens at the time being) -In the metal-api, we have three different user roles for authorization: - -- Admin -- Edit -- View - -How the user permissions are used is documented in the [technical API docs](../apidocs/apidocs.md). - If you decided to use OIDC, you can parametrize the [metal role](https://github.com/metal-stack/metal-roles/tree/master/control-plane/roles/metal) for this by defining the variable `metal_masterdata_api_tenants` with the following configuration: ```yaml --- metal_masterdata_api_tenants: - - meta: - id: - kind: Tenant - apiversion: v1 - version: 0 - name: - iam_config: - issuer_config: +- meta: + id: + kind: Tenant + apiversion: v1 + version: 0 + name: + iam_config: + issuer_config: client_id: url: - idm_config: - idm_type: # "AD" | "UX" - group_config: - namespace_max_length: 20 - description: + idm_config: + idm_type: # "AD" | "UX" + group_config: + namespace_max_length: 20 + description: ``` ## Bootstrapping a Partition @@ -605,7 +597,7 @@ In order to accomplish this task remotely and in a nearly automatic manner, you This document assumes that all cabling is done. Here is a quick overview of the architecture: -![Out-of-Band-Network](./assets/mgmt_net_layer3.png) +![Out-of-Band-Network](mgmt_net_layer3.png) ### Management Firewalls @@ -636,9 +628,9 @@ After the CI runner has been installed, you can trigger your Playbooks from the ### Management Spines -!!! tip - - If you are using SONiC switches, you should make use of Zero Touch Provisioning and Onie Boot +:::tip +If you are using SONiC switches, you should make use of Zero Touch Provisioning and Onie Boot +::: The purpose of these switches is to connect the management interfaces of all switches to the management servers. The management spine's own management interface is connected to the management firewall for the bootstrapping of the management spine itself. The management firewall will provide a DHCP address and DHCP options to start SONiC's [Zero Touch Provisioning](https://github.com/sonic-net/SONiC/blob/master/doc/ztp/ztp.md); the images for all switches are downloaded from the management server (nginx container). Each management leaf is connected to both management spines to provide redundant connectivity to both management servers. BGP is used as a routing protocol such that, when a link goes down, an alternate path is used. @@ -658,9 +650,9 @@ If you want to deploy metal-stack as a cloud provider for [Gardener](https://gar You can find installation instructions for Gardener on the Gardener website beneath [docs](https://gardener.cloud/docs/). metal-stack is an out-of-tree provider and therefore you will not find example files for metal-stack resources in the Gardener repositories. The following list describes the resources and components that you need to deploy into the Gardener cluster in order to make Gardener work with metal-stack: -!!! warning - - The following list assumes you have Gardener installed in a Kubernetes cluster and that you have a basic understanding of how Gardener works. If you need further help with the following steps, you can also come and ask in our Slack channel. +:::warning +The following list assumes you have Gardener installed in a Kubernetes cluster and that you have a basic understanding of how Gardener works. If you need further help with the following steps, you can also come and ask in our Slack channel. +::: 1. Deploy the [validator](https://github.com/metal-stack/gardener-extension-provider-metal/tree/v0.9.1/charts/validator-metal) from the [gardener-extension-provider-metal](https://github.com/metal-stack/gardener-extension-provider-metal) repository to your cluster via Helm 1. Add a [cloud profile](https://github.com/gardener/gardener/blob/v1.3.3/example/30-cloudprofile.yaml) called `metal` containing all your machine images, machine types and regions (region names can be chosen freely, the zone names need to match your partition names) together with our metal-stack-specific provider config as defined [here](https://github.com/metal-stack/gardener-extension-provider-metal/blob/v0.9.1/pkg/apis/metal/v1alpha1/types_cloudprofile.go) @@ -691,6 +683,6 @@ You can find installation instructions for Gardener on the Gardener website bene 1. For your seed cluster you will need to provide the provider secret for metal-stack containing the key `metalAPIHMac`, which is the API HMAC to grant editor access to the metal-api 1. Checkout our current provider configuration for [infrastructure](https://github.com/metal-stack/gardener-extension-provider-metal/blob/master/pkg/apis/metal/v1alpha1/types_infrastructure.go) and [control-plane](https://github.com/metal-stack/gardener-extension-provider-metal/blob/master/pkg/apis/metal/v1alpha1/types_controlplane.go) before deploying your shoot -!!! tip - - We are officially supported by [Gardener dashboard](https://github.com/gardener/dashboard). The dashboard can also help you setting up some of the resources mentioned above. +:::tip +We are officially supported by [Gardener dashboard](https://github.com/gardener/dashboard). The dashboard can also help you setting up some of the resources mentioned above. +::: diff --git a/docs/docs/04-For Operators/04-Installation-Administration/_category_.json b/docs/docs/04-For Operators/04-Installation-Administration/_category_.json deleted file mode 100644 index 952d865..0000000 --- a/docs/docs/04-For Operators/04-Installation-Administration/_category_.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "position": 4, - "label": "Installation & Administration" -} diff --git a/docs/docs/04-For Operators/04-Installation-Administration/updates.md b/docs/docs/04-For Operators/04-Installation-Administration/updates.md deleted file mode 100644 index ad5ddf3..0000000 --- a/docs/docs/04-For Operators/04-Installation-Administration/updates.md +++ /dev/null @@ -1,51 +0,0 @@ ---- -slug: /releases-and-updates -title: Releases & Updates -sidebar_position: 2 ---- - -# Releases and Updates - -```@eval -using Docs - -version = releaseVersion() - -t = raw""" -Your are currently reading the documentation for the metal-stack `%s` release. -""" - -markdownTemplate(t, version) -``` - -Releases and integration tests are published through our [release repository](https://github.com/metal-stack/releases). You can also find the [release notes](https://github.com/metal-stack/releases/releases) for this metal-stack version in there. The release notes contain information about new features, upgrade paths and bug fixes. - -A release is created in the following way: - -- Individual repository maintainers within the metal-stack Github Org can publish a release of their component. -- This release is automatically pushed to the `develop` branch of the release repository by the metal-robot. -- The push triggers a small release integration test through the mini-lab. -- To contribute components that are not directly part of the release vector, a pull request must be made against the `develop` branch of the release repository. Release maintainers may push directly to the `develop` branch. -- The release maintainers can `/freeze` the `develop` branch, effectively stopping the metal-robot from pushing component releases to this branch. -- The `develop` branch is tagged by a release maintainer with a `-rc.x` suffix to create a **release candidate**. -- The release candidate must pass a large integration test suite on a real environment, which is currently run by FI-TS. It tests the entire machine provisioning engine including the integration with Gardener, the deployment, metal-images and Kubernetes conformance tests. -- If the integration tests pass, the PR of the `develop` branch must be approved by at least two release maintainers. -- A release is created via Github releases, including all release notes, with a tag on the `main` branch. - -If you want, you can sign up at our Slack channel where we are announcing every new release. Often, we provide additional information for metal-stack administrators and adopters at this place, too. - -## Update Policy - -For new features and breaking changes we create a new minor release of metal-stack. -For every minor release we present excerpts of the changes in a corresponding blog article published on metal-stack.io. - -It is not strictly necessary to cycle through the patch releases if you depend on the pure metal-stack components. -However, it is important to go through all the patch releases and apply all required actions from the release notes. -Therefore, we recommend to just install every patch release one by one in order to minimize possible problems during the update process. - -In case you depend on the Gardener integration, especially when using metal-stack roles for deploying Gardener, we strongly recommend installing every patch release version. -We increment our Gardener dependency version by version following the Gardener update policy. Jumping versions may lead to severe problems with the installation and should only be done if you really know what you are doing. - -!!! info - - If you use the Gardener integration of metal-stack do not skip any patch releases. You may skip patch releases if you depend on metal-stack only, but we recommend to just deploy every patch release one by one for the best possible upgrade experience. diff --git a/docs/docs/04-For Operators/04-maintenance.md b/docs/docs/04-For Operators/04-maintenance.md new file mode 100644 index 0000000..9c52b12 --- /dev/null +++ b/docs/docs/04-For Operators/04-maintenance.md @@ -0,0 +1,35 @@ +--- +slug: /maintenance +title: Maintenance +sidebar_position: 4 +--- + +## Update Policy + +For new features and breaking changes we create a new minor release of metal-stack. +For every minor release we present excerpts of the changes in a corresponding blog article published on metal-stack.io. + +It is not strictly necessary to cycle through the patch releases if you depend on the pure metal-stack components. +However, it is important to go through all the patch releases and apply all required actions from the release notes. +Therefore, we recommend to just install every patch release one by one in order to minimize possible problems during the update process. + +In case you depend on the Gardener integration, especially when using metal-stack roles for deploying Gardener, we strongly recommend installing every patch release version. +We increment our Gardener dependency version by version following the Gardener update policy. Jumping versions may lead to severe problems with the installation and should only be done if you really know what you are doing. + +:::info +If you use the Gardener integration of metal-stack do not skip any patch releases. You may skip patch releases if you depend on metal-stack only, but we recommend to just deploy every patch release one by one for the best possible upgrade experience. +::: + +## Releases + +Before upgrading your metal-stack installation, review the release notes carefully - they contain important information on required pre-upgrade actions and notable changes. These notes are currently shared via a dedicated Slack channel and are also available in the release on GitHub. Once you are prepared, you can deploy a new metal-stack version by updating the `metal_stack_release_version` variable in your Ansible configuration and trigger the corresponding deployment jobs in your CI. +metal-stack offers prebuilt system images for firewalls and worker machines, which can be downloaded from `images.metal-stack.io`. In offline or air-gapped setups, these images must either be synced into the partition-local [image-cache](https://github.com/metal-stack/metal-image-cache-sync) after they were added to the metal-api or be manually downloaded in advance and uploaded to your local S3-compatible storage. Ensure that the image paths and metadata are correctly maintained so the system can retrieve them during provisioning. +If you are using metal-stack in combination with Gardener and you do not run pre-production stages, we advise running some basic functional tests after upgrading metal-stack to ensure the installation is in a fully functional state (e.g. reconciling a bunch of shoot clusters with evaluation purpose, creating and deleting a shoot cluster). +metal-images for firewalls and worker nodes follow independent release cycles, typically driven by the need for security patches or system updates. When new images are made available, the machines must be re-provisioned to apply the updates. When using metal-stack in a Kubernetes context, this results in a rolling update of the cluster worker groups. +In a Gardener setup, image updates can be triggered by referencing the new image in the shoot spec. +Because all outbound traffic passes through the firewall node, this results in a short downtime of around 30 seconds. This interruption only occurs if the firewall image has actually changed. The process works as follows: a new firewall node is provisioned and configured in parallel with the existing one. Once setup is complete, traffic is switched over to the new node, and the old firewall is then decommissioned. This minimizes disruption while ensuring a seamless transition. +The worker nodes are rolled out one after the other and, if possible, the containers are redistributed to the machines that are still available. However, for unclustered stateful workloads like databases, temporary disruptions may occur during node restarts. + +## Rollback + +metal-stack employs forward-only database migrations (e.g., for RethinkDB), and each release undergoes thorough integration testing. However, rollback procedures are not included in test coverage. To maintain data integrity and system reliability, rolling back a full release is not supported and strongly discouraged. In the event of issues after an upgrade, it is possible to downgrade specific components rather than reverting the entire system. \ No newline at end of file diff --git a/docs/docs/04-For Operators/04-Installation-Administration/monitoring.md b/docs/docs/04-For Operators/05-monitoring.md similarity index 97% rename from docs/docs/04-For Operators/04-Installation-Administration/monitoring.md rename to docs/docs/04-For Operators/05-monitoring.md index 8c84a67..ca456ec 100644 --- a/docs/docs/04-For Operators/04-Installation-Administration/monitoring.md +++ b/docs/docs/04-For Operators/05-monitoring.md @@ -1,14 +1,14 @@ --- slug: /monitoring title: Monitoring -sidebar_position: 3 +sidebar_position: 5 --- # Monitoring the metal-stack ## Overview -![Monitoring Stack](./assets/monitoring-stack.svg) +![Monitoring Stack](monitoring-stack.svg) ## Logging diff --git a/docs/docs/04-For Operators/04-Installation-Administration/troubleshoot.md b/docs/docs/04-For Operators/06-troubleshoot.md similarity index 90% rename from docs/docs/04-For Operators/04-Installation-Administration/troubleshoot.md rename to docs/docs/04-For Operators/06-troubleshoot.md index c008a36..777a237 100644 --- a/docs/docs/04-For Operators/04-Installation-Administration/troubleshoot.md +++ b/docs/docs/04-For Operators/06-troubleshoot.md @@ -1,10 +1,9 @@ --- -slug: /troubleshoot -title: Troubleshoot -sidebar_position: 4 +slug: /troubleshooting +title: Troubleshooting +sidebar_position: 6 --- - -# Troubleshoot +# Troubleshooting This document summarizes help when something goes wrong and provides advice on debugging the metal-stack in certain situations. @@ -12,11 +11,6 @@ Of course, it is also advisable to check out the issues on the Github projects f If you still can't find a solution to your problem, please reach out to us and our community. We have a public Slack Channel to discuss problems, but you can also reach us via mail. Check out [metal-stack.io](https://metal-stack.io) for contact information. -```@contents -Pages = ["troubleshoot.md"] -Depth = 5 -``` - ## Deployment ### Ansible fails when the metal control plane helm chart gets applied @@ -50,9 +44,9 @@ metal-control-plane nsqd-6cd87f69c4-vtn9k 2/2 Runni If there are any failing pods, investigate those and look into container logs. This information should point you to the place where the deployment goes wrong. -!!! info - - Sometimes, you see a helm errors like "no deployed releases" or something like this. When a helm chart fails after the first deployment it could be that you have a chart installation still pending. Also, the control plane helm chart uses pre- and post-hooks, which creates [jobs](https://kubernetes.io/docs/concepts/workloads/controllers/job/) that helm expects to be completed before attempting another deployment. Delete the helm chart (use Helm 3) with `helm delete -n metal-control-plane metal-control-plane` and delete the jobs in the `metal-control-plane` namespace before retrying the deployment. +:::info +Sometimes, you see a helm errors like "no deployed releases" or something like this. When a helm chart fails after the first deployment it could be that you have a chart installation still pending. Also, the control plane helm chart uses pre- and post-hooks, which creates [jobs](https://kubernetes.io/docs/concepts/workloads/controllers/job/) that helm expects to be completed before attempting another deployment. Delete the helm chart (use Helm 3) with `helm delete -n metal-control-plane metal-control-plane` and delete the jobs in the `metal-control-plane` namespace before retrying the deployment. +::: ### In the mini-lab the control-plane deployment fails because my system can't resolve api.172.17.0.1.nip.io @@ -88,9 +82,9 @@ You need to add an exception for `nip.io` in your router configuration or add `1 The `metalctl machine issues` command gives you an overview over machines in your metal-stack environment that are in an unusual state. -!!! tip - - Machines that are known not to function properly, should be locked through `metalctl machine lock` and annotated with a description of the problem. This way, you can mark machine for replacement without being in danger of having a user allocating the faulty machine. +:::tip +Machines that are known not to function properly, should be locked through `metalctl machine lock` and annotated with a description of the problem. This way, you can mark machine for replacement without being in danger of having a user allocating the faulty machine. +::: In the following sections, you can look up the machine issues that are returned by `metalctl` and find out how to deal with them properly. @@ -106,7 +100,7 @@ This issue is special in a way that it prevents other issues from being evaluate When a machine has no partition, the [metal-hammer](https://github.com/metal-stack/metal-hammer) has not yet registered the machine at the [metal-api](https://github.com/metal-stack/metal-api). Instead, the machine was created through metal-stack's event machinery, which does not have a lot of information about a machine (e.g. a PXE boot event was reported from the pixiecore), or just by the [metal-bmc](https://github.com/metal-stack/metal-bmc) which discovered the machine through DHCP. -This can usually happen on the very first boot of a machine and the machine's [hardware is not supported](/docs/hardware) by metal-stack, leading to the [metal-bmc](https://github.com/metal-stack/metal-bmc) being unable to report BMC details to the metal-api (a metal-bmc report sets the partition id of a machine) and the metal-hammer not finishing the machine registration phase. +This can usually happen on the very first boot of a machine and the machine's [hardware is not supported](hardware.md) by metal-stack, leading to the [metal-bmc](https://github.com/metal-stack/metal-bmc) being unable to report BMC details to the metal-api (a metal-bmc report sets the partition id of a machine) and the metal-hammer not finishing the machine registration phase. To resolve this issue, you need to identify the machine in your metal-stack partition that emits PXE boot events and find the reason why it is not properly booting into the metal-hammer. The console logs of this machine should enable you to find out the root cause. @@ -126,11 +120,11 @@ Reasons for this can be: - The machine takes longer than 5 minutes for the reboot - The machine is performing a firmware upgrade, which usually takes longer than 5 minutes to succeed -!!! info - - In order to minimize maintenance overhead, a machine which is dead for longer than an hour will be rebooted through the metal-api. +:::info +In order to minimize maintenance overhead, a machine which is dead for longer than an hour will be rebooted through the metal-api. - In case you want to prevent this action from happening for a machine, you can lock the machine through `metalctl machine lock`. +In case you want to prevent this action from happening for a machine, you can lock the machine through `metalctl machine lock`. +::: If the machine is dead for a long time and you are sure that it will never come back, you can clean up the machine through `metalctl machine rm --remove-from-database`. @@ -162,7 +156,7 @@ Under bad circumstances, a machine diverges from its typical machine lifecycle. Reasons for this can be: -- The machine's [hardware is not supported](/docs/hardware) and the metal-hammer crashes during the machine discovery +- The machine's [hardware is not supported](hardware.md) and the metal-hammer crashes during the machine discovery - The machine registration fails through the metal-hammer because an orphaned / dead machine is still present in the metal-api's data base. The machine is connected to the same switch ports that were used by the orphaned machine. In this case, you should clean up the orphaned machine through `metalctl machine rm --remove-from-database`. Please also consider console logs of the machine for investigating the issue. @@ -185,13 +179,13 @@ To resolve the issue, you need to recreate the firewalls that use the same ASN. The [metal-bmc](https://github.com/metal-stack/metal-bmc) is responsible to report connection data for the machine's [BMC](https://en.wikipedia.org/wiki/Intelligent_Platform_Management_Interface#Baseboard_management_controller). -If it's uncapable of discovering this information, your [hardware might not be supported](/docs/hardware). Please investigate the logs of the metal-bmc to find out what's going wrong with this machine. +If it's uncapable of discovering this information, your [hardware might not be supported](hardware.md). Please investigate the logs of the metal-bmc to find out what's going wrong with this machine. #### bmc-without-ip The [metal-bmc](https://github.com/metal-stack/metal-bmc) is responsible to report connection data for the machine's [BMC](https://en.wikipedia.org/wiki/Intelligent_Platform_Management_Interface#Baseboard_management_controller). -If it's uncapable of discovering this information, your [hardware might not be supported](/docs/hardware). Please investigate the logs of the metal-bmc to find out what's going wrong with this machine. +If it's uncapable of discovering this information, your [hardware might not be supported](hardware.md). Please investigate the logs of the metal-bmc to find out what's going wrong with this machine. #### bmc-no-distinct-ip diff --git a/docs/docs/04-For Operators/04-Installation-Administration/assets/mgmt_net_layer3.drawio b/docs/docs/04-For Operators/mgmt_net_layer3.drawio similarity index 100% rename from docs/docs/04-For Operators/04-Installation-Administration/assets/mgmt_net_layer3.drawio rename to docs/docs/04-For Operators/mgmt_net_layer3.drawio diff --git a/docs/docs/04-For Operators/04-Installation-Administration/assets/mgmt_net_layer3.png b/docs/docs/04-For Operators/mgmt_net_layer3.png similarity index 100% rename from docs/docs/04-For Operators/04-Installation-Administration/assets/mgmt_net_layer3.png rename to docs/docs/04-For Operators/mgmt_net_layer3.png diff --git a/docs/docs/04-For Operators/04-Installation-Administration/assets/monitoring-stack.svg b/docs/docs/04-For Operators/monitoring-stack.svg similarity index 100% rename from docs/docs/04-For Operators/04-Installation-Administration/assets/monitoring-stack.svg rename to docs/docs/04-For Operators/monitoring-stack.svg diff --git a/docs/docs/04-For Operators/starter.jpg b/docs/docs/04-For Operators/starter.jpg new file mode 100644 index 0000000000000000000000000000000000000000..36808c9cba68b6c40740c48f9709f39118e40a33 GIT binary patch literal 109351 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 J;_W^&|JkJZ*IfVr literal 0 HcmV?d00001 diff --git a/docs/docs/05-For CISOs/Security/01-principles.md b/docs/docs/05-For CISOs/Security/01-principles.md new file mode 100644 index 0000000..58b8e76 --- /dev/null +++ b/docs/docs/05-For CISOs/Security/01-principles.md @@ -0,0 +1,52 @@ +--- +slug: /security-principles +title: Security Principles +sidebar_position: 1 +--- + +# Security Principles + +metal-stack adheres to several security principles to ensure the integrity, confidentiality and availability of its services and data. These principles guide the design and implementation of security measures across the metal-stack architecture. + +## Minimal Need to Know + +The minimal need to know principle is a security concept that restricts access to information and resources only to those who absolutely need it for their specific role or task. This principle is implemented throughout the metal-stack architecture and operational practices to enhance security and reduce the risk of unauthorized access or data breaches. + +### RBAC + +:::info +As of now metal-stack does not implement fine-grained Role-Based Access Control (RBAC) within the `metal-api` but this is worked on in [MEP-4](../../developers/proposals/MEP4/README.md). +::: + +As described in our [User Management](../../concepts/user-management.md) concept the [metal-api](https://github.com/metal-stack/metal-api) currently offers three different user roles for authorization: + +- `Admin` +- `Edit` +- `View` + +To ensure that internal components interact securely with the metal-api, metal-stack assigns specific roles to each service based on the principle of least privilege. + +| Component | Role | +|-----------------------------------------------------------------------------------------------------------------------|-------| +| [metal-image-cache-sync](https://github.com/metal-stack/metal-image-cache-sync) | View | +| [machine-controller-manager-provider-metal](https://github.com/metal-stack/machine-controller-manager-provider-metal) | Edit | +| [gardener-extension-provider-metal](https://github.com/metal-stack/gardener-extension-provider-metal) | Edit | +| [metal-bmc](https://github.com/metal-stack/metal-bmc) | Edit | +| [metal-core](https://github.com/metal-stack/metal-core) | Edit | +| [metal-hammer](https://github.com/metal-stack/metal-hammer/) | View | +| [metal-metrics-exporter](https://github.com/metal-stack/metal-metrics-exporter) | View | +| [metal-ccm](https://github.com/metal-stack/metal-ccm) | Admin | +| [pixiecore](https://github.com/metal-stack/pixie) | View | +| [metal-console](https://github.com/metal-stack/metal-console) | Admin | +| [cluster-api-provider-metal-stack](https://github.com/metal-stack/cluster-api-provider-metal-stack) | Edit | +| [firewall-controller-manager](https://github.com/metal-stack/firewall-controller-manager) | Edit | + +Users can interact with the metal-api using [metalctl](https://github.com/metal-stack/metalctl), the command-line interface provided by metal-stack. Depending on the required operations, users should authenticate with the appropriate role to match their level of access. + +## Defence in Depth + +Defence in depth is a security strategy that employs multiple layers of defense to protect systems and data. By implementing various security measures at different levels, metal-stack aims to mitigate risks and enhance overall security posture. + +## Redundancy + +Redundancy is a key principle in metal-stack's security architecture. It involves duplicating critical components and services to ensure that if one fails, others can take over, maintaining system availability and reliability. This is particularly important for data storage and processing, where redundancy helps prevent data loss and ensures continuous operation. diff --git a/docs/docs/05-For CISOs/Security/02-sbom.md b/docs/docs/05-For CISOs/Security/02-sbom.md new file mode 100644 index 0000000..f2f3e2f --- /dev/null +++ b/docs/docs/05-For CISOs/Security/02-sbom.md @@ -0,0 +1,69 @@ +--- +slug: /sbom +title: SBOM +sidebar_position: 2 +--- + +# SBOM + +Every container image and binary that's part of metal-stack contains an _SBOM_ (Software Bill of Materials). It provides +a detailed inventory of components within container images and binaries, enabling you to manage vulnerabilities and +compliance effectively. + +We decided to use [_SPDX_ (Software Package Data Exchange)](https://spdx.dev/), as it is among the most widely adopted +standards and is natively supported in Docker. Docker utilizes the +[in-toto SPDX format](https://github.com/in-toto/attestation/blob/main/spec/predicates/spdx.md), while binary-*SBOM*s +are created using [Syft](https://github.com/anchore/syft). + +*SBOM*s are created as part of each repository's _GitHub Actions_ workflow utilizing +[Anchore SBOM Action](https://github.com/marketplace/actions/anchore-sbom-action) for binaries and +[Build and push Docker images](https://github.com/marketplace/actions/build-and-push-docker-images) for container +images. + +## Download _SBOM_ of a container image + +```bash +docker buildx imagetools inspect ghcr.io/metal-stack/: --format "{{ json .SBOM.SPDX }}" > sbom.json +``` + +For further info, refer to the +[Docker docs](https://docs.docker.com/build/metadata/attestations/sbom/#inspecting-sboms). + +## Download _SBOM_ of a binary from the GitHub release + +```bash +wget https://github.com/metal-stack//releases/latest/download/sbom.json +``` + +Please note, if more than one binary is released, e.g. for different platforms / architectures, you are required to +include this info in the _SBOM_ file name as well. + +```bash +# This is an example using https://github.com/metal-stack/metalctl +wget https://github.com/metal-stack/metalctl/releases/latest/download/sbom-darwin-arm64.json +``` + +## Identify CVEs + +There are many tools that can help you to identify the CVEs with the help of an SBOM. Just to name one example, the +[cve-bin-tool](https://github.com/intel/cve-bin-tool) can be used to do this, which would look like this: + +```plain +cve-bin-tool --sbom-file sbom.json --format json + +[09:57:06] INFO cve_bin_tool - CVE Binary Tool v3.4 cli.py:624 + INFO cve_bin_tool - This product uses the NVD API but is not endorsed or certified by the NVD. cli.py:625 + INFO cve_bin_tool - For potentially faster NVD downloads, mirrors are available using -n json-mirror cli.py:628 + INFO cve_bin_tool.CVEDB - Using cached CVE data (<24h old). Use -u now to update immediately. cvedb.py:320 + INFO cve_bin_tool.CVEDB - There are 251234 CVE entries in the database cvedb.py:386 + INFO cve_bin_tool.CVEDB - There are 205244 CVE entries from NVD in the database cvedb.py:388 + INFO cve_bin_tool.CVEDB - There are 25495 CVE entries from GAD in the database cvedb.py:388 + INFO cve_bin_tool.CVEDB - There are 20495 CVE entries from REDHAT in the database cvedb.py:388 + INFO cve_bin_tool - CVE database contains CVEs from National Vulnerability Database (NVD), Open Source Vulnerability Database (OSV), Gitlab Advisory Database (GAD) cli.py:915 + and RedHat + INFO cve_bin_tool - CVE database last updated on 01 July 2025 at 09:53:14 cli.py:918 +[09:57:13] INFO cve_bin_tool - The number of products to process from SBOM - 116 cli.py:1134 + INFO cve_bin_tool - Overall CVE summary: cli.py:1181 + INFO cve_bin_tool - There are 0 products with known CVEs detected cli.py:1182 + INFO cve_bin_tool.OutputEngine - JSON report stored __init__.py:878 +``` diff --git a/docs/docs/05-For CISOs/Security/03-cryptography.md b/docs/docs/05-For CISOs/Security/03-cryptography.md new file mode 100644 index 0000000..7f43e03 --- /dev/null +++ b/docs/docs/05-For CISOs/Security/03-cryptography.md @@ -0,0 +1,31 @@ +--- +slug: /cryptography +title: Cryptography +sidebar_position: 3 +--- + +# Cryptography + +metal-stack incorporates multiple layers of cryptographic protection and secure communication to ensure system integrity and confidentiality: + +### TLS Certificate Management + +TLS certificates used by metal-stack components - as outlined in the [architecture section](../../concepts/architecture.md) - can be generated using either RSA 4096-bit or ECDSA 256-bit keys. We recommend RSA 4096. + +By default, in-cluster communication is not encrypted. If encryption is required within the cluster, it must be configured manually using a service mesh (e.g., Istio or Linkerd) or a similar mechanism. +For outbound traffic, we recommend integrating cert-manager in combination with Let's Encrypt to handle certificate issuance and enable automated certificate rotation for ingress domains. In offline environments where Let's Encrypt cannot be used, the certificates must be issued and managed manually or via an internal CA. + +### VPN & Network Encryption + +metal-stack employs WireGuard-based VPN technology, orchestrated via Headscale. WireGuard leverages Elliptic Curve Cryptography (ECC) for key exchange and relies on the Noise Protocol Framework to establish secure and lightweight cryptographic handshakes. + +### Authentication with JWT + +Access to the `metal-api` is protected using JWT (JSON Web Tokens). These tokens are generated and verified using the [`go-jose`](https://github.com/go-jose/go-jose) library, which implements JOSE standards. + +Supported signature algorithms include: + +- RSA (RS256, RS384, RS512) +- RSA-PSS (PS256, PS384, PS512) +- ECDSA (ES256, ES384, ES512) +- EdDSA diff --git a/docs/docs/05-For CISOs/artifacts-signing.md b/docs/docs/05-For CISOs/artifacts-signing.md new file mode 100644 index 0000000..93d18dc --- /dev/null +++ b/docs/docs/05-For CISOs/artifacts-signing.md @@ -0,0 +1,7 @@ +--- +slug: /artifact-signing +title: Artifact Signing +draft: true +--- + +# Artifact Signing diff --git a/docs/docs/05-For CISOs/communication-matrix.md b/docs/docs/05-For CISOs/communication-matrix.md new file mode 100644 index 0000000..68f59da --- /dev/null +++ b/docs/docs/05-For CISOs/communication-matrix.md @@ -0,0 +1,7 @@ +--- +slug: /communication-matrix +title: Communication Matrix +draft: true +--- + +# Communication Matrix diff --git a/docs/docs/05-For CISOs/integration-checks.md b/docs/docs/05-For CISOs/integration-checks.md new file mode 100644 index 0000000..d648b70 --- /dev/null +++ b/docs/docs/05-For CISOs/integration-checks.md @@ -0,0 +1,6 @@ +--- +slug: /integration-checks +title: Integration Checks +draft: true +--- +# Integration Checks diff --git a/docs/docs/05-For CISOs/network.md b/docs/docs/05-For CISOs/network.md new file mode 100644 index 0000000..4bc2b1a --- /dev/null +++ b/docs/docs/05-For CISOs/network.md @@ -0,0 +1,7 @@ +--- +slug: /network-for-cisos +title: Network +draft: true +--- + +# Network diff --git a/docs/docs/05-For CISOs/rbac.md b/docs/docs/05-For CISOs/rbac.md new file mode 100644 index 0000000..183a0bc --- /dev/null +++ b/docs/docs/05-For CISOs/rbac.md @@ -0,0 +1,34 @@ +--- +slug: /rbac +title: RBAC +draft: true +--- + +# RBAC + +The [metal-api](https://github.com/metal-stack/metal-api) offers three different user roles for authorization: + +- `Admin` +- `Edit` +- `View` + +To ensure that internal components interact securely with the metal-api, metal-stack assigns specific roles to each service based on the principle of least privilege. + +| Component | Role | +|-----------------------------------------------------------------------------------------------------------------------|-------| +| [metal-image-cache-sync](https://github.com/metal-stack/metal-image-cache-sync) | View | +| [machine-controller-manager-provider-metal](https://github.com/metal-stack/machine-controller-manager-provider-metal) | Edit | +| [gardener-extension-provider-metal](https://github.com/metal-stack/gardener-extension-provider-metal) | Edit | +| [metal-bmc](https://github.com/metal-stack/metal-bmc) | Edit | +| [metal-core](https://github.com/metal-stack/metal-core) | Edit | +| [metal-hammer](https://github.com/metal-stack/metal-hammer/) | View | +| [metal-metrics-exporter](https://github.com/metal-stack/metal-metrics-exporter) | View | +| [metal-ccm](https://github.com/metal-stack/metal-ccm) | Admin | +| [pixiecore](https://github.com/metal-stack/pixie) | View | +| [metal-console](https://github.com/metal-stack/metal-console) | Admin | +| [cluster-api-provider-metal-stack](https://github.com/metal-stack/cluster-api-provider-metal-stack) | Edit | +| [firewall-controller-manager](https://github.com/metal-stack/firewall-controller-manager) | Edit | + +Users can interact with the metal-api using [metalctl](https://github.com/metal-stack/metalctl), the command-line interface provided by metal-stack. Depending on the required operations, users should authenticate with the appropriate role to match their level of access. + +As part of [MEP-4](../developers/proposals/MEP4/README.md), significant work is underway to introduce more fine-grained access control mechanisms within metal-stack, enhancing the precision and flexibility of permission management. \ No newline at end of file diff --git a/docs/docs/05-For CISOs/remote-access.md b/docs/docs/05-For CISOs/remote-access.md new file mode 100644 index 0000000..17cb06c --- /dev/null +++ b/docs/docs/05-For CISOs/remote-access.md @@ -0,0 +1,6 @@ +--- +slug: /remote-access +title: Remote Access +draft: true +--- +# Remote Access diff --git a/docs/docs/05-For CISOs/security-vulnerability.md b/docs/docs/05-For CISOs/security-vulnerability.md new file mode 100644 index 0000000..e32b225 --- /dev/null +++ b/docs/docs/05-For CISOs/security-vulnerability.md @@ -0,0 +1,6 @@ +--- +slug: /security-vulnerability +title: Security Vulnerability +draft: true +--- +# Security Vulnerability diff --git a/docs/docs/05-For CISOs/technologies-and-protocols.md b/docs/docs/05-For CISOs/technologies-and-protocols.md new file mode 100644 index 0000000..8019e09 --- /dev/null +++ b/docs/docs/05-For CISOs/technologies-and-protocols.md @@ -0,0 +1,6 @@ +--- +slug: /technologies-and-protocols +title: Technologies and Protocols +draft: true +--- +# Technologies and Protocols diff --git a/docs/docs/05-For Users/01-client_libraries.md b/docs/docs/06-For Users/01-client_libraries.md similarity index 100% rename from docs/docs/05-For Users/01-client_libraries.md rename to docs/docs/06-For Users/01-client_libraries.md diff --git a/docs/docs/06-Release Notes/v0.20.5.md b/docs/docs/07-Release Notes/v0.20.5.md similarity index 100% rename from docs/docs/06-Release Notes/v0.20.5.md rename to docs/docs/07-Release Notes/v0.20.5.md diff --git a/docs/docs/06-Release Notes/v0.20.6.md b/docs/docs/07-Release Notes/v0.20.6.md similarity index 100% rename from docs/docs/06-Release Notes/v0.20.6.md rename to docs/docs/07-Release Notes/v0.20.6.md diff --git a/docs/docs/07-References/API/masterdata-api/masterdata-api.md b/docs/docs/08-References/API/masterdata-api/masterdata-api.md similarity index 100% rename from docs/docs/07-References/API/masterdata-api/masterdata-api.md rename to docs/docs/08-References/API/masterdata-api/masterdata-api.md diff --git a/docs/docs/07-References/API/metal-api/metal-api.md b/docs/docs/08-References/API/metal-api/metal-api.md similarity index 100% rename from docs/docs/07-References/API/metal-api/metal-api.md rename to docs/docs/08-References/API/metal-api/metal-api.md diff --git a/docs/docs/07-References/API/metalctl/metalctl.md b/docs/docs/08-References/API/metalctl/metalctl.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl.md rename to docs/docs/08-References/API/metalctl/metalctl.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_audit.md b/docs/docs/08-References/API/metalctl/metalctl_audit.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_audit.md rename to docs/docs/08-References/API/metalctl/metalctl_audit.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_audit_describe.md b/docs/docs/08-References/API/metalctl/metalctl_audit_describe.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_audit_describe.md rename to docs/docs/08-References/API/metalctl/metalctl_audit_describe.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_audit_list.md b/docs/docs/08-References/API/metalctl/metalctl_audit_list.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_audit_list.md rename to docs/docs/08-References/API/metalctl/metalctl_audit_list.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_completion.md b/docs/docs/08-References/API/metalctl/metalctl_completion.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_completion.md rename to docs/docs/08-References/API/metalctl/metalctl_completion.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_completion_bash.md b/docs/docs/08-References/API/metalctl/metalctl_completion_bash.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_completion_bash.md rename to docs/docs/08-References/API/metalctl/metalctl_completion_bash.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_completion_fish.md b/docs/docs/08-References/API/metalctl/metalctl_completion_fish.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_completion_fish.md rename to docs/docs/08-References/API/metalctl/metalctl_completion_fish.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_completion_powershell.md b/docs/docs/08-References/API/metalctl/metalctl_completion_powershell.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_completion_powershell.md rename to docs/docs/08-References/API/metalctl/metalctl_completion_powershell.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_completion_zsh.md b/docs/docs/08-References/API/metalctl/metalctl_completion_zsh.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_completion_zsh.md rename to docs/docs/08-References/API/metalctl/metalctl_completion_zsh.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_context.md b/docs/docs/08-References/API/metalctl/metalctl_context.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_context.md rename to docs/docs/08-References/API/metalctl/metalctl_context.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_context_short.md b/docs/docs/08-References/API/metalctl/metalctl_context_short.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_context_short.md rename to docs/docs/08-References/API/metalctl/metalctl_context_short.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_filesystemlayout.md b/docs/docs/08-References/API/metalctl/metalctl_filesystemlayout.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_filesystemlayout.md rename to docs/docs/08-References/API/metalctl/metalctl_filesystemlayout.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_filesystemlayout_apply.md b/docs/docs/08-References/API/metalctl/metalctl_filesystemlayout_apply.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_filesystemlayout_apply.md rename to docs/docs/08-References/API/metalctl/metalctl_filesystemlayout_apply.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_filesystemlayout_create.md b/docs/docs/08-References/API/metalctl/metalctl_filesystemlayout_create.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_filesystemlayout_create.md rename to docs/docs/08-References/API/metalctl/metalctl_filesystemlayout_create.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_filesystemlayout_delete.md b/docs/docs/08-References/API/metalctl/metalctl_filesystemlayout_delete.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_filesystemlayout_delete.md rename to docs/docs/08-References/API/metalctl/metalctl_filesystemlayout_delete.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_filesystemlayout_describe.md b/docs/docs/08-References/API/metalctl/metalctl_filesystemlayout_describe.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_filesystemlayout_describe.md rename to docs/docs/08-References/API/metalctl/metalctl_filesystemlayout_describe.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_filesystemlayout_edit.md b/docs/docs/08-References/API/metalctl/metalctl_filesystemlayout_edit.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_filesystemlayout_edit.md rename to docs/docs/08-References/API/metalctl/metalctl_filesystemlayout_edit.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_filesystemlayout_list.md b/docs/docs/08-References/API/metalctl/metalctl_filesystemlayout_list.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_filesystemlayout_list.md rename to docs/docs/08-References/API/metalctl/metalctl_filesystemlayout_list.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_filesystemlayout_match.md b/docs/docs/08-References/API/metalctl/metalctl_filesystemlayout_match.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_filesystemlayout_match.md rename to docs/docs/08-References/API/metalctl/metalctl_filesystemlayout_match.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_filesystemlayout_try.md b/docs/docs/08-References/API/metalctl/metalctl_filesystemlayout_try.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_filesystemlayout_try.md rename to docs/docs/08-References/API/metalctl/metalctl_filesystemlayout_try.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_filesystemlayout_update.md b/docs/docs/08-References/API/metalctl/metalctl_filesystemlayout_update.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_filesystemlayout_update.md rename to docs/docs/08-References/API/metalctl/metalctl_filesystemlayout_update.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_firewall.md b/docs/docs/08-References/API/metalctl/metalctl_firewall.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_firewall.md rename to docs/docs/08-References/API/metalctl/metalctl_firewall.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_firewall_create.md b/docs/docs/08-References/API/metalctl/metalctl_firewall_create.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_firewall_create.md rename to docs/docs/08-References/API/metalctl/metalctl_firewall_create.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_firewall_describe.md b/docs/docs/08-References/API/metalctl/metalctl_firewall_describe.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_firewall_describe.md rename to docs/docs/08-References/API/metalctl/metalctl_firewall_describe.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_firewall_list.md b/docs/docs/08-References/API/metalctl/metalctl_firewall_list.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_firewall_list.md rename to docs/docs/08-References/API/metalctl/metalctl_firewall_list.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_firewall_ssh.md b/docs/docs/08-References/API/metalctl/metalctl_firewall_ssh.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_firewall_ssh.md rename to docs/docs/08-References/API/metalctl/metalctl_firewall_ssh.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_firmware.md b/docs/docs/08-References/API/metalctl/metalctl_firmware.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_firmware.md rename to docs/docs/08-References/API/metalctl/metalctl_firmware.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_firmware_delete.md b/docs/docs/08-References/API/metalctl/metalctl_firmware_delete.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_firmware_delete.md rename to docs/docs/08-References/API/metalctl/metalctl_firmware_delete.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_firmware_list.md b/docs/docs/08-References/API/metalctl/metalctl_firmware_list.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_firmware_list.md rename to docs/docs/08-References/API/metalctl/metalctl_firmware_list.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_firmware_upload.md b/docs/docs/08-References/API/metalctl/metalctl_firmware_upload.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_firmware_upload.md rename to docs/docs/08-References/API/metalctl/metalctl_firmware_upload.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_firmware_upload_bios.md b/docs/docs/08-References/API/metalctl/metalctl_firmware_upload_bios.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_firmware_upload_bios.md rename to docs/docs/08-References/API/metalctl/metalctl_firmware_upload_bios.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_firmware_upload_bmc.md b/docs/docs/08-References/API/metalctl/metalctl_firmware_upload_bmc.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_firmware_upload_bmc.md rename to docs/docs/08-References/API/metalctl/metalctl_firmware_upload_bmc.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_health.md b/docs/docs/08-References/API/metalctl/metalctl_health.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_health.md rename to docs/docs/08-References/API/metalctl/metalctl_health.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_image.md b/docs/docs/08-References/API/metalctl/metalctl_image.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_image.md rename to docs/docs/08-References/API/metalctl/metalctl_image.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_image_apply.md b/docs/docs/08-References/API/metalctl/metalctl_image_apply.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_image_apply.md rename to docs/docs/08-References/API/metalctl/metalctl_image_apply.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_image_create.md b/docs/docs/08-References/API/metalctl/metalctl_image_create.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_image_create.md rename to docs/docs/08-References/API/metalctl/metalctl_image_create.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_image_delete.md b/docs/docs/08-References/API/metalctl/metalctl_image_delete.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_image_delete.md rename to docs/docs/08-References/API/metalctl/metalctl_image_delete.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_image_describe.md b/docs/docs/08-References/API/metalctl/metalctl_image_describe.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_image_describe.md rename to docs/docs/08-References/API/metalctl/metalctl_image_describe.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_image_edit.md b/docs/docs/08-References/API/metalctl/metalctl_image_edit.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_image_edit.md rename to docs/docs/08-References/API/metalctl/metalctl_image_edit.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_image_list.md b/docs/docs/08-References/API/metalctl/metalctl_image_list.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_image_list.md rename to docs/docs/08-References/API/metalctl/metalctl_image_list.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_image_update.md b/docs/docs/08-References/API/metalctl/metalctl_image_update.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_image_update.md rename to docs/docs/08-References/API/metalctl/metalctl_image_update.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_login.md b/docs/docs/08-References/API/metalctl/metalctl_login.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_login.md rename to docs/docs/08-References/API/metalctl/metalctl_login.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_logout.md b/docs/docs/08-References/API/metalctl/metalctl_logout.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_logout.md rename to docs/docs/08-References/API/metalctl/metalctl_logout.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine.md b/docs/docs/08-References/API/metalctl/metalctl_machine.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine.md rename to docs/docs/08-References/API/metalctl/metalctl_machine.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_apply.md b/docs/docs/08-References/API/metalctl/metalctl_machine_apply.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_apply.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_apply.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_console.md b/docs/docs/08-References/API/metalctl/metalctl_machine_console.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_console.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_console.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_consolepassword.md b/docs/docs/08-References/API/metalctl/metalctl_machine_consolepassword.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_consolepassword.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_consolepassword.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_create.md b/docs/docs/08-References/API/metalctl/metalctl_machine_create.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_create.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_create.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_delete.md b/docs/docs/08-References/API/metalctl/metalctl_machine_delete.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_delete.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_delete.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_describe.md b/docs/docs/08-References/API/metalctl/metalctl_machine_describe.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_describe.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_describe.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_edit.md b/docs/docs/08-References/API/metalctl/metalctl_machine_edit.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_edit.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_edit.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_identify.md b/docs/docs/08-References/API/metalctl/metalctl_machine_identify.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_identify.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_identify.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_identify_off.md b/docs/docs/08-References/API/metalctl/metalctl_machine_identify_off.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_identify_off.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_identify_off.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_identify_on.md b/docs/docs/08-References/API/metalctl/metalctl_machine_identify_on.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_identify_on.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_identify_on.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_ipmi.md b/docs/docs/08-References/API/metalctl/metalctl_machine_ipmi.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_ipmi.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_ipmi.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_ipmi_events.md b/docs/docs/08-References/API/metalctl/metalctl_machine_ipmi_events.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_ipmi_events.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_ipmi_events.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_issues.md b/docs/docs/08-References/API/metalctl/metalctl_machine_issues.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_issues.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_issues.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_issues_list.md b/docs/docs/08-References/API/metalctl/metalctl_machine_issues_list.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_issues_list.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_issues_list.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_list.md b/docs/docs/08-References/API/metalctl/metalctl_machine_list.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_list.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_list.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_lock.md b/docs/docs/08-References/API/metalctl/metalctl_machine_lock.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_lock.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_lock.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_logs.md b/docs/docs/08-References/API/metalctl/metalctl_machine_logs.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_logs.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_logs.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_power.md b/docs/docs/08-References/API/metalctl/metalctl_machine_power.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_power.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_power.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_power_bios.md b/docs/docs/08-References/API/metalctl/metalctl_machine_power_bios.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_power_bios.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_power_bios.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_power_cycle.md b/docs/docs/08-References/API/metalctl/metalctl_machine_power_cycle.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_power_cycle.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_power_cycle.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_power_disk.md b/docs/docs/08-References/API/metalctl/metalctl_machine_power_disk.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_power_disk.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_power_disk.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_power_off.md b/docs/docs/08-References/API/metalctl/metalctl_machine_power_off.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_power_off.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_power_off.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_power_on.md b/docs/docs/08-References/API/metalctl/metalctl_machine_power_on.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_power_on.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_power_on.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_power_pxe.md b/docs/docs/08-References/API/metalctl/metalctl_machine_power_pxe.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_power_pxe.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_power_pxe.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_power_reset.md b/docs/docs/08-References/API/metalctl/metalctl_machine_power_reset.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_power_reset.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_power_reset.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_reinstall.md b/docs/docs/08-References/API/metalctl/metalctl_machine_reinstall.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_reinstall.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_reinstall.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_reserve.md b/docs/docs/08-References/API/metalctl/metalctl_machine_reserve.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_reserve.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_reserve.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_update-firmware.md b/docs/docs/08-References/API/metalctl/metalctl_machine_update-firmware.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_update-firmware.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_update-firmware.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_update-firmware_bios.md b/docs/docs/08-References/API/metalctl/metalctl_machine_update-firmware_bios.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_update-firmware_bios.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_update-firmware_bios.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_update-firmware_bmc.md b/docs/docs/08-References/API/metalctl/metalctl_machine_update-firmware_bmc.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_update-firmware_bmc.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_update-firmware_bmc.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_machine_update.md b/docs/docs/08-References/API/metalctl/metalctl_machine_update.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_machine_update.md rename to docs/docs/08-References/API/metalctl/metalctl_machine_update.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_markdown.md b/docs/docs/08-References/API/metalctl/metalctl_markdown.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_markdown.md rename to docs/docs/08-References/API/metalctl/metalctl_markdown.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_network.md b/docs/docs/08-References/API/metalctl/metalctl_network.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_network.md rename to docs/docs/08-References/API/metalctl/metalctl_network.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_network_allocate.md b/docs/docs/08-References/API/metalctl/metalctl_network_allocate.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_network_allocate.md rename to docs/docs/08-References/API/metalctl/metalctl_network_allocate.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_network_apply.md b/docs/docs/08-References/API/metalctl/metalctl_network_apply.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_network_apply.md rename to docs/docs/08-References/API/metalctl/metalctl_network_apply.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_network_create.md b/docs/docs/08-References/API/metalctl/metalctl_network_create.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_network_create.md rename to docs/docs/08-References/API/metalctl/metalctl_network_create.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_network_delete.md b/docs/docs/08-References/API/metalctl/metalctl_network_delete.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_network_delete.md rename to docs/docs/08-References/API/metalctl/metalctl_network_delete.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_network_describe.md b/docs/docs/08-References/API/metalctl/metalctl_network_describe.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_network_describe.md rename to docs/docs/08-References/API/metalctl/metalctl_network_describe.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_network_edit.md b/docs/docs/08-References/API/metalctl/metalctl_network_edit.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_network_edit.md rename to docs/docs/08-References/API/metalctl/metalctl_network_edit.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_network_free.md b/docs/docs/08-References/API/metalctl/metalctl_network_free.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_network_free.md rename to docs/docs/08-References/API/metalctl/metalctl_network_free.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_network_ip.md b/docs/docs/08-References/API/metalctl/metalctl_network_ip.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_network_ip.md rename to docs/docs/08-References/API/metalctl/metalctl_network_ip.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_network_ip_apply.md b/docs/docs/08-References/API/metalctl/metalctl_network_ip_apply.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_network_ip_apply.md rename to docs/docs/08-References/API/metalctl/metalctl_network_ip_apply.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_network_ip_create.md b/docs/docs/08-References/API/metalctl/metalctl_network_ip_create.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_network_ip_create.md rename to docs/docs/08-References/API/metalctl/metalctl_network_ip_create.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_network_ip_delete.md b/docs/docs/08-References/API/metalctl/metalctl_network_ip_delete.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_network_ip_delete.md rename to docs/docs/08-References/API/metalctl/metalctl_network_ip_delete.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_network_ip_describe.md b/docs/docs/08-References/API/metalctl/metalctl_network_ip_describe.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_network_ip_describe.md rename to docs/docs/08-References/API/metalctl/metalctl_network_ip_describe.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_network_ip_edit.md b/docs/docs/08-References/API/metalctl/metalctl_network_ip_edit.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_network_ip_edit.md rename to docs/docs/08-References/API/metalctl/metalctl_network_ip_edit.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_network_ip_issues.md b/docs/docs/08-References/API/metalctl/metalctl_network_ip_issues.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_network_ip_issues.md rename to docs/docs/08-References/API/metalctl/metalctl_network_ip_issues.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_network_ip_list.md b/docs/docs/08-References/API/metalctl/metalctl_network_ip_list.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_network_ip_list.md rename to docs/docs/08-References/API/metalctl/metalctl_network_ip_list.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_network_ip_update.md b/docs/docs/08-References/API/metalctl/metalctl_network_ip_update.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_network_ip_update.md rename to docs/docs/08-References/API/metalctl/metalctl_network_ip_update.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_network_list.md b/docs/docs/08-References/API/metalctl/metalctl_network_list.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_network_list.md rename to docs/docs/08-References/API/metalctl/metalctl_network_list.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_network_update.md b/docs/docs/08-References/API/metalctl/metalctl_network_update.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_network_update.md rename to docs/docs/08-References/API/metalctl/metalctl_network_update.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_partition.md b/docs/docs/08-References/API/metalctl/metalctl_partition.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_partition.md rename to docs/docs/08-References/API/metalctl/metalctl_partition.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_partition_apply.md b/docs/docs/08-References/API/metalctl/metalctl_partition_apply.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_partition_apply.md rename to docs/docs/08-References/API/metalctl/metalctl_partition_apply.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_partition_capacity.md b/docs/docs/08-References/API/metalctl/metalctl_partition_capacity.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_partition_capacity.md rename to docs/docs/08-References/API/metalctl/metalctl_partition_capacity.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_partition_create.md b/docs/docs/08-References/API/metalctl/metalctl_partition_create.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_partition_create.md rename to docs/docs/08-References/API/metalctl/metalctl_partition_create.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_partition_delete.md b/docs/docs/08-References/API/metalctl/metalctl_partition_delete.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_partition_delete.md rename to docs/docs/08-References/API/metalctl/metalctl_partition_delete.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_partition_describe.md b/docs/docs/08-References/API/metalctl/metalctl_partition_describe.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_partition_describe.md rename to docs/docs/08-References/API/metalctl/metalctl_partition_describe.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_partition_edit.md b/docs/docs/08-References/API/metalctl/metalctl_partition_edit.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_partition_edit.md rename to docs/docs/08-References/API/metalctl/metalctl_partition_edit.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_partition_list.md b/docs/docs/08-References/API/metalctl/metalctl_partition_list.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_partition_list.md rename to docs/docs/08-References/API/metalctl/metalctl_partition_list.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_partition_update.md b/docs/docs/08-References/API/metalctl/metalctl_partition_update.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_partition_update.md rename to docs/docs/08-References/API/metalctl/metalctl_partition_update.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_project.md b/docs/docs/08-References/API/metalctl/metalctl_project.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_project.md rename to docs/docs/08-References/API/metalctl/metalctl_project.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_project_apply.md b/docs/docs/08-References/API/metalctl/metalctl_project_apply.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_project_apply.md rename to docs/docs/08-References/API/metalctl/metalctl_project_apply.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_project_create.md b/docs/docs/08-References/API/metalctl/metalctl_project_create.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_project_create.md rename to docs/docs/08-References/API/metalctl/metalctl_project_create.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_project_delete.md b/docs/docs/08-References/API/metalctl/metalctl_project_delete.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_project_delete.md rename to docs/docs/08-References/API/metalctl/metalctl_project_delete.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_project_describe.md b/docs/docs/08-References/API/metalctl/metalctl_project_describe.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_project_describe.md rename to docs/docs/08-References/API/metalctl/metalctl_project_describe.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_project_edit.md b/docs/docs/08-References/API/metalctl/metalctl_project_edit.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_project_edit.md rename to docs/docs/08-References/API/metalctl/metalctl_project_edit.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_project_list.md b/docs/docs/08-References/API/metalctl/metalctl_project_list.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_project_list.md rename to docs/docs/08-References/API/metalctl/metalctl_project_list.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_project_update.md b/docs/docs/08-References/API/metalctl/metalctl_project_update.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_project_update.md rename to docs/docs/08-References/API/metalctl/metalctl_project_update.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size.md b/docs/docs/08-References/API/metalctl/metalctl_size.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size.md rename to docs/docs/08-References/API/metalctl/metalctl_size.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_apply.md b/docs/docs/08-References/API/metalctl/metalctl_size_apply.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_apply.md rename to docs/docs/08-References/API/metalctl/metalctl_size_apply.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_create.md b/docs/docs/08-References/API/metalctl/metalctl_size_create.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_create.md rename to docs/docs/08-References/API/metalctl/metalctl_size_create.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_delete.md b/docs/docs/08-References/API/metalctl/metalctl_size_delete.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_delete.md rename to docs/docs/08-References/API/metalctl/metalctl_size_delete.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_describe.md b/docs/docs/08-References/API/metalctl/metalctl_size_describe.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_describe.md rename to docs/docs/08-References/API/metalctl/metalctl_size_describe.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_edit.md b/docs/docs/08-References/API/metalctl/metalctl_size_edit.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_edit.md rename to docs/docs/08-References/API/metalctl/metalctl_size_edit.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_imageconstraint.md b/docs/docs/08-References/API/metalctl/metalctl_size_imageconstraint.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_imageconstraint.md rename to docs/docs/08-References/API/metalctl/metalctl_size_imageconstraint.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_imageconstraint_apply.md b/docs/docs/08-References/API/metalctl/metalctl_size_imageconstraint_apply.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_imageconstraint_apply.md rename to docs/docs/08-References/API/metalctl/metalctl_size_imageconstraint_apply.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_imageconstraint_create.md b/docs/docs/08-References/API/metalctl/metalctl_size_imageconstraint_create.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_imageconstraint_create.md rename to docs/docs/08-References/API/metalctl/metalctl_size_imageconstraint_create.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_imageconstraint_delete.md b/docs/docs/08-References/API/metalctl/metalctl_size_imageconstraint_delete.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_imageconstraint_delete.md rename to docs/docs/08-References/API/metalctl/metalctl_size_imageconstraint_delete.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_imageconstraint_describe.md b/docs/docs/08-References/API/metalctl/metalctl_size_imageconstraint_describe.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_imageconstraint_describe.md rename to docs/docs/08-References/API/metalctl/metalctl_size_imageconstraint_describe.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_imageconstraint_edit.md b/docs/docs/08-References/API/metalctl/metalctl_size_imageconstraint_edit.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_imageconstraint_edit.md rename to docs/docs/08-References/API/metalctl/metalctl_size_imageconstraint_edit.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_imageconstraint_list.md b/docs/docs/08-References/API/metalctl/metalctl_size_imageconstraint_list.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_imageconstraint_list.md rename to docs/docs/08-References/API/metalctl/metalctl_size_imageconstraint_list.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_imageconstraint_try.md b/docs/docs/08-References/API/metalctl/metalctl_size_imageconstraint_try.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_imageconstraint_try.md rename to docs/docs/08-References/API/metalctl/metalctl_size_imageconstraint_try.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_imageconstraint_update.md b/docs/docs/08-References/API/metalctl/metalctl_size_imageconstraint_update.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_imageconstraint_update.md rename to docs/docs/08-References/API/metalctl/metalctl_size_imageconstraint_update.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_list.md b/docs/docs/08-References/API/metalctl/metalctl_size_list.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_list.md rename to docs/docs/08-References/API/metalctl/metalctl_size_list.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_reservation.md b/docs/docs/08-References/API/metalctl/metalctl_size_reservation.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_reservation.md rename to docs/docs/08-References/API/metalctl/metalctl_size_reservation.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_reservation_apply.md b/docs/docs/08-References/API/metalctl/metalctl_size_reservation_apply.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_reservation_apply.md rename to docs/docs/08-References/API/metalctl/metalctl_size_reservation_apply.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_reservation_create.md b/docs/docs/08-References/API/metalctl/metalctl_size_reservation_create.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_reservation_create.md rename to docs/docs/08-References/API/metalctl/metalctl_size_reservation_create.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_reservation_delete.md b/docs/docs/08-References/API/metalctl/metalctl_size_reservation_delete.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_reservation_delete.md rename to docs/docs/08-References/API/metalctl/metalctl_size_reservation_delete.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_reservation_describe.md b/docs/docs/08-References/API/metalctl/metalctl_size_reservation_describe.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_reservation_describe.md rename to docs/docs/08-References/API/metalctl/metalctl_size_reservation_describe.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_reservation_edit.md b/docs/docs/08-References/API/metalctl/metalctl_size_reservation_edit.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_reservation_edit.md rename to docs/docs/08-References/API/metalctl/metalctl_size_reservation_edit.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_reservation_list.md b/docs/docs/08-References/API/metalctl/metalctl_size_reservation_list.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_reservation_list.md rename to docs/docs/08-References/API/metalctl/metalctl_size_reservation_list.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_reservation_update.md b/docs/docs/08-References/API/metalctl/metalctl_size_reservation_update.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_reservation_update.md rename to docs/docs/08-References/API/metalctl/metalctl_size_reservation_update.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_reservation_usage.md b/docs/docs/08-References/API/metalctl/metalctl_size_reservation_usage.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_reservation_usage.md rename to docs/docs/08-References/API/metalctl/metalctl_size_reservation_usage.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_suggest.md b/docs/docs/08-References/API/metalctl/metalctl_size_suggest.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_suggest.md rename to docs/docs/08-References/API/metalctl/metalctl_size_suggest.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_size_update.md b/docs/docs/08-References/API/metalctl/metalctl_size_update.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_size_update.md rename to docs/docs/08-References/API/metalctl/metalctl_size_update.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_switch.md b/docs/docs/08-References/API/metalctl/metalctl_switch.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_switch.md rename to docs/docs/08-References/API/metalctl/metalctl_switch.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_switch_connected-machines.md b/docs/docs/08-References/API/metalctl/metalctl_switch_connected-machines.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_switch_connected-machines.md rename to docs/docs/08-References/API/metalctl/metalctl_switch_connected-machines.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_switch_console.md b/docs/docs/08-References/API/metalctl/metalctl_switch_console.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_switch_console.md rename to docs/docs/08-References/API/metalctl/metalctl_switch_console.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_switch_delete.md b/docs/docs/08-References/API/metalctl/metalctl_switch_delete.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_switch_delete.md rename to docs/docs/08-References/API/metalctl/metalctl_switch_delete.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_switch_describe.md b/docs/docs/08-References/API/metalctl/metalctl_switch_describe.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_switch_describe.md rename to docs/docs/08-References/API/metalctl/metalctl_switch_describe.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_switch_detail.md b/docs/docs/08-References/API/metalctl/metalctl_switch_detail.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_switch_detail.md rename to docs/docs/08-References/API/metalctl/metalctl_switch_detail.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_switch_edit.md b/docs/docs/08-References/API/metalctl/metalctl_switch_edit.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_switch_edit.md rename to docs/docs/08-References/API/metalctl/metalctl_switch_edit.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_switch_list.md b/docs/docs/08-References/API/metalctl/metalctl_switch_list.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_switch_list.md rename to docs/docs/08-References/API/metalctl/metalctl_switch_list.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_switch_migrate.md b/docs/docs/08-References/API/metalctl/metalctl_switch_migrate.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_switch_migrate.md rename to docs/docs/08-References/API/metalctl/metalctl_switch_migrate.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_switch_port.md b/docs/docs/08-References/API/metalctl/metalctl_switch_port.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_switch_port.md rename to docs/docs/08-References/API/metalctl/metalctl_switch_port.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_switch_port_describe.md b/docs/docs/08-References/API/metalctl/metalctl_switch_port_describe.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_switch_port_describe.md rename to docs/docs/08-References/API/metalctl/metalctl_switch_port_describe.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_switch_port_down.md b/docs/docs/08-References/API/metalctl/metalctl_switch_port_down.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_switch_port_down.md rename to docs/docs/08-References/API/metalctl/metalctl_switch_port_down.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_switch_port_up.md b/docs/docs/08-References/API/metalctl/metalctl_switch_port_up.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_switch_port_up.md rename to docs/docs/08-References/API/metalctl/metalctl_switch_port_up.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_switch_replace.md b/docs/docs/08-References/API/metalctl/metalctl_switch_replace.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_switch_replace.md rename to docs/docs/08-References/API/metalctl/metalctl_switch_replace.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_switch_ssh.md b/docs/docs/08-References/API/metalctl/metalctl_switch_ssh.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_switch_ssh.md rename to docs/docs/08-References/API/metalctl/metalctl_switch_ssh.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_switch_update.md b/docs/docs/08-References/API/metalctl/metalctl_switch_update.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_switch_update.md rename to docs/docs/08-References/API/metalctl/metalctl_switch_update.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_tenant.md b/docs/docs/08-References/API/metalctl/metalctl_tenant.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_tenant.md rename to docs/docs/08-References/API/metalctl/metalctl_tenant.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_tenant_apply.md b/docs/docs/08-References/API/metalctl/metalctl_tenant_apply.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_tenant_apply.md rename to docs/docs/08-References/API/metalctl/metalctl_tenant_apply.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_tenant_create.md b/docs/docs/08-References/API/metalctl/metalctl_tenant_create.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_tenant_create.md rename to docs/docs/08-References/API/metalctl/metalctl_tenant_create.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_tenant_delete.md b/docs/docs/08-References/API/metalctl/metalctl_tenant_delete.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_tenant_delete.md rename to docs/docs/08-References/API/metalctl/metalctl_tenant_delete.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_tenant_describe.md b/docs/docs/08-References/API/metalctl/metalctl_tenant_describe.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_tenant_describe.md rename to docs/docs/08-References/API/metalctl/metalctl_tenant_describe.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_tenant_edit.md b/docs/docs/08-References/API/metalctl/metalctl_tenant_edit.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_tenant_edit.md rename to docs/docs/08-References/API/metalctl/metalctl_tenant_edit.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_tenant_list.md b/docs/docs/08-References/API/metalctl/metalctl_tenant_list.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_tenant_list.md rename to docs/docs/08-References/API/metalctl/metalctl_tenant_list.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_tenant_update.md b/docs/docs/08-References/API/metalctl/metalctl_tenant_update.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_tenant_update.md rename to docs/docs/08-References/API/metalctl/metalctl_tenant_update.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_update.md b/docs/docs/08-References/API/metalctl/metalctl_update.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_update.md rename to docs/docs/08-References/API/metalctl/metalctl_update.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_update_check.md b/docs/docs/08-References/API/metalctl/metalctl_update_check.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_update_check.md rename to docs/docs/08-References/API/metalctl/metalctl_update_check.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_update_do.md b/docs/docs/08-References/API/metalctl/metalctl_update_do.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_update_do.md rename to docs/docs/08-References/API/metalctl/metalctl_update_do.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_version.md b/docs/docs/08-References/API/metalctl/metalctl_version.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_version.md rename to docs/docs/08-References/API/metalctl/metalctl_version.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_vpn.md b/docs/docs/08-References/API/metalctl/metalctl_vpn.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_vpn.md rename to docs/docs/08-References/API/metalctl/metalctl_vpn.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_vpn_key.md b/docs/docs/08-References/API/metalctl/metalctl_vpn_key.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_vpn_key.md rename to docs/docs/08-References/API/metalctl/metalctl_vpn_key.md diff --git a/docs/docs/07-References/API/metalctl/metalctl_whoami.md b/docs/docs/08-References/API/metalctl/metalctl_whoami.md similarity index 100% rename from docs/docs/07-References/API/metalctl/metalctl_whoami.md rename to docs/docs/08-References/API/metalctl/metalctl_whoami.md diff --git a/docs/docs/07-References/Network/go-ipam/go-ipam.md b/docs/docs/08-References/Network/go-ipam/go-ipam.md similarity index 100% rename from docs/docs/07-References/Network/go-ipam/go-ipam.md rename to docs/docs/08-References/Network/go-ipam/go-ipam.md diff --git a/docs/docs/07-References/Network/metal-bmc/metal-bmc.md b/docs/docs/08-References/Network/metal-bmc/metal-bmc.md similarity index 100% rename from docs/docs/07-References/Network/metal-bmc/metal-bmc.md rename to docs/docs/08-References/Network/metal-bmc/metal-bmc.md diff --git a/docs/docs/07-References/Network/metal-core/metal-core.md b/docs/docs/08-References/Network/metal-core/metal-core.md similarity index 100% rename from docs/docs/07-References/Network/metal-core/metal-core.md rename to docs/docs/08-References/Network/metal-core/metal-core.md diff --git a/docs/docs/07-References/Partition Management/metal-console/metal-console.md b/docs/docs/08-References/Partition Management/metal-console/metal-console.md similarity index 100% rename from docs/docs/07-References/Partition Management/metal-console/metal-console.md rename to docs/docs/08-References/Partition Management/metal-console/metal-console.md diff --git a/docs/docs/07-References/Partition Management/metal-hammer/metal-hammer.md b/docs/docs/08-References/Partition Management/metal-hammer/metal-hammer.md similarity index 100% rename from docs/docs/07-References/Partition Management/metal-hammer/metal-hammer.md rename to docs/docs/08-References/Partition Management/metal-hammer/metal-hammer.md diff --git a/docs/docs/07-References/Storage/csi-lvm/csi-lvm.md b/docs/docs/08-References/Storage/csi-lvm/csi-lvm.md similarity index 100% rename from docs/docs/07-References/Storage/csi-lvm/csi-lvm.md rename to docs/docs/08-References/Storage/csi-lvm/csi-lvm.md diff --git a/docs/docs/07-References/Storage/duros-controller/MULTITENANCY.md b/docs/docs/08-References/Storage/duros-controller/MULTITENANCY.md similarity index 100% rename from docs/docs/07-References/Storage/duros-controller/MULTITENANCY.md rename to docs/docs/08-References/Storage/duros-controller/MULTITENANCY.md diff --git a/docs/docs/07-References/Storage/duros-controller/assets/architecture.drawio.svg b/docs/docs/08-References/Storage/duros-controller/assets/architecture.drawio.svg similarity index 100% rename from docs/docs/07-References/Storage/duros-controller/assets/architecture.drawio.svg rename to docs/docs/08-References/Storage/duros-controller/assets/architecture.drawio.svg diff --git a/docs/docs/07-References/Storage/duros-controller/assets/dataplane.drawio.svg b/docs/docs/08-References/Storage/duros-controller/assets/dataplane.drawio.svg similarity index 100% rename from docs/docs/07-References/Storage/duros-controller/assets/dataplane.drawio.svg rename to docs/docs/08-References/Storage/duros-controller/assets/dataplane.drawio.svg diff --git a/docs/docs/07-References/Storage/duros-controller/assets/nvme-over-tcp.jpg b/docs/docs/08-References/Storage/duros-controller/assets/nvme-over-tcp.jpg similarity index 100% rename from docs/docs/07-References/Storage/duros-controller/assets/nvme-over-tcp.jpg rename to docs/docs/08-References/Storage/duros-controller/assets/nvme-over-tcp.jpg diff --git a/docs/docs/07-References/Storage/duros-controller/duros-controller.md b/docs/docs/08-References/Storage/duros-controller/duros-controller.md similarity index 100% rename from docs/docs/07-References/Storage/duros-controller/duros-controller.md rename to docs/docs/08-References/Storage/duros-controller/duros-controller.md diff --git a/docusaurus.config.ts b/docusaurus.config.ts index b659dbc..49b4254 100644 --- a/docusaurus.config.ts +++ b/docusaurus.config.ts @@ -111,7 +111,7 @@ const config: Config = { type: "doc", label: "Docs", position: "left", - docId: "docs/introduction", + docId: "docs/home", }, { label: "Contributing", diff --git a/scripts/fetch-readmes.js b/scripts/fetch-readmes.js index ab4cb14..1b2f505 100644 --- a/scripts/fetch-readmes.js +++ b/scripts/fetch-readmes.js @@ -4,7 +4,7 @@ const axios = require("axios"); import YAML from 'yaml' -const outputBase = path.resolve(__dirname, "../docs/docs/07-References"); +const outputBase = path.resolve(__dirname, "../docs/docs/08-References"); const releaseVectorPath = "https://raw.githubusercontent.com/metal-stack/releases/refs/heads/master/release.yaml" From 7572eebb40989d059b8d2430b28b32949a957c24 Mon Sep 17 00:00:00 2001 From: Botond Gal Date: Wed, 30 Jul 2025 14:56:44 +0200 Subject: [PATCH 05/15] component updates --- scripts/components.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/components.json b/scripts/components.json index e8cf9b3..95c905f 100644 --- a/scripts/components.json +++ b/scripts/components.json @@ -43,7 +43,7 @@ "name": "metal-hammer", "releasePath": "binaries.metal-stack.metal-hammer.version", "repo": "metal-stack/metal-hammer", - "tag": "v0.13.11", + "tag": "v0.13.13", "position": 2, "withDocs": false } @@ -72,7 +72,7 @@ "name": "go-ipam", "releasePath": "docker-images.metal-stack.control-plane.ipam.tag", "repo": "metal-stack/go-ipam", - "tag": "v1.14.11", + "tag": "v1.14.12", "position": 3, "withDocs": false } @@ -93,7 +93,7 @@ "name": "duros-controller", "releasePath": "docker-images.metal-stack.kubernetes.duros-controller.tag", "repo": "metal-stack/duros-controller", - "tag": "v0.11.5", + "tag": "v0.11.7", "position": 2, "withDocs": false } From c6a4dcd2a9107a261fa6c8fed0fb1c9e88c28294 Mon Sep 17 00:00:00 2001 From: Botond Gal Date: Wed, 30 Jul 2025 15:31:34 +0200 Subject: [PATCH 06/15] update contributing section --- .../MEP1/Distributed-API-Working.png | 0 .../MEP1/Distributed-API.png | 0 .../MEP1/Distributed-Deployment.png | 0 .../MEP1/Distributed.drawio | 0 .../MEP1/Distributed.png | 0 .../MEP1/README.md | 0 .../MEP10/README.md | 0 .../MEP11/README.md | 0 .../MEP12/README.md | 0 .../MEP13/README.md | 0 .../MEP14/README.md | 0 .../MEP16/README.md | 0 .../firewall-for-capms-overview.drawio.svg | 0 .../MEP18/README.md | 0 .../ha-initial-cluster.drawio.svg | 0 ...k-autonomous-control-plane-full.drawio.svg | 0 .../metal-stack-chain.drawio.svg | 0 .../small-initial-cluster.drawio.svg | 0 .../MEP2/README.md | 0 .../MEP3/README.md | 0 .../MEP4/README.md | 0 .../MEP5/README.md | 0 .../MEP5/shared.drawio | 0 .../MEP5/shared.png | 0 .../MEP5/shared_advanced.drawio | 0 .../MEP5/shared_advanced.png | 0 .../MEP6/README.md | 0 .../MEP6/dmz-internet_private.drawio | 0 .../MEP6/dmz-internet_private.svg | 0 .../MEP6/dmz-internet_public.drawio | 0 .../MEP6/dmz-internet_public.svg | 0 .../MEP8/README.md | 0 .../MEP8/filesystems.drawio | 0 .../MEP8/filesystems.png | 0 .../MEP9/README.md | 0 .../MEP9/architecture.drawio.svg | 0 .../_category_.json | 0 .../{Proposals => 01-Proposals}/index.md | 1 - docs/contributing/02-planning-meetings.md | 51 ++ docs/contributing/02-roadmap.md | 44 -- ...uction.md => 03-contribution-guideline.md} | 28 +- docs/contributing/04-release-flow.md | 107 +++ docs/contributing/05-community.md | 11 + docs/contributing/release.png | 3 + docs/contributing/release_flow.drawio.svg | 721 ++++++++++++++++++ docusaurus.config.ts | 2 +- 46 files changed, 910 insertions(+), 58 deletions(-) rename docs/contributing/{Proposals => 01-Proposals}/MEP1/Distributed-API-Working.png (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP1/Distributed-API.png (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP1/Distributed-Deployment.png (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP1/Distributed.drawio (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP1/Distributed.png (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP1/README.md (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP10/README.md (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP11/README.md (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP12/README.md (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP13/README.md (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP14/README.md (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP16/README.md (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP16/firewall-for-capms-overview.drawio.svg (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP18/README.md (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP18/autonomous-control-plane-images/ha-initial-cluster.drawio.svg (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP18/autonomous-control-plane-images/metal-stack-autonomous-control-plane-full.drawio.svg (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP18/autonomous-control-plane-images/metal-stack-chain.drawio.svg (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP18/autonomous-control-plane-images/small-initial-cluster.drawio.svg (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP2/README.md (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP3/README.md (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP4/README.md (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP5/README.md (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP5/shared.drawio (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP5/shared.png (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP5/shared_advanced.drawio (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP5/shared_advanced.png (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP6/README.md (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP6/dmz-internet_private.drawio (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP6/dmz-internet_private.svg (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP6/dmz-internet_public.drawio (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP6/dmz-internet_public.svg (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP8/README.md (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP8/filesystems.drawio (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP8/filesystems.png (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP9/README.md (100%) rename docs/contributing/{Proposals => 01-Proposals}/MEP9/architecture.drawio.svg (100%) rename docs/contributing/{Proposals => 01-Proposals}/_category_.json (100%) rename docs/contributing/{Proposals => 01-Proposals}/index.md (98%) create mode 100644 docs/contributing/02-planning-meetings.md delete mode 100644 docs/contributing/02-roadmap.md rename docs/contributing/{introduction.md => 03-contribution-guideline.md} (80%) create mode 100644 docs/contributing/04-release-flow.md create mode 100644 docs/contributing/05-community.md create mode 100644 docs/contributing/release.png create mode 100644 docs/contributing/release_flow.drawio.svg diff --git a/docs/contributing/Proposals/MEP1/Distributed-API-Working.png b/docs/contributing/01-Proposals/MEP1/Distributed-API-Working.png similarity index 100% rename from docs/contributing/Proposals/MEP1/Distributed-API-Working.png rename to docs/contributing/01-Proposals/MEP1/Distributed-API-Working.png diff --git a/docs/contributing/Proposals/MEP1/Distributed-API.png b/docs/contributing/01-Proposals/MEP1/Distributed-API.png similarity index 100% rename from docs/contributing/Proposals/MEP1/Distributed-API.png rename to docs/contributing/01-Proposals/MEP1/Distributed-API.png diff --git a/docs/contributing/Proposals/MEP1/Distributed-Deployment.png b/docs/contributing/01-Proposals/MEP1/Distributed-Deployment.png similarity index 100% rename from docs/contributing/Proposals/MEP1/Distributed-Deployment.png rename to docs/contributing/01-Proposals/MEP1/Distributed-Deployment.png diff --git a/docs/contributing/Proposals/MEP1/Distributed.drawio b/docs/contributing/01-Proposals/MEP1/Distributed.drawio similarity index 100% rename from docs/contributing/Proposals/MEP1/Distributed.drawio rename to docs/contributing/01-Proposals/MEP1/Distributed.drawio diff --git a/docs/contributing/Proposals/MEP1/Distributed.png b/docs/contributing/01-Proposals/MEP1/Distributed.png similarity index 100% rename from docs/contributing/Proposals/MEP1/Distributed.png rename to docs/contributing/01-Proposals/MEP1/Distributed.png diff --git a/docs/contributing/Proposals/MEP1/README.md b/docs/contributing/01-Proposals/MEP1/README.md similarity index 100% rename from docs/contributing/Proposals/MEP1/README.md rename to docs/contributing/01-Proposals/MEP1/README.md diff --git a/docs/contributing/Proposals/MEP10/README.md b/docs/contributing/01-Proposals/MEP10/README.md similarity index 100% rename from docs/contributing/Proposals/MEP10/README.md rename to docs/contributing/01-Proposals/MEP10/README.md diff --git a/docs/contributing/Proposals/MEP11/README.md b/docs/contributing/01-Proposals/MEP11/README.md similarity index 100% rename from docs/contributing/Proposals/MEP11/README.md rename to docs/contributing/01-Proposals/MEP11/README.md diff --git a/docs/contributing/Proposals/MEP12/README.md b/docs/contributing/01-Proposals/MEP12/README.md similarity index 100% rename from docs/contributing/Proposals/MEP12/README.md rename to docs/contributing/01-Proposals/MEP12/README.md diff --git a/docs/contributing/Proposals/MEP13/README.md b/docs/contributing/01-Proposals/MEP13/README.md similarity index 100% rename from docs/contributing/Proposals/MEP13/README.md rename to docs/contributing/01-Proposals/MEP13/README.md diff --git a/docs/contributing/Proposals/MEP14/README.md b/docs/contributing/01-Proposals/MEP14/README.md similarity index 100% rename from docs/contributing/Proposals/MEP14/README.md rename to docs/contributing/01-Proposals/MEP14/README.md diff --git a/docs/contributing/Proposals/MEP16/README.md b/docs/contributing/01-Proposals/MEP16/README.md similarity index 100% rename from docs/contributing/Proposals/MEP16/README.md rename to docs/contributing/01-Proposals/MEP16/README.md diff --git a/docs/contributing/Proposals/MEP16/firewall-for-capms-overview.drawio.svg b/docs/contributing/01-Proposals/MEP16/firewall-for-capms-overview.drawio.svg similarity index 100% rename from docs/contributing/Proposals/MEP16/firewall-for-capms-overview.drawio.svg rename to docs/contributing/01-Proposals/MEP16/firewall-for-capms-overview.drawio.svg diff --git a/docs/contributing/Proposals/MEP18/README.md b/docs/contributing/01-Proposals/MEP18/README.md similarity index 100% rename from docs/contributing/Proposals/MEP18/README.md rename to docs/contributing/01-Proposals/MEP18/README.md diff --git a/docs/contributing/Proposals/MEP18/autonomous-control-plane-images/ha-initial-cluster.drawio.svg b/docs/contributing/01-Proposals/MEP18/autonomous-control-plane-images/ha-initial-cluster.drawio.svg similarity index 100% rename from docs/contributing/Proposals/MEP18/autonomous-control-plane-images/ha-initial-cluster.drawio.svg rename to docs/contributing/01-Proposals/MEP18/autonomous-control-plane-images/ha-initial-cluster.drawio.svg diff --git a/docs/contributing/Proposals/MEP18/autonomous-control-plane-images/metal-stack-autonomous-control-plane-full.drawio.svg b/docs/contributing/01-Proposals/MEP18/autonomous-control-plane-images/metal-stack-autonomous-control-plane-full.drawio.svg similarity index 100% rename from docs/contributing/Proposals/MEP18/autonomous-control-plane-images/metal-stack-autonomous-control-plane-full.drawio.svg rename to docs/contributing/01-Proposals/MEP18/autonomous-control-plane-images/metal-stack-autonomous-control-plane-full.drawio.svg diff --git a/docs/contributing/Proposals/MEP18/autonomous-control-plane-images/metal-stack-chain.drawio.svg b/docs/contributing/01-Proposals/MEP18/autonomous-control-plane-images/metal-stack-chain.drawio.svg similarity index 100% rename from docs/contributing/Proposals/MEP18/autonomous-control-plane-images/metal-stack-chain.drawio.svg rename to docs/contributing/01-Proposals/MEP18/autonomous-control-plane-images/metal-stack-chain.drawio.svg diff --git a/docs/contributing/Proposals/MEP18/autonomous-control-plane-images/small-initial-cluster.drawio.svg b/docs/contributing/01-Proposals/MEP18/autonomous-control-plane-images/small-initial-cluster.drawio.svg similarity index 100% rename from docs/contributing/Proposals/MEP18/autonomous-control-plane-images/small-initial-cluster.drawio.svg rename to docs/contributing/01-Proposals/MEP18/autonomous-control-plane-images/small-initial-cluster.drawio.svg diff --git a/docs/contributing/Proposals/MEP2/README.md b/docs/contributing/01-Proposals/MEP2/README.md similarity index 100% rename from docs/contributing/Proposals/MEP2/README.md rename to docs/contributing/01-Proposals/MEP2/README.md diff --git a/docs/contributing/Proposals/MEP3/README.md b/docs/contributing/01-Proposals/MEP3/README.md similarity index 100% rename from docs/contributing/Proposals/MEP3/README.md rename to docs/contributing/01-Proposals/MEP3/README.md diff --git a/docs/contributing/Proposals/MEP4/README.md b/docs/contributing/01-Proposals/MEP4/README.md similarity index 100% rename from docs/contributing/Proposals/MEP4/README.md rename to docs/contributing/01-Proposals/MEP4/README.md diff --git a/docs/contributing/Proposals/MEP5/README.md b/docs/contributing/01-Proposals/MEP5/README.md similarity index 100% rename from docs/contributing/Proposals/MEP5/README.md rename to docs/contributing/01-Proposals/MEP5/README.md diff --git a/docs/contributing/Proposals/MEP5/shared.drawio b/docs/contributing/01-Proposals/MEP5/shared.drawio similarity index 100% rename from docs/contributing/Proposals/MEP5/shared.drawio rename to docs/contributing/01-Proposals/MEP5/shared.drawio diff --git a/docs/contributing/Proposals/MEP5/shared.png b/docs/contributing/01-Proposals/MEP5/shared.png similarity index 100% rename from docs/contributing/Proposals/MEP5/shared.png rename to docs/contributing/01-Proposals/MEP5/shared.png diff --git a/docs/contributing/Proposals/MEP5/shared_advanced.drawio b/docs/contributing/01-Proposals/MEP5/shared_advanced.drawio similarity index 100% rename from docs/contributing/Proposals/MEP5/shared_advanced.drawio rename to docs/contributing/01-Proposals/MEP5/shared_advanced.drawio diff --git a/docs/contributing/Proposals/MEP5/shared_advanced.png b/docs/contributing/01-Proposals/MEP5/shared_advanced.png similarity index 100% rename from docs/contributing/Proposals/MEP5/shared_advanced.png rename to docs/contributing/01-Proposals/MEP5/shared_advanced.png diff --git a/docs/contributing/Proposals/MEP6/README.md b/docs/contributing/01-Proposals/MEP6/README.md similarity index 100% rename from docs/contributing/Proposals/MEP6/README.md rename to docs/contributing/01-Proposals/MEP6/README.md diff --git a/docs/contributing/Proposals/MEP6/dmz-internet_private.drawio b/docs/contributing/01-Proposals/MEP6/dmz-internet_private.drawio similarity index 100% rename from docs/contributing/Proposals/MEP6/dmz-internet_private.drawio rename to docs/contributing/01-Proposals/MEP6/dmz-internet_private.drawio diff --git a/docs/contributing/Proposals/MEP6/dmz-internet_private.svg b/docs/contributing/01-Proposals/MEP6/dmz-internet_private.svg similarity index 100% rename from docs/contributing/Proposals/MEP6/dmz-internet_private.svg rename to docs/contributing/01-Proposals/MEP6/dmz-internet_private.svg diff --git a/docs/contributing/Proposals/MEP6/dmz-internet_public.drawio b/docs/contributing/01-Proposals/MEP6/dmz-internet_public.drawio similarity index 100% rename from docs/contributing/Proposals/MEP6/dmz-internet_public.drawio rename to docs/contributing/01-Proposals/MEP6/dmz-internet_public.drawio diff --git a/docs/contributing/Proposals/MEP6/dmz-internet_public.svg b/docs/contributing/01-Proposals/MEP6/dmz-internet_public.svg similarity index 100% rename from docs/contributing/Proposals/MEP6/dmz-internet_public.svg rename to docs/contributing/01-Proposals/MEP6/dmz-internet_public.svg diff --git a/docs/contributing/Proposals/MEP8/README.md b/docs/contributing/01-Proposals/MEP8/README.md similarity index 100% rename from docs/contributing/Proposals/MEP8/README.md rename to docs/contributing/01-Proposals/MEP8/README.md diff --git a/docs/contributing/Proposals/MEP8/filesystems.drawio b/docs/contributing/01-Proposals/MEP8/filesystems.drawio similarity index 100% rename from docs/contributing/Proposals/MEP8/filesystems.drawio rename to docs/contributing/01-Proposals/MEP8/filesystems.drawio diff --git a/docs/contributing/Proposals/MEP8/filesystems.png b/docs/contributing/01-Proposals/MEP8/filesystems.png similarity index 100% rename from docs/contributing/Proposals/MEP8/filesystems.png rename to docs/contributing/01-Proposals/MEP8/filesystems.png diff --git a/docs/contributing/Proposals/MEP9/README.md b/docs/contributing/01-Proposals/MEP9/README.md similarity index 100% rename from docs/contributing/Proposals/MEP9/README.md rename to docs/contributing/01-Proposals/MEP9/README.md diff --git a/docs/contributing/Proposals/MEP9/architecture.drawio.svg b/docs/contributing/01-Proposals/MEP9/architecture.drawio.svg similarity index 100% rename from docs/contributing/Proposals/MEP9/architecture.drawio.svg rename to docs/contributing/01-Proposals/MEP9/architecture.drawio.svg diff --git a/docs/contributing/Proposals/_category_.json b/docs/contributing/01-Proposals/_category_.json similarity index 100% rename from docs/contributing/Proposals/_category_.json rename to docs/contributing/01-Proposals/_category_.json diff --git a/docs/contributing/Proposals/index.md b/docs/contributing/01-Proposals/index.md similarity index 98% rename from docs/contributing/Proposals/index.md rename to docs/contributing/01-Proposals/index.md index 71eb3ac..92a8156 100644 --- a/docs/contributing/Proposals/index.md +++ b/docs/contributing/01-Proposals/index.md @@ -1,5 +1,4 @@ --- -slug: /enhancement-proposals title: Enhancement Proposals sidebar_position: 1 --- diff --git a/docs/contributing/02-planning-meetings.md b/docs/contributing/02-planning-meetings.md new file mode 100644 index 0000000..ef60220 --- /dev/null +++ b/docs/contributing/02-planning-meetings.md @@ -0,0 +1,51 @@ +--- +slug: /planning-meetings +title: Planning Meetings +sidebar_position: 2 +--- + +# Planning Meetings + +Public planning meetings are held **biweekly** on **odd calendar weeks** from **14:00 to 14:30** on Microsoft Teams. The purpose is to provide an overview of our current projects and priorities, as well as to discuss new topics and issues within the group. + +Our [development planning board](https://github.com/orgs/metal-stack/projects/34) can be found on GitHub. + +You can use [this link](https://teams.microsoft.com/l/meetup-join/19%3ameeting_ZTVmNWFkYjYtMzVmYi00ZTMxLTk5ZTUtMGFjYjU2OTk0MjQz%40thread.v2/0?context=%7b%22Tid%22%3a%22f9d9b921-8f78-466d-95fd-4495e73d8d65%22%2c%22Oid%22%3a%228ac2a791-e637-4a90-8505-0a1ee175ebfc%22%7d) to join. If you want to get an invitation to the event, please drop us a line on our Slack channel. + +Planning meetings are currently not recorded. The meetings are held either in English or German depending on the attendees. + +:::info +Note that anyone can contribute to metal-stack without participating in planning meetings. However, if you want to speed up the review process for your requirements, it might be helpful to attend the meetings. +::: + +## Agenda + +Here is the agenda that we generally want to follow in a planning meeting: + +- Possibility to bring up news that are interesting for every developer of the metal-stack org +- Check `Done` column and archive cards + - Attendees have the chance to briefly present achievements if they want +- Check the `In Progress` column and discuss whether these tasks are still worked on, there were significant blockers or they can be lower-prioritized +- Check new issues labelled with `triage` and prioritize them +- Allow attendees to bring up issues and prioritize them + - Attendees have the chance to briefly present these new issues + +## Idea Backlog + +The backlog contains ideas of what could become part of the roadmap in the future. The list is ordered alphabetically. Therefore, the order does not express the importance or weight of a backlog item. + +We incorporate community feedback into the roadmap. If you think that important points are missing in the backlog, please share your ideas with us. We have a Slack channel. Please check out [metal-stack.io](https://metal-stack.io) for contact information. + +:::danger +By no means this list is a promise of what is being worked on in the near future. It is just a summary of ideas that was agreed on to be "nice to have". It is up to the investors, maintainers and the community to choose topics from this list and to implement them or to remove them from the list. +::: + +- Add metal-stack to [Gardener conformance test grid](https://testgrid.k8s.io/gardener-all) +- Autoscaler for metal control plane components +- CI dashboard and public integration testing +- Improved release and deploy processes (GitOps, [Spinnaker](https://spinnaker.io/), [Flux](https://fluxcd.io/)) +- Machine internet without firewalls +- metal-stack dashboard (UI) +- Offer our metal-stack extensions as enterprise products (accounting, cluster-api, S3) (neither of them will ever be required for running metal-stack, they just add extra value for certain enterprises) +- Partition managed by Kubernetes (with Kubelets joining the control plane cluster) +- Public offering / demo playground diff --git a/docs/contributing/02-roadmap.md b/docs/contributing/02-roadmap.md deleted file mode 100644 index 7e243ce..0000000 --- a/docs/contributing/02-roadmap.md +++ /dev/null @@ -1,44 +0,0 @@ ---- -slug: /roadmap -title: Roadmap -sidebar_position: 2 ---- - -# Roadmap - -A roadmap with short-, mid- and long-term planning will be available soon. For now, there is only a backlog. - -## Short-term - -Available soon. - -## Mid-term - -Available soon. - -## Long-term - -Available soon. - -## Backlog - -The backlog contains ideas of what could become part of the roadmap in the future. The list is ordered alphabetically. Therefore, the order does not express the importance or weight of a backlog item. - -We incorporate community feedback into the roadmap. If you think that important points are missing in the backlog, please share your ideas with us. We have a Slack channel. Please check out [metal-stack.io](https://metal-stack.io) for contact information. - -:::danger -By no means this list is a promise of what is being worked on in the near future. It is just a summary of ideas that was agreed on to be "nice to have". It is up to the investors, maintainers and the community to choose topics from this list and to implement them or to remove them from the list. -::: - -- Add metal-stack to [Gardener conformance test grid](https://testgrid.k8s.io/gardener-all) -- Autoscaler for metal control plane components -- CI dashboard and public integration testing -- Cilium as the default CNI for metal-stack on Gardener K8s clusters -- Improved release and deploy processes (GitOps, [Spinnaker](https://spinnaker.io/), [Flux](https://fluxcd.io/)) -- Machine internet without firewalls -- metal-stack dashboard (UI) -- Offer our metal-stack extensions as enterprise products (accounting, cluster-api, S3) (neither of them will ever be required for running metal-stack, they just add extra value for certain enterprises) -- Partition managed by Kubernetes (with Kubelets joining the control plane cluster) -- Public offering / demo playground -- Resource scoping in the metal-api (MEP-4) -- Service / API tokens (for scoped technical user access) diff --git a/docs/contributing/introduction.md b/docs/contributing/03-contribution-guideline.md similarity index 80% rename from docs/contributing/introduction.md rename to docs/contributing/03-contribution-guideline.md index eee3209..b6d9533 100644 --- a/docs/contributing/introduction.md +++ b/docs/contributing/03-contribution-guideline.md @@ -1,10 +1,10 @@ --- -slug: /contributing -title: Contributing -sidebar_position: 1 +slug: /contribution-guideline +title: Contribution Guideline +sidebar_position: 3 --- -# Contributing +# Contribution Guideline This document describes the way we want to contribute code to the projects of metal-stack, which are hosted on [github.com/metal-stack](https://github.com/metal-stack). @@ -18,6 +18,11 @@ If you want, feel free to propose changes to this document in a pull request. Open a Github issue in the project you would like to contribute. Within the issue, your idea can be discussed. It is also possible to directly create a pull request when the set of changes is relatively small. +When opening an issue please consider the following aspects: + +1. Create a meaningful issue describing the WHY? of your contribution. +1. Try to set appropriate labels to the issue. For example, attach the `triage` label to your issue if you want it to be discussed in the next [planning meeting](./planning-meetings.md). It might be useful to attend the meeting if you want to emphasize it being worked on. + ### Pull Requests The process described here has several goals: @@ -26,12 +31,11 @@ The process described here has several goals: - Enable a sustainable system to review contributions - Enable documented and reproducible addition of contributions -1. Create a meaningful issue describing the WHY? of your contribution -1. Create a repository fork within the context of that issue. -1. Create a Draft Pull Request to the master branch of the target repository. -1. Develop, document and test your contribution (try not to solve more than one issue in a single pull request) -1. Ask for merging your contribution by removing the draft marker -1. If code owners are defined, try to assign the request to a code owner +1. Create a repository fork within the context of that issue. Members of the organization may work on the repository directly without a fork, which allows building development artifacts more easily. +1. Develop, document and test your contribution (try not to solve more than one issue in a single pull request). +1. Create a Draft Pull Request to the repository's main branch. +1. Create a meaningful description of the pull request or reference the related issue. The pull request template explains what the content should include, please read it. +1. Ask for merging your contribution by removing the draft marker. Repository maintainers (see [Code Ownership](#code-ownership)) are notified automatically, but you can also reach out to people directly on Slack if you want a review from a specific person. ## General Objectives @@ -53,7 +57,7 @@ One major ambition of metal-stack is to follow the idea of [microservices](https ### Programming Languages -We are generally open to write code in any language that fits best to the function of the software. However, we encourage [golang]() to be the main language of metal-stack as we think that it makes development faster when not establishing too many different languages in our architecture. Reason for this is that we are striving for consistent behavior of the microservices, similar to what has been described for the Twelve-Factor App (see [12 Factor](https://12factor.net/)). We help enforcing unified behavior by allowing a small layer of shared code for every programming language. We will refer to this shared code as "libraries" for the rest of this document. +We are generally open to write code in any language that fits best to the function of the software. However, we encourage [golang](https://en.wikipedia.org/wiki/Go_(programming_language)) to be the main language of metal-stack as we think that it makes development faster when not establishing too many different languages in our architecture. Reason for this is that we are striving for consistent behavior of the microservices, similar to what has been described for the Twelve-Factor App (see [12 Factor](https://12factor.net/)). We help enforcing unified behavior by allowing a small layer of shared code for every programming language. We will refer to this shared code as "libraries" for the rest of this document. ### Artifacts @@ -121,7 +125,7 @@ We want to share knowledge and keep things simple. If things cannot kept simple - Document in short sentences[^4]. - Do not explain the HOW (this is already documented by your code and documenting the obvious is considered a defect). -- Explain the WHY. Add a "to" in your documentation line to force yourself to explain the reasonning (e.g. "` to `"). +- Explain the WHY. Add a "to" in your documentation line to force yourself to explain the reasonning (e.g. "` to `"). ### Python diff --git a/docs/contributing/04-release-flow.md b/docs/contributing/04-release-flow.md new file mode 100644 index 0000000..4cb88b2 --- /dev/null +++ b/docs/contributing/04-release-flow.md @@ -0,0 +1,107 @@ +--- +slug: /release-flow +title: Release Flow +sidebar_position: 4 +--- + +# Releases + +The metal-stack contains of many microservices that depend on each other. The automated release flow is there to ensure that all components work together flawlessly for every metal-stack release. + +Releases and integration tests are published through our [release repository](https://github.com/metal-stack/releases). You can also find the [release notes](https://github.com/metal-stack/releases/releases) for this metal-stack version in there. The release notes contain information about new features, upgrade paths and bug fixes. + +If you want, you can sign up at our Slack channel where we are announcing every new release. Often, we provide additional information for metal-stack administrators and adopters at this place, too. + +This document is intended for developers, especially maintainers of metal-stack projects. + +## Release Flow + +The following diagram attempts to describe our current release flow: + +![](release_flow.drawio.svg) + +A release is created in the following way: + +- Individual repository maintainers within the metal-stack GitHub Organization can publish a release of their component. +- This release is automatically pushed to the `develop` branch of the release repository by the metal-robot. +- A push triggers a virtual release integration test using the mini-lab environment. This setup launches metal-stack with the `sonic` and `gardener` flavors to validate the different Ansible roles and execute basic operations across the metal-stack layer. +- To contribute components that are not directly part of the release vector, a pull request must be made against the `develop` branch of the release repository. Release maintainers may push directly to the `develop` branch. +- The release maintainers can `/freeze` the `develop` branch, effectively stopping the metal-robot from pushing component releases to this branch. +- The `develop` branch is tagged by a release maintainer with a `-rc.x` suffix to create a __release candidate__. +- The release candidate must pass a large integration test suite on a real environment, which is currently run by FI-TS. It tests the entire machine provisioning engine including the integration with Gardener, the deployment, metal-images and Kubernetes conformance tests. +- If the integration tests pass, the PR of the `develop` branch must be approved by at least two release maintainers. +- A release is created via GitHub releases, including all release notes, with a tag on the `main` branch. + +## FAQ + +**Question: I need PR #xyz to go into the release, why did you not include it?** + +Answer: It's not on purpose if we miss a PR to be included into a metal-stack release. Please use the pending pull request from `develop` into `master` as soon as it is open and comment which pull request you want to have included into the release. Also consider attending our planning meetings or contact us in our Slack channel if you have urgent requirements that need to be dealt with. + +**Question: Who is responsible for the releases? Who can freeze a release?** + +Answer: Every repository in metal-stack has a `CODEOWNERS` file pointing to a maintainer team. This is also true for the releases repository. Only release repository maintainers are allowed to `/freeze` a release (meaning the metal-robot does not automatically append new component releases to the release vector anymore). + +**Question: I can't push to the `develop` branch of this repository? How can I request changes to the release vector?** + +Answer: Most changes are automatically integrated by the metal-robot. For manually managed components, please raise a pull request against the `develop` branch. Only release maintainers are allowed to push to `develop` as otherwise it would be possible to mess up the release pipeline. + +**Question: What requirements need to be fulfilled to add a repository to the release vector?** + +Please see the section below named [Requirements for Release Vector Repositories](#requirements-for-release-vector-repositories). + +### Requirements for Release Vector Repositories + +Before adding a repository in the metal-stack org to the releases repository, it is advised for the maintainer to fulfill the following points: + +- The following files should be present at the repository root: + - [CODEOWNERS](https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners) + - When a repository is created, the metal-robot automatically creates a -maintainers team in our GitHub org. + - The CODEOWNERS file should reference this team. + - The team should contain at least two maintainers. + - `LICENSE` + - This usually should be MIT with "metal-stack" as authors. + - `CONTRIBUTING.md` + - This should contain the following content: + ``` + # Contributing + + Please check out the [contributing section](https://docs.metal-stack.io/stable/development/contributing/) in our [docs](https://docs.metal-stack.io/). + ``` + - `README.md` +- The `developers-core` team should be given repository access with `write` role, the codeowners team should have the `maintain` role +- Release artifacts should have an SPDX-formatted SBOM attached. + - For container images these are embedded using Buildx. +- The following branch protection rules should be set: + - The mainline should be protected. + - A pull request should be required before merging (required by at least one code owner). + - Status checks should be required to pass. + - Force push should not be allowed on this branch. +- One person from the releases maintainers has to add the repository to the metal-robot in order to pick up the releases, add them to the release vector and generate release notes. + +### How-To Release a Project + +[release-drafter](https://github.com/release-drafter/release-drafter) is preferred in order to generate release notes from merged PRs for your projects. It should be triggered for pushes on your main branch. + +The draft is then used to create a project release. The release has to be published through the GitHub UI as demonstrated in the screenshot below. + +**Tagging the repository is not enough as repository tagging does not associate your release notes to your release!** + +![](release.png) + +Some further remarks: + +- Use semver versions with `v` prefix for your tags +- Name your release after your release tag +- The metal-robot only picks up lines from your release notes that start with `-` or `*` (unordered list items) and appends them to the according section in the aggregated release draft +- A tag created through a GitHub UI release does not trigger a `push` event . This means, your pipeline will not start to run with the `push` trigger when publishing through the UI. + + Instead, use the `published` [release event trigger](https://docs.github.com/en/actions/reference/events-that-trigger-workflows#release) for your actions: + + ```yaml + on: + release: + types: + - published + ``` +- In case they are necessary, please do not forget to include `NOTEWORTHY`, `ACTIONS_REQUIRED` or `BREAKING_CHANGE` sections into releases. More information on those release draft sections can be read in a pull request template. diff --git a/docs/contributing/05-community.md b/docs/contributing/05-community.md new file mode 100644 index 0000000..61eaf09 --- /dev/null +++ b/docs/contributing/05-community.md @@ -0,0 +1,11 @@ +--- +slug: /community +title: Community +sidebar_position: 5 +draft: true +--- + +# Community + +(Slack channel, community events like FOSDEM, Kubernetes Community Days..., blog +articles) diff --git a/docs/contributing/release.png b/docs/contributing/release.png new file mode 100644 index 0000000..a329a84 --- /dev/null +++ b/docs/contributing/release.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8082d4c56e1df5f0240cda3f4f0dd94701431ff29bc481d5ec21280d93f3e53 +size 87019 diff --git a/docs/contributing/release_flow.drawio.svg b/docs/contributing/release_flow.drawio.svg new file mode 100644 index 0000000..6ca6b34 --- /dev/null +++ b/docs/contributing/release_flow.drawio.svg @@ -0,0 +1,721 @@ + + + + + + + + + + + +
+
+
+ Review release notes +
+
+
+
+ + Review release notes + +
+
+
+ + + + + + + +
+
+
+ projects +
+
+
+
+ + projects + +
+
+
+ + + + + + + +
+
+
+ projects +
+
+
+
+ + projects + +
+
+
+ + + + + + + + +
+
+
+ Organization Webhook +
+
+
+
+ + Organization Webhook + +
+
+
+ + + + + + + +
+
+
+ projects +
+
+
+
+ + projects + +
+
+
+ + + + + + + + +
+
+
+ + Publish release + +
+
+
+
+ + Publish release + +
+
+
+ + + + + + + + +
+
+
+ Maintainer +
+
+
+
+ + Maint... + +
+
+
+ + + + + + + + + + + + + + + +
+
+
+ metal-robot release handler +
+
+
+
+ + metal-robot release han... + +
+
+
+ + + + + + + + +
+
+
+ + no + +
+
+
+
+ + no + +
+
+
+ + + + + + + + +
+
+
+ + yes + +
+
+
+
+ + yes + +
+
+
+ + + + + + + +
+
+
+ version in event newer than release vector version +
+
+
+
+ + version in event newer than... + +
+
+
+ + + + + + + +
+
+
+ + do nothing + +
+
+
+
+ + do nothing + +
+
+
+ + + + + + + + + + + + +
+
+
+ Github Action +
+
+
+
+ + Github Action + +
+
+
+ + + + + + + +
+
+
+ Bump version in release vector and push to + + develop + +
+
+
+
+ + Bump version in release vector... + +
+
+
+ + + + + + + + + + + +
+
+
+ Open pull request from + + develop + + to + + master + +
+
+
+
+ + Open pull request from develop... + +
+
+
+ + + + + + + +
+
+
+ Update aggregated release draft in + + metal-stack/releases + +
+
+
+
+ + Update aggregated release draf... + +
+
+
+ + + + + + + + + + + + + + + +
+
+
+ Integration Testing +
+
+
+
+ + Integration Testing + +
+
+
+ + + + + + + + + + + +
+
+
+ Merge to + + master + +
+
+
+
+ + Merge to master + +
+
+
+ + + + + + + + + + + + +
+
+
+ Review +
+
+
+
+ + Review + +
+
+
+ + + + + + + + + + + + + + + +
+
+
+ Tests suceeded and PR changes reviewed +
+
+
+
+ + Tests suceeded and PR chang... + +
+
+
+ + + + + + + +
+
+
+ + publish results to #integration + +
+
+
+
+ + publish results to #integr... + +
+
+
+ + + + + + + + + + + + + + + +
+
+
+ Release metal-stack +
+
+
+
+ + Release metal-stack + +
+
+
+ + + + + + + + + + + +
+
+
+ + publish to #announcements + +
+
+
+
+ + publish to #announcements + +
+
+
+ + + + + + + +
+
+
+ + + metal-stack/docs + + pull request + +
+
+
+
+ + metal-stack/docs pull requ... + +
+
+
+ + + + + + + + + + + + +
+
+
+ Freeze +
+
+
+
+ + Freeze + +
+
+
+ + + + + + + + + + + + + + + +
+
+
+ Freeze + + develop + + and create a release candidate +
+
+
+
+ + Freeze develop and create a rel... + +
+
+
+ + + + + + + +
+
+
+ Large integration suites +
+ + (currently owned by FI-TS, not public) + +
+
+
+
+
+ + Large integration suites... + +
+
+
+ + + + + + + + +
+
+
+ Run +
+
+
+
+ + Run + +
+
+
+ + + + +
+ + + + + Text is not SVG - cannot display + + + +
diff --git a/docusaurus.config.ts b/docusaurus.config.ts index 49b4254..4786c0e 100644 --- a/docusaurus.config.ts +++ b/docusaurus.config.ts @@ -116,7 +116,7 @@ const config: Config = { { label: "Contributing", type: "doc", - docId: "contributing/introduction", + docId: "contributing/Proposals/index", }, { to: "/blog", label: "Blog", position: "left" }, { From 8db5fe8babb6dd349cfbad8ef5b8229e7f346d56 Mon Sep 17 00:00:00 2001 From: Botond Gal Date: Thu, 31 Jul 2025 10:49:35 +0200 Subject: [PATCH 07/15] Create dependabot.yml --- .github/dependabot.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 .github/dependabot.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..c7be077 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,11 @@ +# To get started with Dependabot version updates, you'll need to specify which +# package ecosystems to update and where the package manifests are located. +# Please see the documentation for all configuration options: +# https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file + +version: 2 +updates: + - package-ecosystem: "bun" # See documentation for possible values + directory: "/" # Location of package manifests + schedule: + interval: "weekly" From 81b5e2fe60a7f7993ca67aadfd0028963df91063 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 31 Jul 2025 08:51:11 +0000 Subject: [PATCH 08/15] Bump @tailwindcss/postcss from 4.1.6 to 4.1.11 Bumps [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss) from 4.1.6 to 4.1.11. - [Release notes](https://github.com/tailwindlabs/tailwindcss/releases) - [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md) - [Commits](https://github.com/tailwindlabs/tailwindcss/commits/v4.1.11/packages/@tailwindcss-postcss) --- updated-dependencies: - dependency-name: "@tailwindcss/postcss" dependency-version: 4.1.11 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- bun.lock | 62 ++++++++++++++++++++++++++++------------------------ package.json | 2 +- 2 files changed, 35 insertions(+), 29 deletions(-) diff --git a/bun.lock b/bun.lock index 20e6095..7834e3d 100644 --- a/bun.lock +++ b/bun.lock @@ -8,7 +8,7 @@ "@docusaurus/plugin-content-blog": "^3.7.0", "@docusaurus/preset-classic": "3.7.0", "@mdx-js/react": "^3.0.0", - "@tailwindcss/postcss": "^4.1.6", + "@tailwindcss/postcss": "^4.1.11", "axios": "^1.9.0", "clsx": "^2.0.0", "postcss": "^8.5.3", @@ -500,35 +500,35 @@ "@szmarczak/http-timer": ["@szmarczak/http-timer@5.0.1", "", { "dependencies": { "defer-to-connect": "^2.0.1" } }, "sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw=="], - "@tailwindcss/node": ["@tailwindcss/node@4.1.6", "", { "dependencies": { "@ampproject/remapping": "^2.3.0", "enhanced-resolve": "^5.18.1", "jiti": "^2.4.2", "lightningcss": "1.29.2", "magic-string": "^0.30.17", "source-map-js": "^1.2.1", "tailwindcss": "4.1.6" } }, "sha512-ed6zQbgmKsjsVvodAS1q1Ld2BolEuxJOSyyNc+vhkjdmfNUDCmQnlXBfQkHrlzNmslxHsQU/bFmzcEbv4xXsLg=="], + "@tailwindcss/node": ["@tailwindcss/node@4.1.11", "", { "dependencies": { "@ampproject/remapping": "^2.3.0", "enhanced-resolve": "^5.18.1", "jiti": "^2.4.2", "lightningcss": "1.30.1", "magic-string": "^0.30.17", "source-map-js": "^1.2.1", "tailwindcss": "4.1.11" } }, "sha512-yzhzuGRmv5QyU9qLNg4GTlYI6STedBWRE7NjxP45CsFYYq9taI0zJXZBMqIC/c8fViNLhmrbpSFS57EoxUmD6Q=="], - "@tailwindcss/oxide": ["@tailwindcss/oxide@4.1.6", "", { "dependencies": { "detect-libc": "^2.0.4", "tar": "^7.4.3" }, "optionalDependencies": { "@tailwindcss/oxide-android-arm64": "4.1.6", "@tailwindcss/oxide-darwin-arm64": "4.1.6", "@tailwindcss/oxide-darwin-x64": "4.1.6", "@tailwindcss/oxide-freebsd-x64": "4.1.6", "@tailwindcss/oxide-linux-arm-gnueabihf": "4.1.6", "@tailwindcss/oxide-linux-arm64-gnu": "4.1.6", "@tailwindcss/oxide-linux-arm64-musl": "4.1.6", "@tailwindcss/oxide-linux-x64-gnu": "4.1.6", "@tailwindcss/oxide-linux-x64-musl": "4.1.6", "@tailwindcss/oxide-wasm32-wasi": "4.1.6", "@tailwindcss/oxide-win32-arm64-msvc": "4.1.6", "@tailwindcss/oxide-win32-x64-msvc": "4.1.6" } }, "sha512-0bpEBQiGx+227fW4G0fLQ8vuvyy5rsB1YIYNapTq3aRsJ9taF3f5cCaovDjN5pUGKKzcpMrZst/mhNaKAPOHOA=="], + "@tailwindcss/oxide": ["@tailwindcss/oxide@4.1.11", "", { "dependencies": { "detect-libc": "^2.0.4", "tar": "^7.4.3" }, "optionalDependencies": { "@tailwindcss/oxide-android-arm64": "4.1.11", "@tailwindcss/oxide-darwin-arm64": "4.1.11", "@tailwindcss/oxide-darwin-x64": "4.1.11", "@tailwindcss/oxide-freebsd-x64": "4.1.11", "@tailwindcss/oxide-linux-arm-gnueabihf": "4.1.11", "@tailwindcss/oxide-linux-arm64-gnu": "4.1.11", "@tailwindcss/oxide-linux-arm64-musl": "4.1.11", "@tailwindcss/oxide-linux-x64-gnu": "4.1.11", "@tailwindcss/oxide-linux-x64-musl": "4.1.11", "@tailwindcss/oxide-wasm32-wasi": "4.1.11", "@tailwindcss/oxide-win32-arm64-msvc": "4.1.11", "@tailwindcss/oxide-win32-x64-msvc": "4.1.11" } }, "sha512-Q69XzrtAhuyfHo+5/HMgr1lAiPP/G40OMFAnws7xcFEYqcypZmdW8eGXaOUIeOl1dzPJBPENXgbjsOyhg2nkrg=="], - "@tailwindcss/oxide-android-arm64": ["@tailwindcss/oxide-android-arm64@4.1.6", "", { "os": "android", "cpu": "arm64" }, "sha512-VHwwPiwXtdIvOvqT/0/FLH/pizTVu78FOnI9jQo64kSAikFSZT7K4pjyzoDpSMaveJTGyAKvDjuhxJxKfmvjiQ=="], + "@tailwindcss/oxide-android-arm64": ["@tailwindcss/oxide-android-arm64@4.1.11", "", { "os": "android", "cpu": "arm64" }, "sha512-3IfFuATVRUMZZprEIx9OGDjG3Ou3jG4xQzNTvjDoKmU9JdmoCohQJ83MYd0GPnQIu89YoJqvMM0G3uqLRFtetg=="], - "@tailwindcss/oxide-darwin-arm64": ["@tailwindcss/oxide-darwin-arm64@4.1.6", "", { "os": "darwin", "cpu": "arm64" }, "sha512-weINOCcqv1HVBIGptNrk7c6lWgSFFiQMcCpKM4tnVi5x8OY2v1FrV76jwLukfT6pL1hyajc06tyVmZFYXoxvhQ=="], + "@tailwindcss/oxide-darwin-arm64": ["@tailwindcss/oxide-darwin-arm64@4.1.11", "", { "os": "darwin", "cpu": "arm64" }, "sha512-ESgStEOEsyg8J5YcMb1xl8WFOXfeBmrhAwGsFxxB2CxY9evy63+AtpbDLAyRkJnxLy2WsD1qF13E97uQyP1lfQ=="], - "@tailwindcss/oxide-darwin-x64": ["@tailwindcss/oxide-darwin-x64@4.1.6", "", { "os": "darwin", "cpu": "x64" }, "sha512-3FzekhHG0ww1zQjQ1lPoq0wPrAIVXAbUkWdWM8u5BnYFZgb9ja5ejBqyTgjpo5mfy0hFOoMnMuVDI+7CXhXZaQ=="], + "@tailwindcss/oxide-darwin-x64": ["@tailwindcss/oxide-darwin-x64@4.1.11", "", { "os": "darwin", "cpu": "x64" }, "sha512-EgnK8kRchgmgzG6jE10UQNaH9Mwi2n+yw1jWmof9Vyg2lpKNX2ioe7CJdf9M5f8V9uaQxInenZkOxnTVL3fhAw=="], - "@tailwindcss/oxide-freebsd-x64": ["@tailwindcss/oxide-freebsd-x64@4.1.6", "", { "os": "freebsd", "cpu": "x64" }, "sha512-4m5F5lpkBZhVQJq53oe5XgJ+aFYWdrgkMwViHjRsES3KEu2m1udR21B1I77RUqie0ZYNscFzY1v9aDssMBZ/1w=="], + "@tailwindcss/oxide-freebsd-x64": ["@tailwindcss/oxide-freebsd-x64@4.1.11", "", { "os": "freebsd", "cpu": "x64" }, "sha512-xdqKtbpHs7pQhIKmqVpxStnY1skuNh4CtbcyOHeX1YBE0hArj2romsFGb6yUmzkq/6M24nkxDqU8GYrKrz+UcA=="], - "@tailwindcss/oxide-linux-arm-gnueabihf": ["@tailwindcss/oxide-linux-arm-gnueabihf@4.1.6", "", { "os": "linux", "cpu": "arm" }, "sha512-qU0rHnA9P/ZoaDKouU1oGPxPWzDKtIfX7eOGi5jOWJKdxieUJdVV+CxWZOpDWlYTd4N3sFQvcnVLJWJ1cLP5TA=="], + "@tailwindcss/oxide-linux-arm-gnueabihf": ["@tailwindcss/oxide-linux-arm-gnueabihf@4.1.11", "", { "os": "linux", "cpu": "arm" }, "sha512-ryHQK2eyDYYMwB5wZL46uoxz2zzDZsFBwfjssgB7pzytAeCCa6glsiJGjhTEddq/4OsIjsLNMAiMlHNYnkEEeg=="], - "@tailwindcss/oxide-linux-arm64-gnu": ["@tailwindcss/oxide-linux-arm64-gnu@4.1.6", "", { "os": "linux", "cpu": "arm64" }, "sha512-jXy3TSTrbfgyd3UxPQeXC3wm8DAgmigzar99Km9Sf6L2OFfn/k+u3VqmpgHQw5QNfCpPe43em6Q7V76Wx7ogIQ=="], + "@tailwindcss/oxide-linux-arm64-gnu": ["@tailwindcss/oxide-linux-arm64-gnu@4.1.11", "", { "os": "linux", "cpu": "arm64" }, "sha512-mYwqheq4BXF83j/w75ewkPJmPZIqqP1nhoghS9D57CLjsh3Nfq0m4ftTotRYtGnZd3eCztgbSPJ9QhfC91gDZQ=="], - "@tailwindcss/oxide-linux-arm64-musl": ["@tailwindcss/oxide-linux-arm64-musl@4.1.6", "", { "os": "linux", "cpu": "arm64" }, "sha512-8kjivE5xW0qAQ9HX9reVFmZj3t+VmljDLVRJpVBEoTR+3bKMnvC7iLcoSGNIUJGOZy1mLVq7x/gerVg0T+IsYw=="], + "@tailwindcss/oxide-linux-arm64-musl": ["@tailwindcss/oxide-linux-arm64-musl@4.1.11", "", { "os": "linux", "cpu": "arm64" }, "sha512-m/NVRFNGlEHJrNVk3O6I9ggVuNjXHIPoD6bqay/pubtYC9QIdAMpS+cswZQPBLvVvEF6GtSNONbDkZrjWZXYNQ=="], - "@tailwindcss/oxide-linux-x64-gnu": ["@tailwindcss/oxide-linux-x64-gnu@4.1.6", "", { "os": "linux", "cpu": "x64" }, "sha512-A4spQhwnWVpjWDLXnOW9PSinO2PTKJQNRmL/aIl2U/O+RARls8doDfs6R41+DAXK0ccacvRyDpR46aVQJJCoCg=="], + "@tailwindcss/oxide-linux-x64-gnu": ["@tailwindcss/oxide-linux-x64-gnu@4.1.11", "", { "os": "linux", "cpu": "x64" }, "sha512-YW6sblI7xukSD2TdbbaeQVDysIm/UPJtObHJHKxDEcW2exAtY47j52f8jZXkqE1krdnkhCMGqP3dbniu1Te2Fg=="], - "@tailwindcss/oxide-linux-x64-musl": ["@tailwindcss/oxide-linux-x64-musl@4.1.6", "", { "os": "linux", "cpu": "x64" }, "sha512-YRee+6ZqdzgiQAHVSLfl3RYmqeeaWVCk796MhXhLQu2kJu2COHBkqlqsqKYx3p8Hmk5pGCQd2jTAoMWWFeyG2A=="], + "@tailwindcss/oxide-linux-x64-musl": ["@tailwindcss/oxide-linux-x64-musl@4.1.11", "", { "os": "linux", "cpu": "x64" }, "sha512-e3C/RRhGunWYNC3aSF7exsQkdXzQ/M+aYuZHKnw4U7KQwTJotnWsGOIVih0s2qQzmEzOFIJ3+xt7iq67K/p56Q=="], - "@tailwindcss/oxide-wasm32-wasi": ["@tailwindcss/oxide-wasm32-wasi@4.1.6", "", { "dependencies": { "@emnapi/core": "^1.4.3", "@emnapi/runtime": "^1.4.3", "@emnapi/wasi-threads": "^1.0.2", "@napi-rs/wasm-runtime": "^0.2.9", "@tybys/wasm-util": "^0.9.0", "tslib": "^2.8.0" }, "cpu": "none" }, "sha512-qAp4ooTYrBQ5pk5jgg54/U1rCJ/9FLYOkkQ/nTE+bVMseMfB6O7J8zb19YTpWuu4UdfRf5zzOrNKfl6T64MNrQ=="], + "@tailwindcss/oxide-wasm32-wasi": ["@tailwindcss/oxide-wasm32-wasi@4.1.11", "", { "dependencies": { "@emnapi/core": "^1.4.3", "@emnapi/runtime": "^1.4.3", "@emnapi/wasi-threads": "^1.0.2", "@napi-rs/wasm-runtime": "^0.2.11", "@tybys/wasm-util": "^0.9.0", "tslib": "^2.8.0" }, "cpu": "none" }, "sha512-Xo1+/GU0JEN/C/dvcammKHzeM6NqKovG+6921MR6oadee5XPBaKOumrJCXvopJ/Qb5TH7LX/UAywbqrP4lax0g=="], - "@tailwindcss/oxide-win32-arm64-msvc": ["@tailwindcss/oxide-win32-arm64-msvc@4.1.6", "", { "os": "win32", "cpu": "arm64" }, "sha512-nqpDWk0Xr8ELO/nfRUDjk1pc9wDJ3ObeDdNMHLaymc4PJBWj11gdPCWZFKSK2AVKjJQC7J2EfmSmf47GN7OuLg=="], + "@tailwindcss/oxide-win32-arm64-msvc": ["@tailwindcss/oxide-win32-arm64-msvc@4.1.11", "", { "os": "win32", "cpu": "arm64" }, "sha512-UgKYx5PwEKrac3GPNPf6HVMNhUIGuUh4wlDFR2jYYdkX6pL/rn73zTq/4pzUm8fOjAn5L8zDeHp9iXmUGOXZ+w=="], - "@tailwindcss/oxide-win32-x64-msvc": ["@tailwindcss/oxide-win32-x64-msvc@4.1.6", "", { "os": "win32", "cpu": "x64" }, "sha512-5k9xF33xkfKpo9wCvYcegQ21VwIBU1/qEbYlVukfEIyQbEA47uK8AAwS7NVjNE3vHzcmxMYwd0l6L4pPjjm1rQ=="], + "@tailwindcss/oxide-win32-x64-msvc": ["@tailwindcss/oxide-win32-x64-msvc@4.1.11", "", { "os": "win32", "cpu": "x64" }, "sha512-YfHoggn1j0LK7wR82TOucWc5LDCguHnoS879idHekmmiR7g9HUtMw9MI0NHatS28u/Xlkfi9w5RJWgz2Dl+5Qg=="], - "@tailwindcss/postcss": ["@tailwindcss/postcss@4.1.6", "", { "dependencies": { "@alloc/quick-lru": "^5.2.0", "@tailwindcss/node": "4.1.6", "@tailwindcss/oxide": "4.1.6", "postcss": "^8.4.41", "tailwindcss": "4.1.6" } }, "sha512-ELq+gDMBuRXPJlpE3PEen+1MhnHAQQrh2zF0dI1NXOlEWfr2qWf2CQdr5jl9yANv8RErQaQ2l6nIFO9OSCVq/g=="], + "@tailwindcss/postcss": ["@tailwindcss/postcss@4.1.11", "", { "dependencies": { "@alloc/quick-lru": "^5.2.0", "@tailwindcss/node": "4.1.11", "@tailwindcss/oxide": "4.1.11", "postcss": "^8.4.41", "tailwindcss": "4.1.11" } }, "sha512-q/EAIIpF6WpLhKEuQSEVMZNMIY8KhWoAemZ9eylNAih9jxMGAYPPWBn3I9QL/2jZ+e7OEz/tZkX5HwbBR4HohA=="], "@trysound/sax": ["@trysound/sax@0.2.0", "", {}, "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA=="], @@ -1350,27 +1350,27 @@ "leven": ["leven@3.1.0", "", {}, "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A=="], - "lightningcss": ["lightningcss@1.29.2", "", { "dependencies": { "detect-libc": "^2.0.3" }, "optionalDependencies": { "lightningcss-darwin-arm64": "1.29.2", "lightningcss-darwin-x64": "1.29.2", "lightningcss-freebsd-x64": "1.29.2", "lightningcss-linux-arm-gnueabihf": "1.29.2", "lightningcss-linux-arm64-gnu": "1.29.2", "lightningcss-linux-arm64-musl": "1.29.2", "lightningcss-linux-x64-gnu": "1.29.2", "lightningcss-linux-x64-musl": "1.29.2", "lightningcss-win32-arm64-msvc": "1.29.2", "lightningcss-win32-x64-msvc": "1.29.2" } }, "sha512-6b6gd/RUXKaw5keVdSEtqFVdzWnU5jMxTUjA2bVcMNPLwSQ08Sv/UodBVtETLCn7k4S1Ibxwh7k68IwLZPgKaA=="], + "lightningcss": ["lightningcss@1.30.1", "", { "dependencies": { "detect-libc": "^2.0.3" }, "optionalDependencies": { "lightningcss-darwin-arm64": "1.30.1", "lightningcss-darwin-x64": "1.30.1", "lightningcss-freebsd-x64": "1.30.1", "lightningcss-linux-arm-gnueabihf": "1.30.1", "lightningcss-linux-arm64-gnu": "1.30.1", "lightningcss-linux-arm64-musl": "1.30.1", "lightningcss-linux-x64-gnu": "1.30.1", "lightningcss-linux-x64-musl": "1.30.1", "lightningcss-win32-arm64-msvc": "1.30.1", "lightningcss-win32-x64-msvc": "1.30.1" } }, "sha512-xi6IyHML+c9+Q3W0S4fCQJOym42pyurFiJUHEcEyHS0CeKzia4yZDEsLlqOFykxOdHpNy0NmvVO31vcSqAxJCg=="], - "lightningcss-darwin-arm64": ["lightningcss-darwin-arm64@1.29.2", "", { "os": "darwin", "cpu": "arm64" }, "sha512-cK/eMabSViKn/PG8U/a7aCorpeKLMlK0bQeNHmdb7qUnBkNPnL+oV5DjJUo0kqWsJUapZsM4jCfYItbqBDvlcA=="], + "lightningcss-darwin-arm64": ["lightningcss-darwin-arm64@1.30.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-c8JK7hyE65X1MHMN+Viq9n11RRC7hgin3HhYKhrMyaXflk5GVplZ60IxyoVtzILeKr+xAJwg6zK6sjTBJ0FKYQ=="], - "lightningcss-darwin-x64": ["lightningcss-darwin-x64@1.29.2", "", { "os": "darwin", "cpu": "x64" }, "sha512-j5qYxamyQw4kDXX5hnnCKMf3mLlHvG44f24Qyi2965/Ycz829MYqjrVg2H8BidybHBp9kom4D7DR5VqCKDXS0w=="], + "lightningcss-darwin-x64": ["lightningcss-darwin-x64@1.30.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-k1EvjakfumAQoTfcXUcHQZhSpLlkAuEkdMBsI/ivWw9hL+7FtilQc0Cy3hrx0AAQrVtQAbMI7YjCgYgvn37PzA=="], - "lightningcss-freebsd-x64": ["lightningcss-freebsd-x64@1.29.2", "", { "os": "freebsd", "cpu": "x64" }, "sha512-wDk7M2tM78Ii8ek9YjnY8MjV5f5JN2qNVO+/0BAGZRvXKtQrBC4/cn4ssQIpKIPP44YXw6gFdpUF+Ps+RGsCwg=="], + "lightningcss-freebsd-x64": ["lightningcss-freebsd-x64@1.30.1", "", { "os": "freebsd", "cpu": "x64" }, "sha512-kmW6UGCGg2PcyUE59K5r0kWfKPAVy4SltVeut+umLCFoJ53RdCUWxcRDzO1eTaxf/7Q2H7LTquFHPL5R+Gjyig=="], - "lightningcss-linux-arm-gnueabihf": ["lightningcss-linux-arm-gnueabihf@1.29.2", "", { "os": "linux", "cpu": "arm" }, "sha512-IRUrOrAF2Z+KExdExe3Rz7NSTuuJ2HvCGlMKoquK5pjvo2JY4Rybr+NrKnq0U0hZnx5AnGsuFHjGnNT14w26sg=="], + "lightningcss-linux-arm-gnueabihf": ["lightningcss-linux-arm-gnueabihf@1.30.1", "", { "os": "linux", "cpu": "arm" }, "sha512-MjxUShl1v8pit+6D/zSPq9S9dQ2NPFSQwGvxBCYaBYLPlCWuPh9/t1MRS8iUaR8i+a6w7aps+B4N0S1TYP/R+Q=="], - "lightningcss-linux-arm64-gnu": ["lightningcss-linux-arm64-gnu@1.29.2", "", { "os": "linux", "cpu": "arm64" }, "sha512-KKCpOlmhdjvUTX/mBuaKemp0oeDIBBLFiU5Fnqxh1/DZ4JPZi4evEH7TKoSBFOSOV3J7iEmmBaw/8dpiUvRKlQ=="], + "lightningcss-linux-arm64-gnu": ["lightningcss-linux-arm64-gnu@1.30.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-gB72maP8rmrKsnKYy8XUuXi/4OctJiuQjcuqWNlJQ6jZiWqtPvqFziskH3hnajfvKB27ynbVCucKSm2rkQp4Bw=="], - "lightningcss-linux-arm64-musl": ["lightningcss-linux-arm64-musl@1.29.2", "", { "os": "linux", "cpu": "arm64" }, "sha512-Q64eM1bPlOOUgxFmoPUefqzY1yV3ctFPE6d/Vt7WzLW4rKTv7MyYNky+FWxRpLkNASTnKQUaiMJ87zNODIrrKQ=="], + "lightningcss-linux-arm64-musl": ["lightningcss-linux-arm64-musl@1.30.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-jmUQVx4331m6LIX+0wUhBbmMX7TCfjF5FoOH6SD1CttzuYlGNVpA7QnrmLxrsub43ClTINfGSYyHe2HWeLl5CQ=="], - "lightningcss-linux-x64-gnu": ["lightningcss-linux-x64-gnu@1.29.2", "", { "os": "linux", "cpu": "x64" }, "sha512-0v6idDCPG6epLXtBH/RPkHvYx74CVziHo6TMYga8O2EiQApnUPZsbR9nFNrg2cgBzk1AYqEd95TlrsL7nYABQg=="], + "lightningcss-linux-x64-gnu": ["lightningcss-linux-x64-gnu@1.30.1", "", { "os": "linux", "cpu": "x64" }, "sha512-piWx3z4wN8J8z3+O5kO74+yr6ze/dKmPnI7vLqfSqI8bccaTGY5xiSGVIJBDd5K5BHlvVLpUB3S2YCfelyJ1bw=="], - "lightningcss-linux-x64-musl": ["lightningcss-linux-x64-musl@1.29.2", "", { "os": "linux", "cpu": "x64" }, "sha512-rMpz2yawkgGT8RULc5S4WiZopVMOFWjiItBT7aSfDX4NQav6M44rhn5hjtkKzB+wMTRlLLqxkeYEtQ3dd9696w=="], + "lightningcss-linux-x64-musl": ["lightningcss-linux-x64-musl@1.30.1", "", { "os": "linux", "cpu": "x64" }, "sha512-rRomAK7eIkL+tHY0YPxbc5Dra2gXlI63HL+v1Pdi1a3sC+tJTcFrHX+E86sulgAXeI7rSzDYhPSeHHjqFhqfeQ=="], - "lightningcss-win32-arm64-msvc": ["lightningcss-win32-arm64-msvc@1.29.2", "", { "os": "win32", "cpu": "arm64" }, "sha512-nL7zRW6evGQqYVu/bKGK+zShyz8OVzsCotFgc7judbt6wnB2KbiKKJwBE4SGoDBQ1O94RjW4asrCjQL4i8Fhbw=="], + "lightningcss-win32-arm64-msvc": ["lightningcss-win32-arm64-msvc@1.30.1", "", { "os": "win32", "cpu": "arm64" }, "sha512-mSL4rqPi4iXq5YVqzSsJgMVFENoa4nGTT/GjO2c0Yl9OuQfPsIfncvLrEW6RbbB24WtZ3xP/2CCmI3tNkNV4oA=="], - "lightningcss-win32-x64-msvc": ["lightningcss-win32-x64-msvc@1.29.2", "", { "os": "win32", "cpu": "x64" }, "sha512-EdIUW3B2vLuHmv7urfzMI/h2fmlnOQBk1xlsDxkN1tCWKjNFjfLhGxYk8C8mzpSfr+A6jFFIi8fU6LbQGsRWjA=="], + "lightningcss-win32-x64-msvc": ["lightningcss-win32-x64-msvc@1.30.1", "", { "os": "win32", "cpu": "x64" }, "sha512-PVqXh48wh4T53F/1CCu8PIPCxLzWyCnn/9T5W1Jpmdy5h9Cwd+0YQS6/LwhHXSafuc61/xg9Lv5OrCby6a++jg=="], "lilconfig": ["lilconfig@3.1.3", "", {}, "sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw=="], @@ -2242,18 +2242,22 @@ "@tailwindcss/node/jiti": ["jiti@2.4.2", "", { "bin": { "jiti": "lib/jiti-cli.mjs" } }, "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A=="], + "@tailwindcss/node/tailwindcss": ["tailwindcss@4.1.11", "", {}, "sha512-2E9TBm6MDD/xKYe+dvJZAmg3yxIEDNRc0jwlNyDg/4Fil2QcSLjFKGVff0lAf1jjeaArlG/M75Ey/EYr/OJtBA=="], + "@tailwindcss/oxide-wasm32-wasi/@emnapi/core": ["@emnapi/core@1.4.3", "", { "dependencies": { "@emnapi/wasi-threads": "1.0.2", "tslib": "^2.4.0" }, "bundled": true }, "sha512-4m62DuCE07lw01soJwPiBGC0nAww0Q+RY70VZ+n49yDIO13yyinhbWCeNnaob0lakDtWQzSdtNWzJeOJt2ma+g=="], "@tailwindcss/oxide-wasm32-wasi/@emnapi/runtime": ["@emnapi/runtime@1.4.3", "", { "dependencies": { "tslib": "^2.4.0" }, "bundled": true }, "sha512-pBPWdu6MLKROBX05wSNKcNb++m5Er+KQ9QkB+WVM+pW2Kx9hoSrVTnu3BdkI5eBLZoKu/J6mW/B6i6bJB2ytXQ=="], "@tailwindcss/oxide-wasm32-wasi/@emnapi/wasi-threads": ["@emnapi/wasi-threads@1.0.2", "", { "dependencies": { "tslib": "^2.4.0" }, "bundled": true }, "sha512-5n3nTJblwRi8LlXkJ9eBzu+kZR8Yxcc7ubakyQTFzPMtIhFpUBRbsnc2Dv88IZDIbCDlBiWrknhB4Lsz7mg6BA=="], - "@tailwindcss/oxide-wasm32-wasi/@napi-rs/wasm-runtime": ["@napi-rs/wasm-runtime@0.2.9", "", { "dependencies": { "@emnapi/core": "^1.4.0", "@emnapi/runtime": "^1.4.0", "@tybys/wasm-util": "^0.9.0" }, "bundled": true }, "sha512-OKRBiajrrxB9ATokgEQoG87Z25c67pCpYcCwmXYX8PBftC9pBfN18gnm/fh1wurSLEKIAt+QRFLFCQISrb66Jg=="], + "@tailwindcss/oxide-wasm32-wasi/@napi-rs/wasm-runtime": ["@napi-rs/wasm-runtime@0.2.12", "", { "dependencies": { "@emnapi/core": "^1.4.3", "@emnapi/runtime": "^1.4.3", "@tybys/wasm-util": "^0.10.0" }, "bundled": true }, "sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ=="], "@tailwindcss/oxide-wasm32-wasi/@tybys/wasm-util": ["@tybys/wasm-util@0.9.0", "", { "dependencies": { "tslib": "^2.4.0" }, "bundled": true }, "sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw=="], "@tailwindcss/oxide-wasm32-wasi/tslib": ["tslib@2.8.1", "", { "bundled": true }, "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="], + "@tailwindcss/postcss/tailwindcss": ["tailwindcss@4.1.11", "", {}, "sha512-2E9TBm6MDD/xKYe+dvJZAmg3yxIEDNRc0jwlNyDg/4Fil2QcSLjFKGVff0lAf1jjeaArlG/M75Ey/EYr/OJtBA=="], + "@types/express/@types/express-serve-static-core": ["@types/express-serve-static-core@4.19.6", "", { "dependencies": { "@types/node": "*", "@types/qs": "*", "@types/range-parser": "*", "@types/send": "*" } }, "sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A=="], "accepts/negotiator": ["negotiator@0.6.3", "", {}, "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg=="], @@ -2544,6 +2548,8 @@ "wrap-ansi/strip-ansi": ["strip-ansi@7.1.0", "", { "dependencies": { "ansi-regex": "^6.0.1" } }, "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ=="], + "@tailwindcss/oxide-wasm32-wasi/@napi-rs/wasm-runtime/@tybys/wasm-util": ["@tybys/wasm-util@0.10.0", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-VyyPYFlOMNylG45GoAe0xDoLwWuowvf92F9kySqzYh8vmYm7D2u4iUJKa1tOUpS70Ku13ASrOkS4ScXFsTaCNQ=="], + "ansi-align/string-width/emoji-regex": ["emoji-regex@8.0.0", "", {}, "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="], "body-parser/debug/ms": ["ms@2.0.0", "", {}, "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="], diff --git a/package.json b/package.json index 1ba764b..aad6f41 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "@docusaurus/plugin-content-blog": "^3.7.0", "@docusaurus/preset-classic": "3.7.0", "@mdx-js/react": "^3.0.0", - "@tailwindcss/postcss": "^4.1.6", + "@tailwindcss/postcss": "^4.1.11", "axios": "^1.9.0", "clsx": "^2.0.0", "postcss": "^8.5.3", From fb156ee8fcb0530076ddb586ad224de8fe328ace Mon Sep 17 00:00:00 2001 From: ostempel Date: Wed, 30 Jul 2025 15:28:00 +0200 Subject: [PATCH 09/15] drafted landing-page --- bun.lock | 47 ++++ package.json | 3 + src/css/custom.css | 18 +- src/pages/components/ArticleTeaser.tsx | 51 +++++ src/pages/components/Button.tsx | 79 +++++++ src/pages/components/Container.tsx | 27 +++ src/pages/components/Row.tsx | 16 ++ src/pages/components/Section.tsx | 20 ++ src/pages/components/SectionIntro.tsx | 33 +++ src/pages/components/Tab.tsx | 24 ++ src/pages/components/TabPanel.tsx | 25 +++ src/pages/components/Terminal.tsx | 28 +++ src/pages/components/Usp.tsx | 19 ++ src/pages/index.tsx | 265 ++--------------------- src/pages/sections/Benefits.tsx | 77 +++++++ src/pages/sections/Blog.tsx | 82 +++++++ src/pages/sections/Features.tsx | 149 +++++++++++++ src/pages/sections/GetStarted.tsx | 53 +++++ src/pages/sections/Header.tsx | 100 +++++++++ src/pages/sections/Offering.tsx | 82 +++++++ src/pages/sections/Partners.tsx | 60 +++++ static/img/browser-mockup-dark.png | Bin 0 -> 136856 bytes static/img/browser-mockup-light.png | Bin 0 -> 135792 bytes static/img/icon-dsgvo.svg | 15 ++ static/img/icons8-cloud-entwicklung.svg | 12 + static/img/icons8-cloud.svg | 1 + static/img/icons8-cpu.svg | 1 + static/img/icons8-data-transfer.svg | 4 + static/img/icons8-gdpr.svg | 33 +++ static/img/icons8-link.svg | 1 + static/img/icons8-m2-ssd.svg | 1 + static/img/icons8-open-source.svg | 12 + static/img/icons8-update.svg | 1 + static/img/open-source.svg | 15 ++ static/img/partners/fits.svg | 76 +++++++ static/img/partners/metalstack-cloud.svg | 1 + static/img/partners/uni-innsbruck.png | Bin 0 -> 22777 bytes static/img/partners/xcellent.svg | 1 + 38 files changed, 1177 insertions(+), 255 deletions(-) create mode 100644 src/pages/components/ArticleTeaser.tsx create mode 100644 src/pages/components/Button.tsx create mode 100644 src/pages/components/Container.tsx create mode 100644 src/pages/components/Row.tsx create mode 100644 src/pages/components/Section.tsx create mode 100644 src/pages/components/SectionIntro.tsx create mode 100644 src/pages/components/Tab.tsx create mode 100644 src/pages/components/TabPanel.tsx create mode 100644 src/pages/components/Terminal.tsx create mode 100644 src/pages/components/Usp.tsx create mode 100644 src/pages/sections/Benefits.tsx create mode 100644 src/pages/sections/Blog.tsx create mode 100644 src/pages/sections/Features.tsx create mode 100644 src/pages/sections/GetStarted.tsx create mode 100644 src/pages/sections/Header.tsx create mode 100644 src/pages/sections/Offering.tsx create mode 100644 src/pages/sections/Partners.tsx create mode 100644 static/img/browser-mockup-dark.png create mode 100644 static/img/browser-mockup-light.png create mode 100644 static/img/icon-dsgvo.svg create mode 100644 static/img/icons8-cloud-entwicklung.svg create mode 100644 static/img/icons8-cloud.svg create mode 100644 static/img/icons8-cpu.svg create mode 100644 static/img/icons8-data-transfer.svg create mode 100644 static/img/icons8-gdpr.svg create mode 100644 static/img/icons8-link.svg create mode 100644 static/img/icons8-m2-ssd.svg create mode 100644 static/img/icons8-open-source.svg create mode 100644 static/img/icons8-update.svg create mode 100644 static/img/open-source.svg create mode 100644 static/img/partners/fits.svg create mode 100644 static/img/partners/metalstack-cloud.svg create mode 100644 static/img/partners/uni-innsbruck.png create mode 100644 static/img/partners/xcellent.svg diff --git a/bun.lock b/bun.lock index 7834e3d..70c6738 100644 --- a/bun.lock +++ b/bun.lock @@ -4,9 +4,11 @@ "": { "name": "docs", "dependencies": { + "@carbon/icons-react": "^11.63.0", "@docusaurus/core": "3.7.0", "@docusaurus/plugin-content-blog": "^3.7.0", "@docusaurus/preset-classic": "3.7.0", + "@headlessui/react": "^2.2.6", "@mdx-js/react": "^3.0.0", "@tailwindcss/postcss": "^4.1.11", "axios": "^1.9.0", @@ -15,6 +17,7 @@ "prism-react-renderer": "^2.3.0", "react": "^19.0.0", "react-dom": "^19.0.0", + "tailwind-merge": "^3.3.1", "tailwindcss": "^4.1.6", }, "devDependencies": { @@ -272,6 +275,10 @@ "@babel/types": ["@babel/types@7.27.1", "", { "dependencies": { "@babel/helper-string-parser": "^7.27.1", "@babel/helper-validator-identifier": "^7.27.1" } }, "sha512-+EzkxvLNfiUeKMgy/3luqfsCWFRXLb7U6wNQTk60tovuckwB15B191tJWvpp4HjiQWdJkCxO3Wbvc6jlk3Xb2Q=="], + "@carbon/icon-helpers": ["@carbon/icon-helpers@10.62.0", "", { "dependencies": { "@ibm/telemetry-js": "^1.5.0" } }, "sha512-tD7pxsqPQ3SNrHLvkpsH+m9Gdaxt+XnP4GG+wglYbbeqrZKZi5f7jtVGoU7xOMRKSMURVj8G/1L95lakndo9JQ=="], + + "@carbon/icons-react": ["@carbon/icons-react@11.63.0", "", { "dependencies": { "@carbon/icon-helpers": "^10.62.0", "@ibm/telemetry-js": "^1.5.0", "prop-types": "^15.8.1" }, "peerDependencies": { "react": ">=16" } }, "sha512-BimMzlKVU4L7bug2z1iYVEBe1pAjnuASfmvfLb20CKISw+0XphL9YmKx10fOoRJboWi72zwysy4xyOXIOr7E5A=="], + "@colors/colors": ["@colors/colors@1.5.0", "", {}, "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ=="], "@csstools/cascade-layer-name-parser": ["@csstools/cascade-layer-name-parser@2.0.4", "", { "peerDependencies": { "@csstools/css-parser-algorithms": "^3.0.4", "@csstools/css-tokenizer": "^3.0.3" } }, "sha512-7DFHlPuIxviKYZrOiwVU/PiHLm3lLUR23OMuEEtfEOQTOp9hzQ2JjdY6X5H18RVuUPJqSCI+qNnD5iOLMVE0bA=="], @@ -416,10 +423,24 @@ "@docusaurus/utils-validation": ["@docusaurus/utils-validation@3.7.0", "", { "dependencies": { "@docusaurus/logger": "3.7.0", "@docusaurus/utils": "3.7.0", "@docusaurus/utils-common": "3.7.0", "fs-extra": "^11.2.0", "joi": "^17.9.2", "js-yaml": "^4.1.0", "lodash": "^4.17.21", "tslib": "^2.6.0" } }, "sha512-w8eiKk8mRdN+bNfeZqC4nyFoxNyI1/VExMKAzD9tqpJfLLbsa46Wfn5wcKH761g9WkKh36RtFV49iL9lh1DYBA=="], + "@floating-ui/core": ["@floating-ui/core@1.7.3", "", { "dependencies": { "@floating-ui/utils": "^0.2.10" } }, "sha512-sGnvb5dmrJaKEZ+LDIpguvdX3bDlEllmv4/ClQ9awcmCZrlx5jQyyMWFM5kBI+EyNOCDDiKk8il0zeuX3Zlg/w=="], + + "@floating-ui/dom": ["@floating-ui/dom@1.7.3", "", { "dependencies": { "@floating-ui/core": "^1.7.3", "@floating-ui/utils": "^0.2.10" } }, "sha512-uZA413QEpNuhtb3/iIKoYMSK07keHPYeXF02Zhd6e213j+d1NamLix/mCLxBUDW/Gx52sPH2m+chlUsyaBs/Ag=="], + + "@floating-ui/react": ["@floating-ui/react@0.26.28", "", { "dependencies": { "@floating-ui/react-dom": "^2.1.2", "@floating-ui/utils": "^0.2.8", "tabbable": "^6.0.0" }, "peerDependencies": { "react": ">=16.8.0", "react-dom": ">=16.8.0" } }, "sha512-yORQuuAtVpiRjpMhdc0wJj06b9JFjrYF4qp96j++v2NBpbi6SEGF7donUJ3TMieerQ6qVkAv1tgr7L4r5roTqw=="], + + "@floating-ui/react-dom": ["@floating-ui/react-dom@2.1.5", "", { "dependencies": { "@floating-ui/dom": "^1.7.3" }, "peerDependencies": { "react": ">=16.8.0", "react-dom": ">=16.8.0" } }, "sha512-HDO/1/1oH9fjj4eLgegrlH3dklZpHtUYYFiVwMUwfGvk9jWDRWqkklA2/NFScknrcNSspbV868WjXORvreDX+Q=="], + + "@floating-ui/utils": ["@floating-ui/utils@0.2.10", "", {}, "sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ=="], + "@hapi/hoek": ["@hapi/hoek@9.3.0", "", {}, "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ=="], "@hapi/topo": ["@hapi/topo@5.1.0", "", { "dependencies": { "@hapi/hoek": "^9.0.0" } }, "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg=="], + "@headlessui/react": ["@headlessui/react@2.2.6", "", { "dependencies": { "@floating-ui/react": "^0.26.16", "@react-aria/focus": "^3.20.2", "@react-aria/interactions": "^3.25.0", "@tanstack/react-virtual": "^3.13.9", "use-sync-external-store": "^1.5.0" }, "peerDependencies": { "react": "^18 || ^19 || ^19.0.0-rc", "react-dom": "^18 || ^19 || ^19.0.0-rc" } }, "sha512-gN5CT8Kf4IWwL04GQOjZ/ZnHMFoeFHZmVSFoDKeTmbtmy9oFqQqJMthdBiO3Pl5LXk2w03fGFLpQV6EW84vjjQ=="], + + "@ibm/telemetry-js": ["@ibm/telemetry-js@1.9.1", "", { "bin": { "ibmtelemetry": "dist/collect.js" } }, "sha512-qq8RPafUJHUQieXVCte1kbJEx6JctWzbA/YkXzopbfzIDRT2+hbR9QmgH+KH7bDDNRcDbdHWvHfwJKzThlMtPg=="], + "@isaacs/fs-minipass": ["@isaacs/fs-minipass@4.0.1", "", { "dependencies": { "minipass": "^7.0.4" } }, "sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w=="], "@jest/schemas": ["@jest/schemas@29.6.3", "", { "dependencies": { "@sinclair/typebox": "^0.27.8" } }, "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA=="], @@ -458,6 +479,20 @@ "@polka/url": ["@polka/url@1.0.0-next.29", "", {}, "sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww=="], + "@react-aria/focus": ["@react-aria/focus@3.21.0", "", { "dependencies": { "@react-aria/interactions": "^3.25.4", "@react-aria/utils": "^3.30.0", "@react-types/shared": "^3.31.0", "@swc/helpers": "^0.5.0", "clsx": "^2.0.0" }, "peerDependencies": { "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1", "react-dom": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1" } }, "sha512-7NEGtTPsBy52EZ/ToVKCu0HSelE3kq9qeis+2eEq90XSuJOMaDHUQrA7RC2Y89tlEwQB31bud/kKRi9Qme1dkA=="], + + "@react-aria/interactions": ["@react-aria/interactions@3.25.4", "", { "dependencies": { "@react-aria/ssr": "^3.9.10", "@react-aria/utils": "^3.30.0", "@react-stately/flags": "^3.1.2", "@react-types/shared": "^3.31.0", "@swc/helpers": "^0.5.0" }, "peerDependencies": { "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1", "react-dom": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1" } }, "sha512-HBQMxgUPHrW8V63u9uGgBymkMfj6vdWbB0GgUJY49K9mBKMsypcHeWkWM6+bF7kxRO728/IK8bWDV6whDbqjHg=="], + + "@react-aria/ssr": ["@react-aria/ssr@3.9.10", "", { "dependencies": { "@swc/helpers": "^0.5.0" }, "peerDependencies": { "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1" } }, "sha512-hvTm77Pf+pMBhuBm760Li0BVIO38jv1IBws1xFm1NoL26PU+fe+FMW5+VZWyANR6nYL65joaJKZqOdTQMkO9IQ=="], + + "@react-aria/utils": ["@react-aria/utils@3.30.0", "", { "dependencies": { "@react-aria/ssr": "^3.9.10", "@react-stately/flags": "^3.1.2", "@react-stately/utils": "^3.10.8", "@react-types/shared": "^3.31.0", "@swc/helpers": "^0.5.0", "clsx": "^2.0.0" }, "peerDependencies": { "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1", "react-dom": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1" } }, "sha512-ydA6y5G1+gbem3Va2nczj/0G0W7/jUVo/cbN10WA5IizzWIwMP5qhFr7macgbKfHMkZ+YZC3oXnt2NNre5odKw=="], + + "@react-stately/flags": ["@react-stately/flags@3.1.2", "", { "dependencies": { "@swc/helpers": "^0.5.0" } }, "sha512-2HjFcZx1MyQXoPqcBGALwWWmgFVUk2TuKVIQxCbRq7fPyWXIl6VHcakCLurdtYC2Iks7zizvz0Idv48MQ38DWg=="], + + "@react-stately/utils": ["@react-stately/utils@3.10.8", "", { "dependencies": { "@swc/helpers": "^0.5.0" }, "peerDependencies": { "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1" } }, "sha512-SN3/h7SzRsusVQjQ4v10LaVsDc81jyyR0DD5HnsQitm/I5WDpaSr2nRHtyloPFU48jlql1XX/S04T2DLQM7Y3g=="], + + "@react-types/shared": ["@react-types/shared@3.31.0", "", { "peerDependencies": { "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1" } }, "sha512-ua5U6V66gDcbLZe4P2QeyNgPp4YWD1ymGA6j3n+s8CGExtrCPe64v+g4mvpT8Bnb985R96e4zFT61+m0YCwqMg=="], + "@sideway/address": ["@sideway/address@4.1.5", "", { "dependencies": { "@hapi/hoek": "^9.0.0" } }, "sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q=="], "@sideway/formula": ["@sideway/formula@3.0.1", "", {}, "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg=="], @@ -498,6 +533,8 @@ "@svgr/webpack": ["@svgr/webpack@8.1.0", "", { "dependencies": { "@babel/core": "^7.21.3", "@babel/plugin-transform-react-constant-elements": "^7.21.3", "@babel/preset-env": "^7.20.2", "@babel/preset-react": "^7.18.6", "@babel/preset-typescript": "^7.21.0", "@svgr/core": "8.1.0", "@svgr/plugin-jsx": "8.1.0", "@svgr/plugin-svgo": "8.1.0" } }, "sha512-LnhVjMWyMQV9ZmeEy26maJk+8HTIbd59cH4F2MJ439k9DqejRisfFNGAPvRYlKETuh9LrImlS8aKsBgKjMA8WA=="], + "@swc/helpers": ["@swc/helpers@0.5.17", "", { "dependencies": { "tslib": "^2.8.0" } }, "sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A=="], + "@szmarczak/http-timer": ["@szmarczak/http-timer@5.0.1", "", { "dependencies": { "defer-to-connect": "^2.0.1" } }, "sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw=="], "@tailwindcss/node": ["@tailwindcss/node@4.1.11", "", { "dependencies": { "@ampproject/remapping": "^2.3.0", "enhanced-resolve": "^5.18.1", "jiti": "^2.4.2", "lightningcss": "1.30.1", "magic-string": "^0.30.17", "source-map-js": "^1.2.1", "tailwindcss": "4.1.11" } }, "sha512-yzhzuGRmv5QyU9qLNg4GTlYI6STedBWRE7NjxP45CsFYYq9taI0zJXZBMqIC/c8fViNLhmrbpSFS57EoxUmD6Q=="], @@ -530,6 +567,10 @@ "@tailwindcss/postcss": ["@tailwindcss/postcss@4.1.11", "", { "dependencies": { "@alloc/quick-lru": "^5.2.0", "@tailwindcss/node": "4.1.11", "@tailwindcss/oxide": "4.1.11", "postcss": "^8.4.41", "tailwindcss": "4.1.11" } }, "sha512-q/EAIIpF6WpLhKEuQSEVMZNMIY8KhWoAemZ9eylNAih9jxMGAYPPWBn3I9QL/2jZ+e7OEz/tZkX5HwbBR4HohA=="], + "@tanstack/react-virtual": ["@tanstack/react-virtual@3.13.12", "", { "dependencies": { "@tanstack/virtual-core": "3.13.12" }, "peerDependencies": { "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" } }, "sha512-Gd13QdxPSukP8ZrkbgS2RwoZseTTbQPLnQEn7HY/rqtM+8Zt95f7xKC7N0EsKs7aoz0WzZ+fditZux+F8EzYxA=="], + + "@tanstack/virtual-core": ["@tanstack/virtual-core@3.13.12", "", {}, "sha512-1YBOJfRHV4sXUmWsFSf5rQor4Ss82G8dQWLRbnk3GA4jeP8hQt1hxXh0tmflpC0dz3VgEv/1+qwPyLeWkQuPFA=="], + "@trysound/sax": ["@trysound/sax@0.2.0", "", {}, "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA=="], "@types/body-parser": ["@types/body-parser@1.19.5", "", { "dependencies": { "@types/connect": "*", "@types/node": "*" } }, "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg=="], @@ -2076,6 +2117,10 @@ "svgo": ["svgo@3.3.2", "", { "dependencies": { "@trysound/sax": "0.2.0", "commander": "^7.2.0", "css-select": "^5.1.0", "css-tree": "^2.3.1", "css-what": "^6.1.0", "csso": "^5.0.5", "picocolors": "^1.0.0" }, "bin": "./bin/svgo" }, "sha512-OoohrmuUlBs8B8o6MB2Aevn+pRIH9zDALSR+6hhqVfa6fRwG/Qw9VUMSMW9VNg2CFc/MTIfabtdOVl9ODIJjpw=="], + "tabbable": ["tabbable@6.2.0", "", {}, "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew=="], + + "tailwind-merge": ["tailwind-merge@3.3.1", "", {}, "sha512-gBXpgUm/3rp1lMZZrM/w7D8GKqshif0zAymAhbCyIt8KMe+0v9DQ7cdYLR4FHH/cKpdTXb+A/tKKU3eolfsI+g=="], + "tailwindcss": ["tailwindcss@4.1.6", "", {}, "sha512-j0cGLTreM6u4OWzBeLBpycK0WIh8w7kSwcUsQZoGLHZ7xDTdM69lN64AgoIEEwFi0tnhs4wSykUa5YWxAzgFYg=="], "tapable": ["tapable@2.2.1", "", {}, "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ=="], @@ -2154,6 +2199,8 @@ "url-loader": ["url-loader@4.1.1", "", { "dependencies": { "loader-utils": "^2.0.0", "mime-types": "^2.1.27", "schema-utils": "^3.0.0" }, "peerDependencies": { "file-loader": "*", "webpack": "^4.0.0 || ^5.0.0" }, "optionalPeers": ["file-loader"] }, "sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA=="], + "use-sync-external-store": ["use-sync-external-store@1.5.0", "", { "peerDependencies": { "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" } }, "sha512-Rb46I4cGGVBmjamjphe8L/UnvJD+uPPtTkNvX5mZgqdbavhI4EbgIWJiIHXJ8bc/i9EQGPRh4DwEURJ552Do0A=="], + "util-deprecate": ["util-deprecate@1.0.2", "", {}, "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw=="], "utila": ["utila@0.4.0", "", {}, "sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA=="], diff --git a/package.json b/package.json index aad6f41..3310989 100644 --- a/package.json +++ b/package.json @@ -17,9 +17,11 @@ "create-pdf": "bun ./scripts/render_pdf.js" }, "dependencies": { + "@carbon/icons-react": "^11.63.0", "@docusaurus/core": "3.7.0", "@docusaurus/plugin-content-blog": "^3.7.0", "@docusaurus/preset-classic": "3.7.0", + "@headlessui/react": "^2.2.6", "@mdx-js/react": "^3.0.0", "@tailwindcss/postcss": "^4.1.11", "axios": "^1.9.0", @@ -29,6 +31,7 @@ "puppeteer": "^24.12.1", "react": "^19.0.0", "react-dom": "^19.0.0", + "tailwind-merge": "^3.3.1", "tailwindcss": "^4.1.6" }, "devDependencies": { diff --git a/src/css/custom.css b/src/css/custom.css index 4f2ee06..479ee07 100644 --- a/src/css/custom.css +++ b/src/css/custom.css @@ -65,10 +65,6 @@ h6 { font-family: var(--font-headings); } -p { - margin: 0; -} - a { color: var(--color-primary-500); } @@ -146,6 +142,11 @@ footer { height: 30px; } +.navbar { + position: fixed; + width: 100%; +} + .header-github-link::after { content: ""; width: 24px; @@ -183,3 +184,12 @@ footer { @theme { --text-base: 1rem; } + +*, +:before, +:after { + box-sizing: border-box; + border-width: 0; + border-style: solid; + border-color: #e5e7eb; +} diff --git a/src/pages/components/ArticleTeaser.tsx b/src/pages/components/ArticleTeaser.tsx new file mode 100644 index 0000000..c1933ef --- /dev/null +++ b/src/pages/components/ArticleTeaser.tsx @@ -0,0 +1,51 @@ +interface Props { + url: string; + title: string; + summary: string; + author: any; + date_modified: string; +} + +const image_url = { + "Gerrit Schwerthelm": "https://github.com/gerrit91.png", + valentin: "https://github.com/vknabel.png", + stefan: "https://github.com/majst01.png", + markus: "https://github.com/mwindower.png", + grigoriy: "https://github.com/GrigoriyMikhalkin.png", +}; + +export default function ArticleTeaser(props: Props) { + return ( +

+ ); +} diff --git a/src/pages/components/Button.tsx b/src/pages/components/Button.tsx new file mode 100644 index 0000000..58a5b41 --- /dev/null +++ b/src/pages/components/Button.tsx @@ -0,0 +1,79 @@ +import React from "react"; +import { twMerge } from "tailwind-merge"; + +export type ButtonStyle = "primary" | "neutral" | "black"; +export type ButtonSize = "md" | "lg"; + +export interface ButtonProps extends React.HTMLAttributes { + as?: "button" | "a"; + href?: string; + variant?: ButtonStyle; + size?: ButtonSize; + disabled?: boolean; + invisibleDisabledState?: boolean; + id?: string; + name?: string; + value?: string; + type?: string; + target?: React.HTMLAttributeAnchorTarget; + className?: string; + children?: React.ReactNode; +} + +const baseStyles = `rounded-lg font-bold cursor-pointer whitespace-nowrap relative inline-block transition-all`; + +const sizeStyles: Record = { + md: "px-3 py-2", + lg: "px-5 py-3", +}; + +const variantStyles: Record = { + primary: + "bg-amber-500 hover:bg-amber-600 text-black hover:text-black disabled:bg-amber-50 disabled:border-amber-500/5", + neutral: + "bg-neutral-950 dark:bg-neutral-200 hover:dark:bg-white hover:bg-neutral-800 text-white dark:text-black disabled:bg-neutral-300 disabled:border-neutral-300/50 hover:disabled:bg-neutral-200 disabled:text-black/25", + black: "bg-neutral-900 hover:bg-black text-white", +}; + +const disabledStyles = + "disabled:cursor-not-allowed disabled:border-2 disabled:border-black/20 disabled:hover:text-opacity-50"; + +export const Button: React.FC = ({ + as = "button", + href, + variant = "primary", + size = "md", + disabled = false, + invisibleDisabledState = false, + id, + name, + value, + type, + target, + className = "", + children, + ...rest +}) => { + const Element = href ? "a" : as; + + const mergedClassName = twMerge( + baseStyles, + sizeStyles[size], + variantStyles[variant], + disabledStyles, + className + ); + + const commonProps = { + id, + name, + value, + className: mergedClassName, + ...(href ? { href, target } : {}), + ...(Element === "button" ? { type: type || "button" } : {}), + ...(invisibleDisabledState ? {} : { disabled }), + ...rest, + }; + + return React.createElement(Element, commonProps, children); +}; diff --git a/src/pages/components/Container.tsx b/src/pages/components/Container.tsx new file mode 100644 index 0000000..5808973 --- /dev/null +++ b/src/pages/components/Container.tsx @@ -0,0 +1,27 @@ +import { ReactNode } from "react"; +import { twMerge } from "tailwind-merge"; + +interface Props { + className?: string; + children: ReactNode; + wide?: boolean; + noPadding?: boolean; +} + +export default function Container(props: Props) { + return ( +
+
+ {props.children} +
+
+ ); +} diff --git a/src/pages/components/Row.tsx b/src/pages/components/Row.tsx new file mode 100644 index 0000000..9103350 --- /dev/null +++ b/src/pages/components/Row.tsx @@ -0,0 +1,16 @@ +import { twMerge } from "tailwind-merge"; + +interface Props { + className?: string; + children: React.ReactNode; +} + +export default function Row(props: Props) { + return ( +
+ {props.children} +
+ ); +} diff --git a/src/pages/components/Section.tsx b/src/pages/components/Section.tsx new file mode 100644 index 0000000..c4f8bf4 --- /dev/null +++ b/src/pages/components/Section.tsx @@ -0,0 +1,20 @@ +import { twMerge } from "tailwind-merge"; + +interface Props extends React.ComponentPropsWithoutRef<"section"> { + hasBackground?: boolean; +} + +export default function Section(props: Props) { + return ( +
+ {props.children} +
+ ); +} diff --git a/src/pages/components/SectionIntro.tsx b/src/pages/components/SectionIntro.tsx new file mode 100644 index 0000000..b2b7c54 --- /dev/null +++ b/src/pages/components/SectionIntro.tsx @@ -0,0 +1,33 @@ +import { twMerge } from "tailwind-merge"; +import Container from "./Container"; + +interface Props extends React.ComponentPropsWithoutRef<"section"> { + hasBackground?: boolean; + fullWidth?: boolean; + center?: boolean; + title: string; + description?: string; + strapline?: string; +} + +export default function SectionIntro(props: Props) { + return ( + + {props.strapline && ( +

+ {props.strapline} +

+ )} +

{props.title}

+

{props.description}

+ {props.children} +
+ ); +} diff --git a/src/pages/components/Tab.tsx b/src/pages/components/Tab.tsx new file mode 100644 index 0000000..befde95 --- /dev/null +++ b/src/pages/components/Tab.tsx @@ -0,0 +1,24 @@ +import { Tab as HTab } from "@headlessui/react"; +import { twMerge } from "tailwind-merge"; + +interface Props { + selected?: boolean; + children: React.ReactNode; +} + +export default function Tab(props: Props) { + return ( + +
+ {props.children} +
+
+ ); +} diff --git a/src/pages/components/TabPanel.tsx b/src/pages/components/TabPanel.tsx new file mode 100644 index 0000000..cddfaed --- /dev/null +++ b/src/pages/components/TabPanel.tsx @@ -0,0 +1,25 @@ +import { TabPanel as HTabPanel } from "@headlessui/react"; + +interface Props { + title?: string; + children: React.ReactNode; +} +export default function TabPanel(props: Props) { + return ( + +
+
+
+

+ {props.title} +

+
+ {props.children} +
+
+
+ ); +} diff --git a/src/pages/components/Terminal.tsx b/src/pages/components/Terminal.tsx new file mode 100644 index 0000000..fc879fa --- /dev/null +++ b/src/pages/components/Terminal.tsx @@ -0,0 +1,28 @@ +export default function Terminal() { + return ( +
+
+ > create new machine +
+
+
+        metalctl machine create \
+        
+ --hostname worker01 \ +
+ --name worker \ +
+ --image debian-12.0 \ +
+ --size t1-small-x86 \ +
+ --partition frankfurt-3a \ +
+ --project cluster01 \ +
+ --sshpublickey{" "} + "@~/.ssh/id_rsa.pub" +
+
+ ); +} diff --git a/src/pages/components/Usp.tsx b/src/pages/components/Usp.tsx new file mode 100644 index 0000000..88f7e59 --- /dev/null +++ b/src/pages/components/Usp.tsx @@ -0,0 +1,19 @@ +import { CarbonIconType } from "@carbon/icons-react"; + +interface UspProps { + icon: CarbonIconType; + title: string; + description: string; + children?: React.ReactNode; +} + +export default function Usp(props: UspProps) { + return ( +
+ +
{props.title}
+

{props.description}

+ {props.children} +
+ ); +} diff --git a/src/pages/index.tsx b/src/pages/index.tsx index 65a1e78..740dc27 100644 --- a/src/pages/index.tsx +++ b/src/pages/index.tsx @@ -1,262 +1,25 @@ -import { useEffect, useState, type ReactNode } from "react"; +import { type ReactNode } from "react"; import useDocusaurusContext from "@docusaurus/useDocusaurusContext"; import Layout from "@theme/Layout"; - -const image_url = { - "Gerrit Schwerthelm": "https://github.com/gerrit91.png", - valentin: "https://github.com/vknabel.png", - stefan: "https://github.com/majst01.png", - markus: "https://github.com/mwindower.png", - grigoriy: "https://github.com/GrigoriyMikhalkin.png", -}; - -function CustomHeader() { - return ( -
- - -
-
-
-
-
- - v.0.21.4 - - release notes - - -

- Bring the{" "} - - cloud{" "} - - to your{" "} - - data center. - -

-

- metal-stack® is a set of microservices implementing Metal as a - Service (MaaS), turning a bunch of hardware into elastic cloud - infrastructure. It is built to manage the lifecycles for - hundreds and thousands of servers inside your on-premise data - center. -

-
-
-
-
- > create new machine -
-
-
-                    
-                      metalctl machine create
-                    {" "}
-                    \
-                    
- --hostname worker01 \ -
- --name worker \ -
- --image debian-12.0 \ -
- --size t1-small-x86 \ -
- --partition{" "} - frankfurt-3a \ -
- --project cluster01 \ -
- --sshpublickey{" "} - "@~/.ssh/id_rsa.pub" -
-
- - See all commands to manage your metal-stack data center - -
-
-
-
-
-
- ); -} - -function Blog() { - const [feed, setFeed] = useState[] | null>([]); - - useEffect(function fetchFeed() { - fetch(`http://localhost:3000/blog/feed.json`) - .then((resp) => resp.json()) - .catch((err) => console.log(err)) - .then((object) => { - console.log(object.items); - - setFeed(object.items); - }) - .catch((err) => console.log(err)); - }, []); - - const testObjects = [ - { - id: "https://your-docusaurus-site.example.com/blog/2025/03-metal-stack-v0.21.0/article", - url: "https://your-docusaurus-site.example.com/blog/2025/03-metal-stack-v0.21.0/article", - title: "metal-stack v0.21.0 🙄", - summary: - "Sorry, but there are no new features in this release! Just a breaking change that operators need to be aware of.", - date_modified: "2025-03-21T09:00:00.000Z", - author: { - name: "Gerrit Schwerthelm", - url: "https://github.com/Gerrit91", - }, - tags: [], - }, - { - id: "https://your-docusaurus-site.example.com/blog/2025/02-metal-stack-v0.20.0/article", - url: "https://your-docusaurus-site.example.com/blog/2025/02-metal-stack-v0.20.0/article", - title: "metal-stack v0.20.0 💯", - summary: - "Finally IPv6 made it into the metal-api. This and more interesting features of the latest release can be read in this blog article.", - date_modified: "2025-02-26T09:00:00.000Z", - author: { - name: "Gerrit Schwerthelm", - url: "https://github.com/Gerrit91", - }, - tags: [], - }, - { - id: "https://your-docusaurus-site.example.com/blog/2025/01-fosdem/article", - url: "https://your-docusaurus-site.example.com/blog/2025/01-fosdem/article", - title: "FOSDEM 2025 ️❤️", - summary: - "For the first time metal-stack was part of the biggest Open Source conference in Europe.", - date_modified: "2025-02-03T08:00:00.000Z", - author: { - name: "Gerrit Schwerthelm", - url: "https://github.com/Gerrit91", - }, - tags: [], - }, - ]; - - return ( -
-
-
-
-

From our Blog

-
-
-
- -
- ); -} +import Benefits from "./sections/Benefits"; +import Features from "./sections/Features"; +import Offering from "./sections/Offering"; +import Partners from "./sections/Partners"; +import GetStarted from "./sections/GetStarted"; +import Header from "./sections/Header"; +import Blog from "./sections/Blog"; export default function Home(): ReactNode { const { siteConfig } = useDocusaurusContext(); return ( - +
+ + + + + ); } diff --git a/src/pages/sections/Benefits.tsx b/src/pages/sections/Benefits.tsx new file mode 100644 index 0000000..6994950 --- /dev/null +++ b/src/pages/sections/Benefits.tsx @@ -0,0 +1,77 @@ +import { + BareMetalServer, + ChevronRight, + DataCenter, + Security, + Kubernetes, + NetworkPublic, + Network_4, +} from "@carbon/icons-react"; +import Section from "../components/Section"; +import SectionIntro from "../components/SectionIntro"; +import Usp from "../components/Usp"; +import Container from "../components/Container"; +import Row from "../components/Row"; + +export default function Benefits() { + return ( +
+ + + + +

+ Find out more{" "} + + here + + +

+
+ + + + + + +
+
+
+ ); +} diff --git a/src/pages/sections/Blog.tsx b/src/pages/sections/Blog.tsx new file mode 100644 index 0000000..dad2cf2 --- /dev/null +++ b/src/pages/sections/Blog.tsx @@ -0,0 +1,82 @@ +import { useEffect, useState } from "react"; +import Container from "../components/Container"; +import Row from "../components/Row"; +import Section from "../components/Section"; +import SectionIntro from "../components/SectionIntro"; +import ArticleTeaser from "../components/ArticleTeaser"; + +export default function Blog() { + const [feed, setFeed] = useState[] | null>([]); + + useEffect(function fetchFeed() { + fetch(`http://localhost:3000/blog/feed.json`) + .then((resp) => resp.json()) + .catch((err) => console.log(err)) + .then((object) => { + console.log(object.items); + + setFeed(object.items); + }) + .catch((err) => console.log(err)); + }, []); + + const testObjects = [ + { + id: "https://your-docusaurus-site.example.com/blog/2025/03-metal-stack-v0.21.0/article", + url: "https://your-docusaurus-site.example.com/blog/2025/03-metal-stack-v0.21.0/article", + title: "metal-stack v0.21.0 🙄", + summary: + "Sorry, but there are no new features in this release! Just a breaking change that operators need to be aware of.", + date_modified: "2025-03-21T09:00:00.000Z", + author: { + name: "Gerrit Schwerthelm", + url: "https://github.com/Gerrit91", + }, + tags: [], + }, + { + id: "https://your-docusaurus-site.example.com/blog/2025/02-metal-stack-v0.20.0/article", + url: "https://your-docusaurus-site.example.com/blog/2025/02-metal-stack-v0.20.0/article", + title: "metal-stack v0.20.0 💯", + summary: + "Finally IPv6 made it into the metal-api. This and more interesting features of the latest release can be read in this blog article.", + date_modified: "2025-02-26T09:00:00.000Z", + author: { + name: "Gerrit Schwerthelm", + url: "https://github.com/Gerrit91", + }, + tags: [], + }, + { + id: "https://your-docusaurus-site.example.com/blog/2025/01-fosdem/article", + url: "https://your-docusaurus-site.example.com/blog/2025/01-fosdem/article", + title: "FOSDEM 2025 ️❤️", + summary: + "For the first time metal-stack was part of the biggest Open Source conference in Europe.", + date_modified: "2025-02-03T08:00:00.000Z", + author: { + name: "Gerrit Schwerthelm", + url: "https://github.com/Gerrit91", + }, + tags: [], + }, + ]; + + return ( +
+ + + +
+ {testObjects.map((post) => ( + + ))} +
+
+
+
+ ); +} diff --git a/src/pages/sections/Features.tsx b/src/pages/sections/Features.tsx new file mode 100644 index 0000000..d1ff83c --- /dev/null +++ b/src/pages/sections/Features.tsx @@ -0,0 +1,149 @@ +import { TabGroup, TabList, TabPanels } from "@headlessui/react"; +import Container from "../components/Container"; +import Row from "../components/Row"; +import Section from "../components/Section"; +import SectionIntro from "../components/SectionIntro"; +import Tab from "../components/Tab"; +import { useState } from "react"; +import TabPanel from "../components/TabPanel"; + +export default function Features() { + const [selectedIndex, setSelectedIndex] = useState(0); + + return ( +
+ + + + + + No virtualization + Open source + Cost effective + + + +
+
+

+ In combination with Kubernetes, the bare-metal approach + fully eliminates the need for a hypervisor. As servers can + be provisioned within minutes, hardware can be replaced + quickly while Kubernetes automatically cares for your + applications to run reliably all the time. +

+

+ Our bare-metal design offers physical tenant separation as + well as resistency against malicious attacks like Spectre + and Meltdown. +

+

+ The rack cabling is part of our solution, too. It is + failure redundant and allows to easily scale up and extend + your infrastructure with more racks as you grow. +

+
+
+
+
Built for Kubernetes at heart
+

+ Together with our friends from the open-source project + Gardener, metal-stack can serve as a cloud provider for + delivering bare-metal Kubernetes clusters at scale. We + strive for being a serious, on-premise solution to + hyperscaler offerings. +

+
+
+ +
+

+ For years, we have been using the metal-stack solution + successfully on productive, critical infrastructure. We are + so proud of this solution that we even created an own cloud + offering with it – we named it  + + metalstack.cloud + + . Feel free to try out there if you want to experience + metal-stack in action. +

+

+ We are highly convinced that open source produces + sustainable software and are honored to give something back + to the public. Our repositories are transparently hosted on + Github. As an open-source software, you may adapt and extend + metal-stack to your needs with the help of the community. +

+

+ Be warmly invited joining our Slack workspace and reach out + to us if you are having questions or want to talk. +

+
+
+
Our cloud offering for metal-stack
+

+ metalstack.cloud is our hosted version of metal-stack. It is + fully managed and provides a ready-made bare-metal cloud + solution for running Kubernetes clusters. +

+
+
+ +
+

+ The API of metal-stack provides hardware for users as + self-service. The underlying automation reaches down to the + network switch infrastructure and the server hardware. It is + self-inventorizing and prevents growing chaos over time. The + DevOps-driven data center enables even small platform teams + to operate huge infrastructural landscapes while keeping + operational costs low. +

+

+ In addition to that, managing your own hardware at scale can + give you a striking cost-performance ratio as it enables you + to scale out rapidly. +

+
+
+
+ State-of-the-art networking with BGP in the data center +
+

+ On the switch hardware and the servers, metal-stack is + running BGP with routing-to-the-host, offering load + balancing capabilities right out of the box. +

+

+ As a special decision in infrastructure architecture, we + enforce firewalling on dedicated physical machines before + users can reach out of their private tenant network. Say + goodbye to large firewalls with outgrowing sets of rules. + Instead, let the users manage them directly through + Kubernetes with dedicated custom resources. +

+
+
+
+
+
+
+
+ ); +} diff --git a/src/pages/sections/GetStarted.tsx b/src/pages/sections/GetStarted.tsx new file mode 100644 index 0000000..3607a8c --- /dev/null +++ b/src/pages/sections/GetStarted.tsx @@ -0,0 +1,53 @@ +import { Catalog, LogoSlack } from "@carbon/icons-react"; +import { Button } from "../components/Button"; +import Container from "../components/Container"; +import Row from "../components/Row"; +import Section from "../components/Section"; + +export default function GetStarted() { + return ( +
+ + +

Ready to get started?

+

+ Although metal-stack is developed for large deployment environments, + for demo-purposes, you may also run it on your local machine. Try + our{" "} + + mini-lab + {" "} + on Github to explore the API and the core functionality of the + software on your own. If you are considering metal-stack, feel free + to let us know, – we love seeing what you build and are willing to + support you. Please reach out to us at any time. +

+
+ + +
+
+
+
+ ); +} diff --git a/src/pages/sections/Header.tsx b/src/pages/sections/Header.tsx new file mode 100644 index 0000000..29b9d99 --- /dev/null +++ b/src/pages/sections/Header.tsx @@ -0,0 +1,100 @@ +import Container from "../components/Container"; +import Row from "../components/Row"; +import Terminal from "../components/Terminal"; + +export default function Header() { + return ( +
+ + + + +
+
+
+ + v.0.21.4 + + release notes + + +

+ Bring the{" "} + + cloud{" "} + + to your{" "} + + data center. + +

+

+ metal-stack® is a set of microservices implementing Metal as a + Service (MaaS), turning a bunch of hardware into elastic cloud + infrastructure. It is built to manage the lifecycles for + hundreds and thousands of servers inside your on-premise data + center. +

+
+ +
+
+
+
+
+ ); +} diff --git a/src/pages/sections/Offering.tsx b/src/pages/sections/Offering.tsx new file mode 100644 index 0000000..912c5b6 --- /dev/null +++ b/src/pages/sections/Offering.tsx @@ -0,0 +1,82 @@ +import { ArrowRight, Link } from "@carbon/icons-react"; +import Container from "../components/Container"; +import Row from "../components/Row"; +import Section from "../components/Section"; +import SectionIntro from "../components/SectionIntro"; +import { Button } from "../components/Button"; +import { useColorMode } from "@docusaurus/theme-common"; + +let cloudFeatures = [ + { src: "/img/icons8-gdpr.svg", title: "Fully DSGVO and GDPR compliant" }, + { src: "/img/icons8-cloud.svg", title: "Hosted in Germany" }, + { src: "/img/icons8-cpu.svg", title: "Up to 24 cores per compute node" }, + { src: "/img/icons8-link.svg", title: "10Gb/s uplink capabilities" }, + { src: "/img/icons8-m2-ssd.svg", title: "Lightning fast NVMe storage" }, + { src: "/img/icons8-update.svg", title: "Fully managed & always patched" }, +]; + +export default function Offering() { + const colorMode = useColorMode(); + return ( +
+ + +
+ +
+ {cloudFeatures.map((feature) => ( +
+ +

{feature.title}

+
+ ))} +
+
+ + +
+
+
+
+ Screenshot of the user interface of the metalstack.cloud management console. +
+
+
+
+
+ ); +} diff --git a/src/pages/sections/Partners.tsx b/src/pages/sections/Partners.tsx new file mode 100644 index 0000000..d0c5754 --- /dev/null +++ b/src/pages/sections/Partners.tsx @@ -0,0 +1,60 @@ +import Container from "../components/Container"; +import Row from "../components/Row"; +import Section from "../components/Section"; +import SectionIntro from "../components/SectionIntro"; + +const partners = [ + { + src: "/img/partners/fits.svg", + alt: "FITS", + href: "https://www.f-i-ts.de/", + }, + { + src: "/img/partners/xcellent.svg", + alt: "x-cellent technologies", + href: "https://www.x-cellent.com/", + }, + { + src: "/img/partners/metalstack-cloud.svg", + alt: "metalstack.cloud", + href: "https://metalstack.cloud/", + }, + { + src: "/img/partners/uni-innsbruck.png", + alt: "Universität Innsbruck", + href: "https://www.uibk.ac.at/", + }, +]; + +export default function Partners() { + return ( +
+ + + +
+ {partners.map((partner) => ( + + + + ))} +
+
+
+
+ ); +} diff --git a/static/img/browser-mockup-dark.png b/static/img/browser-mockup-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..f9ca502f949be8e6d335769bebd722c93ef626a2 GIT binary patch literal 136856 zcmd>l`9DRx=*^;bd3PaWrNhwPUifq}kjD2Pp##lln zOO~;WnIT!nPz__9ndj)+=llIUKRtiIbH84kIp@C4y#`|4A>BEtE3)g;2 zv?bYN`5LO<6wdI5W6;P&2bh%|nq+~7-QTZr;nvoOPwDc(BP%E>O_g?UTXI4I-^+I9 zxAcIT+64|ZD#T%-Yf7|7{Uma>@5R##w?j_8RoWJ%e}Dp42&QUl_>99Y=DqdG0SEU_ znLaCyS*Zybzp5gjic4*8(ebx=5NK&hn!9)A7N^HVwS%O-bNhFYJHe>e~6P#@Md7T@X-OEG;b5RNXC@c1LHEjsKLYNt=M$ zT*YTRns$I=BkJnaj(}ZHKSrr+sP6oS1iZSH8mf2_&+ZeZ^$h8Un~DKf($B4GeZKQM zpO5=5GQThT18TqbTR9MHVD3eNK%Qxu=1G}&+CluB_*7aH_aBBr&$3a>Ai_8&r=FVW5(}84V7)v*py3eC4_0|gad587?MH9>d z2e0jCf*8In0!YC)8A|`EF4KPQWo8Dz#epj+r)Lzhu1)Ln{I5Ek;l5Gk)O$rC0=B5_^Q@YJx z8|{A)x+%a96VNfgg}Aoyt{t2$|I`CO_xS7TE8ILkRWEhEh993_b@>KNZTnv}uz2A> zuMni$Yb!usquFxFsgQqF1{MBpZEa0+?Mk)W2JO_VV4kcgzUc8_~cStAABw4j3QYr2vU1$OG#B zT;jEVS6R7xc`0F>fI6AYI+1@>1-*4U9aKRPFaWMd{Oj>FvT3X=c~t-cjQ?L#O1rTC z{u7G%zbFCS1@#_|Xv(?3iYP8(Q|+~F&+N0bv`mVf_(36ey)eFzb?s9yMdr`!y8FNX zst(Awau|)wTJ}{EH+Oc5c^DLT=FMx_I3f)FfFcM)tRv~9>p8+e zgZ~b}sEdy&Y-4cDnQdiByY*HO5?4qic11!`>VLH>Xy1BmKj*F;Aqca4=7<}P2UkW@;%}+qu;5ZkTavp%6CP2bCoy# zEEt&@g~i2QlEMuf5-4hNoEXr(DXIqlq@e3}D0pPmf5;YXSsL)bz?$VVIyxCyAi<#j zMR1P*ZDb4I7!mo(4SjI)4w&wcl#(J4?_br^dkD6IZQQZ>R9n~EyClHD!UEhmz;aUW z>ebkQjO66}dvDJ0g6w=qs|FvFZ9sYGXC>S&--G^-o$PH6;wd8{83<}|u@VoEQh8CY zZJ+OR)AOr8^7!?2U4Kb|6LQpgb}^e8YG4rgr}0k*S-6rYE(@oMTIOvyEWVNvKn;{U zdFRP;C50Bk>;RW^(eAyZEe*yzgYyxpD^#VeWdI;8S{0GG^oP%Kz1FJ0V;QjFS4m^U z@;25!ZJx|m7cV{*l46vg?gQ^e84r8wsR96p@`HM_V4!`0B zs?5OI?|<VEDll@I6p|dwVh0QXZrL;kl*=&CRqaaZMa?TK7xHfV>D`d=3j_?j1 zG}&7$r&w&xzdS%ST$Ow$-9P&7!*U2xDGP!@1_g#D+8-jpT2vkSE|^2y5FD)#_&jW6No*&9|S%D1yK;jf-6 z0cDw7uD{GIggayH6i&E{E1f%IY*sv!iBf?PIs|zhSIe=3^OM~+N`~AWRKE%ZmJTse z6?W6V4R|2iUnP=@cQiC{oLrZdBe;G|fldo*wL)ieZ%$MeR?U7B+Ra;Ka5$RF6Z0ST z0^y7{-W{IX+#6Av{;?-9YVOzgezxgwt^?sE0bftF`5lqCY{hr)lYI2ztW!=o+~pQe z!_mlgKUVic`%g4`BjM?Mwh45p%f-`=8-tuR&6m0Pff=XtTc5+yyn7=(kMSZqHRD4c zLG@;l)>4Ljabw#e6RbP-_Qr?zgx`ey;h0m$9xblvugGR@N<1^**s)_hdtKjUjmPWQ zYt5BKE{{aZhJ6q@zoM%_eUJ@q(}zK_#apEBH2wXx;_d^|G!!><;qJixNO6vTXpcUM zek^cq5cEp?O63G*jaB+8wuUt>ehj0smCbGzYHiod`$$=H_Z+;(qxJ5_?7V@!Jdi>+8AFBd2L}*NZQ@i=QnldNl7ewKkFLP%_b; zOfPa^7oHpv(ij;HWvSNu*wvA$VMZoz5ji(XS;j7;JX5W=?#(xws@&#STRBSeZq?_4 z=B>k6GOAT~?-Cd|hCbd$=!gMhDOe2LlWWj~ms`k4C=)Io7(boAC3plR&+ z>MXbneA)wUF!GsE2=lxvzr0z4>6HmT1BmNsWo&B^A^&}XP-y=EM4ljK=qEt#(o@}I z*VwcN=0La0RwyT$!?hSAv)k}NM1&&i?GJDo!BAU{6f|WXPcN}7)#10}kVAKH1PI`c zfH!jG4QWF8-MpA{FVgqDJ&tSF5(9Xp+qoFqSSCN>@}wqrR2JQ-4HTM>_^IO<#W&=# zR|Egia;E(sF{F2?h{IM8%IV5KQS7CGRQt*{JYHGu2ju_uo#q!(_TaaUf7fBQPWL_KW4t8_9=NBr0gk<{=^ur&(Y1;#~aW#xK4-UFrF3Rg2Qi!^5v%wJq_*wyg9y3B}!}pdH z7XA*Baa$Ptp^ippAe-TYy@P%;f|9%>`onFlk_*#|1QysC zswpDj4z!g`)X#nWWoEaGCE=7C!vsnBm5>XK*Y-5l(|Q6flnKGns9>t|aBwsVi>-scd0lUb3)w;-q)=82@7dU0XsuFdF`HUMhe7 zwLE*NE4QeBufY6^qIsX$DqhO(k0ka^*(1Y>4wPK(;(m0HU*wu(6PI*-Q%2pVAkN;f z%>I;7%>2IbVHL+)_ZlIou}0qQoT08TlE>g(I`>t^#zFYe~W&#F)1}pxf$E(jt8iBG(+H;WQiQTh>>a zwef9bgeJa}tZ4==FE8&pEgDML{Xnv1%h;lG2gv8ONCn0Bn)9~tGH=4u+V6UHwUGul zN{F1Gg;Tf5ciPGic)`4MFw28jBiK3>t7`YtMf=@g*rkB5s&@#_1$Q`&e@X-JG9!KI zv-V`O{3dAWmigivuQBu25(>KQ&bpixO;^llj)wM_+IO&H8B>NQ*RICAMrC!nm zmh8>cZ(*@Qx`)?t<^{;YFjcY$tT_)iE?QjL(K`tzyQ9nCtNvMv545dIw7Io3whF@s zE<31+^Pls2s~+lM%o&T84H_%gMzpD6#QfWN#bL5A?6yhS;v$A;aOl@JC*bK)Gc1E^ z;f`dkJ>ZU5NH1LtXsU_7|IAd z65{Q{Rwp{JhmfHWj5*_-y0ZZn+Ph*q2I7`1tn4sDu9!+}6#`x(y;{txYXubq@D)UKN$aC7|) zqybwL`DAI`?=QlT-bR1hhabC89A*bA5*@FsF-VH57n3c?MEz-asBnZkIe0@$ ziX$*peks6<;pU%CMWcJ-w3m&Pk!jlFUuF|y?%%l3-#V+6xqWn{S=l7|8g%;Fq zKgtN<(LGqY&T^=V7X$YBem(JsD-HUWA8(&na8=};?wr2^?$6!6X(-Mrl>muSj?@-? zlvOa^E(N71`1N;_vdD=#rW`l7#+UxR1!i+WMbb|*^xYg7bG?qx?lF*rq8b?Xb+_W!o z(dbIdH122JgeJL4uc00@?mDbaK4(i-uP?L^-7PD6U9-ysAO z6Rt%$D^_*RjJ^GhvNS4H-I|uvi@h`TSS-T}zJiEQS%Zi6NW-M!1?5b*r$ z7F}H94NqK( zwd=W|lUDfPRvPAZXq}1eY`(b#d9|cRYM=#=&JC->B9If_5-Y{{BYOf`9&gE%2q#4~ zkLAe&&%p&;Ou}t*rwbz$`g`gZWjW=69$~9zL2WLI6;E1n%3=eej7STtqm7nb$ z&PIp!T`$l+X8ndjMb3NS=Kc4pbyh|rwN4YFzU%3Ig5xNY(neY$bF1?!u)K*i zEGbCmOzGUIz9cLwLpfWq2{h5>D$CusdqUG;qVH(xL~P!+n41yIT*bIcKW&D3TuJt> zd%(m0GYkorwB}DQbOIvmO>0WF0fVFn?^Ugne7fDxhWCcg>R`cl)^-2{B9NK2E(n}2 zEUUXO1!nMmV0BUuqav9v=l%2-r@ zN54%!lYaB~F(XRWcSdKa1HxcuL(5&D8O;MNjC35dH)A9b zYlG`5EI%=9E}G%r(5UtYLAGEcp2%h5*t;GvNjFAV57~sf2FiYq&_>5)a+l;Bm8lHz z-46%p$+vti4a-ZbGi?T) z8rufTotHT43q^{9byuu9Kn&6gw&~t+66r`**~3|3)zXEHmbbwUA4q{l{#|G8sn++d z>IO2N3kqrGW#A1a$ZE6Cj_|rkk8NT!wt~ELxs|!;D)D!=KdF}V(Gss!+Dk}PfgVwe zmroD9B!kIOR@KEr@#W); zGjL^3i(OSp<)H`)lbj&wUt;6A_R3WAlC)DV*|i~VV$*-IS=fn2Bf5L)E1M7UO_hmB zTgykJwW)t?0}*XX)+%2+ZpqzjL5%V3#ljO7tK!>r*zCjGp1~i$P*o)Ecw79k%qEhmyRh3*)k-Yh)6``^pkos{0M~`t;=WhX=qh_) z4xhbrqu0jrievHmM2X}kqWDKI8aAB9PFl3ps$8fFWcvhO6K-tXC zPHnwMi}WB0usbw1iJ865xo^C);qW6a_`X{#Bu)={*HbSoj^Iy04$OdBhYB`Fr^m7L=e+G<}7PAQJj@Pg3q}!G@46Q_ojdQ(ty0JU`X>QwAq~3wI~0 zyu1vHSt@s--fI@3*1_r(wmRc-N3HqDDW)*`zOAiph^w&X^L|wVfYx0So`^xtUnycb z4wD{hmW6(^{j_f%3RX&r%O>2-kfjf!Oy=vDoq4`pK|F5obTnjzaTcrY0F$kyy<~+L z@i9*~a<=A(@5oUU7ktbxRu~l5VxbuVss1oj7?62r-4x^bf&^{oD=^1k=GHqw|FUk6 z!CnyIP&^wLN^pcRHIS9*`eV$NW_ndUar5|0wZG}yL&wJSTHrhQ}Iz* z=sU@qWKSH$KUHGiEzlVrw)D~&)P$L=`n9PHio;x?*09I)Mw+#HD4xV>48w(v_)xJK zaF~|l@G#9+T}R8Px8u~A0LCE3>tXuvvGWw4$mM+KtH|+z;Whp?BDzbj%$uQnY}?~k zTRT4|=@C1+I``IMM!1%`j%4z1ImSJ*fk2?Y8dlV6Z{me%D1O@Z_}bQbGhVE8BL_F0 zZp-Hw4_~)ctSkE-nQ8RcF9YrP;Zcc<4*+O>v7Hro$Uf1wuh%2X308bh?oH>UAsqz_ zs;{kef18%E`LbiV^j0YdP`Qdoedt`7s!;Q`r}y>G2WDN43Y1R^{*hFR^L!?@YlNwf z!4IeG6%(9_Qk#AgHoM((l}PGxqVj{ zq;q>rHeQ;j40+iGcSf9ra+RJ}jSe(*pKxwHjd_C&MEWT)v3&B`5R|y_aLaGGJ6G&V z#H0t66Cp*cpzf3rTLpnJw6?4leW0F&@sEyaT<>KFK$Xm=$Ud?l|FZHJ0aEpju&u3l z91EAVmJzW(l2x{ZT`C)QaUzD!+lCqKfqCQg zGe((`yOa1blv6uN1C!tp!7<~h+=dwr!En`5mp+>ehIYQbJKO8&w|m20`RGx1s|4BY z(vAdyJ*lme5Kv^r)kBZ%wmtUa!RudK1a_4D3kh-fbEYQopu5(1vZ8fOdS8w)L<W=3YSgIsRhStW8J-M@f?A0 zc$eT+hSr|xV_BbHDFjeP7qvfvK!2x<<~1W>HwRDF*+jLq<|Y@rVFn8J`1QrQbRh2S zYg);2mwk68jpG@b?7vP+nyXL(xBd%<%ms&+IJ2uuwn1%@cs4=+x)GTUJQw4;bK496 z7yRxM1w;wJ5tgFnnWX9b<@M27VeudQ%0bE@o``FylDx1_ZoS^mN@~mpG~AxntM%sj zTTu7HDrJk2zE(mn%G5M{=OT^|P&2$Gq0iv!b5z!Sqc}6z4cK_Vk3r<}8g?Yv4nvqp z5>?7pZUhmOHNQ#US9ld^c3rNwiBWwj*mGq#Ee2P-HB-B|r69_TGQ`jU15eY6N?SI= z3Ck3ZRWpR$Ma0g<5a;42vHI!`7sUa-;vFEcwV&Z&n`6iHwb=1X>s(nT%Ecgi^5#u? zy#@WIH2Hj1ju`J1@+q@T#Ou1&1%f>9a|m0J)Ure}TEb7QdRX+sGnOj#!@m=LTm0}2 zY<^GO!ISq5!WQyo7fuZXQrL*A@jRh6c@jKe)KRzXzC2$8>vx~I8C)G35NxyJq8ze$ zIz0tZW=F~Z5maO4Xl5j9Fta;)TfH!D7qwv3IY5ueN<0;r9vw8a5fagUyq4C1O9}`gJh+8@t6~p z;4nAes~D`@qoBJLO-1P;r)Ak3Bfkd#pYA*pSMC8_UIKpx2x&Ma$D1H*ZgjtSZMonk1OaqKzNI#E0nnB8 zlBR373>xlK%=;6Fk~8NcP#~KDxWlO+?6VnjgDjD55NmDeu)GUAfUUtMGaCHGcVBaH zb^R034!^Q%18p)c4}?Z7t$7&&{&WvgQPt8($0&YX&m)_>80;(-yKwUDO)w@u00kue zKy|>|2GDt+;aM7p&A4f1X&Gs?s=JM~OB{RwTXbRnx4tD*SXlk$`@ko@sHi9^0b>oa zmdyW$zuLM;BxW;$JGJy@;D9dTE}F|g+%o?Y<1K^#$v^1c@^Sore_!8&c$3SQcMCJS zPH#4+yKo29o0OOs7_Yp6BL;4Uz8e!=KvzU&fAx{u=z}paF`E!B*koU+gU$j1wl0-S z0zEq~*zV28i#wiP&*G^Lgo7gifqM9T!@b}E zNT3{g5X>W>66}u8(1^qVk3T~WPgjzR4MH{B>IKizu$v+B_nXaUMuW)`UbEX8nz#?Q z2&f}7HbY&2uG#HIBD+I!cbR}PI87MXIKyQ#6+}DE?zjyY#|Psqgj7ss84OHn06Dsh zx4Uxb@GELJPvf6CgIb;`N5QY)+Q7golv7z*nV5(_2<6r%ZuL zr~;^7_B;Q?%$*J`eg97~5&4x^9+`&j@9*E8w*?Hl-&+Dt&6&}a&?8dnUO&A__$FH$ z>z&~kd>KiC^tU z%29u0`}a0T`#=5uz5N9I;r>6g2|Ryv>z`Y>Eq?_5&#f+h=086-ui@Ku|6{~|AMOqR zkJ9|TJqi4~U*Hb#|6Rx7#qtJ^|0vpDmMnTN{{8jmqRaouw)}R~zaHr>T>N()&;O51 z`+ulOMW4ZycW18GGO(!uIzfwWV&dY3A3hiZ2{T~E(PH;Ay5I0Z_J8$Iw<{^J*wQ~F zszS8r<_=iq`&OJq-*F@DMt^0XES$S}9`t_1{+|HC(^bTeT~qS3>UXnBbX{1`P8M}2 zc;9+f($crKf-=r(qwi_T`^G`V$E5>v4;&M-S3Yl;_9PXYf4%`a))l#)45Kij;pE>DX{2(F%W;;Ez zc!hc9U%ZAIw!~iI3CFOAzrQG|IW_U|06ozEC9S=^V=@1^FlIjYgj9X0@q1eeJasp4 z3yjA~Y6n#T0Qypl%0B}D^K{Iv-jV1~#eW6SY;PyzDKKXG$L0M?(QRb`j!z-V!7_kO zk^$m$I1ke9x9$b=Uj(%O*T|j1#2STTTJ@JBJr}G3X0S4V|Dcn=CMf=2=7YpN6&t6- zL?k}c`oVY_AQHDSvkamIfo|c?IqSqFKv(sD?Y%uFbF8~!qq5Hqp9_Gy7;KpfgvXUj z0>uAhv;3ia>*g|li2{bLaG)5#Bb%<#p;YhP|Kr*n6>v(zHnaSqhp+4aG9#51MWP~P z>-L9V>+Sk)SD$t(GEMusQ?&Z}@pS^>Pem0xrn|Fv0k7CeWiFUu^G}guel&m-KA+Dm zAx%JlD$oHoHGZ{h{-14WlPDq3qr%_PivC+3xEL>^3^b68t6^&@+`Yp8Gy%v}g0k)# z9Tws;c?W+d zB~z#G`_$D1I47(`mbJg%61DIQY~mawDYQrXg^iU)qTWtC*$;y;-2>jlH)yVUvkddru5ClOD<6rP7qj5 z+3Ghnx~}3ijb@bBZu00FTEyP%N-HH&S!L;AzmzQo`i_b}!+F}$#YSV#G702ujYM9PPs8DWZH2oi0`)2Uj_|KmREU<~!01naM46 zyy1GePH>L&U*pQe4foB`h*SyW%u<+h4o%H zwiTKs!Re*_X{TmSce(6)`pDs0w+|;&uT=s#IPxuR`P)hM!i>#YSF@_yyuh=%Bz9VP zN!<-@(7nepA#*MaZEx2!zdnxUV#6;?*@Nw&IKP}JYA@u0noEF9ThMSE1PIbU{E^GA5-X+L9B)J!_|s?dprdvC|6PCXyzl#| zGw0KEO62oEX{Tb(lZP)xrNb`lidlDh!cOpWs@J&wsbm-a%9$UNFTB=<*0$|AFZVtJ zRd3y9+Sy+^U)W=gARW!Bx8O^-4gu6KNZUF;3}^j^;@X1fsijsjlT2wrxhgx@x0ITeIM9WK>la!x3tLc92=_1A%W2a<$NLyU%jbGv-B! z@zaIB4r->xWg#xqC$~3mVn&rVogeY;YV$z_4UVhxD>;p;Zq5N5C!!}xf+xCZTa>ym z+DoX?Kq`N`k-p}GE-#@~+w%Gc7Pn5(5QEhtk7}b5XVd^NY$2C!?AAZ))A42%JHNW% z8^lS(S=d+6J$7zMc#GSwMo}aalf3N!0rDgxy=p}?d&-yFG zst%WSG))zlzMMFp;J_@adJucsy^o~`;*JV6GbJ-PvtWJh{E_W))?2z?od7eU|CDa2 z+{fISZwZ}RCmo0!{qo!@{JP#gV=DpB3~b^z38PgI!YmzImW;WelD{xcFI;>4HFE zA$@67^c0e57eAXjK(*Na;u@mNtHqY`pe-9eGv9{%*+*D>D=PeLMqyv^M%|qMRpR?w zg`Nrf=b6W=zRJ$to;>&Y;+Z{|$kTO1ZvCTRPFhRP@MU-1@~WvgbXV`BM(~S8&Mxkh z{Gl-1Qq9q#s`|^r*T#vs5~p6~GpqKZkL4n5Wt@)MpQXr!;F-{wS8Az~wOs20hkDJA zLDFUNyytCe?w|Fp&5r{U&@>3Ht3jwE4-a`#>IWYjJAHc1?w1rjw;?HG_*YYkpgSqL zr%;H~h2`eO`IC3JhuV3}vfU$AhfkD+_P?;-@ui5Jx~-P6_r`E#&~;sr-iPmWdQsQ^ z@n*uQT?qDqfMo6Vr_-~l%jWJ`?0x1VQ7eMAqhBG*NdXscy&*oZshJP{d6qpzES*Ky zC|V>dSspCs_fq0)_nP}mvy*i0Ms*@ zQ-h!R9uhkH`xxQ~Px1%vTiIW?TLsx|tgJQd3te}3_1ey+prTR8wlX9==+#TT+L?|e z0gujR^V2~KUaET#@uyG=@ydv-Uuj&0(6O!#gLzt-VyJ)0Vy z#OSY>2$vG{9=#U3G^^oogruVNXyla8<%3Nz3KTWs1LLBBL^?6PKBtz;E{3voEMp-d z-_Er(MP0@p*O{lv#@wlyd0!|fHeF+*mU4o5g1wk*=0<$l?6-E*TrG5XUh=ry?BrWU z)6X)Wk=pq5H$|ngvI9si`qx0~W8tk!ompgD&VU#&=w6O(&29KLE+*+$=P$*4svhzn ze^=r{Vc~7G<^dg5qxI)x!>M;+k0fWMmKw%Y=@SD~bGy(;%>$~$YeQQO7tvJmJ;PS- zwTQ}3+(b}Z=wkF-1JuaIS*-x|_PAoN;6^=HtUXQFB9!Y-{HnSi=9%wUt9ma)#hX%L9Z`b5< z;)J$zLkxL8pVk1Tx2<^pUDtvzc_i-q8nx>Fkf!$y>_Bhuxz~MbF*(!}cD*-|9;Uta z!`Bw}_S%`+uP#A>mmf351YyrOZ`x0J+U@=xQS%78iL2XFjj!6N>8XN$$e<}k?i@q(`D@h{1zY8-S!&# zLy^RycY2;`a;&_UbcdU(F*vb!HLRzMjY@%xMv#JZU^m~U;~YC2_(qV)K0n!YZsJ-8 ztnB8p_S$=ypbZ!0l?OFiJIMk4XBAV>VFoPA>Nz?1r(u|BLJyY)TH}AE!Vxs`vkm#}UvWBz?1Bnm#3wYx28~;z z_2arkLjtCgIN9zUN@u5USK&nKqzMJz>u8k$ykwVDUwe$GQbxWb1Uw*&ux|b_MWdp z6ZkoWt{FxRqTv1QD5z}ov7PXnBUGtN$6kL5&~r(uXi_Qma=Uh2FK*X-E*>AWTwiwE zoAm1m^fHAWoAm*9^J$XR#B>r$^&5Lx2YtWxE8ER?=BLTAqn}@YPdnHW zBix;`qTAo*o9N}BtY2$g&3Sby=a&@h8*0LBhMLSy`o$VqHCjV22kcdn#wJ5)8B7?9 ze2+(bMTc8*I@tLMchw+AHm$y3JqTJ)^C_jQ%2nfudS%zu6@-cDln*VXZ|B71GUJjm!nVl2SspuMRJT#Y6R0xRsST z@`rdeGgnnxIx=W0<|lJX*wTigFhKiKMay5HBb?e4@4@yAZeBAw9jYoZ5+!*nAp?!E zSPepadvFNKvT&jbs2=T{Vbl&7O9wAo3*TLK<%Jung?`aveq`C=x>#@K!yy%;OS6yIOeDD% zQ&_kZ&GYHw{_y8u4%pylbMl)BZ-c}%?%9bc*{ntbnt8`>SFxfu3#N}XV~3E{re}N# zP0zA)8Ru?4@gZM+Z*E-*7|EWzB*4HW*FR`I5%jx8WAUeX>2#XNdCMa&(Gi?%F=@XX z^+#*Lr<@J3TRB2`Ai#nknWrJY)MhpxN3L@idOPNBQj2>ajQU-QP!;;+W*+!~{i@iOJ{DN#lK z`#RHAuF?#K-7|Hr=$Ql%nSy4kF=U458L@A+}Y_Su{_F@Ap$F_T=FNUZK#fC+< zZL4mt7YhWXCedCz{|C2TlzAHa^x_TCi!ScEI#Pmi9`K)Hrgw_!!xAL-UkYFlF9bpk z-0VhJsi}8bRd7V5!=`o9e45fz)bBs{-;+>Ow(ih$wX#dbz;AZOd}*#Ye(96BEPf7a zdOf-KVzyR+<=GgGABE-WMm9o$UoJn|{j`?;)aDYSwg?t>|C3ApHkVms>+@rPasLiz zfu6z5d2ho5d5Q|Gr=}^_(1>*GGZys_&gKkt=W5{DlyhNKhik~++R{JhjFew9t1~ZF z`#h#%Jipp6pLmo97kdeTBMm0-GF%KH101upnY5nAlE^RJCsA7;617#df8(pX2(%RH z<2_|#!WV^KhOq-@`U*Uj?-vKibC(hKnIZax1qj;d^4PaG^-B6wQOtp5N(&K_x8FtQ z-FFi50g4BfkcZLH=4$x25imqku5 zzJZkHIs2bgI-CJ_{v`9emYa@s#qQrp1mxa%U9%jC3PoN&^j`kZ%cw$;#A6Ds0uxj5 zR^FG=Dt_O##a^^6KW}B&ay^-BII^x^=sy5UE^hCy=r_P*VTqU9*9x#I4nn`GZ`?~8_Z8SD4Gaa)y)B|kNx;T}59HM@(VX9;}B*k&-7DXBB3V)`{&^1A` zuSvoqb}8pPn78?)9*+_Z`RF}gWTIA^PreHZ4>ujWp{6@&1^o&FTfz1pEbRS_Rfz*~ znHp#4-Mpb5#9IXJrQ%>HApCjY*ZPDzNk9lcKGP}o;I;VUs`^4_2;XXrd<_a#OH17i zep~sc7$d%Re|UE4R?^PGWe?u{Ppc~=6<;SFxq0Npg#G10s*B&}d)V*gAM8U;<=7ww zX49jS+`CRJrJN6~{;m=dvNklaHX6ALO-rEbb2)|R*lPN#OKNx}jh(&&$LO!V#2liG z^Vev#G{wf)o}N$A_RjaxW(8@%wlC|4z6azIk%rt~l|9<3m&fgZ4RD`wR#+RyOf3W?=69EO5CgM%11{i$k9J_zb~#}5@SLI^*Zfsn|NIoRBvIzg zguw5jV?7{3)%!yjp*+&}o~zZiPL`;q2j*fHI(uFrE=d(qPCER8@<;f7jNvT_yM|xd z%dH`+`j2rq9r-%T*9wkwQMfjR#fkMHgwvTBem~C~ZGOB<<&Je-<<1zpVOOQ7XA4HkheK5(b$@~KRT@F-D2XJG$aOD=#epTtExvBw=%atng9)8^o7n0s*>9=?qxixDcQ&!V!C-;82;T)0! z<@ny5QmGgQKVJw&DGiNc*18Iw9Mh=Ri(EtZhZ$WwJy@csAjO7O%yT)&$sesZTS~Gn zzP>adwSJ37x1lu@r!v7H5sfuH>ii}fd-_hO|AvXq;cMa_>EcI(&BRhvZ+qi!q=W}fh^6JsM)l-LvE7_kSQ4FmfNdu3R+FQ=evnWJ|#rz@HoGP0446em?117SCMzFE9 znpr;mlUuJMt@Us}P<6=dGwpXhp%>0LS<6XIg=Dx&-^fIy-~6EM|AocNm{9qMnx3#_ z&z1-(`#!9WN-^8Go6ySG(|#IC}ztI>3T#7w7=QD^q|SWMI; zXLt5jk1nF)CH-1-G^U5na(p_q-|G&97JUs48CJEV3uG|zf7RagoJ&rcQE*-E9r7l? zQ(5bsf{4A7wfSN*6_v&GteiaiD*Xi|kG_u-AHUBthMIRW_ARsbUax_6xz^d`FK`JX zPUsnW|5R-Z)>ZOdOfR=NmQ1I)Q)dZDPzGfXDU#OnQ^@( zS{D}QX^(>zxQ#kr2np+_1f~?pX;!73MFDinF-BWnpm2LnJmp;cJ?6e2lkN{!O%_OW zjR33ZiRD>>evHY;uhn|3I54EJ$Q=p8B5?rw$wFyQ59Wm3gUjXMF}3W2#B`}r{0vV3 zhx45klehmNX}iic&pdKKq`G*lHSUHi<>XBrqH|=J51k)@N~=cIt8DnaU?HcjV^g^b zMb2x>Of~$hj+m|8e8#)Rvmrn2&ko;D=x9e}q&2hN9=%6jU&9!T{9>ZY=haRY4h@KW za~KKZvXIgs*ya*?!w}-crnhbJYgHYXE*L_>#nX2Gc)Ym$%mn$8EKbJGbJHYqGKEK=f!|;0Tyw3G`&g(p%&&PA$FV(6aI<2E4 z3~v_wVZbPTh|=h>{BA35$vIXwFgS|z(Jtjxm1np^SMs)S@ql-GeweG~q_XL) zl&I1Uhm)Q+&UlJarRMgD_U9Lr-oC?%p3SMh4jU+qky3eh(y-bak23W8ffb+fs;-$a z{Nox_#^Aud5ys%AP;-dG37>30%fU#K+mD>xh7VuIgWr;@bFv=hF;fMT|sM!@Dd(wVBbnS4!n)$NbV7vk?fvE+YirkpI2QBt`LcfFT7T9S2F|Q z|8maMQJJBCPsAJ3D6Vvs-*Z+F9J;pn^NMo8i0jq35N`M$wD{WS`3KdGOk%~PwbcT% z1`smJN;^E*q)PTQD@~JWluu`-O*!D#SE~0wwS!!GwO1aXbOWrPSalU;i`)&{6gnHU z=9mRVj-*6eHLB*Q6j1OEdE3*AaTkLtMLr3|Uh$hN4OZ^bT|Sv#&E2>E><|5UXXSOM z*f0^#x&5-khq9+&IHP;8>L-ochfZ139x54?L%#|#6nWqDtHP_I*xpl5E-iD9xj9QYrXF`44+7!#b#m{MRmd=a|;C|v)Cou5xJ?3=a00Q z#BM!54$_In<@ZmBsCFe95Nt{C+ZVp0Xk$=Azh7dOfrk6lIw^RYDe-;Qk%3wSi3~f* zHLPfR&p4SymMj8;YWRcB)Kwd0k*QvxeKS^z7witVI}5j|2fzBfjO1U| z_y#TRXT3W@TwJB`z3oiLWSKbcveC`9{zSd~W8wu~Ipw6CKS>%7n`avqS;kk%L;Fb> z?dJ>og{F(VhVdgB>oIm6p+D!dT!(!uW1*vZcilRnT|~4^wpI<9oG8S_Ilrikl(N(D zR}aSGtzInWW7TG?0xbWr*s+a${dgQtTp@)oI!S(a!xp$q%VfqJZS|}Dw#eqho@aFN z&y1AyI*5x>XGo)+xK6m}wxHe<`l8oWB0k*zVQJ}dBgQ)OC!@80zg_y#n^JjDghxe$ zSc`>!akqmN>h?MNl*i}nq|q~&{PnS%OO`WbocrrrQqj{IvJuxA>p9r3cwBn58#rFo+3(oPY zz9SXy>g*bM^wqEK9%a$y^MSH3ksKvf(8VIJuP$Dxyf>TI7jRRXB;Q7@*s;{TO6>4* zNhfrIKRM0-9;v8$7BehZ-uiwdj)h4MaO&^oby{XDeUj&TZ94Y}5#bNJL^%)bpMB$= zr~1>^Sd|^winDBOQbSQaJom#B`-nlJ7}Akvl6S{`hbOLjB<6re898cylde$S1e9T$*i# z8#+1u6J(r zxzuK|ZR&1!<^DA*G@~(C>im(pMENPKcM_rgX<3@yd`~Qi!(4CiLBG9M8bnq%Rq#~9 zKRND1Ei)JmLM=H>vMb&UD|d1dothqCl$Crr$ncwdK*7dxj#AgY#Q%BK?s*;M@K|l6 z8pHhSU7I#7J}(#8X@l(Ml{S^|15Yzg7Ok*G>EPeyQgVKHeFPy=&8} zq20E?vY32CU06~M1C7|@wUX=)EW zJtV#JOAu-iaqo?#g+#8>r_6f;P%c!4FI3;`_TcbEG)16x)5vtlY3{@|$*DGalO@$e zAxC!sBndL5*|lMa=kZth)i75)k4Z<5(!Ka`Z^|BG-XajOD$q|N^%U-O#D_eKF#AFp z3(Cg$DOBL8LOq)5ovirP@nrFRTb``f$3u17@8}upp+_UwhMSRi&a@Iw@PZK*$|`V=a)TPvPZk# zTZsYL;N|Ox;uBM_SZ^oh+4n1c?dsP7V<1f(_JgQGUguWj)pBa+(UYr=3Xl=MUS=E9 z+pWIwETIW|$lvT5Z4x=nhAFL*`sBZ*#coG$t1Vxid0EL`R=g&otJ_IYBRyTD&ehYpHwU$}5JK~rs5-e1`I{yGkiCSv8F51!!0rkteghqQxhrq`qr zSsc|NsHeG&4X=tf&-8(QZnI!n-f#JM5S>zcxvtqC%0k+YaqBxJf`)x6?D#?scfC-= z_8XXXIrM|RY_T?09Xo-YA=${ExxxRq!{-}ZVJgI^g6k|OX8}{}q-AKSReB@z;cKIs z7@2+&ow?fKp2tWpVFw!StKX`k46b10KEPoH^sE%#@*B4sf(05%b$k-qeN7B+7~S~M z?KHv7`^w&mw9np~Jw&i|g7H45WH( zzkKjV#b~29yqa~w%7+E>k|u2Q3pk2vg0f>8CNo9$6kM$*WPTsD69^S;+V!R0 z2&(p$*G}q>cCh)-w{c!78u1;9S%YM6UlkU<>n2`?&L>6yj7?1=ioI z^{e6KG;V2O@#W5%6SzNUn?=unQ?lhWZq*A_rJPNmUl)@I!qsl2{6f2&n1u;~Br;@6 zpO=#N&kAK5vub_?w0ci;sH@}|6(1V0jZZF3rUPmR2O-WxFKbJt5_AAsT4ipN>X_3l zUhw$t&r`6|^5#W$M%FnGo*=8b%&9n4FZqkS=BS8kzv;nzM`$D|KfTNaJbB|z?#N2$naJ6N-L>hSR zDNH0dQe8sQI*0eZ#8}NP0!9XZAZw2~;8Fw0RIt^m(m|btlwjp~S&dV3QG?#3wF_C{ zN;edJIESo>faO~dCa%B&X4yi0F;{i@j;iw6)QM%%o(9?hu-)~MhkpOTg z0e?<^Wk1f$Xv5hBTqNGaS3>oE_7fX$OjEivmX8S?8h|6#Dvo5jv_in3F%jFIVNF8j zx{~9&VjeRoqS2(c&=xiDX{Jm1{Z_=7C1TMG{Z{d^^m6BMQ9%9zi~Bbp15+BL`5SZ&6q}pkvPd=E2)fp#~orWqi>~;?`LV z<6F0iZ1Eqyq#5$guf-gxz4kL$0C;ssssllGb2-ZKGlwKoI=B^=;zw`iVkA``ut^&1 z(fFPK^>Z11cTPPZryI1czb!93JRX&t)M3HT?Q)bG4E9``q^u(^Tjww2l5GkR{>|Mr z>1iZuW|K*I94ioPrnm5O(&QVJll^dTlA_uxNfwfT6~^b<(hED0CiYC0j|7#OSpJ$@6OXNAM0$} z53xzIz3epFh6%u;?*6Qi%r9dp9S6(P)u+@SkJGDE z3a1}^epx*z#2^YU%N4E%k6TSNURez@R`a@N2umAei_PLs*J7qQP|qiF^V2O+wBVH} zTf}q(1FXCwS55l*VH2m8pB9f~xM8tU=e6^={+->c4#ha|-V;$B1U~j*=#+weVSui8 zUyY+<&ET@N-2p4RGx_SMP{s+T@O_FXvUMLI*)0EXZoR4V+{;=p2vt?c;f>SkunbLV zi)z&@cC%lnYZ$#oYtiMoA&h~DWiv*l&8?lNuPm6MkTU z8+F!hu1pY=%dWi34LutY&yGh}!tck?qqEn&XNcYtS3C$NI8>9M(Y0RI61H9Jd6`3j z9p+}f6=!ohwY2wUOMAP8X^C^V#Y*34d3odd=VFpw*_m9Oy;~ruirU1LvO?Qbl)GYD zn8YIgap`sbCQ&8P{6CZnhI!h8PB?V0RNTrBDEs8X8-75oQqTwkpr_ ztB2z*agUhLO1zoF_|a>l%u-mBW7=8o&%lw*R~B~R6J|~YS;-g6Bn+H#W(4$Gob`*Vt<_6bClcs)LzG$-(>p%6~>r zy+B#kA_rmr7OKZzBulH=#oy%?Sn$$Z)p~urjqF?Ve$n?X`Vh$oNS?+S8xZ@O$?Qx(bE=@g!BPNs~3|6F2 zg-Zge)%!HdmPhPAS?X1K@XFz1fX~}s3BDUG6q@1I4(WOYI~z4}_-COJ7D9+xJOVd} zky>bRKVl3!W7!wJ+Wlqx)i0t)V&9Un^Uct~hW#c%GBTn{u>Ev2#ZaaI|c#XZ6>_pAm9%#$lp)d^5)cl}kbk zYF7-dx0dQ~m!pw=QR<`_oseHKMk*oej~T}RZ>y@Yry?o=i}uRvfDgj7Al)X!QC%8Y z~)y7Ny7GH z$nQ0Qq+jQ!`aCA9Dv0`gdYJI~7~4IJo+gqZw9n9Qpr(@ahmu}R zxCdc>hNvT4!tl<<_S-^eE*9*m<_7kn2efks>W})y{7%E0H-i%b|i(1Wql=)G~;+ z-WnF`om2_lT|25Lm4g}44w#W+3QMOcz2Mi$S!U-O-iIqK?zFMFb=6U)#th~yeKM+} zJ7J~brsf}H`H+uPX49qsNav%qAM)>h(1f@0SdrhVR>;!yT4U9!6-Q~mhG}EiVodnZ zBeU<2Whjc%RJBl^dO9SS2Dj)xmXKKAbfb+HA-Sz%e2^xM^BvH-(#oZ^W$}s8LUWxg ztGT4;PZrT@8i0oOVmPqmfsMF1@W+{^?s^u?pf?k; z)-}PEtctH+Z|Rt{Awcm8HUNc3VtZ{Iy`~7#9#Ij3q;BOdz237>Y+xRbDEuCtb=HAp z7OSMI%H6+gTCp^|X?icS(<)VjA76Qw#(sXL+6)1)rf@p>-cf~XS3WgT-%XUg!01%w zX{So_t#XrjB_oheyzzHe5L5B_^lUUhMdh5|skBtJ*|uD*a5y>7pJG3_h!m>E6IJE&SWvFX8JhrNcKFX7e(xMA`$JhF8@lg!2HKa%W70yvz> z3Gb+hU!@=XB&i{&jSSoAO^Xix1Hp-U4>^=!Vqt&usK&WR7*Cl={Y7@fGhIIcjyNV3 zTNF%NT;?x7&b$IBkaM;Nw!Dd`{yL{z9g^sVqoRAYBBkgk3Sp+nJ?=qWPL4nMYwhQ3 zuVIVD>T1fT^3L1{>mKV{0w9-N$(~S=3XgL_##(_m#jrRQL!)- zH0^03LyyR&ypVdeA4{_yz{!`zUvNA8oqJr)550p7g(^gaBgAY)qJw?Ozaxrhl1V9 z#^8ogRWjQwwSarK&Y@5gdqKsXoO9Iymo}KM>V4bZNbXjaz~(e?XC9!gq8GNaMWgnR ztiPx3@O0k?aK(M%vUm1WptYxFzu=d8qZb?=yVJa&Mz+EHnGdtT;{-{QoT zv@S{)XXl&%=UEF03(Rl%A$;6omrZ{4kc}|(VVvZU;7_ST8#7>Kd*s4Qc z7fxj6&qW=;^CKVL8Iv2LSKp@E=~|wwaa@0Zc`v5Wwd&xDi(6JpLb%)9t>V17r94x< z*z7gG%HBHLh48_JvYXW*xHxVn*GWkE4?Ls!4Epo(Y|td!rOggtBPf|+&d#*o3_Ggn zN7be-yP$~=)~cAW1?R(yzq&QR#(or8A6q!$G=j`4)qGx}7eUT{_K&ez{huabt-Z%crE9k0%nm#tz ztZ;q%2d@H_&S*%9>w17?6j2y=^!jLUHZ_p~3xYbWI!g}7&4(x{ZVPJq#)Jf6wEien z_!&-fbFCEYhk?<8xjx1EQtIdCM8ocS4m$#Rx`Zf~KFP^&oDv7sze!o@vM$U7KV}%CjQ@PV3FpPRCiDy2c{PkPQ5%uD4NJu?s5I{RYkL&BlV&?|azcss z?WjztI4V&(&&hR z;V5VCVuG&=qRk<_;}NlVv}}Axc=GrIl~TtrX7aDXXt^O%4%IQOIOMQl{k8aOeUx=Q z^Vwum;^X=)TX1Jt&nU0o6OdONayLx71#vY5zM~bwp~tKP8Bos9$LZ(XSLtqoAXGR{2MbEkQAj~7iWz(s26bS4%0m6tH-(OqT;xF&vtO^L zLI(gZzmK;;wf}f;UWCTbBbfB(=gW?S3UH6W*_g1hrmJ`XCq%L3cFD$*?`&*q6bcV? z5@*&9h{92KKPTexg_-M?p*EnpbuT+ip#k_i^|B^B1Sbh7>iF+RGZ(P+!!MPDT zTYLsR>}`}LMCE^qRs}cpO8b$hXK;+GCnlur_}OZWBOxbH{DP|6Xz5L3IMY4sWmV<5 zTp@m%wI>BzhR#Qsk2Wb^U9_~4{ z!T6uA^l=X^EN+3I{bmynS@*Nf^`PxF%;` zJX#6Tcm8}UtkXd5KJR3u@X4(|hWt)CPY(H_;faCs7iCnO3O=70hB$ge{%9!<#a~Lj zH{f8{);$s~%AQiSAXzkIl&y;mrYG&@1w02^fr_fm8H=^)-2m8D=6(ykuPocl8WIHO zUcX`(9}md4U4P*(t#K*!NmE6=j8!n>ysa)v{P-Rj$`nR5Jo9MmJhI}a>vKx8xS?(J z6)D{mZZE)<0&qG;zSA85>bvdJc^J_lAn+SEnMXf~4oBDlF&yXFEB*QwFt zc23{qcuPXcMS6_BJD+WdHmguWP-9$gF=%YiJ(=Ns{P=Npi&aezeH|csqg|qP2=Y6x zG5{FujBhgMi&fV@Z%QE0q4$D1a?fLL448oqx5M#ZN30vFkmH7o6>peS{e08ywETSC z`sLfrS8ro?8b65d#&eg`1(@_e-3)UoI@-?8*6wr^^+xfmL7(FaJs>Zl#<>BmC%)w^$qt%ed6^ zz+&_vvTa;b`e>y=$#NaP*Hq7eHr>ezDVJdPW|`b^a7ZK;htx-ivH`61xZsi%IMDU8 zj)1-Yper~v6xIsW*>*5^>6_G9=Vw+|?>^zq_2)Cfm4h#B7TVcIpY1Ix^BldYG5H~D z313if1K`A0VA=pQ$|dztzxSZpMoluU)p(0%GbdT)Ot4CQ!{6e z6_&3#OWP5pD*dyHV`K=pyzY28PZEE5Is@){yg(dTUaWu3L^d9MIw;KLPa|wHy#=svu*~^d?37_n z7Zl%l!7h`bod0OBKF@}A32VC;J?iyrXR;dDQJZGHp!?u^mZVQc=a)Z5u{K0561U(q z%B|g@=vd|*Nqc>7GUslstkQB)R^Gb7DBCqK73sbXFprsa$owlBixm@ooCQq2BR+%# zLF0K^E(;5{$p+1*8p#G;)>^DcXO)O*EHTi?(czt-C->x| zwKStqYnicqQ?2A77(gS8V-_^HxAw^ z6JWrkT1;+-#x!3Jdpbsjt|wO#C4&$G7xVJiIeC6XY4u{}%WopZ!K~^%6i3VUh$%(m z$VlO80`H^@4!`rG%FQsLxHIzdJ#)bUQo7c7_BTle(ow@i8OJR2#^c<3h+_@dPV(7AytgpF{n_@te#}94O67D? zZ^fgDY9*c>Z7v@T#|Z*(u&OmvS3v=$tQ|>6E;ywjQW6443=5-vB9Q__0q|z8J=a@z zy0Z#>6&VRzn~bM?6OuD`b3`iCce(nt?tD1l!94l4p^`ACw`b@h`FS<5L_K1SNdUBIehlOpdRLp2MW6L5H7@4G z8akp5ti0uuQo1l`Q`E~BgcJUjIpmI((;6nOz`3~{^BGeXT=+hE!0O~dRST`C{RLMm zT!bo+Heb~jzCJf06vsjswJypOM=^X}U_RS;^G*xH$FH564>tUC2>NNAf)C-ssgD4> z4>3VE7GV}bPnVkwB6E@?3*24HLagJJ9ERwR0hHFO%L$UY1N5MUvUn?y85mqx1|fP| z2!z7;{B9#TRcf!C0ULnWHZCytZp}7sz_`+&$)kSEcJlQp^C)uucgqseCg+$-EwcXa2x7W7r1jVG zqAL#}T95AZEc+#4c|l#>N>o(TD}vux#S?p`?-j7u+rd4f27lDH5DKB-GhrZhT-+#2 zDEYHlWU^h*&AEiLkQqzqi>BYZj{Vim7qgZkLF<-lBpCkQ2=|Mb{%%CEExUEIcok>x z%z~y$oLcZ8Lz(fko}cRaTfe;x9>QSZm(@;`ei(2Vf>O_D<0hy2g0rGaDt?qiAZ}iJuN( zN=-`UVr>HWm*V+^GM*N-dZMhylmQ6iTfklcy%Es@K(1nkT;m;jI$CWh6KZ@nE45!@;O8BKmLSnO(xgTqRu=edL`y`@HJ=>5K&TkWJfw{DG# zo&_CB>~ju{3kRWe;@Rs21!YzHqxS(vzR1-DpUE%Fc`?1eu7Tv`fGGowOw-X3srsJIPSG0(Ps(bL3sDn$Vb?)##ZM_EPtE4w;Z9ca?PN z<_n5Q%q(K5g!#deG9bc0&?v9-i^d(}IE7mqF{{#$tkD1{3`{Vn^~g@l!gCj(w!m49 zQpMON8Td>p_*QLQxQMDt;|?kU0A#UwEIc~x2>y9ky_ntzMW zvSupe{^}%4J_NZpCHQau`(jSwftlAMK@tv9%f$PkOKvI z8WGR8bNps`XBsI>D^ce?6%3Us1Rp9oVp z`{`U;&?#75lpY5&m5L-|-wb4nfNrBmhq%5GNNH8`R}C2rkP(mms6juYITL_@hQ_Z? zDp#%kjKmR`a=}Ya0z|CMkRy+pX0!FUxy8k{dIb^{fXkUb^ioY(EuLD#QA54wT-+h6 zZN1Sfu=%e|YC2FuK{aZtGTt5ljCTVwVq7Qr{rhw%f?@}V*=T@UQ{oEXf#!g`>YXs5E$Nkg<`eY!e)x*=;)M40x%U=PJr`Iy7Zmae zhz743whw?j9c^OX`b$eOYSJwWz34UaIAkr2@%L8yUWVD7j@`>}3D$8t1O``nnm#?` zgq8=LlK1=8x3gz`a!!pFpF142|4{6{az59;$5w<5a6V^%4L{*%wDwQI<(RAAMW#Eo zX*V{4jI?xiLKEBoF`bvQgjJd$1QU~jSFS;4 zK!9hh_7cDiwnVafldH!;w~1o4%=1VOT;7AdXB2l(LUlGUFSgy+gn$5j7^hoN`}f~6 zP{@t8RC$me`Q`70l755-t2KF)$v>1Mbe~kBN8E8I+`el#Q+1cxPDDUti*L$}Z42J)Lc?@a-qQC(@eW@pA zBC}*?98>mm?7nTFp;Q20xb&q@d&HDwKS#4`g-dUvgkvD3ez5ctQO&(wyun4Rn!-7C z(C|A^qhcRKI*FZgld4c~NBh&z`Rj6W-~V~CZOrb(F1u3}wll144|A|66tKMUXvOrt zVSfRe;b-DU2Q-7HK(i^2dfwi~gdN=!3a+;$oOtha{M~j%YeGsxzEteq*t*3awHwjH zK-*et=d!Qlo;`v7;~D@z`m4i36`tAynVlx_y1pqY0bl90@*9IO(y|P1 z75da3590?uXVaw0Hao0up7EF$LCM=SvuP_~7i`JD0T}dqh%C^dT`;?9suFJ@?R`cQ z>8&^NCVbMsgR%8=%zYm3svkLm^as&x+OkC$Ec+ z{eV2(B*Bc9StRqQ$7WNlGCeWwJBRIBS|vc928xlOr_&iz;~`bkx0Ce`pjy z6u3x$yb_vJdyWI}dAE)ucl~<4ZiYWi6f67qN4UDp)!#YJ1nvLN(>5r90I{iSGb~F~ zZ-M_iKlTY=DM@L%TE1+1Ujz+>{~M>0eF9KahJu}10g&cDiLLhk4i7Be0-8B|8@nd< z()-^>bnX5hw7rynvfKC!-LY{t)#YLx&%Z?ED?ZzZ>@d?i-

lqqP)>H@YjcCOdrtR;>)`990rns03E;6 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 &yQnzgc#f78Z=00+?2oFU3+9|} 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 Dk4A0{~#4 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%0DO=0;k6ND#-1k@x6xE)TPZ{mgUlF3B$ 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 g_+$4a>Zc9#$;JCACmt7 + + + + + + + diff --git a/static/img/icons8-cloud-entwicklung.svg b/static/img/icons8-cloud-entwicklung.svg new file mode 100644 index 0000000..7df85cb --- /dev/null +++ b/static/img/icons8-cloud-entwicklung.svg @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/static/img/icons8-cloud.svg b/static/img/icons8-cloud.svg new file mode 100644 index 0000000..a6c00d0 --- /dev/null +++ b/static/img/icons8-cloud.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/static/img/icons8-cpu.svg b/static/img/icons8-cpu.svg new file mode 100644 index 0000000..64b4bec --- /dev/null +++ b/static/img/icons8-cpu.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/static/img/icons8-data-transfer.svg b/static/img/icons8-data-transfer.svg new file mode 100644 index 0000000..56b2c30 --- /dev/null +++ b/static/img/icons8-data-transfer.svg @@ -0,0 +1,4 @@ + + + + diff --git a/static/img/icons8-gdpr.svg b/static/img/icons8-gdpr.svg new file mode 100644 index 0000000..44016d1 --- /dev/null +++ b/static/img/icons8-gdpr.svg @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/static/img/icons8-link.svg b/static/img/icons8-link.svg new file mode 100644 index 0000000..c128ce3 --- /dev/null +++ b/static/img/icons8-link.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/static/img/icons8-m2-ssd.svg b/static/img/icons8-m2-ssd.svg new file mode 100644 index 0000000..498bbe2 --- /dev/null +++ b/static/img/icons8-m2-ssd.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/static/img/icons8-open-source.svg b/static/img/icons8-open-source.svg new file mode 100644 index 0000000..e08f0e0 --- /dev/null +++ b/static/img/icons8-open-source.svg @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/static/img/icons8-update.svg b/static/img/icons8-update.svg new file mode 100644 index 0000000..d804930 --- /dev/null +++ b/static/img/icons8-update.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/static/img/open-source.svg b/static/img/open-source.svg new file mode 100644 index 0000000..d5ea341 --- /dev/null +++ b/static/img/open-source.svg @@ -0,0 +1,15 @@ + + + + + + + + diff --git a/static/img/partners/fits.svg b/static/img/partners/fits.svg new file mode 100644 index 0000000..31ed981 --- /dev/null +++ b/static/img/partners/fits.svg @@ -0,0 +1,76 @@ + + + + + + + + + + + diff --git a/static/img/partners/metalstack-cloud.svg b/static/img/partners/metalstack-cloud.svg new file mode 100644 index 0000000..6a707a1 --- /dev/null +++ b/static/img/partners/metalstack-cloud.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/static/img/partners/uni-innsbruck.png b/static/img/partners/uni-innsbruck.png new file mode 100644 index 0000000000000000000000000000000000000000..656022a3997c4d6857bfc23190319d6d1bff147e GIT binary patch literal 22777 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 Y&e;i~5QJS^0pCI}+6LDOkrn~}2M#0A`v3p{ literal 0 HcmV?d00001 diff --git a/static/img/partners/xcellent.svg b/static/img/partners/xcellent.svg new file mode 100644 index 0000000..804493c --- /dev/null +++ b/static/img/partners/xcellent.svg @@ -0,0 +1 @@ + \ No newline at end of file From bd0e66d7769faa1ab38e5f0fe228a6da57efda1c Mon Sep 17 00:00:00 2001 From: ostempel Date: Wed, 30 Jul 2025 15:51:47 +0200 Subject: [PATCH 10/15] finish landing-page --- src/css/custom.css | 17 +++++++++++----- src/pages/sections/Features.tsx | 36 ++++++++++++++++----------------- 2 files changed, 29 insertions(+), 24 deletions(-) diff --git a/src/css/custom.css b/src/css/custom.css index 479ee07..9ab5089 100644 --- a/src/css/custom.css +++ b/src/css/custom.css @@ -19,15 +19,15 @@ --ifm-color-primary-lighter: #face85; --ifm-color-primary-lightest: #fce1b5; --ifm-navbar-height: 80px; - --ifm-code-font-size: 95%; - --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.1); + + --ifm-background-color: var(--color-neutral-50); --font-sans: "Inter", system-ui, sans-serif; --font-headings: "Space Grotesk", system-ui, sans-serif; --font-size-base: 1rem; - --shadow-input: 0 0 0 0.25rem rgba(248, 187, 85, 0.25); /* primary.200 */ + --shadow-input: 0 0 0 0.25rem rgba(248, 187, 85, 0.25); --shadow-input-invalid: 0 0 0 0.25rem rgba(254, 202, 202, 0.5); } @@ -40,10 +40,17 @@ --ifm-color-primary-light: #f9c875; --ifm-color-primary-lighter: #face85; --ifm-color-primary-lightest: #fce1b5; - --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.3); + --ifm-navbar-shadow: rgba(255, 255, 255, 0.1); --ifm-background-color: var(--color-neutral-950); - --ifm-background-surface-color: var(--color-red-950); + + --font-sans: "Inter", system-ui, sans-serif; + --font-headings: "Space Grotesk", system-ui, sans-serif; + + --font-size-base: 1rem; + + --shadow-input: 0 0 0 0.25rem rgba(248, 187, 85, 0.25); + --shadow-input-invalid: 0 0 0 0.25rem rgba(254, 202, 202, 0.5); } html[data-theme="dark"] { diff --git a/src/pages/sections/Features.tsx b/src/pages/sections/Features.tsx index d1ff83c..e4a0520 100644 --- a/src/pages/sections/Features.tsx +++ b/src/pages/sections/Features.tsx @@ -36,25 +36,23 @@ export default function Features() {

-
-

- In combination with Kubernetes, the bare-metal approach - fully eliminates the need for a hypervisor. As servers can - be provisioned within minutes, hardware can be replaced - quickly while Kubernetes automatically cares for your - applications to run reliably all the time. -

-

- Our bare-metal design offers physical tenant separation as - well as resistency against malicious attacks like Spectre - and Meltdown. -

-

- The rack cabling is part of our solution, too. It is - failure redundant and allows to easily scale up and extend - your infrastructure with more racks as you grow. -

-
+

+ In combination with Kubernetes, the bare-metal approach + fully eliminates the need for a hypervisor. As servers can + be provisioned within minutes, hardware can be replaced + quickly while Kubernetes automatically cares for your + applications to run reliably all the time. +

+

+ Our bare-metal design offers physical tenant separation as + well as resistency against malicious attacks like Spectre + and Meltdown. +

+

+ The rack cabling is part of our solution, too. It is failure + redundant and allows to easily scale up and extend your + infrastructure with more racks as you grow. +

Built for Kubernetes at heart
From ff9b3848ac7f3d8fee48ff08d03c0574f36b0e0d Mon Sep 17 00:00:00 2001 From: ostempel Date: Wed, 30 Jul 2025 16:39:15 +0200 Subject: [PATCH 11/15] added fonts --- src/css/fonts/inter/inter-v12-latin-700.eot | Bin 0 -> 20867 bytes src/css/fonts/inter/inter-v12-latin-700.svg | 352 ++++++++++++++++++ src/css/fonts/inter/inter-v12-latin-700.ttf | Bin 0 -> 46920 bytes src/css/fonts/inter/inter-v12-latin-700.woff | Bin 0 -> 22684 bytes src/css/fonts/inter/inter-v12-latin-700.woff2 | Bin 0 -> 17784 bytes .../fonts/inter/inter-v12-latin-regular.eot | Bin 0 -> 19759 bytes .../fonts/inter/inter-v12-latin-regular.svg | 351 +++++++++++++++++ .../fonts/inter/inter-v12-latin-regular.ttf | Bin 0 -> 46500 bytes .../fonts/inter/inter-v12-latin-regular.woff | Bin 0 -> 21420 bytes .../fonts/inter/inter-v12-latin-regular.woff2 | Bin 0 -> 16708 bytes src/css/fonts/inter/inter-v12-latin.css | 26 ++ .../space-grotesk-v13-latin-700.eot | Bin 0 -> 13096 bytes .../space-grotesk-v13-latin-700.svg | 324 ++++++++++++++++ .../space-grotesk-v13-latin-700.ttf | Bin 0 -> 28832 bytes .../space-grotesk-v13-latin-700.woff | Bin 0 -> 14468 bytes .../space-grotesk-v13-latin-700.woff2 | Bin 0 -> 11448 bytes .../space-grotesk-v13-latin-regular.eot | Bin 0 -> 13748 bytes .../space-grotesk-v13-latin-regular.svg | 324 ++++++++++++++++ .../space-grotesk-v13-latin-regular.ttf | Bin 0 -> 28896 bytes .../space-grotesk-v13-latin-regular.woff | Bin 0 -> 15056 bytes .../space-grotesk-v13-latin-regular.woff2 | Bin 0 -> 11932 bytes .../space-grotesk/space-grotesk-v13-latin.css | 26 ++ src/pages/components/Container.tsx | 4 +- 23 files changed, 1405 insertions(+), 2 deletions(-) create mode 100644 src/css/fonts/inter/inter-v12-latin-700.eot create mode 100644 src/css/fonts/inter/inter-v12-latin-700.svg create mode 100644 src/css/fonts/inter/inter-v12-latin-700.ttf create mode 100644 src/css/fonts/inter/inter-v12-latin-700.woff create mode 100644 src/css/fonts/inter/inter-v12-latin-700.woff2 create mode 100644 src/css/fonts/inter/inter-v12-latin-regular.eot create mode 100644 src/css/fonts/inter/inter-v12-latin-regular.svg create mode 100644 src/css/fonts/inter/inter-v12-latin-regular.ttf create mode 100644 src/css/fonts/inter/inter-v12-latin-regular.woff create mode 100644 src/css/fonts/inter/inter-v12-latin-regular.woff2 create mode 100644 src/css/fonts/inter/inter-v12-latin.css create mode 100644 src/css/fonts/space-grotesk/space-grotesk-v13-latin-700.eot create mode 100644 src/css/fonts/space-grotesk/space-grotesk-v13-latin-700.svg create mode 100644 src/css/fonts/space-grotesk/space-grotesk-v13-latin-700.ttf create mode 100644 src/css/fonts/space-grotesk/space-grotesk-v13-latin-700.woff create mode 100644 src/css/fonts/space-grotesk/space-grotesk-v13-latin-700.woff2 create mode 100644 src/css/fonts/space-grotesk/space-grotesk-v13-latin-regular.eot create mode 100644 src/css/fonts/space-grotesk/space-grotesk-v13-latin-regular.svg create mode 100644 src/css/fonts/space-grotesk/space-grotesk-v13-latin-regular.ttf create mode 100644 src/css/fonts/space-grotesk/space-grotesk-v13-latin-regular.woff create mode 100644 src/css/fonts/space-grotesk/space-grotesk-v13-latin-regular.woff2 create mode 100644 src/css/fonts/space-grotesk/space-grotesk-v13-latin.css diff --git a/src/css/fonts/inter/inter-v12-latin-700.eot b/src/css/fonts/inter/inter-v12-latin-700.eot new file mode 100644 index 0000000000000000000000000000000000000000..53ce7859fc2c7d6d975d39ea2f2def51e58af582 GIT binary patch literal 20867 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 literal 0 HcmV?d00001 diff --git a/src/css/fonts/inter/inter-v12-latin-700.svg b/src/css/fonts/inter/inter-v12-latin-700.svg new file mode 100644 index 0000000..1846606 --- /dev/null +++ b/src/css/fonts/inter/inter-v12-latin-700.svg @@ -0,0 +1,352 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/css/fonts/inter/inter-v12-latin-700.ttf b/src/css/fonts/inter/inter-v12-latin-700.ttf new file mode 100644 index 0000000000000000000000000000000000000000..d39cfb0a97288fa6063779b8fc658a52a0dff851 GIT binary patch literal 46920 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
@c7i#2wA{t5xfUuxoEtd|+!B}G5P zcN5+xLEW&w1k7Q~lM6?rn+_Yzw4)ezQ#)#SA_*pTqtM^PzxHg&HXil=)Rksqt4BV@ z4h*Ab4%CzXW7M(5Uybi~{Z)p0)5O&M32J`cLn z^FjZL`4!Gba5dr))PT={;3*JyH_G)z`P(_aXL`ZU{&I5{|F8L19i3hH2PXf6Wq(1z V55>V}u;D#!fM2ok`R{Sh`yb7_(~JNB literal 0 HcmV?d00001 diff --git a/src/css/fonts/inter/inter-v12-latin-700.woff b/src/css/fonts/inter/inter-v12-latin-700.woff new file mode 100644 index 0000000000000000000000000000000000000000..097e23e3c07dc21f481b31bec990dc04e4ed6a7f GIT binary patch literal 22684 zcmYg$19T+Y_jSkiWMZ2W+qP}nwrx%_u_m^iOl;d`M-%(Yd++zH^}nl6o!+N*owNH^ z*Il>jmb<)|7ytzD)ikmI$p82ji7)(bYH+24r;k$fsp#Nvc<~E*YUojs5 zfSC#aP-bx?)HAd&H8cSL6idH2Z2uVDfT5_xSMV#g^Mwh&j1>PKh1|l{<*TOB7X+;b z03b}L+xmHI?2W&8DqnR$Q@^Y+xcnEZt)a(PU3Hl+BJP(Ff;fRd+8NrKe#I=l^kIDQ zFc}zBwjJ!9zqDxtd~wkJ;e9XzdL5ihzmC;N`NB~Dm<41^sK*+@00?A=0zh=u8%lt$ zApigt_MN%dErB#Zfe=u|2911=iwKGixZaCZk=RZ9yz?}eKy%j9xcy!qj!R@dg6